BuildConfig.js 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. var path_1 = require("path");
  4. var WinConfig_1 = require("./WinConfig");
  5. var MacConfig_1 = require("./MacConfig");
  6. var LinuxConfig_1 = require("./LinuxConfig");
  7. var NsisConfig_1 = require("./NsisConfig");
  8. var BuildConfig = /** @class */ (function () {
  9. function BuildConfig(pkg) {
  10. if (pkg === void 0) { pkg = {}; }
  11. var _this = this;
  12. this.nwVersion = 'lts';
  13. this.nwFlavor = 'normal';
  14. this.output = './dist/';
  15. this.outputPattern = '${NAME}-${VERSION}-${PLATFORM}-${ARCH}';
  16. this.packed = false;
  17. this.targets = [];
  18. this.files = ['**/*'];
  19. this.excludes = [];
  20. this.win = new WinConfig_1.WinConfig();
  21. this.mac = new MacConfig_1.MacConfig();
  22. this.linux = new LinuxConfig_1.LinuxConfig();
  23. this.nsis = new NsisConfig_1.NsisConfig();
  24. this.appId = undefined;
  25. this.ffmpegIntegration = false;
  26. this.strippedProperties = ['scripts', 'devDependencies', 'build'];
  27. this.overriddenProperties = {};
  28. var options = pkg.build ? pkg.build : {};
  29. Object.keys(this).map(function (key) {
  30. if (options[key] !== undefined) {
  31. switch (key) {
  32. case 'win':
  33. _this.win = new WinConfig_1.WinConfig(options.win);
  34. break;
  35. case 'mac':
  36. _this.mac = new MacConfig_1.MacConfig(options.mac);
  37. break;
  38. case 'linux':
  39. _this.linux = new LinuxConfig_1.LinuxConfig(options.linux);
  40. break;
  41. case 'nsis':
  42. _this.nsis = new NsisConfig_1.NsisConfig(options.nsis);
  43. break;
  44. default:
  45. _this[key] = options[key];
  46. break;
  47. }
  48. }
  49. });
  50. this.output = path_1.normalize(this.output);
  51. this.appId = this.appId ? this.appId : "io.github.nwjs." + pkg.name;
  52. if (this.win.versionStrings.ProductName && !this.win.productName) {
  53. console.warn('DEPRECATED: build.win.versionStrings.ProductName is deprecated, use build.win.productName instead.');
  54. this.win.productName = this.win.versionStrings.ProductName;
  55. }
  56. if (this.win.versionStrings.CompanyName && !this.win.companyName) {
  57. console.warn('DEPRECATED: build.win.versionStrings.CompanyName is deprecated, use build.win.companyName instead.');
  58. this.win.companyName = this.win.versionStrings.CompanyName;
  59. }
  60. if (this.win.versionStrings.FileDescription && !this.win.fileDescription) {
  61. console.warn('DEPRECATED: build.win.versionStrings.FileDescription is deprecated, use build.win.fileDescription instead.');
  62. this.win.fileDescription = this.win.versionStrings.FileDescription;
  63. }
  64. if (this.win.versionStrings.LegalCopyright && !this.win.copyright) {
  65. console.warn('DEPRECATED: build.win.versionStrings.LegalCopyright is deprecated, use build.win.copyright instead.');
  66. this.win.copyright = this.win.versionStrings.LegalCopyright;
  67. }
  68. this.win.productName = this.win.productName ? this.win.productName : pkg.name;
  69. this.win.companyName = this.win.companyName ? this.win.companyName : this.win.productName;
  70. this.win.fileDescription = this.win.fileDescription ? this.win.fileDescription : pkg.description;
  71. this.win.productVersion = this.win.productVersion ? this.win.productVersion : pkg.version;
  72. this.win.fileVersion = this.win.fileVersion ? this.win.fileVersion : this.win.productVersion;
  73. this.mac.name = this.mac.name ? this.mac.name : pkg.name;
  74. this.mac.displayName = this.mac.displayName ? this.mac.displayName : this.mac.name;
  75. this.mac.version = this.mac.version ? this.mac.version : pkg.version;
  76. this.mac.description = this.mac.description ? this.mac.description : pkg.description;
  77. }
  78. return BuildConfig;
  79. }());
  80. exports.BuildConfig = BuildConfig;
  81. //# sourceMappingURL=BuildConfig.js.map