prismcast 1.12.0 → 1.13.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 (631) hide show
  1. package/dist/app.d.ts +41 -1
  2. package/dist/app.js +164 -76
  3. package/dist/app.js.map +1 -1
  4. package/dist/browser/blockedPage.d.ts +0 -1
  5. package/dist/browser/browserSupervisor.d.ts +34 -5
  6. package/dist/browser/browserSupervisor.js +39 -12
  7. package/dist/browser/browserSupervisor.js.map +1 -1
  8. package/dist/browser/cdp.d.ts +58 -6
  9. package/dist/browser/cdp.js +147 -9
  10. package/dist/browser/cdp.js.map +1 -1
  11. package/dist/browser/channelSelection.d.ts +18 -6
  12. package/dist/browser/channelSelection.js +47 -36
  13. package/dist/browser/channelSelection.js.map +1 -1
  14. package/dist/browser/consent.d.ts +33 -4
  15. package/dist/browser/consent.js +87 -50
  16. package/dist/browser/consent.js.map +1 -1
  17. package/dist/browser/display.d.ts +0 -1
  18. package/dist/browser/hlsPlaylistObserver.d.ts +3 -2
  19. package/dist/browser/hlsPlaylistObserver.js +11 -6
  20. package/dist/browser/hlsPlaylistObserver.js.map +1 -1
  21. package/dist/browser/index.d.ts +273 -59
  22. package/dist/browser/index.js +768 -255
  23. package/dist/browser/index.js.map +1 -1
  24. package/dist/browser/launchGovernor.d.ts +0 -1
  25. package/dist/browser/login.d.ts +11 -10
  26. package/dist/browser/login.js +42 -33
  27. package/dist/browser/login.js.map +1 -1
  28. package/dist/browser/manifestInterceptor.d.ts +14 -5
  29. package/dist/browser/manifestInterceptor.js +26 -13
  30. package/dist/browser/manifestInterceptor.js.map +1 -1
  31. package/dist/browser/navigation.d.ts +28 -0
  32. package/dist/browser/navigation.js +57 -0
  33. package/dist/browser/navigation.js.map +1 -0
  34. package/dist/browser/pageStaleness.d.ts +1 -2
  35. package/dist/browser/pageStaleness.js +9 -9
  36. package/dist/browser/pageStaleness.js.map +1 -1
  37. package/dist/browser/precaching.d.ts +27 -13
  38. package/dist/browser/precaching.js +219 -73
  39. package/dist/browser/precaching.js.map +1 -1
  40. package/dist/browser/tabCapture.d.ts +97 -0
  41. package/dist/browser/tabCapture.js +314 -0
  42. package/dist/browser/tabCapture.js.map +1 -0
  43. package/dist/browser/tabNetworkObserver.d.ts +0 -1
  44. package/dist/browser/tabSelection.d.ts +117 -0
  45. package/dist/browser/tabSelection.js +547 -0
  46. package/dist/browser/tabSelection.js.map +1 -0
  47. package/dist/browser/tuning/cache.d.ts +0 -1
  48. package/dist/browser/tuning/comcastPolymer.d.ts +0 -1
  49. package/dist/browser/tuning/comcastPolymer.js +18 -19
  50. package/dist/browser/tuning/comcastPolymer.js.map +1 -1
  51. package/dist/browser/tuning/cox.d.ts +0 -1
  52. package/dist/browser/tuning/directv.d.ts +0 -1
  53. package/dist/browser/tuning/directv.js +12 -13
  54. package/dist/browser/tuning/directv.js.map +1 -1
  55. package/dist/browser/tuning/fox.d.ts +0 -1
  56. package/dist/browser/tuning/fox.js +2 -2
  57. package/dist/browser/tuning/fox.js.map +1 -1
  58. package/dist/browser/tuning/gridSearch.d.ts +0 -1
  59. package/dist/browser/tuning/hbo.d.ts +0 -1
  60. package/dist/browser/tuning/hbo.js +2 -2
  61. package/dist/browser/tuning/hbo.js.map +1 -1
  62. package/dist/browser/tuning/hulu.d.ts +14 -2
  63. package/dist/browser/tuning/hulu.js +150 -24
  64. package/dist/browser/tuning/hulu.js.map +1 -1
  65. package/dist/browser/tuning/shared.d.ts +1 -2
  66. package/dist/browser/tuning/shared.js +1 -1
  67. package/dist/browser/tuning/sling.d.ts +0 -1
  68. package/dist/browser/tuning/sling.js +17 -22
  69. package/dist/browser/tuning/sling.js.map +1 -1
  70. package/dist/browser/tuning/spectrum.d.ts +0 -1
  71. package/dist/browser/tuning/thumbnailRow.d.ts +0 -1
  72. package/dist/browser/tuning/tileClick.d.ts +0 -1
  73. package/dist/browser/tuning/xfinity.d.ts +0 -1
  74. package/dist/browser/tuning/youtubeTv.d.ts +0 -1
  75. package/dist/browser/tuning/youtubeTv.js +1 -2
  76. package/dist/browser/tuning/youtubeTv.js.map +1 -1
  77. package/dist/browser/video.d.ts +55 -33
  78. package/dist/browser/video.js +213 -169
  79. package/dist/browser/video.js.map +1 -1
  80. package/dist/browser/windowSync.d.ts +45 -0
  81. package/dist/browser/windowSync.js +153 -0
  82. package/dist/browser/windowSync.js.map +1 -0
  83. package/dist/channels/index.d.ts +7 -1
  84. package/dist/channels/index.js +24 -8
  85. package/dist/channels/index.js.map +1 -1
  86. package/dist/config/channelForm.d.ts +0 -1
  87. package/dist/config/channelIdentity.d.ts +27 -0
  88. package/dist/config/channelIdentity.js +72 -0
  89. package/dist/config/channelIdentity.js.map +1 -0
  90. package/dist/config/channelSort.d.ts +25 -0
  91. package/dist/config/channelSort.js +101 -0
  92. package/dist/config/channelSort.js.map +1 -0
  93. package/dist/config/consistencyProbe.d.ts +0 -1
  94. package/dist/config/consistencyProbe.js +1 -1
  95. package/dist/config/consistencyProbe.js.map +1 -1
  96. package/dist/config/health.d.ts +3 -2
  97. package/dist/config/health.js +41 -31
  98. package/dist/config/health.js.map +1 -1
  99. package/dist/config/index.d.ts +12 -1
  100. package/dist/config/index.js +77 -31
  101. package/dist/config/index.js.map +1 -1
  102. package/dist/config/paths.d.ts +17 -2
  103. package/dist/config/paths.js +21 -1
  104. package/dist/config/paths.js.map +1 -1
  105. package/dist/config/persistence.context.d.ts +0 -1
  106. package/dist/config/persistence.d.ts +8 -4
  107. package/dist/config/persistence.js +143 -82
  108. package/dist/config/persistence.js.map +1 -1
  109. package/dist/config/presets.d.ts +0 -1
  110. package/dist/config/profiles.d.ts +9 -4
  111. package/dist/config/profiles.js +39 -6
  112. package/dist/config/profiles.js.map +1 -1
  113. package/dist/config/providerLineups.d.ts +0 -1
  114. package/dist/config/providerLineups.js +0 -3
  115. package/dist/config/providerLineups.js.map +1 -1
  116. package/dist/config/reactivity.d.ts +0 -1
  117. package/dist/config/servicePacks.d.ts +0 -1
  118. package/dist/config/services.d.ts +1 -47
  119. package/dist/config/services.js +4 -135
  120. package/dist/config/services.js.map +1 -1
  121. package/dist/config/sites.d.ts +0 -9
  122. package/dist/config/sites.js +82 -98
  123. package/dist/config/sites.js.map +1 -1
  124. package/dist/config/userChannels.d.ts +22 -29
  125. package/dist/config/userChannels.js +47 -65
  126. package/dist/config/userChannels.js.map +1 -1
  127. package/dist/config/userConfig.d.ts +19 -4
  128. package/dist/config/userConfig.js +123 -25
  129. package/dist/config/userConfig.js.map +1 -1
  130. package/dist/config/userProfiles.d.ts +2 -3
  131. package/dist/config/userProfiles.js +16 -13
  132. package/dist/config/userProfiles.js.map +1 -1
  133. package/dist/hdhr/channelMap.d.ts +0 -1
  134. package/dist/hdhr/deviceId.d.ts +0 -1
  135. package/dist/hdhr/discover.d.ts +0 -1
  136. package/dist/hdhr/getHandlers.d.ts +0 -1
  137. package/dist/hdhr/identity.d.ts +0 -1
  138. package/dist/hdhr/index.d.ts +0 -1
  139. package/dist/hdhr/protocol.d.ts +1 -2
  140. package/dist/hdhr/protocol.js +1 -1
  141. package/dist/hdhr/tunerState.d.ts +0 -1
  142. package/dist/hdhr/udp.d.ts +0 -1
  143. package/dist/hdhr/udp.js +16 -4
  144. package/dist/hdhr/udp.js.map +1 -1
  145. package/dist/identity.d.ts +0 -1
  146. package/dist/index.d.ts +0 -1
  147. package/dist/index.js +10 -3
  148. package/dist/index.js.map +1 -1
  149. package/dist/native/codecInference.d.ts +5 -4
  150. package/dist/native/codecInference.js +12 -7
  151. package/dist/native/codecInference.js.map +1 -1
  152. package/dist/native/decrypt.d.ts +10 -3
  153. package/dist/native/decrypt.js +9 -5
  154. package/dist/native/decrypt.js.map +1 -1
  155. package/dist/native/index.d.ts +26 -24
  156. package/dist/native/index.js +26 -20
  157. package/dist/native/index.js.map +1 -1
  158. package/dist/native/probe.d.ts +7 -10
  159. package/dist/native/probe.js +41 -37
  160. package/dist/native/probe.js.map +1 -1
  161. package/dist/native/proxy.d.ts +3 -4
  162. package/dist/native/proxy.js +91 -69
  163. package/dist/native/proxy.js.map +1 -1
  164. package/dist/native/tokenExpiry.d.ts +0 -1
  165. package/dist/routes/assets.d.ts +0 -1
  166. package/dist/routes/auth.d.ts +0 -1
  167. package/dist/routes/auth.js +1 -1
  168. package/dist/routes/auth.js.map +1 -1
  169. package/dist/routes/cdp.d.ts +11 -5
  170. package/dist/routes/cdp.js +91 -63
  171. package/dist/routes/cdp.js.map +1 -1
  172. package/dist/routes/channels.d.ts +0 -1
  173. package/dist/routes/clientActions.d.ts +0 -1
  174. package/dist/routes/components.d.ts +0 -1
  175. package/dist/routes/config/channels/endpoints/browse.d.ts +0 -1
  176. package/dist/routes/config/channels/endpoints/bulk.d.ts +0 -1
  177. package/dist/routes/config/channels/endpoints/bulk.js +3 -3
  178. package/dist/routes/config/channels/endpoints/bulk.js.map +1 -1
  179. package/dist/routes/config/channels/endpoints/crud.d.ts +0 -1
  180. package/dist/routes/config/channels/endpoints/crud.js +4 -3
  181. package/dist/routes/config/channels/endpoints/crud.js.map +1 -1
  182. package/dist/routes/config/channels/endpoints/importExport.d.ts +0 -1
  183. package/dist/routes/config/channels/endpoints/importExport.js +7 -3
  184. package/dist/routes/config/channels/endpoints/importExport.js.map +1 -1
  185. package/dist/routes/config/channels/endpoints/predefined.d.ts +0 -1
  186. package/dist/routes/config/channels/endpoints/prefs.d.ts +0 -1
  187. package/dist/routes/config/channels/endpoints/prefs.js +1 -1
  188. package/dist/routes/config/channels/endpoints/prefs.js.map +1 -1
  189. package/dist/routes/config/channels/endpoints/service.d.ts +0 -1
  190. package/dist/routes/config/channels/endpoints/service.js +8 -5
  191. package/dist/routes/config/channels/endpoints/service.js.map +1 -1
  192. package/dist/routes/config/channels/endpoints/tags.d.ts +0 -1
  193. package/dist/routes/config/channels/endpoints/tags.js +3 -3
  194. package/dist/routes/config/channels/endpoints/tags.js.map +1 -1
  195. package/dist/routes/config/channels/healthBridge.d.ts +4 -1
  196. package/dist/routes/config/channels/healthBridge.js +9 -5
  197. package/dist/routes/config/channels/healthBridge.js.map +1 -1
  198. package/dist/routes/config/channels/http/handler.d.ts +0 -1
  199. package/dist/routes/config/channels/http/playlistHint.d.ts +0 -1
  200. package/dist/routes/config/channels/http/serviceWarning.d.ts +0 -1
  201. package/dist/routes/config/channels/http/serviceWarning.js +1 -1
  202. package/dist/routes/config/channels/http/serviceWarning.js.map +1 -1
  203. package/dist/routes/config/channels/index.d.ts +0 -1
  204. package/dist/routes/config/channels/setup.d.ts +0 -1
  205. package/dist/routes/config/channels/table.d.ts +0 -1
  206. package/dist/routes/config/channels/table.js +66 -134
  207. package/dist/routes/config/channels/table.js.map +1 -1
  208. package/dist/routes/config/http/envelope.d.ts +1 -2
  209. package/dist/routes/config/index.d.ts +5 -5
  210. package/dist/routes/config/index.js +7 -5
  211. package/dist/routes/config/index.js.map +1 -1
  212. package/dist/routes/config/services.d.ts +0 -1
  213. package/dist/routes/config/services.js +17 -19
  214. package/dist/routes/config/services.js.map +1 -1
  215. package/dist/routes/config/settings.d.ts +6 -15
  216. package/dist/routes/config/settings.js +16 -35
  217. package/dist/routes/config/settings.js.map +1 -1
  218. package/dist/routes/debug.d.ts +0 -1
  219. package/dist/routes/debug.js +1 -1
  220. package/dist/routes/debug.js.map +1 -1
  221. package/dist/routes/health.d.ts +16 -8
  222. package/dist/routes/health.js +27 -12
  223. package/dist/routes/health.js.map +1 -1
  224. package/dist/routes/hls.d.ts +0 -1
  225. package/dist/routes/icons.d.ts +0 -1
  226. package/dist/routes/index.d.ts +0 -1
  227. package/dist/routes/logs.d.ts +3 -2
  228. package/dist/routes/logs.js +54 -14
  229. package/dist/routes/logs.js.map +1 -1
  230. package/dist/routes/mpegts.d.ts +0 -1
  231. package/dist/routes/play.d.ts +0 -1
  232. package/dist/routes/playlist.d.ts +0 -1
  233. package/dist/routes/playlist.js +2 -1
  234. package/dist/routes/playlist.js.map +1 -1
  235. package/dist/routes/root/content.d.ts +0 -1
  236. package/dist/routes/root/content.js +32 -11
  237. package/dist/routes/root/content.js.map +1 -1
  238. package/dist/routes/root/index.d.ts +10 -1
  239. package/dist/routes/root/index.js +17 -7
  240. package/dist/routes/root/index.js.map +1 -1
  241. package/dist/routes/root/scripts/channels.d.ts +0 -1
  242. package/dist/routes/root/scripts/channels.js +10 -20
  243. package/dist/routes/root/scripts/channels.js.map +1 -1
  244. package/dist/routes/root/scripts/clientEscape.d.ts +0 -1
  245. package/dist/routes/root/scripts/clientEscape.js +1 -1
  246. package/dist/routes/root/scripts/clientUrl.d.ts +0 -1
  247. package/dist/routes/root/scripts/config.d.ts +0 -1
  248. package/dist/routes/root/scripts/config.js +8 -29
  249. package/dist/routes/root/scripts/config.js.map +1 -1
  250. package/dist/routes/root/scripts/index.d.ts +0 -1
  251. package/dist/routes/root/scripts/shared.d.ts +0 -1
  252. package/dist/routes/root/scripts/shared.js +16 -13
  253. package/dist/routes/root/scripts/shared.js.map +1 -1
  254. package/dist/routes/root/scripts/status.d.ts +0 -1
  255. package/dist/routes/root/scripts/status.handlers.d.ts +3 -1
  256. package/dist/routes/root/scripts/status.handlers.js +52 -26
  257. package/dist/routes/root/scripts/status.handlers.js.map +1 -1
  258. package/dist/routes/root/styles.d.ts +0 -1
  259. package/dist/routes/root/styles.js +10 -18
  260. package/dist/routes/root/styles.js.map +1 -1
  261. package/dist/routes/services.d.ts +0 -1
  262. package/dist/routes/services.js +1 -1
  263. package/dist/routes/services.js.map +1 -1
  264. package/dist/routes/sse.d.ts +3 -2
  265. package/dist/routes/sse.js +7 -3
  266. package/dist/routes/sse.js.map +1 -1
  267. package/dist/routes/streams.d.ts +4 -2
  268. package/dist/routes/streams.js +8 -5
  269. package/dist/routes/streams.js.map +1 -1
  270. package/dist/routes/theme.d.ts +0 -1
  271. package/dist/routes/theme.js +3 -3
  272. package/dist/routes/theme.js.map +1 -1
  273. package/dist/routes/ui.d.ts +0 -1
  274. package/dist/routes/ui.js +5 -5
  275. package/dist/routes/ui.js.map +1 -1
  276. package/dist/routes/upgrade.d.ts +0 -1
  277. package/dist/routes/upgrade.js +2 -1
  278. package/dist/routes/upgrade.js.map +1 -1
  279. package/dist/service/commands.context.d.ts +0 -1
  280. package/dist/service/commands.context.js +7 -1
  281. package/dist/service/commands.context.js.map +1 -1
  282. package/dist/service/commands.d.ts +0 -1
  283. package/dist/service/generators.context.d.ts +0 -1
  284. package/dist/service/generators.d.ts +0 -1
  285. package/dist/service/index.d.ts +0 -1
  286. package/dist/streaming/captureLock.d.ts +1 -2
  287. package/dist/streaming/captureLock.js +8 -7
  288. package/dist/streaming/captureLock.js.map +1 -1
  289. package/dist/streaming/captureSession.d.ts +0 -1
  290. package/dist/streaming/clients.d.ts +4 -3
  291. package/dist/streaming/clients.js +5 -4
  292. package/dist/streaming/clients.js.map +1 -1
  293. package/dist/streaming/codec.d.ts +0 -1
  294. package/dist/streaming/fmp4Segmenter.d.ts +11 -6
  295. package/dist/streaming/fmp4Segmenter.js +39 -17
  296. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  297. package/dist/streaming/hls.d.ts +96 -3
  298. package/dist/streaming/hls.js +282 -171
  299. package/dist/streaming/hls.js.map +1 -1
  300. package/dist/streaming/hlsResume.d.ts +8 -5
  301. package/dist/streaming/hlsResume.js +10 -8
  302. package/dist/streaming/hlsResume.js.map +1 -1
  303. package/dist/streaming/hlsSegments.d.ts +11 -8
  304. package/dist/streaming/hlsSegments.js +38 -18
  305. package/dist/streaming/hlsSegments.js.map +1 -1
  306. package/dist/streaming/lifecycle.d.ts +5 -4
  307. package/dist/streaming/lifecycle.js +43 -13
  308. package/dist/streaming/lifecycle.js.map +1 -1
  309. package/dist/streaming/monitor.d.ts +14 -3
  310. package/dist/streaming/monitor.js +447 -234
  311. package/dist/streaming/monitor.js.map +1 -1
  312. package/dist/streaming/mp4Parser.d.ts +0 -1
  313. package/dist/streaming/mpegts.d.ts +11 -1
  314. package/dist/streaming/mpegts.js +92 -28
  315. package/dist/streaming/mpegts.js.map +1 -1
  316. package/dist/streaming/playlistBuilder.d.ts +0 -1
  317. package/dist/streaming/preroll.d.ts +34 -15
  318. package/dist/streaming/preroll.js +32 -30
  319. package/dist/streaming/preroll.js.map +1 -1
  320. package/dist/streaming/pretune.d.ts +2 -3
  321. package/dist/streaming/pretune.js +45 -45
  322. package/dist/streaming/pretune.js.map +1 -1
  323. package/dist/streaming/pretuneTimers.d.ts +16 -12
  324. package/dist/streaming/pretuneTimers.js +27 -37
  325. package/dist/streaming/pretuneTimers.js.map +1 -1
  326. package/dist/streaming/recovery.d.ts +97 -9
  327. package/dist/streaming/recovery.js +96 -18
  328. package/dist/streaming/recovery.js.map +1 -1
  329. package/dist/streaming/registry.d.ts +102 -15
  330. package/dist/streaming/registry.js +90 -5
  331. package/dist/streaming/registry.js.map +1 -1
  332. package/dist/streaming/setup.d.ts +90 -32
  333. package/dist/streaming/setup.js +379 -248
  334. package/dist/streaming/setup.js.map +1 -1
  335. package/dist/streaming/showInfo.d.ts +8 -4
  336. package/dist/streaming/showInfo.js +54 -45
  337. package/dist/streaming/showInfo.js.map +1 -1
  338. package/dist/streaming/statusEmitter.d.ts +5 -3
  339. package/dist/streaming/statusEmitter.js +20 -8
  340. package/dist/streaming/statusEmitter.js.map +1 -1
  341. package/dist/types/channels.d.ts +0 -1
  342. package/dist/types/channels.js +0 -4
  343. package/dist/types/channels.js.map +1 -1
  344. package/dist/types/config.d.ts +0 -1
  345. package/dist/types/index.d.ts +4 -4
  346. package/dist/types/index.js +2 -1
  347. package/dist/types/index.js.map +1 -1
  348. package/dist/types/profiles.d.ts +51 -9
  349. package/dist/types/profiles.js +35 -1
  350. package/dist/types/profiles.js.map +1 -1
  351. package/dist/types/selection.d.ts +10 -1
  352. package/dist/types/shared.d.ts +0 -1
  353. package/dist/types/streaming.d.ts +8 -1
  354. package/dist/types/streaming.js +7 -0
  355. package/dist/types/streaming.js.map +1 -1
  356. package/dist/upgrade/commands.context.d.ts +0 -1
  357. package/dist/upgrade/commands.d.ts +0 -1
  358. package/dist/upgrade/commands.js +1 -1
  359. package/dist/upgrade/commands.js.map +1 -1
  360. package/dist/upgrade/detection.context.d.ts +0 -1
  361. package/dist/upgrade/detection.d.ts +1 -2
  362. package/dist/upgrade/index.d.ts +0 -1
  363. package/dist/upgrade/lifecycle.context.d.ts +2 -1
  364. package/dist/upgrade/lifecycle.context.js +9 -4
  365. package/dist/upgrade/lifecycle.context.js.map +1 -1
  366. package/dist/upgrade/lifecycle.d.ts +0 -1
  367. package/dist/upgrade/pathHandle.d.ts +0 -1
  368. package/dist/utils/bootSession.context.d.ts +0 -1
  369. package/dist/utils/bootSession.context.js +3 -2
  370. package/dist/utils/bootSession.context.js.map +1 -1
  371. package/dist/utils/bootSession.d.ts +0 -1
  372. package/dist/utils/chromeFetch.d.ts +0 -1
  373. package/dist/utils/cliOutput.d.ts +0 -1
  374. package/dist/utils/debugFilter.d.ts +0 -1
  375. package/dist/utils/debugFilter.js +5 -3
  376. package/dist/utils/debugFilter.js.map +1 -1
  377. package/dist/utils/delay.d.ts +65 -13
  378. package/dist/utils/delay.js +96 -23
  379. package/dist/utils/delay.js.map +1 -1
  380. package/dist/utils/errors.d.ts +0 -11
  381. package/dist/utils/errors.js +3 -14
  382. package/dist/utils/errors.js.map +1 -1
  383. package/dist/utils/evaluate.d.ts +11 -3
  384. package/dist/utils/evaluate.js +4 -3
  385. package/dist/utils/evaluate.js.map +1 -1
  386. package/dist/utils/ffmpeg.context.d.ts +0 -1
  387. package/dist/utils/ffmpeg.d.ts +1 -1
  388. package/dist/utils/ffmpeg.js +2 -1
  389. package/dist/utils/ffmpeg.js.map +1 -1
  390. package/dist/utils/fileLogger.d.ts +26 -7
  391. package/dist/utils/fileLogger.js +241 -102
  392. package/dist/utils/fileLogger.js.map +1 -1
  393. package/dist/utils/format.d.ts +36 -4
  394. package/dist/utils/format.js +66 -12
  395. package/dist/utils/format.js.map +1 -1
  396. package/dist/utils/index.d.ts +1 -2
  397. package/dist/utils/index.js +1 -1
  398. package/dist/utils/index.js.map +1 -1
  399. package/dist/utils/logEmitter.d.ts +0 -1
  400. package/dist/utils/logger.d.ts +0 -1
  401. package/dist/utils/m3u.d.ts +0 -1
  402. package/dist/utils/markup.d.ts +0 -1
  403. package/dist/utils/memo.d.ts +0 -1
  404. package/dist/utils/morganStream.d.ts +2 -3
  405. package/dist/utils/morganStream.js +6 -8
  406. package/dist/utils/morganStream.js.map +1 -1
  407. package/dist/utils/network.d.ts +0 -1
  408. package/dist/utils/never.d.ts +8 -0
  409. package/dist/utils/never.js +20 -0
  410. package/dist/utils/never.js.map +1 -0
  411. package/dist/utils/pid.d.ts +0 -1
  412. package/dist/utils/platform.d.ts +0 -1
  413. package/dist/utils/processInspector.context.d.ts +32 -2
  414. package/dist/utils/processInspector.context.js +117 -1
  415. package/dist/utils/processInspector.context.js.map +1 -1
  416. package/dist/utils/processInspector.d.ts +0 -32
  417. package/dist/utils/processInspector.js +10 -117
  418. package/dist/utils/processInspector.js.map +1 -1
  419. package/dist/utils/retry.d.ts +5 -4
  420. package/dist/utils/retry.js +43 -33
  421. package/dist/utils/retry.js.map +1 -1
  422. package/dist/utils/runtimeIdentity.context.d.ts +0 -1
  423. package/dist/utils/runtimeIdentity.context.js +3 -1
  424. package/dist/utils/runtimeIdentity.context.js.map +1 -1
  425. package/dist/utils/runtimeIdentity.d.ts +1 -1
  426. package/dist/utils/runtimeIdentity.js +1 -1
  427. package/dist/utils/runtimeIdentity.js.map +1 -1
  428. package/dist/utils/sanitize.d.ts +8 -1
  429. package/dist/utils/sanitize.js +19 -0
  430. package/dist/utils/sanitize.js.map +1 -1
  431. package/dist/utils/streamContext.d.ts +0 -1
  432. package/dist/utils/timing.d.ts +3 -4
  433. package/dist/utils/timing.js +4 -4
  434. package/dist/utils/timing.js.map +1 -1
  435. package/dist/utils/version.d.ts +14 -8
  436. package/dist/utils/version.js +35 -24
  437. package/dist/utils/version.js.map +1 -1
  438. package/package.json +7 -7
  439. package/dist/app.d.ts.map +0 -1
  440. package/dist/browser/blockedPage.d.ts.map +0 -1
  441. package/dist/browser/browserSupervisor.d.ts.map +0 -1
  442. package/dist/browser/cdp.d.ts.map +0 -1
  443. package/dist/browser/channelSelection.d.ts.map +0 -1
  444. package/dist/browser/consent.d.ts.map +0 -1
  445. package/dist/browser/display.d.ts.map +0 -1
  446. package/dist/browser/hlsPlaylistObserver.d.ts.map +0 -1
  447. package/dist/browser/index.d.ts.map +0 -1
  448. package/dist/browser/launchGovernor.d.ts.map +0 -1
  449. package/dist/browser/login.d.ts.map +0 -1
  450. package/dist/browser/manifestInterceptor.d.ts.map +0 -1
  451. package/dist/browser/pageStaleness.d.ts.map +0 -1
  452. package/dist/browser/precaching.d.ts.map +0 -1
  453. package/dist/browser/tabNetworkObserver.d.ts.map +0 -1
  454. package/dist/browser/tuning/cache.d.ts.map +0 -1
  455. package/dist/browser/tuning/comcastPolymer.d.ts.map +0 -1
  456. package/dist/browser/tuning/cox.d.ts.map +0 -1
  457. package/dist/browser/tuning/directv.d.ts.map +0 -1
  458. package/dist/browser/tuning/fox.d.ts.map +0 -1
  459. package/dist/browser/tuning/gridSearch.d.ts.map +0 -1
  460. package/dist/browser/tuning/hbo.d.ts.map +0 -1
  461. package/dist/browser/tuning/hulu.d.ts.map +0 -1
  462. package/dist/browser/tuning/shared.d.ts.map +0 -1
  463. package/dist/browser/tuning/sling.d.ts.map +0 -1
  464. package/dist/browser/tuning/spectrum.d.ts.map +0 -1
  465. package/dist/browser/tuning/thumbnailRow.d.ts.map +0 -1
  466. package/dist/browser/tuning/tileClick.d.ts.map +0 -1
  467. package/dist/browser/tuning/xfinity.d.ts.map +0 -1
  468. package/dist/browser/tuning/youtubeTv.d.ts.map +0 -1
  469. package/dist/browser/video.d.ts.map +0 -1
  470. package/dist/channels/index.d.ts.map +0 -1
  471. package/dist/config/channelForm.d.ts.map +0 -1
  472. package/dist/config/consistencyProbe.d.ts.map +0 -1
  473. package/dist/config/health.d.ts.map +0 -1
  474. package/dist/config/index.d.ts.map +0 -1
  475. package/dist/config/paths.d.ts.map +0 -1
  476. package/dist/config/persistence.context.d.ts.map +0 -1
  477. package/dist/config/persistence.d.ts.map +0 -1
  478. package/dist/config/presets.d.ts.map +0 -1
  479. package/dist/config/profiles.d.ts.map +0 -1
  480. package/dist/config/providerLineups.d.ts.map +0 -1
  481. package/dist/config/reactivity.d.ts.map +0 -1
  482. package/dist/config/servicePacks.d.ts.map +0 -1
  483. package/dist/config/services.d.ts.map +0 -1
  484. package/dist/config/sites.d.ts.map +0 -1
  485. package/dist/config/userChannels.d.ts.map +0 -1
  486. package/dist/config/userConfig.d.ts.map +0 -1
  487. package/dist/config/userProfiles.d.ts.map +0 -1
  488. package/dist/hdhr/channelMap.d.ts.map +0 -1
  489. package/dist/hdhr/deviceId.d.ts.map +0 -1
  490. package/dist/hdhr/discover.d.ts.map +0 -1
  491. package/dist/hdhr/getHandlers.d.ts.map +0 -1
  492. package/dist/hdhr/identity.d.ts.map +0 -1
  493. package/dist/hdhr/index.d.ts.map +0 -1
  494. package/dist/hdhr/protocol.d.ts.map +0 -1
  495. package/dist/hdhr/tunerState.d.ts.map +0 -1
  496. package/dist/hdhr/udp.d.ts.map +0 -1
  497. package/dist/identity.d.ts.map +0 -1
  498. package/dist/index.d.ts.map +0 -1
  499. package/dist/native/codecInference.d.ts.map +0 -1
  500. package/dist/native/decrypt.d.ts.map +0 -1
  501. package/dist/native/index.d.ts.map +0 -1
  502. package/dist/native/probe.d.ts.map +0 -1
  503. package/dist/native/proxy.d.ts.map +0 -1
  504. package/dist/native/tokenExpiry.d.ts.map +0 -1
  505. package/dist/routes/assets.d.ts.map +0 -1
  506. package/dist/routes/auth.d.ts.map +0 -1
  507. package/dist/routes/cdp.d.ts.map +0 -1
  508. package/dist/routes/channels.d.ts.map +0 -1
  509. package/dist/routes/clientActions.d.ts.map +0 -1
  510. package/dist/routes/components.d.ts.map +0 -1
  511. package/dist/routes/config/channels/endpoints/browse.d.ts.map +0 -1
  512. package/dist/routes/config/channels/endpoints/bulk.d.ts.map +0 -1
  513. package/dist/routes/config/channels/endpoints/crud.d.ts.map +0 -1
  514. package/dist/routes/config/channels/endpoints/importExport.d.ts.map +0 -1
  515. package/dist/routes/config/channels/endpoints/predefined.d.ts.map +0 -1
  516. package/dist/routes/config/channels/endpoints/prefs.d.ts.map +0 -1
  517. package/dist/routes/config/channels/endpoints/service.d.ts.map +0 -1
  518. package/dist/routes/config/channels/endpoints/tags.d.ts.map +0 -1
  519. package/dist/routes/config/channels/healthBridge.d.ts.map +0 -1
  520. package/dist/routes/config/channels/http/handler.d.ts.map +0 -1
  521. package/dist/routes/config/channels/http/playlistHint.d.ts.map +0 -1
  522. package/dist/routes/config/channels/http/serviceWarning.d.ts.map +0 -1
  523. package/dist/routes/config/channels/index.d.ts.map +0 -1
  524. package/dist/routes/config/channels/setup.d.ts.map +0 -1
  525. package/dist/routes/config/channels/table.d.ts.map +0 -1
  526. package/dist/routes/config/http/envelope.d.ts.map +0 -1
  527. package/dist/routes/config/index.d.ts.map +0 -1
  528. package/dist/routes/config/services.d.ts.map +0 -1
  529. package/dist/routes/config/settings.d.ts.map +0 -1
  530. package/dist/routes/debug.d.ts.map +0 -1
  531. package/dist/routes/health.d.ts.map +0 -1
  532. package/dist/routes/hls.d.ts.map +0 -1
  533. package/dist/routes/icons.d.ts.map +0 -1
  534. package/dist/routes/index.d.ts.map +0 -1
  535. package/dist/routes/logs.d.ts.map +0 -1
  536. package/dist/routes/mpegts.d.ts.map +0 -1
  537. package/dist/routes/play.d.ts.map +0 -1
  538. package/dist/routes/playlist.d.ts.map +0 -1
  539. package/dist/routes/root/content.d.ts.map +0 -1
  540. package/dist/routes/root/index.d.ts.map +0 -1
  541. package/dist/routes/root/scripts/channels.d.ts.map +0 -1
  542. package/dist/routes/root/scripts/clientEscape.d.ts.map +0 -1
  543. package/dist/routes/root/scripts/clientUrl.d.ts.map +0 -1
  544. package/dist/routes/root/scripts/config.d.ts.map +0 -1
  545. package/dist/routes/root/scripts/index.d.ts.map +0 -1
  546. package/dist/routes/root/scripts/shared.d.ts.map +0 -1
  547. package/dist/routes/root/scripts/status.d.ts.map +0 -1
  548. package/dist/routes/root/scripts/status.handlers.d.ts.map +0 -1
  549. package/dist/routes/root/styles.d.ts.map +0 -1
  550. package/dist/routes/services.d.ts.map +0 -1
  551. package/dist/routes/sse.d.ts.map +0 -1
  552. package/dist/routes/streams.d.ts.map +0 -1
  553. package/dist/routes/theme.d.ts.map +0 -1
  554. package/dist/routes/ui.d.ts.map +0 -1
  555. package/dist/routes/upgrade.d.ts.map +0 -1
  556. package/dist/service/commands.context.d.ts.map +0 -1
  557. package/dist/service/commands.d.ts.map +0 -1
  558. package/dist/service/generators.context.d.ts.map +0 -1
  559. package/dist/service/generators.d.ts.map +0 -1
  560. package/dist/service/index.d.ts.map +0 -1
  561. package/dist/streaming/captureLock.d.ts.map +0 -1
  562. package/dist/streaming/captureSession.d.ts.map +0 -1
  563. package/dist/streaming/clients.d.ts.map +0 -1
  564. package/dist/streaming/codec.d.ts.map +0 -1
  565. package/dist/streaming/fmp4Segmenter.d.ts.map +0 -1
  566. package/dist/streaming/hls.d.ts.map +0 -1
  567. package/dist/streaming/hlsResume.d.ts.map +0 -1
  568. package/dist/streaming/hlsSegments.d.ts.map +0 -1
  569. package/dist/streaming/lifecycle.d.ts.map +0 -1
  570. package/dist/streaming/monitor.d.ts.map +0 -1
  571. package/dist/streaming/mp4Parser.d.ts.map +0 -1
  572. package/dist/streaming/mpegts.d.ts.map +0 -1
  573. package/dist/streaming/playlistBuilder.d.ts.map +0 -1
  574. package/dist/streaming/preroll.d.ts.map +0 -1
  575. package/dist/streaming/pretune.d.ts.map +0 -1
  576. package/dist/streaming/pretuneTimers.d.ts.map +0 -1
  577. package/dist/streaming/recovery.d.ts.map +0 -1
  578. package/dist/streaming/registry.d.ts.map +0 -1
  579. package/dist/streaming/setup.d.ts.map +0 -1
  580. package/dist/streaming/showInfo.d.ts.map +0 -1
  581. package/dist/streaming/statusEmitter.d.ts.map +0 -1
  582. package/dist/types/channels.d.ts.map +0 -1
  583. package/dist/types/config.d.ts.map +0 -1
  584. package/dist/types/index.d.ts.map +0 -1
  585. package/dist/types/profiles.d.ts.map +0 -1
  586. package/dist/types/selection.d.ts.map +0 -1
  587. package/dist/types/shared.d.ts.map +0 -1
  588. package/dist/types/streaming.d.ts.map +0 -1
  589. package/dist/upgrade/commands.context.d.ts.map +0 -1
  590. package/dist/upgrade/commands.d.ts.map +0 -1
  591. package/dist/upgrade/detection.context.d.ts.map +0 -1
  592. package/dist/upgrade/detection.d.ts.map +0 -1
  593. package/dist/upgrade/index.d.ts.map +0 -1
  594. package/dist/upgrade/lifecycle.context.d.ts.map +0 -1
  595. package/dist/upgrade/lifecycle.d.ts.map +0 -1
  596. package/dist/upgrade/pathHandle.d.ts.map +0 -1
  597. package/dist/utils/bootSession.context.d.ts.map +0 -1
  598. package/dist/utils/bootSession.d.ts.map +0 -1
  599. package/dist/utils/chromeFetch.d.ts.map +0 -1
  600. package/dist/utils/cliOutput.d.ts.map +0 -1
  601. package/dist/utils/clock.d.ts +0 -15
  602. package/dist/utils/clock.d.ts.map +0 -1
  603. package/dist/utils/clock.js +0 -31
  604. package/dist/utils/clock.js.map +0 -1
  605. package/dist/utils/debugFilter.d.ts.map +0 -1
  606. package/dist/utils/delay.d.ts.map +0 -1
  607. package/dist/utils/errors.d.ts.map +0 -1
  608. package/dist/utils/evaluate.d.ts.map +0 -1
  609. package/dist/utils/ffmpeg.context.d.ts.map +0 -1
  610. package/dist/utils/ffmpeg.d.ts.map +0 -1
  611. package/dist/utils/fileLogger.d.ts.map +0 -1
  612. package/dist/utils/format.d.ts.map +0 -1
  613. package/dist/utils/index.d.ts.map +0 -1
  614. package/dist/utils/logEmitter.d.ts.map +0 -1
  615. package/dist/utils/logger.d.ts.map +0 -1
  616. package/dist/utils/m3u.d.ts.map +0 -1
  617. package/dist/utils/markup.d.ts.map +0 -1
  618. package/dist/utils/memo.d.ts.map +0 -1
  619. package/dist/utils/morganStream.d.ts.map +0 -1
  620. package/dist/utils/network.d.ts.map +0 -1
  621. package/dist/utils/pid.d.ts.map +0 -1
  622. package/dist/utils/platform.d.ts.map +0 -1
  623. package/dist/utils/processInspector.context.d.ts.map +0 -1
  624. package/dist/utils/processInspector.d.ts.map +0 -1
  625. package/dist/utils/retry.d.ts.map +0 -1
  626. package/dist/utils/runtimeIdentity.context.d.ts.map +0 -1
  627. package/dist/utils/runtimeIdentity.d.ts.map +0 -1
  628. package/dist/utils/sanitize.d.ts.map +0 -1
  629. package/dist/utils/streamContext.d.ts.map +0 -1
  630. package/dist/utils/timing.d.ts.map +0 -1
  631. package/dist/utils/version.d.ts.map +0 -1
