@processmaker/modeler 1.33.0 → 1.34.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/cypress.json +1 -1
- package/dist/modeler.common.js +840 -2159
- package/dist/modeler.common.js.map +1 -1
- package/dist/modeler.umd.js +840 -2159
- package/dist/modeler.umd.js.map +1 -1
- package/dist/modeler.umd.min.js +4 -4
- package/dist/modeler.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/.DS_Store +0 -0
- package/src/ModelerApp.vue +0 -13
- package/src/components/crown/crownButtons/icons/faAlignBottom.js +3 -3
- package/src/components/crown/crownButtons/icons/faAlignLeft.js +3 -3
- package/src/components/crown/crownButtons/icons/faAlignRight.js +3 -3
- package/src/components/crown/crownButtons/icons/faAlignTop.js +3 -3
- package/src/components/crown/crownButtons/icons/faCenterHorizontally.js +3 -3
- package/src/components/crown/crownButtons/icons/faCenterVertically.js +3 -3
- package/src/components/crown/crownButtons/icons/faDistributeHorizontally.js +3 -3
- package/src/components/crown/crownButtons/icons/faDistributeVertically.js +3 -3
- package/src/components/crown/crownMultiselect/crownMultiselect.vue +3 -3
- package/src/components/highlightColors.js +8 -0
- package/src/components/inspectors/inspectorButton/inspectorButton.scss +1 -0
- package/src/components/modeler/Modeler.vue +46 -3
- package/src/components/nodes/index.js +0 -1
- package/src/components/railBottom/RailBottom.vue +9 -0
- package/src/components/railBottom/controls/Controls.vue +14 -2
- package/src/components/railBottom/controls/SubmenuPopper/SubmenuPopper.vue +6 -4
- package/src/components/railBottom/controls/controls.scss +2 -0
- package/src/components/railBottom/miniPaperControl/miniPaperControl.scss +1 -0
- package/src/components/railBottom/railBottom.scss +2 -0
- package/src/components/railBottom/zoomControl/ZoomControl.vue +1 -3
- package/src/components/rails/explorer-rail/explorer.vue +3 -3
- package/src/components/rails/explorer-rail/filterNodeTypes/filterNodeTypes.vue +3 -0
- package/src/components/rails/explorer-rail/pmBlocksLoop/pmBlocksLoop.vue +19 -9
- package/src/components/toolbar/ToolBar.vue +14 -2
- package/src/components/toolbar/toolbar.scss +23 -0
- package/src/components/topRail/validateControl/validateButton/ValidateButton.vue +2 -0
- package/src/mixins/highlightConfig.js +15 -12
- package/src/mixins/linkConfig.js +15 -8
- package/src/nodeTypesStore.js +2 -0
- package/src/store.js +1 -0
- package/src/components/modeler/ModelerReadonly.vue +0 -1042
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
aria-label="Publish controls"
|
|
23
23
|
data-cy="publish-control"
|
|
24
24
|
>
|
|
25
|
+
<div class="divider" />
|
|
25
26
|
<template v-if="isVersionsInstalled">
|
|
26
27
|
<div
|
|
27
28
|
class="toolbar-item toolbar-version-status"
|
|
@@ -63,6 +64,17 @@
|
|
|
63
64
|
data-cy="ellipsis-menu"
|
|
64
65
|
/>
|
|
65
66
|
</template>
|
|
67
|
+
<button
|
|
68
|
+
v-else
|
|
69
|
+
class="save-button"
|
|
70
|
+
data-test="mini-map-btn"
|
|
71
|
+
v-b-tooltip.hover
|
|
72
|
+
:title="$t('Save')"
|
|
73
|
+
@click="$emit('saveBpmn')"
|
|
74
|
+
>
|
|
75
|
+
<font-awesome-icon :icon="saveIcon" />
|
|
76
|
+
<span class="save-button-label">{{ $t('Save') }}</span>
|
|
77
|
+
</button>
|
|
66
78
|
</div>
|
|
67
79
|
</div>
|
|
68
80
|
</div>
|
|
@@ -74,7 +86,6 @@ import { faCompress, faExpand, faMapMarked, faMinus, faPlus, faRedo, faUndo, faS
|
|
|
74
86
|
import undoRedoStore from '@/undoRedoStore';
|
|
75
87
|
import Breadcrumb from '@/components/toolbar/breadcrumb/Breadcrumb';
|
|
76
88
|
import TopRail from '@/components/topRail/TopRail.vue';
|
|
77
|
-
|
|
78
89
|
export default {
|
|
79
90
|
name: 'tool-bar',
|
|
80
91
|
components: {
|
|
@@ -218,7 +229,8 @@ export default {
|
|
|
218
229
|
},
|
|
219
230
|
},
|
|
220
231
|
mounted() {
|
|
221
|
-
|
|
232
|
+
const childProcess = this.$root.$children[0]?.process;
|
|
233
|
+
if (childProcess?.is_template) {
|
|
222
234
|
const indexOfActions = this.ellipsisMenuActions.findIndex(object => {
|
|
223
235
|
return object.value === 'save-template';
|
|
224
236
|
});
|
|
@@ -79,3 +79,26 @@ $toolbar-background-color: #fff;
|
|
|
79
79
|
border-top-left-radius: 4px !important;
|
|
80
80
|
border-bottom-left-radius: 4px !important;
|
|
81
81
|
}
|
|
82
|
+
|
|
83
|
+
.save-button {
|
|
84
|
+
display: flex;
|
|
85
|
+
justify-content: center;
|
|
86
|
+
align-items: center;
|
|
87
|
+
height: 32px;
|
|
88
|
+
background-color: #6C757D;
|
|
89
|
+
border: 0 none;
|
|
90
|
+
border-radius: 4px;
|
|
91
|
+
transition: background-color 0.3s ease;
|
|
92
|
+
color: #ffffff;
|
|
93
|
+
&:active {
|
|
94
|
+
background-color: #5A6268;
|
|
95
|
+
}
|
|
96
|
+
&-label {
|
|
97
|
+
padding-left: 0.4em;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
.divider {
|
|
101
|
+
border-left: 1px solid #6C757D;
|
|
102
|
+
height: 80%;
|
|
103
|
+
padding-left: 11px;
|
|
104
|
+
}
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
type="button"
|
|
4
4
|
@click.prevent="handleOpen"
|
|
5
5
|
:class="['validate-button', { 'validate-button-active': isOpen }]"
|
|
6
|
+
:title="$t('Auto validate')"
|
|
7
|
+
v-b-tooltip.hover.viewport.d50="{ customClass: 'no-pointer-events' }"
|
|
6
8
|
data-cy="validate-button"
|
|
7
9
|
>
|
|
8
10
|
<inline-svg :src="isOpen ? validateOpenIcon : validateCloseIcon" />
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import cloneDeep from 'lodash/cloneDeep';
|
|
2
2
|
import store from '@/store';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
import {
|
|
4
|
+
COLOR_DEFAULT,
|
|
5
|
+
COLOR_ERROR,
|
|
6
|
+
COLOR_IN_PROGRESS,
|
|
7
|
+
COLOR_IN_PROGRESS_FILL,
|
|
8
|
+
COLOR_IDLE,
|
|
9
|
+
COLOR_IDLE_FILL,
|
|
10
|
+
COLOR_COMPLETED,
|
|
11
|
+
COLOR_COMPLETED_FILL,
|
|
12
|
+
} from '@/components/highlightColors.js';
|
|
10
13
|
|
|
11
14
|
const errorHighlighter = {
|
|
12
15
|
highlighter: {
|
|
@@ -41,7 +44,7 @@ const completedHighlighter = {
|
|
|
41
44
|
options: {
|
|
42
45
|
attrs: {
|
|
43
46
|
stroke: COLOR_COMPLETED,
|
|
44
|
-
'stroke-width':
|
|
47
|
+
'stroke-width': 5,
|
|
45
48
|
},
|
|
46
49
|
},
|
|
47
50
|
},
|
|
@@ -53,8 +56,7 @@ const inProgressHighlighter = {
|
|
|
53
56
|
options: {
|
|
54
57
|
attrs: {
|
|
55
58
|
stroke: COLOR_IN_PROGRESS,
|
|
56
|
-
'stroke-width':
|
|
57
|
-
'stroke-dasharray': '4 4',
|
|
59
|
+
'stroke-width': 5,
|
|
58
60
|
},
|
|
59
61
|
},
|
|
60
62
|
},
|
|
@@ -66,7 +68,7 @@ const idleHighlighter = {
|
|
|
66
68
|
options: {
|
|
67
69
|
attrs: {
|
|
68
70
|
stroke: COLOR_IDLE,
|
|
69
|
-
'stroke-width':
|
|
71
|
+
'stroke-width': 5,
|
|
70
72
|
},
|
|
71
73
|
},
|
|
72
74
|
},
|
|
@@ -124,10 +126,11 @@ export default {
|
|
|
124
126
|
}
|
|
125
127
|
this.shapeView.unhighlight(this.shapeBody, inProgressHighlighter);
|
|
126
128
|
if (this.isInProgress) {
|
|
129
|
+
this.shape.attr('body/fill', COLOR_IN_PROGRESS_FILL);
|
|
127
130
|
this.shapeView.highlight(this.shapeBody, inProgressHighlighter);
|
|
128
131
|
}
|
|
129
132
|
if (this.isIdle) {
|
|
130
|
-
this.shape.attr('body/fill',
|
|
133
|
+
this.shape.attr('body/fill', COLOR_IDLE_FILL);
|
|
131
134
|
this.shapeView.highlight(this.shapeBody, idleHighlighter);
|
|
132
135
|
}
|
|
133
136
|
return;
|
package/src/mixins/linkConfig.js
CHANGED
|
@@ -5,6 +5,10 @@ import { invalidNodeColor, setShapeColor, validNodeColor } from '@/components/no
|
|
|
5
5
|
import { getDefaultAnchorPoint } from '@/portsUtils';
|
|
6
6
|
import resetShapeColor from '@/components/resetShapeColor';
|
|
7
7
|
import store from '@/store';
|
|
8
|
+
import {
|
|
9
|
+
COLOR_IDLE,
|
|
10
|
+
COLOR_COMPLETED,
|
|
11
|
+
} from '@/components/highlightColors.js';
|
|
8
12
|
|
|
9
13
|
const endpoints = {
|
|
10
14
|
source: 'source',
|
|
@@ -15,11 +19,8 @@ function isPoint(item) {
|
|
|
15
19
|
return item.x && item.y;
|
|
16
20
|
}
|
|
17
21
|
|
|
18
|
-
const COLOR_IDLE = '#ced4da';
|
|
19
|
-
const COLOR_COMPLETED = '#00875A';
|
|
20
|
-
|
|
21
22
|
export default {
|
|
22
|
-
props: ['highlighted', 'paper', 'paperManager', 'isCompleted'],
|
|
23
|
+
props: ['highlighted', 'paper', 'paperManager', 'isCompleted', 'isIdle'],
|
|
23
24
|
data() {
|
|
24
25
|
return {
|
|
25
26
|
sourceShape: null,
|
|
@@ -80,10 +81,16 @@ export default {
|
|
|
80
81
|
},
|
|
81
82
|
methods: {
|
|
82
83
|
setShapeHighlight() {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
84
|
+
if (this.isCompleted) {
|
|
85
|
+
this.shape.attr({
|
|
86
|
+
line: { stroke: COLOR_COMPLETED },
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
else if (this.isIdle) {
|
|
90
|
+
this.shape.attr({
|
|
91
|
+
line: { stroke: COLOR_IDLE },
|
|
92
|
+
});
|
|
93
|
+
}
|
|
87
94
|
},
|
|
88
95
|
findSourceShape() {
|
|
89
96
|
return this.graph.getElements().find(element => {
|
package/src/nodeTypesStore.js
CHANGED
|
@@ -68,6 +68,8 @@ export default new Vuex.Store({
|
|
|
68
68
|
id: uniqueId('pmBlockNode_'),
|
|
69
69
|
type: pmBlockNode.id,
|
|
70
70
|
icon: pmBlockNode.icon,
|
|
71
|
+
customIcon: pmBlockNode.customIcon,
|
|
72
|
+
svgIcon: pmBlockNode.svgIcon,
|
|
71
73
|
label: pmBlockNode.label,
|
|
72
74
|
description: pmBlockNode.description,
|
|
73
75
|
bpmnType: pmBlockNode.bpmnType,
|
package/src/store.js
CHANGED
|
@@ -59,6 +59,7 @@ export default new Vuex.Store({
|
|
|
59
59
|
copiedElements: state => state.copiedElements,
|
|
60
60
|
clientLeftPaper: state => state.clientLeftPaper,
|
|
61
61
|
isReadOnly: state => state.readOnly,
|
|
62
|
+
showComponent: state => !state.readOnly,
|
|
62
63
|
},
|
|
63
64
|
mutations: {
|
|
64
65
|
setReadOnly(state, value) {
|