prismcast 1.3.3 → 1.4.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.
Files changed (101) hide show
  1. package/dist/app.d.ts +3 -2
  2. package/dist/app.js +32 -17
  3. package/dist/app.js.map +1 -1
  4. package/dist/browser/channelSelection.d.ts +3 -2
  5. package/dist/browser/channelSelection.js +43 -19
  6. package/dist/browser/channelSelection.js.map +1 -1
  7. package/dist/browser/index.d.ts +9 -13
  8. package/dist/browser/index.js +65 -75
  9. package/dist/browser/index.js.map +1 -1
  10. package/dist/browser/tuning/hulu.js +613 -13
  11. package/dist/browser/tuning/hulu.js.map +1 -1
  12. package/dist/browser/tuning/sling.js +1 -1
  13. package/dist/browser/tuning/thumbnailRow.js +69 -71
  14. package/dist/browser/tuning/thumbnailRow.js.map +1 -1
  15. package/dist/browser/tuning/tileClick.js +111 -77
  16. package/dist/browser/tuning/tileClick.js.map +1 -1
  17. package/dist/browser/tuning/youtubeTv.js +5 -5
  18. package/dist/browser/tuning/youtubeTv.js.map +1 -1
  19. package/dist/browser/video.d.ts +3 -10
  20. package/dist/browser/video.js +91 -10
  21. package/dist/browser/video.js.map +1 -1
  22. package/dist/config/index.d.ts +9 -3
  23. package/dist/config/index.js +28 -28
  24. package/dist/config/index.js.map +1 -1
  25. package/dist/config/paths.d.ts +41 -0
  26. package/dist/config/paths.js +88 -0
  27. package/dist/config/paths.js.map +1 -0
  28. package/dist/config/providers.js +1 -1
  29. package/dist/config/sites.js +30 -13
  30. package/dist/config/sites.js.map +1 -1
  31. package/dist/config/userChannels.d.ts +1 -1
  32. package/dist/config/userChannels.js +10 -13
  33. package/dist/config/userChannels.js.map +1 -1
  34. package/dist/config/userConfig.d.ts +14 -7
  35. package/dist/config/userConfig.js +59 -34
  36. package/dist/config/userConfig.js.map +1 -1
  37. package/dist/index.d.ts +11 -1
  38. package/dist/index.js +187 -25
  39. package/dist/index.js.map +1 -1
  40. package/dist/routes/config.js +15 -7
  41. package/dist/routes/config.js.map +1 -1
  42. package/dist/routes/debug.js +41 -6
  43. package/dist/routes/debug.js.map +1 -1
  44. package/dist/routes/index.d.ts +1 -0
  45. package/dist/routes/index.js +3 -0
  46. package/dist/routes/index.js.map +1 -1
  47. package/dist/routes/logs.js +3 -3
  48. package/dist/routes/logs.js.map +1 -1
  49. package/dist/routes/playlist.d.ts +2 -2
  50. package/dist/routes/playlist.js +11 -9
  51. package/dist/routes/playlist.js.map +1 -1
  52. package/dist/routes/root.js +149 -6
  53. package/dist/routes/root.js.map +1 -1
  54. package/dist/routes/theme.js +4 -0
  55. package/dist/routes/theme.js.map +1 -1
  56. package/dist/routes/ui.js +2 -0
  57. package/dist/routes/ui.js.map +1 -1
  58. package/dist/routes/upgrade.d.ts +6 -0
  59. package/dist/routes/upgrade.js +68 -0
  60. package/dist/routes/upgrade.js.map +1 -0
  61. package/dist/service/commands.js +9 -7
  62. package/dist/service/commands.js.map +1 -1
  63. package/dist/service/generators.js +10 -15
  64. package/dist/service/generators.js.map +1 -1
  65. package/dist/streaming/fmp4Segmenter.d.ts +28 -0
  66. package/dist/streaming/fmp4Segmenter.js +140 -47
  67. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  68. package/dist/streaming/hls.js +3 -1
  69. package/dist/streaming/hls.js.map +1 -1
  70. package/dist/streaming/lifecycle.js +13 -6
  71. package/dist/streaming/lifecycle.js.map +1 -1
  72. package/dist/streaming/mp4Parser.d.ts +19 -10
  73. package/dist/streaming/mp4Parser.js +39 -29
  74. package/dist/streaming/mp4Parser.js.map +1 -1
  75. package/dist/streaming/setup.d.ts +2 -0
  76. package/dist/streaming/setup.js +4 -1
  77. package/dist/streaming/setup.js.map +1 -1
  78. package/dist/types/index.d.ts +10 -7
  79. package/dist/types/index.js.map +1 -1
  80. package/dist/upgrade/commands.d.ts +6 -0
  81. package/dist/upgrade/commands.js +210 -0
  82. package/dist/upgrade/commands.js.map +1 -0
  83. package/dist/upgrade/detection.d.ts +15 -0
  84. package/dist/upgrade/detection.js +75 -0
  85. package/dist/upgrade/detection.js.map +1 -0
  86. package/dist/upgrade/index.d.ts +2 -0
  87. package/dist/upgrade/index.js +7 -0
  88. package/dist/upgrade/index.js.map +1 -0
  89. package/dist/utils/fileLogger.d.ts +2 -1
  90. package/dist/utils/fileLogger.js +10 -8
  91. package/dist/utils/fileLogger.js.map +1 -1
  92. package/dist/utils/logger.js +1 -1
  93. package/dist/utils/m3u.js +1 -7
  94. package/dist/utils/m3u.js.map +1 -1
  95. package/dist/utils/platform.d.ts +8 -2
  96. package/dist/utils/platform.js +26 -6
  97. package/dist/utils/platform.js.map +1 -1
  98. package/dist/utils/version.d.ts +18 -0
  99. package/dist/utils/version.js +3 -3
  100. package/dist/utils/version.js.map +1 -1
  101. package/package.json +6 -6
