From c4f329377828d80a54b71f5733ea7d9b4ee91f48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Milorad=20FIlipovi=C4=87?= Date: Fri, 28 Feb 2025 11:53:42 +0100 Subject: [PATCH] fix(editor): Add workflows to the store when fetching current page (#13583) --- cypress/e2e/1-workflows.cy.ts | 8 ++++++++ cypress/pages/workflows.ts | 1 + packages/editor-ui/src/stores/workflows.store.ts | 13 +++++++++++++ 3 files changed, 22 insertions(+) diff --git a/cypress/e2e/1-workflows.cy.ts b/cypress/e2e/1-workflows.cy.ts index 82d1b9b90b..a972a21403 100644 --- a/cypress/e2e/1-workflows.cy.ts +++ b/cypress/e2e/1-workflows.cy.ts @@ -1,9 +1,11 @@ +import { WorkflowSharingModal } from '../pages'; import { WorkflowPage as WorkflowPageClass } from '../pages/workflow'; import { WorkflowsPage as WorkflowsPageClass } from '../pages/workflows'; import { getUniqueWorkflowName } from '../utils/workflowUtils'; const WorkflowsPage = new WorkflowsPageClass(); const WorkflowPage = new WorkflowPageClass(); +const workflowSharingModal = new WorkflowSharingModal(); const multipleWorkflowsCount = 5; @@ -138,4 +140,10 @@ describe('Workflows', () => { cy.url().should('include', 'sort=lastCreated'); cy.url().should('include', 'pageSize=25'); }); + + it('should be able to share workflows from workflows list', () => { + WorkflowsPage.getters.workflowCardActions('Empty State Card Workflow').click(); + WorkflowsPage.getters.workflowActionItem('share').click(); + workflowSharingModal.getters.modal().should('be.visible'); + }); }); diff --git a/cypress/pages/workflows.ts b/cypress/pages/workflows.ts index 87507c80a1..f93e3e0103 100644 --- a/cypress/pages/workflows.ts +++ b/cypress/pages/workflows.ts @@ -35,6 +35,7 @@ export class WorkflowsPage extends BasePage { this.getters.workflowActivator(workflowName).findChildByTestId('workflow-activator-status'), workflowCardActions: (workflowName: string) => this.getters.workflowCard(workflowName).findChildByTestId('workflow-card-actions'), + workflowActionItem: (action: string) => cy.getByTestId(`action-${action}`).filter(':visible'), workflowDeleteButton: () => cy.getByTestId('action-toggle-dropdown').filter(':visible').contains('Delete'), workflowMoveButton: () => diff --git a/packages/editor-ui/src/stores/workflows.store.ts b/packages/editor-ui/src/stores/workflows.store.ts index 4327efb305..701914081f 100644 --- a/packages/editor-ui/src/stores/workflows.store.ts +++ b/packages/editor-ui/src/stores/workflows.store.ts @@ -517,6 +517,19 @@ export const useWorkflowsStore = defineStore(STORES.WORKFLOWS, () => { ); totalWorkflowCount.value = count; + // Also set fetched workflows to store + // When fetching workflows from overview page, they don't have resource property + // so in order to filter out folders, we need to check if resource is not folder + data + .filter((item) => item.resource !== 'folder') + .forEach((item) => { + addWorkflow({ + ...item, + nodes: [], + connections: {}, + versionId: '', + }); + }); return data; }