bpmnlint-plugin-camunda-compat 1.3.2 → 2.0.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.
Files changed (33) hide show
  1. package/index.js +42 -1
  2. package/package.json +2 -2
  3. package/rules/{called-element.js → camunda-cloud/called-element.js} +3 -3
  4. package/rules/{collapsed-subprocess.js → camunda-cloud/collapsed-subprocess.js} +3 -3
  5. package/rules/{duplicate-task-headers.js → camunda-cloud/duplicate-task-headers.js} +3 -3
  6. package/rules/{element-type → camunda-cloud/element-type}/index.js +5 -5
  7. package/rules/{error-reference.js → camunda-cloud/error-reference.js} +4 -4
  8. package/rules/{escalation-reference.js → camunda-cloud/escalation-reference.js} +3 -3
  9. package/rules/{event-based-gateway-target.js → camunda-cloud/event-based-gateway-target.js} +3 -3
  10. package/rules/{executable-process.js → camunda-cloud/executable-process.js} +2 -2
  11. package/rules/{feel.js → camunda-cloud/feel.js} +3 -3
  12. package/rules/{implementation → camunda-cloud/implementation}/index.js +5 -5
  13. package/rules/{inclusive-gateway.js → camunda-cloud/inclusive-gateway.js} +3 -3
  14. package/rules/{loop-characteristics.js → camunda-cloud/loop-characteristics.js} +3 -3
  15. package/rules/{message-reference.js → camunda-cloud/message-reference.js} +3 -3
  16. package/rules/{no-candidate-users.js → camunda-cloud/no-candidate-users.js} +3 -3
  17. package/rules/{no-expression.js → camunda-cloud/no-expression.js} +3 -3
  18. package/rules/camunda-cloud/no-multiple-none-start-events.js +41 -0
  19. package/rules/{no-signal-event-sub-process.js → camunda-cloud/no-signal-event-sub-process.js} +4 -4
  20. package/rules/{no-task-schedule.js → camunda-cloud/no-task-schedule.js} +3 -3
  21. package/rules/{no-template.js → camunda-cloud/no-template.js} +3 -3
  22. package/rules/{no-zeebe-properties.js → camunda-cloud/no-zeebe-properties.js} +3 -3
  23. package/rules/{sequence-flow-condition.js → camunda-cloud/sequence-flow-condition.js} +3 -3
  24. package/rules/{signal-reference.js → camunda-cloud/signal-reference.js} +3 -3
  25. package/rules/{subscription.js → camunda-cloud/subscription.js} +3 -3
  26. package/rules/{task-schedule.js → camunda-cloud/task-schedule.js} +4 -4
  27. package/rules/{timer → camunda-cloud/timer}/index.js +6 -6
  28. package/rules/{user-task-form.js → camunda-cloud/user-task-form.js} +3 -3
  29. package/rules/{history-time-to-live.js → camunda-platform/history-time-to-live.js} +3 -3
  30. package/rules/utils/error-types.js +1 -0
  31. /package/rules/{element-type → camunda-cloud/element-type}/config.js +0 -0
  32. /package/rules/{implementation → camunda-cloud/implementation}/config.js +0 -0
  33. /package/rules/{timer → camunda-cloud/timer}/config.js +0 -0