@@ -43,15 +43,16 @@ export declare function applyConfigurationChange(reason: string): Promise<ApplyC
43
43
  /**
44
44
  * Builds the user-facing message for a save response based on the apply and restart outcome. Picks the strongest signal: a restart message when a restart
45
45
  * was scheduled (operators rely on this exact wording to recognize a pending restart), a live-applied summary when the change took effect immediately, or a
46
- * rejected summary when handlers refused the change. The message is plain prose - the structured counts ride alongside in the data envelope for clients that
46
+ * rejected summary when handlers refused the change. The message is plain prose - the structured counts go alongside in the data envelope for clients that
47
47
  * want them.
48
48
  * @param result - The combined apply and restart result.
49
49
  * @returns Single-sentence message describing the outcome.
50
50
  */
51
51
  export declare function describeConfigurationOutcome(result: ApplyConfigurationResult): string;
52
52
  /**
53
- * Groups profiles by their declared category for UI display. Each profile declares its own category (api, custom, keyboard, multiChannel, special) and this helper
54
- * simply filters by that field. Display order is left entirely to the caller, and different callers order the categories differently.
53
+ * Groups profiles by their declared category for UI display. Each profile declares its own category and this helper simply filters by that field. The record is
54
+ * written out key by key rather than built from PROFILE_CATEGORIES, so a category added to the table without a bucket here is a compile error. Display order
55
+ * belongs to the table, and every caller renders in it.
55
56
  * @param profiles - List of available profiles with category, descriptions, and summaries.
56
57
  * @returns Object with profiles grouped by category.
57
58
  */
