@24i/smartapps-bigscreen-rnv-build-engine 0.0.2-alpha.1355 → 0.0.2-alpha.1357

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/src/constants/buildSchemes.js +1 -1
  2. package/dist/src/constants/platforms.js +1 -1
  3. package/dist/src/index.js +21 -23
  4. package/dist/src/resolvers/resolveBaseUrl.js +12 -14
  5. package/dist/src/resolvers/resolveBuildVersion.js +15 -16
  6. package/dist/src/resolvers/resolveBuildVersionOffset.js +11 -12
  7. package/dist/src/resolvers/resolveDeployLocations.js +41 -54
  8. package/dist/src/resolvers/resolveGenericRnvConfig.js +17 -29
  9. package/dist/src/resolvers/resolveHbbtvDeployConfig.js +2 -2
  10. package/dist/src/resolvers/resolveHbbtvDeployUrl.js +6 -6
  11. package/dist/src/resolvers/resolveHbbtvRemoteBuildDirRelativePath.js +11 -11
  12. package/dist/src/resolvers/resolveZippedPlatformBuildsRelativeFilePath.js +10 -10
  13. package/dist/src/scripts/buildAllWithScheme.js +13 -13
  14. package/dist/src/scripts/gitReleaser/afterVersionBump.js +9 -10
  15. package/dist/src/scripts/gitReleaser/beforeVersionBump.js +6 -7
  16. package/dist/src/scripts/gitReleaser/checkReleaseNotes.js +8 -9
  17. package/dist/src/scripts/gitReleaser/pushRelease.js +16 -17
  18. package/dist/src/scripts/gitReleaser/pushReleaseCandidate.js +3 -3
  19. package/dist/src/scripts/gitReleaser/pushReleaseNotes.js +15 -16
  20. package/dist/src/scripts/release/deleteSourceMaps.js +5 -5
  21. package/dist/src/scripts/release/deployToAppCenter.js +34 -35
  22. package/dist/src/scripts/release/githubRelease.js +56 -60
  23. package/dist/src/scripts/release/notifySlack/makePayload.js +43 -47
  24. package/dist/src/scripts/release/notifySlack/notifySlack.js +9 -10
  25. package/dist/src/scripts/release/notifySlack/slackBlockKitBuilder.js +20 -23
  26. package/dist/src/scripts/release/sentryRelease.js +33 -36
  27. package/dist/src/scripts/release/urlsMarkdown.js +22 -24
  28. package/dist/src/scripts/releaseAllWithScheme.js +25 -25
  29. package/dist/src/scripts/utils/cmdUtils.js +5 -5
  30. package/dist/src/scripts/utils/fsUtils.js +5 -5
  31. package/dist/src/scripts/utils/gitUtils.js +37 -37
  32. package/dist/src/scripts/utils/stringUtils.js +1 -4
  33. package/dist/src/sdks/index.js +14 -53
  34. package/dist/src/sdks/sdk-tizen/index.js +145 -250
  35. package/dist/src/sdks/sdk-webos/index.js +133 -231
  36. package/dist/src/sdks/sdk-webpack/index.js +19 -68
  37. package/dist/src/sdks/sdkUtils.js +13 -58
  38. package/dist/src/tasks/deploy/aswS3/aws.js +8 -8
  39. package/dist/src/tasks/deploy/aswS3/deployS3.js +43 -82
  40. package/dist/src/tasks/deploy/hbbtv/deployHbbtv.js +67 -136
  41. package/dist/src/tasks/engineTasks.js +9 -9
  42. package/dist/src/tasks/task.rnv.build.js +70 -127
  43. package/dist/src/tasks/task.rnv.configure.js +37 -87
  44. package/dist/src/tasks/task.rnv.configureSoft.js +20 -73
  45. package/dist/src/tasks/task.rnv.deploy.js +27 -77
  46. package/dist/src/tasks/task.rnv.hooks.run.js +40 -91
  47. package/dist/src/tasks/task.rnv.package.js +16 -59
  48. package/dist/src/tasks/task.rnv.project.configure.js +78 -181
  49. package/dist/src/tasks/task.rnv.start.js +39 -85
  50. package/dist/src/utils/forEachSupportedPlatformFlavour.js +11 -12
  51. package/dist/src/utils/replaceRelevantStringsInConfig/replaceRelevantStringsInConfig.js +9 -10
  52. package/dist/src/utils/replaceRelevantStringsInConfig/replaceTemplateString.js +22 -28
  53. package/dist/src/utils/zipBuildsByPlatforms.js +24 -24
  54. package/dist/templates/platforms/_shared/template.js +53 -38
  55. package/dist/templates/platforms/_shared/webpack.base.js +86 -106
  56. package/dist/templates/platforms/entone/webpack.config.dev.js +43 -22
  57. package/dist/templates/platforms/entone/webpack.config.prod.js +38 -21
  58. package/dist/templates/platforms/hbbtv/webpack.config.dev.js +57 -23
  59. package/dist/templates/platforms/hbbtv/webpack.config.prod.js +52 -22
  60. package/dist/templates/platforms/tizen/webpack.config.dev.js +44 -22
  61. package/dist/templates/platforms/tizen/webpack.config.prod.js +38 -21
  62. package/dist/templates/platforms/webos/webpack.config.dev.js +47 -24
  63. package/dist/templates/platforms/webos/webpack.config.prod.js +40 -23
  64. package/dist/templates/platforms/webtv/webpack.config.dev.js +43 -22
  65. package/dist/templates/platforms/webtv/webpack.config.prod.js +38 -21
  66. package/package.json +2 -2
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
- var _a, _b;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
- var assert_1 = require("assert");
5
- var resolvers_1 = require("../../resolvers");
6
- var gitUtils_1 = require("../utils/gitUtils");
7
- var ok = assert_1.strict.ok;
8
- var c = resolvers_1.getBaseConfig();
9
- var _c = ((_b = (_a = c.buildConfig) === null || _a === void 0 ? void 0 : _a.common) === null || _b === void 0 ? void 0 : _b.git) || {}, _d = _c.branchNames, branchNames = _d === void 0 ? {} : _d, _e = _c.commitTitles, commitTitles = _e === void 0 ? {} : _e;
3
+ const assert_1 = require("assert");
4
+ const resolvers_1 = require("../../resolvers");
5
+ const gitUtils_1 = require("../utils/gitUtils");
6
+ const { ok } = assert_1.strict;
7
+ const c = resolvers_1.getBaseConfig();
8
+ const { branchNames = {}, commitTitles = {} } = c.buildConfig?.common?.git || {};
10
9
  ok(branchNames.dev);
