@processmaker/modeler 1.31.0 → 1.33.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 (100) hide show
  1. package/README.md +7 -0
  2. package/babel.config.js +1 -2
  3. package/dist/img/inclusive-gateway.0f0afffd.svg +4 -0
  4. package/dist/img/inspector.42e5d40d.svg +5 -0
  5. package/dist/img/issue-close.5d1630e6.svg +3 -0
  6. package/dist/img/issue-item.3187f291.svg +3 -0
  7. package/dist/img/issue-open.707390b4.svg +4 -0
  8. package/dist/img/validate-close.09ace97a.svg +4 -0
  9. package/dist/img/validate-open.b0ecf74e.svg +4 -0
  10. package/dist/modeler.common.js +3354 -2489
  11. package/dist/modeler.common.js.map +1 -1
  12. package/dist/modeler.umd.js +3354 -2489
  13. package/dist/modeler.umd.js.map +1 -1
  14. package/dist/modeler.umd.min.js +4 -4
  15. package/dist/modeler.umd.min.js.map +1 -1
  16. package/package.json +2 -2
  17. package/src/.DS_Store +0 -0
  18. package/src/ModelerApp.vue +0 -9
  19. package/src/NodeIdGenerator.js +16 -1
  20. package/src/assets/inspector.svg +5 -0
  21. package/src/assets/toolpanel/inclusive-gateway.svg +2 -2
  22. package/src/assets/topRail/issue-close.svg +3 -0
  23. package/src/assets/topRail/issue-item.svg +3 -0
  24. package/src/assets/topRail/issue-open.svg +4 -0
  25. package/src/assets/topRail/validate-close.svg +4 -0
  26. package/src/assets/topRail/validate-open.svg +4 -0
  27. package/src/components/controls/controls.vue +2 -11
  28. package/src/components/crown/crownButtons/addLaneAboveButton.vue +3 -1
  29. package/src/components/crown/crownButtons/addLaneBelowButton.vue +3 -1
  30. package/src/components/crown/crownButtons/crownBoundaryEventDropdown.vue +2 -1
  31. package/src/components/crown/crownButtons/genericFlowButton.vue +2 -1
  32. package/src/components/crown/crownButtons/icons/faAlignLeft.js +1 -1
  33. package/src/components/crown/crownMultiselect/crownAlign.vue +3 -0
  34. package/src/components/crown/crownMultiselect/crownMultiselect.vue +4 -2
  35. package/src/components/hotkeys/escKey.js +20 -0
  36. package/src/components/hotkeys/main.js +4 -2
  37. package/src/components/inspectors/InspectorPanel.vue +26 -3
  38. package/src/components/inspectors/inspector.scss +11 -0
  39. package/src/components/inspectors/inspectorButton/InspectorButton.vue +38 -0
  40. package/src/components/inspectors/inspectorButton/inspectorButton.scss +19 -0
  41. package/src/components/inspectors/process.js +1 -1
  42. package/src/components/modeler/Modeler.vue +62 -5
  43. package/src/components/modeler/ModelerReadonly.vue +52 -6
  44. package/src/components/modeler/Selection.vue +9 -1
  45. package/src/components/nodes/association/index.js +1 -1
  46. package/src/components/nodes/baseStartEvent/index.js +1 -1
  47. package/src/components/nodes/boundaryEvent/index.js +1 -1
  48. package/src/components/nodes/dataInputAssociation/index.js +1 -1
  49. package/src/components/nodes/dataObject/index.js +1 -1
  50. package/src/components/nodes/dataOutputAssociation/index.js +1 -1
  51. package/src/components/nodes/dataStore/index.js +1 -1
  52. package/src/components/nodes/endEvent/index.js +1 -1
  53. package/src/components/nodes/eventBasedGateway/index.js +1 -1
  54. package/src/components/nodes/exclusiveGateway/index.js +1 -1
  55. package/src/components/nodes/gateway/index.js +1 -1
  56. package/src/components/nodes/inclusiveGateway/index.js +1 -1
  57. package/src/components/nodes/intermediateEvent/index.js +1 -1
  58. package/src/components/nodes/intermediateMessageEvent/index.js +1 -1
  59. package/src/components/nodes/intermediateTimerEvent/index.js +1 -1
  60. package/src/components/nodes/manualTask/index.js +1 -1
  61. package/src/components/nodes/messageFlow/index.js +1 -1
  62. package/src/components/nodes/parallelGateway/index.js +1 -1
  63. package/src/components/nodes/pool/index.js +1 -1
  64. package/src/components/nodes/pool/pool.vue +10 -4
  65. package/src/components/nodes/poolLane/index.js +1 -1
  66. package/src/components/nodes/scriptTask/index.js +1 -1
  67. package/src/components/nodes/sequenceFlow/index.js +1 -1
  68. package/src/components/nodes/serviceTask/index.js +1 -1
  69. package/src/components/nodes/subProcess/index.js +1 -1
  70. package/src/components/nodes/task/index.js +1 -1
  71. package/src/components/nodes/textAnnotation/index.js +1 -1
  72. package/src/components/railBottom/controls/Controls.vue +15 -75
  73. package/src/components/railBottom/controls/SubmenuPopper/SubmenuPopper.vue +5 -5
  74. package/src/components/rails/explorer-rail/explorer-rail.scss +11 -0
  75. package/src/components/rails/explorer-rail/explorer.vue +12 -3
  76. package/src/components/rails/explorer-rail/filterNodeTypes/filterNodeTypes.vue +15 -3
  77. package/src/components/rails/explorer-rail/nodeTypesLoop/nodeTypesLoop.vue +8 -73
  78. package/src/components/rails/explorer-rail/pmBlocksLoop/pmBlocksLoop.vue +76 -0
  79. package/src/components/shapeStackUtils.js +1 -1
  80. package/src/components/toolbar/ToolBar.vue +62 -55
  81. package/src/components/toolbar/toolbar.scss +55 -15
  82. package/src/components/topRail/TopRail.vue +92 -0
  83. package/src/components/topRail/topRail.scss +6 -0
  84. package/src/components/topRail/validateControl/index.js +3 -0
  85. package/src/components/topRail/validateControl/validateButton/ValidateButton.vue +39 -0
  86. package/src/components/topRail/validateControl/validateButton/validateButton.scss +25 -0
  87. package/src/components/topRail/validateControl/validateIssue/ValidateIssue.vue +60 -0
  88. package/src/components/topRail/validateControl/validateIssue/validateIssue.scss +54 -0
  89. package/src/components/topRail/validateControl/validatePanel/ValidatePanel.vue +54 -0
  90. package/src/components/topRail/validateControl/validatePanel/validatePanel.scss +67 -0
  91. package/src/mixins/clickAndDrop.js +107 -0
  92. package/src/mixins/highlightConfig.js +78 -10
  93. package/src/mixins/linkConfig.js +32 -8
  94. package/src/nodeTypesStore.js +48 -0
  95. package/src/setup/registerPmBlock.js +0 -0
  96. package/vue.config.js +1 -0
  97. package/dist/img/distribute-horizontally-icon.5c513cf4.svg +0 -3
  98. package/dist/img/distribute-vertically-icon.a35fb699.svg +0 -3
  99. package/dist/img/inclusive-gateway.754cb36f.svg +0 -4
  100. package/src/components/controls/rankConstants.js +0 -1