@@ -64,6 +65,5 @@ export declare function categorizeProfiles(profiles: readonly ProfileInfo[]): Re
64
65
  export declare function setupConfigEndpoint(app: Express): void;
65
66
  export type { ChannelRowHtml } from "./channels/index.ts";
66
67
  export { OPTIONAL_COLUMNS, generateChannelRowHtml, generateChannelsPanel, generateServiceFilterToolbar } from "./channels/index.ts";
67
- export { generateAdvancedTabContent, generateCollapsibleSection, generateSettingsFormFooter, generateSettingsTabContent, hasEnvOverrides } from "./settings.ts";
68
+ export { generateAdvancedTabContent, generateCollapsibleSection, generateSettingsFormFooter, generateSettingsTabContent } from "./settings.ts";
68
69
  export { generateCustomProfilesPanel, generateProfileWizardModal } from "./services.ts";
69
- //# sourceMappingURL=index.d.ts.map
@@ -9,6 +9,7 @@ import { reloadConfiguration } from "../../config/index.js";
9
9
  import { setupChannelRoutes } from "./channels/index.js";
10
10
  import { setupProfileRoutes } from "./services.js";
11
11
  import { setupSettingsRoutes } from "./settings.js";
12
+ import { systemClock } from "homebridge-plugin-utils";
12
13
  /**
13
14
  * Schedules a server restart after a brief delay to allow the response to be sent. This is used after configuration changes that require a restart to take effect.
14
15
  * Returns information about whether the server will auto-restart (depends on whether running as a service). If streams are active and running as a service, the restart
@@ -40,7 +41,7 @@ export function scheduleServerRestart(reason) {
40
41
  };
41
42
  }
42
43
  // No active streams - restart immediately. Close the browser first to avoid orphan Chrome processes.
43
- setTimeout(() => {
44
+ systemClock.schedule(() => {
44
45
  LOG.info("Exiting for service manager restart %s.", reason);
45
46
  void closeBrowser().then(() => { process.exit(0); }).catch(() => { process.exit(1); });
46
47
  }, 500);
@@ -75,7 +76,7 @@ export async function applyConfigurationChange(reason) {
75
76
  /**
76
77
  * Builds the user-facing message for a save response based on the apply and restart outcome. Picks the strongest signal: a restart message when a restart
77
78
  * was scheduled (operators rely on this exact wording to recognize a pending restart), a live-applied summary when the change took effect immediately, or a
78
- * rejected summary when handlers refused the change. The message is plain prose - the structured counts ride alongside in the data envelope for clients that
79
+ * rejected summary when handlers refused the change. The message is plain prose - the structured counts go alongside in the data envelope for clients that
79
80
  * want them.
80
81
  * @param result - The combined apply and restart result.
81
82
  * @returns Single-sentence message describing the outcome.
@@ -100,8 +101,9 @@ export function describeConfigurationOutcome(result) {
100
101
  return "Configuration saved, but " + String(rejectedCount) + " change" + ((rejectedCount === 1) ? " was" : "s were") + " rejected: " + firstReason + ".";
101
102
  }
102
103
  /**
103
- * Groups profiles by their declared category for UI display. Each profile declares its own category (api, custom, keyboard, multiChannel, special) and this helper
104
- * simply filters by that field. Display order is left entirely to the caller, and different callers order the categories differently.
104
+ * Groups profiles by their declared category for UI display. Each profile declares its own category and this helper simply filters by that field. The record is
105
+ * written out key by key rather than built from PROFILE_CATEGORIES, so a category added to the table without a bucket here is a compile error. Display order
106
+ * belongs to the table, and every caller renders in it.
105
107
  * @param profiles - List of available profiles with category, descriptions, and summaries.
106
108
  * @returns Object with profiles grouped by category.
107
109
  */
