electron-builder
Version:
A complete solution to package and build a ready for distribution Electron app for MacOS, Windows and Linux with “auto update” support out of the box
121 lines (105 loc) • 4.21 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.AppInfo = undefined;
var _bluebirdLstC;
function _load_bluebirdLstC() {
return _bluebirdLstC = require("bluebird-lst-c");
}
var _log;
function _load_log() {
return _log = require("./util/log");
}
var _platformPackager;
function _load_platformPackager() {
return _platformPackager = require("./platformPackager");
}
var _util;
function _load_util() {
return _util = require("./util/util");
}
var _repositoryInfo;
function _load_repositoryInfo() {
return _repositoryInfo = require("./repositoryInfo");
}
var _sanitizeFilename;
function _load_sanitizeFilename() {
return _sanitizeFilename = _interopRequireDefault(require("sanitize-filename"));
}
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
class AppInfo {
constructor(metadata, devMetadata, buildVersion) {
this.metadata = metadata;
this.devMetadata = devMetadata;
this.description = (0, (_platformPackager || _load_platformPackager()).smarten)(this.metadata.description);
this.version = metadata.version;
this.buildNumber = this.devMetadata.build["build-version"] || process.env.TRAVIS_BUILD_NUMBER || process.env.APPVEYOR_BUILD_NUMBER || process.env.CIRCLE_BUILD_NUM || process.env.BUILD_NUMBER;
if ((0, (_util || _load_util()).isEmptyOrSpaces)(buildVersion)) {
buildVersion = this.version;
if (!(0, (_util || _load_util()).isEmptyOrSpaces)(this.buildNumber)) {
buildVersion += `.${ this.buildNumber }`;
}
this.buildVersion = buildVersion;
} else {
this.buildVersion = buildVersion;
}
this.productName = getProductName(this.metadata, this.devMetadata);
this.productFilename = (0, (_sanitizeFilename || _load_sanitizeFilename()).default)(this.productName);
}
get companyName() {
return this.metadata.author.name;
}
get id() {
let appId = this.devMetadata.build["app-bundle-id"];
if (appId != null) {
(0, (_log || _load_log()).warn)("app-bundle-id is deprecated, please use appId");
}
if (this.devMetadata.build.appId != null) {
appId = this.devMetadata.build.appId;
}
const generateDefaultAppId = () => {
return `com.electron.${ this.metadata.name.toLowerCase() }`;
};
if (appId === "your.id" || (0, (_util || _load_util()).isEmptyOrSpaces)(appId)) {
const incorrectAppId = appId;
appId = generateDefaultAppId();
(0, (_log || _load_log()).warn)(`Do not use "${ incorrectAppId }" as appId, "${ appId }" will be used instead`);
}
return appId == null ? generateDefaultAppId() : appId;
}
get name() {
return this.metadata.name;
}
get copyright() {
const metadata = this.devMetadata.build;
const old = metadata["app-copyright"];
if (old != null) {
(0, (_log || _load_log()).warn)('"app-copyright" is deprecated — please use "copyright" instead');
}
const copyright = metadata.copyright || old;
if (copyright != null) {
return copyright;
}
return `Copyright © ${ new Date().getFullYear() } ${ this.metadata.author.name || this.productName }`;
}
computePackageUrl() {
var _this = this;
return (0, (_bluebirdLstC || _load_bluebirdLstC()).coroutine)(function* () {
const url = _this.metadata.homepage || _this.devMetadata.homepage;
if (url != null) {
return url;
}
const info = yield (0, (_repositoryInfo || _load_repositoryInfo()).getRepositoryInfo)(_this.metadata, _this.devMetadata);
if (info != null) {
return `https://github.com/${ info.user }/${ info.project }`;
}
return null;
})();
}
}
exports.AppInfo = AppInfo;
function getProductName(metadata, devMetadata) {
return devMetadata.build.productName || metadata.productName || metadata.name;
}
//# sourceMappingURL=appInfo.js.map