From f1635ddb6d064221580d2a8d1cfa4379da43b2de Mon Sep 17 00:00:00 2001 From: MiyueSC <913784771@qq.com> Date: Mon, 16 Oct 2023 13:21:42 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E6=96=B0=E7=89=88Con?= =?UTF-8?q?textPad?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 59 +++++++++++++++++++ package.json | 1 + .../enhancementContextPadProvider.js | 11 ++++ .../Designer/moduleAndExtensions.js | 7 +++ packages/theme/index.scss | 1 + 5 files changed, 79 insertions(+) diff --git a/package-lock.json b/package-lock.json index 8e3eb2c..8e4b95b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,6 +20,7 @@ "bpmnlint": "^7.8.0", "camunda-bpmn-moddle": "^7.0.1", "core-js": "^3.8.1", + "diagram-js-context-pad": "^1.0.2", "diagram-js-grid-bg": "^1.0.3", "diagram-js-minimap": "^2.1.1", "element-ui": "^2.15.10", @@ -5497,6 +5498,34 @@ "tiny-svg": "^2.2.2" } }, + "node_modules/diagram-js-context-pad": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/diagram-js-context-pad/-/diagram-js-context-pad-1.0.2.tgz", + "integrity": "sha512-N2jjsiog0Bdqem9lqjrqS8L5s6asSOkyYyUstHcjqWdl70WTZLAOx1tc8doGYQL+8joQOPravfTRB8tnQ8qR2Q==", + "dependencies": { + "min-dom": "^4.1.0" + } + }, + "node_modules/diagram-js-context-pad/node_modules/component-event": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/component-event/-/component-event-0.2.1.tgz", + "integrity": "sha512-wGA++isMqiDq1jPYeyv2as/Bt/u+3iLW0rEa+8NQ82jAv3TgqMiCM+B2SaBdn2DfLilLjjq736YcezihRYhfxw==" + }, + "node_modules/diagram-js-context-pad/node_modules/min-dash": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/min-dash/-/min-dash-4.1.1.tgz", + "integrity": "sha512-r+Z6vxXLSGr+otyCPx9NKPCSixw7LdfZREPTmqfd2a/d5D6w4NCdOxRJs+HyFO6v2pQkyHroGSiINWECK+OWPg==" + }, + "node_modules/diagram-js-context-pad/node_modules/min-dom": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/min-dom/-/min-dom-4.1.0.tgz", + "integrity": "sha512-1lj1EyoSwY/UmTeT/hhPiZTsq+vK9D+8FAJ/53iK5jT1otkG9rJTixSKdjmTieEvdfES+sKbbTptzaQJhnacjA==", + "dependencies": { + "component-event": "^0.2.1", + "domify": "^1.4.1", + "min-dash": "^4.0.0" + } + }, "node_modules/diagram-js-direct-editing": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/diagram-js-direct-editing/-/diagram-js-direct-editing-1.7.0.tgz", @@ -18711,6 +18740,36 @@ "tiny-svg": "^2.2.2" } }, + "diagram-js-context-pad": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/diagram-js-context-pad/-/diagram-js-context-pad-1.0.2.tgz", + "integrity": "sha512-N2jjsiog0Bdqem9lqjrqS8L5s6asSOkyYyUstHcjqWdl70WTZLAOx1tc8doGYQL+8joQOPravfTRB8tnQ8qR2Q==", + "requires": { + "min-dom": "^4.1.0" + }, + "dependencies": { + "component-event": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/component-event/-/component-event-0.2.1.tgz", + "integrity": "sha512-wGA++isMqiDq1jPYeyv2as/Bt/u+3iLW0rEa+8NQ82jAv3TgqMiCM+B2SaBdn2DfLilLjjq736YcezihRYhfxw==" + }, + "min-dash": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/min-dash/-/min-dash-4.1.1.tgz", + "integrity": "sha512-r+Z6vxXLSGr+otyCPx9NKPCSixw7LdfZREPTmqfd2a/d5D6w4NCdOxRJs+HyFO6v2pQkyHroGSiINWECK+OWPg==" + }, + "min-dom": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/min-dom/-/min-dom-4.1.0.tgz", + "integrity": "sha512-1lj1EyoSwY/UmTeT/hhPiZTsq+vK9D+8FAJ/53iK5jT1otkG9rJTixSKdjmTieEvdfES+sKbbTptzaQJhnacjA==", + "requires": { + "component-event": "^0.2.1", + "domify": "^1.4.1", + "min-dash": "^4.0.0" + } + } + } + }, "diagram-js-direct-editing": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/diagram-js-direct-editing/-/diagram-js-direct-editing-1.7.0.tgz", diff --git a/package.json b/package.json index 774338a..a64426f 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "bpmnlint": "^7.8.0", "camunda-bpmn-moddle": "^7.0.1", "core-js": "^3.8.1", + "diagram-js-context-pad": "^1.0.2", "diagram-js-grid-bg": "^1.0.3", "diagram-js-minimap": "^2.1.1", "element-ui": "^2.15.10", diff --git a/packages/additional-modules/ContextPad/EnhancementContextPad/enhancementContextPadProvider.js b/packages/additional-modules/ContextPad/EnhancementContextPad/enhancementContextPadProvider.js index 4800b8d..51b079d 100644 --- a/packages/additional-modules/ContextPad/EnhancementContextPad/enhancementContextPadProvider.js +++ b/packages/additional-modules/ContextPad/EnhancementContextPad/enhancementContextPadProvider.js @@ -47,6 +47,7 @@ class EnhancementContextPadProvider extends ContextPadProvider { getContextPadEntries(element) { const actions = {}; const modeling = this._modeling; + const contextPad = this._contextPad; // const appendUserTask = (event, element) => { // const shape = this._elementFactory.createShape({ type: "bpmn:UserTask" }); @@ -96,6 +97,16 @@ class EnhancementContextPadProvider extends ContextPadProvider { } } }; + actions["enhancement-op-1"] = { + group: "edit", + className: "enhancement-op", + title: "切换ContextPad样式", + action: { + click: function (e) { + contextPad.toggleStyles && contextPad.toggleStyles(); + } + } + }; return actions; } diff --git a/packages/components/Designer/moduleAndExtensions.js b/packages/components/Designer/moduleAndExtensions.js index 5a9b66d..fcc6880 100644 --- a/packages/components/Designer/moduleAndExtensions.js +++ b/packages/components/Designer/moduleAndExtensions.js @@ -18,6 +18,7 @@ import { resolver, rules } from "@packages/additional-modules/Lint/bpmnlint"; // 小地图 import minimapModule from "diagram-js-minimap"; import gridBGModule from "diagram-js-grid-bg"; +import contextPadModule from "diagram-js-context-pad"; // moddle 定义文件 import activitiModdleDescriptors from "@packages/moddle-extensions/activiti.json"; @@ -115,6 +116,12 @@ export default function (settings) { modules.push(gridBGModule); } + // 扩展的上下文菜单 + modules.push(contextPadModule); + options["contextPad"] = { + beauty: true + }; + // 设置其他模块的启用 if (settings.otherModule) { // 设置 自定义规则 diff --git a/packages/theme/index.scss b/packages/theme/index.scss index 63d32d1..b05c357 100644 --- a/packages/theme/index.scss +++ b/packages/theme/index.scss @@ -8,6 +8,7 @@ @import "bpmn-js-token-simulation/assets/css/bpmn-js-token-simulation.css"; +@import "diagram-js-context-pad/assets/index.css"; @import "toolbar"; @import "designer";