aboutsummaryrefslogtreecommitdiffstats
path: root/sdc-workflow-designer-ui/src/main/frontend/src/features/version/composition/custom-properties-provider/provider/camunda/parts/createInputOutputTabGroups.js
diff options
context:
space:
mode:
Diffstat (limited to 'sdc-workflow-designer-ui/src/main/frontend/src/features/version/composition/custom-properties-provider/provider/camunda/parts/createInputOutputTabGroups.js')
-rw-r--r--sdc-workflow-designer-ui/src/main/frontend/src/features/version/composition/custom-properties-provider/provider/camunda/parts/createInputOutputTabGroups.js58
1 files changed, 58 insertions, 0 deletions
diff --git a/sdc-workflow-designer-ui/src/main/frontend/src/features/version/composition/custom-properties-provider/provider/camunda/parts/createInputOutputTabGroups.js b/sdc-workflow-designer-ui/src/main/frontend/src/features/version/composition/custom-properties-provider/provider/camunda/parts/createInputOutputTabGroups.js
new file mode 100644
index 00000000..3dede1a9
--- /dev/null
+++ b/sdc-workflow-designer-ui/src/main/frontend/src/features/version/composition/custom-properties-provider/provider/camunda/parts/createInputOutputTabGroups.js
@@ -0,0 +1,58 @@
+import inputOutputParameter from './InputOutputParameterProps';
+import inputOutput from './InputOutputProps';
+const is = require('bpmn-js/lib/util/ModelUtil').is;
+
+var getInputOutputParameterLabel = function(param, translate) {
+ if (is(param, 'camunda:InputParameter')) {
+ return translate('Input Parameter');
+ }
+
+ if (is(param, 'camunda:OutputParameter')) {
+ return translate('Output Parameter');
+ }
+
+ return '';
+};
+
+export default function createInputOutputTabGroups(
+ element,
+ bpmnFactory,
+ elementRegistry,
+ translate,
+ config
+) {
+ var inputOutputGroup = {
+ id: 'input-output',
+ label: translate('Parameters'),
+ entries: []
+ };
+
+ var options = inputOutput(
+ inputOutputGroup,
+ element,
+ bpmnFactory,
+ translate
+ );
+ var inputOutputParameterGroup = {
+ id: 'input-output-parameter',
+ entries: [],
+ enabled: function(element, node) {
+ return options.getSelectedParameter(element, node);
+ },
+ label: function(element, node) {
+ var param = options.getSelectedParameter(element, node);
+ return getInputOutputParameterLabel(param, translate);
+ }
+ };
+
+ inputOutputParameter(
+ inputOutputParameterGroup,
+ element,
+ bpmnFactory,
+ options,
+ translate,
+ config
+ );
+
+ return [inputOutputGroup, inputOutputParameterGroup];
+}