@@ -10,8 +10,12 @@ export default new Vuex.Store({
10
10
  nodeTypes: [],
11
11
  pinnedNodeTypes: [],
12
12
  filteredNodeTypes: [],
13
+ pmBlockNodeTypes: [],
14
+ filteredPmBlockNodeTypes: [],
13
15
  explorerOpen: false,
14
16
  searchTerm: '',
17
+ selectedNode: null,
18
+ ghostNode: null,
15
19
  },
16
20
  getters: {
17
21
  getNodeTypes: state => state.nodeTypes,
@@ -19,6 +23,10 @@ export default new Vuex.Store({
19
23
  getFilteredNodeTypes: state => state.filteredNodeTypes,
20
24
  getExplorerOpen: state => state.explorerOpen,
21
25
  getSearchTerm: state => state.searchTerm,
26
+ getPmBlockNodeTypes: state => state.pmBlockNodeTypes,
27
+ getFilteredPmBlockNodeTypes: state => state.filteredPmBlockNodeTypes,
28
+ getSelectedNode: state => state.selectedNode,
29
+ getGhostNode: state => state.ghostNode,
22
30
  },
23
31
  mutations: {
24
32
  setNodeTypes(state, nodeTypes) {
@@ -37,6 +45,8 @@ export default new Vuex.Store({
37
45
  },
38
46
  setPinnedNodes(state, payload) {
39
47
  state.pinnedNodeTypes.push(payload);
48
+ // Remove duplicates
49
+ state.pinnedNodeTypes = uniqBy(state.pinnedNodeTypes, 'type');
40
50
  state.pinnedNodeTypes.sort((node1, node2) => node1.rank - node2.rank);
41
51
  },
42
52
  setUnpinNode(state, payload) {
@@ -51,16 +61,54 @@ export default new Vuex.Store({
51
61
  return node.label.toLowerCase().includes(searchTerm.toLowerCase());
52
62
  });
53
63
  },
64
+ setPmBlockNodeTypes(state, pmBlockNodeTypes) {
65
+ state.pmBlockNodeTypes = pmBlockNodeTypes
66
+ .filter(pmBlockNode => pmBlockNode.control)
67
+ .map(pmBlockNode => ({
68
+ id: uniqueId('pmBlockNode_'),
69
+ type: pmBlockNode.id,
70
+ icon: pmBlockNode.icon,
71
+ label: pmBlockNode.label,
72
+ description: pmBlockNode.description,
73
+ bpmnType: pmBlockNode.bpmnType,
74
+ rank: pmBlockNode.rank || BOTTOM,
75
+ items: pmBlockNode.items?.map(item => ({ ...item, type: item.id })),
76
+ }))
77
+ .sort((node1, node2) => node1.rank - node2.rank);
78
+ },
79
+ setFilteredPmBlockNodeTypes(state, searchTerm) {
80
+ // TODO: Configure Pm Block search bar
81
+ const pmBlockNodeTypes = state.pmBlockNodeTypes;
82
+ state.searchTerm = searchTerm;
83
+ const allNodes = uniqBy([...pmBlockNodeTypes], 'id');
84
+ state.filteredPmBlockNodeTypes = allNodes.filter(node => {
85
+ return node.label.toLowerCase().includes(searchTerm.toLowerCase());
86
+ });
87
+ },
54
88
  clearFilteredNodes(state) {
55
89
  state.filteredNodeTypes = [];
56
90
  state.searchTerm = '';
57
91
  },
92
+ clearFilteredPmBlockNodes(state) {
93
+ state.filteredNodeTypes = [];
94
+ state.filteredPmBlockNodeTypes = [];
95
+ state.searchTerm = '';
96
+ },
58
97
  closeExplorer(state) {
59
98
  state.explorerOpen = false;
60
99
  },
61
100
  toggleExplorer(state) {
62
101
  state.explorerOpen = !state.explorerOpen;
63
102
  },
103
+ setSelectedNode(state, payload) {
104
+ state.selectedNode = payload;
105
+ },
106
+ clearSelectedNode(state) {
107
+ state.selectedNode = null;
108
+ },
109
+ setGhostNode(state, payload) {
110
+ state.ghostNode = payload;
111
+ },
64
112
  },
65
113
  actions: {
66
114
  getUserPinnedObjects({ commit }) {
File without changes
package/vue.config.js CHANGED
@@ -7,6 +7,7 @@ const CircularDependencyPlugin = require('circular-dependency-plugin');
7
7
 
8
8
  module.exports = {
9
9
  runtimeCompiler: true,
10
+ lintOnSave: process.env.NODE_ENV !== 'production',
10
11
  css: {
11
12
  extract: false,
12
13
  loaderOptions: {
@@ -1,3 +0,0 @@
1
- <svg width="29" height="30" viewBox="0 0 29 30" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M6.5 3.5H6V4V10H4V26H9V10H7V4.5H14.25V10H12.25V21H17.25V10H15.25V4.5H22V10H20V26H25V10H23V4V3.5H22.5H14.75H6.5Z" fill="white"/>
3
- </svg>
@@ -1,3 +0,0 @@
1
- <svg width="29" height="30" viewBox="0 0 29 30" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M9.5 7.49997V9.49997H25.5V4.49997H9.5V6.49997H3.5H3V6.99997V14.75V23V23.5H3.5H9.5V25.5H25.5V20.5H9.5V22.5H4V15.25H9.5V17.25H20.5V12.25H9.5V14.25H4V7.49997H9.5Z" fill="white"/>
3
- </svg>
@@ -1,4 +0,0 @@
1
- <svg width="29" height="29" viewBox="0 0 29 29" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M13.5841 1.9168C14.121 1.37983 14.9916 1.37983 15.5286 1.9168L27.1959 13.5841C27.7329 14.121 27.7329 14.9916 27.1959 15.5286L15.5286 27.1959C14.9916 27.7328 14.121 27.7328 13.5841 27.1959L1.91682 15.5286C1.37984 14.9916 1.37984 14.121 1.91682 13.5841L13.5841 1.9168ZM0.944544 12.6118C-0.129398 13.6857 -0.129398 15.4269 0.944544 16.5009L12.6118 28.1681C13.6857 29.2421 15.427 29.2421 16.5009 28.1681L28.1682 16.5009C29.2421 15.4269 29.2421 13.6857 28.1682 12.6118L16.5009 0.94453C15.427 -0.129412 13.6857 -0.129412 12.6118 0.94453L0.944544 12.6118Z" />
3
- <circle cx="14.5" cy="14.5" r="8" stroke="black"/>
4
- </svg>
@@ -1 +0,0 @@
1
- export const BOTTOM = 5000;