11
10
  ok(branchNames.rc);
12
11
  ok(commitTitles.versionBump);
@@ -1,16 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkReleaseNotes = void 0;
4
- var assert_1 = require("assert");
5
- var utils_1 = require("../utils");
6
- var ok = assert_1.strict.ok;
7
- var checkReleaseNotes = function (c) {
8
- var _a, _b;
9
- var _c = ((_b = (_a = c.buildConfig) === null || _a === void 0 ? void 0 : _a.common) === null || _b === void 0 ? void 0 : _b.releaseNotes) || {}, relativePath = _c.relativePath, _d = _c.requiredRows, requiredRows = _d === void 0 ? [] : _d;
4
+ const assert_1 = require("assert");
5
+ const utils_1 = require("../utils");
6
+ const { ok } = assert_1.strict;
7
+ const checkReleaseNotes = (c) => {
8
+ const { relativePath, requiredRows = [] } = c.buildConfig?.common?.releaseNotes || {};
10
9
  utils_1.fsUtils.assertPath(relativePath);
11
- var fileContent = utils_1.fsUtils.getFileContentAsString(relativePath);
12
- var assertFileContentRow = function (expectedRowContent) {
13
- var errorMsg = relativePath + " should contain following row: \"" + expectedRowContent + "\"";
10
+ const fileContent = utils_1.fsUtils.getFileContentAsString(relativePath);
11
+ const assertFileContentRow = (expectedRowContent) => {
12
+ const errorMsg = `${relativePath} should contain following row: "${expectedRowContent}"`;
14
13
  ok(fileContent.includes(expectedRowContent), errorMsg);
15
14
  };
16
15
  requiredRows.forEach(assertFileContentRow);
@@ -1,16 +1,15 @@
1
1
  "use strict";
2
- var _a, _b;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
- var assert_1 = require("assert");
5
- var resolvers_1 = require("../../resolvers");
6
- var utils_1 = require("../utils");
7
- var checkReleaseNotes_1 = require("./checkReleaseNotes");
8
- var ok = assert_1.strict.ok;
9
- var c = resolvers_1.getBaseConfig();
10
- var _c = ((_b = (_a = c.buildConfig) === null || _a === void 0 ? void 0 : _a.common) === null || _b === void 0 ? void 0 : _b.git) || {}, _d = _c.branchNames, branchNames = _d === void 0 ? {} : _d, pullRequestTitles = _c.pullRequestTitles;
11
- var rcBranchName = branchNames.rc;
12
- var distBranchName = branchNames.dist;
13
- var devBranchName = branchNames.dev;
3
+ const assert_1 = require("assert");
4
+ const resolvers_1 = require("../../resolvers");
5
+ const utils_1 = require("../utils");
6
+ const checkReleaseNotes_1 = require("./checkReleaseNotes");
7
+ const { ok } = assert_1.strict;
8
+ const c = resolvers_1.getBaseConfig();
9
+ const { branchNames = {}, pullRequestTitles } = c.buildConfig?.common?.git || {};
10
+ const rcBranchName = branchNames.rc;
11
+ const distBranchName = branchNames.dist;
12
+ const devBranchName = branchNames.dev;
14
13
  ok(rcBranchName);
15
14
  ok(distBranchName);
16
15
  ok(devBranchName);
@@ -18,16 +17,16 @@ utils_1.gitUtils.assertCurrentBranch(rcBranchName);
18
17
  utils_1.gitUtils.assertEmptyStatusList();
19
18
  utils_1.gitUtils.assertRemoteBranch(rcBranchName);
20
19
  utils_1.gitUtils.assertRemoteBranch(distBranchName);
21
- var distributionPrTitle = pullRequestTitles.rcToDist;
22
- var developmentPrTitle = pullRequestTitles.rcToDev;
20
+ const distributionPrTitle = pullRequestTitles.rcToDist;
21
+ const developmentPrTitle = pullRequestTitles.rcToDev;
23
22
  ok(distributionPrTitle);
24
23
  ok(developmentPrTitle);
25
24
  utils_1.gitUtils.pull();
26
25
  checkReleaseNotes_1.checkReleaseNotes(c);
27
- console.log("Creating Pull Request from " + rcBranchName + " branch to " + distBranchName + " branch...");
28
- console.log("Applied PR title: \"" + distributionPrTitle + "\"");
26
+ console.log(`Creating Pull Request from ${rcBranchName} branch to ${distBranchName} branch...`);
27
+ console.log(`Applied PR title: "${distributionPrTitle}"`);
29
28
  utils_1.gitUtils.pullRequest(rcBranchName, distBranchName, distributionPrTitle);
30
- console.log("\nCreating Pull Request from " + rcBranchName + " branch to " + devBranchName + " branch...");
31
- console.log("Applied PR title: \"" + developmentPrTitle + "\"");
29
+ console.log(`\nCreating Pull Request from ${rcBranchName} branch to ${devBranchName} branch...`);
30
+ console.log(`Applied PR title: "${developmentPrTitle}"`);
32
31
  utils_1.gitUtils.pullRequest(rcBranchName, devBranchName, developmentPrTitle);
33
32
  console.log('\nDone! Pull requests have been created!');
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var child_process_1 = require("child_process");
3
+ const child_process_1 = require("child_process");
4
4
  console.log('Bumping the version...');
5
- var bumpType = process.argv[2] || 'patch';
6
- child_process_1.execSync("npm --no-git-tag-version version " + bumpType, { stdio: 'inherit' });
5
+ const bumpType = process.argv[2] || 'patch';
6
+ child_process_1.execSync(`npm --no-git-tag-version version ${bumpType}`, { stdio: 'inherit' });
@@ -1,18 +1,17 @@
1
1
  "use strict";
2
- var _a, _b, _c, _d;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
- var assert_1 = require("assert");
5
- var resolvers_1 = require("../../resolvers");
6
- var utils_1 = require("../utils");
7
- var checkReleaseNotes_1 = require("./checkReleaseNotes");
8
- var ok = assert_1.strict.ok;
9
- var c = resolvers_1.getBaseConfig();
10
- var _e = ((_b = (_a = c.buildConfig) === null || _a === void 0 ? void 0 : _a.common) === null || _b === void 0 ? void 0 : _b.git) || {}, _f = _e.branchNames, branchNames = _f === void 0 ? {} : _f, _g = _e.commitTitles, commitTitles = _g === void 0 ? {} : _g, _h = _e.pullRequestTitles, pullRequestTitles = _h === void 0 ? {} : _h;
11
- var _j = (((_d = (_c = c.buildConfig) === null || _c === void 0 ? void 0 : _c.common) === null || _d === void 0 ? void 0 : _d.releaseNotes) || {}).relativePath, relativePath = _j === void 0 ? [] : _j;
12
- var rcBranchName = branchNames.rc;
13
- var releaseNotesBranchName = branchNames.rcReleaseNotes;
14
- var commitTitle = commitTitles.rcReleaseNotes;
15
- var prTitle = pullRequestTitles.releaseNotesToRc;
3
+ const assert_1 = require("assert");
4
+ const resolvers_1 = require("../../resolvers");
5
+ const utils_1 = require("../utils");
6
+ const checkReleaseNotes_1 = require("./checkReleaseNotes");
7
+ const { ok } = assert_1.strict;
8
+ const c = resolvers_1.getBaseConfig();
9
+ const { branchNames = {}, commitTitles = {}, pullRequestTitles = {}, } = c.buildConfig?.common?.git || {};
10
+ const { relativePath = [] } = c.buildConfig?.common?.releaseNotes || {};
11
+ const rcBranchName = branchNames.rc;
12
+ const releaseNotesBranchName = branchNames.rcReleaseNotes;
13
+ const commitTitle = commitTitles.rcReleaseNotes;
14
+ const prTitle = pullRequestTitles.releaseNotesToRc;
16
15
  ok(relativePath);
17
16
  ok(releaseNotesBranchName);
18
17
  ok(commitTitle);
@@ -21,13 +20,13 @@ utils_1.gitUtils.assertCurrentBranch(rcBranchName);
21
20
  utils_1.gitUtils.assertRemoteBranch(rcBranchName);
22
21
  checkReleaseNotes_1.checkReleaseNotes(c);
23
22
  utils_1.gitUtils.pull();
24
- var changedFilesCount = utils_1.gitUtils.statusList().length;
23
+ const changedFilesCount = utils_1.gitUtils.statusList().length;
25
24
  if (changedFilesCount === 0) {
26
- console.log("It seems " + relativePath + " file has been updated before.");
25
+ console.log(`It seems ${relativePath} file has been updated before.`);
27
26
  console.log('Skipping making a commit, if needed, please continue on your own (manually).');
28
27
  }
29
28
  else {
30
- ok(changedFilesCount === 1, "Only " + relativePath + " should contain changes!");
29
+ ok(changedFilesCount === 1, `Only ${relativePath} should contain changes!`);
31
30
  utils_1.gitUtils.createBranch(releaseNotesBranchName);
32
31
  utils_1.gitUtils.checkout(releaseNotesBranchName);
33
32
  utils_1.gitUtils.add([relativePath]);
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.deleteSourceMaps = void 0;
4
- var child_process_1 = require("child_process");
5
- var executeSync = function (cmd) { return child_process_1.execSync(cmd, { stdio: 'inherit' }); };
6
- var deleteSourceMaps = function (c) {
7
- var platformBuildsDir = c.buildConfig.paths.platformBuildsDir;
8
- executeSync("find " + platformBuildsDir + " -type f -iname \"*.map\" -delete");
4
+ const child_process_1 = require("child_process");
5
+ const executeSync = (cmd) => child_process_1.execSync(cmd, { stdio: 'inherit' });
6
+ const deleteSourceMaps = (c) => {
7
+ const { platformBuildsDir } = c.buildConfig.paths;
8
+ executeSync(`find ${platformBuildsDir} -type f -iname "*.map" -delete`);
9
9
  console.log('Source Maps deleted...');
10
10
  };
11
11
  exports.deleteSourceMaps = deleteSourceMaps;
@@ -20,24 +20,24 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.deployToAppCenter = void 0;
23
- var child_process_1 = require("child_process");
24
- var fs = __importStar(require("fs"));
25
- var common_1 = require("rnv/dist/core/common");
26
- var resolvers_1 = require("../../resolvers");
27
- var urlsMarkdown_1 = require("./urlsMarkdown");
28
- var appCenterRelease = function (params) {
29
- var filePath = params.filePath, releaseNotesPath = params.releaseNotesPath, buildVersion = params.buildVersion, token = params.token, projectName = params.projectName, _a = params.group, group = _a === void 0 ? 'Collaborators' : _a, _b = params.organizationName, organizationName = _b === void 0 ? '24i-Media' : _b;
30
- var app = organizationName + "/" + projectName;
23
+ const child_process_1 = require("child_process");
24
+ const fs = __importStar(require("fs"));
25
+ const common_1 = require("rnv/dist/core/common");
26
+ const resolvers_1 = require("../../resolvers");
27
+ const urlsMarkdown_1 = require("./urlsMarkdown");
28
+ const appCenterRelease = (params) => {
29
+ const { filePath, releaseNotesPath, buildVersion, token, projectName, group = 'Collaborators', organizationName = '24i-Media', } = params;
30
+ const app = `${organizationName}/${projectName}`;
31
31
  child_process_1.execSync('appcenter distribute release '
32
- + ("--file \"" + filePath + "\" ")
33
- + ("--release-notes-file \"" + releaseNotesPath + "\" ")
34
- + ("--build-version \"" + buildVersion + "\" ")
35
- + ("--app \"" + app + "\" ")
36
- + ("--token \"" + token + "\" ")
37
- + ("--group \"" + group + "\" ")
32
+ + `--file "${filePath}" `
33
+ + `--release-notes-file "${releaseNotesPath}" `
34
+ + `--build-version "${buildVersion}" `
35
+ + `--app "${app}" `
36
+ + `--token "${token}" `
37
+ + `--group "${group}" `
38
38
  + '--disable-telemetry', { stdio: 'inherit' });
39
39
  };
40
- var getAppCenterConfigByPlatformName = function (c, platformName) {
40
+ const getAppCenterConfigByPlatformName = (c, platformName) => {
41
41
  try {
42
42
  return c.buildConfig.platforms[platformName].deploy.appCenter || null;
43
43
  }
@@ -45,40 +45,39 @@ var getAppCenterConfigByPlatformName = function (c, platformName) {
45
45
  return null;
46
46
  }
47
47
  };
48
- var getTokenByPlatform = function (platformName) {
49
- if (platformName === void 0) { platformName = ''; }
50
- var envVariableName = "APPCENTER_TOKEN_" + platformName.toUpperCase();
48
+ const getTokenByPlatform = (platformName = '') => {
49
+ const envVariableName = `APPCENTER_TOKEN_${platformName.toUpperCase()}`;
51
50
  return process.env[envVariableName] || '';
52
51
  };
53
- var processPlatform = function (c, platformName) {
54
- var appCenterConfig = getAppCenterConfigByPlatformName(c, platformName);
52
+ const processPlatform = (c, platformName) => {
53
+ const appCenterConfig = getAppCenterConfigByPlatformName(c, platformName);
55
54
  if (!appCenterConfig)
56
55
  return;
57
- var appName = appCenterConfig.appName;
58
- var token = getTokenByPlatform(platformName);
59
- var zipPath = resolvers_1.resolveZippedPlatformBuildsRelativeFilePath(c, platformName);
60
- var buildVersion = common_1.getConfigProp(c, platformName, 'packageVersion', '');
61
- var releaseNotesPath = common_1.getConfigProp(c, platformName, 'releaseNotes', {}).relativePath || '';
56
+ const { appName } = appCenterConfig;
57
+ const token = getTokenByPlatform(platformName);
58
+ const zipPath = resolvers_1.resolveZippedPlatformBuildsRelativeFilePath(c, platformName);
59
+ const buildVersion = common_1.getConfigProp(c, platformName, 'packageVersion', '');
60
+ const releaseNotesPath = common_1.getConfigProp(c, platformName, 'releaseNotes', {}).relativePath || '';
62
61
  if (!appName || !token || !releaseNotesPath || !zipPath || !buildVersion)
63
62
  return;
64
- var tempReleaseNotesPath = "RELEASE_NOTES_APPCENTER_" + platformName.toUpperCase() + ".md";
63
+ const tempReleaseNotesPath = `RELEASE_NOTES_APPCENTER_${platformName.toUpperCase()}.md`;
65
64
  if (fs.existsSync(tempReleaseNotesPath)) {
66
65
  fs.unlinkSync(tempReleaseNotesPath);
67
66
  }
68
- child_process_1.execSync("cat " + releaseNotesPath + " >> " + tempReleaseNotesPath);
69
- var urlsMarkdown = urlsMarkdown_1.getUrlsMarkdown(c, [platformName]);
70
- child_process_1.execSync("echo \"" + urlsMarkdown + "\" >> " + tempReleaseNotesPath);
71
- console.log("Deploying " + platformName + " platform to AppCenter.ms...");
67
+ child_process_1.execSync(`cat ${releaseNotesPath} >> ${tempReleaseNotesPath}`);
68
+ const urlsMarkdown = urlsMarkdown_1.getUrlsMarkdown(c, [platformName]);
69
+ child_process_1.execSync(`echo "${urlsMarkdown}" >> ${tempReleaseNotesPath}`);
70
+ console.log(`Deploying ${platformName} platform to AppCenter.ms...`);
72
71
  appCenterRelease({
73
72
  projectName: appName,
74
- buildVersion: buildVersion,
73
+ buildVersion,
75
74
  filePath: zipPath,
76
75
  releaseNotesPath: tempReleaseNotesPath,
77
- token: token,
76
+ token,
78
77
  });
79
78
  };
80
- var deployToAppCenter = function (c) {
81
- var _a = (c.buildConfig.defaults || {}).supportedPlatforms, supportedPlatforms = _a === void 0 ? [] : _a;
82
- supportedPlatforms.forEach(function (platformName) { return processPlatform(c, platformName); });
79
+ const deployToAppCenter = (c) => {
80
+ const { supportedPlatforms = [] } = c.buildConfig.defaults || {};
81
+ supportedPlatforms.forEach((platformName) => processPlatform(c, platformName));
83
82
  };
84
83
  exports.deployToAppCenter = deployToAppCenter;
@@ -20,34 +20,31 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.githubRelease = void 0;
23
- var child_process_1 = require("child_process");
24
- var fs = __importStar(require("fs"));
25
- var assert_1 = require("assert");
26
- var path_1 = require("path");
27
- var resolvers_1 = require("../../resolvers");
28
- var urlsMarkdown_1 = require("./urlsMarkdown");
29
- var ok = assert_1.strict.ok;
30
- var token = process.env.GITHUB_TOKEN;
31
- var targetCommit = process.env.TRAVIS_COMMIT;
32
- var githubContentType = 'application/vnd.github.v3+json';
33
- var githubReleaseNotesPath = 'RELEASE_NOTES_GITHUB.md';
34
- var handleResponseErrors = function (response) {
35
- var errors = response.errors, message = response.message;
23
+ const child_process_1 = require("child_process");
24
+ const fs = __importStar(require("fs"));
25
+ const assert_1 = require("assert");
26
+ const path_1 = require("path");
27
+ const resolvers_1 = require("../../resolvers");
28
+ const urlsMarkdown_1 = require("./urlsMarkdown");
29
+ const { ok } = assert_1.strict;
30
+ const token = process.env.GITHUB_TOKEN;
31
+ const targetCommit = process.env.TRAVIS_COMMIT;
32
+ const githubContentType = 'application/vnd.github.v3+json';
33
+ const githubReleaseNotesPath = 'RELEASE_NOTES_GITHUB.md';
34
+ const handleResponseErrors = (response) => {
35
+ const { errors, message } = response;
36
36
  if (message && !errors)
37
- throw new Error("GitHub error: " + message);
37
+ throw new Error(`GitHub error: ${message}`);
38
38
  if (!errors)
39
39
  return;
40
- var makeErrorDetailString = function (error) {
41
- if (error === void 0) { error = {}; }
42
- return Object
43
- .keys(error)
44
- .map(function (key) { return key + ": \"" + error[key] + "\""; })
45
- .join(', ');
46
- };
47
- var errorsDetails = errors.map(makeErrorDetailString);
48
- throw new Error("GitHub error: " + (message || '') + "\n" + errorsDetails.join('\n'));
40
+ const makeErrorDetailString = (error = {}) => Object
41
+ .keys(error)
42
+ .map((key) => `${key}: "${error[key]}"`)
43
+ .join(', ');
44
+ const errorsDetails = errors.map(makeErrorDetailString);
45
+ throw new Error(`GitHub error: ${message || ''}\n${errorsDetails.join('\n')}`);
49
46
  };
50
- var getReleaseNotesPath = function (c) {
47
+ const getReleaseNotesPath = (c) => {
51
48
  try {
52
49
  return c.buildConfig.common.releaseNotes.relativePath || '';
53
50
  }
@@ -55,30 +52,30 @@ var getReleaseNotesPath = function (c) {
55
52
  return '';
56
53
  }
57
54
  };
58
- var deleteFileIfExists = function (filePath) {
55
+ const deleteFileIfExists = (filePath) => {
59
56
  if (fs.existsSync(filePath)) {
60
57
  fs.unlinkSync(filePath);
61
58
  }
62
59
  };
63
- var makeGitHubReleaseNotes = function (c) {
64
- var releaseNotesPath = getReleaseNotesPath(c);
60
+ const makeGitHubReleaseNotes = (c) => {
61
+ const releaseNotesPath = getReleaseNotesPath(c);
65
62
  ok(releaseNotesPath, 'The path to the file with release notes is missing!');
66
63
  deleteFileIfExists(githubReleaseNotesPath);
67
- child_process_1.execSync("sed '1d;2d' " + releaseNotesPath + " >> " + githubReleaseNotesPath);
68
- var textToAppend = urlsMarkdown_1.getUrlsMarkdown(c);
69
- child_process_1.execSync("echo \"" + textToAppend + "\" >> " + githubReleaseNotesPath);
64
+ child_process_1.execSync(`sed '1d;2d' ${releaseNotesPath} >> ${githubReleaseNotesPath}`);
65
+ const textToAppend = urlsMarkdown_1.getUrlsMarkdown(c);
66
+ child_process_1.execSync(`echo "${textToAppend}" >> ${githubReleaseNotesPath}`);
70
67
  };
71
- var createRelease = function (c) {
72
- var _a = c.buildConfig.common, packageVersion = _a.packageVersion, _b = _a.git, git = _b === void 0 ? {} : _b;
73
- var versionLabel = "v" + packageVersion;
68
+ const createRelease = (c) => {
69
+ const { packageVersion, git = {} } = c.buildConfig.common;
70
+ const versionLabel = `v${packageVersion}`;
74
71
  ok(token, 'process.env.GITHUB_TOKEN is not set!');
75
72
  ok(targetCommit, 'process.env.TRAVIS_COMMIT is not set!');
76
73
  ok(git.owner, 'Missing value for rnv config prop: common.git.owner');
77
74
  ok(git.repo, 'Missing value for rnv config prop: common.git.repo');
78
75
  ok(packageVersion);
79
76
  makeGitHubReleaseNotes(c);
80
- var releaseNotesContent = fs.readFileSync(githubReleaseNotesPath).toString();
81
- var data = {
77
+ const releaseNotesContent = fs.readFileSync(githubReleaseNotesPath).toString();
78
+ const data = {
82
79
  tag_name: versionLabel,
83
80
  target_commitish: targetCommit,
84
81
  name: versionLabel,
@@ -86,50 +83,49 @@ var createRelease = function (c) {
86
83
  draft: false,
87
84
  prerelease: false,
88
85
  };
89
- var url = "https://api.github.com/repos/" + git.owner + "/" + git.repo + "/releases";
90
- var headers = "-H \"Accept: " + githubContentType + "\" -H \"Authorization: token " + token + "\"";
91
- var dataStringWithFixedSingleQuotes = JSON.stringify(data).replace(/'/g, "'\\''");
92
- var cmd = "curl -X POST " + headers + " " + url + " -d '" + dataStringWithFixedSingleQuotes + "'";
93
- console.log("Pushing GitHub Release: " + versionLabel + "...");
94
- var responseString = child_process_1.execSync(cmd, { stdio: 'pipe' }).toString();
95
- var response = JSON.parse(responseString);
86
+ const url = `https://api.github.com/repos/${git.owner}/${git.repo}/releases`;
87
+ const headers = `-H "Accept: ${githubContentType}" -H "Authorization: token ${token}"`;
88
+ const dataStringWithFixedSingleQuotes = JSON.stringify(data).replace(/'/g, "'\\''");
89
+ const cmd = `curl -X POST ${headers} ${url} -d '${dataStringWithFixedSingleQuotes}'`;
90
+ console.log(`Pushing GitHub Release: ${versionLabel}...`);
91
+ const responseString = child_process_1.execSync(cmd, { stdio: 'pipe' }).toString();
92
+ const response = JSON.parse(responseString);
96
93
  handleResponseErrors(response);
97
94
  console.log('Pushing done.');
98
95
  return response;
99
96
  };
100
- var getFileMimeType = function (filepath) {
101
- var cmd = "file --mime-type -b " + filepath;
97
+ const getFileMimeType = (filepath) => {
98
+ const cmd = `file --mime-type -b ${filepath}`;
102
99
  return child_process_1.execSync(cmd, { stdio: 'pipe' })
103
100
  .toString()
104
101
  .replace(/\r?\n/, '');
105
102
  };
106
- var uploadAsset = function (uploadUrl, filePath) {
107
- if (uploadUrl === void 0) { uploadUrl = ''; }
103
+ const uploadAsset = (uploadUrl = '', filePath) => {
108
104
  if (!uploadUrl)
109
105
  return null;
110
- var url = "" + uploadUrl.replace('{?name,label}', '');
111
- var headers = "-H \"Accept: " + githubContentType + "\" -H \"Authorization: token " + token + "\" -H \"content-type: " + getFileMimeType(filePath) + "\" -H \"content-length: " + fs.statSync(filePath).size + "\"";
112
- var cmd = "curl --data-binary @\"" + filePath + "\" " + headers + " " + url + "?name=" + path_1.basename(filePath);
113
- console.log("Uploading " + filePath + " asset to created GitHub Release...");
114
- var responseString = child_process_1.execSync(cmd, { stdio: 'pipe' }).toString();
115
- var uploadResponse = JSON.parse(responseString);
106
+ const url = `${uploadUrl.replace('{?name,label}', '')}`;
107
+ const headers = `-H "Accept: ${githubContentType}" -H "Authorization: token ${token}" -H "content-type: ${getFileMimeType(filePath)}" -H "content-length: ${fs.statSync(filePath).size}"`;
108
+ const cmd = `curl --data-binary @"${filePath}" ${headers} ${url}?name=${path_1.basename(filePath)}`;
109
+ console.log(`Uploading ${filePath} asset to created GitHub Release...`);
110
+ const responseString = child_process_1.execSync(cmd, { stdio: 'pipe' }).toString();
111
+ const uploadResponse = JSON.parse(responseString);
116
112
  handleResponseErrors(uploadResponse);
117
113
  console.log('Uploading done.');
118
114
  return uploadResponse;
119
115
  };
120
- var uploadZipWithPlatformBuilds = function (c, platformName, githubUploadUrl) {
121
- var zipFilePath = resolvers_1.resolveZippedPlatformBuildsRelativeFilePath(c, platformName);
116
+ const uploadZipWithPlatformBuilds = (c, platformName, githubUploadUrl) => {
117
+ const zipFilePath = resolvers_1.resolveZippedPlatformBuildsRelativeFilePath(c, platformName);
122
118
  if (zipFilePath) {
123
119
  uploadAsset(githubUploadUrl, zipFilePath);
124
120
  }
125
121
  };
126
- var githubRelease = function (c) {
127
- var releaseResponse = createRelease(c) || {};
128
- var uploadUrl = releaseResponse.upload_url;
122
+ const githubRelease = (c) => {
123
+ const releaseResponse = createRelease(c) || {};
124
+ const uploadUrl = releaseResponse.upload_url;
129
125
  ok(uploadUrl, 'Missing "upload_url" in release response!');
130
- var _a = c.buildConfig.defaults, defaults = _a === void 0 ? {} : _a;
131
- var _b = defaults.supportedPlatforms, supportedPlatforms = _b === void 0 ? [] : _b;
132
- supportedPlatforms.forEach(function (platformName) {
126
+ const { defaults = {} } = c.buildConfig;
127
+ const { supportedPlatforms = [] } = defaults;
128
+ supportedPlatforms.forEach((platformName) => {
133
129
  uploadZipWithPlatformBuilds(c, platformName, uploadUrl);
134
130
  });
135
131
  deleteFileIfExists(githubReleaseNotesPath);
@@ -1,24 +1,19 @@
1
1
  "use strict";
2
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
3
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
4
- to[j] = from[i];
5
- return to;
6
- };
7
2
  Object.defineProperty(exports, "__esModule", { value: true });
8
3
  exports.makeDistributionPayload = exports.makeReleaseCandidatePayload = exports.makeDevelopmentPayload = void 0;
9
- var slackBlockKitBuilder_1 = require("./slackBlockKitBuilder");
10
- var resolvers_1 = require("../../../resolvers");
11
- var getVersionsObject = function (c) {
12
- var _a = (resolvers_1.resolveDeployLocations(c) || {}).versions, versions = _a === void 0 ? [] : _a;
4
+ const slackBlockKitBuilder_1 = require("./slackBlockKitBuilder");
5
+ const resolvers_1 = require("../../../resolvers");
6
+ const getVersionsObject = (c) => {
7
+ const { versions = [] } = resolvers_1.resolveDeployLocations(c) || {};
13
8
  return versions;
14
9
  };
15
- var getVersion = function (c) { return Object.keys(getVersionsObject(c))[0] || ''; };
16
- var getPlatformsObject = function (c) {
17
- var version = getVersion(c);
18
- var _a = (getVersionsObject(c)[version] || {}).platforms, platforms = _a === void 0 ? {} : _a;
10
+ const getVersion = (c) => Object.keys(getVersionsObject(c))[0] || '';
11
+ const getPlatformsObject = (c) => {
12
+ const version = getVersion(c);
13
+ const { platforms = {} } = getVersionsObject(c)[version] || {};
19
14
  return platforms;
20
15
  };
21
- var getCommonAppName = function (c) {
16
+ const getCommonAppName = (c) => {
22
17
  try {
23
18
  return c.buildConfig.common.appName;
24
19
  }
@@ -26,67 +21,68 @@ var getCommonAppName = function (c) {
26
21
  return '';
27
22
  }
28
23
  };
29
- var makeFlavoursMarkdown = function (platformName, entries) { return entries
30
- .map(function (_a) {
31
- var flavour = _a[0], flavourData = _a[1];
32
- var indexUrl = flavourData.indexUrl, packageUrl = flavourData.packageUrl;
33
- return "- *" + flavour + "* [<" + packageUrl + "|Download>] [<" + indexUrl + "|Open deployed index.html>]";
24
+ const makeFlavoursMarkdown = (platformName, entries) => entries
25
+ .map(([flavour, flavourData]) => {
26
+ const { indexUrl, packageUrl } = flavourData;
27
+ return `- *${flavour}* [<${packageUrl}|Download>] [<${indexUrl}|Open deployed index.html>]`;
34
28
  })
35
- .join('\n'); };
36
- var makePackagePayload = function (c, platformName) {
37
- var platformData = getPlatformsObject(c)[platformName];
38
- var flavoursEntries = Object.entries(platformData);
29
+ .join('\n');
30
+ const makePackagePayload = (c, platformName) => {
31
+ const platformData = getPlatformsObject(c)[platformName];
32
+ const flavoursEntries = Object.entries(platformData);
39
33
  return [
40
34
  slackBlockKitBuilder_1.Divider.plain(),
41
- slackBlockKitBuilder_1.Context.mrkdwns(["Platform: *" + platformName + "*"]),
35
+ slackBlockKitBuilder_1.Context.mrkdwns([`Platform: *${platformName}*`]),
42
36
  slackBlockKitBuilder_1.Context.mrkdwns([makeFlavoursMarkdown(platformName, flavoursEntries)]),
43
37
  ];
44
38
  };
45
- var makePackagesPayload = function (c) {
46
- var platformList = Object.keys(getPlatformsObject(c));
39
+ const makePackagesPayload = (c) => {
40
+ const platformList = Object.keys(getPlatformsObject(c));
47
41
  return platformList
48
- .map(function (platformName) { return makePackagePayload(c, platformName); })
42
+ .map((platformName) => makePackagePayload(c, platformName))
49
43
  .flat();
50
44
  };
51
- var makeHeaderPayload = function (c, _a) {
52
- var _b = _a.title, title = _b === void 0 ? '' : _b, buttons = _a.buttons;
53
- var _c = buttons || {}, travisBuild = _c.travisBuild, gitHubRelease = _c.gitHubRelease;
54
- var _d = c.buildConfig.common.git || {}, owner = _d.owner, repo = _d.repo;
55
- var version = getVersion(c);
45
+ const makeHeaderPayload = (c, { title = '', buttons }) => {
46
+ const { travisBuild, gitHubRelease } = buttons || {};
47
+ const { owner, repo } = c.buildConfig.common.git || {};
48
+ const version = getVersion(c);
56
49
  return [
57
50
  slackBlockKitBuilder_1.Divider.plain(),
58
51
  slackBlockKitBuilder_1.Section.mrkdwn(title),
59
- slackBlockKitBuilder_1.Context.mrkdwns(["Version: *" + version + "*"]),
52
+ slackBlockKitBuilder_1.Context.mrkdwns([`Version: *${version}*`]),
60
53
  slackBlockKitBuilder_1.Actions.buttons([
61
54
  travisBuild ? {
62
55
  text: 'View Travis Build Log',
63
- url: process.env.TRAVIS_BUILD_WEB_URL || "https://travis-ci.com/github/" + owner + "/" + repo + "/branches",
56
+ url: process.env.TRAVIS_BUILD_WEB_URL || `https://travis-ci.com/github/${owner}/${repo}/branches`,
64
57
  } : null,
65
58
  gitHubRelease ? {
66
59
  text: 'View GitHub Release',
67
- url: "https://github.com/" + owner + "/" + repo + "/releases/tag/" + version,
60
+ url: `https://github.com/${owner}/${repo}/releases/tag/${version}`,
68
61
  } : null,
69
62
  ].filter(Boolean)),
70
63
  ];
71
64
  };
72
- var makePayload = function (c, title, buttons) { return ({
73
- blocks: __spreadArray(__spreadArray([], makeHeaderPayload(c, { title: title, buttons: buttons })), makePackagesPayload(c)),
74
- }); };
75
- var makeDevelopmentPayload = function (c) {
76
- var title = "There are new *development* builds for *" + getCommonAppName(c) + "* app!";
77
- var buttons = { travisBuild: true };
65
+ const makePayload = (c, title, buttons) => ({
66
+ blocks: [
67
+ ...makeHeaderPayload(c, { title, buttons }),
68
+ ...makePackagesPayload(c),
69
+ ],
70
+ });
71
+ const makeDevelopmentPayload = (c) => {
72
+ const title = `There are new *development* builds for *${getCommonAppName(c)}* app!`;
73
+ const buttons = { travisBuild: true };
78
74
  return makePayload(c, title, buttons);
79
75
  };
80
76
  exports.makeDevelopmentPayload = makeDevelopmentPayload;
81
- var makeReleaseCandidatePayload = function (c) {
82
- var title = "There are new *release candidate* builds for *" + getCommonAppName(c) + "* app!";
83
- var buttons = { travisBuild: true };
77
+ const makeReleaseCandidatePayload = (c) => {
78
+ const title = `There are new *release candidate* builds for *${getCommonAppName(c)}* app!`;
79
+ const buttons = { travisBuild: true };
84
80
  return makePayload(c, title, buttons);
85
81
  };
86
82
  exports.makeReleaseCandidatePayload = makeReleaseCandidatePayload;
87
- var makeDistributionPayload = function (c) {
88
- var title = "There are new *distribution* builds for *" + getCommonAppName(c) + "* app!";
89
- var buttons = { travisBuild: true, gitHubRelease: true };
83
+ const makeDistributionPayload = (c) => {
84
+ const title = `There are new *distribution* builds for *${getCommonAppName(c)}* app!`;
85
+ const buttons = { travisBuild: true, gitHubRelease: true };
90
86
  return makePayload(c, title, buttons);
91
87
  };
92
88
  exports.makeDistributionPayload = makeDistributionPayload;