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.
Files changed (693) hide show
  1. package/dist/app.d.ts +6 -3
  2. package/dist/app.d.ts.map +1 -0
  3. package/dist/app.js +140 -86
  4. package/dist/app.js.map +1 -1
  5. package/dist/browser/blockedPage.d.ts +80 -0
  6. package/dist/browser/blockedPage.d.ts.map +1 -0
  7. package/dist/browser/blockedPage.js +209 -0
  8. package/dist/browser/blockedPage.js.map +1 -0
  9. package/dist/browser/browserSupervisor.d.ts +80 -0
  10. package/dist/browser/browserSupervisor.d.ts.map +1 -0
  11. package/dist/browser/browserSupervisor.js +186 -0
  12. package/dist/browser/browserSupervisor.js.map +1 -0
  13. package/dist/browser/cdp.d.ts +1 -0
  14. package/dist/browser/cdp.d.ts.map +1 -0
  15. package/dist/browser/cdp.js +6 -5
  16. package/dist/browser/cdp.js.map +1 -1
  17. package/dist/browser/channelSelection.d.ts +45 -14
  18. package/dist/browser/channelSelection.d.ts.map +1 -0
  19. package/dist/browser/channelSelection.js +81 -18
  20. package/dist/browser/channelSelection.js.map +1 -1
  21. package/dist/browser/consent.d.ts +152 -0
  22. package/dist/browser/consent.d.ts.map +1 -0
  23. package/dist/browser/consent.js +418 -0
  24. package/dist/browser/consent.js.map +1 -0
  25. package/dist/browser/display.d.ts +1 -0
  26. package/dist/browser/display.d.ts.map +1 -0
  27. package/dist/browser/hlsPlaylistObserver.d.ts +55 -0
  28. package/dist/browser/hlsPlaylistObserver.d.ts.map +1 -0
  29. package/dist/browser/hlsPlaylistObserver.js +132 -0
  30. package/dist/browser/hlsPlaylistObserver.js.map +1 -0
  31. package/dist/browser/index.d.ts +67 -40
  32. package/dist/browser/index.d.ts.map +1 -0
  33. package/dist/browser/index.js +508 -300
  34. package/dist/browser/index.js.map +1 -1
  35. package/dist/browser/launchGovernor.d.ts +89 -0
  36. package/dist/browser/launchGovernor.d.ts.map +1 -0
  37. package/dist/browser/launchGovernor.js +96 -0
  38. package/dist/browser/launchGovernor.js.map +1 -0
  39. package/dist/browser/login.d.ts +10 -2
  40. package/dist/browser/login.d.ts.map +1 -0
  41. package/dist/browser/login.js +36 -5
  42. package/dist/browser/login.js.map +1 -1
  43. package/dist/browser/manifestInterceptor.d.ts +102 -49
  44. package/dist/browser/manifestInterceptor.d.ts.map +1 -0
  45. package/dist/browser/manifestInterceptor.js +219 -237
  46. package/dist/browser/manifestInterceptor.js.map +1 -1
  47. package/dist/browser/pageStaleness.d.ts +30 -0
  48. package/dist/browser/pageStaleness.d.ts.map +1 -0
  49. package/dist/browser/pageStaleness.js +76 -0
  50. package/dist/browser/pageStaleness.js.map +1 -0
  51. package/dist/browser/precaching.d.ts +95 -3
  52. package/dist/browser/precaching.d.ts.map +1 -0
  53. package/dist/browser/precaching.js +499 -65
  54. package/dist/browser/precaching.js.map +1 -1
  55. package/dist/browser/tabNetworkObserver.d.ts +49 -0
  56. package/dist/browser/tabNetworkObserver.d.ts.map +1 -0
  57. package/dist/browser/tabNetworkObserver.js +144 -0
  58. package/dist/browser/tabNetworkObserver.js.map +1 -0
  59. package/dist/browser/tuning/cache.d.ts +61 -0
  60. package/dist/browser/tuning/cache.d.ts.map +1 -0
  61. package/dist/browser/tuning/cache.js +62 -0
  62. package/dist/browser/tuning/cache.js.map +1 -0
  63. package/dist/browser/tuning/comcastPolymer.d.ts +3 -2
  64. package/dist/browser/tuning/comcastPolymer.d.ts.map +1 -0
  65. package/dist/browser/tuning/comcastPolymer.js +79 -102
  66. package/dist/browser/tuning/comcastPolymer.js.map +1 -1
  67. package/dist/browser/tuning/cox.d.ts +1 -0
  68. package/dist/browser/tuning/cox.d.ts.map +1 -0
  69. package/dist/browser/tuning/directv.d.ts +1 -0
  70. package/dist/browser/tuning/directv.d.ts.map +1 -0
  71. package/dist/browser/tuning/directv.js +52 -46
  72. package/dist/browser/tuning/directv.js.map +1 -1
  73. package/dist/browser/tuning/fox.d.ts +1 -0
  74. package/dist/browser/tuning/fox.d.ts.map +1 -0
  75. package/dist/browser/tuning/fox.js +13 -12
  76. package/dist/browser/tuning/fox.js.map +1 -1
  77. package/dist/browser/tuning/gridSearch.d.ts +68 -0
  78. package/dist/browser/tuning/gridSearch.d.ts.map +1 -0
  79. package/dist/browser/tuning/gridSearch.js +85 -0
  80. package/dist/browser/tuning/gridSearch.js.map +1 -0
  81. package/dist/browser/tuning/hbo.d.ts +1 -0
  82. package/dist/browser/tuning/hbo.d.ts.map +1 -0
  83. package/dist/browser/tuning/hbo.js +73 -45
  84. package/dist/browser/tuning/hbo.js.map +1 -1
  85. package/dist/browser/tuning/hulu.d.ts +1 -0
  86. package/dist/browser/tuning/hulu.d.ts.map +1 -0
  87. package/dist/browser/tuning/hulu.js +128 -173
  88. package/dist/browser/tuning/hulu.js.map +1 -1
  89. package/dist/browser/tuning/shared.d.ts +75 -5
  90. package/dist/browser/tuning/shared.d.ts.map +1 -0
  91. package/dist/browser/tuning/shared.js +216 -6
  92. package/dist/browser/tuning/shared.js.map +1 -1
  93. package/dist/browser/tuning/sling.d.ts +1 -0
  94. package/dist/browser/tuning/sling.d.ts.map +1 -0
  95. package/dist/browser/tuning/sling.js +105 -126
  96. package/dist/browser/tuning/sling.js.map +1 -1
  97. package/dist/browser/tuning/spectrum.d.ts +1 -0
  98. package/dist/browser/tuning/spectrum.d.ts.map +1 -0
  99. package/dist/browser/tuning/spectrum.js +80 -125
  100. package/dist/browser/tuning/spectrum.js.map +1 -1
  101. package/dist/browser/tuning/thumbnailRow.d.ts +1 -0
  102. package/dist/browser/tuning/thumbnailRow.d.ts.map +1 -0
  103. package/dist/browser/tuning/thumbnailRow.js +8 -2
  104. package/dist/browser/tuning/thumbnailRow.js.map +1 -1
  105. package/dist/browser/tuning/tileClick.d.ts +1 -0
  106. package/dist/browser/tuning/tileClick.d.ts.map +1 -0
  107. package/dist/browser/tuning/tileClick.js +3 -2
  108. package/dist/browser/tuning/tileClick.js.map +1 -1
  109. package/dist/browser/tuning/xfinity.d.ts +1 -0
  110. package/dist/browser/tuning/xfinity.d.ts.map +1 -0
  111. package/dist/browser/tuning/youtubeTv.d.ts +1 -0
  112. package/dist/browser/tuning/youtubeTv.d.ts.map +1 -0
  113. package/dist/browser/tuning/youtubeTv.js +74 -127
  114. package/dist/browser/tuning/youtubeTv.js.map +1 -1
  115. package/dist/browser/video.d.ts +54 -14
  116. package/dist/browser/video.d.ts.map +1 -0
  117. package/dist/browser/video.js +296 -138
  118. package/dist/browser/video.js.map +1 -1
  119. package/dist/channels/index.d.ts +1 -0
  120. package/dist/channels/index.d.ts.map +1 -0
  121. package/dist/channels/index.js +12 -9
  122. package/dist/channels/index.js.map +1 -1
  123. package/dist/config/channelForm.d.ts +15 -1
  124. package/dist/config/channelForm.d.ts.map +1 -0
  125. package/dist/config/channelForm.js +28 -12
  126. package/dist/config/channelForm.js.map +1 -1
  127. package/dist/config/consistencyProbe.d.ts +1 -0
  128. package/dist/config/consistencyProbe.d.ts.map +1 -0
  129. package/dist/config/consistencyProbe.js +27 -21
  130. package/dist/config/consistencyProbe.js.map +1 -1
  131. package/dist/config/health.d.ts +41 -8
  132. package/dist/config/health.d.ts.map +1 -0
  133. package/dist/config/health.js +189 -38
  134. package/dist/config/health.js.map +1 -1
  135. package/dist/config/index.d.ts +55 -3
  136. package/dist/config/index.d.ts.map +1 -0
  137. package/dist/config/index.js +320 -69
  138. package/dist/config/index.js.map +1 -1
  139. package/dist/config/paths.d.ts +10 -9
  140. package/dist/config/paths.d.ts.map +1 -0
  141. package/dist/config/paths.js +11 -11
  142. package/dist/config/paths.js.map +1 -1
  143. package/dist/config/persistence.context.d.ts +1 -0
  144. package/dist/config/persistence.context.d.ts.map +1 -0
  145. package/dist/config/persistence.d.ts +13 -10
  146. package/dist/config/persistence.d.ts.map +1 -0
  147. package/dist/config/persistence.js +40 -21
  148. package/dist/config/persistence.js.map +1 -1
  149. package/dist/config/presets.d.ts +1 -0
  150. package/dist/config/presets.d.ts.map +1 -0
  151. package/dist/config/profiles.d.ts +22 -15
  152. package/dist/config/profiles.d.ts.map +1 -0
  153. package/dist/config/profiles.js +81 -47
  154. package/dist/config/profiles.js.map +1 -1
  155. package/dist/config/providerLineups.d.ts +47 -0
  156. package/dist/config/providerLineups.d.ts.map +1 -0
  157. package/dist/config/providerLineups.js +137 -0
  158. package/dist/config/providerLineups.js.map +1 -0
  159. package/dist/config/reactivity.d.ts +84 -0
  160. package/dist/config/reactivity.d.ts.map +1 -0
  161. package/dist/config/reactivity.js +226 -0
  162. package/dist/config/reactivity.js.map +1 -0
  163. package/dist/config/servicePacks.d.ts +18 -2
  164. package/dist/config/servicePacks.d.ts.map +1 -0
  165. package/dist/config/servicePacks.js +53 -11
  166. package/dist/config/servicePacks.js.map +1 -1
  167. package/dist/config/services.d.ts +21 -15
  168. package/dist/config/services.d.ts.map +1 -0
  169. package/dist/config/services.js +35 -24
  170. package/dist/config/services.js.map +1 -1
  171. package/dist/config/sites.d.ts +6 -4
  172. package/dist/config/sites.d.ts.map +1 -0
  173. package/dist/config/sites.js +15 -11
  174. package/dist/config/sites.js.map +1 -1
  175. package/dist/config/userChannels.d.ts +129 -30
  176. package/dist/config/userChannels.d.ts.map +1 -0
  177. package/dist/config/userChannels.js +333 -68
  178. package/dist/config/userChannels.js.map +1 -1
  179. package/dist/config/userConfig.d.ts +14 -9
  180. package/dist/config/userConfig.d.ts.map +1 -0
  181. package/dist/config/userConfig.js +87 -25
  182. package/dist/config/userConfig.js.map +1 -1
  183. package/dist/config/userProfiles.d.ts +10 -6
  184. package/dist/config/userProfiles.d.ts.map +1 -0
  185. package/dist/config/userProfiles.js +64 -39
  186. package/dist/config/userProfiles.js.map +1 -1
  187. package/dist/hdhr/channelMap.d.ts +1 -0
  188. package/dist/hdhr/channelMap.d.ts.map +1 -0
  189. package/dist/hdhr/deviceId.d.ts +1 -0
  190. package/dist/hdhr/deviceId.d.ts.map +1 -0
  191. package/dist/hdhr/discover.d.ts +1 -0
  192. package/dist/hdhr/discover.d.ts.map +1 -0
  193. package/dist/hdhr/discover.js +48 -47
  194. package/dist/hdhr/discover.js.map +1 -1
  195. package/dist/hdhr/getHandlers.d.ts +29 -0
  196. package/dist/hdhr/getHandlers.d.ts.map +1 -0
  197. package/dist/hdhr/getHandlers.js +196 -0
  198. package/dist/hdhr/getHandlers.js.map +1 -0
  199. package/dist/hdhr/identity.d.ts +36 -0
  200. package/dist/hdhr/identity.d.ts.map +1 -0
  201. package/dist/hdhr/identity.js +51 -0
  202. package/dist/hdhr/identity.js.map +1 -0
  203. package/dist/hdhr/index.d.ts +22 -4
  204. package/dist/hdhr/index.d.ts.map +1 -0
  205. package/dist/hdhr/index.js +229 -54
  206. package/dist/hdhr/index.js.map +1 -1
  207. package/dist/hdhr/protocol.d.ts +75 -0
  208. package/dist/hdhr/protocol.d.ts.map +1 -0
  209. package/dist/hdhr/protocol.js +264 -0
  210. package/dist/hdhr/protocol.js.map +1 -0
  211. package/dist/hdhr/tunerState.d.ts +24 -0
  212. package/dist/hdhr/tunerState.d.ts.map +1 -0
  213. package/dist/hdhr/tunerState.js +67 -0
  214. package/dist/hdhr/tunerState.js.map +1 -0
  215. package/dist/hdhr/udp.d.ts +43 -0
  216. package/dist/hdhr/udp.d.ts.map +1 -0
  217. package/dist/hdhr/udp.js +277 -0
  218. package/dist/hdhr/udp.js.map +1 -0
  219. package/dist/identity.d.ts +1 -0
  220. package/dist/identity.d.ts.map +1 -0
  221. package/dist/identity.js +13 -11
  222. package/dist/identity.js.map +1 -1
  223. package/dist/index.d.ts +1 -0
  224. package/dist/index.d.ts.map +1 -0
  225. package/dist/index.js +11 -12
  226. package/dist/index.js.map +1 -1
  227. package/dist/native/codecInference.d.ts +1 -0
  228. package/dist/native/codecInference.d.ts.map +1 -0
  229. package/dist/native/codecInference.js +50 -5
  230. package/dist/native/codecInference.js.map +1 -1
  231. package/dist/native/decrypt.d.ts +6 -2
  232. package/dist/native/decrypt.d.ts.map +1 -0
  233. package/dist/native/decrypt.js +15 -8
  234. package/dist/native/decrypt.js.map +1 -1
  235. package/dist/native/index.d.ts +40 -17
  236. package/dist/native/index.d.ts.map +1 -0
  237. package/dist/native/index.js +281 -120
  238. package/dist/native/index.js.map +1 -1
  239. package/dist/native/probe.d.ts +114 -18
  240. package/dist/native/probe.d.ts.map +1 -0
  241. package/dist/native/probe.js +452 -115
  242. package/dist/native/probe.js.map +1 -1
  243. package/dist/native/proxy.d.ts +57 -5
  244. package/dist/native/proxy.d.ts.map +1 -0
  245. package/dist/native/proxy.js +604 -170
  246. package/dist/native/proxy.js.map +1 -1
  247. package/dist/native/tokenExpiry.d.ts +1 -0
  248. package/dist/native/tokenExpiry.d.ts.map +1 -0
  249. package/dist/native/tokenExpiry.js +1 -1
  250. package/dist/routes/assets.d.ts +1 -0
  251. package/dist/routes/assets.d.ts.map +1 -0
  252. package/dist/routes/assets.js +4 -2
  253. package/dist/routes/assets.js.map +1 -1
  254. package/dist/routes/auth.d.ts +1 -0
  255. package/dist/routes/auth.d.ts.map +1 -0
  256. package/dist/routes/auth.js +0 -1
  257. package/dist/routes/auth.js.map +1 -1
  258. package/dist/routes/cdp.d.ts +5 -5
  259. package/dist/routes/cdp.d.ts.map +1 -0
  260. package/dist/routes/cdp.js +59 -20
  261. package/dist/routes/cdp.js.map +1 -1
  262. package/dist/routes/channels.d.ts +1 -0
  263. package/dist/routes/channels.d.ts.map +1 -0
  264. package/dist/routes/channels.js +2 -1
  265. package/dist/routes/channels.js.map +1 -1
  266. package/dist/routes/clientActions.d.ts +98 -0
  267. package/dist/routes/clientActions.d.ts.map +1 -0
  268. package/dist/routes/clientActions.js +113 -0
  269. package/dist/routes/clientActions.js.map +1 -0
  270. package/dist/routes/components.d.ts +5 -3
  271. package/dist/routes/components.d.ts.map +1 -0
  272. package/dist/routes/components.js +36 -39
  273. package/dist/routes/components.js.map +1 -1
  274. package/dist/routes/config/channels/endpoints/browse.d.ts +1 -0
  275. package/dist/routes/config/channels/endpoints/browse.d.ts.map +1 -0
  276. package/dist/routes/config/channels/endpoints/browse.js +23 -10
  277. package/dist/routes/config/channels/endpoints/browse.js.map +1 -1
  278. package/dist/routes/config/channels/endpoints/bulk.d.ts +1 -0
  279. package/dist/routes/config/channels/endpoints/bulk.d.ts.map +1 -0
  280. package/dist/routes/config/channels/endpoints/bulk.js +5 -3
  281. package/dist/routes/config/channels/endpoints/bulk.js.map +1 -1
  282. package/dist/routes/config/channels/endpoints/crud.d.ts +1 -0
  283. package/dist/routes/config/channels/endpoints/crud.d.ts.map +1 -0
  284. package/dist/routes/config/channels/endpoints/crud.js +85 -93
  285. package/dist/routes/config/channels/endpoints/crud.js.map +1 -1
  286. package/dist/routes/config/channels/endpoints/importExport.d.ts +1 -0
  287. package/dist/routes/config/channels/endpoints/importExport.d.ts.map +1 -0
  288. package/dist/routes/config/channels/endpoints/importExport.js +6 -3
  289. package/dist/routes/config/channels/endpoints/importExport.js.map +1 -1
  290. package/dist/routes/config/channels/endpoints/predefined.d.ts +1 -0
  291. package/dist/routes/config/channels/endpoints/predefined.d.ts.map +1 -0
  292. package/dist/routes/config/channels/endpoints/prefs.d.ts +1 -0
  293. package/dist/routes/config/channels/endpoints/prefs.d.ts.map +1 -0
  294. package/dist/routes/config/channels/endpoints/prefs.js +2 -1
  295. package/dist/routes/config/channels/endpoints/prefs.js.map +1 -1
  296. package/dist/routes/config/channels/endpoints/service.d.ts +2 -1
  297. package/dist/routes/config/channels/endpoints/service.d.ts.map +1 -0
  298. package/dist/routes/config/channels/endpoints/service.js +3 -1
  299. package/dist/routes/config/channels/endpoints/service.js.map +1 -1
  300. package/dist/routes/config/channels/endpoints/tags.d.ts +1 -0
  301. package/dist/routes/config/channels/endpoints/tags.d.ts.map +1 -0
  302. package/dist/routes/config/channels/endpoints/tags.js +13 -7
  303. package/dist/routes/config/channels/endpoints/tags.js.map +1 -1
  304. package/dist/routes/config/channels/healthBridge.d.ts +24 -0
  305. package/dist/routes/config/channels/healthBridge.d.ts.map +1 -0
  306. package/dist/routes/config/channels/healthBridge.js +71 -0
  307. package/dist/routes/config/channels/healthBridge.js.map +1 -0
  308. package/dist/routes/config/channels/http/handler.d.ts +1 -0
  309. package/dist/routes/config/channels/http/handler.d.ts.map +1 -0
  310. package/dist/routes/config/channels/http/playlistHint.d.ts +2 -1
  311. package/dist/routes/config/channels/http/playlistHint.d.ts.map +1 -0
  312. package/dist/routes/config/channels/http/playlistHint.js +16 -2
  313. package/dist/routes/config/channels/http/playlistHint.js.map +1 -1
  314. package/dist/routes/config/channels/http/serviceWarning.d.ts +4 -2
  315. package/dist/routes/config/channels/http/serviceWarning.d.ts.map +1 -0
  316. package/dist/routes/config/channels/http/serviceWarning.js +3 -2
  317. package/dist/routes/config/channels/http/serviceWarning.js.map +1 -1
  318. package/dist/routes/config/channels/index.d.ts +1 -0
  319. package/dist/routes/config/channels/index.d.ts.map +1 -0
  320. package/dist/routes/config/channels/setup.d.ts +1 -0
  321. package/dist/routes/config/channels/setup.d.ts.map +1 -0
  322. package/dist/routes/config/channels/table.d.ts +3 -3
  323. package/dist/routes/config/channels/table.d.ts.map +1 -0
  324. package/dist/routes/config/channels/table.js +148 -107
  325. package/dist/routes/config/channels/table.js.map +1 -1
  326. package/dist/routes/config/http/envelope.d.ts +1 -0
  327. package/dist/routes/config/http/envelope.d.ts.map +1 -0
  328. package/dist/routes/config/index.d.ts +35 -3
  329. package/dist/routes/config/index.d.ts.map +1 -0
  330. package/dist/routes/config/index.js +51 -2
  331. package/dist/routes/config/index.js.map +1 -1
  332. package/dist/routes/config/services.d.ts +5 -4
  333. package/dist/routes/config/services.d.ts.map +1 -0
  334. package/dist/routes/config/services.js +57 -43
  335. package/dist/routes/config/services.js.map +1 -1
  336. package/dist/routes/config/settings.d.ts +1 -0
  337. package/dist/routes/config/settings.d.ts.map +1 -0
  338. package/dist/routes/config/settings.js +98 -49
  339. package/dist/routes/config/settings.js.map +1 -1
  340. package/dist/routes/debug.d.ts +1 -0
  341. package/dist/routes/debug.d.ts.map +1 -0
  342. package/dist/routes/debug.js +277 -139
  343. package/dist/routes/debug.js.map +1 -1
  344. package/dist/routes/health.d.ts +39 -1
  345. package/dist/routes/health.d.ts.map +1 -0
  346. package/dist/routes/health.js +33 -27
  347. package/dist/routes/health.js.map +1 -1
  348. package/dist/routes/hls.d.ts +1 -0
  349. package/dist/routes/hls.d.ts.map +1 -0
  350. package/dist/routes/icons.d.ts +1 -0
  351. package/dist/routes/icons.d.ts.map +1 -0
  352. package/dist/routes/icons.js +1 -1
  353. package/dist/routes/index.d.ts +1 -0
  354. package/dist/routes/index.d.ts.map +1 -0
  355. package/dist/routes/logs.d.ts +1 -0
  356. package/dist/routes/logs.d.ts.map +1 -0
  357. package/dist/routes/logs.js +14 -4
  358. package/dist/routes/logs.js.map +1 -1
  359. package/dist/routes/mpegts.d.ts +1 -0
  360. package/dist/routes/mpegts.d.ts.map +1 -0
  361. package/dist/routes/play.d.ts +1 -0
  362. package/dist/routes/play.d.ts.map +1 -0
  363. package/dist/routes/playlist.d.ts +1 -0
  364. package/dist/routes/playlist.d.ts.map +1 -0
  365. package/dist/routes/playlist.js +7 -2
  366. package/dist/routes/playlist.js.map +1 -1
  367. package/dist/routes/root/content.d.ts +8 -5
  368. package/dist/routes/root/content.d.ts.map +1 -0
  369. package/dist/routes/root/content.js +29 -26
  370. package/dist/routes/root/content.js.map +1 -1
  371. package/dist/routes/root/index.d.ts +2 -1
  372. package/dist/routes/root/index.d.ts.map +1 -0
  373. package/dist/routes/root/index.js +26 -21
  374. package/dist/routes/root/index.js.map +1 -1
  375. package/dist/routes/root/scripts/channels.d.ts +6 -0
  376. package/dist/routes/root/scripts/channels.d.ts.map +1 -0
  377. package/dist/routes/root/scripts/channels.js +197 -118
  378. package/dist/routes/root/scripts/channels.js.map +1 -1
  379. package/dist/routes/root/scripts/clientEscape.d.ts +22 -0
  380. package/dist/routes/root/scripts/clientEscape.d.ts.map +1 -0
  381. package/dist/routes/root/scripts/clientEscape.js +41 -0
  382. package/dist/routes/root/scripts/clientEscape.js.map +1 -0
  383. package/dist/routes/root/scripts/clientUrl.d.ts +23 -0
  384. package/dist/routes/root/scripts/clientUrl.d.ts.map +1 -0
  385. package/dist/routes/root/scripts/clientUrl.js +44 -0
  386. package/dist/routes/root/scripts/clientUrl.js.map +1 -0
  387. package/dist/routes/root/scripts/config.d.ts +6 -0
  388. package/dist/routes/root/scripts/config.d.ts.map +1 -0
  389. package/dist/routes/root/scripts/config.js +110 -24
  390. package/dist/routes/root/scripts/config.js.map +1 -1
  391. package/dist/routes/root/scripts/index.d.ts +1 -0
  392. package/dist/routes/root/scripts/index.d.ts.map +1 -0
  393. package/dist/routes/root/scripts/shared.d.ts +1 -0
  394. package/dist/routes/root/scripts/shared.d.ts.map +1 -0
  395. package/dist/routes/root/scripts/shared.js +112 -26
  396. package/dist/routes/root/scripts/shared.js.map +1 -1
  397. package/dist/routes/root/scripts/status.d.ts +1 -0
  398. package/dist/routes/root/scripts/status.d.ts.map +1 -0
  399. package/dist/routes/root/scripts/status.handlers.d.ts +23 -33
  400. package/dist/routes/root/scripts/status.handlers.d.ts.map +1 -0
  401. package/dist/routes/root/scripts/status.handlers.js +46 -92
  402. package/dist/routes/root/scripts/status.handlers.js.map +1 -1
  403. package/dist/routes/root/scripts/status.js +21 -8
  404. package/dist/routes/root/scripts/status.js.map +1 -1
  405. package/dist/routes/root/styles.d.ts +1 -0
  406. package/dist/routes/root/styles.d.ts.map +1 -0
  407. package/dist/routes/root/styles.js +7 -4
  408. package/dist/routes/root/styles.js.map +1 -1
  409. package/dist/routes/services.d.ts +13 -1
  410. package/dist/routes/services.d.ts.map +1 -0
  411. package/dist/routes/services.js +81 -68
  412. package/dist/routes/services.js.map +1 -1
  413. package/dist/routes/sse.d.ts +1 -0
  414. package/dist/routes/sse.d.ts.map +1 -0
  415. package/dist/routes/sse.js +1 -1
  416. package/dist/routes/sse.js.map +1 -1
  417. package/dist/routes/streams.d.ts +2 -1
  418. package/dist/routes/streams.d.ts.map +1 -0
  419. package/dist/routes/streams.js +6 -4
  420. package/dist/routes/streams.js.map +1 -1
  421. package/dist/routes/theme.d.ts +3 -2
  422. package/dist/routes/theme.d.ts.map +1 -0
  423. package/dist/routes/theme.js +6 -5
  424. package/dist/routes/theme.js.map +1 -1
  425. package/dist/routes/ui.d.ts +3 -1
  426. package/dist/routes/ui.d.ts.map +1 -0
  427. package/dist/routes/ui.js +16 -4
  428. package/dist/routes/ui.js.map +1 -1
  429. package/dist/routes/upgrade.d.ts +1 -0
  430. package/dist/routes/upgrade.d.ts.map +1 -0
  431. package/dist/routes/upgrade.js +6 -2
  432. package/dist/routes/upgrade.js.map +1 -1
  433. package/dist/service/commands.context.d.ts +1 -0
  434. package/dist/service/commands.context.d.ts.map +1 -0
  435. package/dist/service/commands.context.js +4 -3
  436. package/dist/service/commands.context.js.map +1 -1
  437. package/dist/service/commands.d.ts +1 -0
  438. package/dist/service/commands.d.ts.map +1 -0
  439. package/dist/service/commands.js +10 -13
  440. package/dist/service/commands.js.map +1 -1
  441. package/dist/service/generators.context.d.ts +1 -0
  442. package/dist/service/generators.context.d.ts.map +1 -0
  443. package/dist/service/generators.context.js +1 -1
  444. package/dist/service/generators.context.js.map +1 -1
  445. package/dist/service/generators.d.ts +4 -3
  446. package/dist/service/generators.d.ts.map +1 -0
  447. package/dist/service/generators.js +111 -31
  448. package/dist/service/generators.js.map +1 -1
  449. package/dist/service/index.d.ts +1 -0
  450. package/dist/service/index.d.ts.map +1 -0
  451. package/dist/streaming/captureLock.d.ts +44 -0
  452. package/dist/streaming/captureLock.d.ts.map +1 -0
  453. package/dist/streaming/captureLock.js +95 -0
  454. package/dist/streaming/captureLock.js.map +1 -0
  455. package/dist/streaming/captureSession.d.ts +31 -0
  456. package/dist/streaming/captureSession.d.ts.map +1 -0
  457. package/dist/streaming/captureSession.js +54 -0
  458. package/dist/streaming/captureSession.js.map +1 -0
  459. package/dist/streaming/clients.d.ts +1 -0
  460. package/dist/streaming/clients.d.ts.map +1 -0
  461. package/dist/streaming/codec.d.ts +1 -0
  462. package/dist/streaming/codec.d.ts.map +1 -0
  463. package/dist/streaming/fmp4Segmenter.d.ts +29 -2
  464. package/dist/streaming/fmp4Segmenter.d.ts.map +1 -0
  465. package/dist/streaming/fmp4Segmenter.js +79 -26
  466. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  467. package/dist/streaming/hls.d.ts +18 -7
  468. package/dist/streaming/hls.d.ts.map +1 -0
  469. package/dist/streaming/hls.js +220 -120
  470. package/dist/streaming/hls.js.map +1 -1
  471. package/dist/streaming/hlsResume.d.ts +1 -0
  472. package/dist/streaming/hlsResume.d.ts.map +1 -0
  473. package/dist/streaming/hlsResume.js +1 -1
  474. package/dist/streaming/hlsResume.js.map +1 -1
  475. package/dist/streaming/hlsSegments.d.ts +59 -2
  476. package/dist/streaming/hlsSegments.d.ts.map +1 -0
  477. package/dist/streaming/hlsSegments.js +147 -17
  478. package/dist/streaming/hlsSegments.js.map +1 -1
  479. package/dist/streaming/lifecycle.d.ts +4 -1
  480. package/dist/streaming/lifecycle.d.ts.map +1 -0
  481. package/dist/streaming/lifecycle.js +65 -85
  482. package/dist/streaming/lifecycle.js.map +1 -1
  483. package/dist/streaming/monitor.d.ts +6 -4
  484. package/dist/streaming/monitor.d.ts.map +1 -0
  485. package/dist/streaming/monitor.js +343 -145
  486. package/dist/streaming/monitor.js.map +1 -1
  487. package/dist/streaming/mp4Parser.d.ts +5 -4
  488. package/dist/streaming/mp4Parser.d.ts.map +1 -0
  489. package/dist/streaming/mp4Parser.js +36 -13
  490. package/dist/streaming/mp4Parser.js.map +1 -1
  491. package/dist/streaming/mpegts.d.ts +16 -0
  492. package/dist/streaming/mpegts.d.ts.map +1 -0
  493. package/dist/streaming/mpegts.js +61 -17
  494. package/dist/streaming/mpegts.js.map +1 -1
  495. package/dist/streaming/playlistBuilder.d.ts +1 -0
  496. package/dist/streaming/playlistBuilder.d.ts.map +1 -0
  497. package/dist/streaming/preroll.d.ts +32 -5
  498. package/dist/streaming/preroll.d.ts.map +1 -0
  499. package/dist/streaming/preroll.js +70 -32
  500. package/dist/streaming/preroll.js.map +1 -1
  501. package/dist/streaming/pretune.d.ts +26 -1
  502. package/dist/streaming/pretune.d.ts.map +1 -0
  503. package/dist/streaming/pretune.js +22 -24
  504. package/dist/streaming/pretune.js.map +1 -1
  505. package/dist/streaming/pretuneTimers.d.ts +24 -0
  506. package/dist/streaming/pretuneTimers.d.ts.map +1 -0
  507. package/dist/streaming/pretuneTimers.js +56 -0
  508. package/dist/streaming/pretuneTimers.js.map +1 -0
  509. package/dist/streaming/recovery.d.ts +139 -5
  510. package/dist/streaming/recovery.d.ts.map +1 -0
  511. package/dist/streaming/recovery.js +160 -16
  512. package/dist/streaming/recovery.js.map +1 -1
  513. package/dist/streaming/registry.d.ts +27 -9
  514. package/dist/streaming/registry.d.ts.map +1 -0
  515. package/dist/streaming/registry.js +21 -3
  516. package/dist/streaming/registry.js.map +1 -1
  517. package/dist/streaming/setup.d.ts +157 -29
  518. package/dist/streaming/setup.d.ts.map +1 -0
  519. package/dist/streaming/setup.js +1034 -458
  520. package/dist/streaming/setup.js.map +1 -1
  521. package/dist/streaming/showInfo.d.ts +21 -1
  522. package/dist/streaming/showInfo.d.ts.map +1 -0
  523. package/dist/streaming/showInfo.js +31 -16
  524. package/dist/streaming/showInfo.js.map +1 -1
  525. package/dist/streaming/statusEmitter.d.ts +10 -10
  526. package/dist/streaming/statusEmitter.d.ts.map +1 -0
  527. package/dist/streaming/statusEmitter.js +5 -8
  528. package/dist/streaming/statusEmitter.js.map +1 -1
  529. package/dist/types/channels.d.ts +16 -4
  530. package/dist/types/channels.d.ts.map +1 -0
  531. package/dist/types/channels.js +4 -2
  532. package/dist/types/channels.js.map +1 -1
  533. package/dist/types/config.d.ts +16 -5
  534. package/dist/types/config.d.ts.map +1 -0
  535. package/dist/types/index.d.ts +3 -2
  536. package/dist/types/index.d.ts.map +1 -0
  537. package/dist/types/profiles.d.ts +6 -4
  538. package/dist/types/profiles.d.ts.map +1 -0
  539. package/dist/types/selection.d.ts +31 -3
  540. package/dist/types/selection.d.ts.map +1 -0
  541. package/dist/types/selection.js +4 -2
  542. package/dist/types/selection.js.map +1 -1
  543. package/dist/types/shared.d.ts +1 -0
  544. package/dist/types/shared.d.ts.map +1 -0
  545. package/dist/types/streaming.d.ts +8 -0
  546. package/dist/types/streaming.d.ts.map +1 -0
  547. package/dist/upgrade/commands.context.d.ts +1 -0
  548. package/dist/upgrade/commands.context.d.ts.map +1 -0
  549. package/dist/upgrade/commands.context.js +14 -10
  550. package/dist/upgrade/commands.context.js.map +1 -1
  551. package/dist/upgrade/commands.d.ts +8 -15
  552. package/dist/upgrade/commands.d.ts.map +1 -0
  553. package/dist/upgrade/commands.js +27 -28
  554. package/dist/upgrade/commands.js.map +1 -1
  555. package/dist/upgrade/detection.context.d.ts +1 -0
  556. package/dist/upgrade/detection.context.d.ts.map +1 -0
  557. package/dist/upgrade/detection.context.js +4 -1
  558. package/dist/upgrade/detection.context.js.map +1 -1
  559. package/dist/upgrade/detection.d.ts +9 -7
  560. package/dist/upgrade/detection.d.ts.map +1 -0
  561. package/dist/upgrade/detection.js +23 -54
  562. package/dist/upgrade/detection.js.map +1 -1
  563. package/dist/upgrade/index.d.ts +2 -0
  564. package/dist/upgrade/index.d.ts.map +1 -0
  565. package/dist/upgrade/index.js +1 -0
  566. package/dist/upgrade/index.js.map +1 -1
  567. package/dist/upgrade/lifecycle.context.d.ts +20 -0
  568. package/dist/upgrade/lifecycle.context.d.ts.map +1 -0
  569. package/dist/upgrade/lifecycle.context.js +47 -0
  570. package/dist/upgrade/lifecycle.context.js.map +1 -0
  571. package/dist/upgrade/lifecycle.d.ts +72 -0
  572. package/dist/upgrade/lifecycle.d.ts.map +1 -0
  573. package/dist/upgrade/lifecycle.js +175 -0
  574. package/dist/upgrade/lifecycle.js.map +1 -0
  575. package/dist/upgrade/pathHandle.d.ts +30 -0
  576. package/dist/upgrade/pathHandle.d.ts.map +1 -0
  577. package/dist/upgrade/pathHandle.js +102 -0
  578. package/dist/upgrade/pathHandle.js.map +1 -0
  579. package/dist/utils/bootSession.context.d.ts +16 -0
  580. package/dist/utils/bootSession.context.d.ts.map +1 -0
  581. package/dist/utils/bootSession.context.js +60 -0
  582. package/dist/utils/bootSession.context.js.map +1 -0
  583. package/dist/utils/bootSession.d.ts +17 -0
  584. package/dist/utils/bootSession.d.ts.map +1 -0
  585. package/dist/utils/bootSession.js +20 -0
  586. package/dist/utils/bootSession.js.map +1 -0
  587. package/dist/utils/chromeFetch.d.ts +1 -0
  588. package/dist/utils/chromeFetch.d.ts.map +1 -0
  589. package/dist/utils/cliOutput.d.ts +1 -0
  590. package/dist/utils/cliOutput.d.ts.map +1 -0
  591. package/dist/utils/clock.d.ts +5 -4
  592. package/dist/utils/clock.d.ts.map +1 -0
  593. package/dist/utils/clock.js +19 -16
  594. package/dist/utils/clock.js.map +1 -1
  595. package/dist/utils/debugFilter.d.ts +9 -1
  596. package/dist/utils/debugFilter.d.ts.map +1 -0
  597. package/dist/utils/debugFilter.js +60 -33
  598. package/dist/utils/debugFilter.js.map +1 -1
  599. package/dist/utils/delay.d.ts +48 -15
  600. package/dist/utils/delay.d.ts.map +1 -0
  601. package/dist/utils/delay.js +73 -20
  602. package/dist/utils/delay.js.map +1 -1
  603. package/dist/utils/errors.d.ts +32 -0
  604. package/dist/utils/errors.d.ts.map +1 -0
  605. package/dist/utils/errors.js +45 -4
  606. package/dist/utils/errors.js.map +1 -1
  607. package/dist/utils/evaluate.d.ts +1 -0
  608. package/dist/utils/evaluate.d.ts.map +1 -0
  609. package/dist/utils/evaluate.js +29 -23
  610. package/dist/utils/evaluate.js.map +1 -1
  611. package/dist/utils/ffmpeg.context.d.ts +1 -0
  612. package/dist/utils/ffmpeg.context.d.ts.map +1 -0
  613. package/dist/utils/ffmpeg.context.js.map +1 -1
  614. package/dist/utils/ffmpeg.d.ts +29 -7
  615. package/dist/utils/ffmpeg.d.ts.map +1 -0
  616. package/dist/utils/ffmpeg.js +32 -14
  617. package/dist/utils/ffmpeg.js.map +1 -1
  618. package/dist/utils/fileLogger.d.ts +3 -1
  619. package/dist/utils/fileLogger.d.ts.map +1 -0
  620. package/dist/utils/fileLogger.js +64 -29
  621. package/dist/utils/fileLogger.js.map +1 -1
  622. package/dist/utils/format.d.ts +14 -1
  623. package/dist/utils/format.d.ts.map +1 -0
  624. package/dist/utils/format.js +19 -5
  625. package/dist/utils/format.js.map +1 -1
  626. package/dist/utils/index.d.ts +4 -0
  627. package/dist/utils/index.d.ts.map +1 -0
  628. package/dist/utils/index.js +3 -0
  629. package/dist/utils/index.js.map +1 -1
  630. package/dist/utils/logEmitter.d.ts +1 -0
  631. package/dist/utils/logEmitter.d.ts.map +1 -0
  632. package/dist/utils/logger.d.ts +1 -0
  633. package/dist/utils/logger.d.ts.map +1 -0
  634. package/dist/utils/logger.js +10 -6
  635. package/dist/utils/logger.js.map +1 -1
  636. package/dist/utils/m3u.d.ts +3 -2
  637. package/dist/utils/m3u.d.ts.map +1 -0
  638. package/dist/utils/m3u.js +4 -3
  639. package/dist/utils/m3u.js.map +1 -1
  640. package/dist/utils/markup.d.ts +13 -1
  641. package/dist/utils/markup.d.ts.map +1 -0
  642. package/dist/utils/markup.js +28 -4
  643. package/dist/utils/markup.js.map +1 -1
  644. package/dist/utils/memo.d.ts +3 -2
  645. package/dist/utils/memo.d.ts.map +1 -0
  646. package/dist/utils/memo.js +3 -3
  647. package/dist/utils/morganStream.d.ts +1 -0
  648. package/dist/utils/morganStream.d.ts.map +1 -0
  649. package/dist/utils/network.d.ts +1 -0
  650. package/dist/utils/network.d.ts.map +1 -0
  651. package/dist/utils/network.js +2 -2
  652. package/dist/utils/pid.d.ts +3 -25
  653. package/dist/utils/pid.d.ts.map +1 -0
  654. package/dist/utils/pid.js +10 -49
  655. package/dist/utils/pid.js.map +1 -1
  656. package/dist/utils/platform.d.ts +3 -1
  657. package/dist/utils/platform.d.ts.map +1 -0
  658. package/dist/utils/platform.js +2 -1
  659. package/dist/utils/platform.js.map +1 -1
  660. package/dist/utils/processInspector.context.d.ts +8 -0
  661. package/dist/utils/processInspector.context.d.ts.map +1 -0
  662. package/dist/utils/processInspector.context.js +106 -0
  663. package/dist/utils/processInspector.context.js.map +1 -0
  664. package/dist/utils/processInspector.d.ts +55 -0
  665. package/dist/utils/processInspector.d.ts.map +1 -0
  666. package/dist/utils/processInspector.js +127 -0
  667. package/dist/utils/processInspector.js.map +1 -0
  668. package/dist/utils/retry.d.ts +25 -2
  669. package/dist/utils/retry.d.ts.map +1 -0
  670. package/dist/utils/retry.js +33 -6
  671. package/dist/utils/retry.js.map +1 -1
  672. package/dist/utils/runtimeIdentity.context.d.ts +7 -0
  673. package/dist/utils/runtimeIdentity.context.d.ts.map +1 -0
  674. package/dist/utils/runtimeIdentity.context.js +43 -0
  675. package/dist/utils/runtimeIdentity.context.js.map +1 -0
  676. package/dist/utils/runtimeIdentity.d.ts +98 -0
  677. package/dist/utils/runtimeIdentity.d.ts.map +1 -0
  678. package/dist/utils/runtimeIdentity.js +181 -0
  679. package/dist/utils/runtimeIdentity.js.map +1 -0
  680. package/dist/utils/sanitize.d.ts +1 -0
  681. package/dist/utils/sanitize.d.ts.map +1 -0
  682. package/dist/utils/streamContext.d.ts +2 -1
  683. package/dist/utils/streamContext.d.ts.map +1 -0
  684. package/dist/utils/streamContext.js +1 -1
  685. package/dist/utils/timing.d.ts +2 -1
  686. package/dist/utils/timing.d.ts.map +1 -0
  687. package/dist/utils/timing.js +0 -5
  688. package/dist/utils/timing.js.map +1 -1
  689. package/dist/utils/version.d.ts +1 -0
  690. package/dist/utils/version.d.ts.map +1 -0
  691. package/dist/utils/version.js +47 -13
  692. package/dist/utils/version.js.map +1 -1
  693. package/package.json +26 -20