@@ -125,6 +127,6 @@ export function setupConfigEndpoint(app) {
125
127
  setupProfileRoutes(app);
126
128
  }
127
129
  export { OPTIONAL_COLUMNS, generateChannelRowHtml, generateChannelsPanel, generateServiceFilterToolbar } from "./channels/index.js";
128
- export { generateAdvancedTabContent, generateCollapsibleSection, generateSettingsFormFooter, generateSettingsTabContent, hasEnvOverrides } from "./settings.js";
130
+ export { generateAdvancedTabContent, generateCollapsibleSection, generateSettingsFormFooter, generateSettingsTabContent } from "./settings.js";
129
131
  export { generateCustomProfilesPanel, generateProfileWizardModal } from "./services.js";
130
132
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/routes/config/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/routes/config/index.ts"],"names":[],"mappings":"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"}
@@ -16,4 +16,3 @@ export declare function generateProfileWizardModal(): string;
16
16
  * @param app - The Express application.
17
17
  */
18
18
  export declare function setupProfileRoutes(app: Express): void;
19
- //# sourceMappingURL=services.d.ts.map
@@ -1,14 +1,16 @@
1
1
  import { ICON_ADD, ICON_DELETE, ICON_EDIT, ICON_EXPORT, ICON_IMPORT } from "../icons.js";
