@24i/bigscreen-sdk 1.0.7-alpha.2158 → 1.0.7-alpha.2159-1
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.
- package/package.json +1 -1
- package/packages/create-package/dist/createPackage.js +66 -0
- package/packages/create-package/dist/createPackage.js.map +1 -0
- package/packages/create-package/dist/index.js +5 -0
- package/packages/create-package/dist/index.js.map +1 -0
- package/packages/create-package/dist/questionnaire/questions.js +35 -0
- package/packages/create-package/dist/questionnaire/questions.js.map +1 -0
- package/packages/create-package/dist/settings/Settings.js +10 -0
- package/packages/create-package/dist/settings/Settings.js.map +1 -0
- package/packages/create-package/dist/types.js +3 -0
- package/packages/create-package/dist/types.js.map +1 -0
- package/packages/focus/README.md +5 -0
- package/packages/focus/src/focusFirstExisting.ts +7 -1
- package/packages/focus/src/index.ts +1 -1
- package/packages/rnv-build-engine/dist/src/constants/buildSchemes.js +14 -0
- package/packages/rnv-build-engine/dist/src/constants/index.js +7 -0
- package/packages/rnv-build-engine/dist/src/constants/platforms.js +14 -0
- package/packages/rnv-build-engine/dist/src/engine.js +94 -0
- package/packages/rnv-build-engine/dist/src/index.js +26 -0
- package/packages/rnv-build-engine/dist/src/resolvers/index.js +29 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveBaseUrl.js +31 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildFileExtension.js +12 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildFileName.js +36 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildVersion.js +42 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveBuildVersionOffset.js +34 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveDeployLocations.js +79 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveGenericRnvConfig.js +47 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveHbbtvDeployConfig.js +13 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveHbbtvDeployUrl.js +11 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveHbbtvRemoteBuildDirRelativePath.js +24 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveSupportedPlatforms.js +5 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveUsedFlavours.js +23 -0
- package/packages/rnv-build-engine/dist/src/resolvers/resolveZippedPlatformBuildsRelativeFilePath.js +14 -0
- package/packages/rnv-build-engine/dist/src/scripts/buildAllWithScheme.js +25 -0
- package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/formatTableDataSpaces.js +30 -0
- package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/generateDeployUrls.js +90 -0
- package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/index.js +4 -0
- package/packages/rnv-build-engine/dist/src/scripts/generateDeployUrls/makeTableDataByScheme.js +63 -0
- package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/afterVersionBump.js +18 -0
- package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/beforeVersionBump.js +12 -0
- package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/checkReleaseNotes.js +16 -0
- package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/pushRelease.js +31 -0
- package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/pushReleaseCandidate.js +6 -0
- package/packages/rnv-build-engine/dist/src/scripts/gitReleaser/pushReleaseNotes.js +37 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/deleteSourceMaps.js +11 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/deployToAppCenter.js +83 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/githubRelease.js +128 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/generateWebhoook.js +66 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/makePayload.js +92 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/notifySlack.js +44 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/notifySlack/slackBlockKitBuilder.js +39 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/sentryRelease.js +85 -0
- package/packages/rnv-build-engine/dist/src/scripts/release/urlsMarkdown.js +62 -0
- package/packages/rnv-build-engine/dist/src/scripts/releaseAllWithScheme.js +79 -0
- package/packages/rnv-build-engine/dist/src/scripts/utils/cmdUtils.js +12 -0
- package/packages/rnv-build-engine/dist/src/scripts/utils/fsUtils.js +33 -0
- package/packages/rnv-build-engine/dist/src/scripts/utils/generateIcons.js +29 -0
- package/packages/rnv-build-engine/dist/src/scripts/utils/gitUtils.js +78 -0
- package/packages/rnv-build-engine/dist/src/scripts/utils/index.js +27 -0
- package/packages/rnv-build-engine/dist/src/scripts/utils/stringUtils.js +5 -0
- package/packages/rnv-build-engine/dist/src/sdks/index.js +42 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-tizen/index.js +13 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-tizen/sdkTizen.js +240 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/index.js +14 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/registerSdkPath.js +14 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/index.js +5 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/sdkInstaller.js +39 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/clean.js +11 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/download.js +74 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/index.js +11 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/install.js +23 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-utils/sdk-installer/services/unzip.js +12 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-webos/index.js +13 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-webos/sdkWebos.js +135 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-webpack/index.js +13 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-webpack/sdkWebpack.js +32 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-xbox/index.js +13 -0
- package/packages/rnv-build-engine/dist/src/sdks/sdk-xbox/sdkXbox.js +222 -0
- package/packages/rnv-build-engine/dist/src/tasks/deploy/aswS3/aws.js +22 -0
- package/packages/rnv-build-engine/dist/src/tasks/deploy/aswS3/deployS3.js +71 -0
- package/packages/rnv-build-engine/dist/src/tasks/deploy/hbbtv/deployHbbtv.js +94 -0
- package/packages/rnv-build-engine/dist/src/tasks/engineTasks.js +22 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.build.js +99 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.configure.js +45 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.configureSoft.js +31 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.deploy.js +40 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.hooks.run.js +71 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.package.js +19 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.project.configure.js +116 -0
- package/packages/rnv-build-engine/dist/src/tasks/task.rnv.start.js +72 -0
- package/packages/rnv-build-engine/dist/src/types/c.js +2 -0
- package/packages/rnv-build-engine/dist/src/types/constants.js +2 -0
- package/packages/rnv-build-engine/dist/src/types/index.js +2 -0
- package/packages/rnv-build-engine/dist/src/utils/forEachSupportedPlatformFlavour.js +24 -0
- package/packages/rnv-build-engine/dist/src/utils/generatePngSpriteMap.js +78 -0
- package/packages/rnv-build-engine/dist/src/utils/generateSvgSpriteMap.js +113 -0
- package/packages/rnv-build-engine/dist/src/utils/mergeSvgAndPngIcons.js +61 -0
- package/packages/rnv-build-engine/dist/src/utils/replaceRelevantStringsInConfig/index.js +5 -0
- package/packages/rnv-build-engine/dist/src/utils/replaceRelevantStringsInConfig/replaceRelevantStringsInConfig.js +31 -0
- package/packages/rnv-build-engine/dist/src/utils/replaceRelevantStringsInConfig/replaceTemplateString.js +40 -0
- package/packages/rnv-build-engine/dist/src/utils/zipBuildsByPlatforms.js +61 -0
- package/packages/rnv-build-engine/dist/templates/platforms/_shared/template.js +110 -0
- package/packages/rnv-build-engine/dist/templates/platforms/_shared/utils/extendSass.js +29 -0
- package/packages/rnv-build-engine/dist/templates/platforms/_shared/utils/joinStrings.js +5 -0
- package/packages/rnv-build-engine/dist/templates/platforms/_shared/webpack.base.js +239 -0
- package/packages/rnv-build-engine/dist/templates/platforms/entone/webpack.config.dev.js +63 -0
- package/packages/rnv-build-engine/dist/templates/platforms/entone/webpack.config.prod.js +58 -0
- package/packages/rnv-build-engine/dist/templates/platforms/hbbtv/webpack.config.dev.js +80 -0
- package/packages/rnv-build-engine/dist/templates/platforms/hbbtv/webpack.config.prod.js +75 -0
- package/packages/rnv-build-engine/dist/templates/platforms/kreatv/webpack.config.dev.js +63 -0
- package/packages/rnv-build-engine/dist/templates/platforms/kreatv/webpack.config.prod.js +58 -0
- package/packages/rnv-build-engine/dist/templates/platforms/saphi/webpack.config.dev.js +63 -0
- package/packages/rnv-build-engine/dist/templates/platforms/saphi/webpack.config.prod.js +58 -0
- package/packages/rnv-build-engine/dist/templates/platforms/tizen/project/.project +24 -0
- package/packages/rnv-build-engine/dist/templates/platforms/tizen/project/.tproject +12 -0
- package/packages/rnv-build-engine/dist/templates/platforms/tizen/project/config.xml +17 -0
- package/packages/rnv-build-engine/dist/templates/platforms/tizen/webpack.config.dev.js +64 -0
- package/packages/rnv-build-engine/dist/templates/platforms/tizen/webpack.config.prod.js +58 -0
- package/packages/rnv-build-engine/dist/templates/platforms/webos/project/.project +35 -0
- package/packages/rnv-build-engine/dist/templates/platforms/webos/project/appinfo.json +19 -0
- package/packages/rnv-build-engine/dist/templates/platforms/webos/webpack.config.dev.js +65 -0
- package/packages/rnv-build-engine/dist/templates/platforms/webos/webpack.config.prod.js +58 -0
- package/packages/rnv-build-engine/dist/templates/platforms/webtv/webpack.config.dev.js +63 -0
- package/packages/rnv-build-engine/dist/templates/platforms/webtv/webpack.config.prod.js +58 -0
- package/packages/rnv-build-engine/dist/templates/platforms/xbox/webpack.config.dev.js +64 -0
- package/packages/rnv-build-engine/dist/templates/platforms/xbox/webpack.config.prod.js +58 -0
- package/packages/sdk-installer/dist/index.js +5 -0
- package/packages/sdk-installer/dist/sdkInstaller.js +38 -0
- package/packages/sdk-installer/dist/services/clean.js +11 -0
- package/packages/sdk-installer/dist/services/download.js +55 -0
- package/packages/sdk-installer/dist/services/index.js +11 -0
- package/packages/sdk-installer/dist/services/install.js +24 -0
- package/packages/sdk-installer/dist/services/unzip.js +12 -0
- package/packages/sdk-installer/dist/types/index.d.ts +1 -0
- package/packages/sdk-installer/dist/types/sdkInstaller.d.ts +7 -0
- package/packages/sdk-installer/dist/types/services/clean.d.ts +2 -0
- package/packages/sdk-installer/dist/types/services/download.d.ts +2 -0
- package/packages/sdk-installer/dist/types/services/index.d.ts +4 -0
- package/packages/sdk-installer/dist/types/services/install.d.ts +2 -0
- package/packages/sdk-installer/dist/types/services/unzip.d.ts +2 -0
- package/packages/utils/src/elementUtils.ts +1 -1
|
@@ -0,0 +1,99 @@
|
|
|
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.customRnvBuildTask = void 0;
|
|
23
|
+
const child_process_1 = require("child_process");
|
|
24
|
+
const fs = __importStar(require("fs"));
|
|
25
|
+
const rnv_1 = require("rnv");
|
|
26
|
+
const constants_1 = require("../constants");
|
|
27
|
+
const sdks_1 = require("../sdks");
|
|
28
|
+
const resolvers_1 = require("../resolvers");
|
|
29
|
+
const { getPlatformBuildDir, getPlatformProjectDir } = rnv_1.Common;
|
|
30
|
+
const { logErrorPlatform } = rnv_1.PlatformManager;
|
|
31
|
+
const { logTask } = rnv_1.Logger;
|
|
32
|
+
const { buildWeb } = sdks_1.SDKWebpack;
|
|
33
|
+
const { buildTizenProject } = sdks_1.SDKTizen;
|
|
34
|
+
const { buildWebOSProject } = sdks_1.SDKWebos;
|
|
35
|
+
const { buildXboxProject } = sdks_1.SDKXbox;
|
|
36
|
+
const { executeOrSkipTask } = rnv_1.TaskManager;
|
|
37
|
+
const { TASK_BUILD, TASK_PACKAGE, PARAMS } = rnv_1.Constants;
|
|
38
|
+
const makeZipOutput = (c) => {
|
|
39
|
+
const platformBuildDir = getPlatformBuildDir(c);
|
|
40
|
+
const copiedProjectBuildDir = `${platformBuildDir}/build`;
|
|
41
|
+
const defaultZipFileName = `${c.platform}_${c.runtime.appId}.zip`;
|
|
42
|
+
const fileName = (0, resolvers_1.resolveBuildFileName)(c) || defaultZipFileName;
|
|
43
|
+
(0, child_process_1.execSync)(`cp -r ${getPlatformProjectDir(c)}/public ${copiedProjectBuildDir}`);
|
|
44
|
+
(0, child_process_1.execSync)(`rm -rf ${platformBuildDir}/output`);
|
|
45
|
+
(0, child_process_1.execSync)(`mkdir ${platformBuildDir}/output`);
|
|
46
|
+
(0, child_process_1.execSync)(`zip -r ../output/${fileName} *`, { cwd: copiedProjectBuildDir });
|
|
47
|
+
(0, child_process_1.execSync)(`rm -rf ${copiedProjectBuildDir}`);
|
|
48
|
+
};
|
|
49
|
+
const renameOutput = (c) => {
|
|
50
|
+
const packageOutputDirPath = `${c.runtime.appDir}/output`;
|
|
51
|
+
if (!fs.existsSync(packageOutputDirPath))
|
|
52
|
+
return;
|
|
53
|
+
const outputFilenameList = fs.readdirSync(packageOutputDirPath);
|
|
54
|
+
const packageFileName = outputFilenameList[0];
|
|
55
|
+
const newFilename = (0, resolvers_1.resolveBuildFileName)(c);
|
|
56
|
+
if (newFilename) {
|
|
57
|
+
const oldPath = `${packageOutputDirPath}/${packageFileName}`;
|
|
58
|
+
const newPath = `${packageOutputDirPath}/${newFilename}`;
|
|
59
|
+
fs.renameSync(oldPath, newPath);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
const buildFn = async (c, parentTask, originTask) => {
|
|
63
|
+
logTask('taskRnvBuild', `parent:${parentTask}`);
|
|
64
|
+
const { platform } = c;
|
|
65
|
+
c.runtime.forceBundleAssets = true;
|
|
66
|
+
await (0, sdks_1.handlePlatformSdk)(c);
|
|
67
|
+
await executeOrSkipTask(c, TASK_PACKAGE, TASK_BUILD, originTask);
|
|
68
|
+
switch (platform) {
|
|
69
|
+
case constants_1.Platforms.ENTONE:
|
|
70
|
+
case constants_1.Platforms.HBBTV:
|
|
71
|
+
case constants_1.Platforms.KREATV:
|
|
72
|
+
case constants_1.Platforms.SAPHI:
|
|
73
|
+
case constants_1.Platforms.WEBTV:
|
|
74
|
+
await buildWeb(c);
|
|
75
|
+
makeZipOutput(c);
|
|
76
|
+
return;
|
|
77
|
+
case constants_1.Platforms.XBOX:
|
|
78
|
+
await buildXboxProject(c);
|
|
79
|
+
return;
|
|
80
|
+
case constants_1.Platforms.TIZEN:
|
|
81
|
+
await buildTizenProject(c);
|
|
82
|
+
renameOutput(c);
|
|
83
|
+
return;
|
|
84
|
+
case constants_1.Platforms.WEBOS:
|
|
85
|
+
await buildWebOSProject(c);
|
|
86
|
+
renameOutput(c);
|
|
87
|
+
return;
|
|
88
|
+
default:
|
|
89
|
+
logErrorPlatform(c);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
const customRnvBuildTask = {
|
|
93
|
+
description: 'Build project binary',
|
|
94
|
+
fn: buildFn,
|
|
95
|
+
task: 'build',
|
|
96
|
+
params: PARAMS.withBase(PARAMS.withConfigure()),
|
|
97
|
+
platforms: Object.values(constants_1.Platforms),
|
|
98
|
+
};
|
|
99
|
+
exports.customRnvBuildTask = customRnvBuildTask;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customRnvConfigureTask = void 0;
|
|
4
|
+
const rnv_1 = require("rnv");
|
|
5
|
+
const generateIcons_1 = require("../scripts/utils/generateIcons");
|
|
6
|
+
const constants_1 = require("../constants");
|
|
7
|
+
const sdks_1 = require("../sdks");
|
|
8
|
+
const { logErrorPlatform, copySharedPlatforms } = rnv_1.PlatformManager;
|
|
9
|
+
const { logTask } = rnv_1.Logger;
|
|
10
|
+
const { TASK_PLATFORM_CONFIGURE, TASK_CONFIGURE, PARAMS } = rnv_1.Constants;
|
|
11
|
+
const { configureWebProject } = sdks_1.SDKWebpack;
|
|
12
|
+
const { configureTizenProject } = sdks_1.SDKTizen;
|
|
13
|
+
const { configureWebOSProject } = sdks_1.SDKWebos;
|
|
14
|
+
const { executeTask } = rnv_1.TaskManager;
|
|
15
|
+
const configureFn = async (c, parentTask, originTask) => {
|
|
16
|
+
logTask('taskRnvConfigure');
|
|
17
|
+
await executeTask(c, TASK_PLATFORM_CONFIGURE, TASK_CONFIGURE, originTask);
|
|
18
|
+
await copySharedPlatforms(c);
|
|
19
|
+
await (0, generateIcons_1.generateIcons)(c);
|
|
20
|
+
if (c.program.only && !!parentTask)
|
|
21
|
+
return true;
|
|
22
|
+
switch (c.platform) {
|
|
23
|
+
case constants_1.Platforms.ENTONE:
|
|
24
|
+
case constants_1.Platforms.HBBTV:
|
|
25
|
+
case constants_1.Platforms.KREATV:
|
|
26
|
+
case constants_1.Platforms.SAPHI:
|
|
27
|
+
case constants_1.Platforms.WEBTV:
|
|
28
|
+
case constants_1.Platforms.XBOX:
|
|
29
|
+
return configureWebProject(c);
|
|
30
|
+
case constants_1.Platforms.TIZEN:
|
|
31
|
+
return configureTizenProject(c);
|
|
32
|
+
case constants_1.Platforms.WEBOS:
|
|
33
|
+
return configureWebOSProject(c);
|
|
34
|
+
default:
|
|
35
|
+
return logErrorPlatform(c);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
const customRnvConfigureTask = {
|
|
39
|
+
description: 'Configure current project',
|
|
40
|
+
fn: configureFn,
|
|
41
|
+
task: 'configure',
|
|
42
|
+
params: PARAMS.withBase(PARAMS.withConfigure()),
|
|
43
|
+
platforms: Object.values(constants_1.Platforms),
|
|
44
|
+
};
|
|
45
|
+
exports.customRnvConfigureTask = customRnvConfigureTask;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customRnvConfigureSoftTask = void 0;
|
|
4
|
+
const rnv_1 = require("rnv");
|
|
5
|
+
const schemeParser_1 = require("rnv/dist/core/configManager/schemeParser");
|
|
6
|
+
const replaceRelevantStringsInConfig_1 = require("../utils/replaceRelevantStringsInConfig");
|
|
7
|
+
const { logTask } = rnv_1.Logger;
|
|
8
|
+
const { isPlatformSupported } = rnv_1.PlatformManager;
|
|
9
|
+
const { configureRuntimeDefaults } = rnv_1.RuntimeManager;
|
|
10
|
+
const { executeTask } = rnv_1.TaskManager;
|
|
11
|
+
const { TASK_APP_CONFIGURE, TASK_CONFIGURE_SOFT, PARAMS } = rnv_1.Constants;
|
|
12
|
+
const { checkSdk } = rnv_1.SDKManager.Installer;
|
|
13
|
+
const configureSoftFn = async (c, parentTask, originTask) => {
|
|
14
|
+
logTask('taskRnvConfigureSoft');
|
|
15
|
+
await configureRuntimeDefaults(c);
|
|
16
|
+
await executeTask(c, TASK_APP_CONFIGURE, parentTask, originTask);
|
|
17
|
+
await isPlatformSupported(c);
|
|
18
|
+
await (0, schemeParser_1.isBuildSchemeSupported)(c);
|
|
19
|
+
await checkSdk(c);
|
|
20
|
+
await configureRuntimeDefaults(c);
|
|
21
|
+
(0, replaceRelevantStringsInConfig_1.replaceRelevantStringsInConfig)(c);
|
|
22
|
+
return true;
|
|
23
|
+
};
|
|
24
|
+
const customRnvConfigureSoftTask = {
|
|
25
|
+
description: 'Configure system and project without recreating files (used for --only)',
|
|
26
|
+
fn: configureSoftFn,
|
|
27
|
+
task: TASK_CONFIGURE_SOFT,
|
|
28
|
+
params: PARAMS.withBase(),
|
|
29
|
+
platforms: [],
|
|
30
|
+
};
|
|
31
|
+
exports.customRnvConfigureSoftTask = customRnvConfigureSoftTask;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customRnvDeployTask = void 0;
|
|
4
|
+
const rnv_1 = require("rnv");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
|
+
const deployS3_1 = require("./deploy/aswS3/deployS3");
|
|
7
|
+
const deployHbbtv_1 = require("./deploy/hbbtv/deployHbbtv");
|
|
8
|
+
const { logErrorPlatform } = rnv_1.PlatformManager;
|
|
9
|
+
const { logTask } = rnv_1.Logger;
|
|
10
|
+
const { TASK_EXPORT, TASK_DEPLOY, PARAMS } = rnv_1.Constants;
|
|
11
|
+
const { executeOrSkipTask } = rnv_1.TaskManager;
|
|
12
|
+
const deployFn = async (c, parentTask, originTask) => {
|
|
13
|
+
logTask('taskRnvDeploy', `parent:${parentTask}`);
|
|
14
|
+
await executeOrSkipTask(c, TASK_EXPORT, TASK_DEPLOY, originTask);
|
|
15
|
+
switch (c.platform) {
|
|
16
|
+
case constants_1.Platforms.HBBTV:
|
|
17
|
+
await (0, deployHbbtv_1.deployHbbTV)(c);
|
|
18
|
+
await (0, deployS3_1.deployToS3)(c);
|
|
19
|
+
return true;
|
|
20
|
+
case constants_1.Platforms.ENTONE:
|
|
21
|
+
case constants_1.Platforms.KREATV:
|
|
22
|
+
case constants_1.Platforms.SAPHI:
|
|
23
|
+
case constants_1.Platforms.TIZEN:
|
|
24
|
+
case constants_1.Platforms.WEBOS:
|
|
25
|
+
case constants_1.Platforms.WEBTV:
|
|
26
|
+
case constants_1.Platforms.XBOX:
|
|
27
|
+
return (0, deployS3_1.deployToS3)(c);
|
|
28
|
+
default:
|
|
29
|
+
logErrorPlatform(c);
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const customRnvDeployTask = {
|
|
34
|
+
description: 'Deploy the binary via selected deployment integration or build hook',
|
|
35
|
+
fn: deployFn,
|
|
36
|
+
task: 'deploy',
|
|
37
|
+
params: PARAMS.withBase(PARAMS.withConfigure()),
|
|
38
|
+
platforms: Object.values(constants_1.Platforms),
|
|
39
|
+
};
|
|
40
|
+
exports.customRnvDeployTask = customRnvDeployTask;
|
|
@@ -0,0 +1,71 @@
|
|
|
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.customRnvHooksRunTask = void 0;
|
|
23
|
+
const inquirer = __importStar(require("inquirer"));
|
|
24
|
+
const rnv_1 = require("rnv");
|
|
25
|
+
const buildHooks_1 = require("rnv/dist/core/projectManager/buildHooks");
|
|
26
|
+
const { logTask, logInfo } = rnv_1.Logger;
|
|
27
|
+
const { executeTask } = rnv_1.TaskManager;
|
|
28
|
+
const { fsExistsSync } = rnv_1.FileUtils;
|
|
29
|
+
const { TASK_HOOKS_RUN, TASK_PROJECT_CONFIGURE, PARAMS, PARAM_KEYS } = rnv_1.Constants;
|
|
30
|
+
const hooksRunFn = async (c, parentTask, originTask) => {
|
|
31
|
+
logTask('taskRnvHooksRun');
|
|
32
|
+
if (fsExistsSync(c.paths.project.config)) {
|
|
33
|
+
await executeTask(c, TASK_PROJECT_CONFIGURE, TASK_HOOKS_RUN, originTask);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
logInfo('Your are running your buildHook outside of renative project');
|
|
37
|
+
}
|
|
38
|
+
await (0, buildHooks_1.buildHooks)(c);
|
|
39
|
+
if (!c.buildHooks) {
|
|
40
|
+
return Promise.reject(new Error('Build hooks have not been compiled properly!'));
|
|
41
|
+
}
|
|
42
|
+
let hookName = c.program?.exeMethod;
|
|
43
|
+
let showHookList = false;
|
|
44
|
+
if (!hookName || hookName === true || !c.buildHooks[hookName]) {
|
|
45
|
+
showHookList = true;
|
|
46
|
+
}
|
|
47
|
+
if (showHookList) {
|
|
48
|
+
const hooksList = Object.keys(c.buildHooks);
|
|
49
|
+
const { selectedHook } = await inquirer.prompt({
|
|
50
|
+
name: 'selectedHook',
|
|
51
|
+
type: 'list',
|
|
52
|
+
message: 'Pick an available hook:',
|
|
53
|
+
choices: hooksList,
|
|
54
|
+
});
|
|
55
|
+
hookName = selectedHook;
|
|
56
|
+
}
|
|
57
|
+
await c.buildHooks[hookName](c);
|
|
58
|
+
return true;
|
|
59
|
+
};
|
|
60
|
+
const customRnvHooksRunTask = {
|
|
61
|
+
description: 'Run specific build hook',
|
|
62
|
+
fn: hooksRunFn,
|
|
63
|
+
task: TASK_HOOKS_RUN,
|
|
64
|
+
params: PARAMS.withBase([PARAM_KEYS.exeMethod]),
|
|
65
|
+
platforms: [],
|
|
66
|
+
skipAppConfig: true,
|
|
67
|
+
skipPlatforms: true,
|
|
68
|
+
forceBuildHookRebuild: true,
|
|
69
|
+
isGlobalScope: true,
|
|
70
|
+
};
|
|
71
|
+
exports.customRnvHooksRunTask = customRnvHooksRunTask;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customRnvPackageTask = void 0;
|
|
4
|
+
const rnv_1 = require("rnv");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
|
+
const { TASK_PACKAGE, TASK_CONFIGURE, PARAMS } = rnv_1.Constants;
|
|
7
|
+
const packageFn = async (c, parentTask, originTask) => {
|
|
8
|
+
rnv_1.Logger.logTask('taskRnvPackage', `parent:${parentTask}`);
|
|
9
|
+
await rnv_1.TaskManager.executeOrSkipTask(c, TASK_CONFIGURE, TASK_PACKAGE, originTask);
|
|
10
|
+
return true;
|
|
11
|
+
};
|
|
12
|
+
const customRnvPackageTask = {
|
|
13
|
+
description: 'Package source files into bundle',
|
|
14
|
+
fn: packageFn,
|
|
15
|
+
task: 'package',
|
|
16
|
+
params: PARAMS.withBase(PARAMS.withConfigure()),
|
|
17
|
+
platforms: Object.values(constants_1.Platforms),
|
|
18
|
+
};
|
|
19
|
+
exports.customRnvPackageTask = customRnvPackageTask;
|
|
@@ -0,0 +1,116 @@
|
|
|
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.customRnvProjectConfigureTask = void 0;
|
|
23
|
+
const path = __importStar(require("path"));
|
|
24
|
+
const rnv_1 = require("rnv");
|
|
25
|
+
const crypto_1 = require("rnv/dist/core/systemManager/crypto");
|
|
26
|
+
const replaceRelevantStringsInConfig_1 = require("../utils/replaceRelevantStringsInConfig");
|
|
27
|
+
const { configurePlugins, overrideTemplatePlugins, resolvePluginDependants, } = rnv_1.PluginManager;
|
|
28
|
+
const { chalk, logTask, logInfo } = rnv_1.Logger;
|
|
29
|
+
const { checkIsRenativeProject, generateRuntimeConfig } = rnv_1.ConfigManager;
|
|
30
|
+
const { updateRenativeConfigs, configureRuntimeDefaults } = rnv_1.RuntimeManager;
|
|
31
|
+
const { applyTemplate, checkIfTemplateConfigured, configureTemplateFiles, isTemplateInstalled, } = rnv_1.TemplateManager;
|
|
32
|
+
const { fsExistsSync, fsMkdirSync } = rnv_1.FileUtils;
|
|
33
|
+
const { TASK_INSTALL, TASK_PROJECT_CONFIGURE, TASK_TEMPLATE_APPLY, TASK_APP_CONFIGURE, TASK_WORKSPACE_CONFIGURE, PARAMS, } = rnv_1.Constants;
|
|
34
|
+
const { checkAndCreateBabelConfig, copyRuntimeAssets, cleanPlaformAssets, checkAndCreateGitignore, versionCheck, } = rnv_1.ProjectManager;
|
|
35
|
+
const { configureEngines, getEngineRunnerByPlatform } = rnv_1.EngineManager;
|
|
36
|
+
const { executeTask, initializeTask, findSuitableTask } = rnv_1.TaskManager;
|
|
37
|
+
const patchEngineTemplatesPath = (c) => {
|
|
38
|
+
const templatesPath = path.join(process.cwd(), 'node_modules', '@24i', 'smartapps-bigscreen-rnv-build-engine', 'dist', 'templates');
|
|
39
|
+
const engine = getEngineRunnerByPlatform(c, c.platform);
|
|
40
|
+
engine.originalTemplatePlatformsDir = path.join(templatesPath, 'platforms');
|
|
41
|
+
engine.originalTemplateAssetsDir = path.join(templatesPath, 'assets');
|
|
42
|
+
engine.originalTemplatePlatformProjectDir = path.join(templatesPath, 'platforms', 'project');
|
|
43
|
+
c.paths.project.platformTemplatesDirs[c.platform] = engine.originalTemplatePlatformsDir;
|
|
44
|
+
};
|
|
45
|
+
const handleReset = async (c) => {
|
|
46
|
+
if (c.program.resetHard) {
|
|
47
|
+
logInfo(`You passed ${chalk().white('-R, --resetHard')} argument. "${chalk().white('./platformAssets')}" will be cleaned up first`);
|
|
48
|
+
await cleanPlaformAssets(c);
|
|
49
|
+
}
|
|
50
|
+
else if (c.program.resetAssets) {
|
|
51
|
+
logInfo(`You passed ${chalk().white('-a, --resetAssets')} argument. "${chalk().white('./platformAssets')}" will be cleaned up first`);
|
|
52
|
+
await cleanPlaformAssets(c);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
const projectConfigureFn = async (c, parentTask, originTask) => {
|
|
56
|
+
logTask('taskRnvProjectConfigure');
|
|
57
|
+
patchEngineTemplatesPath(c);
|
|
58
|
+
const buildsDirPath = c.paths.project.builds.dir;
|
|
59
|
+
if (buildsDirPath && !fsExistsSync(buildsDirPath)) {
|
|
60
|
+
logInfo(`Creating folder ${buildsDirPath} ...DONE`);
|
|
61
|
+
fsMkdirSync(buildsDirPath);
|
|
62
|
+
}
|
|
63
|
+
await updateRenativeConfigs(c);
|
|
64
|
+
await checkIsRenativeProject(c);
|
|
65
|
+
await executeTask(c, TASK_WORKSPACE_CONFIGURE, TASK_PROJECT_CONFIGURE, originTask);
|
|
66
|
+
if (c.program.only && !!parentTask) {
|
|
67
|
+
await configureRuntimeDefaults(c);
|
|
68
|
+
await executeTask(c, TASK_APP_CONFIGURE, TASK_PROJECT_CONFIGURE, originTask);
|
|
69
|
+
await generateRuntimeConfig(c);
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
await checkIfTemplateConfigured(c);
|
|
73
|
+
await executeTask(c, TASK_INSTALL, TASK_PROJECT_CONFIGURE, originTask);
|
|
74
|
+
await (0, crypto_1.checkCrypto)(c, parentTask, originTask);
|
|
75
|
+
await configureRuntimeDefaults(c);
|
|
76
|
+
if (originTask !== TASK_TEMPLATE_APPLY) {
|
|
77
|
+
if (c.runtime.requiresBootstrap || !isTemplateInstalled(c)) {
|
|
78
|
+
await applyTemplate(c);
|
|
79
|
+
logInfo('Your template has been bootstrapped. RESTARTING...DONE');
|
|
80
|
+
const taskInstance = await findSuitableTask(c);
|
|
81
|
+
c.runtime.requiresBootstrap = false;
|
|
82
|
+
return initializeTask(c, taskInstance.task);
|
|
83
|
+
}
|
|
84
|
+
await applyTemplate(c);
|
|
85
|
+
await configureRuntimeDefaults(c);
|
|
86
|
+
await executeTask(c, TASK_INSTALL, TASK_PROJECT_CONFIGURE, originTask);
|
|
87
|
+
await executeTask(c, TASK_APP_CONFIGURE, TASK_PROJECT_CONFIGURE, originTask);
|
|
88
|
+
await versionCheck(c);
|
|
89
|
+
await configureEngines(c);
|
|
90
|
+
await resolvePluginDependants(c);
|
|
91
|
+
await configurePlugins(c);
|
|
92
|
+
await configureRuntimeDefaults(c);
|
|
93
|
+
if (!c.runtime.disableReset) {
|
|
94
|
+
await handleReset(c);
|
|
95
|
+
}
|
|
96
|
+
await copyRuntimeAssets(c);
|
|
97
|
+
await configureTemplateFiles(c);
|
|
98
|
+
await checkAndCreateGitignore(c);
|
|
99
|
+
await checkAndCreateBabelConfig(c);
|
|
100
|
+
if (!c.buildConfig.platforms) {
|
|
101
|
+
await updateRenativeConfigs(c);
|
|
102
|
+
}
|
|
103
|
+
(0, replaceRelevantStringsInConfig_1.replaceRelevantStringsInConfig)(c);
|
|
104
|
+
await generateRuntimeConfig(c);
|
|
105
|
+
await overrideTemplatePlugins(c);
|
|
106
|
+
}
|
|
107
|
+
return true;
|
|
108
|
+
};
|
|
109
|
+
const customRnvProjectConfigureTask = {
|
|
110
|
+
description: 'Configure current project',
|
|
111
|
+
fn: projectConfigureFn,
|
|
112
|
+
task: TASK_PROJECT_CONFIGURE,
|
|
113
|
+
params: PARAMS.withBase(),
|
|
114
|
+
platforms: [],
|
|
115
|
+
};
|
|
116
|
+
exports.customRnvProjectConfigureTask = customRnvProjectConfigureTask;
|
|
@@ -0,0 +1,72 @@
|
|
|
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.customRnvStartTask = void 0;
|
|
23
|
+
const open = __importStar(require("better-opn"));
|
|
24
|
+
const rnv_1 = require("rnv");
|
|
25
|
+
const sdk_webpack_1 = require("@rnv/sdk-webpack");
|
|
26
|
+
const constants_1 = require("../constants");
|
|
27
|
+
const { getConfigProp } = rnv_1.Common;
|
|
28
|
+
const { logErrorPlatform } = rnv_1.PlatformManager;
|
|
29
|
+
const { logTask, logError } = rnv_1.Logger;
|
|
30
|
+
const { TASK_START, TASK_CONFIGURE, REMOTE_DEBUGGER_ENABLED_PLATFORMS, PARAMS } = rnv_1.Constants;
|
|
31
|
+
const { executeTask } = rnv_1.TaskManager;
|
|
32
|
+
const startFn = async (c, parentTask, originTask) => {
|
|
33
|
+
const { platform, runtime, program } = c;
|
|
34
|
+
const { port } = runtime;
|
|
35
|
+
const { hosted } = program;
|
|
36
|
+
logTask('taskRnvStart', `parent:${parentTask} port:${port} hosted:${!!hosted}`);
|
|
37
|
+
if (!parentTask) {
|
|
38
|
+
await executeTask(c, TASK_CONFIGURE, TASK_START, originTask);
|
|
39
|
+
}
|
|
40
|
+
if (hosted) {
|
|
41
|
+
(0, sdk_webpack_1.waitForWebpack)(c)
|
|
42
|
+
.then(() => open(`http://${c.runtime.localhost}:${port}/`))
|
|
43
|
+
.catch(logError);
|
|
44
|
+
}
|
|
45
|
+
const bundleAssets = getConfigProp(c, c.platform, 'bundleAssets');
|
|
46
|
+
const isDebuggerEnabledForPlatform = REMOTE_DEBUGGER_ENABLED_PLATFORMS.includes(platform);
|
|
47
|
+
const isWeinreEnabled = isDebuggerEnabledForPlatform && !bundleAssets && !hosted;
|
|
48
|
+
switch (platform) {
|
|
49
|
+
case constants_1.Platforms.ENTONE:
|
|
50
|
+
case constants_1.Platforms.HBBTV:
|
|
51
|
+
case constants_1.Platforms.KREATV:
|
|
52
|
+
case constants_1.Platforms.SAPHI:
|
|
53
|
+
case constants_1.Platforms.TIZEN:
|
|
54
|
+
case constants_1.Platforms.WEBOS:
|
|
55
|
+
case constants_1.Platforms.WEBTV:
|
|
56
|
+
case constants_1.Platforms.XBOX:
|
|
57
|
+
return (0, sdk_webpack_1.runWebpackServer)(c, isWeinreEnabled);
|
|
58
|
+
default:
|
|
59
|
+
if (hosted) {
|
|
60
|
+
return logError('This platform does not support hosted mode', true);
|
|
61
|
+
}
|
|
62
|
+
return logErrorPlatform(c);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
const customRnvStartTask = {
|
|
66
|
+
description: 'Starts bundler / server',
|
|
67
|
+
fn: startFn,
|
|
68
|
+
task: 'start',
|
|
69
|
+
params: PARAMS.withBase(PARAMS.withConfigure()),
|
|
70
|
+
platforms: Object.values(constants_1.Platforms),
|
|
71
|
+
};
|
|
72
|
+
exports.customRnvStartTask = customRnvStartTask;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.forEachSupportedPlatformFlavour = void 0;
|
|
4
|
+
const resolvers_1 = require("../resolvers");
|
|
5
|
+
const getProgressMessage = (platforms, platformIndex, flavours, flavourIndex) => {
|
|
6
|
+
let string = `\nProcessing "${platforms[platformIndex]}" platform`;
|
|
7
|
+
string += ` (${platformIndex + 1}/${platforms.length})`;
|
|
8
|
+
string += ` and its "${flavours[flavourIndex]}" flavour`;
|
|
9
|
+
string += ` (${flavourIndex + 1}/${flavours.length})...`;
|
|
10
|
+
return string;
|
|
11
|
+
};
|
|
12
|
+
const forEachSupportedPlatformFlavour = (c, cb) => {
|
|
13
|
+
const processPlatformFlavours = (platform, platformIndex, platforms) => {
|
|
14
|
+
const processFlavour = (flavour, flavourIndex, flavours) => {
|
|
15
|
+
console.log(getProgressMessage(platforms, platformIndex, flavours, flavourIndex));
|
|
16
|
+
const { scheme } = c.runtime;
|
|
17
|
+
return cb({ platform, flavour, scheme });
|
|
18
|
+
};
|
|
19
|
+
const { supportedFlavours = [] } = c.buildConfig.platforms[platform]?.deploy || {};
|
|
20
|
+
supportedFlavours.forEach(processFlavour);
|
|
21
|
+
};
|
|
22
|
+
(0, resolvers_1.resolveSupportedPlatforms)(c).forEach(processPlatformFlavours);
|
|
23
|
+
};
|
|
24
|
+
exports.forEachSupportedPlatformFlavour = forEachSupportedPlatformFlavour;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.generatePngSpriteMap = void 0;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const webpack_1 = __importDefault(require("webpack"));
|
|
10
|
+
const webpack_spritesmith_1 = __importDefault(require("webpack-spritesmith"));
|
|
11
|
+
const child_process_1 = require("child_process");
|
|
12
|
+
const makeWebpackSpritesmithConfig = (appBuildDir, config) => ({
|
|
13
|
+
entry: {
|
|
14
|
+
bundle: 'index.js',
|
|
15
|
+
},
|
|
16
|
+
plugins: [
|
|
17
|
+
new webpack_spritesmith_1.default({
|
|
18
|
+
src: {
|
|
19
|
+
cwd: path_1.default.resolve(appBuildDir, config.iconsFolder),
|
|
20
|
+
glob: '**/*.png',
|
|
21
|
+
},
|
|
22
|
+
target: {
|
|
23
|
+
image: path_1.default.resolve(appBuildDir, config.spriteOutput),
|
|
24
|
+
css: [
|
|
25
|
+
path_1.default.resolve(appBuildDir, config.jsonOutput),
|
|
26
|
+
path_1.default.resolve(appBuildDir, config.cssOutput),
|
|
27
|
+
],
|
|
28
|
+
},
|
|
29
|
+
apiOptions: {
|
|
30
|
+
cssImageRef: 'sprite.png',
|
|
31
|
+
generateSpriteName: (fullPathToSourceFile) => {
|
|
32
|
+
const { name } = path_1.default.parse(fullPathToSourceFile);
|
|
33
|
+
return `${config.iconPrefix}${name}`;
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
}),
|
|
37
|
+
],
|
|
38
|
+
resolve: {
|
|
39
|
+
symlinks: false,
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
const runSpritesmith = (config) => (new Promise((resolve) => {
|
|
43
|
+
const webpackCompiler = (0, webpack_1.default)(config);
|
|
44
|
+
const spritesmith = config.plugins[0];
|
|
45
|
+
spritesmith.apply(webpackCompiler);
|
|
46
|
+
spritesmith.compile(() => {
|
|
47
|
+
spritesmith.getWatcher().close();
|
|
48
|
+
resolve();
|
|
49
|
+
});
|
|
50
|
+
}));
|
|
51
|
+
const removeEmptyFiles = (appBuildDir, config) => {
|
|
52
|
+
const spriteImagePath = path_1.default.join(appBuildDir, config.spriteOutput);
|
|
53
|
+
const spriteMapCSSPath = path_1.default.join(appBuildDir, config.cssOutput);
|
|
54
|
+
const spriteNamesJsonPath = path_1.default.join(appBuildDir, config.jsonOutput);
|
|
55
|
+
if (fs_1.default.existsSync(spriteImagePath) && !fs_1.default.statSync(spriteImagePath).size) {
|
|
56
|
+
(0, child_process_1.execSync)(`rm -rf ${spriteImagePath}`);
|
|
57
|
+
(0, child_process_1.execSync)(`rm -rf ${spriteMapCSSPath}`);
|
|
58
|
+
(0, child_process_1.execSync)(`rm -rf ${spriteNamesJsonPath}`);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
const generatePngSpriteMap = async (c) => {
|
|
62
|
+
const config = {
|
|
63
|
+
iconsFolder: '../../icons',
|
|
64
|
+
spriteOutput: '../../platformAssets/runtime/sprite.png',
|
|
65
|
+
cssOutput: '../../platformAssets/runtime/png_icons.css',
|
|
66
|
+
jsonOutput: '../../platformAssets/png_icons.json',
|
|
67
|
+
iconPrefix: c.buildConfig?.common.pngIconPrefix || '',
|
|
68
|
+
};
|
|
69
|
+
const rnvBuildDirPath = `${c.paths.project.builds.dir}/${c.runtime.appId}_${c.platform}`;
|
|
70
|
+
if (!fs_1.default.existsSync(path_1.default.resolve(rnvBuildDirPath, config.iconsFolder))) {
|
|
71
|
+
console.log('No icons folder found. Skipping generating png spritemap.');
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
const webpackConfig = makeWebpackSpritesmithConfig(rnvBuildDirPath, config);
|
|
75
|
+
await runSpritesmith(webpackConfig);
|
|
76
|
+
removeEmptyFiles(rnvBuildDirPath, config);
|
|
77
|
+
};
|
|
78
|
+
exports.generatePngSpriteMap = generatePngSpriteMap;
|