UNPKG

@kydronepilot/electron-winstore-auto-launch

Version:

Configure your Electron to start automatically when the user logs in

45 lines (44 loc) 1.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WindowsStoreAutoLaunch = exports.StartupTaskState = void 0; var StartupTaskState; (function (StartupTaskState) { StartupTaskState[StartupTaskState["disabled"] = 0] = "disabled"; StartupTaskState[StartupTaskState["disabledByUser"] = 1] = "disabledByUser"; StartupTaskState[StartupTaskState["enabled"] = 2] = "enabled"; })(StartupTaskState = exports.StartupTaskState || (exports.StartupTaskState = {})); class WindowsStoreAutoLaunch { /** * Returns the windows.applicationModel namespace for this model. If the app is not * running inside an appx container, this will fail. * * @returns windows.applicationModel namespace */ static getAppModel() { if (process.platform !== 'win32') { throw new Error('Platform is not win32'); } return require('@nodert-win10-rs3/windows.applicationmodel'); } /** * Returns the specified startupTask. * * @param taskId - ID of the task to fetch * @returns The task if one exists */ static async getStartupTask(taskId) { return new Promise((resolve, reject) => { const appModel = WindowsStoreAutoLaunch.getAppModel(); appModel.StartupTask.getAsync(taskId, (error, task) => { if (error) { return reject(error); } if (task) { return resolve(task); } return resolve(undefined); }); }); } } exports.WindowsStoreAutoLaunch = WindowsStoreAutoLaunch;