@24i/bigscreen-sdk 1.0.16 → 1.0.17-alpha.2324

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 (147) hide show
  1. package/package.json +4 -3
  2. package/packages/create-package/dist/createPackage.js +66 -0
  3. package/packages/create-package/dist/createPackage.js.map +1 -0
  4. package/packages/create-package/dist/index.js +5 -0
  5. package/packages/create-package/dist/index.js.map +1 -0
  6. package/packages/create-package/dist/questionnaire/questions.js +35 -0
  7. package/packages/create-package/dist/questionnaire/questions.js.map +1 -0
  8. package/packages/create-package/dist/settings/Settings.js +10 -0
  9. package/packages/create-package/dist/settings/Settings.js.map +1 -0
  10. package/packages/create-package/dist/types.js +3 -0
  11. package/packages/create-package/dist/types.js.map +1 -0
  12. package/packages/input/README.md +1 -1
  13. package/packages/input/src/Input.tsx +3 -5
  14. package/packages/interactable/src/Interactable.tsx +3 -22
  15. package/packages/rnv-build-engine/dist/src/constants/buildSchemes.js +14 -0
  16. package/packages/rnv-build-engine/dist/src/constants/index.js +7 -0
  17. package/packages/rnv-build-engine/dist/src/constants/platforms.js +14 -0
  18. package/packages/rnv-build-engine/dist/src/engine.js +94 -0
  19. package/packages/rnv-build-engine/dist/src/index.js +26 -0
  20. package/packages/rnv-build-engine/dist/src/resolvers/index.js +29 -0
  21. package/packages/rnv-build-engine/dist/src/resolvers/resolveBaseUrl.js +31 -0
  22. package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildFileExtension.js +12 -0
  23. package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildFileName.js +36 -0
  24. package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildVersion.js +42 -0
  25. package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildVersionOffset.js +34 -0
  26. package/packages/rnv-build-engine/dist/src/resolvers/resolveDeployLocations.js +79 -0
  27. package/packages/rnv-build-engine/dist/src/resolvers/resolveGenericRnvConfig.js +47 -0
  28. package/packages/rnv-build-engine/dist/src/resolvers/resolveHbbtvDeployConfig.js +13 -0
  29. package/packages/rnv-build-engine/dist/src/resolvers/resolveHbbtvDeployUrl.js +11 -0
  30. package/packages/rnv-build-engine/dist/src/resolvers/resolveHbbtvRemoteBuildDirRelativePath.js +24 -0
  31. package/packages/rnv-build-engine/dist/src/resolvers/resolveSupportedPlatforms.js +5 -0
  32. package/packages/rnv-build-engine/dist/src/resolvers/resolveUsedFlavours.js +23 -0
  33. package/packages/rnv-build-engine/dist/src/resolvers/resolveZippedPlatformBuildsRelativeFilePath.js +14 -0
  34. package/packages/rnv-build-engine/dist/src/scripts/buildAllWithScheme.js +25 -0
  35. package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/formatTableDataSpaces.js +30 -0
  36. package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/generateDeployUrls.js +90 -0
  37. package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/index.js +4 -0
  38. package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/makeTableDataByScheme.js +63 -0
  39. package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/afterVersionBump.js +18 -0
  40. package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/beforeVersionBump.js +12 -0
  41. package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/checkReleaseNotes.js +16 -0
  42. package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/pushRelease.js +31 -0
  43. package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/pushReleaseCandidate.js +6 -0
  44. package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/pushReleaseNotes.js +37 -0
  45. package/packages/rnv-build-engine/dist/src/scripts/release/deleteSourceMaps.js +11 -0
  46. package/packages/rnv-build-engine/dist/src/scripts/release/deployToAppCenter.js +83 -0
  47. package/packages/rnv-build-engine/dist/src/scripts/release/githubRelease.js +128 -0
  48. package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/generateWebhoook.js +66 -0
  49. package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/makePayload.js +92 -0
  50. package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/notifySlack.js +44 -0
  51. package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/slackBlockKitBuilder.js +39 -0
  52. package/packages/rnv-build-engine/dist/src/scripts/release/sentryRelease.js +85 -0
  53. package/packages/rnv-build-engine/dist/src/scripts/release/urlsMarkdown.js +62 -0
  54. package/packages/rnv-build-engine/dist/src/scripts/releaseAllWithScheme.js +79 -0
  55. package/packages/rnv-build-engine/dist/src/scripts/utils/cmdUtils.js +12 -0
  56. package/packages/rnv-build-engine/dist/src/scripts/utils/fsUtils.js +33 -0
  57. package/packages/rnv-build-engine/dist/src/scripts/utils/generateIcons.js +29 -0
  58. package/packages/rnv-build-engine/dist/src/scripts/utils/gitUtils.js +78 -0
  59. package/packages/rnv-build-engine/dist/src/scripts/utils/index.js +27 -0
  60. package/packages/rnv-build-engine/dist/src/scripts/utils/stringUtils.js +5 -0
  61. package/packages/rnv-build-engine/dist/src/sdks/index.js +42 -0
  62. package/packages/rnv-build-engine/dist/src/sdks/sdk-tizen/index.js +13 -0
  63. package/packages/rnv-build-engine/dist/src/sdks/sdk-tizen/sdkTizen.js +240 -0
  64. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/index.js +14 -0
  65. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/registerSdkPath.js +14 -0
  66. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/index.js +5 -0
  67. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/sdkInstaller.js +39 -0
  68. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/clean.js +11 -0
  69. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/download.js +74 -0
  70. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/index.js +11 -0
  71. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/install.js +23 -0
  72. package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/unzip.js +12 -0
  73. package/packages/rnv-build-engine/dist/src/sdks/sdk-webos/index.js +13 -0
  74. package/packages/rnv-build-engine/dist/src/sdks/sdk-webos/sdkWebos.js +135 -0
  75. package/packages/rnv-build-engine/dist/src/sdks/sdk-webpack/index.js +13 -0
  76. package/packages/rnv-build-engine/dist/src/sdks/sdk-webpack/sdkWebpack.js +32 -0
  77. package/packages/rnv-build-engine/dist/src/sdks/sdk-xbox/index.js +13 -0
  78. package/packages/rnv-build-engine/dist/src/sdks/sdk-xbox/sdkXbox.js +222 -0
  79. package/packages/rnv-build-engine/dist/src/tasks/deploy/aswS3/aws.js +22 -0
  80. package/packages/rnv-build-engine/dist/src/tasks/deploy/aswS3/deployS3.js +71 -0
  81. package/packages/rnv-build-engine/dist/src/tasks/deploy/hbbtv/deployHbbtv.js +94 -0
  82. package/packages/rnv-build-engine/dist/src/tasks/engineTasks.js +22 -0
  83. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.build.js +99 -0
  84. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.configure.js +45 -0
  85. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.configureSoft.js +31 -0
  86. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.deploy.js +40 -0
  87. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.hooks.run.js +71 -0
  88. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.package.js +19 -0
  89. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.project.configure.js +116 -0
  90. package/packages/rnv-build-engine/dist/src/tasks/task.rnv.start.js +72 -0
  91. package/packages/rnv-build-engine/dist/src/types/c.js +2 -0
  92. package/packages/rnv-build-engine/dist/src/types/constants.js +2 -0
  93. package/packages/rnv-build-engine/dist/src/types/index.js +2 -0
  94. package/packages/rnv-build-engine/dist/src/utils/forEachSupportedPlatformFlavour.js +24 -0
  95. package/packages/rnv-build-engine/dist/src/utils/generatePngSpriteMap.js +78 -0
  96. package/packages/rnv-build-engine/dist/src/utils/generateSvgSpriteMap.js +113 -0
  97. package/packages/rnv-build-engine/dist/src/utils/mergeSvgAndPngIcons.js +61 -0
  98. package/packages/rnv-build-engine/dist/src/utils/replaceRelevantStringsInConfig/index.js +5 -0
  99. package/packages/rnv-build-engine/dist/src/utils/replaceRelevantStringsInConfig/replaceRelevantStringsInConfig.js +31 -0
  100. package/packages/rnv-build-engine/dist/src/utils/replaceRelevantStringsInConfig/replaceTemplateString.js +40 -0
  101. package/packages/rnv-build-engine/dist/src/utils/zipBuildsByPlatforms.js +61 -0
  102. package/packages/rnv-build-engine/dist/templates/platforms/_shared/template.js +110 -0
  103. package/packages/rnv-build-engine/dist/templates/platforms/_shared/utils/extendSass.js +29 -0
  104. package/packages/rnv-build-engine/dist/templates/platforms/_shared/utils/joinStrings.js +5 -0
  105. package/packages/rnv-build-engine/dist/templates/platforms/_shared/webpack.base.js +239 -0
  106. package/packages/rnv-build-engine/dist/templates/platforms/entone/webpack.config.dev.js +63 -0
  107. package/packages/rnv-build-engine/dist/templates/platforms/entone/webpack.config.prod.js +58 -0
  108. package/packages/rnv-build-engine/dist/templates/platforms/hbbtv/webpack.config.dev.js +80 -0
  109. package/packages/rnv-build-engine/dist/templates/platforms/hbbtv/webpack.config.prod.js +75 -0
  110. package/packages/rnv-build-engine/dist/templates/platforms/kreatv/webpack.config.dev.js +63 -0
  111. package/packages/rnv-build-engine/dist/templates/platforms/kreatv/webpack.config.prod.js +58 -0
  112. package/packages/rnv-build-engine/dist/templates/platforms/saphi/webpack.config.dev.js +63 -0
  113. package/packages/rnv-build-engine/dist/templates/platforms/saphi/webpack.config.prod.js +58 -0
  114. package/packages/rnv-build-engine/dist/templates/platforms/tizen/project/.project +24 -0
  115. package/packages/rnv-build-engine/dist/templates/platforms/tizen/project/.tproject +12 -0
  116. package/packages/rnv-build-engine/dist/templates/platforms/tizen/project/config.xml +17 -0
  117. package/packages/rnv-build-engine/dist/templates/platforms/tizen/webpack.config.dev.js +64 -0
  118. package/packages/rnv-build-engine/dist/templates/platforms/tizen/webpack.config.prod.js +58 -0
  119. package/packages/rnv-build-engine/dist/templates/platforms/webos/project/.project +35 -0
  120. package/packages/rnv-build-engine/dist/templates/platforms/webos/project/appinfo.json +19 -0
  121. package/packages/rnv-build-engine/dist/templates/platforms/webos/webpack.config.dev.js +65 -0
  122. package/packages/rnv-build-engine/dist/templates/platforms/webos/webpack.config.prod.js +58 -0
  123. package/packages/rnv-build-engine/dist/templates/platforms/webtv/webpack.config.dev.js +63 -0
  124. package/packages/rnv-build-engine/dist/templates/platforms/webtv/webpack.config.prod.js +58 -0
  125. package/packages/rnv-build-engine/dist/templates/platforms/xbox/webpack.config.dev.js +64 -0
  126. package/packages/rnv-build-engine/dist/templates/platforms/xbox/webpack.config.prod.js +58 -0
  127. package/packages/sdk-installer/dist/index.js +5 -0
  128. package/packages/sdk-installer/dist/sdkInstaller.js +38 -0
  129. package/packages/sdk-installer/dist/services/clean.js +11 -0
  130. package/packages/sdk-installer/dist/services/download.js +55 -0
  131. package/packages/sdk-installer/dist/services/index.js +11 -0
  132. package/packages/sdk-installer/dist/services/install.js +24 -0
  133. package/packages/sdk-installer/dist/services/unzip.js +12 -0
  134. package/packages/sdk-installer/dist/types/index.d.ts +1 -0
  135. package/packages/sdk-installer/dist/types/sdkInstaller.d.ts +7 -0
  136. package/packages/sdk-installer/dist/types/services/clean.d.ts +2 -0
  137. package/packages/sdk-installer/dist/types/services/download.d.ts +2 -0
  138. package/packages/sdk-installer/dist/types/services/index.d.ts +4 -0
  139. package/packages/sdk-installer/dist/types/services/install.d.ts +2 -0
  140. package/packages/sdk-installer/dist/types/services/unzip.d.ts +2 -0
  141. package/packages/types-bigscreen-jsx/README.md +5 -4
  142. package/packages/types-bigscreen-jsx/index.d.ts +4 -4
  143. package/packages/utils/README.md +10 -0
  144. package/packages/utils/src/index.ts +5 -0
  145. package/packages/utils/src/keyPress/index.ts +2 -0
  146. package/packages/utils/src/keyPress/keyPressSimulator.ts +44 -0
  147. package/packages/utils/src/keyPress/simulateKeyPress.ts +25 -0
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveDeployLocations = void 0;
4
+ const resolveBuildVersion_1 = require("./resolveBuildVersion");
5
+ const resolveBaseUrl_1 = require("./resolveBaseUrl");
6
+ const resolveHbbtvDeployUrl_1 = require("./resolveHbbtvDeployUrl");
7
+ const resolveBuildFileName_1 = require("./resolveBuildFileName");
8
+ const constants_1 = require("../constants");
9
+ const resolveSupportedPlatforms_1 = require("./resolveSupportedPlatforms");
10
+ const getBuildVersion = (c) => {
11
+ const { platform, runtime } = c;
12
+ const { scheme, appId } = runtime;
13
+ return (0, resolveBuildVersion_1.resolveBuildVersion)({
14
+ platform,
15
+ scheme,
16
+ flavour: appId,
17
+ });
18
+ };
19
+ const getSupportedFlavoursForPlatform = (c, platformName) => {
20
+ const { supportedFlavours = [] } = c.buildConfig.platforms[platformName]?.deploy || {};
21
+ return supportedFlavours;
22
+ };
23
+ const makeOutputObject = (buildVersion) => ({
24
+ versions: {
25
+ [buildVersion]: {
26
+ platforms: {},
27
+ },
28
+ },
29
+ });
30
+ const makeUrls = (c, platformName, flavourName) => {
31
+ const isHbbTVPlatform = platformName === constants_1.Platforms.HBBTV;
32
+ const { scheme } = c.runtime;
33
+ const baseUrl = (0, resolveBaseUrl_1.resolveBaseUrl)({
34
+ platform: platformName,
35
+ scheme,
36
+ flavour: flavourName,
37
+ });
38
+ if (!baseUrl)
39
+ return null;
40
+ const packageFileName = (0, resolveBuildFileName_1.resolveBuildFileName)(c);
41
+ const packageUrl = packageFileName ? `${baseUrl}/build/${packageFileName}` : '';
42
+ const indexUrl = isHbbTVPlatform
43
+ ? (0, resolveHbbtvDeployUrl_1.resolveHbbtvDeployUrl)(c, scheme, flavourName)
44
+ : `${baseUrl}/public/index.html`;
45
+ return { packageUrl, indexUrl };
46
+ };
47
+ const resolveDeployLocations = (c) => {
48
+ const buildVersion = getBuildVersion(c);
49
+ const output = makeOutputObject(buildVersion);
50
+ const outputPlatforms = output.versions[buildVersion].platforms;
51
+ const processPlatform = (platformName) => {
52
+ const originalPlatform = c.platform;
53
+ const isRequiredPlatformSet = originalPlatform === platformName;
54
+ if (!isRequiredPlatformSet) {
55
+ c.platform = platformName;
56
+ }
57
+ const processPlatformFlavour = (flavourName) => {
58
+ const originalFlavour = c.runtime.appId;
59
+ const isRequestedFlavourSet = originalFlavour === flavourName;
60
+ if (!isRequestedFlavourSet) {
61
+ c.runtime.appId = flavourName;
62
+ }
63
+ const outputFlavourData = { [flavourName]: makeUrls(c, platformName, flavourName) };
64
+ if (!isRequestedFlavourSet) {
65
+ c.runtime.appId = originalFlavour;
66
+ }
67
+ return outputFlavourData;
68
+ };
69
+ const outputPlatformData = getSupportedFlavoursForPlatform(c, platformName)
70
+ .map(processPlatformFlavour);
71
+ outputPlatforms[platformName] = Object.assign({}, ...outputPlatformData);
72
+ if (!isRequiredPlatformSet) {
73
+ c.platform = originalPlatform;
74
+ }
75
+ };
76
+ (0, resolveSupportedPlatforms_1.resolveSupportedPlatforms)(c).forEach(processPlatform);
77
+ return output;
78
+ };
79
+ exports.resolveDeployLocations = resolveDeployLocations;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.getBaseConfig = void 0;
26
+ const fs = __importStar(require("fs"));
27
+ const path = __importStar(require("path"));
28
+ const rnv_1 = require("rnv");
29
+ const assign_deep_1 = __importDefault(require("assign-deep"));
30
+ const replaceRelevantStringsInConfig_1 = require("../utils/replaceRelevantStringsInConfig");
31
+ const mergeFileJsonIntoObject = (filePath, targetObject) => {
32
+ const fileContentAsString = fs.readFileSync(filePath).toString();
33
+ const fileContentAsJSON = JSON.parse(fileContentAsString);
34
+ (0, assign_deep_1.default)(targetObject, fileContentAsJSON);
35
+ };
36
+ const getBaseConfig = () => {
37
+ const c = rnv_1.ConfigManager.createRnvConfig({ ci: true }, process);
38
+ c.buildConfig = {};
39
+ const packageJsonfileContent = fs.readFileSync('package.json').toString();
40
+ c.files.project.package = JSON.parse(packageJsonfileContent);
41
+ mergeFileJsonIntoObject(c.paths.project.config, c.buildConfig);
42
+ const baseConfigPath = path.join(c.paths.project.appConfigBase.dir, 'renative.json');
43
+ mergeFileJsonIntoObject(baseConfigPath, c.buildConfig);
44
+ (0, replaceRelevantStringsInConfig_1.replaceRelevantStringsInConfig)(c);
45
+ return c;
46
+ };
47
+ exports.getBaseConfig = getBaseConfig;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHbbtvDeployConfig = void 0;
4
+ const resolveHbbtvDeployConfig = () => ({
5
+ host: 'nxg-bigscreen-test.24imedia.tv',
6
+ username: 'admin',
7
+ privateKeyRelativePath: 'certificates/id_rsa_24i_smartapps_bigscreen',
8
+ passphrase: process.env.CI_SSH_KEY_PASSPHRASE,
9
+ hostHomeDir: '/home/admin',
10
+ dockerHtmlRootDir: '/usr/share/nginx/html',
11
+ dockerContainerName: '24inginx',
12
+ });
13
+ exports.resolveHbbtvDeployConfig = resolveHbbtvDeployConfig;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHbbtvDeployUrl = void 0;
4
+ const resolveHbbtvRemoteBuildDirRelativePath_1 = require("./resolveHbbtvRemoteBuildDirRelativePath");
5
+ const resolveHbbtvDeployConfig_1 = require("./resolveHbbtvDeployConfig");
6
+ const resolveHbbtvDeployUrl = (c, scheme, appConfigId) => {
7
+ const { host } = (0, resolveHbbtvDeployConfig_1.resolveHbbtvDeployConfig)();
8
+ const remoteDirRelativePath = (0, resolveHbbtvRemoteBuildDirRelativePath_1.resolveHbbtvRemoteBuildDirRelativePath)(c, scheme, appConfigId);
9
+ return remoteDirRelativePath ? `http://${host}/${remoteDirRelativePath}/public/index.html` : '';
10
+ };
11
+ exports.resolveHbbtvDeployUrl = resolveHbbtvDeployUrl;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveHbbtvRemoteBuildDirRelativePath = void 0;
4
+ const constants_1 = require("../constants");
5
+ const resolveHbbtvRemoteBuildDirRelativePath = (c, scheme, appConfigId) => {
6
+ const projectDirName = c.buildConfig.common.appNameInFileName;
7
+ const version = c.buildConfig.common.packageVersion;
8
+ if (!projectDirName || !appConfigId) {
9
+ return '';
10
+ }
11
+ switch (scheme) {
12
+ case constants_1.BuildSchemes.DEV_LATEST:
13
+ return `${projectDirName}/${appConfigId}/latest/dev`;
14
+ case constants_1.BuildSchemes.RC_LATEST:
15
+ return `${projectDirName}/${appConfigId}/latest/rc`;
16
+ case constants_1.BuildSchemes.RELEASE_LATEST:
17
+ return `${projectDirName}/${appConfigId}/latest/release`;
18
+ case constants_1.BuildSchemes.RELEASE_DIST:
19
+ return version ? `${projectDirName}/${appConfigId}/dist/v${version}` : '';
20
+ default:
21
+ return '';
22
+ }
23
+ };
24
+ exports.resolveHbbtvRemoteBuildDirRelativePath = resolveHbbtvRemoteBuildDirRelativePath;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveSupportedPlatforms = void 0;
4
+ const resolveSupportedPlatforms = (rnvC) => (rnvC.buildConfig.defaults.supportedPlatforms || []);
5
+ exports.resolveSupportedPlatforms = resolveSupportedPlatforms;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveUsedFlavours = void 0;
4
+ const resolveSupportedPlatforms_1 = require("./resolveSupportedPlatforms");
5
+ const resolveUsedFlavours = (rnvC) => {
6
+ const usedFlavours = [];
7
+ const supportedPlatforms = (0, resolveSupportedPlatforms_1.resolveSupportedPlatforms)(rnvC);
8
+ for (let i = 0; i < supportedPlatforms.length; i++) {
9
+ const iPlatform = supportedPlatforms[i];
10
+ const iPlatformDeployConfig = rnvC.buildConfig.platforms[iPlatform]?.deploy;
11
+ if (iPlatformDeployConfig) {
12
+ const configuredFlavoursForPlatform = iPlatformDeployConfig.supportedFlavours || [];
13
+ for (let j = 0; j < configuredFlavoursForPlatform.length; j++) {
14
+ const jPlatformFlavour = configuredFlavoursForPlatform[j];
15
+ if (!usedFlavours.includes(jPlatformFlavour)) {
16
+ usedFlavours.push(jPlatformFlavour);
17
+ }
18
+ }
19
+ }
20
+ }
21
+ return usedFlavours.sort();
22
+ };
23
+ exports.resolveUsedFlavours = resolveUsedFlavours;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveZippedPlatformBuildsRelativeFilePath = void 0;
4
+ const resolveZippedPlatformBuildsRelativeFilePath = (c, platformName) => {
5
+ const { platformBuildsDir } = c.buildConfig.paths;
6
+ const { appNameInFileName } = c.buildConfig.common;
7
+ const buildVersion = c.buildConfig.common.packageVersion;
8
+ const zippedFilesParentDir = 'zipped_by_platform';
9
+ const fileExtension = 'zip';
10
+ const relativePathToDir = `${platformBuildsDir}/${zippedFilesParentDir}`;
11
+ const zipFileName = `${appNameInFileName}_${platformName}_${buildVersion}.${fileExtension}`;
12
+ return `${relativePathToDir}/${zipFileName}`;
13
+ };
14
+ exports.resolveZippedPlatformBuildsRelativeFilePath = resolveZippedPlatformBuildsRelativeFilePath;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const child_process_1 = require("child_process");
4
+ const forEachSupportedPlatformFlavour_1 = require("../utils/forEachSupportedPlatformFlavour");
5
+ const resolvers_1 = require("../resolvers");
6
+ const buildTask = (options) => {
7
+ const { scheme, platform, flavour } = options;
8
+ const cmd = `npx rnv build -s ${scheme} -p ${platform} -c ${flavour} --ci`;
9
+ (0, child_process_1.execSync)(cmd, { stdio: 'inherit' });
10
+ };
11
+ const buildAllWithScheme = () => {
12
+ const scheme = process.argv[2];
13
+ if (!scheme) {
14
+ throw new Error('No scheme name to use found! Please use rnv scheme name as a param.');
15
+ }
16
+ const c = (0, resolvers_1.getBaseConfig)();
17
+ c.runtime.scheme = scheme;
18
+ (0, forEachSupportedPlatformFlavour_1.forEachSupportedPlatformFlavour)(c, buildTask);
19
+ return true;
20
+ };
21
+ const startTimestamp = Date.now();
22
+ buildAllWithScheme();
23
+ const msPerSecond = 1000;
24
+ const scriptTotalTimeInSeconds = Math.ceil((Date.now() - startTimestamp) / msPerSecond);
25
+ console.log(`buildAllWithScheme: done in ${scriptTotalTimeInSeconds} second(s)!`);
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatTableDataSpaces = void 0;
4
+ const getLengthOfLongestColumnCell = (tableData, tableColumnIndex) => {
5
+ const rowsAmount = tableData.length;
6
+ let maxColumnCellLength = 0;
7
+ for (let tableRowIndex = 0; tableRowIndex < rowsAmount; tableRowIndex++) {
8
+ const cellLength = tableData[tableRowIndex][tableColumnIndex].length;
9
+ if (cellLength > maxColumnCellLength) {
10
+ maxColumnCellLength = cellLength;
11
+ }
12
+ }
13
+ return maxColumnCellLength;
14
+ };
15
+ const formatTableColumnSpaces = (tableData, columnIndex) => {
16
+ const requestedColumnLength = getLengthOfLongestColumnCell(tableData, columnIndex);
17
+ const rowsAmount = tableData.length;
18
+ for (let tableRowIndex = 0; tableRowIndex < rowsAmount; tableRowIndex++) {
19
+ const rowData = tableData[tableRowIndex];
20
+ rowData[columnIndex] = rowData[columnIndex].padEnd(requestedColumnLength);
21
+ }
22
+ };
23
+ const formatTableDataSpaces = (tableData) => {
24
+ const columnsAmount = tableData[0].length;
25
+ for (let i = 0; i < columnsAmount; i++) {
26
+ formatTableColumnSpaces(tableData, i);
27
+ }
28
+ return tableData;
29
+ };
30
+ exports.formatTableDataSpaces = formatTableDataSpaces;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.generateDeployUrls = void 0;
23
+ const fs = __importStar(require("fs"));
24
+ const path = __importStar(require("path"));
25
+ const resolvers_1 = require("../../resolvers");
26
+ const constants_1 = require("../../constants");
27
+ const fsUtils_1 = require("../utils/fsUtils");
28
+ const makeTableDataByScheme_1 = require("./makeTableDataByScheme");
29
+ const formatTableDataSpaces_1 = require("./formatTableDataSpaces");
30
+ const processOutput = (outputFilePath, fileContent) => {
31
+ if (!(0, fsUtils_1.isDir)(outputFilePath)) {
32
+ const dirname = path.dirname(outputFilePath);
33
+ fs.mkdirSync(dirname, { recursive: true });
34
+ }
35
+ fs.writeFileSync(outputFilePath, fileContent);
36
+ };
37
+ const tableDataToMarkdown = (tableData) => {
38
+ const tableRowDataToTableRowMarkdown = (tableRowData) => (`| ${tableRowData.join(' | ')} |`);
39
+ const tableRowsMarkdown = tableData.map(tableRowDataToTableRowMarkdown);
40
+ return tableRowsMarkdown.join('\n');
41
+ };
42
+ const makeTableMarkdownByScheme = (rnvC, scheme) => {
43
+ const tableData = (0, makeTableDataByScheme_1.makeTableDataByScheme)(rnvC, scheme);
44
+ const formattedTableData = (0, formatTableDataSpaces_1.formatTableDataSpaces)(tableData);
45
+ return tableDataToMarkdown(formattedTableData);
46
+ };
47
+ const deployedEachTimeIntoTheSamePath = '> Deployed each time into the same path.';
48
+ const makeMarkdownFileContentRows = (rnvC) => ([
49
+ `# ${rnvC.buildConfig.projectName}`,
50
+ '## Deploy URLs',
51
+ '',
52
+ '---',
53
+ '### Latest `development` builds',
54
+ '> Latest builds against the development git branch.',
55
+ deployedEachTimeIntoTheSamePath,
56
+ '',
57
+ makeTableMarkdownByScheme(rnvC, constants_1.BuildSchemes.DEV_LATEST),
58
+ '',
59
+ '---',
60
+ '### Latest `release candidate` builds',
61
+ '> Latest builds against the release candidate git branch.',
62
+ deployedEachTimeIntoTheSamePath,
63
+ '',
64
+ makeTableMarkdownByScheme(rnvC, constants_1.BuildSchemes.RC_LATEST),
65
+ '---',
66
+ '### Latest `release` builds',
67
+ '> Latest builds against the release git branch.',
68
+ deployedEachTimeIntoTheSamePath,
69
+ '',
70
+ makeTableMarkdownByScheme(rnvC, constants_1.BuildSchemes.RELEASE_LATEST),
71
+ '---',
72
+ '### Distribution `release` builds',
73
+ '> Builds against the release git branch.',
74
+ '> Each new release version is deployed into its own folder.',
75
+ '',
76
+ '*In opened URL, just replace `<VERSION>` placeholder with requested app version.*',
77
+ '',
78
+ makeTableMarkdownByScheme(rnvC, constants_1.BuildSchemes.RELEASE_DIST),
79
+ '---',
80
+ ]);
81
+ const generateDeployUrls = () => {
82
+ const outputFilePath = process.argv[2];
83
+ if (!outputFilePath) {
84
+ throw new Error('You need to provide a path to output file as an argument!');
85
+ }
86
+ const rnvC = (0, resolvers_1.getBaseConfig)();
87
+ const markdownFileContentRows = makeMarkdownFileContentRows(rnvC);
88
+ processOutput(outputFilePath, markdownFileContentRows.join('\n'));
89
+ };
90
+ exports.generateDeployUrls = generateDeployUrls;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const generateDeployUrls_1 = require("./generateDeployUrls");
4
+ (0, generateDeployUrls_1.generateDeployUrls)();
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeTableDataByScheme = void 0;
4
+ const resolvers_1 = require("../../resolvers");
5
+ const constants_1 = require("../../constants");
6
+ const makePlatformRowData = (rnvC, deployLocations, tableFlavours, platform) => {
7
+ const data = [`**${platform}**`];
8
+ const flavourNotAvailableForPlatformText = '*N/A*';
9
+ const version = Object.keys(deployLocations.versions)[0];
10
+ const platformData = deployLocations.versions[version].platforms[platform];
11
+ for (let i = 0; i < tableFlavours.length; i++) {
12
+ const flavourUrls = platformData[tableFlavours[i]];
13
+ if (flavourUrls) {
14
+ let { packageUrl, indexUrl } = flavourUrls;
15
+ if (rnvC.runtime.scheme === constants_1.BuildSchemes.RELEASE_DIST) {
16
+ const versionRegex = /\d{1,4}\.\d{1,4}\.\d{1,4}/g;
17
+ const versionPlaceholder = '<VERSION>';
18
+ packageUrl = packageUrl.replace(versionRegex, versionPlaceholder);
19
+ indexUrl = packageUrl.replace(versionRegex, versionPlaceholder);
20
+ }
21
+ const tableCellContent = `[package](${packageUrl}) / [index.html](${indexUrl})`;
22
+ data.push(tableCellContent);
23
+ }
24
+ else {
25
+ data.push(flavourNotAvailableForPlatformText);
26
+ }
27
+ }
28
+ return data;
29
+ };
30
+ const makeTablePlatformsData = (rnvC, usedFlavours) => {
31
+ const supportedPlatforms = (0, resolvers_1.resolveSupportedPlatforms)(rnvC);
32
+ const deployLocations = (0, resolvers_1.resolveDeployLocations)(rnvC);
33
+ const data = [];
34
+ for (let i = 0; i < supportedPlatforms.length; i++) {
35
+ const platform = supportedPlatforms[i];
36
+ const rowData = makePlatformRowData(rnvC, deployLocations, usedFlavours, platform);
37
+ if (rowData) {
38
+ data.push(rowData);
39
+ }
40
+ }
41
+ return data;
42
+ };
43
+ const makeHeaderData = (tableFlavours) => {
44
+ const header = [''].concat(tableFlavours.map((flavour) => `*${flavour}*`));
45
+ const headerSeparator = header.map(() => ':---:');
46
+ return [
47
+ header,
48
+ headerSeparator,
49
+ ];
50
+ };
51
+ const makeTableDataByScheme = (rnvC, scheme) => {
52
+ const originalScheme = rnvC.runtime.scheme;
53
+ const tableData = [];
54
+ rnvC.runtime.scheme = scheme;
55
+ const usedFlavours = (0, resolvers_1.resolveUsedFlavours)(rnvC);
56
+ const headerData = makeHeaderData(usedFlavours);
57
+ tableData.push(...headerData);
58
+ const tablePlatformsData = makeTablePlatformsData(rnvC, usedFlavours);
59
+ tableData.push(...tablePlatformsData);
60
+ rnvC.runtime.scheme = originalScheme;
61
+ return tableData;
62
+ };
63
+ exports.makeTableDataByScheme = makeTableDataByScheme;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const resolvers_1 = require("../../resolvers");
4
+ const gitUtils_1 = require("../utils/gitUtils");
5
+ const c = (0, resolvers_1.getBaseConfig)();
6
+ const { branchNames, commitTitles } = c.buildConfig.common.git;
7
+ const { packageVersion = '' } = c.buildConfig.common;
8
+ const newReleaseBranchName = branchNames.rc;
9
+ (0, gitUtils_1.createBranch)(newReleaseBranchName);
10
+ (0, gitUtils_1.checkout)(newReleaseBranchName);
11
+ (0, gitUtils_1.addAll)();
12
+ const withNoVerifyFlag = true;
13
+ console.log('Creating commit with changed version...');
14
+ (0, gitUtils_1.commit)(commitTitles.versionBump, withNoVerifyFlag);
15
+ console.log(`Pushing ${newReleaseBranchName} branch...`);
16
+ (0, gitUtils_1.push)(newReleaseBranchName, withNoVerifyFlag);
17
+ console.log(`\nDone! The version has been bumped to ${packageVersion} and ${newReleaseBranchName} branch pushed into the remote repository.`);
18
+ console.log('Note: Do not forget to update release notes for upcoming release!');
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const assert_1 = require("assert");
4
+ const resolvers_1 = require("../../resolvers");
5
+ const gitUtils_1 = require("../utils/gitUtils");
6
+ const c = (0, resolvers_1.getBaseConfig)();
7
+ const { branchNames, commitTitles } = c.buildConfig.common.git;
8
+ (0, assert_1.ok)(branchNames.dev);
9
+ (0, assert_1.ok)(branchNames.rc);
10
+ (0, assert_1.ok)(commitTitles.versionBump);
11
+ (0, gitUtils_1.assertCurrentBranch)(branchNames.dev);
12
+ (0, gitUtils_1.assertEmptyStatusList)();
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkReleaseNotes = void 0;
4
+ const assert_1 = require("assert");
5
+ const utils_1 = require("../utils");
6
+ const checkReleaseNotes = (c) => {
7
+ const { relativePath, requiredRows = [] } = c.buildConfig.common.releaseNotes;
8
+ utils_1.fsUtils.assertPath(relativePath);
9
+ const fileContent = utils_1.fsUtils.getFileContentAsString(relativePath);
10
+ const assertFileContentRow = (expectedRowContent) => {
11
+ const errorMsg = `${relativePath} should contain following row: "${expectedRowContent}"`;
12
+ (0, assert_1.ok)(fileContent.includes(expectedRowContent), errorMsg);
13
+ };
14
+ requiredRows.forEach(assertFileContentRow);
15
+ };
16
+ exports.checkReleaseNotes = checkReleaseNotes;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
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 c = (0, resolvers_1.getBaseConfig)();
8
+ const { branchNames, pullRequestTitles } = c.buildConfig.common.git || {};
9
+ const rcBranchName = branchNames.rc;
10
+ const distBranchName = branchNames.dist;
11
+ const devBranchName = branchNames.dev;
12
+ (0, assert_1.ok)(rcBranchName);
13
+ (0, assert_1.ok)(distBranchName);
14
+ (0, assert_1.ok)(devBranchName);
15
+ utils_1.gitUtils.assertCurrentBranch(rcBranchName);
16
+ utils_1.gitUtils.assertEmptyStatusList();
17
+ utils_1.gitUtils.assertRemoteBranch(rcBranchName);
18
+ utils_1.gitUtils.assertRemoteBranch(distBranchName);
19
+ const distributionPrTitle = pullRequestTitles.rcToDist;
20
+ const developmentPrTitle = pullRequestTitles.rcToDev;
21
+ (0, assert_1.ok)(distributionPrTitle);
22
+ (0, assert_1.ok)(developmentPrTitle);
23
+ utils_1.gitUtils.pull();
24
+ (0, checkReleaseNotes_1.checkReleaseNotes)(c);
25
+ console.log(`Creating Pull Request from ${rcBranchName} branch to ${distBranchName} branch...`);
26
+ console.log(`Applied PR title: "${distributionPrTitle}"`);
27
+ utils_1.gitUtils.pullRequest(rcBranchName, distBranchName, distributionPrTitle);
28
+ console.log(`\nCreating Pull Request from ${rcBranchName} branch to ${devBranchName} branch...`);
29
+ console.log(`Applied PR title: "${developmentPrTitle}"`);
30
+ utils_1.gitUtils.pullRequest(rcBranchName, devBranchName, developmentPrTitle);
31
+ console.log('\nDone! Pull requests have been created!');
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const child_process_1 = require("child_process");
4
+ console.log('Bumping the version...');
5
+ const bumpType = process.argv[2] || 'patch';
6
+ (0, child_process_1.execSync)(`npm --no-git-tag-version version ${bumpType}`, { stdio: 'inherit' });
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
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 c = (0, resolvers_1.getBaseConfig)();
8
+ const { branchNames, commitTitles, pullRequestTitles } = c.buildConfig.common.git || {};
9
+ const { relativePath } = c.buildConfig.common.releaseNotes || {};
10
+ const rcBranchName = branchNames.rc;
11
+ const releaseNotesBranchName = branchNames.rcReleaseNotes;
12
+ const commitTitle = commitTitles.rcReleaseNotes;
13
+ const prTitle = pullRequestTitles.releaseNotesToRc;
14
+ (0, assert_1.ok)(relativePath);
15
+ (0, assert_1.ok)(releaseNotesBranchName);
16
+ (0, assert_1.ok)(commitTitle);
17
+ (0, assert_1.ok)(prTitle);
18
+ utils_1.gitUtils.assertCurrentBranch(rcBranchName);
19
+ utils_1.gitUtils.assertRemoteBranch(rcBranchName);
20
+ (0, checkReleaseNotes_1.checkReleaseNotes)(c);
21
+ utils_1.gitUtils.pull();
22
+ const changedFilesCount = utils_1.gitUtils.statusList().length;
23
+ if (changedFilesCount === 0) {
24
+ console.log(`It seems ${relativePath} file has been updated before.`);
25
+ console.log('Skipping making a commit, if needed, please continue on your own (manually).');
26
+ }
27
+ else {
28
+ (0, assert_1.ok)(changedFilesCount === 1, `Only ${relativePath} should contain changes!`);
29
+ utils_1.gitUtils.createBranch(releaseNotesBranchName);
30
+ utils_1.gitUtils.checkout(releaseNotesBranchName);
31
+ utils_1.gitUtils.add([relativePath]);
32
+ utils_1.gitUtils.commit(commitTitle);
33
+ utils_1.gitUtils.push(releaseNotesBranchName, true);
34
+ console.log('Creating pull request with updated release notes...');
35
+ utils_1.gitUtils.pullRequest(releaseNotesBranchName, rcBranchName, prTitle);
36
+ console.log('Done! Pull request has been created!');
37
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteSourceMaps = void 0;
4
+ const child_process_1 = require("child_process");
5
+ const executeSync = (cmd) => (0, 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
+ console.log('Source Maps deleted...');
10
+ };
11
+ exports.deleteSourceMaps = deleteSourceMaps;