refactor(editor): Detangle ui store from settings store (no-changelog) (#16384)

This commit is contained in:
Alex Grozav
2025-06-17 12:07:46 +02:00
committed by GitHub
parent dd2ed90b95
commit 5caf7a2660
5 changed files with 47 additions and 30 deletions

View File

@@ -15,6 +15,7 @@ import { STORES } from '@n8n/stores';
import { useSSOStore } from '@/stores/sso.store';
import { UserManagementAuthenticationMethod } from '@/Interface';
import { EnterpriseEditionFeature } from '@/constants';
import { useUIStore } from '@/stores/ui.store';
const showMessage = vi.fn();
@@ -38,6 +39,7 @@ describe('Init', () => {
let nodeTypesStore: ReturnType<typeof useNodeTypesStore>;
let versionsStore: ReturnType<typeof useVersionsStore>;
let ssoStore: ReturnType<typeof useSSOStore>;
let uiStore: ReturnType<typeof useUIStore>;
beforeEach(() => {
setActivePinia(
@@ -56,6 +58,7 @@ describe('Init', () => {
versionsStore = useVersionsStore();
versionsStore = useVersionsStore();
ssoStore = useSSOStore();
uiStore = useUIStore();
});
describe('initializeCore()', () => {
@@ -104,6 +107,18 @@ describe('Init', () => {
},
});
});
it('should initialize uiStore with banners based on settings', async () => {
settingsStore.isEnterpriseFeatureEnabled.showNonProdBanner = true;
settingsStore.settings.banners = { dismissed: [] };
settingsStore.settings.versionCli = '1.2.3';
await initializeCore();
expect(uiStore.initialize).toHaveBeenCalledWith({
banners: ['NON_PRODUCTION_LICENSE', 'V1'],
});
});
});
describe('initializeAuthenticatedFeatures()', () => {