@@ -166,7 +166,7 @@ function evaluateSampleFlags(flags) {
166
166
  }
167
167
  /**
168
168
  * Parses a tfhd (track fragment header) box and extracts the track ID, default sample duration, and default sample flags. This is the single source of truth for
169
- * tfhd field extraction, used by both detectMoofKeyframe() (for sample flags) and rewriteMoofTimestamps() (for track ID and duration).
169
+ * tfhd field extraction, used by both detectMoofKeyframe() (for sample flags) and offsetMoofTimestamps() (for track ID and duration).
170
170
  *
171
171
  * tfhd layout (FullBox):
172
172
  * - [0-3] size, [4-7] "tfhd", [8] version, [9-11] flags, [12-15] track_ID
@@ -412,22 +412,23 @@ function extractTrunTotalDuration(data, offset, size, defaultSampleDuration) {
412
412
  return totalDuration;
413
413
  }
414
414
  /**
415
- * Rewrites the baseMediaDecodeTime in every tfdt box within a moof to produce monotonically increasing timestamps. For each traf, the function reads the track ID from
416
- * tfhd, writes the current per-track timestamp into tfdt, then advances the counter by the total sample duration extracted from trun. This eliminates timestamp
417
- * discontinuities caused by capture restarts (tab replacement, source reload recovery) because Chrome's original timestamps are completely overwritten.
415
+ * Applies a constant per-track offset to Chrome's original tfdt.baseMediaDecodeTime values. Reads Chrome's original tfdt, adds the per-track offset, and writes back.
416
+ * During normal playback the offset is 0 (pure pass-through of Chrome's wall-clock-based timestamps). At tab replacement boundaries the offset bridges the PTS
417
+ * discontinuity — it is computed once per track from the difference between the previous segmenter's "next expected" value and Chrome's new starting tfdt.
418
418
  *
419
- * The rewrite is done in-place on the moof buffer. This is safe because the buffer is an owned copy created by the MP4 box parser (Buffer.from() in createMP4BoxParser).
419
+ * This approach preserves Chrome's inter-track synchronization. Chrome uses wall-clock-based timestamps that keep audio and video aligned regardless of frame drops.
420
420
  *
421
- * Per-track state is necessary because FFmpeg outputs separate moof+mdat pairs for audio and video, and each track may have a different timescale (e.g., 90000 for
422
- * video, 48000 for audio). A single counter would produce incorrect timestamps for one track.
421
+ * The rewrite is done in-place on the moof buffer. This is safe because the buffer is an owned copy created by the MP4 box parser (Buffer.from() in
422
+ * createMP4BoxParser).
423
423
  *
424
424
  * @param moofData - The complete moof box buffer including its 8-byte header. Modified in place.
425
- * @param trackTimestamps - Map from track_ID to the next baseMediaDecodeTime value. Updated in place with the advanced timestamps after rewriting.
426
- * @returns Map from track_ID to the total duration (in timescale units) computed from trun sample durations. The caller uses this for diagnostics (zero durations
427
- * indicate trun parsing issues) and sanity checking (abnormal durations from corrupt trun data). Each entry corresponds to one traf box in the moof.
425
+ * @param trackOffsets - Map from track_ID to the constant offset (in timescale units) to add to Chrome's original tfdt. Entries may be absent for tracks whose
426
+ * offsets have not been initialized yet — the caller initializes them lazily from the returned originalTfdt values.
427
+ * @returns Map from track_ID to { originalTfdt, duration }. The caller uses originalTfdt for lazy offset initialization and duration for EXTINF and "next expected"
428
+ * tracking. Each entry corresponds to one traf box in the moof.
428
429
  */
