@operato/scene-bpmn 1.1.9 → 1.1.12
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/CHANGELOG.md +19 -0
- package/dist/bpmn-data-object.d.ts +2 -1
- package/dist/bpmn-data-object.js +13 -0
- package/dist/bpmn-data-object.js.map +1 -1
- package/dist/bpmn-data-store.d.ts +2 -0
- package/dist/bpmn-data-store.js +13 -0
- package/dist/bpmn-data-store.js.map +1 -1
- package/dist/bpmn-expanded-subprocess.js +64 -2
- package/dist/bpmn-expanded-subprocess.js.map +1 -1
- package/dist/bpmn-gateway.d.ts +2 -1
- package/dist/bpmn-gateway.js +13 -0
- package/dist/bpmn-gateway.js.map +1 -1
- package/dist/bpmn-message.d.ts +2 -0
- package/dist/bpmn-message.js +13 -0
- package/dist/bpmn-message.js.map +1 -1
- package/dist/bpmn-subprocess.js +64 -2
- package/dist/bpmn-subprocess.js.map +1 -1
- package/dist/bpmn-task.js +123 -0
- package/dist/bpmn-task.js.map +1 -1
- package/dist/templates/bpmn-comment.d.ts +4 -0
- package/dist/templates/bpmn-comment.js +5 -1
- package/dist/templates/bpmn-comment.js.map +1 -1
- package/dist/templates/bpmn-data-object.d.ts +1 -0
- package/dist/templates/bpmn-data-object.js +2 -1
- package/dist/templates/bpmn-data-object.js.map +1 -1
- package/dist/templates/bpmn-data-store.d.ts +1 -0
- package/dist/templates/bpmn-data-store.js +2 -1
- package/dist/templates/bpmn-data-store.js.map +1 -1
- package/dist/templates/bpmn-event.d.ts +1 -0
- package/dist/templates/bpmn-event.js +2 -1
- package/dist/templates/bpmn-event.js.map +1 -1
- package/dist/templates/bpmn-gateway.d.ts +1 -0
- package/dist/templates/bpmn-gateway.js +2 -1
- package/dist/templates/bpmn-gateway.js.map +1 -1
- package/dist/templates/bpmn-message.d.ts +1 -0
- package/dist/templates/bpmn-message.js +2 -1
- package/dist/templates/bpmn-message.js.map +1 -1
- package/logs/.08636eb59927f12972f6774f5947c8507b3564c2-audit.json +5 -0
- package/logs/.5e5d741d8b7784a2fbad65eedc0fd46946aaf6f2-audit.json +5 -0
- package/logs/application-2022-11-06-14.log +18 -0
- package/logs/connections-2022-11-06-14.log +70 -0
- package/package.json +2 -2
- package/src/bpmn-data-object.ts +17 -1
- package/src/bpmn-data-store.ts +17 -1
- package/src/bpmn-expanded-subprocess.ts +64 -2
- package/src/bpmn-gateway.ts +17 -1
- package/src/bpmn-message.ts +17 -1
- package/src/bpmn-subprocess.ts +64 -2
- package/src/bpmn-task.ts +123 -0
- package/src/templates/bpmn-comment.ts +5 -1
- package/src/templates/bpmn-data-object.ts +2 -1
- package/src/templates/bpmn-data-store.ts +2 -1
- package/src/templates/bpmn-event.ts +2 -1
- package/src/templates/bpmn-gateway.ts +2 -1
- package/src/templates/bpmn-message.ts +2 -1
- package/translations/en.json +2 -1
- package/translations/ko.json +2 -1
- package/translations/ms.json +2 -1
- package/translations/zh.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
### [1.1.12](https://github.com/things-scene/operato-scene/compare/v1.1.11...v1.1.12) (2022-11-09)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### :bug: Bug Fix
|
|
10
|
+
|
|
11
|
+
* bpmn ([b80f20a](https://github.com/things-scene/operato-scene/commit/b80f20adc7656c544b9a559e1eb85ceca5b4f00f))
|
|
12
|
+
* events properties for activities ([93cdf0b](https://github.com/things-scene/operato-scene/commit/93cdf0b570fe829a50d89672cf8c974ad6ff74ac))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### [1.1.10](https://github.com/things-scene/operato-scene/compare/v1.1.9...v1.1.10) (2022-11-06)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### :bug: Bug Fix
|
|
20
|
+
|
|
21
|
+
* bpmn label positions ([805c888](https://github.com/things-scene/operato-scene/commit/805c888a9f51b1094e2af7edd27c8a22e933b1e6))
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
6
25
|
### [1.1.9](https://github.com/things-scene/operato-scene/compare/v1.1.8...v1.1.9) (2022-11-06)
|
|
7
26
|
|
|
8
27
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Properties } from '@hatiolab/things-scene';
|
|
1
|
+
import { Properties, BOUNDS } from '@hatiolab/things-scene';
|
|
2
2
|
import BPMNControlBase from './base/bpmn-control-base';
|
|
3
3
|
export default class BPMNDataObject extends BPMNControlBase {
|
|
4
4
|
private imageElement?;
|
|
@@ -25,6 +25,7 @@ export default class BPMNDataObject extends BPMNControlBase {
|
|
|
25
25
|
})[];
|
|
26
26
|
help: string;
|
|
27
27
|
};
|
|
28
|
+
get textBounds(): BOUNDS;
|
|
28
29
|
render(ctx: CanvasRenderingContext2D): void;
|
|
29
30
|
onchange(after: Properties, before: Properties): void;
|
|
30
31
|
getImageElement(): HTMLImageElement | undefined;
|
package/dist/bpmn-data-object.js
CHANGED
|
@@ -38,6 +38,19 @@ export default class BPMNDataObject extends BPMNControlBase {
|
|
|
38
38
|
static get nature() {
|
|
39
39
|
return NATURE;
|
|
40
40
|
}
|
|
41
|
+
get textBounds() {
|
|
42
|
+
var { left, top, width, height } = this.bounds;
|
|
43
|
+
var { paddingTop, paddingLeft, paddingRight } = this.state;
|
|
44
|
+
paddingTop || (paddingTop = 0);
|
|
45
|
+
paddingLeft || (paddingLeft = 0);
|
|
46
|
+
paddingRight || (paddingRight = 0);
|
|
47
|
+
return {
|
|
48
|
+
left: left + paddingLeft,
|
|
49
|
+
top: top + paddingTop + height + 10,
|
|
50
|
+
width: Math.max(width - paddingLeft - paddingRight, 0),
|
|
51
|
+
height: 0
|
|
52
|
+
};
|
|
53
|
+
}
|
|
41
54
|
render(ctx) {
|
|
42
55
|
const { left, top, width, height } = this.bounds;
|
|
43
56
|
const { collection = false } = this.state;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-data-object.js","sourceRoot":"","sources":["../src/bpmn-data-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"bpmn-data-object.js","sourceRoot":"","sources":["../src/bpmn-data-object.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Properties, BOUNDS } from '@hatiolab/things-scene'\n\nimport BPMNControlBase from './base/bpmn-control-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [\n {\n type: 'select',\n name: 'inout',\n label: 'inout',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'input',\n value: 'input'\n },\n {\n display: 'output',\n value: 'output'\n }\n ]\n }\n },\n {\n type: 'checkbox',\n name: 'collection',\n label: 'collection'\n }\n ],\n help: '/bpmn/data-object/data-object'\n}\n\nexport default class BPMNDataObject extends BPMNControlBase {\n private imageElement?: HTMLImageElement\n private collectionImageElement?: HTMLImageElement\n\n static get nature() {\n return NATURE\n }\n\n get textBounds(): BOUNDS {\n var { left, top, width, height } = this.bounds\n var { paddingTop, paddingLeft, paddingRight } = this.state\n\n paddingTop ||= 0\n paddingLeft ||= 0\n paddingRight ||= 0\n\n return {\n left: left + paddingLeft,\n top: top + paddingTop + height + 10,\n width: Math.max(width - paddingLeft - paddingRight, 0),\n height: 0\n }\n }\n\n render(ctx: CanvasRenderingContext2D) {\n const { left, top, width, height } = this.bounds\n const { collection = false } = this.state\n\n const corner = (Math.min(width, height) * 2) / 5\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n ctx.moveTo(width - corner, 0)\n ctx.lineTo(width - corner, corner)\n ctx.lineTo(width, corner)\n ctx.lineTo(width - corner, 0)\n this.drawStroke(ctx)\n\n ctx.beginPath()\n ctx.moveTo(0, 0)\n ctx.lineTo(width - corner, 0)\n ctx.lineTo(width - corner, corner)\n ctx.lineTo(width, corner)\n ctx.lineTo(width, height)\n ctx.lineTo(0, height)\n ctx.lineTo(0, 0)\n\n this.drawFill(ctx)\n this.drawStroke(ctx)\n\n ctx.beginPath()\n\n const image = this.getImageElement()\n if (image) {\n this.drawImage(ctx, image, 0, 0, corner, corner)\n }\n\n if (collection) {\n this.drawImage(ctx, this.getCollectionImageElement()!, (width - 16) / 2, height - 16, 16, 16)\n }\n\n ctx.translate(-left, -top)\n }\n\n onchange(after: Properties, before: Properties) {\n if ('inout' in after || 'collection' in after || 'strokeStyle' in after) {\n delete this.imageElement\n delete this.collectionImageElement\n }\n }\n\n getImageElement(): HTMLImageElement | undefined {\n if (!this.imageElement) {\n const { inout, strokeStyle } = this.state\n\n if (!inout) {\n return\n }\n\n const src: string = IMAGES[inout]\n if (!src) {\n return\n }\n\n this.imageElement = new Image()\n this.imageElement.src =\n 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(src.replace(/{{strokeColor}}/g, strokeStyle))\n }\n\n return this.imageElement\n }\n\n getCollectionImageElement(): HTMLImageElement | undefined {\n if (!this.collectionImageElement) {\n const { strokeStyle } = this.state\n\n this.collectionImageElement = new Image()\n this.collectionImageElement.src =\n 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(COLLECTION.replace(/{{strokeColor}}/g, strokeStyle))\n }\n\n return this.collectionImageElement\n }\n}\n\nComponent.register('bpmn-data-object', BPMNDataObject)\n\nconst IMAGES: { [type: string]: string } = {\n input: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:none;stroke:{{strokeColor}};stroke-miterlimit:10;}\n </style>\n <path class=\"st0\" d=\"M19,13.8V8l9.5,9.5L19,27v-5.8H6.5v-7.5H19z\"/>\n </svg>\n `,\n output: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M19,13.8V8l9.5,9.5L19,27v-5.8H6.5v-7.5H19z\"/>\n </svg>\n `\n}\n\nconst COLLECTION: string = `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <g>\n <rect x=\"5.5\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n <rect x=\"15.9\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n <rect x=\"26.2\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n </g>\n </svg>\n `\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { BOUNDS } from '@hatiolab/things-scene';
|
|
1
2
|
import BPMNControlBase from './base/bpmn-control-base';
|
|
2
3
|
export default class BPMNDataStore extends BPMNControlBase {
|
|
3
4
|
static get nature(): {
|
|
@@ -7,5 +8,6 @@ export default class BPMNDataStore extends BPMNControlBase {
|
|
|
7
8
|
properties: never[];
|
|
8
9
|
help: string;
|
|
9
10
|
};
|
|
11
|
+
get textBounds(): BOUNDS;
|
|
10
12
|
render(ctx: CanvasRenderingContext2D): void;
|
|
11
13
|
}
|
package/dist/bpmn-data-store.js
CHANGED
|
@@ -11,6 +11,19 @@ export default class BPMNDataStore extends BPMNControlBase {
|
|
|
11
11
|
static get nature() {
|
|
12
12
|
return NATURE;
|
|
13
13
|
}
|
|
14
|
+
get textBounds() {
|
|
15
|
+
var { left, top, width, height } = this.bounds;
|
|
16
|
+
var { paddingTop, paddingLeft, paddingRight } = this.state;
|
|
17
|
+
paddingTop || (paddingTop = 0);
|
|
18
|
+
paddingLeft || (paddingLeft = 0);
|
|
19
|
+
paddingRight || (paddingRight = 0);
|
|
20
|
+
return {
|
|
21
|
+
left: left + paddingLeft,
|
|
22
|
+
top: top + paddingTop + height + 10,
|
|
23
|
+
width: Math.max(width - paddingLeft - paddingRight, 0),
|
|
24
|
+
height: 0
|
|
25
|
+
};
|
|
26
|
+
}
|
|
14
27
|
render(ctx) {
|
|
15
28
|
const { left, top, width, height } = this.bounds;
|
|
16
29
|
const ry = Math.abs(height / 6);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-data-store.js","sourceRoot":"","sources":["../src/bpmn-data-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"bpmn-data-store.js","sourceRoot":"","sources":["../src/bpmn-data-store.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, BOUNDS } from '@hatiolab/things-scene'\n\nimport BPMNControlBase from './base/bpmn-control-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [],\n help: '/bpmn/data-store/data-store'\n}\n\nexport default class BPMNDataStore extends BPMNControlBase {\n static get nature() {\n return NATURE\n }\n\n get textBounds(): BOUNDS {\n var { left, top, width, height } = this.bounds\n var { paddingTop, paddingLeft, paddingRight } = this.state\n\n paddingTop ||= 0\n paddingLeft ||= 0\n paddingRight ||= 0\n\n return {\n left: left + paddingLeft,\n top: top + paddingTop + height + 10,\n width: Math.max(width - paddingLeft - paddingRight, 0),\n height: 0\n }\n }\n\n render(ctx: CanvasRenderingContext2D) {\n const { left, top, width, height } = this.bounds\n const ry = Math.abs(height / 6)\n const startAngle = Math.PI\n const endAngle = 0\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n ctx.ellipse(width / 2, ry, width / 2, ry, 0, startAngle, startAngle - Math.PI * 2, true)\n\n ctx.moveTo(0, ry + ry / 2)\n ctx.ellipse(width / 2, ry + ry / 2, width / 2, ry, 0, startAngle, endAngle, true)\n\n ctx.moveTo(0, ry + ry)\n ctx.ellipse(width / 2, ry + ry, width / 2, ry, 0, startAngle, endAngle, true)\n\n ctx.moveTo(0, ry)\n ctx.lineTo(0, height - ry)\n ctx.ellipse(width / 2, height - ry, width / 2, ry, 0, startAngle, endAngle, true)\n ctx.lineTo(width, ry)\n\n this.drawFill(ctx)\n this.drawStroke(ctx)\n\n ctx.translate(-left, -top)\n }\n}\n\nComponent.register('bpmn-data-store', BPMNDataStore)\n"]}
|
|
@@ -27,8 +27,70 @@ const NATURE = {
|
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
29
|
type: 'select',
|
|
30
|
-
label: 'event',
|
|
31
|
-
name: '
|
|
30
|
+
label: 'trigger-event',
|
|
31
|
+
name: 'triggerEvent',
|
|
32
|
+
property: {
|
|
33
|
+
options: [
|
|
34
|
+
{
|
|
35
|
+
display: '',
|
|
36
|
+
value: ''
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
display: 'message',
|
|
40
|
+
value: 'message'
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
display: 'timer',
|
|
44
|
+
value: 'timer'
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
display: 'error',
|
|
48
|
+
value: 'error'
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
display: 'escalation',
|
|
52
|
+
value: 'escalation'
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
display: 'cancel',
|
|
56
|
+
value: 'cancel'
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
display: 'compensation',
|
|
60
|
+
value: 'compensation'
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
display: 'conditional',
|
|
64
|
+
value: 'conditional'
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
display: 'link',
|
|
68
|
+
value: 'link'
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
display: 'signal',
|
|
72
|
+
value: 'signal'
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
display: 'terminate',
|
|
76
|
+
value: 'terminate'
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
display: 'multiple',
|
|
80
|
+
value: 'multiple'
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
display: 'parallel multiple',
|
|
84
|
+
value: 'parallel-multiple'
|
|
85
|
+
}
|
|
86
|
+
]
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
// TODO this property might be an array
|
|
91
|
+
type: 'select',
|
|
92
|
+
label: 'boundary-event',
|
|
93
|
+
name: 'boundaryEvent',
|
|
32
94
|
property: {
|
|
33
95
|
options: [
|
|
34
96
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-expanded-subprocess.js","sourceRoot":"","sources":["../src/bpmn-expanded-subprocess.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGlD,OAAO,iBAAmD,MAAM,4BAA4B,CAAA;AAE5F,MAAM,MAAM,GAAG;IACb,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE;QACV;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,MAAM;SACd;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,aAAa;YACpB,IAAI,EAAE,aAAa;SACpB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"bpmn-expanded-subprocess.js","sourceRoot":"","sources":["../src/bpmn-expanded-subprocess.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component } from '@hatiolab/things-scene'\nimport { over } from 'lodash'\n\nimport BPMNContainerBase, { DIRECTION, INOUT, NODE, FLOW } from './base/bpmn-container-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [\n {\n type: 'string',\n name: 'name',\n label: 'name'\n },\n {\n type: 'checkbox',\n label: 'call-activity',\n name: 'callActivity'\n },\n {\n type: 'checkbox',\n label: 'transaction',\n name: 'transaction'\n },\n {\n type: 'checkbox',\n label: 'interrupting',\n name: 'interrupting'\n },\n {\n type: 'select',\n label: 'trigger-event',\n name: 'triggerEvent',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'message',\n value: 'message'\n },\n {\n display: 'timer',\n value: 'timer'\n },\n {\n display: 'error',\n value: 'error'\n },\n {\n display: 'escalation',\n value: 'escalation'\n },\n {\n display: 'cancel',\n value: 'cancel'\n },\n {\n display: 'compensation',\n value: 'compensation'\n },\n {\n display: 'conditional',\n value: 'conditional'\n },\n {\n display: 'link',\n value: 'link'\n },\n {\n display: 'signal',\n value: 'signal'\n },\n {\n display: 'terminate',\n value: 'terminate'\n },\n {\n display: 'multiple',\n value: 'multiple'\n },\n {\n display: 'parallel multiple',\n value: 'parallel-multiple'\n }\n ]\n }\n },\n {\n // TODO this property might be an array\n type: 'select',\n label: 'boundary-event',\n name: 'boundaryEvent',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'message',\n value: 'message'\n },\n {\n display: 'timer',\n value: 'timer'\n },\n {\n display: 'error',\n value: 'error'\n },\n {\n display: 'escalation',\n value: 'escalation'\n },\n {\n display: 'cancel',\n value: 'cancel'\n },\n {\n display: 'compensation',\n value: 'compensation'\n },\n {\n display: 'conditional',\n value: 'conditional'\n },\n {\n display: 'link',\n value: 'link'\n },\n {\n display: 'signal',\n value: 'signal'\n },\n {\n display: 'terminate',\n value: 'terminate'\n },\n {\n display: 'multiple',\n value: 'multiple'\n },\n {\n display: 'parallel multiple',\n value: 'parallel-multiple'\n }\n ]\n }\n }\n ],\n help: '/bpmn/expanded-subprocess/expanded-subprocess'\n}\n\nexport default class BPMNExpandedSubprocess extends BPMNContainerBase {\n get nature() {\n return NATURE\n }\n\n render(ctx: CanvasRenderingContext2D) {\n const { left, top, width, height } = this.bounds\n const { callActivity, interrupting, transaction } = this.state\n var radius = 9\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n ctx.moveTo(radius, 0)\n ctx.arcTo(width, 0, width, height, radius)\n ctx.arcTo(width, height, 0, height, radius)\n ctx.arcTo(0, height, 0, 0, radius)\n ctx.arcTo(0, 0, width, 0, radius)\n\n if (transaction) {\n const LINEGAP = 3\n radius -= LINEGAP\n\n ctx.moveTo(radius + LINEGAP, LINEGAP)\n ctx.arcTo(width - LINEGAP, LINEGAP, width - LINEGAP, height - LINEGAP, radius)\n ctx.arcTo(width - LINEGAP, height - LINEGAP, LINEGAP, height, radius)\n ctx.arcTo(LINEGAP, height - LINEGAP, LINEGAP, LINEGAP, radius)\n ctx.arcTo(LINEGAP, LINEGAP, width - LINEGAP, LINEGAP, radius)\n }\n\n this.drawFill(ctx)\n\n if (callActivity) {\n this.drawStroke(ctx, { lineWidth: 5 })\n } else {\n this.drawStroke(ctx, {\n lineWidth: transaction ? 1 : 2,\n lineDash: interrupting ? 'dash' : 'solid'\n })\n }\n\n ctx.translate(-left, -top)\n }\n\n get textHidden() {\n return false\n }\n}\n\nComponent.register('bpmn-expanded-subprocess', BPMNExpandedSubprocess)\n"]}
|
package/dist/bpmn-gateway.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Properties } from '@hatiolab/things-scene';
|
|
1
|
+
import { BOUNDS, Properties } from '@hatiolab/things-scene';
|
|
2
2
|
import BPMNControlBase from './base/bpmn-control-base';
|
|
3
3
|
export default class BPMNGateway extends BPMNControlBase {
|
|
4
4
|
private imageElement?;
|
|
@@ -19,6 +19,7 @@ export default class BPMNGateway extends BPMNControlBase {
|
|
|
19
19
|
}[];
|
|
20
20
|
help: string;
|
|
21
21
|
};
|
|
22
|
+
get textBounds(): BOUNDS;
|
|
22
23
|
render(ctx: CanvasRenderingContext2D): void;
|
|
23
24
|
onchange(after: Properties, before: Properties): void;
|
|
24
25
|
getImageElement(): HTMLImageElement | undefined;
|
package/dist/bpmn-gateway.js
CHANGED
|
@@ -45,6 +45,19 @@ export default class BPMNGateway extends BPMNControlBase {
|
|
|
45
45
|
static get nature() {
|
|
46
46
|
return NATURE;
|
|
47
47
|
}
|
|
48
|
+
get textBounds() {
|
|
49
|
+
var { left, top, width, height } = this.bounds;
|
|
50
|
+
var { paddingTop, paddingLeft, paddingRight } = this.state;
|
|
51
|
+
paddingTop || (paddingTop = 0);
|
|
52
|
+
paddingLeft || (paddingLeft = 0);
|
|
53
|
+
paddingRight || (paddingRight = 0);
|
|
54
|
+
return {
|
|
55
|
+
left: left + paddingLeft,
|
|
56
|
+
top: top + paddingTop + height + 10,
|
|
57
|
+
width: Math.max(width - paddingLeft - paddingRight, 0),
|
|
58
|
+
height: 0
|
|
59
|
+
};
|
|
60
|
+
}
|
|
48
61
|
render(ctx) {
|
|
49
62
|
var { left, top, width, height } = this.bounds;
|
|
50
63
|
ctx.translate(left, top);
|
package/dist/bpmn-gateway.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-gateway.js","sourceRoot":"","sources":["../src/bpmn-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"bpmn-gateway.js","sourceRoot":"","sources":["../src/bpmn-gateway.ts"],"names":[],"mappings":"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","sourcesContent":["import { BOUNDS, Component, Properties } from '@hatiolab/things-scene'\n\nimport BPMNControlBase from './base/bpmn-control-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [\n {\n type: 'select',\n label: 'gateway-type',\n name: 'gatewayType',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'exclusive',\n value: 'exclusive'\n },\n {\n display: 'inclusive',\n value: 'inclusive'\n },\n {\n display: 'complex',\n value: 'complex'\n },\n {\n display: 'event based',\n value: 'event-based'\n },\n {\n display: 'parallel',\n value: 'parallel'\n }\n ]\n }\n }\n ],\n help: '/bpmn/gateway/gateway'\n}\n\nexport default class BPMNGateway extends BPMNControlBase {\n private imageElement?: HTMLImageElement\n\n static get nature() {\n return NATURE\n }\n\n get textBounds(): BOUNDS {\n var { left, top, width, height } = this.bounds\n var { paddingTop, paddingLeft, paddingRight } = this.state\n\n paddingTop ||= 0\n paddingLeft ||= 0\n paddingRight ||= 0\n\n return {\n left: left + paddingLeft,\n top: top + paddingTop + height + 10,\n width: Math.max(width - paddingLeft - paddingRight, 0),\n height: 0\n }\n }\n\n render(ctx: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n ctx.moveTo(width / 2, 0)\n ctx.lineTo(width, height / 2)\n ctx.lineTo(width / 2, height)\n ctx.lineTo(0, height / 2)\n ctx.lineTo(width / 2, 0)\n\n this.drawFill(ctx)\n this.drawStroke(ctx)\n\n ctx.beginPath()\n\n const image = this.getImageElement()\n if (image) {\n this.drawImage(ctx, image, width / 6, height / 6, (width * 2) / 3, (height * 2) / 3)\n }\n\n ctx.translate(-left, -top)\n }\n\n onchange(after: Properties, before: Properties) {\n if ('gatewayType' in after || 'strokeStyle' in after) {\n delete this.imageElement\n }\n }\n\n getImageElement(): HTMLImageElement | undefined {\n if (!this.imageElement) {\n const { gatewayType, strokeStyle } = this.state\n\n if (!gatewayType) {\n return\n }\n\n const src = IMAGES[gatewayType]\n if (!src) {\n return\n }\n\n this.imageElement = new Image()\n this.imageElement.src =\n 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(src.replace(/{{strokeColor}}/g, strokeStyle))\n }\n\n return this.imageElement\n }\n}\n\nComponent.register('bpmn-gateway', BPMNGateway)\n\nconst IMAGES: { [type: string]: string } = {\n inclusive: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M17.5,8.5c5,0,9,4,9,9s-4,9-9,9s-9-4-9-9S12.5,8.5,17.5,8.5 M17.5,6C11.1,6,6,11.1,6,17.5S11.1,29,17.5,29S29,23.9,29,17.5\n\t\tS23.9,6,17.5,6L17.5,6z\"/>\n </svg>\n `,\n exclusive: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <rect class=\"st0\" x=\"6.5\" y=\"15.8\" transform=\"matrix(0.7071 -0.7071 0.7071 0.7071 -7.2487 17.5)\" width=\"22\" height=\"3.5\"/>\n <rect class=\"st0\" x=\"15.8\" y=\"6.5\" transform=\"matrix(0.7071 -0.7071 0.7071 0.7071 -7.2487 17.5)\" width=\"3.5\" height=\"22\"/>\n </svg>\n `,\n parallel: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <rect class=\"st0\" x=\"16.3\" y=\"6.5\" width=\"3.5\" height=\"22\"/>\n <rect class=\"st0\" x=\"6.5\" y=\"16.2\" width=\"22\" height=\"3.5\"/>\n </svg>\n `,\n complex: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <rect class=\"st0\" x=\"16.2\" y=\"6.5\" width=\"3.5\" height=\"22\"/>\n <rect class=\"st0\" x=\"6.5\" y=\"16.2\" transform=\"matrix(0.7071 -0.7071 0.7071 0.7071 -7.2487 17.5)\" width=\"22\" height=\"3.5\"/>\n <rect class=\"st0\" x=\"16.2\" y=\"6.5\" transform=\"matrix(0.7072 -0.707 0.707 0.7072 -7.2487 17.4966)\" width=\"3.5\" height=\"22\"/>\n <rect class=\"st0\" x=\"6.5\" y=\"16.2\" width=\"22\" height=\"3.5\"/>\n </svg>\n `,\n 'event-based': `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M17.5,6.2c6.2,0,11.2,5,11.2,11.2s-5,11.2-11.2,11.2s-11.2-5-11.2-11.2S11.3,6.2,17.5,6.2 M17.5,5.5c-6.6,0-12,5.4-12,12\n s5.4,12,12,12s12-5.4,12-12S24.1,5.5,17.5,5.5L17.5,5.5z\"/>\n <path class=\"st0\" d=\"M17.5,8.2c5.1,0,9.2,4.1,9.2,9.2s-4.1,9.2-9.2,9.2s-9.2-4.1-9.2-9.2S12.4,8.2,17.5,8.2 M17.5,7.5c-5.5,0-10,4.5-10,10\n s4.5,10,10,10s10-4.5,10-10S23,7.5,17.5,7.5L17.5,7.5z\"/>\n <path class=\"st0\" d=\"M17.5,11.7l5.7,4.1L21,22.5h-7l-2.2-6.7L17.5,11.7 M17.5,10l-7.3,5.3l2.8,8.6h9l2.8-8.6L17.5,10L17.5,10z\"/>\n </svg>\n `\n}\n"]}
|
package/dist/bpmn-message.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { BOUNDS } from '@hatiolab/things-scene';
|
|
1
2
|
import BPMNControlBase from './base/bpmn-control-base';
|
|
2
3
|
export default class BPMNMessage extends BPMNControlBase {
|
|
3
4
|
static get nature(): {
|
|
@@ -7,5 +8,6 @@ export default class BPMNMessage extends BPMNControlBase {
|
|
|
7
8
|
properties: never[];
|
|
8
9
|
help: string;
|
|
9
10
|
};
|
|
11
|
+
get textBounds(): BOUNDS;
|
|
10
12
|
render(ctx: CanvasRenderingContext2D): void;
|
|
11
13
|
}
|
package/dist/bpmn-message.js
CHANGED
|
@@ -11,6 +11,19 @@ export default class BPMNMessage extends BPMNControlBase {
|
|
|
11
11
|
static get nature() {
|
|
12
12
|
return NATURE;
|
|
13
13
|
}
|
|
14
|
+
get textBounds() {
|
|
15
|
+
var { left, top, width, height } = this.bounds;
|
|
16
|
+
var { paddingTop, paddingLeft, paddingRight } = this.state;
|
|
17
|
+
paddingTop || (paddingTop = 0);
|
|
18
|
+
paddingLeft || (paddingLeft = 0);
|
|
19
|
+
paddingRight || (paddingRight = 0);
|
|
20
|
+
return {
|
|
21
|
+
left: left + paddingLeft,
|
|
22
|
+
top: top + paddingTop + height + 10,
|
|
23
|
+
width: Math.max(width - paddingLeft - paddingRight, 0),
|
|
24
|
+
height: 0
|
|
25
|
+
};
|
|
26
|
+
}
|
|
14
27
|
render(ctx) {
|
|
15
28
|
var { left, top, width, height } = this.bounds;
|
|
16
29
|
const corner = (Math.min(width, height) * 2) / 5;
|
package/dist/bpmn-message.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-message.js","sourceRoot":"","sources":["../src/bpmn-message.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"bpmn-message.js","sourceRoot":"","sources":["../src/bpmn-message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAE1D,OAAO,eAAe,MAAM,0BAA0B,CAAA;AAEtD,MAAM,MAAM,GAAG;IACb,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE,EAAE;IACd,IAAI,EAAE,uBAAuB;CAC9B,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,eAAe;IACtD,MAAM,KAAK,MAAM;QACf,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAC9C,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAE1D,UAAU,KAAV,UAAU,GAAK,CAAC,EAAA;QAChB,WAAW,KAAX,WAAW,GAAK,CAAC,EAAA;QACjB,YAAY,KAAZ,YAAY,GAAK,CAAC,EAAA;QAElB,OAAO;YACL,IAAI,EAAE,IAAI,GAAG,WAAW;YACxB,GAAG,EAAE,GAAG,GAAG,UAAU,GAAG,MAAM,GAAG,EAAE;YACnC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,WAAW,GAAG,YAAY,EAAE,CAAC,CAAC;YACtD,MAAM,EAAE,CAAC;SACV,CAAA;IACH,CAAC;IAED,MAAM,CAAC,GAA6B;QAClC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAE9C,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;QAEhD,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACxB,GAAG,CAAC,SAAS,EAAE,CAAA;QAEf,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACpB,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACzB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QACrB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChB,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;QACjC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAEpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAClB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAEpB,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA","sourcesContent":["import { BOUNDS, Component } from '@hatiolab/things-scene'\n\nimport BPMNControlBase from './base/bpmn-control-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [],\n help: '/bpmn/message/message'\n}\n\nexport default class BPMNMessage extends BPMNControlBase {\n static get nature() {\n return NATURE\n }\n\n get textBounds(): BOUNDS {\n var { left, top, width, height } = this.bounds\n var { paddingTop, paddingLeft, paddingRight } = this.state\n\n paddingTop ||= 0\n paddingLeft ||= 0\n paddingRight ||= 0\n\n return {\n left: left + paddingLeft,\n top: top + paddingTop + height + 10,\n width: Math.max(width - paddingLeft - paddingRight, 0),\n height: 0\n }\n }\n\n render(ctx: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n\n const corner = (Math.min(width, height) * 2) / 5\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n ctx.moveTo(0, 0)\n ctx.lineTo(width, 0)\n ctx.lineTo(width, height)\n ctx.lineTo(0, height)\n ctx.lineTo(0, 0)\n ctx.lineTo(width / 2, height / 2)\n ctx.lineTo(width, 0)\n\n this.drawFill(ctx)\n this.drawStroke(ctx)\n\n ctx.translate(-left, -top)\n }\n}\n\nComponent.register('bpmn-message', BPMNMessage)\n"]}
|
package/dist/bpmn-subprocess.js
CHANGED
|
@@ -42,8 +42,70 @@ const NATURE = {
|
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
44
|
type: 'select',
|
|
45
|
-
label: 'event',
|
|
46
|
-
name: '
|
|
45
|
+
label: 'trigger-event',
|
|
46
|
+
name: 'triggerEvent',
|
|
47
|
+
property: {
|
|
48
|
+
options: [
|
|
49
|
+
{
|
|
50
|
+
display: '',
|
|
51
|
+
value: ''
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
display: 'message',
|
|
55
|
+
value: 'message'
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
display: 'timer',
|
|
59
|
+
value: 'timer'
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
display: 'error',
|
|
63
|
+
value: 'error'
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
display: 'escalation',
|
|
67
|
+
value: 'escalation'
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
display: 'cancel',
|
|
71
|
+
value: 'cancel'
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
display: 'compensation',
|
|
75
|
+
value: 'compensation'
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
display: 'conditional',
|
|
79
|
+
value: 'conditional'
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
display: 'link',
|
|
83
|
+
value: 'link'
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
display: 'signal',
|
|
87
|
+
value: 'signal'
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
display: 'terminate',
|
|
91
|
+
value: 'terminate'
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
display: 'multiple',
|
|
95
|
+
value: 'multiple'
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
display: 'parallel multiple',
|
|
99
|
+
value: 'parallel-multiple'
|
|
100
|
+
}
|
|
101
|
+
]
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
// TODO this property might be an array
|
|
106
|
+
type: 'select',
|
|
107
|
+
label: 'boundary-event',
|
|
108
|
+
name: 'boundaryEvent',
|
|
47
109
|
property: {
|
|
48
110
|
options: [
|
|
49
111
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-subprocess.js","sourceRoot":"","sources":["../src/bpmn-subprocess.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Properties } from '@hatiolab/things-scene'\n\nimport BPMNControlBase from './base/bpmn-control-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [\n {\n type: 'checkbox',\n label: 'loop',\n name: 'loop'\n },\n {\n type: 'checkbox',\n label: 'multi-instance',\n name: 'multiInstance'\n },\n {\n type: 'checkbox',\n label: 'compensation',\n name: 'compensation'\n },\n {\n type: 'checkbox',\n label: 'adhoc',\n name: 'adhoc'\n },\n {\n type: 'checkbox',\n label: 'call-activity',\n name: 'callActivity'\n },\n {\n type: 'checkbox',\n label: 'transaction',\n name: 'transaction'\n },\n {\n type: 'checkbox',\n label: 'interrupting',\n name: 'interrupting'\n },\n {\n type: 'select',\n label: 'event',\n name: 'event',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'message',\n value: 'message'\n },\n {\n display: 'timer',\n value: 'timer'\n },\n {\n display: 'error',\n value: 'error'\n },\n {\n display: 'escalation',\n value: 'escalation'\n },\n {\n display: 'cancel',\n value: 'cancel'\n },\n {\n display: 'compensation',\n value: 'compensation'\n },\n {\n display: 'conditional',\n value: 'conditional'\n },\n {\n display: 'link',\n value: 'link'\n },\n {\n display: 'signal',\n value: 'signal'\n },\n {\n display: 'terminate',\n value: 'terminate'\n },\n {\n display: 'multiple',\n value: 'multiple'\n },\n {\n display: 'parallel multiple',\n value: 'parallel-multiple'\n }\n ]\n }\n }\n ],\n help: '/bpmn/subprocess/subprocess'\n}\n\nexport default class BPMNSubprocess extends BPMNControlBase {\n private markerImages?: HTMLImageElement[]\n\n static get nature() {\n return NATURE\n }\n\n render(ctx: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n const { callActivity, interrupting, transaction } = this.state\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n var radius = 10\n\n ctx.moveTo(radius, 0)\n ctx.arcTo(width, 0, width, height, radius)\n ctx.arcTo(width, height, 0, height, radius)\n ctx.arcTo(0, height, 0, 0, radius)\n ctx.arcTo(0, 0, width, 0, radius)\n\n if (transaction) {\n const LINEGAP = 3\n radius -= LINEGAP\n\n ctx.moveTo(radius + LINEGAP, LINEGAP)\n ctx.arcTo(width - LINEGAP, LINEGAP, width - LINEGAP, height - LINEGAP, radius)\n ctx.arcTo(width - LINEGAP, height - LINEGAP, LINEGAP, height, radius)\n ctx.arcTo(LINEGAP, height - LINEGAP, LINEGAP, LINEGAP, radius)\n ctx.arcTo(LINEGAP, LINEGAP, width - LINEGAP, LINEGAP, radius)\n }\n\n this.drawFill(ctx)\n\n if (callActivity) {\n this.drawStroke(ctx, { lineWidth: 5 })\n } else {\n this.drawStroke(ctx, {\n lineWidth: transaction ? 1 : 2,\n lineDash: interrupting ? 'dash' : 'solid'\n })\n }\n\n ctx.beginPath()\n\n const images = this.getMarkerImages() || []\n const start = (width - images.length * 16) / 2\n\n images.forEach((image, index) => {\n this.drawImage(ctx, image, start + index * 16, height - 16, 16, 16)\n })\n\n ctx.translate(-left, -top)\n }\n\n onchange(after: Properties, before: Properties) {\n if (['loop', 'multiInstance', 'adhoc', 'compensation', 'strokeStyle'].find(prop => prop in after)) {\n delete this.markerImages\n }\n }\n\n getMarkerImages(): HTMLImageElement[] | null | undefined {\n if (!this.markerImages) {\n const { strokeStyle } = this.state\n\n this.markerImages = Object.keys(MARKERS)\n .filter(key => key === 'subprocess' || this.state[key])\n .map(key => {\n let image = new Image()\n image.src =\n 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(MARKERS[key].replace(/{{strokeColor}}/g, strokeStyle))\n return image\n })\n }\n\n return this.markerImages\n }\n}\n\nComponent.register('bpmn-subprocess', BPMNSubprocess)\n\nconst MARKERS: { [type: string]: string } = {\n loop: `\n<svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M9.5,5.2C4.3,9.7,3.7,17.5,8.1,22.8L5,25.4l7.8,0.6l0.6-7.8L10.2,21c-3.5-4.1-3-10.1,1-13.6s10.1-3,13.6,1\n\ts3,10.1-1,13.6c-1.6,1.4-3.5,2.1-5.4,2.3l-0.2,2.8c2.6-0.2,5.3-1.1,7.4-3c5.2-4.5,5.8-12.3,1.3-17.5S14.7,0.8,9.5,5.2z\"/>\n</svg>\n`,\n multiInstance: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <g>\n <rect x=\"5.5\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n <rect x=\"15.9\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n <rect x=\"26.2\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n </g>\n </svg>\n `,\n compensation: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <g>\n <path class=\"st0\" d=\"M16.1,6.9v15.6l-7.8-7.8L16.1,6.9 M18.1,2.1L5.5,14.7l12.6,12.6V2.1L18.1,2.1z M5.5,14.7L5.5,14.7L5.5,14.7\n L5.5,14.7L5.5,14.7z\"/>\n </g>\n <g>\n <path class=\"st0\" d=\"M27.5,6.9v15.6l-7.8-7.8L27.5,6.9 M29.5,2.1L16.9,14.7l12.6,12.6V2.1L29.5,2.1z M16.9,14.7L16.9,14.7\n L16.9,14.7L16.9,14.7L16.9,14.7z\"/>\n </g>\n </svg>\n `,\n subprocess: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:none;stroke:{{strokeColor}};stroke-width:2;stroke-miterlimit:10;}\n .st1{fill:{{strokeColor}};} \n </style>\n <rect x=\"5.5\" y=\"2.5\" class=\"st0\" width=\"24\" height=\"24\"/>\n <g>\n <g>\n <rect x=\"16.4\" y=\"6\" class=\"st1\" width=\"2.1\" height=\"17\"/>\n </g>\n <g>\n <rect x=\"9\" y=\"13.4\" class=\"st1\" width=\"17\" height=\"2.1\"/>\n </g>\n </g>\n </svg>\n `,\n adhoc: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M29.2,10.3c-0.8,0.9-1.7,1.7-2.5,2.2c-0.8,0.5-1.6,0.8-2.4,0.8c-1,0-3-0.6-6.1-1.9C15,10.2,12.6,9.6,11,9.6\n\t\tc-2.1,0-3.9,0.7-5.5,1.9v6.9c0.1,0,0.3-0.2,0.6-0.6C7.9,16,9.5,15,10.9,15c0.8,0,2.9,0.6,6.1,1.9c3.3,1.2,5.7,1.8,7.1,1.8\n\t\tc2,0,3.8-0.6,5.3-1.8v-6.9C29.4,10.1,29.3,10.2,29.2,10.3z\"/>\n </svg>\n `\n}\n"]}
|
|
1
|
+
{"version":3,"file":"bpmn-subprocess.js","sourceRoot":"","sources":["../src/bpmn-subprocess.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Properties } from '@hatiolab/things-scene'\n\nimport BPMNControlBase from './base/bpmn-control-base'\n\nconst NATURE = {\n mutable: false,\n resizable: true,\n rotatable: false,\n properties: [\n {\n type: 'checkbox',\n label: 'loop',\n name: 'loop'\n },\n {\n type: 'checkbox',\n label: 'multi-instance',\n name: 'multiInstance'\n },\n {\n type: 'checkbox',\n label: 'compensation',\n name: 'compensation'\n },\n {\n type: 'checkbox',\n label: 'adhoc',\n name: 'adhoc'\n },\n {\n type: 'checkbox',\n label: 'call-activity',\n name: 'callActivity'\n },\n {\n type: 'checkbox',\n label: 'transaction',\n name: 'transaction'\n },\n {\n type: 'checkbox',\n label: 'interrupting',\n name: 'interrupting'\n },\n {\n type: 'select',\n label: 'trigger-event',\n name: 'triggerEvent',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'message',\n value: 'message'\n },\n {\n display: 'timer',\n value: 'timer'\n },\n {\n display: 'error',\n value: 'error'\n },\n {\n display: 'escalation',\n value: 'escalation'\n },\n {\n display: 'cancel',\n value: 'cancel'\n },\n {\n display: 'compensation',\n value: 'compensation'\n },\n {\n display: 'conditional',\n value: 'conditional'\n },\n {\n display: 'link',\n value: 'link'\n },\n {\n display: 'signal',\n value: 'signal'\n },\n {\n display: 'terminate',\n value: 'terminate'\n },\n {\n display: 'multiple',\n value: 'multiple'\n },\n {\n display: 'parallel multiple',\n value: 'parallel-multiple'\n }\n ]\n }\n },\n {\n // TODO this property might be an array\n type: 'select',\n label: 'boundary-event',\n name: 'boundaryEvent',\n property: {\n options: [\n {\n display: '',\n value: ''\n },\n {\n display: 'message',\n value: 'message'\n },\n {\n display: 'timer',\n value: 'timer'\n },\n {\n display: 'error',\n value: 'error'\n },\n {\n display: 'escalation',\n value: 'escalation'\n },\n {\n display: 'cancel',\n value: 'cancel'\n },\n {\n display: 'compensation',\n value: 'compensation'\n },\n {\n display: 'conditional',\n value: 'conditional'\n },\n {\n display: 'link',\n value: 'link'\n },\n {\n display: 'signal',\n value: 'signal'\n },\n {\n display: 'terminate',\n value: 'terminate'\n },\n {\n display: 'multiple',\n value: 'multiple'\n },\n {\n display: 'parallel multiple',\n value: 'parallel-multiple'\n }\n ]\n }\n }\n ],\n help: '/bpmn/subprocess/subprocess'\n}\n\nexport default class BPMNSubprocess extends BPMNControlBase {\n private markerImages?: HTMLImageElement[]\n\n static get nature() {\n return NATURE\n }\n\n render(ctx: CanvasRenderingContext2D) {\n var { left, top, width, height } = this.bounds\n const { callActivity, interrupting, transaction } = this.state\n\n ctx.translate(left, top)\n ctx.beginPath()\n\n var radius = 10\n\n ctx.moveTo(radius, 0)\n ctx.arcTo(width, 0, width, height, radius)\n ctx.arcTo(width, height, 0, height, radius)\n ctx.arcTo(0, height, 0, 0, radius)\n ctx.arcTo(0, 0, width, 0, radius)\n\n if (transaction) {\n const LINEGAP = 3\n radius -= LINEGAP\n\n ctx.moveTo(radius + LINEGAP, LINEGAP)\n ctx.arcTo(width - LINEGAP, LINEGAP, width - LINEGAP, height - LINEGAP, radius)\n ctx.arcTo(width - LINEGAP, height - LINEGAP, LINEGAP, height, radius)\n ctx.arcTo(LINEGAP, height - LINEGAP, LINEGAP, LINEGAP, radius)\n ctx.arcTo(LINEGAP, LINEGAP, width - LINEGAP, LINEGAP, radius)\n }\n\n this.drawFill(ctx)\n\n if (callActivity) {\n this.drawStroke(ctx, { lineWidth: 5 })\n } else {\n this.drawStroke(ctx, {\n lineWidth: transaction ? 1 : 2,\n lineDash: interrupting ? 'dash' : 'solid'\n })\n }\n\n ctx.beginPath()\n\n const images = this.getMarkerImages() || []\n const start = (width - images.length * 16) / 2\n\n images.forEach((image, index) => {\n this.drawImage(ctx, image, start + index * 16, height - 16, 16, 16)\n })\n\n ctx.translate(-left, -top)\n }\n\n onchange(after: Properties, before: Properties) {\n if (['loop', 'multiInstance', 'adhoc', 'compensation', 'strokeStyle'].find(prop => prop in after)) {\n delete this.markerImages\n }\n }\n\n getMarkerImages(): HTMLImageElement[] | null | undefined {\n if (!this.markerImages) {\n const { strokeStyle } = this.state\n\n this.markerImages = Object.keys(MARKERS)\n .filter(key => key === 'subprocess' || this.state[key])\n .map(key => {\n let image = new Image()\n image.src =\n 'data:image/svg+xml;charset=UTF-8;base64,' + btoa(MARKERS[key].replace(/{{strokeColor}}/g, strokeStyle))\n return image\n })\n }\n\n return this.markerImages\n }\n}\n\nComponent.register('bpmn-subprocess', BPMNSubprocess)\n\nconst MARKERS: { [type: string]: string } = {\n loop: `\n<svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M9.5,5.2C4.3,9.7,3.7,17.5,8.1,22.8L5,25.4l7.8,0.6l0.6-7.8L10.2,21c-3.5-4.1-3-10.1,1-13.6s10.1-3,13.6,1\n\ts3,10.1-1,13.6c-1.6,1.4-3.5,2.1-5.4,2.3l-0.2,2.8c2.6-0.2,5.3-1.1,7.4-3c5.2-4.5,5.8-12.3,1.3-17.5S14.7,0.8,9.5,5.2z\"/>\n</svg>\n`,\n multiInstance: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <g>\n <rect x=\"5.5\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n <rect x=\"15.9\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n <rect x=\"26.2\" y=\"1.9\" class=\"st0\" width=\"3.3\" height=\"25.3\"/>\n </g>\n </svg>\n `,\n compensation: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <g>\n <path class=\"st0\" d=\"M16.1,6.9v15.6l-7.8-7.8L16.1,6.9 M18.1,2.1L5.5,14.7l12.6,12.6V2.1L18.1,2.1z M5.5,14.7L5.5,14.7L5.5,14.7\n L5.5,14.7L5.5,14.7z\"/>\n </g>\n <g>\n <path class=\"st0\" d=\"M27.5,6.9v15.6l-7.8-7.8L27.5,6.9 M29.5,2.1L16.9,14.7l12.6,12.6V2.1L29.5,2.1z M16.9,14.7L16.9,14.7\n L16.9,14.7L16.9,14.7L16.9,14.7z\"/>\n </g>\n </svg>\n `,\n subprocess: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:none;stroke:{{strokeColor}};stroke-width:2;stroke-miterlimit:10;}\n .st1{fill:{{strokeColor}};} \n </style>\n <rect x=\"5.5\" y=\"2.5\" class=\"st0\" width=\"24\" height=\"24\"/>\n <g>\n <g>\n <rect x=\"16.4\" y=\"6\" class=\"st1\" width=\"2.1\" height=\"17\"/>\n </g>\n <g>\n <rect x=\"9\" y=\"13.4\" class=\"st1\" width=\"17\" height=\"2.1\"/>\n </g>\n </g>\n </svg>\n `,\n adhoc: `\n <svg version=\"1.1\" id=\"Layer_3\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\n\t viewBox=\"0 0 35 35\" style=\"enable-background:new 0 0 35 35;\" xml:space=\"preserve\">\n <style type=\"text/css\">\n .st0{fill:{{strokeColor}};}\n </style>\n <path class=\"st0\" d=\"M29.2,10.3c-0.8,0.9-1.7,1.7-2.5,2.2c-0.8,0.5-1.6,0.8-2.4,0.8c-1,0-3-0.6-6.1-1.9C15,10.2,12.6,9.6,11,9.6\n\t\tc-2.1,0-3.9,0.7-5.5,1.9v6.9c0.1,0,0.3-0.2,0.6-0.6C7.9,16,9.5,15,10.9,15c0.8,0,2.9,0.6,6.1,1.9c3.3,1.2,5.7,1.8,7.1,1.8\n\t\tc2,0,3.8-0.6,5.3-1.8v-6.9C29.4,10.1,29.3,10.2,29.2,10.3z\"/>\n </svg>\n `\n}\n"]}
|