@tantawowa/hosanna-tools 3.0.0 → 3.2.0
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/dist/build-info.json +3 -3
- package/dist/cli.js +147 -73
- package/dist/cli.js.map +1 -1
- package/dist/run/executor.d.ts +4 -0
- package/dist/run/executor.js +52 -11
- package/dist/run/executor.js.map +1 -1
- package/dist/run/planner.d.ts +1 -0
- package/dist/run/planner.js +92 -7
- package/dist/run/planner.js.map +1 -1
- package/dist/run/run-config.d.ts +9 -0
- package/dist/run/run-config.js +16 -0
- package/dist/run/run-config.js.map +1 -1
- package/dist/support-tools/build-config-resolver.d.ts +6 -0
- package/dist/support-tools/build-config-resolver.js +66 -1
- package/dist/support-tools/build-config-resolver.js.map +1 -1
- package/package.json +1 -1
|
@@ -10,6 +10,7 @@ exports.explainBuildConfig = explainBuildConfig;
|
|
|
10
10
|
const fs_1 = __importDefault(require("fs"));
|
|
11
11
|
const path_1 = __importDefault(require("path"));
|
|
12
12
|
const crypto_1 = __importDefault(require("crypto"));
|
|
13
|
+
const os_1 = __importDefault(require("os"));
|
|
13
14
|
const SAFE_SEGMENT = /^[A-Za-z0-9_-]+$/;
|
|
14
15
|
function resolveBuildConfigCommandArgs(args, env = process.env) {
|
|
15
16
|
var _a, _b, _c, _d, _e;
|
|
@@ -31,7 +32,7 @@ function resolveBuildConfigCommandArgs(args, env = process.env) {
|
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
34
|
function resolveBuildConfig(options) {
|
|
34
|
-
var _a;
|
|
35
|
+
var _a, _b, _c;
|
|
35
36
|
const cwd = path_1.default.resolve((_a = options.cwd) !== null && _a !== void 0 ? _a : process.cwd());
|
|
36
37
|
const env = validateSegment('env', options.env);
|
|
37
38
|
const platform = validateSegment('platform', options.platform);
|
|
@@ -63,6 +64,11 @@ function resolveBuildConfig(options) {
|
|
|
63
64
|
bytes: Buffer.byteLength(raw, 'utf8'),
|
|
64
65
|
});
|
|
65
66
|
}
|
|
67
|
+
config = applyRuntimeBuildConfigDefaults(config, {
|
|
68
|
+
platform,
|
|
69
|
+
processEnv: (_b = options.processEnv) !== null && _b !== void 0 ? _b : process.env,
|
|
70
|
+
networkInterfaces: (_c = options.networkInterfaces) !== null && _c !== void 0 ? _c : os_1.default.networkInterfaces,
|
|
71
|
+
});
|
|
66
72
|
config.$buildConfig = Object.assign(Object.assign({ env,
|
|
67
73
|
platform }, (profile ? { profile } : {})), { sources: sources.map(source => source.path) });
|
|
68
74
|
return { config, sources, missingSources };
|
|
@@ -152,6 +158,65 @@ function isInsideRoot(root, candidate) {
|
|
|
152
158
|
const relative = path_1.default.relative(root, candidate);
|
|
153
159
|
return relative === '' || (!relative.startsWith('..') && !path_1.default.isAbsolute(relative));
|
|
154
160
|
}
|
|
161
|
+
function applyRuntimeBuildConfigDefaults(config, options) {
|
|
162
|
+
if (options.platform !== 'roku')
|
|
163
|
+
return config;
|
|
164
|
+
const gameConfig = isPlainObject(config.game) ? config.game : {};
|
|
165
|
+
if (typeof gameConfig.assetBaseUrl === 'string')
|
|
166
|
+
return config;
|
|
167
|
+
return Object.assign(Object.assign({}, config), { game: Object.assign(Object.assign({}, gameConfig), { assetBaseUrl: resolveRokuGameAssetBaseUrl(options) }) });
|
|
168
|
+
}
|
|
169
|
+
function resolveRokuGameAssetBaseUrl(options) {
|
|
170
|
+
const explicitBaseUrl = nonEmptyEnvString(options.processEnv.HS_GAME_ASSET_BASE_URL);
|
|
171
|
+
if (explicitBaseUrl)
|
|
172
|
+
return trimTrailingSlash(explicitBaseUrl);
|
|
173
|
+
const host = nonEmptyEnvString(options.processEnv.HS_GAME_ASSET_HOST) ||
|
|
174
|
+
findLanAddress(options.networkInterfaces()) ||
|
|
175
|
+
'127.0.0.1';
|
|
176
|
+
const port = resolveRokuGameAssetPort(options.processEnv);
|
|
177
|
+
return `http://${host}:${port}`;
|
|
178
|
+
}
|
|
179
|
+
function resolveRokuGameAssetPort(env) {
|
|
180
|
+
var _a, _b;
|
|
181
|
+
return (_b = (_a = parsePort(env.HS_GAME_ASSET_PORT)) !== null && _a !== void 0 ? _a : parsePort(env.HS_VITE_PORT)) !== null && _b !== void 0 ? _b : 5171;
|
|
182
|
+
}
|
|
183
|
+
function parsePort(value) {
|
|
184
|
+
if (value === undefined || value.trim() === '')
|
|
185
|
+
return undefined;
|
|
186
|
+
const parsed = Number(value);
|
|
187
|
+
return Number.isInteger(parsed) && parsed > 0 ? parsed : undefined;
|
|
188
|
+
}
|
|
189
|
+
function nonEmptyEnvString(value) {
|
|
190
|
+
if (value === undefined)
|
|
191
|
+
return undefined;
|
|
192
|
+
const trimmed = value.trim();
|
|
193
|
+
return trimmed === '' ? undefined : trimmed;
|
|
194
|
+
}
|
|
195
|
+
function trimTrailingSlash(value) {
|
|
196
|
+
return value.replace(/\/+$/, '');
|
|
197
|
+
}
|
|
198
|
+
function findLanAddress(interfaces) {
|
|
199
|
+
const preferredNames = ['en0', 'en1', 'bridge100'];
|
|
200
|
+
for (const name of preferredNames) {
|
|
201
|
+
const address = findAddressInInterface(interfaces[name]);
|
|
202
|
+
if (address)
|
|
203
|
+
return address;
|
|
204
|
+
}
|
|
205
|
+
for (const entries of Object.values(interfaces)) {
|
|
206
|
+
const address = findAddressInInterface(entries);
|
|
207
|
+
if (address)
|
|
208
|
+
return address;
|
|
209
|
+
}
|
|
210
|
+
return '';
|
|
211
|
+
}
|
|
212
|
+
function findAddressInInterface(entries) {
|
|
213
|
+
for (const entry of entries || []) {
|
|
214
|
+
if (entry.family === 'IPv4' && !entry.internal) {
|
|
215
|
+
return entry.address;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return '';
|
|
219
|
+
}
|
|
155
220
|
function createManifest(result) {
|
|
156
221
|
const buildConfig = result.config.$buildConfig;
|
|
157
222
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-config-resolver.js","sourceRoot":"","sources":["../../src/support-tools/build-config-resolver.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"build-config-resolver.js","sourceRoot":"","sources":["../../src/support-tools/build-config-resolver.ts"],"names":[],"mappings":"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"}
|