@fecp/designer 5.4.9 → 5.4.11

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.
Files changed (40) hide show
  1. package/es/designer/package.json.mjs +1 -1
  2. package/es/designer/src/api/index.mjs +30 -7
  3. package/es/designer/src/assets/document.png.mjs +4 -0
  4. package/es/designer/src/components/DocumentParam.vue.mjs +158 -0
  5. package/es/designer/src/components/FileTypeSelect.vue.mjs +139 -0
  6. package/es/designer/src/packages/advancedFilter/dialog.vue.mjs +2 -1
  7. package/es/designer/src/packages/eventFlow/dialog/action/Upload.vue2.mjs +19 -120
  8. package/es/designer/src/packages/form/aside/index.mjs +17 -1
  9. package/es/designer/src/packages/form/components/Document.vue.mjs +52 -0
  10. package/es/designer/src/packages/form/index.vue.mjs +25 -5
  11. package/es/designer/src/packages/form/property/document.vue.mjs +201 -0
  12. package/es/designer/src/packages/form/property/index.vue.mjs +5 -2
  13. package/es/designer.css +177 -72
  14. package/es/packages/vue/src/components/all.mjs +2 -0
  15. package/es/packages/vue/src/components/bus/document/Document.vue.mjs +133 -0
  16. package/es/packages/vue/src/components/bus/document/index.mjs +7 -0
  17. package/es/packages/vue/src/components/bus/index.mjs +3 -1
  18. package/es/packages/vue/src/components/forms/form/Form.vue.mjs +3 -1
  19. package/es/packages/vue/src/components/forms/formItem/FormItem.vue.mjs +10 -3
  20. package/lib/designer/package.json.js +1 -1
  21. package/lib/designer/src/api/index.js +29 -6
  22. package/lib/designer/src/assets/document.png.js +4 -0
  23. package/lib/designer/src/components/DocumentParam.vue.js +158 -0
  24. package/lib/designer/src/components/FileTypeSelect.vue.js +139 -0
  25. package/lib/designer/src/packages/advancedFilter/dialog.vue.js +2 -1
  26. package/lib/designer/src/packages/eventFlow/dialog/action/Upload.vue2.js +22 -123
  27. package/lib/designer/src/packages/form/aside/index.js +17 -1
  28. package/lib/designer/src/packages/form/components/Document.vue.js +52 -0
  29. package/lib/designer/src/packages/form/index.vue.js +25 -5
  30. package/lib/designer/src/packages/form/property/document.vue.js +201 -0
  31. package/lib/designer/src/packages/form/property/index.vue.js +5 -2
  32. package/lib/designer.css +177 -72
  33. package/lib/packages/vue/index.js +5 -5
  34. package/lib/packages/vue/src/components/all.js +8 -6
  35. package/lib/packages/vue/src/components/bus/document/Document.vue.js +133 -0
  36. package/lib/packages/vue/src/components/bus/document/index.js +7 -0
  37. package/lib/packages/vue/src/components/bus/index.js +2 -0
  38. package/lib/packages/vue/src/components/forms/form/Form.vue.js +3 -1
  39. package/lib/packages/vue/src/components/forms/formItem/FormItem.vue.js +14 -7
  40. package/package.json +1 -1
@@ -168,7 +168,23 @@ const components = [
168
168
  },
169
169
  {
170
170
  fieldType: "document",
171
- label: "要件"
171
+ label: "要件",
172
+ titleMode: "label",
173
+ isSupplement: true,
174
+ multiple: true,
175
+ download: true,
176
+ acceptType: [
177
+ "doc",
178
+ "xls",
179
+ "ppt",
180
+ "pdf",
181
+ "text",
182
+ "image",
183
+ "video",
184
+ "audio",
185
+ "zip"
186
+ ],
187
+ essentialParams: []
172
188
  },
