MM-46445_Add a way to bypass Desktop App onboarding to buildConfig (#2232)

This commit is contained in:
Julian Mondragón 2022-08-23 10:19:41 -05:00 committed by GitHub
parent 93b6eb4f9b
commit 8f8407c16a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 18 additions and 1 deletions

View file

@ -108,6 +108,13 @@ commands:
type: string
default: "./linux/"
steps:
- when:
condition: << pipeline.parameters.run_nightly >>
steps:
- run:
name: Patch buildConfig file for run nightly
command: |
sed -i "" "s/skipOnboardingScreens:[[:blank:]]*false/skipOnboardingScreens: true/" ./src/common/config/buildConfig.ts;
- run:
name: npn run
command: npm run package:<< parameters.os >>

View file

@ -37,6 +37,7 @@ const buildConfig: BuildConfig = {
'mailto',
'tel',
],
skipOnboardingScreens: false,
};
export default buildConfig;

View file

@ -43,6 +43,7 @@ const defaultPreferences: ConfigV3 = {
lastActiveTeam: 0,
downloadLocation: getDefaultDownloadLocation(),
startInFullscreen: false,
skipOnboardingScreens: false,
};
export default defaultPreferences;

View file

@ -332,6 +332,10 @@ export class Config extends EventEmitter {
return this.combinedData?.appLanguage;
}
get skipOnboardingScreens() {
return this.combinedData?.skipOnboardingScreens ?? defaultPreferences.skipOnboardingScreens;
}
// initialization/processing methods
/**

View file

@ -150,6 +150,7 @@ describe('main/Validator', () => {
],
trayIconTheme: 'use_system',
useSpellChecker: true,
skipOnboardingScreens: false,
version: 3,
};

View file

@ -132,6 +132,7 @@ const configDataSchemaV3 = Joi.object<ConfigV3>({
alwaysClose: Joi.boolean(),
logLevel: Joi.string().default('info'),
appLanguage: Joi.string().allow(''),
skipOnboardingScreens: Joi.boolean().default(false),
});
// eg. data['community.mattermost.com'] = { data: 'certificate data', issuerName: 'COMODO RSA Domain Validation Secure Server CA'};

View file

@ -86,7 +86,7 @@ export function handleOpenTab(event: IpcMainEvent, serverName: string, tabName:
}
export function handleMainWindowIsShown() {
const showWelcomeScreen = !Config.teams.length;
const showWelcomeScreen = !Config.skipOnboardingScreens && !Config.teams.length;
const mainWindow = WindowManager.getMainWindow();
if (mainWindow) {

View file

@ -46,6 +46,7 @@ export type ConfigV3 = {
alwaysClose?: boolean;
logLevel?: string;
appLanguage?: string;
skipOnboardingScreens: boolean;
}
export type ConfigV2 = {
@ -106,6 +107,7 @@ export type BuildConfig = {
enableAutoUpdater: boolean;
managedResources: string[];
allowedProtocols: string[];
skipOnboardingScreens: boolean;
}
export type RegistryConfig = {