From 2ec711aeb5971e085413d007ed2e8964776c9079 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Ovejero?= Date: Fri, 4 Mar 2022 17:53:01 +0100 Subject: [PATCH] :zap: Allow to disable hiring banner (#2902) * :sparkles: Add flag * :zap: Adjust interfaces * :zap: Adjust store module * :zap: Adjust frontend settings * :zap: Adjust frontend display --- packages/cli/config/index.ts | 9 +++++++++ packages/cli/src/Interfaces.ts | 2 +- packages/cli/src/Server.ts | 2 +- packages/editor-ui/src/App.vue | 4 ++-- packages/editor-ui/src/Interface.ts | 2 +- packages/editor-ui/src/modules/settings.ts | 4 ++-- 6 files changed, 16 insertions(+), 7 deletions(-) diff --git a/packages/cli/config/index.ts b/packages/cli/config/index.ts index 85544254c2..9ca8a913e3 100644 --- a/packages/cli/config/index.ts +++ b/packages/cli/config/index.ts @@ -746,6 +746,15 @@ const config = convict({ }, }, + hiringBanner: { + enabled: { + doc: 'Whether hiring banner in browser console is enabled.', + format: Boolean, + default: true, + env: 'N8N_HIRING_BANNER_ENABLED', + }, + }, + personalization: { enabled: { doc: 'Whether personalization is enabled.', diff --git a/packages/cli/src/Interfaces.ts b/packages/cli/src/Interfaces.ts index a2f9a2235a..69be4445ac 100644 --- a/packages/cli/src/Interfaces.ts +++ b/packages/cli/src/Interfaces.ts @@ -412,7 +412,7 @@ export interface IN8nUISettings { personalizationSurvey: IPersonalizationSurvey; defaultLocale: string; logLevel: 'info' | 'debug' | 'warn' | 'error' | 'verbose'; - deploymentType: string; + hiringBannerEnabled: boolean; templates: { enabled: boolean; host: string; diff --git a/packages/cli/src/Server.ts b/packages/cli/src/Server.ts index 70baa21fcc..cbad22b1db 100644 --- a/packages/cli/src/Server.ts +++ b/packages/cli/src/Server.ts @@ -286,7 +286,7 @@ class App { }, defaultLocale: config.get('defaultLocale'), logLevel: config.get('logs.level'), - deploymentType: config.get('deployment.type'), + hiringBannerEnabled: config.get('hiringBanner.enabled'), templates: { enabled: config.get('templates.enabled'), host: config.get('templates.host'), diff --git a/packages/editor-ui/src/App.vue b/packages/editor-ui/src/App.vue index 0487c89a1c..84b408e9d3 100644 --- a/packages/editor-ui/src/App.vue +++ b/packages/editor-ui/src/App.vue @@ -34,7 +34,7 @@ export default mixins(showMessage).extend({ Telemetry, }, computed: { - ...mapGetters('settings', ['isInternalUser', 'isTemplatesEnabled', 'isTemplatesEndpointReachable']), + ...mapGetters('settings', ['isHiringBannerEnabled', 'isTemplatesEnabled', 'isTemplatesEndpointReachable']), isRootPath(): boolean { return this.$route.path === '/'; }, @@ -72,7 +72,7 @@ export default mixins(showMessage).extend({ await this.initSettings(); await this.initTemplates(); - if (!this.isInternalUser && this.$route.name !== 'WorkflowDemo') { + if (this.isHiringBannerEnabled && this.$route.name !== 'WorkflowDemo') { console.log(HIRING_BANNER); // eslint-disable-line no-console } }, diff --git a/packages/editor-ui/src/Interface.ts b/packages/editor-ui/src/Interface.ts index f65103cf34..d249ae3495 100644 --- a/packages/editor-ui/src/Interface.ts +++ b/packages/editor-ui/src/Interface.ts @@ -596,7 +596,7 @@ export interface IN8nUISettings { telemetry: ITelemetrySettings; defaultLocale: string; logLevel: ILogLevel; - deploymentType: string; + hiringBannerEnabled: boolean; templates: { enabled: boolean; host: string; diff --git a/packages/editor-ui/src/modules/settings.ts b/packages/editor-ui/src/modules/settings.ts index ff427f4bc6..d88a2b8551 100644 --- a/packages/editor-ui/src/modules/settings.ts +++ b/packages/editor-ui/src/modules/settings.ts @@ -43,8 +43,8 @@ const module: Module = { isTelemetryEnabled: (state) => { return state.settings.telemetry && state.settings.telemetry.enabled; }, - isInternalUser: (state): boolean => { - return state.settings.deploymentType === 'n8n-internal'; + isHiringBannerEnabled: (state): boolean => { + return state.settings.hiringBannerEnabled; }, isTemplatesEnabled: (state): boolean => { return Boolean(state.settings.templates && state.settings.templates.enabled);