@remotion/lambda 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 (742) 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 +24 -13
  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 +61 -67
  8. package/dist/api/bucket-exists.d.ts +0 -0
  9. package/dist/api/bucket-exists.js +1 -1
  10. package/dist/api/clean-items.d.ts +0 -0
  11. package/dist/api/clean-items.js +2 -2
  12. package/dist/api/create-bucket.d.ts +0 -0
  13. package/dist/api/create-bucket.js +35 -2
  14. package/dist/api/create-function.d.ts +1 -3
  15. package/dist/api/create-function.js +27 -6
  16. package/dist/api/delete-function.d.ts +3 -3
  17. package/dist/api/delete-function.js +3 -3
  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 +5 -5
  21. package/dist/api/delete-site.js +5 -10
  22. package/dist/api/deploy-function.d.ts +9 -11
  23. package/dist/api/deploy-function.js +32 -33
  24. package/dist/api/deploy-site.d.ts +13 -3
  25. package/dist/api/deploy-site.js +60 -23
  26. package/dist/api/download-media.d.ts +12 -3
  27. package/dist/api/download-media.js +18 -10
  28. package/dist/api/estimate-price.d.ts +2 -4
  29. package/dist/api/estimate-price.js +4 -10
  30. package/dist/api/get-aws-client.d.ts +7 -3
  31. package/dist/api/get-aws-client.js +10 -3
  32. package/dist/api/get-buckets.d.ts +0 -0
  33. package/dist/api/get-buckets.js +27 -10
  34. package/dist/api/get-compositions-on-lambda.d.ts +31 -0
  35. package/dist/api/get-compositions-on-lambda.js +56 -0
  36. package/dist/api/get-function-info.d.ts +2 -3
  37. package/dist/api/get-function-info.js +1 -1
  38. package/dist/api/get-functions.d.ts +4 -6
  39. package/dist/api/get-functions.js +10 -11
  40. package/dist/api/get-or-create-bucket.d.ts +4 -4
  41. package/dist/api/get-or-create-bucket.js +10 -18
  42. package/dist/api/get-regions.d.ts +6 -2
  43. package/dist/api/get-regions.js +6 -3
  44. package/dist/api/get-render-progress.d.ts +5 -2
  45. package/dist/api/get-render-progress.js +7 -8
  46. package/dist/api/get-sites.d.ts +1 -2
  47. package/dist/api/get-sites.js +1 -2
  48. package/dist/api/iam-validation/role-permissions.d.ts +0 -0
  49. package/dist/api/iam-validation/role-permissions.js +0 -0
  50. package/dist/api/iam-validation/simulate-rule.d.ts +0 -0
  51. package/dist/api/iam-validation/simulate-rule.js +0 -22
  52. package/dist/api/iam-validation/simulate.d.ts +1 -1
  53. package/dist/api/iam-validation/simulate.js +27 -6
  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 +1 -1
  57. package/dist/api/iam-validation/user-permissions.js +3 -8
  58. package/dist/api/make-lambda-payload.d.ts +5 -0
  59. package/dist/api/make-lambda-payload.js +77 -0
  60. package/dist/api/mock-functions.d.ts +4 -5
  61. package/dist/api/mock-functions.js +0 -0
  62. package/dist/api/presign-url.d.ts +4 -5
  63. package/dist/api/presign-url.js +9 -4
  64. package/dist/api/render-media-on-lambda.d.ts +36 -14
  65. package/dist/api/render-media-on-lambda.js +43 -51
  66. package/dist/api/render-still-on-lambda.d.ts +14 -4
  67. package/dist/api/render-still-on-lambda.js +64 -32
  68. package/dist/api/speculate-function-name.d.ts +14 -0
  69. package/dist/api/speculate-function-name.js +22 -0
  70. package/dist/api/upload-dir.d.ts +4 -3
  71. package/dist/api/upload-dir.js +55 -52
  72. package/dist/api/validate-webhook-signature.d.ts +13 -0
  73. package/dist/api/validate-webhook-signature.js +32 -0
  74. package/dist/cli/args.d.ts +8 -4
  75. package/dist/cli/args.js +1 -5
  76. package/dist/cli/commands/compositions/index.d.ts +2 -0
  77. package/dist/cli/commands/compositions/index.js +44 -0
  78. package/dist/cli/commands/functions/deploy.d.ts +0 -0
  79. package/dist/cli/commands/functions/deploy.js +17 -16
  80. package/dist/cli/commands/functions/index.d.ts +0 -0
  81. package/dist/cli/commands/functions/index.js +16 -17
  82. package/dist/cli/commands/functions/ls.d.ts +0 -0
  83. package/dist/cli/commands/functions/ls.js +17 -10
  84. package/dist/cli/commands/functions/rm.d.ts +0 -0
  85. package/dist/cli/commands/functions/rm.js +20 -7
  86. package/dist/cli/commands/functions/rmall.d.ts +0 -0
  87. package/dist/cli/commands/functions/rmall.js +20 -8
  88. package/dist/cli/commands/policies/policies.d.ts +0 -0
  89. package/dist/cli/commands/policies/policies.js +0 -0
  90. package/dist/cli/commands/policies/role.d.ts +0 -0
  91. package/dist/cli/commands/policies/role.js +0 -0
  92. package/dist/cli/commands/policies/user.d.ts +0 -0
  93. package/dist/cli/commands/policies/user.js +0 -0
  94. package/dist/cli/commands/policies/validate.d.ts +0 -0
  95. package/dist/cli/commands/policies/validate.js +0 -0
  96. package/dist/cli/commands/quotas/increase.d.ts +0 -0
  97. package/dist/cli/commands/quotas/increase.js +30 -10
  98. package/dist/cli/commands/quotas/index.d.ts +0 -0
  99. package/dist/cli/commands/quotas/index.js +8 -9
  100. package/dist/cli/commands/quotas/list.d.ts +0 -0
  101. package/dist/cli/commands/quotas/list.js +0 -0
  102. package/dist/cli/commands/regions.d.ts +0 -0
  103. package/dist/cli/commands/regions.js +6 -2
  104. package/dist/cli/commands/render/progress.d.ts +7 -3
  105. package/dist/cli/commands/render/progress.js +55 -45
  106. package/dist/cli/commands/render/render.d.ts +1 -1
  107. package/dist/cli/commands/render/render.js +110 -37
  108. package/dist/cli/commands/sites/create.d.ts +1 -1
  109. package/dist/cli/commands/sites/create.js +36 -33
  110. package/dist/cli/commands/sites/index.d.ts +1 -1
  111. package/dist/cli/commands/sites/index.js +18 -16
  112. package/dist/cli/commands/sites/ls.d.ts +0 -0
  113. package/dist/cli/commands/sites/ls.js +9 -10
  114. package/dist/cli/commands/sites/rm.d.ts +0 -0
  115. package/dist/cli/commands/sites/rm.js +6 -16
  116. package/dist/cli/commands/sites/rmall.d.ts +0 -0
  117. package/dist/cli/commands/sites/rmall.js +5 -16
  118. package/dist/cli/commands/still.d.ts +1 -1
  119. package/dist/cli/commands/still.js +55 -30
  120. package/dist/cli/get-aws-region.d.ts +0 -0
  121. package/dist/cli/get-aws-region.js +2 -1
  122. package/dist/cli/help.d.ts +0 -0
  123. package/dist/cli/help.js +4 -0
  124. package/dist/cli/helpers/confirm.d.ts +0 -0
  125. package/dist/cli/helpers/confirm.js +0 -0
  126. package/dist/cli/helpers/date-string.d.ts +0 -0
  127. package/dist/cli/helpers/date-string.js +0 -0
  128. package/dist/cli/helpers/find-function-name.d.ts +0 -0
  129. package/dist/cli/helpers/find-function-name.js +37 -7
  130. package/dist/cli/helpers/progress-bar.d.ts +9 -4
  131. package/dist/cli/helpers/progress-bar.js +20 -11
  132. package/dist/cli/helpers/quit.d.ts +0 -0
  133. package/dist/cli/helpers/quit.js +0 -0
  134. package/dist/cli/helpers/yes-or-no.d.ts +0 -0
  135. package/dist/cli/helpers/yes-or-no.js +0 -0
  136. package/dist/cli/index.d.ts +1 -1
  137. package/dist/cli/index.js +23 -12
  138. package/dist/cli/is-cli.d.ts +0 -0
  139. package/dist/cli/is-cli.js +0 -0
  140. package/dist/cli/log.d.ts +14 -0
  141. package/dist/cli/log.js +0 -0
  142. package/dist/client.d.ts +10 -2
  143. package/dist/client.js +11 -1
  144. package/dist/defaults.d.ts +0 -0
  145. package/dist/defaults.js +0 -0
  146. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +1 -5
  147. package/dist/functions/chunk-optimization/plan-frame-ranges.js +2 -15
  148. package/dist/functions/chunk-optimization/types.d.ts +0 -12
  149. package/dist/functions/chunk-optimization/types.js +0 -0
  150. package/dist/functions/compositions.d.ts +8 -0
  151. package/dist/functions/compositions.js +56 -0
  152. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -0
  153. package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -0
  154. package/dist/functions/helpers/calculate-chunk-times.d.ts +0 -0
  155. package/dist/functions/helpers/calculate-chunk-times.js +0 -0
  156. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +1 -3
  157. package/dist/functions/helpers/calculate-price-from-bucket.js +1 -2
  158. package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
  159. package/dist/functions/helpers/check-if-render-exists.js +14 -0
  160. package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
  161. package/dist/functions/helpers/clean-tmpdir.js +8 -8
  162. package/dist/functions/helpers/concat-videos.d.ts +13 -5
  163. package/dist/functions/helpers/concat-videos.js +38 -39
  164. package/dist/functions/helpers/create-post-render-data.d.ts +0 -0
  165. package/dist/functions/helpers/create-post-render-data.js +1 -15
  166. package/dist/functions/helpers/delete-chunks.d.ts +0 -0
  167. package/dist/functions/helpers/delete-chunks.js +0 -0
  168. package/dist/functions/helpers/expected-out-name.d.ts +4 -2
  169. package/dist/functions/helpers/expected-out-name.js +27 -6
  170. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +3 -1
  171. package/dist/functions/helpers/find-output-file-in-bucket.js +17 -9
  172. package/dist/functions/helpers/format-costs-info.d.ts +0 -0
  173. package/dist/functions/helpers/format-costs-info.js +0 -0
  174. package/dist/functions/helpers/get-browser-instance.d.ts +0 -0
  175. package/dist/functions/helpers/get-browser-instance.js +3 -2
  176. package/dist/functions/helpers/get-chromium-executable-path.d.ts +1 -1
  177. package/dist/functions/helpers/get-chromium-executable-path.js +8 -6
  178. package/dist/functions/helpers/get-cleanup-progress.d.ts +0 -0
  179. package/dist/functions/helpers/get-cleanup-progress.js +0 -0
  180. package/dist/functions/helpers/get-current-architecture.d.ts +0 -0
  181. package/dist/functions/helpers/get-current-architecture.js +0 -0
  182. package/dist/functions/helpers/get-current-region.d.ts +1 -1
  183. package/dist/functions/helpers/get-current-region.js +0 -0
  184. package/dist/functions/helpers/get-custom-out-name.d.ts +6 -0
  185. package/dist/functions/helpers/get-custom-out-name.js +31 -0
  186. package/dist/functions/helpers/get-encoding-metadata.d.ts +5 -8
  187. package/dist/functions/helpers/get-encoding-metadata.js +7 -17
  188. package/dist/functions/helpers/get-files-in-folder.d.ts +0 -0
  189. package/dist/functions/helpers/get-files-in-folder.js +5 -5
  190. package/dist/functions/helpers/get-files-to-delete.d.ts +0 -0
  191. package/dist/functions/helpers/get-files-to-delete.js +1 -1
  192. package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -4
  193. package/dist/functions/helpers/get-final-encoding-status.js +1 -4
  194. package/dist/functions/helpers/get-folder-size.d.ts +0 -0
  195. package/dist/functions/helpers/get-folder-size.js +0 -0
  196. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +1 -5
  197. package/dist/functions/helpers/get-lambdas-invoked-stats.js +2 -10
  198. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +2 -1
  199. package/dist/functions/helpers/get-output-url-from-metadata.js +2 -2
  200. package/dist/functions/helpers/get-overall-progress.d.ts +2 -1
  201. package/dist/functions/helpers/get-overall-progress.js +7 -5
  202. package/dist/functions/helpers/get-post-render-data.d.ts +0 -0
  203. package/dist/functions/helpers/get-post-render-data.js +0 -0
  204. package/dist/functions/helpers/get-progress.d.ts +4 -2
  205. package/dist/functions/helpers/get-progress.js +54 -46
  206. package/dist/functions/helpers/get-render-metadata.d.ts +0 -0
  207. package/dist/functions/helpers/get-render-metadata.js +0 -0
  208. package/dist/functions/helpers/get-rendered-frames-progress.d.ts +8 -0
  209. package/dist/functions/helpers/get-rendered-frames-progress.js +37 -0
  210. package/dist/functions/helpers/get-retry-stats.d.ts +0 -0
  211. package/dist/functions/helpers/get-retry-stats.js +1 -1
  212. package/dist/functions/helpers/get-time-to-finish.d.ts +0 -0
  213. package/dist/functions/helpers/get-time-to-finish.js +0 -0
  214. package/dist/functions/helpers/inspect-errors.d.ts +0 -0
  215. package/dist/functions/helpers/inspect-errors.js +0 -0
  216. package/dist/functions/helpers/io.d.ts +24 -2
  217. package/dist/functions/helpers/io.js +44 -7
  218. package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
  219. package/dist/functions/helpers/is-enosp-err.js +1 -1
  220. package/dist/functions/helpers/is-warm.d.ts +0 -0
  221. package/dist/functions/helpers/is-warm.js +0 -0
  222. package/dist/functions/helpers/make-timeout-error.d.ts +8 -0
  223. package/dist/functions/helpers/make-timeout-error.js +35 -0
  224. package/dist/functions/helpers/make-timeout-message.d.ts +6 -0
  225. package/dist/functions/helpers/make-timeout-message.js +31 -0
  226. package/dist/functions/helpers/min-max.d.ts +0 -0
  227. package/dist/functions/helpers/min-max.js +0 -0
  228. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +0 -0
  229. package/dist/functions/helpers/print-cloudwatch-helper.js +0 -0
  230. package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -0
  231. package/dist/functions/helpers/print-concurrency-curve.js +0 -0
  232. package/dist/functions/helpers/read-with-progress.d.ts +3 -1
  233. package/dist/functions/helpers/read-with-progress.js +3 -3
  234. package/dist/functions/helpers/streamify-response.d.ts +16 -0
  235. package/dist/functions/helpers/streamify-response.js +67 -0
  236. package/dist/functions/helpers/timer.d.ts +0 -0
  237. package/dist/functions/helpers/timer.js +0 -0
  238. package/dist/functions/helpers/validate-composition.d.ts +7 -6
  239. package/dist/functions/helpers/validate-composition.js +13 -12
  240. package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
  241. package/dist/functions/helpers/write-lambda-error.js +1 -0
  242. package/dist/functions/helpers/write-post-render-data.d.ts +0 -0
  243. package/dist/functions/helpers/write-post-render-data.js +1 -0
  244. package/dist/functions/index.d.ts +1 -7
  245. package/dist/functions/index.js +45 -12
  246. package/dist/functions/info.d.ts +2 -2
  247. package/dist/functions/info.js +2 -1
  248. package/dist/functions/launch.d.ts +1 -0
  249. package/dist/functions/launch.js +348 -135
  250. package/dist/functions/progress.d.ts +1 -1
  251. package/dist/functions/progress.js +10 -1
  252. package/dist/functions/renderer.d.ts +0 -0
  253. package/dist/functions/renderer.js +143 -83
  254. package/dist/functions/start.d.ts +5 -1
  255. package/dist/functions/start.js +42 -6
  256. package/dist/functions/still.d.ts +0 -0
  257. package/dist/functions/still.js +75 -33
  258. package/dist/index.d.ts +28 -8
  259. package/dist/index.js +27 -6
  260. package/dist/internals.d.ts +3 -1
  261. package/dist/internals.js +3 -0
  262. package/dist/pricing/aws-regions.d.ts +2 -1
  263. package/dist/pricing/aws-regions.js +31 -1
  264. package/dist/pricing/price-per-1-s.d.ts +0 -0
  265. package/dist/pricing/price-per-1-s.js +413 -39
  266. package/dist/regions.d.ts +0 -0
  267. package/dist/regions.js +0 -0
  268. package/dist/shared/await.d.ts +0 -0
  269. package/dist/shared/await.js +0 -0
  270. package/dist/shared/aws-clients.d.ts +16 -2
  271. package/dist/shared/aws-clients.js +118 -26
  272. package/dist/shared/bundle-site.d.ts +2 -1
  273. package/dist/shared/bundle-site.js +0 -0
  274. package/dist/shared/call-lambda.d.ts +0 -0
  275. package/dist/shared/call-lambda.js +27 -2
  276. package/dist/shared/check-credentials.d.ts +0 -0
  277. package/dist/shared/check-credentials.js +3 -0
  278. package/dist/shared/chunk-progress.d.ts +9 -0
  279. package/dist/shared/chunk-progress.js +2034 -0
  280. package/dist/shared/cleanup-serialized-input-props.d.ts +7 -0
  281. package/dist/shared/cleanup-serialized-input-props.js +19 -0
  282. package/dist/shared/constants.d.ts +147 -71
  283. package/dist/shared/constants.js +20 -10
  284. package/dist/shared/content-disposition-header.d.ts +0 -0
  285. package/dist/shared/content-disposition-header.js +0 -0
  286. package/dist/shared/convert-to-serve-url.d.ts +5 -1
  287. package/dist/shared/convert-to-serve-url.js +1 -5
  288. package/dist/shared/deserialize-input-props.d.ts +8 -0
  289. package/dist/shared/deserialize-input-props.js +26 -0
  290. package/dist/shared/docs-url.d.ts +0 -0
  291. package/dist/shared/docs-url.js +0 -0
  292. package/dist/shared/function-zip-path.d.ts +1 -1
  293. package/dist/shared/function-zip-path.js +3 -3
  294. package/dist/shared/get-account-id.d.ts +0 -0
  295. package/dist/shared/get-account-id.js +4 -6
  296. package/dist/shared/get-aws-urls.d.ts +14 -0
  297. package/dist/shared/get-aws-urls.js +12 -0
  298. package/dist/shared/get-etag.d.ts +1 -0
  299. package/dist/shared/get-etag.js +24 -0
  300. package/dist/shared/get-function-version.d.ts +1 -2
  301. package/dist/shared/get-function-version.js +0 -0
  302. package/dist/shared/get-most-expensive-chunks.d.ts +1 -1
  303. package/dist/shared/get-most-expensive-chunks.js +3 -2
  304. package/dist/shared/get-s3-operations.d.ts +10 -0
  305. package/dist/shared/get-s3-operations.js +36 -0
  306. package/dist/shared/hosted-layers.d.ts +4 -7
  307. package/dist/shared/hosted-layers.js +210 -284
  308. package/dist/shared/invoke-webhook.d.ts +46 -0
  309. package/dist/shared/invoke-webhook.js +89 -0
  310. package/dist/shared/is-in-lambda.d.ts +0 -0
  311. package/dist/shared/is-in-lambda.js +5 -1
  312. package/dist/shared/lambda-version-string.d.ts +1 -0
  313. package/dist/shared/lambda-version-string.js +7 -0
  314. package/dist/shared/make-s3-key.d.ts +0 -0
  315. package/dist/shared/make-s3-key.js +2 -2
  316. package/dist/shared/make-s3-url.d.ts +0 -0
  317. package/dist/shared/make-s3-url.js +2 -2
  318. package/dist/shared/p-limit.d.ts +0 -0
  319. package/dist/shared/p-limit.js +0 -0
  320. package/dist/shared/parse-chunk-key.d.ts +4 -0
  321. package/dist/shared/parse-chunk-key.js +14 -0
  322. package/dist/shared/parse-lambda-initialized-key.d.ts +0 -0
  323. package/dist/shared/parse-lambda-initialized-key.js +0 -0
  324. package/dist/shared/parse-lambda-timings-key.d.ts +0 -0
  325. package/dist/shared/parse-lambda-timings-key.js +0 -0
  326. package/dist/shared/random-hash.d.ts +0 -0
  327. package/dist/shared/random-hash.js +0 -0
  328. package/dist/shared/read-dir.d.ts +9 -0
  329. package/dist/shared/read-dir.js +57 -0
  330. package/dist/shared/return-values.d.ts +7 -0
  331. package/dist/shared/return-values.js +0 -0
  332. package/dist/shared/serialize-input-props.d.ts +8 -0
  333. package/dist/shared/serialize-input-props.js +42 -0
  334. package/dist/shared/sleep.d.ts +0 -0
  335. package/dist/shared/sleep.js +0 -0
  336. package/dist/shared/stream-to-string.d.ts +0 -0
  337. package/dist/shared/stream-to-string.js +0 -0
  338. package/dist/shared/truthy.d.ts +0 -0
  339. package/dist/shared/truthy.js +0 -0
  340. package/dist/shared/validate-architecture.d.ts +0 -0
  341. package/dist/shared/validate-architecture.js +0 -0
  342. package/dist/shared/validate-aws-region.d.ts +0 -0
  343. package/dist/shared/validate-aws-region.js +0 -0
  344. package/dist/shared/validate-bucketname.d.ts +5 -0
  345. package/dist/shared/validate-bucketname.js +19 -1
  346. package/dist/shared/validate-custom-role-arn.d.ts +0 -0
  347. package/dist/shared/validate-custom-role-arn.js +0 -0
  348. package/dist/shared/validate-disk-size-in-mb.d.ts +0 -0
  349. package/dist/shared/validate-disk-size-in-mb.js +0 -0
  350. package/dist/shared/validate-download-behavior.d.ts +0 -0
  351. package/dist/shared/validate-download-behavior.js +0 -0
  352. package/dist/shared/validate-frames-per-lambda.d.ts +4 -1
  353. package/dist/shared/validate-frames-per-lambda.js +4 -3
  354. package/dist/shared/validate-lambda-codec.d.ts +1 -1
  355. package/dist/shared/validate-lambda-codec.js +1 -1
  356. package/dist/shared/validate-memory-size.d.ts +0 -0
  357. package/dist/shared/validate-memory-size.js +0 -0
  358. package/dist/shared/validate-outname.d.ts +3 -2
  359. package/dist/shared/validate-outname.js +13 -3
  360. package/dist/shared/validate-presign-expiration.d.ts +0 -0
  361. package/dist/shared/validate-presign-expiration.js +0 -0
  362. package/dist/shared/validate-privacy.d.ts +1 -1
  363. package/dist/shared/validate-privacy.js +5 -2
  364. package/dist/shared/validate-retention-period.d.ts +0 -0
  365. package/dist/shared/validate-retention-period.js +0 -0
  366. package/dist/shared/validate-retries.d.ts +0 -0
  367. package/dist/shared/validate-retries.js +0 -0
  368. package/dist/shared/validate-serveurl.d.ts +0 -0
  369. package/dist/shared/validate-serveurl.js +0 -0
  370. package/dist/shared/validate-site-name.d.ts +0 -0
  371. package/dist/shared/validate-site-name.js +0 -0
  372. package/dist/shared/validate-timeout.d.ts +0 -0
  373. package/dist/shared/validate-timeout.js +0 -0
  374. package/package.json +89 -65
  375. package/remotionlambda-arm64.zip +0 -0
  376. package/.prettierrc.js +0 -14
  377. package/client.d.ts +0 -1
  378. package/client.js +0 -1
  379. package/dist/admin/bundle-lambda.d.ts.map +0 -1
  380. package/dist/admin/bundle-lambda.js.map +0 -1
  381. package/dist/admin/make-layer-public.d.ts.map +0 -1
  382. package/dist/admin/make-layer-public.js.map +0 -1
  383. package/dist/api/bucket-exists.d.ts.map +0 -1
  384. package/dist/api/bucket-exists.js.map +0 -1
  385. package/dist/api/clean-items.d.ts.map +0 -1
  386. package/dist/api/clean-items.js.map +0 -1
  387. package/dist/api/create-bucket.d.ts.map +0 -1
  388. package/dist/api/create-bucket.js.map +0 -1
  389. package/dist/api/create-function.d.ts.map +0 -1
  390. package/dist/api/create-function.js.map +0 -1
  391. package/dist/api/delete-function.d.ts.map +0 -1
  392. package/dist/api/delete-function.js.map +0 -1
  393. package/dist/api/delete-site.d.ts.map +0 -1
  394. package/dist/api/delete-site.js.map +0 -1
  395. package/dist/api/deploy-function.d.ts.map +0 -1
  396. package/dist/api/deploy-function.js.map +0 -1
  397. package/dist/api/deploy-site.d.ts.map +0 -1
  398. package/dist/api/deploy-site.js.map +0 -1
  399. package/dist/api/download-media.d.ts.map +0 -1
  400. package/dist/api/download-media.js.map +0 -1
  401. package/dist/api/enable-s3-website.d.ts +0 -5
  402. package/dist/api/enable-s3-website.d.ts.map +0 -1
  403. package/dist/api/enable-s3-website.js +0 -16
  404. package/dist/api/enable-s3-website.js.map +0 -1
  405. package/dist/api/estimate-price.d.ts.map +0 -1
  406. package/dist/api/estimate-price.js.map +0 -1
  407. package/dist/api/get-aws-client.d.ts.map +0 -1
  408. package/dist/api/get-aws-client.js.map +0 -1
  409. package/dist/api/get-buckets.d.ts.map +0 -1
  410. package/dist/api/get-buckets.js.map +0 -1
  411. package/dist/api/get-function-info.d.ts.map +0 -1
  412. package/dist/api/get-function-info.js.map +0 -1
  413. package/dist/api/get-functions.d.ts.map +0 -1
  414. package/dist/api/get-functions.js.map +0 -1
  415. package/dist/api/get-or-create-bucket.d.ts.map +0 -1
  416. package/dist/api/get-or-create-bucket.js.map +0 -1
  417. package/dist/api/get-regions.d.ts.map +0 -1
  418. package/dist/api/get-regions.js.map +0 -1
  419. package/dist/api/get-render-progress.d.ts.map +0 -1
  420. package/dist/api/get-render-progress.js.map +0 -1
  421. package/dist/api/get-sites.d.ts.map +0 -1
  422. package/dist/api/get-sites.js.map +0 -1
  423. package/dist/api/iam-validation/role-permissions.d.ts.map +0 -1
  424. package/dist/api/iam-validation/role-permissions.js.map +0 -1
  425. package/dist/api/iam-validation/simulate-rule.d.ts.map +0 -1
  426. package/dist/api/iam-validation/simulate-rule.js.map +0 -1
  427. package/dist/api/iam-validation/simulate.d.ts.map +0 -1
  428. package/dist/api/iam-validation/simulate.js.map +0 -1
  429. package/dist/api/iam-validation/suggested-policy.d.ts.map +0 -1
  430. package/dist/api/iam-validation/suggested-policy.js.map +0 -1
  431. package/dist/api/iam-validation/user-permissions.d.ts.map +0 -1
  432. package/dist/api/iam-validation/user-permissions.js.map +0 -1
  433. package/dist/api/mock-functions.d.ts.map +0 -1
  434. package/dist/api/mock-functions.js.map +0 -1
  435. package/dist/api/presign-url.d.ts.map +0 -1
  436. package/dist/api/presign-url.js.map +0 -1
  437. package/dist/api/render-media-on-lambda.d.ts.map +0 -1
  438. package/dist/api/render-media-on-lambda.js.map +0 -1
  439. package/dist/api/render-still-on-lambda.d.ts.map +0 -1
  440. package/dist/api/render-still-on-lambda.js.map +0 -1
  441. package/dist/api/upload-dir.d.ts.map +0 -1
  442. package/dist/api/upload-dir.js.map +0 -1
  443. package/dist/cli/args.d.ts.map +0 -1
  444. package/dist/cli/args.js.map +0 -1
  445. package/dist/cli/commands/functions/deploy.d.ts.map +0 -1
  446. package/dist/cli/commands/functions/deploy.js.map +0 -1
  447. package/dist/cli/commands/functions/index.d.ts.map +0 -1
  448. package/dist/cli/commands/functions/index.js.map +0 -1
  449. package/dist/cli/commands/functions/ls.d.ts.map +0 -1
  450. package/dist/cli/commands/functions/ls.js.map +0 -1
  451. package/dist/cli/commands/functions/rm.d.ts.map +0 -1
  452. package/dist/cli/commands/functions/rm.js.map +0 -1
  453. package/dist/cli/commands/functions/rmall.d.ts.map +0 -1
  454. package/dist/cli/commands/functions/rmall.js.map +0 -1
  455. package/dist/cli/commands/policies/policies.d.ts.map +0 -1
  456. package/dist/cli/commands/policies/policies.js.map +0 -1
  457. package/dist/cli/commands/policies/role.d.ts.map +0 -1
  458. package/dist/cli/commands/policies/role.js.map +0 -1
  459. package/dist/cli/commands/policies/user.d.ts.map +0 -1
  460. package/dist/cli/commands/policies/user.js.map +0 -1
  461. package/dist/cli/commands/policies/validate.d.ts.map +0 -1
  462. package/dist/cli/commands/policies/validate.js.map +0 -1
  463. package/dist/cli/commands/quotas/increase.d.ts.map +0 -1
  464. package/dist/cli/commands/quotas/increase.js.map +0 -1
  465. package/dist/cli/commands/quotas/index.d.ts.map +0 -1
  466. package/dist/cli/commands/quotas/index.js.map +0 -1
  467. package/dist/cli/commands/quotas/list.d.ts.map +0 -1
  468. package/dist/cli/commands/quotas/list.js.map +0 -1
  469. package/dist/cli/commands/regions.d.ts.map +0 -1
  470. package/dist/cli/commands/regions.js.map +0 -1
  471. package/dist/cli/commands/render/progress.d.ts.map +0 -1
  472. package/dist/cli/commands/render/progress.js.map +0 -1
  473. package/dist/cli/commands/render/render.d.ts.map +0 -1
  474. package/dist/cli/commands/render/render.js.map +0 -1
  475. package/dist/cli/commands/sites/create.d.ts.map +0 -1
  476. package/dist/cli/commands/sites/create.js.map +0 -1
  477. package/dist/cli/commands/sites/index.d.ts.map +0 -1
  478. package/dist/cli/commands/sites/index.js.map +0 -1
  479. package/dist/cli/commands/sites/ls.d.ts.map +0 -1
  480. package/dist/cli/commands/sites/ls.js.map +0 -1
  481. package/dist/cli/commands/sites/rm.d.ts.map +0 -1
  482. package/dist/cli/commands/sites/rm.js.map +0 -1
  483. package/dist/cli/commands/sites/rmall.d.ts.map +0 -1
  484. package/dist/cli/commands/sites/rmall.js.map +0 -1
  485. package/dist/cli/commands/still.d.ts.map +0 -1
  486. package/dist/cli/commands/still.js.map +0 -1
  487. package/dist/cli/get-aws-region.d.ts.map +0 -1
  488. package/dist/cli/get-aws-region.js.map +0 -1
  489. package/dist/cli/help.d.ts.map +0 -1
  490. package/dist/cli/help.js.map +0 -1
  491. package/dist/cli/helpers/confirm.d.ts.map +0 -1
  492. package/dist/cli/helpers/confirm.js.map +0 -1
  493. package/dist/cli/helpers/date-string.d.ts.map +0 -1
  494. package/dist/cli/helpers/date-string.js.map +0 -1
  495. package/dist/cli/helpers/find-function-name.d.ts.map +0 -1
  496. package/dist/cli/helpers/find-function-name.js.map +0 -1
  497. package/dist/cli/helpers/format-bytes.d.ts +0 -7
  498. package/dist/cli/helpers/format-bytes.d.ts.map +0 -1
  499. package/dist/cli/helpers/format-bytes.js +0 -104
  500. package/dist/cli/helpers/format-bytes.js.map +0 -1
  501. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +0 -8
  502. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts.map +0 -1
  503. package/dist/cli/helpers/get-cloudwatch-stream-url.js +0 -7
  504. package/dist/cli/helpers/get-cloudwatch-stream-url.js.map +0 -1
  505. package/dist/cli/helpers/progress-bar.d.ts.map +0 -1
  506. package/dist/cli/helpers/progress-bar.js.map +0 -1
  507. package/dist/cli/helpers/quit.d.ts.map +0 -1
  508. package/dist/cli/helpers/quit.js.map +0 -1
  509. package/dist/cli/helpers/yes-or-no.d.ts.map +0 -1
  510. package/dist/cli/helpers/yes-or-no.js.map +0 -1
  511. package/dist/cli/index.d.ts.map +0 -1
  512. package/dist/cli/index.js.map +0 -1
  513. package/dist/cli/is-cli.d.ts.map +0 -1
  514. package/dist/cli/is-cli.js.map +0 -1
  515. package/dist/cli/log.d.ts.map +0 -1
  516. package/dist/cli/log.js.map +0 -1
  517. package/dist/client.d.ts.map +0 -1
  518. package/dist/client.js.map +0 -1
  519. package/dist/defaults.d.ts.map +0 -1
  520. package/dist/defaults.js.map +0 -1
  521. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +0 -6
  522. package/dist/functions/chunk-optimization/can-use-optimization.d.ts.map +0 -1
  523. package/dist/functions/chunk-optimization/can-use-optimization.js +0 -23
  524. package/dist/functions/chunk-optimization/can-use-optimization.js.map +0 -1
  525. package/dist/functions/chunk-optimization/collect-data.d.ts +0 -9
  526. package/dist/functions/chunk-optimization/collect-data.d.ts.map +0 -1
  527. package/dist/functions/chunk-optimization/collect-data.js +0 -27
  528. package/dist/functions/chunk-optimization/collect-data.js.map +0 -1
  529. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +0 -3
  530. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts.map +0 -1
  531. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -11
  532. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js.map +0 -1
  533. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +0 -3
  534. package/dist/functions/chunk-optimization/get-profile-duration.d.ts.map +0 -1
  535. package/dist/functions/chunk-optimization/get-profile-duration.js +0 -18
  536. package/dist/functions/chunk-optimization/get-profile-duration.js.map +0 -1
  537. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +0 -2
  538. package/dist/functions/chunk-optimization/is-valid-profile.d.ts.map +0 -1
  539. package/dist/functions/chunk-optimization/is-valid-profile.js +0 -12
  540. package/dist/functions/chunk-optimization/is-valid-profile.js.map +0 -1
  541. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +0 -2
  542. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts.map +0 -1
  543. package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -19
  544. package/dist/functions/chunk-optimization/optimize-invocation-order.js.map +0 -1
  545. package/dist/functions/chunk-optimization/optimize-profile.d.ts +0 -9
  546. package/dist/functions/chunk-optimization/optimize-profile.d.ts.map +0 -1
  547. package/dist/functions/chunk-optimization/optimize-profile.js +0 -74
  548. package/dist/functions/chunk-optimization/optimize-profile.js.map +0 -1
  549. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts.map +0 -1
  550. package/dist/functions/chunk-optimization/plan-frame-ranges.js.map +0 -1
  551. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +0 -17
  552. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts.map +0 -1
  553. package/dist/functions/chunk-optimization/s3-optimization-file.js +0 -46
  554. package/dist/functions/chunk-optimization/s3-optimization-file.js.map +0 -1
  555. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -7
  556. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts.map +0 -1
  557. package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -47
  558. package/dist/functions/chunk-optimization/simulate-frame-ranges.js.map +0 -1
  559. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +0 -2
  560. package/dist/functions/chunk-optimization/sort-by-duration.d.ts.map +0 -1
  561. package/dist/functions/chunk-optimization/sort-by-duration.js +0 -25
  562. package/dist/functions/chunk-optimization/sort-by-duration.js.map +0 -1
  563. package/dist/functions/chunk-optimization/types.d.ts.map +0 -1
  564. package/dist/functions/chunk-optimization/types.js.map +0 -1
  565. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts.map +0 -1
  566. package/dist/functions/helpers/best-frames-per-lambda-param.js.map +0 -1
  567. package/dist/functions/helpers/calculate-chunk-times.d.ts.map +0 -1
  568. package/dist/functions/helpers/calculate-chunk-times.js.map +0 -1
  569. package/dist/functions/helpers/calculate-price-from-bucket.d.ts.map +0 -1
  570. package/dist/functions/helpers/calculate-price-from-bucket.js.map +0 -1
  571. package/dist/functions/helpers/clean-tmpdir.d.ts.map +0 -1
  572. package/dist/functions/helpers/clean-tmpdir.js.map +0 -1
  573. package/dist/functions/helpers/concat-videos.d.ts.map +0 -1
  574. package/dist/functions/helpers/concat-videos.js.map +0 -1
  575. package/dist/functions/helpers/create-post-render-data.d.ts.map +0 -1
  576. package/dist/functions/helpers/create-post-render-data.js.map +0 -1
  577. package/dist/functions/helpers/delete-chunks.d.ts.map +0 -1
  578. package/dist/functions/helpers/delete-chunks.js.map +0 -1
  579. package/dist/functions/helpers/expected-out-name.d.ts.map +0 -1
  580. package/dist/functions/helpers/expected-out-name.js.map +0 -1
  581. package/dist/functions/helpers/find-output-file-in-bucket.d.ts.map +0 -1
  582. package/dist/functions/helpers/find-output-file-in-bucket.js.map +0 -1
  583. package/dist/functions/helpers/format-costs-info.d.ts.map +0 -1
  584. package/dist/functions/helpers/format-costs-info.js.map +0 -1
  585. package/dist/functions/helpers/get-browser-instance.d.ts.map +0 -1
  586. package/dist/functions/helpers/get-browser-instance.js.map +0 -1
  587. package/dist/functions/helpers/get-chromium-executable-path.d.ts.map +0 -1
  588. package/dist/functions/helpers/get-chromium-executable-path.js.map +0 -1
  589. package/dist/functions/helpers/get-cleanup-progress.d.ts.map +0 -1
  590. package/dist/functions/helpers/get-cleanup-progress.js.map +0 -1
  591. package/dist/functions/helpers/get-current-architecture.d.ts.map +0 -1
  592. package/dist/functions/helpers/get-current-architecture.js.map +0 -1
  593. package/dist/functions/helpers/get-current-region.d.ts.map +0 -1
  594. package/dist/functions/helpers/get-current-region.js.map +0 -1
  595. package/dist/functions/helpers/get-encoding-metadata.d.ts.map +0 -1
  596. package/dist/functions/helpers/get-encoding-metadata.js.map +0 -1
  597. package/dist/functions/helpers/get-files-in-folder.d.ts.map +0 -1
  598. package/dist/functions/helpers/get-files-in-folder.js.map +0 -1
  599. package/dist/functions/helpers/get-files-to-delete.d.ts.map +0 -1
  600. package/dist/functions/helpers/get-files-to-delete.js.map +0 -1
  601. package/dist/functions/helpers/get-final-encoding-status.d.ts.map +0 -1
  602. package/dist/functions/helpers/get-final-encoding-status.js.map +0 -1
  603. package/dist/functions/helpers/get-folder-size.d.ts.map +0 -1
  604. package/dist/functions/helpers/get-folder-size.js.map +0 -1
  605. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts.map +0 -1
  606. package/dist/functions/helpers/get-lambdas-invoked-stats.js.map +0 -1
  607. package/dist/functions/helpers/get-output-url-from-metadata.d.ts.map +0 -1
  608. package/dist/functions/helpers/get-output-url-from-metadata.js.map +0 -1
  609. package/dist/functions/helpers/get-overall-progress.d.ts.map +0 -1
  610. package/dist/functions/helpers/get-overall-progress.js.map +0 -1
  611. package/dist/functions/helpers/get-post-render-data.d.ts.map +0 -1
  612. package/dist/functions/helpers/get-post-render-data.js.map +0 -1
  613. package/dist/functions/helpers/get-progress.d.ts.map +0 -1
  614. package/dist/functions/helpers/get-progress.js.map +0 -1
  615. package/dist/functions/helpers/get-render-metadata.d.ts.map +0 -1
  616. package/dist/functions/helpers/get-render-metadata.js.map +0 -1
  617. package/dist/functions/helpers/get-retry-stats.d.ts.map +0 -1
  618. package/dist/functions/helpers/get-retry-stats.js.map +0 -1
  619. package/dist/functions/helpers/get-time-to-finish.d.ts.map +0 -1
  620. package/dist/functions/helpers/get-time-to-finish.js.map +0 -1
  621. package/dist/functions/helpers/inspect-errors.d.ts.map +0 -1
  622. package/dist/functions/helpers/inspect-errors.js.map +0 -1
  623. package/dist/functions/helpers/io.d.ts.map +0 -1
  624. package/dist/functions/helpers/io.js.map +0 -1
  625. package/dist/functions/helpers/is-enosp-err.d.ts.map +0 -1
  626. package/dist/functions/helpers/is-enosp-err.js.map +0 -1
  627. package/dist/functions/helpers/is-warm.d.ts.map +0 -1
  628. package/dist/functions/helpers/is-warm.js.map +0 -1
  629. package/dist/functions/helpers/min-max.d.ts.map +0 -1
  630. package/dist/functions/helpers/min-max.js.map +0 -1
  631. package/dist/functions/helpers/print-cloudwatch-helper.d.ts.map +0 -1
  632. package/dist/functions/helpers/print-cloudwatch-helper.js.map +0 -1
  633. package/dist/functions/helpers/print-concurrency-curve.d.ts.map +0 -1
  634. package/dist/functions/helpers/print-concurrency-curve.js.map +0 -1
  635. package/dist/functions/helpers/read-with-progress.d.ts.map +0 -1
  636. package/dist/functions/helpers/read-with-progress.js.map +0 -1
  637. package/dist/functions/helpers/timer.d.ts.map +0 -1
  638. package/dist/functions/helpers/timer.js.map +0 -1
  639. package/dist/functions/helpers/validate-composition.d.ts.map +0 -1
  640. package/dist/functions/helpers/validate-composition.js.map +0 -1
  641. package/dist/functions/helpers/write-lambda-error.d.ts.map +0 -1
  642. package/dist/functions/helpers/write-lambda-error.js.map +0 -1
  643. package/dist/functions/helpers/write-post-render-data.d.ts.map +0 -1
  644. package/dist/functions/helpers/write-post-render-data.js.map +0 -1
  645. package/dist/functions/index.d.ts.map +0 -1
  646. package/dist/functions/index.js.map +0 -1
  647. package/dist/functions/info.d.ts.map +0 -1
  648. package/dist/functions/info.js.map +0 -1
  649. package/dist/functions/launch.d.ts.map +0 -1
  650. package/dist/functions/launch.js.map +0 -1
  651. package/dist/functions/progress.d.ts.map +0 -1
  652. package/dist/functions/progress.js.map +0 -1
  653. package/dist/functions/renderer.d.ts.map +0 -1
  654. package/dist/functions/renderer.js.map +0 -1
  655. package/dist/functions/start.d.ts.map +0 -1
  656. package/dist/functions/start.js.map +0 -1
  657. package/dist/functions/still.d.ts.map +0 -1
  658. package/dist/functions/still.js.map +0 -1
  659. package/dist/index.d.ts.map +0 -1
  660. package/dist/index.js.map +0 -1
  661. package/dist/internals.d.ts.map +0 -1
  662. package/dist/internals.js.map +0 -1
  663. package/dist/pricing/aws-regions.d.ts.map +0 -1
  664. package/dist/pricing/aws-regions.js.map +0 -1
  665. package/dist/pricing/price-per-1-s.d.ts.map +0 -1
  666. package/dist/pricing/price-per-1-s.js.map +0 -1
  667. package/dist/regions.d.ts.map +0 -1
  668. package/dist/regions.js.map +0 -1
  669. package/dist/shared/await.d.ts.map +0 -1
  670. package/dist/shared/await.js.map +0 -1
  671. package/dist/shared/aws-clients.d.ts.map +0 -1
  672. package/dist/shared/aws-clients.js.map +0 -1
  673. package/dist/shared/bundle-site.d.ts.map +0 -1
  674. package/dist/shared/bundle-site.js.map +0 -1
  675. package/dist/shared/call-lambda.d.ts.map +0 -1
  676. package/dist/shared/call-lambda.js.map +0 -1
  677. package/dist/shared/check-credentials.d.ts.map +0 -1
  678. package/dist/shared/check-credentials.js.map +0 -1
  679. package/dist/shared/chunk.d.ts +0 -2
  680. package/dist/shared/chunk.d.ts.map +0 -1
  681. package/dist/shared/chunk.js +0 -12
  682. package/dist/shared/chunk.js.map +0 -1
  683. package/dist/shared/constants.d.ts.map +0 -1
  684. package/dist/shared/constants.js.map +0 -1
  685. package/dist/shared/convert-to-serve-url.d.ts.map +0 -1
  686. package/dist/shared/convert-to-serve-url.js.map +0 -1
  687. package/dist/shared/docs-url.d.ts.map +0 -1
  688. package/dist/shared/docs-url.js.map +0 -1
  689. package/dist/shared/function-zip-path.d.ts.map +0 -1
  690. package/dist/shared/function-zip-path.js.map +0 -1
  691. package/dist/shared/get-account-id.d.ts.map +0 -1
  692. package/dist/shared/get-account-id.js.map +0 -1
  693. package/dist/shared/get-function-version.d.ts.map +0 -1
  694. package/dist/shared/get-function-version.js.map +0 -1
  695. package/dist/shared/hosted-layers.d.ts.map +0 -1
  696. package/dist/shared/hosted-layers.js.map +0 -1
  697. package/dist/shared/is-in-lambda.d.ts.map +0 -1
  698. package/dist/shared/is-in-lambda.js.map +0 -1
  699. package/dist/shared/make-s3-url.d.ts.map +0 -1
  700. package/dist/shared/make-s3-url.js.map +0 -1
  701. package/dist/shared/parse-lambda-initialized-key.d.ts.map +0 -1
  702. package/dist/shared/parse-lambda-initialized-key.js.map +0 -1
  703. package/dist/shared/parse-lambda-timings-key.d.ts.map +0 -1
  704. package/dist/shared/parse-lambda-timings-key.js.map +0 -1
  705. package/dist/shared/random-hash.d.ts.map +0 -1
  706. package/dist/shared/random-hash.js.map +0 -1
  707. package/dist/shared/return-values.d.ts.map +0 -1
  708. package/dist/shared/return-values.js.map +0 -1
  709. package/dist/shared/sleep.d.ts.map +0 -1
  710. package/dist/shared/sleep.js.map +0 -1
  711. package/dist/shared/stream-to-string.d.ts.map +0 -1
  712. package/dist/shared/stream-to-string.js.map +0 -1
  713. package/dist/shared/validate-architecture.d.ts.map +0 -1
  714. package/dist/shared/validate-architecture.js.map +0 -1
  715. package/dist/shared/validate-aws-region.d.ts.map +0 -1
  716. package/dist/shared/validate-aws-region.js.map +0 -1
  717. package/dist/shared/validate-bucketname.d.ts.map +0 -1
  718. package/dist/shared/validate-bucketname.js.map +0 -1
  719. package/dist/shared/validate-disk-size-in-mb.d.ts.map +0 -1
  720. package/dist/shared/validate-disk-size-in-mb.js.map +0 -1
  721. package/dist/shared/validate-frames-per-lambda.d.ts.map +0 -1
  722. package/dist/shared/validate-frames-per-lambda.js.map +0 -1
  723. package/dist/shared/validate-memory-size.d.ts.map +0 -1
  724. package/dist/shared/validate-memory-size.js.map +0 -1
  725. package/dist/shared/validate-outname.d.ts.map +0 -1
  726. package/dist/shared/validate-outname.js.map +0 -1
  727. package/dist/shared/validate-presign-expiration.d.ts.map +0 -1
  728. package/dist/shared/validate-presign-expiration.js.map +0 -1
  729. package/dist/shared/validate-privacy.d.ts.map +0 -1
  730. package/dist/shared/validate-privacy.js.map +0 -1
  731. package/dist/shared/validate-retention-period.d.ts.map +0 -1
  732. package/dist/shared/validate-retention-period.js.map +0 -1
  733. package/dist/shared/validate-retries.d.ts.map +0 -1
  734. package/dist/shared/validate-retries.js.map +0 -1
  735. package/dist/shared/validate-serveurl.d.ts.map +0 -1
  736. package/dist/shared/validate-serveurl.js.map +0 -1
  737. package/dist/shared/validate-site-name.d.ts.map +0 -1
  738. package/dist/shared/validate-site-name.js.map +0 -1
  739. package/dist/shared/validate-timeout.d.ts.map +0 -1
  740. package/dist/shared/validate-timeout.js.map +0 -1
  741. package/remotionlambda.zip +0 -0
  742. package/tsconfig.json +0 -16
