@remotion/lambda 4.0.0-defer.6 → 4.0.0-esm.17

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 (396) hide show
  1. package/LICENSE.md +8 -8
  2. package/dist/admin/bundle-lambda.d.ts +0 -0
  3. package/dist/admin/bundle-lambda.js +21 -4
  4. package/dist/admin/generate-etag-list.d.ts +1 -0
  5. package/dist/admin/generate-etag-list.js +14 -0
  6. package/dist/admin/make-layer-public.d.ts +0 -0
  7. package/dist/admin/make-layer-public.js +28 -6
  8. package/dist/api/bucket-exists.d.ts +1 -1
  9. package/dist/api/bucket-exists.js +1 -1
  10. package/dist/api/clean-items.d.ts +1 -1
  11. package/dist/api/clean-items.js +1 -1
  12. package/dist/api/create-bucket.d.ts +1 -1
  13. package/dist/api/create-bucket.js +1 -1
  14. package/dist/api/create-function.d.ts +2 -2
  15. package/dist/api/create-function.js +0 -0
  16. package/dist/api/delete-function.d.ts +1 -1
  17. package/dist/api/delete-function.js +0 -0
  18. package/dist/api/delete-render.d.ts +19 -0
  19. package/dist/api/delete-render.js +66 -0
  20. package/dist/api/delete-site.d.ts +1 -1
  21. package/dist/api/delete-site.js +0 -5
  22. package/dist/api/deploy-function.d.ts +2 -2
  23. package/dist/api/deploy-function.js +7 -3
  24. package/dist/api/deploy-site.d.ts +10 -3
  25. package/dist/api/deploy-site.js +39 -20
  26. package/dist/api/download-media.d.ts +15 -2
  27. package/dist/api/download-media.js +15 -3
  28. package/dist/api/estimate-price.d.ts +2 -2
  29. package/dist/api/estimate-price.js +0 -0
  30. package/dist/api/get-aws-client.d.ts +7 -3
  31. package/dist/api/get-aws-client.js +9 -2
  32. package/dist/api/get-buckets.d.ts +1 -1
  33. package/dist/api/get-buckets.js +27 -10
  34. package/dist/api/get-compositions-on-lambda.d.ts +29 -0
  35. package/dist/api/get-compositions-on-lambda.js +52 -0
  36. package/dist/api/get-function-info.d.ts +2 -3
  37. package/dist/api/get-function-info.js +0 -0
  38. package/dist/api/get-functions.d.ts +2 -2
  39. package/dist/api/get-functions.js +2 -1
  40. package/dist/api/get-or-create-bucket.d.ts +1 -1
  41. package/dist/api/get-or-create-bucket.js +2 -7
  42. package/dist/api/get-regions.d.ts +6 -2
  43. package/dist/api/get-regions.js +5 -2
  44. package/dist/api/get-render-progress.d.ts +6 -3
  45. package/dist/api/get-render-progress.js +5 -1
  46. package/dist/api/get-sites.d.ts +2 -2
  47. package/dist/api/get-sites.js +0 -0
  48. package/dist/api/iam-validation/role-permissions.d.ts +2 -1
  49. package/dist/api/iam-validation/role-permissions.js +0 -0
  50. package/dist/api/iam-validation/simulate-rule.d.ts +1 -1
  51. package/dist/api/iam-validation/simulate-rule.js +0 -22
  52. package/dist/api/iam-validation/simulate.d.ts +2 -2
  53. package/dist/api/iam-validation/simulate.js +24 -5
  54. package/dist/api/iam-validation/suggested-policy.d.ts +0 -0
  55. package/dist/api/iam-validation/suggested-policy.js +0 -0
  56. package/dist/api/iam-validation/user-permissions.d.ts +0 -0
  57. package/dist/api/iam-validation/user-permissions.js +0 -8
  58. package/dist/api/mock-functions.d.ts +6 -7
  59. package/dist/api/mock-functions.js +0 -0
  60. package/dist/api/presign-url.d.ts +3 -2
  61. package/dist/api/presign-url.js +6 -1
  62. package/dist/api/render-media-on-lambda.d.ts +35 -16
  63. package/dist/api/render-media-on-lambda.js +82 -37
  64. package/dist/api/render-still-on-lambda.d.ts +12 -7
  65. package/dist/api/render-still-on-lambda.js +55 -31
  66. package/dist/api/upload-dir.d.ts +6 -5
  67. package/dist/api/upload-dir.js +39 -21
  68. package/dist/api/validate-webhook-signature.d.ts +13 -0
  69. package/dist/api/validate-webhook-signature.js +32 -0
  70. package/dist/cli/args.d.ts +9 -5
  71. package/dist/cli/args.js +1 -5
  72. package/dist/cli/commands/compositions/index.d.ts +2 -0
  73. package/dist/cli/commands/compositions/index.js +42 -0
  74. package/dist/cli/commands/functions/deploy.d.ts +0 -0
  75. package/dist/cli/commands/functions/deploy.js +2 -1
  76. package/dist/cli/commands/functions/index.d.ts +0 -0
  77. package/dist/cli/commands/functions/index.js +0 -0
  78. package/dist/cli/commands/functions/ls.d.ts +0 -0
  79. package/dist/cli/commands/functions/ls.js +0 -0
  80. package/dist/cli/commands/functions/rm.d.ts +0 -0
  81. package/dist/cli/commands/functions/rm.js +0 -0
  82. package/dist/cli/commands/functions/rmall.d.ts +0 -0
  83. package/dist/cli/commands/functions/rmall.js +0 -0
  84. package/dist/cli/commands/policies/policies.d.ts +0 -0
  85. package/dist/cli/commands/policies/policies.js +0 -0
  86. package/dist/cli/commands/policies/role.d.ts +0 -0
  87. package/dist/cli/commands/policies/role.js +0 -0
  88. package/dist/cli/commands/policies/user.d.ts +0 -0
  89. package/dist/cli/commands/policies/user.js +0 -0
  90. package/dist/cli/commands/policies/validate.d.ts +0 -0
  91. package/dist/cli/commands/policies/validate.js +0 -0
  92. package/dist/cli/commands/quotas/increase.d.ts +0 -0
  93. package/dist/cli/commands/quotas/increase.js +0 -0
  94. package/dist/cli/commands/quotas/index.d.ts +0 -0
  95. package/dist/cli/commands/quotas/index.js +0 -0
  96. package/dist/cli/commands/quotas/list.d.ts +0 -0
  97. package/dist/cli/commands/quotas/list.js +0 -0
  98. package/dist/cli/commands/regions.d.ts +0 -0
  99. package/dist/cli/commands/regions.js +5 -1
  100. package/dist/cli/commands/render/progress.d.ts +11 -7
  101. package/dist/cli/commands/render/progress.js +68 -43
  102. package/dist/cli/commands/render/render.d.ts +1 -1
  103. package/dist/cli/commands/render/render.js +72 -25
  104. package/dist/cli/commands/sites/create.d.ts +1 -1
  105. package/dist/cli/commands/sites/create.js +21 -9
  106. package/dist/cli/commands/sites/index.d.ts +1 -1
  107. package/dist/cli/commands/sites/index.js +2 -2
  108. package/dist/cli/commands/sites/ls.d.ts +0 -0
  109. package/dist/cli/commands/sites/ls.js +1 -2
  110. package/dist/cli/commands/sites/rm.d.ts +0 -0
  111. package/dist/cli/commands/sites/rm.js +2 -3
  112. package/dist/cli/commands/sites/rmall.d.ts +0 -0
  113. package/dist/cli/commands/sites/rmall.js +2 -3
  114. package/dist/cli/commands/still.d.ts +1 -1
  115. package/dist/cli/commands/still.js +34 -27
  116. package/dist/cli/get-aws-region.d.ts +1 -1
  117. package/dist/cli/get-aws-region.js +2 -1
  118. package/dist/cli/help.d.ts +0 -0
  119. package/dist/cli/help.js +0 -0
  120. package/dist/cli/helpers/confirm.d.ts +0 -0
  121. package/dist/cli/helpers/confirm.js +0 -0
  122. package/dist/cli/helpers/date-string.d.ts +0 -0
  123. package/dist/cli/helpers/date-string.js +0 -0
  124. package/dist/cli/helpers/find-function-name.d.ts +0 -0
  125. package/dist/cli/helpers/find-function-name.js +3 -2
  126. package/dist/cli/helpers/progress-bar.d.ts +9 -3
  127. package/dist/cli/helpers/progress-bar.js +20 -5
  128. package/dist/cli/helpers/quit.d.ts +0 -0
  129. package/dist/cli/helpers/quit.js +0 -0
  130. package/dist/cli/helpers/yes-or-no.d.ts +0 -0
  131. package/dist/cli/helpers/yes-or-no.js +0 -0
  132. package/dist/cli/index.d.ts +1 -1
  133. package/dist/cli/index.js +20 -9
  134. package/dist/cli/is-cli.d.ts +0 -0
  135. package/dist/cli/is-cli.js +0 -0
  136. package/dist/cli/log.d.ts +0 -0
  137. package/dist/cli/log.js +0 -0
  138. package/dist/client.d.ts +5 -2
  139. package/dist/client.js +5 -1
  140. package/dist/defaults.d.ts +0 -0
  141. package/dist/defaults.js +0 -0
  142. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +2 -6
  143. package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -19
  144. package/dist/functions/chunk-optimization/types.d.ts +0 -11
  145. package/dist/functions/chunk-optimization/types.js +0 -0
  146. package/dist/functions/compositions.d.ts +8 -0
  147. package/dist/functions/compositions.js +57 -0
  148. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -0
  149. package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -0
  150. package/dist/functions/helpers/calculate-chunk-times.d.ts +1 -1
  151. package/dist/functions/helpers/calculate-chunk-times.js +0 -0
  152. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -4
  153. package/dist/functions/helpers/calculate-price-from-bucket.js +0 -0
  154. package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
  155. package/dist/functions/helpers/check-if-render-exists.js +14 -0
  156. package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
  157. package/dist/functions/helpers/clean-tmpdir.js +1 -1
  158. package/dist/functions/helpers/concat-videos.d.ts +17 -7
  159. package/dist/functions/helpers/concat-videos.js +34 -32
  160. package/dist/functions/helpers/create-post-render-data.d.ts +6 -6
  161. package/dist/functions/helpers/create-post-render-data.js +5 -12
  162. package/dist/functions/helpers/delete-chunks.d.ts +3 -3
  163. package/dist/functions/helpers/delete-chunks.js +0 -0
  164. package/dist/functions/helpers/expected-out-name.d.ts +4 -2
  165. package/dist/functions/helpers/expected-out-name.js +27 -6
  166. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +5 -3
  167. package/dist/functions/helpers/find-output-file-in-bucket.js +17 -9
  168. package/dist/functions/helpers/format-costs-info.d.ts +1 -1
  169. package/dist/functions/helpers/format-costs-info.js +0 -0
  170. package/dist/functions/helpers/get-browser-instance.d.ts +2 -1
  171. package/dist/functions/helpers/get-browser-instance.js +1 -1
  172. package/dist/functions/helpers/get-chromium-executable-path.d.ts +0 -0
  173. package/dist/functions/helpers/get-chromium-executable-path.js +2 -1
  174. package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -2
  175. package/dist/functions/helpers/get-cleanup-progress.js +0 -0
  176. package/dist/functions/helpers/get-current-architecture.d.ts +1 -1
  177. package/dist/functions/helpers/get-current-architecture.js +0 -0
  178. package/dist/functions/helpers/get-current-region.d.ts +1 -1
  179. package/dist/functions/helpers/get-current-region.js +0 -0
  180. package/dist/functions/helpers/get-custom-out-name.d.ts +6 -0
  181. package/dist/functions/helpers/get-custom-out-name.js +31 -0
  182. package/dist/functions/helpers/get-encoding-metadata.d.ts +5 -9
  183. package/dist/functions/helpers/get-encoding-metadata.js +4 -18
  184. package/dist/functions/helpers/get-files-in-folder.d.ts +0 -0
  185. package/dist/functions/helpers/get-files-in-folder.js +0 -0
  186. package/dist/functions/helpers/get-files-to-delete.d.ts +0 -0
  187. package/dist/functions/helpers/get-files-to-delete.js +1 -1
  188. package/dist/functions/helpers/get-final-encoding-status.d.ts +3 -5
  189. package/dist/functions/helpers/get-final-encoding-status.js +1 -4
  190. package/dist/functions/helpers/get-folder-size.d.ts +0 -0
  191. package/dist/functions/helpers/get-folder-size.js +0 -0
  192. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +5 -4
  193. package/dist/functions/helpers/get-lambdas-invoked-stats.js +2 -10
  194. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +3 -2
  195. package/dist/functions/helpers/get-output-url-from-metadata.js +2 -2
  196. package/dist/functions/helpers/get-overall-progress.d.ts +2 -1
  197. package/dist/functions/helpers/get-overall-progress.js +7 -5
  198. package/dist/functions/helpers/get-post-render-data.d.ts +2 -2
  199. package/dist/functions/helpers/get-post-render-data.js +0 -0
  200. package/dist/functions/helpers/get-progress.d.ts +6 -4
  201. package/dist/functions/helpers/get-progress.js +63 -34
  202. package/dist/functions/helpers/get-render-metadata.d.ts +2 -2
  203. package/dist/functions/helpers/get-render-metadata.js +0 -0
  204. package/dist/functions/helpers/get-rendered-frames-progress.d.ts +8 -0
  205. package/dist/functions/helpers/get-rendered-frames-progress.js +37 -0
  206. package/dist/functions/helpers/get-retry-stats.d.ts +1 -1
  207. package/dist/functions/helpers/get-retry-stats.js +1 -1
  208. package/dist/functions/helpers/get-time-to-finish.d.ts +1 -1
  209. package/dist/functions/helpers/get-time-to-finish.js +0 -0
  210. package/dist/functions/helpers/inspect-errors.d.ts +3 -3
  211. package/dist/functions/helpers/inspect-errors.js +0 -0
  212. package/dist/functions/helpers/io.d.ts +24 -6
  213. package/dist/functions/helpers/io.js +31 -8
  214. package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
  215. package/dist/functions/helpers/is-enosp-err.js +0 -0
  216. package/dist/functions/helpers/is-warm.d.ts +0 -0
  217. package/dist/functions/helpers/is-warm.js +0 -0
  218. package/dist/functions/helpers/min-max.d.ts +1 -1
  219. package/dist/functions/helpers/min-max.js +1 -1
  220. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +2 -2
  221. package/dist/functions/helpers/print-cloudwatch-helper.js +0 -0
  222. package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -0
  223. package/dist/functions/helpers/print-concurrency-curve.js +0 -0
  224. package/dist/functions/helpers/read-with-progress.d.ts +6 -3
  225. package/dist/functions/helpers/read-with-progress.js +16 -4
  226. package/dist/functions/helpers/timer.d.ts +0 -0
  227. package/dist/functions/helpers/timer.js +0 -0
  228. package/dist/functions/helpers/validate-composition.d.ts +7 -4
  229. package/dist/functions/helpers/validate-composition.js +7 -2
  230. package/dist/functions/helpers/write-lambda-error.d.ts +2 -2
  231. package/dist/functions/helpers/write-lambda-error.js +2 -0
  232. package/dist/functions/helpers/write-post-render-data.d.ts +2 -2
  233. package/dist/functions/helpers/write-post-render-data.js +2 -0
  234. package/dist/functions/index.d.ts +3 -2
  235. package/dist/functions/index.js +29 -10
  236. package/dist/functions/info.d.ts +2 -2
  237. package/dist/functions/info.js +2 -1
  238. package/dist/functions/launch.d.ts +2 -1
  239. package/dist/functions/launch.js +343 -123
  240. package/dist/functions/progress.d.ts +2 -2
  241. package/dist/functions/progress.js +10 -1
  242. package/dist/functions/renderer.d.ts +1 -1
  243. package/dist/functions/renderer.js +126 -77
  244. package/dist/functions/start.d.ts +6 -2
  245. package/dist/functions/start.js +40 -4
  246. package/dist/functions/still.d.ts +1 -1
  247. package/dist/functions/still.js +63 -17
  248. package/dist/index.d.ts +50 -20
  249. package/dist/index.js +17 -3
  250. package/dist/internals.d.ts +1 -1
  251. package/dist/internals.js +0 -0
  252. package/dist/pricing/aws-regions.d.ts +2 -1
  253. package/dist/pricing/aws-regions.js +31 -1
  254. package/dist/pricing/price-per-1-s.d.ts +1 -1
  255. package/dist/pricing/price-per-1-s.js +413 -39
  256. package/dist/regions.d.ts +0 -0
  257. package/dist/regions.js +0 -0
  258. package/dist/shared/await.d.ts +0 -0
  259. package/dist/shared/await.js +0 -0
  260. package/dist/shared/aws-clients.d.ts +17 -3
  261. package/dist/shared/aws-clients.js +118 -26
  262. package/dist/shared/bundle-site.d.ts +2 -6
  263. package/dist/shared/bundle-site.js +0 -0
  264. package/dist/shared/call-lambda.d.ts +3 -3
  265. package/dist/shared/call-lambda.js +0 -0
  266. package/dist/shared/check-credentials.d.ts +0 -0
  267. package/dist/shared/check-credentials.js +5 -2
  268. package/dist/shared/chunk-progress.d.ts +9 -0
  269. package/dist/shared/chunk-progress.js +2034 -0
  270. package/dist/shared/cleanup-serialized-input-props.d.ts +7 -0
  271. package/dist/shared/cleanup-serialized-input-props.js +19 -0
  272. package/dist/shared/constants.d.ts +107 -37
  273. package/dist/shared/constants.js +20 -10
  274. package/dist/shared/content-disposition-header.d.ts +7 -0
  275. package/dist/shared/content-disposition-header.js +19 -0
  276. package/dist/shared/convert-to-serve-url.d.ts +6 -2
  277. package/dist/shared/convert-to-serve-url.js +1 -5
  278. package/dist/shared/deserialize-input-props.d.ts +8 -0
  279. package/dist/shared/deserialize-input-props.js +26 -0
  280. package/dist/shared/docs-url.d.ts +0 -0
  281. package/dist/shared/docs-url.js +0 -0
  282. package/dist/shared/function-zip-path.d.ts +2 -1
  283. package/dist/shared/function-zip-path.js +3 -2
  284. package/dist/shared/get-account-id.d.ts +1 -1
  285. package/dist/shared/get-account-id.js +4 -6
  286. package/dist/shared/get-aws-urls.d.ts +13 -0
  287. package/dist/{cli/helpers/get-cloudwatch-stream-url.js → shared/get-aws-urls.js} +5 -1
  288. package/dist/shared/get-etag.d.ts +1 -0
  289. package/dist/shared/get-etag.js +24 -0
  290. package/dist/shared/get-function-version.d.ts +2 -3
  291. package/dist/shared/get-function-version.js +0 -0
  292. package/dist/shared/get-most-expensive-chunks.d.ts +8 -0
  293. package/dist/shared/get-most-expensive-chunks.js +25 -0
  294. package/dist/shared/get-s3-operations.d.ts +10 -0
  295. package/dist/shared/get-s3-operations.js +36 -0
  296. package/dist/shared/hosted-layers.d.ts +2 -2
  297. package/dist/shared/hosted-layers.js +368 -60
  298. package/dist/shared/invoke-webhook.d.ts +46 -0
  299. package/dist/shared/invoke-webhook.js +89 -0
  300. package/dist/shared/is-in-lambda.d.ts +0 -0
  301. package/dist/shared/is-in-lambda.js +5 -1
  302. package/dist/shared/lambda-version-string.d.ts +1 -0
  303. package/dist/shared/lambda-version-string.js +7 -0
  304. package/dist/shared/make-s3-key.d.ts +0 -0
  305. package/dist/shared/make-s3-key.js +0 -0
  306. package/dist/shared/make-s3-url.d.ts +1 -1
  307. package/dist/shared/make-s3-url.js +0 -0
  308. package/dist/shared/p-limit.d.ts +0 -0
  309. package/dist/shared/p-limit.js +0 -0
  310. package/dist/shared/parse-chunk-key.d.ts +4 -0
  311. package/dist/shared/parse-chunk-key.js +14 -0
  312. package/dist/shared/parse-lambda-initialized-key.d.ts +0 -0
  313. package/dist/shared/parse-lambda-initialized-key.js +0 -0
  314. package/dist/shared/parse-lambda-timings-key.d.ts +0 -0
  315. package/dist/shared/parse-lambda-timings-key.js +0 -0
  316. package/dist/shared/random-hash.d.ts +0 -0
  317. package/dist/shared/random-hash.js +0 -0
  318. package/dist/shared/read-dir.d.ts +9 -0
  319. package/dist/shared/read-dir.js +57 -0
  320. package/dist/shared/return-values.d.ts +9 -7
  321. package/dist/shared/return-values.js +0 -1
  322. package/dist/shared/serialize-input-props.d.ts +7 -0
  323. package/dist/shared/serialize-input-props.js +42 -0
  324. package/dist/shared/sleep.d.ts +0 -0
  325. package/dist/shared/sleep.js +0 -0
  326. package/dist/shared/stream-to-string.d.ts +1 -1
  327. package/dist/shared/stream-to-string.js +0 -0
  328. package/dist/shared/truthy.d.ts +3 -0
  329. package/dist/shared/truthy.js +7 -0
  330. package/dist/shared/validate-architecture.d.ts +0 -0
  331. package/dist/shared/validate-architecture.js +0 -0
  332. package/dist/shared/validate-aws-region.d.ts +1 -1
  333. package/dist/shared/validate-aws-region.js +0 -0
  334. package/dist/shared/validate-bucketname.d.ts +5 -0
  335. package/dist/shared/validate-bucketname.js +19 -1
  336. package/dist/shared/validate-custom-role-arn.d.ts +0 -0
  337. package/dist/shared/validate-custom-role-arn.js +0 -0
  338. package/dist/shared/validate-disk-size-in-mb.d.ts +0 -0
  339. package/dist/shared/validate-disk-size-in-mb.js +0 -0
  340. package/dist/shared/validate-download-behavior.d.ts +1 -0
  341. package/dist/shared/validate-download-behavior.js +21 -0
  342. package/dist/shared/validate-frames-per-lambda.d.ts +4 -1
  343. package/dist/shared/validate-frames-per-lambda.js +4 -3
  344. package/dist/shared/validate-lambda-codec.d.ts +4 -0
  345. package/dist/shared/validate-lambda-codec.js +29 -0
  346. package/dist/shared/validate-memory-size.d.ts +0 -0
  347. package/dist/shared/validate-memory-size.js +0 -0
  348. package/dist/shared/validate-outname.d.ts +3 -2
  349. package/dist/shared/validate-outname.js +5 -1
  350. package/dist/shared/validate-presign-expiration.d.ts +0 -2
  351. package/dist/shared/validate-presign-expiration.js +7 -7
  352. package/dist/shared/validate-privacy.d.ts +1 -1
  353. package/dist/shared/validate-privacy.js +2 -2
  354. package/dist/shared/validate-retention-period.d.ts +0 -0
  355. package/dist/shared/validate-retention-period.js +0 -0
  356. package/dist/shared/validate-retries.d.ts +0 -0
  357. package/dist/shared/validate-retries.js +0 -0
  358. package/dist/shared/validate-serveurl.d.ts +0 -0
  359. package/dist/shared/validate-serveurl.js +0 -0
  360. package/dist/shared/validate-site-name.d.ts +0 -0
  361. package/dist/shared/validate-site-name.js +0 -0
  362. package/dist/shared/validate-timeout.d.ts +0 -0
  363. package/dist/shared/validate-timeout.js +0 -0
  364. package/package.json +25 -26
  365. package/remotionlambda-arm64.zip +0 -0
  366. package/remotionlambda-x64.zip +0 -0
  367. package/remotionlambda.zip +0 -0
  368. package/.prettierrc.js +0 -14
  369. package/dist/api/enable-s3-website.d.ts +0 -5
  370. package/dist/api/enable-s3-website.js +0 -16
  371. package/dist/cli/helpers/format-bytes.d.ts +0 -6
  372. package/dist/cli/helpers/format-bytes.js +0 -103
  373. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +0 -8
  374. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +0 -6
  375. package/dist/functions/chunk-optimization/can-use-optimization.js +0 -23
  376. package/dist/functions/chunk-optimization/collect-data.d.ts +0 -9
  377. package/dist/functions/chunk-optimization/collect-data.js +0 -27
  378. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +0 -3
  379. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -11
  380. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +0 -3
  381. package/dist/functions/chunk-optimization/get-profile-duration.js +0 -18
  382. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +0 -2
  383. package/dist/functions/chunk-optimization/is-valid-profile.js +0 -12
  384. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +0 -2
  385. package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -19
  386. package/dist/functions/chunk-optimization/optimize-profile.d.ts +0 -9
  387. package/dist/functions/chunk-optimization/optimize-profile.js +0 -74
  388. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +0 -17
  389. package/dist/functions/chunk-optimization/s3-optimization-file.js +0 -45
  390. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -7
  391. package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -47
  392. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +0 -2
  393. package/dist/functions/chunk-optimization/sort-by-duration.js +0 -25
  394. package/dist/shared/chunk.d.ts +0 -1
  395. package/dist/shared/chunk.js +0 -11
  396. package/tsconfig.json +0 -16
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.functionsDeploySubcommand = exports.FUNCTIONS_DEPLOY_SUBCOMMAND = void 0;
4
4
  const cli_1 = require("@remotion/cli");
