mirror of
https://gitee.com/myxzgzs/boyue_jnpf.git
synced 2025-08-11 16:52:42 +08:00
46 lines
1.4 KiB
JavaScript
46 lines
1.4 KiB
JavaScript
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.signWithHook = void 0;
|
|
const path_1 = __importDefault(require("path"));
|
|
const log_1 = require("./utils/log");
|
|
let hookFunction;
|
|
function getHookFunction(options) {
|
|
if (options.hookFunction) {
|
|
return options.hookFunction;
|
|
}
|
|
if (options.hookModulePath) {
|
|
const module = require(path_1.default.resolve(options.hookModulePath));
|
|
if (module.default) {
|
|
return module.default;
|
|
}
|
|
if (typeof module === 'function') {
|
|
return module;
|
|
}
|
|
}
|
|
if (!hookFunction) {
|
|
throw new Error('No hook function found. Signing will not be possible. Please see the documentation for how to pass a hook function to @electron/windows-sign');
|
|
}
|
|
return hookFunction;
|
|
}
|
|
/**
|
|
* Sign with a hook function, basically letting everyone
|
|
* write completely custom sign logic
|
|
*
|
|
* @param {InternalSignOptions} options
|
|
*/
|
|
async function signWithHook(options) {
|
|
hookFunction = getHookFunction(options);
|
|
for (const file of options.files) {
|
|
try {
|
|
await hookFunction(file);
|
|
}
|
|
catch (error) {
|
|
(0, log_1.log)(`Error signing ${file}`, error);
|
|
}
|
|
}
|
|
}
|
|
exports.signWithHook = signWithHook;
|