2
- import { LOG, escapeHtml, sanitizeString, stringifySorted } from "../../utils/index.js";
2
+ import { LOG, escapeHtml, sanitizeString, sanitizeStringFields, stringifySorted } from "../../utils/index.js";
3
3
  import { deleteUserProfile, getUserDomains, getUserProfiles, mutateProfiles, validateDomain, validateProfile, validateProfileKey } from "../../config/userProfiles.js";
4
4
  import { endLoginMode, getLoginPage, startLoginMode } from "../../browser/index.js";
5
5
  import { exportServicePack, importServicePack, parseServicePack } from "../../config/servicePacks.js";
6
- import { getBuiltinProfile, getProfiles } from "../../config/profiles.js";
7
6
  import { getChannelListing, validateChannelUrl } from "../../config/userChannels.js";
8
7
  import { sendErrorResponse, sendNotFoundError, sendSuccess, sendValidationError } from "./http/envelope.js";
9
8
  import { ACTIONS } from "../clientActions.js";
9
+ import { PROFILE_CATEGORIES } from "../../types/index.js";
10
10
  import { categorizeProfiles } from "./index.js";
11
11
  import { generateWizardModal } from "../components.js";
12
+ import { getBuiltinProfile } from "../../config/sites.js";
13
+ import { getProfiles } from "../../config/profiles.js";
12
14
  /**
13
15
  * Counts channels per user profile key by scanning the channel listing. Returns a record mapping profile key to channel count.
14
16
  * @param profileKeys - The set of user profile keys to count channels for.
@@ -243,8 +245,8 @@ export function generateProfileWizardModal() {
243
245
  ],
244
246
  contentId: "wizard-content",
245
247
  dataBlocks: [
246
- "<script>window.__wizardProfiles = " + JSON.stringify(profileData) + ";window.__wizardStrategies = " + JSON.stringify(WIZARD_STRATEGIES) +
247
- ";window.__wizardFields = " + JSON.stringify(WIZARD_FIELDS) + ";</script>"
248
+ "<script>window.__wizardCategories = " + JSON.stringify(PROFILE_CATEGORIES) + ";window.__wizardProfiles = " + JSON.stringify(profileData) +
249
+ ";window.__wizardStrategies = " + JSON.stringify(WIZARD_STRATEGIES) + ";window.__wizardFields = " + JSON.stringify(WIZARD_FIELDS) + ";</script>"
248
250
  ],
249
251
  errorId: "wizard-error",
250
252
  id: "wizard-modal",
@@ -268,8 +270,8 @@ export function setupProfileRoutes(app) {
268
270
  // Build a summary for each profile including its domain mappings and channel count.
269
271
  const profileList = Object.entries(profiles).toSorted(([a], [b]) => a.localeCompare(b)).map(([key, profile]) => {
270
272
  // Find domains that reference this profile. The `config.profile === key` join is the projection's single source of truth - the client never re-implements
271
- // it. Each row carries the full raw DomainConfig so the wizard can round-trip every domain-level field it does not render (videoTimeout, loginUrl,
272
- // maxContinuousPlayback, dismissSelector) rather than dropping them on an edit-resave; service and serviceTag are surfaced flat for the rendered inputs.
273
+ // it. Each row carries the full raw DomainConfig so every domain-level field the wizard does not render survives an edit-resave; service and serviceTag
274
+ // are surfaced flat for the rendered inputs.
273
275
  const profileDomains = Object.entries(domains).filter(([, config]) => (config.profile === key)).map(([domain, config]) => ({
274
276
  config,
275
277
  domain,
@@ -308,23 +310,19 @@ export function setupProfileRoutes(app) {
308
310
  sendValidationError(res, "Profile definition is required.");
309
311
  return;
310
312
  }
311
- // Sanitize string fields in the profile object, including nested channelSelection strings.
312
- for (const [field, value] of Object.entries(profile)) {
313
- if (typeof value === "string") {
314
- profile[field] = sanitizeString(value);
315
- }
316
- }
317
- if (profile.channelSelection?.matchSelector) {
318
- profile.channelSelection.matchSelector = sanitizeString(profile.channelSelection.matchSelector);
313
+ /* Sanitize every string the submitted profile carries, one nesting level at a time: the profile's own members, then its channelSelection block, which
314
+ * carries its own free-text selectors. Sweeping a whole object beats naming its string fields, because the shape grows as new sites need new selectors,
315
+ * and a field left off a hand-written list reaches profiles.json with whatever padding or invisible characters were pasted into the form. The strategy
316
+ * member is a fixed literal rather than free text, and the sweep is harmless to it: a valid literal comes back unchanged, and a padded one comes back valid.
317
+ */
318
+ sanitizeStringFields(profile);
319
+ if (profile.channelSelection) {
320
+ sanitizeStringFields(profile.channelSelection);
319
321
  }
