service-flow-designer 1.1.3 → 1.1.4

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 (151) hide show
  1. package/dist/es/designer/common/components/file-upload.css +7 -0
  2. package/dist/es/designer/common/components/file-upload.vue.d.ts +20 -0
  3. package/dist/es/designer/common/components/file-upload.vue.js +7 -0
  4. package/dist/es/designer/common/components/file-upload.vue2.js +99 -0
  5. package/dist/es/designer/common/components/json-view/index.d.ts +4 -0
  6. package/dist/es/designer/common/components/json-view/json-view-dialog.vue.d.ts +36 -0
  7. package/dist/es/designer/common/components/json-view/json-view-dialog.vue.js +61 -0
  8. package/dist/es/designer/common/components/json-view/json-view-dialog.vue2.js +4 -0
  9. package/dist/es/designer/common/components/json-view/json-view.vue.d.ts +32 -0
  10. package/dist/es/designer/common/components/json-view/json-view.vue.js +142 -0
  11. package/dist/es/designer/common/components/json-view/json-view.vue2.js +4 -0
  12. package/dist/es/designer/common/components/value-set-input/index.d.ts +3 -0
  13. package/dist/es/designer/common/components/value-set-input/index.js +4 -0
  14. package/dist/es/designer/common/components/value-set-input/option.d.ts +12 -0
  15. package/dist/es/designer/common/components/value-set-input/option.js +62 -0
  16. package/dist/es/designer/common/components/value-set-input/value-set-input.css +14 -0
  17. package/dist/es/designer/common/components/value-set-input/value-set-input.vue.d.ts +145 -0
  18. package/dist/es/designer/common/components/value-set-input/value-set-input.vue.js +7 -0
  19. package/dist/es/designer/common/components/value-set-input/value-set-input.vue2.js +420 -0
  20. package/dist/es/designer/common/types/common-type.d.ts +18 -0
  21. package/dist/es/designer/common/types/select.d.ts +7 -0
  22. package/dist/es/designer/common/util/node-util.d.ts +27 -0
  23. package/dist/es/designer/common/util/node-util.js +56 -0
  24. package/dist/es/designer/desginer-index.css +23 -3
  25. package/dist/es/designer/desginer-index.vue.d.ts +13 -1
  26. package/dist/es/designer/desginer-index.vue.js +1 -1
  27. package/dist/es/designer/desginer-index.vue2.js +94 -10
  28. package/dist/es/designer/flow/edge/CustomLine.d.ts +25 -0
  29. package/dist/es/designer/flow/edge/CustomLine.js +49 -0
  30. package/dist/es/designer/service-flow-view/flow-tool-util.d.ts +2 -0
  31. package/dist/es/designer/service-flow-view/flow-tool-util.js +44 -0
  32. package/dist/es/designer/service-flow-view/flow-util.d.ts +53 -0
  33. package/dist/es/designer/service-flow-view/flow-util.js +111 -0
  34. package/dist/es/designer/service-flow-view/service-flow-tool.css +130 -0
  35. package/dist/es/designer/service-flow-view/service-flow-tool.vue.d.ts +33 -0
  36. package/dist/es/designer/service-flow-view/service-flow-tool.vue.js +7 -0
  37. package/dist/es/designer/service-flow-view/service-flow-tool.vue2.js +188 -0
  38. package/dist/es/designer/service-flow-view/service-node-config.css +10 -0
  39. package/dist/es/designer/service-flow-view/service-node-config.vue.d.ts +49 -0
  40. package/dist/es/designer/service-flow-view/service-node-config.vue.js +7 -0
  41. package/dist/es/designer/service-flow-view/service-node-config.vue2.js +139 -0
  42. package/dist/es/designer/service-flow-view/service-params.vue.d.ts +18 -0
  43. package/dist/es/designer/service-flow-view/service-params.vue.js +387 -0
  44. package/dist/es/designer/service-flow-view/service-params.vue2.js +4 -0
  45. package/dist/es/designer/service-flow-view/service-result.vue.d.ts +18 -0
  46. package/dist/es/designer/service-flow-view/service-result.vue.js +274 -0
  47. package/dist/es/designer/service-flow-view/service-result.vue2.js +4 -0
  48. package/dist/es/designer/service-flow-view/service-test/request-params.vue.d.ts +16 -0
  49. package/dist/es/designer/service-flow-view/service-test/request-params.vue.js +309 -0
  50. package/dist/es/designer/service-flow-view/service-test/request-params.vue2.js +4 -0
  51. package/dist/es/designer/service-flow-view/service-test/service-test.vue.d.ts +47 -0
  52. package/dist/es/designer/service-flow-view/service-test/service-test.vue.js +440 -0
  53. package/dist/es/designer/service-flow-view/service-test/service-test.vue2.js +4 -0
  54. package/dist/es/designer/service-flow-view/service-update-log.css +5 -0
  55. package/dist/es/designer/service-flow-view/service-update-log.vue.d.ts +41 -0
  56. package/dist/es/designer/service-flow-view/service-update-log.vue.js +7 -0
  57. package/dist/es/designer/service-flow-view/service-update-log.vue2.js +205 -0
  58. package/dist/es/designer/service-flow-view/view-index.css +102 -0
  59. package/dist/es/designer/service-flow-view/view-index.vue.d.ts +40 -0
  60. package/dist/es/designer/service-flow-view/view-index.vue.js +7 -0
  61. package/dist/es/designer/service-flow-view/view-index.vue2.js +347 -0
  62. package/dist/es/designer/service-panel/component-panel.css +66 -0
  63. package/dist/es/designer/service-panel/component-panel.vue.d.ts +6 -0
  64. package/dist/es/designer/service-panel/component-panel.vue.js +7 -0
  65. package/dist/es/designer/service-panel/component-panel.vue2.js +86 -0
  66. package/dist/es/designer/service-panel/service-list.css +36 -0
  67. package/dist/es/designer/service-panel/service-list.vue.d.ts +22 -0
  68. package/dist/es/designer/service-panel/service-list.vue.js +7 -0
  69. package/dist/es/designer/service-panel/service-list.vue2.js +341 -0
  70. package/dist/es/designer/service-panel/service-panel.css +41 -0
  71. package/dist/es/designer/service-panel/service-panel.vue.d.ts +35 -0
  72. package/dist/es/designer/service-panel/service-panel.vue.js +7 -0
  73. package/dist/es/designer/service-panel/service-panel.vue2.js +80 -0
  74. package/dist/es/stores/page-store.d.ts +23 -0
  75. package/dist/es/stores/page-store.js +79 -0
  76. package/dist/lib/designer/common/components/file-upload.css +7 -0
  77. package/dist/lib/designer/common/components/file-upload.vue.d.ts +20 -0
  78. package/dist/lib/designer/common/components/file-upload.vue.js +6 -0
  79. package/dist/lib/designer/common/components/file-upload.vue2.js +98 -0
  80. package/dist/lib/designer/common/components/json-view/index.d.ts +4 -0
  81. package/dist/lib/designer/common/components/json-view/json-view-dialog.vue.d.ts +36 -0
  82. package/dist/lib/designer/common/components/json-view/json-view-dialog.vue.js +60 -0
  83. package/dist/lib/designer/common/components/json-view/json-view-dialog.vue2.js +3 -0
  84. package/dist/lib/designer/common/components/json-view/json-view.vue.d.ts +32 -0
  85. package/dist/lib/designer/common/components/json-view/json-view.vue.js +141 -0
  86. package/dist/lib/designer/common/components/json-view/json-view.vue2.js +3 -0
  87. package/dist/lib/designer/common/components/value-set-input/index.d.ts +3 -0
  88. package/dist/lib/designer/common/components/value-set-input/index.js +3 -0
  89. package/dist/lib/designer/common/components/value-set-input/option.d.ts +12 -0
  90. package/dist/lib/designer/common/components/value-set-input/option.js +62 -0
  91. package/dist/lib/designer/common/components/value-set-input/value-set-input.css +14 -0
  92. package/dist/lib/designer/common/components/value-set-input/value-set-input.vue.d.ts +145 -0
  93. package/dist/lib/designer/common/components/value-set-input/value-set-input.vue.js +6 -0
  94. package/dist/lib/designer/common/components/value-set-input/value-set-input.vue2.js +419 -0
  95. package/dist/lib/designer/common/types/common-type.d.ts +18 -0
  96. package/dist/lib/designer/common/types/select.d.ts +7 -0
  97. package/dist/lib/designer/common/util/node-util.d.ts +27 -0
  98. package/dist/lib/designer/common/util/node-util.js +56 -0
  99. package/dist/lib/designer/desginer-index.css +23 -3
  100. package/dist/lib/designer/desginer-index.vue.d.ts +13 -1
  101. package/dist/lib/designer/desginer-index.vue.js +1 -1
  102. package/dist/lib/designer/desginer-index.vue2.js +93 -9
  103. package/dist/lib/designer/flow/edge/CustomLine.d.ts +25 -0
  104. package/dist/lib/designer/flow/edge/CustomLine.js +48 -0
  105. package/dist/lib/designer/service-flow-view/flow-tool-util.d.ts +2 -0
  106. package/dist/lib/designer/service-flow-view/flow-tool-util.js +44 -0
  107. package/dist/lib/designer/service-flow-view/flow-util.d.ts +53 -0
  108. package/dist/lib/designer/service-flow-view/flow-util.js +111 -0
  109. package/dist/lib/designer/service-flow-view/service-flow-tool.css +130 -0
  110. package/dist/lib/designer/service-flow-view/service-flow-tool.vue.d.ts +33 -0
  111. package/dist/lib/designer/service-flow-view/service-flow-tool.vue.js +6 -0
  112. package/dist/lib/designer/service-flow-view/service-flow-tool.vue2.js +187 -0
  113. package/dist/lib/designer/service-flow-view/service-node-config.css +10 -0
  114. package/dist/lib/designer/service-flow-view/service-node-config.vue.d.ts +49 -0
  115. package/dist/lib/designer/service-flow-view/service-node-config.vue.js +6 -0
  116. package/dist/lib/designer/service-flow-view/service-node-config.vue2.js +138 -0
  117. package/dist/lib/designer/service-flow-view/service-params.vue.d.ts +18 -0
  118. package/dist/lib/designer/service-flow-view/service-params.vue.js +386 -0
  119. package/dist/lib/designer/service-flow-view/service-params.vue2.js +3 -0
  120. package/dist/lib/designer/service-flow-view/service-result.vue.d.ts +18 -0
  121. package/dist/lib/designer/service-flow-view/service-result.vue.js +273 -0
  122. package/dist/lib/designer/service-flow-view/service-result.vue2.js +3 -0
  123. package/dist/lib/designer/service-flow-view/service-test/request-params.vue.d.ts +16 -0
  124. package/dist/lib/designer/service-flow-view/service-test/request-params.vue.js +308 -0
  125. package/dist/lib/designer/service-flow-view/service-test/request-params.vue2.js +3 -0
  126. package/dist/lib/designer/service-flow-view/service-test/service-test.vue.d.ts +47 -0
  127. package/dist/lib/designer/service-flow-view/service-test/service-test.vue.js +439 -0
  128. package/dist/lib/designer/service-flow-view/service-test/service-test.vue2.js +3 -0
  129. package/dist/lib/designer/service-flow-view/service-update-log.css +5 -0
  130. package/dist/lib/designer/service-flow-view/service-update-log.vue.d.ts +41 -0
  131. package/dist/lib/designer/service-flow-view/service-update-log.vue.js +6 -0
  132. package/dist/lib/designer/service-flow-view/service-update-log.vue2.js +204 -0
  133. package/dist/lib/designer/service-flow-view/view-index.css +102 -0
  134. package/dist/lib/designer/service-flow-view/view-index.vue.d.ts +40 -0
  135. package/dist/lib/designer/service-flow-view/view-index.vue.js +6 -0
  136. package/dist/lib/designer/service-flow-view/view-index.vue2.js +346 -0
  137. package/dist/lib/designer/service-panel/component-panel.css +66 -0
  138. package/dist/lib/designer/service-panel/component-panel.vue.d.ts +6 -0
  139. package/dist/lib/designer/service-panel/component-panel.vue.js +6 -0
  140. package/dist/lib/designer/service-panel/component-panel.vue2.js +86 -0
  141. package/dist/lib/designer/service-panel/service-list.css +36 -0
  142. package/dist/lib/designer/service-panel/service-list.vue.d.ts +22 -0
  143. package/dist/lib/designer/service-panel/service-list.vue.js +6 -0
  144. package/dist/lib/designer/service-panel/service-list.vue2.js +340 -0
  145. package/dist/lib/designer/service-panel/service-panel.css +41 -0
  146. package/dist/lib/designer/service-panel/service-panel.vue.d.ts +35 -0
  147. package/dist/lib/designer/service-panel/service-panel.vue.js +6 -0
  148. package/dist/lib/designer/service-panel/service-panel.vue2.js +79 -0
  149. package/dist/lib/stores/page-store.d.ts +23 -0
  150. package/dist/lib/stores/page-store.js +79 -0
  151. package/package.json +1 -1
