@fecp/designer 5.6.23 → 5.6.26

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 (63) hide show
  1. package/es/designer/package.json.mjs +1 -1
  2. package/es/designer/src/components/DocumentParam.vue.mjs +1 -1
  3. package/es/designer/src/components/ParamsConfig.vue2.mjs +1 -1
  4. package/es/designer/src/layout/aside/HiddenFieldDialog.vue.mjs +1 -1
  5. package/es/designer/src/packages/advancedFilter/ValueInput.vue2.mjs +1 -1
  6. package/es/designer/src/packages/dataLinkage/index.vue.mjs +1 -1
  7. package/es/designer/src/packages/dialog/useDialogDialog.mjs +1 -1
  8. package/es/designer/src/packages/dialogGlobal/index.vue.mjs +1 -1
  9. package/es/designer/src/packages/dialogGlobal/useDialogGlobalDialog.mjs +1 -1
  10. package/es/designer/src/packages/eventFlow/dialog/action/RiskSch.vue.mjs +1 -1
  11. package/es/designer/src/packages/form/property/approvalHistory.vue.mjs +1 -1
  12. package/es/designer/src/packages/form/property/contract.vue.mjs +1 -1
  13. package/es/designer/src/packages/form/property/subForm.vue.mjs +1 -1
  14. package/es/designer/src/packages/form/property/widgets.vue.mjs +2 -2
  15. package/es/designer/src/packages/importantDataChange/index.vue.mjs +1 -1
  16. package/es/designer/src/packages/prod/index.vue.mjs +1 -1
  17. package/es/designer/src/packages/table/headerBtn.vue.mjs +1 -1
  18. package/es/designer.css +799 -799
  19. package/es/node_modules/element-plus/es/components/container/index.mjs +1 -1
  20. package/es/node_modules/element-plus/es/components/form/index.mjs +1 -1
  21. package/es/node_modules/element-plus/es/components/input/src/input.vue_vue_type_script_setup_true_lang.mjs +1 -1
  22. package/es/packages/vue/src/components/dialog/DialogRenderer.vue2.mjs +7 -7
  23. package/es/packages/vue/src/components/forms/form/Form.vue.mjs +2 -4
  24. package/es/packages/vue/src/components/forms/form/Form.vue2.mjs +1370 -0
  25. package/es/packages/vue/src/components/forms/form/FormAnchorNav.vue2.mjs +113 -0
  26. package/es/packages/vue/src/components/forms/form/RightAnchorNav.vue2.mjs +128 -0
  27. package/es/packages/vue/src/components/forms/form/index.mjs +2 -2
  28. package/es/packages/vue/src/components/forms/text/Text.vue.mjs +2 -1
  29. package/es/packages/vue/src/components/layout/layoutCard/LayoutCard.vue.mjs +4 -4
  30. package/es/packages/vue/src/components/table/Table.vue.mjs +2 -4
  31. package/es/packages/vue/src/components/table/TableColumn.vue.mjs +0 -2
  32. package/es/packages/vue/src/components/table/index.mjs +2 -2
  33. package/es/packages/vue/src/composables/usePageEvents.mjs +0 -2
  34. package/es/packages/vue/src/utils/eventFlowParser.mjs +9 -6
  35. package/lib/designer/package.json.js +1 -1
  36. package/lib/designer/src/components/DocumentParam.vue.js +1 -1
  37. package/lib/designer/src/components/ParamsConfig.vue2.js +1 -1
  38. package/lib/designer/src/layout/aside/HiddenFieldDialog.vue.js +1 -1
  39. package/lib/designer/src/packages/advancedFilter/ValueInput.vue2.js +1 -1
  40. package/lib/designer/src/packages/dataLinkage/index.vue.js +1 -1
  41. package/lib/designer/src/packages/dialog/useDialogDialog.js +1 -1
  42. package/lib/designer/src/packages/dialogGlobal/index.vue.js +1 -1
  43. package/lib/designer/src/packages/dialogGlobal/useDialogGlobalDialog.js +1 -1
  44. package/lib/designer/src/packages/eventFlow/dialog/action/RiskSch.vue.js +1 -1
  45. package/lib/designer/src/packages/form/property/approvalHistory.vue.js +1 -1
  46. package/lib/designer/src/packages/form/property/contract.vue.js +1 -1
  47. package/lib/designer/src/packages/form/property/subForm.vue.js +1 -1
  48. package/lib/designer/src/packages/form/property/widgets.vue.js +2 -2
  49. package/lib/designer/src/packages/importantDataChange/index.vue.js +1 -1
  50. package/lib/designer/src/packages/prod/index.vue.js +1 -1
  51. package/lib/designer/src/packages/table/headerBtn.vue.js +1 -1
  52. package/lib/designer.css +799 -799
  53. package/lib/packages/vue/src/components/dialog/DialogRenderer.vue2.js +10 -10
  54. package/lib/packages/vue/src/components/forms/form/Form.vue.js +2 -4
  55. package/lib/packages/vue/src/components/forms/form/Form.vue2.js +1370 -0
  56. package/lib/packages/vue/src/components/forms/form/FormAnchorNav.vue2.js +113 -0
  57. package/lib/packages/vue/src/components/forms/form/RightAnchorNav.vue2.js +128 -0
  58. package/lib/packages/vue/src/components/forms/text/Text.vue.js +2 -1
  59. package/lib/packages/vue/src/components/table/Table.vue.js +2 -4
  60. package/lib/packages/vue/src/components/table/TableColumn.vue.js +0 -2
  61. package/lib/packages/vue/src/composables/usePageEvents.js +0 -2
  62. package/lib/packages/vue/src/utils/eventFlowParser.js +9 -6
  63. package/package.json +1 -1
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const Vue = require("vue");
4
+ ;/* empty css */
5
+ const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.js");
6
+ const _hoisted_1 = { class: "fec-form-links" };
7
+ const _hoisted_2 = ["href", "onClick"];
8
+ const _hoisted_3 = { class: "fec-form-link-content" };
9
+ const _hoisted_4 = {
10
+ key: 0,
11
+ class: "tab-count"
12
+ };
13
+ const _sfc_main = {
14
+ __name: "FormAnchorNav",
15
+ props: {
16
+ links: {
17
+ type: Array,
18
+ default: () => []
19
+ },
20
+ modelValue: {
21
+ type: [String, Number],
22
+ default: ""
23
+ },
24
+ fecFormRef: {
25
+ type: Object
26
+ }
27
+ },
28
+ emits: ["change", "update:modelValue"],
29
+ setup(__props, { emit: __emit }) {
30
+ var _a;
31
+ const props = __props;
32
+ const formAnchorRef = Vue.ref();
33
+ const emit = __emit;
34
+ Vue.watch(
35
+ () => props.links,
36
+ (newLinks) => {
37
+ if (newLinks.length && !props.modelValue) {
38
+ emit("update:modelValue", newLinks[0].id);
39
+ }
40
+ },
41
+ { immediate: true }
42
+ );
43
+ let isClickScrolling = false;
44
+ function handleClick(e, link) {
45
+ var _a2;
46
+ e.preventDefault();
47
+ emit("update:modelValue", link.id);
48
+ emit("change", link);
49
+ const fecForm = (_a2 = formAnchorRef.value) == null ? void 0 : _a2.closest(".fec-form");
50
+ const element = fecForm == null ? void 0 : fecForm.querySelector(`#comp_${link.id}`);
51
+ if (element) {
52
+ isClickScrolling = true;
53
+ element.scrollIntoView({ behavior: "smooth", block: "start" });
54
+ waitScrollEnd(() => {
55
+ isClickScrolling = false;
56
+ });
57
+ }
58
+ }
59
+ const scrollWrap = (_a = props.fecFormRef) == null ? void 0 : _a.$el.querySelector(".el-scrollbar__wrap");
60
+ scrollWrap == null ? void 0 : scrollWrap.addEventListener("scroll", onScroll);
61
+ function waitScrollEnd(callback) {
62
+ let timer = null;
63
+ if (!scrollWrap) return;
64
+ const handler = () => {
65
+ clearTimeout(timer);
66
+ timer = setTimeout(() => {
67
+ scrollWrap.removeEventListener("scroll", handler);
68
+ callback();
69
+ }, 150);
70
+ };
71
+ scrollWrap.addEventListener("scroll", handler);
72
+ }
73
+ function onScroll() {
74
+ if (isClickScrolling) return;
75
+ const top = scrollWrap.scrollTop;
76
+ let current = null;
77
+ for (const item of props.links) {
78
+ const el = document.getElementById(String(item.id));
79
+ if (!el) continue;
80
+ if (el.offsetTop <= top) current = item;
81
+ }
82
+ if (current) {
83
+ emit("update:modelValue", current.id);
84
+ }
85
+ }
86
+ return (_ctx, _cache) => {
87
+ return __props.links.length ? (Vue.openBlock(), Vue.createElementBlock("div", {
88
+ key: 0,
89
+ class: "fec-form-nav",
90
+ ref_key: "formAnchorRef",
91
+ ref: formAnchorRef
92
+ }, [
93
+ Vue.createElementVNode("div", _hoisted_1, [
94
+ (Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, null, Vue.renderList(__props.links, (link) => {
95
+ return Vue.openBlock(), Vue.createElementBlock("a", {
96
+ key: link.id,
97
+ href: `#${link.id}`,
98
+ class: Vue.normalizeClass(["fec-form-link-item", { "is-active": __props.modelValue == link.id }]),
99
+ onClick: Vue.withModifiers(($event) => handleClick($event, link), ["prevent"])
100
+ }, [
101
+ Vue.createElementVNode("span", _hoisted_3, [
102
+ Vue.createTextVNode(Vue.toDisplayString(link.title) + " ", 1),
103
+ link.count ? (Vue.openBlock(), Vue.createElementBlock("span", _hoisted_4, "(" + Vue.toDisplayString(link.count) + ")", 1)) : Vue.createCommentVNode("", true)
104
+ ])
105
+ ], 10, _hoisted_2);
106
+ }), 128))
107
+ ])
108
+ ], 512)) : Vue.createCommentVNode("", true);
109
+ };
110
+ }
111
+ };
112
+ const FormAnchorNav = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-1a0c9e5c"]]);
113
+ exports.default = FormAnchorNav;
@@ -0,0 +1,128 @@
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
+ const Vue = require("vue");
8
+ ;/* empty css */
9
+ const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.js");
10
+ const index = require("../../../../../../node_modules/element-plus/es/components/anchor/index.js");
11
+ const _hoisted_1 = { class: "anchor-nav" };
12
+ const _hoisted_2 = { key: 0 };
13
+ const _sfc_main = {
14
+ __name: "RightAnchorNav",
15
+ props: {
16
+ links: {
17
+ type: Array,
18
+ default: () => []
19
+ },
20
+ modelValue: {
21
+ type: [String, Number],
22
+ default: ""
23
+ },
24
+ fecFormRef: {
25
+ type: Object
26
+ }
27
+ },
28
+ emits: ["change", "update:modelValue"],
29
+ setup(__props, { emit: __emit }) {
30
+ var _a;
31
+ const props = __props;
32
+ const anchorRef = Vue.ref();
33
+ const emit = __emit;
34
+ Vue.watch(
35
+ () => props.links,
36
+ (newLinks) => {
37
+ if (newLinks.length && !props.modelValue) {
38
+ emit("update:modelValue", newLinks[0].id);
39
+ }
40
+ },
41
+ { immediate: true }
42
+ );
43
+ let isClickScrolling = false;
44
+ function handleClick(e, link) {
45
+ var _a2, _b;
46
+ e.preventDefault();
47
+ emit("update:modelValue", link.id);
48
+ emit("change", link);
49
+ const fecForm = (_b = (_a2 = anchorRef.value) == null ? void 0 : _a2.$el) == null ? void 0 : _b.closest(".fec-form");
50
+ const element = fecForm == null ? void 0 : fecForm.querySelector(`#comp_${link.id}`);
51
+ if (element) {
52
+ isClickScrolling = true;
53
+ element.scrollIntoView({ behavior: "smooth", block: "start" });
54
+ waitScrollEnd(() => {
55
+ isClickScrolling = false;
56
+ });
57
+ }
58
+ }
59
+ const scrollWrap = (_a = props.fecFormRef) == null ? void 0 : _a.$el.querySelector(".el-scrollbar__wrap");
60
+ scrollWrap == null ? void 0 : scrollWrap.addEventListener("scroll", onScroll);
61
+ function waitScrollEnd(callback) {
62
+ let timer = null;
63
+ if (!scrollWrap) return;
64
+ const handler = () => {
65
+ clearTimeout(timer);
66
+ timer = setTimeout(() => {
67
+ scrollWrap.removeEventListener("scroll", handler);
68
+ callback();
69
+ }, 150);
70
+ };
71
+ scrollWrap.addEventListener("scroll", handler);
72
+ }
73
+ function onScroll() {
74
+ var _a2;
75
+ if (isClickScrolling) return;
76
+ const top = scrollWrap.scrollTop;
77
+ let current = null;
78
+ for (const item of props.links) {
79
+ const el = document.getElementById(String(item.id));
80
+ if (!el) continue;
81
+ if (el.offsetTop - 70 <= top) current = item;
82
+ }
83
+ if (current) {
84
+ emit("update:modelValue", current.id);
85
+ (_a2 = anchorRef.value) == null ? void 0 : _a2.scrollTo(`#${current.id}`);
86
+ }
87
+ }
88
+ Vue.onMounted(() => {
89
+ var _a2;
90
+ (_a2 = anchorRef.value) == null ? void 0 : _a2.scrollTo(`#${props.modelValue}`);
91
+ });
92
+ return (_ctx, _cache) => {
93
+ const _component_el_anchor_link = index.ElAnchorLink;
94
+ const _component_el_anchor = index.ElAnchor;
95
+ return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
96
+ _cache[0] || (_cache[0] = Vue.createElementVNode("div", { class: "anchor-title" }, [
97
+ Vue.createElementVNode("div", { class: "label-line" }),
98
+ Vue.createTextVNode(" 导航 ")
99
+ ], -1)),
100
+ Vue.createVNode(_component_el_anchor, {
101
+ type: "underline",
102
+ offset: 70,
103
+ ref_key: "anchorRef",
104
+ ref: anchorRef
105
+ }, {
106
+ default: Vue.withCtx(() => [
107
+ (Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, null, Vue.renderList(__props.links, (link) => {
108
+ return Vue.openBlock(), Vue.createBlock(_component_el_anchor_link, {
109
+ key: link.id,
110
+ href: `#${link.id}`,
111
+ onClick: Vue.withModifiers(($event) => handleClick($event, link), ["prevent"])
112
+ }, {
113
+ default: Vue.withCtx(() => [
114
+ Vue.createTextVNode(Vue.toDisplayString(link.title) + " ", 1),
115
+ link.count ? (Vue.openBlock(), Vue.createElementBlock("span", _hoisted_2, "(" + Vue.toDisplayString(link.count) + ")", 1)) : Vue.createCommentVNode("", true)
116
+ ]),
117
+ _: 2
118
+ }, 1032, ["href", "onClick"]);
119
+ }), 128))
120
+ ]),
121
+ _: 1
122
+ }, 512)
123
+ ]);
124
+ };
125
+ }
126
+ };
127
+ const RightAnchorNav = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-298a5455"]]);
128
+ exports.default = RightAnchorNav;
@@ -162,6 +162,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
162
162
  fields: fieldsList,
