bpmnlint
Advanced tools
Comparing version 8.3.1 to 8.3.2
{ | ||
"name": "bpmnlint", | ||
"description": "Validate your BPMN diagrams based on configurable lint rules", | ||
"version": "8.3.1", | ||
"version": "8.3.2", | ||
"main": "lib/index.js", | ||
@@ -53,3 +53,3 @@ "keywords": [ | ||
"devDependencies": { | ||
"@bpmn-io/bpmnlint-generate-docs-images": "^0.3.2", | ||
"@bpmn-io/bpmnlint-generate-docs-images": "^0.4.0", | ||
"chai": "^4.3.4", | ||
@@ -56,0 +56,0 @@ "eslint": "^8.42.0", |
@@ -12,6 +12,26 @@ const { | ||
function isLinkEvent(node) { | ||
const eventDefinitions = node.eventDefinitions || []; | ||
return eventDefinitions.length && eventDefinitions.every( | ||
definition => is(definition, 'bpmn:LinkEventDefinition') | ||
); | ||
} | ||
function isImplicitEnd(node) { | ||
const outgoing = node.outgoing || []; | ||
return !is(node, 'bpmn:EndEvent') && outgoing.length === 0; | ||
if (is(node, 'bpmn:SubProcess') && node.triggeredByEvent) { | ||
return false; | ||
} | ||
if (is(node, 'bpmn:IntermediateThrowEvent') && isLinkEvent(node)) { | ||
return false; | ||
} | ||
if (is(node, 'bpmn:EndEvent')) { | ||
return false; | ||
} | ||
return outgoing.length === 0; | ||
} | ||
@@ -18,0 +38,0 @@ |
@@ -12,6 +12,26 @@ const { | ||
function isLinkEvent(node) { | ||
const eventDefinitions = node.eventDefinitions || []; | ||
return eventDefinitions.length && eventDefinitions.every( | ||
definition => is(definition, 'bpmn:LinkEventDefinition') | ||
); | ||
} | ||
function isImplicitStart(node) { | ||
const incoming = node.incoming || []; | ||
return !is(node, 'bpmn:StartEvent') && incoming.length === 0; | ||
if (is(node, 'bpmn:SubProcess') && node.triggeredByEvent) { | ||
return false; | ||
} | ||
if (is(node, 'bpmn:IntermediateCatchEvent') && isLinkEvent(node)) { | ||
return false; | ||
} | ||
if (isAny(node, [ 'bpmn:StartEvent', 'bpmn:BoundaryEvent' ])) { | ||
return false; | ||
} | ||
return incoming.length === 0; | ||
} | ||
@@ -18,0 +38,0 @@ |
56990
1809