prismcast 1.10.3 → 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 +1 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +103 -50
- 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 +23 -6
- package/dist/browser/hlsPlaylistObserver.d.ts.map +1 -0
- package/dist/browser/hlsPlaylistObserver.js +27 -8
- package/dist/browser/hlsPlaylistObserver.js.map +1 -1
- package/dist/browser/index.d.ts +44 -27
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +427 -244
- 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 +88 -35
- package/dist/browser/manifestInterceptor.d.ts.map +1 -0
- package/dist/browser/manifestInterceptor.js +165 -77
- 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 +2 -1
- package/dist/browser/tabNetworkObserver.d.ts.map +1 -0
- package/dist/browser/tabNetworkObserver.js +7 -3
- package/dist/browser/tabNetworkObserver.js.map +1 -1
- 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 +15 -11
- 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 +7 -1
- package/dist/config/paths.d.ts.map +1 -0
- package/dist/config/paths.js +8 -1
- 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 +21 -14
- package/dist/config/profiles.d.ts.map +1 -0
- package/dist/config/profiles.js +77 -43
- 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 +16 -10
- package/dist/config/services.d.ts.map +1 -0
- package/dist/config/services.js +27 -16
- package/dist/config/services.js.map +1 -1
- package/dist/config/sites.d.ts +4 -2
- package/dist/config/sites.d.ts.map +1 -0
- package/dist/config/sites.js +9 -5
- package/dist/config/sites.js.map +1 -1
- package/dist/config/userChannels.d.ts +23 -18
- package/dist/config/userChannels.d.ts.map +1 -0
- package/dist/config/userChannels.js +45 -34
- 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 +8 -4
- package/dist/config/userProfiles.d.ts.map +1 -0
- package/dist/config/userProfiles.js +48 -23
- 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 +4 -3
- 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 +39 -16
- package/dist/native/index.d.ts.map +1 -0
- package/dist/native/index.js +273 -103
- 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 +56 -1
- package/dist/native/proxy.d.ts.map +1 -0
- package/dist/native/proxy.js +604 -161
- 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 +4 -3
- package/dist/routes/clientActions.d.ts.map +1 -0
- package/dist/routes/components.d.ts +1 -0
- package/dist/routes/components.d.ts.map +1 -0
- package/dist/routes/components.js +2 -2
- 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 +49 -22
- 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 +1 -0
- package/dist/routes/config/channels/healthBridge.d.ts.map +1 -0
- package/dist/routes/config/channels/healthBridge.js +2 -2
- 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 +55 -27
- 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 +35 -24
- 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 +89 -43
- 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 +2 -2
- 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 +13 -3
- 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 +11 -12
- 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 +10 -8
- 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 +147 -97
- 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 +39 -22
- 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 +52 -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 +18 -6
- package/dist/routes/root/scripts/status.handlers.d.ts.map +1 -0
- package/dist/routes/root/scripts/status.handlers.js +38 -32
- package/dist/routes/root/scripts/status.handlers.js.map +1 -1
- package/dist/routes/root/scripts/status.js +15 -7
- 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 +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 +3 -2
- 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.d.ts +3 -2
- package/dist/service/generators.d.ts.map +1 -0
- package/dist/service/generators.js +108 -20
- 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 +219 -115
- 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 +58 -1
- 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 +31 -4
- package/dist/streaming/preroll.d.ts.map +1 -0
- package/dist/streaming/preroll.js +69 -27
- 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 +5 -2
- package/dist/streaming/statusEmitter.d.ts.map +1 -0
- package/dist/streaming/statusEmitter.js +5 -3
- package/dist/streaming/statusEmitter.js.map +1 -1
- package/dist/types/channels.d.ts +15 -12
- 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 +4 -2
- 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.d.ts +1 -0
- package/dist/upgrade/commands.d.ts.map +1 -0
- package/dist/upgrade/commands.js +1 -1
- 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 +2 -0
- package/dist/upgrade/detection.context.js.map +1 -1
- package/dist/upgrade/detection.d.ts +7 -6
- package/dist/upgrade/detection.d.ts.map +1 -0
- package/dist/upgrade/detection.js +4 -4
- package/dist/upgrade/index.d.ts +1 -0
- package/dist/upgrade/index.d.ts.map +1 -0
- package/dist/upgrade/lifecycle.context.d.ts +1 -0
- package/dist/upgrade/lifecycle.context.d.ts.map +1 -0
- package/dist/upgrade/lifecycle.d.ts +7 -7
- package/dist/upgrade/lifecycle.d.ts.map +1 -0
- package/dist/upgrade/lifecycle.js +9 -10
- package/dist/upgrade/lifecycle.js.map +1 -1
- package/dist/upgrade/pathHandle.d.ts +5 -3
- package/dist/upgrade/pathHandle.d.ts.map +1 -0
- package/dist/upgrade/pathHandle.js +3 -2
- package/dist/upgrade/pathHandle.js.map +1 -1
- package/dist/utils/bootSession.context.d.ts +1 -0
- package/dist/utils/bootSession.context.d.ts.map +1 -0
- package/dist/utils/bootSession.context.js +6 -5
- package/dist/utils/bootSession.context.js.map +1 -1
- package/dist/utils/bootSession.d.ts +1 -0
- package/dist/utils/bootSession.d.ts.map +1 -0
- package/dist/utils/bootSession.js.map +1 -1
- 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 +31 -13
- 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 +1 -0
- package/dist/utils/index.d.ts.map +1 -0
- 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 +4 -2
- package/dist/utils/markup.d.ts.map +1 -0
- package/dist/utils/markup.js +6 -5
- 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 +1 -0
- package/dist/utils/pid.d.ts.map +1 -0
- package/dist/utils/pid.js +3 -3
- 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 +1 -0
- package/dist/utils/processInspector.context.d.ts.map +1 -0
- package/dist/utils/processInspector.context.js +3 -1
- package/dist/utils/processInspector.context.js.map +1 -1
- package/dist/utils/processInspector.d.ts +4 -3
- package/dist/utils/processInspector.d.ts.map +1 -0
- package/dist/utils/processInspector.js +2 -0
- package/dist/utils/processInspector.js.map +1 -1
- package/dist/utils/retry.d.ts +24 -1
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +32 -5
- package/dist/utils/retry.js.map +1 -1
- package/dist/utils/runtimeIdentity.context.d.ts +1 -0
- package/dist/utils/runtimeIdentity.context.d.ts.map +1 -0
- package/dist/utils/runtimeIdentity.context.js +30 -0
- package/dist/utils/runtimeIdentity.context.js.map +1 -1
- package/dist/utils/runtimeIdentity.d.ts +6 -4
- package/dist/utils/runtimeIdentity.d.ts.map +1 -0
- package/dist/utils/runtimeIdentity.js +15 -5
- package/dist/utils/runtimeIdentity.js.map +1 -1
- 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 +1 -0
- package/dist/utils/timing.d.ts.map +1 -0
- package/dist/utils/version.d.ts +1 -0
- package/dist/utils/version.d.ts.map +1 -0
- package/dist/utils/version.js +7 -3
- package/dist/utils/version.js.map +1 -1
- package/package.json +26 -20
package/dist/types/profiles.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ import type { Nullable } from "./shared.ts";
|
|
|
6
6
|
* - "directvGrid": Tune via webpack injection - captures __webpack_require__, extracts the Redux store from the React fiber tree, matches by channel name, and
|
|
7
7
|
* dispatches playConsumable. Falls back to logo aria-label click when the interceptor fails. Used by DirecTV Stream.
|
|
8
8
|
* - "foxGrid": Find channel by station code in a non-virtualized guide grid, click the channel logo button via DOM .click(). Used by Fox.com.
|
|
9
|
-
* - "guideGrid": Find channel by
|
|
10
|
-
* Live TV.
|
|
9
|
+
* - "guideGrid": Find channel by data-testid in a virtualized guide grid via binary search, click the on-now program cell, then click the play button tile.
|
|
10
|
+
* Optionally clicks a tab to reveal the list first. Used by Hulu Live TV.
|
|
11
11
|
* - "hboGrid": Discover the HBO tab page URL from the homepage menu bar, read the live channel tile rail for a matching channel name, and navigate to the watch
|
|
12
12
|
* URL. Caches the tab URL across tunes with stale-cache fallback. Used by HBO Max.
|
|
13
13
|
* - "none": No channel selection needed (single-channel sites). This is the default.
|
|
@@ -100,6 +100,7 @@ export interface ResolvedSiteProfile {
|
|
|
100
100
|
* profile came from a channel hint, domain-based autodetection, or the default fallback.
|
|
101
101
|
*/
|
|
102
102
|
export interface ProfileResolutionResult {
|
|
103
|
+
readonly overriddenProfile?: string;
|
|
103
104
|
profile: ResolvedSiteProfile;
|
|
104
105
|
profileName: string;
|
|
105
106
|
}
|
|
@@ -154,3 +155,4 @@ export interface ProfilesValidationResult {
|
|
|
154
155
|
profiles: Record<string, SiteProfile>;
|
|
155
156
|
valid: boolean;
|
|
156
157
|
}
|
|
158
|
+
//# sourceMappingURL=profiles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../src/types/profiles.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAO5C;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,MAAM,wBAAwB,GAClC,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,cAAc,GAAG,cAAc,GAAG,WAAW,GACxI,eAAe,GAAG,aAAa,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,sBAAsB;IAIrC,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,cAAc,CAAC,EAAE,MAAM,CAAC;IAKxB,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,cAAc,CAAC,EAAE,OAAO,CAAC;IAGzB,QAAQ,EAAE,wBAAwB,CAAC;CACpC;AAWD;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,cAAc,GAAG,SAAS,CAAC;AAEzF;;;GAGG;AACH,MAAM,WAAW,WAAW;IAG1B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAI3B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAI1C,eAAe,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAInC,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAIjC,WAAW,CAAC,EAAE,OAAO,CAAC;IAOtB,eAAe,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAInC,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,aAAa,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAKjC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAKtC,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAKhC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAI/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAK9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAI3B,aAAa,CAAC,EAAE,OAAO,CAAC;IAIxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAI/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAGlC,gBAAgB,EAAE,sBAAsB,CAAC;IAGzC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGlC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGhC,WAAW,EAAE,OAAO,CAAC;IAGrB,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGlC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGhC,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGrC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAG/B,oBAAoB,EAAE,OAAO,CAAC;IAK9B,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGxC,mBAAmB,EAAE,OAAO,CAAC;IAG7B,gBAAgB,EAAE,OAAO,CAAC;IAG1B,aAAa,EAAE,OAAO,CAAC;IAGvB,oBAAoB,EAAE,OAAO,CAAC;IAG9B,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAG/B,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IAItC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAGpC,OAAO,EAAE,mBAAmB,CAAC;IAG7B,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAM3B,eAAe,CAAC,EAAE,MAAM,CAAC;IAIzB,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAIlB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAI/B,OAAO,CAAC,EAAE,MAAM,CAAC;IAIjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAKjB,UAAU,CAAC,EAAE,MAAM,CAAC;IAIpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAG/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAIvC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IAGrC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAGtC,UAAU,EAAE,OAAO,CAAC;IAGpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAItC,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAG1B,QAAQ,CAAC,EAAE,UAAU,CAAC;IAGtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAGvC,IAAI,EAAE,MAAM,CAAC;IAGb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAGtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IAGvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAGtC,MAAM,EAAE,MAAM,EAAE,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAGtC,KAAK,EAAE,OAAO,CAAC;CAChB"}
|
|
@@ -1,15 +1,25 @@
|
|
|
1
1
|
import type { ChannelSelectionStrategy, ResolvedSiteProfile, SiteProfile } from "./profiles.ts";
|
|
2
2
|
import type { Frame, Page } from "puppeteer-core";
|
|
3
3
|
import type { Nullable } from "./shared.ts";
|
|
4
|
+
import type { PersistedLineupChannel } from "../config/providerLineups.ts";
|
|
5
|
+
/**
|
|
6
|
+
* Narrowed profile type for strategy functions. When selectChannel() validates that channelSelector is non-null, it narrows the profile to this type so
|
|
7
|
+
* strategy functions receive a guaranteed non-null channelSelector without needing non-null assertions.
|
|
8
|
+
*/
|
|
4
9
|
export interface ChannelSelectionProfile extends ResolvedSiteProfile {
|
|
5
10
|
channelSelector: string;
|
|
6
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Type guard that proves channelSelector is a non-empty string, rejecting both null and empty string. Used by the coordinator before dispatching to strategy
|
|
14
|
+
* functions.
|
|
15
|
+
*/
|
|
7
16
|
export declare function isChannelSelectionProfile(profile: ResolvedSiteProfile): profile is ChannelSelectionProfile;
|
|
8
17
|
/**
|
|
9
18
|
* Result of attempting to select a channel from a multi-channel player UI.
|
|
10
19
|
*/
|
|
11
20
|
export interface ChannelSelectorResult {
|
|
12
21
|
directTune?: boolean;
|
|
22
|
+
guideUnavailable?: boolean;
|
|
13
23
|
reason?: string;
|
|
14
24
|
success: boolean;
|
|
15
25
|
}
|
|
@@ -54,17 +64,34 @@ export interface DiscoveredChannel {
|
|
|
54
64
|
stationId?: string;
|
|
55
65
|
tier?: string;
|
|
56
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Provider-declared identifiers for the provider's authentication wall, consumed by the blocked-page classifier when a discovery walk returns zero channels.
|
|
69
|
+
* Host patterns match the landed URL's hostname (exact, or any subdomain of the pattern); selectors match against the page DOM. Either match classifies the page
|
|
70
|
+
* as an auth wall ahead of the generic sign-in shape probe. Declared per provider only when the generic probe cannot recognize that provider's wall.
|
|
71
|
+
*/
|
|
72
|
+
export interface AuthWallIndicators {
|
|
73
|
+
hosts?: string[];
|
|
74
|
+
selectors?: string[];
|
|
75
|
+
}
|
|
57
76
|
/**
|
|
58
77
|
* Unified provider contract that bundles identity metadata, tuning strategy, and channel discovery into a single registry entry. Each provider tuning file
|
|
59
78
|
* exports one ProviderModule. The coordinator builds its strategy dispatch lookup from provider modules at evaluation time. Generic strategies (thumbnailRow,
|
|
60
79
|
* tileClick) remain bare ChannelStrategyEntry objects - they are not providers.
|
|
61
80
|
*/
|
|
62
81
|
export interface ProviderModule {
|
|
82
|
+
authWallIndicators?: AuthWallIndicators;
|
|
63
83
|
/**
|
|
64
84
|
* Discovers all available channels from the provider's guide. The route handler navigates to guideUrl before calling this function unless handlesOwnNavigation
|
|
65
85
|
* is set. Returns a standardized DiscoveredChannel array.
|
|
66
86
|
*/
|
|
67
87
|
discoverChannels: (page: Page) => Promise<DiscoveredChannel[]>;
|
|
88
|
+
/**
|
|
89
|
+
* Returns the provider's own statement of which lineup facts outlive the browser session that discovered them, for the persisted lineup store. A provider whose
|
|
90
|
+
* direct-tune address is a stable per-channel URL (or a stable identifier the URL is built from) exports it here alongside the channel identity; a provider that
|
|
91
|
+
* tunes by interacting with its guide has no such address and omits the hook entirely, so the store never holds a watch URL that cannot be navigated to.
|
|
92
|
+
* Returns null when the provider's cache is cold and there is nothing to state.
|
|
93
|
+
*/
|
|
94
|
+
exportDurableLineup?: () => Nullable<PersistedLineupChannel[]>;
|
|
68
95
|
/**
|
|
69
96
|
* Returns cached discovered channels if the provider has already fully enumerated its lineup from a previous tune or discovery call, or null if no enumeration
|
|
70
97
|
* has occurred. When non-null, the route handler can skip browser page creation entirely and return the cached result immediately.
|
|
@@ -106,9 +133,9 @@ export interface CategoryResolutionFailure {
|
|
|
106
133
|
* these two shapes - there is no null. This forces every resolver to articulate its outcome explicitly, which guarantees diagnostic detail on every failure and
|
|
107
134
|
* removes ambiguity between "could not resolve" and "did not attempt to resolve."
|
|
108
135
|
*
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
136
|
+
* Consumers tell the two variants apart by the `callSign` and `reason` field names, using TypeScript's `"callSign" in result` narrowing without needing a tagged
|
|
137
|
+
* enum. A future evolution that needs additional outcomes (e.g., resolution to a list of candidates for user disambiguation) can add a new variant here as a new
|
|
138
|
+
* named interface without touching the existing two.
|
|
112
139
|
*/
|
|
113
140
|
export type CategoryResolution = CategoryResolutionSuccess | CategoryResolutionFailure;
|
|
114
141
|
/**
|
|
@@ -148,3 +175,4 @@ export interface UiSize {
|
|
|
148
175
|
height: number;
|
|
149
176
|
width: number;
|
|
150
177
|
}
|
|
178
|
+
//# sourceMappingURL=selection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../src/types/selection.ts"],"names":[],"mappings":"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"}
|
package/dist/types/selection.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Type guard that proves channelSelector is a non-empty string, rejecting both null and empty string. Used by the coordinator before dispatching to strategy
|
|
3
|
+
* functions.
|
|
4
|
+
*/
|
|
3
5
|
export function isChannelSelectionProfile(profile) {
|
|
4
6
|
return (profile.channelSelector !== null) && (profile.channelSelector.length > 0);
|
|
5
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection.js","sourceRoot":"","sources":["../../src/types/selection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"selection.js","sourceRoot":"","sources":["../../src/types/selection.ts"],"names":[],"mappings":"AAkBA;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAA4B;IAEpE,OAAO,CAAC,OAAO,CAAC,eAAe,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpF,CAAC"}
|
package/dist/types/shared.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/types/shared.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAGnC,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,iBAAiB,GAAG,aAAa,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;AAGnJ,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC"}
|
|
@@ -41,6 +41,13 @@ export interface UrlValidationResult {
|
|
|
41
41
|
* directly in Node, bypassing screen capture entirely.
|
|
42
42
|
*/
|
|
43
43
|
export type StreamingMode = "capture" | "native";
|
|
44
|
+
/**
|
|
45
|
+
* Media container format of an upstream HLS source. "fmp4" sources (CMAF) carry their codec configuration in a separate initialization segment referenced by
|
|
46
|
+
* #EXT-X-MAP, so the relay must fetch, store, and re-reference that init for the fragments to be playable. "ts" sources are self-describing - every MPEG-TS
|
|
47
|
+
* segment carries its own PAT/PMT - so they need no init at all. Consumers select the fMP4 behavior on an exact "fmp4" match; every other value takes the
|
|
48
|
+
* self-describing path.
|
|
49
|
+
*/
|
|
50
|
+
export type MediaContainer = "fmp4" | "ts";
|
|
44
51
|
/**
|
|
45
52
|
* Health check response structure returned by the /health endpoint.
|
|
46
53
|
*/
|
|
@@ -93,3 +100,4 @@ export interface StreamListResponse {
|
|
|
93
100
|
limit: number;
|
|
94
101
|
streams: StreamListItem[];
|
|
95
102
|
}
|
|
103
|
+
//# sourceMappingURL=streaming.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../../src/types/streaming.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,iBAAiB,2BAA8B,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAM5D;;GAEG;AACH,MAAM,WAAW,UAAU;IAIzB,WAAW,EAAE,MAAM,CAAC;IAGpB,KAAK,EAAE,OAAO,CAAC;IAGf,KAAK,EAAE,OAAO,CAAC;IAGf,KAAK,EAAE,OAAO,CAAC;IAIf,YAAY,EAAE,MAAM,CAAC;IAGrB,MAAM,EAAE,OAAO,CAAC;IAIhB,UAAU,EAAE,MAAM,CAAC;IAGnB,IAAI,EAAE,MAAM,CAAC;IAGb,WAAW,EAAE,MAAM,CAAC;IAGpB,UAAU,EAAE,MAAM,CAAC;IAGnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAMxE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAGlC,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC;AAM3C;;GAEG;AACH,MAAM,WAAW,YAAY;IAG3B,OAAO,EAAE;QAGP,SAAS,EAAE,OAAO,CAAC;QAGnB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAGF,WAAW,EAAE,MAAM,CAAC;IAGpB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGzB,OAAO,EAAE;QAGP,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QAG1C,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAGF,eAAe,EAAE,OAAO,CAAC;IAGzB,MAAM,EAAE;QAGN,SAAS,EAAE,MAAM,CAAC;QAGlB,QAAQ,EAAE,MAAM,CAAC;QAGjB,GAAG,EAAE,MAAM,CAAC;QAGZ,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IAGF,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;IAG7C,OAAO,EAAE;QAGP,MAAM,EAAE,MAAM,CAAC;QAGf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAGF,SAAS,EAAE,MAAM,CAAC;IAGlB,MAAM,EAAE,MAAM,CAAC;IAGf,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;GAEG;AACH,MAAM,WAAW,cAAc;IAG7B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAG1B,QAAQ,EAAE,MAAM,CAAC;IAGjB,EAAE,EAAE,MAAM,CAAC;IAGX,SAAS,EAAE,MAAM,CAAC;IAGlB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAGjC,KAAK,EAAE,MAAM,CAAC;IAGd,KAAK,EAAE,MAAM,CAAC;IAGd,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.context.d.ts","sourceRoot":"","sources":["../../src/upgrade/commands.context.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAQpD;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,cAAc,CAY5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/upgrade/commands.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAG7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAG7B,QAAQ,CAAC,MAAM,EAAE,MAAM,WAAW,CAAC;IAGnC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;IAGvC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAK1D,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAK5B,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,WAAW,CAAC;IAI5D,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAIxC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AA0FD;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,GAAE,cAA8C,GAAG,OAAO,CAAC,MAAM,CAAC,CAoGxI"}
|
package/dist/upgrade/commands.js
CHANGED
|
@@ -13,7 +13,7 @@ function printUpgradeUsage(ctx) {
|
|
|
13
13
|
ctx.stdout(" --force Upgrade even if already up to date");
|
|
14
14
|
ctx.stdout(" -h, --help Show this help message");
|
|
15
15
|
}
|
|
16
|
-
// Shared between --check mode and the
|
|
16
|
+
// Shared between --check mode and the non-upgradeable summary so both surfaces print identical version/install-method/upgrade-command rows.
|
|
17
17
|
function printUpgradeInfo(ctx, info, currentVersion, latestVersion) {
|
|
18
18
|
ctx.stdout("PrismCast Upgrade Check");
|
|
19
19
|
ctx.stdout("─".repeat(40));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/upgrade/commands.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7F,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/upgrade/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detection.context.d.ts","sourceRoot":"","sources":["../../src/upgrade/detection.context.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOvD;;;GAGG;AACH,wBAAgB,6BAA6B,IAAI,gBAAgB,CAoBhE"}
|
|
@@ -14,6 +14,8 @@ export function createDefaultDetectionContext() {
|
|
|
14
14
|
isContainer: isRunningInContainer(),
|
|
15
15
|
runCommand: (cmd) => {
|
|
16
16
|
try {
|
|
17
|
+
// We cap each detection probe at five seconds so that a hung command (for example, a stalled "npm prefix -g") cannot stall install-method detection. A
|
|
18
|
+
// probe that exceeds the ceiling throws, which we treat the same as any other failure by returning null below.
|
|
17
19
|
return execSync(cmd, { encoding: "utf-8", timeout: 5000 }).trim();
|
|
18
20
|
}
|
|
19
21
|
catch {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detection.context.js","sourceRoot":"","sources":["../../src/upgrade/detection.context.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B;;;GAGG;AACH,MAAM,UAAU,6BAA6B;IAE3C,OAAO;QAEL,WAAW,EAAE,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjE,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,oBAAoB,EAAE;QACnC,UAAU,EAAE,CAAC,GAAW,EAAiB,EAAE;YAEzC,IAAI,CAAC;gBAEH,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpE,CAAC;YAAC,MAAM,CAAC;gBAEP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"detection.context.js","sourceRoot":"","sources":["../../src/upgrade/detection.context.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,GAAG,MAAM,UAAU,CAAC;AAE3B;;;GAGG;AACH,MAAM,UAAU,6BAA6B;IAE3C,OAAO;QAEL,WAAW,EAAE,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjE,UAAU,EAAE,UAAU;QACtB,WAAW,EAAE,oBAAoB,EAAE;QACnC,UAAU,EAAE,CAAC,GAAW,EAAiB,EAAE;YAEzC,IAAI,CAAC;gBAEH,uJAAuJ;gBACvJ,+GAA+G;gBAC/G,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACpE,CAAC;YAAC,MAAM,CAAC;gBAEP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -47,8 +47,8 @@ export interface NonUpgradeableInstallStrategy<M extends string = string> extend
|
|
|
47
47
|
readonly upgradeable: false;
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
|
-
* Discriminated union of install-method strategies.
|
|
51
|
-
* structurally impossible to declare an upgradeable strategy that carries manual instructions or a non-upgradeable strategy that omits them.
|
|
50
|
+
* Discriminated union of install-method strategies. The field that marks the kind is `upgradeable`. Consumers narrow on it to access manualUpgradeMessage with
|
|
51
|
+
* type safety; structurally impossible to declare an upgradeable strategy that carries manual instructions or a non-upgradeable strategy that omits them.
|
|
52
52
|
*/
|
|
53
53
|
export type InstallStrategy<M extends string = string> = UpgradeableInstallStrategy<M> | NonUpgradeableInstallStrategy<M>;
|
|
54
54
|
declare const STRATEGY_TUPLE: readonly [{
|
|
@@ -92,7 +92,7 @@ export type RegisteredMethod = typeof STRATEGY_TUPLE[number]["id"];
|
|
|
92
92
|
export declare const INSTALL_STRATEGIES: readonly InstallStrategy<RegisteredMethod>[];
|
|
93
93
|
/**
|
|
94
94
|
* The full install-method discriminator. Adds the unknown sentinel that the dispatcher returns when no strategy in the registry matches; everything else is
|
|
95
|
-
* registered. Consumers
|
|
95
|
+
* registered. Consumers that need exhaustive coverage over the full method set get it via this type.
|
|
96
96
|
*/
|
|
97
97
|
export type InstallMethod = RegisteredMethod | "unknown";
|
|
98
98
|
/**
|
|
@@ -132,9 +132,9 @@ export type InstallInfo = UpgradeableInstallInfo | NonUpgradeableInstallInfo;
|
|
|
132
132
|
export declare const UNKNOWN_INSTALL: NonUpgradeableInstallInfo;
|
|
133
133
|
/**
|
|
134
134
|
* Detects the installation method. Walks INSTALL_STRATEGIES in priority order; on the first match, builds an InstallInfo by composing the strategy's optional
|
|
135
|
-
* resolver output with the strategy's constant fields. The resolver's return type is restricted to ResolvableFields, so it cannot override
|
|
136
|
-
*
|
|
137
|
-
*
|
|
135
|
+
* resolver output with the strategy's constant fields. The resolver's return type is restricted to ResolvableFields, so it cannot override method, displayName,
|
|
136
|
+
* or upgradeCommand; the spread order also places constants after the resolved fields as belt-and-suspenders. The strategy's `upgradeable`
|
|
137
|
+
* field selects which InstallInfo variant the dispatcher emits, carrying manualUpgradeMessage through for the non-upgradeable case.
|
|
138
138
|
*
|
|
139
139
|
* Pure function of DetectionContext - all I/O happens inside the context's runCommand and fileExists callbacks, which the default adapter wires to real system
|
|
140
140
|
* calls and tests stub inline. Falls back to UNKNOWN_INSTALL when no strategy matches.
|
|
@@ -144,3 +144,4 @@ export declare const UNKNOWN_INSTALL: NonUpgradeableInstallInfo;
|
|
|
144
144
|
*/
|
|
145
145
|
export declare function detectInstallMethod(ctx?: DetectionContext): InstallInfo;
|
|
146
146
|
export {};
|
|
147
|
+
//# sourceMappingURL=detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detection.d.ts","sourceRoot":"","sources":["../../src/upgrade/detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ const DOCKER_STRATEGY = {
|
|
|
17
17
|
};
|
|
18
18
|
/**
|
|
19
19
|
* Homebrew strategy. Matched via the "Cellar" + "prismcast" segment chain. Homebrew formula installs always live under <prefix>/Cellar/<formula>/<version>/, so
|
|
20
|
-
* the pair
|
|
20
|
+
* the pair reliably identifies Homebrew installs on both Intel (/usr/local/Cellar) and Apple Silicon (/opt/homebrew/Cellar) layouts. The chain is deliberately the pair
|
|
21
21
|
* rather than just "Cellar" so an npm-on-Homebrew install at /opt/homebrew/lib/node_modules/prismcast/ does not false-positive...that path contains "homebrew"
|
|
22
22
|
* but not "Cellar/prismcast".
|
|
23
23
|
*/
|
|
@@ -100,9 +100,9 @@ export const UNKNOWN_INSTALL = {
|
|
|
100
100
|
};
|
|
101
101
|
/**
|
|
102
102
|
* Detects the installation method. Walks INSTALL_STRATEGIES in priority order; on the first match, builds an InstallInfo by composing the strategy's optional
|
|
103
|
-
* resolver output with the strategy's constant fields. The resolver's return type is restricted to ResolvableFields, so it cannot override
|
|
104
|
-
*
|
|
105
|
-
*
|
|
103
|
+
* resolver output with the strategy's constant fields. The resolver's return type is restricted to ResolvableFields, so it cannot override method, displayName,
|
|
104
|
+
* or upgradeCommand; the spread order also places constants after the resolved fields as belt-and-suspenders. The strategy's `upgradeable`
|
|
105
|
+
* field selects which InstallInfo variant the dispatcher emits, carrying manualUpgradeMessage through for the non-upgradeable case.
|
|
106
106
|
*
|
|
107
107
|
* Pure function of DetectionContext - all I/O happens inside the context's runCommand and fileExists callbacks, which the default adapter wires to real system
|
|
108
108
|
* calls and tests stub inline. Falls back to UNKNOWN_INSTALL when no strategy matches.
|
package/dist/upgrade/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/upgrade/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
|
|
@@ -17,3 +17,4 @@ import type { UpgradeLifecycleContext } from "./lifecycle.ts";
|
|
|
17
17
|
* @returns An UpgradeLifecycleContext populated from the live process.
|
|
18
18
|
*/
|
|
19
19
|
export declare function createDefaultLifecycleContext(): UpgradeLifecycleContext;
|
|
20
|
+
//# sourceMappingURL=lifecycle.context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.context.d.ts","sourceRoot":"","sources":["../../src/upgrade/lifecycle.context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,uBAAuB,EAAoB,MAAM,gBAAgB,CAAC;AAMhF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,IAAI,uBAAuB,CAgCvE"}
|
|
@@ -14,9 +14,9 @@ export type UpgradeStep = {
|
|
|
14
14
|
readonly logPath: string;
|
|
15
15
|
};
|
|
16
16
|
/**
|
|
17
|
-
* Result of running an upgrade subprocess.
|
|
18
|
-
*
|
|
19
|
-
* error because the user sees subprocess stderr directly on the terminal.
|
|
17
|
+
* Result of running an upgrade subprocess. The in-process strategy passes this through verbatim into the UpgradeStep "ran" variant, so its success flag is what
|
|
18
|
+
* commands.ts narrows on and the outcome shape stays consistent across the two layers. The success flag distinguishes ran-without-error from
|
|
19
|
+
* threw-or-exited-non-zero; the runner does not surface the actual error because the user sees subprocess stderr directly on the terminal.
|
|
20
20
|
*/
|
|
21
21
|
export interface UpgradeRunResult {
|
|
22
22
|
readonly success: boolean;
|
|
@@ -24,7 +24,7 @@ export interface UpgradeRunResult {
|
|
|
24
24
|
/**
|
|
25
25
|
* Runtime context the lifecycle strategies consume. Each field is one narrow capability some strategy needs. POSIX strategies use only `runCommand`; the
|
|
26
26
|
* Windows handoff strategy uses `parentPid`, `serviceTaskName`, `spawnDetached`, `upgradeLogPath`. Splitting them onto one struct keeps the adapter (and the
|
|
27
|
-
*
|
|
27
|
+
* UpgradeLifecycleContext interface it satisfies for tests) a single object, even though no strategy uses every field.
|
|
28
28
|
*/
|
|
29
29
|
export interface UpgradeLifecycleContext {
|
|
30
30
|
readonly parentPid: number;
|
|
@@ -52,9 +52,8 @@ export interface UpgradeLifecycleStrategy {
|
|
|
52
52
|
*/
|
|
53
53
|
export declare const UPGRADE_LIFECYCLES: readonly UpgradeLifecycleStrategy[];
|
|
54
54
|
/**
|
|
55
|
-
* Selects the lifecycle strategy for a given platform. Falls back to the POSIX in-process strategy when no strategy lists the platform...this
|
|
56
|
-
*
|
|
57
|
-
* platform name).
|
|
55
|
+
* Selects the lifecycle strategy for a given platform. Falls back to the POSIX in-process strategy when no strategy lists the platform...this covers any
|
|
56
|
+
* Unix-like host that is not specifically called out and keeps the function total (no thrown error from a one-off platform name).
|
|
58
57
|
*
|
|
59
58
|
* @param platform - The OS platform identifier.
|
|
60
59
|
* @returns The matching strategy, or the POSIX default when no strategy serves the platform.
|
|
@@ -70,3 +69,4 @@ export declare function selectLifecycle(platform: NodeJS.Platform): UpgradeLifec
|
|
|
70
69
|
* @returns The upgrade outcome.
|
|
71
70
|
*/
|
|
72
71
|
export declare function performUpgrade(ctx: UpgradeLifecycleContext, info: InstallInfo): UpgradeStep;
|
|
72
|
+
//# sourceMappingURL=lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/upgrade/lifecycle.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG;IAIxB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B,GAAG;IAKF,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAE/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IAItC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAI3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAInC,QAAQ,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,gBAAgB,CAAC;IAK3F,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAKjC,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,CAAC;IAI3E,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IAIvC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAIpB,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,CAAC,QAAQ,EAAE,CAAC;IAI/C,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,uBAAuB,EAAE,IAAI,EAAE,WAAW,KAAK,WAAW,CAAC;CACpF;AA0KD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,wBAAwB,EAAmB,CAAC;AAEtF;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,wBAAwB,CAGnF;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,uBAAuB,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAG3F"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The PowerShell helper that the Windows handoff strategy spawns. Reads
|
|
3
|
-
* (empty string when no service is registered), the upgrade command exactly as detection.ts produced it,
|
|
4
|
-
* installs (empty string for npm-global).
|
|
2
|
+
* The PowerShell helper that the Windows handoff strategy spawns. Reads five positional parameters: the parent process ID, the optional service task name
|
|
3
|
+
* (empty string when no service is registered), the upgrade command exactly as detection.ts produced it, the optional working directory for npm-local
|
|
4
|
+
* installs (empty string for npm-global), and the log path the helper appends its progress to.
|
|
5
5
|
*
|
|
6
6
|
* Sequence:
|
|
7
7
|
*
|
|
8
8
|
* 1. Wait for the parent process to exit. Wait-Process with -ErrorAction SilentlyContinue tolerates the (theoretical) case where the parent has already exited
|
|
9
9
|
* between us being spawned and this line running.
|
|
10
|
-
* 2. If a service task is registered
|
|
10
|
+
* 2. If a service task is registered, disable it (so RestartOnFailure does not interfere) and stop it. Stop-ScheduledTask is non-blocking, so we
|
|
11
11
|
* poll for the task to transition out of Running with a 30-second ceiling - the same poll pattern as service/generators.ts's WINDOWS_REGISTER_SCRIPT.
|
|
12
12
|
* 3. Run the upgrade command via cmd.exe /c so npm/brew shell-style command lines parse correctly. Output is captured for the log; the exit code is captured
|
|
13
13
|
* so we can re-raise it as our own exit code at the very end.
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* this step, the next reboot would silently leave the service disabled.
|
|
16
16
|
* 5. Exit with the upgrade's exit code so the helper's own exit reflects the upgrade outcome (visible in the log via $LASTEXITCODE).
|
|
17
17
|
*
|
|
18
|
-
* Logging is best-effort: a failed
|
|
18
|
+
* Logging is best-effort: a failed Add-Content call (e.g., the directory does not exist) is swallowed by SilentlyContinue so the helper still completes its
|
|
19
19
|
* primary job. The log itself is the only user-facing artifact of the helper, and we surface its path back to commands.ts as part of the UpgradeStep.
|
|
20
20
|
*/
|
|
21
21
|
const WINDOWS_HANDOFF_SCRIPT = [
|
|
@@ -137,8 +137,8 @@ const WINDOWS_HANDOFF_LIFECYCLE = {
|
|
|
137
137
|
};
|
|
138
138
|
/* The strategy registry as a narrow tuple. Declared `as const` so each entry retains its literal shape...the dispatcher walks this in order and picks the
|
|
139
139
|
* first match. POSIX comes first because it serves more platforms; Windows comes second because it serves only one. The default-fallback semantics live in
|
|
140
|
-
*
|
|
141
|
-
*
|
|
140
|
+
* selectLifecycle so an unknown platform (e.g., freebsd) falls back to the POSIX strategy because it serves the broadest platform set and keeps the
|
|
141
|
+
* dispatcher total.
|
|
142
142
|
*/
|
|
143
143
|
const STRATEGY_TUPLE = [
|
|
144
144
|
POSIX_IN_PROCESS_LIFECYCLE,
|
|
@@ -151,9 +151,8 @@ const STRATEGY_TUPLE = [
|
|
|
151
151
|
*/
|
|
152
152
|
export const UPGRADE_LIFECYCLES = STRATEGY_TUPLE;
|
|
153
153
|
/**
|
|
154
|
-
* Selects the lifecycle strategy for a given platform. Falls back to the POSIX in-process strategy when no strategy lists the platform...this
|
|
155
|
-
*
|
|
156
|
-
* platform name).
|
|
154
|
+
* Selects the lifecycle strategy for a given platform. Falls back to the POSIX in-process strategy when no strategy lists the platform...this covers any
|
|
155
|
+
* Unix-like host that is not specifically called out and keeps the function total (no thrown error from a one-off platform name).
|
|
157
156
|
*
|
|
158
157
|
* @param platform - The OS platform identifier.
|
|
159
158
|
* @returns The matching strategy, or the POSIX default when no strategy serves the platform.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/upgrade/lifecycle.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/upgrade/lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export interface PathHandle {
|
|
|
11
11
|
parentBefore(...segments: readonly string[]): PathHandle | null;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
* Options accepted by createPathHandle.
|
|
14
|
+
* Options accepted by createPathHandle. The platform override lets tests produce Windows-flavored handles on a Linux host.
|
|
15
15
|
*/
|
|
16
16
|
export interface PathHandleOptions {
|
|
17
17
|
readonly platform?: NodeJS.Platform;
|
|
@@ -21,8 +21,10 @@ export interface PathHandleOptions {
|
|
|
21
21
|
* `path.posix` accordingly, so behavior is independent of where the host process runs. The handle is logically immutable...returned fields are typed readonly
|
|
22
22
|
* and the closed-over state is never mutated.
|
|
23
23
|
*
|
|
24
|
-
* @param raw - The OS-native absolute path string. Empty
|
|
25
|
-
*
|
|
24
|
+
* @param raw - The OS-native absolute path string. Empty input produces a degenerate handle whose queries return false/null; a relative input is not rejected
|
|
25
|
+
* (hasSegmentChain still matches its segments), so callers must supply an absolute path.
|
|
26
|
+
* @param options - Optional overrides; the platform override lets tests exercise cross-platform behavior deterministically.
|
|
26
27
|
* @returns A platform-aware PathHandle.
|
|
27
28
|
*/
|
|
28
29
|
export declare function createPathHandle(raw: string, options?: PathHandleOptions): PathHandle;
|
|
30
|
+
//# sourceMappingURL=pathHandle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathHandle.d.ts","sourceRoot":"","sources":["../../src/upgrade/pathHandle.ts"],"names":[],"mappings":"AAoBA;;;;GAIG;AACH,MAAM,WAAW,UAAU;IAIzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAIrB,eAAe,CAAC,GAAG,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC;IAKzD,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAIjC,IAAI,CAAC,GAAG,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC;IAK7C,YAAY,CAAC,GAAG,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC;CACjE;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAIhC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;CACrC;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,UAAU,CA0GzF"}
|
|
@@ -22,8 +22,9 @@ import path from "node:path";
|
|
|
22
22
|
* `path.posix` accordingly, so behavior is independent of where the host process runs. The handle is logically immutable...returned fields are typed readonly
|
|
23
23
|
* and the closed-over state is never mutated.
|
|
24
24
|
*
|
|
25
|
-
* @param raw - The OS-native absolute path string. Empty
|
|
26
|
-
*
|
|
25
|
+
* @param raw - The OS-native absolute path string. Empty input produces a degenerate handle whose queries return false/null; a relative input is not rejected
|
|
26
|
+
* (hasSegmentChain still matches its segments), so callers must supply an absolute path.
|
|
27
|
+
* @param options - Optional overrides; the platform override lets tests exercise cross-platform behavior deterministically.
|
|
27
28
|
* @returns A platform-aware PathHandle.
|
|
28
29
|
*/
|
|
29
30
|
export function createPathHandle(raw, options = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathHandle.js","sourceRoot":"","sources":["../../src/upgrade/pathHandle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,IAAI,MAAM,WAAW,CAAC;AA0C7B
|
|
1
|
+
{"version":3,"file":"pathHandle.js","sourceRoot":"","sources":["../../src/upgrade/pathHandle.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,3 +13,4 @@ export declare function createDefaultBootSessionContext(): BootSessionContext;
|
|
|
13
13
|
* @returns The starttime field as a string, or null when the payload is malformed.
|
|
14
14
|
*/
|
|
15
15
|
export declare function parsePid1StartTicks(raw: string): Nullable<string>;
|
|
16
|
+
//# sourceMappingURL=bootSession.context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootSession.context.d.ts","sourceRoot":"","sources":["../../src/utils/bootSession.context.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAKlD;;;GAGG;AACH,wBAAgB,+BAA+B,IAAI,kBAAkB,CAuBpE;AAkBD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAmBjE"}
|
|
@@ -6,11 +6,12 @@ import os from "node:os";
|
|
|
6
6
|
* @returns A BootSessionContext whose readings are frozen at the moment of this call.
|
|
7
7
|
*/
|
|
8
8
|
export function createDefaultBootSessionContext() {
|
|
9
|
-
// Snapshot the host boot minute by computing it from system uptime. os.uptime() is sleep-inclusive on Linux
|
|
10
|
-
//
|
|
11
|
-
// drift between writes and reads. Future upgrade: on Linux,
|
|
12
|
-
// immune to clock drift; switching this branch to read that file would
|
|
13
|
-
// Windows (Win32_OS.LastBootUpTime) have equivalent kernel facts but require a
|
|
9
|
+
// Snapshot the host boot minute by computing it from system uptime. os.uptime() is sleep-inclusive on Linux (clock_gettime(CLOCK_BOOTTIME), with a /proc/uptime read
|
|
10
|
+
// tried first), macOS (sysctl KERN_BOOTTIME), and Windows (GetTickCount64); each of those primitives keeps counting while the system is suspended, so this value
|
|
11
|
+
// remains stable across sleep/wake cycles. Rounding to the nearest minute absorbs sub-minute NTP drift between writes and reads. Future upgrade: on Linux,
|
|
12
|
+
// /proc/sys/kernel/random/boot_id is a kernel-generated UUID that is regenerated each boot and immune to clock drift; switching this branch to read that file would
|
|
13
|
+
// eliminate the minute-boundary jitter entirely. macOS (sysctl kern.boottime) and Windows (Win32_OS.LastBootUpTime) have equivalent kernel facts but require a
|
|
14
|
+
// subprocess; deferred until a real boundary-jitter incident motivates the work.
|
|
14
15
|
const hostBootMinuteSnapshot = Math.round((Date.now() - (os.uptime() * 1000)) / 60000);
|
|
15
16
|
// Snapshot the container detection result. The project-wide helper reads PRISMCAST_CONTAINER and /.dockerenv; both are stable for the process lifetime.
|
|
16
17
|
const inContainerSnapshot = isRunningInContainer();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootSession.context.js","sourceRoot":"","sources":["../../src/utils/bootSession.context.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB;;;GAGG;AACH,MAAM,UAAU,+BAA+B;IAE7C,
|
|
1
|
+
{"version":3,"file":"bootSession.context.js","sourceRoot":"","sources":["../../src/utils/bootSession.context.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB;;;GAGG;AACH,MAAM,UAAU,+BAA+B;IAE7C,qKAAqK;IACrK,iKAAiK;IACjK,2JAA2J;IAC3J,oKAAoK;IACpK,+JAA+J;IAC/J,iFAAiF;IACjF,MAAM,sBAAsB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAEvF,wJAAwJ;IACxJ,MAAM,mBAAmB,GAAG,oBAAoB,EAAE,CAAC;IAEnD,yJAAyJ;IACzJ,8HAA8H;IAC9H,MAAM,4BAA4B,GAAG,mBAAmB,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAEvF,OAAO;QAEL,oBAAoB,EAAE,GAAG,EAAE,CAAC,4BAA4B;QACxD,cAAc,EAAE,GAAG,EAAE,CAAC,sBAAsB;QAC5C,WAAW,EAAE,GAAG,EAAE,CAAC,mBAAmB;KACvC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB;IAEzB,IAAI,CAAC;QAEH,OAAO,mBAAmB,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAE7C,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEpC,IAAG,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEzD,IAAG,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAEtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oJAAoJ;IACpJ,4EAA4E;IAC5E,OAAO,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;AAC5B,CAAC"}
|
|
@@ -14,3 +14,4 @@ export interface BootSessionContext {
|
|
|
14
14
|
* @returns A string that is stable across calls in the same kernel/container session and differs across reboots or container restarts.
|
|
15
15
|
*/
|
|
16
16
|
export declare function getBootSessionId(ctx?: BootSessionContext): string;
|
|
17
|
+
//# sourceMappingURL=bootSession.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootSession.d.ts","sourceRoot":"","sources":["../../src/utils/bootSession.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGlD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAIjC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGtD,QAAQ,CAAC,cAAc,EAAE,MAAM,MAAM,CAAC;IAGtC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC;CACrC;AAOD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,GAAE,kBAAmC,GAAG,MAAM,CAYjF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootSession.js","sourceRoot":"","sources":["../../src/utils/bootSession.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bootSession.js","sourceRoot":"","sources":["../../src/utils/bootSession.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAkB3E;;GAEG;AACH,MAAM,cAAc,GAAG,+BAA+B,EAAE,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAA0B,cAAc;IAEvE,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC;IAE1C,IAAG,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;QAEtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,CAAC,oBAAoB,EAAE,CAAC;IAEvC,OAAO,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC;AACrD,CAAC"}
|