163
163
  instance: {
164
164
  instance: {
165
+ ...instance,
165
166
  proxy: formCtx
166
167
  }
167
168
  },
@@ -267,5 +268,5 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
267
268
  };
268
269
  }
269
270
  });
270
- const _Text = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-750b92ed"]]);
271
+ const _Text = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-632db1b4"]]);
271
272
  exports.default = _Text;
@@ -25,8 +25,6 @@ const common = require("../../utils/common.js");
25
25
  ;/* empty css */
26
26
  require("../../utils/formulajs/functionCore.js");
27
27
  const eventFlowHandler = require("../../utils/eventFlow/eventFlowHandler.js");
28
- require("./index.js");
29
- require("../forms/form/index.js");
30
28
  ;/* empty css */
31
29
  ;/* empty css */
32
30
  ;/* empty css */
@@ -1030,5 +1028,5 @@ const _sfc_main = /* @__PURE__ */ Object.assign({
1030
1028
  };
1031
1029
  }
1032
1030
  });
1033
- const Table = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-28ff595c"]]);
1034
- exports.default = Table;
1031
+ const _Table = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-28ff595c"]]);
1032
+ exports.default = _Table;
@@ -15,8 +15,6 @@ const common = require("../../utils/common.js");
15
15
  ;/* empty css */
