prismcast 1.12.0 → 1.12.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/dist/app.d.ts +41 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +156 -69
- package/dist/app.js.map +1 -1
- package/dist/browser/browserSupervisor.d.ts +30 -1
- package/dist/browser/browserSupervisor.d.ts.map +1 -1
- package/dist/browser/browserSupervisor.js +39 -12
- package/dist/browser/browserSupervisor.js.map +1 -1
- package/dist/browser/cdp.d.ts +58 -5
- package/dist/browser/cdp.d.ts.map +1 -1
- package/dist/browser/cdp.js +146 -9
- package/dist/browser/cdp.js.map +1 -1
- package/dist/browser/channelSelection.d.ts +2 -2
- package/dist/browser/channelSelection.d.ts.map +1 -1
- package/dist/browser/channelSelection.js +5 -5
- package/dist/browser/channelSelection.js.map +1 -1
- package/dist/browser/consent.d.ts +16 -0
- package/dist/browser/consent.d.ts.map +1 -1
- package/dist/browser/consent.js +67 -15
- package/dist/browser/consent.js.map +1 -1
- package/dist/browser/hlsPlaylistObserver.js +2 -2
- package/dist/browser/hlsPlaylistObserver.js.map +1 -1
- package/dist/browser/index.d.ts +212 -48
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +612 -199
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/login.d.ts +4 -4
- package/dist/browser/login.d.ts.map +1 -1
- package/dist/browser/login.js +19 -19
- package/dist/browser/login.js.map +1 -1
- package/dist/browser/manifestInterceptor.js +1 -1
- package/dist/browser/pageStaleness.d.ts +1 -1
- package/dist/browser/pageStaleness.d.ts.map +1 -1
- package/dist/browser/pageStaleness.js +9 -9
- package/dist/browser/pageStaleness.js.map +1 -1
- package/dist/browser/precaching.d.ts +23 -11
- package/dist/browser/precaching.d.ts.map +1 -1
- package/dist/browser/precaching.js +188 -49
- package/dist/browser/precaching.js.map +1 -1
- package/dist/browser/tabCapture.d.ts +100 -0
- package/dist/browser/tabCapture.d.ts.map +1 -0
- package/dist/browser/tabCapture.js +320 -0
- package/dist/browser/tabCapture.js.map +1 -0
- package/dist/browser/tabSelection.d.ts +117 -0
- package/dist/browser/tabSelection.d.ts.map +1 -0
- package/dist/browser/tabSelection.js +546 -0
- package/dist/browser/tabSelection.js.map +1 -0
- package/dist/browser/tuning/comcastPolymer.js +2 -2
- package/dist/browser/tuning/comcastPolymer.js.map +1 -1
- package/dist/browser/tuning/directv.js +1 -1
- package/dist/browser/tuning/directv.js.map +1 -1
- package/dist/browser/tuning/hbo.js +2 -2
- package/dist/browser/tuning/hbo.js.map +1 -1
- package/dist/browser/tuning/hulu.d.ts.map +1 -1
- package/dist/browser/tuning/hulu.js +9 -6
- package/dist/browser/tuning/hulu.js.map +1 -1
- package/dist/browser/tuning/shared.d.ts +1 -1
- package/dist/browser/tuning/shared.js +1 -1
- package/dist/browser/tuning/youtubeTv.d.ts.map +1 -1
- package/dist/browser/tuning/youtubeTv.js +1 -2
- package/dist/browser/tuning/youtubeTv.js.map +1 -1
- package/dist/browser/video.d.ts +33 -13
- package/dist/browser/video.d.ts.map +1 -1
- package/dist/browser/video.js +113 -52
- package/dist/browser/video.js.map +1 -1
- package/dist/browser/windowSync.d.ts +46 -0
- package/dist/browser/windowSync.d.ts.map +1 -0
- package/dist/browser/windowSync.js +153 -0
- package/dist/browser/windowSync.js.map +1 -0
- package/dist/channels/index.d.ts +7 -0
- package/dist/channels/index.d.ts.map +1 -1
- package/dist/channels/index.js +24 -8
- package/dist/channels/index.js.map +1 -1
- package/dist/config/consistencyProbe.js +1 -1
- package/dist/config/consistencyProbe.js.map +1 -1
- package/dist/config/health.d.ts.map +1 -1
- package/dist/config/health.js +0 -3
- package/dist/config/health.js.map +1 -1
- package/dist/config/index.d.ts +12 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +77 -31
- package/dist/config/index.js.map +1 -1
- package/dist/config/paths.d.ts +17 -1
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +21 -1
- package/dist/config/paths.js.map +1 -1
- package/dist/config/persistence.d.ts +8 -3
- package/dist/config/persistence.d.ts.map +1 -1
- package/dist/config/persistence.js +143 -82
- package/dist/config/persistence.js.map +1 -1
- package/dist/config/profiles.d.ts.map +1 -1
- package/dist/config/profiles.js +2 -3
- package/dist/config/profiles.js.map +1 -1
- package/dist/config/providerLineups.d.ts.map +1 -1
- package/dist/config/providerLineups.js +0 -3
- package/dist/config/providerLineups.js.map +1 -1
- package/dist/config/services.js +1 -1
- package/dist/config/services.js.map +1 -1
- package/dist/config/sites.d.ts.map +1 -1
- package/dist/config/sites.js +77 -58
- package/dist/config/sites.js.map +1 -1
- package/dist/config/userChannels.d.ts +0 -1
- package/dist/config/userChannels.d.ts.map +1 -1
- package/dist/config/userChannels.js +1 -5
- package/dist/config/userChannels.js.map +1 -1
- package/dist/config/userConfig.d.ts +15 -3
- package/dist/config/userConfig.d.ts.map +1 -1
- package/dist/config/userConfig.js +119 -25
- package/dist/config/userConfig.js.map +1 -1
- package/dist/config/userProfiles.d.ts.map +1 -1
- package/dist/config/userProfiles.js +10 -11
- package/dist/config/userProfiles.js.map +1 -1
- package/dist/hdhr/protocol.d.ts +1 -1
- package/dist/hdhr/protocol.js +1 -1
- package/dist/hdhr/udp.d.ts.map +1 -1
- package/dist/hdhr/udp.js +16 -4
- package/dist/hdhr/udp.js.map +1 -1
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/native/index.d.ts +1 -1
- package/dist/native/index.js +3 -3
- package/dist/native/probe.js +1 -1
- package/dist/native/proxy.d.ts +1 -1
- package/dist/native/proxy.js +5 -5
- package/dist/native/proxy.js.map +1 -1
- package/dist/routes/cdp.js +1 -1
- package/dist/routes/config/channels/endpoints/bulk.js +2 -2
- package/dist/routes/config/channels/endpoints/bulk.js.map +1 -1
- package/dist/routes/config/channels/endpoints/crud.js +1 -1
- package/dist/routes/config/channels/endpoints/crud.js.map +1 -1
- package/dist/routes/config/channels/endpoints/tags.js +3 -3
- package/dist/routes/config/channels/endpoints/tags.js.map +1 -1
- package/dist/routes/config/channels/healthBridge.d.ts +4 -0
- package/dist/routes/config/channels/healthBridge.d.ts.map +1 -1
- package/dist/routes/config/channels/healthBridge.js +9 -5
- package/dist/routes/config/channels/healthBridge.js.map +1 -1
- package/dist/routes/config/channels/table.d.ts.map +1 -1
- package/dist/routes/config/channels/table.js +64 -133
- package/dist/routes/config/channels/table.js.map +1 -1
- package/dist/routes/config/http/envelope.d.ts +1 -1
- package/dist/routes/config/index.d.ts +5 -4
- package/dist/routes/config/index.d.ts.map +1 -1
- package/dist/routes/config/index.js +5 -4
- package/dist/routes/config/index.js.map +1 -1
- package/dist/routes/config/services.d.ts.map +1 -1
- package/dist/routes/config/services.js +13 -16
- package/dist/routes/config/services.js.map +1 -1
- package/dist/routes/config/settings.d.ts +6 -14
- package/dist/routes/config/settings.d.ts.map +1 -1
- package/dist/routes/config/settings.js +14 -34
- package/dist/routes/config/settings.js.map +1 -1
- package/dist/routes/debug.js +1 -1
- package/dist/routes/debug.js.map +1 -1
- package/dist/routes/health.d.ts +15 -6
- package/dist/routes/health.d.ts.map +1 -1
- package/dist/routes/health.js +22 -10
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/logs.d.ts.map +1 -1
- package/dist/routes/logs.js +50 -12
- package/dist/routes/logs.js.map +1 -1
- package/dist/routes/root/content.d.ts.map +1 -1
- package/dist/routes/root/content.js +32 -11
- package/dist/routes/root/content.js.map +1 -1
- package/dist/routes/root/index.d.ts +10 -0
- package/dist/routes/root/index.d.ts.map +1 -1
- package/dist/routes/root/index.js +17 -7
- package/dist/routes/root/index.js.map +1 -1
- package/dist/routes/root/scripts/channels.d.ts.map +1 -1
- package/dist/routes/root/scripts/channels.js +9 -19
- package/dist/routes/root/scripts/channels.js.map +1 -1
- package/dist/routes/root/scripts/clientEscape.js +1 -1
- package/dist/routes/root/scripts/config.js +3 -3
- package/dist/routes/root/scripts/config.js.map +1 -1
- package/dist/routes/root/scripts/shared.d.ts.map +1 -1
- package/dist/routes/root/scripts/shared.js +16 -13
- package/dist/routes/root/scripts/shared.js.map +1 -1
- package/dist/routes/root/scripts/status.handlers.d.ts +3 -0
- package/dist/routes/root/scripts/status.handlers.d.ts.map +1 -1
- package/dist/routes/root/scripts/status.handlers.js +49 -24
- package/dist/routes/root/scripts/status.handlers.js.map +1 -1
- package/dist/routes/root/styles.d.ts.map +1 -1
- package/dist/routes/root/styles.js +10 -18
- package/dist/routes/root/styles.js.map +1 -1
- package/dist/routes/theme.js +3 -3
- package/dist/routes/theme.js.map +1 -1
- package/dist/routes/ui.js +5 -5
- package/dist/routes/ui.js.map +1 -1
- package/dist/streaming/captureLock.js +2 -2
- package/dist/streaming/captureLock.js.map +1 -1
- package/dist/streaming/fmp4Segmenter.d.ts +9 -5
- package/dist/streaming/fmp4Segmenter.d.ts.map +1 -1
- package/dist/streaming/fmp4Segmenter.js +28 -7
- package/dist/streaming/fmp4Segmenter.js.map +1 -1
- package/dist/streaming/hls.d.ts +62 -2
- package/dist/streaming/hls.d.ts.map +1 -1
- package/dist/streaming/hls.js +161 -117
- package/dist/streaming/hls.js.map +1 -1
- package/dist/streaming/hlsSegments.d.ts +2 -1
- package/dist/streaming/hlsSegments.d.ts.map +1 -1
- package/dist/streaming/hlsSegments.js +19 -4
- package/dist/streaming/hlsSegments.js.map +1 -1
- package/dist/streaming/lifecycle.d.ts.map +1 -1
- package/dist/streaming/lifecycle.js +25 -7
- package/dist/streaming/lifecycle.js.map +1 -1
- package/dist/streaming/monitor.d.ts +11 -1
- package/dist/streaming/monitor.d.ts.map +1 -1
- package/dist/streaming/monitor.js +386 -179
- package/dist/streaming/monitor.js.map +1 -1
- package/dist/streaming/mpegts.d.ts +11 -0
- package/dist/streaming/mpegts.d.ts.map +1 -1
- package/dist/streaming/mpegts.js +69 -21
- package/dist/streaming/mpegts.js.map +1 -1
- package/dist/streaming/preroll.js +3 -3
- package/dist/streaming/preroll.js.map +1 -1
- package/dist/streaming/recovery.d.ts +90 -4
- package/dist/streaming/recovery.d.ts.map +1 -1
- package/dist/streaming/recovery.js +86 -11
- package/dist/streaming/recovery.js.map +1 -1
- package/dist/streaming/registry.d.ts +79 -10
- package/dist/streaming/registry.d.ts.map +1 -1
- package/dist/streaming/registry.js +73 -2
- package/dist/streaming/registry.js.map +1 -1
- package/dist/streaming/setup.d.ts +56 -30
- package/dist/streaming/setup.d.ts.map +1 -1
- package/dist/streaming/setup.js +290 -224
- package/dist/streaming/setup.js.map +1 -1
- package/dist/streaming/statusEmitter.d.ts +4 -1
- package/dist/streaming/statusEmitter.d.ts.map +1 -1
- package/dist/streaming/statusEmitter.js +19 -7
- package/dist/streaming/statusEmitter.js.map +1 -1
- package/dist/types/channels.d.ts.map +1 -1
- package/dist/types/channels.js +0 -4
- package/dist/types/channels.js.map +1 -1
- package/dist/types/index.d.ts +3 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/profiles.d.ts +50 -8
- package/dist/types/profiles.d.ts.map +1 -1
- package/dist/types/profiles.js +35 -1
- package/dist/types/profiles.js.map +1 -1
- package/dist/types/streaming.d.ts +8 -0
- package/dist/types/streaming.d.ts.map +1 -1
- package/dist/types/streaming.js +7 -0
- package/dist/types/streaming.js.map +1 -1
- package/dist/upgrade/commands.js +1 -1
- package/dist/upgrade/commands.js.map +1 -1
- package/dist/upgrade/detection.d.ts +1 -1
- package/dist/utils/bootSession.context.js +1 -1
- package/dist/utils/bootSession.context.js.map +1 -1
- package/dist/utils/debugFilter.d.ts.map +1 -1
- package/dist/utils/debugFilter.js +5 -3
- package/dist/utils/debugFilter.js.map +1 -1
- package/dist/utils/delay.d.ts +31 -1
- package/dist/utils/delay.d.ts.map +1 -1
- package/dist/utils/delay.js +39 -3
- package/dist/utils/delay.js.map +1 -1
- package/dist/utils/errors.d.ts +0 -10
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +3 -14
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/ffmpeg.d.ts +1 -0
- package/dist/utils/ffmpeg.d.ts.map +1 -1
- package/dist/utils/ffmpeg.js +2 -1
- package/dist/utils/ffmpeg.js.map +1 -1
- package/dist/utils/fileLogger.d.ts +23 -5
- package/dist/utils/fileLogger.d.ts.map +1 -1
- package/dist/utils/fileLogger.js +230 -99
- package/dist/utils/fileLogger.js.map +1 -1
- package/dist/utils/format.d.ts +24 -1
- package/dist/utils/format.d.ts.map +1 -1
- package/dist/utils/format.js +37 -1
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/morganStream.d.ts +2 -2
- package/dist/utils/morganStream.d.ts.map +1 -1
- package/dist/utils/morganStream.js +6 -8
- package/dist/utils/morganStream.js.map +1 -1
- package/dist/utils/never.d.ts +9 -0
- package/dist/utils/never.d.ts.map +1 -0
- package/dist/utils/never.js +20 -0
- package/dist/utils/never.js.map +1 -0
- package/dist/utils/sanitize.d.ts +8 -0
- package/dist/utils/sanitize.d.ts.map +1 -1
- package/dist/utils/sanitize.js +19 -0
- package/dist/utils/sanitize.js.map +1 -1
- package/dist/utils/version.d.ts +9 -4
- package/dist/utils/version.d.ts.map +1 -1
- package/dist/utils/version.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browserSupervisor.js","sourceRoot":"","sources":["../../src/browser/browserSupervisor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"browserSupervisor.js","sourceRoot":"","sources":["../../src/browser/browserSupervisor.ts"],"names":[],"mappings":"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"}
|
package/dist/browser/cdp.d.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import type { CDPSession, Page } from "puppeteer-core";
|
|
2
|
+
import type { Clock } from "../utils/index.ts";
|
|
3
|
+
import type { Nullable } from "../types/index.ts";
|
|
4
|
+
export declare const WINDOW_STATE_POLL_MS = 25;
|
|
5
|
+
export declare const WINDOW_RESTORE_CEILING_MS = 2000;
|
|
2
6
|
/**
|
|
3
7
|
* Executes a CDP (Chrome DevTools Protocol) operation with proper session lifecycle management. This helper handles the common pattern of:
|
|
4
8
|
* 1. Creating a CDP session attached to the page's target
|
|
@@ -13,16 +17,65 @@ import type { CDPSession, Page } from "puppeteer-core";
|
|
|
13
17
|
* @returns The result of the operation, or undefined if the page was closed or an error occurred.
|
|
14
18
|
*/
|
|
15
19
|
export declare function withCDPSession<T>(page: Page, operation: (session: CDPSession, windowId: number) => Promise<T>): Promise<T | undefined>;
|
|
20
|
+
export interface WindowPlacement {
|
|
21
|
+
readonly height: number;
|
|
22
|
+
readonly left: number;
|
|
23
|
+
readonly top: number;
|
|
24
|
+
readonly width: number;
|
|
25
|
+
readonly windowState: string;
|
|
26
|
+
}
|
|
16
27
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
28
|
+
* Reads the window state Chrome reports for the window a page belongs to. Resolves null whenever the state cannot be read at all - a closed page, a target that
|
|
29
|
+
* yields no window ID, or a CDP failure withCDPSession absorbs - so a caller logging this as a diagnostic never has to tell a missing session apart from a
|
|
30
|
+
* missing report.
|
|
31
|
+
* @param page - The Puppeteer page whose window is read.
|
|
32
|
+
* @returns The window state Chrome reports, or null when it cannot be read.
|
|
33
|
+
*/
|
|
34
|
+
export declare function readWindowState(page: Page): Promise<Nullable<string>>;
|
|
35
|
+
/**
|
|
36
|
+
* Reads the full placement - frame and state - of the window a page belongs to, for a caller that means to put a second window in the same spot. Resolves null
|
|
37
|
+
* whenever the placement cannot be read completely: a closed page, a target that yields no window ID, a CDP failure withCDPSession absorbs, or a response
|
|
38
|
+
* missing any one of the four numbers or the state. That strictness lives here rather than in the shared read, because a partial frame is useless to the one
|
|
39
|
+
* consumer this exists for while a partial response is still a perfectly good state report.
|
|
40
|
+
*
|
|
41
|
+
* Mirroring the shared window's own placement is what keeps a second window from disturbing the profile: Chrome persists the window placement it will relaunch
|
|
42
|
+
* at from the last window whose bounds changed, within seconds and regardless of which window the user is working in, and any exit that does not flush that
|
|
43
|
+
* preference - a crash, a forced kill, and the relaunch that follows a crash - carries those bounds into the next launch. A window opened anywhere else writes
|
|
44
|
+
* its own frame there and the shared window comes back at it (measured 2026-08-31).
|
|
45
|
+
* @param page - The Puppeteer page whose window is read.
|
|
46
|
+
* @returns The window's placement, or null when it cannot be read completely.
|
|
47
|
+
*/
|
|
48
|
+
export declare function readWindowPlacement(page: Page): Promise<Nullable<WindowPlacement>>;
|
|
49
|
+
/**
|
|
50
|
+
* Minimizes the browser window, which keeps the desktop clear and the GPU idle while nothing is capturing. Only the window-visibility executor should call this:
|
|
51
|
+
* the window has to stay on screen for as long as any capture stream is reading the compositor, and that decision belongs to decideWindowVisibility in
|
|
52
|
+
* windowSync.ts.
|
|
19
53
|
* @param page - The Puppeteer page object.
|
|
20
54
|
*/
|
|
21
55
|
export declare function minimizeWindow(page: Page): Promise<void>;
|
|
22
56
|
/**
|
|
23
|
-
* Un-minimizes the browser window, restoring it to normal state.
|
|
24
|
-
*
|
|
57
|
+
* Un-minimizes the browser window, restoring it to normal state. The window belongs on screen while a capture stream is reading the compositor's output for it, and
|
|
58
|
+
* while a user is completing TV provider authentication in it. The capability probe calls this directly to make its environment representative of the one capture
|
|
59
|
+
* runs in; every other caller goes through the window-visibility executor, which owns the policy.
|
|
60
|
+
*
|
|
61
|
+
* The contract is a confirmed state, not a fired command: this resolves once Chrome reports the window restored, or once the ceiling lapses with a warning and the
|
|
62
|
+
* window left in whatever state it does report. On macOS a restore runs asynchronously against the acknowledgement of the command that asked for it, and a capture
|
|
63
|
+
* requested against a window still mid-restore is the shape of the 2026-08-26 through 08-28 capture-start failures. A window already on screen confirms on its
|
|
64
|
+
* first read, so the confirmation costs one round trip on the common path.
|
|
25
65
|
* @param page - The Puppeteer page object.
|
|
66
|
+
* @param clock - Clock driving the confirmation cadence and its elapsed measurement. Defaults to realClock; tests inject a fake.
|
|
67
|
+
*/
|
|
68
|
+
export declare function unminimizeWindow(page: Page, clock?: Clock): Promise<void>;
|
|
69
|
+
/**
|
|
70
|
+
* Re-issues a capture page's own declared device metrics. Chrome composes the capture of a selected tab from the window's fitted presentation rather than from the
|
|
71
|
+
* emulated surface, and the override event is what re-selects the composition target: a capture composing the window's view of the page returns to the full
|
|
72
|
+
* emulated surface, and a capture already composing that surface is left exactly as it was. Callable at any time, from anywhere, at any frequency, because the
|
|
73
|
+
* values sent are the ones Puppeteer has already declared on this page - nothing about the page's emulation changes.
|
|
74
|
+
*
|
|
75
|
+
* The command is issued raw rather than through page.setViewport, which drops an override whose values match the standing one. It is the event, not a change of
|
|
76
|
+
* values, that does the work here.
|
|
77
|
+
* @param page - The page to re-affirm. A page carrying no explicitly declared density is left alone.
|
|
78
|
+
* @throws Whatever the CDP send rejects with. Each trigger site decides whether that matters to it.
|
|
26
79
|
*/
|
|
27
|
-
export declare function
|
|
80
|
+
export declare function reaffirmCaptureSurface(page: Page): Promise<void>;
|
|
28
81
|
//# sourceMappingURL=cdp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp.d.ts","sourceRoot":"","sources":["../../src/browser/cdp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"cdp.d.ts","sourceRoot":"","sources":["../../src/browser/cdp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AA0BlD,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAIvC,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAE9C;;;;;;;;;;;;GAYG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC/D,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAwCxB;AAiBD,MAAM,WAAW,eAAe;IAE9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AA+BD;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAG3E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAuBxF;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,GAAE,KAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmC1F;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAuCtE"}
|
package/dist/browser/cdp.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import { LOG, delay, formatError } from "../utils/index.js";
|
|
1
|
+
import { LOG, delay, formatError, pollUntil, realClock } from "../utils/index.js";
|
|
2
2
|
/* The Chrome DevTools Protocol (CDP) provides low-level access to Chrome's internal state and capabilities. While Puppeteer abstracts most common operations, some
|
|
3
3
|
* features require direct CDP access:
|
|
4
4
|
*
|
|
5
|
-
* - Window presentation: moving the shared browser window between its normal and minimized states
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* - Window presentation: moving the shared browser window between its normal and minimized states, and reading the state Chrome reports for it. That state is the
|
|
6
|
+
* only window property this application drives, and it is not cosmetic: Chrome's tab capture consumes the compositor's output for the shared window, and a
|
|
7
|
+
* minimized window's output is not composed for capture to read. Which state the window should be in is decided in one place, by decideWindowVisibility in
|
|
8
|
+
* windowSync.ts; these primitives only carry it out and report back what Chrome says came of it.
|
|
9
|
+
*
|
|
10
|
+
* - Capture surface re-affirmation: re-issuing a capture page's own declared device metrics, which is what moves that capture's composition target back to the
|
|
11
|
+
* emulated surface.
|
|
8
12
|
*
|
|
9
13
|
* - Browser-level operations: Operations that affect the browser rather than a specific page, like getting the window ID for a page's target.
|
|
10
14
|
*
|
|
@@ -15,6 +19,13 @@ import { LOG, delay, formatError } from "../utils/index.js";
|
|
|
15
19
|
*
|
|
16
20
|
* The withCDPSession helper encapsulates the common pattern of creating a session, getting the window ID, performing an operation, and handling errors.
|
|
17
21
|
*/
|
|
22
|
+
// The wait between one read of the window's state and the next while a restore is in flight. This is a cadence rather than a settle - nothing is being given time
|
|
23
|
+
// to happen, Chrome is simply being asked again - and the measured macOS restore completes in roughly a quarter second, so a genuine restore costs about ten reads
|
|
24
|
+
// and a window already on screen costs exactly one.
|
|
25
|
+
export const WINDOW_STATE_POLL_MS = 25;
|
|
26
|
+
// The bound on how long a restore may take to report itself complete. Eight times the measured restore, so a lapse is a genuine fault worth a warning rather than
|
|
27
|
+
// a slow-but-healthy transition. Lapsing never blocks the caller: capture proceeds against whatever state Chrome reports.
|
|
28
|
+
export const WINDOW_RESTORE_CEILING_MS = 2000;
|
|
18
29
|
/**
|
|
19
30
|
* Executes a CDP (Chrome DevTools Protocol) operation with proper session lifecycle management. This helper handles the common pattern of:
|
|
20
31
|
* 1. Creating a CDP session attached to the page's target
|
|
@@ -59,8 +70,72 @@ export async function withCDPSession(page, operation) {
|
|
|
59
70
|
}
|
|
60
71
|
}
|
|
61
72
|
/**
|
|
62
|
-
*
|
|
63
|
-
*
|
|
73
|
+
* Reads the bounds Chrome reports for a window, through a session that is already open. Private to this module and the one place the frame is read: the state
|
|
74
|
+
* derivation below, the restore confirmation, and the page-level placement read all take their answer from this single call, so no other site composes the
|
|
75
|
+
* request. A response carrying no bounds reads as null rather than throwing, because an absent report is an answer every derivation already branches on. The
|
|
76
|
+
* frame comes back for a minimized window too - Chrome reports the frame it is resting at, which is exactly what a window created beside it needs.
|
|
77
|
+
* @param session - An open CDP session attached to the page's target.
|
|
78
|
+
* @param windowId - The browser window ID that session resolved.
|
|
79
|
+
* @returns The bounds Chrome reports, with every field as optional as Chrome leaves it, or null when the response carries none.
|
|
80
|
+
*/
|
|
81
|
+
async function readWindowBoundsWith(session, windowId) {
|
|
82
|
+
const response = await session.send("Browser.getWindowBounds", { windowId });
|
|
83
|
+
return response?.bounds ?? null;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Reads the window state Chrome reports for a window, through a session that is already open. Private to this module: the restore confirmation below and the
|
|
87
|
+
* page-level readWindowState both ask Chrome through the shared read above, so no other site composes the request. A response carrying no bounds, or bounds
|
|
88
|
+
* carrying no state, reads as null rather than throwing, because an absent report is an answer its callers already branch on.
|
|
89
|
+
* @param session - An open CDP session attached to the page's target.
|
|
90
|
+
* @param windowId - The browser window ID that session resolved.
|
|
91
|
+
* @returns The window state Chrome reports, or null when the response carries none.
|
|
92
|
+
*/
|
|
93
|
+
async function readWindowStateWith(session, windowId) {
|
|
94
|
+
return (await readWindowBoundsWith(session, windowId))?.windowState ?? null;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Reads the window state Chrome reports for the window a page belongs to. Resolves null whenever the state cannot be read at all - a closed page, a target that
|
|
98
|
+
* yields no window ID, or a CDP failure withCDPSession absorbs - so a caller logging this as a diagnostic never has to tell a missing session apart from a
|
|
99
|
+
* missing report.
|
|
100
|
+
* @param page - The Puppeteer page whose window is read.
|
|
101
|
+
* @returns The window state Chrome reports, or null when it cannot be read.
|
|
102
|
+
*/
|
|
103
|
+
export async function readWindowState(page) {
|
|
104
|
+
return (await withCDPSession(page, readWindowStateWith)) ?? null;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Reads the full placement - frame and state - of the window a page belongs to, for a caller that means to put a second window in the same spot. Resolves null
|
|
108
|
+
* whenever the placement cannot be read completely: a closed page, a target that yields no window ID, a CDP failure withCDPSession absorbs, or a response
|
|
109
|
+
* missing any one of the four numbers or the state. That strictness lives here rather than in the shared read, because a partial frame is useless to the one
|
|
110
|
+
* consumer this exists for while a partial response is still a perfectly good state report.
|
|
111
|
+
*
|
|
112
|
+
* Mirroring the shared window's own placement is what keeps a second window from disturbing the profile: Chrome persists the window placement it will relaunch
|
|
113
|
+
* at from the last window whose bounds changed, within seconds and regardless of which window the user is working in, and any exit that does not flush that
|
|
114
|
+
* preference - a crash, a forced kill, and the relaunch that follows a crash - carries those bounds into the next launch. A window opened anywhere else writes
|
|
115
|
+
* its own frame there and the shared window comes back at it (measured 2026-08-31).
|
|
116
|
+
* @param page - The Puppeteer page whose window is read.
|
|
117
|
+
* @returns The window's placement, or null when it cannot be read completely.
|
|
118
|
+
*/
|
|
119
|
+
export async function readWindowPlacement(page) {
|
|
120
|
+
return (await withCDPSession(page, async (session, windowId) => {
|
|
121
|
+
const bounds = await readWindowBoundsWith(session, windowId);
|
|
122
|
+
if (!bounds) {
|
|
123
|
+
return null;
|
|
124
|
+
}
|
|
125
|
+
const { height, left, top, width, windowState } = bounds;
|
|
126
|
+
// Each field's presence is a type test rather than a truthiness test: a window flush against the top or the left edge of the screen reports that
|
|
127
|
+
// coordinate as 0, which a truthiness test would discard as a missing placement.
|
|
128
|
+
if ((typeof height !== "number") || (typeof left !== "number") || (typeof top !== "number") || (typeof width !== "number") ||
|
|
129
|
+
(typeof windowState !== "string")) {
|
|
130
|
+
return null;
|
|
131
|
+
}
|
|
132
|
+
return { height, left, top, width, windowState };
|
|
133
|
+
})) ?? null;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Minimizes the browser window, which keeps the desktop clear and the GPU idle while nothing is capturing. Only the window-visibility executor should call this:
|
|
137
|
+
* the window has to stay on screen for as long as any capture stream is reading the compositor, and that decision belongs to decideWindowVisibility in
|
|
138
|
+
* windowSync.ts.
|
|
64
139
|
* @param page - The Puppeteer page object.
|
|
65
140
|
*/
|
|
66
141
|
export async function minimizeWindow(page) {
|
|
@@ -81,11 +156,18 @@ export async function minimizeWindow(page) {
|
|
|
81
156
|
});
|
|
82
157
|
}
|
|
83
158
|
/**
|
|
84
|
-
* Un-minimizes the browser window, restoring it to normal state.
|
|
85
|
-
*
|
|
159
|
+
* Un-minimizes the browser window, restoring it to normal state. The window belongs on screen while a capture stream is reading the compositor's output for it, and
|
|
160
|
+
* while a user is completing TV provider authentication in it. The capability probe calls this directly to make its environment representative of the one capture
|
|
161
|
+
* runs in; every other caller goes through the window-visibility executor, which owns the policy.
|
|
162
|
+
*
|
|
163
|
+
* The contract is a confirmed state, not a fired command: this resolves once Chrome reports the window restored, or once the ceiling lapses with a warning and the
|
|
164
|
+
* window left in whatever state it does report. On macOS a restore runs asynchronously against the acknowledgement of the command that asked for it, and a capture
|
|
165
|
+
* requested against a window still mid-restore is the shape of the 2026-08-26 through 08-28 capture-start failures. A window already on screen confirms on its
|
|
166
|
+
* first read, so the confirmation costs one round trip on the common path.
|
|
86
167
|
* @param page - The Puppeteer page object.
|
|
168
|
+
* @param clock - Clock driving the confirmation cadence and its elapsed measurement. Defaults to realClock; tests inject a fake.
|
|
87
169
|
*/
|
|
88
|
-
export async function unminimizeWindow(page) {
|
|
170
|
+
export async function unminimizeWindow(page, clock = realClock) {
|
|
89
171
|
// Early exit if the page is already closed.
|
|
90
172
|
if (page.isClosed()) {
|
|
91
173
|
return;
|
|
@@ -96,6 +178,61 @@ export async function unminimizeWindow(page) {
|
|
|
96
178
|
bounds: { windowState: "normal" },
|
|
97
179
|
windowId
|
|
98
180
|
});
|
|
181
|
+
// Confirm the restore against Chrome's own report rather than against the acknowledgement above, which arrives while the window manager is still working.
|
|
182
|
+
const startedAt = clock.now();
|
|
183
|
+
const outcome = await pollUntil({ cadenceMs: WINDOW_STATE_POLL_MS, ceilingMs: WINDOW_RESTORE_CEILING_MS, clock,
|
|
184
|
+
read: () => readWindowStateWith(session, windowId), until: (state) => state === "normal" });
|
|
185
|
+
if (outcome.lapsed) {
|
|
186
|
+
/* A lapse is reported and then stepped past. The window's presentation is the caller's precondition, not its permission: blocking capture on a window that
|
|
187
|
+
* will not report itself restored would convert a presentation fault into a stream failure, which is strictly worse than capturing against a window whose
|
|
188
|
+
* state we have named in the log.
|
|
189
|
+
*/
|
|
190
|
+
LOG.warn("The browser window did not report a completed restore within %dms; continuing with the window in its reported state.", WINDOW_RESTORE_CEILING_MS, { windowState: outcome.value });
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
LOG.debug("browser:lifecycle", "The window reported its restore complete after %dms (%d reads).", clock.now() - startedAt, outcome.reads);
|
|
194
|
+
}
|
|
99
195
|
});
|
|
100
196
|
}
|
|
197
|
+
/**
|
|
198
|
+
* Re-issues a capture page's own declared device metrics. Chrome composes the capture of a selected tab from the window's fitted presentation rather than from the
|
|
199
|
+
* emulated surface, and the override event is what re-selects the composition target: a capture composing the window's view of the page returns to the full
|
|
200
|
+
* emulated surface, and a capture already composing that surface is left exactly as it was. Callable at any time, from anywhere, at any frequency, because the
|
|
201
|
+
* values sent are the ones Puppeteer has already declared on this page - nothing about the page's emulation changes.
|
|
202
|
+
*
|
|
203
|
+
* The command is issued raw rather than through page.setViewport, which drops an override whose values match the standing one. It is the event, not a change of
|
|
204
|
+
* values, that does the work here.
|
|
205
|
+
* @param page - The page to re-affirm. A page carrying no explicitly declared density is left alone.
|
|
206
|
+
* @throws Whatever the CDP send rejects with. Each trigger site decides whether that matters to it.
|
|
207
|
+
*/
|
|
208
|
+
export async function reaffirmCaptureSurface(page) {
|
|
209
|
+
/* An explicitly declared, positive density is precisely the mark of a capture page, which is what makes this function safe to fire at any page from any trigger.
|
|
210
|
+
* A page PrismCast has not emulated carries no viewport at all and falls out on the first test; a page emulated for layout declares the display's own density
|
|
211
|
+
* through Chrome's disable value of 0, which the positive test excludes. The narrowing runs in two steps because the send forwards the page's own dimensions as
|
|
212
|
+
* well: the record is nullable, and its density is optional where CDP's field is required.
|
|
213
|
+
*/
|
|
214
|
+
const viewport = page.viewport();
|
|
215
|
+
if (!viewport) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
const deviceScaleFactor = viewport.deviceScaleFactor;
|
|
219
|
+
if ((typeof deviceScaleFactor !== "number") || !(deviceScaleFactor > 0)) {
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
const session = await page.createCDPSession();
|
|
223
|
+
try {
|
|
224
|
+
await session.send("Emulation.setDeviceMetricsOverride", { deviceScaleFactor, height: viewport.height, mobile: false, width: viewport.width });
|
|
225
|
+
}
|
|
226
|
+
finally {
|
|
227
|
+
/* The detach carries a catch of its own. A page that dies mid-send takes its session with it, and a throw raised out of this finally would replace the send's
|
|
228
|
+
* rejection with a detach failure the caller can do nothing about - the send's own reason has to reach the caller unaltered.
|
|
229
|
+
*/
|
|
230
|
+
try {
|
|
231
|
+
await session.detach();
|
|
232
|
+
}
|
|
233
|
+
catch {
|
|
234
|
+
// The session is already gone, which is the state the detach was asking for.
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
101
238
|
//# sourceMappingURL=cdp.js.map
|
package/dist/browser/cdp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdp.js","sourceRoot":"","sources":["../../src/browser/cdp.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"cdp.js","sourceRoot":"","sources":["../../src/browser/cdp.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,8 +32,8 @@ export declare function resolveDirectUrl(profile: ResolvedSiteProfile, page: Pag
|
|
|
32
32
|
*/
|
|
33
33
|
export declare function invalidateDirectUrl(profile: ResolvedSiteProfile, cause: unknown): boolean;
|
|
34
34
|
/**
|
|
35
|
-
* Clears all channel selection caches. Called by
|
|
36
|
-
*
|
|
35
|
+
* Clears all channel selection caches. Called by browser/index.ts wherever a browser session ends - the disconnect handler's readiness relinquish and the restart
|
|
36
|
+
* routine's relaunch - since cached state (guide row positions, discovered page URLs, watch URLs) may be stale in a new browser session.
|
|
37
37
|
*/
|
|
38
38
|
export declare function clearChannelSelectionCaches(): void;
|
|
39
39
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelSelection.d.ts","sourceRoot":"","sources":["../../src/browser/channelSelection.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA2B,qBAAqB,EAA2C,QAAQ,EAAE,cAAc,EAC7H,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAKjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAmE3C;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAmB1G;AAQD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CA4BzF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAMlD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAG1E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAGtF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAG3C;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAS/I;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU7D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU7D;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAGtE;AAaD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,IAAI;IAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,CAoBnI;AAID,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEtH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IAEnC;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,qBAAqB,CAAC,
|
|
1
|
+
{"version":3,"file":"channelSelection.d.ts","sourceRoot":"","sources":["../../src/browser/channelSelection.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA2B,qBAAqB,EAA2C,QAAQ,EAAE,cAAc,EAC7H,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAKjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAmE3C;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAmB1G;AAQD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CA4BzF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAMlD;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAG1E;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAGtF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAG3C;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAS/I;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU7D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAU7D;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAGtE;AAaD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,IAAI;IAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,EAAE,CAoBnI;AAID,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEtH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IAEnC;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA6NhJ"}
|
|
@@ -125,8 +125,8 @@ export function invalidateDirectUrl(profile, cause) {
|
|
|
125
125
|
return true;
|
|
126
126
|
}
|
|
127
127
|
/**
|
|
128
|
-
* Clears all channel selection caches. Called by
|
|
129
|
-
*
|
|
128
|
+
* Clears all channel selection caches. Called by browser/index.ts wherever a browser session ends - the disconnect handler's readiness relinquish and the restart
|
|
129
|
+
* routine's relaunch - since cached state (guide row positions, discovered page URLs, watch URLs) may be stale in a new browser session.
|
|
130
130
|
*/
|
|
131
131
|
export function clearChannelSelectionCaches() {
|
|
132
132
|
for (const entry of Object.values(strategies)) {
|
|
@@ -282,12 +282,12 @@ export async function selectChannel(page, profile, options = {}) {
|
|
|
282
282
|
if (categoryResolution?.selectors.includes(activeProfile.channelSelector)) {
|
|
283
283
|
const resolution = await categoryResolution.resolve(activeProfile.channelSelector, page);
|
|
284
284
|
if ("callSign" in resolution) {
|
|
285
|
-
LOG.debug("tuning", "Resolved category selector \"%s\" to \"%s\" via %s.", activeProfile.channelSelector, resolution.callSign, provider?.label ?? "unknown");
|
|
285
|
+
LOG.debug("tuning:selector", "Resolved category selector \"%s\" to \"%s\" via %s.", activeProfile.channelSelector, resolution.callSign, provider?.label ?? "unknown");
|
|
286
286
|
activeProfile = { ...activeProfile, channelSelector: resolution.callSign };
|
|
287
287
|
if (options.persistResolution) {
|
|
288
288
|
const resolved = resolution.callSign;
|
|
289
289
|
options.persistResolution(resolved).catch((persistError) => {
|
|
290
|
-
LOG.debug("tuning", "Failed to persist resolved category selector to \"%s\": %s.", resolved, formatError(persistError));
|
|
290
|
+
LOG.debug("tuning:selector", "Failed to persist resolved category selector to \"%s\": %s.", resolved, formatError(persistError));
|
|
291
291
|
});
|
|
292
292
|
}
|
|
293
293
|
}
|
|
@@ -301,7 +301,7 @@ export async function selectChannel(page, profile, options = {}) {
|
|
|
301
301
|
// Permissive provider: log the resolver-authored reason at debug level and fall through. The strategy will attempt a best-effort match against the original
|
|
302
302
|
// category selector, and the verifier will fail open for the wildcard case if the captured manifest URL cannot be cross-checked against discovered category
|
|
303
303
|
// members.
|
|
304
|
-
LOG.debug("tuning", "%s", resolution.reason);
|
|
304
|
+
LOG.debug("tuning:selector", "%s", resolution.reason);
|
|
305
305
|
}
|
|
306
306
|
}
|
|
307
307
|
const entry = strategies[channelSelection.strategy];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelSelection.js","sourceRoot":"","sources":["../../src/browser/channelSelection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"channelSelection.js","sourceRoot":"","sources":["../../src/browser/channelSelection.ts"],"names":[],"mappings":"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"}
|
|
@@ -104,6 +104,22 @@ export declare function locateSelectorCoordinate(sel: string): {
|
|
|
104
104
|
* @returns "clicked" when the element was found and clicked, "absent" when the valid selector matched nothing, "invalid-selector" when the selector is malformed.
|
|
105
105
|
*/
|
|
106
106
|
export declare function clickSelectorInPage(sel: string): SyntheticClickResult;
|
|
107
|
+
/**
|
|
108
|
+
* In-page hit test for a selector-identified element at a viewport point: reports whether the element, or one of its own descendants, is what the document paints
|
|
109
|
+
* there. It runs after the settle and immediately before the pointer chain is dispatched at that point, so a page element lifted above the target since the
|
|
110
|
+
* coordinates were resolved - the capture's video after establishment - is seen. A null hit (a point outside the viewport) answers false, so the caller never
|
|
111
|
+
* clicks blind.
|
|
112
|
+
*
|
|
113
|
+
* This function crosses the page.evaluate boundary by source serialization, so it is self-contained: it references only its argument and the page's document global,
|
|
114
|
+
* with every input a parameter and zero outer-scope references. Exported so unit tests can run it against a synthetic DOM.
|
|
115
|
+
* @param input - The selector and the viewport point to test.
|
|
116
|
+
* @returns True when the element or one of its descendants paints at the point.
|
|
117
|
+
*/
|
|
118
|
+
export declare function isSelectorAtPoint(input: {
|
|
119
|
+
selector: string;
|
|
120
|
+
x: number;
|
|
121
|
+
y: number;
|
|
122
|
+
}): boolean;
|
|
107
123
|
/**
|
|
108
124
|
* In-page embed-gate scanner. Recognizes an embedded-player consent gate by shape: a button, a button-role element, or an anchor whose label matches the accept
|
|
109
125
|
* affordance AND whose ancestor container (within a bounded depth) carries the 2-click-embed phrasing, excluding sign-in/paywall/age walls. Early-outs to null when a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../../src/browser/consent.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA2C7D,eAAO,MAAM,wBAAwB,uEAAuE,CAAC;AAO7G,eAAO,MAAM,iBAAiB,QACsC,CAAC;AAMrE,eAAO,MAAM,cAAc,QAC4B,CAAC;AAMxD;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,gBAAgB,GAAG,eAAe,GAAG,WAAW,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../../src/browser/consent.ts"],"names":[],"mappings":"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"}
|