diff --git a/examples/html/ddei-editor.umd.cjs b/examples/html/ddei-editor.umd.cjs index 2b85ccc..c063f2a 100644 --- a/examples/html/ddei-editor.umd.cjs +++ b/examples/html/ddei-editor.umd.cjs @@ -32829,7 +32829,7 @@ to { } } } - json.ddeiVersion = 1243; + json.ddeiVersion = 1244; return json; } /** diff --git a/examples/html/ddei-flow.umd.cjs b/examples/html/ddei-flow.umd.cjs index e6c7746..37657ad 100644 --- a/examples/html/ddei-flow.umd.cjs +++ b/examples/html/ddei-flow.umd.cjs @@ -1,6 +1,6 @@ -(function(global, factory) { - typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("vue"), require("ddei-editor")) : typeof define === "function" && define.amd ? define(["exports", "vue", "ddei-editor"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global["ddei-flow"] = {}, global.Vue, global["ddei-editor"])); -})(this, function(exports2, vue, ddeiEditor) { +(function(global2, factory) { + typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("vue"), require("ddei-editor")) : typeof define === "function" && define.amd ? define(["exports", "vue", "ddei-editor"], factory) : (global2 = typeof globalThis !== "undefined" ? globalThis : global2 || self, factory(global2["ddei-flow"] = {}, global2.Vue, global2["ddei-editor"])); +})(this, function(exports, vue, ddeiEditor) { "use strict";var __defProp = Object.defineProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField = (obj, key, value) => { @@ -1397,7 +1397,7 @@ var __publicField = (obj, key, value) => { width: calc(100% + 20px); height: calc(100% + 28px); } -.ddei-flow-element-setting-dialog[data-v-8bd76064] { +.ddei-flow-element-setting-dialog[data-v-2d6bc3f8] { width: 200px; background: var(--panel-background); display: none; @@ -1408,7 +1408,7 @@ var __publicField = (obj, key, value) => { border-radius: 6px; color: black; } -.ddei-flow-element-setting-dialog .content[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content[data-v-2d6bc3f8] { width: 100%; height: 100%; overflow-y: auto; @@ -1418,43 +1418,43 @@ var __publicField = (obj, key, value) => { justify-content: start; align-items: center; } -.ddei-flow-element-setting-dialog .content .row[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row[data-v-2d6bc3f8] { flex: 0 1 20px; margin: 0 5px; width: 100%; } -.ddei-flow-element-setting-dialog .content .row[data-v-8bd76064]:hover { +.ddei-flow-element-setting-dialog .content .row[data-v-2d6bc3f8]:hover { background: #e6e4e4; cursor: pointer; } -.ddei-flow-element-setting-dialog .content .row .icon-ddei-flow[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .icon-ddei-flow[data-v-2d6bc3f8] { opacity: 0.5; } -.ddei-flow-element-setting-dialog .content .row .icon-ddei-flow[data-v-8bd76064]:hover { +.ddei-flow-element-setting-dialog .content .row .icon-ddei-flow[data-v-2d6bc3f8]:hover { opacity: 1; } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-sub-type[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-sub-type[data-v-2d6bc3f8] { display: flex; justify-content: center; align-items: center; font-size: 12px; height: 20px; } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-sub-type-text[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-sub-type-text[data-v-2d6bc3f8] { flex: 1; text-wrap: nowrap; } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-sub-type .icon-ddei-flow[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-sub-type .icon-ddei-flow[data-v-2d6bc3f8] { flex: 0 0 12px; margin: 0 10px; } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker[data-v-2d6bc3f8] { font-size: 12px; height: 20px; width: 150px; margin-left: 18px; } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker .chk_state[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker .chk_state[data-v-2d6bc3f8] { border: 1px solid var(--panel-title); width: 12px; height: 12px; @@ -1463,7 +1463,7 @@ var __publicField = (obj, key, value) => { box-sizing: border-box; background: var(--panel-background); } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker .chk_state_checked[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker .chk_state_checked[data-v-2d6bc3f8] { border: 1px solid var(--panel-title); width: 12px; height: 12px; @@ -1473,96 +1473,106 @@ var __publicField = (obj, key, value) => { box-sizing: border-box; color: #fff; } -.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker .chk_state_checked span[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-bpmn-marker .chk_state_checked span[data-v-2d6bc3f8] { margin-top: -3.5px; margin-left: 0.5px; display: block; font-size: 11px; } -.ddei-flow-element-setting-dialog .content .row .quick-button[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .quick-button[data-v-2d6bc3f8] { height: 20px; width: 100%; display: flex; justify-content: center; align-items: center; } -.ddei-flow-element-setting-dialog .content .row .quick-button .icon[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .quick-button .icon[data-v-2d6bc3f8] { width: 14px; height: 14px; opacity: 0.5; } -.ddei-flow-element-setting-dialog .content .row .quick-button .icon[data-v-8bd76064]:hover { +.ddei-flow-element-setting-dialog .content .row .quick-button .icon[data-v-2d6bc3f8]:hover { opacity: 1; } -.ddei-flow-element-setting-dialog .content .row .quick-button-text[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .quick-button-text[data-v-2d6bc3f8] { margin-right: 5px; color: black; font-size: 12px; } -.ddei-flow-element-setting-dialog .content .row .change-point-type[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-point-type[data-v-2d6bc3f8] { height: 20px; width: 100%; display: flex; justify-content: center; align-items: center; } -.ddei-flow-element-setting-dialog .content .row .change-point-type .icon-ddei-flow[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-point-type .icon-ddei-flow[data-v-2d6bc3f8] { width: 14px; height: 14px; } -.ddei-flow-element-setting-dialog .content .row .change-point-type-title[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-point-type-title[data-v-2d6bc3f8] { margin-right: 5px; color: black; font-size: 12px; } -.ddei-flow-element-setting-dialog .content .row .change-point-type-text[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-point-type-text[data-v-2d6bc3f8] { color: black; font-size: 12px; } -.ddei-flow-element-setting-dialog .content .row .change-property-text[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-text[data-v-2d6bc3f8] { height: 20px; width: 100%; display: flex; justify-content: center; align-items: center; } -.ddei-flow-element-setting-dialog .content .row .change-property-text-title[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-text-title[data-v-2d6bc3f8] { flex: 0 0 40px; color: black; font-size: 12px; } -.ddei-flow-element-setting-dialog .content .row .change-property-text-input[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-text-input[data-v-2d6bc3f8] { flex: 1; color: black; font-size: 12px; text-align: left; } -.ddei-flow-element-setting-dialog .content .row .change-property-text-input input[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-text-input input[data-v-2d6bc3f8] { width: 95%; height: 18px; + background: white; + color: black; } -.ddei-flow-element-setting-dialog .content .row .change-property-textarea[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-text-input input[data-v-2d6bc3f8]::placeholder { + color: grey; +} +.ddei-flow-element-setting-dialog .content .row .change-property-textarea[data-v-2d6bc3f8] { height: 60px; width: 100%; display: flex; justify-content: center; align-items: center; } -.ddei-flow-element-setting-dialog .content .row .change-property-textarea-title[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-textarea-title[data-v-2d6bc3f8] { flex: 0 0 40px; color: black; font-size: 12px; } -.ddei-flow-element-setting-dialog .content .row .change-property-textarea-input[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-textarea-input[data-v-2d6bc3f8] { flex: 1; color: black; font-size: 12px; text-align: left; } -.ddei-flow-element-setting-dialog .content .row .change-property-textarea-input textarea[data-v-8bd76064] { +.ddei-flow-element-setting-dialog .content .row .change-property-textarea-input textarea[data-v-2d6bc3f8] { + background: white; + color: black; width: 95%; height: 55px; } +.ddei-flow-element-setting-dialog .content .row .change-property-textarea-input textarea[data-v-2d6bc3f8]::placeholder { + color: grey; +} .ddei-flow-setting-button-dialog[data-v-09abda49] { display: none; position: absolute; @@ -1758,6 +1768,8 @@ var __publicField = (obj, key, value) => { calltask: "调用", busitask: "业务规则", loading: "加载中", + escalation: "升级", + escalname: "事件", property: { notInterrupting: "非中断", dataType: "数据类型", @@ -2069,6 +2081,12 @@ var __publicField = (obj, key, value) => { }; const lineObiCheck = function(model, param) { let line = param.line; + if (model) { + let ignoreCodes = ["1000501", "1000506", "1000507", "1000505", "1000504"]; + if (ignoreCodes.indexOf(model.modelCode) != -1 || model.depModel && ignoreCodes.indexOf(model.depModel.modelCode)) { + return false; + } + } if (line) { let distLinks = line.stage.getDistModelLinks(line.id); if (distLinks) { @@ -3437,6 +3455,9 @@ var __publicField = (obj, key, value) => { icon: ``, + filters: { + LINE_OBI_FILTER: lineObiCheck + }, EVENT_MOUSE_MOVE_IN_CONTROL: showSettingButton }; const __vite_glob_0_8 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ @@ -3524,6 +3545,9 @@ var __publicField = (obj, key, value) => { ] } }, + filters: { + LINE_OBI_FILTER: lineObiCheck + }, EVENT_MOUSE_MOVE_IN_CONTROL: showSettingButton }; const __vite_glob_0_9 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ @@ -3589,6 +3613,9 @@ var __publicField = (obj, key, value) => { ] } }, + filters: { + LINE_OBI_FILTER: lineObiCheck + }, EVENT_MOUSE_MOVE_IN_CONTROL: showSettingButton }; const __vite_glob_0_10 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ @@ -4602,6 +4629,9 @@ var __publicField = (obj, key, value) => { icon: ``, + filters: { + LINE_OBI_FILTER: lineObiCheck + }, EVENT_MOUSE_MOVE_IN_CONTROL: showSettingButton }; const __vite_glob_0_18 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ @@ -6303,6 +6333,9 @@ var __publicField = (obj, key, value) => { icon: ``, + filters: { + LINE_OBI_FILTER: lineObiCheck + }, EVENT_MOUSE_MOVE_IN_CONTROL: showSettingButton }; const __vite_glob_0_29 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ @@ -7223,18 +7256,16 @@ var __publicField = (obj, key, value) => { return; } let paths = [property]; - this.editor.ddInstance.stage.selectedModels.forEach((element) => { - this.editor.bus.push( - ddeiEditor.DDeiEnumBusCommandType.ModelChangeValue, - { - mids: [element.id], - paths, - value: model[property] - }, - null, - true - ); - }); + this.editor.bus.push( + ddeiEditor.DDeiEnumBusCommandType.ModelChangeValue, + { + mids: [model.id], + paths, + value: model[property] + }, + null, + true + ); this.editor.bus.push(ddeiEditor.DDeiEditorEnumBusCommandType.RefreshEditorParts, { parts: ["topmenu"] }); @@ -7373,6 +7404,7 @@ var __publicField = (obj, key, value) => { this.model.render.enableRefreshShape(); editor.bus.push(ddeiEditor.DDeiEnumBusCommandType.RefreshShape); editor.bus.executeAll(); + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 切换数据类型 @@ -7389,6 +7421,7 @@ var __publicField = (obj, key, value) => { } else { this.model.dataType = ds[this.dataTypeIndex].value; } + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 切换时间类型 @@ -7405,6 +7438,7 @@ var __publicField = (obj, key, value) => { } else { this.model.timeType = ds[this.timeTypeIndex].value; } + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 根据线段的bpmnSubType修改线的样式以及部分选项的范围值 @@ -7450,6 +7484,7 @@ var __publicField = (obj, key, value) => { } } this.refreshPointType(); + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 切换连线类型 @@ -7472,6 +7507,7 @@ var __publicField = (obj, key, value) => { this.model.render.enableRefreshShape(); editor.bus.push(ddeiEditor.DDeiEnumBusCommandType.RefreshShape); editor.bus.executeAll(); + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 切换点的类型 @@ -7513,6 +7549,7 @@ var __publicField = (obj, key, value) => { this.model.render.enableRefreshShape(); editor.bus.push(ddeiEditor.DDeiEnumBusCommandType.RefreshShape); editor.bus.executeAll(); + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 交换起点和终点 @@ -7523,6 +7560,7 @@ var __publicField = (obj, key, value) => { this.model.render.enableRefreshShape(); editor.bus.push(ddeiEditor.DDeiEnumBusCommandType.RefreshShape); editor.bus.executeAll(); + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); }, /** * 切换BPMN类型 @@ -7542,10 +7580,11 @@ var __publicField = (obj, key, value) => { this.model.render.enableRefreshShape(); editor.bus.push(ddeiEditor.DDeiEnumBusCommandType.RefreshShape); editor.bus.executeAll(); + ddeiEditor.DDeiUtil.invokeCallbackFunc("EVENT_CONTENT_CHANGE_AFTER", "CHANGE", null, this.editor.ddInstance); } } }; - const ElementSettingDialog_vue_vue_type_style_index_0_scoped_8bd76064_lang = ""; + const ElementSettingDialog_vue_vue_type_style_index_0_scoped_2d6bc3f8_lang = ""; const _hoisted_1$1 = ["id"]; const _hoisted_2$1 = { class: "content" }; const _hoisted_3$1 = { style: { "display": "contents" } }; @@ -7632,91 +7671,99 @@ var __publicField = (obj, key, value) => { key: 11, class: "row" }; - const _hoisted_51 = { class: "change-bpmn-sub-type" }; - const _hoisted_52 = { class: "change-bpmn-sub-type-text" }; - const _hoisted_53 = { + const _hoisted_51 = ["title"]; + const _hoisted_52 = { class: "change-property-text-title" }; + const _hoisted_53 = { class: "change-property-text-input" }; + const _hoisted_54 = ["placeholder"]; + const _hoisted_55 = { key: 12, class: "row" }; - const _hoisted_54 = { class: "change-point-type" }; - const _hoisted_55 = { class: "change-point-type-title" }; - const _hoisted_56 = { class: "change-point-type-text" }; - const _hoisted_57 = { + const _hoisted_56 = { class: "change-bpmn-sub-type" }; + const _hoisted_57 = { class: "change-bpmn-sub-type-text" }; + const _hoisted_58 = { key: 13, class: "row" }; - const _hoisted_58 = { class: "quick-button-text" }; - const _hoisted_59 = { + const _hoisted_59 = { class: "change-point-type" }; + const _hoisted_60 = { class: "change-point-type-title" }; + const _hoisted_61 = { class: "change-point-type-text" }; + const _hoisted_62 = { key: 14, class: "row" }; - const _hoisted_60 = { class: "change-point-type" }; - const _hoisted_61 = { class: "change-point-type-title" }; - const _hoisted_62 = { class: "change-point-type-text" }; - const _hoisted_63 = { + const _hoisted_63 = { class: "quick-button-text" }; + const _hoisted_64 = { key: 15, class: "row" }; - const _hoisted_64 = { + const _hoisted_65 = { class: "change-point-type" }; + const _hoisted_66 = { class: "change-point-type-title" }; + const _hoisted_67 = { class: "change-point-type-text" }; + const _hoisted_68 = { key: 16, class: "row" }; - const _hoisted_65 = { + const _hoisted_69 = { key: 17, class: "row" }; - const _hoisted_66 = { + const _hoisted_70 = { key: 18, class: "row" }; - const _hoisted_67 = { + const _hoisted_71 = { key: 19, class: "row" }; - const _hoisted_68 = { + const _hoisted_72 = { key: 20, class: "row" }; - const _hoisted_69 = ["title"]; - const _hoisted_70 = { class: "change-property-text-title" }; - const _hoisted_71 = { class: "change-property-text-input" }; - const _hoisted_72 = ["placeholder"]; const _hoisted_73 = { key: 21, class: "row" }; - const _hoisted_74 = { + const _hoisted_74 = ["title"]; + const _hoisted_75 = { class: "change-property-text-title" }; + const _hoisted_76 = { class: "change-property-text-input" }; + const _hoisted_77 = ["placeholder"]; + const _hoisted_78 = { key: 22, class: "row" }; - const _hoisted_75 = { + const _hoisted_79 = { key: 23, class: "row" }; - const _hoisted_76 = { + const _hoisted_80 = { key: 24, class: "row" }; - const _hoisted_77 = { + const _hoisted_81 = { key: 25, class: "row" }; - const _hoisted_78 = { + const _hoisted_82 = { key: 26, class: "row" }; - const _hoisted_79 = ["title"]; - const _hoisted_80 = { class: "change-property-text-title" }; - const _hoisted_81 = { class: "change-property-text-input" }; - const _hoisted_82 = ["onUpdate:modelValue", "onChange", "placeholder"]; const _hoisted_83 = { key: 27, class: "row" }; const _hoisted_84 = ["title"]; - const _hoisted_85 = { class: "change-property-textarea-title" }; - const _hoisted_86 = { class: "change-property-textarea-input" }; + const _hoisted_85 = { class: "change-property-text-title" }; + const _hoisted_86 = { class: "change-property-text-input" }; const _hoisted_87 = ["onUpdate:modelValue", "onChange", "placeholder"]; + const _hoisted_88 = { + key: 28, + class: "row" + }; + const _hoisted_89 = ["title"]; + const _hoisted_90 = { class: "change-property-textarea-title" }; + const _hoisted_91 = { class: "change-property-textarea-input" }; + const _hoisted_92 = ["onUpdate:modelValue", "onChange", "placeholder"]; function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { var _a, _b; return _ctx.forceRefresh ? (vue.openBlock(), vue.createElementBlock("div", { @@ -7726,7 +7773,7 @@ var __publicField = (obj, key, value) => { }, [ vue.createElementVNode("div", _hoisted_2$1, [ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList((_b = $props.options) == null ? void 0 : _b.items, (item) => { - var _a2, _b2, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N, _O, _P, _Q, _R, _S; + var _a2, _b2, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M, _N, _O, _P, _Q, _R; return vue.openBlock(), vue.createElementBlock("div", _hoisted_3$1, [ !item.viewer && item.id == "ddei-flow-change-bpmnsubtype" && $options.validItemCondition(item) && ((_a2 = $data.bpmnSubTypeDataSource) == null ? void 0 : _a2.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$1, [ vue.createElementVNode("div", _hoisted_5, [ @@ -7735,7 +7782,7 @@ var __publicField = (obj, key, value) => { onClick: _cache[0] || (_cache[0] = ($event) => $options.changeBpmnSubType(-1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[32] || (_cache[32] = [ + }, _cache[33] || (_cache[33] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) ]))), vue.createElementVNode("div", _hoisted_6, vue.toDisplayString(_ctx.editor.i18n($data.bpmnSubTypeDataSource[$data.bpmnSubTypeIndex].text)), 1), @@ -7744,7 +7791,7 @@ var __publicField = (obj, key, value) => { onClick: _cache[1] || (_cache[1] = ($event) => $options.changeBpmnSubType(1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[33] || (_cache[33] = [ + }, _cache[34] || (_cache[34] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) ]))) ]) @@ -7756,7 +7803,7 @@ var __publicField = (obj, key, value) => { onClick: _cache[2] || (_cache[2] = ($event) => $options.changeDataType(-1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[34] || (_cache[34] = [ + }, _cache[35] || (_cache[35] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) ]))), vue.createElementVNode("div", _hoisted_9, vue.toDisplayString(_ctx.editor.i18n($data.dataTypeDataSource[$data.dataTypeIndex].text)), 1), @@ -7765,7 +7812,7 @@ var __publicField = (obj, key, value) => { onClick: _cache[3] || (_cache[3] = ($event) => $options.changeDataType(1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[35] || (_cache[35] = [ + }, _cache[36] || (_cache[36] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) ]))) ]) @@ -7793,7 +7840,7 @@ var __publicField = (obj, key, value) => { onClick: _cache[5] || (_cache[5] = ($event) => $options.changeTimeType(-1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[36] || (_cache[36] = [ + }, _cache[37] || (_cache[37] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) ]))), vue.createElementVNode("div", _hoisted_17, vue.toDisplayString(_ctx.editor.i18n($data.timeTypeDataSource[$data.timeTypeIndex].text)), 1), @@ -7802,7 +7849,7 @@ var __publicField = (obj, key, value) => { onClick: _cache[6] || (_cache[6] = ($event) => $options.changeTimeType(1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[37] || (_cache[37] = [ + }, _cache[38] || (_cache[38] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) ]))) ]) @@ -7887,86 +7934,102 @@ var __publicField = (obj, key, value) => { ]) ], 8, _hoisted_36) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-error-setting" && ($data.model.bpmnType == "StartEvent" && $data.model.bpmnSubType == 9 || $data.model.bpmnType == "IntermediateEvent" && $data.model.bpmnSubType == 27 || $data.model.bpmnType == "EndEvent" && $data.model.bpmnSubType == 6 || $data.model.bpmnType == "BoundaryEvent" && $data.model.bpmnSubType == 4) && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_40, [ + !item.viewer && item.id == "ddei-flow-escal-setting" && ($data.model.bpmnType == "StartEvent" && $data.model.bpmnSubType == 8 || $data.model.bpmnType == "EndEvent" && $data.model.bpmnSubType == 5 || $data.model.bpmnType == "BoundaryEvent" && $data.model.bpmnSubType == 7 || $data.model.bpmnType == "IntermediateThrowEvent" && $data.model.bpmnSubType == 6) && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_40, [ vue.createElementVNode("div", { class: "change-property-text", title: item.desc }, [ - vue.createElementVNode("div", _hoisted_42, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.errorcode")), 1), + vue.createElementVNode("div", _hoisted_42, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.escalation")), 1), vue.createElementVNode("div", _hoisted_43, [ vue.withDirectives(vue.createElementVNode("input", { - "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => $data.model.errorCode = $event), - placeholder: _ctx.editor.i18n("ddei.flow.errorcode") + "onUpdate:modelValue": _cache[12] || (_cache[12] = ($event) => $data.model.escalName = $event), + placeholder: _ctx.editor.i18n("ddei.flow.escalname") }, null, 8, _hoisted_44), [ - [vue.vModelText, $data.model.errorCode] + [vue.vModelText, $data.model.escalName] ]) ]) ], 8, _hoisted_41) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-condition-setting" && ($data.model.bpmnBaseType == "Sequence" && $data.model.bpmnSubType == 2) && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_45, [ + !item.viewer && item.id == "ddei-flow-error-setting" && ($data.model.bpmnType == "StartEvent" && $data.model.bpmnSubType == 9 || $data.model.bpmnType == "IntermediateEvent" && $data.model.bpmnSubType == 27 || $data.model.bpmnType == "EndEvent" && $data.model.bpmnSubType == 6 || $data.model.bpmnType == "BoundaryEvent" && $data.model.bpmnSubType == 4) && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_45, [ vue.createElementVNode("div", { class: "change-property-text", title: item.desc }, [ - vue.createElementVNode("div", _hoisted_47, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.condition")), 1), + vue.createElementVNode("div", _hoisted_47, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.errorcode")), 1), vue.createElementVNode("div", _hoisted_48, [ vue.withDirectives(vue.createElementVNode("input", { - "onUpdate:modelValue": _cache[13] || (_cache[13] = ($event) => $data.model.condition = $event), - placeholder: "${" + _ctx.editor.i18n("ddei.flow.conditionexpress") + "}" + "onUpdate:modelValue": _cache[13] || (_cache[13] = ($event) => $data.model.errorCode = $event), + placeholder: _ctx.editor.i18n("ddei.flow.errorcode") }, null, 8, _hoisted_49), [ - [vue.vModelText, $data.model.condition] + [vue.vModelText, $data.model.errorCode] ]) ]) ], 8, _hoisted_46) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-linetype" && $options.validItemCondition(item) && ((_b2 = $data.lineTypeDataSource) == null ? void 0 : _b2.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_50, [ - vue.createElementVNode("div", _hoisted_51, [ + !item.viewer && item.id == "ddei-flow-condition-setting" && ($data.model.bpmnBaseType == "Sequence" && $data.model.bpmnSubType == 2 || $data.model.bpmnType == "StartEvent" && $data.model.bpmnSubType == 4 || $data.model.bpmnType == "StartEvent" && $data.model.bpmnSubType == 4) && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_50, [ + vue.createElementVNode("div", { + class: "change-property-text", + title: item.desc + }, [ + vue.createElementVNode("div", _hoisted_52, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.condition")), 1), + vue.createElementVNode("div", _hoisted_53, [ + vue.withDirectives(vue.createElementVNode("input", { + "onUpdate:modelValue": _cache[14] || (_cache[14] = ($event) => $data.model.condition = $event), + placeholder: "${" + _ctx.editor.i18n("ddei.flow.conditionexpress") + "}" + }, null, 8, _hoisted_54), [ + [vue.vModelText, $data.model.condition] + ]) + ]) + ], 8, _hoisted_51) + ])) : vue.createCommentVNode("", true), + !item.viewer && item.id == "ddei-flow-change-linetype" && $options.validItemCondition(item) && ((_b2 = $data.lineTypeDataSource) == null ? void 0 : _b2.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_55, [ + vue.createElementVNode("div", _hoisted_56, [ (vue.openBlock(), vue.createElementBlock("svg", { class: "icon-ddei-flow", - onClick: _cache[14] || (_cache[14] = ($event) => $options.changeLineType(-1)), - style: { "width": "16px", "height": "16px" }, - "aria-hidden": "true" - }, _cache[38] || (_cache[38] = [ - vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) - ]))), - vue.createElementVNode("div", _hoisted_52, vue.toDisplayString(_ctx.editor.i18n($data.lineTypeDataSource[$data.lineTypeIndex].text)), 1), - (vue.openBlock(), vue.createElementBlock("svg", { - class: "icon-ddei-flow", - onClick: _cache[15] || (_cache[15] = ($event) => $options.changeLineType(1)), + onClick: _cache[15] || (_cache[15] = ($event) => $options.changeLineType(-1)), style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" }, _cache[39] || (_cache[39] = [ - vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) - ]))) - ]) - ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-linepointtype" && $options.validItemCondition(item) && ((_c = $data.model) == null ? void 0 : _c.bpmnSubType) == 5 && ((_d = $data.startPointTypeDataSource) == null ? void 0 : _d.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_53, [ - vue.createElementVNode("div", _hoisted_54, [ - vue.createElementVNode("div", _hoisted_55, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.startnode")), 1), - (vue.openBlock(), vue.createElementBlock("svg", { - class: "icon-ddei-flow", - onClick: _cache[16] || (_cache[16] = ($event) => $options.changePointType(1, -1)), - "aria-hidden": "true" - }, _cache[40] || (_cache[40] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) ]))), - vue.createElementVNode("div", _hoisted_56, vue.toDisplayString(_ctx.editor.i18n($data.startPointTypeDataSource[$data.startPointTypeIndex].text)), 1), + vue.createElementVNode("div", _hoisted_57, vue.toDisplayString(_ctx.editor.i18n($data.lineTypeDataSource[$data.lineTypeIndex].text)), 1), (vue.openBlock(), vue.createElementBlock("svg", { class: "icon-ddei-flow", - onClick: _cache[17] || (_cache[17] = ($event) => $options.changePointType(1, 1)), + onClick: _cache[16] || (_cache[16] = ($event) => $options.changeLineType(1)), + style: { "width": "16px", "height": "16px" }, "aria-hidden": "true" - }, _cache[41] || (_cache[41] = [ + }, _cache[40] || (_cache[40] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) ]))) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-linepointtype" && $options.validItemCondition(item) && ((_e = $data.model) == null ? void 0 : _e.bpmnBaseType) == "Sequence" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_57, [ + !item.viewer && item.id == "ddei-flow-change-linepointtype" && $options.validItemCondition(item) && ((_c = $data.model) == null ? void 0 : _c.bpmnSubType) == 5 && ((_d = $data.startPointTypeDataSource) == null ? void 0 : _d.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_58, [ + vue.createElementVNode("div", _hoisted_59, [ + vue.createElementVNode("div", _hoisted_60, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.startnode")), 1), + (vue.openBlock(), vue.createElementBlock("svg", { + class: "icon-ddei-flow", + onClick: _cache[17] || (_cache[17] = ($event) => $options.changePointType(1, -1)), + "aria-hidden": "true" + }, _cache[41] || (_cache[41] = [ + vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) + ]))), + vue.createElementVNode("div", _hoisted_61, vue.toDisplayString(_ctx.editor.i18n($data.startPointTypeDataSource[$data.startPointTypeIndex].text)), 1), + (vue.openBlock(), vue.createElementBlock("svg", { + class: "icon-ddei-flow", + onClick: _cache[18] || (_cache[18] = ($event) => $options.changePointType(1, 1)), + "aria-hidden": "true" + }, _cache[42] || (_cache[42] = [ + vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) + ]))) + ]) + ])) : vue.createCommentVNode("", true), + !item.viewer && item.id == "ddei-flow-change-linepointtype" && $options.validItemCondition(item) && ((_e = $data.model) == null ? void 0 : _e.bpmnBaseType) == "Sequence" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_62, [ vue.createElementVNode("div", { class: "quick-button", - onClick: _cache[18] || (_cache[18] = ($event) => $options.exchangePoints()) + onClick: _cache[19] || (_cache[19] = ($event) => $options.exchangePoints()) }, [ - vue.createElementVNode("div", _hoisted_58, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.exchange")), 1), - _cache[42] || (_cache[42] = vue.createElementVNode("svg", { + vue.createElementVNode("div", _hoisted_63, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.exchange")), 1), + _cache[43] || (_cache[43] = vue.createElementVNode("svg", { class: "icon", "aria-hidden": "true" }, [ @@ -7974,30 +8037,30 @@ var __publicField = (obj, key, value) => { ], -1)) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-linepointtype" && $options.validItemCondition(item) && ((_f = $data.model) == null ? void 0 : _f.bpmnSubType) == 5 && ((_g = $data.endPointTypeDataSource) == null ? void 0 : _g.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_59, [ - vue.createElementVNode("div", _hoisted_60, [ - vue.createElementVNode("div", _hoisted_61, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.endnode")), 1), + !item.viewer && item.id == "ddei-flow-change-linepointtype" && $options.validItemCondition(item) && ((_f = $data.model) == null ? void 0 : _f.bpmnSubType) == 5 && ((_g = $data.endPointTypeDataSource) == null ? void 0 : _g.length) > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_64, [ + vue.createElementVNode("div", _hoisted_65, [ + vue.createElementVNode("div", _hoisted_66, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.endnode")), 1), (vue.openBlock(), vue.createElementBlock("svg", { class: "icon-ddei-flow", - onClick: _cache[19] || (_cache[19] = ($event) => $options.changePointType(2, -1)), - "aria-hidden": "true" - }, _cache[43] || (_cache[43] = [ - vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) - ]))), - vue.createElementVNode("div", _hoisted_62, vue.toDisplayString(_ctx.editor.i18n($data.endPointTypeDataSource[$data.endPointTypeIndex].text)), 1), - (vue.openBlock(), vue.createElementBlock("svg", { - class: "icon-ddei-flow", - onClick: _cache[20] || (_cache[20] = ($event) => $options.changePointType(2, 1)), + onClick: _cache[20] || (_cache[20] = ($event) => $options.changePointType(2, -1)), "aria-hidden": "true" }, _cache[44] || (_cache[44] = [ + vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-left" }, null, -1) + ]))), + vue.createElementVNode("div", _hoisted_67, vue.toDisplayString(_ctx.editor.i18n($data.endPointTypeDataSource[$data.endPointTypeIndex].text)), 1), + (vue.openBlock(), vue.createElementBlock("svg", { + class: "icon-ddei-flow", + onClick: _cache[21] || (_cache[21] = ($event) => $options.changePointType(2, 1)), + "aria-hidden": "true" + }, _cache[45] || (_cache[45] = [ vue.createElementVNode("use", { "xlink:href": "#icon-ddei-flow-right" }, null, -1) ]))) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-callactivity-review" && $options.validItemCondition(item) && ((_h = $data.model) == null ? void 0 : _h.bpmnType) == "CallActivityTask" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_63, [ + !item.viewer && item.id == "ddei-flow-callactivity-review" && $options.validItemCondition(item) && ((_h = $data.model) == null ? void 0 : _h.bpmnType) == "CallActivityTask" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_68, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[21] || (_cache[21] = ($event) => $options.changeBpmnLabel("displayView")) + onClick: _cache[22] || (_cache[22] = ($event) => $options.changeBpmnLabel("displayView")) }, [ vue.createElementVNode("div", { class: vue.normalizeClass({ "chk_state": ((_i = $data.model) == null ? void 0 : _i.displayView) != 1, "chk_state_checked": ((_j = $data.model) == null ? void 0 : _j.displayView) == 1 }) @@ -8007,10 +8070,10 @@ var __publicField = (obj, key, value) => { vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.overview")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_l = $data.model) == null ? void 0 : _l.bpmnType) == "DataStore" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_64, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_l = $data.model) == null ? void 0 : _l.bpmnType) == "DataStore" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_69, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[22] || (_cache[22] = ($event) => $options.changeBpmnLabel("isUnlimited")) + onClick: _cache[23] || (_cache[23] = ($event) => $options.changeBpmnLabel("isUnlimited")) }, [ vue.createElementVNode("div", { class: vue.normalizeClass({ "chk_state": ((_m = $data.model) == null ? void 0 : _m.isUnlimited) != 1, "chk_state_checked": ((_n = $data.model) == null ? void 0 : _n.isUnlimited) == 1 }) @@ -8020,10 +8083,10 @@ var __publicField = (obj, key, value) => { vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.unlimited")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && $data.model.bpmnType == "SubProcess" && $data.model.bpmnSubType == 4 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_65, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && $data.model.bpmnType == "SubProcess" && $data.model.bpmnSubType == 4 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_70, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[23] || (_cache[23] = ($event) => $options.changeBpmnLabel("ordering")) + onClick: _cache[24] || (_cache[24] = ($event) => $options.changeBpmnLabel("ordering")) }, [ vue.createElementVNode("div", { class: vue.normalizeClass({ "chk_state": ((_p = $data.model) == null ? void 0 : _p.ordering) != 1, "chk_state_checked": ((_q = $data.model) == null ? void 0 : _q.ordering) == 1 }) @@ -8033,138 +8096,121 @@ var __publicField = (obj, key, value) => { vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.ordering")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_s = $data.model) == null ? void 0 : _s.bpmnBaseType) == "Activity" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_66, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ($data.model.bpmnType == "SubProcess" || $data.model.bpmnType == "ChoreographySubProcess") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_71, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[24] || (_cache[24] = ($event) => $options.changeBpmnLabel("isLoop")) + onClick: _cache[25] || (_cache[25] = ($event) => $options.changeBpmnLabel("isLoop")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_t = $data.model) == null ? void 0 : _t.isLoop) != 1, "chk_state_checked": ((_u = $data.model) == null ? void 0 : _u.isLoop) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_s = $data.model) == null ? void 0 : _s.isLoop) != 1, "chk_state_checked": ((_t = $data.model) == null ? void 0 : _t.isLoop) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_v = $data.model) == null ? void 0 : _v.isLoop) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_u = $data.model) == null ? void 0 : _u.isLoop) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.loop")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_w = $data.model) == null ? void 0 : _w.bpmnBaseType) == "Activity" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_67, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_v = $data.model) == null ? void 0 : _v.bpmnBaseType) == "Activity" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_72, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[25] || (_cache[25] = ($event) => $options.changeBpmnLabel("multiInstance")) + onClick: _cache[26] || (_cache[26] = ($event) => $options.changeBpmnLabel("multiInstance")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_x = $data.model) == null ? void 0 : _x.multiInstance) != 1, "chk_state_checked": ((_y = $data.model) == null ? void 0 : _y.multiInstance) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_w = $data.model) == null ? void 0 : _w.multiInstance) != 1, "chk_state_checked": ((_x = $data.model) == null ? void 0 : _x.multiInstance) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_z = $data.model) == null ? void 0 : _z.multiInstance) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_y = $data.model) == null ? void 0 : _y.multiInstance) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.multiins")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && $data.model.multiInstance ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_68, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ($data.model.multiInstance || $data.model.bpmnType == "StartEvent" && $data.model.bpmnSubType == 6 || $data.model.bpmnType == "BoundaryEvent" && $data.model.bpmnSubType == 9 || $data.model.bpmnType == "EndEvent" && $data.model.bpmnSubType == 4 || $data.model.bpmnType == "IntermediateCatchEvent" && $data.model.bpmnSubType == 6 || $data.model.bpmnType == "IntermediateThrowEvent" && $data.model.bpmnSubType == 5) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_73, [ vue.createElementVNode("div", { class: "change-property-text", title: item.desc }, [ - vue.createElementVNode("div", _hoisted_70, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.insnum")), 1), - vue.createElementVNode("div", _hoisted_71, [ + vue.createElementVNode("div", _hoisted_75, vue.toDisplayString(_ctx.editor.i18n("ddei.flow.insnum")), 1), + vue.createElementVNode("div", _hoisted_76, [ vue.withDirectives(vue.createElementVNode("input", { - "onUpdate:modelValue": _cache[26] || (_cache[26] = ($event) => $data.model.loopCardinality = $event), + "onUpdate:modelValue": _cache[27] || (_cache[27] = ($event) => $data.model.loopCardinality = $event), placeholder: _ctx.editor.i18n("ddei.flow.insnum") - }, null, 8, _hoisted_72), [ + }, null, 8, _hoisted_77), [ [vue.vModelText, $data.model.loopCardinality] ]) ]) - ], 8, _hoisted_69) + ], 8, _hoisted_74) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_A = $data.model) == null ? void 0 : _A.bpmnBaseType) == "Activity" && ((_B = $data.model) == null ? void 0 : _B.multiInstance) == 1 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_73, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_z = $data.model) == null ? void 0 : _z.bpmnBaseType) == "Activity" && ((_A = $data.model) == null ? void 0 : _A.multiInstance) == 1 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_78, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[27] || (_cache[27] = ($event) => $options.changeBpmnLabel("isParallel")) + onClick: _cache[28] || (_cache[28] = ($event) => $options.changeBpmnLabel("isParallel")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_C = $data.model) == null ? void 0 : _C.isParallel) != 1, "chk_state_checked": ((_D = $data.model) == null ? void 0 : _D.isParallel) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_B = $data.model) == null ? void 0 : _B.isParallel) != 1, "chk_state_checked": ((_C = $data.model) == null ? void 0 : _C.isParallel) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_E = $data.model) == null ? void 0 : _E.isParallel) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_D = $data.model) == null ? void 0 : _D.isParallel) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.parallel")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && $data.model.bpmnType == "ChoreographySubProcess" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_74, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && $data.model.bpmnType == "ChoreographySubProcess" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_79, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[28] || (_cache[28] = ($event) => $options.changeBpmnLabel("isAdHoc")) + onClick: _cache[29] || (_cache[29] = ($event) => $options.changeBpmnLabel("isAdHoc")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_F = $data.model) == null ? void 0 : _F.isAdHoc) != 1, "chk_state_checked": ((_G = $data.model) == null ? void 0 : _G.isAdHoc) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_E = $data.model) == null ? void 0 : _E.isAdHoc) != 1, "chk_state_checked": ((_F = $data.model) == null ? void 0 : _F.isAdHoc) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_H = $data.model) == null ? void 0 : _H.isAdHoc) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_G = $data.model) == null ? void 0 : _G.isAdHoc) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.property.custom")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ($data.model.bpmnType == "BoundaryEvent" && ($data.model.bpmnSubType == 1 || !$data.model.bpmnSubType || $data.model.bpmnSubType == 2 || $data.model.bpmnSubType == 7 || $data.model.bpmnSubType == 8 || $data.model.bpmnSubType == 9) || ($data.model.bpmnType == "StartEvent" && ($data.model.bpmnSubType >= 2 && $data.model.bpmnSubType <= 8) || $data.model.bpmnSubType == 10)) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_75, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ($data.model.bpmnType == "BoundaryEvent" && ($data.model.bpmnSubType == 1 || !$data.model.bpmnSubType || $data.model.bpmnSubType == 2 || $data.model.bpmnSubType == 7 || $data.model.bpmnSubType == 8 || $data.model.bpmnSubType == 9) || ($data.model.bpmnType == "StartEvent" && ($data.model.bpmnSubType >= 2 && $data.model.bpmnSubType <= 8) || $data.model.bpmnSubType == 10)) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_80, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[29] || (_cache[29] = ($event) => $options.changeBpmnLabel("notInterrupting")) + onClick: _cache[30] || (_cache[30] = ($event) => $options.changeBpmnLabel("notInterrupting")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_I = $data.model) == null ? void 0 : _I.notInterrupting) != 1, "chk_state_checked": ((_J = $data.model) == null ? void 0 : _J.notInterrupting) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_H = $data.model) == null ? void 0 : _H.notInterrupting) != 1, "chk_state_checked": ((_I = $data.model) == null ? void 0 : _I.notInterrupting) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_K = $data.model) == null ? void 0 : _K.notInterrupting) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_J = $data.model) == null ? void 0 : _J.notInterrupting) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.notInterrupting")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_L = $data.model) == null ? void 0 : _L.bpmnBaseType) == "Activity" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_76, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_K = $data.model) == null ? void 0 : _K.bpmnBaseType) == "Activity" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_81, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[30] || (_cache[30] = ($event) => $options.changeBpmnLabel("isCompensation")) + onClick: _cache[31] || (_cache[31] = ($event) => $options.changeBpmnLabel("isCompensation")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_M = $data.model) == null ? void 0 : _M.isCompensation) != 1, "chk_state_checked": ((_N = $data.model) == null ? void 0 : _N.isCompensation) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_L = $data.model) == null ? void 0 : _L.isCompensation) != 1, "chk_state_checked": ((_M = $data.model) == null ? void 0 : _M.isCompensation) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_O = $data.model) == null ? void 0 : _O.isCompensation) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_N = $data.model) == null ? void 0 : _N.isCompensation) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.compensation")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_P = $data.model) == null ? void 0 : _P.bpmnType) == "DataObject" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_77, [ + !item.viewer && item.id == "ddei-flow-change-activity-labels" && $options.validItemCondition(item) && ((_O = $data.model) == null ? void 0 : _O.bpmnType) == "DataObject" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_82, [ vue.createElementVNode("div", { class: "change-bpmn-marker", - onClick: _cache[31] || (_cache[31] = ($event) => $options.changeBpmnLabel("isCollection")) + onClick: _cache[32] || (_cache[32] = ($event) => $options.changeBpmnLabel("isCollection")) }, [ vue.createElementVNode("div", { - class: vue.normalizeClass({ "chk_state": ((_Q = $data.model) == null ? void 0 : _Q.isCollection) != 1, "chk_state_checked": ((_R = $data.model) == null ? void 0 : _R.isCollection) == 1 }) + class: vue.normalizeClass({ "chk_state": ((_P = $data.model) == null ? void 0 : _P.isCollection) != 1, "chk_state_checked": ((_Q = $data.model) == null ? void 0 : _Q.isCollection) == 1 }) }, [ - vue.createElementVNode("span", null, vue.toDisplayString(((_S = $data.model) == null ? void 0 : _S.isCollection) == 1 ? "✓" : ""), 1) + vue.createElementVNode("span", null, vue.toDisplayString(((_R = $data.model) == null ? void 0 : _R.isCollection) == 1 ? "✓" : ""), 1) ], 2), vue.createTextVNode(" " + vue.toDisplayString(_ctx.editor.i18n("ddei.flow.datacoll")), 1) ]) ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-property-editor-text" && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_78, [ + !item.viewer && item.id == "ddei-flow-property-editor-text" && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_83, [ vue.createElementVNode("div", { class: "change-property-text", title: item.desc - }, [ - vue.createElementVNode("div", _hoisted_80, vue.toDisplayString(_ctx.editor.i18n(item.label)), 1), - vue.createElementVNode("div", _hoisted_81, [ - vue.withDirectives(vue.createElementVNode("input", { - "onUpdate:modelValue": ($event) => $data.model[item.property] = $event, - onChange: ($event) => $options.modelChangeProperty($data.model, item.property), - placeholder: _ctx.editor.i18n(item.desc) - }, null, 40, _hoisted_82), [ - [vue.vModelText, $data.model[item.property]] - ]) - ]) - ], 8, _hoisted_79) - ])) : vue.createCommentVNode("", true), - !item.viewer && item.id == "ddei-flow-property-editor-textarea" && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_83, [ - vue.createElementVNode("div", { - class: "change-property-textarea", - title: item.desc }, [ vue.createElementVNode("div", _hoisted_85, vue.toDisplayString(_ctx.editor.i18n(item.label)), 1), vue.createElementVNode("div", _hoisted_86, [ - vue.withDirectives(vue.createElementVNode("textarea", { + vue.withDirectives(vue.createElementVNode("input", { "onUpdate:modelValue": ($event) => $data.model[item.property] = $event, onChange: ($event) => $options.modelChangeProperty($data.model, item.property), placeholder: _ctx.editor.i18n(item.desc) @@ -8174,8 +8220,25 @@ var __publicField = (obj, key, value) => { ]) ], 8, _hoisted_84) ])) : vue.createCommentVNode("", true), + !item.viewer && item.id == "ddei-flow-property-editor-textarea" && $options.validItemCondition(item) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_88, [ + vue.createElementVNode("div", { + class: "change-property-textarea", + title: item.desc + }, [ + vue.createElementVNode("div", _hoisted_90, vue.toDisplayString(_ctx.editor.i18n(item.label)), 1), + vue.createElementVNode("div", _hoisted_91, [ + vue.withDirectives(vue.createElementVNode("textarea", { + "onUpdate:modelValue": ($event) => $data.model[item.property] = $event, + onChange: ($event) => $options.modelChangeProperty($data.model, item.property), + placeholder: _ctx.editor.i18n(item.desc) + }, null, 40, _hoisted_92), [ + [vue.vModelText, $data.model[item.property]] + ]) + ]) + ], 8, _hoisted_89) + ])) : vue.createCommentVNode("", true), item.viewer && $options.validItemCondition(item) ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(item.viewer), vue.mergeProps({ - key: 28, + key: 29, editor: _ctx.editor, options: $props.options, model: $data.model, @@ -8186,7 +8249,7 @@ var __publicField = (obj, key, value) => { ]) ], 8, _hoisted_1$1)) : vue.createCommentVNode("", true); } - const ElementSettingDialog = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-8bd76064"]]); + const ElementSettingDialog = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-2d6bc3f8"]]); const _DDeiFlowElementSettingDialog = class _DDeiFlowElementSettingDialog extends ddeiEditor.DDeiPluginBase { constructor() { super(...arguments); @@ -8292,6 +8355,9 @@ for ( i in inputArray ) { { id: "ddei-flow-signal-setting" }, + { + id: "ddei-flow-escal-setting" + }, { id: "ddei-flow-error-setting" }, @@ -8304,9 +8370,9 @@ for ( i in inputArray ) { { id: "ddei-flow-change-linepointtype" }, - { - id: "ddei-flow-callactivity-review" - }, + // { + // id: 'ddei-flow-callactivity-review' + // }, { id: "ddei-flow-change-activity-labels" }, @@ -9743,13 +9809,2420 @@ for ( i in inputArray ) { this.rootStr = rootStr; } } + function bind(fn, thisArg) { + return function wrap() { + return fn.apply(thisArg, arguments); + }; + } + const { toString } = Object.prototype; + const { getPrototypeOf } = Object; + const kindOf = ((cache) => (thing) => { + const str = toString.call(thing); + return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase()); + })(/* @__PURE__ */ Object.create(null)); + const kindOfTest = (type) => { + type = type.toLowerCase(); + return (thing) => kindOf(thing) === type; + }; + const typeOfTest = (type) => (thing) => typeof thing === type; + const { isArray } = Array; + const isUndefined = typeOfTest("undefined"); + function isBuffer(val) { + return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val); + } + const isArrayBuffer = kindOfTest("ArrayBuffer"); + function isArrayBufferView(val) { + let result; + if (typeof ArrayBuffer !== "undefined" && ArrayBuffer.isView) { + result = ArrayBuffer.isView(val); + } else { + result = val && val.buffer && isArrayBuffer(val.buffer); + } + return result; + } + const isString = typeOfTest("string"); + const isFunction = typeOfTest("function"); + const isNumber = typeOfTest("number"); + const isObject = (thing) => thing !== null && typeof thing === "object"; + const isBoolean = (thing) => thing === true || thing === false; + const isPlainObject = (val) => { + if (kindOf(val) !== "object") { + return false; + } + const prototype2 = getPrototypeOf(val); + return (prototype2 === null || prototype2 === Object.prototype || Object.getPrototypeOf(prototype2) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val); + }; + const isDate = kindOfTest("Date"); + const isFile = kindOfTest("File"); + const isBlob = kindOfTest("Blob"); + const isFileList = kindOfTest("FileList"); + const isStream = (val) => isObject(val) && isFunction(val.pipe); + const isFormData = (thing) => { + let kind; + return thing && (typeof FormData === "function" && thing instanceof FormData || isFunction(thing.append) && ((kind = kindOf(thing)) === "formdata" || // detect form-data instance + kind === "object" && isFunction(thing.toString) && thing.toString() === "[object FormData]")); + }; + const isURLSearchParams = kindOfTest("URLSearchParams"); + const [isReadableStream, isRequest, isResponse, isHeaders] = ["ReadableStream", "Request", "Response", "Headers"].map(kindOfTest); + const trim = (str) => str.trim ? str.trim() : str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); + function forEach(obj, fn, { allOwnKeys = false } = {}) { + if (obj === null || typeof obj === "undefined") { + return; + } + let i; + let l; + if (typeof obj !== "object") { + obj = [obj]; + } + if (isArray(obj)) { + for (i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj); + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + fn.call(null, obj[key], key, obj); + } + } + } + function findKey(obj, key) { + key = key.toLowerCase(); + const keys = Object.keys(obj); + let i = keys.length; + let _key; + while (i-- > 0) { + _key = keys[i]; + if (key === _key.toLowerCase()) { + return _key; + } + } + return null; + } + const _global = (() => { + if (typeof globalThis !== "undefined") + return globalThis; + return typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : global; + })(); + const isContextDefined = (context) => !isUndefined(context) && context !== _global; + function merge() { + const { caseless } = isContextDefined(this) && this || {}; + const result = {}; + const assignValue = (val, key) => { + const targetKey = caseless && findKey(result, key) || key; + if (isPlainObject(result[targetKey]) && isPlainObject(val)) { + result[targetKey] = merge(result[targetKey], val); + } else if (isPlainObject(val)) { + result[targetKey] = merge({}, val); + } else if (isArray(val)) { + result[targetKey] = val.slice(); + } else { + result[targetKey] = val; + } + }; + for (let i = 0, l = arguments.length; i < l; i++) { + arguments[i] && forEach(arguments[i], assignValue); + } + return result; + } + const extend = (a, b, thisArg, { allOwnKeys } = {}) => { + forEach(b, (val, key) => { + if (thisArg && isFunction(val)) { + a[key] = bind(val, thisArg); + } else { + a[key] = val; + } + }, { allOwnKeys }); + return a; + }; + const stripBOM = (content) => { + if (content.charCodeAt(0) === 65279) { + content = content.slice(1); + } + return content; + }; + const inherits = (constructor, superConstructor, props, descriptors2) => { + constructor.prototype = Object.create(superConstructor.prototype, descriptors2); + constructor.prototype.constructor = constructor; + Object.defineProperty(constructor, "super", { + value: superConstructor.prototype + }); + props && Object.assign(constructor.prototype, props); + }; + const toFlatObject = (sourceObj, destObj, filter, propFilter) => { + let props; + let i; + let prop; + const merged = {}; + destObj = destObj || {}; + if (sourceObj == null) + return destObj; + do { + props = Object.getOwnPropertyNames(sourceObj); + i = props.length; + while (i-- > 0) { + prop = props[i]; + if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) { + destObj[prop] = sourceObj[prop]; + merged[prop] = true; + } + } + sourceObj = filter !== false && getPrototypeOf(sourceObj); + } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype); + return destObj; + }; + const endsWith = (str, searchString, position) => { + str = String(str); + if (position === void 0 || position > str.length) { + position = str.length; + } + position -= searchString.length; + const lastIndex = str.indexOf(searchString, position); + return lastIndex !== -1 && lastIndex === position; + }; + const toArray = (thing) => { + if (!thing) + return null; + if (isArray(thing)) + return thing; + let i = thing.length; + if (!isNumber(i)) + return null; + const arr = new Array(i); + while (i-- > 0) { + arr[i] = thing[i]; + } + return arr; + }; + const isTypedArray = ((TypedArray) => { + return (thing) => { + return TypedArray && thing instanceof TypedArray; + }; + })(typeof Uint8Array !== "undefined" && getPrototypeOf(Uint8Array)); + const forEachEntry = (obj, fn) => { + const generator = obj && obj[Symbol.iterator]; + const iterator = generator.call(obj); + let result; + while ((result = iterator.next()) && !result.done) { + const pair = result.value; + fn.call(obj, pair[0], pair[1]); + } + }; + const matchAll = (regExp, str) => { + let matches; + const arr = []; + while ((matches = regExp.exec(str)) !== null) { + arr.push(matches); + } + return arr; + }; + const isHTMLForm = kindOfTest("HTMLFormElement"); + const toCamelCase = (str) => { + return str.toLowerCase().replace( + /[-_\s]([a-z\d])(\w*)/g, + function replacer(m, p1, p2) { + return p1.toUpperCase() + p2; + } + ); + }; + const hasOwnProperty = (({ hasOwnProperty: hasOwnProperty2 }) => (obj, prop) => hasOwnProperty2.call(obj, prop))(Object.prototype); + const isRegExp = kindOfTest("RegExp"); + const reduceDescriptors = (obj, reducer) => { + const descriptors2 = Object.getOwnPropertyDescriptors(obj); + const reducedDescriptors = {}; + forEach(descriptors2, (descriptor, name) => { + let ret; + if ((ret = reducer(descriptor, name, obj)) !== false) { + reducedDescriptors[name] = ret || descriptor; + } + }); + Object.defineProperties(obj, reducedDescriptors); + }; + const freezeMethods = (obj) => { + reduceDescriptors(obj, (descriptor, name) => { + if (isFunction(obj) && ["arguments", "caller", "callee"].indexOf(name) !== -1) { + return false; + } + const value = obj[name]; + if (!isFunction(value)) + return; + descriptor.enumerable = false; + if ("writable" in descriptor) { + descriptor.writable = false; + return; + } + if (!descriptor.set) { + descriptor.set = () => { + throw Error("Can not rewrite read-only method '" + name + "'"); + }; + } + }); + }; + const toObjectSet = (arrayOrString, delimiter) => { + const obj = {}; + const define2 = (arr) => { + arr.forEach((value) => { + obj[value] = true; + }); + }; + isArray(arrayOrString) ? define2(arrayOrString) : define2(String(arrayOrString).split(delimiter)); + return obj; + }; + const noop = () => { + }; + const toFiniteNumber = (value, defaultValue) => { + return value != null && Number.isFinite(value = +value) ? value : defaultValue; + }; + const ALPHA = "abcdefghijklmnopqrstuvwxyz"; + const DIGIT = "0123456789"; + const ALPHABET = { + DIGIT, + ALPHA, + ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT + }; + const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { + let str = ""; + const { length } = alphabet; + while (size--) { + str += alphabet[Math.random() * length | 0]; + } + return str; + }; + function isSpecCompliantForm(thing) { + return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === "FormData" && thing[Symbol.iterator]); + } + const toJSONObject = (obj) => { + const stack = new Array(10); + const visit = (source, i) => { + if (isObject(source)) { + if (stack.indexOf(source) >= 0) { + return; + } + if (!("toJSON" in source)) { + stack[i] = source; + const target = isArray(source) ? [] : {}; + forEach(source, (value, key) => { + const reducedValue = visit(value, i + 1); + !isUndefined(reducedValue) && (target[key] = reducedValue); + }); + stack[i] = void 0; + return target; + } + } + return source; + }; + return visit(obj, 0); + }; + const isAsyncFn = kindOfTest("AsyncFunction"); + const isThenable = (thing) => thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch); + const _setImmediate = ((setImmediateSupported, postMessageSupported) => { + if (setImmediateSupported) { + return setImmediate; + } + return postMessageSupported ? ((token, callbacks) => { + _global.addEventListener("message", ({ source, data: data2 }) => { + if (source === _global && data2 === token) { + callbacks.length && callbacks.shift()(); + } + }, false); + return (cb) => { + callbacks.push(cb); + _global.postMessage(token, "*"); + }; + })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb); + })( + typeof setImmediate === "function", + isFunction(_global.postMessage) + ); + const asap = typeof queueMicrotask !== "undefined" ? queueMicrotask.bind(_global) : typeof process !== "undefined" && process.nextTick || _setImmediate; + const utils$1 = { + isArray, + isArrayBuffer, + isBuffer, + isFormData, + isArrayBufferView, + isString, + isNumber, + isBoolean, + isObject, + isPlainObject, + isReadableStream, + isRequest, + isResponse, + isHeaders, + isUndefined, + isDate, + isFile, + isBlob, + isRegExp, + isFunction, + isStream, + isURLSearchParams, + isTypedArray, + isFileList, + forEach, + merge, + extend, + trim, + stripBOM, + inherits, + toFlatObject, + kindOf, + kindOfTest, + endsWith, + toArray, + forEachEntry, + matchAll, + isHTMLForm, + hasOwnProperty, + hasOwnProp: hasOwnProperty, + // an alias to avoid ESLint no-prototype-builtins detection + reduceDescriptors, + freezeMethods, + toObjectSet, + toCamelCase, + noop, + toFiniteNumber, + findKey, + global: _global, + isContextDefined, + ALPHABET, + generateString, + isSpecCompliantForm, + toJSONObject, + isAsyncFn, + isThenable, + setImmediate: _setImmediate, + asap + }; + function AxiosError(message2, code, config, request, response) { + Error.call(this); + if (Error.captureStackTrace) { + Error.captureStackTrace(this, this.constructor); + } else { + this.stack = new Error().stack; + } + this.message = message2; + this.name = "AxiosError"; + code && (this.code = code); + config && (this.config = config); + request && (this.request = request); + if (response) { + this.response = response; + this.status = response.status ? response.status : null; + } + } + utils$1.inherits(AxiosError, Error, { + toJSON: function toJSON() { + return { + // Standard + message: this.message, + name: this.name, + // Microsoft + description: this.description, + number: this.number, + // Mozilla + fileName: this.fileName, + lineNumber: this.lineNumber, + columnNumber: this.columnNumber, + stack: this.stack, + // Axios + config: utils$1.toJSONObject(this.config), + code: this.code, + status: this.status + }; + } + }); + const prototype$1 = AxiosError.prototype; + const descriptors = {}; + [ + "ERR_BAD_OPTION_VALUE", + "ERR_BAD_OPTION", + "ECONNABORTED", + "ETIMEDOUT", + "ERR_NETWORK", + "ERR_FR_TOO_MANY_REDIRECTS", + "ERR_DEPRECATED", + "ERR_BAD_RESPONSE", + "ERR_BAD_REQUEST", + "ERR_CANCELED", + "ERR_NOT_SUPPORT", + "ERR_INVALID_URL" + // eslint-disable-next-line func-names + ].forEach((code) => { + descriptors[code] = { value: code }; + }); + Object.defineProperties(AxiosError, descriptors); + Object.defineProperty(prototype$1, "isAxiosError", { value: true }); + AxiosError.from = (error, code, config, request, response, customProps) => { + const axiosError = Object.create(prototype$1); + utils$1.toFlatObject(error, axiosError, function filter(obj) { + return obj !== Error.prototype; + }, (prop) => { + return prop !== "isAxiosError"; + }); + AxiosError.call(axiosError, error.message, code, config, request, response); + axiosError.cause = error; + axiosError.name = error.name; + customProps && Object.assign(axiosError, customProps); + return axiosError; + }; + const httpAdapter = null; + function isVisitable(thing) { + return utils$1.isPlainObject(thing) || utils$1.isArray(thing); + } + function removeBrackets(key) { + return utils$1.endsWith(key, "[]") ? key.slice(0, -2) : key; + } + function renderKey(path, key, dots) { + if (!path) + return key; + return path.concat(key).map(function each(token, i) { + token = removeBrackets(token); + return !dots && i ? "[" + token + "]" : token; + }).join(dots ? "." : ""); + } + function isFlatArray(arr) { + return utils$1.isArray(arr) && !arr.some(isVisitable); + } + const predicates = utils$1.toFlatObject(utils$1, {}, null, function filter(prop) { + return /^is[A-Z]/.test(prop); + }); + function toFormData(obj, formData, options) { + if (!utils$1.isObject(obj)) { + throw new TypeError("target must be an object"); + } + formData = formData || new FormData(); + options = utils$1.toFlatObject(options, { + metaTokens: true, + dots: false, + indexes: false + }, false, function defined(option, source) { + return !utils$1.isUndefined(source[option]); + }); + const metaTokens = options.metaTokens; + const visitor = options.visitor || defaultVisitor; + const dots = options.dots; + const indexes = options.indexes; + const _Blob = options.Blob || typeof Blob !== "undefined" && Blob; + const useBlob = _Blob && utils$1.isSpecCompliantForm(formData); + if (!utils$1.isFunction(visitor)) { + throw new TypeError("visitor must be a function"); + } + function convertValue(value) { + if (value === null) + return ""; + if (utils$1.isDate(value)) { + return value.toISOString(); + } + if (!useBlob && utils$1.isBlob(value)) { + throw new AxiosError("Blob is not supported. Use a Buffer instead."); + } + if (utils$1.isArrayBuffer(value) || utils$1.isTypedArray(value)) { + return useBlob && typeof Blob === "function" ? new Blob([value]) : Buffer.from(value); + } + return value; + } + function defaultVisitor(value, key, path) { + let arr = value; + if (value && !path && typeof value === "object") { + if (utils$1.endsWith(key, "{}")) { + key = metaTokens ? key : key.slice(0, -2); + value = JSON.stringify(value); + } else if (utils$1.isArray(value) && isFlatArray(value) || (utils$1.isFileList(value) || utils$1.endsWith(key, "[]")) && (arr = utils$1.toArray(value))) { + key = removeBrackets(key); + arr.forEach(function each(el, index) { + !(utils$1.isUndefined(el) || el === null) && formData.append( + // eslint-disable-next-line no-nested-ternary + indexes === true ? renderKey([key], index, dots) : indexes === null ? key : key + "[]", + convertValue(el) + ); + }); + return false; + } + } + if (isVisitable(value)) { + return true; + } + formData.append(renderKey(path, key, dots), convertValue(value)); + return false; + } + const stack = []; + const exposedHelpers = Object.assign(predicates, { + defaultVisitor, + convertValue, + isVisitable + }); + function build(value, path) { + if (utils$1.isUndefined(value)) + return; + if (stack.indexOf(value) !== -1) { + throw Error("Circular reference detected in " + path.join(".")); + } + stack.push(value); + utils$1.forEach(value, function each(el, key) { + const result = !(utils$1.isUndefined(el) || el === null) && visitor.call( + formData, + el, + utils$1.isString(key) ? key.trim() : key, + path, + exposedHelpers + ); + if (result === true) { + build(el, path ? path.concat(key) : [key]); + } + }); + stack.pop(); + } + if (!utils$1.isObject(obj)) { + throw new TypeError("data must be an object"); + } + build(obj); + return formData; + } + function encode$1(str) { + const charMap = { + "!": "%21", + "'": "%27", + "(": "%28", + ")": "%29", + "~": "%7E", + "%20": "+", + "%00": "\0" + }; + return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) { + return charMap[match]; + }); + } + function AxiosURLSearchParams(params, options) { + this._pairs = []; + params && toFormData(params, this, options); + } + const prototype = AxiosURLSearchParams.prototype; + prototype.append = function append(name, value) { + this._pairs.push([name, value]); + }; + prototype.toString = function toString2(encoder) { + const _encode = encoder ? function(value) { + return encoder.call(this, value, encode$1); + } : encode$1; + return this._pairs.map(function each(pair) { + return _encode(pair[0]) + "=" + _encode(pair[1]); + }, "").join("&"); + }; + function encode(val) { + return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); + } + function buildURL(url, params, options) { + if (!params) { + return url; + } + const _encode = options && options.encode || encode; + if (utils$1.isFunction(options)) { + options = { + serialize: options + }; + } + const serializeFn = options && options.serialize; + let serializedParams; + if (serializeFn) { + serializedParams = serializeFn(params, options); + } else { + serializedParams = utils$1.isURLSearchParams(params) ? params.toString() : new AxiosURLSearchParams(params, options).toString(_encode); + } + if (serializedParams) { + const hashmarkIndex = url.indexOf("#"); + if (hashmarkIndex !== -1) { + url = url.slice(0, hashmarkIndex); + } + url += (url.indexOf("?") === -1 ? "?" : "&") + serializedParams; + } + return url; + } + class InterceptorManager { + constructor() { + this.handlers = []; + } + /** + * Add a new interceptor to the stack + * + * @param {Function} fulfilled The function to handle `then` for a `Promise` + * @param {Function} rejected The function to handle `reject` for a `Promise` + * + * @return {Number} An ID used to remove interceptor later + */ + use(fulfilled, rejected, options) { + this.handlers.push({ + fulfilled, + rejected, + synchronous: options ? options.synchronous : false, + runWhen: options ? options.runWhen : null + }); + return this.handlers.length - 1; + } + /** + * Remove an interceptor from the stack + * + * @param {Number} id The ID that was returned by `use` + * + * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise + */ + eject(id) { + if (this.handlers[id]) { + this.handlers[id] = null; + } + } + /** + * Clear all interceptors from the stack + * + * @returns {void} + */ + clear() { + if (this.handlers) { + this.handlers = []; + } + } + /** + * Iterate over all the registered interceptors + * + * This method is particularly useful for skipping over any + * interceptors that may have become `null` calling `eject`. + * + * @param {Function} fn The function to call for each interceptor + * + * @returns {void} + */ + forEach(fn) { + utils$1.forEach(this.handlers, function forEachHandler(h) { + if (h !== null) { + fn(h); + } + }); + } + } + const InterceptorManager$1 = InterceptorManager; + const transitionalDefaults = { + silentJSONParsing: true, + forcedJSONParsing: true, + clarifyTimeoutError: false + }; + const URLSearchParams$1 = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams; + const FormData$1 = typeof FormData !== "undefined" ? FormData : null; + const Blob$1 = typeof Blob !== "undefined" ? Blob : null; + const platform$1 = { + isBrowser: true, + classes: { + URLSearchParams: URLSearchParams$1, + FormData: FormData$1, + Blob: Blob$1 + }, + protocols: ["http", "https", "file", "blob", "url", "data"] + }; + const hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined"; + const _navigator = typeof navigator === "object" && navigator || void 0; + const hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0); + const hasStandardBrowserWebWorkerEnv = (() => { + return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef + self instanceof WorkerGlobalScope && typeof self.importScripts === "function"; + })(); + const origin = hasBrowserEnv && window.location.href || "http://localhost"; + const utils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ + __proto__: null, + hasBrowserEnv, + hasStandardBrowserEnv, + hasStandardBrowserWebWorkerEnv, + navigator: _navigator, + origin + }, Symbol.toStringTag, { value: "Module" })); + const platform = { + ...utils, + ...platform$1 + }; + function toURLEncodedForm(data2, options) { + return toFormData(data2, new platform.classes.URLSearchParams(), Object.assign({ + visitor: function(value, key, path, helpers) { + if (platform.isNode && utils$1.isBuffer(value)) { + this.append(key, value.toString("base64")); + return false; + } + return helpers.defaultVisitor.apply(this, arguments); + } + }, options)); + } + function parsePropPath(name) { + return utils$1.matchAll(/\w+|\[(\w*)]/g, name).map((match) => { + return match[0] === "[]" ? "" : match[1] || match[0]; + }); + } + function arrayToObject(arr) { + const obj = {}; + const keys = Object.keys(arr); + let i; + const len = keys.length; + let key; + for (i = 0; i < len; i++) { + key = keys[i]; + obj[key] = arr[key]; + } + return obj; + } + function formDataToJSON(formData) { + function buildPath(path, value, target, index) { + let name = path[index++]; + if (name === "__proto__") + return true; + const isNumericKey = Number.isFinite(+name); + const isLast = index >= path.length; + name = !name && utils$1.isArray(target) ? target.length : name; + if (isLast) { + if (utils$1.hasOwnProp(target, name)) { + target[name] = [target[name], value]; + } else { + target[name] = value; + } + return !isNumericKey; + } + if (!target[name] || !utils$1.isObject(target[name])) { + target[name] = []; + } + const result = buildPath(path, value, target[name], index); + if (result && utils$1.isArray(target[name])) { + target[name] = arrayToObject(target[name]); + } + return !isNumericKey; + } + if (utils$1.isFormData(formData) && utils$1.isFunction(formData.entries)) { + const obj = {}; + utils$1.forEachEntry(formData, (name, value) => { + buildPath(parsePropPath(name), value, obj, 0); + }); + return obj; + } + return null; + } + function stringifySafely(rawValue, parser, encoder) { + if (utils$1.isString(rawValue)) { + try { + (parser || JSON.parse)(rawValue); + return utils$1.trim(rawValue); + } catch (e) { + if (e.name !== "SyntaxError") { + throw e; + } + } + } + return (encoder || JSON.stringify)(rawValue); + } + const defaults = { + transitional: transitionalDefaults, + adapter: ["xhr", "http", "fetch"], + transformRequest: [function transformRequest(data2, headers) { + const contentType = headers.getContentType() || ""; + const hasJSONContentType = contentType.indexOf("application/json") > -1; + const isObjectPayload = utils$1.isObject(data2); + if (isObjectPayload && utils$1.isHTMLForm(data2)) { + data2 = new FormData(data2); + } + const isFormData2 = utils$1.isFormData(data2); + if (isFormData2) { + return hasJSONContentType ? JSON.stringify(formDataToJSON(data2)) : data2; + } + if (utils$1.isArrayBuffer(data2) || utils$1.isBuffer(data2) || utils$1.isStream(data2) || utils$1.isFile(data2) || utils$1.isBlob(data2) || utils$1.isReadableStream(data2)) { + return data2; + } + if (utils$1.isArrayBufferView(data2)) { + return data2.buffer; + } + if (utils$1.isURLSearchParams(data2)) { + headers.setContentType("application/x-www-form-urlencoded;charset=utf-8", false); + return data2.toString(); + } + let isFileList2; + if (isObjectPayload) { + if (contentType.indexOf("application/x-www-form-urlencoded") > -1) { + return toURLEncodedForm(data2, this.formSerializer).toString(); + } + if ((isFileList2 = utils$1.isFileList(data2)) || contentType.indexOf("multipart/form-data") > -1) { + const _FormData = this.env && this.env.FormData; + return toFormData( + isFileList2 ? { "files[]": data2 } : data2, + _FormData && new _FormData(), + this.formSerializer + ); + } + } + if (isObjectPayload || hasJSONContentType) { + headers.setContentType("application/json", false); + return stringifySafely(data2); + } + return data2; + }], + transformResponse: [function transformResponse(data2) { + const transitional = this.transitional || defaults.transitional; + const forcedJSONParsing = transitional && transitional.forcedJSONParsing; + const JSONRequested = this.responseType === "json"; + if (utils$1.isResponse(data2) || utils$1.isReadableStream(data2)) { + return data2; + } + if (data2 && utils$1.isString(data2) && (forcedJSONParsing && !this.responseType || JSONRequested)) { + const silentJSONParsing = transitional && transitional.silentJSONParsing; + const strictJSONParsing = !silentJSONParsing && JSONRequested; + try { + return JSON.parse(data2); + } catch (e) { + if (strictJSONParsing) { + if (e.name === "SyntaxError") { + throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response); + } + throw e; + } + } + } + return data2; + }], + /** + * A timeout in milliseconds to abort a request. If set to 0 (default) a + * timeout is not created. + */ + timeout: 0, + xsrfCookieName: "XSRF-TOKEN", + xsrfHeaderName: "X-XSRF-TOKEN", + maxContentLength: -1, + maxBodyLength: -1, + env: { + FormData: platform.classes.FormData, + Blob: platform.classes.Blob + }, + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + }, + headers: { + common: { + "Accept": "application/json, text/plain, */*", + "Content-Type": void 0 + } + } + }; + utils$1.forEach(["delete", "get", "head", "post", "put", "patch"], (method) => { + defaults.headers[method] = {}; + }); + const defaults$1 = defaults; + const ignoreDuplicateOf = utils$1.toObjectSet([ + "age", + "authorization", + "content-length", + "content-type", + "etag", + "expires", + "from", + "host", + "if-modified-since", + "if-unmodified-since", + "last-modified", + "location", + "max-forwards", + "proxy-authorization", + "referer", + "retry-after", + "user-agent" + ]); + const parseHeaders = (rawHeaders) => { + const parsed = {}; + let key; + let val; + let i; + rawHeaders && rawHeaders.split("\n").forEach(function parser(line) { + i = line.indexOf(":"); + key = line.substring(0, i).trim().toLowerCase(); + val = line.substring(i + 1).trim(); + if (!key || parsed[key] && ignoreDuplicateOf[key]) { + return; + } + if (key === "set-cookie") { + if (parsed[key]) { + parsed[key].push(val); + } else { + parsed[key] = [val]; + } + } else { + parsed[key] = parsed[key] ? parsed[key] + ", " + val : val; + } + }); + return parsed; + }; + const $internals = Symbol("internals"); + function normalizeHeader(header) { + return header && String(header).trim().toLowerCase(); + } + function normalizeValue(value) { + if (value === false || value == null) { + return value; + } + return utils$1.isArray(value) ? value.map(normalizeValue) : String(value); + } + function parseTokens(str) { + const tokens = /* @__PURE__ */ Object.create(null); + const tokensRE = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g; + let match; + while (match = tokensRE.exec(str)) { + tokens[match[1]] = match[2]; + } + return tokens; + } + const isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim()); + function matchHeaderValue(context, value, header, filter, isHeaderNameFilter) { + if (utils$1.isFunction(filter)) { + return filter.call(this, value, header); + } + if (isHeaderNameFilter) { + value = header; + } + if (!utils$1.isString(value)) + return; + if (utils$1.isString(filter)) { + return value.indexOf(filter) !== -1; + } + if (utils$1.isRegExp(filter)) { + return filter.test(value); + } + } + function formatHeader(header) { + return header.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (w, char, str) => { + return char.toUpperCase() + str; + }); + } + function buildAccessors(obj, header) { + const accessorName = utils$1.toCamelCase(" " + header); + ["get", "set", "has"].forEach((methodName) => { + Object.defineProperty(obj, methodName + accessorName, { + value: function(arg1, arg2, arg3) { + return this[methodName].call(this, header, arg1, arg2, arg3); + }, + configurable: true + }); + }); + } + class AxiosHeaders { + constructor(headers) { + headers && this.set(headers); + } + set(header, valueOrRewrite, rewrite) { + const self2 = this; + function setHeader(_value, _header, _rewrite) { + const lHeader = normalizeHeader(_header); + if (!lHeader) { + throw new Error("header name must be a non-empty string"); + } + const key = utils$1.findKey(self2, lHeader); + if (!key || self2[key] === void 0 || _rewrite === true || _rewrite === void 0 && self2[key] !== false) { + self2[key || _header] = normalizeValue(_value); + } + } + const setHeaders = (headers, _rewrite) => utils$1.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite)); + if (utils$1.isPlainObject(header) || header instanceof this.constructor) { + setHeaders(header, valueOrRewrite); + } else if (utils$1.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) { + setHeaders(parseHeaders(header), valueOrRewrite); + } else if (utils$1.isHeaders(header)) { + for (const [key, value] of header.entries()) { + setHeader(value, key, rewrite); + } + } else { + header != null && setHeader(valueOrRewrite, header, rewrite); + } + return this; + } + get(header, parser) { + header = normalizeHeader(header); + if (header) { + const key = utils$1.findKey(this, header); + if (key) { + const value = this[key]; + if (!parser) { + return value; + } + if (parser === true) { + return parseTokens(value); + } + if (utils$1.isFunction(parser)) { + return parser.call(this, value, key); + } + if (utils$1.isRegExp(parser)) { + return parser.exec(value); + } + throw new TypeError("parser must be boolean|regexp|function"); + } + } + } + has(header, matcher) { + header = normalizeHeader(header); + if (header) { + const key = utils$1.findKey(this, header); + return !!(key && this[key] !== void 0 && (!matcher || matchHeaderValue(this, this[key], key, matcher))); + } + return false; + } + delete(header, matcher) { + const self2 = this; + let deleted = false; + function deleteHeader(_header) { + _header = normalizeHeader(_header); + if (_header) { + const key = utils$1.findKey(self2, _header); + if (key && (!matcher || matchHeaderValue(self2, self2[key], key, matcher))) { + delete self2[key]; + deleted = true; + } + } + } + if (utils$1.isArray(header)) { + header.forEach(deleteHeader); + } else { + deleteHeader(header); + } + return deleted; + } + clear(matcher) { + const keys = Object.keys(this); + let i = keys.length; + let deleted = false; + while (i--) { + const key = keys[i]; + if (!matcher || matchHeaderValue(this, this[key], key, matcher, true)) { + delete this[key]; + deleted = true; + } + } + return deleted; + } + normalize(format) { + const self2 = this; + const headers = {}; + utils$1.forEach(this, (value, header) => { + const key = utils$1.findKey(headers, header); + if (key) { + self2[key] = normalizeValue(value); + delete self2[header]; + return; + } + const normalized = format ? formatHeader(header) : String(header).trim(); + if (normalized !== header) { + delete self2[header]; + } + self2[normalized] = normalizeValue(value); + headers[normalized] = true; + }); + return this; + } + concat(...targets) { + return this.constructor.concat(this, ...targets); + } + toJSON(asStrings) { + const obj = /* @__PURE__ */ Object.create(null); + utils$1.forEach(this, (value, header) => { + value != null && value !== false && (obj[header] = asStrings && utils$1.isArray(value) ? value.join(", ") : value); + }); + return obj; + } + [Symbol.iterator]() { + return Object.entries(this.toJSON())[Symbol.iterator](); + } + toString() { + return Object.entries(this.toJSON()).map(([header, value]) => header + ": " + value).join("\n"); + } + get [Symbol.toStringTag]() { + return "AxiosHeaders"; + } + static from(thing) { + return thing instanceof this ? thing : new this(thing); + } + static concat(first, ...targets) { + const computed = new this(first); + targets.forEach((target) => computed.set(target)); + return computed; + } + static accessor(header) { + const internals = this[$internals] = this[$internals] = { + accessors: {} + }; + const accessors = internals.accessors; + const prototype2 = this.prototype; + function defineAccessor(_header) { + const lHeader = normalizeHeader(_header); + if (!accessors[lHeader]) { + buildAccessors(prototype2, _header); + accessors[lHeader] = true; + } + } + utils$1.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header); + return this; + } + } + AxiosHeaders.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]); + utils$1.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => { + let mapped = key[0].toUpperCase() + key.slice(1); + return { + get: () => value, + set(headerValue) { + this[mapped] = headerValue; + } + }; + }); + utils$1.freezeMethods(AxiosHeaders); + const AxiosHeaders$1 = AxiosHeaders; + function transformData(fns, response) { + const config = this || defaults$1; + const context = response || config; + const headers = AxiosHeaders$1.from(context.headers); + let data2 = context.data; + utils$1.forEach(fns, function transform(fn) { + data2 = fn.call(config, data2, headers.normalize(), response ? response.status : void 0); + }); + headers.normalize(); + return data2; + } + function isCancel(value) { + return !!(value && value.__CANCEL__); + } + function CanceledError(message2, config, request) { + AxiosError.call(this, message2 == null ? "canceled" : message2, AxiosError.ERR_CANCELED, config, request); + this.name = "CanceledError"; + } + utils$1.inherits(CanceledError, AxiosError, { + __CANCEL__: true + }); + function settle(resolve, reject, response) { + const validateStatus = response.config.validateStatus; + if (!response.status || !validateStatus || validateStatus(response.status)) { + resolve(response); + } else { + reject(new AxiosError( + "Request failed with status code " + response.status, + [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], + response.config, + response.request, + response + )); + } + } + function parseProtocol(url) { + const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); + return match && match[1] || ""; + } + function speedometer(samplesCount, min) { + samplesCount = samplesCount || 10; + const bytes = new Array(samplesCount); + const timestamps = new Array(samplesCount); + let head = 0; + let tail = 0; + let firstSampleTS; + min = min !== void 0 ? min : 1e3; + return function push(chunkLength) { + const now = Date.now(); + const startedAt = timestamps[tail]; + if (!firstSampleTS) { + firstSampleTS = now; + } + bytes[head] = chunkLength; + timestamps[head] = now; + let i = tail; + let bytesCount = 0; + while (i !== head) { + bytesCount += bytes[i++]; + i = i % samplesCount; + } + head = (head + 1) % samplesCount; + if (head === tail) { + tail = (tail + 1) % samplesCount; + } + if (now - firstSampleTS < min) { + return; + } + const passed = startedAt && now - startedAt; + return passed ? Math.round(bytesCount * 1e3 / passed) : void 0; + }; + } + function throttle(fn, freq) { + let timestamp = 0; + let threshold = 1e3 / freq; + let lastArgs; + let timer; + const invoke = (args, now = Date.now()) => { + timestamp = now; + lastArgs = null; + if (timer) { + clearTimeout(timer); + timer = null; + } + fn.apply(null, args); + }; + const throttled = (...args) => { + const now = Date.now(); + const passed = now - timestamp; + if (passed >= threshold) { + invoke(args, now); + } else { + lastArgs = args; + if (!timer) { + timer = setTimeout(() => { + timer = null; + invoke(lastArgs); + }, threshold - passed); + } + } + }; + const flush = () => lastArgs && invoke(lastArgs); + return [throttled, flush]; + } + const progressEventReducer = (listener, isDownloadStream, freq = 3) => { + let bytesNotified = 0; + const _speedometer = speedometer(50, 250); + return throttle((e) => { + const loaded = e.loaded; + const total = e.lengthComputable ? e.total : void 0; + const progressBytes = loaded - bytesNotified; + const rate = _speedometer(progressBytes); + const inRange = loaded <= total; + bytesNotified = loaded; + const data2 = { + loaded, + total, + progress: total ? loaded / total : void 0, + bytes: progressBytes, + rate: rate ? rate : void 0, + estimated: rate && total && inRange ? (total - loaded) / rate : void 0, + event: e, + lengthComputable: total != null, + [isDownloadStream ? "download" : "upload"]: true + }; + listener(data2); + }, freq); + }; + const progressEventDecorator = (total, throttled) => { + const lengthComputable = total != null; + return [(loaded) => throttled[0]({ + lengthComputable, + total, + loaded + }), throttled[1]]; + }; + const asyncDecorator = (fn) => (...args) => utils$1.asap(() => fn(...args)); + const isURLSameOrigin = platform.hasStandardBrowserEnv ? ((origin2, isMSIE) => (url) => { + url = new URL(url, platform.origin); + return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port); + })( + new URL(platform.origin), + platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent) + ) : () => true; + const cookies = platform.hasStandardBrowserEnv ? ( + // Standard browser envs support document.cookie + { + write(name, value, expires, path, domain, secure) { + const cookie = [name + "=" + encodeURIComponent(value)]; + utils$1.isNumber(expires) && cookie.push("expires=" + new Date(expires).toGMTString()); + utils$1.isString(path) && cookie.push("path=" + path); + utils$1.isString(domain) && cookie.push("domain=" + domain); + secure === true && cookie.push("secure"); + document.cookie = cookie.join("; "); + }, + read(name) { + const match = document.cookie.match(new RegExp("(^|;\\s*)(" + name + ")=([^;]*)")); + return match ? decodeURIComponent(match[3]) : null; + }, + remove(name) { + this.write(name, "", Date.now() - 864e5); + } + } + ) : ( + // Non-standard browser env (web workers, react-native) lack needed support. + { + write() { + }, + read() { + return null; + }, + remove() { + } + } + ); + function isAbsoluteURL(url) { + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); + } + function combineURLs(baseURL2, relativeURL) { + return relativeURL ? baseURL2.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL2; + } + function buildFullPath(baseURL2, requestedURL) { + if (baseURL2 && !isAbsoluteURL(requestedURL)) { + return combineURLs(baseURL2, requestedURL); + } + return requestedURL; + } + const headersToObject = (thing) => thing instanceof AxiosHeaders$1 ? { ...thing } : thing; + function mergeConfig(config1, config2) { + config2 = config2 || {}; + const config = {}; + function getMergedValue(target, source, prop, caseless) { + if (utils$1.isPlainObject(target) && utils$1.isPlainObject(source)) { + return utils$1.merge.call({ caseless }, target, source); + } else if (utils$1.isPlainObject(source)) { + return utils$1.merge({}, source); + } else if (utils$1.isArray(source)) { + return source.slice(); + } + return source; + } + function mergeDeepProperties(a, b, prop, caseless) { + if (!utils$1.isUndefined(b)) { + return getMergedValue(a, b, prop, caseless); + } else if (!utils$1.isUndefined(a)) { + return getMergedValue(void 0, a, prop, caseless); + } + } + function valueFromConfig2(a, b) { + if (!utils$1.isUndefined(b)) { + return getMergedValue(void 0, b); + } + } + function defaultToConfig2(a, b) { + if (!utils$1.isUndefined(b)) { + return getMergedValue(void 0, b); + } else if (!utils$1.isUndefined(a)) { + return getMergedValue(void 0, a); + } + } + function mergeDirectKeys(a, b, prop) { + if (prop in config2) { + return getMergedValue(a, b); + } else if (prop in config1) { + return getMergedValue(void 0, a); + } + } + const mergeMap = { + url: valueFromConfig2, + method: valueFromConfig2, + data: valueFromConfig2, + baseURL: defaultToConfig2, + transformRequest: defaultToConfig2, + transformResponse: defaultToConfig2, + paramsSerializer: defaultToConfig2, + timeout: defaultToConfig2, + timeoutMessage: defaultToConfig2, + withCredentials: defaultToConfig2, + withXSRFToken: defaultToConfig2, + adapter: defaultToConfig2, + responseType: defaultToConfig2, + xsrfCookieName: defaultToConfig2, + xsrfHeaderName: defaultToConfig2, + onUploadProgress: defaultToConfig2, + onDownloadProgress: defaultToConfig2, + decompress: defaultToConfig2, + maxContentLength: defaultToConfig2, + maxBodyLength: defaultToConfig2, + beforeRedirect: defaultToConfig2, + transport: defaultToConfig2, + httpAgent: defaultToConfig2, + httpsAgent: defaultToConfig2, + cancelToken: defaultToConfig2, + socketPath: defaultToConfig2, + responseEncoding: defaultToConfig2, + validateStatus: mergeDirectKeys, + headers: (a, b, prop) => mergeDeepProperties(headersToObject(a), headersToObject(b), prop, true) + }; + utils$1.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) { + const merge2 = mergeMap[prop] || mergeDeepProperties; + const configValue = merge2(config1[prop], config2[prop], prop); + utils$1.isUndefined(configValue) && merge2 !== mergeDirectKeys || (config[prop] = configValue); + }); + return config; + } + const resolveConfig = (config) => { + const newConfig = mergeConfig({}, config); + let { data: data2, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth } = newConfig; + newConfig.headers = headers = AxiosHeaders$1.from(headers); + newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer); + if (auth) { + headers.set( + "Authorization", + "Basic " + btoa((auth.username || "") + ":" + (auth.password ? unescape(encodeURIComponent(auth.password)) : "")) + ); + } + let contentType; + if (utils$1.isFormData(data2)) { + if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) { + headers.setContentType(void 0); + } else if ((contentType = headers.getContentType()) !== false) { + const [type, ...tokens] = contentType ? contentType.split(";").map((token) => token.trim()).filter(Boolean) : []; + headers.setContentType([type || "multipart/form-data", ...tokens].join("; ")); + } + } + if (platform.hasStandardBrowserEnv) { + withXSRFToken && utils$1.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig)); + if (withXSRFToken || withXSRFToken !== false && isURLSameOrigin(newConfig.url)) { + const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName); + if (xsrfValue) { + headers.set(xsrfHeaderName, xsrfValue); + } + } + } + return newConfig; + }; + const isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; + const xhrAdapter = isXHRAdapterSupported && function(config) { + return new Promise(function dispatchXhrRequest(resolve, reject) { + const _config = resolveConfig(config); + let requestData = _config.data; + const requestHeaders = AxiosHeaders$1.from(_config.headers).normalize(); + let { responseType, onUploadProgress, onDownloadProgress } = _config; + let onCanceled; + let uploadThrottled, downloadThrottled; + let flushUpload, flushDownload; + function done() { + flushUpload && flushUpload(); + flushDownload && flushDownload(); + _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled); + _config.signal && _config.signal.removeEventListener("abort", onCanceled); + } + let request = new XMLHttpRequest(); + request.open(_config.method.toUpperCase(), _config.url, true); + request.timeout = _config.timeout; + function onloadend() { + if (!request) { + return; + } + const responseHeaders = AxiosHeaders$1.from( + "getAllResponseHeaders" in request && request.getAllResponseHeaders() + ); + const responseData = !responseType || responseType === "text" || responseType === "json" ? request.responseText : request.response; + const response = { + data: responseData, + status: request.status, + statusText: request.statusText, + headers: responseHeaders, + config, + request + }; + settle(function _resolve(value) { + resolve(value); + done(); + }, function _reject(err) { + reject(err); + done(); + }, response); + request = null; + } + if ("onloadend" in request) { + request.onloadend = onloadend; + } else { + request.onreadystatechange = function handleLoad() { + if (!request || request.readyState !== 4) { + return; + } + if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf("file:") === 0)) { + return; + } + setTimeout(onloadend); + }; + } + request.onabort = function handleAbort() { + if (!request) { + return; + } + reject(new AxiosError("Request aborted", AxiosError.ECONNABORTED, config, request)); + request = null; + }; + request.onerror = function handleError() { + reject(new AxiosError("Network Error", AxiosError.ERR_NETWORK, config, request)); + request = null; + }; + request.ontimeout = function handleTimeout() { + let timeoutErrorMessage = _config.timeout ? "timeout of " + _config.timeout + "ms exceeded" : "timeout exceeded"; + const transitional = _config.transitional || transitionalDefaults; + if (_config.timeoutErrorMessage) { + timeoutErrorMessage = _config.timeoutErrorMessage; + } + reject(new AxiosError( + timeoutErrorMessage, + transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED, + config, + request + )); + request = null; + }; + requestData === void 0 && requestHeaders.setContentType(null); + if ("setRequestHeader" in request) { + utils$1.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) { + request.setRequestHeader(key, val); + }); + } + if (!utils$1.isUndefined(_config.withCredentials)) { + request.withCredentials = !!_config.withCredentials; + } + if (responseType && responseType !== "json") { + request.responseType = _config.responseType; + } + if (onDownloadProgress) { + [downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true); + request.addEventListener("progress", downloadThrottled); + } + if (onUploadProgress && request.upload) { + [uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress); + request.upload.addEventListener("progress", uploadThrottled); + request.upload.addEventListener("loadend", flushUpload); + } + if (_config.cancelToken || _config.signal) { + onCanceled = (cancel) => { + if (!request) { + return; + } + reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel); + request.abort(); + request = null; + }; + _config.cancelToken && _config.cancelToken.subscribe(onCanceled); + if (_config.signal) { + _config.signal.aborted ? onCanceled() : _config.signal.addEventListener("abort", onCanceled); + } + } + const protocol = parseProtocol(_config.url); + if (protocol && platform.protocols.indexOf(protocol) === -1) { + reject(new AxiosError("Unsupported protocol " + protocol + ":", AxiosError.ERR_BAD_REQUEST, config)); + return; + } + request.send(requestData || null); + }); + }; + const composeSignals = (signals, timeout) => { + const { length } = signals = signals ? signals.filter(Boolean) : []; + if (timeout || length) { + let controller = new AbortController(); + let aborted; + const onabort = function(reason) { + if (!aborted) { + aborted = true; + unsubscribe(); + const err = reason instanceof Error ? reason : this.reason; + controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err)); + } + }; + let timer = timeout && setTimeout(() => { + timer = null; + onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT)); + }, timeout); + const unsubscribe = () => { + if (signals) { + timer && clearTimeout(timer); + timer = null; + signals.forEach((signal2) => { + signal2.unsubscribe ? signal2.unsubscribe(onabort) : signal2.removeEventListener("abort", onabort); + }); + signals = null; + } + }; + signals.forEach((signal2) => signal2.addEventListener("abort", onabort)); + const { signal } = controller; + signal.unsubscribe = () => utils$1.asap(unsubscribe); + return signal; + } + }; + const composeSignals$1 = composeSignals; + const streamChunk = function* (chunk, chunkSize) { + let len = chunk.byteLength; + if (!chunkSize || len < chunkSize) { + yield chunk; + return; + } + let pos = 0; + let end; + while (pos < len) { + end = pos + chunkSize; + yield chunk.slice(pos, end); + pos = end; + } + }; + const readBytes = async function* (iterable, chunkSize) { + for await (const chunk of readStream(iterable)) { + yield* streamChunk(chunk, chunkSize); + } + }; + const readStream = async function* (stream) { + if (stream[Symbol.asyncIterator]) { + yield* stream; + return; + } + const reader = stream.getReader(); + try { + for (; ; ) { + const { done, value } = await reader.read(); + if (done) { + break; + } + yield value; + } + } finally { + await reader.cancel(); + } + }; + const trackStream = (stream, chunkSize, onProgress, onFinish) => { + const iterator = readBytes(stream, chunkSize); + let bytes = 0; + let done; + let _onFinish = (e) => { + if (!done) { + done = true; + onFinish && onFinish(e); + } + }; + return new ReadableStream({ + async pull(controller) { + try { + const { done: done2, value } = await iterator.next(); + if (done2) { + _onFinish(); + controller.close(); + return; + } + let len = value.byteLength; + if (onProgress) { + let loadedBytes = bytes += len; + onProgress(loadedBytes); + } + controller.enqueue(new Uint8Array(value)); + } catch (err) { + _onFinish(err); + throw err; + } + }, + cancel(reason) { + _onFinish(reason); + return iterator.return(); + } + }, { + highWaterMark: 2 + }); + }; + const isFetchSupported = typeof fetch === "function" && typeof Request === "function" && typeof Response === "function"; + const isReadableStreamSupported = isFetchSupported && typeof ReadableStream === "function"; + const encodeText = isFetchSupported && (typeof TextEncoder === "function" ? ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) : async (str) => new Uint8Array(await new Response(str).arrayBuffer())); + const test = (fn, ...args) => { + try { + return !!fn(...args); + } catch (e) { + return false; + } + }; + const supportsRequestStream = isReadableStreamSupported && test(() => { + let duplexAccessed = false; + const hasContentType = new Request(platform.origin, { + body: new ReadableStream(), + method: "POST", + get duplex() { + duplexAccessed = true; + return "half"; + } + }).headers.has("Content-Type"); + return duplexAccessed && !hasContentType; + }); + const DEFAULT_CHUNK_SIZE = 64 * 1024; + const supportsResponseStream = isReadableStreamSupported && test(() => utils$1.isReadableStream(new Response("").body)); + const resolvers = { + stream: supportsResponseStream && ((res2) => res2.body) + }; + isFetchSupported && ((res2) => { + ["text", "arrayBuffer", "blob", "formData", "stream"].forEach((type) => { + !resolvers[type] && (resolvers[type] = utils$1.isFunction(res2[type]) ? (res3) => res3[type]() : (_, config) => { + throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config); + }); + }); + })(new Response()); + const getBodyLength = async (body) => { + if (body == null) { + return 0; + } + if (utils$1.isBlob(body)) { + return body.size; + } + if (utils$1.isSpecCompliantForm(body)) { + const _request = new Request(platform.origin, { + method: "POST", + body + }); + return (await _request.arrayBuffer()).byteLength; + } + if (utils$1.isArrayBufferView(body) || utils$1.isArrayBuffer(body)) { + return body.byteLength; + } + if (utils$1.isURLSearchParams(body)) { + body = body + ""; + } + if (utils$1.isString(body)) { + return (await encodeText(body)).byteLength; + } + }; + const resolveBodyLength = async (headers, body) => { + const length = utils$1.toFiniteNumber(headers.getContentLength()); + return length == null ? getBodyLength(body) : length; + }; + const fetchAdapter = isFetchSupported && (async (config) => { + let { + url, + method, + data: data2, + signal, + cancelToken, + timeout, + onDownloadProgress, + onUploadProgress, + responseType, + headers, + withCredentials = "same-origin", + fetchOptions + } = resolveConfig(config); + responseType = responseType ? (responseType + "").toLowerCase() : "text"; + let composedSignal = composeSignals$1([signal, cancelToken && cancelToken.toAbortSignal()], timeout); + let request; + const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => { + composedSignal.unsubscribe(); + }); + let requestContentLength; + try { + if (onUploadProgress && supportsRequestStream && method !== "get" && method !== "head" && (requestContentLength = await resolveBodyLength(headers, data2)) !== 0) { + let _request = new Request(url, { + method: "POST", + body: data2, + duplex: "half" + }); + let contentTypeHeader; + if (utils$1.isFormData(data2) && (contentTypeHeader = _request.headers.get("content-type"))) { + headers.setContentType(contentTypeHeader); + } + if (_request.body) { + const [onProgress, flush] = progressEventDecorator( + requestContentLength, + progressEventReducer(asyncDecorator(onUploadProgress)) + ); + data2 = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush); + } + } + if (!utils$1.isString(withCredentials)) { + withCredentials = withCredentials ? "include" : "omit"; + } + const isCredentialsSupported = "credentials" in Request.prototype; + request = new Request(url, { + ...fetchOptions, + signal: composedSignal, + method: method.toUpperCase(), + headers: headers.normalize().toJSON(), + body: data2, + duplex: "half", + credentials: isCredentialsSupported ? withCredentials : void 0 + }); + let response = await fetch(request); + const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response"); + if (supportsResponseStream && (onDownloadProgress || isStreamResponse && unsubscribe)) { + const options = {}; + ["status", "statusText", "headers"].forEach((prop) => { + options[prop] = response[prop]; + }); + const responseContentLength = utils$1.toFiniteNumber(response.headers.get("content-length")); + const [onProgress, flush] = onDownloadProgress && progressEventDecorator( + responseContentLength, + progressEventReducer(asyncDecorator(onDownloadProgress), true) + ) || []; + response = new Response( + trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => { + flush && flush(); + unsubscribe && unsubscribe(); + }), + options + ); + } + responseType = responseType || "text"; + let responseData = await resolvers[utils$1.findKey(resolvers, responseType) || "text"](response, config); + !isStreamResponse && unsubscribe && unsubscribe(); + return await new Promise((resolve, reject) => { + settle(resolve, reject, { + data: responseData, + headers: AxiosHeaders$1.from(response.headers), + status: response.status, + statusText: response.statusText, + config, + request + }); + }); + } catch (err) { + unsubscribe && unsubscribe(); + if (err && err.name === "TypeError" && /fetch/i.test(err.message)) { + throw Object.assign( + new AxiosError("Network Error", AxiosError.ERR_NETWORK, config, request), + { + cause: err.cause || err + } + ); + } + throw AxiosError.from(err, err && err.code, config, request); + } + }); + const knownAdapters = { + http: httpAdapter, + xhr: xhrAdapter, + fetch: fetchAdapter + }; + utils$1.forEach(knownAdapters, (fn, value) => { + if (fn) { + try { + Object.defineProperty(fn, "name", { value }); + } catch (e) { + } + Object.defineProperty(fn, "adapterName", { value }); + } + }); + const renderReason = (reason) => `- ${reason}`; + const isResolvedHandle = (adapter) => utils$1.isFunction(adapter) || adapter === null || adapter === false; + const adapters = { + getAdapter: (adapters2) => { + adapters2 = utils$1.isArray(adapters2) ? adapters2 : [adapters2]; + const { length } = adapters2; + let nameOrAdapter; + let adapter; + const rejectedReasons = {}; + for (let i = 0; i < length; i++) { + nameOrAdapter = adapters2[i]; + let id; + adapter = nameOrAdapter; + if (!isResolvedHandle(nameOrAdapter)) { + adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()]; + if (adapter === void 0) { + throw new AxiosError(`Unknown adapter '${id}'`); + } + } + if (adapter) { + break; + } + rejectedReasons[id || "#" + i] = adapter; + } + if (!adapter) { + const reasons = Object.entries(rejectedReasons).map( + ([id, state]) => `adapter ${id} ` + (state === false ? "is not supported by the environment" : "is not available in the build") + ); + let s = length ? reasons.length > 1 ? "since :\n" + reasons.map(renderReason).join("\n") : " " + renderReason(reasons[0]) : "as no adapter specified"; + throw new AxiosError( + `There is no suitable adapter to dispatch the request ` + s, + "ERR_NOT_SUPPORT" + ); + } + return adapter; + }, + adapters: knownAdapters + }; + function throwIfCancellationRequested(config) { + if (config.cancelToken) { + config.cancelToken.throwIfRequested(); + } + if (config.signal && config.signal.aborted) { + throw new CanceledError(null, config); + } + } + function dispatchRequest(config) { + throwIfCancellationRequested(config); + config.headers = AxiosHeaders$1.from(config.headers); + config.data = transformData.call( + config, + config.transformRequest + ); + if (["post", "put", "patch"].indexOf(config.method) !== -1) { + config.headers.setContentType("application/x-www-form-urlencoded", false); + } + const adapter = adapters.getAdapter(config.adapter || defaults$1.adapter); + return adapter(config).then(function onAdapterResolution(response) { + throwIfCancellationRequested(config); + response.data = transformData.call( + config, + config.transformResponse, + response + ); + response.headers = AxiosHeaders$1.from(response.headers); + return response; + }, function onAdapterRejection(reason) { + if (!isCancel(reason)) { + throwIfCancellationRequested(config); + if (reason && reason.response) { + reason.response.data = transformData.call( + config, + config.transformResponse, + reason.response + ); + reason.response.headers = AxiosHeaders$1.from(reason.response.headers); + } + } + return Promise.reject(reason); + }); + } + const VERSION = "1.7.8"; + const validators$1 = {}; + ["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { + validators$1[type] = function validator2(thing) { + return typeof thing === type || "a" + (i < 1 ? "n " : " ") + type; + }; + }); + const deprecatedWarnings = {}; + validators$1.transitional = function transitional(validator2, version, message2) { + function formatMessage(opt, desc) { + return "[Axios v" + VERSION + "] Transitional option '" + opt + "'" + desc + (message2 ? ". " + message2 : ""); + } + return (value, opt, opts) => { + if (validator2 === false) { + throw new AxiosError( + formatMessage(opt, " has been removed" + (version ? " in " + version : "")), + AxiosError.ERR_DEPRECATED + ); + } + if (version && !deprecatedWarnings[opt]) { + deprecatedWarnings[opt] = true; + console.warn( + formatMessage( + opt, + " has been deprecated since v" + version + " and will be removed in the near future" + ) + ); + } + return validator2 ? validator2(value, opt, opts) : true; + }; + }; + validators$1.spelling = function spelling(correctSpelling) { + return (value, opt) => { + console.warn(`${opt} is likely a misspelling of ${correctSpelling}`); + return true; + }; + }; + function assertOptions(options, schema, allowUnknown) { + if (typeof options !== "object") { + throw new AxiosError("options must be an object", AxiosError.ERR_BAD_OPTION_VALUE); + } + const keys = Object.keys(options); + let i = keys.length; + while (i-- > 0) { + const opt = keys[i]; + const validator2 = schema[opt]; + if (validator2) { + const value = options[opt]; + const result = value === void 0 || validator2(value, opt, options); + if (result !== true) { + throw new AxiosError("option " + opt + " must be " + result, AxiosError.ERR_BAD_OPTION_VALUE); + } + continue; + } + if (allowUnknown !== true) { + throw new AxiosError("Unknown option " + opt, AxiosError.ERR_BAD_OPTION); + } + } + } + const validator = { + assertOptions, + validators: validators$1 + }; + const validators = validator.validators; + class Axios { + constructor(instanceConfig) { + this.defaults = instanceConfig; + this.interceptors = { + request: new InterceptorManager$1(), + response: new InterceptorManager$1() + }; + } + /** + * Dispatch a request + * + * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults) + * @param {?Object} config + * + * @returns {Promise} The Promise to be fulfilled + */ + async request(configOrUrl, config) { + try { + return await this._request(configOrUrl, config); + } catch (err) { + if (err instanceof Error) { + let dummy = {}; + Error.captureStackTrace ? Error.captureStackTrace(dummy) : dummy = new Error(); + const stack = dummy.stack ? dummy.stack.replace(/^.+\n/, "") : ""; + try { + if (!err.stack) { + err.stack = stack; + } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\n.+\n/, ""))) { + err.stack += "\n" + stack; + } + } catch (e) { + } + } + throw err; + } + } + _request(configOrUrl, config) { + if (typeof configOrUrl === "string") { + config = config || {}; + config.url = configOrUrl; + } else { + config = configOrUrl || {}; + } + config = mergeConfig(this.defaults, config); + const { transitional, paramsSerializer, headers } = config; + if (transitional !== void 0) { + validator.assertOptions(transitional, { + silentJSONParsing: validators.transitional(validators.boolean), + forcedJSONParsing: validators.transitional(validators.boolean), + clarifyTimeoutError: validators.transitional(validators.boolean) + }, false); + } + if (paramsSerializer != null) { + if (utils$1.isFunction(paramsSerializer)) { + config.paramsSerializer = { + serialize: paramsSerializer + }; + } else { + validator.assertOptions(paramsSerializer, { + encode: validators.function, + serialize: validators.function + }, true); + } + } + validator.assertOptions(config, { + baseUrl: validators.spelling("baseURL"), + withXsrfToken: validators.spelling("withXSRFToken") + }, true); + config.method = (config.method || this.defaults.method || "get").toLowerCase(); + let contextHeaders = headers && utils$1.merge( + headers.common, + headers[config.method] + ); + headers && utils$1.forEach( + ["delete", "get", "head", "post", "put", "patch", "common"], + (method) => { + delete headers[method]; + } + ); + config.headers = AxiosHeaders$1.concat(contextHeaders, headers); + const requestInterceptorChain = []; + let synchronousRequestInterceptors = true; + this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) { + if (typeof interceptor.runWhen === "function" && interceptor.runWhen(config) === false) { + return; + } + synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous; + requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + const responseInterceptorChain = []; + this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) { + responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected); + }); + let promise; + let i = 0; + let len; + if (!synchronousRequestInterceptors) { + const chain = [dispatchRequest.bind(this), void 0]; + chain.unshift.apply(chain, requestInterceptorChain); + chain.push.apply(chain, responseInterceptorChain); + len = chain.length; + promise = Promise.resolve(config); + while (i < len) { + promise = promise.then(chain[i++], chain[i++]); + } + return promise; + } + len = requestInterceptorChain.length; + let newConfig = config; + i = 0; + while (i < len) { + const onFulfilled = requestInterceptorChain[i++]; + const onRejected = requestInterceptorChain[i++]; + try { + newConfig = onFulfilled(newConfig); + } catch (error) { + onRejected.call(this, error); + break; + } + } + try { + promise = dispatchRequest.call(this, newConfig); + } catch (error) { + return Promise.reject(error); + } + i = 0; + len = responseInterceptorChain.length; + while (i < len) { + promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]); + } + return promise; + } + getUri(config) { + config = mergeConfig(this.defaults, config); + const fullPath = buildFullPath(config.baseURL, config.url); + return buildURL(fullPath, config.params, config.paramsSerializer); + } + } + utils$1.forEach(["delete", "get", "head", "options"], function forEachMethodNoData(method) { + Axios.prototype[method] = function(url, config) { + return this.request(mergeConfig(config || {}, { + method, + url, + data: (config || {}).data + })); + }; + }); + utils$1.forEach(["post", "put", "patch"], function forEachMethodWithData(method) { + function generateHTTPMethod(isForm) { + return function httpMethod(url, data2, config) { + return this.request(mergeConfig(config || {}, { + method, + headers: isForm ? { + "Content-Type": "multipart/form-data" + } : {}, + url, + data: data2 + })); + }; + } + Axios.prototype[method] = generateHTTPMethod(); + Axios.prototype[method + "Form"] = generateHTTPMethod(true); + }); + const Axios$1 = Axios; + class CancelToken { + constructor(executor) { + if (typeof executor !== "function") { + throw new TypeError("executor must be a function."); + } + let resolvePromise; + this.promise = new Promise(function promiseExecutor(resolve) { + resolvePromise = resolve; + }); + const token = this; + this.promise.then((cancel) => { + if (!token._listeners) + return; + let i = token._listeners.length; + while (i-- > 0) { + token._listeners[i](cancel); + } + token._listeners = null; + }); + this.promise.then = (onfulfilled) => { + let _resolve; + const promise = new Promise((resolve) => { + token.subscribe(resolve); + _resolve = resolve; + }).then(onfulfilled); + promise.cancel = function reject() { + token.unsubscribe(_resolve); + }; + return promise; + }; + executor(function cancel(message2, config, request) { + if (token.reason) { + return; + } + token.reason = new CanceledError(message2, config, request); + resolvePromise(token.reason); + }); + } + /** + * Throws a `CanceledError` if cancellation has been requested. + */ + throwIfRequested() { + if (this.reason) { + throw this.reason; + } + } + /** + * Subscribe to the cancel signal + */ + subscribe(listener) { + if (this.reason) { + listener(this.reason); + return; + } + if (this._listeners) { + this._listeners.push(listener); + } else { + this._listeners = [listener]; + } + } + /** + * Unsubscribe from the cancel signal + */ + unsubscribe(listener) { + if (!this._listeners) { + return; + } + const index = this._listeners.indexOf(listener); + if (index !== -1) { + this._listeners.splice(index, 1); + } + } + toAbortSignal() { + const controller = new AbortController(); + const abort = (err) => { + controller.abort(err); + }; + this.subscribe(abort); + controller.signal.unsubscribe = () => this.unsubscribe(abort); + return controller.signal; + } + /** + * Returns an object that contains a new `CancelToken` and a function that, when called, + * cancels the `CancelToken`. + */ + static source() { + let cancel; + const token = new CancelToken(function executor(c) { + cancel = c; + }); + return { + token, + cancel + }; + } + } + const CancelToken$1 = CancelToken; + function spread(callback) { + return function wrap(arr) { + return callback.apply(null, arr); + }; + } + function isAxiosError(payload) { + return utils$1.isObject(payload) && payload.isAxiosError === true; + } + const HttpStatusCode = { + Continue: 100, + SwitchingProtocols: 101, + Processing: 102, + EarlyHints: 103, + Ok: 200, + Created: 201, + Accepted: 202, + NonAuthoritativeInformation: 203, + NoContent: 204, + ResetContent: 205, + PartialContent: 206, + MultiStatus: 207, + AlreadyReported: 208, + ImUsed: 226, + MultipleChoices: 300, + MovedPermanently: 301, + Found: 302, + SeeOther: 303, + NotModified: 304, + UseProxy: 305, + Unused: 306, + TemporaryRedirect: 307, + PermanentRedirect: 308, + BadRequest: 400, + Unauthorized: 401, + PaymentRequired: 402, + Forbidden: 403, + NotFound: 404, + MethodNotAllowed: 405, + NotAcceptable: 406, + ProxyAuthenticationRequired: 407, + RequestTimeout: 408, + Conflict: 409, + Gone: 410, + LengthRequired: 411, + PreconditionFailed: 412, + PayloadTooLarge: 413, + UriTooLong: 414, + UnsupportedMediaType: 415, + RangeNotSatisfiable: 416, + ExpectationFailed: 417, + ImATeapot: 418, + MisdirectedRequest: 421, + UnprocessableEntity: 422, + Locked: 423, + FailedDependency: 424, + TooEarly: 425, + UpgradeRequired: 426, + PreconditionRequired: 428, + TooManyRequests: 429, + RequestHeaderFieldsTooLarge: 431, + UnavailableForLegalReasons: 451, + InternalServerError: 500, + NotImplemented: 501, + BadGateway: 502, + ServiceUnavailable: 503, + GatewayTimeout: 504, + HttpVersionNotSupported: 505, + VariantAlsoNegotiates: 506, + InsufficientStorage: 507, + LoopDetected: 508, + NotExtended: 510, + NetworkAuthenticationRequired: 511 + }; + Object.entries(HttpStatusCode).forEach(([key, value]) => { + HttpStatusCode[value] = key; + }); + const HttpStatusCode$1 = HttpStatusCode; + function createInstance(defaultConfig) { + const context = new Axios$1(defaultConfig); + const instance = bind(Axios$1.prototype.request, context); + utils$1.extend(instance, Axios$1.prototype, context, { allOwnKeys: true }); + utils$1.extend(instance, context, null, { allOwnKeys: true }); + instance.create = function create(instanceConfig) { + return createInstance(mergeConfig(defaultConfig, instanceConfig)); + }; + return instance; + } + const axios = createInstance(defaults$1); + axios.Axios = Axios$1; + axios.CanceledError = CanceledError; + axios.CancelToken = CancelToken$1; + axios.isCancel = isCancel; + axios.VERSION = VERSION; + axios.toFormData = toFormData; + axios.AxiosError = AxiosError; + axios.Cancel = axios.CanceledError; + axios.all = function all(promises) { + return Promise.all(promises); + }; + axios.spread = spread; + axios.isAxiosError = isAxiosError; + axios.mergeConfig = mergeConfig; + axios.AxiosHeaders = AxiosHeaders$1; + axios.formToJSON = (thing) => formDataToJSON(utils$1.isHTMLForm(thing) ? new FormData(thing) : thing); + axios.getAdapter = adapters.getAdapter; + axios.HttpStatusCode = HttpStatusCode$1; + axios.default = axios; + const axios$1 = axios; + const baseURL = "https://www.ddei.top/dflow/api"; + const post = function(api, data2, successFn, errorFn) { + let config = { + method: "post", + url: baseURL + api, + headers: { + "Content-Type": "text/plain" + // 指定内容类型为JSON + }, + data: data2 + }; + axios$1(config).then((response) => { + if (successFn) { + successFn(response); + } + }).catch((error) => { + if (errorFn) { + errorFn(error); + } + }); + }; + const xml2graph = function(xml2, fn) { + post("/bpmn/xml2graph", xml2, fn); + }; class DDeiFlowAPI { constructor(editor) { __publicField(this, "editor"); /** * 配置的属性 */ - __publicField(this, "jsonField", ["id", "name", "code", "text", "ep", "sp", "desc", "isUnlimited", "capacity", "condition", "default", "bpmnType", "bpmnSubType", "scriptFormat", "dataType", "customDataType", "isCollection", "loopCardinality", "script", "bpmnBaseType", "ordering", "activityId", "errorCode", "timeType", "timeValue", "potentialOwner", "humanPerformer", "notInterrupting", "messageName", "signalName", "isLoop", "isLoop", "isTransaction", "multiInstance", "isParallel", "isCompensation", "essBounds"]); + __publicField(this, "jsonField", ["id", "name", "code", "text", "ep", "sp", "desc", "isUnlimited", "capacity", "condition", "default", "bpmnType", "bpmnSubType", "scriptFormat", "dataType", "customDataType", "isCollection", "loopCardinality", "script", "bpmnBaseType", "ordering", "activityId", "errorCode", "timeType", "timeValue", "potentialOwner", "humanPerformer", "notInterrupting", "escalName", "messageName", "signalName", "isLoop", "isLoop", "isTransaction", "multiInstance", "isParallel", "isCompensation", "essBounds"]); /** * json中以哪个字段作为key,默认为id,可以指定为code或其他字段 */ @@ -9912,31 +12385,95 @@ for ( i in inputArray ) { }); return cloneElements; } - settingSubModelsData(model, dataJson) { + settingSubModelsData(model, dataJson2) { let key = model[this.jsonKeyField] ? model[this.jsonKeyField] : model.id; - if (dataJson[key]) { - ddeiEditor.merge(model, dataJson[key]); + if (dataJson2[key]) { + ddeiEditor.merge(model, dataJson2[key]); } if (model.models) { for (let id in model.models) { let subModel = model.models[id]; - this.settingSubModelsData(subModel, dataJson); + this.settingSubModelsData(subModel, dataJson2); } } } + /** + * 通过BpmnXML加载并刷新流程图 + * @param designJson 设计器json + * @param dataJson 数据json + */ + loadFromBpmnXML(xml, dataJson = null, ratio = 1) { + if (xml) { + xml2graph(xml, (res) => { + var _a, _b, _c, _d, _e; + if (res.status == 200) { + try { + let data = eval(res.data); + if (data.state == "success" && data.graphs.length > 0) { + let graph = data.graphs[0]; + if (dataJson) { + dataJson = typeof dataJson == "string" ? JSON.parse(dataJson) : dataJson; + (_a = graph.controls) == null ? void 0 : _a.forEach((control) => { + let key = control[this.jsonKeyField] ? control[this.jsonKeyField] : control.id; + if (dataJson[key]) { + ddeiEditor.merge(control, dataJson[key]); + } + }); + (_b = graph.lines) == null ? void 0 : _b.forEach((control) => { + let key = control[this.jsonKeyField] ? control[this.jsonKeyField] : control.id; + if (dataJson[key]) { + ddeiEditor.merge(control, dataJson[key]); + } + }); + } + let ddInstance = this.editor.ddInstance; + (_c = ddInstance.stage) == null ? void 0 : _c.destroyRender(); + let file = this.editor.files[this.editor.currentFileIndex]; + let sheet = file.sheets[file.currentSheetIndex]; + sheet.name = graph.name; + sheet.desc = graph.desc; + let stage = ddeiEditor.DDeiStage.initByJSON({ id: graph.id, ratio }, { currentDdInstance: ddInstance }); + sheet.stage = stage; + ddInstance.stage = stage; + stage.initRender(); + graph.controls.forEach((control) => { + if (!control[this.jsonKeyField]) { + control[this.jsonKeyField] = control.id; + } + }); + this.editor.addControls(graph.controls, true, false); + this.editor.addLines(graph.lines); + this.editor.changeState(ddeiEditor.DDeiEditorState.DESIGNING); + ddInstance.bus.push( + ddeiEditor.DDeiEditorEnumBusCommandType.ClearTemplateUI + ); + ddInstance.bus.push( + ddeiEditor.DDeiEditorEnumBusCommandType.RefreshEditorParts + ); + (_d = ddInstance == null ? void 0 : ddInstance.bus) == null ? void 0 : _d.push(ddeiEditor.DDeiEnumBusCommandType.RefreshShape); + (_e = ddInstance == null ? void 0 : ddInstance.bus) == null ? void 0 : _e.executeAll(); + ddeiEditor.DDeiEditorUtil.invokeCallbackFunc("EVENT_ADD_FILE_AFTER", "LOAD_FILE", { file }, this.editor.ddInstance); + } + } catch (e) { + console.error(e); + } + } + }); + } + } /** * 加载并刷新流程图 * @param designJson 设计器json * @param dataJson 数据json */ - loadData(designJson, dataJson = null) { + loadData(designJson, dataJson2 = null) { var _a, _b, _c, _d; let resultJSON = typeof designJson == "string" ? JSON.parse(designJson) : designJson; - if (dataJson) { - dataJson = typeof dataJson == "string" ? JSON.parse(dataJson) : dataJson; + if (dataJson2) { + dataJson2 = typeof dataJson2 == "string" ? JSON.parse(dataJson2) : dataJson2; resultJSON.sheets.forEach((sheet) => { sheet.stage.layers.forEach((layer) => { - this.settingSubModelsData(layer, dataJson); + this.settingSubModelsData(layer, dataJson2); }); }); } @@ -10516,12 +13053,12 @@ for ( i in inputArray ) { tabStr += " "; } if (node) { - contentStr += tabStr + ' 0 && ((_b = node.subProcesses[0]) == null ? void 0 : _b.bpmnSubType) == 2) { @@ -10535,29 +13072,47 @@ for ( i in inputArray ) { } else if (node.bpmnSubType == 3) { childXML += tabStr + " \n"; if (node.timeType == "timeDuration") { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } else if (node.timeType == "CRON") { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } else { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } childXML += tabStr + " \n"; } else if (node.bpmnSubType == 4) { childXML += tabStr + " \n"; - childXML += tabStr + ' ${1+1>2}\n'; + childXML += tabStr + ' '; + childXML += tabStr + " \n"; + childXML += tabStr + " \n"; childXML += tabStr + " \n"; } else if (node.bpmnSubType == 5) { defineStr += ' \n'; - childXML += tabStr + ' \n'; + childXML += tabStr + ' \n'; } else if (node.bpmnSubType == 9) { if (node.errorCode) { defineStr += ' \n'; childXML += tabStr + ' \n'; } else { - childXML += tabStr + " \n"; + childXML += tabStr + " \n"; } } else if (node.bpmnSubType == 10) { childXML += tabStr + " \n"; + } else if (node.bpmnSubType == 8) { + defineStr += ' \n'; + childXML += tabStr + ' \n'; + } else if (node.bpmnSubType == 7) { + contentStr += ' parallelMultiple="true"'; + } else if (node.bpmnSubType == 6) { + childXML += tabStr + ' \n'; + if (node.loopCardinality) { + childXML += tabStr + ' '; + childXML += tabStr + " \n"; + childXML += tabStr + " \n"; + } + childXML += tabStr + " \n"; + } + if (node.notInterrupting) { + childXML += tabStr + "true\n"; } if (childXML) { contentStr += ">\n" + childXML + tabStr + "\n"; @@ -10597,7 +13152,7 @@ for ( i in inputArray ) { tabStr += " "; } if (node) { - contentStr += tabStr + '\n'; + defineStr += ' \n'; childXML += tabStr + ' \n'; } else if (node.bpmnSubType == 2) { childXML += tabStr + " \n"; if (node.timeType == "timeDuration") { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } else if (node.timeType == "CRON") { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } else { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } childXML += tabStr + " \n"; } else if (node.bpmnSubType == 3) { @@ -10633,14 +13188,28 @@ for ( i in inputArray ) { defineStr += ' \n'; childXML += tabStr + ' \n'; } else { - childXML += tabStr + " \n"; + childXML += tabStr + " \n"; } } else if (node.bpmnSubType == 6) { childXML += tabStr + " \n"; } else if (node.bpmnSubType == 5) { childXML += tabStr + " \n"; - } else if (node.bpmnSubType == 9) { + } else if (node.bpmnSubType == 8) { contentStr += ' parallelMultiple="true"'; + } else if (node.bpmnSubType == 9) { + childXML += tabStr + ' \n'; + if (node.loopCardinality) { + childXML += tabStr + ' '; + childXML += tabStr + " \n"; + childXML += tabStr + " \n"; + } + childXML += tabStr + " \n"; + } else if (node.bpmnSubType == 7) { + defineStr += ' \n'; + childXML += tabStr + ' \n'; + } + if (node.notInterrupting) { + childXML += tabStr + "true\n"; } if (childXML) { contentStr += ">\n" + childXML + tabStr + "\n"; @@ -10691,19 +13260,30 @@ for ( i in inputArray ) { } else if (!node.bpmnSubType || node.bpmnSubType == 1) { childXML += tabStr + " \n"; if (node.timeType == "timeDuration") { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } else if (node.timeType == "CRON") { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } else { - childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; + childXML += tabStr + " " + (node.timeValue ? node.timeValue : "") + "\n"; } childXML += tabStr + " \n"; } else if (node.bpmnSubType == 3) { defineStr += ' \n'; childXML += tabStr + ' \n'; - } else if (node.bpmnSubType == 6) { + } else if (node.bpmnSubType == 5) { contentStr += ' parallelMultiple="true"'; } + if (node.bpmnSubType == 4) { + childXML += tabStr + "\n"; + } else if (node.bpmnSubType == 6) { + childXML += tabStr + ' \n'; + if (node.loopCardinality) { + childXML += tabStr + ' '; + childXML += tabStr + " \n"; + childXML += tabStr + " \n"; + } + childXML += tabStr + " \n"; + } if (childXML) { contentStr += ">\n" + childXML + tabStr + "\n"; } else { @@ -10756,8 +13336,25 @@ for ( i in inputArray ) { } else if (node.bpmnSubType == 4) { childXML += tabStr + " \n"; } + if (node.notInterrupting) { + childXML += tabStr + "true\n"; + } + if (node.bpmnSubType == 7) { + childXML += tabStr + "\n"; + } else if (node.bpmnSubType == 6) { + defineStr += ' \n'; + childXML += tabStr + ' \n'; + } else if (node.bpmnSubType == 5) { + childXML += tabStr + ' \n'; + if (node.loopCardinality) { + childXML += tabStr + ' '; + childXML += tabStr + " \n"; + childXML += tabStr + " \n"; + } + childXML += tabStr + " \n"; + } if (childXML) { - contentStr += ">\n" + childXML + tabStr + "\n"; + contentStr += ">\n" + childXML + tabStr + "\n"; } else { contentStr += "/>\n"; } @@ -10802,9 +13399,9 @@ for ( i in inputArray ) { if (node.bpmnSubType == 6) { if (node.errorCode) { defineStr += ' \n'; - childXML += tabStr + ' \n'; + childXML += tabStr + ' \n'; } else { - childXML += tabStr + " \n"; + childXML += tabStr + " \n"; } } else if (node.bpmnSubType == 9) { childXML += tabStr + " \n"; @@ -10812,14 +13409,26 @@ for ( i in inputArray ) { childXML += tabStr + " \n"; } else if (node.bpmnSubType == 3) { defineStr += ' \n'; - childXML += tabStr + ' \n'; + childXML += tabStr + ' \n'; } else if (node.bpmnSubType == 7) { childXML += tabStr + " \n"; - } else if (node.bpmnSubType == 4) { - contentStr += ' parallelMultiple="true"'; } else if (node.bpmnSubType == 2) { defineStr += ' \n'; childXML += tabStr + ' \n'; + } else if (node.bpmnSubType == 5) { + defineStr += ' \n'; + childXML += tabStr + ' \n'; + } else if (node.bpmnSubType == 4) { + childXML += tabStr + ' \n'; + if (node.loopCardinality) { + childXML += tabStr + ' '; + childXML += tabStr + " \n"; + childXML += tabStr + " \n"; + } + childXML += tabStr + " \n"; + } + if (node.notInterrupting) { + childXML += tabStr + "true\n"; } if (childXML) { contentStr += ">\n" + childXML + tabStr + "\n"; @@ -10877,6 +13486,8 @@ for ( i in inputArray ) { nodeTag = "bpmn:callActivity"; } else if (node.bpmnType == "ChoreographyTask") { nodeTag = "bpmn:choreography"; + } else if (node.bpmnType == "BusinessTask") { + nodeTag = "bpmn:businessRuleTask"; } contentStr += tabStr + "<" + nodeTag + ' id="' + (node[this.jsonKeyField] ? node[this.jsonKeyField] : node.id) + '"'; if (node.name) { @@ -11240,7 +13851,7 @@ for ( i in inputArray ) { childXML = currentProcessStr + childXML; } if (childXML) { - contentStr += ">\n" + childXML + tabStr + "<" + nodeTag + "/>\n"; + contentStr += ">\n" + childXML + tabStr + "\n"; } else { contentStr += "/>\n"; } @@ -11331,7 +13942,7 @@ for ( i in inputArray ) { let childXML = ""; if (sequence.bpmnSubType == 2 && sequence.condition) { childXML += tabStr + ' \n'; - childXML += tabStr + " \n"; + childXML += tabStr + " \n"; childXML += tabStr + " \n"; } if (childXML) { @@ -11359,14 +13970,18 @@ for ( i in inputArray ) { for (let i = 0; i < tabLevel; i++) { tabStr += " "; } - if (node.multiInstance) { + if (node.isLoop && !node.multiInstance) { + returnStr += tabStr + '\n'; + } else if (node.multiInstance) { returnStr += tabStr + "' + node.loopCardinality + "\n"; + returnStr += tabStr + ' '; + returnStr += tabStr + " \n"; + returnStr += tabStr + "\n"; } returnStr += tabStr + "\n"; } @@ -11469,6 +14084,14 @@ for ( i in inputArray ) { let nodeModel = this.modelsCache[node.id]; let childXML = tabStr + ' \n'; returnStr += ">\n" + childXML + tabStr + "\n"; + if (node.bpmnType == "SubProcess") { + node.nodes.forEach((subNode) => { + let nodeXML = this.node2BPMNDIXML(subNode, 4); + if (nodeXML) { + returnStr += nodeXML; + } + }); + } } } return returnStr; @@ -11836,22 +14459,22 @@ for ( i in inputArray ) { } })); let DDeiFlow = _DDeiFlow; - exports2.DDeiFlow = DDeiFlow; - exports2.DDeiFlowAPI = DDeiFlowAPI; - exports2.DDeiFlowBpmnXmlNode = DDeiFlowBpmnXmlNode; - exports2.DDeiFlowControls = DDeiFlowControls; - exports2.DDeiFlowDialogs = DDeiFlowDialogs; - exports2.DDeiFlowElementSettingDialog = DDeiFlowElementSettingDialog; - exports2.DDeiFlowFile = DDeiFlowFile; - exports2.DDeiFlowGraph = DDeiFlowGraph; - exports2.DDeiFlowGroup = DDeiFlowGroup; - exports2.DDeiFlowHotkeys = DDeiFlowHotkeys; - exports2.DDeiFlowLifeCycles = DDeiFlowLifeCycles; - exports2.DDeiFlowNode = DDeiFlowNode; - exports2.DDeiFlowSequence = DDeiFlowSequence; - exports2.DDeiFlowSettingButtonDialog = DDeiFlowSettingButtonDialog; - exports2.DDeiFlowSubProcess = DDeiFlowSubProcess; - exports2.DDeiKeyActionCancelChooseActivity = DDeiKeyActionCancelChooseActivity; - exports2.default = DDeiFlow; - Object.defineProperties(exports2, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); + exports.DDeiFlow = DDeiFlow; + exports.DDeiFlowAPI = DDeiFlowAPI; + exports.DDeiFlowBpmnXmlNode = DDeiFlowBpmnXmlNode; + exports.DDeiFlowControls = DDeiFlowControls; + exports.DDeiFlowDialogs = DDeiFlowDialogs; + exports.DDeiFlowElementSettingDialog = DDeiFlowElementSettingDialog; + exports.DDeiFlowFile = DDeiFlowFile; + exports.DDeiFlowGraph = DDeiFlowGraph; + exports.DDeiFlowGroup = DDeiFlowGroup; + exports.DDeiFlowHotkeys = DDeiFlowHotkeys; + exports.DDeiFlowLifeCycles = DDeiFlowLifeCycles; + exports.DDeiFlowNode = DDeiFlowNode; + exports.DDeiFlowSequence = DDeiFlowSequence; + exports.DDeiFlowSettingButtonDialog = DDeiFlowSettingButtonDialog; + exports.DDeiFlowSubProcess = DDeiFlowSubProcess; + exports.DDeiKeyActionCancelChooseActivity = DDeiKeyActionCancelChooseActivity; + exports.default = DDeiFlow; + Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); }); diff --git a/package-lock.json b/package-lock.json index 4842b09..b086ae4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,19 +1,21 @@ { "name": "ddei-editor", - "version": "1.2.44-17", + "version": "1.2.44", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ddei-editor", - "version": "1.2.44-17", + "version": "1.2.44", "license": "Apache License 2.0", + "dependencies": { + "ddei-framework": "^1.2.44" + }, "devDependencies": { "@tsconfig/node18": "^18.2.0", "@types/node": "^18.17.6", "@vitejs/plugin-vue": "^4.2.3", "@vue/tsconfig": "^0.4.0", - "ddei-framework": "file:///Users/hoslay/work/ddei/ddei-framework/ddei-framework-1.2.44-17.tgz", "less": "^4.2.0", "npm-run-all": "^4.1.5", "typescript": "~5.1.6", @@ -496,11 +498,9 @@ } }, "node_modules/ddei-framework": { - "version": "1.2.44-17", - "resolved": "file:../ddei-framework/ddei-framework-1.2.44-17.tgz", - "integrity": "sha512-11rmH0JGEPvGtRolhl2cmJwyv+PJ90R92mXI/1AD+V1JKhtwi2I7fgvS9wvbZIG5E3wKx/m3iDG1ztjm07ybsg==", - "dev": true, - "license": "Apache License 2.0", + "version": "1.2.44", + "resolved": "https://registry.npmjs.org/ddei-framework/-/ddei-framework-1.2.44.tgz", + "integrity": "sha512-z3/afQc+HDtYrxbl8AypvKLT/l7sZeXgpXOA4wwXRPcr0ealXSoSzjcyFM4yk3IqxwGRKDwOJKLiuBOlE61WQg==", "engines": { "node": ">=16.0.0" } diff --git a/package.json b/package.json index 735b990..7bba3af 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ddei-editor", - "version": "1.2.44-17", + "version": "1.2.44", "private": false, "type": "module", "author": "hoslay <3697355039@qq.com>", @@ -63,6 +63,6 @@ "vite": "^4.4.6", "vite-plugin-compression": "^0.5.1", "vue-tsc": "^1.8.6", - "ddei-framework": "file:///Users/hoslay/work/ddei/ddei-framework/ddei-framework-1.2.44-17.tgz" + "ddei-framework": "^1.2.44" } }