173
189
  {
174
190
  fieldType: "contract",
@@ -0,0 +1,52 @@
1
+ import { computed, createElementBlock, openBlock, createCommentVNode, createElementVNode, createBlock } from "vue";
2
+ import _imports_0 from "../../../assets/document.png.mjs";
3
+ import H2Wrapper from "./H2Wrapper.vue.mjs";
4
+ import SubTitle from "./SubTitle.vue.mjs";
5
+ /* empty css */
6
+ import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
7
+ const _hoisted_1 = { class: "document-container" };
8
+ const _hoisted_2 = {
9
+ key: 0,
10
+ style: { "margin-bottom": "12px" }
11
+ };
12
+ const _sfc_main = {
13
+ __name: "Document",
14
+ props: {
15
+ componentData: {
16
+ type: Object,
17
+ required: true
18
+ }
19
+ },
20
+ setup(__props) {
21
+ const props = __props;
22
+ const titleMode = computed(() => {
23
+ var _a;
24
+ const mode = ((_a = props.componentData) == null ? void 0 : _a.titleMode) || "none";
25
+ return mode;
26
+ });
27
+ return (_ctx, _cache) => {
28
+ return openBlock(), createElementBlock("div", _hoisted_1, [
29
+ titleMode.value !== "none" ? (openBlock(), createElementBlock("div", _hoisted_2, [
30
+ titleMode.value === "label" ? (openBlock(), createBlock(H2Wrapper, {
31
+ key: 0,
32
+ componentData: __props.componentData
33
+ }, null, 8, ["componentData"])) : titleMode.value === "subLabel" ? (openBlock(), createBlock(SubTitle, {
34
+ key: 1,
35
+ componentData: __props.componentData
36
+ }, null, 8, ["componentData"])) : createCommentVNode("", true)
37
+ ])) : createCommentVNode("", true),
38
+ _cache[0] || (_cache[0] = createElementVNode("div", { class: "document-preview" }, [
39
+ createElementVNode("img", {
40
+ src: _imports_0,
41
+ alt: "要件",
42
+ class: "document-img"
43
+ })
44
+ ], -1))
45
+ ]);
46
+ };
47
+ }
48
+ };
49
+ const Document = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-d558f9e0"]]);
50
+ export {
51
+ Document as default
52
+ };
@@ -16,6 +16,7 @@ import H2Wrapper from "./components/H2Wrapper.vue.mjs";
16
16
  import SubForm from "./components/SubForm.vue.mjs";
17
17
  import ApprovalHistory from "./components/approvalHistory.vue.mjs";
18
18
  import SubTable from "./components/SubTable.vue.mjs";
19
+ import Document from "./components/Document.vue.mjs";
19
20
  import { StarFilled as star_filled_default, Star as star_default, Lock as lock_default, Unlock as unlock_default, Delete as delete_default } from "../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
20
21
  import { getEditConfigData, setSelectedItem, setHoverItem, getCurrentClass, isSelectedItem } from "../utils/common.mjs";
21
22
  import { throttle as eo } from "../../../../node_modules/@vexip-ui/utils/dist/index.mjs";
@@ -107,7 +108,7 @@ const _sfc_main = {
107
108
  (labelPosition) => {
108
109
  const targetHeight = labelPosition === "top" ? 0.75 : 1;
109
110
  layoutData.value.forEach((item) => {
110
- var _a, _b, _c;
111
+ var _a, _b, _c, _d, _e;
111
112
  if (["subTitle", "h2", "divider"].includes((_a = item.component) == null ? void 0 : _a.fieldType)) {
112
113
  item.h = 1 * targetHeight;
113
114
  } else if (["subForm", "subTable", "approvalHistory"].includes(
@@ -118,6 +119,12 @@ const _sfc_main = {
118
119
  } else {
119
120
  item.h = 3 * targetHeight;
120
121
  }
122
+ } else if (["document"].includes((_d = item.component) == null ? void 0 : _d.fieldType)) {
123
+ if (((_e = item.component) == null ? void 0 : _e.titleMode) == "none") {
124
+ item.h = 6 * targetHeight;
125
+ } else {
126
+ item.h = 7 * targetHeight;
127
+ }
121
128
  }
122
129
  });
123
130
  gridLayout.value.resizeEvent();
@@ -213,11 +220,21 @@ const _sfc_main = {
213
220
  h: editConfigData.value.labelPosition == "top" ? 0.75 : 1,
214
221
  isResizable: false
215
222
  };
216
- } else if (component.fieldType == "subForm" || component.fieldType == "subTable" || component.fieldType == "approvalHistory") {
223
+ } else if (component.fieldType == "subForm" || component.fieldType == "subTable") {
217
224
  finalWH = {
218
225
  w: editConfigData.value.columns,
219
226
  h: editConfigData.value.labelPosition == "top" ? 1.5 : 2
220
227
  };
228
+ } else if (component.fieldType == "approvalHistory") {
229
+ finalWH = {
230
+ w: editConfigData.value.columns,
231
+ h: editConfigData.value.labelPosition == "top" ? 2.25 : 3
232
+ };
233
+ } else if (component.fieldType == "document") {
234
+ finalWH = {
235
+ w: editConfigData.value.columns,
236
+ h: editConfigData.value.labelPosition == "top" ? 4.5 : 6
237
+ };
221
238
  }
222
239
  const colNum = editConfigData.value.columns;
223
240
  const rowHeight = editConfigData.value.labelPosition == "top" ? 90 : 60;
@@ -459,8 +476,11 @@ const _sfc_main = {
459
476
  }, null, 8, ["component-data"])) : item.component.fieldType == "approvalHistory" ? (openBlock(), createBlock(ApprovalHistory, {
460
477
  key: 4,
461
478
  "component-data": item.component
462
- }, null, 8, ["component-data"])) : item.component.fieldType == "divider" ? (openBlock(), createBlock(_component_el_divider, {
479
+ }, null, 8, ["component-data"])) : item.component.fieldType == "document" ? (openBlock(), createBlock(Document, {
463
480
  key: 5,
481
+ "component-data": item.component
482
+ }, null, 8, ["component-data"])) : item.component.fieldType == "divider" ? (openBlock(), createBlock(_component_el_divider, {
483
+ key: 6,
464
484
  "border-style": "dashed"
465
485
  }, {
466
486
  default: withCtx(() => _cache[3] || (_cache[3] = [
@@ -468,7 +488,7 @@ const _sfc_main = {
468
488
  ])),
469
489
  _: 1
470
490
  })) : (openBlock(), createBlock(ComponentPreviewWrapper, {
471
- key: 6,
491
+ key: 7,
472
492
  "component-data": item.component
473
493
  }, null, 8, ["component-data"]))
474
494
  ], 2)