@@ -0,0 +1,66 @@
1
+ .amb-design-attr-base-content[data-v-d998b38f] {
2
+ background: #ffffff;
3
+ box-shadow: 1px 0px 10px 0px rgba(0, 0, 0, 0.05);
4
+ height: 100%;
5
+ padding-left: 10px;
6
+ padding-right: 10px;
7
+ overflow: auto;
8
+ }
9
+ .amb-design-attr-item[data-v-d998b38f] {
10
+ margin-bottom: 8px;
11
+ }
12
+ .amb-design-attr-group-header > button[data-v-d998b38f] {
13
+ background: #f5f6f8;
14
+ padding-left: 10px;
15
+ font-size: 14px;
16
+ height: 42px;
17
+ }
18
+ .amb-design-attr-content[data-v-d998b38f] {
19
+ background: #ffffff;
20
+ box-shadow: 1px 0px 10px 0px rgba(0, 0, 0, 0.05);
21
+ height: 100%;
22
+ padding-left: 10px;
23
+ padding-right: 10px;
24
+ overflow: auto;
25
+ position: relative;
26
+ }
27
+ .amb-design-attr-header-search[data-v-d998b38f] {
28
+ margin-top: 16px;
29
+ }
30
+ .amb-design-attr-header-select[data-v-d998b38f] {
31
+ width: 90px;
32
+ height: 36px;
33
+ }
34
+ .amb-design-page-param-row[data-v-d998b38f] {
35
+ height: 34px;
36
+ }
37
+ .el-table__cell > .cell[data-v-d998b38f] {
38
+ white-space: nowrap !important;
39
+ }
40
+ .serviceflow-item[data-v-d998b38f] {
41
+ background: rgba(88, 147, 239, 0.06);
42
+ border: 1px dashed rgba(88, 147, 239, 0.06);
43
+ border-radius: 4px 4px 4px 4px;
44
+ text-align: center;
45
+ margin-top: 12px;
46
+ padding: 10px 5px 10px 5px;
47
+ font-size: 12px;
48
+ cursor: move;
49
+ height: 60px;
50
+ overflow: hidden;
51
+ box-sizing: border-box;
52
+ color: #333333;
53
+ text-overflow: ellipsis;
54
+ white-space: nowrap;
55
+ -webkit-user-select: none; /* Safari */
56
+ -moz-user-select: none; /* Firefox */
57
+ -ms-user-select: none; /* Internet Explorer/Edge */
58
+ user-select: none; /* 标准语法 */
59
+ }
60
+ .serviceflow-item[data-v-d998b38f]:hover {
61
+ background: rgba(11, 45, 101, 0.105);
62
+ border: 1px dashed rgba(11, 45, 101, 0.227);
63
+ }
64
+ .amb-assembly-item-drag[data-v-d998b38f] {
65
+ opacity: 1 !important;
66
+ }
@@ -0,0 +1,6 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
2
+ "drag-node": (...args: any[]) => void;
3
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{}>> & {
4
+ "onDrag-node"?: (...args: any[]) => any;
5
+ }, {}, {}>;
6
+ export default _default;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ const componentPanel_vue_vue_type_script_setup_true_lang = require("./component-panel.vue2.js");
3
+ ;/* empty css */
4
+ const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.js");
5
+ const ComponentPanel = /* @__PURE__ */ _pluginVue_exportHelper(componentPanel_vue_vue_type_script_setup_true_lang, [["__scopeId", "data-v-d998b38f"]]);
6
+ module.exports = ComponentPanel;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ const vue = require("vue");
3
+ var _documentCurrentScript = typeof document !== "undefined" ? document.currentScript : null;
4
+ const _hoisted_1 = ["src"];
5
+ const _hoisted_2 = { style: { "padding": "8px 0px 0px 0px" } };
6
+ const _hoisted_3 = ["title", "onMousedown"];
7
+ const _hoisted_4 = ["src"];
8
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
9
+ __name: "component-panel",
10
+ emits: ["drag-node"],
11
+ setup(__props, { emit: __emit }) {
12
+ const emits = __emit;
13
+ const openCollapseItems = vue.ref(null);
14
+ function $_dragNode(serviceComponent) {
15
+ console.log(`service-component-lib $_dragNode:${serviceComponent.type}`);
16
+ emits("drag-node", serviceComponent);
17
+ }
18
+ function getIconUrl(url) {
19
+ if (url) {
20
+ return new URL(url, typeof document === "undefined" ? require("url").pathToFileURL(__filename).href : _documentCurrentScript && _documentCurrentScript.src || new URL("designer/service-panel/component-panel.vue2.js", document.baseURI).href).href;
21
+ }
22
+ }
23
+ return (_ctx, _cache) => {
24
+ const _component_el_col = vue.resolveComponent("el-col");
25
+ const _component_el_row = vue.resolveComponent("el-row");
26
+ const _component_el_collapse_item = vue.resolveComponent("el-collapse-item");
27
+ const _component_el_collapse = vue.resolveComponent("el-collapse");
28
+ return vue.openBlock(), vue.createBlock(_component_el_collapse, {
29
+ modelValue: openCollapseItems.value,
30
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => openCollapseItems.value = $event),
31
+ style: { "margin-top": "6px" }
32
+ }, {
33
+ default: vue.withCtx(() => [
34
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.serviceComponentGroups, (group, index) => {
35
+ return vue.openBlock(), vue.createBlock(_component_el_collapse_item, {
36
+ key: index,
37
+ name: group.name,
38
+ class: "amb-design-attr-group-header"
39
+ }, {
40
+ title: vue.withCtx(() => [
41
+ vue.createElementVNode("img", {
42
+ src: getIconUrl(group.icon),
43
+ style: { "height": "18px" }
44
+ }, null, 8, _hoisted_1),
45
+ vue.createTextVNode("   "),
46
+ vue.createElementVNode("b", null, vue.toDisplayString(group.label), 1)
47
+ ]),
48
+ default: vue.withCtx(() => [
49
+ vue.createElementVNode("div", _hoisted_2, [
50
+ vue.createVNode(_component_el_row, { gutter: 14 }, {
51
+ default: vue.withCtx(() => [
52
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(group.items, (serviceComponent, index2) => {
53
+ return vue.openBlock(), vue.createBlock(_component_el_col, { span: 8 }, {
54
+ default: vue.withCtx(() => [
55
+ vue.createElementVNode("div", {
56
+ class: "serviceflow-item",
57
+ title: serviceComponent.label,
58
+ onMousedown: ($event) => $_dragNode(serviceComponent)
59
+ }, [
60
+ vue.createElementVNode("div", null, [
61
+ vue.createElementVNode("img", {
62
+ src: getIconUrl(serviceComponent.icon),
63
+ style: { "height": "16px" }
64
+ }, null, 8, _hoisted_4)
65
+ ]),
66
+ vue.createElementVNode("span", null, vue.toDisplayString(serviceComponent.label), 1)
67
+ ], 40, _hoisted_3)
68
+ ]),
69
+ _: 2
70
+ }, 1024);
71
+ }), 256))
72
+ ]),
73
+ _: 2
74
+ }, 1024)
75
+ ])
76
+ ]),
77
+ _: 2
78
+ }, 1032, ["name"]);
79
+ }), 128))
80
+ ]),
81
+ _: 1
82
+ }, 8, ["modelValue"]);
83
+ };
84
+ }
85
+ });
86
+ module.exports = _sfc_main;
@@ -0,0 +1,36 @@
1
+
2
+ [data-v-a5cc897b] .el-table__row {
3
+ cursor: pointer;
4
+ }
5
+ /** 右键菜单样式 */
6
+ .context-menu[data-v-a5cc897b] {
7
+ position: absolute;
8
+ background: #fff;
9
+ z-index: 999;
10
+ margin: 5;
11
+ padding: 8px 8px;
12
+ box-shadow: 0 5px 7px 1px rgba(0, 0, 0, 0.1);
13
+ border: 1px solid #bbbbbb;
14
+ border-radius: 10px;
15
+ font-size: 14px;
16
+ }
17
+ .context-menu li[data-v-a5cc897b] {
18
+ list-style-type: none;
19
+ min-width: 75px;
20
+ line-height: 28px;
21
+ text-align: left;
22
+ border-radius: 5px;
23
+ padding-left: 5px;
24
+ cursor: pointer;
25
+ }
26
+ .context-menu li[data-v-a5cc897b]:hover {
27
+ background: #0165e1;
28
+ color: #fff;
29
+ }
30
+ /** 右键菜单样式 */
31
+ .custom-tree-node[data-v-a5cc897b] {
32
+ font-size: 14px;
33
+ padding-right: 8px;
34
+ display: flex; /* 使用Flex布局 */
35
+ align-items: center; /* 子元素在交叉轴(垂直方向)上居中对齐 */
36
+ }
@@ -0,0 +1,22 @@
1
+ declare const _default: import('vue').DefineComponent<{
2
+ serviceTreeData: {
3
+ type: ArrayConstructor;
4
+ default: () => any[];
5
+ };
6
+ }, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
7
+ "service-click": (...args: any[]) => void;
8
+ "clear-flow-canvas": (...args: any[]) => void;
9
+ "load-tree-data": (...args: any[]) => void;
10
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
11
+ serviceTreeData: {
12
+ type: ArrayConstructor;
13
+ default: () => any[];
14
+ };
15
+ }>> & {
16
+ "onService-click"?: (...args: any[]) => any;
17
+ "onClear-flow-canvas"?: (...args: any[]) => any;
18
+ "onLoad-tree-data"?: (...args: any[]) => any;
19
+ }, {
20
+ serviceTreeData: unknown[];
21
+ }, {}>;
22
+ export default _default;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ const serviceList_vue_vue_type_script_setup_true_lang = require("./service-list.vue2.js");
3
+ ;/* empty css */
4
+ const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.js");
5
+ const ServiceList = /* @__PURE__ */ _pluginVue_exportHelper(serviceList_vue_vue_type_script_setup_true_lang, [["__scopeId", "data-v-a5cc897b"]]);
6
+ module.exports = ServiceList;
@@ -0,0 +1,340 @@
1
+ "use strict";
2
+ const vue = require("vue");
3
+ const iconsVue = require("@element-plus/icons-vue");
4
+ const uuid = require("uuid");
5
+ const http = require("agilebuilder-ui/src/utils/request");
6
+ const nodeUtil = require("../common/util/node-util.js");
7
+ const pageStore = require("../../stores/page-store.js");
8
+ const elementPlus = require("element-plus");
9
+ const _withScopeId = (n) => (vue.pushScopeId("data-v-a5cc897b"), n = n(), vue.popScopeId(), n);
10
+ const _hoisted_1 = { class: "custom-tree-node" };
11
+ const _hoisted_2 = { style: { "margin-left": "5px", "line-height": "14px", "font-size": "14px" } };
12
+ const _hoisted_3 = { class: "dialog-footer" };
13
+ const _hoisted_4 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("span", null, "添加菜单", -1));
14
+ const _hoisted_5 = [
15
+ _hoisted_4
16
+ ];
17
+ const _hoisted_6 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("span", null, "添加服务", -1));
18
+ const _hoisted_7 = [
19
+ _hoisted_6
20
+ ];
21
+ const _hoisted_8 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("span", null, "修改", -1));
22
+ const _hoisted_9 = [
23
+ _hoisted_8
24
+ ];
25
+ const _hoisted_10 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode("span", null, "删除", -1));
26
+ const _hoisted_11 = [
27
+ _hoisted_10
28
+ ];
29
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
30
+ __name: "service-list",
31
+ props: {
32
+ serviceTreeData: {
33
+ type: Array,
34
+ default: () => []
35
+ }
36
+ },
37
+ emits: ["service-click", "clear-flow-canvas", "load-tree-data"],
38
+ setup(__props, { emit: __emit }) {
39
+ const serviceFlowStoreUtil = pageStore.useServiceFlowStore();
40
+ const emits = __emit;
41
+ const treeProps = {
42
+ id: "id",
43
+ label: "name"
44
+ };
45
+ const props = __props;
46
+ const search = vue.ref("");
47
+ const contxtMenuRef = vue.ref();
48
+ const serviceTreeRef = vue.ref();
49
+ const showContextMenu = vue.ref(false);
50
+ const contextMenuData = vue.ref({});
51
+ const dialogVisible = vue.ref(false);
52
+ const editType = vue.ref("");
53
+ const serviceFlow = vue.ref({});
54
+ const currentServiceflowService = vue.ref({});
55
+ const nodeContextmenu = (event, data, node, resolve) => {
56
+ contextMenuData.value = data;
57
+ showContextMenu.value = true;
58
+ const scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
59
+ contxtMenuRef.value.style.display = "block";
60
+ contxtMenuRef.value.style.left = event.x + "px";
61
+ contxtMenuRef.value.style.top = event.y + scrollTop - 60 - 10 + "px";
62
+ document.addEventListener("click", closeRightMenu);
63
+ };
64
+ const closeRightMenu = () => {
65
+ showContextMenu.value = false;
66
+ document.removeEventListener("click", closeRightMenu);
67
+ };
68
+ const addRootServiceMenu = () => {
69
+ editType.value = "MENU";
70
+ createService();
71
+ };
72
+ const addServce = (type) => {
73
+ editType.value = type;
74
+ createService();
75
+ };
76
+ const editServiceBaseInfo = () => {
77
+ editType.value = contextMenuData.value.type;
78
+ serviceFlow.value = JSON.parse(JSON.stringify(contextMenuData.value));
79
+ if (serviceFlow.value.children) {
80
+ delete serviceFlow.value.children;
81
+ }
82
+ dialogVisible.value = true;
83
+ };
84
+ const createService = () => {
85
+ serviceFlow.value = {
86
+ code: uuid.v4(),
87
+ name: "",
88
+ type: editType.value
89
+ };
90
+ if (contextMenuData.value.id) {
91
+ serviceFlow.value.parentCode = contextMenuData.value.code;
92
+ }
93
+ dialogVisible.value = true;
94
+ };
95
+ const saveServiceBaseInfo = () => {
96
+ if (!serviceFlow.value.name) {
97
+ elementPlus.ElMessage.warning("名称不能为空");
98
+ return;
99
+ }
100
+ console.log("保存服务基本信息:", serviceFlow.value);
101
+ if (!serviceFlow.value.systemCode) {
102
+ serviceFlow.value.systemCode = serviceFlowStoreUtil.pageContext.systemCode;
103
+ }
104
+ if (!serviceFlow.value.publishVersion) {
105
+ serviceFlow.value.publishVersion = serviceFlowStoreUtil.pageContext.systemVersion;
106
+ }
107
+ http.post("/component/super-page-design/service-flow", { designLog: null, appServiceFlow: serviceFlow.value }).then((res) => {
108
+ if (res) {
109
+ if (!serviceFlow.value.id) {
110
+ if (!serviceFlow.value.parentCode) {
111
+ props.serviceTreeData.push(res);
112
+ } else {
113
+ if (!contextMenuData.value.children) {
114
+ contextMenuData.value.children = [];
115
+ }
116
+ contextMenuData.value.children.push(res);
117
+ }
118
+ } else {
119
+ emits("load-tree-data");
120
+ Object.assign(contextMenuData.value, res);
121
+ }
122
+ contextMenuData.value = {};
123
+ elementPlus.ElMessage.success("保存成功");
124
+ dialogVisible.value = false;
125
+ serviceFlow.value = {};
126
+ }
127
+ });
128
+ };
129
+ const deleteService = () => {
130
+ console.log("删除服务:", contextMenuData.value);
131
+ if (contextMenuData.value.children && contextMenuData.value.children.length > 0) {
132
+ elementPlus.ElMessage.warning("该节点下存在子节点,不能删除!");
133
+ return;
134
+ }
135
+ http.delete("/component/super-page-design/service-flow", { data: [contextMenuData.value.id] }).then((res) => {
136
+ elementPlus.ElMessage.success("删除成功");
137
+ emits("load-tree-data");
138
+ if (contextMenuData.value.parentCode) {
139
+ const parent = nodeUtil.findServcieByCode(contextMenuData.value.parentCode, props.serviceTreeData);
140
+ const index = parent.children.findIndex((item) => item.id === contextMenuData.value.id);
141
+ parent.children.splice(index, 1);
142
+ } else {
143
+ const index = props.serviceTreeData.findIndex((item) => item.id === contextMenuData.value.id);
144
+ props.serviceTreeData.splice(index, 1);
145
+ }
146
+ if (currentServiceflowService.value.code === contextMenuData.value.code) {
147
+ emits("clear-flow-canvas");
148
+ }
149
+ contextMenuData.value = {};
150
+ });
151
+ };
152
+ const nodeClick = (data, node, event) => {
153
+ console.log("node-click", data);
154
+ closeRightMenu();
155
+ if (data.type === "SERVICE") {
156
+ http.get("/component/super-page-design/service-flow/" + data.id).then((res) => {
157
+ res.variables && (res.variables = JSON.parse(res.variables));
158
+ res.log && (res.log = JSON.parse(res.log));
159
+ res.flow && (res.flow = JSON.parse(res.flow));
160
+ res.returnValues && (res.returnValues = JSON.parse(res.returnValues));
161
+ currentServiceflowService.value = res;
162
+ emits("service-click", res);
163
+ });
164
+ }
165
+ };
166
+ return (_ctx, _cache) => {
167
+ const _component_el_icon = vue.resolveComponent("el-icon");
168
+ const _component_el_input = vue.resolveComponent("el-input");
169
+ const _component_el_col = vue.resolveComponent("el-col");
170
+ const _component_el_button = vue.resolveComponent("el-button");
171
+ const _component_el_tooltip = vue.resolveComponent("el-tooltip");
172
+ const _component_el_row = vue.resolveComponent("el-row");
173
+ const _component_el_tree = vue.resolveComponent("el-tree");
174
+ const _component_el_form_item = vue.resolveComponent("el-form-item");
175
+ const _component_el_dialog = vue.resolveComponent("el-dialog");
176
+ return vue.openBlock(), vue.createElementBlock("div", null, [
177
+ vue.createVNode(_component_el_row, null, {
178
+ default: vue.withCtx(() => [
179
+ vue.createVNode(_component_el_col, { span: 18 }, {
180
+ default: vue.withCtx(() => [
181
+ vue.createVNode(_component_el_input, {
182
+ modelValue: search.value,
183
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => search.value = $event),
184
+ placeholder: "搜索"
185
+ }, {
186
+ suffix: vue.withCtx(() => [
187
+ vue.createVNode(_component_el_icon, null, {
188
+ default: vue.withCtx(() => [
189
+ vue.createVNode(vue.unref(iconsVue.Search))
190
+ ]),
191
+ _: 1
192
+ })
193
+ ]),
194
+ _: 1
195
+ }, 8, ["modelValue"])
196
+ ]),
197
+ _: 1
198
+ }),
199
+ vue.createVNode(_component_el_col, {
200
+ span: 6,
201
+ style: { "text-align": "right" }
202
+ }, {
203
+ default: vue.withCtx(() => [
204
+ vue.createVNode(_component_el_tooltip, {
205
+ effect: "dark",
206
+ content: "添加根菜单",
207
+ placement: "top"
208
+ }, {
209
+ default: vue.withCtx(() => [
210
+ vue.createVNode(_component_el_button, {
211
+ type: "primary",
212
+ icon: vue.unref(iconsVue.Plus),
213
+ onClick: addRootServiceMenu
214
+ }, null, 8, ["icon"])
215
+ ]),
216
+ _: 1
217
+ })
218
+ ]),
219
+ _: 1
220
+ })
221
+ ]),
222
+ _: 1
223
+ }),
224
+ vue.createVNode(_component_el_tree, {
225
+ style: { "margin-top": "10px" },
226
+ ref_key: "serviceTreeRef",
227
+ ref: serviceTreeRef,
228
+ data: __props.serviceTreeData,
229
+ props: treeProps,
230
+ "default-expand-all": true,
231
+ "check-strictly": true,
232
+ "highlight-current": "",
233
+ onNodeClick: nodeClick,
234
+ onNodeContextmenu: nodeContextmenu
235
+ }, {
236
+ default: vue.withCtx(({ node, data }) => [
237
+ vue.createElementVNode("span", _hoisted_1, [
238
+ data.type === "MENU" ? (vue.openBlock(), vue.createBlock(_component_el_icon, {
239
+ key: 0,
240
+ size: 16
241
+ }, {
242
+ default: vue.withCtx(() => [
243
+ vue.createVNode(vue.unref(iconsVue.Menu))
244
+ ]),
245
+ _: 1
246
+ })) : (vue.openBlock(), vue.createBlock(_component_el_icon, {
247
+ key: 1,
248
+ size: 16
249
+ }, {
250
+ default: vue.withCtx(() => [
251
+ vue.createVNode(vue.unref(iconsVue.Promotion))
252
+ ]),
253
+ _: 1
254
+ })),
255
+ vue.createElementVNode("span", _hoisted_2, vue.toDisplayString(node.label), 1)
256
+ ])
257
+ ]),
258
+ _: 1
259
+ }, 8, ["data"]),
260
+ vue.createVNode(_component_el_dialog, {
261
+ modelValue: dialogVisible.value,
262
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => dialogVisible.value = $event),
263
+ "append-to-body": true,
264
+ title: editType.value === "MENU" ? "菜单" : "服务",
265
+ width: "500"
266
+ }, {
267
+ footer: vue.withCtx(() => [
268
+ vue.createElementVNode("div", _hoisted_3, [
269
+ vue.createVNode(_component_el_button, {
270
+ size: "mini",
271
+ onClick: _cache[2] || (_cache[2] = ($event) => dialogVisible.value = false)
272
+ }, {
273
+ default: vue.withCtx(() => [
274
+ vue.createTextVNode("返回")
275
+ ]),
276
+ _: 1
277
+ }),
278
+ vue.createVNode(_component_el_button, {
279
+ size: "mini",
280
+ type: "primary",
281
+ onClick: saveServiceBaseInfo
282
+ }, {
283
+ default: vue.withCtx(() => [
284
+ vue.createTextVNode(" 确定 ")
285
+ ]),
286
+ _: 1
287
+ })
288
+ ])
289
+ ]),
290
+ default: vue.withCtx(() => [
291
+ vue.createVNode(_component_el_form_item, { label: "名称:" }, {
292
+ default: vue.withCtx(() => [
293
+ vue.createVNode(_component_el_input, {
294
+ modelValue: serviceFlow.value.name,
295
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => serviceFlow.value.name = $event)
296
+ }, null, 8, ["modelValue"])
297
+ ]),
298
+ _: 1
299
+ })
300
+ ]),
301
+ _: 1
302
+ }, 8, ["modelValue", "title"]),
303
+ vue.withDirectives(vue.createElementVNode("div", null, [
304
+ vue.createElementVNode("ul", {
305
+ ref_key: "contxtMenuRef",
306
+ ref: contxtMenuRef,
307
+ class: "context-menu"
308
+ }, [
309
+ contextMenuData.value.type === "MENU" ? (vue.openBlock(), vue.createElementBlock("li", {
310
+ key: 0,
311
+ tabindex: "-1",
312
+ class: "menu__item",
313
+ onClick: _cache[4] || (_cache[4] = ($event) => addServce("MENU"))
314
+ }, _hoisted_5)) : vue.createCommentVNode("", true),
315
+ contextMenuData.value.type === "MENU" ? (vue.openBlock(), vue.createElementBlock("li", {
316
+ key: 1,
317
+ tabindex: "-1",
318
+ class: "menu__item",
319
+ onClick: _cache[5] || (_cache[5] = ($event) => addServce("SERVICE"))
320
+ }, _hoisted_7)) : vue.createCommentVNode("", true),
321
+ currentServiceflowService.value.code !== contextMenuData.value.code ? (vue.openBlock(), vue.createElementBlock("li", {
322
+ key: 2,
323
+ tabindex: "-1",
324
+ class: "menu__item",
325
+ onClick: editServiceBaseInfo
326
+ }, _hoisted_9)) : vue.createCommentVNode("", true),
327
+ vue.createElementVNode("li", {
328
+ tabindex: "-1",
329
+ class: "menu__item",
330
+ onClick: deleteService
331
+ }, _hoisted_11)
332
+ ], 512)
333
+ ], 512), [
334
+ [vue.vShow, showContextMenu.value]
335
+ ])
336
+ ]);
337
+ };
338
+ }
339
+ });
340
+ module.exports = _sfc_main;
@@ -0,0 +1,41 @@
1
+
2
+ .amb-design-assembly-content[data-v-697839eb] {
3
+ background: #ffffff;
4
+ box-shadow: 1px 0px 10px 0px rgba(0, 0, 0, 0.05);
5
+ height: 100%;
6
+ padding-left: 10px;
7
+ padding-right: 10px;
8
+ overflow: auto;
9
+ }
10
+ /*控制滚动条宽度*/
11
+ .amb-design-assembly-content[data-v-697839eb]::-webkit-scrollbar {
12
+ width: 1px;
13
+ }
14
+ .amb-assembly-header[data-v-697839eb] {
15
+ position: absolute;
16
+ width: 220px;
17
+ text-align: center;
18
+ padding: 18px 0px 10px 0px;
19
+ padding-bottom: 14px;
20
+ background-color: #ffffff;
21
+ }
22
+ .amb-assembly-header-type[data-v-697839eb] {
23
+ border-radius: 100px 100px 100px 100px;
24
+ background: #ffffff;
25
+ box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
26
+ padding: 10px;
27
+ padding-bottom: 12px;
28
+ }
29
+ .amb-assembly-header-type > label[data-v-697839eb] {
30
+ padding: 4px 14px;
31
+ cursor: pointer;
32
+ font-size: 14px;
33
+ }
34
+ .amb-assembly-header-type > label.selected[data-v-697839eb] {
35
+ border-radius: 100px 100px 100px 100px;
36
+ background: #5893ef;
37
+ color: #ffffff;
38
+ }
39
+ .amb-design-assembly-list[data-v-697839eb] {
40
+ padding-top: 80px;
41
+ }
@@ -0,0 +1,35 @@
1
+ import { default as LogicFlow } from '@logicflow/core';
2
+
3
+ declare const _default: import('vue').DefineComponent<{
4
+ logicFlowInstance: {
5
+ type: typeof LogicFlow;
6
+ default: () => void;
7
+ };
8
+ serviceTreeData: {
9
+ type: ArrayConstructor;
10
+ default: () => any[];
11
+ };
12
+ }, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
13
+ "service-click": (...args: any[]) => void;
14
+ "clear-flow-canvas": (...args: any[]) => void;
15
+ "load-tree-data": (...args: any[]) => void;
16
+ "drag-node": (...args: any[]) => void;
17
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
18
+ logicFlowInstance: {
19
+ type: typeof LogicFlow;
20
+ default: () => void;
21
+ };
22
+ serviceTreeData: {
23
+ type: ArrayConstructor;
24
+ default: () => any[];
25
+ };
26
+ }>> & {
27
+ "onService-click"?: (...args: any[]) => any;
28
+ "onClear-flow-canvas"?: (...args: any[]) => any;
29
+ "onLoad-tree-data"?: (...args: any[]) => any;
30
+ "onDrag-node"?: (...args: any[]) => any;
31
+ }, {
32
+ serviceTreeData: unknown[];
33
+ logicFlowInstance: LogicFlow;
34
+ }, {}>;
35
+ export default _default;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ const servicePanel_vue_vue_type_script_setup_true_lang = require("./service-panel.vue2.js");
3
+ ;/* empty css */
4
+ const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.js");
5
+ const ServicePanel = /* @__PURE__ */ _pluginVue_exportHelper(servicePanel_vue_vue_type_script_setup_true_lang, [["__scopeId", "data-v-697839eb"]]);
6
+ module.exports = ServicePanel;