bpmn-js 13.0.0 → 13.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/dist/bpmn-modeler.development.js +39 -20
  2. package/dist/bpmn-modeler.production.min.js +1 -1
  3. package/dist/bpmn-navigated-viewer.development.js +12 -7
  4. package/dist/bpmn-navigated-viewer.production.min.js +1 -1
  5. package/dist/bpmn-viewer.development.js +12 -7
  6. package/dist/bpmn-viewer.production.min.js +1 -1
  7. package/lib/BaseModeler.d.ts +12 -12
  8. package/lib/BaseViewer.d.ts +160 -160
  9. package/lib/Modeler.d.ts +76 -76
  10. package/lib/NavigatedViewer.d.ts +8 -8
  11. package/lib/Viewer.d.ts +44 -44
  12. package/lib/core/index.d.ts +10 -10
  13. package/lib/draw/BpmnRenderUtil.d.ts +77 -76
  14. package/lib/draw/BpmnRenderUtil.js +4 -3
  15. package/lib/draw/BpmnRenderer.d.ts +124 -124
  16. package/lib/draw/PathMap.d.ts +330 -330
  17. package/lib/draw/TextRenderer.d.ts +74 -74
  18. package/lib/draw/index.d.ts +10 -10
  19. package/lib/features/align-elements/AlignElementsContextPadProvider.d.ts +32 -32
  20. package/lib/features/align-elements/AlignElementsIcons.d.ts +10 -10
  21. package/lib/features/align-elements/AlignElementsMenuProvider.d.ts +32 -32
  22. package/lib/features/align-elements/BpmnAlignElements.d.ts +9 -9
  23. package/lib/features/align-elements/index.d.ts +11 -11
  24. package/lib/features/auto-place/BpmnAutoPlace.d.ts +13 -13
  25. package/lib/features/auto-place/BpmnAutoPlaceUtil.d.ts +47 -47
  26. package/lib/features/auto-place/index.d.ts +7 -7
  27. package/lib/features/auto-resize/BpmnAutoResize.d.ts +25 -25
  28. package/lib/features/auto-resize/BpmnAutoResizeProvider.d.ts +26 -26
  29. package/lib/features/auto-resize/index.d.ts +8 -8
  30. package/lib/features/context-pad/ContextPadProvider.d.ts +60 -60
  31. package/lib/features/context-pad/index.d.ts +7 -7
  32. package/lib/features/copy-paste/BpmnCopyPaste.d.ts +17 -17
  33. package/lib/features/copy-paste/ModdleCopy.d.ts +45 -45
  34. package/lib/features/copy-paste/index.d.ts +9 -9
  35. package/lib/features/di-ordering/BpmnDiOrdering.d.ts +11 -11
  36. package/lib/features/di-ordering/index.d.ts +6 -6
  37. package/lib/features/distribute-elements/BpmnDistributeElements.d.ts +10 -10
  38. package/lib/features/distribute-elements/DistributeElementsIcons.d.ts +5 -5
  39. package/lib/features/distribute-elements/DistributeElementsMenuProvider.d.ts +32 -32
  40. package/lib/features/distribute-elements/index.d.ts +9 -9
  41. package/lib/features/drilldown/DrilldownBreadcrumbs.d.ts +19 -19
  42. package/lib/features/drilldown/DrilldownCentering.d.ts +17 -17
  43. package/lib/features/drilldown/DrilldownOverlayBehavior.d.ts +18 -18
  44. package/lib/features/drilldown/SubprocessCompatibility.d.ts +21 -21
  45. package/lib/features/drilldown/index.d.ts +13 -13
  46. package/lib/features/editor-actions/BpmnEditorActions.d.ts +13 -13
  47. package/lib/features/editor-actions/index.d.ts +6 -6
  48. package/lib/features/grid-snapping/BpmnGridSnapping.d.ts +9 -9
  49. package/lib/features/grid-snapping/behavior/GridSnappingAutoPlaceBehavior.d.ts +12 -12
  50. package/lib/features/grid-snapping/behavior/GridSnappingLayoutConnectionBehavior.d.ts +27 -27
  51. package/lib/features/grid-snapping/behavior/GridSnappingParticipantBehavior.d.ts +13 -13
  52. package/lib/features/grid-snapping/behavior/index.d.ts +10 -10
  53. package/lib/features/grid-snapping/index.d.ts +11 -11
  54. package/lib/features/interaction-events/BpmnInteractionEvents.d.ts +18 -18
  55. package/lib/features/interaction-events/index.d.ts +6 -6
  56. package/lib/features/keyboard/BpmnKeyboardBindings.d.ts +15 -15
  57. package/lib/features/keyboard/index.d.ts +7 -7
  58. package/lib/features/label-editing/LabelEditingPreview.d.ts +13 -13
  59. package/lib/features/label-editing/LabelEditingProvider.d.ts +62 -62
  60. package/lib/features/label-editing/LabelUtil.d.ts +14 -14
  61. package/lib/features/label-editing/cmd/UpdateLabelHandler.d.ts +22 -22
  62. package/lib/features/label-editing/index.d.ts +9 -9
  63. package/lib/features/modeling/BpmnFactory.d.ts +73 -67
  64. package/lib/features/modeling/BpmnFactory.js +7 -3
  65. package/lib/features/modeling/BpmnLayouter.d.ts +26 -26
  66. package/lib/features/modeling/BpmnUpdater.d.ts +92 -92
  67. package/lib/features/modeling/ElementFactory.d.ts +119 -116
  68. package/lib/features/modeling/ElementFactory.js +5 -5
  69. package/lib/features/modeling/Modeling.d.ts +150 -150
  70. package/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.d.ts +20 -20
  71. package/lib/features/modeling/behavior/AppendBehavior.d.ts +6 -6
  72. package/lib/features/modeling/behavior/AssociationBehavior.d.ts +11 -11
  73. package/lib/features/modeling/behavior/AttachEventBehavior.d.ts +15 -15
  74. package/lib/features/modeling/behavior/BoundaryEventBehavior.d.ts +15 -15
  75. package/lib/features/modeling/behavior/CreateBehavior.d.ts +9 -9
  76. package/lib/features/modeling/behavior/CreateDataObjectBehavior.d.ts +15 -15
  77. package/lib/features/modeling/behavior/CreateParticipantBehavior.d.ts +19 -19
  78. package/lib/features/modeling/behavior/DataInputAssociationBehavior.d.ts +21 -21
  79. package/lib/features/modeling/behavior/DataStoreBehavior.d.ts +19 -19
  80. package/lib/features/modeling/behavior/DeleteLaneBehavior.d.ts +15 -15
  81. package/lib/features/modeling/behavior/DetachEventBehavior.d.ts +15 -15
  82. package/lib/features/modeling/behavior/DropOnFlowBehavior.d.ts +13 -13
  83. package/lib/features/modeling/behavior/EventBasedGatewayBehavior.d.ts +11 -11
  84. package/lib/features/modeling/behavior/FixHoverBehavior.d.ts +17 -17
  85. package/lib/features/modeling/behavior/GroupBehavior.d.ts +26 -26
  86. package/lib/features/modeling/behavior/ImportDockingFix.d.ts +13 -13
  87. package/lib/features/modeling/behavior/IsHorizontalFix.d.ts +10 -10
  88. package/lib/features/modeling/behavior/LabelBehavior.d.ts +56 -56
  89. package/lib/features/modeling/behavior/LayoutConnectionBehavior.d.ts +16 -16
  90. package/lib/features/modeling/behavior/MessageFlowBehavior.d.ts +15 -15
  91. package/lib/features/modeling/behavior/ModelingFeedback.d.ts +13 -13
  92. package/lib/features/modeling/behavior/RemoveElementBehavior.d.ts +13 -13
  93. package/lib/features/modeling/behavior/RemoveEmbeddedLabelBoundsBehavior.d.ts +16 -16
  94. package/lib/features/modeling/behavior/RemoveParticipantBehavior.d.ts +15 -15
  95. package/lib/features/modeling/behavior/ReplaceConnectionBehavior.d.ts +15 -15
  96. package/lib/features/modeling/behavior/ReplaceElementBehaviour.d.ts +23 -23
  97. package/lib/features/modeling/behavior/ResizeBehavior.d.ts +57 -57
  98. package/lib/features/modeling/behavior/ResizeLaneBehavior.d.ts +16 -16
  99. package/lib/features/modeling/behavior/RootElementReferenceBehavior.d.ts +25 -25
  100. package/lib/features/modeling/behavior/SpaceToolBehavior.d.ts +10 -10
  101. package/lib/features/modeling/behavior/SubProcessPlaneBehavior.d.ts +28 -28
  102. package/lib/features/modeling/behavior/SubProcessStartEventBehavior.d.ts +15 -15
  103. package/lib/features/modeling/behavior/ToggleCollapseConnectionBehaviour.d.ts +14 -14
  104. package/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.d.ts +13 -13
  105. package/lib/features/modeling/behavior/UnclaimIdBehavior.d.ts +19 -19
  106. package/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.d.ts +16 -16
  107. package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.d.ts +17 -17
  108. package/lib/features/modeling/behavior/index.d.ts +2 -2
  109. package/lib/features/modeling/behavior/util/CategoryUtil.d.ts +49 -49
  110. package/lib/features/modeling/behavior/util/ConnectionLayoutUtil.d.ts +19 -19
  111. package/lib/features/modeling/behavior/util/GeometricUtil.d.ts +1 -1
  112. package/lib/features/modeling/behavior/util/LabelLayoutUtil.d.ts +32 -32
  113. package/lib/features/modeling/behavior/util/LayoutUtil.d.ts +48 -48
  114. package/lib/features/modeling/behavior/util/LineAttachmentUtil.d.ts +37 -37
  115. package/lib/features/modeling/behavior/util/LineIntersect.d.ts +13 -13
  116. package/lib/features/modeling/behavior/util/ResizeUtil.d.ts +1 -1
  117. package/lib/features/modeling/cmd/AddLaneHandler.d.ts +22 -22
  118. package/lib/features/modeling/cmd/IdClaimHandler.d.ts +22 -22
  119. package/lib/features/modeling/cmd/ResizeLaneHandler.d.ts +39 -39
  120. package/lib/features/modeling/cmd/SetColorHandler.d.ts +18 -18
  121. package/lib/features/modeling/cmd/SplitLaneHandler.d.ts +22 -22
  122. package/lib/features/modeling/cmd/UpdateCanvasRootHandler.d.ts +20 -20
  123. package/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.d.ts +21 -21
  124. package/lib/features/modeling/cmd/UpdateModdlePropertiesHandler.d.ts +20 -20
  125. package/lib/features/modeling/cmd/UpdatePropertiesHandler.d.ts +60 -60
  126. package/lib/features/modeling/cmd/UpdateSemanticParentHandler.d.ts +18 -18
  127. package/lib/features/modeling/index.d.ts +27 -27
  128. package/lib/features/modeling/util/LaneUtil.d.ts +46 -46
  129. package/lib/features/modeling/util/ModelingUtil.d.ts +12 -12
  130. package/lib/features/ordering/BpmnOrderingProvider.d.ts +21 -21
  131. package/lib/features/ordering/index.d.ts +7 -7
  132. package/lib/features/palette/PaletteProvider.d.ts +34 -34
  133. package/lib/features/palette/index.d.ts +9 -9
  134. package/lib/features/popup-menu/ReplaceMenuProvider.d.ts +50 -50
  135. package/lib/features/popup-menu/ReplaceMenuProvider.js +1 -1
  136. package/lib/features/popup-menu/index.d.ts +11 -11
  137. package/lib/features/popup-menu/util/TypeUtil.d.ts +14 -12
  138. package/lib/features/popup-menu/util/TypeUtil.js +5 -2
  139. package/lib/features/replace/BpmnReplace.d.ts +47 -47
  140. package/lib/features/replace/ReplaceOptions.d.ts +75 -70
  141. package/lib/features/replace/ReplaceOptions.js +9 -3
  142. package/lib/features/replace/index.d.ts +9 -9
  143. package/lib/features/replace-preview/BpmnReplacePreview.d.ts +17 -17
  144. package/lib/features/replace-preview/index.d.ts +7 -7
  145. package/lib/features/rules/BpmnRules.d.ts +172 -171
  146. package/lib/features/rules/BpmnRules.js +3 -2
  147. package/lib/features/rules/index.d.ts +7 -7
  148. package/lib/features/search/BpmnSearchProvider.d.ts +29 -29
  149. package/lib/features/search/index.d.ts +7 -7
  150. package/lib/features/snapping/BpmnConnectSnapping.d.ts +17 -17
  151. package/lib/features/snapping/BpmnCreateMoveSnapping.d.ts +41 -41
  152. package/lib/features/snapping/BpmnSnappingUtil.d.ts +11 -11
  153. package/lib/features/snapping/index.d.ts +9 -9
  154. package/lib/features/space-tool/BpmnSpaceTool.d.ts +21 -21
  155. package/lib/features/space-tool/index.d.ts +6 -6
  156. package/lib/icons/dist/append.svg +1 -0
  157. package/lib/icons/dist/connect-context-pad.svg +1 -0
  158. package/lib/icons/dist/connect-palette.svg +1 -0
  159. package/lib/icons/dist/create.svg +1 -0
  160. package/lib/import/BpmnImporter.d.ts +53 -49
  161. package/lib/import/BpmnImporter.js +5 -1
  162. package/lib/import/BpmnTreeWalker.d.ts +22 -22
  163. package/lib/import/BpmnTreeWalker.js +3 -3
  164. package/lib/import/Importer.d.ts +25 -25
  165. package/lib/import/Importer.js +1 -1
  166. package/lib/import/Util.d.ts +1 -1
  167. package/lib/import/index.d.ts +6 -6
  168. package/lib/model/Types.d.ts +24 -24
  169. package/lib/model/Types.ts +1 -1
  170. package/lib/util/CompatibilityUtil.d.ts +22 -22
  171. package/lib/util/DiUtil.d.ts +53 -53
  172. package/lib/util/DiUtil.js +1 -1
  173. package/lib/util/DrilldownUtil.d.ts +39 -39
  174. package/lib/util/LabelUtil.d.ts +73 -73
  175. package/lib/util/ModelUtil.d.ts +40 -40
  176. package/lib/util/PoweredByUtil.d.ts +8 -8
  177. package/package.json +2 -2
