From f484b6331bc8cd11eff73f1890e96f7dc9991bba Mon Sep 17 00:00:00 2001 From: Rob Hough Date: Thu, 4 Jun 2026 09:53:48 +0100 Subject: [PATCH] fix(editor): Avoid duplicate empty-state prompt copy (no-changelog) (#31182) --- .../editor-ui/src/app/views/WorkflowsView.test.ts | 10 ++++++++++ .../workflows/composables/useWorkflowsEmptyState.ts | 4 +++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/packages/frontend/editor-ui/src/app/views/WorkflowsView.test.ts b/packages/frontend/editor-ui/src/app/views/WorkflowsView.test.ts index 8d55ef8764a..c0f4bac9df8 100644 --- a/packages/frontend/editor-ui/src/app/views/WorkflowsView.test.ts +++ b/packages/frontend/editor-ui/src/app/views/WorkflowsView.test.ts @@ -156,6 +156,16 @@ describe('WorkflowsView', () => { expect(getByText('There are currently no workflows to view')).toBeInTheDocument(); }); + it('does not repeat generic prompt in fallback empty state', async () => { + const projectsStore = mockedStore(useProjectsStore); + projectsStore.currentProject = { scopes: ['workflow:create'] } as Project; + + const { getAllByText } = renderComponent({ pinia }); + await waitAllPromises(); + + expect(getAllByText('What do you want to build?')).toHaveLength(1); + }); + it('for user with create scope', async () => { const projectsStore = mockedStore(useProjectsStore); projectsStore.currentProject = { scopes: ['workflow:create'] } as Project; diff --git a/packages/frontend/editor-ui/src/features/workflows/composables/useWorkflowsEmptyState.ts b/packages/frontend/editor-ui/src/features/workflows/composables/useWorkflowsEmptyState.ts index 5d8e5070f55..d9d2975da60 100644 --- a/packages/frontend/editor-ui/src/features/workflows/composables/useWorkflowsEmptyState.ts +++ b/packages/frontend/editor-ui/src/features/workflows/composables/useWorkflowsEmptyState.ts @@ -96,9 +96,11 @@ export function useWorkflowsEmptyState() { return i18n.baseText('workflows.empty.description.readOnlyEnv'); } else if (!projectPermissions.value.workflow.create) { return i18n.baseText('workflows.empty.description.noPermission'); - } else { + } else if (showRecommendedTemplatesInline.value) { return i18n.baseText('workflows.empty.description'); } + + return ''; }); return {