From 86d291233fdd116a3659c0dc2bb95d43b189051e Mon Sep 17 00:00:00 2001 From: Alex Grozav Date: Wed, 22 Oct 2025 11:02:41 +0300 Subject: [PATCH] refactor(editor): Extract `banners` into features/shared (no-changelog) (#20964) --- packages/frontend/editor-ui/src/App.vue | 2 +- packages/frontend/editor-ui/src/Interface.ts | 9 --------- .../frontend/editor-ui/src/components/Banner.vue | 3 +++ .../src/features/shared/banners/banners.types.ts | 9 +++++++++ .../shared/banners/components}/BannerStack.vue | 16 ++++++++-------- .../banners}/components/BannersStack.test.ts | 2 +- .../banners}/components/banners/BaseBanner.vue | 0 .../banners/DataTableStorageLimitErrorBanner.vue | 2 +- .../DataTableStorageLimitWarningBanner.vue | 2 +- .../banners/EmailConfirmationBanner.vue | 2 +- .../banners/NonProductionLicenseBanner.vue | 2 +- .../banners}/components/banners/TrialBanner.vue | 2 +- .../components/banners/TrialOverBanner.vue | 2 +- .../banners}/components/banners/V1Banner.test.ts | 0 .../banners}/components/banners/V1Banner.vue | 2 +- .../banners/__snapshots__/V1Banner.test.ts.snap | 0 16 files changed, 29 insertions(+), 26 deletions(-) create mode 100644 packages/frontend/editor-ui/src/features/shared/banners/banners.types.ts rename packages/frontend/editor-ui/src/{components/banners => features/shared/banners/components}/BannerStack.vue (76%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/BannersStack.test.ts (98%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/BaseBanner.vue (100%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/DataTableStorageLimitErrorBanner.vue (90%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/DataTableStorageLimitWarningBanner.vue (90%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/EmailConfirmationBanner.vue (96%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/NonProductionLicenseBanner.vue (82%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/TrialBanner.vue (98%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/TrialOverBanner.vue (92%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/V1Banner.test.ts (100%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/V1Banner.vue (94%) rename packages/frontend/editor-ui/src/{ => features/shared/banners}/components/banners/__snapshots__/V1Banner.test.ts.snap (100%) diff --git a/packages/frontend/editor-ui/src/App.vue b/packages/frontend/editor-ui/src/App.vue index 2626e20cefe..42fe64cdc7c 100644 --- a/packages/frontend/editor-ui/src/App.vue +++ b/packages/frontend/editor-ui/src/App.vue @@ -3,7 +3,7 @@ import '@/polyfills'; import AssistantsHub from '@/features/ai/assistant/components/AssistantsHub.vue'; import AskAssistantFloatingButton from '@/features/ai/assistant/components/Chat/AskAssistantFloatingButton.vue'; -import BannerStack from '@/components/banners/BannerStack.vue'; +import BannerStack from '@/features/shared/banners/components/BannerStack.vue'; import Modals from '@/components/Modals.vue'; import Telemetry from '@/components/Telemetry.vue'; import { useHistoryHelper } from '@/composables/useHistoryHelper'; diff --git a/packages/frontend/editor-ui/src/Interface.ts b/packages/frontend/editor-ui/src/Interface.ts index 3f3d6cd347a..c31bcd3369d 100644 --- a/packages/frontend/editor-ui/src/Interface.ts +++ b/packages/frontend/editor-ui/src/Interface.ts @@ -1,7 +1,5 @@ -import type { Component } from 'vue'; import type { NotificationOptions as ElementNotificationOptions } from 'element-plus'; import type { - BannerName, FrontendSettings, IUserManagementSettings, IVersionNotificationSettings, @@ -886,13 +884,6 @@ export type UTMCampaign = | 'upgrade-builder' | 'upgrade-custom-roles'; -export type N8nBanners = { - [key in BannerName]: { - priority: number; - component: Component; - }; -}; - export type AddedNode = { type: string; openDetail?: boolean; diff --git a/packages/frontend/editor-ui/src/components/Banner.vue b/packages/frontend/editor-ui/src/components/Banner.vue index fbae8d273f8..427d5d36fb6 100644 --- a/packages/frontend/editor-ui/src/components/Banner.vue +++ b/packages/frontend/editor-ui/src/components/Banner.vue @@ -1,4 +1,7 @@ diff --git a/packages/frontend/editor-ui/src/components/banners/TrialBanner.vue b/packages/frontend/editor-ui/src/features/shared/banners/components/banners/TrialBanner.vue similarity index 98% rename from packages/frontend/editor-ui/src/components/banners/TrialBanner.vue rename to packages/frontend/editor-ui/src/features/shared/banners/components/banners/TrialBanner.vue index fd0a4a8c46e..f1900dd9d7d 100644 --- a/packages/frontend/editor-ui/src/components/banners/TrialBanner.vue +++ b/packages/frontend/editor-ui/src/features/shared/banners/components/banners/TrialBanner.vue @@ -1,5 +1,5 @@