@remotion/lambda 4.0.0-offthread.9 → 4.0.0-prefetch.7

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 (504) hide show
  1. package/dist/admin/bundle-lambda.js +1 -0
  2. package/dist/admin/make-layer-public.js +8 -8
  3. package/dist/api/bucket-exists.d.ts +1 -1
  4. package/dist/api/clean-items.d.ts +1 -1
  5. package/dist/api/create-bucket.d.ts +1 -1
  6. package/dist/api/create-function.d.ts +2 -2
  7. package/dist/api/delete-function.d.ts +1 -1
  8. package/dist/api/delete-site.d.ts +1 -1
  9. package/dist/api/deploy-function.d.ts +2 -2
  10. package/dist/api/deploy-function.js +4 -2
  11. package/dist/api/deploy-site.d.ts +3 -3
  12. package/dist/api/deploy-site.js +2 -3
  13. package/dist/api/download-media.d.ts +2 -2
  14. package/dist/api/enable-s3-website.d.ts +1 -1
  15. package/dist/api/estimate-price.d.ts +2 -2
  16. package/dist/api/get-aws-client.d.ts +2 -2
  17. package/dist/api/get-buckets.d.ts +1 -1
  18. package/dist/api/get-function-info.d.ts +2 -3
  19. package/dist/api/get-functions.d.ts +2 -2
  20. package/dist/api/get-functions.js +2 -1
  21. package/dist/api/get-or-create-bucket.d.ts +1 -1
  22. package/dist/api/get-regions.d.ts +1 -1
  23. package/dist/api/get-render-progress.d.ts +2 -2
  24. package/dist/api/get-render-progress.js +2 -0
  25. package/dist/api/get-sites.d.ts +2 -2
  26. package/dist/api/iam-validation/role-permissions.d.ts +2 -1
  27. package/dist/api/iam-validation/simulate-rule.d.ts +1 -1
  28. package/dist/api/iam-validation/simulate.d.ts +2 -2
  29. package/dist/api/mock-functions.d.ts +6 -7
  30. package/dist/api/presign-url.d.ts +3 -2
  31. package/dist/api/presign-url.js +5 -0
  32. package/dist/api/render-media-on-lambda.d.ts +15 -8
  33. package/dist/api/render-media-on-lambda.js +58 -32
  34. package/dist/api/render-still-on-lambda.d.ts +9 -7
  35. package/dist/api/render-still-on-lambda.js +49 -31
  36. package/dist/api/upload-dir.d.ts +2 -2
  37. package/dist/api/upload-dir.js +5 -1
  38. package/dist/cli/args.d.ts +4 -3
  39. package/dist/cli/commands/functions/deploy.js +2 -1
  40. package/dist/cli/commands/render/progress.d.ts +4 -4
  41. package/dist/cli/commands/render/progress.js +11 -3
  42. package/dist/cli/commands/render/render.js +15 -10
  43. package/dist/cli/commands/sites/create.js +2 -3
  44. package/dist/cli/commands/sites/ls.js +1 -2
  45. package/dist/cli/commands/sites/rm.js +2 -3
  46. package/dist/cli/commands/sites/rmall.js +2 -3
  47. package/dist/cli/commands/still.js +2 -9
  48. package/dist/cli/get-aws-region.d.ts +1 -1
  49. package/dist/cli/get-aws-region.js +2 -1
  50. package/dist/cli/helpers/find-function-name.js +3 -2
  51. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +2 -2
  52. package/dist/cli/helpers/progress-bar.js +1 -2
  53. package/dist/cli/index.js +1 -1
  54. package/dist/functions/chunk-optimization/can-use-optimization.d.ts +1 -1
  55. package/dist/functions/chunk-optimization/can-use-optimization.js +2 -2
  56. package/dist/functions/chunk-optimization/collect-data.d.ts +1 -1
  57. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +5 -2
  58. package/dist/functions/chunk-optimization/get-profile-duration.d.ts +1 -1
  59. package/dist/functions/chunk-optimization/is-valid-profile.d.ts +1 -1
  60. package/dist/functions/chunk-optimization/is-valid-profile.js +2 -2
  61. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +1 -1
  62. package/dist/functions/chunk-optimization/optimize-profile.d.ts +9 -3
  63. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +7 -4
  64. package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -6
  65. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +2 -2
  66. package/dist/functions/chunk-optimization/s3-optimization-file.js +1 -0
  67. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +5 -2
  68. package/dist/functions/chunk-optimization/sort-by-duration.d.ts +1 -1
  69. package/dist/functions/chunk-optimization/types.d.ts +2 -2
  70. package/dist/functions/helpers/calculate-chunk-times.d.ts +1 -1
  71. package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -4
  72. package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
  73. package/dist/functions/helpers/check-if-render-exists.js +14 -0
  74. package/dist/functions/helpers/concat-videos.d.ts +5 -4
  75. package/dist/functions/helpers/concat-videos.js +2 -1
  76. package/dist/functions/helpers/create-post-render-data.d.ts +6 -6
  77. package/dist/functions/helpers/create-post-render-data.js +12 -7
  78. package/dist/functions/helpers/delete-chunks.d.ts +3 -3
  79. package/dist/functions/helpers/expected-out-name.d.ts +1 -1
  80. package/dist/functions/helpers/find-output-file-in-bucket.d.ts +2 -2
  81. package/dist/functions/helpers/find-output-file-in-bucket.js +6 -0
  82. package/dist/functions/helpers/format-costs-info.d.ts +1 -1
  83. package/dist/functions/helpers/get-browser-instance.d.ts +2 -1
  84. package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -2
  85. package/dist/functions/helpers/get-current-architecture.d.ts +1 -1
  86. package/dist/functions/helpers/get-encoding-metadata.d.ts +2 -2
  87. package/dist/functions/helpers/get-files-to-delete.js +1 -1
  88. package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -2
  89. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +8 -3
  90. package/dist/functions/helpers/get-lambdas-invoked-stats.js +8 -8
  91. package/dist/functions/helpers/get-output-url-from-metadata.d.ts +1 -1
  92. package/dist/functions/helpers/get-post-render-data.d.ts +2 -2
  93. package/dist/functions/helpers/get-progress.d.ts +2 -2
  94. package/dist/functions/helpers/get-progress.js +20 -10
  95. package/dist/functions/helpers/get-render-metadata.d.ts +2 -2
  96. package/dist/functions/helpers/get-retry-stats.d.ts +1 -1
  97. package/dist/functions/helpers/get-retry-stats.js +1 -1
  98. package/dist/functions/helpers/get-time-to-finish.d.ts +1 -1
  99. package/dist/functions/helpers/inspect-errors.d.ts +3 -3
  100. package/dist/functions/helpers/io.d.ts +13 -6
  101. package/dist/functions/helpers/io.js +16 -3
  102. package/dist/functions/helpers/min-max.d.ts +1 -1
  103. package/dist/functions/helpers/min-max.js +1 -1
  104. package/dist/functions/helpers/print-cloudwatch-helper.d.ts +2 -2
  105. package/dist/functions/helpers/read-with-progress.d.ts +3 -2
  106. package/dist/functions/helpers/read-with-progress.js +13 -1
  107. package/dist/functions/helpers/validate-composition.d.ts +6 -4
  108. package/dist/functions/helpers/validate-composition.js +3 -1
  109. package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
  110. package/dist/functions/helpers/write-lambda-error.js +1 -0
  111. package/dist/functions/helpers/write-post-render-data.d.ts +2 -2
  112. package/dist/functions/helpers/write-post-render-data.js +1 -0
  113. package/dist/functions/index.d.ts +3 -2
  114. package/dist/functions/index.js +14 -7
  115. package/dist/functions/info.d.ts +2 -2
  116. package/dist/functions/info.js +2 -1
  117. package/dist/functions/launch.d.ts +1 -1
  118. package/dist/functions/launch.js +69 -27
  119. package/dist/functions/progress.d.ts +1 -1
  120. package/dist/functions/progress.js +7 -0
  121. package/dist/functions/renderer.d.ts +1 -1
  122. package/dist/functions/renderer.js +105 -74
  123. package/dist/functions/start.d.ts +6 -2
  124. package/dist/functions/start.js +25 -3
  125. package/dist/functions/still.d.ts +1 -1
  126. package/dist/functions/still.js +21 -7
  127. package/dist/index.d.ts +33 -18
  128. package/dist/pricing/price-per-1-s.d.ts +1 -1
  129. package/dist/shared/aws-clients.d.ts +1 -1
  130. package/dist/shared/bundle-site.d.ts +1 -6
  131. package/dist/shared/call-lambda.d.ts +3 -3
  132. package/dist/shared/check-credentials.js +2 -2
  133. package/dist/shared/constants.d.ts +38 -17
  134. package/dist/shared/constants.js +8 -7
  135. package/dist/shared/content-disposition-header.d.ts +7 -0
  136. package/dist/shared/content-disposition-header.js +19 -0
  137. package/dist/shared/convert-to-serve-url.d.ts +1 -1
  138. package/dist/shared/get-account-id.d.ts +1 -1
  139. package/dist/shared/get-cloudwatch-stream-url.d.ts +8 -0
  140. package/dist/shared/get-cloudwatch-stream-url.js +7 -0
  141. package/dist/shared/get-function-version.d.ts +2 -3
  142. package/dist/shared/get-most-expensive-chunks.d.ts +8 -0
  143. package/dist/shared/get-most-expensive-chunks.js +25 -0
  144. package/dist/shared/hosted-layers.d.ts +2 -2
  145. package/dist/shared/hosted-layers.js +80 -80
  146. package/dist/shared/is-in-lambda.js +5 -1
  147. package/dist/shared/lambda-version-string.d.ts +1 -0
  148. package/dist/shared/lambda-version-string.js +7 -0
  149. package/dist/shared/make-s3-url.d.ts +1 -1
  150. package/dist/shared/return-values.d.ts +7 -7
  151. package/dist/shared/return-values.js +0 -1
  152. package/dist/shared/stream-to-string.d.ts +1 -1
  153. package/dist/shared/truthy.d.ts +3 -0
  154. package/dist/shared/truthy.js +7 -0
  155. package/dist/shared/validate-aws-region.d.ts +1 -1
  156. package/dist/shared/validate-download-behavior.d.ts +1 -0
  157. package/dist/shared/validate-download-behavior.js +21 -0
  158. package/dist/shared/validate-lambda-codec.d.ts +4 -0
  159. package/dist/shared/validate-lambda-codec.js +30 -0
  160. package/dist/shared/validate-outname.d.ts +1 -1
  161. package/dist/shared/validate-presign-expiration.d.ts +0 -2
  162. package/dist/shared/validate-presign-expiration.js +7 -7
  163. package/dist/shared/validate-privacy.d.ts +1 -1
  164. package/dist/shared/validate-privacy.js +2 -2
  165. package/package.json +9 -11
  166. package/remotionlambda.zip +0 -0
  167. package/dist/admin/bundle-lambda.d.ts.map +0 -1
  168. package/dist/admin/bundle-lambda.js.map +0 -1
  169. package/dist/admin/make-layer-public.d.ts.map +0 -1
  170. package/dist/admin/make-layer-public.js.map +0 -1
  171. package/dist/api/bucket-exists.d.ts.map +0 -1
  172. package/dist/api/bucket-exists.js.map +0 -1
  173. package/dist/api/clean-items.d.ts.map +0 -1
  174. package/dist/api/clean-items.js.map +0 -1
  175. package/dist/api/create-bucket.d.ts.map +0 -1
  176. package/dist/api/create-bucket.js.map +0 -1
  177. package/dist/api/create-function.d.ts.map +0 -1
  178. package/dist/api/create-function.js.map +0 -1
  179. package/dist/api/delete-function.d.ts.map +0 -1
  180. package/dist/api/delete-function.js.map +0 -1
  181. package/dist/api/delete-site.d.ts.map +0 -1
  182. package/dist/api/delete-site.js.map +0 -1
  183. package/dist/api/deploy-function.d.ts.map +0 -1
  184. package/dist/api/deploy-function.js.map +0 -1
  185. package/dist/api/deploy-site.d.ts.map +0 -1
  186. package/dist/api/deploy-site.js.map +0 -1
  187. package/dist/api/download-media.d.ts.map +0 -1
  188. package/dist/api/download-media.js.map +0 -1
  189. package/dist/api/enable-s3-website.d.ts.map +0 -1
  190. package/dist/api/enable-s3-website.js.map +0 -1
  191. package/dist/api/estimate-price.d.ts.map +0 -1
  192. package/dist/api/estimate-price.js.map +0 -1
  193. package/dist/api/get-aws-client.d.ts.map +0 -1
  194. package/dist/api/get-aws-client.js.map +0 -1
  195. package/dist/api/get-buckets.d.ts.map +0 -1
  196. package/dist/api/get-buckets.js.map +0 -1
  197. package/dist/api/get-function-info.d.ts.map +0 -1
  198. package/dist/api/get-function-info.js.map +0 -1
  199. package/dist/api/get-functions.d.ts.map +0 -1
  200. package/dist/api/get-functions.js.map +0 -1
  201. package/dist/api/get-or-create-bucket.d.ts.map +0 -1
  202. package/dist/api/get-or-create-bucket.js.map +0 -1
  203. package/dist/api/get-regions.d.ts.map +0 -1
  204. package/dist/api/get-regions.js.map +0 -1
  205. package/dist/api/get-render-progress.d.ts.map +0 -1
  206. package/dist/api/get-render-progress.js.map +0 -1
  207. package/dist/api/get-sites.d.ts.map +0 -1
  208. package/dist/api/get-sites.js.map +0 -1
  209. package/dist/api/iam-validation/role-permissions.d.ts.map +0 -1
  210. package/dist/api/iam-validation/role-permissions.js.map +0 -1
  211. package/dist/api/iam-validation/simulate-rule.d.ts.map +0 -1
  212. package/dist/api/iam-validation/simulate-rule.js.map +0 -1
  213. package/dist/api/iam-validation/simulate.d.ts.map +0 -1
  214. package/dist/api/iam-validation/simulate.js.map +0 -1
  215. package/dist/api/iam-validation/suggested-policy.d.ts.map +0 -1
  216. package/dist/api/iam-validation/suggested-policy.js.map +0 -1
  217. package/dist/api/iam-validation/user-permissions.d.ts.map +0 -1
  218. package/dist/api/iam-validation/user-permissions.js.map +0 -1
  219. package/dist/api/mock-functions.d.ts.map +0 -1
  220. package/dist/api/mock-functions.js.map +0 -1
  221. package/dist/api/presign-url.d.ts.map +0 -1
  222. package/dist/api/presign-url.js.map +0 -1
  223. package/dist/api/render-media-on-lambda.d.ts.map +0 -1
  224. package/dist/api/render-media-on-lambda.js.map +0 -1
  225. package/dist/api/render-still-on-lambda.d.ts.map +0 -1
  226. package/dist/api/render-still-on-lambda.js.map +0 -1
  227. package/dist/api/upload-dir.d.ts.map +0 -1
  228. package/dist/api/upload-dir.js.map +0 -1
  229. package/dist/cli/args.d.ts.map +0 -1
  230. package/dist/cli/args.js.map +0 -1
  231. package/dist/cli/commands/functions/deploy.d.ts.map +0 -1
  232. package/dist/cli/commands/functions/deploy.js.map +0 -1
  233. package/dist/cli/commands/functions/index.d.ts.map +0 -1
  234. package/dist/cli/commands/functions/index.js.map +0 -1
  235. package/dist/cli/commands/functions/ls.d.ts.map +0 -1
  236. package/dist/cli/commands/functions/ls.js.map +0 -1
  237. package/dist/cli/commands/functions/rm.d.ts.map +0 -1
  238. package/dist/cli/commands/functions/rm.js.map +0 -1
  239. package/dist/cli/commands/functions/rmall.d.ts.map +0 -1
  240. package/dist/cli/commands/functions/rmall.js.map +0 -1
  241. package/dist/cli/commands/policies/policies.d.ts.map +0 -1
  242. package/dist/cli/commands/policies/policies.js.map +0 -1
  243. package/dist/cli/commands/policies/role.d.ts.map +0 -1
  244. package/dist/cli/commands/policies/role.js.map +0 -1
  245. package/dist/cli/commands/policies/user.d.ts.map +0 -1
  246. package/dist/cli/commands/policies/user.js.map +0 -1
  247. package/dist/cli/commands/policies/validate.d.ts.map +0 -1
  248. package/dist/cli/commands/policies/validate.js.map +0 -1
  249. package/dist/cli/commands/quotas/increase.d.ts.map +0 -1
  250. package/dist/cli/commands/quotas/increase.js.map +0 -1
  251. package/dist/cli/commands/quotas/index.d.ts.map +0 -1
  252. package/dist/cli/commands/quotas/index.js.map +0 -1
  253. package/dist/cli/commands/quotas/list.d.ts.map +0 -1
  254. package/dist/cli/commands/quotas/list.js.map +0 -1
  255. package/dist/cli/commands/regions.d.ts.map +0 -1
  256. package/dist/cli/commands/regions.js.map +0 -1
  257. package/dist/cli/commands/render/progress.d.ts.map +0 -1
  258. package/dist/cli/commands/render/progress.js.map +0 -1
  259. package/dist/cli/commands/render/render.d.ts.map +0 -1
  260. package/dist/cli/commands/render/render.js.map +0 -1
  261. package/dist/cli/commands/sites/create.d.ts.map +0 -1
  262. package/dist/cli/commands/sites/create.js.map +0 -1
  263. package/dist/cli/commands/sites/index.d.ts.map +0 -1
  264. package/dist/cli/commands/sites/index.js.map +0 -1
  265. package/dist/cli/commands/sites/ls.d.ts.map +0 -1
  266. package/dist/cli/commands/sites/ls.js.map +0 -1
  267. package/dist/cli/commands/sites/rm.d.ts.map +0 -1
  268. package/dist/cli/commands/sites/rm.js.map +0 -1
  269. package/dist/cli/commands/sites/rmall.d.ts.map +0 -1
  270. package/dist/cli/commands/sites/rmall.js.map +0 -1
  271. package/dist/cli/commands/still.d.ts.map +0 -1
  272. package/dist/cli/commands/still.js.map +0 -1
  273. package/dist/cli/get-aws-region.d.ts.map +0 -1
  274. package/dist/cli/get-aws-region.js.map +0 -1
  275. package/dist/cli/help.d.ts.map +0 -1
  276. package/dist/cli/help.js.map +0 -1
  277. package/dist/cli/helpers/confirm.d.ts.map +0 -1
  278. package/dist/cli/helpers/confirm.js.map +0 -1
  279. package/dist/cli/helpers/date-string.d.ts.map +0 -1
  280. package/dist/cli/helpers/date-string.js.map +0 -1
  281. package/dist/cli/helpers/find-function-name.d.ts.map +0 -1
  282. package/dist/cli/helpers/find-function-name.js.map +0 -1
  283. package/dist/cli/helpers/format-bytes.d.ts +0 -6
  284. package/dist/cli/helpers/format-bytes.d.ts.map +0 -1
  285. package/dist/cli/helpers/format-bytes.js +0 -103
  286. package/dist/cli/helpers/format-bytes.js.map +0 -1
  287. package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts.map +0 -1
  288. package/dist/cli/helpers/get-cloudwatch-stream-url.js.map +0 -1
  289. package/dist/cli/helpers/progress-bar.d.ts.map +0 -1
  290. package/dist/cli/helpers/progress-bar.js.map +0 -1
  291. package/dist/cli/helpers/quit.d.ts.map +0 -1
  292. package/dist/cli/helpers/quit.js.map +0 -1
  293. package/dist/cli/helpers/yes-or-no.d.ts.map +0 -1
  294. package/dist/cli/helpers/yes-or-no.js.map +0 -1
  295. package/dist/cli/index.d.ts.map +0 -1
  296. package/dist/cli/index.js.map +0 -1
  297. package/dist/cli/is-cli.d.ts.map +0 -1
  298. package/dist/cli/is-cli.js.map +0 -1
  299. package/dist/cli/log.d.ts.map +0 -1
  300. package/dist/cli/log.js.map +0 -1
  301. package/dist/client.d.ts.map +0 -1
  302. package/dist/client.js.map +0 -1
  303. package/dist/defaults.d.ts.map +0 -1
  304. package/dist/defaults.js.map +0 -1
  305. package/dist/functions/chunk-optimization/can-use-optimization.d.ts.map +0 -1
  306. package/dist/functions/chunk-optimization/can-use-optimization.js.map +0 -1
  307. package/dist/functions/chunk-optimization/collect-data.d.ts.map +0 -1
  308. package/dist/functions/chunk-optimization/collect-data.js.map +0 -1
  309. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts.map +0 -1
  310. package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js.map +0 -1
  311. package/dist/functions/chunk-optimization/get-profile-duration.d.ts.map +0 -1
  312. package/dist/functions/chunk-optimization/get-profile-duration.js.map +0 -1
  313. package/dist/functions/chunk-optimization/is-valid-profile.d.ts.map +0 -1
  314. package/dist/functions/chunk-optimization/is-valid-profile.js.map +0 -1
  315. package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts.map +0 -1
  316. package/dist/functions/chunk-optimization/optimize-invocation-order.js.map +0 -1
  317. package/dist/functions/chunk-optimization/optimize-profile.d.ts.map +0 -1
  318. package/dist/functions/chunk-optimization/optimize-profile.js.map +0 -1
  319. package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts.map +0 -1
  320. package/dist/functions/chunk-optimization/plan-frame-ranges.js.map +0 -1
  321. package/dist/functions/chunk-optimization/s3-optimization-file.d.ts.map +0 -1
  322. package/dist/functions/chunk-optimization/s3-optimization-file.js.map +0 -1
  323. package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts.map +0 -1
  324. package/dist/functions/chunk-optimization/simulate-frame-ranges.js.map +0 -1
  325. package/dist/functions/chunk-optimization/sort-by-duration.d.ts.map +0 -1
  326. package/dist/functions/chunk-optimization/sort-by-duration.js.map +0 -1
  327. package/dist/functions/chunk-optimization/types.d.ts.map +0 -1
  328. package/dist/functions/chunk-optimization/types.js.map +0 -1
  329. package/dist/functions/helpers/best-frames-per-lambda-param.d.ts.map +0 -1
  330. package/dist/functions/helpers/best-frames-per-lambda-param.js.map +0 -1
  331. package/dist/functions/helpers/calculate-chunk-times.d.ts.map +0 -1
  332. package/dist/functions/helpers/calculate-chunk-times.js.map +0 -1
  333. package/dist/functions/helpers/calculate-price-from-bucket.d.ts.map +0 -1
  334. package/dist/functions/helpers/calculate-price-from-bucket.js.map +0 -1
  335. package/dist/functions/helpers/clean-tmpdir.d.ts.map +0 -1
  336. package/dist/functions/helpers/clean-tmpdir.js.map +0 -1
  337. package/dist/functions/helpers/concat-videos.d.ts.map +0 -1
  338. package/dist/functions/helpers/concat-videos.js.map +0 -1
  339. package/dist/functions/helpers/create-post-render-data.d.ts.map +0 -1
  340. package/dist/functions/helpers/create-post-render-data.js.map +0 -1
  341. package/dist/functions/helpers/delete-chunks.d.ts.map +0 -1
  342. package/dist/functions/helpers/delete-chunks.js.map +0 -1
  343. package/dist/functions/helpers/expected-out-name.d.ts.map +0 -1
  344. package/dist/functions/helpers/expected-out-name.js.map +0 -1
  345. package/dist/functions/helpers/find-output-file-in-bucket.d.ts.map +0 -1
  346. package/dist/functions/helpers/find-output-file-in-bucket.js.map +0 -1
  347. package/dist/functions/helpers/format-costs-info.d.ts.map +0 -1
  348. package/dist/functions/helpers/format-costs-info.js.map +0 -1
  349. package/dist/functions/helpers/get-browser-instance.d.ts.map +0 -1
  350. package/dist/functions/helpers/get-browser-instance.js.map +0 -1
  351. package/dist/functions/helpers/get-chromium-executable-path.d.ts.map +0 -1
  352. package/dist/functions/helpers/get-chromium-executable-path.js.map +0 -1
  353. package/dist/functions/helpers/get-cleanup-progress.d.ts.map +0 -1
  354. package/dist/functions/helpers/get-cleanup-progress.js.map +0 -1
  355. package/dist/functions/helpers/get-current-architecture.d.ts.map +0 -1
  356. package/dist/functions/helpers/get-current-architecture.js.map +0 -1
  357. package/dist/functions/helpers/get-current-region.d.ts.map +0 -1
  358. package/dist/functions/helpers/get-current-region.js.map +0 -1
  359. package/dist/functions/helpers/get-encoding-metadata.d.ts.map +0 -1
  360. package/dist/functions/helpers/get-encoding-metadata.js.map +0 -1
  361. package/dist/functions/helpers/get-files-in-folder.d.ts.map +0 -1
  362. package/dist/functions/helpers/get-files-in-folder.js.map +0 -1
  363. package/dist/functions/helpers/get-files-to-delete.d.ts.map +0 -1
  364. package/dist/functions/helpers/get-files-to-delete.js.map +0 -1
  365. package/dist/functions/helpers/get-final-encoding-status.d.ts.map +0 -1
  366. package/dist/functions/helpers/get-final-encoding-status.js.map +0 -1
  367. package/dist/functions/helpers/get-folder-size.d.ts.map +0 -1
  368. package/dist/functions/helpers/get-folder-size.js.map +0 -1
  369. package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts.map +0 -1
  370. package/dist/functions/helpers/get-lambdas-invoked-stats.js.map +0 -1
  371. package/dist/functions/helpers/get-output-url-from-metadata.d.ts.map +0 -1
  372. package/dist/functions/helpers/get-output-url-from-metadata.js.map +0 -1
  373. package/dist/functions/helpers/get-overall-progress.d.ts.map +0 -1
  374. package/dist/functions/helpers/get-overall-progress.js.map +0 -1
  375. package/dist/functions/helpers/get-post-render-data.d.ts.map +0 -1
  376. package/dist/functions/helpers/get-post-render-data.js.map +0 -1
  377. package/dist/functions/helpers/get-progress.d.ts.map +0 -1
  378. package/dist/functions/helpers/get-progress.js.map +0 -1
  379. package/dist/functions/helpers/get-render-metadata.d.ts.map +0 -1
  380. package/dist/functions/helpers/get-render-metadata.js.map +0 -1
  381. package/dist/functions/helpers/get-retry-stats.d.ts.map +0 -1
  382. package/dist/functions/helpers/get-retry-stats.js.map +0 -1
  383. package/dist/functions/helpers/get-time-to-finish.d.ts.map +0 -1
  384. package/dist/functions/helpers/get-time-to-finish.js.map +0 -1
  385. package/dist/functions/helpers/inspect-errors.d.ts.map +0 -1
  386. package/dist/functions/helpers/inspect-errors.js.map +0 -1
  387. package/dist/functions/helpers/io.d.ts.map +0 -1
  388. package/dist/functions/helpers/io.js.map +0 -1
  389. package/dist/functions/helpers/is-enosp-err.d.ts.map +0 -1
  390. package/dist/functions/helpers/is-enosp-err.js.map +0 -1
  391. package/dist/functions/helpers/is-warm.d.ts.map +0 -1
  392. package/dist/functions/helpers/is-warm.js.map +0 -1
  393. package/dist/functions/helpers/min-max.d.ts.map +0 -1
  394. package/dist/functions/helpers/min-max.js.map +0 -1
  395. package/dist/functions/helpers/print-cloudwatch-helper.d.ts.map +0 -1
  396. package/dist/functions/helpers/print-cloudwatch-helper.js.map +0 -1
  397. package/dist/functions/helpers/print-concurrency-curve.d.ts.map +0 -1
  398. package/dist/functions/helpers/print-concurrency-curve.js.map +0 -1
  399. package/dist/functions/helpers/read-with-progress.d.ts.map +0 -1
  400. package/dist/functions/helpers/read-with-progress.js.map +0 -1
  401. package/dist/functions/helpers/timer.d.ts.map +0 -1
  402. package/dist/functions/helpers/timer.js.map +0 -1
  403. package/dist/functions/helpers/validate-composition.d.ts.map +0 -1
  404. package/dist/functions/helpers/validate-composition.js.map +0 -1
  405. package/dist/functions/helpers/write-lambda-error.d.ts.map +0 -1
  406. package/dist/functions/helpers/write-lambda-error.js.map +0 -1
  407. package/dist/functions/helpers/write-post-render-data.d.ts.map +0 -1
  408. package/dist/functions/helpers/write-post-render-data.js.map +0 -1
  409. package/dist/functions/index.d.ts.map +0 -1
  410. package/dist/functions/index.js.map +0 -1
  411. package/dist/functions/info.d.ts.map +0 -1
  412. package/dist/functions/info.js.map +0 -1
  413. package/dist/functions/launch.d.ts.map +0 -1
  414. package/dist/functions/launch.js.map +0 -1
  415. package/dist/functions/progress.d.ts.map +0 -1
  416. package/dist/functions/progress.js.map +0 -1
  417. package/dist/functions/renderer.d.ts.map +0 -1
  418. package/dist/functions/renderer.js.map +0 -1
  419. package/dist/functions/start.d.ts.map +0 -1
  420. package/dist/functions/start.js.map +0 -1
  421. package/dist/functions/still.d.ts.map +0 -1
  422. package/dist/functions/still.js.map +0 -1
  423. package/dist/index.d.ts.map +0 -1
  424. package/dist/index.js.map +0 -1
  425. package/dist/internals.d.ts.map +0 -1
  426. package/dist/internals.js.map +0 -1
  427. package/dist/pricing/aws-regions.d.ts.map +0 -1
  428. package/dist/pricing/aws-regions.js.map +0 -1
  429. package/dist/pricing/price-per-1-s.d.ts.map +0 -1
  430. package/dist/pricing/price-per-1-s.js.map +0 -1
  431. package/dist/regions.d.ts.map +0 -1
  432. package/dist/regions.js.map +0 -1
  433. package/dist/shared/await.d.ts.map +0 -1
  434. package/dist/shared/await.js.map +0 -1
  435. package/dist/shared/aws-clients.d.ts.map +0 -1
  436. package/dist/shared/aws-clients.js.map +0 -1
  437. package/dist/shared/bundle-site.d.ts.map +0 -1
  438. package/dist/shared/bundle-site.js.map +0 -1
  439. package/dist/shared/call-lambda.d.ts.map +0 -1
  440. package/dist/shared/call-lambda.js.map +0 -1
  441. package/dist/shared/check-credentials.d.ts.map +0 -1
  442. package/dist/shared/check-credentials.js.map +0 -1
  443. package/dist/shared/chunk.d.ts +0 -1
  444. package/dist/shared/chunk.d.ts.map +0 -1
  445. package/dist/shared/chunk.js +0 -11
  446. package/dist/shared/chunk.js.map +0 -1
  447. package/dist/shared/constants.d.ts.map +0 -1
  448. package/dist/shared/constants.js.map +0 -1
  449. package/dist/shared/convert-to-serve-url.d.ts.map +0 -1
  450. package/dist/shared/convert-to-serve-url.js.map +0 -1
  451. package/dist/shared/docs-url.d.ts.map +0 -1
  452. package/dist/shared/docs-url.js.map +0 -1
  453. package/dist/shared/function-zip-path.d.ts.map +0 -1
  454. package/dist/shared/function-zip-path.js.map +0 -1
  455. package/dist/shared/get-account-id.d.ts.map +0 -1
  456. package/dist/shared/get-account-id.js.map +0 -1
  457. package/dist/shared/get-function-version.d.ts.map +0 -1
  458. package/dist/shared/get-function-version.js.map +0 -1
  459. package/dist/shared/hosted-layers.d.ts.map +0 -1
  460. package/dist/shared/hosted-layers.js.map +0 -1
  461. package/dist/shared/is-in-lambda.d.ts.map +0 -1
  462. package/dist/shared/is-in-lambda.js.map +0 -1
  463. package/dist/shared/make-s3-url.d.ts.map +0 -1
  464. package/dist/shared/make-s3-url.js.map +0 -1
  465. package/dist/shared/parse-lambda-initialized-key.d.ts.map +0 -1
  466. package/dist/shared/parse-lambda-initialized-key.js.map +0 -1
  467. package/dist/shared/parse-lambda-timings-key.d.ts.map +0 -1
  468. package/dist/shared/parse-lambda-timings-key.js.map +0 -1
  469. package/dist/shared/random-hash.d.ts.map +0 -1
  470. package/dist/shared/random-hash.js.map +0 -1
  471. package/dist/shared/return-values.d.ts.map +0 -1
  472. package/dist/shared/return-values.js.map +0 -1
  473. package/dist/shared/sleep.d.ts.map +0 -1
  474. package/dist/shared/sleep.js.map +0 -1
  475. package/dist/shared/stream-to-string.d.ts.map +0 -1
  476. package/dist/shared/stream-to-string.js.map +0 -1
  477. package/dist/shared/validate-architecture.d.ts.map +0 -1
  478. package/dist/shared/validate-architecture.js.map +0 -1
  479. package/dist/shared/validate-aws-region.d.ts.map +0 -1
  480. package/dist/shared/validate-aws-region.js.map +0 -1
  481. package/dist/shared/validate-bucketname.d.ts.map +0 -1
  482. package/dist/shared/validate-bucketname.js.map +0 -1
  483. package/dist/shared/validate-disk-size-in-mb.d.ts.map +0 -1
  484. package/dist/shared/validate-disk-size-in-mb.js.map +0 -1
  485. package/dist/shared/validate-frames-per-lambda.d.ts.map +0 -1
  486. package/dist/shared/validate-frames-per-lambda.js.map +0 -1
  487. package/dist/shared/validate-memory-size.d.ts.map +0 -1
  488. package/dist/shared/validate-memory-size.js.map +0 -1
  489. package/dist/shared/validate-outname.d.ts.map +0 -1
  490. package/dist/shared/validate-outname.js.map +0 -1
  491. package/dist/shared/validate-presign-expiration.d.ts.map +0 -1
  492. package/dist/shared/validate-presign-expiration.js.map +0 -1
  493. package/dist/shared/validate-privacy.d.ts.map +0 -1
  494. package/dist/shared/validate-privacy.js.map +0 -1
  495. package/dist/shared/validate-retention-period.d.ts.map +0 -1
  496. package/dist/shared/validate-retention-period.js.map +0 -1
  497. package/dist/shared/validate-retries.d.ts.map +0 -1
  498. package/dist/shared/validate-retries.js.map +0 -1
  499. package/dist/shared/validate-serveurl.d.ts.map +0 -1
  500. package/dist/shared/validate-serveurl.js.map +0 -1
  501. package/dist/shared/validate-site-name.d.ts.map +0 -1
  502. package/dist/shared/validate-site-name.js.map +0 -1
  503. package/dist/shared/validate-timeout.d.ts.map +0 -1
  504. package/dist/shared/validate-timeout.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { AwsRegion } from '../../pricing/aws-regions';
