@remotion/renderer 4.0.0-alpha.4 → 4.0.0-alpha10

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 (594) hide show
  1. package/LICENSE.md +8 -8
  2. package/README.md +9 -0
  3. package/client.d.ts +1 -0
  4. package/client.js +1 -0
  5. package/dist/assets/calculate-asset-positions.d.ts +0 -0
  6. package/dist/assets/calculate-asset-positions.js +1 -0
  7. package/dist/assets/calculate-atempo.d.ts +0 -0
  8. package/dist/assets/calculate-atempo.js +0 -0
  9. package/dist/assets/convert-assets-to-file-urls.d.ts +0 -0
  10. package/dist/assets/convert-assets-to-file-urls.js +0 -0
  11. package/dist/assets/download-and-map-assets-to-file.d.ts +2 -1
  12. package/dist/assets/download-and-map-assets-to-file.js +64 -15
  13. package/dist/assets/download-file.d.ts +9 -6
  14. package/dist/assets/download-file.js +67 -9
  15. package/dist/assets/download-map.d.ts +5 -26
  16. package/dist/assets/download-map.js +15 -16
  17. package/dist/assets/ffmpeg-volume-expression.d.ts +2 -1
  18. package/dist/assets/ffmpeg-volume-expression.js +5 -3
  19. package/dist/assets/flatten-volume-array.d.ts +0 -0
  20. package/dist/assets/flatten-volume-array.js +0 -0
  21. package/dist/assets/get-audio-channels.d.ts +1 -2
  22. package/dist/assets/get-audio-channels.js +5 -8
  23. package/dist/assets/get-video-stream-duration.d.ts +7 -1
  24. package/dist/assets/get-video-stream-duration.js +50 -14
  25. package/dist/assets/read-file.d.ts +1 -1
  26. package/dist/assets/read-file.js +4 -6
  27. package/dist/assets/round-volume-to-avoid-stack-overflow.d.ts +0 -0
  28. package/dist/assets/round-volume-to-avoid-stack-overflow.js +0 -0
  29. package/dist/assets/sanitize-filename.d.ts +0 -0
  30. package/dist/assets/sanitize-filename.js +0 -0
  31. package/dist/assets/sanitize-filepath.d.ts +0 -0
  32. package/dist/assets/sanitize-filepath.js +2 -2
  33. package/dist/assets/truncate-utf8-bytes.d.ts +0 -0
  34. package/dist/assets/truncate-utf8-bytes.js +0 -0
  35. package/dist/assets/types.d.ts +1 -0
  36. package/dist/assets/types.js +0 -0
  37. package/dist/audio-codec.d.ts +28 -0
  38. package/dist/audio-codec.js +83 -0
  39. package/dist/browser/Browser.d.ts +8 -6
  40. package/dist/browser/Browser.js +48 -45
  41. package/dist/browser/BrowserConnector.d.ts +0 -0
  42. package/dist/browser/BrowserConnector.js +0 -0
  43. package/dist/browser/BrowserFetcher.d.ts +15 -63
  44. package/dist/browser/BrowserFetcher.js +151 -237
  45. package/dist/browser/BrowserPage.d.ts +12 -6
  46. package/dist/browser/BrowserPage.js +8 -11
  47. package/dist/browser/BrowserRunner.d.ts +2 -5
  48. package/dist/browser/BrowserRunner.js +42 -92
  49. package/dist/browser/Connection.d.ts +0 -0
  50. package/dist/browser/Connection.js +1 -1
  51. package/dist/browser/ConsoleMessage.d.ts +0 -0
  52. package/dist/browser/ConsoleMessage.js +0 -0
  53. package/dist/browser/DOMWorld.d.ts +5 -4
  54. package/dist/browser/DOMWorld.js +8 -1
  55. package/dist/browser/Errors.d.ts +0 -0
  56. package/dist/browser/Errors.js +0 -0
  57. package/dist/browser/EvalTypes.d.ts +0 -0
  58. package/dist/browser/EvalTypes.js +0 -0
  59. package/dist/browser/EventEmitter.d.ts +0 -0
  60. package/dist/browser/EventEmitter.js +0 -0
  61. package/dist/browser/ExecutionContext.d.ts +0 -0
  62. package/dist/browser/ExecutionContext.js +0 -0
  63. package/dist/browser/FrameManager.d.ts +0 -2
  64. package/dist/browser/FrameManager.js +2 -6
  65. package/dist/browser/HTTPRequest.d.ts +0 -0
  66. package/dist/browser/HTTPRequest.js +0 -0
  67. package/dist/browser/HTTPResponse.d.ts +0 -0
  68. package/dist/browser/HTTPResponse.js +0 -0
  69. package/dist/browser/JSHandle.d.ts +0 -0
  70. package/dist/browser/JSHandle.js +0 -0
  71. package/dist/browser/LaunchOptions.d.ts +1 -5
  72. package/dist/browser/LaunchOptions.js +0 -0
  73. package/dist/browser/Launcher.d.ts +9 -3
  74. package/dist/browser/Launcher.js +17 -387
  75. package/dist/browser/LifecycleWatcher.d.ts +0 -0
  76. package/dist/browser/LifecycleWatcher.js +0 -0
  77. package/dist/browser/NetworkEventManager.d.ts +0 -0
  78. package/dist/browser/NetworkEventManager.js +0 -0
  79. package/dist/browser/NetworkManager.d.ts +0 -0
  80. package/dist/browser/NetworkManager.js +0 -0
  81. package/dist/browser/NodeWebSocketTransport.d.ts +0 -0
  82. package/dist/browser/NodeWebSocketTransport.js +5 -5
  83. package/dist/browser/Product.d.ts +0 -0
  84. package/dist/browser/Product.js +0 -0
  85. package/dist/browser/PuppeteerNode.d.ts +2 -5
  86. package/dist/browser/PuppeteerNode.js +2 -14
  87. package/dist/browser/PuppeteerViewport.d.ts +0 -0
  88. package/dist/browser/PuppeteerViewport.js +0 -0
  89. package/dist/browser/ScreenshotOptions.d.ts +0 -14
  90. package/dist/browser/ScreenshotOptions.js +0 -1
  91. package/dist/browser/Target.d.ts +2 -2
  92. package/dist/browser/Target.js +0 -0
  93. package/dist/browser/TaskQueue.d.ts +0 -0
  94. package/dist/browser/TaskQueue.js +0 -0
  95. package/dist/browser/TimeoutSettings.d.ts +0 -0
  96. package/dist/browser/TimeoutSettings.js +0 -0
  97. package/dist/browser/assert.d.ts +0 -0
  98. package/dist/browser/assert.js +0 -0
  99. package/dist/browser/create-browser-fetcher.d.ts +0 -0
  100. package/dist/browser/create-browser-fetcher.js +34 -90
  101. package/dist/browser/devtools-commands.d.ts +5 -1
  102. package/dist/browser/devtools-commands.js +0 -0
  103. package/dist/browser/devtools-types.d.ts +82 -0
  104. package/dist/browser/devtools-types.js +0 -0
  105. package/dist/browser/get-download-destination.d.ts +0 -0
  106. package/dist/browser/get-download-destination.js +8 -8
  107. package/dist/browser/is-target-closed-err.d.ts +1 -0
  108. package/dist/browser/is-target-closed-err.js +9 -0
  109. package/dist/browser/mitt/index.d.ts +0 -0
  110. package/dist/browser/mitt/index.js +0 -0
  111. package/dist/browser/node.d.ts +0 -0
  112. package/dist/browser/node.js +0 -0
  113. package/dist/browser/revisions.d.ts +0 -1
  114. package/dist/browser/revisions.js +0 -1
  115. package/dist/browser/util.d.ts +2 -2
  116. package/dist/browser/util.js +0 -0
  117. package/dist/browser-executable.d.ts +0 -0
  118. package/dist/browser-executable.js +0 -0
  119. package/dist/browser-log.d.ts +0 -0
  120. package/dist/browser-log.js +0 -0
  121. package/dist/browser.d.ts +0 -0
  122. package/dist/browser.js +0 -0
  123. package/dist/calculate-ffmpeg-filters.d.ts +2 -1
  124. package/dist/calculate-ffmpeg-filters.js +1 -0
  125. package/dist/calculate-sar-dar-pixels.d.ts +0 -0
  126. package/dist/calculate-sar-dar-pixels.js +0 -0
  127. package/dist/call-ffmpeg.d.ts +14 -0
  128. package/dist/call-ffmpeg.js +42 -0
  129. package/dist/can-use-parallel-encoding.d.ts +0 -0
  130. package/dist/can-use-parallel-encoding.js +0 -0
  131. package/dist/chalk/index.d.ts +54 -0
  132. package/dist/chalk/index.js +135 -0
  133. package/dist/chalk/is-color-supported.d.ts +1 -0
  134. package/dist/chalk/is-color-supported.js +37 -0
  135. package/dist/check-apple-silicon.d.ts +1 -0
  136. package/dist/check-apple-silicon.js +12 -0
  137. package/dist/chunk.d.ts +0 -0
  138. package/dist/chunk.js +0 -0
  139. package/dist/client.d.ts +204 -0
  140. package/dist/client.js +49 -0
  141. package/dist/codec-supports-media.d.ts +2 -0
  142. package/dist/codec-supports-media.js +23 -1
  143. package/dist/codec.d.ts +0 -0
  144. package/dist/codec.js +0 -0
  145. package/dist/combine-videos.d.ts +6 -2
  146. package/dist/combine-videos.js +18 -18
  147. package/dist/compositor/compose.d.ts +17 -0
  148. package/dist/compositor/compose.js +71 -0
  149. package/dist/compositor/compositor.d.ts +11 -0
  150. package/dist/compositor/compositor.js +207 -0
  151. package/dist/compositor/get-executable-path.d.ts +1 -0
  152. package/dist/compositor/get-executable-path.js +57 -0
  153. package/dist/compositor/make-nonce.d.ts +1 -0
  154. package/dist/compositor/make-nonce.js +8 -0
  155. package/dist/compositor/payloads.d.ts +68 -0
  156. package/dist/compositor/payloads.js +2 -0
  157. package/dist/compress-assets.d.ts +0 -0
  158. package/dist/compress-assets.js +0 -0
  159. package/dist/convert-number-of-gif-loops-to-ffmpeg.d.ts +0 -0
  160. package/dist/convert-number-of-gif-loops-to-ffmpeg.js +0 -0
  161. package/dist/convert-to-positive-frame-index.d.ts +4 -0
  162. package/dist/convert-to-positive-frame-index.js +8 -0
  163. package/dist/create-ffmpeg-complex-filter.d.ts +6 -5
  164. package/dist/create-ffmpeg-complex-filter.js +6 -4
  165. package/dist/create-ffmpeg-merge-filter.d.ts +5 -1
  166. package/dist/create-ffmpeg-merge-filter.js +21 -13
  167. package/dist/create-silent-audio.d.ts +1 -3
  168. package/dist/create-silent-audio.js +3 -6
  169. package/dist/crf.d.ts +5 -1
  170. package/dist/crf.js +41 -8
  171. package/dist/cycle-browser-tabs.d.ts +2 -5
  172. package/dist/cycle-browser-tabs.js +5 -5
  173. package/dist/delay-render-embedded-stack.d.ts +0 -0
  174. package/dist/delay-render-embedded-stack.js +0 -0
  175. package/dist/delete-directory.d.ts +1 -1
  176. package/dist/delete-directory.js +43 -17
  177. package/dist/determine-resize-params.d.ts +1 -0
  178. package/dist/determine-resize-params.js +10 -0
  179. package/dist/determine-vcodec-ffmpeg-flags.d.ts +2 -0
  180. package/dist/determine-vcodec-ffmpeg-flags.js +13 -0
  181. package/dist/does-have-m2-bug.d.ts +3 -0
  182. package/dist/does-have-m2-bug.js +12 -0
  183. package/dist/ensure-ffmpeg.d.ts +18 -0
  184. package/dist/ensure-ffmpeg.js +58 -0
  185. package/dist/ensure-frames-in-order.d.ts +0 -0
  186. package/dist/ensure-frames-in-order.js +0 -0
  187. package/dist/ensure-output-directory.d.ts +0 -0
  188. package/dist/ensure-output-directory.js +5 -5
  189. package/dist/ensure-presentation-timestamp.d.ts +14 -1
  190. package/dist/ensure-presentation-timestamp.js +36 -17
  191. package/dist/error-handling/handle-javascript-exception.d.ts +0 -0
  192. package/dist/error-handling/handle-javascript-exception.js +10 -0
  193. package/dist/error-handling/symbolicate-error.d.ts +0 -0
  194. package/dist/error-handling/symbolicate-error.js +2 -1
  195. package/dist/error-handling/symbolicateable-error.d.ts +0 -0
  196. package/dist/error-handling/symbolicateable-error.js +0 -0
  197. package/dist/extract-frame-from-video.d.ts +1 -0
  198. package/dist/extract-frame-from-video.js +47 -110
  199. package/dist/ffmpeg-executable.d.ts +0 -0
  200. package/dist/ffmpeg-executable.js +0 -0
  201. package/dist/ffmpeg-filter-file.d.ts +6 -1
  202. package/dist/ffmpeg-filter-file.js +40 -8
  203. package/dist/ffmpeg-flags.d.ts +20 -2
  204. package/dist/ffmpeg-flags.js +205 -9
  205. package/dist/ffmpeg-override.d.ts +4 -0
  206. package/dist/ffmpeg-override.js +2 -0
  207. package/dist/file-extensions.d.ts +14 -0
  208. package/dist/file-extensions.js +76 -0
  209. package/dist/find-closest-package-json.d.ts +2 -0
  210. package/dist/find-closest-package-json.js +31 -0
  211. package/dist/frame-range.d.ts +0 -0
  212. package/dist/frame-range.js +0 -0
  213. package/dist/frame-to-ffmpeg-timestamp.d.ts +0 -0
  214. package/dist/frame-to-ffmpeg-timestamp.js +0 -0
  215. package/dist/get-browser-instance.d.ts +2 -2
  216. package/dist/get-browser-instance.js +1 -1
  217. package/dist/get-can-extract-frames-fast.d.ts +14 -0
  218. package/dist/get-can-extract-frames-fast.js +71 -0
  219. package/dist/get-codec-name.d.ts +0 -0
  220. package/dist/get-codec-name.js +0 -0
  221. package/dist/get-compositions.d.ts +14 -8
  222. package/dist/get-compositions.js +25 -7
  223. package/dist/get-concurrency.d.ts +1 -1
  224. package/dist/get-concurrency.js +11 -4
  225. package/dist/get-duration-from-frame-range.d.ts +0 -0
  226. package/dist/get-duration-from-frame-range.js +0 -0
  227. package/dist/get-extension-from-codec.d.ts +5 -1
  228. package/dist/get-extension-from-codec.js +56 -32
  229. package/dist/get-extension-of-filename.d.ts +0 -0
  230. package/dist/get-extension-of-filename.js +5 -1
  231. package/dist/get-frame-of-video-slow.d.ts +17 -0
  232. package/dist/get-frame-of-video-slow.js +72 -0
  233. package/dist/get-frame-padded-index.d.ts +2 -1
  234. package/dist/get-frame-padded-index.js +3 -2
  235. package/dist/get-frame-to-render.d.ts +0 -0
  236. package/dist/get-frame-to-render.js +1 -1
  237. package/dist/get-local-browser-executable.d.ts +0 -0
  238. package/dist/get-local-browser-executable.js +7 -17
  239. package/dist/get-port.d.ts +4 -1
  240. package/dist/get-port.js +8 -8
  241. package/dist/get-prores-profile-name.d.ts +0 -0
  242. package/dist/get-prores-profile-name.js +0 -0
  243. package/dist/get-video-info.d.ts +6 -1
  244. package/dist/get-video-info.js +19 -9
  245. package/dist/get-video-threads-flag.d.ts +0 -0
  246. package/dist/get-video-threads-flag.js +3 -3
  247. package/dist/guess-extension-for-media.d.ts +3 -1
  248. package/dist/guess-extension-for-media.js +5 -8
  249. package/dist/image-format.d.ts +12 -6
  250. package/dist/image-format.js +19 -13
  251. package/dist/index.d.ts +284 -51
  252. package/dist/index.js +50 -36
  253. package/dist/is-audio-codec.d.ts +0 -0
  254. package/dist/is-audio-codec.js +0 -0
  255. package/dist/is-beyond-last-frame.d.ts +0 -0
  256. package/dist/is-beyond-last-frame.js +0 -0
  257. package/dist/is-serve-url.d.ts +0 -0
  258. package/dist/is-serve-url.js +0 -0
  259. package/dist/jpeg-quality.d.ts +1 -0
  260. package/dist/jpeg-quality.js +21 -0
  261. package/dist/last-frame-from-video-cache.d.ts +1 -0
  262. package/dist/last-frame-from-video-cache.js +0 -0
  263. package/dist/legacy-webpack-config.d.ts +0 -0
  264. package/dist/legacy-webpack-config.js +0 -0
  265. package/dist/locks.d.ts +7 -0
  266. package/dist/locks.js +44 -0
  267. package/dist/log-level.d.ts +0 -0
  268. package/dist/log-level.js +0 -0
  269. package/dist/logger.d.ts +22 -0
  270. package/dist/logger.js +61 -0
  271. package/dist/make-cancel-signal.d.ts +11 -0
  272. package/dist/make-cancel-signal.js +24 -1
  273. package/dist/merge-audio-track.d.ts +3 -3
  274. package/dist/merge-audio-track.js +40 -34
  275. package/dist/mime-db.d.ts +0 -0
  276. package/dist/mime-db.js +0 -0
  277. package/dist/mime-types.d.ts +1 -0
  278. package/dist/mime-types.js +8 -3
  279. package/dist/normalize-serve-url.d.ts +0 -0
  280. package/dist/normalize-serve-url.js +0 -0
  281. package/dist/offthread-video-server.d.ts +12 -8
  282. package/dist/offthread-video-server.js +67 -47
  283. package/dist/open-browser.d.ts +8 -2
  284. package/dist/open-browser.js +16 -18
  285. package/dist/options/audio-bitrate.d.ts +2 -0
  286. package/dist/options/audio-bitrate.js +11 -0
  287. package/dist/options/crf.d.ts +2 -0
  288. package/dist/options/crf.js +11 -0
  289. package/dist/options/enforce-audio.d.ts +2 -0
  290. package/dist/options/enforce-audio.js +11 -0
  291. package/dist/options/jpeg-quality.d.ts +2 -0
  292. package/dist/options/jpeg-quality.js +11 -0
  293. package/dist/options/mute.d.ts +2 -0
  294. package/dist/options/mute.js +11 -0
  295. package/dist/options/option.d.ts +8 -0
  296. package/dist/options/option.js +2 -0
  297. package/dist/options/scale.d.ts +2 -0
  298. package/dist/options/scale.js +11 -0
  299. package/dist/options/video-bitrate.d.ts +2 -0
  300. package/dist/options/video-bitrate.js +11 -0
  301. package/dist/options/video-codec.d.ts +2 -0
  302. package/dist/options/video-codec.js +11 -0
  303. package/dist/overwrite.d.ts +0 -0
  304. package/dist/overwrite.js +0 -0
  305. package/dist/p-limit.d.ts +0 -0
  306. package/dist/p-limit.js +0 -0
  307. package/dist/parse-browser-error-stack.d.ts +0 -0
  308. package/dist/parse-browser-error-stack.js +0 -0
  309. package/dist/parse-ffmpeg-progress.d.ts +0 -0
  310. package/dist/parse-ffmpeg-progress.js +0 -0
  311. package/dist/perf.d.ts +1 -1
  312. package/dist/perf.js +9 -7
  313. package/dist/pixel-format.d.ts +1 -1
  314. package/dist/pixel-format.js +3 -0
  315. package/dist/pool.d.ts +0 -0
  316. package/dist/pool.js +0 -0
  317. package/dist/prepare-server.d.ts +8 -5
  318. package/dist/prepare-server.js +22 -13
  319. package/dist/preprocess-audio-track.d.ts +6 -4
  320. package/dist/preprocess-audio-track.js +7 -8
  321. package/dist/prespawn-ffmpeg.d.ts +10 -9
  322. package/dist/prespawn-ffmpeg.js +51 -28
  323. package/dist/prestitcher-memory-usage.d.ts +0 -4
  324. package/dist/prestitcher-memory-usage.js +4 -5
  325. package/dist/prores-profile.d.ts +5 -3
  326. package/dist/prores-profile.js +8 -8
  327. package/dist/provide-screenshot.d.ts +8 -4
  328. package/dist/provide-screenshot.js +5 -2
  329. package/dist/puppeteer-evaluate.d.ts +0 -0
  330. package/dist/puppeteer-evaluate.js +20 -12
  331. package/dist/puppeteer-screenshot.d.ts +12 -2
  332. package/dist/puppeteer-screenshot.js +19 -45
  333. package/dist/quality.d.ts +0 -0
  334. package/dist/quality.js +0 -0
  335. package/dist/redirect-status-codes.d.ts +1 -0
  336. package/dist/redirect-status-codes.js +6 -0
  337. package/dist/render-frames.d.ts +26 -22
  338. package/dist/render-frames.js +204 -109
  339. package/dist/render-media.d.ts +52 -19
  340. package/dist/render-media.js +162 -55
  341. package/dist/render-still.d.ts +26 -14
  342. package/dist/render-still.js +97 -46
  343. package/dist/replace-browser.d.ts +6 -0
  344. package/dist/replace-browser.js +47 -0
  345. package/dist/resolve-asset-src.d.ts +0 -0
  346. package/dist/resolve-asset-src.js +2 -2
  347. package/dist/sample-rate.d.ts +0 -0
  348. package/dist/sample-rate.js +0 -0
  349. package/dist/screenshot-dom-element.d.ts +8 -4
  350. package/dist/screenshot-dom-element.js +15 -4
  351. package/dist/screenshot-task.d.ts +12 -2
  352. package/dist/screenshot-task.js +44 -14
  353. package/dist/seek-to-frame.d.ts +1 -0
  354. package/dist/seek-to-frame.js +49 -3
  355. package/dist/select-composition.d.ts +33 -0
  356. package/dist/select-composition.js +119 -0
  357. package/dist/serve-handler/index.d.ts +1 -1
  358. package/dist/serve-handler/index.js +21 -19
  359. package/dist/serve-handler/is-path-inside.d.ts +0 -0
  360. package/dist/serve-handler/is-path-inside.js +3 -3
  361. package/dist/serve-handler/range-parser.d.ts +0 -0
  362. package/dist/serve-handler/range-parser.js +0 -0
  363. package/dist/serve-static.d.ts +6 -3
  364. package/dist/serve-static.js +86 -45
  365. package/dist/set-props-and-env.d.ts +7 -3
  366. package/dist/set-props-and-env.js +50 -16
  367. package/dist/stitch-frames-to-video.d.ts +16 -11
  368. package/dist/stitch-frames-to-video.js +165 -79
  369. package/dist/stringify-ffmpeg-filter.d.ts +10 -2
  370. package/dist/stringify-ffmpeg-filter.js +37 -34
  371. package/dist/symbolicate-stacktrace.d.ts +0 -0
  372. package/dist/symbolicate-stacktrace.js +0 -0
  373. package/dist/take-frame-and-compose.d.ts +22 -0
  374. package/dist/take-frame-and-compose.js +103 -0
  375. package/dist/tmp-dir.d.ts +0 -0
  376. package/dist/tmp-dir.js +7 -8
  377. package/dist/truthy.d.ts +0 -0
  378. package/dist/truthy.js +0 -0
  379. package/dist/try-to-extract-frame-of-video-fast.d.ts +12 -0
  380. package/dist/try-to-extract-frame-of-video-fast.js +55 -0
  381. package/dist/types.d.ts +0 -0
  382. package/dist/types.js +0 -0
  383. package/dist/validate-concurrency.d.ts +2 -0
  384. package/dist/validate-concurrency.js +21 -10
  385. package/dist/validate-even-dimensions-with-codec.d.ts +0 -0
  386. package/dist/validate-even-dimensions-with-codec.js +0 -0
  387. package/dist/validate-every-nth-frame.d.ts +2 -1
  388. package/dist/validate-every-nth-frame.js +8 -1
  389. package/dist/validate-ffmpeg-override.d.ts +2 -0
  390. package/dist/validate-ffmpeg-override.js +12 -0
  391. package/dist/validate-ffmpeg.d.ts +7 -2
  392. package/dist/validate-ffmpeg.js +48 -43
  393. package/dist/validate-number-of-gif-loops.d.ts +2 -0
  394. package/dist/validate-number-of-gif-loops.js +24 -0
  395. package/dist/validate-opengl-renderer.d.ts +0 -0
  396. package/dist/validate-opengl-renderer.js +0 -0
  397. package/dist/validate-output-filename.d.ts +7 -2
  398. package/dist/validate-output-filename.js +20 -51
  399. package/dist/validate-puppeteer-timeout.d.ts +0 -0
  400. package/dist/validate-puppeteer-timeout.js +2 -1
  401. package/dist/validate-scale.d.ts +0 -0
  402. package/dist/validate-scale.js +0 -0
  403. package/dist/validate-videobitrate.d.ts +1 -0
  404. package/dist/validate-videobitrate.js +20 -0
  405. package/dist/wait-for-symbolication-error-to-be-done.d.ts +0 -0
  406. package/dist/wait-for-symbolication-error-to-be-done.js +5 -31
  407. package/dist/warn-about-ffmpeg-version.d.ts +5 -0
  408. package/dist/warn-about-ffmpeg-version.js +37 -0
  409. package/dist/ws/ws-types.d.ts +0 -0
  410. package/dist/ws/ws-types.js +2 -1
  411. package/install-toolchain.mjs +36 -0
  412. package/package.json +70 -60
  413. package/types/ws/index.d.ts +5 -5
  414. package/.prettierrc.js +0 -14
  415. package/dist/add-silent-audio-if-necessary.d.ts +0 -8
  416. package/dist/add-silent-audio-if-necessary.d.ts.map +0 -1
  417. package/dist/add-silent-audio-if-necessary.js +0 -51
  418. package/dist/add-silent-audio-if-necessary.js.map +0 -1
  419. package/dist/assets/asset-is-used-at-time.d.ts +0 -3
  420. package/dist/assets/asset-is-used-at-time.d.ts.map +0 -1
  421. package/dist/assets/asset-is-used-at-time.js +0 -8
  422. package/dist/assets/asset-is-used-at-time.js.map +0 -1
  423. package/dist/assets/calculate-asset-positions.d.ts.map +0 -1
  424. package/dist/assets/calculate-asset-positions.js.map +0 -1
  425. package/dist/assets/calculate-atempo.d.ts.map +0 -1
  426. package/dist/assets/calculate-atempo.js.map +0 -1
  427. package/dist/assets/convert-assets-to-file-urls.d.ts.map +0 -1
  428. package/dist/assets/convert-assets-to-file-urls.js.map +0 -1
  429. package/dist/assets/download-and-map-assets-to-file.d.ts.map +0 -1
  430. package/dist/assets/download-and-map-assets-to-file.js.map +0 -1
  431. package/dist/assets/download-file.d.ts.map +0 -1
  432. package/dist/assets/download-file.js.map +0 -1
  433. package/dist/assets/ffmpeg-volume-expression.d.ts.map +0 -1
  434. package/dist/assets/ffmpeg-volume-expression.js.map +0 -1
  435. package/dist/assets/flatten-volume-array.d.ts.map +0 -1
  436. package/dist/assets/flatten-volume-array.js.map +0 -1
  437. package/dist/assets/get-asset-audio-details.d.ts +0 -5
  438. package/dist/assets/get-asset-audio-details.d.ts.map +0 -1
  439. package/dist/assets/get-asset-audio-details.js +0 -21
  440. package/dist/assets/get-asset-audio-details.js.map +0 -1
  441. package/dist/assets/get-audio-channels.d.ts.map +0 -1
  442. package/dist/assets/get-audio-channels.js.map +0 -1
  443. package/dist/assets/get-simulatenous-assets.d.ts +0 -3
  444. package/dist/assets/get-simulatenous-assets.d.ts.map +0 -1
  445. package/dist/assets/get-simulatenous-assets.js +0 -14
  446. package/dist/assets/get-simulatenous-assets.js.map +0 -1
  447. package/dist/assets/read-file.d.ts.map +0 -1
  448. package/dist/assets/read-file.js.map +0 -1
  449. package/dist/assets/round-volume-to-avoid-stack-overflow.d.ts.map +0 -1
  450. package/dist/assets/round-volume-to-avoid-stack-overflow.js.map +0 -1
  451. package/dist/assets/sanitize-filename.d.ts.map +0 -1
  452. package/dist/assets/sanitize-filename.js.map +0 -1
  453. package/dist/assets/sanitize-filepath.d.ts.map +0 -1
  454. package/dist/assets/sanitize-filepath.js.map +0 -1
  455. package/dist/assets/split-assets-into-segments.d.ts +0 -6
  456. package/dist/assets/split-assets-into-segments.d.ts.map +0 -1
  457. package/dist/assets/split-assets-into-segments.js +0 -89
  458. package/dist/assets/split-assets-into-segments.js.map +0 -1
  459. package/dist/assets/truncate-utf8-bytes.d.ts.map +0 -1
  460. package/dist/assets/truncate-utf8-bytes.js.map +0 -1
  461. package/dist/assets/types.d.ts.map +0 -1
  462. package/dist/assets/types.js.map +0 -1
  463. package/dist/assets-to-ffmpeg-inputs.d.ts +0 -7
  464. package/dist/assets-to-ffmpeg-inputs.d.ts.map +0 -1
  465. package/dist/assets-to-ffmpeg-inputs.js +0 -15
  466. package/dist/assets-to-ffmpeg-inputs.js.map +0 -1
  467. package/dist/browser-log.d.ts.map +0 -1
  468. package/dist/browser-log.js.map +0 -1
  469. package/dist/calculate-ffmpeg-filters.d.ts.map +0 -1
  470. package/dist/calculate-ffmpeg-filters.js.map +0 -1
  471. package/dist/can-use-parallel-encoding.d.ts.map +0 -1
  472. package/dist/can-use-parallel-encoding.js.map +0 -1
  473. package/dist/combine-videos.d.ts.map +0 -1
  474. package/dist/combine-videos.js.map +0 -1
  475. package/dist/convert-to-pcm.d.ts +0 -6
  476. package/dist/convert-to-pcm.js +0 -20
  477. package/dist/create-ffmpeg-complex-filter.d.ts.map +0 -1
  478. package/dist/create-ffmpeg-complex-filter.js.map +0 -1
  479. package/dist/cycle-browser-tabs.d.ts.map +0 -1
  480. package/dist/cycle-browser-tabs.js.map +0 -1
  481. package/dist/delay-render-embedded-stack.d.ts.map +0 -1
  482. package/dist/delay-render-embedded-stack.js.map +0 -1
  483. package/dist/delete-directory.d.ts.map +0 -1
  484. package/dist/delete-directory.js.map +0 -1
  485. package/dist/ensure-frames-in-order.d.ts.map +0 -1
  486. package/dist/ensure-frames-in-order.js.map +0 -1
  487. package/dist/ensure-output-directory.d.ts.map +0 -1
  488. package/dist/ensure-output-directory.js.map +0 -1
  489. package/dist/error-handling/handle-javascript-exception.d.ts.map +0 -1
  490. package/dist/error-handling/handle-javascript-exception.js.map +0 -1
  491. package/dist/error-handling/symbolicate-error.d.ts.map +0 -1
  492. package/dist/error-handling/symbolicate-error.js.map +0 -1
  493. package/dist/error-handling/symbolicateable-error.d.ts.map +0 -1
  494. package/dist/error-handling/symbolicateable-error.js.map +0 -1
  495. package/dist/ffmpeg-flags.d.ts.map +0 -1
  496. package/dist/ffmpeg-flags.js.map +0 -1
  497. package/dist/get-audio-codec-name.d.ts +0 -2
  498. package/dist/get-audio-codec-name.d.ts.map +0 -1
  499. package/dist/get-audio-codec-name.js +0 -28
  500. package/dist/get-audio-codec-name.js.map +0 -1
  501. package/dist/get-browser-instance.d.ts.map +0 -1
  502. package/dist/get-browser-instance.js.map +0 -1
  503. package/dist/get-codec-name.d.ts.map +0 -1
  504. package/dist/get-codec-name.js.map +0 -1
  505. package/dist/get-compositions.d.ts.map +0 -1
  506. package/dist/get-compositions.js.map +0 -1
  507. package/dist/get-concurrency.d.ts.map +0 -1
  508. package/dist/get-concurrency.js.map +0 -1
  509. package/dist/get-extension-from-codec.d.ts.map +0 -1
  510. package/dist/get-extension-from-codec.js.map +0 -1
  511. package/dist/get-frame-to-render.d.ts.map +0 -1
  512. package/dist/get-frame-to-render.js.map +0 -1
  513. package/dist/get-local-browser-executable.d.ts.map +0 -1
  514. package/dist/get-local-browser-executable.js.map +0 -1
  515. package/dist/get-port.d.ts.map +0 -1
  516. package/dist/get-port.js.map +0 -1
  517. package/dist/get-prores-profile-name.d.ts.map +0 -1
  518. package/dist/get-prores-profile-name.js.map +0 -1
  519. package/dist/image-format.d.ts.map +0 -1
  520. package/dist/image-format.js.map +0 -1
  521. package/dist/index.d.ts.map +0 -1
  522. package/dist/index.js.map +0 -1
  523. package/dist/is-serve-url.d.ts.map +0 -1
  524. package/dist/is-serve-url.js.map +0 -1
  525. package/dist/legacy-webpack-config.d.ts.map +0 -1
  526. package/dist/legacy-webpack-config.js.map +0 -1
  527. package/dist/make-assets-download-dir.d.ts +0 -1
  528. package/dist/make-assets-download-dir.d.ts.map +0 -1
  529. package/dist/make-assets-download-dir.js +0 -13
  530. package/dist/make-assets-download-dir.js.map +0 -1
  531. package/dist/normalize-serve-url.d.ts.map +0 -1
  532. package/dist/normalize-serve-url.js.map +0 -1
  533. package/dist/open-browser.d.ts.map +0 -1
  534. package/dist/open-browser.js.map +0 -1
  535. package/dist/parse-browser-error-stack.d.ts.map +0 -1
  536. package/dist/parse-browser-error-stack.js.map +0 -1
  537. package/dist/parse-ffmpeg-progress.d.ts.map +0 -1
  538. package/dist/parse-ffmpeg-progress.js.map +0 -1
  539. package/dist/pool.d.ts.map +0 -1
  540. package/dist/pool.js.map +0 -1
  541. package/dist/prepare-server.d.ts.map +0 -1
  542. package/dist/prepare-server.js.map +0 -1
  543. package/dist/provide-screenshot.d.ts.map +0 -1
  544. package/dist/provide-screenshot.js.map +0 -1
  545. package/dist/puppeteer-evaluate.d.ts.map +0 -1
  546. package/dist/puppeteer-evaluate.js.map +0 -1
  547. package/dist/puppeteer-screenshot.d.ts.map +0 -1
  548. package/dist/puppeteer-screenshot.js.map +0 -1
  549. package/dist/render-media.d.ts.map +0 -1
  550. package/dist/render-media.js.map +0 -1
  551. package/dist/render-still.d.ts.map +0 -1
  552. package/dist/render-still.js.map +0 -1
  553. package/dist/render.d.ts +0 -45
  554. package/dist/render.d.ts.map +0 -1
  555. package/dist/render.js +0 -245
  556. package/dist/render.js.map +0 -1
  557. package/dist/resolve-asset-src.d.ts.map +0 -1
  558. package/dist/resolve-asset-src.js.map +0 -1
  559. package/dist/sample-rate.d.ts.map +0 -1
  560. package/dist/sample-rate.js.map +0 -1
  561. package/dist/screenshot-dom-element.d.ts.map +0 -1
  562. package/dist/screenshot-dom-element.js.map +0 -1
  563. package/dist/screenshot-task.d.ts.map +0 -1
  564. package/dist/screenshot-task.js.map +0 -1
  565. package/dist/seek-to-frame.d.ts.map +0 -1
  566. package/dist/seek-to-frame.js.map +0 -1
  567. package/dist/serve-static.d.ts.map +0 -1
  568. package/dist/serve-static.js.map +0 -1
  569. package/dist/set-props-and-env.d.ts.map +0 -1
  570. package/dist/set-props-and-env.js.map +0 -1
  571. package/dist/stitcher.d.ts +0 -32
  572. package/dist/stitcher.d.ts.map +0 -1
  573. package/dist/stitcher.js +0 -204
  574. package/dist/stitcher.js.map +0 -1
  575. package/dist/stringify-ffmpeg-filter.d.ts.map +0 -1
  576. package/dist/stringify-ffmpeg-filter.js.map +0 -1
  577. package/dist/symbolicate-stacktrace.d.ts.map +0 -1
  578. package/dist/symbolicate-stacktrace.js.map +0 -1
  579. package/dist/tmp-dir.d.ts.map +0 -1
  580. package/dist/tmp-dir.js.map +0 -1
  581. package/dist/types.d.ts.map +0 -1
  582. package/dist/types.js.map +0 -1
  583. package/dist/validate-even-dimensions-with-codec.d.ts.map +0 -1
  584. package/dist/validate-even-dimensions-with-codec.js.map +0 -1
  585. package/dist/validate-ffmpeg.d.ts.map +0 -1
  586. package/dist/validate-ffmpeg.js.map +0 -1
  587. package/dist/validate-frame.d.ts +0 -1
  588. package/dist/validate-frame.js +0 -24
  589. package/dist/validate-puppeteer-timeout.d.ts.map +0 -1
  590. package/dist/validate-puppeteer-timeout.js.map +0 -1
  591. package/dist/validate-scale.d.ts.map +0 -1
  592. package/dist/validate-scale.js.map +0 -1
  593. package/tsconfig.json +0 -10
  594. package/vitest.config.ts +0 -8
