diff --git a/client/src/app/panel/tabs/variable-outline/VariableOutlineStatusBarItem.js b/client/src/app/panel/tabs/variable-outline/VariableOutlineStatusBarItem.js
new file mode 100644
index 0000000000..9271695c54
--- /dev/null
+++ b/client/src/app/panel/tabs/variable-outline/VariableOutlineStatusBarItem.js
@@ -0,0 +1,34 @@
+/**
+ * Copyright Camunda Services GmbH and/or licensed to Camunda Services GmbH
+ * under one or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information regarding copyright
+ * ownership.
+ *
+ * Camunda licenses this file to you under the MIT; you may not use this file
+ * except in compliance with the MIT License.
+ */
+
+import React from 'react';
+
+import classnames from 'classnames';
+
+import { Fill } from '../../../slot-fill';
+
+export default function VariableOutlineStatusBarItem(props) {
+ const {
+ onToggle,
+ layout
+ } = props;
+
+ const { panel = {} } = layout;
+
+ return
+
+ ;
+}
diff --git a/client/src/app/panel/tabs/variable-outline/VariableOutlineTab.js b/client/src/app/panel/tabs/variable-outline/VariableOutlineTab.js
index cf43a09fb2..54285cc324 100644
--- a/client/src/app/panel/tabs/variable-outline/VariableOutlineTab.js
+++ b/client/src/app/panel/tabs/variable-outline/VariableOutlineTab.js
@@ -16,14 +16,26 @@ import './VariableOutlineTab.less';
import { Fill } from '../../../slot-fill';
+import VariableOutlineStatusBarItem from './VariableOutlineStatusBarItem';
export default function VariableTab(props) {
const {
layout = {},
injector,
- id
+ id,
+ onAction
} = props;
+ const onToggle = () => {
+ const { panel = {} } = layout;
+
+ if (!panel.open || panel.tab !== 'variable-outline') {
+ onAction('open-panel', { tab: 'variable-outline' });
+ } else if (panel.tab === 'variable-outline') {
+ onAction('close-panel');
+ }
+ };
+
return <>
+
+
>;
}
diff --git a/client/src/app/tabs/cloud-bpmn/BpmnEditor.js b/client/src/app/tabs/cloud-bpmn/BpmnEditor.js
index 0a2025fcbb..364127fb47 100644
--- a/client/src/app/tabs/cloud-bpmn/BpmnEditor.js
+++ b/client/src/app/tabs/cloud-bpmn/BpmnEditor.js
@@ -759,7 +759,7 @@ export class BpmnEditor extends CachedComponent {
render() {
const engineProfile = this.engineProfile.getCached();
- const { layout } = this.props;
+ const { layout, onAction } = this.props;
const modeler = this.getModeler();
const imported = modeler.getDefinitions();
@@ -797,7 +797,8 @@ export class BpmnEditor extends CachedComponent {
+ injector={ injector }
+ onAction={ onAction } />
);
}