429
- export function rewriteMoofTimestamps(moofData, trackTimestamps) {
430
- const trafDurations = new Map();
430
+ export function offsetMoofTimestamps(moofData, trackOffsets) {
431
+ const results = new Map();
431
432
  // Walk the moof's child boxes looking for traf (track fragment) boxes.
432
433
  iterateChildBoxes(moofData, (type, data, offset, size) => {
433
434
  if (type !== "traf") {
@@ -436,37 +437,49 @@ export function rewriteMoofTimestamps(moofData, trackTimestamps) {
436
437
  // Create a subarray for this traf so we can iterate its child boxes. Buffer.subarray() shares memory with the parent, so this is O(1) with no data copying.
437
438
  const trafData = data.subarray(offset, offset + size);
438
439
  let tfhdInfo = null;
440
+ let originalTfdt = 0n;
439
441
  let totalDuration = 0n;
440
- // Walk the traf's child boxes. The spec mandates tfhd before tfdt before trun, so we process them in order. The first pass extracts tfhd info and rewrites
441
- // tfdt. The trun duration extraction happens in the same pass since tfhd is already available by the time trun is encountered.
442
+ // Walk the traf's child boxes. The spec mandates tfhd before tfdt before trun, so we process them in order. For each traf we: (1) parse tfhd for trackId and
443
+ // defaultSampleDuration, (2) read the original tfdt and write the offset version back, (3) extract trun durations for EXTINF tracking.
442
444
  iterateChildBoxes(trafData, (childType, childData, childOffset, childSize) => {
443
445
  if (childType === "tfhd") {
444
446
  tfhdInfo = parseTfhd(childData, childOffset, childSize);
445
447
  }
446
448
  else if (childType === "tfdt") {
447
- // Rewrite baseMediaDecodeTime with the current per-track timestamp. The tfhd must precede tfdt per the ISO 14496-12 box ordering, so tfhdInfo is
448
- // available here.
449
+ // Read Chrome's original baseMediaDecodeTime, then write the offset version back. The tfhd must precede tfdt per the ISO 14496-12 box ordering, so
450
+ // tfhdInfo is available here.
449
451
  if (!tfhdInfo) {
450
452
  return;
451
453
  }
452
- const currentTimestamp = trackTimestamps.get(tfhdInfo.trackId) ?? 0n;
453
454
  // tfdt layout (FullBox): [0-3] size, [4-7] "tfdt", [8] version, [9-11] flags, [12+] baseMediaDecodeTime.
454
455
  // Version 0: 32-bit baseMediaDecodeTime at offset 12. Version 1: 64-bit baseMediaDecodeTime at offset 12.
455
456
  if (childSize < 16) {
456
457
  return;
457
458
  }
458
459
  const version = childData.readUInt8(childOffset + 8);
460
+ // Read the original tfdt value.
459
461
  if (version === 0) {
460
- // Version 0: write as uint32 (truncate to 32 bits). Overflows at ~13 hours for 90000 Hz timescale, but version 0 tfdt boxes are inherently 32-bit.
461
- childData.writeUInt32BE(Number(currentTimestamp & 0xffffffffn), childOffset + 12);
462
+ originalTfdt = BigInt(childData.readUInt32BE(childOffset + 12));
462
463
  }
463
464
  else {
464
- // Version 1: write as uint64 (high 32 bits + low 32 bits). Requires at least 20 bytes in the tfdt box.
465
465
  if (childSize < 20) {
466
466
  return;
467
467
  }
468
- const high = Number((currentTimestamp >> 32n) & 0xffffffffn);
469
- const low = Number(currentTimestamp & 0xffffffffn);
468
+ const high = BigInt(childData.readUInt32BE(childOffset + 12));
469
+ const low = BigInt(childData.readUInt32BE(childOffset + 16));
470
+ originalTfdt = (high << 32n) | low;
471
+ }
472
+ // Compute the new tfdt by adding the per-track offset. If the offset hasn't been initialized for this track yet, the caller will initialize it lazily
473
+ // from the returned originalTfdt — for now, treat it as 0 (pure pass-through).
474
+ const trackOffset = trackOffsets.get(tfhdInfo.trackId) ?? 0n;
475
+ const newTfdt = originalTfdt + trackOffset;
476
+ // Write the new tfdt back into the buffer.
477
+ if (version === 0) {
478
+ childData.writeUInt32BE(Number(newTfdt & 0xffffffffn), childOffset + 12);
479
+ }
480
+ else {
481
+ const high = Number((newTfdt >> 32n) & 0xffffffffn);
482
+ const low = Number(newTfdt & 0xffffffffn);
470
483
  childData.writeUInt32BE(high, childOffset + 12);
471
484
  childData.writeUInt32BE(low, childOffset + 16);
472
485
  }
@@ -479,18 +492,15 @@ export function rewriteMoofTimestamps(moofData, trackTimestamps) {
479
492
  }
480
493
  }
481
494
  });
482
- // Advance the per-track timestamp counter by the total sample duration from this traf. A zero duration with a valid tfhd indicates a trun parsing issue —
483
- // the caller should log a warning. We still advance (by zero) to avoid corrupting subsequent timestamps. TypeScript's control flow analysis cannot track
484
- // mutations made inside the iterateChildBoxes callback, so tfhdInfo appears "always null" to the linter despite being set at runtime.
495
+ // Record the result for this track. TypeScript's control flow analysis cannot track mutations made inside the iterateChildBoxes callback, so tfhdInfo appears
496
+ // "always null" to the linter despite being set at runtime.
485
497
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
486
498
  if (tfhdInfo) {
487
499
  const info = tfhdInfo;
488
- trafDurations.set(info.trackId, totalDuration);
489
- const currentTimestamp = trackTimestamps.get(info.trackId) ?? 0n;
490
- trackTimestamps.set(info.trackId, currentTimestamp + totalDuration);
500
+ results.set(info.trackId, { duration: totalDuration, originalTfdt });
491
501
  }
492
502
  });
493
- return trafDurations;
503
+ return results;
494
504
  }
495
505
  // Moov Timescale Extraction.
496
506
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"mp4Parser.js","sourceRoot":"","sources":["../../src/streaming/mp4Parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mp4Parser.js","sourceRoot":"","sources":["../../src/streaming/mp4Parser.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ export interface StreamSetupOptions {
28
28
  export interface StreamSetupResult {
29
29
  captureStream: Readable;
30
30
  channelName: Nullable<string>;
31
+ directTune: boolean;
31
32
  cleanup: () => Promise<void>;
32
33
  ffmpegProcess: Nullable<FFmpegProcess>;
33
34
  numericStreamId: number;
@@ -66,6 +67,7 @@ export interface CreatePageWithCaptureOptions {
66
67
  export interface CreatePageWithCaptureResult {
67
68
  captureStream: Readable;
68
69
  context: Frame | Page;
70
+ directTune: boolean;
69
71
  ffmpegProcess: Nullable<FFmpegProcess>;
70
72
  page: Page;
71
73
  rawCaptureStream: Readable;
@@ -7,6 +7,7 @@ import { invalidateDirectUrl, resolveDirectUrl } from "../browser/channelSelecti
7
7
  import { CONFIG } from "../config/index.js";
8
8
  import { getEffectiveViewport } from "../config/presets.js";
9
9
  import { getProviderDisplayName } from "../config/providers.js";
10
+ import { isChannelSelectionProfile } from "../types/index.js";
10
11
  import { monitorPlaybackHealth } from "./monitor.js";
11
12
  import { pipeline } from "node:stream/promises";
12
13
  import { resizeAndMinimizeWindow } from "../browser/cdp.js";
@@ -369,6 +370,7 @@ export async function createPageWithCapture(options) {
369
370
  return {
370
371
  captureStream: outputStream,
371
372
  context,
373
+ directTune: usedDirectUrl || !isChannelSelectionProfile(profile),
372
374
  ffmpegProcess,
373
375
  page,
374
376
  rawCaptureStream
@@ -503,7 +505,7 @@ export async function setupStream(options, onCircuitBreak) {
503
505
  const isCaptureError = captureErrorPatterns.some((pattern) => errorMessage.includes(pattern));
504
506
  throw new StreamSetupError("Stream error.", isCaptureError ? 503 : 500, "Failed to start stream.");
505
507
  }
506
- const { captureStream, context, ffmpegProcess, page, rawCaptureStream } = captureResult;
508
+ const { captureStream, context, directTune, ffmpegProcess, page, rawCaptureStream } = captureResult;
507
509
  // Monitor stream info for status updates.
508
510
  const monitorStreamInfo = {
509
511
  channelName: channel?.name ?? null,
@@ -547,6 +549,7 @@ export async function setupStream(options, onCircuitBreak) {
547
549
  captureStream,
548
550
  channelName: channel?.name ?? null,
549
551
  cleanup,
552
+ directTune,
550
553
  ffmpegProcess,
551
554
  numericStreamId,
552
555
  page,
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/streaming/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/streaming/setup.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,10 @@ export interface BrowserConfig {
17
17
  * Filesystem paths for Chrome profile data and extension files.
18
18
  */
19
19
  export interface PathsConfig {
20
+ chromeDataDir: Nullable<string>;
20
21
  chromeProfileName: string;
21
22
  extensionDirName: string;
23
+ logFile: Nullable<string>;
22
24
  }
23
25
  /**
24
26
  * Playback monitoring and recovery timing configuration. These values control how quickly the system detects playback problems and how aggressively it attempts
@@ -79,6 +81,7 @@ export interface HdhrConfig {
79
81
  * Logging configuration controlling file-based logging behavior.
80
82
  */
81
83
  export interface LoggingConfig {
84
+ debugFilter: string;
82
85
  httpLogLevel: "all" | "errors" | "filtered" | "none";
83
86
  maxSize: number;
84
87
  }
@@ -147,6 +150,7 @@ export interface SiteProfile {
147
150
  summary?: string;
148
151
  fullscreenKey?: Nullable<string>;
149
152
  fullscreenSelector?: Nullable<string>;
153
+ hideSelector?: Nullable<string>;
150
154
  lockVolumeProperties?: boolean;
151
155
  needsIframeHandling?: boolean;
152
156
  noVideo?: boolean;
@@ -165,6 +169,7 @@ export interface ResolvedSiteProfile {
165
169
  clickToPlay: boolean;
166
170
  fullscreenKey: Nullable<string>;
167
171
  fullscreenSelector: Nullable<string>;
172
+ hideSelector: Nullable<string>;
168
173
  lockVolumeProperties: boolean;
169
174
  maxContinuousPlayback: Nullable<number>;
170
175
  needsIframeHandling: boolean;
@@ -323,8 +328,10 @@ export interface StreamListResponse {
323
328
  * - "none": No channel selection needed (single-channel sites). This is the default.
324
329
  * - "slingGrid": Find channel by data-testid in a virtualized A-Z guide grid, scroll via binary search on .guide-cell scrollTop, click the on-now program
325
330
  * cell. Used by Sling TV.
326
- * - "thumbnailRow": Find channel by matching image URL slug, click adjacent element on the same row. Used by USA Network.
327
- * - "tileClick": Find channel tile by matching image URL slug, click tile, then click play button on modal. Used by Disney+ live channels.
331
+ * - "thumbnailRow": Find channel element using the profile's matchSelector (defaults to image URL matching), click adjacent element on the same row. Used by
332
+ * USA Network.
333
+ * - "tileClick": Find channel element using the profile's matchSelector (defaults to image URL matching), click tile, then optionally click play button if
334
+ * playSelector is configured. Used by Disney+.
328
335
  * - "youtubeGrid": Find channel by aria-label in a non-virtualized EPG grid, extract the watch URL, and navigate directly. Used by YouTube TV.
329
336
  */
330
337
  export type ChannelSelectionStrategy = "foxGrid" | "guideGrid" | "hboGrid" | "none" | "slingGrid" | "thumbnailRow" | "tileClick" | "youtubeGrid";
@@ -333,6 +340,7 @@ export type ChannelSelectionStrategy = "foxGrid" | "guideGrid" | "hboGrid" | "no
333
340
  */
334
341
  export interface ChannelSelectionConfig {
335
342
  listSelector?: string;
343
+ matchSelector?: string;
336
344
  playSelector?: string;
337
345
  strategy: ChannelSelectionStrategy;
338
346
  }
@@ -374,11 +382,6 @@ export interface ChannelStrategyEntry {
374
382
  * provider APIs. The page parameter allows setting up response interception or accessing browser context when needed (e.g., cold cache setup).
375
383
  */
376
384
  resolveDirectUrl?: (channelSelector: string, page: Page) => Promise<Nullable<string>>;
377
- /**
378
- * Set to true when the channelSelector is an image URL slug that must be polled for load completion before strategy dispatch. The coordinator waits for an img
379
- * element whose src contains the slug to reach loaded state.
380
- */
381
- usesImageSlug?: boolean;
382
385
  }
383
386
  /**
384
387
  * Coordinates for a click target, used when clicking channel selector elements.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAwzBA,kKAAkK;AAClK,oEAAoE;AACpE,MAAM,UAAU,yBAAyB,CAAC,OAA4B;IAEpE,OAAO,CAAC,OAAO,CAAC,eAAe,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAm1BA,kKAAkK;AAClK,oEAAoE;AACpE,MAAM,UAAU,yBAAyB,CAAC,OAA4B;IAEpE,OAAO,CAAC,OAAO,CAAC,eAAe,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpF,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Main handler for the `upgrade` subcommand. Parses arguments and executes the appropriate upgrade logic.
3
+ * @param args - Arguments after 'upgrade' (e.g., ['--check', '--force']).
4
+ * @returns Exit code (0 for success, 1 for error).
5
+ */
6
+ export declare function handleUpgradeCommand(args: string[]): Promise<number>;
@@ -0,0 +1,210 @@
1
+ /* Copyright(C) 2024-2026, HJD (https://github.com/hjdhjd). All rights reserved.
2
+ *
3
+ * commands.ts: Upgrade command handlers for PrismCast CLI.
4
+ */
5
+ import { fetchLatestVersion, getPackageVersion, isVersionLessThan, normalizeVersion } from "../utils/version.js";
6
+ import { detectInstallMethod } from "./detection.js";
7
+ import { execSync } from "node:child_process";
8
+ import { isRunningAsService } from "../utils/platform.js";
9
+ /* These handlers implement the `prismcast upgrade` subcommand for detecting the installation method, checking for updates, and executing the appropriate upgrade
10
+ * command. The pattern mirrors the service subcommand handlers in service/commands.ts.
11
+ */
12
+ /**
13
+ * Prints a message to stdout.
14
+ * @param message - The message to print.
15
+ */
16
+ function print(message) {
17
+ // eslint-disable-next-line no-console
18
+ console.log(message);
19
+ }
20
+ /**
21
+ * Prints an error message to stderr.
22
+ * @param message - The error message to print.
23
+ */
24
+ function printError(message) {
25
+ // eslint-disable-next-line no-console
26
+ console.error(message);
27
+ }
28
+ /**
29
+ * Formats the display name for an installation method.
30
+ * @param info - The installation info to format.
31
+ * @returns A human-readable name for the install method.
32
+ */
33
+ function formatMethodName(info) {
34
+ switch (info.method) {
35
+ case "docker": {
36
+ return "Docker";
37
+ }
38
+ case "homebrew": {
39
+ return "Homebrew";
40
+ }
41
+ case "npm-global": {
42
+ return "npm (global)";
43
+ }
44
+ case "npm-local": {
45
+ return "npm (local)";
46
+ }
47
+ default: {
48
+ return "Unknown";
49
+ }
50
+ }
51
+ }
52
+ /**
53
+ * Prints usage information for the upgrade subcommand.
54
+ */
55
+ function printUpgradeUsage() {
56
+ print("Usage: prismcast upgrade [options]");
57
+ print("");
58
+ print("Upgrade PrismCast to the latest version.");
59
+ print("");
60
+ print("Options:");
61
+ print(" --check Show upgrade information without upgrading");
62
+ print(" --force Upgrade even if already up to date");
63
+ print(" -h, --help Show this help message");
64
+ }
65
+ /**
66
+ * Prints the upgrade check summary (shared between --check mode and the pre-upgrade display).
67
+ * @param info - The detected installation info.
68
+ * @param currentVersion - The currently running version.
69
+ * @param latestVersion - The latest available version, or null if unknown.
70
+ */
71
+ function printUpgradeInfo(info, currentVersion, latestVersion) {
72
+ print("PrismCast Upgrade Check");
73
+ print("\u2500".repeat(40));
74
+ print("Current version: v" + currentVersion);
75
+ if (latestVersion) {
76
+ print("Latest version: v" + latestVersion);
77
+ }
78
+ else {
79
+ print("Latest version: (unable to check)");
80
+ }
81
+ print("Install method: " + formatMethodName(info));
82
+ if (info.upgradeable) {
83
+ print("Upgrade command: " + info.upgradeCommand);
84
+ }
85
+ }
86
+ /**
87
+ * Handles the --check flag: prints upgrade information and exits.
88
+ * @param info - The detected installation info.
89
+ * @param currentVersion - The currently running version.
90
+ * @param latestVersion - The latest available version, or null if unknown.
91
+ * @returns Exit code (0 for success).
92
+ */
93
+ function handleCheck(info, currentVersion, latestVersion) {
94
+ printUpgradeInfo(info, currentVersion, latestVersion);
95
+ print("");
96
+ if (!info.upgradeable) {
97
+ // Docker or unknown: show manual instructions using the command from detection.
98
+ if (info.method === "docker") {
99
+ print("To upgrade, pull the latest image and recreate the container:");
100
+ print(" " + info.upgradeCommand);
101
+ }
102
+ else {
103
+ print("Unable to detect installation method. Please upgrade manually:");
104
+ print(" " + info.upgradeCommand);
105
+ }
106
+ return 0;
107
+ }
108
+ if (!latestVersion) {
109
+ print("Run 'prismcast upgrade --force' to upgrade without a version check.");
110
+ }
111
+ else if (!isVersionLessThan(currentVersion, latestVersion)) {
112
+ print("PrismCast v" + currentVersion + " is already the latest version.");
113
+ }
114
+ else {
115
+ print("Run 'prismcast upgrade' to upgrade.");
116
+ }
117
+ return 0;
118
+ }
119
+ /**
120
+ * Executes the upgrade command for the detected installation method.
121
+ * @param info - The detected installation info.
122
+ * @returns True if the upgrade command succeeded, false otherwise.
123
+ */
124
+ function executeUpgrade(info) {
125
+ try {
126
+ // For npm-local, run the install from the project directory that contains the dependency.
127
+ const options = { encoding: "utf-8", stdio: "inherit" };
128
+ if ((info.method === "npm-local") && info.packageDir) {
129
+ options.cwd = info.packageDir;
130
+ }
131
+ execSync(info.upgradeCommand, options);
132
+ return true;
133
+ }
134
+ catch {
135
+ return false;
136
+ }
137
+ }
138
+ /**
139
+ * Main handler for the `upgrade` subcommand. Parses arguments and executes the appropriate upgrade logic.
140
+ * @param args - Arguments after 'upgrade' (e.g., ['--check', '--force']).
141
+ * @returns Exit code (0 for success, 1 for error).
142
+ */
143
+ export async function handleUpgradeCommand(args) {
144
+ // Parse flags.
145
+ const showHelp = args.includes("--help") || args.includes("-h") || args.includes("help");
146
+ const checkOnly = args.includes("--check");
147
+ const force = args.includes("--force");
148
+ if (showHelp) {
149
+ printUpgradeUsage();
150
+ return 0;
151
+ }
152
+ // Detect installation method.
153
+ const info = detectInstallMethod();
154
+ const currentVersion = normalizeVersion(getPackageVersion());
155
+ // Fetch the latest version from npm.
156
+ const latestVersion = await fetchLatestVersion();
157
+ // Handle --check mode.
158
+ if (checkOnly) {
159
+ return handleCheck(info, currentVersion, latestVersion);
160
+ }
161
+ // If the installation is not upgradeable (Docker or unknown), print instructions and exit.
162
+ if (!info.upgradeable) {
163
+ printUpgradeInfo(info, currentVersion, latestVersion);
164
+ print("");
165
+ if (info.method === "docker") {
166
+ print("Docker containers cannot be upgraded in-place.");
167
+ print("To upgrade, pull the latest image and recreate the container:");
168
+ print(" " + info.upgradeCommand);
169
+ }
170
+ else {
171
+ print("Unable to detect installation method. Please upgrade manually:");
172
+ print(" " + info.upgradeCommand);
173
+ }
174
+ return 0;
175
+ }
176
+ // Check if already up to date (skip with --force or if version check failed).
177
+ if (!force && latestVersion && !isVersionLessThan(currentVersion, latestVersion)) {
178
+ print("PrismCast v" + currentVersion + " is already the latest version.");
179
+ print("Use --force to upgrade anyway.");
180
+ return 0;
181
+ }
182
+ // If we couldn't check the latest version and --force wasn't specified, warn the user.
183
+ if (!force && !latestVersion) {
184
+ printError("Unable to check for updates. Run with --force to upgrade anyway.");
185
+ return 1;
186
+ }
187
+ // Show what we're about to do.
188
+ print("Upgrading PrismCast...");
189
+ print("Install method: " + formatMethodName(info));
190
+ print("Running: " + info.upgradeCommand);
191
+ print("");
192
+ // Execute the upgrade.
193
+ if (!executeUpgrade(info)) {
194
+ printError("");
195
+ printError("Upgrade failed. Check the output above for details.");
196
+ return 1;
197
+ }
198
+ print("");
199
+ print("Upgrade complete.");
200
+ // Handle restart: if running as a service, the service manager will restart PrismCast when we exit.
201
+ if (isRunningAsService()) {
202
+ print("Restarting PrismCast via service manager...");
203
+ process.exit(0);
204
+ }
205
+ else {
206
+ print("Please restart PrismCast manually to use the new version.");
207
+ }
208
+ return 0;
209
+ }
210
+ //# sourceMappingURL=commands.js.map