You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
5.3 KiB
57 lines
5.3 KiB
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const path_1 = __importDefault(require("path"));
|
|
const template_base_1 = require("@electron-forge/template-base");
|
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
class WebpackTemplate extends template_base_1.BaseTemplate {
|
|
constructor() {
|
|
super(...arguments);
|
|
this.templateDir = path_1.default.resolve(__dirname, '..', 'tmpl');
|
|
}
|
|
async initializeTemplate(directory, options) {
|
|
const superTasks = await super.initializeTemplate(directory, options);
|
|
return [
|
|
...superTasks,
|
|
{
|
|
title: 'Setting up Forge configuration',
|
|
task: async () => {
|
|
await this.copyTemplateFile(directory, 'forge.config.js');
|
|
},
|
|
},
|
|
{
|
|
title: 'Setting up webpack configuration',
|
|
task: async () => {
|
|
await this.copyTemplateFile(directory, 'webpack.main.config.js');
|
|
await this.copyTemplateFile(directory, 'webpack.renderer.config.js');
|
|
await this.copyTemplateFile(directory, 'webpack.rules.js');
|
|
await this.copyTemplateFile(path_1.default.join(directory, 'src'), 'renderer.js');
|
|
await this.copyTemplateFile(path_1.default.join(directory, 'src'), 'preload.js');
|
|
await this.updateFileByLine(path_1.default.resolve(directory, 'src', 'index.js'), (line) => {
|
|
if (line.includes('mainWindow.loadFile'))
|
|
return ' mainWindow.loadURL(MAIN_WINDOW_WEBPACK_ENTRY);';
|
|
if (line.includes('preload: '))
|
|
return ' preload: MAIN_WINDOW_PRELOAD_WEBPACK_ENTRY,';
|
|
return line;
|
|
}, path_1.default.resolve(directory, 'src', 'main.js'));
|
|
await this.updateFileByLine(path_1.default.resolve(directory, 'src', 'index.html'), (line) => {
|
|
if (line.includes('link rel="stylesheet"'))
|
|
return '';
|
|
return line;
|
|
});
|
|
// update package.json entry point
|
|
const pjPath = path_1.default.resolve(directory, 'package.json');
|
|
const currentPJ = await fs_extra_1.default.readJson(pjPath);
|
|
currentPJ.main = '.webpack/main';
|
|
await fs_extra_1.default.writeJson(pjPath, currentPJ, {
|
|
spaces: 2,
|
|
});
|
|
},
|
|
},
|
|
];
|
|
}
|
|
}
|
|
exports.default = new WebpackTemplate();
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2VicGFja1RlbXBsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1dlYnBhY2tUZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdEQUF3QjtBQUd4QixpRUFBNkQ7QUFDN0Qsd0RBQTBCO0FBRTFCLE1BQU0sZUFBZ0IsU0FBUSw0QkFBWTtJQUExQzs7UUFDUyxnQkFBVyxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQStDN0QsQ0FBQztJQTdDUSxLQUFLLENBQUMsa0JBQWtCLENBQUMsU0FBaUIsRUFBRSxPQUE0QjtRQUM3RSxNQUFNLFVBQVUsR0FBRyxNQUFNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdEUsT0FBTztZQUNMLEdBQUcsVUFBVTtZQUNiO2dCQUNFLEtBQUssRUFBRSxnQ0FBZ0M7Z0JBQ3ZDLElBQUksRUFBRSxLQUFLLElBQUksRUFBRTtvQkFDZixNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztnQkFDNUQsQ0FBQzthQUNGO1lBQ0Q7Z0JBQ0UsS0FBSyxFQUFFLGtDQUFrQztnQkFDekMsSUFBSSxFQUFFLEtBQUssSUFBSSxFQUFFO29CQUNmLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO29CQUNqRSxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsNEJBQTRCLENBQUMsQ0FBQztvQkFDckUsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGtCQUFrQixDQUFDLENBQUM7b0JBQzNELE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO29CQUN4RSxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztvQkFFdkUsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQ3pCLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsRUFDMUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDUCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUM7NEJBQUUsT0FBTyxrREFBa0QsQ0FBQzt3QkFDcEcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQzs0QkFBRSxPQUFPLG1EQUFtRCxDQUFDO3dCQUMzRixPQUFPLElBQUksQ0FBQztvQkFDZCxDQUFDLEVBQ0QsY0FBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUMxQyxDQUFDO29CQUVGLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFO3dCQUNqRixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLENBQUM7NEJBQUUsT0FBTyxFQUFFLENBQUM7d0JBQ3RELE9BQU8sSUFBSSxDQUFDO29CQUNkLENBQUMsQ0FBQyxDQUFDO29CQUVILGtDQUFrQztvQkFDbEMsTUFBTSxNQUFNLEdBQUcsY0FBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUM7b0JBQ3ZELE1BQU0sU0FBUyxHQUFHLE1BQU0sa0JBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQzVDLFNBQVMsQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDO29CQUNqQyxNQUFNLGtCQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUU7d0JBQ3BDLE1BQU0sRUFBRSxDQUFDO3FCQUNWLENBQUMsQ0FBQztnQkFDTCxDQUFDO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBRUQsa0JBQWUsSUFBSSxlQUFlLEVBQUUsQ0FBQyJ9
|