@eclipse-glsp-examples/workflow-glsp 0.9.0-next.fd1a8bb6 → 0.10.0-next.5dad48d.159

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,14 +1,16 @@
1
1
  # workflow-glsp
2
2
 
3
- This package contains the configuration for the GLSP diagrams of the Workflow example language. It contains the base code that is independent from the actual application framework and integration variant. Separating this base configuration and the actual integration code means that it can be reused for various different integration variants of the GLSP Workflow example language e.g in a Theia application, Standalone application, VS Code plugin or integrated into the Eclipse IDE.
3
+ This package contains the configuration for the GLSP diagrams of the Workflow example language.
4
+ It contains the base code that is independent from the actual application framework and integration variant.
5
+ Separating this base configuration and the actual integration code means that it can be reused for various different integration variants of the GLSP Workflow example language e.g in a Theia application, Standalone application, VS Code plugin or integrated into the Eclipse IDE.
4
6
 
5
7
  ## Building
6
- This package is built with `yarn` and is available from npm via [@eclipse-glsp-examples/workflow-glsp](https://www.npmjs.com/package/@eclipse-glsp-examples/worfklow-glsp)
7
8
 
9
+ This package is built with `yarn` and is available from npm via [@eclipse-glsp-examples/workflow-glsp](https://www.npmjs.com/package/@eclipse-glsp-examples/worfklow-glsp)
8
10
 
9
11
  ## More information
10
12
 
11
- For more information, please visit the [Eclipse GLSP Umbrella repository](https://github.com/eclipse-glsp/glsp) and the [Eclipse GLSP Website](https://www.eclipse.org/glsp/). If you have questions, contact us on our [spectrum chat](https://spectrum.chat/glsp/) and have a look at our [communication and support options](https://www.eclipse.org/glsp/contact/).
13
+ For more information, please visit the [Eclipse GLSP Umbrella repository](https://github.com/eclipse-glsp/glsp) and the [Eclipse GLSP Website](https://www.eclipse.org/glsp/).
14
+ If you have questions, contact us on our [spectrum chat](https://spectrum.chat/glsp/) and have a look at our [communication and support options](https://www.eclipse.org/glsp/contact/).
12
15
 
13
16
  ![alt](https://www.eclipse.org/glsp/images/diagramanimated.gif)
14
-
package/css/diagram.css CHANGED
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2022 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -20,13 +20,9 @@
20
20
  height: 100%;
21
21
  }
22
22
 
23
- .sprotty-popup {
24
- z-index: 1;
25
- }
26
-
27
23
  .sprotty-text {
28
24
  font-size: 12pt;
29
- text-anchor: middle
25
+ text-anchor: middle;
30
26
  }
31
27
 
32
28
  .sprotty-node {
@@ -34,16 +30,6 @@
34
30
  font-weight: bold;
35
31
  }
36
32
 
37
- .sprotty-node.mouseover:not(.selected) {
38
- stroke-width: 3;
39
- }
40
-
41
- .sprotty-comp {
42
- line-height: 3px;
43
- font-weight: normal;
44
- text-align: left;
45
- }
46
-
47
33
  .sprotty-label {
48
34
  stroke-width: 0;
49
35
  fill: #000;
@@ -53,151 +39,68 @@
53
39
  }
54
40
 
55
41
  .sprotty-label.heading {
56
- font-weight: bold;
57
- }
58
-
59
- .sprotty-icon {
60
- fill: black;
61
- stroke-width: 0;
62
- }
63
-
64
- .sprotty-label.icon {
65
- fill: #fff;
42
+ font-weight: normal;
43
+ font-size: 0.7em;
44
+ fill: #f0f3f8;
66
45
  }
67
46
 
68
- .sprotty-button {
69
- fill: #152;
47
+ .icon path {
70
48
  stroke-width: 0;
49
+ fill: #f0f3f8;
71
50
  }
72
51
 
73
- .sprotty-edge {
74
- fill: none;
75
- stroke-width: 2px;
76
- }
77
-
78
- .sprotty-edge.selected {
79
- stroke-width: 4px;
52
+ .icon .icon-background {
53
+ fill: transparent;
80
54
  }
81
55
 
82
- .sprotty-edge.mouseover:not(.selected) {
83
- stroke-width: 3px;
56
+ .task.automated > .sprotty-node {
57
+ fill: #5b9fa8;
84
58
  }
85
59
 
86
- .sprotty-edge>.sprotty-routing-handle {
87
- r: 7px;
88
- fill: #884;
89
- stroke: none;
90
- z-index: 1000;
60
+ .task.manual > .sprotty-node {
61
+ fill: #db8651;
91
62
  }
92
63
 
93
- .sprotty-edge>.sprotty-routing-handle[data-kind='line'] {
94
- opacity: 0.35;
64
+ .category > .sprotty-node {
65
+ fill: #5c87bd;
95
66
  }
96
67
 
97
- .sprotty-edge>.sprotty-routing-handle.selected {
98
- fill: #66a;
68
+ .sprotty-edge.weighted.low:not(.selected),
69
+ .sprotty-edge.weighted.low:not(.selected) .arrow {
70
+ stroke: rgb(128, 90, 233);
99
71
  }
100
72
 
101
- .sprotty-edge>.sprotty-routing-handle.mouseover {
102
- stroke: #112;
103
- stroke-width: 1;
104
- }
105
-
106
- .sprotty-missing {
107
- stroke-width: 1;
108
- stroke: #f00;
109
- fill: #f00;
110
- font-size: 14pt;
111
- text-anchor: middle;
73
+ .sprotty-edge.weighted.low:not(.selected) .arrow {
74
+ fill: rgb(128, 90, 233);
112
75
  }
113
76
 
114
- .sprotty-node:not(.selected) {
115
- stroke-width: 1px;
77
+ .sprotty-edge.weighted:not(.selected),
78
+ .sprotty-edge.weighted:not(.selected) .arrow,
79
+ .sprotty-edge.weighted.medium:not(.selected),
80
+ .sprotty-edge.weighted.medium:not(.selected) .arrow {
81
+ stroke: rgb(98, 60, 193);
116
82
  }
117
83
 
118
- .sprotty-node.marquee {
119
- fill: grey;
120
- opacity: 0.2;
84
+ .sprotty-edge.weighted:not(.selected) .arrow,
85
+ .sprotty-edge.weighted.medium:not(.selected) .arrow {
86
+ fill: rgb(98, 60, 193);
121
87
  }
122
88
 
123
- .task.automated>.sprotty-node {
124
- fill: gray;
89
+ .sprotty-edge.weighted.high:not(.selected),
90
+ .sprotty-edge.weighted.high:not(.selected) .arrow {
91
+ stroke: rgb(68, 30, 163);
125
92
  }
126
93
 
127
- .task.manual>.sprotty-node {
128
- fill: lightblue;
94
+ .sprotty-edge.weighted.high:not(.selected) .arrow {
95
+ fill: rgb(68, 30, 163);
129
96
  }
130
97
 
131
- text {
132
- stroke-width: 0;
133
- stroke: #000;
134
- fill: #000;
135
- font-family: sans-serif;
136
- font-size: 8pt;
137
- text-anchor: middle;
138
- }
139
-
140
- .sprotty-edge.weighted.low, .sprotty-edge.weighted.low .arrow {
141
- stroke: lightblue
142
- }
143
-
144
- .sprotty-edge.weighted.low .arrow {
145
- fill: lightblue;
146
- }
147
-
148
- .sprotty-edge.weighted, .sprotty-edge.weighted .arrow, .sprotty-edge.weighted.medium, .sprotty-edge.weighted.medium .arrow {
149
- stroke: rgb(53, 53, 226);
150
- }
151
-
152
- .sprotty-edge.weighted .arrow, .sprotty-edge.weighted.medium .arrow {
153
- fill: rgb(53, 53, 226);
154
- }
155
-
156
- .sprotty-edge.weighted.high, .sprotty-edge.weighted.high .arrow {
157
- stroke: darkblue
158
- }
159
-
160
- .sprotty-edge.weighted.high .arrow {
161
- fill: darkblue;
162
- }
163
-
164
- polygon.sprotty-node {
165
- fill: white;
166
- stroke-width: 1pt;
167
- }
168
-
169
- .sprotty-node.selected {
170
- stroke-width: 4;
171
- }
172
-
173
- svg {
174
- border-style: solid;
175
- border-width: 1px;
176
- border-color: #bbb;
98
+ .sprotty-comp {
99
+ stroke: transparent;
100
+ fill: transparent;
177
101
  }
178
102
 
179
103
  .label-edit input {
180
- margin-top: -1px;
181
- margin-left: -5px;
182
- }
183
-
184
- g .movement-not-allowed>.sprotty-node {
185
- stroke: var(--glsp-error-foreground)!important;
186
- }
187
-
188
- .sprotty-resize-handle.movement-not-allowed {
189
- stroke: var(--glsp-error-foreground)!important;
190
- fill: var(--glsp-error-foreground)!important;
191
- }
192
-
193
- .error>.sprotty-node {
194
- stroke: var(--glsp-error-foreground)!important;
195
- }
196
-
197
- .warning>.sprotty-node {
198
- stroke: var(--glsp-warning-foreground)!important;
199
- }
200
-
201
- .info>.sprotty-node {
202
- stroke: var(--glsp-info-foreground)!important;
104
+ margin-top: -3px;
105
+ margin-left: -3px;
203
106
  }
@@ -1,21 +1,6 @@
1
- /********************************************************************************
2
- * Copyright (c) 2019-2021 EclipseSource and others.
3
- *
4
- * This program and the accompanying materials are made available under the
5
- * terms of the Eclipse Public License v. 2.0 which is available at
6
- * http://www.eclipse.org/legal/epl-2.0.
7
- *
8
- * This Source Code may also be made available under the following Secondary
9
- * Licenses when the conditions for such availability set forth in the Eclipse
10
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- * with the GNU Classpath Exception which is available at
12
- * https://www.gnu.org/software/classpath/license.html.
13
- *
14
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
- import '../css/diagram.css';
17
1
  import 'balloon-css/balloon.min.css';
18
- import 'sprotty/css/edit-label.css';
19
2
  import { Container } from 'inversify';
3
+ import 'sprotty/css/edit-label.css';
4
+ import '../css/diagram.css';
20
5
  export default function createContainer(widgetId: string): Container;
21
6
  //# sourceMappingURL=di.config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,oBAAoB,CAAC;AAC5B,OAAO,6BAA6B,CAAC;AACrC,OAAO,4BAA4B,CAAC;AAyDpC,OAAO,EAAE,SAAS,EAAmB,MAAM,WAAW,CAAC;AA+BvD,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CA8CnE"}
1
+ {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":"AAsCA,OAAO,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,EAAmB,MAAM,WAAW,CAAC;AACvD,OAAO,4BAA4B,CAAC;AACpC,OAAO,oBAAoB,CAAC;AAgC5B,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAOnE"}
package/lib/di.config.js CHANGED
@@ -15,18 +15,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  *
16
16
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
17
17
  ********************************************************************************/
18
- require("../css/diagram.css");
19
- require("balloon-css/balloon.min.css");
20
- require("sprotty/css/edit-label.css");
21
18
  const client_1 = require("@eclipse-glsp/client");
19
+ const protocol_1 = require("@eclipse-glsp/protocol");
20
+ require("balloon-css/balloon.min.css");
22
21
  const inversify_1 = require("inversify");
22
+ require("sprotty/css/edit-label.css");
23
+ require("../css/diagram.css");
23
24
  const di_config_1 = require("./direct-task-editing/di.config");
24
25
  const model_1 = require("./model");
25
26
  const workflow_views_1 = require("./workflow-views");
26
27
  const workflowDiagramModule = new inversify_1.ContainerModule((bind, unbind, isBound, rebind) => {
27
28
  rebind(client_1.TYPES.ILogger).to(client_1.ConsoleLogger).inSingletonScope();
28
29
  rebind(client_1.TYPES.LogLevel).toConstantValue(client_1.LogLevel.warn);
29
- bind(client_1.GLSP_TYPES.IMovementRestrictor).to(client_1.NoOverlapMovmentRestrictor).inSingletonScope();
30
30
  bind(client_1.TYPES.ISnapper).to(client_1.GridSnapper);
31
31
  bind(client_1.TYPES.ICommandPaletteActionProvider).to(client_1.RevealNamedElementActionProvider);
32
32
  bind(client_1.TYPES.IContextMenuItemProvider).to(client_1.DeleteElementContextMenuItemProvider);
@@ -38,17 +38,18 @@ const workflowDiagramModule = new inversify_1.ContainerModule((bind, unbind, isB
38
38
  client_1.configureModelElement(context, 'comp:comp', client_1.SCompartment, client_1.SCompartmentView);
39
39
  client_1.configureModelElement(context, 'comp:header', client_1.SCompartment, client_1.SCompartmentView);
40
40
  client_1.configureModelElement(context, 'label:icon', client_1.SLabel, client_1.SLabelView);
41
- client_1.configureModelElement(context, client_1.DefaultTypes.EDGE, client_1.SEdge, workflow_views_1.WorkflowEdgeView);
41
+ client_1.configureModelElement(context, protocol_1.DefaultTypes.EDGE, client_1.SEdge, workflow_views_1.WorkflowEdgeView);
42
42
  client_1.configureModelElement(context, 'edge:weighted', model_1.WeightedEdge, workflow_views_1.WorkflowEdgeView);
43
43
  client_1.configureModelElement(context, 'icon', model_1.Icon, workflow_views_1.IconView);
44
44
  client_1.configureModelElement(context, 'activityNode:merge', model_1.ActivityNode, client_1.DiamondNodeView);
45
45
  client_1.configureModelElement(context, 'activityNode:decision', model_1.ActivityNode, client_1.DiamondNodeView);
46
46
  client_1.configureModelElement(context, 'activityNode:fork', model_1.ActivityNode, client_1.RectangularNodeView);
47
47
  client_1.configureModelElement(context, 'activityNode:join', model_1.ActivityNode, client_1.RectangularNodeView);
48
+ client_1.configureModelElement(context, 'category', model_1.CategoryNode, client_1.RoundedCornerNodeView);
49
+ client_1.configureModelElement(context, 'struct', client_1.SCompartment, client_1.StructureCompartmentView);
48
50
  });
49
51
  function createContainer(widgetId) {
50
- const container = new inversify_1.Container();
51
- container.load(client_1.defaultModule, client_1.defaultGLSPModule, client_1.glspMouseToolModule, client_1.validationModule, client_1.glspSelectModule, client_1.boundsModule, client_1.glspViewportModule, client_1.toolsModule, client_1.glspHoverModule, client_1.fadeModule, client_1.exportModule, client_1.expandModule, client_1.openModule, client_1.buttonModule, client_1.modelSourceModule, client_1.labelEditUiModule, client_1.glspEditLabelModule, workflowDiagramModule, client_1.toolFeedbackModule, client_1.modelHintsModule, client_1.glspContextMenuModule, client_1.glspServerCopyPasteModule, client_1.modelSourceWatcherModule, client_1.glspCommandPaletteModule, client_1.paletteModule, client_1.routingModule, client_1.glspDecorationModule, client_1.edgeLayoutModule, client_1.zorderModule, client_1.edgeIntersectionModule, client_1.layoutCommandsModule, di_config_1.directTaskEditor, client_1.navigationModule, client_1.markerNavigatorModule);
52
+ const container = client_1.createClientContainer(workflowDiagramModule, di_config_1.directTaskEditor);
52
53
  client_1.overrideViewerOptions(container, {
53
54
  baseDiv: widgetId,
54
55
  hiddenDiv: widgetId + '_hidden'
@@ -1 +1 @@
1
- {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../src/di.config.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAqB8B;AAC9B,qDAAsD;AACtD,uCAAqC;AACrC,yCAAuD;AACvD,sCAAoC;AACpC,8BAA4B;AAC5B,+DAAmE;AACnE,mCAAmF;AACnF,qDAA8D;AAE9D,MAAM,qBAAqB,GAAG,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IAChF,MAAM,CAAC,cAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,sBAAa,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC3D,MAAM,CAAC,cAAK,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,iBAAQ,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,CAAC,cAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,oBAAW,CAAC,CAAC;IACrC,IAAI,CAAC,cAAK,CAAC,6BAA6B,CAAC,CAAC,EAAE,CAAC,yCAAgC,CAAC,CAAC;IAC/E,IAAI,CAAC,cAAK,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,6CAAoC,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAElD,sCAA6B,CAAC,OAAO,CAAC,CAAC;IACvC,8BAAqB,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAQ,EAAE,8BAAqB,CAAC,CAAC;IAClF,8BAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,gBAAQ,EAAE,8BAAqB,CAAC,CAAC;IAC/E,8BAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,eAAM,EAAE,mBAAU,EAAE,EAAE,MAAM,EAAE,CAAC,yBAAgB,CAAC,EAAE,CAAC,CAAC;IACpG,8BAAqB,CAAC,OAAO,EAAE,WAAW,EAAE,qBAAY,EAAE,yBAAgB,CAAC,CAAC;IAC5E,8BAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,qBAAY,EAAE,yBAAgB,CAAC,CAAC;IAC9E,8BAAqB,CAAC,OAAO,EAAE,YAAY,EAAE,eAAM,EAAE,mBAAU,CAAC,CAAC;IACjE,8BAAqB,CAAC,OAAO,EAAE,uBAAY,CAAC,IAAI,EAAE,cAAK,EAAE,iCAAgB,CAAC,CAAC;IAC3E,8BAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,oBAAY,EAAE,iCAAgB,CAAC,CAAC;IAChF,8BAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAI,EAAE,yBAAQ,CAAC,CAAC;IACvD,8BAAqB,CAAC,OAAO,EAAE,oBAAoB,EAAE,oBAAY,EAAE,wBAAe,CAAC,CAAC;IACpF,8BAAqB,CAAC,OAAO,EAAE,uBAAuB,EAAE,oBAAY,EAAE,wBAAe,CAAC,CAAC;IACvF,8BAAqB,CAAC,OAAO,EAAE,mBAAmB,EAAE,oBAAY,EAAE,4BAAmB,CAAC,CAAC;IACvF,8BAAqB,CAAC,OAAO,EAAE,mBAAmB,EAAE,oBAAY,EAAE,4BAAmB,CAAC,CAAC;IAEvF,8BAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,oBAAY,EAAE,8BAAqB,CAAC,CAAC;IAChF,8BAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,qBAAY,EAAE,iCAAwB,CAAC,CAAC;AACrF,CAAC,CAAC,CAAC;AAEH,SAAwB,eAAe,CAAC,QAAgB;IACpD,MAAM,SAAS,GAAG,8BAAqB,CAAC,qBAAqB,EAAE,4BAAgB,CAAC,CAAC;IACjF,8BAAqB,CAAC,SAAS,EAAE;QAC7B,OAAO,EAAE,QAAQ;QACjB,SAAS,EAAE,QAAQ,GAAG,SAAS;KAClC,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACrB,CAAC;AAPD,kCAOC"}
package/lib/model.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2020-2021 EclipseSource and others.
2
+ * Copyright (c) 2020-2022 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -16,11 +16,11 @@
16
16
  import { DiamondNode, EditableLabel, LayoutContainer, Nameable, RectangularNode, SChildElement, SEdge, SModelElement, SShapeElement, WithEditableLabel } from '@eclipse-glsp/client';
17
17
  export declare class TaskNode extends RectangularNode implements Nameable, WithEditableLabel {
18
18
  static readonly DEFAULT_FEATURES: symbol[];
19
- name: string;
20
19
  duration?: number;
21
20
  taskType?: string;
22
21
  reference?: string;
23
22
  get editableLabel(): (SChildElement & EditableLabel) | undefined;
23
+ get name(): string;
24
24
  }
25
25
  export declare function isTaskNode(element: SModelElement): element is TaskNode;
26
26
  export declare class WeightedEdge extends SEdge {
@@ -56,4 +56,9 @@ export declare class Icon extends SShapeElement implements LayoutContainer {
56
56
  height: number;
57
57
  };
58
58
  }
59
+ export declare class CategoryNode extends RectangularNode implements Nameable, WithEditableLabel {
60
+ static readonly DEFAULT_FEATURES: symbol[];
61
+ name: string;
62
+ get editableLabel(): (SChildElement & EditableLabel) | undefined;
63
+ }
59
64
  //# sourceMappingURL=model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAIH,WAAW,EACX,aAAa,EAKb,eAAe,EAGf,QAAQ,EAGR,eAAe,EACf,aAAa,EACb,KAAK,EAEL,aAAa,EACb,aAAa,EACb,iBAAiB,EAEpB,MAAM,sBAAsB,CAAC;AAE9B,qBAAa,QAAS,SAAQ,eAAgB,YAAW,QAAQ,EAAE,iBAAiB;IAChF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAY9B;IACF,IAAI,SAAM;IACV,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,IAAI,aAAa,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,GAAG,SAAS,CAS/D;CACJ;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,QAAQ,CAEtE;AAED,qBAAa,YAAa,SAAQ,KAAK;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,YAAa,SAAQ,WAAW;IACzC,QAAQ,EAAE,MAAM,CAA+B;IAC/C,IAAI;;;MAGF;IACF,WAAW,SAAK;CACnB;AAED,yBAAiB,YAAY,CAAC;IAC1B,UAAiB,IAAI,CAAC;QACX,MAAM,OAAO,eAAe,CAAC;QAC7B,MAAM,KAAK,cAAc,CAAC;QAC1B,MAAM,QAAQ,iBAAiB,CAAC;QAChC,MAAM,KAAK,cAAc,CAAC;QAC1B,MAAM,IAAI,aAAa,CAAC;QACxB,MAAM,IAAI,aAAa,CAAC;QACxB,MAAM,SAAS,cAAc,CAAC;KACxC;CACJ;AAED,qBAAa,IAAK,SAAQ,aAAc,YAAW,eAAe;IAC9D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAAgF;IAEhH,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC7D,IAAI;;;MAGF;CACL"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAIH,WAAW,EACX,aAAa,EAKb,eAAe,EAGf,QAAQ,EAGR,eAAe,EACf,aAAa,EACb,KAAK,EAEL,aAAa,EACb,aAAa,EACb,iBAAiB,EAEpB,MAAM,sBAAsB,CAAC;AAE9B,qBAAa,QAAS,SAAQ,eAAgB,YAAW,QAAQ,EAAE,iBAAiB;IAChF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAY9B;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,IAAI,aAAa,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,GAAG,SAAS,CAM/D;IAED,IAAI,IAAI,IAAI,MAAM,CAGjB;CACJ;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,QAAQ,CAEtE;AAED,qBAAa,YAAa,SAAQ,KAAK;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,YAAa,SAAQ,WAAW;IACzC,QAAQ,EAAE,MAAM,CAA+B;IAC/C,IAAI;;;MAGF;IACF,WAAW,SAAK;CACnB;AAED,yBAAiB,YAAY,CAAC;IAC1B,UAAiB,IAAI,CAAC;QACX,MAAM,OAAO,eAAe,CAAC;QAC7B,MAAM,KAAK,cAAc,CAAC;QAC1B,MAAM,QAAQ,iBAAiB,CAAC;QAChC,MAAM,KAAK,cAAc,CAAC;QAC1B,MAAM,IAAI,aAAa,CAAC;QACxB,MAAM,IAAI,aAAa,CAAC;QACxB,MAAM,SAAS,cAAc,CAAC;KACxC;CACJ;AAED,qBAAa,IAAK,SAAQ,aAAc,YAAW,eAAe;IAC9D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAAgF;IAEhH,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC7D,IAAI;;;MAGF;CACL;AAED,qBAAa,YAAa,SAAQ,eAAgB,YAAW,QAAQ,EAAE,iBAAiB;IACpF,MAAM,CAAC,QAAQ,CAAC,gBAAgB,WAW9B;IAEF,IAAI,SAAM;IAEV,IAAI,aAAa,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,GAAG,SAAS,CAM/D;CACJ"}
package/lib/model.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Icon = exports.ActivityNode = exports.WeightedEdge = exports.isTaskNode = exports.TaskNode = void 0;
3
+ exports.CategoryNode = exports.Icon = exports.ActivityNode = exports.WeightedEdge = exports.isTaskNode = exports.TaskNode = void 0;
4
4
  /********************************************************************************
5
- * Copyright (c) 2020-2021 EclipseSource and others.
5
+ * Copyright (c) 2020-2022 EclipseSource and others.
6
6
  *
7
7
  * This program and the accompanying materials are made available under the
8
8
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -18,20 +18,18 @@ exports.Icon = exports.ActivityNode = exports.WeightedEdge = exports.isTaskNode
18
18
  ********************************************************************************/
19
19
  const client_1 = require("@eclipse-glsp/client");
20
20
  class TaskNode extends client_1.RectangularNode {
21
- constructor() {
22
- super(...arguments);
23
- this.name = '';
24
- }
25
21
  get editableLabel() {
26
- const headerComp = this.children.find(element => element.type === 'comp:header');
27
- if (headerComp) {
28
- const label = headerComp.children.find(element => element.type === 'label:heading');
29
- if (label && client_1.isEditableLabel(label)) {
30
- return label;
31
- }
22
+ const label = this.children.find(element => element.type === 'label:heading');
23
+ if (label && client_1.isEditableLabel(label)) {
24
+ return label;
32
25
  }
33
26
  return undefined;
34
27
  }
28
+ get name() {
29
+ var _a;
30
+ const labelText = (_a = this.editableLabel) === null || _a === void 0 ? void 0 : _a.text;
31
+ return labelText ? labelText : '<unknown>';
32
+ }
35
33
  }
36
34
  exports.TaskNode = TaskNode;
37
35
  TaskNode.DEFAULT_FEATURES = [
@@ -89,4 +87,30 @@ class Icon extends client_1.SShapeElement {
89
87
  }
90
88
  exports.Icon = Icon;
91
89
  Icon.DEFAULT_FEATURES = [client_1.boundsFeature, client_1.layoutContainerFeature, client_1.layoutableChildFeature, client_1.fadeFeature];
90
+ class CategoryNode extends client_1.RectangularNode {
91
+ constructor() {
92
+ super(...arguments);
93
+ this.name = '';
94
+ }
95
+ get editableLabel() {
96
+ const label = this.children.find(element => element.type === 'label:heading');
97
+ if (label && client_1.isEditableLabel(label)) {
98
+ return label;
99
+ }
100
+ return undefined;
101
+ }
102
+ }
103
+ exports.CategoryNode = CategoryNode;
104
+ CategoryNode.DEFAULT_FEATURES = [
105
+ client_1.deletableFeature,
106
+ client_1.selectFeature,
107
+ client_1.boundsFeature,
108
+ client_1.moveFeature,
109
+ client_1.layoutContainerFeature,
110
+ client_1.fadeFeature,
111
+ client_1.hoverFeedbackFeature,
112
+ client_1.popupFeature,
113
+ client_1.nameFeature,
114
+ client_1.withEditLabelFeature
115
+ ];
92
116
  //# sourceMappingURL=model.js.map
package/lib/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAwB8B;AAE9B,MAAa,QAAS,SAAQ,wBAAe;IAA7C;;QAcI,SAAI,GAAG,EAAE,CAAC;IAed,CAAC;IAVG,IAAI,aAAa;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QACjF,IAAI,UAAU,EAAE;YACZ,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;YACpF,IAAI,KAAK,IAAI,wBAAe,CAAC,KAAK,CAAC,EAAE;gBACjC,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;;AA5BL,4BA6BC;AA5BmB,yBAAgB,GAAG;IAC/B,2BAAkB;IAClB,yBAAgB;IAChB,sBAAa;IACb,sBAAa;IACb,oBAAW;IACX,+BAAsB;IACtB,oBAAW;IACX,6BAAoB;IACpB,qBAAY;IACZ,oBAAW;IACX,6BAAoB;CACvB,CAAC;AAkBN,SAAgB,UAAU,CAAC,OAAsB;IAC7C,OAAO,OAAO,YAAY,QAAQ,IAAI,KAAK,CAAC;AAChD,CAAC;AAFD,gCAEC;AAED,MAAa,YAAa,SAAQ,cAAK;CAEtC;AAFD,oCAEC;AAED,MAAa,YAAa,SAAQ,oBAAW;IAA7C;;QACI,aAAQ,GAAW,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;QAC/C,SAAI,GAAG;YACH,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;SACb,CAAC;QACF,gBAAW,GAAG,CAAC,CAAC;IACpB,CAAC;CAAA;AAPD,oCAOC;AAED,WAAiB,YAAY;IACzB,IAAiB,IAAI,CAQpB;IARD,WAAiB,IAAI;QACJ,YAAO,GAAG,YAAY,CAAC;QACvB,UAAK,GAAG,WAAW,CAAC;QACpB,aAAQ,GAAG,cAAc,CAAC;QAC1B,UAAK,GAAG,WAAW,CAAC;QACpB,SAAI,GAAG,UAAU,CAAC;QAClB,SAAI,GAAG,UAAU,CAAC;QAClB,cAAS,GAAG,WAAW,CAAC;IACzC,CAAC,EARgB,IAAI,GAAJ,iBAAI,KAAJ,iBAAI,QAQpB;AACL,CAAC,EAVgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAU5B;AAED,MAAa,IAAK,SAAQ,sBAAa;IAAvC;;QAKI,SAAI,GAAG;YACH,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;SACb,CAAC;IACN,CAAC;;AATD,oBASC;AARmB,qBAAgB,GAAG,CAAC,sBAAa,EAAE,+BAAsB,EAAE,+BAAsB,EAAE,oBAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAwB8B;AAE9B,MAAa,QAAS,SAAQ,wBAAe;IAkBzC,IAAI,aAAa;QACb,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;QAC9E,IAAI,KAAK,IAAI,wBAAe,CAAC,KAAK,CAAC,EAAE;YACjC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;;QACJ,MAAM,SAAS,SAAG,IAAI,CAAC,aAAa,0CAAE,IAAI,CAAC;QAC3C,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IAC/C,CAAC;;AA7BL,4BA8BC;AA7BmB,yBAAgB,GAAG;IAC/B,2BAAkB;IAClB,yBAAgB;IAChB,sBAAa;IACb,sBAAa;IACb,oBAAW;IACX,+BAAsB;IACtB,oBAAW;IACX,6BAAoB;IACpB,qBAAY;IACZ,oBAAW;IACX,6BAAoB;CACvB,CAAC;AAmBN,SAAgB,UAAU,CAAC,OAAsB;IAC7C,OAAO,OAAO,YAAY,QAAQ,IAAI,KAAK,CAAC;AAChD,CAAC;AAFD,gCAEC;AAED,MAAa,YAAa,SAAQ,cAAK;CAEtC;AAFD,oCAEC;AAED,MAAa,YAAa,SAAQ,oBAAW;IAA7C;;QACI,aAAQ,GAAW,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;QAC/C,SAAI,GAAG;YACH,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;SACb,CAAC;QACF,gBAAW,GAAG,CAAC,CAAC;IACpB,CAAC;CAAA;AAPD,oCAOC;AAED,WAAiB,YAAY;IACzB,IAAiB,IAAI,CAQpB;IARD,WAAiB,IAAI;QACJ,YAAO,GAAG,YAAY,CAAC;QACvB,UAAK,GAAG,WAAW,CAAC;QACpB,aAAQ,GAAG,cAAc,CAAC;QAC1B,UAAK,GAAG,WAAW,CAAC;QACpB,SAAI,GAAG,UAAU,CAAC;QAClB,SAAI,GAAG,UAAU,CAAC;QAClB,cAAS,GAAG,WAAW,CAAC;IACzC,CAAC,EARgB,IAAI,GAAJ,iBAAI,KAAJ,iBAAI,QAQpB;AACL,CAAC,EAVgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAU5B;AAED,MAAa,IAAK,SAAQ,sBAAa;IAAvC;;QAKI,SAAI,GAAG;YACH,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,EAAE;SACb,CAAC;IACN,CAAC;;AATD,oBASC;AARmB,qBAAgB,GAAG,CAAC,sBAAa,EAAE,+BAAsB,EAAE,+BAAsB,EAAE,oBAAW,CAAC,CAAC;AAUpH,MAAa,YAAa,SAAQ,wBAAe;IAAjD;;QAcI,SAAI,GAAG,EAAE,CAAC;IASd,CAAC;IAPG,IAAI,aAAa;QACb,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;QAC9E,IAAI,KAAK,IAAI,wBAAe,CAAC,KAAK,CAAC,EAAE;YACjC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;;AAtBL,oCAuBC;AAtBmB,6BAAgB,GAAG;IAC/B,yBAAgB;IAChB,sBAAa;IACb,sBAAa;IACb,oBAAW;IACX,+BAAsB;IACtB,oBAAW;IACX,6BAAoB;IACpB,qBAAY;IACZ,oBAAW;IACX,6BAAoB;CACvB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2021 EclipseSource and others.
2
+ * Copyright (c) 2019-2022 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,14 +13,14 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { IView, Point, PolylineEdgeViewWithGapsOnIntersections, RenderingContext, SEdge } from '@eclipse-glsp/client';
16
+ import { Point, PolylineEdgeViewWithGapsOnIntersections, RenderingContext, SEdge } from '@eclipse-glsp/client';
17
17
  import { VNode } from 'snabbdom';
18
+ import { ShapeView } from 'sprotty';
18
19
  import { Icon } from './model';
19
20
  export declare class WorkflowEdgeView extends PolylineEdgeViewWithGapsOnIntersections {
20
21
  protected renderAdditionals(edge: SEdge, segments: Point[], context: RenderingContext): VNode[];
21
22
  }
22
- export declare class IconView implements IView {
23
- render(element: Icon, context: RenderingContext): VNode;
24
- getRadius(): number;
23
+ export declare class IconView extends ShapeView {
24
+ render(element: Icon, context: RenderingContext): VNode | undefined;
25
25
  }
26
26
  //# sourceMappingURL=workflow-views.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-views.d.ts","sourceRoot":"","sources":["../src/workflow-views.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAEH,KAAK,EACL,KAAK,EACL,uCAAuC,EACvC,gBAAgB,EAChB,KAAK,EAER,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAK/B,qBACa,gBAAiB,SAAQ,uCAAuC;IACzE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,KAAK,EAAE;CAiBlG;AAED,qBACa,QAAS,YAAW,KAAK;IAClC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,GAAG,KAAK;IAUvD,SAAS,IAAI,MAAM;CAGtB"}
1
+ {"version":3,"file":"workflow-views.d.ts","sourceRoot":"","sources":["../src/workflow-views.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAGH,KAAK,EACL,uCAAuC,EACvC,gBAAgB,EAChB,KAAK,EAGR,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAuB,SAAS,EAAO,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAc,MAAM,SAAS,CAAC;AAK3C,qBACa,gBAAiB,SAAQ,uCAAuC;IACzE,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,KAAK,EAAE;CAiBlG;AAED,qBACa,QAAS,SAAQ,SAAS;IACnC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,GAAG,KAAK,GAAG,SAAS;CAsCtE"}
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.IconView = exports.WorkflowEdgeView = void 0;
10
10
  /********************************************************************************
11
- * Copyright (c) 2019-2021 EclipseSource and others.
11
+ * Copyright (c) 2019-2022 EclipseSource and others.
12
12
  *
13
13
  * This program and the accompanying materials are made available under the
14
14
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -25,6 +25,7 @@ exports.IconView = exports.WorkflowEdgeView = void 0;
25
25
  const client_1 = require("@eclipse-glsp/client");
26
26
  const inversify_1 = require("inversify");
27
27
  const sprotty_1 = require("sprotty");
28
+ const model_1 = require("./model");
28
29
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
29
30
  const JSX = { createElement: sprotty_1.svg };
30
31
  let WorkflowEdgeView = class WorkflowEdgeView extends client_1.PolylineEdgeViewWithGapsOnIntersections {
@@ -32,7 +33,7 @@ let WorkflowEdgeView = class WorkflowEdgeView extends client_1.PolylineEdgeViewW
32
33
  const additionals = super.renderAdditionals(edge, segments, context);
33
34
  const p1 = segments[segments.length - 2];
34
35
  const p2 = segments[segments.length - 1];
35
- const arrow = (JSX.createElement("path", { "class-sprotty-edge": true, "class-arrow": true, d: 'M 1.5,0 L 10,-4 L 10,4 Z', transform: `rotate(${client_1.toDegrees(client_1.angleOfPoint({ x: p1.x - p2.x, y: p1.y - p2.y }))} ${p2.x} ${p2.y}) translate(${p2.x} ${p2.y})` }));
36
+ const arrow = (JSX.createElement("path", { "class-sprotty-edge": true, "class-arrow": true, d: 'M 1,0 L 10,-4 L 10,4 Z', transform: `rotate(${client_1.toDegrees(client_1.angleOfPoint({ x: p1.x - p2.x, y: p1.y - p2.y }))} ${p2.x} ${p2.y}) translate(${p2.x} ${p2.y})` }));
36
37
  additionals.push(arrow);
37
38
  return additionals;
38
39
  }
@@ -41,15 +42,37 @@ WorkflowEdgeView = __decorate([
41
42
  inversify_1.injectable()
42
43
  ], WorkflowEdgeView);
43
44
  exports.WorkflowEdgeView = WorkflowEdgeView;
44
- let IconView = class IconView {
45
+ let IconView = class IconView extends sprotty_1.ShapeView {
45
46
  render(element, context) {
46
- const radius = this.getRadius();
47
- return (JSX.createElement("g", null,
48
- JSX.createElement("circle", { "class-sprotty-icon": true, r: radius, cx: radius, cy: radius }),
47
+ const taskNode = sprotty_1.findParentByFeature(element, model_1.isTaskNode);
48
+ if (!taskNode || !this.isVisible(element, context)) {
49
+ return undefined;
50
+ }
51
+ let icon;
52
+ if (taskNode.type === 'task:manual') {
53
+ // From codicons: https://github.com/microsoft/vscode-codicons/blob/main/src/icons/account.svg?short_path=8135b2d
54
+ icon =
55
+ // eslint-disable-next-line max-len
56
+ 'M16 7.992C16 3.58 12.416 0 8 0S0 3.58 0 7.992c0 2.43 1.104 4.62 2.832 6.09.016.016.032.016.032.032.144.112.288.224.448.336.08.048.144.111.224.175A7.98 7.98 0 0 0 8.016 16a7.98 7.98 0 0 0 4.48-1.375c.08-.048.144-.111.224-.16.144-.111.304-.223.448-.335.016-.016.032-.016.032-.032 1.696-1.487 2.8-3.676 2.8-6.106zm-8 7.001c-1.504 0-2.88-.48-4.016-1.279.016-.128.048-.255.08-.383a4.17 4.17 0 0 1 .416-.991c.176-.304.384-.576.64-.816.24-.24.528-.463.816-.639.304-.176.624-.304.976-.4A4.15 4.15 0 0 1 8 10.342a4.185 4.185 0 0 1 2.928 1.166c.368.368.656.8.864 1.295.112.288.192.592.24.911A7.03 7.03 0 0 1 8 14.993zm-2.448-7.4a2.49 2.49 0 0 1-.208-1.024c0-.351.064-.703.208-1.023.144-.32.336-.607.576-.847.24-.24.528-.431.848-.575.32-.144.672-.208 1.024-.208.368 0 .704.064 1.024.208.32.144.608.336.848.575.24.24.432.528.576.847.144.32.208.672.208 1.023 0 .368-.064.704-.208 1.023a2.84 2.84 0 0 1-.576.848 2.84 2.84 0 0 1-.848.575 2.715 2.715 0 0 1-2.064 0 2.84 2.84 0 0 1-.848-.575 2.526 2.526 0 0 1-.56-.848zm7.424 5.306c0-.032-.016-.048-.016-.08a5.22 5.22 0 0 0-.688-1.406 4.883 4.883 0 0 0-1.088-1.135 5.207 5.207 0 0 0-1.04-.608 2.82 2.82 0 0 0 .464-.383 4.2 4.2 0 0 0 .624-.784 3.624 3.624 0 0 0 .528-1.934 3.71 3.71 0 0 0-.288-1.47 3.799 3.799 0 0 0-.816-1.199 3.845 3.845 0 0 0-1.2-.8 3.72 3.72 0 0 0-1.472-.287 3.72 3.72 0 0 0-1.472.288 3.631 3.631 0 0 0-1.2.815 3.84 3.84 0 0 0-.8 1.199 3.71 3.71 0 0 0-.288 1.47c0 .352.048.688.144 1.007.096.336.224.64.4.927.16.288.384.544.624.784.144.144.304.271.48.383a5.12 5.12 0 0 0-1.04.624c-.416.32-.784.703-1.088 1.119a4.999 4.999 0 0 0-.688 1.406c-.016.032-.016.064-.016.08C1.776 11.636.992 9.91.992 7.992.992 4.14 4.144.991 8 .991s7.008 3.149 7.008 7.001a6.96 6.96 0 0 1-2.032 4.907z';
57
+ }
58
+ else {
59
+ // From codicons: https://github.com/microsoft/vscode-codicons/blob/main/src/icons/gear.svg?short_path=8ee3ec4
60
+ icon =
61
+ // eslint-disable-next-line max-len
62
+ 'M9.1 4.4L8.6 2H7.4l-.5 2.4-.7.3-2-1.3-.9.8 1.3 2-.2.7-2.4.5v1.2l2.4.5.3.8-1.3 2 .8.8 2-1.3.8.3.4 2.3h1.2l.5-2.4.8-.3 2 1.3.8-.8-1.3-2 .3-.8 2.3-.4V7.4l-2.4-.5-.3-.8 1.3-2-.8-.8-2 1.3-.7-.2zM9.4 1l.5 2.4L12 2.1l2 2-1.4 2.1 2.4.4v2.8l-2.4.5L14 12l-2 2-2.1-1.4-.5 2.4H6.6l-.5-2.4L4 13.9l-2-2 1.4-2.1L1 9.4V6.6l2.4-.5L2.1 4l2-2 2.1 1.4.4-2.4h2.8zm.6 7c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zM8 9c.6 0 1-.4 1-1s-.4-1-1-1-1 .4-1 1 .4 1 1 1z';
63
+ }
64
+ const vnode = (JSX.createElement("g", null,
65
+ JSX.createElement("path", { transform: 'scale(1.15),translate(0.75,0.75)',
66
+ // From codicons: https://github.com/microsoft/vscode-codicons/blob/main/src/icons/terminal.svg?short_path=2ffc08e
67
+ // eslint-disable-next-line max-len
68
+ d: icon }),
69
+ JSX.createElement("rect", { "class-icon-background": true, x: 0, y: 0, width: 25, height: 20 }),
49
70
  context.renderChildren(element)));
50
- }
51
- getRadius() {
52
- return 16;
71
+ const subType = client_1.getSubType(element);
72
+ if (subType) {
73
+ client_1.setAttr(vnode, 'class', subType);
74
+ }
75
+ return vnode;
53
76
  }
54
77
  };
55
78
  IconView = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-views.js","sourceRoot":"","sources":["../src/workflow-views.tsx"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAQ8B;AAC9B,yCAAuC;AAEvC,qCAA8B;AAI9B,6DAA6D;AAC7D,MAAM,GAAG,GAAG,EAAE,aAAa,EAAE,aAAG,EAAE,CAAC;AAGnC,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,gDAAuC;IAC/D,iBAAiB,CAAC,IAAW,EAAE,QAAiB,EAAE,OAAyB;QACjF,MAAM,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,CACV,kDACwB,IAAI,iBACX,IAAI,EACjB,CAAC,EAAC,0BAA0B,EAC5B,SAAS,EAAE,UAAU,kBAAS,CAAC,qBAAY,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,IAC/G,EAAE,CAAC,CACP,GAAG,GACL,CACL,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ,CAAA;AAlBY,gBAAgB;IAD5B,sBAAU,EAAE;GACA,gBAAgB,CAkB5B;AAlBY,4CAAgB;AAqB7B,IAAa,QAAQ,GAArB,MAAa,QAAQ;IACjB,MAAM,CAAC,OAAa,EAAE,OAAyB;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,OAAO,CACH;YACI,oDAA4B,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAW;YAC7E,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAChC,CACP,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC;IACd,CAAC;CACJ,CAAA;AAdY,QAAQ;IADpB,sBAAU,EAAE;GACA,QAAQ,CAcpB;AAdY,4BAAQ"}
1
+ {"version":3,"file":"workflow-views.js","sourceRoot":"","sources":["../src/workflow-views.tsx"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAS8B;AAC9B,yCAAuC;AAEvC,qCAA8D;AAC9D,mCAA2C;AAE3C,6DAA6D;AAC7D,MAAM,GAAG,GAAG,EAAE,aAAa,EAAE,aAAG,EAAE,CAAC;AAGnC,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,gDAAuC;IAC/D,iBAAiB,CAAC,IAAW,EAAE,QAAiB,EAAE,OAAyB;QACjF,MAAM,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,CACV,kDACwB,IAAI,iBACX,IAAI,EACjB,CAAC,EAAC,wBAAwB,EAC1B,SAAS,EAAE,UAAU,kBAAS,CAAC,qBAAY,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,IAC/G,EAAE,CAAC,CACP,GAAG,GACL,CACL,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ,CAAA;AAlBY,gBAAgB;IAD5B,sBAAU,EAAE;GACA,gBAAgB,CAkB5B;AAlBY,4CAAgB;AAqB7B,IAAa,QAAQ,GAArB,MAAa,QAAS,SAAQ,mBAAS;IACnC,MAAM,CAAC,OAAa,EAAE,OAAyB;QAC3C,MAAM,QAAQ,GAAG,6BAAmB,CAAC,OAAO,EAAE,kBAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;YAChD,OAAO,SAAS,CAAC;SACpB;QAED,IAAI,IAAI,CAAC;QACT,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE;YACjC,iHAAiH;YACjH,IAAI;gBACA,mCAAmC;gBACnC,ksDAAksD,CAAC;SAC1sD;aAAM;YACH,8GAA8G;YAC9G,IAAI;gBACA,mCAAmC;gBACnC,wbAAwb,CAAC;SAChc;QAED,MAAM,KAAK,GAAG,CACV;YACI,4BACI,SAAS,EAAE,kCAAkC;gBAC7C,kHAAkH;gBAClH,mCAAmC;gBACnC,CAAC,EAAE,IAAI,GACT;YACF,2DAA4B,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAI;YAChE,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAChC,CACP,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAU,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,OAAO,EAAE;YACT,gBAAO,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SACpC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAvCY,QAAQ;IADpB,sBAAU,EAAE;GACA,QAAQ,CAuCpB;AAvCY,4BAAQ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eclipse-glsp-examples/workflow-glsp",
3
- "version": "0.9.0-next.fd1a8bb6",
3
+ "version": "0.10.0-next.5dad48d.159+5dad48d",
4
4
  "description": "GLSP diagrams for the Workflow DSL",
5
5
  "license": "(EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0)",
6
6
  "keywords": [
@@ -26,7 +26,7 @@
26
26
  }
27
27
  ],
28
28
  "dependencies": {
29
- "@eclipse-glsp/client": "0.9.0-next.fd1a8bb6",
29
+ "@eclipse-glsp/client": "0.10.0-next.5dad48d.159+5dad48d",
30
30
  "balloon-css": "^0.5.0"
31
31
  },
32
32
  "devDependencies": {
@@ -52,5 +52,6 @@
52
52
  "types": "lib/index",
53
53
  "publishConfig": {
54
54
  "access": "public"
55
- }
55
+ },
56
+ "gitHead": "5dad48da0281e489fd0d1dcffc097b3582e379b7"
56
57
  }