@@ -1,14 +1,14 @@
1
1
  import type { AwsRegion } from '../pricing/aws-regions';
2
- declare type PresignURLInput = {
2
+ export declare type PresignUrlInput<CheckIfObjectExists extends boolean = boolean> = {
3
3
  region: AwsRegion;
4
4
  bucketName: string;
5
5
  objectKey: string;
6
- checkIfObjectExists?: boolean;
6
+ checkIfObjectExists?: CheckIfObjectExists;
7
7
  expiresInSeconds: number;
8
8
  };
9
9
  /**
10
10
  * @description Returns a public url of an object stored in Remotion's S3 bucket.
11
- * @link https://remotion.dev/docs/lambda/presignurl
11
+ * @see [Documentation](https://remotion.dev/docs/lambda/presignurl)
12
12
  * @param {AwsRegion} params.region The region in which the S3 bucket resides in.
13
13
  * @param {string} params.bucketName The name of the bucket to fetch the object from.
14
14
  * @param {string} params.objectKey Key of the S3 object to get.
@@ -16,5 +16,4 @@ declare type PresignURLInput = {
16
16
  * @param {boolean} params.checkIfObjectExists Whether the function should check if the object exists in the bucket before generating the presigned url.
17
17
  * @returns {Promise<string | null>} The public url of an object or `null` if `checkIfObjectExists=true` & object does not exist.
18
18
  */
19
- export declare const presignUrl: ({ region, bucketName, objectKey, checkIfObjectExists, expiresInSeconds, }: PresignURLInput) => Promise<string | null>;
20
- export {};
19
+ export declare const presignUrl: <CheckIfObjectExists extends boolean = false>({ region, bucketName, objectKey, checkIfObjectExists, expiresInSeconds, }: PresignUrlInput<CheckIfObjectExists>) => Promise<CheckIfObjectExists extends true ? string | null : string>;
@@ -8,7 +8,7 @@ const validate_bucketname_1 = require("../shared/validate-bucketname");
8
8
  const validate_presign_expiration_1 = require("../shared/validate-presign-expiration");
9
9
  /**
10
10
  * @description Returns a public url of an object stored in Remotion's S3 bucket.
11
- * @link https://remotion.dev/docs/lambda/presignurl
11
+ * @see [Documentation](https://remotion.dev/docs/lambda/presignurl)
12
12
  * @param {AwsRegion} params.region The region in which the S3 bucket resides in.
13
13
  * @param {string} params.bucketName The name of the bucket to fetch the object from.
14
14
  * @param {string} params.objectKey Key of the S3 object to get.
@@ -16,11 +16,11 @@ const validate_presign_expiration_1 = require("../shared/validate-presign-expira
16
16
  * @param {boolean} params.checkIfObjectExists Whether the function should check if the object exists in the bucket before generating the presigned url.
17
17
  * @returns {Promise<string | null>} The public url of an object or `null` if `checkIfObjectExists=true` & object does not exist.
18
18
  */
19
- const presignUrl = async ({ region, bucketName, objectKey, checkIfObjectExists = false, expiresInSeconds, }) => {
19
+ const presignUrl = async ({ region, bucketName, objectKey, checkIfObjectExists, expiresInSeconds, }) => {
20
20
  (0, validate_bucketname_1.validateBucketName)(bucketName, { mustStartWithRemotion: false });
21
21
  (0, validate_presign_expiration_1.validatePresignExpiration)(expiresInSeconds);
22
- const s3Client = (0, aws_clients_1.getS3Client)(region);
23
- if (checkIfObjectExists) {
22
+ const s3Client = (0, aws_clients_1.getS3Client)(region, null);
23
+ if (checkIfObjectExists === true) {
24
24
  try {
25
25
  await s3Client.send(new client_s3_1.HeadObjectCommand({
26
26
  Bucket: bucketName,
@@ -31,6 +31,11 @@ const presignUrl = async ({ region, bucketName, objectKey, checkIfObjectExists =
31
31
  if (err.name === 'NotFound') {
32
32
  return null;
33
33
  }
34
+ if (err.message === 'UnknownError' ||
35
+ err.$metadata
36
+ .httpStatusCode === 403) {
37
+ throw new Error(`Unable to access item "${objectKey}" from bucket "${bucketName}". You must have permission for both "s3:GetObject" and "s3:ListBucket" actions.`);
38
+ }
34
39
  throw err;
35
40
  }
36
41
  }
@@ -1,4 +1,4 @@
1
- import type { ChromiumOptions, FrameRange, ImageFormat, LogLevel, PixelFormat, ProResProfile } from '@remotion/renderer';
1
+ import type { AudioCodec, ChromiumOptions, FrameRange, LogLevel, PixelFormat, ProResProfile, VideoImageFormat } from '@remotion/renderer';
2
2
  import type { AwsRegion } from '../pricing/aws-regions';
3
3
  import type { OutNameInput, Privacy } from '../shared/constants';
4
4
  import type { DownloadBehavior } from '../shared/content-disposition-header';
@@ -8,16 +8,20 @@ export declare type RenderMediaOnLambdaInput = {
8
8
  functionName: string;
9
9
  serveUrl: string;
10
10
  composition: string;
11
- inputProps: unknown;
11
+ inputProps?: Record<string, unknown>;
12
12
  codec: LambdaCodec;
13
- imageFormat: ImageFormat;
13
+ imageFormat?: VideoImageFormat;
14
14
  crf?: number | undefined;
15
15
  envVariables?: Record<string, string>;
16
16
  pixelFormat?: PixelFormat;
17
17
  proResProfile?: ProResProfile;
18
- privacy: Privacy;
19
- quality?: number;
20
- maxRetries: number;
18
+ privacy?: Privacy;
19
+ /**
20
+ * @deprecated Renamed to `jpegQuality`
21
+ */
22
+ quality?: never;
23
+ jpegQuality?: number;
24
+ maxRetries?: number;
21
25
  framesPerLambda?: number;
22
26
  logLevel?: LogLevel;
23
27
  frameRange?: FrameRange;
@@ -29,31 +33,49 @@ export declare type RenderMediaOnLambdaInput = {
29
33
  numberOfGifLoops?: number | null;
30
34
  concurrencyPerLambda?: number;
31
35
  downloadBehavior?: DownloadBehavior | null;
36
+ muted?: boolean;
37
+ overwrite?: boolean;
38
+ audioBitrate?: string | null;
39
+ videoBitrate?: string | null;
40
+ webhook?: {
41
+ url: string;
42
+ secret: string | null;
43
+ };
44
+ forceWidth?: number | null;
45
+ forceHeight?: number | null;
46
+ rendererFunctionName?: string | null;
47
+ forceBucketName?: string;
48
+ audioCodec?: AudioCodec | null;
49
+ dumpBrowserLogs?: boolean;
32
50
  };
33
51
  export declare type RenderMediaOnLambdaOutput = {
34
52
  renderId: string;
35
53
  bucketName: string;
54
+ cloudWatchLogs: string;
55
+ folderInS3Console: string;
36
56
  };
37
57
  /**
38
58
  * @description Triggers a render on a lambda given a composition and a lambda function.
39
- * @link https://remotion.dev/docs/lambda/rendermediaonlambda
59
+ * @see [Documentation](https://remotion.dev/docs/lambda/rendermediaonlambda)
40
60
  * @param params.functionName The name of the Lambda function that should be used
41
61
  * @param params.serveUrl The URL of the deployed project
42
62
  * @param params.composition The ID of the composition which should be rendered.
43
63
  * @param params.inputProps The input props that should be passed to the composition.
44
- * @param params.codec The video codec which should be used for encoding.
45
- * @param params.imageFormat In which image format the frames should be rendered.
64
+ * @param params.codec The media codec which should be used for encoding.
65
+ * @param params.imageFormat In which image format the frames should be rendered. Default "jpeg"
46
66
  * @param params.crf The constant rate factor to be used during encoding.
47
67
  * @param params.envVariables Object containing environment variables to be inserted into the video environment
48
68
  * @param params.proResProfile The ProRes profile if rendering a ProRes video
49
- * @param params.quality JPEG quality if JPEG was selected as the image format.
50
- * @param params.region The AWS region in which the video should be rendered.
51
- * @param params.maxRetries How often rendering a chunk may fail before the video render gets aborted.
69
+ * @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
70
+ * @param params.region The AWS region in which the media should be rendered.
71
+ * @param params.maxRetries How often rendering a chunk may fail before the media render gets aborted. Default "1"
52
72
  * @param params.logLevel Level of logging that Lambda function should perform. Default "info".
73
+ * @param params.webhook Configuration for webhook called upon completion or timeout of the render.
74
+ * @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch
53
75
  * @returns {Promise<RenderMediaOnLambdaOutput>} See documentation for detailed structure
54
76
  */
55
- export declare const renderMediaOnLambda: ({ functionName, serveUrl, inputProps, codec, imageFormat, crf, envVariables, pixelFormat, proResProfile, quality, region, maxRetries, composition, framesPerLambda, privacy, logLevel, frameRange, outName, timeoutInMilliseconds, chromiumOptions, scale, numberOfGifLoops, everyNthFrame, concurrencyPerLambda, downloadBehavior, }: RenderMediaOnLambdaInput) => Promise<RenderMediaOnLambdaOutput>;
77
+ export declare const renderMediaOnLambda: (input: RenderMediaOnLambdaInput) => Promise<RenderMediaOnLambdaOutput>;
56
78
  /**
57
79
  * @deprecated Renamed to renderMediaOnLambda()
58
80
  */
59
- export declare const renderVideoOnLambda: ({ functionName, serveUrl, inputProps, codec, imageFormat, crf, envVariables, pixelFormat, proResProfile, quality, region, maxRetries, composition, framesPerLambda, privacy, logLevel, frameRange, outName, timeoutInMilliseconds, chromiumOptions, scale, numberOfGifLoops, everyNthFrame, concurrencyPerLambda, downloadBehavior, }: RenderMediaOnLambdaInput) => Promise<RenderMediaOnLambdaOutput>;
81
+ export declare const renderVideoOnLambda: (input: RenderMediaOnLambdaInput) => Promise<RenderMediaOnLambdaOutput>;
@@ -3,69 +3,61 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.renderVideoOnLambda = exports.renderMediaOnLambda = void 0;
4
4
  const call_lambda_1 = require("../shared/call-lambda");
5
5
  const constants_1 = require("../shared/constants");
6
- const convert_to_serve_url_1 = require("../shared/convert-to-serve-url");
7
- const validate_download_behavior_1 = require("../shared/validate-download-behavior");
8
- const validate_frames_per_lambda_1 = require("../shared/validate-frames-per-lambda");
9
- const validate_lambda_codec_1 = require("../shared/validate-lambda-codec");
10
- const validate_serveurl_1 = require("../shared/validate-serveurl");
6
+ const get_aws_urls_1 = require("../shared/get-aws-urls");
7
+ const make_lambda_payload_1 = require("./make-lambda-payload");
11
8
  /**
12
9
  * @description Triggers a render on a lambda given a composition and a lambda function.
13
- * @link https://remotion.dev/docs/lambda/rendermediaonlambda
10
+ * @see [Documentation](https://remotion.dev/docs/lambda/rendermediaonlambda)
14
11
  * @param params.functionName The name of the Lambda function that should be used
15
12
  * @param params.serveUrl The URL of the deployed project
16
13
  * @param params.composition The ID of the composition which should be rendered.
17
14
  * @param params.inputProps The input props that should be passed to the composition.
18
- * @param params.codec The video codec which should be used for encoding.
19
- * @param params.imageFormat In which image format the frames should be rendered.
15
+ * @param params.codec The media codec which should be used for encoding.
16
+ * @param params.imageFormat In which image format the frames should be rendered. Default "jpeg"
20
17
  * @param params.crf The constant rate factor to be used during encoding.
21
18
  * @param params.envVariables Object containing environment variables to be inserted into the video environment
22
19
  * @param params.proResProfile The ProRes profile if rendering a ProRes video
23
- * @param params.quality JPEG quality if JPEG was selected as the image format.
24
- * @param params.region The AWS region in which the video should be rendered.
25
- * @param params.maxRetries How often rendering a chunk may fail before the video render gets aborted.
20
+ * @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
21
+ * @param params.region The AWS region in which the media should be rendered.
22
+ * @param params.maxRetries How often rendering a chunk may fail before the media render gets aborted. Default "1"
26
23
  * @param params.logLevel Level of logging that Lambda function should perform. Default "info".
24
+ * @param params.webhook Configuration for webhook called upon completion or timeout of the render.
25
+ * @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch
27
26
  * @returns {Promise<RenderMediaOnLambdaOutput>} See documentation for detailed structure
28
27
  */
29
- const renderMediaOnLambda = async ({ functionName, serveUrl, inputProps, codec, imageFormat, crf, envVariables, pixelFormat, proResProfile, quality, region, maxRetries, composition, framesPerLambda, privacy, logLevel, frameRange, outName, timeoutInMilliseconds, chromiumOptions, scale, numberOfGifLoops, everyNthFrame, concurrencyPerLambda, downloadBehavior, }) => {
30
- const actualCodec = (0, validate_lambda_codec_1.validateLambdaCodec)(codec);
31
- (0, validate_serveurl_1.validateServeUrl)(serveUrl);
32
- (0, validate_frames_per_lambda_1.validateFramesPerLambda)(framesPerLambda !== null && framesPerLambda !== void 0 ? framesPerLambda : null);
33
- (0, validate_download_behavior_1.validateDownloadBehavior)(downloadBehavior);
34
- const realServeUrl = await (0, convert_to_serve_url_1.convertToServeUrl)(serveUrl, region);
35
- const res = await (0, call_lambda_1.callLambda)({
36
- functionName,
37
- type: constants_1.LambdaRoutines.start,
38
- payload: {
39
- framesPerLambda: framesPerLambda !== null && framesPerLambda !== void 0 ? framesPerLambda : null,
40
- composition,
41
- serveUrl: realServeUrl,
42
- inputProps,
43
- codec: actualCodec,
44
- imageFormat,
45
- crf,
46
- envVariables,
47
- pixelFormat,
48
- proResProfile,
49
- quality,
50
- maxRetries,
51
- privacy,
52
- logLevel: logLevel !== null && logLevel !== void 0 ? logLevel : 'info',
53
- frameRange: frameRange !== null && frameRange !== void 0 ? frameRange : null,
54
- outName: outName !== null && outName !== void 0 ? outName : null,
55
- timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : 30000,
56
- chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
57
- scale: scale !== null && scale !== void 0 ? scale : 1,
58
- everyNthFrame: everyNthFrame !== null && everyNthFrame !== void 0 ? everyNthFrame : 1,
59
- numberOfGifLoops: numberOfGifLoops !== null && numberOfGifLoops !== void 0 ? numberOfGifLoops : 0,
60
- concurrencyPerLambda: concurrencyPerLambda !== null && concurrencyPerLambda !== void 0 ? concurrencyPerLambda : 1,
61
- downloadBehavior: downloadBehavior !== null && downloadBehavior !== void 0 ? downloadBehavior : { type: 'play-in-browser' },
62
- },
63
- region,
64
- });
65
- return {
66
- renderId: res.renderId,
67
- bucketName: res.bucketName,
68
- };
28
+ const renderMediaOnLambda = async (input) => {
29
+ var _a;
30
+ const { functionName, region, rendererFunctionName } = input;
31
+ try {
32
+ const res = await (0, call_lambda_1.callLambda)({
33
+ functionName,
34
+ type: constants_1.LambdaRoutines.start,
35
+ payload: await (0, make_lambda_payload_1.makeLambdaRenderMediaPayload)(input),
36
+ region,
37
+ });
38
+ return {
39
+ renderId: res.renderId,
40
+ bucketName: res.bucketName,
41
+ cloudWatchLogs: (0, get_aws_urls_1.getCloudwatchStreamUrl)({
42
+ functionName,
43
+ method: constants_1.LambdaRoutines.renderer,
44
+ region,
45
+ renderId: res.renderId,
46
+ rendererFunctionName: rendererFunctionName !== null && rendererFunctionName !== void 0 ? rendererFunctionName : null,
47
+ }),
48
+ folderInS3Console: (0, get_aws_urls_1.getS3RenderUrl)({
49
+ bucketName: res.bucketName,
50
+ renderId: res.renderId,
51
+ region,
52
+ }),
53
+ };
54
+ }
55
+ catch (err) {
56
+ if ((_a = err.stack) === null || _a === void 0 ? void 0 : _a.includes('UnrecognizedClientException')) {
57
+ throw new Error('UnrecognizedClientException: The AWS credentials provided were probably mixed up. Learn how to fix this issue here: https://remotion.dev/docs/lambda/troubleshooting/unrecognizedclientexception');
58
+ }
59
+ throw err;
60
+ }
69
61
  };
70
62
  exports.renderMediaOnLambda = renderMediaOnLambda;
71
63
  /**
@@ -7,12 +7,16 @@ export declare type RenderStillOnLambdaInput = {
7
7
  functionName: string;
8
8
  serveUrl: string;
9
9
  composition: string;
10
- inputProps: unknown;
10
+ inputProps: Record<string, unknown>;
11
11
  imageFormat: StillImageFormat;
12
12
  privacy: Privacy;
13
13
  maxRetries?: number;
14
14
  envVariables?: Record<string, string>;
15
- quality?: number;
15
+ /**
16
+ * @deprecated Renamed to `jpegQuality`
17
+ */
18
+ quality?: never;
19
+ jpegQuality?: number;
16
20
  frame?: number;
17
21
  logLevel?: LogLevel;
18
22
  outName?: OutNameInput;
@@ -20,6 +24,10 @@ export declare type RenderStillOnLambdaInput = {
20
24
  chromiumOptions?: ChromiumOptions;
21
25
  scale?: number;
22
26
  downloadBehavior?: DownloadBehavior;
27
+ forceWidth?: number | null;
28
+ forceHeight?: number | null;
29
+ forceBucketName?: string;
30
+ dumpBrowserLogs?: boolean;
23
31
  };
24
32
  export declare type RenderStillOnLambdaOutput = {
25
33
  estimatedPrice: CostsInfo;
@@ -27,6 +35,7 @@ export declare type RenderStillOnLambdaOutput = {
27
35
  sizeInBytes: number;
28
36
  bucketName: string;
29
37
  renderId: string;
38
+ cloudWatchLogs: string;
30
39
  };
31
40
  /**
32
41
  * @description Renders a still frame on Lambda
@@ -37,11 +46,12 @@ export declare type RenderStillOnLambdaOutput = {
37
46
  * @param params.inputProps The input props that should be passed to the composition.
38
47
  * @param params.imageFormat In which image format the frames should be rendered.
39
48
  * @param params.envVariables Object containing environment variables to be inserted into the video environment
40
- * @param params.quality JPEG quality if JPEG was selected as the image format.
49
+ * @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
41
50
  * @param params.region The AWS region in which the video should be rendered.
42
51
  * @param params.maxRetries How often rendering a chunk may fail before the video render gets aborted.
43
52
  * @param params.frame Which frame should be used for the still image. Default 0.
44
53
  * @param params.privacy Whether the item in the S3 bucket should be public. Possible values: `"private"` and `"public"`
54
+ * @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch.
45
55
  * @returns {Promise<RenderStillOnLambdaOutput>} See documentation for exact response structure.
46
56
  */
47
- export declare const renderStillOnLambda: ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, }: RenderStillOnLambdaInput) => Promise<RenderStillOnLambdaOutput>;
57
+ export declare const renderStillOnLambda: ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, jpegQuality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, forceHeight, forceWidth, forceBucketName, dumpBrowserLogs, }: RenderStillOnLambdaInput) => Promise<RenderStillOnLambdaOutput>;
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.renderStillOnLambda = void 0;
4
+ const version_1 = require("remotion/version");
4
5
  const call_lambda_1 = require("../shared/call-lambda");
5
6
  const constants_1 = require("../shared/constants");
6
- const convert_to_serve_url_1 = require("../shared/convert-to-serve-url");
7
+ const get_aws_urls_1 = require("../shared/get-aws-urls");
8
+ const serialize_input_props_1 = require("../shared/serialize-input-props");
7
9
  /**
8
10
  * @description Renders a still frame on Lambda
9
11
  * @link https://remotion.dev/docs/lambda/renderstillonlambda
@@ -13,44 +15,74 @@ const convert_to_serve_url_1 = require("../shared/convert-to-serve-url");
13
15
  * @param params.inputProps The input props that should be passed to the composition.
14
16
  * @param params.imageFormat In which image format the frames should be rendered.
15
17
  * @param params.envVariables Object containing environment variables to be inserted into the video environment
16
- * @param params.quality JPEG quality if JPEG was selected as the image format.
18
+ * @param params.jpegQuality JPEG quality if JPEG was selected as the image format.
17
19
  * @param params.region The AWS region in which the video should be rendered.
18
20
  * @param params.maxRetries How often rendering a chunk may fail before the video render gets aborted.
19
21
  * @param params.frame Which frame should be used for the still image. Default 0.
20
22
  * @param params.privacy Whether the item in the S3 bucket should be public. Possible values: `"private"` and `"public"`
23
+ * @param params.dumpBrowserLogs Whether to print browser logs to CloudWatch.
21
24
  * @returns {Promise<RenderStillOnLambdaOutput>} See documentation for exact response structure.
22
25
  */
23
- const renderStillOnLambda = async ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, }) => {
24
- const realServeUrl = await (0, convert_to_serve_url_1.convertToServeUrl)(serveUrl, region);
25
- const res = await (0, call_lambda_1.callLambda)({
26
- functionName,
27
- type: constants_1.LambdaRoutines.still,
28
- payload: {
29
- composition,
30
- serveUrl: realServeUrl,
31
- inputProps,
32
- imageFormat,
33
- envVariables,
34
- quality,
35
- maxRetries: maxRetries !== null && maxRetries !== void 0 ? maxRetries : constants_1.DEFAULT_MAX_RETRIES,
36
- frame: frame !== null && frame !== void 0 ? frame : 0,
37
- privacy,
38
- attempt: 1,
39
- logLevel: logLevel !== null && logLevel !== void 0 ? logLevel : 'info',
40
- outName: outName !== null && outName !== void 0 ? outName : null,
41
- timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : 30000,
42
- chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
43
- scale: scale !== null && scale !== void 0 ? scale : 1,
44
- downloadBehavior: downloadBehavior !== null && downloadBehavior !== void 0 ? downloadBehavior : { type: 'play-in-browser' },
45
- },
26
+ const renderStillOnLambda = async ({ functionName, serveUrl, inputProps, imageFormat, envVariables, quality, jpegQuality, region, maxRetries, composition, privacy, frame, logLevel, outName, timeoutInMilliseconds, chromiumOptions, scale, downloadBehavior, forceHeight, forceWidth, forceBucketName, dumpBrowserLogs, }) => {
27
+ var _a;
28
+ if (quality) {
29
+ throw new Error('The `quality` option is deprecated. Use `jpegQuality` instead.');
30
+ }
31
+ const serializedInputProps = await (0, serialize_input_props_1.serializeInputProps)({
32
+ inputProps,
46
33
  region,
34
+ type: 'still',
35
+ userSpecifiedBucketName: forceBucketName !== null && forceBucketName !== void 0 ? forceBucketName : null,
47
36
  });
48
- return {
49
- estimatedPrice: res.estimatedPrice,
50
- url: res.output,
51
- sizeInBytes: res.size,
52
- bucketName: res.bucketName,
53
- renderId: res.renderId,
54
- };
37
+ try {
38
+ const res = await (0, call_lambda_1.callLambda)({
39
+ functionName,
40
+ type: constants_1.LambdaRoutines.still,
41
+ payload: {
42
+ composition,
43
+ serveUrl,
44
+ inputProps: serializedInputProps,
45
+ imageFormat,
46
+ envVariables,
47
+ jpegQuality,
48
+ maxRetries: maxRetries !== null && maxRetries !== void 0 ? maxRetries : constants_1.DEFAULT_MAX_RETRIES,
49
+ frame: frame !== null && frame !== void 0 ? frame : 0,
50
+ privacy,
51
+ attempt: 1,
52
+ logLevel: logLevel !== null && logLevel !== void 0 ? logLevel : 'info',
53
+ outName: outName !== null && outName !== void 0 ? outName : null,
54
+ timeoutInMilliseconds: timeoutInMilliseconds !== null && timeoutInMilliseconds !== void 0 ? timeoutInMilliseconds : 30000,
55
+ chromiumOptions: chromiumOptions !== null && chromiumOptions !== void 0 ? chromiumOptions : {},
56
+ scale: scale !== null && scale !== void 0 ? scale : 1,
57
+ downloadBehavior: downloadBehavior !== null && downloadBehavior !== void 0 ? downloadBehavior : { type: 'play-in-browser' },
58
+ version: version_1.VERSION,
59
+ forceHeight: forceHeight !== null && forceHeight !== void 0 ? forceHeight : null,
60
+ forceWidth: forceWidth !== null && forceWidth !== void 0 ? forceWidth : null,
61
+ bucketName: forceBucketName !== null && forceBucketName !== void 0 ? forceBucketName : null,
62
+ dumpBrowserLogs: dumpBrowserLogs !== null && dumpBrowserLogs !== void 0 ? dumpBrowserLogs : false,
63
+ },
64
+ region,
65
+ });
66
+ return {
67
+ estimatedPrice: res.estimatedPrice,
68
+ url: res.output,
69
+ sizeInBytes: res.size,
70
+ bucketName: res.bucketName,
71
+ renderId: res.renderId,
72
+ cloudWatchLogs: (0, get_aws_urls_1.getCloudwatchStreamUrl)({
73
+ functionName,
74
+ method: constants_1.LambdaRoutines.still,
75
+ region,
76
+ renderId: res.renderId,
77
+ rendererFunctionName: null,
78
+ }),
79
+ };
80
+ }
81
+ catch (err) {
82
+ if ((_a = err.stack) === null || _a === void 0 ? void 0 : _a.includes('UnrecognizedClientException')) {
83
+ throw new Error('UnrecognizedClientException: The AWS credentials provided were probably mixed up. Learn how to fix this issue here: https://remotion.dev/docs/lambda/troubleshooting/unrecognizedclientexception');
84
+ }
85
+ throw err;
86
+ }
55
87
  };
56
88
  exports.renderStillOnLambda = renderStillOnLambda;
@@ -0,0 +1,14 @@
1
+ export declare type SpeculateFunctionNameInput = {
2
+ memorySizeInMb: string | number;
3
+ diskSizeInMb: string | number;
4
+ timeoutInSeconds: string | number;
5
+ };
6
+ /**
7
+ * @description Speculate the name of a lambda function that will be created when you call `deployFunction`, based on the function configuration.
8
+ * @see [Documentation](https://www.remotion.dev/docs/lambda/speculatefunctionname)
9
+ * @param params.memorySizeInMb How much memory is allocated to the Lambda function.
10
+ * @param params.diskSizeInMb The amount of storage the function is allocated.
11
+ * @param params.timeoutInSeconds Time in seconds until the function times out.
12
+ * @returns {string} The speculated lambda function name
13
+ */
14
+ export declare const speculateFunctionName: ({ memorySizeInMb, diskSizeInMb, timeoutInSeconds, }: SpeculateFunctionNameInput) => string;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.speculateFunctionName = void 0;
4
+ const defaults_1 = require("../defaults");
5
+ const lambda_version_string_1 = require("../shared/lambda-version-string");
6
+ /**
7
+ * @description Speculate the name of a lambda function that will be created when you call `deployFunction`, based on the function configuration.
8
+ * @see [Documentation](https://www.remotion.dev/docs/lambda/speculatefunctionname)
9
+ * @param params.memorySizeInMb How much memory is allocated to the Lambda function.
10
+ * @param params.diskSizeInMb The amount of storage the function is allocated.
11
+ * @param params.timeoutInSeconds Time in seconds until the function times out.
12
+ * @returns {string} The speculated lambda function name
13
+ */
14
+ const speculateFunctionName = ({ memorySizeInMb, diskSizeInMb, timeoutInSeconds, }) => {
15
+ return [
16
+ `${defaults_1.RENDER_FN_PREFIX}${lambda_version_string_1.LAMBDA_VERSION_STRING}`,
17
+ `mem${memorySizeInMb}mb`,
18
+ `disk${diskSizeInMb}mb`,
19
+ `${timeoutInSeconds}sec`,
20
+ ].join('-');
21
+ };
22
+ exports.speculateFunctionName = speculateFunctionName;
@@ -11,11 +11,12 @@ export declare type MockFile = {
11
11
  content: string;
12
12
  };
13
13
  export declare const getDirFiles: (entry: string) => MockFile[];
14
- export declare const uploadDir: ({ bucket, region, dir, onProgress, folder, privacy, }: {
14
+ export declare const uploadDir: ({ bucket, region, localDir, onProgress, keyPrefix, privacy, toUpload, }: {
15
15
  bucket: string;
16
16
  region: AwsRegion;
17
- dir: string;
18
- folder: string;
17
+ localDir: string;
18
+ keyPrefix: string;
19
19
  onProgress: (progress: UploadDirProgress) => void;
20
20
  privacy: Privacy;
21
+ toUpload: string[];
21
22
  }) => Promise<void>;
@@ -4,76 +4,79 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.uploadDir = exports.getDirFiles = void 0;
7
- const client_s3_1 = require("@aws-sdk/client-s3");
8
7
  const lib_storage_1 = require("@aws-sdk/lib-storage");
9
- const fs_1 = require("fs");
10
8
  const mime_types_1 = __importDefault(require("mime-types"));
11
- const path_1 = __importDefault(require("path"));
9
+ const node_fs_1 = require("node:fs");
10
+ const node_path_1 = __importDefault(require("node:path"));
12
11
  const aws_clients_1 = require("../shared/aws-clients");
13
12
  const make_s3_key_1 = require("../shared/make-s3-key");
14
13
  const getDirFiles = (entry) => {
15
14
  throw new TypeError('should only be executed in test ' + JSON.stringify(entry));
16
15
  };
17
16
  exports.getDirFiles = getDirFiles;
18
- const uploadDir = async ({ bucket, region, dir, onProgress, folder, privacy, }) => {
19
- async function getFiles(directory) {
20
- const dirents = await fs_1.promises.readdir(directory, { withFileTypes: true });
21
- const _files = await Promise.all(dirents.map(async (dirent) => {
22
- const res = path_1.default.resolve(directory, dirent.name);
23
- const { size } = await fs_1.promises.stat(res);
24
- return dirent.isDirectory()
25
- ? getFiles(res)
26
- : [
27
- {
28
- name: res,
29
- size,
30
- },
31
- ];
32
- }));
33
- return _files.flat(1);
34
- }
35
- const files = await getFiles(dir);
17
+ async function getFiles(directory, originalDirectory, toUpload) {
18
+ const dirents = await node_fs_1.promises.readdir(directory, { withFileTypes: true });
19
+ const _files = await Promise.all(dirents
20
+ .map((dirent) => {
21
+ const res = node_path_1.default.resolve(directory, dirent.name);
22
+ return [dirent, res];
23
+ })
24
+ .filter(([dirent, res]) => {
25
+ const relative = node_path_1.default.relative(originalDirectory, res);
26
+ if (dirent.isDirectory()) {
27
+ return true;
28
+ }
29
+ if (!toUpload.includes(relative)) {
30
+ return false;
31
+ }
32
+ return true;
33
+ })
34
+ .map(async ([dirent, res]) => {
35
+ const { size } = await node_fs_1.promises.stat(res);
36
+ return dirent.isDirectory()
37
+ ? getFiles(res, originalDirectory, toUpload)
38
+ : [
39
+ {
40
+ name: res,
41
+ size,
42
+ },
43
+ ];
44
+ }));
45
+ return _files.flat(1);
46
+ }
47
+ const uploadDir = async ({ bucket, region, localDir, onProgress, keyPrefix, privacy, toUpload, }) => {
48
+ const files = await getFiles(localDir, localDir, toUpload);
36
49
  const progresses = {};
37
50
  for (const file of files) {
38
51
  progresses[file.name] = 0;
39
52
  }
40
- const client = (0, aws_clients_1.getS3Client)(region);
41
- const uploads = files.map(async (filePath) => {
42
- const Key = (0, make_s3_key_1.makeS3Key)(folder, dir, filePath.name);
43
- const Body = (0, fs_1.createReadStream)(filePath.name);
53
+ const client = (0, aws_clients_1.getS3Client)(region, null);
54
+ const uploads = files.map((filePath) => {
55
+ const Key = (0, make_s3_key_1.makeS3Key)(keyPrefix, localDir, filePath.name);
56
+ const Body = (0, node_fs_1.createReadStream)(filePath.name);
44
57
  const ContentType = mime_types_1.default.lookup(Key) || 'application/octet-stream';
45
58
  const ACL = privacy === 'no-acl'
46
59
  ? undefined
47
60
  : privacy === 'private'
48
61
  ? 'private'
49
62
  : 'public-read';
50
- if (filePath.size > 5 * 1024 * 1024) {
51
- const paralellUploads3 = new lib_storage_1.Upload({
52
- client,
53
- queueSize: 4,
54
- partSize: 5 * 1024 * 1024,
55
- params: {
56
- Key,
57
- Bucket: bucket,
58
- Body,
59
- ACL,
60
- ContentType,
61
- },
62
- });
63
- paralellUploads3.on('httpUploadProgress', (progress) => {
64
- var _a;
65
- progresses[filePath.name] = (_a = progress.loaded) !== null && _a !== void 0 ? _a : 0;
66
- });
67
- return paralellUploads3.done();
68
- }
69
- await client.send(new client_s3_1.PutObjectCommand({
70
- Key,
71
- Bucket: bucket,
72
- Body,
73
- ACL,
74
- ContentType,
75
- }));
76
- progresses[filePath.name] = filePath.size;
63
+ const paralellUploads3 = new lib_storage_1.Upload({
64
+ client,
65
+ queueSize: 4,
66
+ partSize: 5 * 1024 * 1024,
67
+ params: {
68
+ Key,
69
+ Bucket: bucket,
70
+ Body,
71
+ ACL,
72
+ ContentType,
73
+ },
74
+ });
75
+ paralellUploads3.on('httpUploadProgress', (progress) => {
76
+ var _a;
77
+ progresses[filePath.name] = (_a = progress.loaded) !== null && _a !== void 0 ? _a : 0;
78
+ });
79
+ return paralellUploads3.done();
77
80
  });
78
81
  const promise = Promise.all(uploads);
79
82
  const interval = setInterval(() => {