@@ -48,60 +48,41 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
48
48
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
49
49
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
50
50
  };
51
- var _BrowserRunner_product, _BrowserRunner_executablePath, _BrowserRunner_processArguments, _BrowserRunner_userDataDir, _BrowserRunner_isTempUserDataDir, _BrowserRunner_closed, _BrowserRunner_listeners, _BrowserRunner_processClosing;
51
+ var _BrowserRunner_executablePath, _BrowserRunner_processArguments, _BrowserRunner_userDataDir, _BrowserRunner_closed, _BrowserRunner_listeners, _BrowserRunner_processClosing;
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.BrowserRunner = void 0;
54
- const childProcess = __importStar(require("child_process"));
55
- const fs = __importStar(require("fs"));
56
- const path = __importStar(require("path"));
54
+ const childProcess = __importStar(require("node:child_process"));
55
+ const fs = __importStar(require("node:fs"));
57
56
  const readline = __importStar(require("readline"));
58
- const util_1 = require("util");
59
57
  const delete_directory_1 = require("../delete-directory");
58
+ const logger_1 = require("../logger");
60
59
  const assert_1 = require("./assert");
61
60
  const Connection_1 = require("./Connection");
62
61
  const Errors_1 = require("./Errors");
63
62
  const NodeWebSocketTransport_1 = require("./NodeWebSocketTransport");
