@kp-ui/lowcode 2.16.0-alpha.10 → 2.16.0-alpha.12
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/package.json +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/height-editor.vue2.js +16 -18
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/height-editor.vue2.js.map +1 -1
- package/src/components/form-render/container-items/data-table-widget.vue.js +3 -3
- package/src/components/form-render/container-items/data-table-widget.vue2.js +5 -7
- package/src/components/form-render/container-items/data-table-widget.vue2.js.map +1 -1
- package/src/components/form-render/dynamic-dialog.vue.js +50 -49
- package/src/components/form-render/dynamic-dialog.vue.js.map +1 -1
- package/src/utils/format.js +18 -11
- package/src/utils/format.js.map +1 -1
- package/stats.html +1 -1
- package/styles/style.css +1 -1
package/package.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { defineComponent as a, useModel as
|
|
2
|
-
import { useI18n as
|
|
3
|
-
import { EditorTypeEnum as
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
name: M.heightEditor,
|
|
1
|
+
import { defineComponent as a, useModel as u, resolveComponent as o, createBlock as m, openBlock as d, unref as s, withCtx as c, createVNode as f } from "vue";
|
|
2
|
+
import { useI18n as _ } from "../../../../../utils/i18n.js";
|
|
3
|
+
import { EditorTypeEnum as h } from "../../../../../constants/EditorTypeEnum.js";
|
|
4
|
+
const C = /* @__PURE__ */ a({
|
|
5
|
+
name: h.heightEditor,
|
|
7
6
|
__name: "height-editor",
|
|
8
7
|
props: {
|
|
9
8
|
optionModel: {
|
|
@@ -14,20 +13,19 @@ const y = /* @__PURE__ */ a({
|
|
|
14
13
|
optionModelModifiers: {}
|
|
15
14
|
},
|
|
16
15
|
emits: ["update:optionModel"],
|
|
17
|
-
setup(
|
|
18
|
-
const e =
|
|
19
|
-
return (
|
|
20
|
-
const
|
|
21
|
-
return
|
|
22
|
-
label:
|
|
16
|
+
setup(n) {
|
|
17
|
+
const e = u(n, "optionModel"), { i18nt: i } = _();
|
|
18
|
+
return (M, t) => {
|
|
19
|
+
const p = o("a-input"), r = o("a-form-item");
|
|
20
|
+
return d(), m(r, {
|
|
21
|
+
label: s(i)("height") + "(px)"
|
|
23
22
|
}, {
|
|
24
|
-
default:
|
|
25
|
-
|
|
23
|
+
default: c(() => [
|
|
24
|
+
f(p, {
|
|
26
25
|
type: "text",
|
|
27
26
|
value: e.value.height,
|
|
28
|
-
"onUpdate:value": t[0] || (t[0] = (
|
|
29
|
-
|
|
30
|
-
}, null, 8, ["value", "onInput"])
|
|
27
|
+
"onUpdate:value": t[0] || (t[0] = (l) => e.value.height = l)
|
|
28
|
+
}, null, 8, ["value"])
|
|
31
29
|
]),
|
|
32
30
|
_: 1
|
|
33
31
|
}, 8, ["label"]);
|
|
@@ -35,6 +33,6 @@ const y = /* @__PURE__ */ a({
|
|
|
35
33
|
}
|
|
36
34
|
});
|
|
37
35
|
export {
|
|
38
|
-
|
|
36
|
+
C as default
|
|
39
37
|
};
|
|
40
38
|
//# sourceMappingURL=height-editor.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"height-editor.vue2.js","sources":["../../../../../../../src/components/form-designer/setting-panel/property-editor/container-vf-dialog/height-editor.vue"],"sourcesContent":["<template>\n <a-form-item :label=\"i18nt('height') + '(px)'\">\n <a-input
|
|
1
|
+
{"version":3,"file":"height-editor.vue2.js","sources":["../../../../../../../src/components/form-designer/setting-panel/property-editor/container-vf-dialog/height-editor.vue"],"sourcesContent":["<template>\n <a-form-item :label=\"i18nt('height') + '(px)'\">\n <a-input type=\"text\" v-model:value=\"optionModel.height\" />\n </a-form-item>\n</template>\n\n<script lang=\"ts\" setup>\n import { useI18n } from '@/utils/i18n';\n import { EditorTypeEnum } from '@/constants/EditorTypeEnum';\n\n defineOptions({\n name: EditorTypeEnum.heightEditor\n });\n\n const optionModel = defineModel('optionModel', {\n type: Object,\n required: true,\n default: () => ({ customClass: '' })\n });\n\n const { i18nt } = useI18n();\n</script>\n\n<style scoped></style>\n"],"names":["optionModel","_useModel","__props","i18nt","useI18n","_createBlock","_component_a_form_item","_unref","_createVNode","_component_a_input","_cache","$event"],"mappings":";;;;;;;;;;;;;;;;AAcI,UAAMA,IAAcC,EAAWC,GAAC,aAI/B,GAEK,EAAE,OAAAC,EAAA,IAAUC,EAAA;;;kBAnBlBC,EAEcC,GAAA;AAAA,QAFA,OAAOC,EAAAJ,CAAA,EAAK,QAAA,IAAA;AAAA,MAAA;mBACtB,MAA0D;AAAA,UAA1DK,EAA0DC,GAAA;AAAA,YAAjD,MAAK;AAAA,YAAe,OAAOT,EAAA,MAAY;AAAA,YAAZ,kBAAAU,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAAAX,EAAA,MAAY,SAAMW;AAAA,UAAA;;;;;;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import t from "./data-table-widget.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import
|
|
4
|
-
const
|
|
3
|
+
import a from "../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const m = /* @__PURE__ */ a(t, [["__scopeId", "data-v-e792a706"]]);
|
|
5
5
|
export {
|
|
6
|
-
|
|
6
|
+
m as default
|
|
7
7
|
};
|
|
8
8
|
//# sourceMappingURL=data-table-widget.vue.js.map
|
|
@@ -31,7 +31,7 @@ const te = /* @__PURE__ */ N({
|
|
|
31
31
|
onRunEvent: a,
|
|
32
32
|
onSortChange: S,
|
|
33
33
|
onCheckboxChange: x,
|
|
34
|
-
tableDefinExpoed:
|
|
34
|
+
tableDefinExpoed: E
|
|
35
35
|
} = U({
|
|
36
36
|
props: t,
|
|
37
37
|
fieldModel: f
|
|
@@ -43,7 +43,7 @@ const te = /* @__PURE__ */ N({
|
|
|
43
43
|
}), s.value.onChange = (e, F) => {
|
|
44
44
|
l();
|
|
45
45
|
};
|
|
46
|
-
const { tableRef: n, register:
|
|
46
|
+
const { tableRef: n, register: T, selectedRowInfo: i, sorts: c, selectRow: y, delSelectRow: D } = G({
|
|
47
47
|
props: {
|
|
48
48
|
rowKey: t.field.options.rowKey,
|
|
49
49
|
hasRowSelection: (d = t.field.options.rowSelection) == null ? void 0 : d.hasRowSelection,
|
|
@@ -64,12 +64,10 @@ const te = /* @__PURE__ */ N({
|
|
|
64
64
|
return p(() => {
|
|
65
65
|
n.value && v(n.value);
|
|
66
66
|
}), W(() => {
|
|
67
|
-
|
|
68
|
-
l();
|
|
69
|
-
}, 1e3);
|
|
67
|
+
l();
|
|
70
68
|
}), m({
|
|
71
69
|
...w,
|
|
72
|
-
...
|
|
70
|
+
...E,
|
|
73
71
|
delSelectRow: D,
|
|
74
72
|
getFieldEditor: M,
|
|
75
73
|
selectRow: y,
|
|
@@ -87,7 +85,7 @@ const te = /* @__PURE__ */ N({
|
|
|
87
85
|
style: H({ width: o(h) })
|
|
88
86
|
}, [
|
|
89
87
|
O(o(J), {
|
|
90
|
-
onRegister: o(
|
|
88
|
+
onRegister: o(T),
|
|
91
89
|
tableProps: o(R),
|
|
92
90
|
loading: o(C),
|
|
93
91
|
pagination: o(s)
|
|
@@ -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 :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
|
|
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,10 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { useExecFunction as
|
|
3
|
-
import { useLowcode as
|
|
4
|
-
import
|
|
5
|
-
import W from "../
|
|
6
|
-
|
|
1
|
+
import { defineComponent as J, computed as u, ref as c, onBeforeUnmount as P, createBlock as A, openBlock as U, unref as i, mergeProps as z, withCtx as x, createElementVNode as I, createVNode as C, nextTick as q } from "vue";
|
|
2
|
+
import { useExecFunction as G, TpfModal as K } from "tmgc2-share";
|
|
3
|
+
import { useLowcode as Q } from "../../hooks/useLowcode.js";
|
|
4
|
+
import { formatSize as h } from "../../utils/format.js";
|
|
5
|
+
import W from "../FormRender/index.vue.js";
|
|
6
|
+
import X from "../public/ActionButtonListRender.vue.js";
|
|
7
|
+
const Y = { class: "dialog-content" }, ae = /* @__PURE__ */ J({
|
|
7
8
|
name: "dynamic-dialog",
|
|
8
9
|
__name: "dynamic-dialog",
|
|
9
10
|
props: {
|
|
@@ -45,31 +46,31 @@ const X = { class: "dialog-content" }, oe = /* @__PURE__ */ H({
|
|
|
45
46
|
default: null
|
|
46
47
|
}
|
|
47
48
|
},
|
|
48
|
-
setup(n, { expose:
|
|
49
|
-
const t = n,
|
|
49
|
+
setup(n, { expose: O }) {
|
|
50
|
+
const t = n, R = u(() => h(t.options.height, "500px")), f = c(null), p = c(!1), s = c(!1), { context: r, asyncExecuteFunction: m, executeFunction: Z } = G(), { vfdRef: l, isLoading: v, getComponentJson: F } = Q({
|
|
50
51
|
formCode: t.options.formCode,
|
|
51
52
|
...t.vfCtx
|
|
52
|
-
}),
|
|
53
|
+
}), D = u(() => ({
|
|
53
54
|
...t.parentFormRef,
|
|
54
|
-
parentDom:
|
|
55
|
+
parentDom: r.value,
|
|
55
56
|
getParentFormRef: g
|
|
56
|
-
})),
|
|
57
|
-
|
|
57
|
+
})), k = u(() => t.options.cancelButtonHidden && t.options.okButtonHidden ? { footer: null } : {});
|
|
58
|
+
P(() => {
|
|
58
59
|
var e, o;
|
|
59
60
|
console.log(t.parentFormRef), (o = (e = t.parentFormRef) == null ? void 0 : e.setChildFormRef) == null || o.call(e, null);
|
|
60
61
|
});
|
|
61
|
-
const
|
|
62
|
+
const w = (e) => {
|
|
62
63
|
v.value = e;
|
|
63
|
-
},
|
|
64
|
+
}, B = (e) => {
|
|
64
65
|
t.options.title = e;
|
|
65
|
-
},
|
|
66
|
+
}, j = () => {
|
|
66
67
|
s.value = !0;
|
|
67
|
-
},
|
|
68
|
-
e !== !1 && await
|
|
69
|
-
},
|
|
68
|
+
}, E = async ({ result: e }) => {
|
|
69
|
+
e !== !1 && await d();
|
|
70
|
+
}, L = () => {
|
|
70
71
|
s.value = !0, q(async () => {
|
|
71
72
|
var e, o, a;
|
|
72
|
-
(e = t.options) != null && e.readMode && ((o = l.value) == null || o.setReadMode(!0)), await
|
|
73
|
+
(e = t.options) != null && e.readMode && ((o = l.value) == null || o.setReadMode(!0)), await F([], t.options.formCode), (a = l.value) == null || a.setDialogOrDrawerRef(r.value), t.parentFormRef && t.parentFormRef.setChildFormRef(l.value), y();
|
|
73
74
|
});
|
|
74
75
|
}, b = async () => {
|
|
75
76
|
if (t.options.onDialogBeforeClose)
|
|
@@ -77,76 +78,76 @@ const X = { class: "dialog-content" }, oe = /* @__PURE__ */ H({
|
|
|
77
78
|
functionBody: t.options.onDialogBeforeClose
|
|
78
79
|
});
|
|
79
80
|
s.value = !1;
|
|
80
|
-
},
|
|
81
|
+
}, d = () => {
|
|
81
82
|
b();
|
|
82
83
|
}, y = async () => {
|
|
83
84
|
if (t.options.onDialogOpened)
|
|
84
85
|
return await m({
|
|
85
86
|
functionBody: t.options.onDialogOpened
|
|
86
87
|
});
|
|
87
|
-
}, g = () => t.parentFormRef,
|
|
88
|
+
}, g = () => t.parentFormRef, T = () => {
|
|
88
89
|
var e, o, a;
|
|
89
90
|
(a = (o = (e = t.vfCtx) == null ? void 0 : e.parent) == null ? void 0 : o.exposed) != null && a.updateTable && t.vfCtx.parent.exposed.updateTable();
|
|
90
|
-
},
|
|
91
|
+
}, M = () => t.extraData, S = (e) => {
|
|
91
92
|
f.value = e;
|
|
92
|
-
},
|
|
93
|
+
}, N = (e) => {
|
|
93
94
|
p.value = e;
|
|
94
|
-
},
|
|
95
|
+
}, V = () => l.value, H = () => {
|
|
95
96
|
var e;
|
|
96
97
|
return (e = l.value) == null ? void 0 : e.context;
|
|
97
98
|
};
|
|
98
|
-
return
|
|
99
|
+
return O({
|
|
99
100
|
getParentFormRef: g,
|
|
100
|
-
getFormRef:
|
|
101
|
-
setDisabled:
|
|
102
|
-
setleftText:
|
|
103
|
-
setLoading:
|
|
104
|
-
setTitle:
|
|
105
|
-
beforeOpen:
|
|
106
|
-
show:
|
|
101
|
+
getFormRef: V,
|
|
102
|
+
setDisabled: N,
|
|
103
|
+
setleftText: S,
|
|
104
|
+
setLoading: w,
|
|
105
|
+
setTitle: B,
|
|
106
|
+
beforeOpen: j,
|
|
107
|
+
show: L,
|
|
107
108
|
close: b,
|
|
108
|
-
handleCloseEvent:
|
|
109
|
+
handleCloseEvent: d,
|
|
109
110
|
handleOpenedEvent: y,
|
|
110
|
-
updateTable:
|
|
111
|
-
getExtraData:
|
|
112
|
-
}), (e, o) => (
|
|
111
|
+
updateTable: T,
|
|
112
|
+
getExtraData: M
|
|
113
|
+
}), (e, o) => (U(), A(i(K), z({
|
|
113
114
|
class: "tpf-model design-model",
|
|
114
115
|
destroyOnClose: !0,
|
|
115
116
|
title: n.options.title,
|
|
116
117
|
bodyStyle: {
|
|
117
|
-
height:
|
|
118
|
+
height: R.value,
|
|
118
119
|
overflow: "auto",
|
|
119
120
|
...JSON.parse(n.options.bodyStyle || "{}")
|
|
120
121
|
},
|
|
121
122
|
centered: !0,
|
|
122
123
|
visible: s.value,
|
|
123
124
|
"onUpdate:visible": o[0] || (o[0] = (a) => s.value = a),
|
|
124
|
-
width: n.options.width,
|
|
125
|
+
width: i(h)(n.options.width),
|
|
125
126
|
mask: n.options.showModal,
|
|
126
127
|
maskClosable: n.options.closeOnClickModal,
|
|
127
128
|
keyboard: n.options.closeOnPressEscape,
|
|
128
|
-
onCancel:
|
|
129
|
+
onCancel: d,
|
|
129
130
|
"left-num": f.value
|
|
130
|
-
},
|
|
131
|
+
}, k.value), {
|
|
131
132
|
footerRight: x(() => [
|
|
132
|
-
C(
|
|
133
|
+
C(X, {
|
|
133
134
|
buttonList: n.options.buttonList || [],
|
|
134
|
-
ctx:
|
|
135
|
-
onOnClick:
|
|
135
|
+
ctx: H(),
|
|
136
|
+
onOnClick: E,
|
|
136
137
|
disabled: p.value
|
|
137
138
|
}, null, 8, ["buttonList", "ctx", "disabled"])
|
|
138
139
|
]),
|
|
139
140
|
default: x(() => [
|
|
140
|
-
I("div",
|
|
141
|
-
C(
|
|
141
|
+
I("div", Y, [
|
|
142
|
+
C(W, {
|
|
142
143
|
ref_key: "vfdRef",
|
|
143
144
|
ref: l,
|
|
144
|
-
loading:
|
|
145
|
+
loading: i(v),
|
|
145
146
|
vfCtx: {
|
|
146
147
|
...n.vfCtx,
|
|
147
|
-
instance:
|
|
148
|
+
instance: i(r)
|
|
148
149
|
},
|
|
149
|
-
"parent-form":
|
|
150
|
+
"parent-form": D.value,
|
|
150
151
|
"disabled-mode": n.options.disabledMode,
|
|
151
152
|
"dynamic-creation": !0
|
|
152
153
|
}, null, 8, ["loading", "vfCtx", "parent-form", "disabled-mode"])
|
|
@@ -157,6 +158,6 @@ const X = { class: "dialog-content" }, oe = /* @__PURE__ */ H({
|
|
|
157
158
|
}
|
|
158
159
|
});
|
|
159
160
|
export {
|
|
160
|
-
|
|
161
|
+
ae as default
|
|
161
162
|
};
|
|
162
163
|
//# sourceMappingURL=dynamic-dialog.vue.js.map
|
|
@@ -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 <ActionButtonListRender\n :buttonList=\"options.buttonList || []\"\n :ctx=\"getFormContext()\"\n @on-click=\"handleBtnClick\"\n :disabled=\"isDisabled\"\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 { 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 close();\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDI,UAAMA,IAAQC,GAwCRC,IAAeC,EAAS,MACnBH,EAAM,QAAQ,UAAU,OAClC,GACKI,IAAUC,EAAI,IAAI,GAElBC,IAAaD,EAAI,EAAK,GACtBE,IAAgBF,EAAI,EAAK,GAEzB,EAAE,SAAAG,GAAS,sBAAAC,GAAsB,iBAAAC,EAAA,IAAoBC,EAAA,GACrD,EAAE,QAAAC,GAAQ,WAAAC,GAAW,kBAAAC,EAAA,IAAqBC,EAAW;AAAA,MACvD,UAAUf,EAAM,QAAQ;AAAA,MACxB,GAAGA,EAAM;AAAA,IAAA,CACZ,GAEKgB,IAAab,EAAS,OACjB;AAAA,MACH,GAAGH,EAAM;AAAA,MACT,WAAWQ,EAAQ;AAAA,MACnB,kBAAAS;AAAA,IAAA,EAEP,GAEKC,IAAaf,EAAS,MACpBH,EAAM,QAAQ,sBAAsBA,EAAM,QAAQ,iBAC3C,EAAE,QAAQ,KAAA,IAEd,CAAA,CACV;AAGD,IAAAmB,EAAgB,MAAM;;AAClB,cAAQ,IAAInB,EAAM,aAAa,IAC/BoB,KAAAC,IAAArB,EAAM,kBAAN,gBAAAqB,EAAqB,oBAArB,QAAAD,EAAA,KAAAC,GAAuC;AAAA,IAC3C,CAAC;AAED,UAAMC,IAAa,CAAAC,MAAU;AACzB,MAAAV,EAAU,QAAQU;AAAA,IACtB,GAEMC,IAAW,CAAAC,MAAS;AACtB,MAAAzB,EAAM,QAAQ,QAAQyB;AAAA,IAC1B,GAEMC,IAAa,MAAM;AACrB,MAAAnB,EAAc,QAAQ;AAAA,IAC1B,GAEMoB,IAAiB,OAAO,EAAE,QAAAC,QAAkB;AAC9C,MAAIA,MAAW,MACX,MAAMC,EAAA;AAAA,IAEd,GAEMC,IAAO,MAAM;AACf,MAAAvB,EAAc,QAAQ,IAGtBwB,EAAS,YAAY;;AACjB,SAAIV,IAAArB,EAAM,YAAN,QAAAqB,EAAe,cACfD,IAAAR,EAAO,UAAP,QAAAQ,EAAc,YAAY,MAE9B,MAAMN,EAAiB,CAAA,GAAId,EAAM,QAAQ,QAAQ,IACjDgC,IAAApB,EAAO,UAAP,QAAAoB,EAAc,qBAAqBxB,EAAQ,QACvCR,EAAM,iBACNA,EAAM,cAAc,gBAAgBY,EAAO,KAAK,GAEpDqB,EAAA;AAAA,MACJ,CAAC;AAAA,IACL,GAEMC,IAAQ,YAAY;AACtB,UAAIlC,EAAM,QAAQ;AACd,eAAO,MAAMS,EAAqB;AAAA,UAC9B,cAAcT,EAAM,QAAQ;AAAA,QAAA,CAC/B;AAGL,MAAAO,EAAc,QAAQ;AAAA,IAC1B,GAEMsB,IAAmB,MAAM;AAC3B,MAAAK,EAAA;AAAA,IACJ,GAEMD,IAAoB,YAAY;AAClC,UAAIjC,EAAM,QAAQ;AACd,eAAO,MAAMS,EAAqB;AAAA,UAC9B,cAAcT,EAAM,QAAQ;AAAA,QAAA,CAC/B;AAAA,IAET,GAEMiB,IAAmB,MACdjB,EAAM,eAGXmC,IAAc,MAAM;;AACtB,OAAIH,KAAAZ,KAAAC,IAAArB,EAAM,UAAN,gBAAAqB,EAAa,WAAb,gBAAAD,EAAqB,YAArB,QAAAY,EAA8B,eAC9BhC,EAAM,MAAM,OAAO,QAAQ,YAAA;AAAA,IAEnC,GAEMoC,IAAe,MACVpC,EAAM,WAGXqC,IAAc,CAAAC,MAAU;AAC1B,MAAAlC,EAAQ,QAAQkC;AAAA,IACpB,GAEMC,IAAc,CAAAhB,MAAU;AAC1B,MAAAjB,EAAW,QAAQiB;AAAA,IACvB,GAEMiB,IAAa,MACR5B,EAAO,OAGZ6B,IAAiB,MAAM;;AACzB,cAAOpB,IAAAT,EAAO,UAAP,gBAAAS,EAAc;AAAA,IACzB;AAGA,WAAAqB,EAAa;AAAA,MACT,kBAAAzB;AAAA,MACA,YAAAuB;AAAA,MACA,aAAAD;AAAA,MACA,aAAAF;AAAA,MACA,YAAAf;AAAA,MACA,UAAAE;AAAA,MACA,YAAAE;AAAA,MACA,MAAAI;AAAA,MACA,OAAAI;AAAA,MACA,kBAAAL;AAAA,MACA,mBAAAI;AAAA,MACA,aAAAE;AAAA,MACA,cAAAC;AAAA,IAAA,CACH,cAtODO,KAAAC,EAwCWC,MAxCXC,EAwCW;AAAA,MAvCP,OAAM;AAAA,MACL,gBAAgB;AAAA,MAChB,OAAO7C,EAAA,QAAQ;AAAA,MACf,WAAS;AAAA,gBAAwBC,EAAA;AAAA;QAA2D,GAAA,KAAK,MAAMD,EAAA,QAAQ,aAAS,IAAA;AAAA,MAAA;AAAA,MAKxH,UAAU;AAAA,MACH,SAASM,EAAA;AAAA,iDAAAA,EAAa,QAAAwC;AAAA,MAC7B,OAAO9C,EAAA,QAAQ;AAAA,MACf,MAAMA,EAAA,QAAQ;AAAA,MACd,cAAcA,EAAA,QAAQ;AAAA,MACtB,UAAUA,EAAA,QAAQ;AAAA,MAClB,UAAQ4B;AAAA,MACR,YAAUzB,EAAA;AAAA,IAAA,GACHc,EAAA,KAAU,GAAA;AAAA,MAeP,eACP,MAKE;AAAA,QALF8B,EAKEC,GAAA;AAAA,UAJG,YAAYhD,EAAA,QAAQ,cAAU,CAAA;AAAA,UAC9B,KAAKwC,EAAA;AAAA,UACL,WAAUd;AAAA,UACV,UAAUrB,EAAA;AAAA,QAAA;;iBAlBnB,MAYM;AAAA,QAZN4C,EAYM,OAZNC,GAYM;AAAA,UAXFH,EAUEI,GAAA;AAAA,qBATM;AAAA,YAAJ,KAAIxC;AAAA,YACH,SAASiC,EAAAhC,CAAA;AAAA,YACT,OAAK;AAAA,iBAA2BZ,EAAA;AAAA,wBAAqC4C,EAAArC,CAAA;AAAA,YAAA;AAAA,YAIrE,eAAaQ,EAAA;AAAA,YACb,iBAAef,EAAA,QAAQ;AAAA,YACvB,oBAAkB;AAAA,UAAA;;;;;;;"}
|
|
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=\"formatSize(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 </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 { useLowcode } from '@/hooks/useLowcode';\n import { formatSize } from '@/utils/format';\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 formatSize(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 close();\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","formatSize","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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"}
|
package/src/utils/format.js
CHANGED
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
import { isArray as o } from "lodash-es";
|
|
2
|
-
const
|
|
3
|
-
if (!(!
|
|
4
|
-
return o(
|
|
5
|
-
},
|
|
6
|
-
const
|
|
7
|
-
return
|
|
8
|
-
if (
|
|
9
|
-
const
|
|
10
|
-
|
|
2
|
+
const c = (e = [], n, r = { label: "label", value: "value", children: "children" }, t = "/") => {
|
|
3
|
+
if (!(!n || n.length === 0))
|
|
4
|
+
return o(n[0]) ? n.map((l) => i(e, l, r).join(t)).join(",") : i(e, n, r).join(t);
|
|
5
|
+
}, i = (e = [], n = [], r = { label: "label", value: "value", children: "children" }) => {
|
|
6
|
+
const t = [];
|
|
7
|
+
return e.forEach((u) => {
|
|
8
|
+
if (n.length !== 0 && u[r.value] === n[0] && (t.push(u[r.label]), o(u[r.children]))) {
|
|
9
|
+
const l = i(u[r.children], n.slice(1), r);
|
|
10
|
+
t.push(...l);
|
|
11
11
|
}
|
|
12
|
-
}),
|
|
12
|
+
}), t;
|
|
13
13
|
};
|
|
14
|
+
function h(e, n = "") {
|
|
15
|
+
if (e == null || e === "")
|
|
16
|
+
return n;
|
|
17
|
+
const r = String(e);
|
|
18
|
+
return r.endsWith("px") || r.endsWith("%") || isNaN(Number(r)) ? r : `${r}px`;
|
|
19
|
+
}
|
|
14
20
|
export {
|
|
15
|
-
|
|
21
|
+
h as formatSize,
|
|
22
|
+
c as formateCascaderCode
|
|
16
23
|
};
|
|
17
24
|
//# sourceMappingURL=format.js.map
|
package/src/utils/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sources":["../../../src/utils/format.js"],"sourcesContent":["import { isArray } from 'lodash-es';\n\nfunction validateDate(dateStr) {\n
|
|
1
|
+
{"version":3,"file":"format.js","sources":["../../../src/utils/format.js"],"sourcesContent":["import { isArray } from 'lodash-es';\n\nfunction validateDate(dateStr) {\n const date = new Date(Date.parse(dateStr));\n return date instanceof Date && !isNaN(date.getTime());\n}\n\nexport function formatDate1(date) {\n if (!validateDate(date)) {\n return date;\n }\n date = new Date(Date.parse(date)); //转换成Date\n const y = date.getFullYear();\n let m = date.getMonth() + 1;\n m = m < 10 ? '0' + m : m;\n let d = date.getDate();\n d = d < 10 ? '0' + d : d;\n return y + '-' + m + '-' + d;\n}\n\nexport function formatDate2(date) {\n if (!validateDate(date)) {\n return date;\n }\n date = new Date(Date.parse(date)); //转换成Date\n const y = date.getFullYear();\n let m = date.getMonth() + 1;\n m = m < 10 ? '0' + m : m;\n let d = date.getDate();\n d = d < 10 ? '0' + d : d;\n return y + '/' + m + '/' + d;\n}\n\nexport function formatDate3(date) {\n if (!validateDate(date)) {\n return date;\n }\n date = new Date(Date.parse(date)); //转换成Date\n const y = date.getFullYear();\n let m = date.getMonth() + 1;\n m = m < 10 ? '0' + m : m;\n let d = date.getDate();\n d = d < 10 ? '0' + d : d;\n return y + '年' + m + '月' + d + '日';\n}\n\nexport function formatDate4(date) {\n if (!validateDate(date)) {\n return date;\n }\n date = new Date(Date.parse(date)); //转换成Date\n return date.toLocaleString();\n}\n\nexport function formatDate5(date) {\n if (!validateDate(date)) {\n return date;\n }\n date = new Date(Date.parse(date)); //转换成Date\n return date.toLocaleString('chinese', { hour12: false });\n}\n\n// ###,###,###,##0.######\nexport function formatNumber1(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n const length = v.toString().split('.')[1].length;\n switch (length) {\n case 0:\n v = v.toFixed(0);\n break;\n case 1:\n v = v.toFixed(1);\n break;\n case 2:\n v = v.toFixed(2);\n break;\n case 3:\n v = v.toFixed(3);\n break;\n case 4:\n v = v.toFixed(4);\n break;\n case 5:\n v = v.toFixed(5);\n break;\n default:\n v = v.toFixed(6);\n }\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res;\n}\n\n//###,###,###,##0.00####\nexport function formatNumber2(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n const length = v.toString().split('.')[1].length;\n switch (length) {\n case 0:\n case 1:\n case 2:\n v = v.toFixed(2);\n break;\n case 3:\n v = v.toFixed(3);\n break;\n case 4:\n v = v.toFixed(4);\n break;\n case 5:\n v = v.toFixed(5);\n break;\n default:\n v = v.toFixed(6);\n }\n\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res;\n}\n\n// ###,###,###,##0.000000\nexport function formatNumber3(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n v = v.toFixed(6);\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res;\n}\n// ###,###,###,##0.000\nexport function formatNumber4(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n v = v.toFixed(3);\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res;\n}\n\n// ###,###,###,##0.00\nexport function formatNumber5(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n v = v.toFixed(2);\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res;\n}\n\n// ###,###,###,##0\nexport function formatNumber6(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n v = v.toFixed(0);\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res;\n}\n\n// ###,##0.00##%\nexport function formatNumber7(v) {\n if (typeof v !== 'number') {\n return v;\n }\n\n const length = v.toString().split('.')[1].length;\n v = v * 100;\n switch (length) {\n case 0:\n case 1:\n case 2:\n v = v.toFixed(2);\n break;\n case 3:\n v = v.toFixed(3);\n break;\n default:\n v = v.toFixed(4);\n }\n\n const res = v.toString().replace(/\\d+/, function (n) {\n // 先提取整数部分\n return n.replace(/(\\d)(?=(\\d{3})+$)/g, function ($1) {\n return $1 + ',';\n });\n });\n return res + '%';\n}\n\n/**\n * 将Cascader转义为汉字\n * @param codeList string[]\n * @param emblem 拼接符号\n * @returns\n */\nexport const formateCascaderCode = (\n arr = [],\n codeList,\n fieldNames = { label: 'label', value: 'value', children: 'children' },\n emblem = '/'\n) => {\n if (!codeList || codeList.length === 0) return;\n if (isArray(codeList[0])) {\n const res2 = codeList.map(item => getTreeName(arr, item, fieldNames).join(emblem));\n return res2.join(',');\n } else {\n const res = getTreeName(arr, codeList, fieldNames);\n return res.join(emblem);\n }\n};\n\nconst getTreeName = (\n list = [],\n val = [],\n fieldNames = { label: 'label', value: 'value', children: 'children' }\n) => {\n const nameList = [];\n list.forEach(item => {\n if (val.length === 0) return;\n if (item[fieldNames.value] === val[0]) {\n nameList.push(item[fieldNames.label]);\n if (isArray(item[fieldNames.children])) {\n const res = getTreeName(item[fieldNames.children], val.slice(1), fieldNames);\n nameList.push(...res);\n }\n }\n });\n return nameList;\n};\n/**\n * 将tree转义为汉字\n * @param codeList string[]\n * @param emblem 拼接符号\n * @returns\n */\nexport const formateTreeToName = (\n arr = [],\n codeList,\n fieldNames = { label: 'label', value: 'value', children: 'children' },\n emblem = ','\n) => {\n if (!codeList || codeList.length === 0) return;\n const str = arr.reduce((t, v) => {\n const res = getListName(v, codeList, fieldNames);\n t = [...t, res];\n return t;\n }, []);\n return str.map(item => item[fieldNames.label]).join(emblem);\n};\n\nconst getListName = (val, list, fieldNames) => {\n let res;\n list.forEach(it1 => {\n if (it1[fieldNames.value] === val) {\n res = it1;\n return;\n }\n const childrenList = it1[fieldNames.children] || [];\n if (childrenList.length) {\n res = getListName(val, childrenList, fieldNames);\n }\n });\n return res;\n};\n\n/**\n * 格式化尺寸,支持数字、px、%\n * @param value 尺寸值\n * @param defaultSize 默认尺寸\n * @returns 格式化后的尺寸字符串\n */\nexport function formatSize(value, defaultSize = '') {\n if (value === undefined || value === null || value === '') {\n return defaultSize;\n }\n const strValue = String(value);\n if (strValue.endsWith('px') || strValue.endsWith('%')) {\n return strValue;\n }\n if (!isNaN(Number(strValue))) {\n return `${strValue}px`;\n }\n return strValue;\n}\n"],"names":["formateCascaderCode","arr","codeList","fieldNames","emblem","isArray","item","getTreeName","list","val","nameList","res","formatSize","value","defaultSize","strValue"],"mappings":";AA0OY,MAACA,IAAsB,CAC/BC,IAAM,CAAA,GACNC,GACAC,IAAa,EAAE,OAAO,SAAS,OAAO,SAAS,UAAU,WAAU,GACnEC,IAAS,QACR;AACD,MAAI,GAACF,KAAYA,EAAS,WAAW;AACrC,WAAIG,EAAQH,EAAS,CAAC,CAAC,IACNA,EAAS,IAAI,CAAAI,MAAQC,EAAYN,GAAKK,GAAMH,CAAU,EAAE,KAAKC,CAAM,CAAC,EACrE,KAAK,GAAG,IAERG,EAAYN,GAAKC,GAAUC,CAAU,EACtC,KAAKC,CAAM;AAE9B,GAEMG,IAAc,CAChBC,IAAO,CAAA,GACPC,IAAM,CAAA,GACNN,IAAa,EAAE,OAAO,SAAS,OAAO,SAAS,UAAU,WAAU,MAClE;AACD,QAAMO,IAAW,CAAA;AACjB,SAAAF,EAAK,QAAQ,CAAAF,MAAQ;AACjB,QAAIG,EAAI,WAAW,KACfH,EAAKH,EAAW,KAAK,MAAMM,EAAI,CAAC,MAChCC,EAAS,KAAKJ,EAAKH,EAAW,KAAK,CAAC,GAChCE,EAAQC,EAAKH,EAAW,QAAQ,CAAC,IAAG;AACpC,YAAMQ,IAAMJ,EAAYD,EAAKH,EAAW,QAAQ,GAAGM,EAAI,MAAM,CAAC,GAAGN,CAAU;AAC3E,MAAAO,EAAS,KAAK,GAAGC,CAAG;AAAA,IACxB;AAAA,EAER,CAAC,GACMD;AACX;AA2CO,SAASE,EAAWC,GAAOC,IAAc,IAAI;AAChD,MAA2BD,KAAU,QAAQA,MAAU;AACnD,WAAOC;AAEX,QAAMC,IAAW,OAAOF,CAAK;AAC7B,SAAIE,EAAS,SAAS,IAAI,KAAKA,EAAS,SAAS,GAAG,KAG/C,MAAM,OAAOA,CAAQ,CAAC,IAFhBA,IAGA,GAAGA,CAAQ;AAG1B;"}
|