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