Migrate app to TypeScript (#1637)

* Initial setup and migrated src/common

* WIP

* WIP

* WIP

* Main module basically finished

* Renderer process migrated

* Added CI step and some fixes

* Fixed remainder of issues and added proper ESLint config

* Fixed a couple issues

* Progress!

* Some more fixes

* Fixed a test

* Fix build step

* PR feedback
This commit is contained in:
Devin Binnie
2021-06-28 09:51:23 -04:00
committed by GitHub
parent 422673a740
commit 1b3d0eac8f
115 changed files with 16246 additions and 9921 deletions

51
src/main/AutoLauncher.ts Normal file
View File

@@ -0,0 +1,51 @@
// Copyright (c) 2015-2016 Yuya Ochiai
// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import AutoLaunch from 'auto-launch';
import {app} from 'electron';
import isDev from 'electron-is-dev';
import log from 'electron-log';
export default class AutoLauncher {
appLauncher: AutoLaunch;
constructor() {
this.appLauncher = new AutoLaunch({
name: app.name,
isHidden: true,
});
}
isEnabled() {
return this.appLauncher.isEnabled();
}
async blankPromise() {
return null;
}
async enable() {
if (isDev) {
log.warn('In development mode, autostart config never effects');
return this.blankPromise();
}
const enabled = await this.isEnabled();
if (!enabled) {
return this.appLauncher.enable();
}
return this.blankPromise();
}
async disable() {
if (isDev) {
log.warn('In development mode, autostart config never effects');
return this.blankPromise();
}
const enabled = await this.isEnabled();
if (enabled) {
return this.appLauncher.disable();
}
return this.blankPromise();
}
}