@remotion/lambda 4.0.0-reorg.8 → 4.0.0-retry.9

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 (367) 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 +0 -0
  4. package/dist/admin/make-layer-public.d.ts +0 -0
  5. package/dist/admin/make-layer-public.js +6 -6
  6. package/dist/api/bucket-exists.d.ts +0 -0
  7. package/dist/api/bucket-exists.js +1 -1
  8. package/dist/api/clean-items.d.ts +0 -0
  9. package/dist/api/clean-items.js +1 -1
  10. package/dist/api/create-bucket.d.ts +0 -0
  11. package/dist/api/create-bucket.js +1 -1
  12. package/dist/api/create-function.d.ts +0 -0
  13. package/dist/api/create-function.js +0 -0
  14. package/dist/api/delete-function.d.ts +0 -0
  15. package/dist/api/delete-function.js +0 -0
  16. package/dist/api/delete-render.d.ts +19 -0
  17. package/dist/api/delete-render.js +66 -0
  18. package/dist/api/delete-site.d.ts +0 -0
  19. package/dist/api/delete-site.js +0 -5
  20. package/dist/api/deploy-function.d.ts +0 -0
  21. package/dist/api/deploy-function.js +4 -2
  22. package/dist/api/deploy-site.d.ts +2 -0
  23. package/dist/api/deploy-site.js +2 -0
  24. package/dist/api/download-media.d.ts +13 -0
  25. package/dist/api/download-media.js +15 -3
  26. package/dist/api/enable-s3-website.d.ts +0 -0
  27. package/dist/api/enable-s3-website.js +1 -1
  28. package/dist/api/estimate-price.d.ts +0 -0
  29. package/dist/api/estimate-price.js +0 -0
  30. package/dist/api/get-aws-client.d.ts +4 -2
  31. package/dist/api/get-aws-client.js +7 -2
  32. package/dist/api/get-buckets.d.ts +0 -0
  33. package/dist/api/get-buckets.js +2 -2
  34. package/dist/api/get-function-info.d.ts +1 -2
  35. package/dist/api/get-function-info.js +0 -0
  36. package/dist/api/get-functions.d.ts +0 -0
  37. package/dist/api/get-functions.js +2 -1
  38. package/dist/api/get-or-create-bucket.d.ts +0 -0
  39. package/dist/api/get-or-create-bucket.js +0 -0
  40. package/dist/api/get-regions.d.ts +0 -0
  41. package/dist/api/get-regions.js +0 -0
  42. package/dist/api/get-render-progress.d.ts +4 -1
  43. package/dist/api/get-render-progress.js +5 -1
  44. package/dist/api/get-sites.d.ts +0 -0
  45. package/dist/api/get-sites.js +0 -0
  46. package/dist/api/iam-validation/role-permissions.d.ts +0 -0
  47. package/dist/api/iam-validation/role-permissions.js +0 -0
  48. package/dist/api/iam-validation/simulate-rule.d.ts +0 -0
  49. package/dist/api/iam-validation/simulate-rule.js +0 -0
  50. package/dist/api/iam-validation/simulate.d.ts +0 -0
  51. package/dist/api/iam-validation/simulate.js +0 -0
  52. package/dist/api/iam-validation/suggested-policy.d.ts +0 -0
  53. package/dist/api/iam-validation/suggested-policy.js +0 -0
  54. package/dist/api/iam-validation/user-permissions.d.ts +0 -0
  55. package/dist/api/iam-validation/user-permissions.js +0 -0
  56. package/dist/api/mock-functions.d.ts +4 -5
  57. package/dist/api/mock-functions.js +0 -0
  58. package/dist/api/presign-url.d.ts +0 -0
  59. package/dist/api/presign-url.js +6 -1
  60. package/dist/api/render-media-on-lambda.d.ts +22 -10
  61. package/dist/api/render-media-on-lambda.js +77 -40
  62. package/dist/api/render-still-on-lambda.d.ts +6 -3
  63. package/dist/api/render-still-on-lambda.js +55 -29
  64. package/dist/api/upload-dir.d.ts +0 -0
  65. package/dist/api/upload-dir.js +6 -2
  66. package/dist/api/validate-webhook-signature.d.ts +13 -0
  67. package/dist/api/validate-webhook-signature.js +32 -0
  68. package/dist/cli/args.d.ts +4 -2
  69. package/dist/cli/args.js +1 -5
  70. package/dist/cli/commands/functions/deploy.d.ts +0 -0
  71. package/dist/cli/commands/functions/deploy.js +2 -1
  72. package/dist/cli/commands/functions/index.d.ts +0 -0
  73. package/dist/cli/commands/functions/index.js +0 -0
  74. package/dist/cli/commands/functions/ls.d.ts +0 -0
  75. package/dist/cli/commands/functions/ls.js +0 -0
  76. package/dist/cli/commands/functions/rm.d.ts +0 -0
  77. package/dist/cli/commands/functions/rm.js +0 -0
  78. package/dist/cli/commands/functions/rmall.d.ts +0 -0
  79. package/dist/cli/commands/functions/rmall.js +0 -0
  80. package/dist/cli/commands/policies/policies.d.ts +0 -0
  81. package/dist/cli/commands/policies/policies.js +0 -0
  82. package/dist/cli/commands/policies/role.d.ts +0 -0
  83. package/dist/cli/commands/policies/role.js +0 -0
  84. package/dist/cli/commands/policies/user.d.ts +0 -0
  85. package/dist/cli/commands/policies/user.js +0 -0
  86. package/dist/cli/commands/policies/validate.d.ts +0 -0
  87. package/dist/cli/commands/policies/validate.js +0 -0
  88. package/dist/cli/commands/quotas/increase.d.ts +0 -0
  89. package/dist/cli/commands/quotas/increase.js +0 -0
  90. package/dist/cli/commands/quotas/index.d.ts +0 -0
  91. package/dist/cli/commands/quotas/index.js +0 -0
  92. package/dist/cli/commands/quotas/list.d.ts +0 -0
  93. package/dist/cli/commands/quotas/list.js +0 -0
  94. package/dist/cli/commands/regions.d.ts +0 -0
  95. package/dist/cli/commands/regions.js +0 -0
  96. package/dist/cli/commands/render/progress.d.ts +0 -0
  97. package/dist/cli/commands/render/progress.js +0 -0
  98. package/dist/cli/commands/render/render.d.ts +0 -0
  99. package/dist/cli/commands/render/render.js +38 -22
  100. package/dist/cli/commands/sites/create.d.ts +1 -1
  101. package/dist/cli/commands/sites/create.js +6 -4
  102. package/dist/cli/commands/sites/index.d.ts +1 -1
  103. package/dist/cli/commands/sites/index.js +2 -2
  104. package/dist/cli/commands/sites/ls.d.ts +0 -0
  105. package/dist/cli/commands/sites/ls.js +0 -0
  106. package/dist/cli/commands/sites/rm.d.ts +0 -0
  107. package/dist/cli/commands/sites/rm.js +0 -0
  108. package/dist/cli/commands/sites/rmall.d.ts +0 -0
  109. package/dist/cli/commands/sites/rmall.js +0 -0
  110. package/dist/cli/commands/still.d.ts +0 -0
  111. package/dist/cli/commands/still.js +35 -24
  112. package/dist/cli/get-aws-region.d.ts +0 -0
  113. package/dist/cli/get-aws-region.js +2 -1
  114. package/dist/cli/help.d.ts +0 -0
  115. package/dist/cli/help.js +0 -0
  116. package/dist/cli/helpers/confirm.d.ts +0 -0
  117. package/dist/cli/helpers/confirm.js +0 -0
  118. package/dist/cli/helpers/date-string.d.ts +0 -0
  119. package/dist/cli/helpers/date-string.js +0 -0
  120. package/dist/cli/helpers/find-function-name.d.ts +0 -0
  121. package/dist/cli/helpers/find-function-name.js +3 -2
  122. package/dist/cli/helpers/progress-bar.d.ts +0 -0
  123. package/dist/cli/helpers/progress-bar.js +0 -0
  124. package/dist/cli/helpers/quit.d.ts +0 -0
  125. package/dist/cli/helpers/quit.js +0 -0
  126. package/dist/cli/helpers/yes-or-no.d.ts +0 -0
  127. package/dist/cli/helpers/yes-or-no.js +0 -0
  128. package/dist/cli/index.d.ts +1 -1
  129. package/dist/cli/index.js +7 -6
  130. package/dist/cli/is-cli.d.ts +0 -0
  131. package/dist/cli/is-cli.js +0 -0
  132. package/dist/cli/log.d.ts +0 -0
  133. package/dist/cli/log.js +0 -0
  134. package/dist/client.d.ts +4 -2
  135. package/dist/client.js +3 -1
  136. package/dist/defaults.d.ts +0 -0
  137. package/dist/defaults.js +0 -0
  138. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +2 -9
  139. package/dist/functions/chunk-optimization/plan-frame-ranges.js +1 -14
  140. package/dist/functions/chunk-optimization/types.d.ts +0 -12
  141. package/dist/functions/chunk-optimization/types.js +0 -0
  142. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -0
  143. package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -0
  144. package/dist/functions/helpers/calculate-chunk-times.d.ts +0 -0
  145. package/dist/functions/helpers/calculate-chunk-times.js +0 -0
  146. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +0 -0
  147. package/dist/functions/helpers/calculate-price-from-bucket.js +0 -0
  148. package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
  149. package/dist/functions/helpers/check-if-render-exists.js +14 -0
  150. package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
  151. package/dist/functions/helpers/clean-tmpdir.js +1 -1
  152. package/dist/functions/helpers/concat-videos.d.ts +3 -1
  153. package/dist/functions/helpers/concat-videos.js +25 -9
  154. package/dist/functions/helpers/create-post-render-data.d.ts +0 -0
  155. package/dist/functions/helpers/create-post-render-data.js +7 -2
  156. package/dist/functions/helpers/delete-chunks.d.ts +0 -0
  157. package/dist/functions/helpers/delete-chunks.js +0 -0
  158. package/dist/functions/helpers/expected-out-name.d.ts +4 -2
  159. package/dist/functions/helpers/expected-out-name.js +26 -5
  160. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +3 -1
  161. package/dist/functions/helpers/find-output-file-in-bucket.js +17 -9
  162. package/dist/functions/helpers/format-costs-info.d.ts +0 -0
  163. package/dist/functions/helpers/format-costs-info.js +0 -0
  164. package/dist/functions/helpers/get-browser-instance.d.ts +0 -0
  165. package/dist/functions/helpers/get-browser-instance.js +0 -0
  166. package/dist/functions/helpers/get-chromium-executable-path.d.ts +0 -0
  167. package/dist/functions/helpers/get-chromium-executable-path.js +0 -0
  168. package/dist/functions/helpers/get-cleanup-progress.d.ts +0 -0
  169. package/dist/functions/helpers/get-cleanup-progress.js +0 -0
  170. package/dist/functions/helpers/get-current-architecture.d.ts +0 -0
  171. package/dist/functions/helpers/get-current-architecture.js +0 -0
  172. package/dist/functions/helpers/get-current-region.d.ts +0 -0
  173. package/dist/functions/helpers/get-current-region.js +0 -0
  174. package/dist/functions/helpers/get-custom-out-name.d.ts +6 -0
  175. package/dist/functions/helpers/get-custom-out-name.js +31 -0
  176. package/dist/functions/helpers/get-encoding-metadata.d.ts +0 -0
  177. package/dist/functions/helpers/get-encoding-metadata.js +0 -0
  178. package/dist/functions/helpers/get-files-in-folder.d.ts +0 -0
  179. package/dist/functions/helpers/get-files-in-folder.js +0 -0
  180. package/dist/functions/helpers/get-files-to-delete.d.ts +0 -0
  181. package/dist/functions/helpers/get-files-to-delete.js +1 -1
  182. package/dist/functions/helpers/get-final-encoding-status.d.ts +0 -0
  183. package/dist/functions/helpers/get-final-encoding-status.js +0 -0
  184. package/dist/functions/helpers/get-folder-size.d.ts +0 -0
  185. package/dist/functions/helpers/get-folder-size.js +0 -0
  186. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +7 -2
  187. package/dist/functions/helpers/get-lambdas-invoked-stats.js +8 -8
  188. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +2 -1
  189. package/dist/functions/helpers/get-output-url-from-metadata.js +2 -2
  190. package/dist/functions/helpers/get-overall-progress.d.ts +0 -0
  191. package/dist/functions/helpers/get-overall-progress.js +0 -0
  192. package/dist/functions/helpers/get-post-render-data.d.ts +0 -0
  193. package/dist/functions/helpers/get-post-render-data.js +0 -0
  194. package/dist/functions/helpers/get-progress.d.ts +4 -2
  195. package/dist/functions/helpers/get-progress.js +20 -7
  196. package/dist/functions/helpers/get-render-metadata.d.ts +0 -0
  197. package/dist/functions/helpers/get-render-metadata.js +0 -0
  198. package/dist/functions/helpers/get-retry-stats.d.ts +0 -0
  199. package/dist/functions/helpers/get-retry-stats.js +1 -1
  200. package/dist/functions/helpers/get-time-to-finish.d.ts +0 -0
  201. package/dist/functions/helpers/get-time-to-finish.js +0 -0
  202. package/dist/functions/helpers/inspect-errors.d.ts +0 -0
  203. package/dist/functions/helpers/inspect-errors.js +0 -0
  204. package/dist/functions/helpers/io.d.ts +17 -1
  205. package/dist/functions/helpers/io.js +29 -8
  206. package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
  207. package/dist/functions/helpers/is-enosp-err.js +0 -0
  208. package/dist/functions/helpers/is-warm.d.ts +0 -0
  209. package/dist/functions/helpers/is-warm.js +0 -0
  210. package/dist/functions/helpers/min-max.d.ts +1 -1
  211. package/dist/functions/helpers/min-max.js +1 -1
  212. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +1 -1
  213. package/dist/functions/helpers/print-cloudwatch-helper.js +0 -0
  214. package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -0
  215. package/dist/functions/helpers/print-concurrency-curve.js +0 -0
  216. package/dist/functions/helpers/read-with-progress.d.ts +3 -1
  217. package/dist/functions/helpers/read-with-progress.js +3 -3
  218. package/dist/functions/helpers/timer.d.ts +0 -0
  219. package/dist/functions/helpers/timer.js +0 -0
  220. package/dist/functions/helpers/validate-composition.d.ts +5 -2
  221. package/dist/functions/helpers/validate-composition.js +7 -2
  222. package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
  223. package/dist/functions/helpers/write-lambda-error.js +1 -0
  224. package/dist/functions/helpers/write-post-render-data.d.ts +0 -0
  225. package/dist/functions/helpers/write-post-render-data.js +1 -0
  226. package/dist/functions/index.d.ts +0 -0
  227. package/dist/functions/index.js +16 -6
  228. package/dist/functions/info.d.ts +2 -2
  229. package/dist/functions/info.js +2 -1
  230. package/dist/functions/launch.d.ts +1 -0
  231. package/dist/functions/launch.js +272 -79
  232. package/dist/functions/progress.d.ts +1 -1
  233. package/dist/functions/progress.js +10 -1
  234. package/dist/functions/renderer.d.ts +0 -0
  235. package/dist/functions/renderer.js +123 -73
  236. package/dist/functions/start.d.ts +5 -1
  237. package/dist/functions/start.js +27 -1
  238. package/dist/functions/still.d.ts +0 -0
  239. package/dist/functions/still.js +42 -8
  240. package/dist/index.d.ts +8 -2
  241. package/dist/index.js +5 -1
  242. package/dist/internals.d.ts +1 -1
  243. package/dist/internals.js +0 -0
  244. package/dist/pricing/aws-regions.d.ts +0 -0
  245. package/dist/pricing/aws-regions.js +0 -0
  246. package/dist/pricing/price-per-1-s.d.ts +0 -0
  247. package/dist/pricing/price-per-1-s.js +0 -0
  248. package/dist/regions.d.ts +0 -0
  249. package/dist/regions.js +0 -0
  250. package/dist/shared/await.d.ts +0 -0
  251. package/dist/shared/await.js +0 -0
  252. package/dist/shared/aws-clients.d.ts +13 -2
  253. package/dist/shared/aws-clients.js +56 -26
  254. package/dist/shared/bundle-site.d.ts +2 -1
  255. package/dist/shared/bundle-site.js +0 -0
  256. package/dist/shared/call-lambda.d.ts +0 -0
  257. package/dist/shared/call-lambda.js +0 -0
  258. package/dist/shared/check-credentials.d.ts +0 -0
  259. package/dist/shared/check-credentials.js +0 -0
  260. package/dist/shared/cleanup-serialized-input-props.d.ts +7 -0
  261. package/dist/shared/cleanup-serialized-input-props.js +19 -0
  262. package/dist/shared/constants.d.ts +57 -15
  263. package/dist/shared/constants.js +19 -10
  264. package/dist/shared/content-disposition-header.d.ts +0 -0
  265. package/dist/shared/content-disposition-header.js +0 -0
  266. package/dist/shared/convert-to-serve-url.d.ts +0 -0
  267. package/dist/shared/convert-to-serve-url.js +0 -0
  268. package/dist/shared/deserialize-input-props.d.ts +8 -0
  269. package/dist/shared/deserialize-input-props.js +26 -0
  270. package/dist/shared/docs-url.d.ts +0 -0
  271. package/dist/shared/docs-url.js +0 -0
  272. package/dist/shared/function-zip-path.d.ts +0 -0
  273. package/dist/shared/function-zip-path.js +0 -0
  274. package/dist/shared/get-account-id.d.ts +0 -0
  275. package/dist/shared/get-account-id.js +0 -0
  276. package/dist/{cli/helpers → shared}/get-cloudwatch-stream-url.d.ts +2 -2
  277. package/dist/{cli/helpers → shared}/get-cloudwatch-stream-url.js +0 -0
  278. package/dist/shared/get-function-version.d.ts +1 -2
  279. package/dist/shared/get-function-version.js +0 -0
  280. package/dist/shared/get-most-expensive-chunks.d.ts +0 -0
  281. package/dist/shared/get-most-expensive-chunks.js +0 -0
  282. package/dist/shared/hosted-layers.d.ts +0 -0
  283. package/dist/shared/hosted-layers.js +60 -60
  284. package/dist/shared/invoke-webhook.d.ts +44 -0
  285. package/dist/shared/invoke-webhook.js +89 -0
  286. package/dist/shared/is-in-lambda.d.ts +0 -0
  287. package/dist/shared/is-in-lambda.js +5 -1
  288. package/dist/shared/lambda-version-string.d.ts +1 -0
  289. package/dist/shared/lambda-version-string.js +7 -0
  290. package/dist/shared/make-s3-key.d.ts +0 -0
  291. package/dist/shared/make-s3-key.js +0 -0
  292. package/dist/shared/make-s3-url.d.ts +0 -0
  293. package/dist/shared/make-s3-url.js +0 -0
  294. package/dist/shared/p-limit.d.ts +0 -0
  295. package/dist/shared/p-limit.js +0 -0
  296. package/dist/shared/parse-lambda-initialized-key.d.ts +0 -0
  297. package/dist/shared/parse-lambda-initialized-key.js +0 -0
  298. package/dist/shared/parse-lambda-timings-key.d.ts +0 -0
  299. package/dist/shared/parse-lambda-timings-key.js +0 -0
  300. package/dist/shared/random-hash.d.ts +0 -0
  301. package/dist/shared/random-hash.js +0 -0
  302. package/dist/shared/return-values.d.ts +0 -0
  303. package/dist/shared/return-values.js +0 -0
  304. package/dist/shared/serialize-input-props.d.ts +7 -0
  305. package/dist/shared/serialize-input-props.js +42 -0
  306. package/dist/shared/sleep.d.ts +0 -0
  307. package/dist/shared/sleep.js +0 -0
  308. package/dist/shared/stream-to-string.d.ts +0 -0
  309. package/dist/shared/stream-to-string.js +0 -0
  310. package/dist/shared/truthy.d.ts +0 -0
  311. package/dist/shared/truthy.js +0 -0
  312. package/dist/shared/validate-architecture.d.ts +0 -0
  313. package/dist/shared/validate-architecture.js +0 -0
  314. package/dist/shared/validate-aws-region.d.ts +0 -0
  315. package/dist/shared/validate-aws-region.js +0 -0
  316. package/dist/shared/validate-bucketname.d.ts +0 -0
  317. package/dist/shared/validate-bucketname.js +0 -0
  318. package/dist/shared/validate-custom-role-arn.d.ts +0 -0
  319. package/dist/shared/validate-custom-role-arn.js +0 -0
  320. package/dist/shared/validate-disk-size-in-mb.d.ts +0 -0
  321. package/dist/shared/validate-disk-size-in-mb.js +0 -0
  322. package/dist/shared/validate-download-behavior.d.ts +0 -0
  323. package/dist/shared/validate-download-behavior.js +0 -0
  324. package/dist/shared/validate-frames-per-lambda.d.ts +4 -1
  325. package/dist/shared/validate-frames-per-lambda.js +4 -3
  326. package/dist/shared/validate-lambda-codec.d.ts +1 -1
  327. package/dist/shared/validate-lambda-codec.js +1 -0
  328. package/dist/shared/validate-memory-size.d.ts +0 -0
  329. package/dist/shared/validate-memory-size.js +0 -0
  330. package/dist/shared/validate-outname.d.ts +3 -2
  331. package/dist/shared/validate-outname.js +5 -1
  332. package/dist/shared/validate-presign-expiration.d.ts +0 -0
  333. package/dist/shared/validate-presign-expiration.js +0 -0
  334. package/dist/shared/validate-privacy.d.ts +0 -0
  335. package/dist/shared/validate-privacy.js +2 -2
  336. package/dist/shared/validate-retention-period.d.ts +0 -0
  337. package/dist/shared/validate-retention-period.js +0 -0
  338. package/dist/shared/validate-retries.d.ts +0 -0
  339. package/dist/shared/validate-retries.js +0 -0
  340. package/dist/shared/validate-serveurl.d.ts +0 -0
  341. package/dist/shared/validate-serveurl.js +0 -0
  342. package/dist/shared/validate-site-name.d.ts +0 -0
  343. package/dist/shared/validate-site-name.js +0 -0
  344. package/dist/shared/validate-timeout.d.ts +0 -0
  345. package/dist/shared/validate-timeout.js +0 -0
  346. package/package.json +20 -23
  347. package/remotionlambda.zip +0 -0
  348. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +0 -6
  349. package/dist/functions/chunk-optimization/can-use-optimization.js +0 -23
  350. package/dist/functions/chunk-optimization/collect-data.d.ts +0 -9
  351. package/dist/functions/chunk-optimization/collect-data.js +0 -27
  352. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +0 -3
  353. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -11
  354. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +0 -3
  355. package/dist/functions/chunk-optimization/get-profile-duration.js +0 -18
  356. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +0 -2
  357. package/dist/functions/chunk-optimization/is-valid-profile.js +0 -12
  358. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +0 -2
  359. package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -19
  360. package/dist/functions/chunk-optimization/optimize-profile.d.ts +0 -9
  361. package/dist/functions/chunk-optimization/optimize-profile.js +0 -74
  362. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +0 -17
  363. package/dist/functions/chunk-optimization/s3-optimization-file.js +0 -46
  364. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +0 -7
  365. package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -47
  366. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +0 -2
  367. package/dist/functions/chunk-optimization/sort-by-duration.js +0 -25