@@ -1,13 +1,15 @@
1
1
  import { LOG, delay, formatError } from "../../utils/index.js";
2
+ import { installOncePerPage, logAvailableChannels } from "./shared.js";
2
3
  import { CONFIG } from "../../config/index.js";
3
- import { logAvailableChannels } from "./shared.js";
4
+ import { createProviderChannelCache } from "./cache.js";
5
+ import { logAutoDismiss } from "../consent.js";
4
6
  // URL pattern for the channelmap API response. Matched against response URLs to identify channelmap data. Shared across all Comcast Polymer providers - the same
5
7
  // backend serves both Xfinity and Cox subscribers, returning subscriber-specific entitled channel lineups based on authentication.
6
8
  const CHANNELMAP_API_PATTERN = "xtvapi.cloudtv.comcast.net/channelmap";
7
9
  // Polling interval for cold-cache wait. 200ms balances responsiveness against CPU overhead.
8
10
  const CACHE_POLL_INTERVAL = 200;
9
- // Broadcast network verbose names from callSignVoiceOverHint, mapped to standard abbreviations. Used to identify local affiliates and set the channelSelector to the
10
- // network abbreviation rather than the verbose name or callSign.
11
+ // Broadcast network verbose names from callSignVoiceOverHint, mapped to standard abbreviations. Used to identify local affiliates and set the display name and
12
+ // affiliate to the network abbreviation rather than the verbose name; the channelSelector always remains the raw callSign for guaranteed uniqueness.
11
13
  const BROADCAST_HINTS = {
12
14
  "american broadcasting company": "ABC",
13
15
  "columbia broadcasting system": "CBS",
@@ -33,9 +35,10 @@ const CALLSIGN_SUFFIXES = [...new Set([
33
35
  ...BASE_SUFFIXES.filter((s) => s.length === 1).map((s) => "p" + s),
34
36
  ...BASE_SUFFIXES
35
37
  ])].sort((a, b) => (b.length - a.length) || a.localeCompare(b));
36
- // Duration in milliseconds to poll for the Watch Now modal button. Matches the dismiss poll constants in video.ts.
38
+ // Duration in milliseconds to poll for the Watch Now modal button, after which the modal is assumed not to be coming for this channel. Set well beyond the
39
+ // ~2-3 second in-page channel switch the modal follows, giving it room to render on slower channels without the fire-and-forget poll running indefinitely.
37
40
  const WATCH_NOW_POLL_DURATION = 5000;
38
- // Interval in milliseconds between Watch Now modal poll checks. Matches the dismiss poll constants in video.ts.
41
+ // Interval in milliseconds between Watch Now modal poll checks. Mirrors the overlay-handling poll cadence in browser/consent.ts (OVERLAY_POLL_INTERVAL).
39
42
  const WATCH_NOW_POLL_INTERVAL = 500;
40
43
  /**
41
44
  * Strips common Comcast callSign suffixes to produce a normalized lookup key. Strips the first matching suffix from the end of the callSign, but only when the
@@ -77,18 +80,17 @@ function isPacificCallSign(callSign) {
77
80
  });
78
81
  }
79
82
  /**
80
- * Creates a complete ProviderModule for a Comcast Polymer SPA provider. Each invocation creates isolated per-provider state (channel cache, channelmap response
81
- * cache, enumeration flag) so multiple providers sharing the same platform do not interfere with each other.
83
+ * Creates a complete ProviderModule for a Comcast Polymer SPA provider. Each invocation creates isolated per-provider state (channel cache with its own
84
+ * completeness mark, channelmap response cache) so multiple providers sharing the same platform do not interfere with each other.
82
85
  * @param config - Provider-specific configuration values.
83
86
  * @returns A fully configured ProviderModule ready for registration in the coordinator.
84
87
  */
85
88
  export function createComcastPolymerProvider(config) {
86
89
  // Per-provider mutable state. Each provider instance gets its own channel cache and channelmap response cache, isolated via closure scope.
87
90
  // Unified channel cache. Maps lowercased lookup keys to combined discovery and tuning data. Multiple keys may reference the same entry (callSign, stripped
88
- // callSign, branchOf name). Populated during channelmap API interception or discovery. Cleared on browser disconnect via clearCache().
89
- const channelCache = new Map();
90
- // Tracks whether the channel cache has been fully enumerated from a complete channelmap API response. Guards getCachedChannels to avoid returning partial data.
91
- let fullyEnumerated = false;
91
+ // callSign, branchOf name). Populated during channelmap API interception or discovery. Cleared on browser disconnect via clearCache(). Only a complete
92
+ // channelmap API response marks the lineup complete, so a partially-populated cache is never served as the whole lineup.
93
+ const channelCache = createProviderChannelCache((entry) => entry.discovered);
92
94
  // Cached channelmap API response for CDP request interception on warm tunes. Stored on the first successful API response. The exact URL and headers are replayed
93
95
  // so that only the correct request is intercepted (the SPA makes multiple requests to URLs matching the channelmap pattern, but only one is the actual channel
94
96
  // lineup).
@@ -112,8 +114,8 @@ export function createComcastPolymerProvider(config) {
112
114
  return existingEntry.pacific && !newEntry.pacific;
113
115
  }
114
116
  /**
115
- * Caches a single channel entry with multi-key lookups. Creates up to four cache keys per channel: (a) lowercased callSign, (b) stripped callSign with common
116
- * suffixes removed, (c) lowercased branchOf/company/callSign, and (d) broadcast network abbreviation for local affiliates.
117
+ * Caches a single channel entry with multi-key lookups. Creates a cache key for each of the following when applicable: lowercased callSign, stripped
118
+ * callSign with common suffixes removed, lowercased branchOf/company/callSign, and broadcast network abbreviation for local affiliates.
117
119
  *
118
120
  * Priority rules for shared keys (stripped, branchOf): non-Pacific entries override Pacific entries, otherwise first-write-wins. This ensures that
119
121
  * display-name-based lookups (e.g., channelSelector "A&E") resolve to the primary East feed regardless of processing order. Primary callSign keys always use
@@ -128,35 +130,35 @@ export function createComcastPolymerProvider(config) {
128
130
  const callSignLower = callSign.toLowerCase();
129
131
  let keysWritten = 0;
130
132
  // Primary key: lowercased callSign (e.g., "cnnhd"). Always first-write-wins since each callSign is unique.
131
- if (!channelCache.has(callSignLower)) {
132
- channelCache.set(callSignLower, entry);
133
+ if (!channelCache.map.has(callSignLower)) {
134
+ channelCache.map.set(callSignLower, entry);
133
135
  keysWritten++;
134
136
  }
135
137
  // Secondary key: stripped callSign with common suffixes removed (e.g., "cnn" from "cnnhd" or "cnnhdp"). Non-Pacific overrides Pacific.
136
138
  const strippedKey = stripCallSignSuffix(callSign);
137
- if ((strippedKey !== callSignLower) && shouldClaimSharedKey(channelCache.get(strippedKey), entry)) {
138
- channelCache.set(strippedKey, entry);
139
+ if ((strippedKey !== callSignLower) && shouldClaimSharedKey(channelCache.map.get(strippedKey), entry)) {
140
+ channelCache.map.set(strippedKey, entry);
139
141
  keysWritten++;
140
142
  }
141
143
  // Tertiary key: lowercased branchOf/company/callSign (e.g., "cnn", "animal planet"). Non-Pacific overrides Pacific.
142
144
  if (branchOf) {
143
145
  const branchKey = branchOf.toLowerCase();
144
- if ((branchKey !== callSignLower) && (branchKey !== strippedKey) && shouldClaimSharedKey(channelCache.get(branchKey), entry)) {
145
- channelCache.set(branchKey, entry);
146
+ if ((branchKey !== callSignLower) && (branchKey !== strippedKey) && shouldClaimSharedKey(channelCache.map.get(branchKey), entry)) {
147
+ channelCache.map.set(branchKey, entry);
146
148
  keysWritten++;
147
149
  }
148
150
  }
149
151
  // Broadcast network key (e.g., "nbc", "abc"). Unconditional write ensures local affiliates override any previously-cached national entry for the same network.
150
152
  if (affiliate) {
151
- channelCache.set(affiliate.toLowerCase(), entry);
153
+ channelCache.map.set(affiliate.toLowerCase(), entry);
152
154
  keysWritten++;
153
155
  }
154
156
  return keysWritten > 0;
155
157
  }
156
158
  /**
157
- * Processes a channelmap API response and populates the unified channel cache using three-pass tiered filtering. Channels are prioritized: non-TVE HD entitled
158
- * first (cable HD - optimal for a home-network server), then TVE entitled (fallback for channels without a cable HD entry), then non-TVE SD entitled (safety net
159
- * for SD-only channels). All passes share a single seenCallSigns set for exact callSign deduplication. Cross-tier dedup is handled naturally by
159
+ * Processes a channelmap API response and populates the unified channel cache using tiered entitlement filtering, from highest to lowest priority: non-TVE
160
+ * HD entitled first (cable HD - optimal for a home-network server), then TVE entitled (fallback for channels without a cable HD entry), then non-TVE SD
161
+ * entitled (safety net for SD-only channels). All passes share a single seenCallSigns set for exact callSign deduplication. Cross-tier dedup is handled naturally by
160
162
  * cacheChannelEntry's first-write-wins guards - lower-tier entries cannot overwrite cache keys already occupied by higher-tier entries.
161
163
  *
162
164
  * Local affiliates are detected via callSignVoiceOverHint matching against BROADCAST_HINTS and preferred over national feeds (e.g., local KOMOD over national
@@ -229,7 +231,7 @@ export function createComcastPolymerProvider(config) {
229
231
  // non-TVE entries, which are always local to the subscriber's market.
230
232
  const networkKey = broadcastNetwork.toLowerCase();
231
233
  const isLocal = localBroadcastCallSigns.has(callSignLower);
232
- const existingEntry = channelCache.get(networkKey);
234
+ const existingEntry = channelCache.map.get(networkKey);
233
235
  if (existingEntry) {
234
236
  // Network already cached. Override only when this entry is a better match: local replacing national, or lower channel number when both are local
235
237
  // (e.g., KBTCD ch 108 over KCTSD ch 109 for PBS).
@@ -240,10 +242,10 @@ export function createComcastPolymerProvider(config) {
240
242
  }
241
243
  // Better affiliate found: remove the old entry's cache keys so it doesn't appear as a duplicate in channel discovery.
242
244
  const oldCallSign = existingEntry.callSign.toLowerCase();
243
- channelCache.delete(oldCallSign);
245
+ channelCache.map.delete(oldCallSign);
244
246
  const oldStripped = stripCallSignSuffix(existingEntry.callSign);
245
247
  if (oldStripped !== oldCallSign) {
246
- channelCache.delete(oldStripped);
248
+ channelCache.map.delete(oldStripped);
247
249
  }
248
250
  count--;
249
251
  }
@@ -273,8 +275,8 @@ export function createComcastPolymerProvider(config) {
273
275
  }
274
276
  }
275
277
  if (count > 0) {
276
- fullyEnumerated = true;
277
- LOG.debug(config.debugCategory, "Channelmap API: cached %s channels (%s cache keys).", count, channelCache.size);
278
+ channelCache.markComplete();
279
+ LOG.debug(config.debugCategory, "Channelmap API: cached %s channels (%s cache keys).", count, channelCache.map.size);
278
280
  }
279
281
  }
280
282
  /**
@@ -311,7 +313,7 @@ export function createComcastPolymerProvider(config) {
311
313
  });
312
314
  }
313
315
  /**
314
- * Looks up a channel in the unified cache using three-tier matching:
316
+ * Looks up a channel in the unified cache using layered matching, from most to least exact:
315
317
  *
316
318
  * 1. Exact match: cache key equals the lowercased input (matches callSigns, stripped callSigns, and branchOf names).
317
319
  * 2. Suffix-tolerant: input + "hd" or input + "d" matches a cache key (e.g., "cnn" -> "cnnhd", "espn" -> "espnd").
@@ -324,40 +326,40 @@ export function createComcastPolymerProvider(config) {
324
326
  function findChannel(channelName) {
325
327
  const lower = channelName.toLowerCase();
326
328
  // Tier 1: Exact match on any cache key (callSigns, stripped names, branchOf names).
327
- const exact = channelCache.get(lower);
329
+ const exact = channelCache.map.get(lower);
328
330
  if (exact) {
329
331
  return exact;
330
332
  }
331
333
  // Tier 2: Suffix-tolerant. Try appending common technology suffixes.
332
- const hdMatch = channelCache.get(lower + "hd");
334
+ const hdMatch = channelCache.map.get(lower + "hd");
333
335
  if (hdMatch) {
334
- channelCache.set(lower, hdMatch);
336
+ channelCache.map.set(lower, hdMatch);
335
337
  return hdMatch;
336
338
  }
337
- const dMatch = channelCache.get(lower + "d");
339
+ const dMatch = channelCache.map.get(lower + "d");
338
340
  if (dMatch) {
339
- channelCache.set(lower, dMatch);
341
+ channelCache.map.set(lower, dMatch);
340
342
  return dMatch;
341
343
  }
342
344
  // Tier 3: Display name iteration. Check if any entry's discovered.name matches the input. This catches verbose display names (e.g., "Cable News Network") that
343
345
  // may not have a matching cache key.
344
346
  const seen = new Set();
345
- for (const entry of channelCache.values()) {
347
+ for (const entry of channelCache.map.values()) {
346
348
  if (seen.has(entry)) {
347
349
  continue;
348
350
  }
349
351
  seen.add(entry);
350
352
  if (entry.discovered.name.toLowerCase() === lower) {
351
- channelCache.set(lower, entry);
353
+ channelCache.map.set(lower, entry);
352
354
  return entry;
353
355
  }
354
356
  }
355
357
  return null;
356
358
  }
357
359
  /**
358
- * Sets up channelmap API interception for the upcoming page navigation and, on warm tunes, enables CDP request interception to serve the cached channelmap
359
- * response instantly. Like DirecTV's resolveDirectUrl, this always returns null - all tuning happens in the strategy's execute function via
360
- * `_watchChannelEventHandler`.
360
+ * Sets up channelmap API response interception for the upcoming page navigation and installs the request-interception listener (once per page). On warm tunes the
361
+ * listener serves the cached channelmap response instantly. Like DirecTV's resolveDirectUrl, this always returns null - all tuning happens in the strategy's execute
362
+ * function via `_watchChannelEventHandler`.
361
363
  * @param _channelSelector - The channel selector string (unused - channel lookup happens in the strategy).
362
364
  * @param page - The Puppeteer page for response interception setup.
363
365
  * @returns Always null - no direct URL navigation.
@@ -365,20 +367,23 @@ export function createComcastPolymerProvider(config) {
365
367
  async function resolveDirectUrl(_channelSelector, page) {
366
368
  // Set up response interception so the channelmap API response is captured during guide page navigation.
367
369
  setupChannelmapInterception(page);
368
- // On warm cache, intercept the channelmap API request and serve the cached response immediately. This eliminates the 3-5s network round-trip on warm tunes.
369
- // We match on the exact URL captured during the cold tune - the SPA makes multiple requests to URLs matching the channelmap pattern, but only one is the
370
- // channel lineup.
371
- if (cachedBody && cachedUrl) {
372
- const targetUrl = cachedUrl;
373
- const body = cachedBody;
374
- const headers = cachedHeaders;
370
+ // Install the request-interception listener that serves the cached channelmap response on warm tunes, eliminating the 3-5s network round-trip. The install is
371
+ // gated through installOncePerPage so a recovery re-tune on the same page does not re-enable request interception or stack a second `page.on("request")`
372
+ // listener - every tune resolves a direct URL first, so resolveDirectUrl runs again on the same page when the monitor re-tunes it.
373
+ // The listener reads the cache through the live closure cells (cachedUrl/cachedBody/cachedHeaders) on every request rather than capturing them by value at
374
+ // install time. This matters because the install runs once: a copy taken here would pin the channelmap snapshot from the first tune and invalidateCachedResponse
375
+ // could never stop the listener from replaying stale data. Reading the live cells means a null cachedBody simply falls through to the network, so an invalidated
376
+ // cache self-heals on the next navigation, and a warm cache is served until it is invalidated.
377
+ await installOncePerPage(page, "channelmap-request-intercept", async () => {
375
378
  await page.setRequestInterception(true);
376
379
  page.on("request", (request) => {
377
- if (request.url() === targetUrl) {
380
+ // Read the cache through the live closure cells so invalidateCachedResponse() is observed by this long-lived listener. When the cache is cold or has been
381
+ // invalidated, cachedBody/cachedUrl are null and we fall through to request.continue() below.
382
+ if (cachedBody && cachedUrl && (request.url() === cachedUrl)) {
378
383
  LOG.debug(config.debugCategory, "Channelmap API: served from cache.");
379
384
  void request.respond({
380
- body,
381
- headers,
385
+ body: cachedBody,
386
+ headers: cachedHeaders,
382
387
  status: 200
383
388
  }).catch(() => {
384
389
  // Serve failed - fall back to the network so the cold-cache path takes over.
@@ -392,7 +397,7 @@ export function createComcastPolymerProvider(config) {
392
397
  // Page closed - ignore.
393
398
  });
394
399
  });
395
- }
400
+ });
396
401
  return null;
397
402
  }
398
403
  /**
@@ -427,7 +432,7 @@ export function createComcastPolymerProvider(config) {
427
432
  return false;
428
433
  });
429
434
  if (clicked) {
430
- LOG.debug(config.debugCategory, "Watch Now modal dismissed.");
435
+ logAutoDismiss("modal", { label: "Watch Now" });
431
436
  return;
432
437
  }
433
438
  }
@@ -437,24 +442,6 @@ export function createComcastPolymerProvider(config) {
437
442
  }
438
443
  }
439
444
  }
440
- /**
441
- * Derives a deduplicated DiscoveredChannel array from the unified channel cache. Multiple cache keys may point to the same ChannelEntry, so we deduplicate
442
- * via Set reference equality. Sorts by name before returning.
443
- * @returns Sorted, deduplicated array of discovered channels.
444
- */
445
- function buildDiscoveredChannels() {
446
- const channels = [];
447
- const seen = new Set();
448
- for (const entry of channelCache.values()) {
449
- if (seen.has(entry)) {
450
- continue;
451
- }
452
- seen.add(entry);
453
- channels.push(entry.discovered);
454
- }
455
- channels.sort((a, b) => a.name.localeCompare(b.name));
456
- return channels;
457
- }
458
445
  /**
459
446
  * In-page SPA tuning strategy. Waits for the Polymer SPA's `TV-APP` element and its `channelMap.channels` to populate, then invokes
460
447
  * `_watchChannelEventHandler(null, { channel })` to switch channels in-page. This is the execute path for both warm and cold cache scenarios - the guide URL
@@ -471,7 +458,7 @@ export function createComcastPolymerProvider(config) {
471
458
  await page.waitForSelector("tv-app", { timeout });
472
459
  }
473
460
  catch {
474
- return { reason: config.label + " guide page did not load within timeout.", success: false };
461
+ return { guideUnavailable: true, reason: config.label + " guide page did not load within timeout.", success: false };
475
462
  }
476
463
  // Wait for the SPA's channelMap.channels to populate. The channelmap API fires during page load and the SPA stores the response in this property.
477
464
  try {
@@ -491,20 +478,21 @@ export function createComcastPolymerProvider(config) {
491
478
  return { reason: config.label + " channel lineup did not load within timeout.", success: false };
492
479
  }
493
480
  // Poll for Node-side cache population. The channelmap API response is intercepted by setupChannelmapInterception (called by resolveDirectUrl before we got
494
- // here). We need the Node-side cache for findChannel's three-tier matching.
481
+ // here). We need the Node-side cache for findChannel's three-tier matching. The page check ends the wait the moment the page is gone: a closed page can never
482
+ // deliver that interception, so polling out the remaining clock only delays the failure this tune is already headed for. The empty-cache path below reports it.
495
483
  const deadline = Date.now() + timeout;
496
- while ((channelCache.size === 0) && (Date.now() < deadline)) {
484
+ while ((channelCache.map.size === 0) && !page.isClosed() && (Date.now() < deadline)) {
497
485
  // eslint-disable-next-line no-await-in-loop
498
486
  await delay(CACHE_POLL_INTERVAL);
499
487
  }
500
- if (channelCache.size === 0) {
488
+ if (channelCache.map.size === 0) {
501
489
  return { reason: config.label + " channel lineup API did not respond within timeout.", success: false };
502
490
  }
503
491
  // Look up the target channel in the Node-side cache.
504
492
  const entry = findChannel(channelName);
505
493
  if (!entry) {
506
494
  logAvailableChannels({
507
- availableChannels: buildDiscoveredChannels().map((ch) => ch.name + " (" + ch.channelSelector + ")").sort(),
495
+ availableChannels: channelCache.discovered().map((ch) => ch.name + " (" + ch.channelSelector + ")").sort(),
508
496
  channelName,
509
497
  guideUrl: config.guideUrl,
510
498
  presetSuffix: config.presetSuffix,
@@ -555,9 +543,10 @@ export function createComcastPolymerProvider(config) {
555
543
  * @returns Array of discovered channels.
556
544
  */
557
545
  async function discoverChannels(page) {
558
- // Return from cache if already fully enumerated.
559
- if (fullyEnumerated && (channelCache.size > 0)) {
560
- return buildDiscoveredChannels();
546
+ // Return from cache if a complete channelmap response has already been captured.
547
+ const cached = channelCache.cached();
548
+ if (cached) {
549
+ return cached;
561
550
  }
562
551
  // Set up response interception before navigation so we capture the channelmap API response during page load.
563
552
  setupChannelmapInterception(page);
@@ -568,27 +557,19 @@ export function createComcastPolymerProvider(config) {
568
557
  LOG.warn("Failed to load %s guide page: %s.", config.label, formatError(error));
569
558
  return [];
570
559
  }
571
- // Poll for cache population.
560
+ // Poll for cache population. The page check ends the wait the moment the page is gone: a closed page can never deliver the channelmap interception, so polling
561
+ // out the remaining clock would only postpone this walk's settlement - and a refresh that cancelled this walk by closing its page waits on that settlement
562
+ // before it clears the caches. The empty-cache path below handles the early exit.
572
563
  const deadline = Date.now() + CONFIG.streaming.videoTimeout;
573
- while ((channelCache.size === 0) && (Date.now() < deadline)) {
564
+ while ((channelCache.map.size === 0) && !page.isClosed() && (Date.now() < deadline)) {
574
565
  // eslint-disable-next-line no-await-in-loop
575
566
  await delay(CACHE_POLL_INTERVAL);
576
567
  }
577
- if (channelCache.size === 0) {
568
+ if (channelCache.map.size === 0) {
578
569
  LOG.warn("%s channel lineup did not return any channels.", config.label);
579
570
  return [];
580
571
  }
581
- return buildDiscoveredChannels();
582
- }
583
- /**
584
- * Returns cached discovered channels from the unified channel cache, or null if the cache is empty or has not been fully enumerated.
585
- * @returns Sorted array of discovered channels or null.
586
- */
587
- function getCachedChannels() {
588
- if (!fullyEnumerated || (channelCache.size === 0)) {
589
- return null;
590
- }
591
- return buildDiscoveredChannels();
572
+ return channelCache.discovered();
592
573
  }
593
574
  /**
594
575
  * Clears the cached channelmap API response so the next tune fetches fresh data from the network. Called when the strategy detects that the cached response
@@ -613,22 +594,15 @@ export function createComcastPolymerProvider(config) {
613
594
  cachedHeaders = {};
614
595
  cachedUrl = null;
615
596
  channelCache.clear();
616
- fullyEnumerated = false;
617
- }
618
- /**
619
- * Invalidates the cached channel entry for the given channel selector. Called when a stream fails to start after tuning, allowing the next tune attempt to
620
- * re-resolve via fresh channelmap data.
621
- * @param channelSelector - The channel selector string to invalidate.
622
- */
623
- function invalidateDirectUrl(channelSelector) {
624
- channelCache.delete(channelSelector.toLowerCase());
625
597
  }
626
598
  return {
627
599
  discoverChannels,
628
- getCachedChannels,
600
+ getCachedChannels: channelCache.cached,
629
601
  guideUrl: config.guideUrl,
630
602
  handlesOwnNavigation: true,
631
603
  label: config.label,
604
+ // This Polymer SPA has no cacheable direct watch URL - every tune is a full guide-page SPA load with in-page channel switching - so it opts out of the
605
+ // direct-URL tuning optimization; the UI uses this to emit slow-initialization warnings and omit it from the "later tunes skip the guide" description.
632
606
  noDirectTuneOptimization: true,
633
607
  // Profile for Comcast Polymer SPA live channels. The channelmap API at xtvapi.cloudtv.comcast.net returns the complete channel lineup. Tuning uses in-page SPA
634
608
  // channel switching: after the guide page loads the Polymer SPA, the strategy calls `_watchChannelEventHandler(null, { channel })` on the `TV-APP` element to
@@ -645,10 +619,13 @@ export function createComcastPolymerProvider(config) {
645
619
  strategy: {
646
620
  clearCache,
647
621
  execute: directStrategy,
648
- invalidateDirectUrl,
622
+ // Only the failing selector's own key is dropped, so the next tune re-resolves it from fresh channelmap data while every other key stays warm.
623
+ invalidateDirectUrl: channelCache.invalidate,
649
624
  resolveDirectUrl
650
625
  },
651
626
  strategyName: config.strategyName,
627
+ // Consecutive below-size-threshold ("tiny") segments tolerated before tab-replacement recovery, raised well above the default 10 (~20 seconds) because the
628
+ // Comcast Polymer SPA serves long static commercial placeholder frames; 150 (~5 minutes at two-second segments) avoids false-positive replacements.
652
629
  tinySegmentThreshold: 150
653
630
  };
654
631
  }
@@ -1 +1 @@
1
- {"version":3,"file":"comcastPolymer.js","sourceRoot":"","sources":["../../../src/browser/tuning/comcastPolymer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comcastPolymer.js","sourceRoot":"","sources":["../../../src/browser/tuning/comcastPolymer.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  import type { ProviderModule } from "../../types/index.ts";
2
2
  export declare const coxProvider: ProviderModule;
3
+ //# sourceMappingURL=cox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cox.d.ts","sourceRoot":"","sources":["../../../src/browser/tuning/cox.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,eAAO,MAAM,WAAW,EAAE,cAYxB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import type { ProviderModule } from "../../types/index.ts";
2
2
  export declare const directvProvider: ProviderModule;
3
+ //# sourceMappingURL=directv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directv.d.ts","sourceRoot":"","sources":["../../../src/browser/tuning/directv.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAA+E,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAwkCxI,eAAO,MAAM,eAAe,EAAE,cA8B7B,CAAC"}