@@ -491,7 +511,7 @@ const _sfc_main = {
491
511
  };
492
512
  }
493
513
  };
494
- const formWorkArea = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-55301d2f"]]);
514
+ const formWorkArea = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-0e6f2151"]]);
495
515
  export {
496
516
  formWorkArea as default
497
517
  };
@@ -0,0 +1,201 @@
1
+ import "../../../../../node_modules/element-plus/es/index.mjs";
2
+ /* empty css */
3
+ /* empty css */
4
+ /* empty css */
5
+ /* empty css */
6
+ /* empty css */
7
+ /* empty css */
8
+ /* empty css */
9
+ /* empty css */
10
+ /* empty css */
11
+ /* empty css */
12
+ import { computed, ref, createBlock, openBlock, withCtx, createVNode, createElementBlock, createCommentVNode, createTextVNode, Fragment, createElementVNode } from "vue";
13
+ import { getCurrentItem, getEditConfigData } from "../../utils/common.mjs";
14
+ import emitter from "../../utils/eventBus.mjs";
15
+ import _sfc_main$1 from "../../../components/FileTypeSelect.vue.mjs";
16
+ import DocumentParam from "../../../components/DocumentParam.vue.mjs";
17
+ /* empty css */
18
+ import _export_sfc from "../../../../../_virtual/_plugin-vue_export-helper.mjs";
19
+ import { ElCollapse, ElCollapseItem } from "../../../../../node_modules/element-plus/es/components/collapse/index.mjs";
20
+ import { ElForm, ElFormItem } from "../../../../../node_modules/element-plus/es/components/form/index.mjs";
21
+ import { ElInput } from "../../../../../node_modules/element-plus/es/components/input/index.mjs";
22
+ import { ElRadioGroup, ElRadioButton } from "../../../../../node_modules/element-plus/es/components/radio/index.mjs";
23
+ import { ElSwitch } from "../../../../../node_modules/element-plus/es/components/switch/index.mjs";
24
+ const _sfc_main = {
25
+ __name: "document",
26
+ setup(__props) {
27
+ const currentItem = computed(() => {
28
+ return getCurrentItem();
29
+ });
30
+ const activeName = ref(["common"]);
31
+ function handleTitleModeChange(value) {
32
+ const item = currentItem.value;
33
+ const fieldsData = getEditConfigData().fieldsData;
34
+ const fieldInData = fieldsData == null ? void 0 : fieldsData.find((f) => {
35
+ var _a;
36
+ return ((_a = f.component) == null ? void 0 : _a.id) === item.id;
37
+ });
38
+ if (fieldInData) {
39
+ fieldInData.h = value === "none" ? 5 : 6;
40
+ emitter.emit("resizeEvent");
41
+ }
42
+ }
43
+ return (_ctx, _cache) => {
44
+ const _component_el_input = ElInput;
45
+ const _component_el_form_item = ElFormItem;
46
+ const _component_el_radio_button = ElRadioButton;
47
+ const _component_el_radio_group = ElRadioGroup;
48
+ const _component_el_switch = ElSwitch;
49
+ const _component_el_form = ElForm;
50
+ const _component_el_collapse_item = ElCollapseItem;
51
+ const _component_el_collapse = ElCollapse;
52
+ return openBlock(), createBlock(_component_el_collapse, {
53
+ class: "setting",
54
+ modelValue: activeName.value,
55
+ "onUpdate:modelValue": _cache[9] || (_cache[9] = ($event) => activeName.value = $event)
56
+ }, {
57
+ default: withCtx(() => [
58
+ createVNode(_component_el_collapse_item, {
59
+ name: "common",
60
+ title: "基本属性"
61
+ }, {
62
+ default: withCtx(() => [
63
+ createVNode(_component_el_form, {
64
+ "label-position": "top",
65
+ "label-width": "auto",
66
+ model: currentItem.value
67
+ }, {
68
+ default: withCtx(() => [
69
+ createVNode(_component_el_form_item, {
70
+ label: "标题",
71
+ required: ""
72
+ }, {
73
+ default: withCtx(() => [
74
+ createVNode(_component_el_input, {
75
+ modelValue: currentItem.value.label,
76
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => currentItem.value.label = $event)
77
+ }, null, 8, ["modelValue"])
78
+ ]),
79
+ _: 1
80
+ }),
81
+ createVNode(_component_el_form_item, { label: "标题模式" }, {
82
+ default: withCtx(() => [
83
+ createVNode(_component_el_radio_group, {
84
+ modelValue: currentItem.value.titleMode,
85
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => currentItem.value.titleMode = $event),
86
+ size: "small",
87
+ onChange: handleTitleModeChange
88
+ }, {
89
+ default: withCtx(() => [
90
+ createVNode(_component_el_radio_button, { value: "none" }, {
91
+ default: withCtx(() => _cache[10] || (_cache[10] = [
92
+ createTextVNode("无")
93
+ ])),
94
+ _: 1
95
+ }),
96
+ createVNode(_component_el_radio_button, { value: "label" }, {
97
+ default: withCtx(() => _cache[11] || (_cache[11] = [
98
+ createTextVNode("标题")
99
+ ])),
100
+ _: 1
101
+ }),
102
+ createVNode(_component_el_radio_button, { value: "subLabel" }, {
103
+ default: withCtx(() => _cache[12] || (_cache[12] = [
104
+ createTextVNode("子标题")
105
+ ])),
106
+ _: 1
107
+ })
108
+ ]),
109
+ _: 1
110
+ }, 8, ["modelValue"])
111
+ ]),
112
+ _: 1
113
+ }),
114
+ currentItem.value.titleMode != "none" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
115
+ currentItem.value.titleMode == "label" ? (openBlock(), createBlock(_component_el_form_item, {
116
+ key: 0,
117
+ label: "副标题"
118
+ }, {
119
+ default: withCtx(() => [
120
+ createVNode(_component_el_input, {
121
+ modelValue: currentItem.value.subLabel,
122
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => currentItem.value.subLabel = $event),
123
+ rows: 2,
124
+ type: "textarea",
125
+ resize: "none"
126
+ }, null, 8, ["modelValue"])
127
+ ]),
128
+ _: 1
129
+ })) : createCommentVNode("", true)
130
+ ], 64)) : createCommentVNode("", true),
131
+ createVNode(_component_el_form_item, { label: "权限标识" }, {
132
+ default: withCtx(() => [
133
+ createVNode(_component_el_input, {
134
+ modelValue: currentItem.value.permission,
135
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => currentItem.value.permission = $event)
136
+ }, null, 8, ["modelValue"])
137
+ ]),
138
+ _: 1
139
+ }),
140
+ createVNode(_component_el_form_item, { label: "是否允许补传" }, {
141
+ default: withCtx(() => [
142
+ createVNode(_component_el_switch, {
143
+ modelValue: currentItem.value.isSupplement,
144
+ "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => currentItem.value.isSupplement = $event)
145
+ }, null, 8, ["modelValue"]),
146
+ _cache[13] || (_cache[13] = createElementVNode("div", { class: "form-item-hint" }, "只读情况下是否允许补传", -1))
147
+ ]),
148
+ _: 1
149
+ }),
150
+ createVNode(_component_el_form_item, { label: "是否允许多文件上传" }, {
151
+ default: withCtx(() => [
152
+ createVNode(_component_el_switch, {
153
+ modelValue: currentItem.value.multiple,
154
+ "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => currentItem.value.multiple = $event)
155
+ }, null, 8, ["modelValue"])
156
+ ]),
157
+ _: 1
158
+ }),
159
+ createVNode(_component_el_form_item, { label: "是否允许下载" }, {
160
+ default: withCtx(() => [
161
+ createVNode(_component_el_switch, {
162
+ modelValue: currentItem.value.download,
163
+ "onUpdate:modelValue": _cache[6] || (_cache[6] = ($event) => currentItem.value.download = $event)
164
+ }, null, 8, ["modelValue"])
165
+ ]),
166
+ _: 1
167
+ }),
168
+ createVNode(_component_el_form_item, { label: "允许上传的文件类型" }, {
169
+ default: withCtx(() => [
170
+ createVNode(_sfc_main$1, {
171
+ modelValue: currentItem.value.acceptType,
172
+ "onUpdate:modelValue": _cache[7] || (_cache[7] = ($event) => currentItem.value.acceptType = $event)
173
+ }, null, 8, ["modelValue"])
174
+ ]),
175
+ _: 1
176
+ }),
177
+ createVNode(_component_el_form_item, { label: "要件配置" }, {
178
+ default: withCtx(() => [
179
+ createVNode(DocumentParam, {
180
+ modelValue: currentItem.value.essentialParams,
181
+ "onUpdate:modelValue": _cache[8] || (_cache[8] = ($event) => currentItem.value.essentialParams = $event)
182
+ }, null, 8, ["modelValue"])
183
+ ]),
184
+ _: 1
185
+ })
186
+ ]),
187
+ _: 1
188
+ }, 8, ["model"])
189
+ ]),
190
+ _: 1
191
+ })
192
+ ]),
193
+ _: 1
194
+ }, 8, ["modelValue"]);
195
+ };
196
+ }
197
+ };
198
+ const document = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-73174d5d"]]);
199
+ export {
200
+ document as default
201
+ };
@@ -11,6 +11,7 @@ import _sfc_main$4 from "./subForm.vue.mjs";
11
11
  import subTable from "./subTable.vue.mjs";