64
- const util_2 = require("./util");
65
- const renameAsync = (0, util_1.promisify)(fs.rename);
66
- const unlinkAsync = (0, util_1.promisify)(fs.unlink);
63
+ const util_1 = require("./util");
67
64
  const PROCESS_ERROR_EXPLANATION = `Puppeteer was unable to kill the process which ran the browser binary.
68
65
  This means that, on future Puppeteer launches, Puppeteer might not be able to launch the browser.
69
66
  Please check your open processes and ensure that the browser processes that Puppeteer launched have been killed.
70
67
  If you think this is a bug, please report it on the Puppeteer issue tracker.`;
71
68
  class BrowserRunner {
72
- constructor({ product, executablePath, processArguments, userDataDir, isTempUserDataDir, }) {
73
- _BrowserRunner_product.set(this, void 0);
69
+ constructor({ executablePath, processArguments, userDataDir, }) {
74
70
  _BrowserRunner_executablePath.set(this, void 0);
75
71
  _BrowserRunner_processArguments.set(this, void 0);
76
72
  _BrowserRunner_userDataDir.set(this, void 0);
77
- _BrowserRunner_isTempUserDataDir.set(this, void 0);
78
73
  _BrowserRunner_closed.set(this, true);
79
74
  _BrowserRunner_listeners.set(this, []);
80
75
  _BrowserRunner_processClosing.set(this, void 0);
81
- __classPrivateFieldSet(this, _BrowserRunner_product, product, "f");
82
76
  __classPrivateFieldSet(this, _BrowserRunner_executablePath, executablePath, "f");
83
77
  __classPrivateFieldSet(this, _BrowserRunner_processArguments, processArguments, "f");
84
78
  __classPrivateFieldSet(this, _BrowserRunner_userDataDir, userDataDir, "f");
85
- __classPrivateFieldSet(this, _BrowserRunner_isTempUserDataDir, isTempUserDataDir, "f");
86
79
  }
87
80
  start(options) {
88
81
  var _a, _b;
89
- const { handleSIGINT, handleSIGTERM, handleSIGHUP, dumpio, env, pipe } = options;
90
- let stdio;
91
- if (pipe) {
92
- if (dumpio) {
93
- stdio = ['ignore', 'pipe', 'pipe', 'pipe', 'pipe'];
94
- }
95
- else {
96
- stdio = ['ignore', 'ignore', 'ignore', 'pipe', 'pipe'];
97
- }
98
- }
99
- else if (dumpio) {
100
- stdio = ['pipe', 'pipe', 'pipe'];
101
- }
102
- else {
103
- stdio = ['pipe', 'ignore', 'pipe'];
104
- }
82
+ const { dumpio, env } = options;
83
+ const stdio = dumpio
84
+ ? ['ignore', 'pipe', 'pipe']
85
+ : ['pipe', 'ignore', 'pipe'];
105
86
  (0, assert_1.assert)(!this.proc, 'This process has previously been started.');
106
87
  this.proc = childProcess.spawn(__classPrivateFieldGet(this, _BrowserRunner_executablePath, "f"), __classPrivateFieldGet(this, _BrowserRunner_processArguments, "f"), {
107
88
  // On non-windows platforms, `detached: true` makes child process a
@@ -113,74 +94,45 @@ class BrowserRunner {
113
94
  stdio,
114
95
  });
115
96
  if (dumpio) {
116
- (_a = this.proc.stderr) === null || _a === void 0 ? void 0 : _a.pipe(process.stderr);
117
- (_b = this.proc.stdout) === null || _b === void 0 ? void 0 : _b.pipe(process.stdout);
97
+ (_a = this.proc.stdout) === null || _a === void 0 ? void 0 : _a.on('data', (d) => {
98
+ logger_1.Log.verboseAdvanced({ indent: options.indent, logLevel: (0, logger_1.getLogLevel)(), tag: 'chrome' }, d.toString().trim());
99
+ });
100
+ (_b = this.proc.stderr) === null || _b === void 0 ? void 0 : _b.on('data', (d) => {
101
+ logger_1.Log.verboseAdvanced({ indent: options.indent, logLevel: (0, logger_1.getLogLevel)(), tag: 'chrome' }, d.toString().trim());
102
+ });
118
103
  }
119
104
  __classPrivateFieldSet(this, _BrowserRunner_closed, false, "f");
120
105
  __classPrivateFieldSet(this, _BrowserRunner_processClosing, new Promise((fulfill, reject) => {
121
- this.proc.once('exit', async () => {
106
+ this.proc.once('exit', () => {
122
107
  __classPrivateFieldSet(this, _BrowserRunner_closed, true, "f");
123
108
  // Cleanup as processes exit.
124
- if (__classPrivateFieldGet(this, _BrowserRunner_isTempUserDataDir, "f")) {
125
- try {
126
- await (0, delete_directory_1.deleteDirectory)(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"));
127
- fulfill();
128
- }
129
- catch (error) {
130
- reject(error);
131
- }
132
- }
133
- else {
134
- if (__classPrivateFieldGet(this, _BrowserRunner_product, "f") === 'firefox') {
135
- try {
136
- // When an existing user profile has been used remove the user
137
- // preferences file and restore possibly backuped preferences.
138
- await unlinkAsync(path.join(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"), 'user.js'));
139
- const prefsBackupPath = path.join(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"), 'prefs.js.puppeteer');
140
- if (fs.existsSync(prefsBackupPath)) {
141
- const prefsPath = path.join(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"), 'prefs.js');
142
- await unlinkAsync(prefsPath);
143
- await renameAsync(prefsBackupPath, prefsPath);
144
- }
145
- }
146
- catch (error) {
147
- reject(error);
148
- }
109
+ try {
110
+ if (fs.existsSync(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"))) {
111
+ (0, delete_directory_1.deleteDirectory)(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"));
149
112
  }
150
113
  fulfill();
151
114
  }
115
+ catch (error) {
116
+ reject(error);
117
+ }
152
118
  });
153
119
  }), "f");
154
- __classPrivateFieldSet(this, _BrowserRunner_listeners, [(0, util_2.addEventListener)(process, 'exit', this.kill.bind(this))], "f");
155
- if (handleSIGINT) {
156
- __classPrivateFieldGet(this, _BrowserRunner_listeners, "f").push((0, util_2.addEventListener)(process, 'SIGINT', () => {
157
- this.kill();
158
- process.exit(130);
159
- }));
160
- }
161
- if (handleSIGTERM) {
162
- __classPrivateFieldGet(this, _BrowserRunner_listeners, "f").push((0, util_2.addEventListener)(process, 'SIGTERM', this.close.bind(this)));
163
- }
164
- if (handleSIGHUP) {
165
- __classPrivateFieldGet(this, _BrowserRunner_listeners, "f").push((0, util_2.addEventListener)(process, 'SIGHUP', this.close.bind(this)));
166
- }
120
+ __classPrivateFieldSet(this, _BrowserRunner_listeners, [(0, util_1.addEventListener)(process, 'exit', this.kill.bind(this))], "f");
121
+ __classPrivateFieldGet(this, _BrowserRunner_listeners, "f").push((0, util_1.addEventListener)(process, 'SIGINT', () => {
122
+ this.kill();
123
+ process.exit(130);
124
+ }));
125
+ __classPrivateFieldGet(this, _BrowserRunner_listeners, "f").push((0, util_1.addEventListener)(process, 'SIGTERM', this.close.bind(this)));
126
+ __classPrivateFieldGet(this, _BrowserRunner_listeners, "f").push((0, util_1.addEventListener)(process, 'SIGHUP', this.close.bind(this)));
167
127
  }
168
128
  close() {
169
129
  if (__classPrivateFieldGet(this, _BrowserRunner_closed, "f")) {
170
130
  return Promise.resolve();
171
131
  }
172
- if (__classPrivateFieldGet(this, _BrowserRunner_isTempUserDataDir, "f")) {
173
- this.kill();
174
- }
175
- else if (this.connection) {
176
- // Attempt to close the browser gracefully
177
- this.connection.send('Browser.close').catch(() => {
178
- this.kill();
179
- });
180
- }
132
+ this.kill();
181
133
  // Cleanup this listener last, as that makes sure the full callback runs. If we
182
134
  // perform this earlier, then the previous function calls would not happen.
183
- (0, util_2.removeEventListeners)(__classPrivateFieldGet(this, _BrowserRunner_listeners, "f"));
135
+ (0, util_1.removeEventListeners)(__classPrivateFieldGet(this, _BrowserRunner_listeners, "f"));
184
136
  return __classPrivateFieldGet(this, _BrowserRunner_processClosing, "f");
185
137
  }
186
138
  kill() {
@@ -217,19 +169,17 @@ class BrowserRunner {
217
169
  }
218
170
  }
219
171
  catch (error) {
220
- throw new Error(`${PROCESS_ERROR_EXPLANATION}\nError cause: ${(0, util_2.isErrorLike)(error) ? error.stack : error}`);
172
+ throw new Error(`${PROCESS_ERROR_EXPLANATION}\nError cause: ${(0, util_1.isErrorLike)(error) ? error.stack : error}`);
221
173
  }
222
174
  }
223
175
  // Attempt to remove temporary profile directory to avoid littering.
224
176
  try {
225
- if (__classPrivateFieldGet(this, _BrowserRunner_isTempUserDataDir, "f")) {
226
- fs.rmSync(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"), { recursive: true, force: true });
227
- }
177
+ fs.rmSync(__classPrivateFieldGet(this, _BrowserRunner_userDataDir, "f"), { recursive: true, force: true });
228
178
  }
229
179
  catch (error) { }
230
180
  // Cleanup this listener last, as that makes sure the full callback runs. If we
231
181
  // perform this earlier, then the previous function calls would not happen.
232
- (0, util_2.removeEventListeners)(__classPrivateFieldGet(this, _BrowserRunner_listeners, "f"));
182
+ (0, util_1.removeEventListeners)(__classPrivateFieldGet(this, _BrowserRunner_listeners, "f"));
233
183
  }
234
184
  async setupConnection(options) {
235
185
  (0, assert_1.assert)(this.proc, 'BrowserRunner not started.');
@@ -241,21 +191,21 @@ class BrowserRunner {
241
191
  }
242
192
  }
243
193
  exports.BrowserRunner = BrowserRunner;
244
- _BrowserRunner_product = new WeakMap(), _BrowserRunner_executablePath = new WeakMap(), _BrowserRunner_processArguments = new WeakMap(), _BrowserRunner_userDataDir = new WeakMap(), _BrowserRunner_isTempUserDataDir = new WeakMap(), _BrowserRunner_closed = new WeakMap(), _BrowserRunner_listeners = new WeakMap(), _BrowserRunner_processClosing = new WeakMap();
194
+ _BrowserRunner_executablePath = new WeakMap(), _BrowserRunner_processArguments = new WeakMap(), _BrowserRunner_userDataDir = new WeakMap(), _BrowserRunner_closed = new WeakMap(), _BrowserRunner_listeners = new WeakMap(), _BrowserRunner_processClosing = new WeakMap();
245
195
  function waitForWSEndpoint(browserProcess, timeout, preferredRevision) {
246
196
  (0, assert_1.assert)(browserProcess.stderr, '`browserProcess` does not have stderr.');
247
197
  const rl = readline.createInterface(browserProcess.stderr);
248
198
  let stderr = '';
249
199
  return new Promise((resolve, reject) => {
250
200
  const listeners = [
251
- (0, util_2.addEventListener)(rl, 'line', onLine),
252
- (0, util_2.addEventListener)(rl, 'close', () => {
201
+ (0, util_1.addEventListener)(rl, 'line', onLine),
202
+ (0, util_1.addEventListener)(rl, 'close', () => {
253
203
  return onClose();
254
204
  }),
255
- (0, util_2.addEventListener)(browserProcess, 'exit', () => {
205
+ (0, util_1.addEventListener)(browserProcess, 'exit', () => {
256
206
  return onClose();
257
207
  }),
258
- (0, util_2.addEventListener)(browserProcess, 'error', (error) => {
208
+ (0, util_1.addEventListener)(browserProcess, 'error', (error) => {
259
209
  return onClose(error);
260
210
  }),
261
211
  ];
@@ -289,7 +239,7 @@ function waitForWSEndpoint(browserProcess, timeout, preferredRevision) {
289
239
  if (timeoutId) {
290
240
  clearTimeout(timeoutId);
291
241
  }
292
- (0, util_2.removeEventListeners)(listeners);
242
+ (0, util_1.removeEventListeners)(listeners);
293
243
  }
294
244
  });
295
245
  }
@@ -298,7 +248,7 @@ function pidExists(pid) {
298
248
  return process.kill(pid, 0);
299
249
  }
300
250
  catch (error) {
301
- if ((0, util_2.isErrnoException)(error)) {
251
+ if ((0, util_1.isErrnoException)(error)) {
302
252
  if (error.code && error.code === 'ESRCH') {
303
253
  return false;
304
254
  }
File without changes
@@ -215,11 +215,11 @@ class CDPSession extends EventEmitter_1.EventEmitter {
215
215
  }
216
216
  }
217
217
  _onClosed() {
218
+ __classPrivateFieldSet(this, _CDPSession_connection, undefined, "f");
218
219
  for (const callback of __classPrivateFieldGet(this, _CDPSession_callbacks, "f").values()) {
219
220
  callback.reject(rewriteError(callback.error, `Protocol error (${callback.method}): Target closed. https://www.remotion.dev/docs/target-closed`));
220
221
  }
221
222
  __classPrivateFieldGet(this, _CDPSession_callbacks, "f").clear();
222
- __classPrivateFieldSet(this, _CDPSession_connection, undefined, "f");
223
223
  this.emit(exports.CDPSessionEmittedEvents.Disconnected);
224
224
  }
225
225
  id() {
File without changes
File without changes
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { Browser } from './Browser';
16
+ import type { HeadlessBrowser } from './Browser';
17
17
  import type { EvaluateFn, EvaluateFnReturnType, EvaluateHandleFn, SerializableOrJSHandle, UnwrapPromiseLike } from './EvalTypes';
18
18
  import type { ExecutionContext } from './ExecutionContext';
19
19
  import type { Frame } from './FrameManager';
@@ -30,7 +30,7 @@ export declare class DOMWorld {
30
30
  executionContext(): Promise<ExecutionContext>;
31
31
  evaluateHandle<HandlerType extends JSHandle = JSHandle>(pageFunction: EvaluateHandleFn, ...args: SerializableOrJSHandle[]): Promise<HandlerType>;
32
32
  evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
33
- waitForFunction(browser: Browser, pageFunction: Function | string, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
33
+ waitForFunction(browser: HeadlessBrowser, pageFunction: Function | string, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
34
34
  title(): Promise<string>;
35
35
  }
36
36
  interface WaitTaskOptions {
@@ -38,7 +38,7 @@ interface WaitTaskOptions {
38
38
  predicateBody: Function | string;
39
39
  title: string;
40
40
  timeout: number;
41
- browser: Browser;
41
+ browser: HeadlessBrowser;
42
42
  args: SerializableOrJSHandle[];
43
43
  }
44
44
  declare class WaitTask {
@@ -46,7 +46,8 @@ declare class WaitTask {
46
46
  promise: Promise<JSHandle>;
47
47
  constructor(options: WaitTaskOptions);
48
48
  onBrowserClose: () => void;
49
- terminate(error: Error): void;
49
+ onBrowserCloseSilent: () => void;
50
+ terminate(error: Error | null): void;
50
51
  rerun(): Promise<void>;
51
52
  }
52
53
  export {};
@@ -131,6 +131,9 @@ class WaitTask {
131
131
  this.onBrowserClose = () => {
132
132
  return this.terminate(new Error('Browser was closed'));
133
133
  };
134
+ this.onBrowserCloseSilent = () => {
135
+ return this.terminate(null);
136
+ };
134
137
  function getPredicateBody(predicateBody) {
135
138
  if ((0, util_1.isString)(predicateBody)) {
136
139
  return `return (${predicateBody});`;
@@ -157,11 +160,14 @@ class WaitTask {
157
160
  }
158
161
  __classPrivateFieldSet(this, _WaitTask_browser, options.browser, "f");
159
162
  __classPrivateFieldGet(this, _WaitTask_browser, "f").on("closed" /* BrowserEmittedEvents.Closed */, this.onBrowserClose);
163
+ __classPrivateFieldGet(this, _WaitTask_browser, "f").on("closed-silent" /* BrowserEmittedEvents.ClosedSilent */, this.onBrowserCloseSilent);
160
164
  this.rerun();
161
165
  }
162
166
  terminate(error) {
163
167
  __classPrivateFieldSet(this, _WaitTask_terminated, true, "f");
164
- __classPrivateFieldGet(this, _WaitTask_reject, "f").call(this, error);
168
+ if (error) {
169
+ __classPrivateFieldGet(this, _WaitTask_reject, "f").call(this, error);
170
+ }
165
171
  __classPrivateFieldGet(this, _WaitTask_instances, "m", _WaitTask_cleanup).call(this);
166
172
  }
167
173
  async rerun() {
@@ -242,6 +248,7 @@ _WaitTask_domWorld = new WeakMap(), _WaitTask_timeout = new WeakMap(), _WaitTask
242
248
  clearTimeout(__classPrivateFieldGet(this, _WaitTask_timeoutTimer, "f"));
243
249
  }
244
250
  __classPrivateFieldGet(this, _WaitTask_browser, "f").off("closed" /* BrowserEmittedEvents.Closed */, this.onBrowserClose);
251
+ __classPrivateFieldGet(this, _WaitTask_browser, "f").off("closed-silent" /* BrowserEmittedEvents.ClosedSilent */, this.onBrowserCloseSilent);
245
252
  __classPrivateFieldGet(this, _WaitTask_domWorld, "f")._waitTasks.delete(this);
246
253
  };
247
254
  function waitForPredicatePageFunction(predicateBody, timeout, ...args) {
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -13,7 +13,6 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { Browser } from './Browser';
17
16
  import type { Page } from './BrowserPage';
18
17
  import type { CDPSession } from './Connection';
19
18
  import type { Frame as TFrame } from './devtools-types';
@@ -83,7 +82,6 @@ export declare class Frame {
83
82
  evaluate<T extends EvaluateFn>(pageFunction: T, ...args: SerializableOrJSHandle[]): Promise<UnwrapPromiseLike<EvaluateFnReturnType<T>>>;
84
83
  url(): string;
85
84
  childFrames(): Frame[];
86
- waitForFunction(browser: Browser, pageFunction: Function | string, ...args: SerializableOrJSHandle[]): Promise<JSHandle>;
87
85
  _navigated(framePayload: TFrame): void;
88
86
  _navigatedWithinDocument(url: string): void;
89
87
  _onLifecycleEvent(loaderId: string, name: string): void;
@@ -33,6 +33,7 @@ const Connection_1 = require("./Connection");
33
33
  const DOMWorld_1 = require("./DOMWorld");
34
34
  const EventEmitter_1 = require("./EventEmitter");
35
35
  const ExecutionContext_1 = require("./ExecutionContext");
36
+ const is_target_closed_err_1 = require("./is-target-closed-err");
36
37
  const LifecycleWatcher_1 = require("./LifecycleWatcher");
37
38
  const NetworkManager_1 = require("./NetworkManager");
38
39
  const util_1 = require("./util");
@@ -135,9 +136,7 @@ class FrameManager extends EventEmitter_1.EventEmitter {
135
136
  }
136
137
  catch (error) {
137
138
  // The target might have been closed before the initialization finished.
138
- if ((0, util_1.isErrorLike)(error) &&
139
- (error.message.includes('Target closed') ||
140
- error.message.includes('Session closed'))) {
139
+ if ((0, util_1.isErrorLike)(error) && (0, is_target_closed_err_1.isTargetClosedErr)(error)) {
141
140
  return;
142
141
  }
143
142
  throw error;
@@ -460,9 +459,6 @@ class Frame {
460
459
  childFrames() {
461
460
  return Array.from(this._childFrames);
462
461
  }
463
- waitForFunction(browser, pageFunction, ...args) {
464
- return this._mainWorld.waitForFunction(browser, pageFunction, ...args);
465
- }
466
462
  _navigated(framePayload) {
467
463
  this._name = framePayload.name;
468
464
  __classPrivateFieldSet(this, _Frame_url, `${framePayload.url}${framePayload.urlFragment || ''}`, "f");
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -24,14 +24,10 @@ export interface BrowserLaunchArgumentOptions {
24
24
  }
25
25
  export interface LaunchOptions {
26
26
  executablePath?: string;
27
- handleSIGINT?: boolean;
28
- handleSIGTERM?: boolean;
29
- handleSIGHUP?: boolean;
30
27
  timeout?: number;
31
28
  dumpio?: boolean;
32
29
  env?: Record<string, string | undefined>;
33
- pipe?: boolean;
34
30
  product?: Product;
35
- extraPrefsFirefox?: Record<string, unknown>;
31
+ indent: boolean;
36
32
  }
37
33
  export declare type PuppeteerNodeLaunchOptions = BrowserLaunchArgumentOptions & LaunchOptions & BrowserConnectOptions;
File without changes
@@ -1,9 +1,15 @@
1
- import { Browser } from './Browser';
1
+ import { HeadlessBrowser } from './Browser';
2
2
  import type { PuppeteerNodeLaunchOptions } from './LaunchOptions';
3
3
  import type { Product } from './Product';
4
4
  export interface ProductLauncher {
5
- launch(object: PuppeteerNodeLaunchOptions): Promise<Browser>;
5
+ launch(object: PuppeteerNodeLaunchOptions): Promise<HeadlessBrowser>;
6
6
  executablePath: (path?: any) => string;
7
7
  product: Product;
8
8
  }
9
- export default function Launcher(preferredRevision: string, product?: string): ProductLauncher;
9
+ export declare class ChromeLauncher implements ProductLauncher {
10
+ _preferredRevision: string;
11
+ constructor(preferredRevision: string);
12
+ launch(options: PuppeteerNodeLaunchOptions): Promise<HeadlessBrowser>;
13
+ executablePath(): string;
14
+ get product(): Product;
15
+ }