16
16
  require("../../utils/formulajs/functionCore.js");
17
17
  const eventFlowHandler = require("../../utils/eventFlow/eventFlowHandler.js");
18
- require("./index.js");
19
- require("../forms/form/index.js");
20
18
  ;/* empty css */
21
19
  const _pluginVue_exportHelper = require("../../../../../_virtual/_plugin-vue_export-helper.js");
22
20
  ;/* empty css */
@@ -9,8 +9,6 @@ const Vue = require("vue");
9
9
  ;/* empty css */
10
10
  require("../utils/formulajs/functionCore.js");
11
11
  const eventFlowHandler = require("../utils/eventFlow/eventFlowHandler.js");
12
- require("../components/table/index.js");
13
- require("../components/forms/form/index.js");
14
12
  ;/* empty css */
15
13
  ;/* empty css */
16
14
  ;/* empty css */
@@ -293,19 +293,22 @@ class EventFlowParser {
293
293
  * 执行动作
294
294
  */
295
295
  async executeAction(node) {
296
- var _a, _b, _c, _d, _e, _f;
296
+ var _a, _b, _c, _d;
297
297
  const handler = this.actionHandlers[node.actionType];
298
298
  if (!handler) {
299
299
  throw new Error(`未找到动作处理器: ${node.actionType}`);
300
300
  }
301
+ const rawInstance = (_a = this.options) == null ? void 0 : _a.instance;
302
+ const isWrapped = rawInstance && !rawInstance.appContext && rawInstance.instance;
303
+ const instance = isWrapped ? rawInstance.instance : rawInstance;
301
304
  const context = {
302
305
  parser: this,
303
- instance: (_a = this.options) == null ? void 0 : _a.instance,
304
- ctx: (_c = (_b = this.options) == null ? void 0 : _b.instance) == null ? void 0 : _c.proxy,
305
- customActions: (_d = this.options) == null ? void 0 : _d.customActions,
306
- localConfig: (_e = this.options) == null ? void 0 : _e.localConfig,
306
+ instance,
307
+ ctx: (rawInstance == null ? void 0 : rawInstance.proxy) ?? (instance == null ? void 0 : instance.proxy),
308
+ customActions: (_b = this.options) == null ? void 0 : _b.customActions,
309
+ localConfig: (_c = this.options) == null ? void 0 : _c.localConfig,
307
310
  components: this.components,
308
- metadata: (_f = this.options) == null ? void 0 : _f.metadata
311
+ metadata: (_d = this.options) == null ? void 0 : _d.metadata
309
312
  };
310
313
  return await handler(node, this.data, this.fields, context);
311
314
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fecp/designer",
3
- "version": "5.6.23",
3
+ "version": "5.6.26",
4
4
  "main": "lib/designer/index.js",
5
5
  "module": "es/designer/index.mjs",
6
6
  "files": [