12
12
  import _sfc_main$5 from "./blank.vue.mjs";
13
13
  import _sfc_main$6 from "./approvalHistory.vue.mjs";
14
+ import document from "./document.vue.mjs";
14
15
  import { ElScrollbar } from "../../../../../node_modules/element-plus/es/components/scrollbar/index.mjs";
15
16
  const _sfc_main = {
16
17
  __name: "index",
@@ -19,7 +20,7 @@ const _sfc_main = {
19
20
  return getCurrentItem();
20
21
  });
21
22
  const editingProperty = computed(() => {
22
- var _a, _b, _c, _d, _e, _f, _g, _h;
23
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i;
23
24
  switch ((_a = currentItem.value) == null ? void 0 : _a.type) {
24
25
  case "widgets":
25
26
  if (((_b = currentItem.value) == null ? void 0 : _b.fieldType) == "subTitle" || ((_c = currentItem.value) == null ? void 0 : _c.fieldType) == "h2") {
@@ -32,7 +33,9 @@ const _sfc_main = {
32
33
  return _sfc_main$5;
33
34
  } else if (((_g = currentItem.value) == null ? void 0 : _g.fieldType) == "approvalHistory") {
34
35
  return _sfc_main$6;
35
- } else if (((_h = currentItem.value) == null ? void 0 : _h.fieldType) == "divider") {
36
+ } else if (((_h = currentItem.value) == null ? void 0 : _h.fieldType) == "document") {
37
+ return document;
38
+ } else if (((_i = currentItem.value) == null ? void 0 : _i.fieldType) == "divider") {
36
39
  return null;
37
40
  } else {
38
41
  return widgets;