@@ -10,6 +10,7 @@ const fs_1 = __importDefault(require("fs"));
10
10
  const path_1 = __importDefault(require("path"));
11
11
  const aws_clients_1 = require("../shared/aws-clients");
12
12
  const constants_1 = require("../shared/constants");
13
+ const deserialize_input_props_1 = require("../shared/deserialize-input-props");
13
14
  const clean_tmpdir_1 = require("./helpers/clean-tmpdir");
14
15
  const get_browser_instance_1 = require("./helpers/get-browser-instance");
15
16
  const get_current_region_1 = require("./helpers/get-current-region");
@@ -18,10 +19,16 @@ const get_folder_size_1 = require("./helpers/get-folder-size");
18
19
  const io_1 = require("./helpers/io");
19
20
  const write_lambda_error_1 = require("./helpers/write-lambda-error");
20
21
  const renderHandler = async (params, options, logs) => {
21
- var _a, _b;
22
+ var _a;
22
23
  if (params.type !== constants_1.LambdaRoutines.renderer) {
23
24
  throw new Error('Params must be renderer');
24
25
  }
26
+ const inputPropsPromise = (0, deserialize_input_props_1.deserializeInputProps)({
27
+ bucketName: params.bucketName,
28
+ expectedBucketOwner: options.expectedBucketOwner,
29
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
30
+ serialized: params.inputProps,
31
+ });
25
32
  const browserInstance = await (0, get_browser_instance_1.getBrowserInstance)(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'), (_a = params.chromiumOptions) !== null && _a !== void 0 ? _a : {});
26
33
  const outputPath = renderer_1.RenderInternals.tmpDir('remotion-render-');
27
34
  if (typeof params.chunk !== 'number') {
@@ -40,80 +47,117 @@ const renderHandler = async (params, options, logs) => {
40
47
  const outdir = renderer_1.RenderInternals.tmpDir(constants_1.RENDERER_PATH_TOKEN);
41
48
  const outputLocation = path_1.default.join(outdir, `localchunk-${String(params.chunk).padStart(8, '0')}.${renderer_1.RenderInternals.getFileExtensionFromCodec(params.codec, 'chunk')}`);
42
49
  const chunkCodec = params.codec === 'gif' ? 'h264-mkv' : params.codec;
43
- await (0, renderer_1.renderMedia)({
44
- composition: {
45
- id: params.composition,
46
- durationInFrames: params.durationInFrames,
47
- fps: params.fps,
48
- height: params.height,
49
- width: params.width,
50
- },
51
- imageFormat: params.imageFormat,
52
- inputProps: params.inputProps,
53
- frameRange: params.frameRange,
54
- onProgress: ({ renderedFrames, encodedFrames, stitchStage }) => {
55
- if (renderedFrames % 10 === 0 &&
56
- renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose')) {
57
- console.log(`Rendered ${renderedFrames} frames, encoded ${encodedFrames} frames, stage = ${stitchStage}`);
58
- }
59
- const allFrames = renderer_1.RenderInternals.getFramesToRender(params.frameRange, params.everyNthFrame);
60
- if (renderedFrames === allFrames.length) {
61
- console.log('Rendered all frames!');
62
- }
63
- chunkTimingData.timings[renderedFrames] = Date.now() - start;
64
- },
65
- parallelism: params.concurrencyPerLambda,
66
- onStart: () => {
67
- (0, io_1.lambdaWriteFile)({
68
- privacy: 'private',
69
- bucketName: params.bucketName,
70
- body: JSON.stringify({
71
- filesCleaned: clean_tmpdir_1.deletedFilesSize,
72
- filesInTmp: fs_1.default.readdirSync('/tmp'),
73
- isWarm: options.isWarm,
74
- deletedFiles: clean_tmpdir_1.deletedFiles,
75
- tmpSize: (0, get_folder_size_1.getFolderSizeRecursively)('/tmp'),
76
- tmpDirFiles: (0, get_files_in_folder_1.getFolderFiles)('/tmp'),
77
- }),
78
- key: (0, constants_1.lambdaInitializedKey)({
79
- renderId: params.renderId,
80
- chunk: params.chunk,
81
- attempt: params.attempt,
82
- }),
83
- region: (0, get_current_region_1.getCurrentRegionInFunction)(),
84
- expectedBucketOwner: options.expectedBucketOwner,
85
- downloadBehavior: null,
86
- });
87
- },
88
- puppeteerInstance: browserInstance,
89
- serveUrl: params.serveUrl,
90
- quality: params.quality,
91
- envVariables: params.envVariables,
92
- dumpBrowserLogs: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
93
- verbose: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
94
- onBrowserLog: (log) => {
95
- logs.push(log);
96
- },
97
- outputLocation,
98
- codec: chunkCodec,
99
- crf: (_b = params.crf) !== null && _b !== void 0 ? _b : undefined,
100
- ffmpegExecutable: process.env.NODE_ENV === 'test' ? null : '/opt/bin/ffmpeg',
101
- pixelFormat: params.pixelFormat,
102
- proResProfile: params.proResProfile,
103
- onDownload: (src) => {
104
- console.log('Downloading', src);
105
- return () => undefined;
106
- },
107
- overwrite: false,
108
- chromiumOptions: params.chromiumOptions,
109
- scale: params.scale,
110
- timeoutInMilliseconds: params.timeoutInMilliseconds,
111
- port: null,
112
- everyNthFrame: params.everyNthFrame,
113
- numberOfGifLoops: null,
50
+ const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
51
+ const downloads = {};
52
+ const inputProps = await inputPropsPromise;
53
+ await new Promise((resolve, reject) => {
54
+ var _a;
55
+ (0, renderer_1.renderMedia)({
56
+ composition: {
57
+ id: params.composition,
58
+ durationInFrames: params.durationInFrames,
59
+ fps: params.fps,
60
+ height: params.height,
61
+ width: params.width,
62
+ },
63
+ imageFormat: params.imageFormat,
64
+ inputProps,
65
+ frameRange: params.frameRange,
66
+ onProgress: ({ renderedFrames, encodedFrames, stitchStage }) => {
67
+ if (renderedFrames % 10 === 0 &&
68
+ renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose')) {
69
+ console.log(`Rendered ${renderedFrames} frames, encoded ${encodedFrames} frames, stage = ${stitchStage}`);
70
+ }
71
+ const allFrames = renderer_1.RenderInternals.getFramesToRender(params.frameRange, params.everyNthFrame);
72
+ if (renderedFrames === allFrames.length) {
73
+ console.log('Rendered all frames!');
74
+ }
75
+ chunkTimingData.timings[renderedFrames] = Date.now() - start;
76
+ },
77
+ concurrency: params.concurrencyPerLambda,
78
+ onStart: () => {
79
+ (0, io_1.lambdaWriteFile)({
80
+ privacy: 'private',
81
+ bucketName: params.bucketName,
82
+ body: JSON.stringify({
83
+ filesCleaned: clean_tmpdir_1.deletedFilesSize,
84
+ filesInTmp: fs_1.default.readdirSync('/tmp'),
85
+ isWarm: options.isWarm,
86
+ deletedFiles: clean_tmpdir_1.deletedFiles,
87
+ tmpSize: (0, get_folder_size_1.getFolderSizeRecursively)('/tmp'),
88
+ tmpDirFiles: (0, get_files_in_folder_1.getFolderFiles)('/tmp'),
89
+ }),
90
+ key: (0, constants_1.lambdaChunkInitializedKey)({
91
+ renderId: params.renderId,
92
+ chunk: params.chunk,
93
+ attempt: params.attempt,
94
+ }),
95
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
96
+ expectedBucketOwner: options.expectedBucketOwner,
97
+ downloadBehavior: null,
98
+ customCredentials: null,
99
+ }).catch((err) => reject(err));
100
+ },
101
+ puppeteerInstance: browserInstance,
102
+ serveUrl: params.serveUrl,
103
+ quality: params.quality,
104
+ envVariables: params.envVariables,
105
+ dumpBrowserLogs: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
106
+ verbose: renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'),
107
+ onBrowserLog: (log) => {
108
+ logs.push(log);
109
+ },
110
+ outputLocation,
111
+ codec: chunkCodec,
112
+ crf: (_a = params.crf) !== null && _a !== void 0 ? _a : undefined,
113
+ ffmpegExecutable: process.env.NODE_ENV === 'test' ? null : '/opt/bin/ffmpeg',
114
+ pixelFormat: params.pixelFormat,
115
+ proResProfile: params.proResProfile,
116
+ onDownload: (src) => {
117
+ console.log('Downloading', src);
118
+ downloads[src] = 0;
119
+ return ({ percent, downloaded }) => {
120
+ if (percent === null) {
121
+ console.log(`Download progress (${src}): ${downloaded} bytes. Don't know final size of download, no Content-Length header.`);
122
+ return;
123
+ }
124
+ if (
125
+ // Only report every 10% change
126
+ downloads[src] > percent - 0.1 &&
127
+ percent !== 1) {
128
+ return;
129
+ }
130
+ downloads[src] = percent;
131
+ console.log(`Download progress (${src}): ${downloaded} bytes, ${(percent * 100).toFixed(1)}%`);
132
+ if (percent === 1) {
133
+ console.log(`Download complete: ${src}`);
134
+ }
135
+ };
136
+ },
137
+ overwrite: false,
138
+ chromiumOptions: params.chromiumOptions,
139
+ scale: params.scale,
140
+ timeoutInMilliseconds: params.timeoutInMilliseconds,
141
+ port: null,
142
+ everyNthFrame: params.everyNthFrame,
143
+ numberOfGifLoops: null,
144
+ downloadMap,
145
+ muted: params.muted,
146
+ enforceAudioTrack: true,
147
+ audioBitrate: params.audioBitrate,
148
+ videoBitrate: params.videoBitrate,
149
+ onSlowestFrames: (slowestFrames) => {
150
+ console.log();
151
+ console.log(`Slowest frames:`);
152
+ slowestFrames.forEach(({ frame, time }) => {
153
+ console.log(`Frame ${frame} (${time.toFixed(3)}ms)`);
154
+ });
155
+ },
156
+ })
157
+ .then(() => resolve())
158
+ .catch((err) => reject(err));
114
159
  });
115
160
  const endRendered = Date.now();
116
- console.log('Adding silent audio, chunk', params.chunk);
117
161
  const condensedTimingData = {
118
162
  ...chunkTimingData,
119
163
  timings: Object.values(chunkTimingData.timings),
@@ -129,6 +173,7 @@ const renderHandler = async (params, options, logs) => {
129
173
  privacy: params.privacy,
130
174
  expectedBucketOwner: options.expectedBucketOwner,
131
175
  downloadBehavior: null,
176
+ customCredentials: null,
132
177
  });
133
178
  await Promise.all([
134
179
  fs_1.default.promises.rm(outputLocation, { recursive: true }),
@@ -146,6 +191,7 @@ const renderHandler = async (params, options, logs) => {
146
191
  privacy: 'private',
147
192
  expectedBucketOwner: options.expectedBucketOwner,
148
193
  downloadBehavior: null,
194
+ customCredentials: null,
149
195
  }),
150
196
  ]);
151
197
  };
@@ -158,6 +204,10 @@ const rendererHandler = async (params, options) => {
158
204
  await renderHandler(params, options, logs);
159
205
  }
160
206
  catch (err) {
207
+ if (process.env.NODE_ENV === 'test') {
208
+ console.log({ err });
209
+ throw err;
210
+ }
161
211
  // If this error is encountered, we can just retry as it
162
212
  // is a very rare error to occur
163
213
  const isBrowserError = err.message.includes('FATAL:zygote_communication_linux.cc') ||
@@ -1,5 +1,9 @@
1
1
  import type { LambdaPayload } from '../shared/constants';
2
- export declare const startHandler: (params: LambdaPayload) => Promise<{
2
+ declare type Options = {
3
+ expectedBucketOwner: string;
4
+ };
5
+ export declare const startHandler: (params: LambdaPayload, options: Options) => Promise<{
3
6
  bucketName: string;
4
7
  renderId: string;
5
8
  }>;
9
+ export {};
@@ -2,20 +2,38 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.startHandler = void 0;
4
4
  const client_lambda_1 = require("@aws-sdk/client-lambda");
5
+ const version_1 = require("remotion/version");
5
6
  const get_or_create_bucket_1 = require("../api/get-or-create-bucket");
6
7
  const aws_clients_1 = require("../shared/aws-clients");
7
8
  const constants_1 = require("../shared/constants");
8
9
  const random_hash_1 = require("../shared/random-hash");
9
10
  const get_current_region_1 = require("./helpers/get-current-region");
10
- const startHandler = async (params) => {
11
+ const io_1 = require("./helpers/io");
12
+ const startHandler = async (params, options) => {
11
13
  var _a;
12
14
  if (params.type !== constants_1.LambdaRoutines.start) {
13
15
  throw new TypeError('Expected type start');
14
16
  }
17
+ if (params.version !== version_1.VERSION) {
18
+ if (!params.version) {
19
+ throw new Error(`Version mismatch: When calling renderMediaOnLambda(), you called the function ${process.env.AWS_LAMBDA_FUNCTION_NAME} which has the version ${version_1.VERSION} but the @remotion/lambda package is an older version. Deploy a new function and use it to call renderMediaOnLambda(). See: https://www.remotion.dev/docs/lambda/upgrading`);
20
+ }
21
+ throw new Error(`Version mismatch: When calling renderMediaOnLambda(), you passed ${process.env.AWS_LAMBDA_FUNCTION_NAME} as the function, which has the version ${version_1.VERSION}, but the @remotion/lambda package you used to invoke the function has version ${params.version}. Deploy a new function and use it to call renderMediaOnLambda(). See: https://www.remotion.dev/docs/lambda/upgrading`);
22
+ }
15
23
  const { bucketName } = await (0, get_or_create_bucket_1.getOrCreateBucket)({
16
24
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
17
25
  });
18
26
  const renderId = (0, random_hash_1.randomHash)({ randomInTests: true });
27
+ const initialFile = (0, io_1.lambdaWriteFile)({
28
+ bucketName,
29
+ downloadBehavior: null,
30
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
31
+ body: 'Render was initialized',
32
+ expectedBucketOwner: options.expectedBucketOwner,
33
+ key: (0, constants_1.initalizedMetadataKey)(renderId),
34
+ privacy: 'private',
35
+ customCredentials: null,
36
+ });
19
37
  const payload = {
20
38
  type: constants_1.LambdaRoutines.launch,
21
39
  framesPerLambda: params.framesPerLambda,
@@ -43,6 +61,13 @@ const startHandler = async (params) => {
43
61
  everyNthFrame: params.everyNthFrame,
44
62
  concurrencyPerLambda: params.concurrencyPerLambda,
45
63
  downloadBehavior: params.downloadBehavior,
64
+ muted: params.muted,
65
+ overwrite: params.overwrite,
66
+ webhook: params.webhook,
67
+ audioBitrate: params.audioBitrate,
68
+ videoBitrate: params.videoBitrate,
69
+ forceHeight: params.forceHeight,
70
+ forceWidth: params.forceWidth,
46
71
  };
47
72
  await (0, aws_clients_1.getLambdaClient)((0, get_current_region_1.getCurrentRegionInFunction)()).send(new client_lambda_1.InvokeCommand({
48
73
  FunctionName: process.env.AWS_LAMBDA_FUNCTION_NAME,
@@ -50,6 +75,7 @@ const startHandler = async (params) => {
50
75
  Payload: JSON.stringify(payload),
51
76
  InvocationType: 'Event',
52
77
  }));
78
+ await initialFile;
53
79
  return {
54
80
  bucketName,
55
81
  renderId,
File without changes
@@ -8,10 +8,13 @@ const client_lambda_1 = require("@aws-sdk/client-lambda");
8
8
  const renderer_1 = require("@remotion/renderer");
9
9
  const fs_1 = __importDefault(require("fs"));
10
10
  const path_1 = __importDefault(require("path"));
11
+ const version_1 = require("remotion/version");
11
12
  const estimate_price_1 = require("../api/estimate-price");
12
13
  const get_or_create_bucket_1 = require("../api/get-or-create-bucket");
13
14
  const aws_clients_1 = require("../shared/aws-clients");
15
+ const cleanup_serialized_input_props_1 = require("../shared/cleanup-serialized-input-props");
14
16
  const constants_1 = require("../shared/constants");
17
+ const deserialize_input_props_1 = require("../shared/deserialize-input-props");
15
18
  const make_s3_url_1 = require("../shared/make-s3-url");
16
19
  const random_hash_1 = require("../shared/random-hash");
17
20
  const validate_download_behavior_1 = require("../shared/validate-download-behavior");
@@ -31,6 +34,14 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
31
34
  if (lambdaParams.type !== constants_1.LambdaRoutines.still) {
32
35
  throw new TypeError('Expected still type');
33
36
  }
37
+ if (lambdaParams.version !== version_1.VERSION) {
38
+ if (lambdaParams.version !== version_1.VERSION) {
39
+ if (!lambdaParams.version) {
40
+ throw new Error(`Version mismatch: When calling renderMediaOnLambda(), you called the function ${process.env.AWS_LAMBDA_FUNCTION_NAME} which has the version ${version_1.VERSION} but the @remotion/lambda package is an older version. Deploy a new function and use it to call renderMediaOnLambda(). See: https://www.remotion.dev/docs/lambda/upgrading`);
41
+ }
42
+ throw new Error(`Version mismatch: When calling renderMediaOnLambda(), you passed ${process.env.AWS_LAMBDA_FUNCTION_NAME} as the function, which has the version ${version_1.VERSION}, but the @remotion/lambda package you used to invoke the function has version ${lambdaParams.version}. Deploy a new function and use it to call renderMediaOnLambda(). See: https://www.remotion.dev/docs/lambda/upgrading`);
43
+ }
44
+ }
34
45
  (0, validate_download_behavior_1.validateDownloadBehavior)(lambdaParams.downloadBehavior);
35
46
  (0, validate_privacy_1.validatePrivacy)(lambdaParams.privacy);
36
47
  (0, validate_outname_1.validateOutname)(lambdaParams.outName);
@@ -43,17 +54,27 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
43
54
  ]);
44
55
  const outputDir = renderer_1.RenderInternals.tmpDir('remotion-render-');
45
56
  const outputPath = path_1.default.join(outputDir, 'output');
57
+ const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
58
+ const inputProps = await (0, deserialize_input_props_1.deserializeInputProps)({
59
+ bucketName,
60
+ expectedBucketOwner: options.expectedBucketOwner,
61
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
62
+ serialized: lambdaParams.inputProps,
63
+ });
46
64
  const composition = await (0, validate_composition_1.validateComposition)({
47
65
  serveUrl: lambdaParams.serveUrl,
48
66
  browserInstance,
49
67
  composition: lambdaParams.composition,
50
- inputProps: lambdaParams.inputProps,
68
+ inputProps,
51
69
  envVariables: lambdaParams.envVariables,
52
70
  ffmpegExecutable: null,
53
71
  ffprobeExecutable: null,
54
72
  chromiumOptions: lambdaParams.chromiumOptions,
55
73
  timeoutInMilliseconds: lambdaParams.timeoutInMilliseconds,
56
74
  port: null,
75
+ downloadMap,
76
+ forceHeight: lambdaParams.forceHeight,
77
+ forceWidth: lambdaParams.forceWidth,
57
78
  });
58
79
  const renderMetadata = {
59
80
  startedDate: Date.now(),
@@ -65,15 +86,15 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
65
86
  siteId: (0, make_s3_url_1.getServeUrlHash)(lambdaParams.serveUrl),
66
87
  totalChunks: 1,
67
88
  type: 'still',
68
- usesOptimizationProfile: false,
69
89
  imageFormat: lambdaParams.imageFormat,
70
90
  inputProps: lambdaParams.inputProps,
71
- lambdaVersion: constants_1.CURRENT_VERSION,
91
+ lambdaVersion: version_1.VERSION,
72
92
  framesPerLambda: 1,
73
93
  memorySizeInMb: Number(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE),
74
94
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
75
95
  renderId,
76
96
  outName: (_b = lambdaParams.outName) !== null && _b !== void 0 ? _b : undefined,
97
+ privacy: lambdaParams.privacy,
77
98
  };
78
99
  await (0, io_1.lambdaWriteFile)({
79
100
  bucketName,
@@ -83,6 +104,7 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
83
104
  privacy: 'private',
84
105
  expectedBucketOwner: options.expectedBucketOwner,
85
106
  downloadBehavior: null,
107
+ customCredentials: null,
86
108
  });
87
109
  await (0, renderer_1.renderStill)({
88
110
  composition,
@@ -90,17 +112,21 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
90
112
  serveUrl: lambdaParams.serveUrl,
91
113
  dumpBrowserLogs: false,
92
114
  envVariables: lambdaParams.envVariables,
93
- frame: lambdaParams.frame,
115
+ frame: renderer_1.RenderInternals.convertToPositiveFrameIndex({
116
+ frame: lambdaParams.frame,
117
+ durationInFrames: composition.durationInFrames,
118
+ }),
94
119
  imageFormat: lambdaParams.imageFormat,
95
- inputProps: lambdaParams.inputProps,
120
+ inputProps,
96
121
  overwrite: false,
97
122
  puppeteerInstance: browserInstance,
98
123
  quality: lambdaParams.quality,
99
124
  chromiumOptions: lambdaParams.chromiumOptions,
100
125
  scale: lambdaParams.scale,
101
126
  timeoutInMilliseconds: lambdaParams.timeoutInMilliseconds,
127
+ downloadMap,
102
128
  });
103
- const { key, renderBucketName } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName);
129
+ const { key, renderBucketName, customCredentials } = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName, (0, expected_out_name_1.getCredentialsFromOutName)(lambdaParams.outName));
104
130
  const { size } = await fs_1.default.promises.stat(outputPath);
105
131
  await (0, io_1.lambdaWriteFile)({
106
132
  bucketName: renderBucketName,
@@ -110,8 +136,16 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
110
136
  expectedBucketOwner: options.expectedBucketOwner,
111
137
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
112
138
  downloadBehavior: lambdaParams.downloadBehavior,
139
+ customCredentials,
113
140
  });
114
- await fs_1.default.promises.rm(outputPath, { recursive: true });
141
+ await Promise.all([
142
+ fs_1.default.promises.rm(outputPath, { recursive: true }),
143
+ (0, cleanup_serialized_input_props_1.cleanupSerializedInputProps)({
144
+ bucketName,
145
+ region: (0, get_current_region_1.getCurrentRegionInFunction)(),
146
+ serialized: lambdaParams.inputProps,
147
+ }),
148
+ ]);
115
149
  const estimatedPrice = (0, estimate_price_1.estimatePrice)({
116
150
  durationInMiliseconds: Date.now() - start + 100,
117
151
  memorySizeInMb: Number(process.env.AWS_LAMBDA_FUNCTION_MEMORY_SIZE),
@@ -123,7 +157,7 @@ const innerStillHandler = async (lambdaParams, renderId, options) => {
123
157
  diskSizeInMb: constants_1.MAX_EPHEMERAL_STORAGE_IN_MB,
124
158
  });
125
159
  return {
126
- output: (0, get_output_url_from_metadata_1.getOutputUrlFromMetadata)(renderMetadata, bucketName),
160
+ output: (0, get_output_url_from_metadata_1.getOutputUrlFromMetadata)(renderMetadata, bucketName, customCredentials),
127
161
  size,
128
162
  bucketName,
129
163
  estimatedPrice: (0, format_costs_info_1.formatCostsInfo)(estimatedPrice),
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import type { DeleteFunctionInput } from './api/delete-function';
2
2
  import { deleteFunction } from './api/delete-function';
3
+ import type { DeleteRenderInput } from './api/delete-render';
4
+ import { deleteRender } from './api/delete-render';
3
5
  import type { DeleteSiteInput, DeleteSiteOutput } from './api/delete-site';
4
6
  import { deleteSite } from './api/delete-site';
5
7
  import type { DeployFunctionInput, DeployFunctionOutput } from './api/deploy-function';
@@ -31,10 +33,14 @@ import type { RenderMediaOnLambdaInput, RenderMediaOnLambdaOutput } from './api/
31
33
  import { renderMediaOnLambda, renderVideoOnLambda } from './api/render-media-on-lambda';
32
34
  import type { RenderStillOnLambdaInput, RenderStillOnLambdaOutput } from './api/render-still-on-lambda';
33
35
  import { renderStillOnLambda } from './api/render-still-on-lambda';
36
+ import { validateWebhookSignature } from './api/validate-webhook-signature';
34
37
  import type { LambdaLSInput, LambdaLsReturnType } from './functions/helpers/io';
38
+ import type { EnhancedErrorInfo, LambdaErrorInfo } from './functions/helpers/write-lambda-error';
35
39
  import { LambdaInternals } from './internals';
36
40
  import type { AwsRegion } from './pricing/aws-regions';
41
+ import type { CustomCredentials } from './shared/aws-clients';
37
42
  import type { RenderProgress } from './shared/constants';
43
+ import type { WebhookPayload } from './shared/invoke-webhook';
38
44
  import type { LambdaArchitecture } from './shared/validate-architecture';
39
- export { deleteSite, deployFunction, deploySite, downloadMedia, downloadVideo, getFunctions, getUserPolicy, getRolePolicy, getSites, getOrCreateBucket, getRenderProgress, renderVideoOnLambda, renderMediaOnLambda, simulatePermissions, deleteFunction, getFunctionInfo, estimatePrice, LambdaInternals, renderStillOnLambda, getRegions, getAwsClient, presignUrl, };
40
- export type { AwsRegion, RenderProgress, DeploySiteInput, DeploySiteOutput, LambdaLsReturnType, LambdaLSInput, DeleteSiteInput, DeleteSiteOutput, EstimatePriceInput, DeployFunctionInput, DeployFunctionOutput, DeleteFunctionInput, GetFunctionInfoInput, FunctionInfo, GetFunctionsInput, GetSitesInput, GetSitesOutput, DownloadMediaInput, DownloadMediaOutput, GetOrCreateBucketInput, GetOrCreateBucketOutput, GetRenderInput, RenderMediaOnLambdaInput, RenderMediaOnLambdaOutput, RenderStillOnLambdaInput, RenderStillOnLambdaOutput, SimulatePermissionsInput, SimulatePermissionsOutput, GetAwsClientInput, GetAwsClientOutput, LambdaArchitecture, };
45
+ export { deleteSite, deployFunction, deploySite, downloadMedia, downloadVideo, getFunctions, getUserPolicy, getRolePolicy, getSites, getOrCreateBucket, getRenderProgress, renderVideoOnLambda, renderMediaOnLambda, simulatePermissions, deleteFunction, getFunctionInfo, estimatePrice, LambdaInternals, renderStillOnLambda, getRegions, getAwsClient, presignUrl, deleteRender, validateWebhookSignature, };
46
+ export type { AwsRegion, RenderProgress, DeploySiteInput, DeploySiteOutput, LambdaLsReturnType, LambdaLSInput, DeleteSiteInput, DeleteSiteOutput, EstimatePriceInput, DeployFunctionInput, DeployFunctionOutput, DeleteFunctionInput, GetFunctionInfoInput, FunctionInfo, GetFunctionsInput, GetSitesInput, GetSitesOutput, DownloadMediaInput, DownloadMediaOutput, GetOrCreateBucketInput, GetOrCreateBucketOutput, GetRenderInput, RenderMediaOnLambdaInput, RenderMediaOnLambdaOutput, RenderStillOnLambdaInput, RenderStillOnLambdaOutput, SimulatePermissionsInput, SimulatePermissionsOutput, GetAwsClientInput, GetAwsClientOutput, LambdaArchitecture, CustomCredentials, WebhookPayload, LambdaErrorInfo, EnhancedErrorInfo, DeleteRenderInput, };
package/dist/index.js CHANGED
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.presignUrl = exports.getAwsClient = exports.getRegions = exports.renderStillOnLambda = exports.LambdaInternals = exports.estimatePrice = exports.getFunctionInfo = exports.deleteFunction = exports.simulatePermissions = exports.renderMediaOnLambda = exports.renderVideoOnLambda = exports.getRenderProgress = exports.getOrCreateBucket = exports.getSites = exports.getRolePolicy = exports.getUserPolicy = exports.getFunctions = exports.downloadVideo = exports.downloadMedia = exports.deploySite = exports.deployFunction = exports.deleteSite = void 0;
3
+ exports.validateWebhookSignature = exports.deleteRender = exports.presignUrl = exports.getAwsClient = exports.getRegions = exports.renderStillOnLambda = exports.LambdaInternals = exports.estimatePrice = exports.getFunctionInfo = exports.deleteFunction = exports.simulatePermissions = exports.renderMediaOnLambda = exports.renderVideoOnLambda = exports.getRenderProgress = exports.getOrCreateBucket = exports.getSites = exports.getRolePolicy = exports.getUserPolicy = exports.getFunctions = exports.downloadVideo = exports.downloadMedia = exports.deploySite = exports.deployFunction = exports.deleteSite = void 0;
4
4
  const delete_function_1 = require("./api/delete-function");
5
5
  Object.defineProperty(exports, "deleteFunction", { enumerable: true, get: function () { return delete_function_1.deleteFunction; } });
6
+ const delete_render_1 = require("./api/delete-render");
7
+ Object.defineProperty(exports, "deleteRender", { enumerable: true, get: function () { return delete_render_1.deleteRender; } });
6
8
  const delete_site_1 = require("./api/delete-site");
7
9
  Object.defineProperty(exports, "deleteSite", { enumerable: true, get: function () { return delete_site_1.deleteSite; } });
8
10
  const deploy_function_1 = require("./api/deploy-function");
@@ -40,5 +42,7 @@ Object.defineProperty(exports, "renderMediaOnLambda", { enumerable: true, get: f
40
42
  Object.defineProperty(exports, "renderVideoOnLambda", { enumerable: true, get: function () { return render_media_on_lambda_1.renderVideoOnLambda; } });
41
43
  const render_still_on_lambda_1 = require("./api/render-still-on-lambda");
42
44
  Object.defineProperty(exports, "renderStillOnLambda", { enumerable: true, get: function () { return render_still_on_lambda_1.renderStillOnLambda; } });
45
+ const validate_webhook_signature_1 = require("./api/validate-webhook-signature");
46
+ Object.defineProperty(exports, "validateWebhookSignature", { enumerable: true, get: function () { return validate_webhook_signature_1.validateWebhookSignature; } });
43
47
  const internals_1 = require("./internals");
44
48
  Object.defineProperty(exports, "LambdaInternals", { enumerable: true, get: function () { return internals_1.LambdaInternals; } });
@@ -1,3 +1,3 @@
1
1
  export declare const LambdaInternals: {
2
- executeCommand: (args: string[]) => Promise<void>;
2
+ executeCommand: (args: string[], remotionRoot: string) => Promise<void>;
3
3
  };
package/dist/internals.js CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
package/dist/regions.d.ts CHANGED
File without changes
package/dist/regions.js CHANGED
File without changes
File without changes
File without changes
@@ -11,9 +11,20 @@ export declare type ServiceMapping = {
11
11
  lambda: LambdaClient;
12
12
  servicequotas: ServiceQuotasClient;
13
13
  };
14
- export declare const getServiceClient: <T extends keyof ServiceMapping>(region: AwsRegion, service: T) => ServiceMapping[T];
14
+ export declare type CustomCredentialsWithoutSensitiveData = {
15
+ endpoint: string;
16
+ };
17
+ export declare type CustomCredentials = CustomCredentialsWithoutSensitiveData & {
18
+ accessKeyId: string | null;
19
+ secretAccessKey: string | null;
20
+ };
21
+ export declare const getServiceClient: <T extends keyof ServiceMapping>({ region, service, customCredentials, }: {
22
+ region: AwsRegion;
23
+ service: T;
24
+ customCredentials: CustomCredentials | null;
25
+ }) => ServiceMapping[T];
15
26
  export declare const getCloudWatchLogsClient: (region: AwsRegion) => CloudWatchLogsClient;
16
- export declare const getS3Client: (region: AwsRegion) => S3Client;
27
+ export declare const getS3Client: (region: AwsRegion, customCredentials: CustomCredentials | null) => S3Client;
17
28
  export declare const getLambdaClient: (region: AwsRegion) => LambdaClient;
18
29
  export declare const getIamClient: (region: AwsRegion) => IAMClient;
19
30
  export declare const getServiceQuotasClient: (region: AwsRegion) => ServiceQuotasClient;