320
322
  // Sanitize string fields in domain mappings if provided.
321
323
  if (domainMappings) {
322
324
  for (const [domain, config] of Object.entries(domainMappings)) {
323
- for (const [field, value] of Object.entries(config)) {
324
- if (typeof value === "string") {
325
- config[field] = sanitizeString(value);
326
- }
327
- }
325
+ sanitizeStringFields(config);
328
326
  // Sanitize domain keys themselves. If the sanitized domain differs from the original, replace the entry.
329
327
  const cleanDomain = sanitizeString(domain);
330
328
  if (cleanDomain !== domain) {
@@ -1 +1 @@
1
- {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/routes/config/services.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../../src/routes/config/services.ts"],"names":[],"mappings":"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"}
@@ -2,39 +2,30 @@ import type { AdvancedSection } from "../../config/userConfig.ts";
2
2
  import type { Express } from "express";
3
3
  /**
4
4
  * Generates the content for the Settings tab with non-collapsible section headers.
5
- * @param validationErrors - Map of setting path to validation error message.
6
- * @param formValues - Map of setting path to submitted form value.
5
+ * @param envOverrides - The environment overrides the page render resolved once and shares with every section it draws.
7
6
  * @returns HTML string for the Settings tab content.
8
7
  */
9
- export declare function generateSettingsTabContent(validationErrors?: Map<string, string>, formValues?: Map<string, string>): string;
8
+ export declare function generateSettingsTabContent(envOverrides: ReadonlyMap<string, string>): string;
10
9
  /**
11
10
  * Generates the content for a collapsible section within the Advanced tab.
12
11
  * @param section - The section definition.
13
- * @param validationErrors - Map of setting path to validation error message.
14
- * @param formValues - Map of setting path to submitted form value.
12
+ * @param envOverrides - The environment overrides the page render resolved once and shares with every section it draws.
15
13
  * @returns HTML string for the section.
16
14
  */
17
- export declare function generateCollapsibleSection(section: AdvancedSection, validationErrors?: Map<string, string>, formValues?: Map<string, string>): string;
15
+ export declare function generateCollapsibleSection(section: AdvancedSection, envOverrides: ReadonlyMap<string, string>): string;
18
16
  /**
19
17
  * Generates the content for the Advanced tab with collapsible sections.
20
- * @param validationErrors - Map of setting path to validation error message.
21
- * @param formValues - Map of setting path to submitted form value.
18
+ * @param envOverrides - The environment overrides the page render resolved once and shares with every section it draws.
22
19
  * @returns HTML string for the Advanced tab content.
23
20
  */
24
- export declare function generateAdvancedTabContent(validationErrors?: Map<string, string>, formValues?: Map<string, string>): string;
21
+ export declare function generateAdvancedTabContent(envOverrides: ReadonlyMap<string, string>): string;
25
22
  /**
26
23
  * Generates the config path display for settings.
27
24
  * @returns HTML string with config path.
28
25
  */
29
26
  export declare function generateSettingsFormFooter(): string;
30
- /**
31
- * Checks if there are any environment variable overrides for configuration settings.
32
- * @returns True if any settings are overridden by environment variables.
33
- */
34
- export declare function hasEnvOverrides(): boolean;
35
27
  /**
36
28
  * Installs all settings-related route handlers on the Express application.
37
29
  * @param app - The Express application.
38
30
  */
39
31
  export declare function setupSettingsRoutes(app: Express): void;
40
- //# sourceMappingURL=settings.d.ts.map
@@ -8,6 +8,7 @@ import { VIDEO_QUALITY_PRESETS } from "../../config/presets.js";
8
8
  import { getConfigFilePath } from "../../config/paths.js";
9
9
  import { getGpuCapabilities } from "../../browser/display.js";
10
10
  import { getProviderModuleInfo } from "../../browser/channelSelection.js";
11
+ import { systemClock } from "homebridge-plugin-utils";
11
12
  // Registry of list item providers for checkboxList settings. Each key matches a listItemsKey value in CONFIG_METADATA.
12
13
  const LIST_ITEM_PROVIDERS = {
13
14
  captureCodecs: () => {
@@ -191,13 +192,11 @@ function getFieldWidthClass(setting) {
191
192
  * @param currentValue - The current effective value (in storage units).
192
193
  * @param defaultValue - The default value (in storage units).
193
194
  * @param envOverride - The environment variable value if overridden, undefined otherwise.
194
- * @param validationError - Validation error message if any.
195
195
  * @returns HTML string for the form field.
196
196
  */
197
- function generateSettingField(setting, currentValue, defaultValue, envOverride, validationError) {
197
+ function generateSettingField(setting, currentValue, defaultValue, envOverride) {
198
198
  const isDisabled = (envOverride !== undefined) || (setting.disabledReason !== undefined);
199
199
  const inputId = setting.path.replaceAll(".", "-");
200
- const hasError = validationError !== undefined;
201
200
  const isModified = !isDisabled && !isEqualToDefault(currentValue, defaultValue);
202
201
  // Convert values for display.
203
202
  const displayValue = toDisplayValue(currentValue, setting);
@@ -244,7 +243,7 @@ function generateSettingField(setting, currentValue, defaultValue, envOverride,
244
243
  if (hasValidValues) {
245
244
  // Render as select dropdown.
246
245
  const selectAttrs = [
247
- "class=\"form-select " + getFieldWidthClass(setting) + (hasError ? " error" : "") + "\"",
246
+ "class=\"form-select " + getFieldWidthClass(setting) + "\"",
248
247
  "id=\"" + inputId + "\"",
249
248
  "name=\"" + setting.path + "\"",
250
249
  "data-default=\"" + escapeHtml(String(displayDefault ?? "")) + "\""
@@ -349,7 +348,7 @@ function generateSettingField(setting, currentValue, defaultValue, envOverride,
349
348
  step = "0.01";
350
349
  }
351
350
  const inputAttrs = [
352
- "class=\"form-input " + getFieldWidthClass(setting) + (hasError ? " error" : "") + "\"",
351
+ "class=\"form-input " + getFieldWidthClass(setting) + "\"",
353
352
  "type=\"" + inputType + "\"",
354
353
  "id=\"" + inputId + "\"",
355
354
  "name=\"" + setting.path + "\"",
@@ -429,10 +428,6 @@ function generateSettingField(setting, currentValue, defaultValue, envOverride,
429
428
  lines.push("<div class=\"form-env\">Overridden by environment variable: <code>" + escapeHtml(setting.envVar) + "=" +
430
429
  escapeHtml(envOverride) + "</code></div>");
431
430
  }
432
- // Add validation error if present.
433
- if (hasError) {
434
- lines.push("<div class=\"form-error\">" + escapeHtml(validationError) + "</div>");
435
- }
436
431
  lines.push("</div>");
437
432
  return lines.join("\n");
438
433
  }
@@ -576,16 +571,14 @@ function parseFormValue(setting, value) {
576
571
  }
577
572
  /**
578
573
  * Generates the content for the Settings tab with non-collapsible section headers.
579
- * @param validationErrors - Map of setting path to validation error message.
580
- * @param formValues - Map of setting path to submitted form value.
574
+ * @param envOverrides - The environment overrides the page render resolved once and shares with every section it draws.
581
575
  * @returns HTML string for the Settings tab content.
582
576
  */
583
- export function generateSettingsTabContent(validationErrors, formValues) {
577
+ export function generateSettingsTabContent(envOverrides) {
584
578
  const sections = getSettingsTabSections();
585
579
  const tabs = getUITabs();
586
580
  const settingsTab = tabs.find((t) => t.id === "settings");
587
581
  const defaults = getDefaults();
588
- const envOverrides = getEnvOverrides();
589
582
  const lines = [];
590
583
  // Panel header with description and reset button.
591
584
  lines.push("<div class=\"panel-header\">");
@@ -599,11 +592,10 @@ export function generateSettingsTabContent(validationErrors, formValues) {
599
592
  lines.push("<div class=\"settings-section-header\">" + escapeHtml(section.displayName) + "</div>");
600
593
  // Generate setting fields for this section.
601
594
  for (const setting of section.settings) {
602
- const currentValue = formValues?.get(setting.path) ?? getNestedValue(CONFIG, setting.path);
595
+ const currentValue = getNestedValue(CONFIG, setting.path);
603
596
  const defaultValue = getNestedValue(defaults, setting.path);
604
597
  const envOverride = envOverrides.get(setting.path);
605
- const validationError = validationErrors?.get(setting.path);
606
- lines.push(generateSettingField(setting, currentValue, defaultValue, envOverride, validationError));
598
+ lines.push(generateSettingField(setting, currentValue, defaultValue, envOverride));
607
599
  }
608
600
  lines.push("</div>");
609
601
  }
@@ -612,13 +604,11 @@ export function generateSettingsTabContent(validationErrors, formValues) {
612
604
  /**
613
605
  * Generates the content for a collapsible section within the Advanced tab.
614
606
  * @param section - The section definition.
615
- * @param validationErrors - Map of setting path to validation error message.
616
- * @param formValues - Map of setting path to submitted form value.
607
+ * @param envOverrides - The environment overrides the page render resolved once and shares with every section it draws.
617
608
  * @returns HTML string for the section.
618
609
  */
619
- export function generateCollapsibleSection(section, validationErrors, formValues) {
610
+ export function generateCollapsibleSection(section, envOverrides) {
620
611
  const defaults = getDefaults();
621
- const envOverrides = getEnvOverrides();
622
612
  const lines = [];
623
613
  const settingCount = section.settings.length;
624
614
  // Section container.
@@ -633,11 +623,10 @@ export function generateCollapsibleSection(section, validationErrors, formValues
633
623
  lines.push("<div class=\"section-content\">");
634
624
  // Generate setting fields for this section.
635
625
  for (const setting of section.settings) {
636
- const currentValue = formValues?.get(setting.path) ?? getNestedValue(CONFIG, setting.path);
626
+ const currentValue = getNestedValue(CONFIG, setting.path);
637
627
  const defaultValue = getNestedValue(defaults, setting.path);
638
628
  const envOverride = envOverrides.get(setting.path);
639
- const validationError = validationErrors?.get(setting.path);
640
- lines.push(generateSettingField(setting, currentValue, defaultValue, envOverride, validationError));
629
+ lines.push(generateSettingField(setting, currentValue, defaultValue, envOverride));
641
630
  }
642
631
  // Close section-content, then advanced-section, in reverse order of the opens above.
643
632
  lines.push("</div>");
@@ -646,11 +635,10 @@ export function generateCollapsibleSection(section, validationErrors, formValues
646
635
  }
647
636
  /**
648
637
  * Generates the content for the Advanced tab with collapsible sections.
649
- * @param validationErrors - Map of setting path to validation error message.
650
- * @param formValues - Map of setting path to submitted form value.
638
+ * @param envOverrides - The environment overrides the page render resolved once and shares with every section it draws.
651
639
  * @returns HTML string for the Advanced tab content.
652
640
  */
653
- export function generateAdvancedTabContent(validationErrors, formValues) {
641
+ export function generateAdvancedTabContent(envOverrides) {
654
642
  const sections = getAdvancedSections();
655
643
  const tabs = getUITabs();
656
644
  const advancedTab = tabs.find((t) => t.id === "advanced");
@@ -663,7 +651,7 @@ export function generateAdvancedTabContent(validationErrors, formValues) {
663
651
  lines.push("</div>");
664
652
  // Generate each collapsible section.
665
653
  for (const section of sections) {
666
- lines.push(generateCollapsibleSection(section, validationErrors, formValues));
654
+ lines.push(generateCollapsibleSection(section, envOverrides));
667
655
  }
668
656
  return lines.join("\n");
669
657
  }
@@ -674,13 +662,6 @@ export function generateAdvancedTabContent(validationErrors, formValues) {
674
662
  export function generateSettingsFormFooter() {
675
663
  return "<div class=\"config-path\">Configuration file: <code>" + escapeHtml(getConfigFilePath()) + "</code></div>";
676
664
  }
677
- /**
678
- * Checks if there are any environment variable overrides for configuration settings.
679
- * @returns True if any settings are overridden by environment variables.
680
- */
681
- export function hasEnvOverrides() {
682
- return getEnvOverrides().size > 0;
683
- }
684
665
  /**
685
666
  * Shallow-merges a source config into a target config. Top-level object values are merged one level deep (preserving sibling keys within each category).
686
667
  * Non-object values are assigned directly. This is the single merge strategy used by both the settings form save and config import endpoints.
@@ -884,7 +865,7 @@ export function setupSettingsRoutes(app) {
884
865
  sendSuccess(res, { message: "Server is restarting..." });
885
866
  // Close the browser first to avoid orphan Chrome processes. The delay gives the success response above time to
886
867
  // reach the client before the process exits.
887
- setTimeout(() => {
868
+ systemClock.schedule(() => {
888
869
  LOG.info("Exiting for forced service manager restart.");
889
870
  void import("../../browser/index.js").then(async (mod) => mod.closeBrowser()).then(() => { process.exit(0); }).catch(() => { process.exit(1); });
890
871
  }, 500);