mirror of
https://github.com/n8n-io/n8n.git
synced 2026-05-29 15:57:00 +02:00
refactor(editor): Extract banners into features/shared (no-changelog) (#20964)
This commit is contained in:
parent
dd6145879f
commit
86d291233f
|
|
@ -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';
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
<script setup lang="ts">
|
||||
/**
|
||||
* @TODO Move to design system
|
||||
*/
|
||||
import { ref } from 'vue';
|
||||
|
||||
import { ElTag } from 'element-plus';
|
||||
|
|
|
|||
|
|
@ -0,0 +1,9 @@
|
|||
import type { Component } from 'vue';
|
||||
import type { BannerName } from '@n8n/api-types';
|
||||
|
||||
export type N8nBanners = {
|
||||
[key in BannerName]: {
|
||||
priority: number;
|
||||
component: Component;
|
||||
};
|
||||
};
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
<script lang="ts">
|
||||
import NonProductionLicenseBanner from '@/components/banners/NonProductionLicenseBanner.vue';
|
||||
import TrialOverBanner from '@/components/banners/TrialOverBanner.vue';
|
||||
import TrialBanner from '@/components/banners/TrialBanner.vue';
|
||||
import V1Banner from '@/components/banners/V1Banner.vue';
|
||||
import EmailConfirmationBanner from '@/components/banners/EmailConfirmationBanner.vue';
|
||||
import DataTableStorageLimitWarningBanner from '@/components/banners/DataTableStorageLimitWarningBanner.vue';
|
||||
import DataTableStorageLimitErrorBanner from '@/components/banners/DataTableStorageLimitErrorBanner.vue';
|
||||
import NonProductionLicenseBanner from './banners/NonProductionLicenseBanner.vue';
|
||||
import TrialOverBanner from './banners/TrialOverBanner.vue';
|
||||
import TrialBanner from './banners/TrialBanner.vue';
|
||||
import V1Banner from './banners/V1Banner.vue';
|
||||
import EmailConfirmationBanner from './banners/EmailConfirmationBanner.vue';
|
||||
import DataTableStorageLimitWarningBanner from './banners/DataTableStorageLimitWarningBanner.vue';
|
||||
import DataTableStorageLimitErrorBanner from './banners/DataTableStorageLimitErrorBanner.vue';
|
||||
import type { Component } from 'vue';
|
||||
import type { N8nBanners } from '@/Interface';
|
||||
import type { N8nBanners } from '../banners.types';
|
||||
|
||||
// All banners that can be shown in the app should be registered here.
|
||||
// This component renders the banner with the highest priority from the banner stack, located in the UI store.
|
||||
|
|
@ -6,7 +6,7 @@ import { ROLE } from '@n8n/api-types';
|
|||
import { STORES } from '@n8n/stores';
|
||||
|
||||
import { createTestingPinia } from '@pinia/testing';
|
||||
import BannerStack from '@/components/banners/BannerStack.vue';
|
||||
import BannerStack from './BannerStack.vue';
|
||||
import type { RenderOptions } from '@/__tests__/render';
|
||||
import { createComponentRenderer } from '@/__tests__/render';
|
||||
import { waitFor } from '@testing-library/vue';
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<script lang="ts" setup>
|
||||
import { useI18n } from '@n8n/i18n';
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { useDataTableStore } from '@/features/core/dataTable/dataTable.store';
|
||||
|
||||
const dataTableStore = useDataTableStore();
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<script lang="ts" setup>
|
||||
import { useI18n } from '@n8n/i18n';
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { useDataTableStore } from '@/features/core/dataTable/dataTable.store';
|
||||
|
||||
const dataTableStore = useDataTableStore();
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts" setup>
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { useToast } from '@/composables/useToast';
|
||||
import { i18n as locale } from '@n8n/i18n';
|
||||
import { useUsersStore } from '@/features/settings/users/users.store';
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts" setup>
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { i18n as locale } from '@n8n/i18n';
|
||||
</script>
|
||||
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts" setup>
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { i18n as locale } from '@n8n/i18n';
|
||||
import { useCloudPlanStore } from '@/stores/cloudPlan.store';
|
||||
import { computed } from 'vue';
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts" setup>
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { usePageRedirectionHelper } from '@/composables/usePageRedirectionHelper';
|
||||
import { i18n as locale } from '@n8n/i18n';
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<script lang="ts" setup>
|
||||
import { computed } from 'vue';
|
||||
import BaseBanner from '@/components/banners/BaseBanner.vue';
|
||||
import BaseBanner from './BaseBanner.vue';
|
||||
import { i18n as locale } from '@n8n/i18n';
|
||||
import { hasPermission } from '@/utils/rbac/permissions';
|
||||
import { useUIStore } from '@/stores/ui.store';
|
||||
Loading…
Reference in New Issue
Block a user