Allow to disable hiring banner (#2902)

*  Add flag

*  Adjust interfaces

*  Adjust store module

*  Adjust frontend settings

*  Adjust frontend display
This commit is contained in:
Iván Ovejero
2022-03-04 17:53:01 +01:00
committed by GitHub
parent 3bc06ee5c0
commit 2ec711aeb5
6 changed files with 16 additions and 7 deletions

View File

@@ -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.',

View File

@@ -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;

View File

@@ -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'),

View File

@@ -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
}
},

View File

@@ -596,7 +596,7 @@ export interface IN8nUISettings {
telemetry: ITelemetrySettings;
defaultLocale: string;
logLevel: ILogLevel;
deploymentType: string;
hiringBannerEnabled: boolean;
templates: {
enabled: boolean;
host: string;

View File

@@ -43,8 +43,8 @@ const module: Module<ISettingsState, IRootState> = {
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);