5
5
  const log_1 = require("@remotion/cli/dist/log");
6
+ const version_1 = require("remotion/version");
6
7
  const deploy_function_1 = require("../../../api/deploy-function");
7
8
  const constants_1 = require("../../../shared/constants");
8
9
  const validate_architecture_1 = require("../../../shared/validate-architecture");
@@ -34,7 +35,7 @@ Region = ${region}
34
35
  Memory = ${memorySizeInMb}MB
35
36
  Disk size = ${diskSizeInMb}MB
36
37
  Timeout = ${timeoutInSeconds}sec
37
- Version = ${constants_1.CURRENT_VERSION}
38
+ Version = ${version_1.VERSION}
38
39
  Architecture = ${architecture}
39
40
  CloudWatch Logging Enabled = ${createCloudWatchLogGroup}
40
41
  CloudWatch Retention Period = ${cloudWatchLogRetentionPeriodInDays} days
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -3,8 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.regionsCommand = exports.REGIONS_COMMAND = void 0;
4
4
  const log_1 = require("@remotion/cli/dist/log");
5
5
  const get_regions_1 = require("../../api/get-regions");
6
+ const args_1 = require("../args");
6
7
  exports.REGIONS_COMMAND = 'regions';
7
8
  const regionsCommand = () => {
8
- log_1.Log.info((0, get_regions_1.getRegions)().join(' '));
9
+ var _a;
10
+ log_1.Log.info((0, get_regions_1.getRegions)({
11
+ enabledByDefaultOnly: (_a = args_1.parsedLambdaCli['default-only']) !== null && _a !== void 0 ? _a : false,
12
+ }).join(' '));
9
13
  };
