prismcast 1.7.0 → 1.9.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 (208) hide show
  1. package/README.md +6 -6
  2. package/dist/app.js +24 -13
  3. package/dist/app.js.map +1 -1
  4. package/dist/browser/cdp.d.ts +4 -6
  5. package/dist/browser/cdp.js +13 -17
  6. package/dist/browser/cdp.js.map +1 -1
  7. package/dist/browser/index.js +3 -3
  8. package/dist/browser/index.js.map +1 -1
  9. package/dist/browser/login.js +11 -8
  10. package/dist/browser/login.js.map +1 -1
  11. package/dist/browser/precaching.d.ts +1 -1
  12. package/dist/browser/precaching.js +23 -23
  13. package/dist/browser/precaching.js.map +1 -1
  14. package/dist/browser/tuning/directv.js +4 -7
  15. package/dist/browser/tuning/directv.js.map +1 -1
  16. package/dist/browser/tuning/fox.js +1 -1
  17. package/dist/browser/tuning/fox.js.map +1 -1
  18. package/dist/browser/tuning/hbo.js +1 -1
  19. package/dist/browser/tuning/hbo.js.map +1 -1
  20. package/dist/browser/tuning/hulu.js +3 -3
  21. package/dist/browser/tuning/hulu.js.map +1 -1
  22. package/dist/browser/tuning/sling.js +2 -2
  23. package/dist/browser/tuning/sling.js.map +1 -1
  24. package/dist/channels/index.d.ts +2 -0
  25. package/dist/channels/index.js +438 -252
  26. package/dist/channels/index.js.map +1 -1
  27. package/dist/config/health.d.ts +3 -3
  28. package/dist/config/health.js +13 -18
  29. package/dist/config/health.js.map +1 -1
  30. package/dist/config/index.js +11 -2
  31. package/dist/config/index.js.map +1 -1
  32. package/dist/config/persistence.d.ts +59 -0
  33. package/dist/config/persistence.js +127 -0
  34. package/dist/config/persistence.js.map +1 -0
  35. package/dist/config/profiles.js +10 -10
  36. package/dist/config/profiles.js.map +1 -1
  37. package/dist/config/servicePacks.d.ts +46 -0
  38. package/dist/config/{providerPacks.js → servicePacks.js} +28 -31
  39. package/dist/config/servicePacks.js.map +1 -0
  40. package/dist/config/services.d.ts +202 -0
  41. package/dist/config/services.js +758 -0
  42. package/dist/config/services.js.map +1 -0
  43. package/dist/config/sites.js +61 -61
  44. package/dist/config/sites.js.map +1 -1
  45. package/dist/config/userChannels.d.ts +89 -27
  46. package/dist/config/userChannels.js +400 -184
  47. package/dist/config/userChannels.js.map +1 -1
  48. package/dist/config/userConfig.d.ts +13 -9
  49. package/dist/config/userConfig.js +78 -60
  50. package/dist/config/userConfig.js.map +1 -1
  51. package/dist/config/userProfiles.d.ts +31 -15
  52. package/dist/config/userProfiles.js +154 -123
  53. package/dist/config/userProfiles.js.map +1 -1
  54. package/dist/hdhr/channelMap.d.ts +1 -1
  55. package/dist/hdhr/channelMap.js +4 -7
  56. package/dist/hdhr/channelMap.js.map +1 -1
  57. package/dist/hdhr/discover.js +7 -15
  58. package/dist/hdhr/discover.js.map +1 -1
  59. package/dist/hdhr/index.js +6 -9
  60. package/dist/hdhr/index.js.map +1 -1
  61. package/dist/native/index.d.ts +2 -2
  62. package/dist/native/index.js +17 -27
  63. package/dist/native/index.js.map +1 -1
  64. package/dist/native/intercept.js +86 -89
  65. package/dist/native/intercept.js.map +1 -1
  66. package/dist/native/probe.js +2 -2
  67. package/dist/native/probe.js.map +1 -1
  68. package/dist/native/proxy.d.ts +2 -2
  69. package/dist/native/proxy.js +4 -4
  70. package/dist/native/proxy.js.map +1 -1
  71. package/dist/routes/assets.js +29 -51
  72. package/dist/routes/assets.js.map +1 -1
  73. package/dist/routes/auth.js +3 -3
  74. package/dist/routes/auth.js.map +1 -1
  75. package/dist/routes/channels.js +5 -11
  76. package/dist/routes/channels.js.map +1 -1
  77. package/dist/routes/components.d.ts +0 -8
  78. package/dist/routes/components.js +0 -19
  79. package/dist/routes/components.js.map +1 -1
  80. package/dist/routes/config/channels/index.d.ts +1 -1
  81. package/dist/routes/config/channels/index.js +1 -1
  82. package/dist/routes/config/channels/index.js.map +1 -1
  83. package/dist/routes/config/channels/routes.js +748 -420
  84. package/dist/routes/config/channels/routes.js.map +1 -1
  85. package/dist/routes/config/channels/table.d.ts +21 -6
  86. package/dist/routes/config/channels/table.js +456 -193
  87. package/dist/routes/config/channels/table.js.map +1 -1
  88. package/dist/routes/config/index.d.ts +2 -2
  89. package/dist/routes/config/index.js +3 -3
  90. package/dist/routes/config/index.js.map +1 -1
  91. package/dist/routes/config/{providers.js → services.js} +47 -42
  92. package/dist/routes/config/services.js.map +1 -0
  93. package/dist/routes/config/settings.js +88 -49
  94. package/dist/routes/config/settings.js.map +1 -1
  95. package/dist/routes/debug.js +5 -7
  96. package/dist/routes/debug.js.map +1 -1
  97. package/dist/routes/health.js +1 -1
  98. package/dist/routes/health.js.map +1 -1
  99. package/dist/routes/icons.d.ts +16 -0
  100. package/dist/routes/icons.js +44 -0
  101. package/dist/routes/icons.js.map +1 -0
  102. package/dist/routes/index.js +2 -2
  103. package/dist/routes/index.js.map +1 -1
  104. package/dist/routes/logs.js +4 -4
  105. package/dist/routes/logs.js.map +1 -1
  106. package/dist/routes/playlist.d.ts +6 -4
  107. package/dist/routes/playlist.js +98 -45
  108. package/dist/routes/playlist.js.map +1 -1
  109. package/dist/routes/root/content.js +94 -55
  110. package/dist/routes/root/content.js.map +1 -1
  111. package/dist/routes/root/scripts/channels.js +620 -478
  112. package/dist/routes/root/scripts/channels.js.map +1 -1
  113. package/dist/routes/root/scripts/config.js +884 -964
  114. package/dist/routes/root/scripts/config.js.map +1 -1
  115. package/dist/routes/root/scripts/shared.js +468 -188
  116. package/dist/routes/root/scripts/shared.js.map +1 -1
  117. package/dist/routes/root/scripts/status.js +252 -207
  118. package/dist/routes/root/scripts/status.js.map +1 -1
  119. package/dist/routes/root/styles.js +57 -8
  120. package/dist/routes/root/styles.js.map +1 -1
  121. package/dist/routes/services.d.ts +6 -0
  122. package/dist/routes/{providers.js → services.js} +43 -43
  123. package/dist/routes/services.js.map +1 -0
  124. package/dist/routes/ui.d.ts +1 -1
  125. package/dist/routes/ui.js +3 -1
  126. package/dist/routes/ui.js.map +1 -1
  127. package/dist/service/commands.js +8 -43
  128. package/dist/service/commands.js.map +1 -1
  129. package/dist/service/generators.d.ts +1 -1
  130. package/dist/service/generators.js +143 -41
  131. package/dist/service/generators.js.map +1 -1
  132. package/dist/streaming/codec.d.ts +20 -0
  133. package/dist/streaming/codec.js +68 -0
  134. package/dist/streaming/codec.js.map +1 -0
  135. package/dist/streaming/fmp4Segmenter.d.ts +2 -2
  136. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  137. package/dist/streaming/hls.d.ts +4 -4
  138. package/dist/streaming/hls.js +35 -29
  139. package/dist/streaming/hls.js.map +1 -1
  140. package/dist/streaming/hlsResume.js +3 -3
  141. package/dist/streaming/hlsResume.js.map +1 -1
  142. package/dist/streaming/monitor.d.ts +2 -2
  143. package/dist/streaming/monitor.js +19 -13
  144. package/dist/streaming/monitor.js.map +1 -1
  145. package/dist/streaming/preroll.d.ts +15 -14
  146. package/dist/streaming/preroll.js +32 -12
  147. package/dist/streaming/preroll.js.map +1 -1
  148. package/dist/streaming/registry.d.ts +2 -2
  149. package/dist/streaming/registry.js +4 -8
  150. package/dist/streaming/registry.js.map +1 -1
  151. package/dist/streaming/setup.d.ts +4 -4
  152. package/dist/streaming/setup.js +28 -34
  153. package/dist/streaming/setup.js.map +1 -1
  154. package/dist/streaming/showInfo.js +8 -10
  155. package/dist/streaming/showInfo.js.map +1 -1
  156. package/dist/streaming/statusEmitter.d.ts +4 -3
  157. package/dist/streaming/statusEmitter.js +3 -3
  158. package/dist/streaming/statusEmitter.js.map +1 -1
  159. package/dist/types/channels.d.ts +18 -11
  160. package/dist/types/config.d.ts +3 -2
  161. package/dist/types/index.d.ts +4 -3
  162. package/dist/types/index.js +1 -0
  163. package/dist/types/index.js.map +1 -1
  164. package/dist/types/profiles.d.ts +9 -9
  165. package/dist/types/selection.d.ts +1 -1
  166. package/dist/types/shared.d.ts +1 -1
  167. package/dist/types/streaming.d.ts +8 -16
  168. package/dist/types/streaming.js +5 -1
  169. package/dist/types/streaming.js.map +1 -1
  170. package/dist/upgrade/commands.js +1 -16
  171. package/dist/upgrade/commands.js.map +1 -1
  172. package/dist/utils/chromeFetch.js +1 -1
  173. package/dist/utils/cliOutput.d.ts +10 -0
  174. package/dist/utils/cliOutput.js +17 -0
  175. package/dist/utils/cliOutput.js.map +1 -0
  176. package/dist/utils/debugFilter.js +3 -3
  177. package/dist/utils/debugFilter.js.map +1 -1
  178. package/dist/utils/fileLogger.js +4 -3
  179. package/dist/utils/fileLogger.js.map +1 -1
  180. package/dist/utils/format.d.ts +21 -4
  181. package/dist/utils/format.js +45 -7
  182. package/dist/utils/format.js.map +1 -1
  183. package/dist/utils/index.d.ts +1 -0
  184. package/dist/utils/index.js +1 -0
  185. package/dist/utils/index.js.map +1 -1
  186. package/dist/utils/logger.js +17 -27
  187. package/dist/utils/logger.js.map +1 -1
  188. package/dist/utils/morganStream.js +2 -2
  189. package/dist/utils/morganStream.js.map +1 -1
  190. package/dist/utils/platform.js +3 -2
  191. package/dist/utils/platform.js.map +1 -1
  192. package/dist/utils/retry.js +2 -4
  193. package/dist/utils/retry.js.map +1 -1
  194. package/dist/utils/streamContext.d.ts +7 -0
  195. package/dist/utils/streamContext.js +10 -1
  196. package/dist/utils/streamContext.js.map +1 -1
  197. package/dist/utils/version.js +4 -4
  198. package/dist/utils/version.js.map +1 -1
  199. package/package.json +5 -7
  200. package/dist/config/providerPacks.d.ts +0 -46
  201. package/dist/config/providerPacks.js.map +0 -1
  202. package/dist/config/providers.d.ts +0 -175
  203. package/dist/config/providers.js +0 -678
  204. package/dist/config/providers.js.map +0 -1
  205. package/dist/routes/config/providers.js.map +0 -1
  206. package/dist/routes/providers.d.ts +0 -6
  207. package/dist/routes/providers.js.map +0 -1
  208. /package/dist/routes/config/{providers.d.ts → services.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/service/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/service/commands.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACpI,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACpH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,IAAI,MAAM,WAAW,CAAC;AAoB7B;;GAEG;AAEH;;GAEG;AACH,SAAS,qBAAqB;IAE5B,MAAM,WAAW,GAAG,gBAAgB,EAAE,CAAC;IAEvC,IAAG,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;QAEvB,OAAO;IACT,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,UAAU,CAAC,0EAA0E,CAAC,CAAC;IAEvF,IAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QAExB,UAAU,CAAC,kBAAkB,GAAG,WAAW,CAAC,QAAQ,GAAG,cAAc,CAAC,CAAC;IACzE,CAAC;IAED,IAAG,WAAW,CAAC,UAAU,EAAE,CAAC;QAE1B,UAAU,CAAC,kBAAkB,GAAG,WAAW,CAAC,UAAU,GAAG,cAAc,CAAC,CAAC;IAC3E,CAAC;IAED,UAAU,CAAC,6DAA6D,CAAC,CAAC;AAC5E,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,kBAAkB,CAAC,IAAY;IAE5C,IAAI,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAErH,IAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAEhB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAqB,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QAEP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,aAAa;IAE1B,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAE/B,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACtD,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,WAAW,CAAC,CAAC;IACnB,KAAK,CAAC,gCAAgC,GAAG,YAAY,GAAG,oBAAoB,CAAC,CAAC;IAC9E,KAAK,CAAC,+BAA+B,GAAG,YAAY,GAAG,UAAU,CAAC,CAAC;IACnE,KAAK,CAAC,kCAAkC,GAAG,YAAY,GAAG,UAAU,CAAC,CAAC;IACtE,KAAK,CAAC,iCAAiC,GAAG,YAAY,GAAG,UAAU,CAAC,CAAC;IACrE,KAAK,CAAC,oCAAoC,GAAG,YAAY,GAAG,UAAU,CAAC,CAAC;IACxE,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC5E,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,UAAU,CAAC,CAAC;IAClB,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACzE,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,yEAAyE,CAAC,CAAC;IACjF,KAAK,CAAC,6BAA6B,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC;AACtF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAc;IAEhD,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,IAAG,CAAC,SAAS,EAAE,CAAC;QAEd,UAAU,CAAC,iEAAiE,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QAErG,OAAO,CAAC,CAAC;IACX,CAAC;IAED,8BAA8B;IAC9B,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAElD,IAAG,WAAW,IAAI,CAAC,KAAK,EAAE,CAAC;QAEzB,UAAU,CAAC,SAAS,GAAG,YAAY,GAAG,gCAAgC,CAAC,CAAC;QACxE,UAAU,CAAC,uEAAuE,CAAC,CAAC;QAEpF,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;IACpD,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,gEAAgE;IAChE,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAC;IAE5C,oCAAoC;IACpC,IAAI,CAAC;QAEH,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAEhD,MAAM,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,UAAU,CAAC,mCAAmC,CAAC,CAAC;QAEhD,IAAG,KAAK,YAAY,KAAK,EAAE,CAAC;YAE1B,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,gBAAgB,GAAG,kBAAkB,EAAE,CAAC,CAAC;IAC/C,KAAK,CAAC,mBAAmB,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;IACtD,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,wCAAwC;IACxC,QAAO,SAAS,CAAC,cAAc,EAAE,CAAC;QAEhC,KAAK,SAAS,CAAC,CAAC,CAAC;YAEf,KAAK,CAAC,mEAAmE,CAAC,CAAC;YAC3E,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC1B,KAAK,CAAC,8BAA8B,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;YACjF,KAAK,CAAC,8BAA8B,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;YACtF,KAAK,CAAC,4CAA4C,CAAC,CAAC;YACpD,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACrD,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAEtD,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YAEf,KAAK,CAAC,mEAAmE,CAAC,CAAC;YAC3E,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC1B,KAAK,CAAC,2BAA2B,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;YAC9E,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAC5D,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACjD,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAClD,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAEnD,MAAM;QACR,CAAC;QAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;YAEzB,KAAK,CAAC,mEAAmE,CAAC,CAAC;YAC3E,KAAK,CAAC,EAAE,CAAC,CAAC;YACV,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC1B,KAAK,CAAC,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC;YAC3E,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACjD,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAClD,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAEnD,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IAEnC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,IAAG,CAAC,SAAS,EAAE,CAAC;QAEd,UAAU,CAAC,+DAA+D,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QAEnG,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sBAAsB;IACtB,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAElD,IAAG,CAAC,WAAW,EAAE,CAAC;QAEhB,UAAU,CAAC,SAAS,GAAG,YAAY,GAAG,4BAA4B,CAAC,CAAC;QAEpE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,eAAe,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;IAEtD,IAAI,CAAC;QAEH,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,UAAU,CAAC,qCAAqC,CAAC,CAAC;QAElD,IAAG,KAAK,YAAY,KAAK,EAAE,CAAC;YAE1B,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,wCAAwC,GAAG,UAAU,EAAE,GAAG,uBAAuB,CAAC,CAAC;IACzF,KAAK,CAAC,iCAAiC,GAAG,UAAU,EAAE,GAAG,sBAAsB,CAAC,CAAC;IAEjF,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,cAAc,CAAC,SAA2B,EAAE,MAAc;IAEvE,iKAAiK;IACjK,0JAA0J;IAC1J,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;IACxC,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAC;IAChD,MAAM,iBAAiB,GAAG,sBAAsB,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,CAAC,aAAa,EAAE,QAAQ,KAAK,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,KAAK,iBAAiB,CAAC,CAAC;IAErH,8EAA8E;IAC9E,IAAG,CAAC,UAAU,EAAE,CAAC;QAEf,IAAG,aAAa,EAAE,CAAC;YAEjB,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAEhD,IAAG,aAAa,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;gBAE9C,KAAK,CAAC,kBAAkB,GAAG,aAAa,CAAC,QAAQ,GAAG,MAAM,GAAG,eAAe,CAAC,CAAC;YAChF,CAAC;YAED,IAAG,aAAa,CAAC,UAAU,KAAK,iBAAiB,EAAE,CAAC;gBAElD,KAAK,CAAC,kBAAkB,GAAG,aAAa,CAAC,UAAU,GAAG,MAAM,GAAG,iBAAiB,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;QAED,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAEtC,IAAI,CAAC;YAEH,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YAEhD,MAAM,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,UAAU,CAAC,2CAA2C,CAAC,CAAC;YAExD,IAAG,KAAK,YAAY,KAAK,EAAE,CAAC;gBAE1B,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC;YAED,OAAO,CAAC,CAAC;QACX,CAAC;QAED,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACpD,CAAC;SAAM,CAAC;QAEN,yDAAyD;QACzD,KAAK,CAAC,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;QAElD,IAAI,CAAC;YAEH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,UAAU,CAAC,iCAAiC,CAAC,CAAC;YAE9C,IAAG,KAAK,YAAY,KAAK,EAAE,CAAC;gBAE1B,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC;YAED,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,GAAG,MAAM,GAAG,gBAAgB,CAAC,CAAC;IAE9C,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAE/B,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,IAAG,CAAC,SAAS,EAAE,CAAC;QAEd,UAAU,CAAC,+DAA+D,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QAEnG,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sBAAsB;IACtB,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAElD,IAAG,CAAC,WAAW,EAAE,CAAC;QAEhB,UAAU,CAAC,SAAS,GAAG,YAAY,GAAG,4BAA4B,CAAC,CAAC;QACpE,UAAU,CAAC,wCAAwC,CAAC,CAAC;QAErD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,4BAA4B;IAC5B,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC;IAE9C,IAAG,SAAS,EAAE,CAAC;QAEb,KAAK,CAAC,YAAY,GAAG,8BAA8B,CAAC,CAAC;QAErD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAE9B,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,IAAG,CAAC,SAAS,EAAE,CAAC;QAEd,UAAU,CAAC,+DAA+D,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QAEnG,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sBAAsB;IACtB,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAElD,IAAG,CAAC,WAAW,EAAE,CAAC;QAEhB,UAAU,CAAC,SAAS,GAAG,YAAY,GAAG,4BAA4B,CAAC,CAAC;QAEpE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,+JAA+J;IAC/J,+JAA+J;IAC/J,wHAAwH;IACxH,KAAK,CAAC,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;IAElD,IAAI,CAAC;QAEH,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,6JAA6J;QAC7J,4GAA4G;QAC5G,IAAG,KAAK,YAAY,KAAK,EAAE,CAAC;YAE1B,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAEvC,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IAEjC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,IAAG,CAAC,SAAS,EAAE,CAAC;QAEd,UAAU,CAAC,+DAA+D,GAAG,WAAW,EAAE,GAAG,IAAI,CAAC,CAAC;QAEnG,OAAO,CAAC,CAAC;IACX,CAAC;IAED,sBAAsB;IACtB,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAElD,IAAG,CAAC,WAAW,EAAE,CAAC;QAEhB,UAAU,CAAC,SAAS,GAAG,YAAY,GAAG,4BAA4B,CAAC,CAAC;QACpE,UAAU,CAAC,wCAAwC,CAAC,CAAC;QAErD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,6JAA6J;IAC7J,6CAA6C;IAC7C,KAAK,CAAC,WAAW,GAAG,YAAY,GAAG,aAAa,CAAC,CAAC;IAElD,IAAI,CAAC;QAEH,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QAEP,mGAAmG;IACrG,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,OAAO,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;AAChD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAEhC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IAExC,IAAG,CAAC,SAAS,EAAE,CAAC;QAEd,KAAK,CAAC,YAAY,GAAG,iBAAiB,CAAC,CAAC;QACxC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACtB,KAAK,CAAC,mBAAmB,GAAG,WAAW,EAAE,CAAC,CAAC;QAC3C,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACxC,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAEjE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAEpE,KAAK,CAAC,YAAY,GAAG,iBAAiB,CAAC,CAAC;IACxC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACtB,KAAK,CAAC,mBAAmB,GAAG,WAAW,EAAE,CAAC,CAAC;IAC3C,KAAK,CAAC,mBAAmB,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;IACtD,KAAK,CAAC,mBAAmB,GAAG,kBAAkB,EAAE,CAAC,CAAC;IAClD,KAAK,CAAC,mBAAmB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,KAAK,CAAC,mBAAmB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAExD,gKAAgK;IAChK,yDAAyD;IACzD,IAAG,WAAW,EAAE,CAAC;QAEf,qBAAqB,EAAE,CAAC;IAC1B,CAAC;IAED,+DAA+D;IAC/D,IAAG,SAAS,EAAE,CAAC;QAEb,MAAM,IAAI,GAAG,MAAM,aAAa,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAEnD,IAAG,WAAW,KAAK,IAAI,EAAE,CAAC;YAExB,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACpD,CAAC;aAAM,IAAG,WAAW,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAElC,KAAK,CAAC,qBAAqB,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YAEN,KAAK,CAAC,mBAAmB,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAEzF,KAAI,MAAM,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBAExC,sEAAsE;gBACtE,IAAI,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC;gBAE1B,IAAG,CAAC,IAAI,EAAE,CAAC;oBAET,IAAI,CAAC;wBAEH,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBAC5D,CAAC;oBAAC,MAAM,CAAC;wBAEP,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACvC,CAAC;gBACH,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBAE9D,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAG,CAAC,WAAW,EAAE,CAAC;QAEhB,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAAc;IAEvD,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAuB,CAAC;IAE9C,iCAAiC;IACjC,IAAG,OAAO,KAAK,SAAS,EAAE,CAAC;QAEzB,iBAAiB,EAAE,CAAC;QAEpB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,QAAO,OAAO,EAAE,CAAC;QAEf,KAAK,SAAS,CAAC,CAAC,CAAC;YAEf,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE9D,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QAED,KAAK,WAAW,CAAC,CAAC,CAAC;YAEjB,OAAO,eAAe,EAAE,CAAC;QAC3B,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YAEb,OAAO,WAAW,EAAE,CAAC;QACvB,CAAC;QAED,KAAK,MAAM,CAAC,CAAC,CAAC;YAEZ,OAAO,UAAU,EAAE,CAAC;QACtB,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YAEf,OAAO,aAAa,EAAE,CAAC;QACzB,CAAC;QAED,KAAK,QAAQ,CAAC,CAAC,CAAC;YAEd,OAAO,YAAY,EAAE,CAAC;QACxB,CAAC;QAED,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI,CAAC,CAAC,CAAC;YAEV,iBAAiB,EAAE,CAAC;YAEpB,OAAO,CAAC,CAAC;QACX,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YAER,UAAU,CAAC,kCAAkC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;YAChE,UAAU,CAAC,EAAE,CAAC,CAAC;YACf,iBAAiB,EAAE,CAAC;YAEpB,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -38,7 +38,7 @@ export interface StalePathResult {
38
38
  }
39
39
  /**
40
40
  * Reads the existing service file and extracts the node binary and PrismCast entry point paths. Each platform has its own format: launchd plist XML, systemd unit
41
- * ExecStart line, or Windows marker file with explicit path entries.
41
+ * ExecStart line, or Windows batch startup script with rem-prefixed path comments.
42
42
  * @returns The extracted paths, or null if the file doesn't exist or can't be parsed.
43
43
  */
44
44
  export declare function getServicePaths(): Nullable<ServicePaths>;
@@ -1,6 +1,7 @@
1
1
  import { SERVICE_ID, SERVICE_NAME, getLogsDirectory, getNodeExecutablePath, getPlatform, getPrismCastEntryPoint, getPrismCastWorkingDirectory, getServiceFileDirectory, getServiceFilePath } from "../utils/platform.js";
2
- import { execSync } from "node:child_process";
2
+ import { execFileSync, execSync } from "node:child_process";
3
3
  import fs from "node:fs";
4
+ import path from "node:path";
4
5
  const { promises: fsPromises } = fs;
5
6
  /* Generates a launchd property list (plist) file for macOS. The plist is installed to ~/Library/LaunchAgents/ and configured with:
6
7
  * - RunAtLoad: Start when user logs in
@@ -13,7 +14,7 @@ const { promises: fsPromises } = fs;
13
14
  * @returns The escaped string safe for XML.
14
15
  */
15
16
  function escapeXml(str) {
16
- return str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;");
17
+ return str.replaceAll("&", "&amp;").replaceAll("<", "&lt;").replaceAll(">", "&gt;").replaceAll("\"", "&quot;").replaceAll("'", "&apos;");
17
18
  }
18
19
  /**
19
20
  * Creates a launchd service generator for macOS.
@@ -153,9 +154,7 @@ function createLaunchdGenerator() {
153
154
  // Ignore errors if service wasn't loaded.
154
155
  }
155
156
  // Remove the plist file.
156
- if (fs.existsSync(installPath)) {
157
- await fsPromises.unlink(installPath);
158
- }
157
+ await fsPromises.rm(installPath, { force: true });
159
158
  }
160
159
  };
161
160
  }
@@ -260,9 +259,7 @@ function createSystemdGenerator() {
260
259
  // Ignore if not enabled.
261
260
  }
262
261
  // Remove the unit file.
263
- if (fs.existsSync(installPath)) {
264
- await fsPromises.unlink(installPath);
265
- }
262
+ await fsPromises.rm(installPath, { force: true });
266
263
  // Reload systemd.
267
264
  try {
268
265
  execSync("systemctl --user daemon-reload", { stdio: "pipe" });
@@ -273,32 +270,116 @@ function createSystemdGenerator() {
273
270
  }
274
271
  };
275
272
  }
276
- /* Uses Windows Task Scheduler via schtasks.exe to create a task that runs at user logon. Unlike launchd and systemd, Task Scheduler doesn't have built-in process
277
- * supervision, so we configure the task to restart on failure. A marker file is used to track installation state.
273
+ /* Uses Windows Task Scheduler to run PrismCast at user logon. Three files in the data directory define the service: a batch startup script (.cmd) with environment
274
+ * setup and the node invocation, a VBScript wrapper (.vbs) that launches it with a hidden console window, and a Task Scheduler XML definition (.xml) imported via
275
+ * schtasks /Create /XML. The XML format avoids the shell quoting issues inherent in schtasks /TR and enables advanced task settings (restart on failure, unlimited
276
+ * execution time, battery policy) that command-line flags cannot express. All schtasks calls use execFileSync to bypass cmd.exe shell interpretation entirely.
278
277
  */
278
+ /**
279
+ * Escapes a string for use in a Windows batch (.cmd) file. Literal percent characters must be doubled because batch interprets % as variable expansion even inside
280
+ * quoted strings.
281
+ * @param value - The string to escape.
282
+ * @returns The escaped string safe for batch files.
283
+ */
284
+ function escapeBatchValue(value) {
285
+ return value.replaceAll("%", "%%");
286
+ }
279
287
  /**
280
288
  * Creates a Windows Task Scheduler generator.
281
289
  * @returns A ServiceGenerator for Windows Task Scheduler.
282
290
  */
283
291
  function createWindowsSchedulerGenerator() {
284
292
  const taskName = SERVICE_NAME;
293
+ /**
294
+ * Returns the path to the VBScript wrapper file that launches PrismCast with a hidden console window.
295
+ * @returns The absolute path to the .vbs file in the data directory.
296
+ */
297
+ function getVbsPath() {
298
+ return path.join(getServiceFileDirectory(), "prismcast-service.vbs");
299
+ }
300
+ /**
301
+ * Returns the path to the Task Scheduler XML definition file.
302
+ * @returns The absolute path to the .xml file in the data directory.
303
+ */
304
+ function getXmlPath() {
305
+ return path.join(getServiceFileDirectory(), "prismcast-task.xml");
306
+ }
307
+ /**
308
+ * Generates the Task Scheduler XML definition. The XML format provides structured task configuration without shell quoting and supports advanced settings
309
+ * (restart on failure, no execution time limit, battery policy) that schtasks command-line flags cannot express. Element ordering follows the Task Scheduler
310
+ * XML schema.
311
+ * @param vbsFilePath - The absolute path to the VBScript wrapper that launches PrismCast.
312
+ * @returns The XML content for the task definition.
313
+ */
314
+ function generateTaskXml(vbsFilePath) {
315
+ return [
316
+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>",
317
+ "<Task version=\"1.2\" xmlns=\"http://schemas.microsoft.com/windows/2004/02/mit/task\">",
318
+ " <RegistrationInfo>",
319
+ " <Description>" + escapeXml(SERVICE_NAME + " Streaming Server") + "</Description>",
320
+ " </RegistrationInfo>",
321
+ " <Triggers>",
322
+ " <LogonTrigger>",
323
+ " <Enabled>true</Enabled>",
324
+ " </LogonTrigger>",
325
+ " </Triggers>",
326
+ " <Principals>",
327
+ " <Principal id=\"Author\">",
328
+ " <LogonType>InteractiveToken</LogonType>",
329
+ " <RunLevel>HighestAvailable</RunLevel>",
330
+ " </Principal>",
331
+ " </Principals>",
332
+ " <Settings>",
333
+ " <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>",
334
+ " <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>",
335
+ " <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>",
336
+ " <Enabled>true</Enabled>",
337
+ " <ExecutionTimeLimit>PT0S</ExecutionTimeLimit>",
338
+ " <RestartOnFailure>",
339
+ " <Interval>PT5S</Interval>",
340
+ " <Count>3</Count>",
341
+ " </RestartOnFailure>",
342
+ " </Settings>",
343
+ " <Actions Context=\"Author\">",
344
+ " <Exec>",
345
+ " <Command>wscript.exe</Command>",
346
+ " <Arguments>" + escapeXml("\"" + vbsFilePath + "\"") + "</Arguments>",
347
+ " </Exec>",
348
+ " </Actions>",
349
+ "</Task>",
350
+ ""
351
+ ].join("\n");
352
+ }
285
353
  return {
286
354
  generate(options) {
287
355
  const nodePath = getNodeExecutablePath();
288
356
  const entryPoint = getPrismCastEntryPoint();
289
357
  const workingDir = getPrismCastWorkingDirectory();
290
- // Build environment variables for the command. We'll set them in the task action using cmd /c set.
358
+ // Build environment variables. Always include PRISMCAST_SERVICE=1 for service detection.
291
359
  const envVars = { PRISMCAST_SERVICE: "1", ...options.envVars };
292
- // Generate environment variable SET commands.
293
- const envSets = Object.entries(envVars).sort(([a], [b]) => a.localeCompare(b)).map(([key, value]) => "set \"" + key + "=" + value + "\"").join(" && ");
294
- // Return the command to run (used by install).
295
- return "cmd /c \"cd /d \"" + workingDir + "\" && " + envSets + " && \"" + nodePath + "\" \"" + entryPoint + "\"\"";
360
+ // Generate set commands for environment variables, sorted alphabetically. Values are escaped for batch interpretation where literal % must be doubled.
361
+ const envLines = Object.entries(envVars)
362
+ .sort(([a], [b]) => a.localeCompare(b))
363
+ .map(([key, value]) => "set \"" + key + "=" + escapeBatchValue(value) + "\"");
364
+ // Generate the batch file content. Each line uses exactly one level of quoting because the batch file is a standalone script, not an inline argument embedded
365
+ // in another command. The rem lines provide machine-readable path metadata for stale path detection, parsed by getServicePaths(). CRLF line endings follow
366
+ // Windows batch file convention.
367
+ return [
368
+ "@echo off",
369
+ "rem node:" + nodePath,
370
+ "rem entry:" + entryPoint,
371
+ "cd /d \"" + escapeBatchValue(workingDir) + "\"",
372
+ ...envLines,
373
+ "\"" + escapeBatchValue(nodePath) + "\" \"" + escapeBatchValue(entryPoint) + "\""
374
+ ].join("\r\n") + "\r\n";
296
375
  },
297
376
  getInstallPath() {
298
377
  return getServiceFilePath();
299
378
  },
300
379
  async install(content) {
301
- const installPath = this.getInstallPath();
380
+ const cmdPath = getServiceFilePath();
381
+ const vbsPath = getVbsPath();
382
+ const xmlPath = getXmlPath();
302
383
  const installDir = getServiceFileDirectory();
303
384
  const logsDir = getLogsDirectory();
304
385
  // Ensure directories exist.
@@ -306,22 +387,28 @@ function createWindowsSchedulerGenerator() {
306
387
  await fsPromises.mkdir(logsDir, { recursive: true });
307
388
  // Delete existing task if it exists.
308
389
  try {
309
- execSync("schtasks /Delete /TN \"" + taskName + "\" /F", { stdio: "pipe" });
390
+ execFileSync("schtasks", ["/Delete", "/TN", taskName, "/F"], { stdio: "pipe" });
310
391
  }
311
392
  catch {
312
393
  // Ignore if task doesn't exist.
313
394
  }
314
- // Create the scheduled task. The /SC ONLOGON runs at user logon. /RL HIGHEST gives elevated privileges if needed.
315
- const createCmd = "schtasks /Create /TN \"" + taskName + "\" /TR \"" + content + "\" /SC ONLOGON /RL HIGHEST /F";
316
- execSync(createCmd, { stdio: "pipe" });
317
- // Write marker file to indicate installation. We include the node binary and entry point paths so that getServicePaths() can extract them for stale path
318
- // detection. The task command itself is stored in the Windows Task Scheduler registry, which isn't easily inspectable.
319
- const nodePath = getNodeExecutablePath();
320
- const entryPoint = getPrismCastEntryPoint();
321
- await fsPromises.writeFile(installPath, "node:" + nodePath + "\nentry:" + entryPoint + "\n", "utf8");
395
+ // Write the batch startup script.
396
+ await fsPromises.writeFile(cmdPath, content, "utf8");
397
+ // Write the VBScript wrapper that launches the batch file with a hidden console window. The WshShell.Run second parameter (0) specifies the vbHide window
398
+ // style, and the third parameter (False) means don't wait for the script to finish.
399
+ const vbsContent = "Set WshShell = CreateObject(\"WScript.Shell\")\r\nWshShell.Run \"\"\"" + cmdPath + "\"\"\", 0, False\r\n";
400
+ await fsPromises.writeFile(vbsPath, vbsContent, "utf8");
401
+ // Write the Task Scheduler XML definition and import it. Using XML import instead of schtasks /TR avoids all shell quoting issues and enables advanced task
402
+ // settings that command-line flags cannot express.
403
+ const xmlContent = generateTaskXml(vbsPath);
404
+ await fsPromises.writeFile(xmlPath, xmlContent, "utf8");
405
+ // Import the task definition. execFileSync passes arguments directly to the Windows API, bypassing cmd.exe shell interpretation entirely.
406
+ execFileSync("schtasks", ["/Create", "/XML", xmlPath, "/TN", taskName, "/F"], { stdio: "pipe" });
407
+ // Clean up legacy marker file from previous versions that used a separate metadata file for path tracking.
408
+ await fsPromises.rm(path.join(installDir, "service-installed.marker"), { force: true });
322
409
  // Start the task immediately.
323
410
  try {
324
- execSync("schtasks /Run /TN \"" + taskName + "\"", { stdio: "pipe" });
411
+ execFileSync("schtasks", ["/Run", "/TN", taskName], { stdio: "pipe" });
325
412
  }
326
413
  catch {
327
414
  // Ignore if start fails.
@@ -330,7 +417,7 @@ function createWindowsSchedulerGenerator() {
330
417
  // eslint-disable-next-line @typescript-eslint/require-await
331
418
  async isInstalled() {
332
419
  try {
333
- execSync("schtasks /Query /TN \"" + taskName + "\"", { stdio: "pipe" });
420
+ execFileSync("schtasks", ["/Query", "/TN", taskName], { stdio: "pipe" });
334
421
  return true;
335
422
  }
336
423
  catch {
@@ -340,7 +427,7 @@ function createWindowsSchedulerGenerator() {
340
427
  // eslint-disable-next-line @typescript-eslint/require-await
341
428
  async isRunning() {
342
429
  try {
343
- const result = execSync("schtasks /Query /TN \"" + taskName + "\" /FO CSV /NH", { encoding: "utf8", stdio: "pipe" });
430
+ const result = execFileSync("schtasks", ["/Query", "/TN", taskName, "/FO", "CSV", "/NH"], { encoding: "utf8", stdio: "pipe" });
344
431
  return result.includes("Running");
345
432
  }
346
433
  catch {
@@ -351,31 +438,45 @@ function createWindowsSchedulerGenerator() {
351
438
  serviceManager: "windows-scheduler",
352
439
  // eslint-disable-next-line @typescript-eslint/require-await
353
440
  async start() {
354
- execSync("schtasks /Run /TN \"" + taskName + "\"", { stdio: "pipe" });
441
+ // Re-enable the task (it may have been disabled by stop() to prevent RestartOnFailure from restarting the process) and run it.
442
+ try {
443
+ execFileSync("schtasks", ["/Change", "/TN", taskName, "/Enable"], { stdio: "pipe" });
444
+ }
445
+ catch {
446
+ // Ignore if already enabled or task doesn't exist.
447
+ }
448
+ execFileSync("schtasks", ["/Run", "/TN", taskName], { stdio: "pipe" });
355
449
  },
356
450
  // eslint-disable-next-line @typescript-eslint/require-await
357
451
  async stop() {
358
- execSync("schtasks /End /TN \"" + taskName + "\"", { stdio: "pipe" });
452
+ // Disable the task first to prevent RestartOnFailure from automatically restarting the process after we terminate it.
453
+ try {
454
+ execFileSync("schtasks", ["/Change", "/TN", taskName, "/Disable"], { stdio: "pipe" });
455
+ }
456
+ catch {
457
+ // Ignore if task doesn't exist.
458
+ }
459
+ execFileSync("schtasks", ["/End", "/TN", taskName], { stdio: "pipe" });
359
460
  },
360
461
  async uninstall() {
361
- const installPath = this.getInstallPath();
462
+ const cmdPath = getServiceFilePath();
463
+ const vbsPath = getVbsPath();
464
+ const xmlPath = getXmlPath();
362
465
  // Delete the scheduled task.
363
466
  try {
364
- execSync("schtasks /Delete /TN \"" + taskName + "\" /F", { stdio: "pipe" });
467
+ execFileSync("schtasks", ["/Delete", "/TN", taskName, "/F"], { stdio: "pipe" });
365
468
  }
366
469
  catch {
367
470
  // Ignore if task doesn't exist.
368
471
  }
369
- // Remove marker file.
370
- if (fs.existsSync(installPath)) {
371
- await fsPromises.unlink(installPath);
372
- }
472
+ // Remove all service files and legacy marker file from previous versions.
473
+ await Promise.all([cmdPath, vbsPath, xmlPath, path.join(getServiceFileDirectory(), "service-installed.marker")].map(async (filePath) => fsPromises.rm(filePath, { force: true })));
373
474
  }
374
475
  };
375
476
  }
376
477
  /**
377
478
  * Reads the existing service file and extracts the node binary and PrismCast entry point paths. Each platform has its own format: launchd plist XML, systemd unit
378
- * ExecStart line, or Windows marker file with explicit path entries.
479
+ * ExecStart line, or Windows batch startup script with rem-prefixed path comments.
379
480
  * @returns The extracted paths, or null if the file doesn't exist or can't be parsed.
380
481
  */
381
482
  export function getServicePaths() {
@@ -426,14 +527,15 @@ export function getServicePaths() {
426
527
  }
427
528
  return { entryPoint: parts[1], nodePath: parts[0] };
428
529
  }
429
- // Windows: paths are stored in the marker file as "node:<path>" and "entry:<path>" lines.
530
+ // Windows: paths are stored as "rem node:<path>" and "rem entry:<path>" comments in the batch startup script (.cmd file). The .trim() handles CRLF line
531
+ // endings in batch files where \r would otherwise be captured by the regex.
430
532
  case "windows": {
431
- const nodeMatch = /^node:(.+)$/m.exec(content);
432
- const entryMatch = /^entry:(.+)$/m.exec(content);
533
+ const nodeMatch = /^rem node:(.+)$/m.exec(content);
534
+ const entryMatch = /^rem entry:(.+)$/m.exec(content);
433
535
  if (!nodeMatch || !entryMatch) {
434
536
  return null;
435
537
  }
436
- return { entryPoint: entryMatch[1], nodePath: nodeMatch[1] };
538
+ return { entryPoint: entryMatch[1].trim(), nodePath: nodeMatch[1].trim() };
437
539
  }
438
540
  default: {
439
541
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"generators.js","sourceRoot":"","sources":["../../src/service/generators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generators.js","sourceRoot":"","sources":["../../src/service/generators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { CaptureCodec } from "../types/index.js";
2
+ export type { CaptureCodec } from "../types/index.js";
3
+ /**
4
+ * Returns the effective capture codec based on the user's allowlist and GPU hardware capabilities. Walks codecs in priority order (highest quality first), returning
5
+ * the first that's both allowed by the user AND supported by the GPU. Falls back to H.264 as the universal baseline.
6
+ *
7
+ * This is the single source of truth for all capture codec decisions in the codebase. Do not check GPU codec capabilities directly - call this function instead.
8
+ * @returns The codec to use for capture.
9
+ */
10
+ export declare function getEffectiveCaptureCodec(): CaptureCodec;
11
+ /**
12
+ * Returns the Matroska MIME type string for the effective capture codec. Used by the capture pipeline to configure Chrome's MediaRecorder.
13
+ * @returns The MIME type string for the current capture codec.
14
+ */
15
+ export declare function getCaptureMimeType(): string;
16
+ /**
17
+ * Returns whether the effective capture codec is hardware-accelerated on the current GPU. Used for status display and stream registry metadata.
18
+ * @returns True if the effective codec has hardware encoding support.
19
+ */
20
+ export declare function isCaptureHardwareAccelerated(): boolean;
@@ -0,0 +1,68 @@
1
+ /* Copyright(C) 2024-2026, HJD (https://github.com/hjdhjd). All rights reserved.
2
+ *
3
+ * codec.ts: Capture codec selection for PrismCast.
4
+ */
5
+ import { CONFIG } from "../config/index.js";
6
+ import { getGpuCapabilities } from "../browser/display.js";
7
+ /* This module is the single source of truth for capture codec behavior. Every component that needs to know which video codec to use for capture - MIME type
8
+ * selection, preroll generation, status display - calls getEffectiveCaptureCodec() rather than checking GPU capabilities directly. The decision encapsulates three
9
+ * inputs: the user's codec allowlist (CONFIG.streaming.captureCodecs), the GPU's hardware encoding capabilities, and the priority order (prefer higher-quality
10
+ * codecs when available). Codec identity (RECOGNIZED_CODECS and CaptureCodec) lives in types/streaming.ts; this module provides the runtime logic.
11
+ */
12
+ // Matroska MIME types keyed by capture codec. Matroska is used over WebM because it supports a broader range of codecs (including HEVC and AV1), allowing codec
13
+ // upgrades without changing the container format. FFmpeg's demuxer handles both Matroska and WebM identically. All variants use Opus audio which FFmpeg transcodes
14
+ // to AAC.
15
+ const CAPTURE_MIME_TYPES = {
16
+ h264: "video/x-matroska;codecs=h264,opus",
17
+ hevc: "video/x-matroska;codecs=hvc1.1.6.L93.B0,opus"
18
+ };
19
+ // Codec priority order. Higher-quality codecs are tried first. Each entry pairs a codec with its GPU capability check. H.264 is the implicit fallback and is not
20
+ // listed here since it always works (Chrome's MediaRecorder baseline).
21
+ const CODEC_PRIORITY = [
22
+ { capability: "hevcHardwareEncoding", codec: "hevc" }
23
+ // Future: { capability: "av1HardwareEncoding", codec: "av1" }
24
+ ];
25
+ /**
26
+ * Returns the effective capture codec based on the user's allowlist and GPU hardware capabilities. Walks codecs in priority order (highest quality first), returning
27
+ * the first that's both allowed by the user AND supported by the GPU. Falls back to H.264 as the universal baseline.
28
+ *
29
+ * This is the single source of truth for all capture codec decisions in the codebase. Do not check GPU codec capabilities directly - call this function instead.
30
+ * @returns The codec to use for capture.
31
+ */
32
+ export function getEffectiveCaptureCodec() {
33
+ const allowedCodecs = CONFIG.streaming.captureCodecs;
34
+ const gpuCaps = getGpuCapabilities();
35
+ for (const { capability, codec } of CODEC_PRIORITY) {
36
+ if (allowedCodecs.includes(codec) && gpuCaps?.[capability]) {
37
+ return codec;
38
+ }
39
+ }
40
+ return "h264";
41
+ }
42
+ /**
43
+ * Returns the Matroska MIME type string for the effective capture codec. Used by the capture pipeline to configure Chrome's MediaRecorder.
44
+ * @returns The MIME type string for the current capture codec.
45
+ */
46
+ export function getCaptureMimeType() {
47
+ return CAPTURE_MIME_TYPES[getEffectiveCaptureCodec()];
48
+ }
49
+ /**
50
+ * Returns whether the effective capture codec is hardware-accelerated on the current GPU. Used for status display and stream registry metadata.
51
+ * @returns True if the effective codec has hardware encoding support.
52
+ */
53
+ export function isCaptureHardwareAccelerated() {
54
+ const codec = getEffectiveCaptureCodec();
55
+ const gpuCaps = getGpuCapabilities();
56
+ if (codec === "h264") {
57
+ return gpuCaps?.h264HardwareEncoding === true;
58
+ }
59
+ // All non-H.264 codecs in CODEC_PRIORITY are only selected when their hardware capability is true, so this is guaranteed. The explicit check keeps the function
60
+ // self-contained rather than relying on getEffectiveCaptureCodec's selection logic.
61
+ for (const { capability, codec: priorityCodec } of CODEC_PRIORITY) {
62
+ if (priorityCodec === codec) {
63
+ return gpuCaps?.[capability] === true;
64
+ }
65
+ }
66
+ return false;
67
+ }
68
+ //# sourceMappingURL=codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../src/streaming/codec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAK3D;;;;GAIG;AAEH,gKAAgK;AAChK,mKAAmK;AACnK,UAAU;AACV,MAAM,kBAAkB,GAAiC;IAEvD,IAAI,EAAE,mCAAmC;IACzC,IAAI,EAAE,8CAA8C;CACrD,CAAC;AAEF,iKAAiK;AACjK,uEAAuE;AACvE,MAAM,cAAc,GAA0F;IAE5G,EAAE,UAAU,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,EAAE;IACrD,8DAA8D;CAC/D,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB;IAEtC,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC;IACrD,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IAErC,KAAI,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,cAAc,EAAE,CAAC;QAElD,IAAG,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YAE1D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO,kBAAkB,CAAC,wBAAwB,EAAE,CAAC,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B;IAE1C,MAAM,KAAK,GAAG,wBAAwB,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IAErC,IAAG,KAAK,KAAK,MAAM,EAAE,CAAC;QAEpB,OAAO,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAChD,CAAC;IAED,gKAAgK;IAChK,oFAAoF;IACpF,KAAI,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,cAAc,EAAE,CAAC;QAEjE,IAAG,aAAa,KAAK,KAAK,EAAE,CAAC;YAE3B,OAAO,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;QACxC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type PrerollCodec } from "./preroll.js";
1
+ import type { CaptureCodec } from "./codec.js";
2
2
  import type { Nullable } from "../types/index.js";
3
3
  import type { Readable } from "node:stream";
4
4
  /**
@@ -10,7 +10,7 @@ export interface FMP4SegmenterOptions {
10
10
  onStop: () => void;
11
11
  pendingDiscontinuity?: boolean;
12
12
  prerollBaseUrl?: Nullable<string>;
13
- prerollCodec?: PrerollCodec;
13
+ prerollCodec?: CaptureCodec;
14
14
  prerollSegmentCount?: number;
15
15
  previousInitSegment?: Nullable<Buffer>;
16
16
  priorSessionStats?: SessionStats;