@@ -1,330 +1,330 @@
1
- /**
2
- * Map containing SVG paths needed by BpmnRenderer
3
- */
4
- export default class PathMap {
5
- /**
6
- * Contains a map of path elements
7
- *
8
- * <h1>Path definition</h1>
9
- * A parameterized path is defined like this:
10
- * <pre>
11
- * 'GATEWAY_PARALLEL': {
12
- * d: 'm {mx},{my} {e.x0},0 0,{e.x1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} ' +
13
- '-{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z',
14
- * height: 17.5,
15
- * width: 17.5,
16
- * heightElements: [2.5, 7.5],
17
- * widthElements: [2.5, 7.5]
18
- * }
19
- * </pre>
20
- * <p>It's important to specify a correct <b>height and width</b> for the path as the scaling
21
- * is based on the ratio between the specified height and width in this object and the
22
- * height and width that is set as scale target (Note x,y coordinates will be scaled with
23
- * individual ratios).</p>
24
- * <p>The '<b>heightElements</b>' and '<b>widthElements</b>' array must contain the values that will be scaled.
25
- * The scaling is based on the computed ratios.
26
- * Coordinates on the y axis should be in the <b>heightElement</b>'s array, they will be scaled using
27
- * the computed ratio coefficient.
28
- * In the parameterized path the scaled values can be accessed through the 'e' object in {} brackets.
29
- * <ul>
30
- * <li>The values for the y axis can be accessed in the path string using {e.y0}, {e.y1}, ....</li>
31
- * <li>The values for the x axis can be accessed in the path string using {e.x0}, {e.x1}, ....</li>
32
- * </ul>
33
- * The numbers x0, x1 respectively y0, y1, ... map to the corresponding array index.
34
- * </p>
35
- */
36
- pathMap: {
37
- EVENT_MESSAGE: {
38
- d: string;
39
- height: number;
40
- width: number;
41
- heightElements: number[];
42
- widthElements: number[];
43
- };
44
- EVENT_SIGNAL: {
45
- d: string;
46
- height: number;
47
- width: number;
48
- heightElements: number[];
49
- widthElements: number[];
50
- };
51
- EVENT_ESCALATION: {
52
- d: string;
53
- height: number;
54
- width: number;
55
- heightElements: number[];
56
- widthElements: number[];
57
- };
58
- EVENT_CONDITIONAL: {
59
- d: string;
60
- height: number;
61
- width: number;
62
- heightElements: number[];
63
- widthElements: number[];
64
- };
65
- EVENT_LINK: {
66
- d: string;
67
- height: number;
68
- width: number;
69
- heightElements: number[];
70
- widthElements: number[];
71
- };
72
- EVENT_ERROR: {
73
- d: string;
74
- height: number;
75
- width: number;
76
- heightElements: number[];
77
- widthElements: number[];
78
- };
79
- EVENT_CANCEL_45: {
80
- d: string;
81
- height: number;
82
- width: number;
83
- heightElements: number[];
84
- widthElements: number[];
85
- };
86
- EVENT_COMPENSATION: {
87
- d: string;
88
- height: number;
89
- width: number;
90
- heightElements: number[];
91
- widthElements: number[];
92
- };
93
- EVENT_TIMER_WH: {
94
- d: string;
95
- height: number;
96
- width: number;
97
- heightElements: number[];
98
- widthElements: number[];
99
- };
100
- EVENT_TIMER_LINE: {
101
- d: string;
102
- height: number;
103
- width: number;
104
- heightElements: number[];
105
- widthElements: number[];
106
- };
107
- EVENT_MULTIPLE: {
108
- d: string;
109
- height: number;
110
- width: number;
111
- heightElements: number[];
112
- widthElements: number[];
113
- };
114
- EVENT_PARALLEL_MULTIPLE: {
115
- d: string;
116
- height: number;
117
- width: number;
118
- heightElements: number[];
119
- widthElements: number[];
120
- };
121
- GATEWAY_EXCLUSIVE: {
122
- d: string;
123
- height: number;
124
- width: number;
125
- heightElements: number[];
126
- widthElements: number[];
127
- };
128
- GATEWAY_PARALLEL: {
129
- d: string;
130
- height: number;
131
- width: number;
132
- heightElements: number[];
133
- widthElements: number[];
134
- };
135
- GATEWAY_EVENT_BASED: {
136
- d: string;
137
- height: number;
138
- width: number;
139
- heightElements: number[];
140
- widthElements: number[];
141
- };
142
- GATEWAY_COMPLEX: {
143
- d: string;
144
- height: number;
145
- width: number;
146
- heightElements: number[];
147
- widthElements: number[];
148
- };
149
- DATA_OBJECT_PATH: {
150
- d: string;
151
- height: number;
152
- width: number;
153
- heightElements: number[];
154
- widthElements: number[];
155
- };
156
- DATA_OBJECT_COLLECTION_PATH: {
157
- d: string;
158
- height: number;
159
- width: number;
160
- heightElements: any[];
161
- widthElements: any[];
162
- };
163
- DATA_ARROW: {
164
- d: string;
165
- height: number;
166
- width: number;
167
- heightElements: any[];
168
- widthElements: any[];
169
- };
170
- DATA_STORE: {
171
- d: string;
172
- height: number;
173
- width: number;
174
- heightElements: number[];
175
- widthElements: number[];
176
- };
177
- TEXT_ANNOTATION: {
178
- d: string;
179
- height: number;
180
- width: number;
181
- heightElements: number[];
182
- widthElements: number[];
183
- };
184
- MARKER_SUB_PROCESS: {
185
- d: string;
186
- height: number;
187
- width: number;
188
- heightElements: any[];
189
- widthElements: any[];
190
- };
191
- MARKER_PARALLEL: {
192
- d: string;
193
- height: number;
194
- width: number;
195
- heightElements: any[];
196
- widthElements: any[];
197
- };
198
- MARKER_SEQUENTIAL: {
199
- d: string;
200
- height: number;
201
- width: number;
202
- heightElements: any[];
203
- widthElements: any[];
204
- };
205
- MARKER_COMPENSATION: {
206
- d: string;
207
- height: number;
208
- width: number;
209
- heightElements: any[];
210
- widthElements: any[];
211
- };
212
- MARKER_LOOP: {
213
- d: string;
214
- height: number;
215
- width: number;
216
- heightElements: any[];
217
- widthElements: any[];
218
- };
219
- MARKER_ADHOC: {
220
- d: string;
221
- height: number;
222
- width: number;
223
- heightElements: any[];
224
- widthElements: any[];
225
- };
226
- TASK_TYPE_SEND: {
227
- d: string;
228
- height: number;
229
- width: number;
230
- heightElements: number[];
231
- widthElements: number[];
232
- };
233
- TASK_TYPE_SCRIPT: {
234
- d: string;
235
- height: number;
236
- width: number;
237
- heightElements: number[];
238
- widthElements: number[];
239
- };
240
- TASK_TYPE_USER_1: {
241
- d: string;
242
- };
243
- TASK_TYPE_USER_2: {
244
- d: string;
245
- };
246
- TASK_TYPE_USER_3: {
247
- d: string;
248
- };
249
- TASK_TYPE_MANUAL: {
250
- d: string;
251
- };
252
- TASK_TYPE_INSTANTIATING_SEND: {
253
- d: string;
254
- };
255
- TASK_TYPE_SERVICE: {
256
- d: string;
257
- };
258
- TASK_TYPE_SERVICE_FILL: {
259
- d: string;
260
- };
261
- TASK_TYPE_BUSINESS_RULE_HEADER: {
262
- d: string;
263
- };
264
- TASK_TYPE_BUSINESS_RULE_MAIN: {
265
- d: string;
266
- };
267
- MESSAGE_FLOW_MARKER: {
268
- d: string;
269
- };
270
- };
271
- /**
272
- * Return raw path for the given ID.
273
- *
274
- * @param pathId
275
- *
276
- * @return raw path
277
- */
278
- getRawPath: (pathId: string) => string;
279
- /**
280
- * Scales the path to the given height and width.
281
- * <h1>Use case</h1>
282
- * <p>Use case is to scale the content of elements (event, gateways) based
283
- * on the element bounding box's size.
284
- * </p>
285
- * <h1>Why not transform</h1>
286
- * <p>Scaling a path with transform() will also scale the stroke and IE does not support
287
- * the option 'non-scaling-stroke' to prevent this.
288
- * Also there are use cases where only some parts of a path should be
289
- * scaled.</p>
290
- *
291
- * @param pathId The ID of the path.
292
- * @param param <p>
293
- * Example param object scales the path to 60% size of the container (data.width, data.height).
294
- * <pre>
295
- * {
296
- * xScaleFactor: 0.6,
297
- * yScaleFactor:0.6,
298
- * containerWidth: data.width,
299
- * containerHeight: data.height,
300
- * position: {
301
- * mx: 0.46,
302
- * my: 0.2,
303
- * }
304
- * }
305
- * </pre>
306
- * <ul>
307
- * <li>targetpathwidth = xScaleFactor * containerWidth</li>
308
- * <li>targetpathheight = yScaleFactor * containerHeight</li>
309
- * <li>Position is used to set the starting coordinate of the path. M is computed:
310
- * <ul>
311
- * <li>position.x * containerWidth</li>
312
- * <li>position.y * containerHeight</li>
313
- * </ul>
314
- * Center of the container <pre> position: {
315
- * mx: 0.5,
316
- * my: 0.5,
317
- * }</pre>
318
- * Upper left corner of the container
319
- * <pre> position: {
320
- * mx: 0.0,
321
- * my: 0.0,
322
- * }</pre>
323
- * </li>
324
- * </ul>
325
- * </p>
326
- *
327
- * @return scaled path
328
- */
329
- getScaledPath: (pathId: string, param: any) => string;
330
- }
1
+ /**
2
+ * Map containing SVG paths needed by BpmnRenderer
3
+ */
4
+ export default class PathMap {
5
+ /**
6
+ * Contains a map of path elements
7
+ *
8
+ * <h1>Path definition</h1>
9
+ * A parameterized path is defined like this:
10
+ * <pre>
11
+ * 'GATEWAY_PARALLEL': {
12
+ * d: 'm {mx},{my} {e.x0},0 0,{e.x1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} ' +
13
+ '-{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z',
14
+ * height: 17.5,
15
+ * width: 17.5,
16
+ * heightElements: [2.5, 7.5],
17
+ * widthElements: [2.5, 7.5]
18
+ * }
19
+ * </pre>
20
+ * <p>It's important to specify a correct <b>height and width</b> for the path as the scaling
21
+ * is based on the ratio between the specified height and width in this object and the
22
+ * height and width that is set as scale target (Note x,y coordinates will be scaled with
23
+ * individual ratios).</p>
24
+ * <p>The '<b>heightElements</b>' and '<b>widthElements</b>' array must contain the values that will be scaled.
25
+ * The scaling is based on the computed ratios.
26
+ * Coordinates on the y axis should be in the <b>heightElement</b>'s array, they will be scaled using
27
+ * the computed ratio coefficient.
28
+ * In the parameterized path the scaled values can be accessed through the 'e' object in {} brackets.
29
+ * <ul>
30
+ * <li>The values for the y axis can be accessed in the path string using {e.y0}, {e.y1}, ....</li>
31
+ * <li>The values for the x axis can be accessed in the path string using {e.x0}, {e.x1}, ....</li>
32
+ * </ul>
33
+ * The numbers x0, x1 respectively y0, y1, ... map to the corresponding array index.
34
+ * </p>
35
+ */
36
+ pathMap: {
37
+ EVENT_MESSAGE: {
38
+ d: string;
39
+ height: number;
40
+ width: number;
41
+ heightElements: number[];
42
+ widthElements: number[];
43
+ };
44
+ EVENT_SIGNAL: {
45
+ d: string;
46
+ height: number;
47
+ width: number;
48
+ heightElements: number[];
49
+ widthElements: number[];
50
+ };
51
+ EVENT_ESCALATION: {
52
+ d: string;
53
+ height: number;
54
+ width: number;
55
+ heightElements: number[];
56
+ widthElements: number[];
57
+ };
58
+ EVENT_CONDITIONAL: {
59
+ d: string;
60
+ height: number;
61
+ width: number;
62
+ heightElements: number[];
63
+ widthElements: number[];
64
+ };
65
+ EVENT_LINK: {
66
+ d: string;
67
+ height: number;
68
+ width: number;
69
+ heightElements: number[];
70
+ widthElements: number[];
71
+ };
72
+ EVENT_ERROR: {
73
+ d: string;
74
+ height: number;
75
+ width: number;
76
+ heightElements: number[];
77
+ widthElements: number[];
78
+ };
79
+ EVENT_CANCEL_45: {
80
+ d: string;
81
+ height: number;
82
+ width: number;
83
+ heightElements: number[];
84
+ widthElements: number[];
85
+ };
86
+ EVENT_COMPENSATION: {
87
+ d: string;
88
+ height: number;
89
+ width: number;
90
+ heightElements: number[];
91
+ widthElements: number[];
92
+ };
93
+ EVENT_TIMER_WH: {
94
+ d: string;
95
+ height: number;
96
+ width: number;
97
+ heightElements: number[];
98
+ widthElements: number[];
99
+ };
100
+ EVENT_TIMER_LINE: {
101
+ d: string;
102
+ height: number;
103
+ width: number;
104
+ heightElements: number[];
105
+ widthElements: number[];
106
+ };
107
+ EVENT_MULTIPLE: {
108
+ d: string;
109
+ height: number;
110
+ width: number;
111
+ heightElements: number[];
112
+ widthElements: number[];
113
+ };
114
+ EVENT_PARALLEL_MULTIPLE: {
115
+ d: string;
116
+ height: number;
117
+ width: number;
118
+ heightElements: number[];
119
+ widthElements: number[];
120
+ };
121
+ GATEWAY_EXCLUSIVE: {
122
+ d: string;
123
+ height: number;
124
+ width: number;
125
+ heightElements: number[];
126
+ widthElements: number[];
127
+ };
128
+ GATEWAY_PARALLEL: {
129
+ d: string;
130
+ height: number;
131
+ width: number;
132
+ heightElements: number[];
133
+ widthElements: number[];
134
+ };
135
+ GATEWAY_EVENT_BASED: {
136
+ d: string;
137
+ height: number;
138
+ width: number;
139
+ heightElements: number[];
140
+ widthElements: number[];
141
+ };
142
+ GATEWAY_COMPLEX: {
143
+ d: string;
144
+ height: number;
145
+ width: number;
146
+ heightElements: number[];
147
+ widthElements: number[];
148
+ };
149
+ DATA_OBJECT_PATH: {
150
+ d: string;
151
+ height: number;
152
+ width: number;
153
+ heightElements: number[];
154
+ widthElements: number[];
155
+ };
156
+ DATA_OBJECT_COLLECTION_PATH: {
157
+ d: string;
158
+ height: number;
159
+ width: number;
160
+ heightElements: any[];
161
+ widthElements: any[];
162
+ };
163
+ DATA_ARROW: {
164
+ d: string;
165
+ height: number;
166
+ width: number;
167
+ heightElements: any[];
168
+ widthElements: any[];
169
+ };
170
+ DATA_STORE: {
171
+ d: string;
172
+ height: number;
173
+ width: number;
174
+ heightElements: number[];
175
+ widthElements: number[];
176
+ };
177
+ TEXT_ANNOTATION: {
178
+ d: string;
179
+ height: number;
180
+ width: number;
181
+ heightElements: number[];
182
+ widthElements: number[];
183
+ };
184
+ MARKER_SUB_PROCESS: {
185
+ d: string;
186
+ height: number;
187
+ width: number;
188
+ heightElements: any[];
189
+ widthElements: any[];
190
+ };
191
+ MARKER_PARALLEL: {
192
+ d: string;
193
+ height: number;
194
+ width: number;
195
+ heightElements: any[];
196
+ widthElements: any[];
197
+ };
198
+ MARKER_SEQUENTIAL: {
199
+ d: string;
200
+ height: number;
201
+ width: number;
202
+ heightElements: any[];
203
+ widthElements: any[];
204
+ };
205
+ MARKER_COMPENSATION: {
206
+ d: string;
207
+ height: number;
208
+ width: number;
209
+ heightElements: any[];
210
+ widthElements: any[];
211
+ };
212
+ MARKER_LOOP: {
213
+ d: string;
214
+ height: number;
215
+ width: number;
216
+ heightElements: any[];
217
+ widthElements: any[];
218
+ };
219
+ MARKER_ADHOC: {
220
+ d: string;
221
+ height: number;
222
+ width: number;
223
+ heightElements: any[];
224
+ widthElements: any[];
225
+ };
226
+ TASK_TYPE_SEND: {
227
+ d: string;
228
+ height: number;
229
+ width: number;
230
+ heightElements: number[];
231
+ widthElements: number[];
232
+ };
233
+ TASK_TYPE_SCRIPT: {
234
+ d: string;
235
+ height: number;
236
+ width: number;
237
+ heightElements: number[];
238
+ widthElements: number[];
239
+ };
240
+ TASK_TYPE_USER_1: {
241
+ d: string;
242
+ };
243
+ TASK_TYPE_USER_2: {
244
+ d: string;
245
+ };
246
+ TASK_TYPE_USER_3: {
247
+ d: string;
248
+ };
249
+ TASK_TYPE_MANUAL: {
250
+ d: string;
251
+ };
252
+ TASK_TYPE_INSTANTIATING_SEND: {
253
+ d: string;
254
+ };
255
+ TASK_TYPE_SERVICE: {
256
+ d: string;
257
+ };
258
+ TASK_TYPE_SERVICE_FILL: {
259
+ d: string;
260
+ };
261
+ TASK_TYPE_BUSINESS_RULE_HEADER: {
262
+ d: string;
263
+ };
264
+ TASK_TYPE_BUSINESS_RULE_MAIN: {
265
+ d: string;
266
+ };
267
+ MESSAGE_FLOW_MARKER: {
268
+ d: string;
269
+ };
270
+ };
271
+ /**
272
+ * Return raw path for the given ID.
273
+ *
274
+ * @param pathId
275
+ *
276
+ * @return raw path
277
+ */
278
+ getRawPath: (pathId: string) => string;
279
+ /**
280
+ * Scales the path to the given height and width.
281
+ * <h1>Use case</h1>
282
+ * <p>Use case is to scale the content of elements (event, gateways) based
283
+ * on the element bounding box's size.
284
+ * </p>
285
+ * <h1>Why not transform</h1>
286
+ * <p>Scaling a path with transform() will also scale the stroke and IE does not support
287
+ * the option 'non-scaling-stroke' to prevent this.
288
+ * Also there are use cases where only some parts of a path should be
289
+ * scaled.</p>
290
+ *
291
+ * @param pathId The ID of the path.
292
+ * @param param <p>
293
+ * Example param object scales the path to 60% size of the container (data.width, data.height).
294
+ * <pre>
295
+ * {
296
+ * xScaleFactor: 0.6,
297
+ * yScaleFactor:0.6,
298
+ * containerWidth: data.width,
299
+ * containerHeight: data.height,
300
+ * position: {
301
+ * mx: 0.46,
302
+ * my: 0.2,
303
+ * }
304
+ * }
305
+ * </pre>
306
+ * <ul>
307
+ * <li>targetpathwidth = xScaleFactor * containerWidth</li>
308
+ * <li>targetpathheight = yScaleFactor * containerHeight</li>
309
+ * <li>Position is used to set the starting coordinate of the path. M is computed:
310
+ * <ul>
311
+ * <li>position.x * containerWidth</li>
312
+ * <li>position.y * containerHeight</li>
313
+ * </ul>
314
+ * Center of the container <pre> position: {
315
+ * mx: 0.5,
316
+ * my: 0.5,
317
+ * }</pre>
318
+ * Upper left corner of the container
319
+ * <pre> position: {
320
+ * mx: 0.0,
321
+ * my: 0.0,
322
+ * }</pre>
323
+ * </li>
324
+ * </ul>
325
+ * </p>
326
+ *
327
+ * @return scaled path
328
+ */
329
+ getScaledPath: (pathId: string, param: any) => string;
330
+ }