10
14
  exports.regionsCommand = regionsCommand;
@@ -1,16 +1,17 @@
1
- import { CleanupInfo, EncodingProgress, RenderProgress } from '../../../defaults';
2
- import { ChunkRetry } from '../../../functions/helpers/get-retry-stats';
1
+ import type { CleanupInfo, EncodingProgress, RenderProgress } from '../../../defaults';
2
+ import type { ChunkRetry } from '../../../functions/helpers/get-retry-stats';
3
3
  declare type LambdaInvokeProgress = {
4
4
  totalLambdas: number | null;
5
5
  lambdasInvoked: number;
6
- doneIn: number | null;
7
6
  };
8
7
  declare type ChunkProgress = {
8
+ doneIn: number | null;
9
+ framesRendered: number;
10
+ totalFrames: number | null;
9
11
  totalChunks: number | null;
10
12
  chunksInvoked: number;
11
- doneIn: number | null;
12
13
  };
13
- export declare type MultiRenderProgress = {
14
+ declare type MultiRenderProgress = {
14
15
  lambdaInvokeProgress: LambdaInvokeProgress;
15
16
  chunkProgress: ChunkProgress;
16
17
  encodingProgress: EncodingProgress;
@@ -18,14 +19,17 @@ export declare type MultiRenderProgress = {
18
19
  };
19
20
  export declare const makeMultiProgressFromStatus: (status: RenderProgress) => MultiRenderProgress;
20
21
  declare type DownloadedInfo = {
21
- totalSize: number;
22
+ totalSize: number | null;
22
23
  downloaded: number;
23
24
  doneIn: number | null;
24
25
  };
25
- export declare const makeProgressString: ({ progress, steps, downloadInfo, retriesInfo, }: {
26
+ export declare const makeProgressString: ({ progress, steps, downloadInfo, retriesInfo, verbose, timeToEncode, totalFrames, }: {
26
27
  progress: MultiRenderProgress;
27
28
  steps: number;
28
29
  downloadInfo: DownloadedInfo | null;
29
30
  retriesInfo: ChunkRetry[];
31
+ verbose: boolean;
32
+ timeToEncode: number | null;
33
+ totalFrames: number | null;
30
34
  }) => string;
31
35
  export {};
@@ -2,46 +2,54 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.makeProgressString = exports.makeMultiProgressFromStatus = void 0;
4
4
  const cli_1 = require("@remotion/cli");
5
+ const renderer_1 = require("@remotion/renderer");
5
6
  const remotion_1 = require("remotion");
6
- const format_bytes_1 = require("../../helpers/format-bytes");
7
+ const truthy_1 = require("../../../shared/truthy");
7
8
  const makeInvokeProgress = (invokeProgress, totalSteps, retriesInfo) => {
8
- const { lambdasInvoked, totalLambdas, doneIn } = invokeProgress;
9
- const progress = doneIn
10
- ? 1
11
- : totalLambdas === null
12
- ? 0
13
- : lambdasInvoked / totalLambdas;
9
+ const { lambdasInvoked, totalLambdas } = invokeProgress;
10
+ const progress = totalLambdas === null ? 0 : lambdasInvoked / totalLambdas;
14
11
  return [
15
12
  '⚡️',
16
13
  `(1/${totalSteps})`,
17
14
  cli_1.CliInternals.makeProgressBar(progress),
18
- `${doneIn === null ? 'Invoking' : 'Invoked'} lambdas`,
19
- doneIn === null
20
- ? `${Math.round(progress * 100)}%`
21
- : cli_1.CliInternals.chalk.gray(`${doneIn}ms`),
15
+ `${progress === 0 ? 'Invoked' : 'Invoking'} lambdas`,
16
+ progress === 1
17
+ ? cli_1.CliInternals.chalk.gray('100%')
18
+ : `${Math.round(progress * 100)}%`,
22
19
  retriesInfo.length > 0 ? `(+${retriesInfo.length} retries)` : [],
23
20
  ].join(' ');
24
21
  };
25
- const makeChunkProgress = ({ chunkProgress, invokeProgress, totalSteps, }) => {
26
- const lambdaIsDone = invokeProgress.doneIn !== null;
22
+ const makeRenderProgress = ({ chunkProgress, totalSteps, }) => {
27
23
  const { chunksInvoked, totalChunks, doneIn } = chunkProgress;
28
- const progress = totalChunks === null ? 0 : chunksInvoked / totalChunks;
29
- const shouldShow = lambdaIsDone || progress > 0;
30
- if (!shouldShow) {
31
- return '';
32
- }
33
- return [
24
+ const renderProgress = chunkProgress.totalFrames === null
25
+ ? 0
26
+ : chunkProgress.framesRendered / chunkProgress.totalFrames;
27
+ const encodingProgress = totalChunks === null ? 0 : chunksInvoked / totalChunks;
28
+ const frames = chunkProgress.totalFrames === null
29
+ ? null
30
+ : `(${chunkProgress.framesRendered}/${chunkProgress.totalFrames})`;
31
+ const first = [
34
32
  '🧩',
35
33
  `(2/${totalSteps})`,
36
- cli_1.CliInternals.makeProgressBar(progress),
37
- `${doneIn === null ? 'Rendering' : 'Rendered'} chunks`,
34
+ cli_1.CliInternals.makeProgressBar(renderProgress),
35
+ doneIn === null ? 'Rendering frames' : 'Rendered frames',
36
+ doneIn === null ? frames : cli_1.CliInternals.chalk.gray(`${doneIn}ms`),
37
+ ]
38
+ .filter(truthy_1.truthy)
39
+ .join(' ');
40
+ const second = [
41
+ '🏗️ ',
42
+ `(3/${totalSteps})`,
43
+ cli_1.CliInternals.makeProgressBar(encodingProgress),
44
+ `${doneIn === null ? 'Encoding' : 'Encoded'} chunks`,
38
45
  doneIn === null
39
- ? `${Math.round(progress * 100)}%`
46
+ ? `${Math.round(encodingProgress * 100)}%`
40
47
  : cli_1.CliInternals.chalk.gray(`${doneIn}ms`),
41
48
  ].join(' ');
49
+ return [first, second];
42
50
  };
43
- const makeEncodingProgress = ({ encodingProgress, chunkProgress, totalSteps, }) => {
44
- const { framesEncoded, totalFrames, doneIn } = encodingProgress;
51
+ const makeEncodingProgress = ({ encodingProgress, chunkProgress, totalSteps, totalFrames, timeToEncode, }) => {
52
+ const { framesEncoded } = encodingProgress;
45
53
  const progress = totalFrames === null ? 0 : framesEncoded / totalFrames;
46
54
  const chunksDone = chunkProgress.doneIn !== null;
47
55
  const shouldShow = progress > 0 || chunksDone;
@@ -50,23 +58,30 @@ const makeEncodingProgress = ({ encodingProgress, chunkProgress, totalSteps, })
50
58
  }
51
59
  return [
52
60
  '📽 ',
53
- `(3/${totalSteps})`,
61
+ `(4/${totalSteps})`,
54
62
  cli_1.CliInternals.makeProgressBar(progress),
55
- `${doneIn === null ? 'Combining' : 'Combined'} videos`,
56
- doneIn === null
63
+ `${timeToEncode === null ? 'Combining' : 'Combined'} videos`,
64
+ timeToEncode === null
57
65
  ? `${Math.round(progress * 100)}%`
58
- : cli_1.CliInternals.chalk.gray(`${doneIn}ms`),
66
+ : cli_1.CliInternals.chalk.gray(`${timeToEncode}ms`),
59
67
  ].join(' ');
60
68
  };
61
- const makeCleanupProgress = (cleanupInfo, totalSteps) => {
69
+ const makeCleanupProgress = (cleanupInfo, totalSteps, skipped) => {
62
70
  if (!cleanupInfo) {
63
71
  return '';
64
72
  }
73
+ if (skipped) {
74
+ return [
75
+ '🪣 ',
76
+ `(5/${totalSteps})`,
77
+ cli_1.CliInternals.chalk.blueBright(`Not cleaning up because --log=verbose was set`),
78
+ ].join(' ');
79
+ }
65
80
  const { doneIn, filesDeleted, minFilesToDelete } = cleanupInfo;
66
81
  const progress = filesDeleted / minFilesToDelete;
67
82
  return [
68
83
  '🪣 ',
69
- `(4/${totalSteps})`,
84
+ `(5/${totalSteps})`,
70
85
  cli_1.CliInternals.makeProgressBar(progress),
71
86
  `${doneIn === null ? 'Cleaning up' : 'Cleaned up'} artifacts`,
72
87
  doneIn === null
@@ -77,51 +92,61 @@ const makeCleanupProgress = (cleanupInfo, totalSteps) => {
77
92
  const makeDownloadProgress = (downloadInfo, totalSteps) => {
78
93
  return [
79
94
  '💾',
80
- `(5/${totalSteps})`,
81
- cli_1.CliInternals.makeProgressBar(downloadInfo.downloaded / downloadInfo.totalSize),
95
+ `(6/${totalSteps})`,
96
+ downloadInfo.totalSize === null
97
+ ? cli_1.CliInternals.getFileSizeDownloadBar(downloadInfo.downloaded)
98
+ : cli_1.CliInternals.makeProgressBar(downloadInfo.downloaded / downloadInfo.totalSize),
82
99
  `${downloadInfo.doneIn === null ? 'Downloading' : 'Downloaded'} video`,
83
100
  downloadInfo.doneIn === null
84
- ? `${(0, format_bytes_1.formatBytes)(downloadInfo.downloaded)}/${(0, format_bytes_1.formatBytes)(downloadInfo.totalSize)}`
101
+ ? [
102
+ `${cli_1.CliInternals.formatBytes(downloadInfo.downloaded)}`,
103
+ downloadInfo.totalSize === null
104
+ ? null
105
+ : `${cli_1.CliInternals.formatBytes(downloadInfo.totalSize)}`,
106
+ ]
107
+ .filter(remotion_1.Internals.truthy)
108
+ .join('/')
85
109
  : cli_1.CliInternals.chalk.gray(`${downloadInfo.doneIn}ms`),
86
110
  ].join(' ');
87
111
  };
88
112
  const makeMultiProgressFromStatus = (status) => {
89
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
113
+ var _a, _b, _c, _d, _e, _f;
90
114
  return {
91
115
  chunkProgress: {
92
116
  chunksInvoked: status.chunks,
93
117
  totalChunks: (_b = (_a = status.renderMetadata) === null || _a === void 0 ? void 0 : _a.totalChunks) !== null && _b !== void 0 ? _b : null,
94
118
  doneIn: status.timeToFinishChunks,
119
+ framesRendered: status.framesRendered,
120
+ totalFrames: status.renderMetadata
121
+ ? renderer_1.RenderInternals.getFramesToRender(status.renderMetadata.frameRange, status.renderMetadata.everyNthFrame).length
122
+ : null,
95
123
  },
96
124
  encodingProgress: {
97
125
  framesEncoded: (_d = (_c = status.encodingStatus) === null || _c === void 0 ? void 0 : _c.framesEncoded) !== null && _d !== void 0 ? _d : 0,
98
- totalFrames: (_f = (_e = status.renderMetadata) === null || _e === void 0 ? void 0 : _e.videoConfig.durationInFrames) !== null && _f !== void 0 ? _f : 1,
99
- doneIn: (_h = (_g = status.encodingStatus) === null || _g === void 0 ? void 0 : _g.doneIn) !== null && _h !== void 0 ? _h : null,
100
- timeToInvoke: (_k = (_j = status.encodingStatus) === null || _j === void 0 ? void 0 : _j.timeToInvoke) !== null && _k !== void 0 ? _k : null,
101
126
  },
102
127
  lambdaInvokeProgress: {
103
- doneIn: status.timeToInvokeLambdas,
104
128
  lambdasInvoked: status.lambdasInvoked,
105
- totalLambdas: (_m = (_l = status.renderMetadata) === null || _l === void 0 ? void 0 : _l.estimatedRenderLambdaInvokations) !== null && _m !== void 0 ? _m : null,
129
+ totalLambdas: (_f = (_e = status.renderMetadata) === null || _e === void 0 ? void 0 : _e.estimatedRenderLambdaInvokations) !== null && _f !== void 0 ? _f : null,
106
130
  },
107
131
  cleanupInfo: status.cleanup,
108
132
  };
109
133
  };
110
134
  exports.makeMultiProgressFromStatus = makeMultiProgressFromStatus;
111
- const makeProgressString = ({ progress, steps, downloadInfo, retriesInfo, }) => {
135
+ const makeProgressString = ({ progress, steps, downloadInfo, retriesInfo, verbose, timeToEncode, totalFrames, }) => {
112
136
  return [
113
137
  makeInvokeProgress(progress.lambdaInvokeProgress, steps, retriesInfo),
114
- makeChunkProgress({
138
+ ...makeRenderProgress({
115
139
  chunkProgress: progress.chunkProgress,
116
- invokeProgress: progress.lambdaInvokeProgress,
117
140
  totalSteps: steps,
118
141
  }),
119
142
  makeEncodingProgress({
120
143
  encodingProgress: progress.encodingProgress,
121
144
  chunkProgress: progress.chunkProgress,
122
145
  totalSteps: steps,
146
+ timeToEncode,
147
+ totalFrames,
123
148
  }),
124
- makeCleanupProgress(progress.cleanupInfo, steps),
149
+ makeCleanupProgress(progress.cleanupInfo, steps, verbose),
125
150
  downloadInfo ? makeDownloadProgress(downloadInfo, steps) : null,
126
151
  ]
127
152
  .filter(remotion_1.Internals.truthy)
@@ -1,2 +1,2 @@
1
1
  export declare const RENDER_COMMAND = "render";
2
- export declare const renderCommand: (args: string[]) => Promise<never>;
2
+ export declare const renderCommand: (args: string[], remotionRoot: string) => Promise<never>;
@@ -11,17 +11,16 @@ const sleep_1 = require("../../../shared/sleep");
11
11
  const validate_frames_per_lambda_1 = require("../../../shared/validate-frames-per-lambda");
12
12
  const validate_privacy_1 = require("../../../shared/validate-privacy");
13
13
  const validate_retries_1 = require("../../../shared/validate-retries");
14
+ const validate_serveurl_1 = require("../../../shared/validate-serveurl");
14
15
  const args_1 = require("../../args");
15
16
  const get_aws_region_1 = require("../../get-aws-region");
16
17
  const find_function_name_1 = require("../../helpers/find-function-name");
17
- const format_bytes_1 = require("../../helpers/format-bytes");
18
- const get_cloudwatch_stream_url_1 = require("../../helpers/get-cloudwatch-stream-url");
19
18
  const quit_1 = require("../../helpers/quit");
20
19
  const log_1 = require("../../log");
21
20
  const progress_1 = require("./progress");
22
21
  exports.RENDER_COMMAND = 'render';
23
- const renderCommand = async (args) => {
24
- var _a, _b, _c, _d;
22
+ const renderCommand = async (args, remotionRoot) => {
23
+ var _a, _b, _c, _d, _e;
25
24
  const serveUrl = args[0];
26
25
  if (!serveUrl) {
27
26
  log_1.Log.error('No serve URL passed.');
@@ -30,27 +29,34 @@ const renderCommand = async (args) => {
30
29
  log_1.Log.info(`${constants_1.BINARY_NAME} ${exports.RENDER_COMMAND} <serve-url> <composition-id> [output-location]`);
31
30
  (0, quit_1.quit)(1);
32
31
  }
33
- const composition = args[1];
32
+ const region = (0, get_aws_region_1.getAwsRegion)();
33
+ let composition = args[1];
34
34
  if (!composition) {
35
- log_1.Log.error('No composition ID passed.');
36
- log_1.Log.info('Pass an additional argument specifying the composition ID.');
37
- log_1.Log.info();
38
- log_1.Log.info(`${constants_1.BINARY_NAME} ${exports.RENDER_COMMAND} <serve-url> <composition-id> [output-location]`);
39
- (0, quit_1.quit)(1);
35
+ log_1.Log.info('No compositions passed. Fetching compositions...');
36
+ (0, validate_serveurl_1.validateServeUrl)(serveUrl);
37
+ const comps = await (0, renderer_1.getCompositions)(serveUrl);
38
+ const { compositionId } = await cli_1.CliInternals.selectComposition(comps);
39
+ composition = compositionId;
40
40
  }
41
- const outName = (_a = args[2]) !== null && _a !== void 0 ? _a : null;
42
- const { chromiumOptions, codec, crf, envVariables, frameRange, imageFormat, inputProps, logLevel, pixelFormat, proResProfile, puppeteerTimeout, quality, scale, } = await cli_1.CliInternals.getCliOptions({
41
+ const outName = args_1.parsedLambdaCli['out-name'];
42
+ const downloadName = (_a = args[2]) !== null && _a !== void 0 ? _a : null;
43
+ const { codec, reason } = cli_1.CliInternals.getFinalCodec({
44
+ downloadName,
45
+ outName: outName !== null && outName !== void 0 ? outName : null,
46
+ });
47
+ const { chromiumOptions, crf, envVariables, frameRange, inputProps, logLevel, pixelFormat, proResProfile, puppeteerTimeout, quality, scale, everyNthFrame, numberOfGifLoops, muted, overwrite, audioBitrate, videoBitrate, height, width, } = await cli_1.CliInternals.getCliOptions({
43
48
  type: 'series',
44
49
  isLambda: true,
50
+ remotionRoot,
45
51
  });
52
+ const imageFormat = cli_1.CliInternals.getImageFormat(codec);
46
53
  const functionName = await (0, find_function_name_1.findFunctionName)();
47
- const region = (0, get_aws_region_1.getAwsRegion)();
48
54
  const maxRetries = (_b = args_1.parsedLambdaCli['max-retries']) !== null && _b !== void 0 ? _b : constants_1.DEFAULT_MAX_RETRIES;
49
55
  (0, validate_retries_1.validateMaxRetries)(maxRetries);
50
56
  const privacy = (_c = args_1.parsedLambdaCli.privacy) !== null && _c !== void 0 ? _c : constants_1.DEFAULT_OUTPUT_PRIVACY;
51
57
  (0, validate_privacy_1.validatePrivacy)(privacy);
52
58
  const framesPerLambda = (_d = args_1.parsedLambdaCli['frames-per-lambda']) !== null && _d !== void 0 ? _d : undefined;
53
- (0, validate_frames_per_lambda_1.validateFramesPerLambda)(framesPerLambda);
59
+ (0, validate_frames_per_lambda_1.validateFramesPerLambda)({ framesPerLambda, durationInFrames: 1 });
54
60
  const res = await (0, render_media_on_lambda_1.renderMediaOnLambda)({
55
61
  functionName,
56
62
  serveUrl,
@@ -73,16 +79,29 @@ const renderCommand = async (args) => {
73
79
  timeoutInMilliseconds: puppeteerTimeout,
74
80
  chromiumOptions,
75
81
  scale,
82
+ numberOfGifLoops,
83
+ everyNthFrame,
84
+ concurrencyPerLambda: args_1.parsedLambdaCli['concurrency-per-lambda'],
85
+ muted,
86
+ overwrite,
87
+ audioBitrate,
88
+ videoBitrate,
89
+ forceHeight: height,
90
+ forceWidth: width,
91
+ webhook: args_1.parsedLambdaCli.webhook
92
+ ? {
93
+ url: args_1.parsedLambdaCli.webhook,
94
+ secret: (_e = args_1.parsedLambdaCli['webhook-secret']) !== null && _e !== void 0 ? _e : null,
95
+ }
96
+ : undefined,
76
97
  });
77
- const totalSteps = outName ? 5 : 4;
98
+ const totalSteps = downloadName ? 6 : 5;
78
99
  const progressBar = cli_1.CliInternals.createOverwriteableCliOutput(cli_1.CliInternals.quietFlagProvided());
79
- log_1.Log.info(cli_1.CliInternals.chalk.gray(`Bucket = ${res.bucketName}, renderId = ${res.renderId}, functionName = ${functionName}`));
80
- log_1.Log.verbose(`CloudWatch logs (if enabled): ${(0, get_cloudwatch_stream_url_1.getCloudwatchStreamUrl)({
81
- functionName,
82
- region,
83
- renderId: res.renderId,
84
- method: constants_1.LambdaRoutines.renderer,
85
- })}`);
100
+ log_1.Log.info(cli_1.CliInternals.chalk.gray(`bucket = ${res.bucketName}, function = ${functionName}`));
101
+ log_1.Log.info(cli_1.CliInternals.chalk.gray(`renderId = ${res.renderId}, codec = ${codec} (${reason})`));
102
+ const verbose = renderer_1.RenderInternals.isEqualOrBelowLogLevel(cli_1.ConfigInternals.Logging.getLogLevel(), 'verbose');
103
+ log_1.Log.verbose(`CloudWatch logs (if enabled): ${res.cloudWatchLogs}`);
104
+ log_1.Log.verbose(`Render folder: ${res.folderInS3Console}`);
86
105
  const status = await (0, get_render_progress_1.getRenderProgress)({
87
106
  functionName,
88
107
  bucketName: res.bucketName,
@@ -95,6 +114,9 @@ const renderCommand = async (args) => {
95
114
  steps: totalSteps,
96
115
  downloadInfo: null,
97
116
  retriesInfo: status.retriesInfo,
117
+ verbose,
118
+ totalFrames: getTotalFrames(status),
119
+ timeToEncode: status.timeToEncode,
98
120
  }));
99
121
  // eslint-disable-next-line no-constant-condition
100
122
  while (true) {
@@ -111,6 +133,9 @@ const renderCommand = async (args) => {
111
133
  steps: totalSteps,
112
134
  retriesInfo: newStatus.retriesInfo,
113
135
  downloadInfo: null,
136
+ verbose,
137
+ timeToEncode: newStatus.timeToEncode,
138
+ totalFrames: getTotalFrames(newStatus),
114
139
  }));
115
140
  if (newStatus.done) {
116
141
  progressBar.update((0, progress_1.makeProgressString)({
@@ -118,12 +143,15 @@ const renderCommand = async (args) => {
118
143
  steps: totalSteps,
119
144
  downloadInfo: null,
120
145
  retriesInfo: newStatus.retriesInfo,
146
+ verbose,
147
+ timeToEncode: newStatus.timeToEncode,
148
+ totalFrames: getTotalFrames(newStatus),
121
149
  }));
122
- if (outName) {
150
+ if (downloadName) {
123
151
  const downloadStart = Date.now();
124
152
  const { outputPath, sizeInBytes } = await (0, download_media_1.downloadMedia)({
125
153
  bucketName: res.bucketName,
126
- outPath: outName,
154
+ outPath: downloadName,
127
155
  region: (0, get_aws_region_1.getAwsRegion)(),
128
156
  renderId: res.renderId,
129
157
  onProgress: ({ downloaded, totalSize }) => {
@@ -136,6 +164,9 @@ const renderCommand = async (args) => {
136
164
  downloaded,
137
165
  totalSize,
138
166
  },
167
+ verbose,
168
+ timeToEncode: newStatus.timeToEncode,
169
+ totalFrames: getTotalFrames(newStatus),
139
170
  }));
140
171
  },
141
172
  });
@@ -148,10 +179,13 @@ const renderCommand = async (args) => {
148
179
  downloaded: sizeInBytes,
149
180
  totalSize: sizeInBytes,
150
181
  },
182
+ verbose,
183
+ timeToEncode: newStatus.timeToEncode,
184
+ totalFrames: getTotalFrames(newStatus),
151
185
  }));
152
186
  log_1.Log.info();
153
187
  log_1.Log.info();
154
- log_1.Log.info('Done!', outputPath, (0, format_bytes_1.formatBytes)(sizeInBytes));
188
+ log_1.Log.info('Done!', outputPath, cli_1.CliInternals.formatBytes(sizeInBytes));
155
189
  }
156
190
  else {
157
191
  log_1.Log.info();
@@ -169,6 +203,14 @@ const renderCommand = async (args) => {
169
203
  ]
170
204
  .filter(Boolean)
171
205
  .join(', '));
206
+ if (newStatus.mostExpensiveFrameRanges) {
207
+ log_1.Log.verbose('Most expensive frame ranges:');
208
+ log_1.Log.verbose(newStatus.mostExpensiveFrameRanges
209
+ .map((f) => {
210
+ return `${f.frameRange[0]}-${f.frameRange[1]} (${f.timeInMilliseconds}ms)`;
211
+ })
212
+ .join(', '));
213
+ }
172
214
  (0, quit_1.quit)(0);
173
215
  }
174
216
  if (newStatus.fatalErrorEncountered) {
@@ -192,3 +234,8 @@ const renderCommand = async (args) => {
192
234
  }
193
235
  };
194
236
  exports.renderCommand = renderCommand;
237
+ function getTotalFrames(status) {
238
+ return status.renderMetadata
239
+ ? renderer_1.RenderInternals.getFramesToRender(status.renderMetadata.frameRange, status.renderMetadata.everyNthFrame).length
240
+ : null;
241
+ }
@@ -1,2 +1,2 @@
1
1
  export declare const SITES_CREATE_SUBCOMMAND = "create";
2
- export declare const sitesCreateSubcommand: (args: string[]) => Promise<void>;
2
+ export declare const sitesCreateSubcommand: (args: string[], remotionRoot: string) => Promise<void>;
@@ -18,17 +18,19 @@ const progress_bar_1 = require("../../helpers/progress-bar");
18
18
  const quit_1 = require("../../helpers/quit");
19
19
  const log_1 = require("../../log");
20
20
  exports.SITES_CREATE_SUBCOMMAND = 'create';
21
- const sitesCreateSubcommand = async (args) => {
21
+ const sitesCreateSubcommand = async (args, remotionRoot) => {
22
22
  var _a, _b;
23
- const fileName = args[0];
24
- if (!fileName) {
23
+ const { file, reason } = cli_1.CliInternals.findEntryPoint(args, remotionRoot);
24
+ if (!file) {
25
25
  log_1.Log.error('No entry file passed.');
26
26
  log_1.Log.info('Pass an additional argument specifying the entry file of your Remotion project:');
27
27
  log_1.Log.info();
28
28
  log_1.Log.info(`${constants_1.BINARY_NAME} deploy <entry-file.ts>`);
29
29
  (0, quit_1.quit)(1);
30
+ return;
30
31
  }
31
- const absoluteFile = path_1.default.join(process.cwd(), fileName);
32
+ log_1.Log.verbose('Entry point:', file, 'Reason:', reason);
33
+ const absoluteFile = path_1.default.join(process.cwd(), file);
32
34
  if (!(0, fs_1.existsSync)(absoluteFile)) {
33
35
  log_1.Log.error(`No file exists at ${absoluteFile}. Make sure the path exists and try again.`);
34
36
  (0, quit_1.quit)(1);
@@ -50,12 +52,12 @@ const sitesCreateSubcommand = async (args) => {
50
52
  bucketProgress: {
51
53
  bucketCreated: false,
52
54
  doneIn: null,
53
- websiteEnabled: false,
54
55
  },
55
56
  deployProgress: {
56
57
  doneIn: null,
57
58
  totalSize: null,
58
59
  sizeUploaded: 0,
60
+ stats: null,
59
61
  },
60
62
  };
61
63
  const updateProgress = () => {
@@ -73,12 +75,11 @@ const sitesCreateSubcommand = async (args) => {
73
75
  updateProgress();
74
76
  },
75
77
  });
76
- multiProgress.bucketProgress.websiteEnabled = true;
77
78
  multiProgress.bucketProgress.doneIn = Date.now() - bucketStart;
78
79
  updateProgress();
79
80
  const bundleStart = Date.now();
80
81
  const uploadStart = Date.now();
81
- const { serveUrl, siteName } = await (0, deploy_site_1.deploySite)({
82
+ const { serveUrl, siteName, stats } = await (0, deploy_site_1.deploySite)({
82
83
  entryPoint: absoluteFile,
83
84
  siteName: desiredSiteName,
84
85
  bucketName,
@@ -94,11 +95,12 @@ const sitesCreateSubcommand = async (args) => {
94
95
  sizeUploaded: p.sizeUploaded,
95
96
  totalSize: p.totalSize,
96
97
  doneIn: null,
98
+ stats: null,
97
99
  };
98
100
  updateProgress();
99
101
  },
100
- enableCaching: remotion_1.Internals.getWebpackCaching(),
101
- webpackOverride: (_b = remotion_1.Internals.getWebpackOverrideFn()) !== null && _b !== void 0 ? _b : remotion_1.Internals.defaultOverrideFunction,
102
+ enableCaching: cli_1.ConfigInternals.getWebpackCaching(),
103
+ webpackOverride: (_b = cli_1.ConfigInternals.getWebpackOverrideFn()) !== null && _b !== void 0 ? _b : ((f) => f),
102
104
  },
103
105
  region: (0, get_aws_region_1.getAwsRegion)(),
104
106
  });
@@ -107,6 +109,11 @@ const sitesCreateSubcommand = async (args) => {
107
109
  sizeUploaded: 1,
108
110
  totalSize: 1,
109
111
  doneIn: uploadDuration,
112
+ stats: {
113
+ addedFiles: stats.uploadedFiles,
114
+ removedFiles: stats.deletedFiles,
115
+ untouchedFiles: stats.untouchedFiles,
116
+ },
110
117
  };
111
118
  updateProgress();
112
119
  log_1.Log.info();
@@ -114,5 +121,10 @@ const sitesCreateSubcommand = async (args) => {
114
121
  log_1.Log.info('Deployed to S3!');
115
122
  log_1.Log.info(`Serve URL: ${serveUrl}`);
116
123
  log_1.Log.info(`Site Name: ${siteName}`);
124
+ log_1.Log.info();
125
+ log_1.Log.info(cli_1.CliInternals.chalk.blueBright('ℹ️ If you make changes to your code, you need to redeploy the site. You can overwrite the existing site by running:'));
126
+ log_1.Log.info(cli_1.CliInternals.chalk.blueBright(['npx remotion lambda sites create', args[0], `--site-name=${siteName}`]
127
+ .filter(remotion_1.Internals.truthy)
128
+ .join(' ')));
117
129
  };
118
130
  exports.sitesCreateSubcommand = sitesCreateSubcommand;
@@ -1,2 +1,2 @@
1
1
  export declare const SITES_COMMAND = "sites";
2
- export declare const sitesCommand: (args: string[]) => Promise<void> | undefined;
2
+ export declare const sitesCommand: (args: string[], remotionRoot: string) => Promise<void> | undefined;
@@ -24,7 +24,7 @@ const printSitesHelp = () => {
24
24
  log_1.Log.info(`${constants_1.BINARY_NAME} ${exports.SITES_COMMAND} ${rm_1.SITES_RM_COMMAND} <site-id>`);
25
25
  log_1.Log.info(cli_1.CliInternals.chalk.gray('Remove a site from the S3 bucket.'));
26
26
  };
27
- const sitesCommand = (args) => {
27
+ const sitesCommand = (args, remotionRoot) => {
28
28
  if (args[0] === ls_1.SITES_LS_SUBCOMMAND) {
29
29
  return (0, ls_1.sitesLsSubcommand)();
30
30
  }
@@ -35,7 +35,7 @@ const sitesCommand = (args) => {
35
35
  return (0, rmall_1.sitesRmallSubcommand)();
36
36
  }
37
37
  if (args[0] === create_1.SITES_CREATE_SUBCOMMAND) {
38
- return (0, create_1.sitesCreateSubcommand)(args.slice(1));
38
+ return (0, create_1.sitesCreateSubcommand)(args.slice(1), remotionRoot);
39
39
  }
40
40
  if (args[0]) {
41
41
  log_1.Log.error(`Subcommand ${args[0]} not found.`);
File without changes