@aranzatech/diagrams-bpmn 0.1.2 → 0.2.0
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 +20 -0
- package/README.md +121 -0
- package/dist/{chunk-MLUJKUTG.js → chunk-5GRCJ5X6.js} +3 -3
- package/dist/{chunk-MLUJKUTG.js.map → chunk-5GRCJ5X6.js.map} +1 -1
- package/dist/{chunk-6TUC5QX5.js → chunk-DNR5WBQH.js} +83 -2
- package/dist/chunk-DNR5WBQH.js.map +1 -0
- package/dist/chunk-G5S4ASP3.js +277 -0
- package/dist/chunk-G5S4ASP3.js.map +1 -0
- package/dist/{chunk-4OAEWYYU.js → chunk-MF2WE3OM.js} +146 -37
- package/dist/chunk-MF2WE3OM.js.map +1 -0
- package/dist/chunk-OZKTOILD.js +3 -0
- package/dist/chunk-OZKTOILD.js.map +1 -0
- package/dist/{chunk-NXMUX67A.js → chunk-S3GGEEA5.js} +31 -8
- package/dist/chunk-S3GGEEA5.js.map +1 -0
- package/dist/elements/index.cjs +81 -0
- package/dist/elements/index.cjs.map +1 -1
- package/dist/elements/index.d.cts +2 -2
- package/dist/elements/index.d.ts +2 -2
- package/dist/elements/index.js +3 -2
- package/dist/index.cjs +535 -66
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -62
- package/dist/index.d.ts +7 -62
- package/dist/index.js +6 -40
- package/dist/index.js.map +1 -1
- package/dist/modeling/index.cjs +894 -0
- package/dist/modeling/index.cjs.map +1 -0
- package/dist/modeling/index.d.cts +88 -0
- package/dist/modeling/index.d.ts +88 -0
- package/dist/modeling/index.js +5 -0
- package/dist/modeling/index.js.map +1 -0
- package/dist/nodes/index.cjs +29 -6
- package/dist/nodes/index.cjs.map +1 -1
- package/dist/nodes/index.js +1 -1
- package/dist/{types-CxzazgBX.d.cts → types-BKA0GZz5.d.cts} +9 -19
- package/dist/{types-CxzazgBX.d.ts → types-BKA0GZz5.d.ts} +9 -19
- package/dist/types-CCkHqtC_.d.cts +20 -0
- package/dist/types-hj621ZRJ.d.ts +20 -0
- package/dist/xml/index.cjs +224 -34
- package/dist/xml/index.cjs.map +1 -1
- package/dist/xml/index.d.cts +4 -19
- package/dist/xml/index.d.ts +4 -19
- package/dist/xml/index.js +2 -2
- package/package.json +12 -4
- package/dist/chunk-4OAEWYYU.js.map +0 -1
- package/dist/chunk-6TUC5QX5.js.map +0 -1
- package/dist/chunk-NXMUX67A.js.map +0 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
- Expanded BPMN modeling helpers on top of the new `diagrams-core` primitives.
|
|
6
|
+
- Added BPMN node factory, edge-type inference and BPMN document serialization helpers.
|
|
7
|
+
- Added replace, resize, reparent, select, copy/paste and batch-command helpers.
|
|
8
|
+
- Improved BPMN connection rules to allow subprocesses as flow nodes while blocking pools/lanes/artifacts without handles.
|
|
9
|
+
- Added sequence-flow cardinality checks based on the BPMN element catalog.
|
|
10
|
+
- Boundary attachment now updates both `parentId` and BPMN `attachedToRef` data.
|
|
11
|
+
|
|
12
|
+
## 0.2.0
|
|
13
|
+
|
|
14
|
+
- Added BPMN modeling helpers built on `@aranzatech/diagrams-core` commands and rules.
|
|
15
|
+
- Added public `@aranzatech/diagrams-bpmn/modeling` subpath.
|
|
16
|
+
- Improved XML roundtrip for default sequence flows, boundary event attachment,
|
|
17
|
+
non-interrupting boundary events, documentation and parent-relative coordinates.
|
|
18
|
+
- Removed Flowable adapter exports from the root public API; Flowable integration
|
|
19
|
+
is planned as a separate wrapper concern.
|
|
20
|
+
- Added README coverage matrix and stable-scope notes.
|
package/README.md
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
# @aranzatech/diagrams-bpmn
|
|
2
|
+
|
|
3
|
+
BPMN 2.0 building blocks for the Aranza diagram ecosystem. This package owns
|
|
4
|
+
BPMN-specific visual components, element metadata, BPMN modeling helpers, XML
|
|
5
|
+
import/export and preview token simulation.
|
|
6
|
+
|
|
7
|
+
It is intentionally not responsible for execution-engine communication. Flowable
|
|
8
|
+
integration belongs in a future wrapper package or in the consuming app backend.
|
|
9
|
+
|
|
10
|
+
## Public Subpaths
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
import { BPMN_NODE_TYPES } from "@aranzatech/diagrams-bpmn/nodes";
|
|
14
|
+
import { BPMN_EDGE_TYPES } from "@aranzatech/diagrams-bpmn/edges";
|
|
15
|
+
import { BPMN_ELEMENT_CATALOG } from "@aranzatech/diagrams-bpmn/elements";
|
|
16
|
+
import { parseBpmnXml, serializeBpmnXml } from "@aranzatech/diagrams-bpmn/xml";
|
|
17
|
+
import {
|
|
18
|
+
createBpmnNodeCommand,
|
|
19
|
+
replaceBpmnNodeCommand,
|
|
20
|
+
serializeBpmnDiagram,
|
|
21
|
+
} from "@aranzatech/diagrams-bpmn/modeling";
|
|
22
|
+
import { createSimulation } from "@aranzatech/diagrams-bpmn/simulation";
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Scope
|
|
26
|
+
|
|
27
|
+
- BPMN visual node and edge renderers for ReactFlow.
|
|
28
|
+
- BPMN element catalog and guards.
|
|
29
|
+
- BPMN XML import/export through `bpmn-moddle`.
|
|
30
|
+
- BPMN modeling commands and interaction rules on top of `diagrams-core`.
|
|
31
|
+
- Client-side preview token simulation.
|
|
32
|
+
|
|
33
|
+
## Out Of Scope
|
|
34
|
+
|
|
35
|
+
- Flowable REST/backend communication.
|
|
36
|
+
- BPMN business validation rules. Those belong in `@aranzatech/flowslint`.
|
|
37
|
+
- Full execution semantics.
|
|
38
|
+
|
|
39
|
+
## Coverage Matrix
|
|
40
|
+
|
|
41
|
+
| Area | Status | Notes |
|
|
42
|
+
|---|---:|---|
|
|
43
|
+
| Events | Partial | Start, end, intermediate catch/throw, boundary; common triggers rendered/imported. |
|
|
44
|
+
| Tasks | Partial | Task variants and call activity rendered; advanced task semantics still need richer XML mapping. |
|
|
45
|
+
| Gateways | Good | Exclusive, inclusive, parallel, event-based and complex rendered. |
|
|
46
|
+
| Containers | Partial | Pool, lane, subprocess, transaction, event subprocess and ad-hoc subprocess rendered; lane resizing/modeling still needs depth. |
|
|
47
|
+
| Artifacts | Partial | Text annotation and group rendered; association semantics are basic. |
|
|
48
|
+
| Data | Partial | Data object/input/output/store and refs rendered; full item definitions/data states pending. |
|
|
49
|
+
| Conversation | Partial | Conversation nodes and links rendered; full conversation model pending. |
|
|
50
|
+
| Choreography | Partial | Choreography nodes rendered; participant semantics are lightweight. |
|
|
51
|
+
| XML import/export | Partial | Basic BPMN + DI, default flows, boundary attachment, docs and relative child coordinates; full lossless roundtrip pending. |
|
|
52
|
+
| Modeling | Growing | Commands and rules for create/connect/attach/delete/replace/resize/reparent/copy/paste; palette/context-pad/auto-place can build on this. |
|
|
53
|
+
| Simulation | Preview | Useful design-time token simulation, not an execution engine. |
|
|
54
|
+
|
|
55
|
+
## Modeling Example
|
|
56
|
+
|
|
57
|
+
```ts
|
|
58
|
+
import { createCommandStackState } from "@aranzatech/diagrams-core/commands";
|
|
59
|
+
import {
|
|
60
|
+
createBpmnNodeCommand,
|
|
61
|
+
connectBpmnCommand,
|
|
62
|
+
replaceBpmnNodeCommand,
|
|
63
|
+
runBpmnCommands,
|
|
64
|
+
runBpmnCommand,
|
|
65
|
+
} from "@aranzatech/diagrams-bpmn/modeling";
|
|
66
|
+
|
|
67
|
+
let stack = createCommandStackState({ nodes: [], edges: [] });
|
|
68
|
+
|
|
69
|
+
stack = runBpmnCommand(
|
|
70
|
+
stack,
|
|
71
|
+
createBpmnNodeCommand({
|
|
72
|
+
id: "task_1",
|
|
73
|
+
elementType: "Task",
|
|
74
|
+
position: { x: 100, y: 100 },
|
|
75
|
+
label: "Review request",
|
|
76
|
+
}),
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
stack = runBpmnCommand(
|
|
80
|
+
stack,
|
|
81
|
+
connectBpmnCommand({
|
|
82
|
+
source: "start_1",
|
|
83
|
+
target: "task_1",
|
|
84
|
+
}),
|
|
85
|
+
);
|
|
86
|
+
|
|
87
|
+
stack = runBpmnCommands(
|
|
88
|
+
stack,
|
|
89
|
+
[
|
|
90
|
+
replaceBpmnNodeCommand({
|
|
91
|
+
id: "task_1",
|
|
92
|
+
elementType: "UserTask",
|
|
93
|
+
label: "Human review",
|
|
94
|
+
}),
|
|
95
|
+
],
|
|
96
|
+
{ id: "review-as-user-task" },
|
|
97
|
+
);
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## BPMN Diagram Document Example
|
|
101
|
+
|
|
102
|
+
```ts
|
|
103
|
+
import {
|
|
104
|
+
deserializeBpmnDiagram,
|
|
105
|
+
serializeBpmnDiagram,
|
|
106
|
+
} from "@aranzatech/diagrams-bpmn/modeling";
|
|
107
|
+
|
|
108
|
+
const json = serializeBpmnDiagram(stack.current, {
|
|
109
|
+
metadata: { source: "designer" },
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
const restored = deserializeBpmnDiagram(json);
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Road To Stable
|
|
116
|
+
|
|
117
|
+
- Expand XML to preserve more BPMN semantics losslessly.
|
|
118
|
+
- Add real-world XML fixtures from bpmn.io/Camunda/Flowable modelers.
|
|
119
|
+
- Add palette/context-pad and auto-place commands on top of the current modeling API.
|
|
120
|
+
- Add robust lane/pool resize and reparent behavior.
|
|
121
|
+
- Move engine-specific extensions to a dedicated package.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BPMN_ELEMENT_CATALOG } from './chunk-
|
|
1
|
+
import { BPMN_ELEMENT_CATALOG } from './chunk-DNR5WBQH.js';
|
|
2
2
|
|
|
3
3
|
// src/elements/guards.ts
|
|
4
4
|
var TASK_TYPES = /* @__PURE__ */ new Set([
|
|
@@ -82,5 +82,5 @@ function supportsMarkers(type) {
|
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
export { acceptsBoundaryEvents, getHandlePolicy, getOrientation, isChoreographyType, isContainerType, isConversationType, isDataType, isEventType, isGatewayType, isTaskType, supportsCollapse, supportsMarkers };
|
|
85
|
-
//# sourceMappingURL=chunk-
|
|
86
|
-
//# sourceMappingURL=chunk-
|
|
85
|
+
//# sourceMappingURL=chunk-5GRCJ5X6.js.map
|
|
86
|
+
//# sourceMappingURL=chunk-5GRCJ5X6.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/elements/guards.ts"],"names":[],"mappings":";;;AAGA,IAAM,UAAA,uBAAiB,GAAA,CAAqB;AAAA,EAC1C,MAAA;AAAA,EAAQ,UAAA;AAAA,EAAY,aAAA;AAAA,EAAe,YAAA;AAAA,EACnC,YAAA;AAAA,EAAc,kBAAA;AAAA,EAAoB,aAAA;AAAA,EAAe,UAAA;AAAA,EAAY;AAC/D,CAAC,CAAA;AAED,IAAM,aAAA,uBAAoB,GAAA,CAAqB;AAAA,EAC7C,kBAAA;AAAA,EAAoB,kBAAA;AAAA,EAAoB,iBAAA;AAAA,EACxC,mBAAA;AAAA,EAAqB;AACvB,CAAC,CAAA;AAED,IAAM,WAAA,uBAAkB,GAAA,CAAqB;AAAA,EAC3C,YAAA;AAAA,EAAc,UAAA;AAAA,EAAY,wBAAA;AAAA,EAC1B,wBAAA;AAAA,EAA0B;AAC5B,CAAC,CAAA;AAED,IAAM,UAAA,uBAAiB,GAAA,CAAqB;AAAA,EAC1C,YAAA;AAAA,EAAc,qBAAA;AAAA,EAAuB,WAAA;AAAA,EAAa,YAAA;AAAA,EAClD,WAAA;AAAA,EAAa;AACf,CAAC,CAAA;AAED,IAAM,kBAAA,uBAAyB,GAAA,CAAqB;AAAA,EAClD,cAAA;AAAA,EAAgB,iBAAA;AAAA,EAAmB;AACrC,CAAC,CAAA;AAED,IAAM,kBAAA,uBAAyB,GAAA,CAAqB;AAAA,EAClD,kBAAA;AAAA,EAAoB,iBAAA;AAAA,EAAmB;AACzC,CAAC,CAAA;AAEM,SAAS,WAAW,IAAA,EAAgC;AACzD,EAAA,OAAO,UAAA,CAAW,IAAI,IAAI,CAAA;AAC5B;AAEO,SAAS,cAAc,IAAA,EAAgC;AAC5D,EAAA,OAAO,aAAA,CAAc,IAAI,IAAI,CAAA;AAC/B;AAEO,SAAS,YAAY,IAAA,EAAgC;AAC1D,EAAA,OAAO,WAAA,CAAY,IAAI,IAAI,CAAA;AAC7B;AAEO,SAAS,WAAW,IAAA,EAAgC;AACzD,EAAA,OAAO,UAAA,CAAW,IAAI,IAAI,CAAA;AAC5B;AAEO,SAAS,mBAAmB,IAAA,EAAgC;AACjE,EAAA,OAAO,kBAAA,CAAmB,IAAI,IAAI,CAAA;AACpC;AAEO,SAAS,mBAAmB,IAAA,EAAgC;AACjE,EAAA,OAAO,kBAAA,CAAmB,IAAI,IAAI,CAAA;AACpC;AAEO,SAAS,gBAAgB,IAAA,EAAgC;AAC9D,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,WAAA;AACpC;AAEO,SAAS,sBAAsB,IAAA,EAAgC;AACpE,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,qBAAA;AACpC;AAEO,SAAS,gBAAgB,IAAA,EAAuB;AACrD,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,YAAA;AACpC;AAEO,SAAS,eAAe,IAAA,EAAuB;AACpD,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,WAAA;AACpC;AAEO,SAAS,iBAAiB,IAAA,EAAgC;AAC/D,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,gBAAA,IAAoB,KAAA;AACxD;AAEO,SAAS,gBAAgB,IAAA,EAAgC;AAC9D,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,eAAA,IAAmB,KAAA;AACvD","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/elements/guards.ts"],"names":[],"mappings":";;;AAGA,IAAM,UAAA,uBAAiB,GAAA,CAAqB;AAAA,EAC1C,MAAA;AAAA,EAAQ,UAAA;AAAA,EAAY,aAAA;AAAA,EAAe,YAAA;AAAA,EACnC,YAAA;AAAA,EAAc,kBAAA;AAAA,EAAoB,aAAA;AAAA,EAAe,UAAA;AAAA,EAAY;AAC/D,CAAC,CAAA;AAED,IAAM,aAAA,uBAAoB,GAAA,CAAqB;AAAA,EAC7C,kBAAA;AAAA,EAAoB,kBAAA;AAAA,EAAoB,iBAAA;AAAA,EACxC,mBAAA;AAAA,EAAqB;AACvB,CAAC,CAAA;AAED,IAAM,WAAA,uBAAkB,GAAA,CAAqB;AAAA,EAC3C,YAAA;AAAA,EAAc,UAAA;AAAA,EAAY,wBAAA;AAAA,EAC1B,wBAAA;AAAA,EAA0B;AAC5B,CAAC,CAAA;AAED,IAAM,UAAA,uBAAiB,GAAA,CAAqB;AAAA,EAC1C,YAAA;AAAA,EAAc,qBAAA;AAAA,EAAuB,WAAA;AAAA,EAAa,YAAA;AAAA,EAClD,WAAA;AAAA,EAAa;AACf,CAAC,CAAA;AAED,IAAM,kBAAA,uBAAyB,GAAA,CAAqB;AAAA,EAClD,cAAA;AAAA,EAAgB,iBAAA;AAAA,EAAmB;AACrC,CAAC,CAAA;AAED,IAAM,kBAAA,uBAAyB,GAAA,CAAqB;AAAA,EAClD,kBAAA;AAAA,EAAoB,iBAAA;AAAA,EAAmB;AACzC,CAAC,CAAA;AAEM,SAAS,WAAW,IAAA,EAAgC;AACzD,EAAA,OAAO,UAAA,CAAW,IAAI,IAAI,CAAA;AAC5B;AAEO,SAAS,cAAc,IAAA,EAAgC;AAC5D,EAAA,OAAO,aAAA,CAAc,IAAI,IAAI,CAAA;AAC/B;AAEO,SAAS,YAAY,IAAA,EAAgC;AAC1D,EAAA,OAAO,WAAA,CAAY,IAAI,IAAI,CAAA;AAC7B;AAEO,SAAS,WAAW,IAAA,EAAgC;AACzD,EAAA,OAAO,UAAA,CAAW,IAAI,IAAI,CAAA;AAC5B;AAEO,SAAS,mBAAmB,IAAA,EAAgC;AACjE,EAAA,OAAO,kBAAA,CAAmB,IAAI,IAAI,CAAA;AACpC;AAEO,SAAS,mBAAmB,IAAA,EAAgC;AACjE,EAAA,OAAO,kBAAA,CAAmB,IAAI,IAAI,CAAA;AACpC;AAEO,SAAS,gBAAgB,IAAA,EAAgC;AAC9D,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,WAAA;AACpC;AAEO,SAAS,sBAAsB,IAAA,EAAgC;AACpE,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,qBAAA;AACpC;AAEO,SAAS,gBAAgB,IAAA,EAAuB;AACrD,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,YAAA;AACpC;AAEO,SAAS,eAAe,IAAA,EAAuB;AACpD,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,WAAA;AACpC;AAEO,SAAS,iBAAiB,IAAA,EAAgC;AAC/D,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,gBAAA,IAAoB,KAAA;AACxD;AAEO,SAAS,gBAAgB,IAAA,EAAgC;AAC9D,EAAA,OAAO,oBAAA,CAAqB,IAAI,CAAA,CAAE,eAAA,IAAmB,KAAA;AACvD","file":"chunk-5GRCJ5X6.js","sourcesContent":["import { BPMN_ELEMENT_CATALOG } from \"./catalog\";\nimport type { BpmnElementType } from \"./types\";\n\nconst TASK_TYPES = new Set<BpmnElementType>([\n \"Task\", \"UserTask\", \"ServiceTask\", \"ScriptTask\",\n \"ManualTask\", \"BusinessRuleTask\", \"ReceiveTask\", \"SendTask\", \"CallActivity\",\n]);\n\nconst GATEWAY_TYPES = new Set<BpmnElementType>([\n \"ExclusiveGateway\", \"InclusiveGateway\", \"ParallelGateway\",\n \"EventBasedGateway\", \"ComplexGateway\",\n]);\n\nconst EVENT_TYPES = new Set<BpmnElementType>([\n \"StartEvent\", \"EndEvent\", \"IntermediateCatchEvent\",\n \"IntermediateThrowEvent\", \"BoundaryEvent\",\n]);\n\nconst DATA_TYPES = new Set<BpmnElementType>([\n \"DataObject\", \"DataObjectReference\", \"DataInput\", \"DataOutput\",\n \"DataStore\", \"DataStoreReference\",\n]);\n\nconst CONVERSATION_TYPES = new Set<BpmnElementType>([\n \"Conversation\", \"SubConversation\", \"CallConversation\",\n]);\n\nconst CHOREOGRAPHY_TYPES = new Set<BpmnElementType>([\n \"ChoreographyTask\", \"SubChoreography\", \"CallChoreography\",\n]);\n\nexport function isTaskType(type: BpmnElementType): boolean {\n return TASK_TYPES.has(type);\n}\n\nexport function isGatewayType(type: BpmnElementType): boolean {\n return GATEWAY_TYPES.has(type);\n}\n\nexport function isEventType(type: BpmnElementType): boolean {\n return EVENT_TYPES.has(type);\n}\n\nexport function isDataType(type: BpmnElementType): boolean {\n return DATA_TYPES.has(type);\n}\n\nexport function isConversationType(type: BpmnElementType): boolean {\n return CONVERSATION_TYPES.has(type);\n}\n\nexport function isChoreographyType(type: BpmnElementType): boolean {\n return CHOREOGRAPHY_TYPES.has(type);\n}\n\nexport function isContainerType(type: BpmnElementType): boolean {\n return BPMN_ELEMENT_CATALOG[type].isContainer;\n}\n\nexport function acceptsBoundaryEvents(type: BpmnElementType): boolean {\n return BPMN_ELEMENT_CATALOG[type].acceptsBoundaryEvents;\n}\n\nexport function getHandlePolicy(type: BpmnElementType) {\n return BPMN_ELEMENT_CATALOG[type].handlePolicy;\n}\n\nexport function getOrientation(type: BpmnElementType) {\n return BPMN_ELEMENT_CATALOG[type].orientation;\n}\n\nexport function supportsCollapse(type: BpmnElementType): boolean {\n return BPMN_ELEMENT_CATALOG[type].supportsCollapse ?? false;\n}\n\nexport function supportsMarkers(type: BpmnElementType): boolean {\n return BPMN_ELEMENT_CATALOG[type].supportsMarkers ?? false;\n}\n"]}
|
|
@@ -3,6 +3,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
3
3
|
// ─── Events ──────────────────────────────────────────────────────────────────
|
|
4
4
|
StartEvent: {
|
|
5
5
|
label: "Start Event",
|
|
6
|
+
icon: "Circle",
|
|
6
7
|
category: "event",
|
|
7
8
|
defaultWidth: 36,
|
|
8
9
|
defaultHeight: 36,
|
|
@@ -18,6 +19,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
18
19
|
},
|
|
19
20
|
EndEvent: {
|
|
20
21
|
label: "End Event",
|
|
22
|
+
icon: "CircleDot",
|
|
21
23
|
category: "event",
|
|
22
24
|
defaultWidth: 36,
|
|
23
25
|
defaultHeight: 36,
|
|
@@ -32,6 +34,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
32
34
|
},
|
|
33
35
|
IntermediateCatchEvent: {
|
|
34
36
|
label: "Intermediate Catch Event",
|
|
37
|
+
icon: "Clock",
|
|
35
38
|
category: "event",
|
|
36
39
|
defaultWidth: 36,
|
|
37
40
|
defaultHeight: 36,
|
|
@@ -45,6 +48,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
45
48
|
},
|
|
46
49
|
IntermediateThrowEvent: {
|
|
47
50
|
label: "Intermediate Throw Event",
|
|
51
|
+
icon: "Zap",
|
|
48
52
|
category: "event",
|
|
49
53
|
defaultWidth: 36,
|
|
50
54
|
defaultHeight: 36,
|
|
@@ -58,6 +62,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
58
62
|
},
|
|
59
63
|
BoundaryEvent: {
|
|
60
64
|
label: "Boundary Event",
|
|
65
|
+
icon: "AlertCircle",
|
|
61
66
|
category: "event",
|
|
62
67
|
defaultWidth: 36,
|
|
63
68
|
defaultHeight: 36,
|
|
@@ -73,6 +78,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
73
78
|
// ─── Tasks ───────────────────────────────────────────────────────────────────
|
|
74
79
|
Task: {
|
|
75
80
|
label: "Task",
|
|
81
|
+
icon: "Square",
|
|
76
82
|
category: "task",
|
|
77
83
|
defaultWidth: 120,
|
|
78
84
|
defaultHeight: 60,
|
|
@@ -86,6 +92,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
86
92
|
},
|
|
87
93
|
UserTask: {
|
|
88
94
|
label: "User Task",
|
|
95
|
+
icon: "User",
|
|
89
96
|
category: "task",
|
|
90
97
|
defaultWidth: 120,
|
|
91
98
|
defaultHeight: 60,
|
|
@@ -99,6 +106,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
99
106
|
},
|
|
100
107
|
ServiceTask: {
|
|
101
108
|
label: "Service Task",
|
|
109
|
+
icon: "Settings",
|
|
102
110
|
category: "task",
|
|
103
111
|
defaultWidth: 120,
|
|
104
112
|
defaultHeight: 60,
|
|
@@ -112,6 +120,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
112
120
|
},
|
|
113
121
|
ScriptTask: {
|
|
114
122
|
label: "Script Task",
|
|
123
|
+
icon: "FileCode",
|
|
115
124
|
category: "task",
|
|
116
125
|
defaultWidth: 120,
|
|
117
126
|
defaultHeight: 60,
|
|
@@ -125,6 +134,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
125
134
|
},
|
|
126
135
|
ManualTask: {
|
|
127
136
|
label: "Manual Task",
|
|
137
|
+
icon: "Hand",
|
|
128
138
|
category: "task",
|
|
129
139
|
defaultWidth: 120,
|
|
130
140
|
defaultHeight: 60,
|
|
@@ -138,6 +148,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
138
148
|
},
|
|
139
149
|
BusinessRuleTask: {
|
|
140
150
|
label: "Business Rule Task",
|
|
151
|
+
icon: "Scale",
|
|
141
152
|
category: "task",
|
|
142
153
|
defaultWidth: 120,
|
|
143
154
|
defaultHeight: 60,
|
|
@@ -151,6 +162,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
151
162
|
},
|
|
152
163
|
ReceiveTask: {
|
|
153
164
|
label: "Receive Task",
|
|
165
|
+
icon: "Mail",
|
|
154
166
|
category: "task",
|
|
155
167
|
defaultWidth: 120,
|
|
156
168
|
defaultHeight: 60,
|
|
@@ -164,6 +176,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
164
176
|
},
|
|
165
177
|
SendTask: {
|
|
166
178
|
label: "Send Task",
|
|
179
|
+
icon: "Send",
|
|
167
180
|
category: "task",
|
|
168
181
|
defaultWidth: 120,
|
|
169
182
|
defaultHeight: 60,
|
|
@@ -177,6 +190,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
177
190
|
},
|
|
178
191
|
CallActivity: {
|
|
179
192
|
label: "Call Activity",
|
|
193
|
+
icon: "ExternalLink",
|
|
180
194
|
category: "task",
|
|
181
195
|
defaultWidth: 120,
|
|
182
196
|
defaultHeight: 60,
|
|
@@ -191,6 +205,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
191
205
|
// ─── Gateways ────────────────────────────────────────────────────────────────
|
|
192
206
|
ExclusiveGateway: {
|
|
193
207
|
label: "Exclusive Gateway",
|
|
208
|
+
icon: "GitBranch",
|
|
194
209
|
category: "gateway",
|
|
195
210
|
defaultWidth: 50,
|
|
196
211
|
defaultHeight: 50,
|
|
@@ -203,6 +218,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
203
218
|
},
|
|
204
219
|
InclusiveGateway: {
|
|
205
220
|
label: "Inclusive Gateway",
|
|
221
|
+
icon: "GitMerge",
|
|
206
222
|
category: "gateway",
|
|
207
223
|
defaultWidth: 50,
|
|
208
224
|
defaultHeight: 50,
|
|
@@ -215,6 +231,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
215
231
|
},
|
|
216
232
|
ParallelGateway: {
|
|
217
233
|
label: "Parallel Gateway",
|
|
234
|
+
icon: "GitFork",
|
|
218
235
|
category: "gateway",
|
|
219
236
|
defaultWidth: 50,
|
|
220
237
|
defaultHeight: 50,
|
|
@@ -227,6 +244,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
227
244
|
},
|
|
228
245
|
EventBasedGateway: {
|
|
229
246
|
label: "Event-Based Gateway",
|
|
247
|
+
icon: "Radio",
|
|
230
248
|
category: "gateway",
|
|
231
249
|
defaultWidth: 50,
|
|
232
250
|
defaultHeight: 50,
|
|
@@ -240,6 +258,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
240
258
|
},
|
|
241
259
|
ComplexGateway: {
|
|
242
260
|
label: "Complex Gateway",
|
|
261
|
+
icon: "Asterisk",
|
|
243
262
|
category: "gateway",
|
|
244
263
|
defaultWidth: 50,
|
|
245
264
|
defaultHeight: 50,
|
|
@@ -253,6 +272,52 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
253
272
|
// ─── Containers ───────────────────────────────────────────────────────────────
|
|
254
273
|
SubProcess: {
|
|
255
274
|
label: "Sub-Process",
|
|
275
|
+
icon: "Layout",
|
|
276
|
+
category: "container",
|
|
277
|
+
defaultWidth: 350,
|
|
278
|
+
defaultHeight: 200,
|
|
279
|
+
handlePolicy: "all",
|
|
280
|
+
orientation: "horizontal",
|
|
281
|
+
isContainer: true,
|
|
282
|
+
acceptsBoundaryEvents: true,
|
|
283
|
+
supportsCollapse: true,
|
|
284
|
+
supportsMarkers: true,
|
|
285
|
+
canBeStart: false,
|
|
286
|
+
canBeEnd: false
|
|
287
|
+
},
|
|
288
|
+
Transaction: {
|
|
289
|
+
label: "Transaction",
|
|
290
|
+
icon: "CreditCard",
|
|
291
|
+
category: "container",
|
|
292
|
+
defaultWidth: 350,
|
|
293
|
+
defaultHeight: 200,
|
|
294
|
+
handlePolicy: "all",
|
|
295
|
+
orientation: "horizontal",
|
|
296
|
+
isContainer: true,
|
|
297
|
+
acceptsBoundaryEvents: true,
|
|
298
|
+
supportsCollapse: true,
|
|
299
|
+
supportsMarkers: true,
|
|
300
|
+
canBeStart: false,
|
|
301
|
+
canBeEnd: false
|
|
302
|
+
},
|
|
303
|
+
EventSubProcess: {
|
|
304
|
+
label: "Event Sub-Process",
|
|
305
|
+
icon: "Workflow",
|
|
306
|
+
category: "container",
|
|
307
|
+
defaultWidth: 350,
|
|
308
|
+
defaultHeight: 200,
|
|
309
|
+
handlePolicy: "all",
|
|
310
|
+
orientation: "horizontal",
|
|
311
|
+
isContainer: true,
|
|
312
|
+
acceptsBoundaryEvents: false,
|
|
313
|
+
supportsCollapse: true,
|
|
314
|
+
supportsMarkers: true,
|
|
315
|
+
canBeStart: false,
|
|
316
|
+
canBeEnd: false
|
|
317
|
+
},
|
|
318
|
+
AdHocSubProcess: {
|
|
319
|
+
label: "Ad-Hoc Sub-Process",
|
|
320
|
+
icon: "Shuffle",
|
|
256
321
|
category: "container",
|
|
257
322
|
defaultWidth: 350,
|
|
258
323
|
defaultHeight: 200,
|
|
@@ -267,6 +332,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
267
332
|
},
|
|
268
333
|
Pool: {
|
|
269
334
|
label: "Pool",
|
|
335
|
+
icon: "Columns",
|
|
270
336
|
category: "container",
|
|
271
337
|
defaultWidth: 600,
|
|
272
338
|
defaultHeight: 200,
|
|
@@ -281,6 +347,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
281
347
|
},
|
|
282
348
|
Lane: {
|
|
283
349
|
label: "Lane",
|
|
350
|
+
icon: "AlignJustify",
|
|
284
351
|
category: "container",
|
|
285
352
|
defaultWidth: 600,
|
|
286
353
|
defaultHeight: 120,
|
|
@@ -296,6 +363,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
296
363
|
// ─── Artifacts ────────────────────────────────────────────────────────────────
|
|
297
364
|
Annotation: {
|
|
298
365
|
label: "Text Annotation",
|
|
366
|
+
icon: "StickyNote",
|
|
299
367
|
category: "artifact",
|
|
300
368
|
defaultWidth: 100,
|
|
301
369
|
defaultHeight: 60,
|
|
@@ -310,6 +378,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
310
378
|
},
|
|
311
379
|
Group: {
|
|
312
380
|
label: "Group",
|
|
381
|
+
icon: "Group",
|
|
313
382
|
category: "artifact",
|
|
314
383
|
defaultWidth: 300,
|
|
315
384
|
defaultHeight: 200,
|
|
@@ -325,6 +394,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
325
394
|
// ─── Data (BPMN 2.0 §10.3) ───────────────────────────────────────────────────
|
|
326
395
|
DataObject: {
|
|
327
396
|
label: "Data Object",
|
|
397
|
+
icon: "File",
|
|
328
398
|
category: "data",
|
|
329
399
|
defaultWidth: 36,
|
|
330
400
|
defaultHeight: 50,
|
|
@@ -339,6 +409,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
339
409
|
},
|
|
340
410
|
DataObjectReference: {
|
|
341
411
|
label: "Data Object Reference",
|
|
412
|
+
icon: "FileSymlink",
|
|
342
413
|
category: "data",
|
|
343
414
|
defaultWidth: 36,
|
|
344
415
|
defaultHeight: 50,
|
|
@@ -353,6 +424,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
353
424
|
},
|
|
354
425
|
DataInput: {
|
|
355
426
|
label: "Data Input",
|
|
427
|
+
icon: "FileInput",
|
|
356
428
|
category: "data",
|
|
357
429
|
defaultWidth: 36,
|
|
358
430
|
defaultHeight: 50,
|
|
@@ -366,6 +438,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
366
438
|
},
|
|
367
439
|
DataOutput: {
|
|
368
440
|
label: "Data Output",
|
|
441
|
+
icon: "FileOutput",
|
|
369
442
|
category: "data",
|
|
370
443
|
defaultWidth: 36,
|
|
371
444
|
defaultHeight: 50,
|
|
@@ -379,6 +452,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
379
452
|
},
|
|
380
453
|
DataStore: {
|
|
381
454
|
label: "Data Store",
|
|
455
|
+
icon: "Database",
|
|
382
456
|
category: "data",
|
|
383
457
|
defaultWidth: 50,
|
|
384
458
|
defaultHeight: 50,
|
|
@@ -393,6 +467,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
393
467
|
},
|
|
394
468
|
DataStoreReference: {
|
|
395
469
|
label: "Data Store Reference",
|
|
470
|
+
icon: "DatabaseZap",
|
|
396
471
|
category: "data",
|
|
397
472
|
defaultWidth: 50,
|
|
398
473
|
defaultHeight: 50,
|
|
@@ -408,6 +483,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
408
483
|
// ─── Conversation (BPMN 2.0 §12) ─────────────────────────────────────────────
|
|
409
484
|
Conversation: {
|
|
410
485
|
label: "Conversation",
|
|
486
|
+
icon: "MessageCircle",
|
|
411
487
|
category: "conversation",
|
|
412
488
|
defaultWidth: 60,
|
|
413
489
|
defaultHeight: 52,
|
|
@@ -420,6 +496,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
420
496
|
},
|
|
421
497
|
SubConversation: {
|
|
422
498
|
label: "Sub-Conversation",
|
|
499
|
+
icon: "MessagesSquare",
|
|
423
500
|
category: "conversation",
|
|
424
501
|
defaultWidth: 60,
|
|
425
502
|
defaultHeight: 52,
|
|
@@ -433,6 +510,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
433
510
|
},
|
|
434
511
|
CallConversation: {
|
|
435
512
|
label: "Call Conversation",
|
|
513
|
+
icon: "PhoneCall",
|
|
436
514
|
category: "conversation",
|
|
437
515
|
defaultWidth: 60,
|
|
438
516
|
defaultHeight: 52,
|
|
@@ -446,6 +524,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
446
524
|
// ─── Choreography (BPMN 2.0 §11) ─────────────────────────────────────────────
|
|
447
525
|
ChoreographyTask: {
|
|
448
526
|
label: "Choreography Task",
|
|
527
|
+
icon: "ArrowLeftRight",
|
|
449
528
|
category: "choreography",
|
|
450
529
|
defaultWidth: 120,
|
|
451
530
|
defaultHeight: 80,
|
|
@@ -458,6 +537,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
458
537
|
},
|
|
459
538
|
SubChoreography: {
|
|
460
539
|
label: "Sub-Choreography",
|
|
540
|
+
icon: "BoxSelect",
|
|
461
541
|
category: "choreography",
|
|
462
542
|
defaultWidth: 120,
|
|
463
543
|
defaultHeight: 80,
|
|
@@ -471,6 +551,7 @@ var BPMN_ELEMENT_CATALOG = {
|
|
|
471
551
|
},
|
|
472
552
|
CallChoreography: {
|
|
473
553
|
label: "Call Choreography",
|
|
554
|
+
icon: "Phone",
|
|
474
555
|
category: "choreography",
|
|
475
556
|
defaultWidth: 120,
|
|
476
557
|
defaultHeight: 80,
|
|
@@ -487,5 +568,5 @@ function getElementMeta(type) {
|
|
|
487
568
|
}
|
|
488
569
|
|
|
489
570
|
export { BPMN_ELEMENT_CATALOG, getElementMeta };
|
|
490
|
-
//# sourceMappingURL=chunk-
|
|
491
|
-
//# sourceMappingURL=chunk-
|
|
571
|
+
//# sourceMappingURL=chunk-DNR5WBQH.js.map
|
|
572
|
+
//# sourceMappingURL=chunk-DNR5WBQH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/elements/catalog.ts"],"names":[],"mappings":"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","file":"chunk-DNR5WBQH.js","sourcesContent":["import type { BpmnElementType, BpmnElementMeta } from \"./types\";\n\nexport const BPMN_ELEMENT_CATALOG: Record<BpmnElementType, BpmnElementMeta> = {\n // ─── Events ──────────────────────────────────────────────────────────────────\n StartEvent: {\n label: \"Start Event\",\n icon: \"Circle\",\n category: \"event\",\n defaultWidth: 36, defaultHeight: 36,\n handlePolicy: \"source\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n eventSemantics: \"start\",\n canBeStart: true, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 1,\n },\n EndEvent: {\n label: \"End Event\",\n icon: \"CircleDot\",\n category: \"event\",\n defaultWidth: 36, defaultHeight: 36,\n handlePolicy: \"target\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n eventSemantics: \"end\",\n canBeStart: false, canBeEnd: true,\n maxOutgoing: 0,\n },\n IntermediateCatchEvent: {\n label: \"Intermediate Catch Event\",\n icon: \"Clock\",\n category: \"event\",\n defaultWidth: 36, defaultHeight: 36,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n eventSemantics: \"intermediateCatch\",\n canBeStart: false, canBeEnd: false,\n },\n IntermediateThrowEvent: {\n label: \"Intermediate Throw Event\",\n icon: \"Zap\",\n category: \"event\",\n defaultWidth: 36, defaultHeight: 36,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n eventSemantics: \"intermediateThrow\",\n canBeStart: false, canBeEnd: false,\n },\n BoundaryEvent: {\n label: \"Boundary Event\",\n icon: \"AlertCircle\",\n category: \"event\",\n defaultWidth: 36, defaultHeight: 36,\n handlePolicy: \"source\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n eventSemantics: \"boundary\",\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0,\n },\n\n // ─── Tasks ───────────────────────────────────────────────────────────────────\n Task: {\n label: \"Task\",\n icon: \"Square\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n UserTask: {\n label: \"User Task\",\n icon: \"User\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n ServiceTask: {\n label: \"Service Task\",\n icon: \"Settings\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n ScriptTask: {\n label: \"Script Task\",\n icon: \"FileCode\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n ManualTask: {\n label: \"Manual Task\",\n icon: \"Hand\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n BusinessRuleTask: {\n label: \"Business Rule Task\",\n icon: \"Scale\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n ReceiveTask: {\n label: \"Receive Task\",\n icon: \"Mail\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n SendTask: {\n label: \"Send Task\",\n icon: \"Send\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n CallActivity: {\n label: \"Call Activity\",\n icon: \"ExternalLink\",\n category: \"task\",\n defaultWidth: 120, defaultHeight: 60,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: true,\n supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n\n // ─── Gateways ────────────────────────────────────────────────────────────────\n ExclusiveGateway: {\n label: \"Exclusive Gateway\",\n icon: \"GitBranch\",\n category: \"gateway\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n InclusiveGateway: {\n label: \"Inclusive Gateway\",\n icon: \"GitMerge\",\n category: \"gateway\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n ParallelGateway: {\n label: \"Parallel Gateway\",\n icon: \"GitFork\",\n category: \"gateway\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n EventBasedGateway: {\n label: \"Event-Based Gateway\",\n icon: \"Radio\",\n category: \"gateway\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 1,\n },\n ComplexGateway: {\n label: \"Complex Gateway\",\n icon: \"Asterisk\",\n category: \"gateway\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n\n // ─── Containers ───────────────────────────────────────────────────────────────\n SubProcess: {\n label: \"Sub-Process\",\n icon: \"Layout\",\n category: \"container\",\n defaultWidth: 350, defaultHeight: 200,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: true,\n supportsCollapse: true, supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n Transaction: {\n label: \"Transaction\",\n icon: \"CreditCard\",\n category: \"container\",\n defaultWidth: 350, defaultHeight: 200,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: true,\n supportsCollapse: true, supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n EventSubProcess: {\n label: \"Event Sub-Process\",\n icon: \"Workflow\",\n category: \"container\",\n defaultWidth: 350, defaultHeight: 200,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: false,\n supportsCollapse: true, supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n AdHocSubProcess: {\n label: \"Ad-Hoc Sub-Process\",\n icon: \"Shuffle\",\n category: \"container\",\n defaultWidth: 350, defaultHeight: 200,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: true,\n supportsCollapse: true, supportsMarkers: true,\n canBeStart: false, canBeEnd: false,\n },\n Pool: {\n label: \"Pool\",\n icon: \"Columns\",\n category: \"container\",\n defaultWidth: 600, defaultHeight: 200,\n handlePolicy: \"none\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n Lane: {\n label: \"Lane\",\n icon: \"AlignJustify\",\n category: \"container\",\n defaultWidth: 600, defaultHeight: 120,\n handlePolicy: \"none\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n\n // ─── Artifacts ────────────────────────────────────────────────────────────────\n Annotation: {\n label: \"Text Annotation\",\n icon: \"StickyNote\",\n category: \"artifact\",\n defaultWidth: 100, defaultHeight: 60,\n handlePolicy: \"none\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n Group: {\n label: \"Group\",\n icon: \"Group\",\n category: \"artifact\",\n defaultWidth: 300, defaultHeight: 200,\n handlePolicy: \"none\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n\n // ─── Data (BPMN 2.0 §10.3) ───────────────────────────────────────────────────\n DataObject: {\n label: \"Data Object\",\n icon: \"File\",\n category: \"data\",\n defaultWidth: 36, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n DataObjectReference: {\n label: \"Data Object Reference\",\n icon: \"FileSymlink\",\n category: \"data\",\n defaultWidth: 36, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n DataInput: {\n label: \"Data Input\",\n icon: \"FileInput\",\n category: \"data\",\n defaultWidth: 36, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0,\n },\n DataOutput: {\n label: \"Data Output\",\n icon: \"FileOutput\",\n category: \"data\",\n defaultWidth: 36, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxOutgoing: 0,\n },\n DataStore: {\n label: \"Data Store\",\n icon: \"Database\",\n category: \"data\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n DataStoreReference: {\n label: \"Data Store Reference\",\n icon: \"DatabaseZap\",\n category: \"data\",\n defaultWidth: 50, defaultHeight: 50,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n maxIncoming: 0, maxOutgoing: 0,\n },\n\n // ─── Conversation (BPMN 2.0 §12) ─────────────────────────────────────────────\n Conversation: {\n label: \"Conversation\",\n icon: \"MessageCircle\",\n category: \"conversation\",\n defaultWidth: 60, defaultHeight: 52,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n SubConversation: {\n label: \"Sub-Conversation\",\n icon: \"MessagesSquare\",\n category: \"conversation\",\n defaultWidth: 60, defaultHeight: 52,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: true, acceptsBoundaryEvents: false,\n supportsCollapse: true,\n canBeStart: false, canBeEnd: false,\n },\n CallConversation: {\n label: \"Call Conversation\",\n icon: \"PhoneCall\",\n category: \"conversation\",\n defaultWidth: 60, defaultHeight: 52,\n handlePolicy: \"all\", orientation: \"free\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n\n // ─── Choreography (BPMN 2.0 §11) ─────────────────────────────────────────────\n ChoreographyTask: {\n label: \"Choreography Task\",\n icon: \"ArrowLeftRight\",\n category: \"choreography\",\n defaultWidth: 120, defaultHeight: 80,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n SubChoreography: {\n label: \"Sub-Choreography\",\n icon: \"BoxSelect\",\n category: \"choreography\",\n defaultWidth: 120, defaultHeight: 80,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: true, acceptsBoundaryEvents: false,\n supportsCollapse: true,\n canBeStart: false, canBeEnd: false,\n },\n CallChoreography: {\n label: \"Call Choreography\",\n icon: \"Phone\",\n category: \"choreography\",\n defaultWidth: 120, defaultHeight: 80,\n handlePolicy: \"all\", orientation: \"horizontal\",\n isContainer: false, acceptsBoundaryEvents: false,\n canBeStart: false, canBeEnd: false,\n },\n};\n\nexport function getElementMeta(type: BpmnElementType): BpmnElementMeta {\n return BPMN_ELEMENT_CATALOG[type];\n}\n"]}
|