@tantawowa/hosanna-tools 3.6.2 → 3.7.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.
@@ -11,11 +11,11 @@ exports.runHosannaSourceConfig = runHosannaSourceConfig;
11
11
  exports.runHosannaConfig = runHosannaConfig;
12
12
  const fs_1 = __importDefault(require("fs"));
13
13
  const path_1 = __importDefault(require("path"));
14
- const child_process_1 = __importDefault(require("child_process"));
15
14
  const readline_1 = __importDefault(require("readline"));
16
15
  const compiler_release_catalog_js_1 = require("../updater/compiler-release-catalog.js");
17
16
  const framework_installer_js_1 = require("../updater/framework-installer.js");
18
17
  const sdk_manager_js_1 = require("../updater/sdk-manager.js");
18
+ const local_sdk_manager_js_1 = require("../updater/local-sdk-manager.js");
19
19
  const symlink_registry_js_1 = require("../updater/symlink-registry.js");
20
20
  const FIELD_ORDER = [
21
21
  'git-url',
@@ -30,9 +30,8 @@ const FIELD_LABELS = {
30
30
  'transpiler-version': 'Hosanna compiler version',
31
31
  };
32
32
  const DEFAULT_GIT_URL = 'https://github.com/TantaWowa/hosanna-ui.git';
33
- const DEFAULT_KEYGEN_FLAVOUR = 'full';
34
- const DEFAULT_KEYGEN_PLATFORMS = ['roku', 'web'];
35
- const DEFAULT_KEYGEN_SDK_VERSION = '@nightly';
33
+ const DEFAULT_KEYGEN_FLAVOUR = 'fullSource';
34
+ const DEFAULT_KEYGEN_SDK_VERSION = 'latest';
36
35
  const FIELD_CATALOG_KEYS = {
37
36
  'git-url': 'gitUrls',
38
37
  'sdk-version': 'sdkVersions',
@@ -281,10 +280,13 @@ function hasUpdates(updates) {
281
280
  return Boolean(updates && Object.values(updates).some(value => value !== undefined));
282
281
  }
283
282
  function isFlavour(value) {
284
- return value === 'core' || value === 'game' || value === 'full';
283
+ return value === 'fullSource' || value === 'core' || value === 'game' || value === 'full';
285
284
  }
286
285
  function sourceModeFromConfig(config) {
287
286
  if (config['sdk-version'] === 'LOCAL_SDK' || config.branch === 'LOCAL_SDK') {
287
+ if (config['local-sdk-mode'] === 'embedded' || config['local-sdk-mode'] === 'shared') {
288
+ return config['local-sdk-mode'];
289
+ }
288
290
  return 'local';
289
291
  }
290
292
  if (config.distribution === 'keygen') {
@@ -308,19 +310,45 @@ function parsePlatformList(value) {
308
310
  }
309
311
  return Array.from(new Set(platforms));
310
312
  }
311
- function formatSourceConfig(config) {
313
+ function formatSourceConfig(config, cwd) {
312
314
  const mode = sourceModeFromConfig(config);
313
315
  const lines = [`Hosanna source install mode: ${mode}`];
314
316
  if (mode === 'keygen') {
315
317
  lines.push(` flavour: ${typeof config.flavour === 'string' ? config.flavour : '(unset)'}`);
316
318
  lines.push(` platforms: ${Array.isArray(config.platforms) ? config.platforms.join(', ') : '(unset)'}`);
317
319
  lines.push(` sdk-version: ${typeof config['sdk-version'] === 'string' ? config['sdk-version'] : '(unset)'}`);
320
+ try {
321
+ const stamp = JSON.parse(fs_1.default.readFileSync(path_1.default.join(cwd, 'hosanna-ui', '.hosanna-dist.json'), 'utf8'));
322
+ lines.push(` resolved-version: ${stamp.version || '(unavailable)'}`);
323
+ lines.push(` source-commit: ${stamp.sourceCommit || '(unavailable)'}`);
324
+ for (const artifact of stamp.artifacts || []) {
325
+ lines.push(` release-id: ${artifact.releaseId || '(unavailable)'}`);
326
+ lines.push(` artifact-id: ${artifact.id || '(unavailable)'}`);
327
+ lines.push(` checksum: ${artifact.checksum || '(unavailable)'}`);
328
+ }
329
+ }
330
+ catch (_a) {
331
+ lines.push(' resolved-install: (not installed)');
332
+ }
318
333
  }
319
334
  else if (mode === 'git') {
320
335
  lines.push(` git-url: ${typeof config['git-url'] === 'string' ? config['git-url'] : '(unset)'}`);
321
336
  lines.push(` branch: ${typeof config.branch === 'string' ? config.branch || '(none)' : '(unset)'}`);
322
337
  lines.push(` sdk-version: ${typeof config['sdk-version'] === 'string' ? config['sdk-version'] : '(unset)'}`);
323
338
  }
339
+ else if (mode === 'embedded') {
340
+ lines.push(` source: ${path_1.default.join(cwd, 'hosanna-ui')}`);
341
+ }
342
+ else if (mode === 'shared') {
343
+ const configured = typeof config['local-sdk-path'] === 'string' ? config['local-sdk-path'] : '';
344
+ lines.push(` configured-source: ${configured || '(unset)'}`);
345
+ try {
346
+ lines.push(` resolved-source: ${(0, local_sdk_manager_js_1.resolveLocalSdkSource)(cwd, configured)}`);
347
+ }
348
+ catch (error) {
349
+ lines.push(` resolved-source: unavailable (${error instanceof Error ? error.message : String(error)})`);
350
+ }
351
+ }
324
352
  else if (mode === 'local') {
325
353
  lines.push(' hosanna-ui: LOCAL_SDK');
326
354
  }
@@ -374,17 +402,6 @@ function restoreFrameworkProjectPaths(cwd, snapshot) {
374
402
  fs_1.default.renameSync(backupPath, targetPath);
375
403
  }
376
404
  }
377
- function assertGitCheckoutIsClean(repoDir, force) {
378
- if (!fs_1.default.existsSync(path_1.default.join(repoDir, '.git')))
379
- return;
380
- const status = child_process_1.default.spawnSync('git', ['-C', repoDir, 'status', '--porcelain'], { encoding: 'utf8' });
381
- if (status.error || status.status !== 0) {
382
- throw new Error(`Unable to check whether ${repoDir} is clean. Refusing to replace a git checkout.`);
383
- }
384
- if (status.stdout.trim() && !force) {
385
- throw new Error(`${repoDir} has uncommitted changes. Commit or stash them, or use --force with --replace-existing.`);
386
- }
387
- }
388
405
  function restoreHosannaConfig(cwd, originalConfig) {
389
406
  const configPath = path_1.default.join(cwd, 'hosanna.json');
390
407
  if (originalConfig === undefined)
@@ -392,23 +409,37 @@ function restoreHosannaConfig(cwd, originalConfig) {
392
409
  else
393
410
  fs_1.default.writeFileSync(configPath, originalConfig, 'utf8');
394
411
  }
395
- async function installSourceMode(mode, cwd, force) {
412
+ async function installSourceMode(mode, cwd, force, sourcePath) {
396
413
  if (mode === 'keygen') {
397
414
  await (0, framework_installer_js_1.installFrameworkFromKeygen)({ projectRoot: cwd, force });
398
415
  }
399
416
  else if (mode === 'git') {
400
417
  await (0, sdk_manager_js_1.updateSdk)({ cwd, force, exitOnCompletion: false });
401
418
  }
419
+ else if (mode === 'embedded') {
420
+ if (fs_1.default.lstatSync(path_1.default.join(cwd, 'hosanna-ui'), { throwIfNoEntry: false }))
421
+ (0, local_sdk_manager_js_1.prepareLocalSdkIntegration)(cwd);
422
+ else
423
+ (0, local_sdk_manager_js_1.installEmbeddedSdk)(cwd, sourcePath || '');
424
+ (0, local_sdk_manager_js_1.prepareLocalSdkIntegration)(cwd);
425
+ }
426
+ else if (mode === 'shared') {
427
+ if (fs_1.default.lstatSync(path_1.default.join(cwd, 'hosanna-ui'), { throwIfNoEntry: false }))
428
+ (0, local_sdk_manager_js_1.prepareLocalSdkIntegration)(cwd);
429
+ else
430
+ (0, local_sdk_manager_js_1.installSharedSdk)(cwd, sourcePath || '');
431
+ (0, local_sdk_manager_js_1.prepareLocalSdkIntegration)(cwd);
432
+ }
402
433
  // LOCAL_SDK is a caller-provided checkout; writing its config is the install.
403
434
  }
404
435
  async function runHosannaSourceConfig(options = {}) {
405
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
436
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
406
437
  const cwd = resolveCwd(options.cwd);
407
438
  const mode = (_a = options.mode) !== null && _a !== void 0 ? _a : 'show';
408
439
  const writeStdout = (_b = options.writeStdout) !== null && _b !== void 0 ? _b : ((text) => console.info(text));
409
440
  const config = readHosannaJson(cwd, { allowMissing: true });
410
441
  if (mode === 'show') {
411
- const message = formatSourceConfig(config);
442
+ const message = formatSourceConfig(config, cwd);
412
443
  writeStdout(message);
413
444
  return {
414
445
  updated: false,
@@ -419,35 +450,62 @@ async function runHosannaSourceConfig(options = {}) {
419
450
  }
420
451
  const next = Object.assign({}, config);
421
452
  if (mode === 'keygen') {
422
- const existingPlatforms = Array.isArray(next.platforms)
423
- ? next.platforms.filter((item) => typeof item === 'string' && item.trim().length > 0)
424
- : undefined;
453
+ const requestedFlavour = (_c = options.flavour) !== null && _c !== void 0 ? _c : (isFlavour(next.flavour) ? next.flavour : DEFAULT_KEYGEN_FLAVOUR);
454
+ const platforms = (_d = options.platforms) !== null && _d !== void 0 ? _d : (Array.isArray(next.platforms) ? next.platforms : []);
455
+ if (requestedFlavour !== 'fullSource' || platforms.length > 0) {
456
+ throw new Error('NOT SUPPORTED YET — use flavour "fullSource"');
457
+ }
425
458
  next.distribution = 'keygen';
426
- next.flavour = (_c = options.flavour) !== null && _c !== void 0 ? _c : (isFlavour(next.flavour) ? next.flavour : DEFAULT_KEYGEN_FLAVOUR);
427
- next.platforms = (_e = (_d = options.platforms) !== null && _d !== void 0 ? _d : existingPlatforms) !== null && _e !== void 0 ? _e : DEFAULT_KEYGEN_PLATFORMS;
428
- next['sdk-version'] = (_f = options.sdkVersion) !== null && _f !== void 0 ? _f : DEFAULT_KEYGEN_SDK_VERSION;
459
+ next.flavour = requestedFlavour;
460
+ if (platforms.length > 0)
461
+ next.platforms = platforms;
462
+ else
463
+ delete next.platforms;
464
+ next['sdk-version'] = (_e = options.sdkVersion) !== null && _e !== void 0 ? _e : DEFAULT_KEYGEN_SDK_VERSION;
429
465
  delete next['git-url'];
430
466
  delete next.branch;
467
+ delete next['local-sdk-mode'];
468
+ delete next['local-sdk-path'];
431
469
  }
432
470
  else if (mode === 'git') {
433
471
  next.distribution = 'git';
434
- next['git-url'] = (_g = options.gitUrl) !== null && _g !== void 0 ? _g : (typeof next['git-url'] === 'string' ? next['git-url'] : DEFAULT_GIT_URL);
435
- next.branch = (_h = options.branch) !== null && _h !== void 0 ? _h : (typeof next.branch === 'string' && next.branch !== 'LOCAL_SDK' ? next.branch : 'main');
436
- next['sdk-version'] = (_j = options.sdkVersion) !== null && _j !== void 0 ? _j : (typeof next['sdk-version'] === 'string' && next['sdk-version'] !== 'LOCAL_SDK' && next['sdk-version'] !== '@nightly'
472
+ next['git-url'] = (_f = options.gitUrl) !== null && _f !== void 0 ? _f : (typeof next['git-url'] === 'string' ? next['git-url'] : DEFAULT_GIT_URL);
473
+ next.branch = (_g = options.branch) !== null && _g !== void 0 ? _g : (typeof next.branch === 'string' && next.branch !== 'LOCAL_SDK' ? next.branch : 'main');
474
+ next['sdk-version'] = (_h = options.sdkVersion) !== null && _h !== void 0 ? _h : (typeof next['sdk-version'] === 'string' && next['sdk-version'] !== 'LOCAL_SDK' && next['sdk-version'] !== '@nightly'
437
475
  ? next['sdk-version']
438
476
  : '@latest');
439
477
  delete next.flavour;
440
478
  delete next.platforms;
479
+ delete next['local-sdk-mode'];
480
+ delete next['local-sdk-path'];
441
481
  }
442
482
  else {
443
483
  next.distribution = 'git';
444
484
  next['sdk-version'] = 'LOCAL_SDK';
445
485
  next.branch = 'LOCAL_SDK';
446
486
  if (options.gitUrl || typeof next['git-url'] !== 'string') {
447
- next['git-url'] = (_k = options.gitUrl) !== null && _k !== void 0 ? _k : DEFAULT_GIT_URL;
487
+ next['git-url'] = (_j = options.gitUrl) !== null && _j !== void 0 ? _j : DEFAULT_GIT_URL;
448
488
  }
449
489
  delete next.flavour;
450
490
  delete next.platforms;
491
+ if (mode === 'embedded') {
492
+ next['local-sdk-mode'] = 'embedded';
493
+ delete next['local-sdk-path'];
494
+ if (!options.sourcePath && sourceModeFromConfig(config) !== 'embedded') {
495
+ throw new Error('Embedded source mode requires --source-path <hosanna-ui-checkout>.');
496
+ }
497
+ }
498
+ else if (mode === 'shared') {
499
+ const sourcePath = (_k = options.sourcePath) !== null && _k !== void 0 ? _k : (typeof next['local-sdk-path'] === 'string' ? next['local-sdk-path'] : undefined);
500
+ if (!sourcePath)
501
+ throw new Error('Shared source mode requires --source-path <hosanna-ui-checkout>.');
502
+ next['local-sdk-mode'] = 'shared';
503
+ next['local-sdk-path'] = sourcePath;
504
+ }
505
+ else {
506
+ delete next['local-sdk-mode'];
507
+ delete next['local-sdk-path'];
508
+ }
451
509
  }
452
510
  const message = `Updated hosanna.json source install mode to ${mode}.`;
453
511
  if (!options.install) {
@@ -471,12 +529,22 @@ async function runHosannaSourceConfig(options = {}) {
471
529
  throw new Error(`${repoDir} does not exist. Local source mode requires a caller-provided Hosanna checkout.`);
472
530
  }
473
531
  try {
474
- const needsCrossModeReplacement = fs_1.default.existsSync(repoDir) && currentMode !== mode && mode !== 'local';
532
+ const sharedTargetChanged = mode === 'shared' && currentMode === 'shared' && options.sourcePath !== undefined && (() => {
533
+ try {
534
+ return fs_1.default.realpathSync(repoDir) !== (0, local_sdk_manager_js_1.resolveLocalSdkSource)(cwd, options.sourcePath);
535
+ }
536
+ catch (_a) {
537
+ return true;
538
+ }
539
+ })();
540
+ const embeddedRefresh = mode === 'embedded' && currentMode === 'embedded' && options.sourcePath !== undefined;
541
+ const needsCrossModeReplacement = fs_1.default.lstatSync(repoDir, { throwIfNoEntry: false }) !== undefined &&
542
+ mode !== 'local' && (currentMode !== mode || sharedTargetChanged || embeddedRefresh);
475
543
  if (needsCrossModeReplacement && !options.replaceExisting) {
476
544
  throw new Error(`${repoDir} already exists. Use --replace-existing with --install to switch source modes safely.`);
477
545
  }
478
546
  if (needsCrossModeReplacement) {
479
- assertGitCheckoutIsClean(repoDir, Boolean(options.force));
547
+ (0, local_sdk_manager_js_1.assertSourceRootCanBeReplaced)(repoDir, Boolean(options.force));
480
548
  }
481
549
  // Git updates mutate both the checkout and the project-level framework
482
550
  // paths. Snapshot both for same-mode refreshes and source-mode switches.
@@ -518,7 +586,7 @@ async function runHosannaSourceConfig(options = {}) {
518
586
  }
519
587
  }
520
588
  writeHosannaJson(cwd, next);
521
- await installSourceMode(mode, cwd, Boolean(options.force));
589
+ await installSourceMode(mode, cwd, Boolean(options.force), (_l = options.sourcePath) !== null && _l !== void 0 ? _l : (typeof next['local-sdk-path'] === 'string' ? next['local-sdk-path'] : undefined));
522
590
  if (backupRoot)
523
591
  fs_1.default.rmSync(backupRoot, { recursive: true, force: true });
524
592
  writeStdout(message);
@@ -544,7 +612,7 @@ async function runHosannaSourceConfig(options = {}) {
544
612
  fs_1.default.rmSync(backupRoot, { recursive: true, force: true });
545
613
  restoreHosannaConfig(cwd, originalConfig);
546
614
  }
547
- catch (_l) {
615
+ catch (_m) {
548
616
  // Preserve the original install failure; rollback failures are secondary.
549
617
  }
550
618
  throw error;
@@ -1 +1 @@
1
- {"version":3,"file":"hosanna-config.js","sourceRoot":"","sources":["../../src/lib/hosanna-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hosanna-config.js","sourceRoot":"","sources":["../../src/lib/hosanna-config.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,8 @@ const KNOWN_HOSANNA_JSON_KEYS = new Set([
53
53
  'note',
54
54
  'git-url',
55
55
  'sdk-version',
56
+ 'local-sdk-mode',
57
+ 'local-sdk-path',
56
58
  'branch',
57
59
  'transpiler-version',
58
60
  'distribution',
@@ -1 +1 @@
1
- {"version":3,"file":"framework-sync.js","sourceRoot":"","sources":["../../src/support-tools/framework-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"framework-sync.js","sourceRoot":"","sources":["../../src/support-tools/framework-sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { DriverRegistry } from '../device/driver-registry.js';
2
+ export declare const DEFAULT_ROKU_COMMAND_APP_ID = "dev";
3
+ export declare const DEFAULT_ROKU_COMMAND_TIMEOUT_MS = 10000;
4
+ export interface RokuCommandRequestInit {
5
+ method: 'POST';
6
+ signal: AbortSignal;
7
+ }
8
+ export interface RokuCommandResponse {
9
+ ok: boolean;
10
+ status: number;
11
+ statusText?: string;
12
+ }
13
+ export type RokuCommandRequest = (url: string, init: RokuCommandRequestInit) => Promise<RokuCommandResponse>;
14
+ export type RokuCommandConfirm = (message: string) => Promise<boolean> | boolean;
15
+ export interface RokuCommandOptions {
16
+ command: string;
17
+ cwd?: string;
18
+ device?: string;
19
+ appId?: string;
20
+ timeoutMs?: number;
21
+ yes?: boolean;
22
+ dryRun?: boolean;
23
+ nonInteractive?: boolean;
24
+ env?: NodeJS.ProcessEnv | Record<string, string | undefined>;
25
+ registry?: DriverRegistry;
26
+ request?: RokuCommandRequest;
27
+ confirm?: RokuCommandConfirm;
28
+ }
29
+ export interface RokuCommandResult {
30
+ command: string;
31
+ appId: string;
32
+ deviceIp: string;
33
+ url: string;
34
+ dryRun: boolean;
35
+ }
36
+ export declare function buildRokuCommandUrl(deviceIp: string, command: string, appId?: string): string;
37
+ export declare function runRokuCommand(options: RokuCommandOptions): Promise<RokuCommandResult>;
@@ -0,0 +1,136 @@
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.DEFAULT_ROKU_COMMAND_TIMEOUT_MS = exports.DEFAULT_ROKU_COMMAND_APP_ID = void 0;
7
+ exports.buildRokuCommandUrl = buildRokuCommandUrl;
8
+ exports.runRokuCommand = runRokuCommand;
9
+ const net_1 = require("net");
10
+ const readline_1 = __importDefault(require("readline"));
11
+ const device_cli_js_1 = require("../device/device-cli.js");
12
+ exports.DEFAULT_ROKU_COMMAND_APP_ID = 'dev';
13
+ exports.DEFAULT_ROKU_COMMAND_TIMEOUT_MS = 10000;
14
+ const DESTRUCTIVE_COMMANDS = new Set(['clearregistry']);
15
+ function buildRokuCommandUrl(deviceIp, command, appId = exports.DEFAULT_ROKU_COMMAND_APP_ID) {
16
+ const normalizedIp = requiredValue(deviceIp, 'Roku device IP');
17
+ const normalizedCommand = requiredValue(command, 'Hosanna command');
18
+ const normalizedAppId = requiredValue(appId, 'Roku app ID');
19
+ if (!/^[A-Za-z0-9._-]+$/.test(normalizedAppId)) {
20
+ throw new Error(`Invalid Roku app ID "${normalizedAppId}". Use an installed channel ID such as dev or 8518.`);
21
+ }
22
+ const host = (0, net_1.isIP)(normalizedIp) === 6 ? `[${normalizedIp}]` : normalizedIp;
23
+ const url = new URL(`http://${host}:8060/launch/${normalizedAppId}`);
24
+ url.searchParams.set('contentId', normalizedCommand);
25
+ url.searchParams.set('mediaType', 'hosannaCommand');
26
+ return url.toString();
27
+ }
28
+ async function runRokuCommand(options) {
29
+ var _a, _b, _c;
30
+ const command = requiredValue(options.command, 'Hosanna command');
31
+ const appId = requiredValue((_a = options.appId) !== null && _a !== void 0 ? _a : exports.DEFAULT_ROKU_COMMAND_APP_ID, 'Roku app ID');
32
+ const timeoutMs = (_b = options.timeoutMs) !== null && _b !== void 0 ? _b : exports.DEFAULT_ROKU_COMMAND_TIMEOUT_MS;
33
+ if (!Number.isFinite(timeoutMs) || timeoutMs <= 0) {
34
+ throw new Error(`Roku command timeout must be greater than zero. Received: ${timeoutMs}`);
35
+ }
36
+ const deviceIp = await resolveRokuCommandDeviceIp(options);
37
+ const url = buildRokuCommandUrl(deviceIp, command, appId);
38
+ const result = {
39
+ command,
40
+ appId,
41
+ deviceIp,
42
+ url,
43
+ dryRun: Boolean(options.dryRun),
44
+ };
45
+ if (options.dryRun)
46
+ return result;
47
+ if (DESTRUCTIVE_COMMANDS.has(command.toLowerCase()) && !options.yes) {
48
+ if (options.nonInteractive) {
49
+ throw new Error(`Roku command "${command}" is destructive. Re-run with --yes to confirm non-interactively.`);
50
+ }
51
+ const message = `Send destructive command "${command}" to app "${appId}" on Roku ${deviceIp}?`;
52
+ const confirmed = options.confirm
53
+ ? await options.confirm(message)
54
+ : await promptForConfirmation(message);
55
+ if (!confirmed)
56
+ throw new Error('Roku command cancelled.');
57
+ }
58
+ const request = (_c = options.request) !== null && _c !== void 0 ? _c : defaultRequest;
59
+ const controller = new AbortController();
60
+ const timeout = setTimeout(() => controller.abort(), timeoutMs);
61
+ try {
62
+ const response = await request(url, { method: 'POST', signal: controller.signal });
63
+ if (!response.ok) {
64
+ const suffix = response.statusText ? ` ${response.statusText}` : '';
65
+ throw new Error(`Roku ECP returned HTTP ${response.status}${suffix}.`);
66
+ }
67
+ }
68
+ catch (error) {
69
+ if (controller.signal.aborted) {
70
+ throw new Error(`Roku command timed out after ${timeoutMs}ms. Check that ${deviceIp}:8060 is reachable.`);
71
+ }
72
+ if (error instanceof Error && error.message.startsWith('Roku ECP returned'))
73
+ throw error;
74
+ throw new Error(`Failed to send Roku command to ${deviceIp}: ${formatRequestError(error)}`);
75
+ }
76
+ finally {
77
+ clearTimeout(timeout);
78
+ }
79
+ return result;
80
+ }
81
+ async function resolveRokuCommandDeviceIp(options) {
82
+ var _a, _b, _c, _d, _e, _f;
83
+ const explicitDevice = (_a = options.device) === null || _a === void 0 ? void 0 : _a.trim();
84
+ if (explicitDevice && (0, net_1.isIP)(explicitDevice))
85
+ return explicitDevice;
86
+ const env = (_b = options.env) !== null && _b !== void 0 ? _b : process.env;
87
+ const envIp = !explicitDevice ? (_c = env.ROKU_IP) === null || _c === void 0 ? void 0 : _c.trim() : undefined;
88
+ if (envIp && (0, net_1.isIP)(envIp))
89
+ return envIp;
90
+ const registry = (_d = options.registry) !== null && _d !== void 0 ? _d : (0, device_cli_js_1.createDefaultDriverRegistry)();
91
+ const device = await registry.resolveDevice({
92
+ type: 'roku',
93
+ cwd: (_e = options.cwd) !== null && _e !== void 0 ? _e : process.cwd(),
94
+ device: explicitDevice,
95
+ env,
96
+ isTTY: options.nonInteractive ? false : undefined,
97
+ });
98
+ const deviceIp = (_f = device.ip) !== null && _f !== void 0 ? _f : device.id;
99
+ if (!deviceIp)
100
+ throw new Error(`Resolved Roku device "${device.name}" has no IP address.`);
101
+ return deviceIp;
102
+ }
103
+ async function defaultRequest(url, init) {
104
+ return fetch(url, init);
105
+ }
106
+ async function promptForConfirmation(message) {
107
+ if (!process.stdin.isTTY) {
108
+ throw new Error(`${message} Re-run with --yes to confirm in a non-interactive shell.`);
109
+ }
110
+ return new Promise(resolve => {
111
+ const rl = readline_1.default.createInterface({ input: process.stdin, output: process.stdout });
112
+ rl.question(`${message} [y/N] `, answer => {
113
+ rl.close();
114
+ resolve(answer.trim().toLowerCase() === 'y' || answer.trim().toLowerCase() === 'yes');
115
+ });
116
+ });
117
+ }
118
+ function requiredValue(value, label) {
119
+ const normalized = value.trim();
120
+ if (!normalized)
121
+ throw new Error(`${label} is required.`);
122
+ return normalized;
123
+ }
124
+ function formatRequestError(error) {
125
+ var _a;
126
+ if (!(error instanceof Error))
127
+ return String(error);
128
+ const cause = error.cause;
129
+ const code = (_a = error.code) !== null && _a !== void 0 ? _a : cause === null || cause === void 0 ? void 0 : cause.code;
130
+ if (code === 'ECONNREFUSED')
131
+ return 'connection refused; verify Roku ECP network access is enabled.';
132
+ if (code === 'ENETUNREACH' || code === 'EHOSTUNREACH')
133
+ return 'device is unreachable; verify it is online and on the same network.';
134
+ return error.message;
135
+ }
136
+ //# sourceMappingURL=roku-command.js.map