({
json: value,
diff --git a/packages/editor-ui/src/components/WorkflowPreview.vue b/packages/editor-ui/src/components/WorkflowPreview.vue
index 791a7b699f..b75f97888c 100644
--- a/packages/editor-ui/src/components/WorkflowPreview.vue
+++ b/packages/editor-ui/src/components/WorkflowPreview.vue
@@ -39,7 +39,7 @@ export default mixins(showMessage).extend({
type: String,
default: 'workflow',
validator: (value: string): boolean =>
- ['workflow', 'execution', 'medium'].includes(value),
+ ['workflow', 'execution'].includes(value),
},
workflow: {
type: Object as () => IWorkflowDb,
@@ -49,6 +49,10 @@ export default mixins(showMessage).extend({
type: String,
required: false,
},
+ executionMode: {
+ type: String,
+ required: false,
+ },
loaderType: {
type: String,
default: 'image',
@@ -125,6 +129,7 @@ export default mixins(showMessage).extend({
JSON.stringify({
command: 'openExecution',
executionId: this.executionId,
+ executionMode: this.executionMode || '',
}),
'*',
);
diff --git a/packages/editor-ui/src/views/NodeView.vue b/packages/editor-ui/src/views/NodeView.vue
index ae3c7ed91e..81a5e5bd78 100644
--- a/packages/editor-ui/src/views/NodeView.vue
+++ b/packages/editor-ui/src/views/NodeView.vue
@@ -49,6 +49,7 @@
:instance="instance"
:isActive="!!activeNode && activeNode.name === nodeData.name"
:hideActions="pullConnActive"
+ :isProductionExecutionPreview="isProductionExecutionPreview"
>
@@ -530,6 +532,7 @@ export default mixins(
isExecutionPreview: false,
showTriggerMissingTooltip: false,
workflowData: null as INewWorkflowData | null,
+ isProductionExecutionPreview: false,
};
},
beforeDestroy() {
@@ -3135,6 +3138,10 @@ export default mixins(
}
} else if (json && json.command === 'openExecution') {
try {
+ // If this NodeView is used in preview mode (in iframe) it will not have access to the main app store
+ // so everything it needs has to be sent using post messages and passed down to child components
+ this.isProductionExecutionPreview = json.executionMode !== 'manual';
+
await this.openExecution(json.executionId);
this.isExecutionPreview = true;
} catch (e) {