2
- import { OptimizationProfile } from './types';
1
+ import type { AwsRegion } from '../../pricing/aws-regions';
2
+ import type { OptimizationProfile } from './types';
3
3
  export declare const writeOptimization: ({ bucketName, optimization, compositionId, siteId, region, expectedBucketOwner, }: {
4
4
  bucketName: string;
5
5
  optimization: OptimizationProfile;
@@ -12,6 +12,7 @@ const writeOptimization = async ({ bucketName, optimization, compositionId, site
12
12
  region,
13
13
  privacy: 'private',
14
14
  expectedBucketOwner,
15
+ downloadBehavior: null,
15
16
  });
16
17
  };
17
18
  exports.writeOptimization = writeOptimization;
@@ -1,7 +1,10 @@
1
- import { ChunkTimingData, TimingProfile } from './types';
1
+ import type { ChunkTimingData, TimingProfile } from './types';
2
2
  export declare const getTimingForFrame: (profile: TimingProfile, frame: number) => number;
3
3
  export declare const getSimulatedTimingForFrameRange: (profile: TimingProfile, frameRange: [number, number]) => ChunkTimingData['timings'];
4
4
  export declare const simulateFrameRanges: ({ profile, newFrameRanges, }: {
5
5
  profile: TimingProfile;
6
- newFrameRanges: [number, number][];
6
+ newFrameRanges: [
7
+ number,
8
+ number
9
+ ][];
7
10
  }) => TimingProfile;
@@ -1,2 +1,2 @@
1
- import { ChunkTimingData, TimingProfile } from './types';
1
+ import type { ChunkTimingData, TimingProfile } from './types';
2
2
  export declare const sortProfileByDuration: (profile: TimingProfile) => ChunkTimingData[];
@@ -1,4 +1,3 @@
1
- import { LambdaVersions } from '../../shared/constants';
2
1
  export declare type ObjectChunkTimingData = {
3
2
  chunk: number;
4
3
  frameRange: [number, number];
@@ -18,5 +17,6 @@ export declare type OptimizationProfile = {
18
17
  newTiming: number;
19
18
  createdFromRenderId: string;
20
19
  framesPerLambda: number;
21
- lambdaVersion: LambdaVersions;
20
+ lambdaVersion: string;
21
+ everyNthFrame: number;
22
22
  };
@@ -1,4 +1,4 @@
1
- import { _Object } from '@aws-sdk/client-s3';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
2
  export declare const calculateChunkTimes: ({ contents, renderId, type, }: {
3
3
  contents: _Object[];
4
4
  renderId: string;
@@ -1,7 +1,7 @@
1
- import { _Object } from '@aws-sdk/client-s3';
2
- import { RenderMetadata } from '../../shared/constants';
3
- import { LambdaArchitecture } from '../../shared/validate-architecture';
4
- import { OutputFileMetadata } from './find-output-file-in-bucket';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { RenderMetadata } from '../../shared/constants';
3
+ import type { LambdaArchitecture } from '../../shared/validate-architecture';
4
+ import type { OutputFileMetadata } from './find-output-file-in-bucket';
5
5
  export declare const estimatePriceFromBucket: ({ contents, renderMetadata, memorySizeInMb, outputFileMetadata, architecture, diskSizeInMb, lambdasInvoked, }: {
6
6
  contents: _Object[];
7
7
  renderMetadata: RenderMetadata | null;
@@ -0,0 +1,3 @@
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { AwsRegion } from '../../client';
3
+ export declare const checkIfRenderExists: (contents: _Object[], renderId: string, bucketName: string, region: AwsRegion) => void;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.checkIfRenderExists = void 0;
4
+ const constants_1 = require("../../shared/constants");
5
+ const checkIfRenderExists = (contents, renderId, bucketName, region) => {
6
+ const initializedExists = Boolean(contents.find((c) => {
7
+ var _a;
8
+ return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.initalizedMetadataKey)(renderId));
9
+ }));
10
+ if (!initializedExists) {
11
+ throw new TypeError(`No render with ID "${renderId}" found in bucket ${bucketName} and region ${region}`);
12
+ }
13
+ };
14
+ exports.checkIfRenderExists = checkIfRenderExists;
@@ -1,15 +1,16 @@
1
- import { Codec } from 'remotion';
2
- import { AwsRegion } from '../../pricing/aws-regions';
3
- export declare const concatVideosS3: ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, }: {
1
+ import type { AwsRegion } from '../../pricing/aws-regions';
2
+ import type { LambdaCodec } from '../../shared/validate-lambda-codec';
3
+ export declare const concatVideosS3: ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, numberOfGifLoops, }: {
4
4
  bucket: string;
5
5
  expectedFiles: number;
6
6
  onProgress: (frames: number, encodingStart: number) => void;
7
7
  numberOfFrames: number;
8
8
  renderId: string;
9
9
  region: AwsRegion;
10
- codec: Codec;
10
+ codec: LambdaCodec;
11
11
  expectedBucketOwner: string;
12
12
  fps: number;
13
+ numberOfGifLoops: number | null;
13
14
  }) => Promise<{
14
15
  outfile: string;
15
16
  cleanupChunksProm: Promise<void>;
@@ -112,7 +112,7 @@ const getAllFilesS3 = ({ bucket, expectedFiles, outdir, renderId, region, expect
112
112
  loop();
113
113
  });
114
114
  };
115
- const concatVideosS3 = async ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, }) => {
115
+ const concatVideosS3 = async ({ bucket, expectedFiles, onProgress, numberOfFrames, renderId, region, codec, expectedBucketOwner, fps, numberOfGifLoops, }) => {
116
116
  var _a;
117
117
  const outdir = (0, path_1.join)(renderer_1.RenderInternals.tmpDir(constants_1.CONCAT_FOLDER_TOKEN), 'bucket');
118
118
  if ((0, fs_1.existsSync)(outdir)) {
@@ -142,6 +142,7 @@ const concatVideosS3 = async ({ bucket, expectedFiles, onProgress, numberOfFrame
142
142
  numberOfFrames,
143
143
  codec: codecForCombining,
144
144
  fps,
145
+ numberOfGifLoops,
145
146
  });
146
147
  combine.end();
147
148
  const cleanupChunksProm = ((_a = fs_1.default.promises.rm) !== null && _a !== void 0 ? _a : fs_1.default.promises.rmdir)(outdir, {
@@ -1,8 +1,8 @@
1
- import { _Object } from '@aws-sdk/client-s3';
2
- import { AwsRegion } from '../../pricing/aws-regions';
3
- import { PostRenderData, RenderMetadata } from '../../shared/constants';
4
- import { OutputFileMetadata } from './find-output-file-in-bucket';
5
- import { EnhancedErrorInfo } from './write-lambda-error';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { AwsRegion } from '../../pricing/aws-regions';
3
+ import type { PostRenderData, RenderMetadata } from '../../shared/constants';
4
+ import type { OutputFileMetadata } from './find-output-file-in-bucket';
5
+ import type { EnhancedErrorInfo } from './write-lambda-error';
6
6
  export declare const createPostRenderData: ({ renderId, region, memorySizeInMb, renderMetadata, contents, timeToEncode, errorExplanations, timeToDelete, outputFile, }: {
7
7
  renderId: string;
8
8
  expectedBucketOwner: string;
@@ -14,4 +14,4 @@ export declare const createPostRenderData: ({ renderId, region, memorySizeInMb,
14
14
  timeToDelete: number;
15
15
  errorExplanations: EnhancedErrorInfo[];
16
16
  outputFile: OutputFileMetadata;
17
- }) => Promise<PostRenderData>;
17
+ }) => PostRenderData;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createPostRenderData = void 0;
4
4
  const estimate_price_1 = require("../../api/estimate-price");
5
5
  const constants_1 = require("../../shared/constants");
6
+ const get_most_expensive_chunks_1 = require("../../shared/get-most-expensive-chunks");
6
7
  const parse_lambda_timings_key_1 = require("../../shared/parse-lambda-timings-key");
7
8
  const calculate_chunk_times_1 = require("./calculate-chunk-times");
8
9
  const get_current_architecture_1 = require("./get-current-architecture");
@@ -10,13 +11,11 @@ const get_files_to_delete_1 = require("./get-files-to-delete");
10
11
  const get_lambdas_invoked_stats_1 = require("./get-lambdas-invoked-stats");
11
12
  const get_retry_stats_1 = require("./get-retry-stats");
12
13
  const get_time_to_finish_1 = require("./get-time-to-finish");
13
- const OVERHEAD_TIME_PER_LAMBDA = 100;
14
- const createPostRenderData = async ({ renderId, region, memorySizeInMb, renderMetadata, contents, timeToEncode, errorExplanations, timeToDelete, outputFile, }) => {
15
- var _a;
14
+ const createPostRenderData = ({ renderId, region, memorySizeInMb, renderMetadata, contents, timeToEncode, errorExplanations, timeToDelete, outputFile, }) => {
16
15
  const initializedKeys = contents.filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.lambdaTimingsPrefix)(renderId)); });
17
16
  const parsedTimings = initializedKeys.map(({ Key }) => (0, parse_lambda_timings_key_1.parseLambdaTimingsKey)(Key));
18
17
  const times = parsedTimings
19
- .map((p) => p.rendered - p.start + OVERHEAD_TIME_PER_LAMBDA)
18
+ .map((p) => p.rendered - p.start + get_most_expensive_chunks_1.OVERHEAD_TIME_PER_LAMBDA)
20
19
  .reduce((a, b) => a + b);
21
20
  const cost = (0, estimate_price_1.estimatePrice)({
22
21
  durationInMiliseconds: times,
@@ -42,12 +41,18 @@ const createPostRenderData = async ({ renderId, region, memorySizeInMb, renderMe
42
41
  const renderSize = contents
43
42
  .map((c) => { var _a; return (_a = c.Size) !== null && _a !== void 0 ? _a : 0; })
44
43
  .reduce((a, b) => a + b, 0);
45
- const { timeToInvokeLambdas } = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(contents, renderId, (_a = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _a !== void 0 ? _a : null, renderMetadata.startedDate);
44
+ const { timeToInvokeLambdas } = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)({
45
+ contents,
46
+ renderId,
47
+ estimatedRenderLambdaInvokations: renderMetadata.estimatedRenderLambdaInvokations,
48
+ startDate: renderMetadata.startedDate,
49
+ checkIfAllLambdasWereInvoked: false,
50
+ });
46
51
  const retriesInfo = (0, get_retry_stats_1.getRetryStats)({ contents, renderId });
47
52
  if (timeToInvokeLambdas === null) {
48
53
  throw new Error('should have timing for all lambdas');
49
54
  }
50
- const data = {
55
+ return {
51
56
  cost: {
52
57
  currency: 'USD',
53
58
  disclaimer: 'Estimated cost for lambda invocations only. Does not include cost for S3 storage and data transfer.',
@@ -78,7 +83,7 @@ const createPostRenderData = async ({ renderId, region, memorySizeInMb, renderMe
78
83
  }),
79
84
  timeToInvokeLambdas,
80
85
  retriesInfo,
86
+ mostExpensiveFrameRanges: (0, get_most_expensive_chunks_1.getMostExpensiveChunks)(parsedTimings, renderMetadata.framesPerLambda),
81
87
  };
82
- return data;
83
88
  };
84
89
  exports.createPostRenderData = createPostRenderData;
@@ -1,6 +1,6 @@
1
- import { _Object } from '@aws-sdk/client-s3';
2
- import { AwsRegion } from '../../pricing/aws-regions';
3
- import { CleanupJob } from './get-files-to-delete';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { AwsRegion } from '../../pricing/aws-regions';
3
+ import type { CleanupJob } from './get-files-to-delete';
4
4
  export declare const cleanupFiles: ({ bucket, region, contents, jobs, }: {
5
5
  bucket: string;
6
6
  region: AwsRegion;
@@ -1,2 +1,2 @@
1
- import { OutNameOutput, RenderMetadata } from '../../defaults';
1
+ import type { OutNameOutput, RenderMetadata } from '../../defaults';
2
2
  export declare const getExpectedOutName: (renderMetadata: RenderMetadata, bucketName: string) => OutNameOutput;
@@ -1,5 +1,5 @@
1
- import { AwsRegion } from '../..';
2
- import { RenderMetadata } from '../../shared/constants';
1
+ import type { AwsRegion } from '../..';
2
+ import type { RenderMetadata } from '../../shared/constants';
3
3
  export declare type OutputFileMetadata = {
4
4
  url: string;
5
5
  size: number;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.findOutputFileInBucket = void 0;
4
4
  const client_s3_1 = require("@aws-sdk/client-s3");
5
+ const suggested_policy_1 = require("../../api/iam-validation/suggested-policy");
5
6
  const aws_clients_1 = require("../../shared/aws-clients");
6
7
  const expected_out_name_1 = require("./expected-out-name");
7
8
  const get_output_url_from_metadata_1 = require("./get-output-url-from-metadata");
@@ -26,6 +27,11 @@ const findOutputFileInBucket = async ({ region, renderMetadata, bucketName, }) =
26
27
  if (err.name === 'NotFound') {
27
28
  return null;
28
29
  }
30
+ if (err.message === 'UnknownError' ||
31
+ err.$metadata
32
+ .httpStatusCode === 403) {
33
+ throw new Error(`Unable to access item "${expectedOutData.key}" from bucket "${expectedOutData.renderBucketName}". The "${suggested_policy_1.ROLE_NAME}" role must have permission for both "s3:GetObject" and "s3:ListBucket" actions.`);
34
+ }
29
35
  throw err;
30
36
  }
31
37
  };
@@ -1,2 +1,2 @@
1
- import { CostsInfo } from '../../shared/constants';
1
+ import type { CostsInfo } from '../../shared/constants';
2
2
  export declare const formatCostsInfo: (accrued: number) => CostsInfo;
@@ -1,2 +1,3 @@
1
- import { ChromiumOptions, openBrowser } from '@remotion/renderer';
1
+ import type { ChromiumOptions } from '@remotion/renderer';
2
+ import { openBrowser } from '@remotion/renderer';
2
3
  export declare const getBrowserInstance: (shouldDumpIo: boolean, chromiumOptions: ChromiumOptions) => ReturnType<typeof openBrowser>;
@@ -1,5 +1,5 @@
1
- import { _Object } from '@aws-sdk/client-s3';
2
- import { CleanupInfo } from '../../shared/constants';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { CleanupInfo } from '../../shared/constants';
3
3
  export declare const getCleanupProgress: ({ contents, output, chunkCount, renderId, }: {
4
4
  contents: _Object[];
5
5
  output: string | null;
@@ -1,2 +1,2 @@
1
- import { LambdaArchitecture } from '../../shared/validate-architecture';
1
+ import type { LambdaArchitecture } from '../../shared/validate-architecture';
2
2
  export declare const getCurrentArchitecture: () => LambdaArchitecture;
@@ -1,5 +1,5 @@
1
- import { EncodingProgress } from '../../defaults';
2
- import { AwsRegion } from '../../pricing/aws-regions';
1
+ import type { EncodingProgress } from '../../defaults';
2
+ import type { AwsRegion } from '../../pricing/aws-regions';
3
3
  export declare const getEncodingMetadata: ({ exists, bucketName, renderId, region, expectedBucketOwner, }: {
4
4
  exists: boolean;
5
5
  bucketName: string;
@@ -12,7 +12,7 @@ const getFilesToDelete = ({ chunkCount, renderId, }) => {
12
12
  .map((_x, i) => (0, constants_1.lambdaTimingsPrefixForChunk)(renderId, i));
13
13
  return [
14
14
  {
15
- name: (0, constants_1.lambdaInitializedPrefix)(renderId),
15
+ name: (0, constants_1.lambdaChunkInitializedPrefix)(renderId),
16
16
  type: 'prefix',
17
17
  },
18
18
  ...chunks.map((i) => {
@@ -1,5 +1,5 @@
1
- import { EncodingProgress, RenderMetadata } from '../../shared/constants';
2
- import { LambdaInvokeStats } from './get-lambdas-invoked-stats';
1
+ import type { EncodingProgress, RenderMetadata } from '../../shared/constants';
2
+ import type { LambdaInvokeStats } from './get-lambdas-invoked-stats';
3
3
  export declare const getFinalEncodingStatus: ({ encodingStatus: encodingProgress, renderMetadata, outputFileExists, lambdaInvokeStatus, }: {
4
4
  encodingStatus: EncodingProgress | null;
5
5
  renderMetadata: RenderMetadata | null;
@@ -1,7 +1,12 @@
1
- import { _Object } from '@aws-sdk/client-s3';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
2
  export declare type LambdaInvokeStats = {
3
3
  timeToInvokeLambdas: number | null;
4
- allLambdasInvoked: boolean;
5
4
  lambdasInvoked: number;
6
5
  };
7
- export declare const getLambdasInvokedStats: (contents: _Object[], renderId: string, estimatedRenderLambdaInvokations: number | null, startDate: number | null) => LambdaInvokeStats;
6
+ export declare const getLambdasInvokedStats: ({ contents, renderId, estimatedRenderLambdaInvokations, startDate, checkIfAllLambdasWereInvoked, }: {
7
+ contents: _Object[];
8
+ renderId: string;
9
+ estimatedRenderLambdaInvokations: number | null;
10
+ startDate: number | null;
11
+ checkIfAllLambdasWereInvoked: boolean;
12
+ }) => LambdaInvokeStats;
@@ -4,18 +4,18 @@ exports.getLambdasInvokedStats = void 0;
4
4
  const constants_1 = require("../../shared/constants");
5
5
  const parse_lambda_initialized_key_1 = require("../../shared/parse-lambda-initialized-key");
6
6
  const min_max_1 = require("./min-max");
7
- const getLambdasInvokedStats = (contents, renderId, estimatedRenderLambdaInvokations, startDate) => {
7
+ const getLambdasInvokedStats = ({ contents, renderId, estimatedRenderLambdaInvokations, startDate, checkIfAllLambdasWereInvoked, }) => {
8
+ var _a;
8
9
  const lambdasInvoked = contents
9
- .filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.lambdaInitializedPrefix)(renderId)); })
10
+ .filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.lambdaChunkInitializedPrefix)(renderId)); })
10
11
  .filter((c) => (0, parse_lambda_initialized_key_1.parseLambdaInitializedKey)(c.Key).attempt === 1);
11
- const allLambdasInvoked = lambdasInvoked.length === estimatedRenderLambdaInvokations;
12
- const timeToInvokeLambdas = allLambdasInvoked && startDate
13
- ? (0, min_max_1.max)(lambdasInvoked.map((l) => { var _a; return (_a = l.LastModified) === null || _a === void 0 ? void 0 : _a.getTime(); })) -
14
- startDate
15
- : null;
12
+ const allLambdasInvoked = !checkIfAllLambdasWereInvoked ||
13
+ lambdasInvoked.length === estimatedRenderLambdaInvokations;
14
+ const timeToInvokeLambdas = !allLambdasInvoked || startDate === null
15
+ ? null
16
+ : ((_a = (0, min_max_1.max)(lambdasInvoked.map((l) => { var _a; return (_a = l.LastModified) === null || _a === void 0 ? void 0 : _a.getTime(); }))) !== null && _a !== void 0 ? _a : 0) - startDate;
16
17
  return {
17
18
  timeToInvokeLambdas,
18
- allLambdasInvoked,
19
19
  lambdasInvoked: lambdasInvoked.length,
20
20
  };
21
21
  };
@@ -1,2 +1,2 @@
1
- import { RenderMetadata } from '../../defaults';
1
+ import type { RenderMetadata } from '../../defaults';
2
2
  export declare const getOutputUrlFromMetadata: (renderMetadata: RenderMetadata, bucketName: string) => string;
@@ -1,5 +1,5 @@
1
- import { AwsRegion } from '../../pricing/aws-regions';
2
- import { PostRenderData } from '../../shared/constants';
1
+ import type { AwsRegion } from '../../pricing/aws-regions';
2
+ import type { PostRenderData } from '../../shared/constants';
3
3
  export declare const getPostRenderData: ({ bucketName, renderId, region, expectedBucketOwner, }: {
4
4
  bucketName: string;
5
5
  renderId: string;
@@ -1,5 +1,5 @@
1
- import { AwsRegion } from '../../pricing/aws-regions';
2
- import { RenderProgress } from '../../shared/constants';
1
+ import type { AwsRegion } from '../../pricing/aws-regions';
2
+ import type { RenderProgress } from '../../shared/constants';
3
3
  export declare const getProgress: ({ bucketName, renderId, expectedBucketOwner, region, memorySizeInMb, timeoutInMiliseconds, }: {
4
4
  bucketName: string;
5
5
  renderId: string;
@@ -6,6 +6,7 @@ const constants_1 = require("../../shared/constants");
6
6
  const docs_url_1 = require("../../shared/docs-url");
7
7
  const calculate_chunk_times_1 = require("./calculate-chunk-times");
8
8
  const calculate_price_from_bucket_1 = require("./calculate-price-from-bucket");
9
+ const check_if_render_exists_1 = require("./check-if-render-exists");
9
10
  const expected_out_name_1 = require("./expected-out-name");
10
11
  const find_output_file_in_bucket_1 = require("./find-output-file-in-bucket");
11
12
  const format_costs_info_1 = require("./format-costs-info");
@@ -23,7 +24,7 @@ const get_time_to_finish_1 = require("./get-time-to-finish");
23
24
  const inspect_errors_1 = require("./inspect-errors");
24
25
  const io_1 = require("./io");
25
26
  const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region, memorySizeInMb, timeoutInMiliseconds, }) => {
26
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
27
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
27
28
  const postRenderData = await (0, get_post_render_data_1.getPostRenderData)({
28
29
  bucketName,
29
30
  region,
@@ -68,6 +69,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
68
69
  retriesInfo: postRenderData.retriesInfo,
69
70
  outKey: outData.key,
70
71
  outBucket: outData.renderBucketName,
72
+ mostExpensiveFrameRanges: (_a = postRenderData.mostExpensiveFrameRanges) !== null && _a !== void 0 ? _a : null,
71
73
  };
72
74
  }
73
75
  const contents = await (0, io_1.lambdaLs)({
@@ -76,6 +78,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
76
78
  region: (0, get_current_region_1.getCurrentRegionInFunction)(),
77
79
  expectedBucketOwner,
78
80
  });
81
+ (0, check_if_render_exists_1.checkIfRenderExists)(contents, renderId, bucketName, (0, get_current_region_1.getCurrentRegionInFunction)());
79
82
  const renderMetadataExists = Boolean(contents.find((c) => c.Key === (0, constants_1.renderMetadataKey)(renderId)));
80
83
  const [encodingStatus, renderMetadata, errorExplanations] = await Promise.all([
81
84
  (0, get_encoding_metadata_1.getEncodingMetadata)({
@@ -114,27 +117,33 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
114
117
  memorySizeInMb,
115
118
  outputFileMetadata: outputFile,
116
119
  architecture: (0, get_current_architecture_1.getCurrentArchitecture)(),
117
- lambdasInvoked: (_a = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _a !== void 0 ? _a : 0,
120
+ lambdasInvoked: (_b = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _b !== void 0 ? _b : 0,
118
121
  // We cannot determine the ephemeral storage size, so we
119
122
  // overestimate the price, but will only have a miniscule effect (~0.2%)
120
123
  diskSizeInMb: constants_1.MAX_EPHEMERAL_STORAGE_IN_MB,
121
124
  }));
122
125
  const cleanup = (0, get_cleanup_progress_1.getCleanupProgress)({
123
- chunkCount: (_b = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _b !== void 0 ? _b : 0,
126
+ chunkCount: (_c = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _c !== void 0 ? _c : 0,
124
127
  contents,
125
- output: (_c = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _c !== void 0 ? _c : null,
128
+ output: (_d = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _d !== void 0 ? _d : null,
126
129
  renderId,
127
130
  });
128
131
  const timeToFinish = (0, get_time_to_finish_1.getTimeToFinish)({
129
- lastModified: (_d = outputFile === null || outputFile === void 0 ? void 0 : outputFile.lastModified) !== null && _d !== void 0 ? _d : null,
132
+ lastModified: (_e = outputFile === null || outputFile === void 0 ? void 0 : outputFile.lastModified) !== null && _e !== void 0 ? _e : null,
130
133
  renderMetadata,
131
134
  });
132
135
  const chunks = contents.filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.chunkKey)(renderId)); });
133
- const allChunks = chunks.length === ((_e = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _e !== void 0 ? _e : Infinity);
136
+ const allChunks = chunks.length === ((_f = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _f !== void 0 ? _f : Infinity);
134
137
  const renderSize = contents
135
138
  .map((c) => { var _a; return (_a = c.Size) !== null && _a !== void 0 ? _a : 0; })
136
139
  .reduce((a, b) => a + b, 0);
137
- const lambdasInvokedStats = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(contents, renderId, (_f = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _f !== void 0 ? _f : null, (_g = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.startedDate) !== null && _g !== void 0 ? _g : null);
140
+ const lambdasInvokedStats = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)({
141
+ contents,
142
+ renderId,
143
+ estimatedRenderLambdaInvokations: (_g = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _g !== void 0 ? _g : null,
144
+ startDate: (_h = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.startedDate) !== null && _h !== void 0 ? _h : null,
145
+ checkIfAllLambdasWereInvoked: true,
146
+ });
138
147
  const retriesInfo = (0, get_retry_stats_1.getRetryStats)({
139
148
  contents,
140
149
  renderId,
@@ -146,7 +155,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
146
155
  lambdaInvokeStatus: lambdasInvokedStats,
147
156
  });
148
157
  const chunkCount = outputFile
149
- ? (_h = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _h !== void 0 ? _h : 0
158
+ ? (_j = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _j !== void 0 ? _j : 0
150
159
  : chunks.length;
151
160
  // We add a 20 second buffer for it, since AWS timeshifts can be quite a lot. Once it's 20sec over the limit, we consider it timed out
152
161
  const isBeyondTimeout = renderMetadata &&
@@ -177,7 +186,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
177
186
  renderId,
178
187
  renderMetadata,
179
188
  bucket: bucketName,
180
- outputFile: (_j = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _j !== void 0 ? _j : null,
189
+ outputFile: (_k = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _k !== void 0 ? _k : null,
181
190
  timeToFinish,
182
191
  errors: allErrors,
183
192
  fatalErrorEncountered: allErrors.some((f) => f.isFatal && !f.willRetry),
@@ -192,7 +201,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
192
201
  type: 'absolute-time',
193
202
  })
194
203
  : null,
195
- timeToInvokeLambdas: (_k = encodingStatus === null || encodingStatus === void 0 ? void 0 : encodingStatus.timeToInvoke) !== null && _k !== void 0 ? _k : lambdasInvokedStats.timeToInvokeLambdas,
204
+ timeToInvokeLambdas: (_l = encodingStatus === null || encodingStatus === void 0 ? void 0 : encodingStatus.timeToInvoke) !== null && _l !== void 0 ? _l : lambdasInvokedStats.timeToInvokeLambdas,
196
205
  overallProgress: (0, get_overall_progress_1.getOverallProgress)({
197
206
  cleanup: cleanup ? cleanup.filesDeleted / cleanup.minFilesToDelete : 0,
198
207
  encoding: finalEncodingStatus && renderMetadata
@@ -212,6 +221,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
212
221
  outBucket: outputFile && renderMetadata
213
222
  ? (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName).renderBucketName
214
223
  : null,
224
+ mostExpensiveFrameRanges: null,
215
225
  };
216
226
  };
217
227
  exports.getProgress = getProgress;
@@ -1,5 +1,5 @@
1
- import { AwsRegion } from '../../pricing/aws-regions';
2
- import { RenderMetadata } from '../../shared/constants';
1
+ import type { AwsRegion } from '../../pricing/aws-regions';
2
+ import type { RenderMetadata } from '../../shared/constants';
3
3
  export declare const getRenderMetadata: ({ bucketName, renderId, region, expectedBucketOwner, }: {
4
4
  bucketName: string;
5
5
  renderId: string;
@@ -1,4 +1,4 @@
1
- import { _Object } from '@aws-sdk/client-s3';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
2
  export declare type ChunkRetry = {
3
3
  chunk: number;
4
4
  attempt: number;
@@ -5,7 +5,7 @@ const constants_1 = require("../../shared/constants");
5
5
  const parse_lambda_initialized_key_1 = require("../../shared/parse-lambda-initialized-key");
6
6
  const getRetryStats = ({ contents, renderId, }) => {
7
7
  const retries = contents
8
- .filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.lambdaInitializedPrefix)(renderId)); })
8
+ .filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.lambdaChunkInitializedPrefix)(renderId)); })
9
9
  .filter((c) => (0, parse_lambda_initialized_key_1.parseLambdaInitializedKey)(c.Key).attempt !== 1);
10
10
  return retries.map((retry) => {
11
11
  var _a;
@@ -1,4 +1,4 @@
1
- import { RenderMetadata } from '../../defaults';
1
+ import type { RenderMetadata } from '../../defaults';
2
2
  export declare const getTimeToFinish: ({ renderMetadata, lastModified, }: {
3
3
  renderMetadata: RenderMetadata | null;
4
4
  lastModified: number | null;
@@ -1,6 +1,6 @@
1
- import { _Object } from '@aws-sdk/client-s3';
2
- import { AwsRegion } from '../../pricing/aws-regions';
3
- import { EnhancedErrorInfo } from './write-lambda-error';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { AwsRegion } from '../../pricing/aws-regions';
3
+ import type { EnhancedErrorInfo } from './write-lambda-error';
4
4
  export declare const inspectErrors: ({ contents, bucket, region, renderId, expectedBucketOwner, }: {
5
5
  contents: _Object[];
6
6
  bucket: string;
@@ -1,8 +1,9 @@
1
- import { _Object } from '@aws-sdk/client-s3';
2
- import { ReadStream } from 'fs';
3
- import { Readable } from 'stream';
4
- import { AwsRegion } from '../../pricing/aws-regions';
5
- import { Privacy } from '../../shared/constants';
1
+ import type { _Object } from '@aws-sdk/client-s3';
2
+ import type { ReadStream } from 'fs';
3
+ import type { Readable } from 'stream';
4
+ import type { AwsRegion } from '../../pricing/aws-regions';
5
+ import type { Privacy } from '../../shared/constants';
6
+ import type { DownloadBehavior } from '../../shared/content-disposition-header';
6
7
  export declare type LambdaLSInput = {
7
8
  bucketName: string;
8
9
  prefix: string;
@@ -12,13 +13,19 @@ export declare type LambdaLSInput = {
12
13
  };
13
14
  export declare type LambdaLsReturnType = Promise<_Object[]>;
14
15
  export declare const lambdaLs: ({ bucketName, prefix, region, expectedBucketOwner, continuationToken, }: LambdaLSInput) => LambdaLsReturnType;
15
- export declare const lambdaWriteFile: ({ bucketName, key, body, region, privacy, expectedBucketOwner, }: {
16
+ export declare const lambdaDeleteFile: ({ bucketName, key, region, }: {
17
+ region: AwsRegion;
18
+ bucketName: string;
19
+ key: string;
20
+ }) => Promise<void>;
21
+ export declare const lambdaWriteFile: ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, }: {
16
22
  bucketName: string;
17
23
  key: string;
18
24
  body: ReadStream | string;
19
25
  region: AwsRegion;
20
26
  privacy: Privacy;
21
27
  expectedBucketOwner: string | null;
28
+ downloadBehavior: DownloadBehavior | null;
22
29
  }) => Promise<void>;
23
30
  export declare const lambdaReadFile: ({ bucketName, key, region, expectedBucketOwner, }: {
24
31
  bucketName: string;
@@ -3,10 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.lambdaReadFile = exports.lambdaWriteFile = exports.lambdaLs = void 0;
6
+ exports.lambdaReadFile = exports.lambdaWriteFile = exports.lambdaDeleteFile = exports.lambdaLs = void 0;
7
7
  const client_s3_1 = require("@aws-sdk/client-s3");
8
8
  const mime_types_1 = __importDefault(require("mime-types"));
9
9
  const aws_clients_1 = require("../../shared/aws-clients");
10
+ const content_disposition_header_1 = require("../../shared/content-disposition-header");
10
11
  const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, continuationToken, }) => {
11
12
  var _a, _b, _c;
12
13
  try {
@@ -46,14 +47,26 @@ const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, conti
46
47
  }
47
48
  };
48
49
  exports.lambdaLs = lambdaLs;
49
- const lambdaWriteFile = async ({ bucketName, key, body, region, privacy, expectedBucketOwner, }) => {
50
+ const lambdaDeleteFile = async ({ bucketName, key, region, }) => {
51
+ await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.DeleteObjectCommand({
52
+ Bucket: bucketName,
53
+ Key: key,
54
+ }));
55
+ };
56
+ exports.lambdaDeleteFile = lambdaDeleteFile;
57
+ const lambdaWriteFile = async ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, }) => {
50
58
  await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.PutObjectCommand({
51
59
  Bucket: bucketName,
52
60
  Key: key,
53
61
  Body: body,
54
- ACL: privacy === 'private' ? 'private' : 'public-read',
62
+ ACL: privacy === 'no-acl'
63
+ ? undefined
64
+ : privacy === 'private'
65
+ ? 'private'
66
+ : 'public-read',
55
67
  ExpectedBucketOwner: expectedBucketOwner !== null && expectedBucketOwner !== void 0 ? expectedBucketOwner : undefined,
56
68
  ContentType: mime_types_1.default.lookup(key) || 'application/octet-stream',
69
+ ContentDisposition: (0, content_disposition_header_1.getContentDispositionHeader)(downloadBehavior),
57
70
  }));
58
71
  };
59
72
  exports.lambdaWriteFile = lambdaWriteFile;
@@ -1,2 +1,2 @@
1
1
  export declare const min: (arr: number[]) => number;
2
- export declare const max: (arr: number[]) => number;
2
+ export declare const max: (arr: number[]) => number | null;