prismcast 1.10.2 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +6 -3
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +140 -86
- package/dist/app.js.map +1 -1
- package/dist/browser/blockedPage.d.ts +80 -0
- package/dist/browser/blockedPage.d.ts.map +1 -0
- package/dist/browser/blockedPage.js +209 -0
- package/dist/browser/blockedPage.js.map +1 -0
- package/dist/browser/browserSupervisor.d.ts +80 -0
- package/dist/browser/browserSupervisor.d.ts.map +1 -0
- package/dist/browser/browserSupervisor.js +186 -0
- package/dist/browser/browserSupervisor.js.map +1 -0
- package/dist/browser/cdp.d.ts +1 -0
- package/dist/browser/cdp.d.ts.map +1 -0
- package/dist/browser/cdp.js +6 -5
- package/dist/browser/cdp.js.map +1 -1
- package/dist/browser/channelSelection.d.ts +45 -14
- package/dist/browser/channelSelection.d.ts.map +1 -0
- package/dist/browser/channelSelection.js +81 -18
- package/dist/browser/channelSelection.js.map +1 -1
- package/dist/browser/consent.d.ts +152 -0
- package/dist/browser/consent.d.ts.map +1 -0
- package/dist/browser/consent.js +418 -0
- package/dist/browser/consent.js.map +1 -0
- package/dist/browser/display.d.ts +1 -0
- package/dist/browser/display.d.ts.map +1 -0
- package/dist/browser/hlsPlaylistObserver.d.ts +55 -0
- package/dist/browser/hlsPlaylistObserver.d.ts.map +1 -0
- package/dist/browser/hlsPlaylistObserver.js +132 -0
- package/dist/browser/hlsPlaylistObserver.js.map +1 -0
- package/dist/browser/index.d.ts +67 -40
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +508 -300
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/launchGovernor.d.ts +89 -0
- package/dist/browser/launchGovernor.d.ts.map +1 -0
- package/dist/browser/launchGovernor.js +96 -0
- package/dist/browser/launchGovernor.js.map +1 -0
- package/dist/browser/login.d.ts +10 -2
- package/dist/browser/login.d.ts.map +1 -0
- package/dist/browser/login.js +36 -5
- package/dist/browser/login.js.map +1 -1
- package/dist/browser/manifestInterceptor.d.ts +102 -49
- package/dist/browser/manifestInterceptor.d.ts.map +1 -0
- package/dist/browser/manifestInterceptor.js +219 -237
- package/dist/browser/manifestInterceptor.js.map +1 -1
- package/dist/browser/pageStaleness.d.ts +30 -0
- package/dist/browser/pageStaleness.d.ts.map +1 -0
- package/dist/browser/pageStaleness.js +76 -0
- package/dist/browser/pageStaleness.js.map +1 -0
- package/dist/browser/precaching.d.ts +95 -3
- package/dist/browser/precaching.d.ts.map +1 -0
- package/dist/browser/precaching.js +499 -65
- package/dist/browser/precaching.js.map +1 -1
- package/dist/browser/tabNetworkObserver.d.ts +49 -0
- package/dist/browser/tabNetworkObserver.d.ts.map +1 -0
- package/dist/browser/tabNetworkObserver.js +144 -0
- package/dist/browser/tabNetworkObserver.js.map +1 -0
- package/dist/browser/tuning/cache.d.ts +61 -0
- package/dist/browser/tuning/cache.d.ts.map +1 -0
- package/dist/browser/tuning/cache.js +62 -0
- package/dist/browser/tuning/cache.js.map +1 -0
- package/dist/browser/tuning/comcastPolymer.d.ts +3 -2
- package/dist/browser/tuning/comcastPolymer.d.ts.map +1 -0
- package/dist/browser/tuning/comcastPolymer.js +79 -102
- package/dist/browser/tuning/comcastPolymer.js.map +1 -1
- package/dist/browser/tuning/cox.d.ts +1 -0
- package/dist/browser/tuning/cox.d.ts.map +1 -0
- package/dist/browser/tuning/directv.d.ts +1 -0
- package/dist/browser/tuning/directv.d.ts.map +1 -0
- package/dist/browser/tuning/directv.js +52 -46
- package/dist/browser/tuning/directv.js.map +1 -1
- package/dist/browser/tuning/fox.d.ts +1 -0
- package/dist/browser/tuning/fox.d.ts.map +1 -0
- package/dist/browser/tuning/fox.js +13 -12
- package/dist/browser/tuning/fox.js.map +1 -1
- package/dist/browser/tuning/gridSearch.d.ts +68 -0
- package/dist/browser/tuning/gridSearch.d.ts.map +1 -0
- package/dist/browser/tuning/gridSearch.js +85 -0
- package/dist/browser/tuning/gridSearch.js.map +1 -0
- package/dist/browser/tuning/hbo.d.ts +1 -0
- package/dist/browser/tuning/hbo.d.ts.map +1 -0
- package/dist/browser/tuning/hbo.js +73 -45
- package/dist/browser/tuning/hbo.js.map +1 -1
- package/dist/browser/tuning/hulu.d.ts +1 -0
- package/dist/browser/tuning/hulu.d.ts.map +1 -0
- package/dist/browser/tuning/hulu.js +128 -173
- package/dist/browser/tuning/hulu.js.map +1 -1
- package/dist/browser/tuning/shared.d.ts +75 -5
- package/dist/browser/tuning/shared.d.ts.map +1 -0
- package/dist/browser/tuning/shared.js +216 -6
- package/dist/browser/tuning/shared.js.map +1 -1
- package/dist/browser/tuning/sling.d.ts +1 -0
- package/dist/browser/tuning/sling.d.ts.map +1 -0
- package/dist/browser/tuning/sling.js +105 -126
- package/dist/browser/tuning/sling.js.map +1 -1
- package/dist/browser/tuning/spectrum.d.ts +1 -0
- package/dist/browser/tuning/spectrum.d.ts.map +1 -0
- package/dist/browser/tuning/spectrum.js +80 -125
- package/dist/browser/tuning/spectrum.js.map +1 -1
- package/dist/browser/tuning/thumbnailRow.d.ts +1 -0
- package/dist/browser/tuning/thumbnailRow.d.ts.map +1 -0
- package/dist/browser/tuning/thumbnailRow.js +8 -2
- package/dist/browser/tuning/thumbnailRow.js.map +1 -1
- package/dist/browser/tuning/tileClick.d.ts +1 -0
- package/dist/browser/tuning/tileClick.d.ts.map +1 -0
- package/dist/browser/tuning/tileClick.js +3 -2
- package/dist/browser/tuning/tileClick.js.map +1 -1
- package/dist/browser/tuning/xfinity.d.ts +1 -0
- package/dist/browser/tuning/xfinity.d.ts.map +1 -0
- package/dist/browser/tuning/youtubeTv.d.ts +1 -0
- package/dist/browser/tuning/youtubeTv.d.ts.map +1 -0
- package/dist/browser/tuning/youtubeTv.js +74 -127
- package/dist/browser/tuning/youtubeTv.js.map +1 -1
- package/dist/browser/video.d.ts +54 -14
- package/dist/browser/video.d.ts.map +1 -0
- package/dist/browser/video.js +296 -138
- package/dist/browser/video.js.map +1 -1
- package/dist/channels/index.d.ts +1 -0
- package/dist/channels/index.d.ts.map +1 -0
- package/dist/channels/index.js +12 -9
- package/dist/channels/index.js.map +1 -1
- package/dist/config/channelForm.d.ts +15 -1
- package/dist/config/channelForm.d.ts.map +1 -0
- package/dist/config/channelForm.js +28 -12
- package/dist/config/channelForm.js.map +1 -1
- package/dist/config/consistencyProbe.d.ts +1 -0
- package/dist/config/consistencyProbe.d.ts.map +1 -0
- package/dist/config/consistencyProbe.js +27 -21
- package/dist/config/consistencyProbe.js.map +1 -1
- package/dist/config/health.d.ts +41 -8
- package/dist/config/health.d.ts.map +1 -0
- package/dist/config/health.js +189 -38
- package/dist/config/health.js.map +1 -1
- package/dist/config/index.d.ts +55 -3
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +320 -69
- package/dist/config/index.js.map +1 -1
- package/dist/config/paths.d.ts +10 -9
- package/dist/config/paths.d.ts.map +1 -0
- package/dist/config/paths.js +11 -11
- package/dist/config/paths.js.map +1 -1
- package/dist/config/persistence.context.d.ts +1 -0
- package/dist/config/persistence.context.d.ts.map +1 -0
- package/dist/config/persistence.d.ts +13 -10
- package/dist/config/persistence.d.ts.map +1 -0
- package/dist/config/persistence.js +40 -21
- package/dist/config/persistence.js.map +1 -1
- package/dist/config/presets.d.ts +1 -0
- package/dist/config/presets.d.ts.map +1 -0
- package/dist/config/profiles.d.ts +22 -15
- package/dist/config/profiles.d.ts.map +1 -0
- package/dist/config/profiles.js +81 -47
- package/dist/config/profiles.js.map +1 -1
- package/dist/config/providerLineups.d.ts +47 -0
- package/dist/config/providerLineups.d.ts.map +1 -0
- package/dist/config/providerLineups.js +137 -0
- package/dist/config/providerLineups.js.map +1 -0
- package/dist/config/reactivity.d.ts +84 -0
- package/dist/config/reactivity.d.ts.map +1 -0
- package/dist/config/reactivity.js +226 -0
- package/dist/config/reactivity.js.map +1 -0
- package/dist/config/servicePacks.d.ts +18 -2
- package/dist/config/servicePacks.d.ts.map +1 -0
- package/dist/config/servicePacks.js +53 -11
- package/dist/config/servicePacks.js.map +1 -1
- package/dist/config/services.d.ts +21 -15
- package/dist/config/services.d.ts.map +1 -0
- package/dist/config/services.js +35 -24
- package/dist/config/services.js.map +1 -1
- package/dist/config/sites.d.ts +6 -4
- package/dist/config/sites.d.ts.map +1 -0
- package/dist/config/sites.js +15 -11
- package/dist/config/sites.js.map +1 -1
- package/dist/config/userChannels.d.ts +129 -30
- package/dist/config/userChannels.d.ts.map +1 -0
- package/dist/config/userChannels.js +333 -68
- package/dist/config/userChannels.js.map +1 -1
- package/dist/config/userConfig.d.ts +14 -9
- package/dist/config/userConfig.d.ts.map +1 -0
- package/dist/config/userConfig.js +87 -25
- package/dist/config/userConfig.js.map +1 -1
- package/dist/config/userProfiles.d.ts +10 -6
- package/dist/config/userProfiles.d.ts.map +1 -0
- package/dist/config/userProfiles.js +64 -39
- package/dist/config/userProfiles.js.map +1 -1
- package/dist/hdhr/channelMap.d.ts +1 -0
- package/dist/hdhr/channelMap.d.ts.map +1 -0
- package/dist/hdhr/deviceId.d.ts +1 -0
- package/dist/hdhr/deviceId.d.ts.map +1 -0
- package/dist/hdhr/discover.d.ts +1 -0
- package/dist/hdhr/discover.d.ts.map +1 -0
- package/dist/hdhr/discover.js +48 -47
- package/dist/hdhr/discover.js.map +1 -1
- package/dist/hdhr/getHandlers.d.ts +29 -0
- package/dist/hdhr/getHandlers.d.ts.map +1 -0
- package/dist/hdhr/getHandlers.js +196 -0
- package/dist/hdhr/getHandlers.js.map +1 -0
- package/dist/hdhr/identity.d.ts +36 -0
- package/dist/hdhr/identity.d.ts.map +1 -0
- package/dist/hdhr/identity.js +51 -0
- package/dist/hdhr/identity.js.map +1 -0
- package/dist/hdhr/index.d.ts +22 -4
- package/dist/hdhr/index.d.ts.map +1 -0
- package/dist/hdhr/index.js +229 -54
- package/dist/hdhr/index.js.map +1 -1
- package/dist/hdhr/protocol.d.ts +75 -0
- package/dist/hdhr/protocol.d.ts.map +1 -0
- package/dist/hdhr/protocol.js +264 -0
- package/dist/hdhr/protocol.js.map +1 -0
- package/dist/hdhr/tunerState.d.ts +24 -0
- package/dist/hdhr/tunerState.d.ts.map +1 -0
- package/dist/hdhr/tunerState.js +67 -0
- package/dist/hdhr/tunerState.js.map +1 -0
- package/dist/hdhr/udp.d.ts +43 -0
- package/dist/hdhr/udp.d.ts.map +1 -0
- package/dist/hdhr/udp.js +277 -0
- package/dist/hdhr/udp.js.map +1 -0
- package/dist/identity.d.ts +1 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +13 -11
- package/dist/identity.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -12
- package/dist/index.js.map +1 -1
- package/dist/native/codecInference.d.ts +1 -0
- package/dist/native/codecInference.d.ts.map +1 -0
- package/dist/native/codecInference.js +50 -5
- package/dist/native/codecInference.js.map +1 -1
- package/dist/native/decrypt.d.ts +6 -2
- package/dist/native/decrypt.d.ts.map +1 -0
- package/dist/native/decrypt.js +15 -8
- package/dist/native/decrypt.js.map +1 -1
- package/dist/native/index.d.ts +40 -17
- package/dist/native/index.d.ts.map +1 -0
- package/dist/native/index.js +281 -120
- package/dist/native/index.js.map +1 -1
- package/dist/native/probe.d.ts +114 -18
- package/dist/native/probe.d.ts.map +1 -0
- package/dist/native/probe.js +452 -115
- package/dist/native/probe.js.map +1 -1
- package/dist/native/proxy.d.ts +57 -5
- package/dist/native/proxy.d.ts.map +1 -0
- package/dist/native/proxy.js +604 -170
- package/dist/native/proxy.js.map +1 -1
- package/dist/native/tokenExpiry.d.ts +1 -0
- package/dist/native/tokenExpiry.d.ts.map +1 -0
- package/dist/native/tokenExpiry.js +1 -1
- package/dist/routes/assets.d.ts +1 -0
- package/dist/routes/assets.d.ts.map +1 -0
- package/dist/routes/assets.js +4 -2
- package/dist/routes/assets.js.map +1 -1
- package/dist/routes/auth.d.ts +1 -0
- package/dist/routes/auth.d.ts.map +1 -0
- package/dist/routes/auth.js +0 -1
- package/dist/routes/auth.js.map +1 -1
- package/dist/routes/cdp.d.ts +5 -5
- package/dist/routes/cdp.d.ts.map +1 -0
- package/dist/routes/cdp.js +59 -20
- package/dist/routes/cdp.js.map +1 -1
- package/dist/routes/channels.d.ts +1 -0
- package/dist/routes/channels.d.ts.map +1 -0
- package/dist/routes/channels.js +2 -1
- package/dist/routes/channels.js.map +1 -1
- package/dist/routes/clientActions.d.ts +98 -0
- package/dist/routes/clientActions.d.ts.map +1 -0
- package/dist/routes/clientActions.js +113 -0
- package/dist/routes/clientActions.js.map +1 -0
- package/dist/routes/components.d.ts +5 -3
- package/dist/routes/components.d.ts.map +1 -0
- package/dist/routes/components.js +36 -39
- package/dist/routes/components.js.map +1 -1
- package/dist/routes/config/channels/endpoints/browse.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/browse.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/browse.js +23 -10
- package/dist/routes/config/channels/endpoints/browse.js.map +1 -1
- package/dist/routes/config/channels/endpoints/bulk.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/bulk.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/bulk.js +5 -3
- package/dist/routes/config/channels/endpoints/bulk.js.map +1 -1
- package/dist/routes/config/channels/endpoints/crud.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/crud.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/crud.js +85 -93
- package/dist/routes/config/channels/endpoints/crud.js.map +1 -1
- package/dist/routes/config/channels/endpoints/importExport.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/importExport.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/importExport.js +6 -3
- package/dist/routes/config/channels/endpoints/importExport.js.map +1 -1
- package/dist/routes/config/channels/endpoints/predefined.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/predefined.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/prefs.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/prefs.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/prefs.js +2 -1
- package/dist/routes/config/channels/endpoints/prefs.js.map +1 -1
- package/dist/routes/config/channels/endpoints/service.d.ts +2 -1
- package/dist/routes/config/channels/endpoints/service.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/service.js +3 -1
- package/dist/routes/config/channels/endpoints/service.js.map +1 -1
- package/dist/routes/config/channels/endpoints/tags.d.ts +1 -0
- package/dist/routes/config/channels/endpoints/tags.d.ts.map +1 -0
- package/dist/routes/config/channels/endpoints/tags.js +13 -7
- package/dist/routes/config/channels/endpoints/tags.js.map +1 -1
- package/dist/routes/config/channels/healthBridge.d.ts +24 -0
- package/dist/routes/config/channels/healthBridge.d.ts.map +1 -0
- package/dist/routes/config/channels/healthBridge.js +71 -0
- package/dist/routes/config/channels/healthBridge.js.map +1 -0
- package/dist/routes/config/channels/http/handler.d.ts +1 -0
- package/dist/routes/config/channels/http/handler.d.ts.map +1 -0
- package/dist/routes/config/channels/http/playlistHint.d.ts +2 -1
- package/dist/routes/config/channels/http/playlistHint.d.ts.map +1 -0
- package/dist/routes/config/channels/http/playlistHint.js +16 -2
- package/dist/routes/config/channels/http/playlistHint.js.map +1 -1
- package/dist/routes/config/channels/http/serviceWarning.d.ts +4 -2
- package/dist/routes/config/channels/http/serviceWarning.d.ts.map +1 -0
- package/dist/routes/config/channels/http/serviceWarning.js +3 -2
- package/dist/routes/config/channels/http/serviceWarning.js.map +1 -1
- package/dist/routes/config/channels/index.d.ts +1 -0
- package/dist/routes/config/channels/index.d.ts.map +1 -0
- package/dist/routes/config/channels/setup.d.ts +1 -0
- package/dist/routes/config/channels/setup.d.ts.map +1 -0
- package/dist/routes/config/channels/table.d.ts +3 -3
- package/dist/routes/config/channels/table.d.ts.map +1 -0
- package/dist/routes/config/channels/table.js +148 -107
- package/dist/routes/config/channels/table.js.map +1 -1
- package/dist/routes/config/http/envelope.d.ts +1 -0
- package/dist/routes/config/http/envelope.d.ts.map +1 -0
- package/dist/routes/config/index.d.ts +35 -3
- package/dist/routes/config/index.d.ts.map +1 -0
- package/dist/routes/config/index.js +51 -2
- package/dist/routes/config/index.js.map +1 -1
- package/dist/routes/config/services.d.ts +5 -4
- package/dist/routes/config/services.d.ts.map +1 -0
- package/dist/routes/config/services.js +57 -43
- package/dist/routes/config/services.js.map +1 -1
- package/dist/routes/config/settings.d.ts +1 -0
- package/dist/routes/config/settings.d.ts.map +1 -0
- package/dist/routes/config/settings.js +98 -49
- package/dist/routes/config/settings.js.map +1 -1
- package/dist/routes/debug.d.ts +1 -0
- package/dist/routes/debug.d.ts.map +1 -0
- package/dist/routes/debug.js +277 -139
- package/dist/routes/debug.js.map +1 -1
- package/dist/routes/health.d.ts +39 -1
- package/dist/routes/health.d.ts.map +1 -0
- package/dist/routes/health.js +33 -27
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/hls.d.ts +1 -0
- package/dist/routes/hls.d.ts.map +1 -0
- package/dist/routes/icons.d.ts +1 -0
- package/dist/routes/icons.d.ts.map +1 -0
- package/dist/routes/icons.js +1 -1
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.d.ts.map +1 -0
- package/dist/routes/logs.d.ts +1 -0
- package/dist/routes/logs.d.ts.map +1 -0
- package/dist/routes/logs.js +14 -4
- package/dist/routes/logs.js.map +1 -1
- package/dist/routes/mpegts.d.ts +1 -0
- package/dist/routes/mpegts.d.ts.map +1 -0
- package/dist/routes/play.d.ts +1 -0
- package/dist/routes/play.d.ts.map +1 -0
- package/dist/routes/playlist.d.ts +1 -0
- package/dist/routes/playlist.d.ts.map +1 -0
- package/dist/routes/playlist.js +7 -2
- package/dist/routes/playlist.js.map +1 -1
- package/dist/routes/root/content.d.ts +8 -5
- package/dist/routes/root/content.d.ts.map +1 -0
- package/dist/routes/root/content.js +29 -26
- package/dist/routes/root/content.js.map +1 -1
- package/dist/routes/root/index.d.ts +2 -1
- package/dist/routes/root/index.d.ts.map +1 -0
- package/dist/routes/root/index.js +26 -21
- package/dist/routes/root/index.js.map +1 -1
- package/dist/routes/root/scripts/channels.d.ts +6 -0
- package/dist/routes/root/scripts/channels.d.ts.map +1 -0
- package/dist/routes/root/scripts/channels.js +197 -118
- package/dist/routes/root/scripts/channels.js.map +1 -1
- package/dist/routes/root/scripts/clientEscape.d.ts +22 -0
- package/dist/routes/root/scripts/clientEscape.d.ts.map +1 -0
- package/dist/routes/root/scripts/clientEscape.js +41 -0
- package/dist/routes/root/scripts/clientEscape.js.map +1 -0
- package/dist/routes/root/scripts/clientUrl.d.ts +23 -0
- package/dist/routes/root/scripts/clientUrl.d.ts.map +1 -0
- package/dist/routes/root/scripts/clientUrl.js +44 -0
- package/dist/routes/root/scripts/clientUrl.js.map +1 -0
- package/dist/routes/root/scripts/config.d.ts +6 -0
- package/dist/routes/root/scripts/config.d.ts.map +1 -0
- package/dist/routes/root/scripts/config.js +110 -24
- package/dist/routes/root/scripts/config.js.map +1 -1
- package/dist/routes/root/scripts/index.d.ts +1 -0
- package/dist/routes/root/scripts/index.d.ts.map +1 -0
- package/dist/routes/root/scripts/shared.d.ts +1 -0
- package/dist/routes/root/scripts/shared.d.ts.map +1 -0
- package/dist/routes/root/scripts/shared.js +112 -26
- package/dist/routes/root/scripts/shared.js.map +1 -1
- package/dist/routes/root/scripts/status.d.ts +1 -0
- package/dist/routes/root/scripts/status.d.ts.map +1 -0
- package/dist/routes/root/scripts/status.handlers.d.ts +23 -33
- package/dist/routes/root/scripts/status.handlers.d.ts.map +1 -0
- package/dist/routes/root/scripts/status.handlers.js +46 -92
- package/dist/routes/root/scripts/status.handlers.js.map +1 -1
- package/dist/routes/root/scripts/status.js +21 -8
- package/dist/routes/root/scripts/status.js.map +1 -1
- package/dist/routes/root/styles.d.ts +1 -0
- package/dist/routes/root/styles.d.ts.map +1 -0
- package/dist/routes/root/styles.js +7 -4
- package/dist/routes/root/styles.js.map +1 -1
- package/dist/routes/services.d.ts +13 -1
- package/dist/routes/services.d.ts.map +1 -0
- package/dist/routes/services.js +81 -68
- package/dist/routes/services.js.map +1 -1
- package/dist/routes/sse.d.ts +1 -0
- package/dist/routes/sse.d.ts.map +1 -0
- package/dist/routes/sse.js +1 -1
- package/dist/routes/sse.js.map +1 -1
- package/dist/routes/streams.d.ts +2 -1
- package/dist/routes/streams.d.ts.map +1 -0
- package/dist/routes/streams.js +6 -4
- package/dist/routes/streams.js.map +1 -1
- package/dist/routes/theme.d.ts +3 -2
- package/dist/routes/theme.d.ts.map +1 -0
- package/dist/routes/theme.js +6 -5
- package/dist/routes/theme.js.map +1 -1
- package/dist/routes/ui.d.ts +3 -1
- package/dist/routes/ui.d.ts.map +1 -0
- package/dist/routes/ui.js +16 -4
- package/dist/routes/ui.js.map +1 -1
- package/dist/routes/upgrade.d.ts +1 -0
- package/dist/routes/upgrade.d.ts.map +1 -0
- package/dist/routes/upgrade.js +6 -2
- package/dist/routes/upgrade.js.map +1 -1
- package/dist/service/commands.context.d.ts +1 -0
- package/dist/service/commands.context.d.ts.map +1 -0
- package/dist/service/commands.context.js +4 -3
- package/dist/service/commands.context.js.map +1 -1
- package/dist/service/commands.d.ts +1 -0
- package/dist/service/commands.d.ts.map +1 -0
- package/dist/service/commands.js +10 -13
- package/dist/service/commands.js.map +1 -1
- package/dist/service/generators.context.d.ts +1 -0
- package/dist/service/generators.context.d.ts.map +1 -0
- package/dist/service/generators.context.js +1 -1
- package/dist/service/generators.context.js.map +1 -1
- package/dist/service/generators.d.ts +4 -3
- package/dist/service/generators.d.ts.map +1 -0
- package/dist/service/generators.js +111 -31
- package/dist/service/generators.js.map +1 -1
- package/dist/service/index.d.ts +1 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/streaming/captureLock.d.ts +44 -0
- package/dist/streaming/captureLock.d.ts.map +1 -0
- package/dist/streaming/captureLock.js +95 -0
- package/dist/streaming/captureLock.js.map +1 -0
- package/dist/streaming/captureSession.d.ts +31 -0
- package/dist/streaming/captureSession.d.ts.map +1 -0
- package/dist/streaming/captureSession.js +54 -0
- package/dist/streaming/captureSession.js.map +1 -0
- package/dist/streaming/clients.d.ts +1 -0
- package/dist/streaming/clients.d.ts.map +1 -0
- package/dist/streaming/codec.d.ts +1 -0
- package/dist/streaming/codec.d.ts.map +1 -0
- package/dist/streaming/fmp4Segmenter.d.ts +29 -2
- package/dist/streaming/fmp4Segmenter.d.ts.map +1 -0
- package/dist/streaming/fmp4Segmenter.js +79 -26
- package/dist/streaming/fmp4Segmenter.js.map +1 -1
- package/dist/streaming/hls.d.ts +18 -7
- package/dist/streaming/hls.d.ts.map +1 -0
- package/dist/streaming/hls.js +220 -120
- package/dist/streaming/hls.js.map +1 -1
- package/dist/streaming/hlsResume.d.ts +1 -0
- package/dist/streaming/hlsResume.d.ts.map +1 -0
- package/dist/streaming/hlsResume.js +1 -1
- package/dist/streaming/hlsResume.js.map +1 -1
- package/dist/streaming/hlsSegments.d.ts +59 -2
- package/dist/streaming/hlsSegments.d.ts.map +1 -0
- package/dist/streaming/hlsSegments.js +147 -17
- package/dist/streaming/hlsSegments.js.map +1 -1
- package/dist/streaming/lifecycle.d.ts +4 -1
- package/dist/streaming/lifecycle.d.ts.map +1 -0
- package/dist/streaming/lifecycle.js +65 -85
- package/dist/streaming/lifecycle.js.map +1 -1
- package/dist/streaming/monitor.d.ts +6 -4
- package/dist/streaming/monitor.d.ts.map +1 -0
- package/dist/streaming/monitor.js +343 -145
- package/dist/streaming/monitor.js.map +1 -1
- package/dist/streaming/mp4Parser.d.ts +5 -4
- package/dist/streaming/mp4Parser.d.ts.map +1 -0
- package/dist/streaming/mp4Parser.js +36 -13
- package/dist/streaming/mp4Parser.js.map +1 -1
- package/dist/streaming/mpegts.d.ts +16 -0
- package/dist/streaming/mpegts.d.ts.map +1 -0
- package/dist/streaming/mpegts.js +61 -17
- package/dist/streaming/mpegts.js.map +1 -1
- package/dist/streaming/playlistBuilder.d.ts +1 -0
- package/dist/streaming/playlistBuilder.d.ts.map +1 -0
- package/dist/streaming/preroll.d.ts +32 -5
- package/dist/streaming/preroll.d.ts.map +1 -0
- package/dist/streaming/preroll.js +70 -32
- package/dist/streaming/preroll.js.map +1 -1
- package/dist/streaming/pretune.d.ts +26 -1
- package/dist/streaming/pretune.d.ts.map +1 -0
- package/dist/streaming/pretune.js +22 -24
- package/dist/streaming/pretune.js.map +1 -1
- package/dist/streaming/pretuneTimers.d.ts +24 -0
- package/dist/streaming/pretuneTimers.d.ts.map +1 -0
- package/dist/streaming/pretuneTimers.js +56 -0
- package/dist/streaming/pretuneTimers.js.map +1 -0
- package/dist/streaming/recovery.d.ts +139 -5
- package/dist/streaming/recovery.d.ts.map +1 -0
- package/dist/streaming/recovery.js +160 -16
- package/dist/streaming/recovery.js.map +1 -1
- package/dist/streaming/registry.d.ts +27 -9
- package/dist/streaming/registry.d.ts.map +1 -0
- package/dist/streaming/registry.js +21 -3
- package/dist/streaming/registry.js.map +1 -1
- package/dist/streaming/setup.d.ts +157 -29
- package/dist/streaming/setup.d.ts.map +1 -0
- package/dist/streaming/setup.js +1034 -458
- package/dist/streaming/setup.js.map +1 -1
- package/dist/streaming/showInfo.d.ts +21 -1
- package/dist/streaming/showInfo.d.ts.map +1 -0
- package/dist/streaming/showInfo.js +31 -16
- package/dist/streaming/showInfo.js.map +1 -1
- package/dist/streaming/statusEmitter.d.ts +10 -10
- package/dist/streaming/statusEmitter.d.ts.map +1 -0
- package/dist/streaming/statusEmitter.js +5 -8
- package/dist/streaming/statusEmitter.js.map +1 -1
- package/dist/types/channels.d.ts +16 -4
- package/dist/types/channels.d.ts.map +1 -0
- package/dist/types/channels.js +4 -2
- package/dist/types/channels.js.map +1 -1
- package/dist/types/config.d.ts +16 -5
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/index.d.ts +3 -2
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/profiles.d.ts +6 -4
- package/dist/types/profiles.d.ts.map +1 -0
- package/dist/types/selection.d.ts +31 -3
- package/dist/types/selection.d.ts.map +1 -0
- package/dist/types/selection.js +4 -2
- package/dist/types/selection.js.map +1 -1
- package/dist/types/shared.d.ts +1 -0
- package/dist/types/shared.d.ts.map +1 -0
- package/dist/types/streaming.d.ts +8 -0
- package/dist/types/streaming.d.ts.map +1 -0
- package/dist/upgrade/commands.context.d.ts +1 -0
- package/dist/upgrade/commands.context.d.ts.map +1 -0
- package/dist/upgrade/commands.context.js +14 -10
- package/dist/upgrade/commands.context.js.map +1 -1
- package/dist/upgrade/commands.d.ts +8 -15
- package/dist/upgrade/commands.d.ts.map +1 -0
- package/dist/upgrade/commands.js +27 -28
- package/dist/upgrade/commands.js.map +1 -1
- package/dist/upgrade/detection.context.d.ts +1 -0
- package/dist/upgrade/detection.context.d.ts.map +1 -0
- package/dist/upgrade/detection.context.js +4 -1
- package/dist/upgrade/detection.context.js.map +1 -1
- package/dist/upgrade/detection.d.ts +9 -7
- package/dist/upgrade/detection.d.ts.map +1 -0
- package/dist/upgrade/detection.js +23 -54
- package/dist/upgrade/detection.js.map +1 -1
- package/dist/upgrade/index.d.ts +2 -0
- package/dist/upgrade/index.d.ts.map +1 -0
- package/dist/upgrade/index.js +1 -0
- package/dist/upgrade/index.js.map +1 -1
- package/dist/upgrade/lifecycle.context.d.ts +20 -0
- package/dist/upgrade/lifecycle.context.d.ts.map +1 -0
- package/dist/upgrade/lifecycle.context.js +47 -0
- package/dist/upgrade/lifecycle.context.js.map +1 -0
- package/dist/upgrade/lifecycle.d.ts +72 -0
- package/dist/upgrade/lifecycle.d.ts.map +1 -0
- package/dist/upgrade/lifecycle.js +175 -0
- package/dist/upgrade/lifecycle.js.map +1 -0
- package/dist/upgrade/pathHandle.d.ts +30 -0
- package/dist/upgrade/pathHandle.d.ts.map +1 -0
- package/dist/upgrade/pathHandle.js +102 -0
- package/dist/upgrade/pathHandle.js.map +1 -0
- package/dist/utils/bootSession.context.d.ts +16 -0
- package/dist/utils/bootSession.context.d.ts.map +1 -0
- package/dist/utils/bootSession.context.js +60 -0
- package/dist/utils/bootSession.context.js.map +1 -0
- package/dist/utils/bootSession.d.ts +17 -0
- package/dist/utils/bootSession.d.ts.map +1 -0
- package/dist/utils/bootSession.js +20 -0
- package/dist/utils/bootSession.js.map +1 -0
- package/dist/utils/chromeFetch.d.ts +1 -0
- package/dist/utils/chromeFetch.d.ts.map +1 -0
- package/dist/utils/cliOutput.d.ts +1 -0
- package/dist/utils/cliOutput.d.ts.map +1 -0
- package/dist/utils/clock.d.ts +5 -4
- package/dist/utils/clock.d.ts.map +1 -0
- package/dist/utils/clock.js +19 -16
- package/dist/utils/clock.js.map +1 -1
- package/dist/utils/debugFilter.d.ts +9 -1
- package/dist/utils/debugFilter.d.ts.map +1 -0
- package/dist/utils/debugFilter.js +60 -33
- package/dist/utils/debugFilter.js.map +1 -1
- package/dist/utils/delay.d.ts +48 -15
- package/dist/utils/delay.d.ts.map +1 -0
- package/dist/utils/delay.js +73 -20
- package/dist/utils/delay.js.map +1 -1
- package/dist/utils/errors.d.ts +32 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +45 -4
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/evaluate.d.ts +1 -0
- package/dist/utils/evaluate.d.ts.map +1 -0
- package/dist/utils/evaluate.js +29 -23
- package/dist/utils/evaluate.js.map +1 -1
- package/dist/utils/ffmpeg.context.d.ts +1 -0
- package/dist/utils/ffmpeg.context.d.ts.map +1 -0
- package/dist/utils/ffmpeg.context.js.map +1 -1
- package/dist/utils/ffmpeg.d.ts +29 -7
- package/dist/utils/ffmpeg.d.ts.map +1 -0
- package/dist/utils/ffmpeg.js +32 -14
- package/dist/utils/ffmpeg.js.map +1 -1
- package/dist/utils/fileLogger.d.ts +3 -1
- package/dist/utils/fileLogger.d.ts.map +1 -0
- package/dist/utils/fileLogger.js +64 -29
- package/dist/utils/fileLogger.js.map +1 -1
- package/dist/utils/format.d.ts +14 -1
- package/dist/utils/format.d.ts.map +1 -0
- package/dist/utils/format.js +19 -5
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logEmitter.d.ts +1 -0
- package/dist/utils/logEmitter.d.ts.map +1 -0
- package/dist/utils/logger.d.ts +1 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +10 -6
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/m3u.d.ts +3 -2
- package/dist/utils/m3u.d.ts.map +1 -0
- package/dist/utils/m3u.js +4 -3
- package/dist/utils/m3u.js.map +1 -1
- package/dist/utils/markup.d.ts +13 -1
- package/dist/utils/markup.d.ts.map +1 -0
- package/dist/utils/markup.js +28 -4
- package/dist/utils/markup.js.map +1 -1
- package/dist/utils/memo.d.ts +3 -2
- package/dist/utils/memo.d.ts.map +1 -0
- package/dist/utils/memo.js +3 -3
- package/dist/utils/morganStream.d.ts +1 -0
- package/dist/utils/morganStream.d.ts.map +1 -0
- package/dist/utils/network.d.ts +1 -0
- package/dist/utils/network.d.ts.map +1 -0
- package/dist/utils/network.js +2 -2
- package/dist/utils/pid.d.ts +3 -25
- package/dist/utils/pid.d.ts.map +1 -0
- package/dist/utils/pid.js +10 -49
- package/dist/utils/pid.js.map +1 -1
- package/dist/utils/platform.d.ts +3 -1
- package/dist/utils/platform.d.ts.map +1 -0
- package/dist/utils/platform.js +2 -1
- package/dist/utils/platform.js.map +1 -1
- package/dist/utils/processInspector.context.d.ts +8 -0
- package/dist/utils/processInspector.context.d.ts.map +1 -0
- package/dist/utils/processInspector.context.js +106 -0
- package/dist/utils/processInspector.context.js.map +1 -0
- package/dist/utils/processInspector.d.ts +55 -0
- package/dist/utils/processInspector.d.ts.map +1 -0
- package/dist/utils/processInspector.js +127 -0
- package/dist/utils/processInspector.js.map +1 -0
- package/dist/utils/retry.d.ts +25 -2
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +33 -6
- package/dist/utils/retry.js.map +1 -1
- package/dist/utils/runtimeIdentity.context.d.ts +7 -0
- package/dist/utils/runtimeIdentity.context.d.ts.map +1 -0
- package/dist/utils/runtimeIdentity.context.js +43 -0
- package/dist/utils/runtimeIdentity.context.js.map +1 -0
- package/dist/utils/runtimeIdentity.d.ts +98 -0
- package/dist/utils/runtimeIdentity.d.ts.map +1 -0
- package/dist/utils/runtimeIdentity.js +181 -0
- package/dist/utils/runtimeIdentity.js.map +1 -0
- package/dist/utils/sanitize.d.ts +1 -0
- package/dist/utils/sanitize.d.ts.map +1 -0
- package/dist/utils/streamContext.d.ts +2 -1
- package/dist/utils/streamContext.d.ts.map +1 -0
- package/dist/utils/streamContext.js +1 -1
- package/dist/utils/timing.d.ts +2 -1
- package/dist/utils/timing.d.ts.map +1 -0
- package/dist/utils/timing.js +0 -5
- package/dist/utils/timing.js.map +1 -1
- package/dist/utils/version.d.ts +1 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +47 -13
- package/dist/utils/version.js.map +1 -1
- package/package.json +26 -20
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { LOG, delay, formatError } from "../../utils/index.js";
|
|
2
|
-
import { logAvailableChannels, normalizeChannelName } from "./shared.js";
|
|
1
|
+
import { LOG, boundedWait, delay, formatError } from "../../utils/index.js";
|
|
2
|
+
import { installOncePerPage, logAvailableChannels, normalizeChannelName } from "./shared.js";
|
|
3
3
|
import { CONFIG } from "../../config/index.js";
|
|
4
|
+
import { buildDiscoveredChannelsFromCache } from "./cache.js";
|
|
4
5
|
// Unified channel cache for DirecTV Stream. Maps normalized channel names to their combined discovery and tuning data. Populated by the webpack interceptor's
|
|
5
6
|
// Redux store extraction, emitted as a [DIRECTV-CHANNELS] console signal and parsed by the console listener. Cleared on browser disconnect via clearDirectvCache().
|
|
6
7
|
const directvChannelCache = new Map();
|
|
@@ -13,14 +14,20 @@ const directvPagesWithListeners = new WeakSet();
|
|
|
13
14
|
const pendingTunes = new WeakMap();
|
|
14
15
|
// DirecTV guide URL. All tunes navigate here - the webpack interceptor handles channel selection during page load.
|
|
15
16
|
const DIRECTV_GUIDE_URL = "https://stream.directv.com/guide";
|
|
16
|
-
//
|
|
17
|
-
//
|
|
18
|
-
//
|
|
19
|
-
const
|
|
20
|
-
// Maximum time to wait for the
|
|
21
|
-
//
|
|
22
|
-
//
|
|
23
|
-
|
|
17
|
+
// The in-page interceptor's overall poll budget for the React mount, passed into the injected script as an argument so the Node-side waits can derive from it. The
|
|
18
|
+
// interceptor is the inner operation and each Node-side timeout is its outer bound, so the derivations below keep that relationship in the compiler's hands rather
|
|
19
|
+
// than in a comment that a later edit to one number can quietly falsify.
|
|
20
|
+
const INTERCEPTOR_POLL_BUDGET_MS = 10000;
|
|
21
|
+
// Maximum time to wait for the webpack interceptor to emit a tune result. This covers the time from page navigation start through webpack chunk interception, React
|
|
22
|
+
// fiber tree traversal, Redux store discovery, channel matching, and playConsumable dispatch. The margin over the poll budget covers only the console-message
|
|
23
|
+
// bridging that follows, since the tune signal is emitted the instant the dispatch completes. Deriving it rather than picking a smaller literal is the deliberate
|
|
24
|
+
// trade: a genuinely dead interceptor delays the logo-click fallback by the margin, and in exchange no tune is abandoned while the in-page poll still has budget
|
|
25
|
+
// left to succeed with.
|
|
26
|
+
const TUNE_TIMEOUT = INTERCEPTOR_POLL_BUDGET_MS + 2000;
|
|
27
|
+
// Maximum time to wait for the [DIRECTV-CHANNELS] console signal during discovery. The Redux store extraction polls for the React mount point within the budget
|
|
28
|
+
// above, with a 5-second milestone timeout after DOM content appears. The margin covers the signal processing that follows a successful in-page extraction, so this
|
|
29
|
+
// Node-side wait cannot expire while the browser script is still within its own budget.
|
|
30
|
+
const DISCOVERY_TIMEOUT = INTERCEPTOR_POLL_BUDGET_MS + 5000;
|
|
24
31
|
// Network names that have local affiliates on DirecTV Stream, named as "{NETWORK}-{CALLSIGN}" (e.g., "ABC-WABC", "PBS-WNET"). Used for cache aliasing in
|
|
25
32
|
// processChannelLineup. The in-page interceptor and logo click fallback perform generic prefix matching independent of this set.
|
|
26
33
|
const DIRECTV_LOCAL_NETWORKS = new Set(["abc", "cbs", "cw", "fox", "nbc", "pbs"]);
|
|
@@ -96,9 +103,9 @@ function processChannelLineup(json) {
|
|
|
96
103
|
}
|
|
97
104
|
}
|
|
98
105
|
/**
|
|
99
|
-
* Sets up console listeners on the page to bridge in-page console signals from the evaluateOnNewDocument interceptor to the Node.js process. Handles
|
|
100
|
-
* types: [DIRECTV-CHANNELS] for channel lineup data, [DIRECTV-TUNE-OK] and [DIRECTV-TUNE-FAIL] for tune result signaling, and
|
|
101
|
-
* logging. Uses a WeakSet to prevent duplicate listener registration on the same page.
|
|
106
|
+
* Sets up console listeners on the page to bridge in-page console signals from the evaluateOnNewDocument interceptor to the Node.js process. Handles the console
|
|
107
|
+
* signal types the interceptor emits: [DIRECTV-CHANNELS] for channel lineup data, [DIRECTV-TUNE-OK] and [DIRECTV-TUNE-FAIL] for tune result signaling, and
|
|
108
|
+
* [DIRECTV-DIAG] for diagnostic logging. Uses a WeakSet to prevent duplicate listener registration on the same page.
|
|
102
109
|
* @param page - The Puppeteer page object.
|
|
103
110
|
*/
|
|
104
111
|
function setupConsoleListeners(page) {
|
|
@@ -135,7 +142,7 @@ function setupConsoleListeners(page) {
|
|
|
135
142
|
* tree, emits the channel lineup, and optionally dispatches playConsumable to tune to a specific channel. The script runs before any SPA JavaScript and is
|
|
136
143
|
* entirely self-contained (no Node.js references).
|
|
137
144
|
*
|
|
138
|
-
* The interceptor
|
|
145
|
+
* The interceptor proceeds through these phases:
|
|
139
146
|
* 1. Main-frame guard (skip ad iframes)
|
|
140
147
|
* 2. Wrap webpackChunk push to capture __webpack_require__ from natural chunk callbacks (defense-in-depth for future webpack builds)
|
|
141
148
|
* 3. Poll for React fiber root, BFS for Redux store, extract channel lineup, emit [DIRECTV-CHANNELS]
|
|
@@ -146,7 +153,11 @@ function setupConsoleListeners(page) {
|
|
|
146
153
|
* @param discoverOnly - When true, skip the tune phase and only extract the channel lineup.
|
|
147
154
|
*/
|
|
148
155
|
async function installDirectTuneInterceptor(page, channelName, discoverOnly) {
|
|
149
|
-
|
|
156
|
+
// Gate the evaluateOnNewDocument install through installOncePerPage. resolveDirectvDirectUrl runs this before every navigation, and the monitor's recovery tune
|
|
157
|
+
// resolves a direct URL exactly as stream setup did - so a recovery re-tune calls it again on the same page. Without the gate, each re-tune would stack another
|
|
158
|
+
// webpack-interceptor script; every subsequent navigation would then run multiple competing chunk-push wrappers and Redux-store polls in the same frame. The
|
|
159
|
+
// discovery path uses its own fresh page, so the single per-page key never blocks a discover-then-tune sequence on distinct pages.
|
|
160
|
+
await installOncePerPage(page, "webpack-interceptor", async () => await page.evaluateOnNewDocument((targetName, discoverOnlyFlag, maxPollTime) => {
|
|
150
161
|
// Phase 1: Main-frame guard. The evaluateOnNewDocument script runs in every frame, including ad iframes. We only want to intercept webpack chunks in the main
|
|
151
162
|
// frame where the DirecTV SPA loads.
|
|
152
163
|
try {
|
|
@@ -192,9 +203,9 @@ async function installDirectTuneInterceptor(page, channelName, discoverOnly) {
|
|
|
192
203
|
};
|
|
193
204
|
// Phase 3: Poll for React fiber root, extract Redux store and channel lineup. React mounts asynchronously after webpack chunks load, so we poll the DOM for
|
|
194
205
|
// the fiber root at 200ms intervals. Once found, BFS through the fiber tree to locate pendingProps.store (the Redux store), then extract the channel lineup
|
|
195
|
-
// from the store's state.
|
|
206
|
+
// from the store's state. The overall budget for that poll arrives as maxPollTime, passed in from Node so the waits on the other side of the console bridge
|
|
207
|
+
// derive from the same number this loop spends.
|
|
196
208
|
const POLL_INTERVAL = 200;
|
|
197
|
-
const MAX_POLL_TIME = 10000;
|
|
198
209
|
const pollStart = Date.now();
|
|
199
210
|
// React property prefixes to search for on candidate mount elements. Covers React 18 createRoot (__reactContainer$), React 17-18 individual fibers
|
|
200
211
|
// (__reactFiber$), and React 16 legacy (__reactInternalInstance$). Defined once and shared across poll iterations.
|
|
@@ -213,10 +224,10 @@ async function installDirectTuneInterceptor(page, channelName, discoverOnly) {
|
|
|
213
224
|
// several poll iterations may pass before the data arrives.
|
|
214
225
|
let channelsEmptyLogged = false;
|
|
215
226
|
const pollTimer = setInterval(() => {
|
|
216
|
-
if ((Date.now() - pollStart) >
|
|
227
|
+
if ((Date.now() - pollStart) > maxPollTime) {
|
|
217
228
|
clearInterval(pollTimer);
|
|
218
229
|
// eslint-disable-next-line no-console
|
|
219
|
-
console.log("[DIRECTV-DIAG] Overall poll timeout (" + String(
|
|
230
|
+
console.log("[DIRECTV-DIAG] Overall poll timeout (" + String(maxPollTime) + "ms) - " +
|
|
220
231
|
(cachedStore ? "Redux store found but channel lineup never populated." : "Redux store not found."));
|
|
221
232
|
if (!discoverOnlyFlag) {
|
|
222
233
|
// eslint-disable-next-line no-console
|
|
@@ -314,8 +325,8 @@ async function installDirectTuneInterceptor(page, channelName, discoverOnly) {
|
|
|
314
325
|
console.log("[DIRECTV-DIAG] Found Redux store after " + String(Date.now() - pollStart) + "ms (" + String(visited) + " nodes visited).");
|
|
315
326
|
}
|
|
316
327
|
// Phase 3b: Extract the channel lineup from the Redux store state. The store is found early (~400ms after page load) but the SPA fetches channel data
|
|
317
|
-
// asynchronously. We poll getState() each interval until the lineup appears. The validated path is state.channels.channelArrays (a
|
|
318
|
-
// Fallback paths cover plausible restructurings in future app versions.
|
|
328
|
+
// asynchronously. We poll getState() each interval until the lineup appears. The validated path is state.channels.channelArrays (a ~152-element array,
|
|
329
|
+
// though the exact count is market/DMA-dependent). Fallback paths cover plausible restructurings in future app versions.
|
|
319
330
|
const state = cachedStore.getState();
|
|
320
331
|
let channels = [];
|
|
321
332
|
if (state["channels"]) {
|
|
@@ -472,6 +483,10 @@ async function installDirectTuneInterceptor(page, channelName, discoverOnly) {
|
|
|
472
483
|
// payload to internally dispatch Redux actions for authorization, CDN token generation, manifest construction, and player initialization. This is NOT a
|
|
473
484
|
// Redux action creator - do not wrap the call in store.dispatch().
|
|
474
485
|
try {
|
|
486
|
+
// The payload mirrors the live-linear consumable shape DirecTV's player expects for the "on now" program of a linear channel. These are reverse-engineered
|
|
487
|
+
// values for an undocumented API: consumableType "LINEAR", the "OnNow" badge, the isPlayable constraint, makeFullscreen, and restart are the validated
|
|
488
|
+
// fields a successful live tune requires. duration is a nominal one-hour placeholder (3600 seconds) for the open-ended live tile, not a real program
|
|
489
|
+
// length - the player treats LINEAR content as continuous and does not honor this value.
|
|
475
490
|
playConsumableFn({
|
|
476
491
|
consumable: {
|
|
477
492
|
augmentation: { constraints: { isPlayable: true } },
|
|
@@ -494,7 +509,7 @@ async function installDirectTuneInterceptor(page, channelName, discoverOnly) {
|
|
|
494
509
|
console.log("[DIRECTV-TUNE-FAIL] Dispatch error: " + String(err));
|
|
495
510
|
}
|
|
496
511
|
}, POLL_INTERVAL);
|
|
497
|
-
}, channelName, discoverOnly);
|
|
512
|
+
}, channelName, discoverOnly, INTERCEPTOR_POLL_BUDGET_MS));
|
|
498
513
|
}
|
|
499
514
|
/**
|
|
500
515
|
* Installs the DirecTV webpack interceptor before navigation. Called by the coordinator's resolveDirectUrl before page.goto fires. Always returns null so
|
|
@@ -546,22 +561,20 @@ async function directvGridStrategy(page, profile) {
|
|
|
546
561
|
// or [DIRECTV-TUNE-FAIL] when the playConsumable dispatch completes.
|
|
547
562
|
const tuneState = pendingTunes.get(page);
|
|
548
563
|
if (tuneState) {
|
|
549
|
-
//
|
|
550
|
-
//
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
// Clean up after resolution or timeout. In the success case the console listener already resolved the promise; in the timeout case this removes the
|
|
556
|
-
// stale entry so a late-arriving console signal is a no-op.
|
|
564
|
+
// Bound the tune wait. The three outcomes ride the result value directly: true is a tune the interceptor confirmed, false is one it reported as failed,
|
|
565
|
+
// and null is no signal at all. Keeping "reported failure" separate from "nothing arrived" is what tells us whether the interceptor ran and failed or
|
|
566
|
+
// stalled silently.
|
|
567
|
+
const tuned = await boundedWait(tuneState.promise, TUNE_TIMEOUT);
|
|
568
|
+
// Clean up after resolution or lapse. In the success case the console listener already resolved the promise; on a lapse this removes the stale entry so a
|
|
569
|
+
// late-arriving console signal is a no-op.
|
|
557
570
|
pendingTunes.delete(page);
|
|
558
|
-
if (
|
|
571
|
+
if (tuned) {
|
|
559
572
|
LOG.debug("tuning:directv", "Interceptor tune succeeded for %s.", channelName);
|
|
560
573
|
return { directTune: true, success: true };
|
|
561
574
|
}
|
|
562
575
|
// Invalidate the cache entry so the next tune rediscovers the channel with fresh IDs from the Redux store rather than retrying with the same stale data.
|
|
563
576
|
directvChannelCache.delete(normalizeChannelName(channelName));
|
|
564
|
-
if (
|
|
577
|
+
if (tuned === false) {
|
|
565
578
|
LOG.debug("tuning:directv", "Interceptor reported tune failure for %s. Invalidated cache entry. Falling back to logo click.", channelName);
|
|
566
579
|
}
|
|
567
580
|
else {
|
|
@@ -590,7 +603,7 @@ async function directvLogoClickFallback(page, channelName) {
|
|
|
590
603
|
await page.waitForSelector("[aria-label^=\"view \"]", { timeout: CONFIG.streaming.videoTimeout, visible: true });
|
|
591
604
|
}
|
|
592
605
|
catch {
|
|
593
|
-
return { reason: "DirecTV guide grid did not load (no channel logos found).", success: false };
|
|
606
|
+
return { guideUnavailable: true, reason: "DirecTV guide grid did not load (no channel logos found).", success: false };
|
|
594
607
|
}
|
|
595
608
|
// Find and scroll to the target channel's logo. We use DOM element.click() rather than coordinate-based page.mouse.click because DirecTV has an invisible
|
|
596
609
|
// overlay (React Native for Web Pressable) that intercepts coordinate-based clicks. DOM click dispatches directly to the element, bypassing coordinate
|
|
@@ -691,17 +704,7 @@ async function directvLogoClickFallback(page, channelName) {
|
|
|
691
704
|
* @returns Sorted array of discovered channels.
|
|
692
705
|
*/
|
|
693
706
|
function buildDirectvDiscoveredChannels() {
|
|
694
|
-
|
|
695
|
-
const seen = new Set();
|
|
696
|
-
for (const entry of directvChannelCache.values()) {
|
|
697
|
-
if (seen.has(entry.displayName)) {
|
|
698
|
-
continue;
|
|
699
|
-
}
|
|
700
|
-
seen.add(entry.displayName);
|
|
701
|
-
channels.push({ channelSelector: entry.displayName, name: entry.displayName });
|
|
702
|
-
}
|
|
703
|
-
channels.sort((a, b) => a.name.localeCompare(b.name));
|
|
704
|
-
return channels;
|
|
707
|
+
return buildDiscoveredChannelsFromCache(directvChannelCache.values(), (entry) => ({ channelSelector: entry.displayName, name: entry.displayName }));
|
|
705
708
|
}
|
|
706
709
|
/**
|
|
707
710
|
* Discovers all channels from DirecTV Stream by installing the webpack interceptor with discoverOnly=true, navigating to the guide page, and waiting for the
|
|
@@ -728,9 +731,12 @@ async function discoverDirectvChannels(page) {
|
|
|
728
731
|
return [];
|
|
729
732
|
}
|
|
730
733
|
await page.goto(DIRECTV_GUIDE_URL, { timeout: CONFIG.streaming.navigationTimeout, waitUntil: "load" });
|
|
731
|
-
// Wait for the channel lineup to be emitted by the interceptor. The Redux store extraction polls at 200ms intervals in the browser context.
|
|
734
|
+
// Wait for the channel lineup to be emitted by the interceptor. The Redux store extraction polls at 200ms intervals in the browser context. The page check ends
|
|
735
|
+
// the wait as soon as the page is gone: a closed page can never deliver another console signal, so waiting out the remaining clock would only postpone this
|
|
736
|
+
// walk's settlement - and a refresh that cancelled this walk by closing its page waits on that settlement before it clears the caches. The empty-result path
|
|
737
|
+
// below handles the early exit.
|
|
732
738
|
const discoveryStart = Date.now();
|
|
733
|
-
while (!directvFullyDiscovered && ((Date.now() - discoveryStart) < DISCOVERY_TIMEOUT)) {
|
|
739
|
+
while (!directvFullyDiscovered && !page.isClosed() && ((Date.now() - discoveryStart) < DISCOVERY_TIMEOUT)) {
|
|
734
740
|
// eslint-disable-next-line no-await-in-loop
|
|
735
741
|
await delay(500);
|
|
736
742
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directv.js","sourceRoot":"","sources":["../../../src/browser/tuning/directv.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"directv.js","sourceRoot":"","sources":["../../../src/browser/tuning/directv.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,gCAAgC,EAAE,MAAM,YAAY,CAAC;AAa9D,8JAA8J;AAC9J,oKAAoK;AACpK,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA+B,CAAC;AAEnE,oKAAoK;AACpK,0JAA0J;AAC1J,gFAAgF;AAChF,IAAI,sBAAsB,GAAG,KAAK,CAAC;AAEnC,yFAAyF;AACzF,MAAM,yBAAyB,GAAG,IAAI,OAAO,EAAQ,CAAC;AAUtD,MAAM,YAAY,GAAG,IAAI,OAAO,EAAmB,CAAC;AAEpD,mHAAmH;AACnH,MAAM,iBAAiB,GAAG,kCAAkC,CAAC;AAE7D,mKAAmK;AACnK,mKAAmK;AACnK,yEAAyE;AACzE,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEzC,oKAAoK;AACpK,8JAA8J;AAC9J,kKAAkK;AAClK,iKAAiK;AACjK,wBAAwB;AACxB,MAAM,YAAY,GAAG,0BAA0B,GAAG,IAAI,CAAC;AAEvD,gKAAgK;AAChK,oKAAoK;AACpK,wFAAwF;AACxF,MAAM,iBAAiB,GAAG,0BAA0B,GAAG,IAAI,CAAC;AAE5D,yJAAyJ;AACzJ,iIAAiI;AACjI,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAE,CAAC,CAAC;AAEpF;;;;GAIG;AACH,SAAS,iBAAiB;IAExB,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAC5B,sBAAsB,GAAG,KAAK,CAAC;AACjC,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,IAAY;IAExC,IAAI,QAAgG,CAAC;IAErG,IAAI,CAAC;QAEH,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAoB,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QAEP,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,0CAA0C,CAAC,CAAC;QAExE,OAAO;IACT,CAAC;IAED,IAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAEvD,OAAO;IACT,CAAC;IAED,iKAAiK;IACjK,yIAAyI;IACzI,KAAI,MAAM,OAAO,IAAI,sBAAsB,EAAE,CAAC;QAE5C,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAI,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAEzB,IAAG,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;YAEnD,MAAM,UAAU,GAAG,oBAAoB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YAExD,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE;gBAElC,QAAQ,EAAE,EAAE,CAAC,QAAQ,IAAI,EAAE;gBAC3B,SAAS,EAAE,EAAE,CAAC,SAAS;gBACvB,WAAW,EAAE,EAAE,CAAC,WAAW;gBAC3B,UAAU,EAAE,EAAE,CAAC,UAAU;aAC1B,CAAC,CAAC;YAEH,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,IAAG,KAAK,GAAG,CAAC,EAAE,CAAC;QAEb,sBAAsB,GAAG,IAAI,CAAC;QAE9B,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,wCAAwC,EAAE,KAAK,CAAC,CAAC;QAE7E,wJAAwJ;QACxJ,2IAA2I;QAC3I,KAAI,MAAM,OAAO,IAAI,sBAAsB,EAAE,CAAC;YAE5C,sGAAsG;YACtG,IAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAEpC,SAAS;YACX,CAAC;YAED,wJAAwJ;YACxJ,gKAAgK;YAChK,MAAM,UAAU,GAAkD,EAAE,CAAC;YAErE,KAAI,MAAM,CAAE,GAAG,EAAE,KAAK,CAAE,IAAI,mBAAmB,EAAE,CAAC;gBAEhD,IAAG,GAAG,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;oBAEjC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAEtD,MAAM,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAEvC,IAAG,gBAAgB,EAAE,CAAC;gBAEpB,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAEzD,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,mCAAmC,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAChH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,IAAU;IAEvC,IAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAEvC,OAAO;IACT,CAAC;IAED,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;QAEzB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAExB,mFAAmF;QACnF,IAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAE1C,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;YAE/D,OAAO;QACT,CAAC;QAED,yHAAyH;QACzH,IAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAExC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAEtC,OAAO;QACT,CAAC;QAED,mHAAmH;QACnH,IAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAE1C,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,0BAA0B,EAAE,IAAI,CAAC,CAAC;YAC9D,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAEvC,OAAO;QACT,CAAC;QAED,4FAA4F;QAC5F,IAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAErC,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,4BAA4B,CAAC,IAAU,EAAE,WAAmB,EAAE,YAAqB;IAEhG,gKAAgK;IAChK,gKAAgK;IAChK,6JAA6J;IAC7J,mIAAmI;IACnI,MAAM,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAAC,CAAC,UAAkB,EAAE,gBAAyB,EAC/I,WAAmB,EAAQ,EAAE;QAE7B,8JAA8J;QAC9J,qCAAqC;QACrC,IAAI,CAAC;YAEH,IAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;gBAE9B,OAAO;YACT,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YAEP,OAAO;QACT,CAAC;QAED,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,+CAA+C,GAAG,UAAU,GAAG,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,CAAC;QAMhI,IAAI,IAAI,GAAoB,IAAI,CAAC;QAEjC,+JAA+J;QAC/J,+JAA+J;QAC/J,+JAA+J;QAC/J,6DAA6D;QAC7D,MAAM,cAAc,GAAG,0BAA0B,CAAC;QAElD,iDAAiD;QACjD,MAAM,GAAG,GAAG,MAA8C,CAAC;QAE3D,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAE3B,MAAM,UAAU,GAAG,GAAG,CAAC,cAAc,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtD,UAAU,CAAC,IAAI,GAAG,UAAS,GAAG,IAAe;YAE3C,qJAAqJ;YACrJ,uFAAuF;YACvF,KAAI,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;gBAExB,IAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;oBAE/C,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAwC,CAAC;gBAEjE,IAAG,CAAC,OAAO,QAAQ,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAE7C,uGAAuG;oBACvG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,MAAe,EAAQ,EAAE;wBAEnC,IAAI,GAAG,MAAqB,CAAC;wBAE7B,sCAAsC;wBACtC,OAAO,CAAC,GAAG,CAAC,+CAA+C,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAE,MAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC;wBAEjI,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACnB,CAAC,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,OAAO,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,4JAA4J;QAC5J,4JAA4J;QAC5J,4JAA4J;QAC5J,gDAAgD;QAChD,MAAM,aAAa,GAAG,GAAG,CAAC;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,mJAAmJ;QACnJ,mHAAmH;QACnH,MAAM,cAAc,GAAG,CAAE,mBAAmB,EAAE,eAAe,EAAE,0BAA0B,CAAE,CAAC;QAE5F,+FAA+F;QAC/F,MAAM,YAAY,GAAG,CAAC,EAAW,EAAsB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnI,8GAA8G;QAC9G,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAE/B,yJAAyJ;QACzJ,yIAAyI;QACzI,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,MAAM,oBAAoB,GAAG,IAAI,CAAC;QAKlC,IAAI,WAAW,GAAqB,IAAI,CAAC;QAEzC,wJAAwJ;QACxJ,4DAA4D;QAC5D,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAEhC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAS,EAAE;YAEvC,IAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,WAAW,EAAE,CAAC;gBAE1C,aAAa,CAAC,SAAS,CAAC,CAAC;gBAEzB,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,uCAAuC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,QAAQ;oBAClF,CAAC,WAAW,CAAC,CAAC,CAAC,uDAAuD,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBAEtG,IAAG,CAAC,gBAAgB,EAAE,CAAC;oBAErB,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,kCAAkC;wBAC5C,CAAC,WAAW,CAAC,CAAC,CAAC,gDAAgD,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC;gBACtH,CAAC;gBAED,OAAO;YACT,CAAC;YAED,oJAAoJ;YACpJ,+HAA+H;YAC/H,IAAG,CAAC,WAAW,EAAE,CAAC;gBAEhB,4IAA4I;gBAC5I,mJAAmJ;gBACnJ,IAAI,OAAO,GAAmB,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBAClE,IAAI,QAAQ,GAAuB,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAE/E,IAAG,CAAC,QAAQ,EAAE,CAAC;oBAEb,OAAO,GAAG,IAAI,CAAC;oBAEf,KAAI,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAEtD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;wBAEhC,IAAG,GAAG,EAAE,CAAC;4BAEP,OAAO,GAAG,KAAK,CAAC;4BAChB,QAAQ,GAAG,GAAG,CAAC;4BAEf,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAEzB,6HAA6H;oBAC7H,IAAG,CAAC,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;wBAE3D,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC/B,CAAC;oBAED,IAAG,eAAe,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC,GAAG,oBAAoB,CAAC,EAAE,CAAC;wBAE9E,aAAa,CAAC,SAAS,CAAC,CAAC;wBAEzB,sCAAsC;wBACtC,OAAO,CAAC,GAAG,CAAC,2EAA2E,GAAG,MAAM,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,CAAC;wBAEhI,IAAG,CAAC,gBAAgB,EAAE,CAAC;4BAErB,sCAAsC;4BACtC,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;wBACjE,CAAC;oBACH,CAAC;oBAED,OAAO;gBACT,CAAC;gBAED,mIAAmI;gBACnI,IAAG,CAAC,gBAAgB,EAAE,CAAC;oBAErB,gBAAgB,GAAG,IAAI,CAAC;oBAExB,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,+BAA+B,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,QAAQ,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,UAAU;wBACtH,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC3C,CAAC;gBAED,kJAAkJ;gBAClJ,4CAA4C;gBAC5C,MAAM,KAAK,GAAI,OAA8C,CAAC,QAAQ,CAAsC,CAAC;gBAC7G,MAAM,SAAS,GACb,CAAC,KAAK,IAAI,CAAC,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAA4B,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC;gBAElH,IAAG,CAAC,SAAS,EAAE,CAAC;oBAEd,OAAO;gBACT,CAAC;gBAED,4HAA4H;gBAC5H,MAAM,KAAK,GAA8B,CAAC,SAAS,CAAC,CAAC;gBACrD,IAAI,KAAK,GAAqB,IAAI,CAAC;gBACnC,IAAI,OAAO,GAAG,CAAC,CAAC;gBAChB,MAAM,SAAS,GAAG,IAAI,CAAC;gBAEvB,OAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;oBAElD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;oBAE3B,IAAG,CAAC,IAAI,EAAE,CAAC;wBAET,MAAM;oBACR,CAAC;oBAED,OAAO,EAAE,CAAC;oBAEV,gJAAgJ;oBAChJ,wEAAwE;oBACxE,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAmC,CAAC;oBACrE,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,IAAK,KAAK,EAAE,CAAC,OAAO,CAAoC,EAAE,CAAC,OAAO,CAAC,CAAmC,CAAC;oBAE1I,IAAG,SAAS,IAAI,CAAC,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,UAAU,CAAC,EAAE,CAAC;wBAE/G,KAAK,GAAG,SAAiC,CAAC;wBAE1C,MAAM;oBACR,CAAC;oBAED,gDAAgD;oBAChD,IAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;wBAEjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAA4B,CAAC,CAAC;oBACvD,CAAC;oBAED,IAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;wBAEnB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAA4B,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;gBAED,IAAG,CAAC,KAAK,EAAE,CAAC;oBAEV,IAAG,CAAC,kBAAkB,EAAE,CAAC;wBAEvB,kBAAkB,GAAG,IAAI,CAAC;wBAE1B,sCAAsC;wBACtC,OAAO,CAAC,GAAG,CAAC,kDAAkD,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,yDAAyD,CAAC,CAAC;oBAChJ,CAAC;oBAED,OAAO;gBACT,CAAC;gBAED,2HAA2H;gBAC3H,WAAW,GAAG,KAAK,CAAC;gBAEpB,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,yCAAyC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,kBAAkB,CAAC,CAAC;YAC1I,CAAC;YAED,sJAAsJ;YACtJ,uJAAuJ;YACvJ,yHAAyH;YACzH,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,QAAQ,GAAsF,EAAE,CAAC;YAErG,IAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;gBAErB,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAA4B,CAAC;gBAEnE,sFAAsF;gBACtF,IAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;oBAEjD,QAAQ,GAAG,aAAa,CAAC,eAAe,CAAoB,CAAC;gBAC/D,CAAC;qBAAM,IAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;oBAEjD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAoB,CAAC;gBACxD,CAAC;qBAAM,IAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;oBAEnD,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAoB,CAAC;gBAC1D,CAAC;qBAAM,IAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;oBAEtD,QAAQ,GAAG,aAAa,CAAC,aAAa,CAAoB,CAAC;gBAC7D,CAAC;YACH,CAAC;YAED,yEAAyE;YACzE,IAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;gBAErD,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAA4B,CAAC;gBAEjE,IAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;oBAE1C,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAoB,CAAC;gBACxD,CAAC;qBAAM,IAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;oBAE5C,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAoB,CAAC;gBACnD,CAAC;YACH,CAAC;YAED,IAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAEzB,qHAAqH;gBACrH,IAAG,CAAC,mBAAmB,EAAE,CAAC;oBAExB,mBAAmB,GAAG,IAAI,CAAC;oBAE3B,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,sGAAsG,CAAC,CAAC;gBACtH,CAAC;gBAED,OAAO;YACT,CAAC;YAED,uFAAuF;YACvF,aAAa,CAAC,SAAS,CAAC,CAAC;YAEzB,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,2CAA2C,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,YAAY,CAAC,CAAC;YAEnJ,kJAAkJ;YAClJ,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEvC,QAAQ,EAAE,EAAE,CAAC,QAAQ,IAAI,EAAE;gBAC3B,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE;gBACxB,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,EAAE;gBACjC,UAAU,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE;aAChC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC;YAEnD,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;YAEhE,8FAA8F;YAC9F,IAAG,gBAAgB,EAAE,CAAC;gBAEpB,OAAO;YACT,CAAC;YAED,sJAAsJ;YACtJ,4JAA4J;YAC5J,yJAAyJ;YACzJ,sJAAsJ;YACtJ,gJAAgJ;YAChJ,IAAG,CAAC,IAAI,EAAE,CAAC;gBAET,MAAM,UAAU,GAA6B,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;gBAE3D,IAAI,CAAC;oBAEH,UAAU,CAAC,IAAI,CAAC,CAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,MAAe,EAAQ,EAAE;4BAEjE,UAAU,CAAC,GAAG,GAAG,MAAkB,CAAC;wBACtC,CAAC,CAAE,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAM,GAAG,EAAE,CAAC;oBAEZ,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,6CAA6C,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3E,CAAC;gBAED,IAAG,UAAU,CAAC,GAAG,EAAE,CAAC;oBAElB,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC;oBAEtB,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,mEAAmE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC;gBACvI,CAAC;qBAAM,CAAC;oBAEN,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,qGAAqG,CAAC,CAAC;gBACrH,CAAC;YACH,CAAC;YAED,IAAG,CAAC,IAAI,EAAE,CAAC;gBAET,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,+GAA+G,CAAC,CAAC;gBAE7H,OAAO;YACT,CAAC;YAED,+IAA+I;YAC/I,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;YAC3F,MAAM,gBAAgB,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;YAE/C,yJAAyJ;YACzJ,2JAA2J;YAC3J,6FAA6F;YAC7F,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,KAAK,gBAAgB,CAAC;gBAC/F,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,gBAAgB,GAAG,GAAG,CAAC,CAAC;qBACxF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAExG,IAAG,CAAC,aAAa,EAAE,CAAC;gBAElB,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,gCAAgC,GAAG,UAAU,GAAG,0BAA0B,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC;gBAElI,OAAO;YACT,CAAC;YAED,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,uCAAuC,GAAG,CAAC,aAAa,CAAC,WAAW,IAAI,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,CAAC;gBAC9H,eAAe,GAAG,CAAC,aAAa,CAAC,UAAU,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YAE7D,uJAAuJ;YACvJ,yJAAyJ;YACzJ,sJAAsJ;YACtJ,mHAAmH;YACnH,IAAI,gBAAgB,GAAwD,IAAI,CAAC;YAEjF,KAAI,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBAE1C,yHAAyH;gBACzH,IAAG,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE,CAAC;oBAE1C,SAAS;gBACX,CAAC;gBAED,IAAI,YAAoB,CAAC;gBAEzB,IAAI,CAAC;oBAEH,YAAY,GAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAgC,CAAC,QAAQ,EAAE,CAAC;gBAC7E,CAAC;gBAAC,MAAM,CAAC;oBAEP,SAAS;gBACX,CAAC;gBAED,IAAG,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;oBAEjF,gJAAgJ;oBAChJ,IAAI,CAAC;wBAEH,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAErC,IAAG,OAAO,aAAa,CAAC,gBAAgB,CAAC,KAAK,UAAU,EAAE,CAAC;4BAEzD,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAA+C,CAAC;wBACnG,CAAC;6BAAM,CAAC;4BAEN,0EAA0E;4BAC1E,KAAI,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;gCAElD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;gCAE3C,IAAG,CAAC,OAAO,SAAS,KAAK,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oCAExF,gBAAgB,GAAG,SAAuD,CAAC;oCAE3E,MAAM;gCACR,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAM,OAAO,EAAE,CAAC;wBAEhB,sCAAsC;wBACtC,OAAO,CAAC,GAAG,CAAC,2DAA2D,GAAG,QAAQ,GAAG,wBAAwB,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;wBAEjI,OAAO;oBACT,CAAC;oBAED,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAG,CAAC,gBAAgB,EAAE,CAAC;gBAErB,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;gBAEvF,OAAO;YACT,CAAC;YAED,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,gDAAgD,GAAG,CAAC,aAAa,CAAC,WAAW,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;YAExG,wJAAwJ;YACxJ,wJAAwJ;YACxJ,mEAAmE;YACnE,IAAI,CAAC;gBAEH,2JAA2J;gBAC3J,uJAAuJ;gBACvJ,qJAAqJ;gBACrJ,yFAAyF;gBACzF,gBAAgB,CAAC;oBAEf,UAAU,EAAE;wBAEV,YAAY,EAAE,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;wBACnD,MAAM,EAAE,CAAC,OAAO,CAAC;wBACjB,cAAc,EAAE,QAAQ;wBACxB,QAAQ,EAAE,IAAI;wBACd,gBAAgB,EAAE,aAAa,CAAC,UAAU,IAAI,EAAE;qBACjD;oBACD,oBAAoB,EAAE,aAAa,CAAC,UAAU,IAAI,EAAE;oBACpD,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,cAAc,EAAE,IAAI;oBACpB,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBAEH,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACnC,CAAC;YAAC,OAAM,GAAG,EAAE,CAAC;gBAEZ,sCAAsC;gBACtC,OAAO,CAAC,GAAG,CAAC,sCAAsC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC,EAAE,WAAW,EAAE,YAAY,EAAE,0BAA0B,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,uBAAuB,CAAC,eAAuB,EAAE,IAAU;IAExE,MAAM,cAAc,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;IAE7D,+HAA+H;IAC/H,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE5B,0IAA0I;IAC1I,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,aAAa,EAAW,CAAC;IAC9D,MAAM,SAAS,GAAc,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAElD,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAElC,0IAA0I;IAC1I,IAAI,CAAC;QAEH,MAAM,4BAA4B,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;IACnE,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,2CAA2C,EAAE,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9G,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2JAA2J;IAC3J,mDAAmD;IACnD,IAAG,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QAE3C,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,+EAA+E,EAAE,eAAe,CAAC,CAAC;IAChI,CAAC;SAAM,CAAC;QAEN,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,yEAAyE,EAAE,eAAe,CAAC,CAAC;IAC1H,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,mBAAmB,CAAC,IAAU,EAAE,OAAgC;IAE7E,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAE5C,8JAA8J;IAC9J,qEAAqE;IACrE,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAG,SAAS,EAAE,CAAC;QAEb,wJAAwJ;QACxJ,sJAAsJ;QACtJ,oBAAoB;QACpB,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAEjE,0JAA0J;QAC1J,2CAA2C;QAC3C,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAG,KAAK,EAAE,CAAC;YAET,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,oCAAoC,EAAE,WAAW,CAAC,CAAC;YAE/E,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC7C,CAAC;QAED,yJAAyJ;QACzJ,mBAAmB,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;QAE9D,IAAG,KAAK,KAAK,KAAK,EAAE,CAAC;YAEnB,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,gGAAgG,EAAE,WAAW,CAAC,CAAC;QAC7I,CAAC;aAAM,CAAC;YAEN,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,8GAA8G,EACxI,WAAW,EAAE,YAAY,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,6HAA6H;IAC7H,OAAO,MAAM,wBAAwB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,wBAAwB,CAAC,IAAU,EAAE,WAAmB;IAErE,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,6BAA6B,EAAE,WAAW,CAAC,CAAC;IAExE,4GAA4G;IAC5G,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACnH,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,2DAA2D,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzH,CAAC;IAED,0JAA0J;IAC1J,uJAAuJ;IACvJ,4JAA4J;IAC5J,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAY,EAAW,EAAE;QAE1D,iGAAiG;QACjG,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,qBAAqB,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;QAExE,IAAG,CAAC,IAAI,EAAE,CAAC;YAET,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAErC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAE1F,EAAE,EAAE,EAAiB;gBACrB,KAAK,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE;aACjF,CAAC,CAAC,CAAC;YAEJ,wCAAwC;YACxC,KAAI,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC;gBAEjC,IAAG,KAAK,KAAK,SAAS,EAAE,CAAC;oBAEvB,IAAI,GAAG,EAAE,CAAC;oBAEV,MAAM;gBACR,CAAC;YACH,CAAC;YAED,wJAAwJ;YACxJ,sJAAsJ;YACtJ,IAAG,CAAC,IAAI,EAAE,CAAC;gBAET,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC;gBAErF,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC7D,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;YACtC,CAAC;QACH,CAAC;QAED,IAAG,CAAC,IAAI,EAAE,CAAC;YAET,OAAO,KAAK,CAAC;QACf,CAAC;QAED,8EAA8E;QAC9E,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAEhD,qFAAqF;QACrF,IAAI,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,WAAW,CAAC,CAAC;IAEhB,IAAG,CAAC,KAAK,EAAE,CAAC;QAEV,wGAAwG;QACxG,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAa,EAAE;YAE3D,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;YAEnE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACjJ,CAAC,CAAC,CAAC;QAEH,oBAAoB,CAAC;YAEnB,iBAAiB;YACjB,WAAW;YACX,QAAQ,EAAE,iBAAiB;YAC3B,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,gBAAgB;SAC/B,CAAC,CAAC;QAEH,OAAO,EAAE,MAAM,EAAE,yBAAyB,GAAG,WAAW,GAAG,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC3G,CAAC;IAED,gFAAgF;IAChF,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjB,0DAA0D;IAC1D,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAY,EAAE;QAEpD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAc,+BAA+B,CAAC,CAAC;QAElF,IAAG,CAAC,IAAI,EAAE,CAAC;YAET,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAG,CAAC,WAAW,EAAE,CAAC;QAEhB,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,0DAA0D,EAAE,WAAW,CAAC,CAAC;QAErG,OAAO,EAAE,MAAM,EAAE,uDAAuD,GAAG,WAAW,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACjH,CAAC;IAED,8JAA8J;IAC9J,kDAAkD;IAClD,IAAI,CAAC;QAEH,MAAM,IAAI,CAAC,eAAe,CAAC,2BAA2B,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACrH,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,EAAE,MAAM,EAAE,oDAAoD,GAAG,WAAW,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC9G,CAAC;IAED,gEAAgE;IAChE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjB,2JAA2J;IAC3J,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAY,EAAE;QAEhD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAc,2BAA2B,CAAC,CAAC;QAE/E,IAAG,CAAC,KAAK,EAAE,CAAC;YAEV,OAAO,KAAK,CAAC;QACf,CAAC;QAED,uFAAuF;QACvF,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAc,kBAAkB,CAAC,IAAI,KAAK,CAAC;QAEhF,SAAS,CAAC,KAAK,EAAE,CAAC;QAElB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAG,CAAC,OAAO,EAAE,CAAC;QAEZ,OAAO,EAAE,MAAM,EAAE,0CAA0C,GAAG,WAAW,GAAG,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACpG,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,+CAA+C,EAAE,WAAW,CAAC,CAAC;IAEvE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,SAAS,8BAA8B;IAErC,OAAO,gCAAgC,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACtJ,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,uBAAuB,CAAC,IAAU;IAE/C,8FAA8F;IAC9F,IAAG,sBAAsB,IAAI,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC;QAE5D,OAAO,8BAA8B,EAAE,CAAC;IAC1C,CAAC;IAED,0FAA0F;IAC1F,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE5B,sFAAsF;IACtF,IAAI,CAAC;QAEH,MAAM,4BAA4B,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,IAAI,CAAC,sDAAsD,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAErF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAEvG,gKAAgK;IAChK,4JAA4J;IAC5J,6JAA6J;IAC7J,gCAAgC;IAChC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAElC,OAAM,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,GAAG,iBAAiB,CAAC,EAAE,CAAC;QAEzG,4CAA4C;QAC5C,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,IAAG,CAAC,sBAAsB,IAAI,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC;QAE/D,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,2DAA2D,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,CAAC;QAEtH,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,2CAA2C,EAAE,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,CAAC;IAEhI,OAAO,8BAA8B,EAAE,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB;IAE/B,IAAG,CAAC,sBAAsB,IAAI,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC;QAE/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,8BAA8B,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAmB;IAE7C,gBAAgB,EAAE,uBAAuB;IACzC,iBAAiB,EAAE,wBAAwB;IAC3C,QAAQ,EAAE,iBAAiB;IAC3B,oBAAoB,EAAE,IAAI;IAC1B,KAAK,EAAE,gBAAgB;IAEvB,8JAA8J;IAC9J,gKAAgK;IAChK,+JAA+J;IAC/J,kKAAkK;IAClK,OAAO,EAAE;QAEP,QAAQ,EAAE,cAAc;QACxB,gBAAgB,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE;QAC7C,WAAW,EAAE,+IAA+I;QAC5J,OAAO,EAAE,eAAe;QACxB,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,6CAA6C;KACvD;IACD,WAAW,EAAE,eAAe;IAC5B,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE;QAER,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,mBAAmB;QAC5B,gBAAgB,EAAE,uBAAuB;KAC1C;IACD,YAAY,EAAE,aAAa;CAC5B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fox.d.ts","sourceRoot":"","sources":["../../../src/browser/tuning/fox.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmG,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAse5J,eAAO,MAAM,WAAW,EAAE,cAiCzB,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { logAvailableChannels } from "./shared.js";
|
|
|
4
4
|
// Cached discovery results. Populated by the first discoverFoxChannels call (discovery endpoint). Fox tuning is stateless (no tuning cache exists), so only
|
|
5
5
|
// the discovery endpoint populates this cache. Cleared on browser disconnect via clearFoxCache().
|
|
6
6
|
let cachedDiscoveredChannels = null;
|
|
7
|
-
// Single source of truth for Fox's category-selector membership. Read by foxProvider.
|
|
7
|
+
// Single source of truth for Fox's category-selector membership. Read by foxProvider.categoryResolution.selectors so the resolution layer in selectChannel() knows which
|
|
8
8
|
// selectors to route through resolveFoxCategorySelector, and read by verifyFoxManifest so it applies wildcard semantics on the same set. Adding a new Fox category
|
|
9
9
|
// selector means appending one entry here - the provider declaration and the verifier pick it up automatically.
|
|
10
10
|
const FOX_CATEGORY_SELECTORS = ["FOXD2C"];
|
|
@@ -46,8 +46,9 @@ function extractCallSignFromManifestUrl(url) {
|
|
|
46
46
|
return channelSegment.substring(0, dashIndex).toLowerCase();
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
|
-
* Failsafe verifier called by streaming/
|
|
50
|
-
* asked for. The selector is compared lowercase against the call sign extracted from the URL path - both cable channels
|
|
49
|
+
* Failsafe verifier called by streaming/setup.ts (setupStream's tune-verification step) after the master manifest URL has been captured for a Fox tune. Confirms
|
|
50
|
+
* the URL belongs to the channel the user asked for. The selector is compared lowercase against the call sign extracted from the URL path - both cable channels
|
|
51
|
+
* (FBN, FNC, FS1, etc.) and local affiliate
|
|
51
52
|
* call signs (WFLD, WPWRDT, etc.) follow the same lowercase convention in Fox's CDN paths. Returns null on match. Returns null when the URL shape is unrecognized
|
|
52
53
|
* (fail-open: better to accept a stream we cannot inspect than to reject a working one when Fox restructures their CDN). Returns a failure reason when the URL
|
|
53
54
|
* decodes cleanly to a different call sign - that is the unmistakable signature of a click that did not switch the player, and we want the stream to fail loudly
|
|
@@ -88,23 +89,23 @@ function verifyFoxManifest(url, channelSelector) {
|
|
|
88
89
|
return "Manifest URL is for channel \"" + callSign + "\", but \"" + channelSelector + "\" was requested.";
|
|
89
90
|
}
|
|
90
91
|
/**
|
|
91
|
-
* Resolves
|
|
92
|
-
* Fox.com surfaces in the user's market. Resolution consults discovery: if discovery has cached results, we read the first
|
|
93
|
-
* affiliate field is populated, set only for FOXD2C entries during discovery). If the cache is empty, we run discovery
|
|
94
|
-
* resolver is invoked from selectChannel() after navigation, so the guide grid is rendered or about to render.
|
|
95
|
-
*
|
|
96
|
-
* best-effort match with the original category selector.
|
|
92
|
+
* Resolves one of the provider's declared category selectors (see FOX_CATEGORY_SELECTORS) to a concrete per-user call sign; FOXD2C is the title shared by
|
|
93
|
+
* every Fox-owned local affiliate Fox.com surfaces in the user's market. Resolution consults discovery: if discovery has cached results, we read the first
|
|
94
|
+
* FOXD2C-tagged entry (the entry whose affiliate field is populated, set only for FOXD2C entries during discovery). If the cache is empty, we run discovery
|
|
95
|
+
* in-line on the already-loaded page; the resolver is invoked from selectChannel() after navigation, so the guide grid is rendered or about to render.
|
|
96
|
+
* Returns a CategoryResolutionFailure with a user-facing reason when no FOXD2C affiliate is present, which happens before the grid hydrates or when the user
|
|
97
|
+
* is not authenticated; the resolution layer relays the reason and falls through to a best-effort match with the original category selector.
|
|
97
98
|
*
|
|
98
99
|
* For users in markets with multiple FOXD2C affiliates (e.g., Chicago has both WFLD and WPWRDT - Fox-owned Fox and CW O&O), discovery returns them in DOM order
|
|
99
100
|
* because the in-line walk preserves it and the post-walk alphabetical sort is stable for name ties (every FOXD2C entry has name="FOXD2C"). The first entry is
|
|
100
101
|
* the primary Fox-owned Fox affiliate in nearly all markets. Users who want the secondary station can manually edit the per-channel override after the system
|
|
101
102
|
* persists the resolved selector - the override is the same delta a user-set selector produces.
|
|
102
|
-
* @param selector - The category selector value being resolved (one of the entries in foxProvider.
|
|
103
|
+
* @param selector - The category selector value being resolved (one of the entries in foxProvider.categoryResolution.selectors).
|
|
103
104
|
* @param page - The active Fox.com page. Used to run discovery in-line when the cache is empty.
|
|
104
|
-
* @returns
|
|
105
|
+
* @returns CategoryResolutionSuccess with the resolved call sign, or CategoryResolutionFailure with a user-facing reason when resolution cannot be performed.
|
|
105
106
|
*/
|
|
106
107
|
async function resolveFoxCategorySelector(selector, page) {
|
|
107
|
-
// Defensive: only resolve selectors this provider actually declares as categories. selectChannel only invokes the resolver for selectors
|
|
108
|
+
// Defensive: only resolve selectors this provider actually declares as categories. selectChannel only invokes the resolver for categoryResolution.selectors,
|
|
108
109
|
// so reaching this branch indicates a bug - either selectChannel routed wrong, or a caller bypassed selectChannel and invoked the resolver directly with the
|
|
109
110
|
// wrong value. We throw rather than returning a CategoryResolutionFailure because the resolver's `reason` field is contracted as user-facing prose for
|
|
110
111
|
// operational failures; an internal contract violation is a developer-audience event and belongs in the exception channel where it propagates to the existing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fox.js","sourceRoot":"","sources":["../../../src/browser/tuning/fox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fox.js","sourceRoot":"","sources":["../../../src/browser/tuning/fox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { Nullable } from "../../types/index.ts";
|
|
2
|
+
/**
|
|
3
|
+
* What one probe of the grid found: the rows the virtualizer rendered at the probed position, and the target's payload if the probe recognized it among them.
|
|
4
|
+
*
|
|
5
|
+
* Rows arrive in the guide's own visual order. That is the contract the search rests on and the only one a probe can satisfy, because the search reads the
|
|
6
|
+
* first and last of them as the alphabetical extremes of the rendered window and an in-range-miss hook reasoning about position needs the order the guide
|
|
7
|
+
* actually renders. A guide whose DOM order is its visual order hands its rows back untouched; one whose virtualizer recycles elements out of visual order
|
|
8
|
+
* restores that order inside its own probe. Null or empty rows report that the probe read nothing, which is a transient virtualizer state rather than an
|
|
9
|
+
* answer about where the target sits.
|
|
10
|
+
*/
|
|
11
|
+
export interface GridProbeResult<TRow, TFound> {
|
|
12
|
+
/**
|
|
13
|
+
* The payload for a target the probe recognized among the rows it read, or null when it did not. Anything non-null ends the search, so a probe that resolved
|
|
14
|
+
* only part of what a hit needs - a matched name whose click coordinates did not resolve, say - reports null and lets the search carry on.
|
|
15
|
+
*/
|
|
16
|
+
found: Nullable<TFound>;
|
|
17
|
+
rows: Nullable<TRow[]>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* How a search ended: the target was found, an in-range-miss hook resolved the caller's whole request on its own, or the range was exhausted without either.
|
|
21
|
+
*
|
|
22
|
+
* The resolved arm exists only for callers that pass a hook returning one. TResult defaults to never for the callers that do not, and the conditional collapses
|
|
23
|
+
* that arm out of the union entirely rather than leaving them a case they would have to handle and could never reach. The comparison is written over one-element
|
|
24
|
+
* tuples so that it tests TResult as a whole instead of distributing across it.
|
|
25
|
+
*/
|
|
26
|
+
export type GridSearchOutcome<TFound, TResult> = {
|
|
27
|
+
found: TFound;
|
|
28
|
+
kind: "found";
|
|
29
|
+
} | {
|
|
30
|
+
kind: "notFound";
|
|
31
|
+
} | ([TResult] extends [never] ? never : {
|
|
32
|
+
kind: "resolved";
|
|
33
|
+
result: TResult;
|
|
34
|
+
});
|
|
35
|
+
/**
|
|
36
|
+
* Binary-searches a virtualized guide grid for a channel by name, probing the midpoint of a shrinking row range until a probe recognizes the target or the
|
|
37
|
+
* range runs out. A virtualized guide renders only a small window of its rows, so each step scrolls that window somewhere new and reads what landed there:
|
|
38
|
+
* a hit ends the search, and a miss narrows the range by comparing the target against the window's alphabetical extremes.
|
|
39
|
+
*
|
|
40
|
+
* The search reads nothing off a row itself and touches no provider state. Rows are compared through nameOf, are never sorted or reordered, and reach the
|
|
41
|
+
* in-range-miss hook as the very array the probe returned, because a hook that reasons about a row's position among its neighbors depends on both.
|
|
42
|
+
* @param options - The search bounds and the provider's policy callbacks.
|
|
43
|
+
* @param options.isDirectionAnchor - Reports whether a row's name can be trusted to sort where the row appears, for guides that render rows whose displayed
|
|
44
|
+
* name is not their sort key. Omit when every row anchors.
|
|
45
|
+
* @param options.maxIterations - Hard cap on probes. Sized per guide against the row count it converges over, and a bound on pathological virtualizer behavior
|
|
46
|
+
* rather than the normal exit.
|
|
47
|
+
* @param options.nameOf - Reads the name a row is compared by.
|
|
48
|
+
* @param options.onInRangeMiss - Called with the probe's rows when the target sorts inside the rendered window but no row matched it, for guides where that
|
|
49
|
+
* case is recoverable. Returning a resolved value ends the search as resolved, a found value ends it as found, and null ends it as not found. Omit when the
|
|
50
|
+
* case simply means the channel is absent.
|
|
51
|
+
* @param options.probe - Brings the rows around a row index into the DOM and reads them back, in guide order, along with the target's payload if it is there.
|
|
52
|
+
* @param options.targetName - The normalized channel name being searched for.
|
|
53
|
+
* @param options.totalRows - How many rows the guide holds, which is the initial upper bound.
|
|
54
|
+
* @returns The outcome of the search.
|
|
55
|
+
*/
|
|
56
|
+
export declare function searchVirtualizedGrid<TRow, TFound, TResult = never>(options: {
|
|
57
|
+
isDirectionAnchor?: (row: TRow) => boolean;
|
|
58
|
+
maxIterations: number;
|
|
59
|
+
nameOf: (row: TRow) => string;
|
|
60
|
+
onInRangeMiss?: (rows: TRow[]) => Promise<Nullable<{
|
|
61
|
+
found?: TFound;
|
|
62
|
+
resolved?: TResult;
|
|
63
|
+
}>>;
|
|
64
|
+
probe: (rowIndex: number) => Promise<GridProbeResult<TRow, TFound>>;
|
|
65
|
+
targetName: string;
|
|
66
|
+
totalRows: number;
|
|
67
|
+
}): Promise<GridSearchOutcome<TFound, TResult>>;
|
|
68
|
+
//# sourceMappingURL=gridSearch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gridSearch.d.ts","sourceRoot":"","sources":["../../../src/browser/tuning/gridSearch.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe,CAAC,IAAI,EAAE,MAAM;IAE3C;;;OAGG;IACH,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGxB,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,IAC3C;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE;IAClF,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,OAAO,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC,CAAC;IAC5F,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CA2F9C"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Binary-searches a virtualized guide grid for a channel by name, probing the midpoint of a shrinking row range until a probe recognizes the target or the
|
|
3
|
+
* range runs out. A virtualized guide renders only a small window of its rows, so each step scrolls that window somewhere new and reads what landed there:
|
|
4
|
+
* a hit ends the search, and a miss narrows the range by comparing the target against the window's alphabetical extremes.
|
|
5
|
+
*
|
|
6
|
+
* The search reads nothing off a row itself and touches no provider state. Rows are compared through nameOf, are never sorted or reordered, and reach the
|
|
7
|
+
* in-range-miss hook as the very array the probe returned, because a hook that reasons about a row's position among its neighbors depends on both.
|
|
8
|
+
* @param options - The search bounds and the provider's policy callbacks.
|
|
9
|
+
* @param options.isDirectionAnchor - Reports whether a row's name can be trusted to sort where the row appears, for guides that render rows whose displayed
|
|
10
|
+
* name is not their sort key. Omit when every row anchors.
|
|
11
|
+
* @param options.maxIterations - Hard cap on probes. Sized per guide against the row count it converges over, and a bound on pathological virtualizer behavior
|
|
12
|
+
* rather than the normal exit.
|
|
13
|
+
* @param options.nameOf - Reads the name a row is compared by.
|
|
14
|
+
* @param options.onInRangeMiss - Called with the probe's rows when the target sorts inside the rendered window but no row matched it, for guides where that
|
|
15
|
+
* case is recoverable. Returning a resolved value ends the search as resolved, a found value ends it as found, and null ends it as not found. Omit when the
|
|
16
|
+
* case simply means the channel is absent.
|
|
17
|
+
* @param options.probe - Brings the rows around a row index into the DOM and reads them back, in guide order, along with the target's payload if it is there.
|
|
18
|
+
* @param options.targetName - The normalized channel name being searched for.
|
|
19
|
+
* @param options.totalRows - How many rows the guide holds, which is the initial upper bound.
|
|
20
|
+
* @returns The outcome of the search.
|
|
21
|
+
*/
|
|
22
|
+
export async function searchVirtualizedGrid(options) {
|
|
23
|
+
const { isDirectionAnchor, maxIterations, nameOf, onInRangeMiss, probe, targetName, totalRows } = options;
|
|
24
|
+
let low = 0;
|
|
25
|
+
let high = totalRows - 1;
|
|
26
|
+
for (let iteration = 0; iteration < maxIterations; iteration++) {
|
|
27
|
+
if (low > high) {
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
const mid = Math.floor((low + high) / 2);
|
|
31
|
+
// eslint-disable-next-line no-await-in-loop
|
|
32
|
+
const { found, rows } = await probe(mid);
|
|
33
|
+
/* A probe that rendered nothing carries no evidence about where the target sits, so the range is left exactly where it was and the next iteration probes
|
|
34
|
+
* the same midpoint again. Emptiness is settled before the hit is read, which is what makes a probe reporting both - however it managed it - resolve as
|
|
35
|
+
* the empty read it is rather than as a hit on rows nobody saw.
|
|
36
|
+
*/
|
|
37
|
+
if (!rows || (rows.length === 0)) {
|
|
38
|
+
continue;
|
|
39
|
+
}
|
|
40
|
+
if (found !== null) {
|
|
41
|
+
return { found, kind: "found" };
|
|
42
|
+
}
|
|
43
|
+
// Anchors are the rows whose names the caller vouches for as sorting where they appear. Filtering builds its own array, and the rows the probe returned are
|
|
44
|
+
// never reordered, so what the miss hook receives below is untouched.
|
|
45
|
+
const anchors = isDirectionAnchor ? rows.filter(isDirectionAnchor) : rows;
|
|
46
|
+
const firstAnchor = anchors[0];
|
|
47
|
+
const lastAnchor = anchors.at(-1);
|
|
48
|
+
// A window holding no anchors says nothing about direction - every row it rendered was one the caller excluded from the comparison. Move down and hope the
|
|
49
|
+
// next window reads better. One check covers both ends, since an array with a first element has a last one.
|
|
50
|
+
if ((firstAnchor === undefined) || (lastAnchor === undefined)) {
|
|
51
|
+
low = mid + 1;
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
// Direction comes from the window's alphabetical extremes, read in the order the probe returned them.
|
|
55
|
+
if (targetName.localeCompare(nameOf(firstAnchor)) < 0) {
|
|
56
|
+
// The target sorts before everything anchored here, so its row is above this window.
|
|
57
|
+
high = mid - 1;
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
if (targetName.localeCompare(nameOf(lastAnchor)) > 0) {
|
|
61
|
+
// The target sorts after everything anchored here, so its row is below this window.
|
|
62
|
+
low = mid + 1;
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
// The target belongs inside this window but no row matched it. What that means is the caller's to say: a guide that labels a row with something other than
|
|
66
|
+
// the name it sorts under has a channel to recover here, and a guide that does not simply has no such channel.
|
|
67
|
+
if (onInRangeMiss) {
|
|
68
|
+
// eslint-disable-next-line no-await-in-loop
|
|
69
|
+
const miss = await onInRangeMiss(rows);
|
|
70
|
+
if (miss?.resolved !== undefined) {
|
|
71
|
+
/* The resolved arm is part of the outcome union exactly when TResult is not never, and TResult is not never exactly when the caller passed a hook that
|
|
72
|
+
* returns one - which is the branch this return stands in. The conditional type cannot carry those two facts to each other, so the assertion states
|
|
73
|
+
* what the call signature has already guaranteed.
|
|
74
|
+
*/
|
|
75
|
+
return { kind: "resolved", result: miss.resolved };
|
|
76
|
+
}
|
|
77
|
+
if (miss?.found !== undefined) {
|
|
78
|
+
return { found: miss.found, kind: "found" };
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
return { kind: "notFound" };
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=gridSearch.js.map
|