package/index.js CHANGED
@@ -13,6 +13,7 @@ const camundaCloud10Rules = withConfig({
13
13
  'message-reference': 'error',
14
14
  'no-candidate-users': 'error',
15
15
  'no-expression': 'error',
16
+ 'no-multiple-none-start-events': 'error',
16
17
  'no-task-schedule': 'error',
17
18
  'no-template': 'error',
18
19
  'no-zeebe-properties': 'error',
@@ -55,7 +56,15 @@ const camundaCloud83Rules = withConfig({
55
56
 
56
57
  const camundaPlatform719Rules = withConfig({
57
58
  'history-time-to-live': 'error'
58
- }, { platform: 'camunda-platform', version: '7.19' });
59
+ }, {
60
+ platform: 'camunda-platform',
61
+ version: '7.19'
62
+ });
63
+
64
+ const camundaPlatform720Rules = withConfig(camundaPlatform719Rules, {
65
+ platform: 'camunda-platform',
66
+ version: '7.20'
67
+ });
59
68
 
60
69
  module.exports = {
61
70
  configs: {
@@ -85,7 +94,39 @@ module.exports = {
85
94
  },
86
95
  'camunda-platform-7-19': {
87
96
  rules: camundaPlatform719Rules
97
+ },
98
+ 'camunda-platform-7-20': {
99
+ rules: camundaPlatform720Rules
88
100
  }
101
+ },
102
+ rules: {
103
+ 'element-type': './rules/camunda-cloud/element-type',
104
+ 'called-element': './rules/camunda-cloud/called-element',
105
+ 'collapsed-subprocess': './rules/camunda-cloud/collapsed-subprocess',
106
+ 'duplicate-task-headers': './rules/camunda-cloud/duplicate-task-headers',
107
+ 'error-reference': './rules/camunda-cloud/error-reference',
108
+ 'escalation-reference': './rules/camunda-cloud/escalation-reference',
109
+ 'event-based-gateway-target': './rules/camunda-cloud/event-based-gateway-target',
110
+ 'executable-process': './rules/camunda-cloud/executable-process',
111
+ 'feel': './rules/camunda-cloud/feel',
112
+ 'history-time-to-live': './rules/camunda-platform/history-time-to-live',
113
+ 'implementation': './rules/camunda-cloud/implementation',
114
+ 'inclusive-gateway': './rules/camunda-cloud/inclusive-gateway',
115
+ 'loop-characteristics': './rules/camunda-cloud/loop-characteristics',
116
+ 'message-reference': './rules/camunda-cloud/message-reference',
117
+ 'no-candidate-users': './rules/camunda-cloud/no-candidate-users',
118
+ 'no-expression': './rules/camunda-cloud/no-expression',
119
+ 'no-multiple-none-start-events': './rules/camunda-cloud/no-multiple-none-start-events',
120
+ 'no-signal-event-sub-process': './rules/camunda-cloud/no-signal-event-sub-process',
121
+ 'no-task-schedule': './rules/camunda-cloud/no-task-schedule',
122
+ 'no-template': './rules/camunda-cloud/no-template',
123
+ 'no-zeebe-properties': './rules/camunda-cloud/no-zeebe-properties',
124
+ 'sequence-flow-condition': './rules/camunda-cloud/sequence-flow-condition',
125
+ 'signal-reference': './rules/camunda-cloud/signal-reference',
126
+ 'subscription': './rules/camunda-cloud/subscription',
127
+ 'task-schedule': './rules/camunda-cloud/task-schedule',
128
+ 'timer': './rules/camunda-cloud/timer',
129
+ 'user-task-form': './rules/camunda-cloud/user-task-form'
89
130
  }
90
131
  };
91
132
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bpmnlint-plugin-camunda-compat",
3
- "version": "1.3.2",
3
+ "version": "2.0.0",
4
4
  "description": "A bpmnlint plug-in for Camunda Platform compatibility",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -25,7 +25,7 @@
25
25
  "license": "MIT",
26
26
  "devDependencies": {
27
27
  "bpmn-moddle": "^7.1.3",
28
- "bpmnlint": "^7.8.0",
28
+ "bpmnlint": "^9.0.0",
29
29
  "chai": "^4.3.6",
30
30
  "eslint": "^8.23.0",
31
31
  "eslint-plugin-bpmn-io": "^0.14.1",
@@ -4,11 +4,11 @@ const {
4
4
  findExtensionElement,
5
5
  hasExtensionElement,
6
6
  hasProperties
7
- } = require('./utils/element');
7
+ } = require('../utils/element');
8
8
 
9
- const { reportErrors } = require('./utils/reporter');
9
+ const { reportErrors } = require('../utils/reporter');
10
10
 
11
- const { skipInNonExecutableProcess } = require('./utils/rule');
11
+ const { skipInNonExecutableProcess } = require('../utils/rule');
12
12
 
13
13
  module.exports = skipInNonExecutableProcess(function() {
14
14
  function check(node, reporter) {
@@ -1,10 +1,10 @@
1
1
  const { is } = require('bpmnlint-utils');
2
2
 
3
- const { ERROR_TYPES } = require('./utils/element');
3
+ const { ERROR_TYPES } = require('../utils/element');
4
4
 
5
- const { reportErrors } = require('./utils/reporter');
5
+ const { reportErrors } = require('../utils/reporter');
6
6
 
7
- const { skipInNonExecutableProcess } = require('./utils/rule');
7
+ const { skipInNonExecutableProcess } = require('../utils/rule');
8
8
 
9
9
  module.exports = skipInNonExecutableProcess(function() {
10
10
  function check(di, reporter) {
@@ -7,11 +7,11 @@ const {
7
7
  findExtensionElement,
8
8
  getMessageEventDefinition,
9
9
  hasDuplicatedPropertyValues
10
- } = require('./utils/element');
10
+ } = require('../utils/element');
11
11
 
12
- const { reportErrors } = require('./utils/reporter');
12
+ const { reportErrors } = require('../utils/reporter');
13
13
 
14
- const { skipInNonExecutableProcess } = require('./utils/rule');
14
+ const { skipInNonExecutableProcess } = require('../utils/rule');
15
15
 
16
16
  module.exports = skipInNonExecutableProcess(function() {
17
17
  function check(node, reporter) {
@@ -4,15 +4,15 @@ const { isAny } = require('bpmnlint-utils');
4
4
 
5
5
  const config = require('./config');
6
6
 
7
- const { greaterOrEqual } = require('../utils/version');
7
+ const { greaterOrEqual } = require('../../utils/version');
8
8
 
9
- const { getEventDefinition } = require('../utils/element');
9
+ const { getEventDefinition } = require('../../utils/element');
10
10
 
11
- const { ERROR_TYPES } = require('../utils/error-types');
11
+ const { ERROR_TYPES } = require('../../utils/error-types');
12
12
 
13
- const { reportErrors } = require('../utils/reporter');
13
+ const { reportErrors } = require('../../utils/reporter');
14
14
 
15
- const { skipInNonExecutableProcess } = require('../utils/rule');
15
+ const { skipInNonExecutableProcess } = require('../../utils/rule');
16
16
 
17
17
  module.exports = skipInNonExecutableProcess(function({ version }) {
18
18
  function check(node, reporter) {
@@ -6,13 +6,13 @@ const {
6
6
  const {
7
7
  getEventDefinition,
8
8
  hasProperties
9
- } = require('./utils/element');
9
+ } = require('../utils/element');
10
10
 
11
- const { reportErrors } = require('./utils/reporter');
11
+ const { reportErrors } = require('../utils/reporter');
12
12
 
13
- const { skipInNonExecutableProcess } = require('./utils/rule');
13
+ const { skipInNonExecutableProcess } = require('../utils/rule');
14
14
 
15
- const { greaterOrEqual } = require('./utils/version');
15
+ const { greaterOrEqual } = require('../utils/version');
16
16
 
17
17
  const noErrorRefAllowedVersion = '8.2';
18
18
 
@@ -6,11 +6,11 @@ const {
6
6
  const {
7
7
  getEventDefinition,
8
8
  hasProperties
9
- } = require('./utils/element');
9
+ } = require('../utils/element');
10
10
 
11
- const { reportErrors } = require('./utils/reporter');
11
+ const { reportErrors } = require('../utils/reporter');
12
12
 
13
- const { skipInNonExecutableProcess } = require('./utils/rule');
13
+ const { skipInNonExecutableProcess } = require('../utils/rule');
14
14
 
15
15
  module.exports = skipInNonExecutableProcess(function() {
16
16
  function check(node, reporter) {
@@ -1,10 +1,10 @@
1
1
  const { is } = require('bpmnlint-utils');
2
2
 
3
- const { ERROR_TYPES } = require('./utils/element');
3
+ const { ERROR_TYPES } = require('../utils/element');
4
4
 
5
- const { reportErrors } = require('./utils/reporter');
5
+ const { reportErrors } = require('../utils/reporter');
6
6
 
7
- const { skipInNonExecutableProcess } = require('./utils/rule');
7
+ const { skipInNonExecutableProcess } = require('../utils/rule');
8
8
 
9
9
  module.exports = skipInNonExecutableProcess(function() {
10
10
  function check(node, reporter) {
@@ -1,8 +1,8 @@
1
1
  const { is } = require('bpmnlint-utils');
2
2
 
3
- const { hasProperties } = require('./utils/element');
3
+ const { hasProperties } = require('../utils/element');
4
4
 
5
- const { reportErrors } = require('./utils/reporter');
5
+ const { reportErrors } = require('../utils/reporter');
6
6
 
7
7
  module.exports = function() {
8
8
  function check(node, reporter) {
@@ -6,11 +6,11 @@ const { lintExpression } = require('@bpmn-io/feel-lint');
6
6
 
7
7
  const { getPath } = require('@bpmn-io/moddle-utils');
8
8
 
9
- const { reportErrors } = require('./utils/reporter');
9
+ const { reportErrors } = require('../utils/reporter');
10
10
 
11
- const { ERROR_TYPES } = require('./utils/error-types');
11
+ const { ERROR_TYPES } = require('../utils/error-types');
12
12
 
13
- const { skipInNonExecutableProcess } = require('./utils/rule');
13
+ const { skipInNonExecutableProcess } = require('../utils/rule');
14
14
 
15
15
  module.exports = skipInNonExecutableProcess(function() {
16
16
  function check(node, reporter) {
@@ -6,20 +6,20 @@ const { isString } = require('min-dash');
6
6
 
7
7
  const config = require('./config');
8
8
 
9
- const { greaterOrEqual } = require('../utils/version');
9
+ const { greaterOrEqual } = require('../../utils/version');
10
10
 
11
11
  const {
12
12
  findExtensionElement,
13
13
  getEventDefinition,
14
14
  hasExtensionElement,
15
15
  hasProperties
16
- } = require('../utils/element');
16
+ } = require('../../utils/element');
17
17
 
18
- const { reportErrors } = require('../utils/reporter');
18
+ const { reportErrors } = require('../../utils/reporter');
19
19
 
20
- const { ERROR_TYPES } = require('../utils/error-types');
20
+ const { ERROR_TYPES } = require('../../utils/error-types');
21
21
 
22
- const { skipInNonExecutableProcess } = require('../utils/rule');
22
+ const { skipInNonExecutableProcess } = require('../../utils/rule');
23
23
 
24
24
  module.exports = skipInNonExecutableProcess(function({ version }) {
25
25
  function check(node, reporter) {
@@ -1,10 +1,10 @@
1
1
  const { is } = require('bpmnlint-utils');
2
2
 
3
- const { ERROR_TYPES } = require('./utils/element');
3
+ const { ERROR_TYPES } = require('../utils/element');
4
4
 
5
- const { reportErrors } = require('./utils/reporter');
5
+ const { reportErrors } = require('../utils/reporter');
6
6
 
7
- const { skipInNonExecutableProcess } = require('./utils/rule');
7
+ const { skipInNonExecutableProcess } = require('../utils/rule');
8
8
 
9
9
  module.exports = skipInNonExecutableProcess(function() {
10
10
  function check(node, reporter) {
@@ -4,11 +4,11 @@ const {
4
4
  findExtensionElement,
5
5
  hasProperties,
6
6
  hasExtensionElement
7
- } = require('./utils/element');
7
+ } = require('../utils/element');
8
8
 
9
- const { reportErrors } = require('./utils/reporter');
9
+ const { reportErrors } = require('../utils/reporter');
10
10
 
11
- const { skipInNonExecutableProcess } = require('./utils/rule');
11
+ const { skipInNonExecutableProcess } = require('../utils/rule');
12
12
 
13
13
  module.exports = skipInNonExecutableProcess(function() {
14
14
  function check(node, reporter) {
@@ -6,11 +6,11 @@ const {
6
6
  const {
7
7
  getEventDefinition,
8
8
  hasProperties
9
- } = require('./utils/element');
9
+ } = require('../utils/element');
10
10
 
11
- const { reportErrors } = require('./utils/reporter');
11
+ const { reportErrors } = require('../utils/reporter');
12
12
 
13
- const { skipInNonExecutableProcess } = require('./utils/rule');
13
+ const { skipInNonExecutableProcess } = require('../utils/rule');
14
14
 
15
15
  module.exports = skipInNonExecutableProcess(function() {
16
16
  function check(node, reporter) {
@@ -3,11 +3,11 @@ const { is } = require('bpmnlint-utils');
3
3
  const {
4
4
  findExtensionElement,
5
5
  hasProperties
6
- } = require('./utils/element');
6
+ } = require('../utils/element');
7
7
 
8
- const { reportErrors } = require('./utils/reporter');
8
+ const { reportErrors } = require('../utils/reporter');
9
9
 
10
- const { skipInNonExecutableProcess } = require('./utils/rule');
10
+ const { skipInNonExecutableProcess } = require('../utils/rule');
11
11
 
12
12
  module.exports = skipInNonExecutableProcess(function() {
13
13
  function check(node, reporter) {
@@ -7,11 +7,11 @@ const { getPath } = require('@bpmn-io/moddle-utils');
7
7
  const {
8
8
  ERROR_TYPES,
9
9
  getEventDefinition
10
- } = require('./utils/element');
10
+ } = require('../utils/element');
11
11
 
12
- const { reportErrors } = require('./utils/reporter');
12
+ const { reportErrors } = require('../utils/reporter');
13
13
 
14
- const { skipInNonExecutableProcess } = require('./utils/rule');
14
+ const { skipInNonExecutableProcess } = require('../utils/rule');
15
15
 
16
16
  const handlersMap = {
17
17
  '1.0': [
@@ -0,0 +1,41 @@
1
+ const { is } = require('bpmnlint-utils');
2
+
3
+ const { reportErrors } = require('../utils/reporter');
4
+
5
+ const { ERROR_TYPES } = require('../utils/element');
6
+
7
+ const { skipInNonExecutableProcess } = require('../utils/rule');
8
+
9
+ module.exports = skipInNonExecutableProcess(function() {
10
+ function check(node, reporter) {
11
+ if (!is(node, 'bpmn:Process')) {
12
+ return;
13
+ }
14
+
15
+ const flowElements = node.get('flowElements') || [];
16
+
17
+ const noneStartEvents = flowElements.filter(flowElement => {
18
+ return is(flowElement, 'bpmn:StartEvent') && !flowElement.get('eventDefinitions').length;
19
+ });
20
+
21
+ if (noneStartEvents.length <= 1) {
22
+ return;
23
+ }
24
+
25
+ noneStartEvents.forEach(startEvent => {
26
+ reportErrors(startEvent, reporter, {
27
+ message: 'Multiple elements of type <bpmn:StartEvent> with no event definition not allowed as children of <bpmn:Process>',
28
+ path: null,
29
+ data: {
30
+ type: ERROR_TYPES.ELEMENT_MULTIPLE_NOT_ALLOWED,
31
+ node: startEvent,
32
+ parent: null
33
+ }
34
+ });
35
+ });
36
+ }
37
+
38
+ return {
39
+ check
40
+ };
41
+ });
@@ -1,12 +1,12 @@
1
1
  const { is } = require('bpmnlint-utils');
2
2
 
3
- const { reportErrors } = require('./utils/reporter');
3
+ const { reportErrors } = require('../utils/reporter');
4
4
 
5
- const { getEventDefinition } = require('./utils/element');
5
+ const { getEventDefinition } = require('../utils/element');
6
6
 
7
- const { ERROR_TYPES } = require('./utils/error-types');
7
+ const { ERROR_TYPES } = require('../utils/error-types');
8
8
 
9
- const { skipInNonExecutableProcess } = require('./utils/rule');
9
+ const { skipInNonExecutableProcess } = require('../utils/rule');
10
10
 
11
11
  module.exports = skipInNonExecutableProcess(function() {
12
12
  function check(node, reporter) {
@@ -1,8 +1,8 @@
1
- const { hasNoExtensionElement } = require('./utils/element');
1
+ const { hasNoExtensionElement } = require('../utils/element');
2
2
 
3
- const { reportErrors } = require('./utils/reporter');
3
+ const { reportErrors } = require('../utils/reporter');
4
4
 
5
- const { skipInNonExecutableProcess } = require('./utils/rule');
5
+ const { skipInNonExecutableProcess } = require('../utils/rule');
6
6
 
7
7
  module.exports = skipInNonExecutableProcess(function() {
8
8
  function check(node, reporter) {
@@ -1,8 +1,8 @@
1
- const { hasProperties } = require('./utils/element');
1
+ const { hasProperties } = require('../utils/element');
2
2
 
3
- const { reportErrors } = require('./utils/reporter');
3
+ const { reportErrors } = require('../utils/reporter');
4
4
 
5
- const { skipInNonExecutableProcess } = require('./utils/rule');
5
+ const { skipInNonExecutableProcess } = require('../utils/rule');
6
6
 
7
7
  module.exports = skipInNonExecutableProcess(function() {
8
8
  function check(node, reporter) {
@@ -1,8 +1,8 @@
1
- const { hasNoExtensionElement } = require('./utils/element');
1
+ const { hasNoExtensionElement } = require('../utils/element');
2
2
 
3
- const { reportErrors } = require('./utils/reporter');
3
+ const { reportErrors } = require('../utils/reporter');
4
4
 
5
- const { skipInNonExecutableProcess } = require('./utils/rule');
5
+ const { skipInNonExecutableProcess } = require('../utils/rule');
6
6
 
7
7
  module.exports = skipInNonExecutableProcess(function() {
8
8
  function check(node, reporter) {
@@ -6,11 +6,11 @@ const {
6
6
  const {
7
7
  ERROR_TYPES,
8
8
  hasProperties
9
- } = require('./utils/element');
9
+ } = require('../utils/element');
10
10
 
11
- const { reportErrors } = require('./utils/reporter');
11
+ const { reportErrors } = require('../utils/reporter');
12
12
 
13
- const { skipInNonExecutableProcess } = require('./utils/rule');
13
+ const { skipInNonExecutableProcess } = require('../utils/rule');
14
14
 
15
15
  module.exports = skipInNonExecutableProcess(function() {
16
16
  function check(node, reporter) {
@@ -6,11 +6,11 @@ const {
6
6
  const {
7
7
  getEventDefinition,
8
8
  hasProperties
9
- } = require('./utils/element');
9
+ } = require('../utils/element');
10
10
 
11
- const { reportErrors } = require('./utils/reporter');
11
+ const { reportErrors } = require('../utils/reporter');
12
12
 
13
- const { skipInNonExecutableProcess } = require('./utils/rule');
13
+ const { skipInNonExecutableProcess } = require('../utils/rule');
14
14
 
15
15
  module.exports = skipInNonExecutableProcess(function() {
16
16
  function check(node, reporter) {
@@ -8,11 +8,11 @@ const {
8
8
  getEventDefinition,
9
9
  hasExtensionElement,
10
10
  hasProperties
11
- } = require('./utils/element');
11
+ } = require('../utils/element');
12
12
 
13
- const { reportErrors } = require('./utils/reporter');
13
+ const { reportErrors } = require('../utils/reporter');
14
14
 
15
- const { skipInNonExecutableProcess } = require('./utils/rule');
15
+ const { skipInNonExecutableProcess } = require('../utils/rule');
16
16
 
17
17
  module.exports = skipInNonExecutableProcess(function() {
18
18
  function check(node, reporter) {
@@ -5,13 +5,13 @@ const { isDefined } = require('min-dash');
5
5
  const {
6
6
  findExtensionElement,
7
7
  hasExpression
8
- } = require('./utils/element');
8
+ } = require('../utils/element');
9
9
 
10
- const { validateDate: validateISO8601Date } = require('./utils/iso8601');
10
+ const { validateDate: validateISO8601Date } = require('../utils/iso8601');
11
11
 
12
- const { reportErrors } = require('./utils/reporter');
12
+ const { reportErrors } = require('../utils/reporter');
13
13
 
14
- const { skipInNonExecutableProcess } = require('./utils/rule');
14
+ const { skipInNonExecutableProcess } = require('../utils/rule');
15
15
 
16
16
  module.exports = skipInNonExecutableProcess(function() {
17
17
  function check(node, reporter) {
@@ -9,26 +9,26 @@ const {
9
9
  expressionType: expressionTypeConfig
10
10
  } = require('./config');
11
11
 
12
- const { greaterOrEqual } = require('../utils/version');
12
+ const { greaterOrEqual } = require('../../utils/version');
13
13
 
14
14
  const {
15
15
  getEventDefinition,
16
16
  hasExpression,
17
17
  hasProperties,
18
18
  hasProperty
19
- } = require('../utils/element');
19
+ } = require('../../utils/element');
20
20
 
21
- const { validateCronExpression } = require('../utils/cron');
21
+ const { validateCronExpression } = require('../../utils/cron');
22
22
 
23
23
  const {
24
24
  validateCycle: validateISO8601Cycle,
25
25
  validateDate: validateISO8601Date,
26
26
  validateDuration: validateISO8601Duration
27
- } = require('../utils/iso8601');
27
+ } = require('../../utils/iso8601');
28
28
 
29
- const { reportErrors } = require('../utils/reporter');
29
+ const { reportErrors } = require('../../utils/reporter');
30
30
 
31
- const { skipInNonExecutableProcess } = require('../utils/rule');
31
+ const { skipInNonExecutableProcess } = require('../../utils/rule');
32
32
 
33
33
  module.exports = skipInNonExecutableProcess(function({ version }) {
34
34
  function check(node, reporter) {
@@ -4,11 +4,11 @@ const {
4
4
  findExtensionElement,
5
5
  findExtensionElements,
6
6
  hasProperties
7
- } = require('./utils/element');
7
+ } = require('../utils/element');
8
8
 
9
- const { reportErrors } = require('./utils/reporter');
9
+ const { reportErrors } = require('../utils/reporter');
10
10
 
11
- const { skipInNonExecutableProcess } = require('./utils/rule');
11
+ const { skipInNonExecutableProcess } = require('../utils/rule');
12
12
 
13
13
  module.exports = skipInNonExecutableProcess(function() {
14
14
  function check(node, reporter) {
@@ -1,10 +1,10 @@
1
1
  const { is } = require('bpmnlint-utils');
2
2
 
3
- const { hasProperties } = require('./utils/element');
3
+ const { hasProperties } = require('../utils/element');
4
4
 
5
- const { reportErrors } = require('./utils/reporter');
5
+ const { reportErrors } = require('../utils/reporter');
6
6
 
7
- const { skipInNonExecutableProcess } = require('./utils/rule');
7
+ const { skipInNonExecutableProcess } = require('../utils/rule');
8
8
 
9
9
  module.exports = skipInNonExecutableProcess(function() {
10
10
  function check(node, reporter) {
@@ -1,6 +1,7 @@
1
1
  module.exports.ERROR_TYPES = Object.freeze({
2
2
  ELEMENT_COLLAPSED_NOT_ALLOWED: 'camunda.elementCollapsedNotAllowed',
3
3
  CHILD_ELEMENT_TYPE_NOT_ALLOWED: 'camunda.childElementTypeNotAllowed',
4
+ ELEMENT_MULTIPLE_NOT_ALLOWED: 'camunda.elementMultipleNotAllowed',
4
5
  ELEMENT_TYPE_NOT_ALLOWED: 'camunda.elementTypeNotAllowed',
5
6
  EVENT_BASED_GATEWAY_TARGET_NOT_ALLOWED: 'camunda.eventBasedGatewayTargetNotAllowed',
6
7
  EXPRESSION_NOT_ALLOWED: 'camunda.expressionNotAllowed',
File without changes