@remotion/lambda 4.0.0-oops.3 → 4.0.0-playerimpr.8
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.
- package/dist/admin/bundle-lambda.d.ts +0 -0
- package/dist/admin/bundle-lambda.js +1 -0
- package/dist/admin/make-layer-public.d.ts +0 -0
- package/dist/admin/make-layer-public.js +8 -8
- package/dist/api/bucket-exists.d.ts +1 -1
- package/dist/api/bucket-exists.js +1 -1
- package/dist/api/clean-items.d.ts +1 -1
- package/dist/api/clean-items.js +3 -6
- package/dist/api/create-bucket.d.ts +1 -1
- package/dist/api/create-bucket.js +1 -1
- package/dist/api/create-function.d.ts +4 -3
- package/dist/api/create-function.js +3 -2
- package/dist/api/delete-function.d.ts +1 -1
- package/dist/api/delete-function.js +0 -0
- package/dist/api/delete-render.d.ts +19 -0
- package/dist/api/delete-render.js +66 -0
- package/dist/api/delete-site.d.ts +1 -1
- package/dist/api/delete-site.js +0 -5
- package/dist/api/deploy-function.d.ts +3 -2
- package/dist/api/deploy-function.js +7 -2
- package/dist/api/deploy-site.d.ts +5 -3
- package/dist/api/deploy-site.js +4 -3
- package/dist/api/download-media.d.ts +15 -2
- package/dist/api/download-media.js +15 -3
- package/dist/api/enable-s3-website.d.ts +1 -1
- package/dist/api/enable-s3-website.js +1 -1
- package/dist/api/estimate-price.d.ts +2 -2
- package/dist/api/estimate-price.js +0 -0
- package/dist/api/get-aws-client.d.ts +5 -3
- package/dist/api/get-aws-client.js +12 -3
- package/dist/api/get-buckets.d.ts +1 -1
- package/dist/api/get-buckets.js +2 -2
- package/dist/api/get-function-info.d.ts +2 -3
- package/dist/api/get-function-info.js +0 -0
- package/dist/api/get-functions.d.ts +2 -2
- package/dist/api/get-functions.js +2 -1
- package/dist/api/get-or-create-bucket.d.ts +1 -1
- package/dist/api/get-or-create-bucket.js +0 -0
- package/dist/api/get-regions.d.ts +1 -1
- package/dist/api/get-regions.js +0 -0
- package/dist/api/get-render-progress.d.ts +6 -3
- package/dist/api/get-render-progress.js +5 -1
- package/dist/api/get-sites.d.ts +2 -2
- package/dist/api/get-sites.js +0 -0
- package/dist/api/iam-validation/role-permissions.d.ts +2 -1
- package/dist/api/iam-validation/role-permissions.js +0 -0
- package/dist/api/iam-validation/simulate-rule.d.ts +1 -1
- package/dist/api/iam-validation/simulate-rule.js +0 -0
- package/dist/api/iam-validation/simulate.d.ts +2 -2
- package/dist/api/iam-validation/simulate.js +0 -0
- package/dist/api/iam-validation/suggested-policy.d.ts +0 -0
- package/dist/api/iam-validation/suggested-policy.js +0 -0
- package/dist/api/iam-validation/user-permissions.d.ts +0 -0
- package/dist/api/iam-validation/user-permissions.js +0 -0
- package/dist/api/mock-functions.d.ts +6 -7
- package/dist/api/mock-functions.js +0 -0
- package/dist/api/presign-url.d.ts +3 -2
- package/dist/api/presign-url.js +6 -1
- package/dist/api/render-media-on-lambda.d.ts +18 -11
- package/dist/api/render-media-on-lambda.js +65 -36
- package/dist/api/render-still-on-lambda.d.ts +9 -7
- package/dist/api/render-still-on-lambda.js +49 -31
- package/dist/api/upload-dir.d.ts +2 -2
- package/dist/api/upload-dir.js +10 -5
- package/dist/cli/args.d.ts +5 -3
- package/dist/cli/args.js +0 -0
- package/dist/cli/commands/functions/deploy.d.ts +0 -0
- package/dist/cli/commands/functions/deploy.js +8 -3
- package/dist/cli/commands/functions/index.d.ts +0 -0
- package/dist/cli/commands/functions/index.js +0 -0
- package/dist/cli/commands/functions/ls.d.ts +0 -0
- package/dist/cli/commands/functions/ls.js +0 -0
- package/dist/cli/commands/functions/rm.d.ts +0 -0
- package/dist/cli/commands/functions/rm.js +0 -0
- package/dist/cli/commands/functions/rmall.d.ts +0 -0
- package/dist/cli/commands/functions/rmall.js +0 -0
- package/dist/cli/commands/policies/policies.d.ts +0 -0
- package/dist/cli/commands/policies/policies.js +0 -0
- package/dist/cli/commands/policies/role.d.ts +0 -0
- package/dist/cli/commands/policies/role.js +0 -0
- package/dist/cli/commands/policies/user.d.ts +0 -0
- package/dist/cli/commands/policies/user.js +0 -0
- package/dist/cli/commands/policies/validate.d.ts +0 -0
- package/dist/cli/commands/policies/validate.js +0 -0
- package/dist/cli/commands/quotas/increase.d.ts +0 -0
- package/dist/cli/commands/quotas/increase.js +0 -0
- package/dist/cli/commands/quotas/index.d.ts +0 -0
- package/dist/cli/commands/quotas/index.js +0 -0
- package/dist/cli/commands/quotas/list.d.ts +0 -0
- package/dist/cli/commands/quotas/list.js +0 -0
- package/dist/cli/commands/regions.d.ts +0 -0
- package/dist/cli/commands/regions.js +0 -0
- package/dist/cli/commands/render/progress.d.ts +4 -4
- package/dist/cli/commands/render/progress.js +11 -3
- package/dist/cli/commands/render/render.d.ts +0 -0
- package/dist/cli/commands/render/render.js +16 -11
- package/dist/cli/commands/sites/create.d.ts +0 -0
- package/dist/cli/commands/sites/create.js +2 -3
- package/dist/cli/commands/sites/index.d.ts +0 -0
- package/dist/cli/commands/sites/index.js +0 -0
- package/dist/cli/commands/sites/ls.d.ts +0 -0
- package/dist/cli/commands/sites/ls.js +1 -2
- package/dist/cli/commands/sites/rm.d.ts +0 -0
- package/dist/cli/commands/sites/rm.js +2 -3
- package/dist/cli/commands/sites/rmall.d.ts +0 -0
- package/dist/cli/commands/sites/rmall.js +2 -3
- package/dist/cli/commands/still.d.ts +0 -0
- package/dist/cli/commands/still.js +2 -9
- package/dist/cli/get-aws-region.d.ts +1 -1
- package/dist/cli/get-aws-region.js +2 -1
- package/dist/cli/help.d.ts +0 -0
- package/dist/cli/help.js +0 -0
- package/dist/cli/helpers/confirm.d.ts +0 -0
- package/dist/cli/helpers/confirm.js +0 -0
- package/dist/cli/helpers/date-string.d.ts +0 -0
- package/dist/cli/helpers/date-string.js +0 -0
- package/dist/cli/helpers/find-function-name.d.ts +0 -0
- package/dist/cli/helpers/find-function-name.js +3 -2
- package/dist/cli/helpers/progress-bar.d.ts +0 -0
- package/dist/cli/helpers/progress-bar.js +1 -2
- package/dist/cli/helpers/quit.d.ts +0 -0
- package/dist/cli/helpers/quit.js +0 -0
- package/dist/cli/helpers/yes-or-no.d.ts +0 -0
- package/dist/cli/helpers/yes-or-no.js +0 -0
- package/dist/cli/index.d.ts +0 -0
- package/dist/cli/index.js +11 -1
- package/dist/cli/is-cli.d.ts +0 -0
- package/dist/cli/is-cli.js +0 -0
- package/dist/cli/log.d.ts +0 -0
- package/dist/cli/log.js +0 -0
- package/dist/client.d.ts +0 -0
- package/dist/client.js +0 -0
- package/dist/defaults.d.ts +0 -0
- package/dist/defaults.js +5 -1
- package/dist/functions/chunk-optimization/can-use-optimization.d.ts +1 -1
- package/dist/functions/chunk-optimization/can-use-optimization.js +2 -2
- package/dist/functions/chunk-optimization/collect-data.d.ts +1 -1
- package/dist/functions/chunk-optimization/collect-data.js +0 -0
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.js +0 -0
- package/dist/functions/chunk-optimization/get-profile-duration.d.ts +1 -1
- package/dist/functions/chunk-optimization/get-profile-duration.js +0 -0
- package/dist/functions/chunk-optimization/is-valid-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/is-valid-profile.js +2 -2
- package/dist/functions/chunk-optimization/optimize-invocation-order.d.ts +1 -1
- package/dist/functions/chunk-optimization/optimize-invocation-order.js +0 -0
- package/dist/functions/chunk-optimization/optimize-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/optimize-profile.js +0 -0
- package/dist/functions/chunk-optimization/plan-frame-ranges.d.ts +3 -3
- package/dist/functions/chunk-optimization/plan-frame-ranges.js +7 -6
- package/dist/functions/chunk-optimization/s3-optimization-file.d.ts +2 -2
- package/dist/functions/chunk-optimization/s3-optimization-file.js +2 -0
- package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +1 -1
- package/dist/functions/chunk-optimization/simulate-frame-ranges.js +0 -0
- package/dist/functions/chunk-optimization/sort-by-duration.d.ts +1 -1
- package/dist/functions/chunk-optimization/sort-by-duration.js +0 -0
- package/dist/functions/chunk-optimization/types.d.ts +2 -2
- package/dist/functions/chunk-optimization/types.js +0 -0
- package/dist/functions/helpers/best-frames-per-lambda-param.d.ts +0 -0
- package/dist/functions/helpers/best-frames-per-lambda-param.js +0 -0
- package/dist/functions/helpers/calculate-chunk-times.d.ts +1 -1
- package/dist/functions/helpers/calculate-chunk-times.js +0 -0
- package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -4
- package/dist/functions/helpers/calculate-price-from-bucket.js +0 -0
- package/dist/functions/helpers/check-if-render-exists.d.ts +3 -0
- package/dist/functions/helpers/check-if-render-exists.js +14 -0
- package/dist/functions/helpers/clean-tmpdir.d.ts +0 -0
- package/dist/functions/helpers/clean-tmpdir.js +0 -0
- package/dist/functions/helpers/concat-videos.d.ts +6 -4
- package/dist/functions/helpers/concat-videos.js +8 -2
- package/dist/functions/helpers/create-post-render-data.d.ts +6 -6
- package/dist/functions/helpers/create-post-render-data.js +12 -7
- package/dist/functions/helpers/delete-chunks.d.ts +3 -3
- package/dist/functions/helpers/delete-chunks.js +0 -0
- package/dist/functions/helpers/expected-out-name.d.ts +4 -2
- package/dist/functions/helpers/expected-out-name.js +26 -5
- package/dist/functions/helpers/find-output-file-in-bucket.d.ts +5 -3
- package/dist/functions/helpers/find-output-file-in-bucket.js +14 -6
- package/dist/functions/helpers/format-costs-info.d.ts +1 -1
- package/dist/functions/helpers/format-costs-info.js +0 -0
- package/dist/functions/helpers/get-browser-instance.d.ts +2 -1
- package/dist/functions/helpers/get-browser-instance.js +3 -1
- package/dist/functions/helpers/get-chromium-executable-path.d.ts +0 -0
- package/dist/functions/helpers/get-chromium-executable-path.js +0 -0
- package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -2
- package/dist/functions/helpers/get-cleanup-progress.js +0 -0
- package/dist/functions/helpers/get-current-architecture.d.ts +1 -1
- package/dist/functions/helpers/get-current-architecture.js +0 -0
- package/dist/functions/helpers/get-current-region.d.ts +0 -0
- package/dist/functions/helpers/get-current-region.js +0 -0
- package/dist/functions/helpers/get-custom-out-name.d.ts +6 -0
- package/dist/functions/helpers/get-custom-out-name.js +31 -0
- package/dist/functions/helpers/get-encoding-metadata.d.ts +2 -2
- package/dist/functions/helpers/get-encoding-metadata.js +0 -0
- package/dist/functions/helpers/get-files-in-folder.d.ts +0 -0
- package/dist/functions/helpers/get-files-in-folder.js +0 -0
- package/dist/functions/helpers/get-files-to-delete.d.ts +0 -0
- package/dist/functions/helpers/get-files-to-delete.js +3 -3
- package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -2
- package/dist/functions/helpers/get-final-encoding-status.js +0 -0
- package/dist/functions/helpers/get-folder-size.d.ts +0 -0
- package/dist/functions/helpers/get-folder-size.js +0 -0
- package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +8 -3
- package/dist/functions/helpers/get-lambdas-invoked-stats.js +8 -8
- package/dist/functions/helpers/get-output-url-from-metadata.d.ts +3 -2
- package/dist/functions/helpers/get-output-url-from-metadata.js +2 -2
- package/dist/functions/helpers/get-overall-progress.d.ts +0 -0
- package/dist/functions/helpers/get-overall-progress.js +0 -0
- package/dist/functions/helpers/get-post-render-data.d.ts +2 -2
- package/dist/functions/helpers/get-post-render-data.js +0 -0
- package/dist/functions/helpers/get-progress.d.ts +6 -4
- package/dist/functions/helpers/get-progress.js +32 -16
- package/dist/functions/helpers/get-render-metadata.d.ts +2 -2
- package/dist/functions/helpers/get-render-metadata.js +0 -0
- package/dist/functions/helpers/get-retry-stats.d.ts +1 -1
- package/dist/functions/helpers/get-retry-stats.js +1 -1
- package/dist/functions/helpers/get-time-to-finish.d.ts +1 -1
- package/dist/functions/helpers/get-time-to-finish.js +0 -0
- package/dist/functions/helpers/inspect-errors.d.ts +3 -3
- package/dist/functions/helpers/inspect-errors.js +0 -0
- package/dist/functions/helpers/io.d.ts +16 -6
- package/dist/functions/helpers/io.js +25 -7
- package/dist/functions/helpers/is-enosp-err.d.ts +0 -0
- package/dist/functions/helpers/is-enosp-err.js +0 -0
- package/dist/functions/helpers/is-warm.d.ts +0 -0
- package/dist/functions/helpers/is-warm.js +0 -0
- package/dist/functions/helpers/min-max.d.ts +1 -1
- package/dist/functions/helpers/min-max.js +1 -1
- package/dist/functions/helpers/print-cloudwatch-helper.d.ts +2 -2
- package/dist/functions/helpers/print-cloudwatch-helper.js +0 -0
- package/dist/functions/helpers/print-concurrency-curve.d.ts +0 -0
- package/dist/functions/helpers/print-concurrency-curve.js +0 -0
- package/dist/functions/helpers/read-with-progress.d.ts +6 -3
- package/dist/functions/helpers/read-with-progress.js +15 -3
- package/dist/functions/helpers/timer.d.ts +0 -0
- package/dist/functions/helpers/timer.js +0 -0
- package/dist/functions/helpers/validate-composition.d.ts +10 -4
- package/dist/functions/helpers/validate-composition.js +7 -1
- package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
- package/dist/functions/helpers/write-lambda-error.js +2 -0
- package/dist/functions/helpers/write-post-render-data.d.ts +2 -2
- package/dist/functions/helpers/write-post-render-data.js +2 -0
- package/dist/functions/index.d.ts +3 -2
- package/dist/functions/index.js +16 -9
- package/dist/functions/info.d.ts +2 -2
- package/dist/functions/info.js +2 -1
- package/dist/functions/launch.d.ts +1 -1
- package/dist/functions/launch.js +88 -30
- package/dist/functions/progress.d.ts +2 -2
- package/dist/functions/progress.js +10 -1
- package/dist/functions/renderer.d.ts +1 -1
- package/dist/functions/renderer.js +108 -71
- package/dist/functions/start.d.ts +6 -2
- package/dist/functions/start.js +26 -3
- package/dist/functions/still.d.ts +1 -1
- package/dist/functions/still.js +30 -8
- package/dist/index.d.ts +37 -20
- package/dist/index.js +3 -1
- package/dist/internals.d.ts +0 -0
- package/dist/internals.js +0 -0
- package/dist/pricing/aws-regions.d.ts +0 -0
- package/dist/pricing/aws-regions.js +0 -0
- package/dist/pricing/price-per-1-s.d.ts +1 -1
- package/dist/pricing/price-per-1-s.js +0 -0
- package/dist/regions.d.ts +0 -0
- package/dist/regions.js +0 -0
- package/dist/shared/await.d.ts +0 -0
- package/dist/shared/await.js +0 -0
- package/dist/shared/aws-clients.d.ts +14 -3
- package/dist/shared/aws-clients.js +56 -26
- package/dist/shared/bundle-site.d.ts +2 -6
- package/dist/shared/bundle-site.js +0 -0
- package/dist/shared/call-lambda.d.ts +3 -3
- package/dist/shared/call-lambda.js +0 -0
- package/dist/shared/check-credentials.d.ts +0 -0
- package/dist/shared/check-credentials.js +2 -2
- package/dist/shared/constants.d.ts +49 -18
- package/dist/shared/constants.js +15 -8
- package/dist/shared/content-disposition-header.d.ts +7 -0
- package/dist/shared/content-disposition-header.js +19 -0
- package/dist/shared/convert-to-serve-url.d.ts +1 -1
- package/dist/shared/convert-to-serve-url.js +0 -0
- package/dist/shared/docs-url.d.ts +0 -0
- package/dist/shared/docs-url.js +0 -0
- package/dist/shared/function-zip-path.d.ts +0 -0
- package/dist/shared/function-zip-path.js +0 -0
- package/dist/shared/get-account-id.d.ts +1 -1
- package/dist/shared/get-account-id.js +0 -0
- package/dist/{cli/helpers → shared}/get-cloudwatch-stream-url.d.ts +2 -2
- package/dist/{cli/helpers → shared}/get-cloudwatch-stream-url.js +0 -0
- package/dist/shared/get-function-version.d.ts +2 -3
- package/dist/shared/get-function-version.js +0 -0
- package/dist/shared/get-most-expensive-chunks.d.ts +8 -0
- package/dist/shared/get-most-expensive-chunks.js +25 -0
- package/dist/shared/hosted-layers.d.ts +2 -2
- package/dist/shared/hosted-layers.js +60 -60
- package/dist/shared/is-in-lambda.d.ts +0 -0
- package/dist/shared/is-in-lambda.js +5 -1
- package/dist/shared/lambda-version-string.d.ts +1 -0
- package/dist/shared/lambda-version-string.js +7 -0
- package/dist/shared/make-s3-key.d.ts +1 -0
- package/dist/shared/make-s3-key.js +11 -0
- package/dist/shared/make-s3-url.d.ts +1 -1
- package/dist/shared/make-s3-url.js +0 -0
- package/dist/shared/p-limit.d.ts +1 -0
- package/dist/shared/p-limit.js +57 -0
- package/dist/shared/parse-lambda-initialized-key.d.ts +0 -0
- package/dist/shared/parse-lambda-initialized-key.js +0 -0
- package/dist/shared/parse-lambda-timings-key.d.ts +0 -0
- package/dist/shared/parse-lambda-timings-key.js +0 -0
- package/dist/shared/random-hash.d.ts +2 -2
- package/dist/shared/random-hash.js +1 -1
- package/dist/shared/return-values.d.ts +7 -7
- package/dist/shared/return-values.js +0 -1
- package/dist/shared/sleep.d.ts +0 -0
- package/dist/shared/sleep.js +0 -0
- package/dist/shared/stream-to-string.d.ts +2 -1
- package/dist/shared/stream-to-string.js +0 -0
- package/dist/shared/truthy.d.ts +3 -0
- package/dist/shared/truthy.js +7 -0
- package/dist/shared/validate-architecture.d.ts +0 -0
- package/dist/shared/validate-architecture.js +0 -0
- package/dist/shared/validate-aws-region.d.ts +1 -1
- package/dist/shared/validate-aws-region.js +0 -0
- package/dist/shared/validate-bucketname.d.ts +0 -0
- package/dist/shared/validate-bucketname.js +0 -0
- package/dist/shared/validate-custom-role-arn.d.ts +1 -0
- package/dist/shared/validate-custom-role-arn.js +11 -0
- package/dist/shared/validate-disk-size-in-mb.d.ts +0 -0
- package/dist/shared/validate-disk-size-in-mb.js +0 -0
- package/dist/shared/validate-download-behavior.d.ts +1 -0
- package/dist/shared/validate-download-behavior.js +21 -0
- package/dist/shared/validate-frames-per-lambda.d.ts +4 -1
- package/dist/shared/validate-frames-per-lambda.js +4 -3
- package/dist/shared/validate-lambda-codec.d.ts +4 -0
- package/dist/shared/validate-lambda-codec.js +30 -0
- package/dist/shared/validate-memory-size.d.ts +0 -0
- package/dist/shared/validate-memory-size.js +0 -0
- package/dist/shared/validate-outname.d.ts +2 -2
- package/dist/shared/validate-outname.js +0 -0
- package/dist/shared/validate-presign-expiration.d.ts +0 -2
- package/dist/shared/validate-presign-expiration.js +7 -7
- package/dist/shared/validate-privacy.d.ts +1 -1
- package/dist/shared/validate-privacy.js +2 -2
- package/dist/shared/validate-retention-period.d.ts +0 -0
- package/dist/shared/validate-retention-period.js +0 -0
- package/dist/shared/validate-retries.d.ts +0 -0
- package/dist/shared/validate-retries.js +0 -0
- package/dist/shared/validate-serveurl.d.ts +0 -0
- package/dist/shared/validate-serveurl.js +0 -0
- package/dist/shared/validate-site-name.d.ts +0 -0
- package/dist/shared/validate-site-name.js +0 -0
- package/dist/shared/validate-timeout.d.ts +0 -0
- package/dist/shared/validate-timeout.js +0 -0
- package/package.json +13 -14
- package/remotionlambda.zip +0 -0
- package/dist/cli/helpers/format-bytes.d.ts +0 -6
- package/dist/cli/helpers/format-bytes.js +0 -103
- package/dist/shared/chunk.d.ts +0 -1
- package/dist/shared/chunk.js +0 -11
|
@@ -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.
|
|
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 =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
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,3 @@
|
|
|
1
|
-
import { RenderMetadata } from '../../defaults';
|
|
2
|
-
|
|
1
|
+
import type { RenderMetadata } from '../../defaults';
|
|
2
|
+
import type { CustomCredentials } from '../../shared/aws-clients';
|
|
3
|
+
export declare const getOutputUrlFromMetadata: (renderMetadata: RenderMetadata, bucketName: string, customCredentials: CustomCredentials | null) => string;
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getOutputUrlFromMetadata = void 0;
|
|
4
4
|
const expected_out_name_1 = require("./expected-out-name");
|
|
5
5
|
const get_current_region_1 = require("./get-current-region");
|
|
6
|
-
const getOutputUrlFromMetadata = (renderMetadata, bucketName) => {
|
|
7
|
-
const outname = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName);
|
|
6
|
+
const getOutputUrlFromMetadata = (renderMetadata, bucketName, customCredentials) => {
|
|
7
|
+
const outname = (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName, customCredentials);
|
|
8
8
|
return `https://s3.${(0, get_current_region_1.getCurrentRegionInFunction)()}.amazonaws.com/${outname.renderBucketName}/${outname.key}`;
|
|
9
9
|
};
|
|
10
10
|
exports.getOutputUrlFromMetadata = getOutputUrlFromMetadata;
|
|
File without changes
|
|
File without changes
|
|
@@ -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;
|
|
File without changes
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { AwsRegion } from '../../pricing/aws-regions';
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import type { AwsRegion } from '../../pricing/aws-regions';
|
|
2
|
+
import type { CustomCredentials } from '../../shared/aws-clients';
|
|
3
|
+
import type { RenderProgress } from '../../shared/constants';
|
|
4
|
+
export declare const getProgress: ({ bucketName, renderId, expectedBucketOwner, region, memorySizeInMb, timeoutInMilliseconds, customCredentials, }: {
|
|
4
5
|
bucketName: string;
|
|
5
6
|
renderId: string;
|
|
6
7
|
expectedBucketOwner: string;
|
|
7
8
|
region: AwsRegion;
|
|
8
9
|
memorySizeInMb: number;
|
|
9
|
-
|
|
10
|
+
timeoutInMilliseconds: number;
|
|
11
|
+
customCredentials: CustomCredentials | null;
|
|
10
12
|
}) => Promise<RenderProgress>;
|
|
@@ -3,8 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getProgress = void 0;
|
|
4
4
|
const remotion_1 = require("remotion");
|
|
5
5
|
const constants_1 = require("../../shared/constants");
|
|
6
|
+
const docs_url_1 = require("../../shared/docs-url");
|
|
6
7
|
const calculate_chunk_times_1 = require("./calculate-chunk-times");
|
|
7
8
|
const calculate_price_from_bucket_1 = require("./calculate-price-from-bucket");
|
|
9
|
+
const check_if_render_exists_1 = require("./check-if-render-exists");
|
|
8
10
|
const expected_out_name_1 = require("./expected-out-name");
|
|
9
11
|
const find_output_file_in_bucket_1 = require("./find-output-file-in-bucket");
|
|
10
12
|
const format_costs_info_1 = require("./format-costs-info");
|
|
@@ -21,8 +23,8 @@ const get_retry_stats_1 = require("./get-retry-stats");
|
|
|
21
23
|
const get_time_to_finish_1 = require("./get-time-to-finish");
|
|
22
24
|
const inspect_errors_1 = require("./inspect-errors");
|
|
23
25
|
const io_1 = require("./io");
|
|
24
|
-
const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region, memorySizeInMb,
|
|
25
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
26
|
+
const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region, memorySizeInMb, timeoutInMilliseconds, customCredentials, }) => {
|
|
27
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
26
28
|
const postRenderData = await (0, get_post_render_data_1.getPostRenderData)({
|
|
27
29
|
bucketName,
|
|
28
30
|
region,
|
|
@@ -30,7 +32,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
30
32
|
expectedBucketOwner,
|
|
31
33
|
});
|
|
32
34
|
if (postRenderData) {
|
|
33
|
-
const outData = (0, expected_out_name_1.getExpectedOutName)(postRenderData.renderMetadata, bucketName);
|
|
35
|
+
const outData = (0, expected_out_name_1.getExpectedOutName)(postRenderData.renderMetadata, bucketName, customCredentials);
|
|
34
36
|
return {
|
|
35
37
|
bucket: bucketName,
|
|
36
38
|
renderSize: postRenderData.renderSize,
|
|
@@ -67,6 +69,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
67
69
|
retriesInfo: postRenderData.retriesInfo,
|
|
68
70
|
outKey: outData.key,
|
|
69
71
|
outBucket: outData.renderBucketName,
|
|
72
|
+
mostExpensiveFrameRanges: (_a = postRenderData.mostExpensiveFrameRanges) !== null && _a !== void 0 ? _a : null,
|
|
70
73
|
};
|
|
71
74
|
}
|
|
72
75
|
const contents = await (0, io_1.lambdaLs)({
|
|
@@ -75,6 +78,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
75
78
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
76
79
|
expectedBucketOwner,
|
|
77
80
|
});
|
|
81
|
+
(0, check_if_render_exists_1.checkIfRenderExists)(contents, renderId, bucketName, (0, get_current_region_1.getCurrentRegionInFunction)());
|
|
78
82
|
const renderMetadataExists = Boolean(contents.find((c) => c.Key === (0, constants_1.renderMetadataKey)(renderId)));
|
|
79
83
|
const [encodingStatus, renderMetadata, errorExplanations] = await Promise.all([
|
|
80
84
|
(0, get_encoding_metadata_1.getEncodingMetadata)({
|
|
@@ -100,11 +104,15 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
100
104
|
expectedBucketOwner,
|
|
101
105
|
}),
|
|
102
106
|
]);
|
|
107
|
+
if ((renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.type) === 'still') {
|
|
108
|
+
throw new Error("You don't need to call getRenderProgress() on a still render. Once you have obtained the `renderId`, the render is already done! 😉");
|
|
109
|
+
}
|
|
103
110
|
const outputFile = renderMetadata
|
|
104
111
|
? await (0, find_output_file_in_bucket_1.findOutputFileInBucket)({
|
|
105
112
|
bucketName,
|
|
106
113
|
renderMetadata,
|
|
107
114
|
region,
|
|
115
|
+
customCredentials,
|
|
108
116
|
})
|
|
109
117
|
: null;
|
|
110
118
|
const accruedSoFar = Number((0, calculate_price_from_bucket_1.estimatePriceFromBucket)({
|
|
@@ -113,27 +121,33 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
113
121
|
memorySizeInMb,
|
|
114
122
|
outputFileMetadata: outputFile,
|
|
115
123
|
architecture: (0, get_current_architecture_1.getCurrentArchitecture)(),
|
|
116
|
-
lambdasInvoked: (
|
|
124
|
+
lambdasInvoked: (_b = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _b !== void 0 ? _b : 0,
|
|
117
125
|
// We cannot determine the ephemeral storage size, so we
|
|
118
126
|
// overestimate the price, but will only have a miniscule effect (~0.2%)
|
|
119
127
|
diskSizeInMb: constants_1.MAX_EPHEMERAL_STORAGE_IN_MB,
|
|
120
128
|
}));
|
|
121
129
|
const cleanup = (0, get_cleanup_progress_1.getCleanupProgress)({
|
|
122
|
-
chunkCount: (
|
|
130
|
+
chunkCount: (_c = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _c !== void 0 ? _c : 0,
|
|
123
131
|
contents,
|
|
124
|
-
output: (
|
|
132
|
+
output: (_d = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _d !== void 0 ? _d : null,
|
|
125
133
|
renderId,
|
|
126
134
|
});
|
|
127
135
|
const timeToFinish = (0, get_time_to_finish_1.getTimeToFinish)({
|
|
128
|
-
lastModified: (
|
|
136
|
+
lastModified: (_e = outputFile === null || outputFile === void 0 ? void 0 : outputFile.lastModified) !== null && _e !== void 0 ? _e : null,
|
|
129
137
|
renderMetadata,
|
|
130
138
|
});
|
|
131
139
|
const chunks = contents.filter((c) => { var _a; return (_a = c.Key) === null || _a === void 0 ? void 0 : _a.startsWith((0, constants_1.chunkKey)(renderId)); });
|
|
132
|
-
const allChunks = chunks.length === ((
|
|
140
|
+
const allChunks = chunks.length === ((_f = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _f !== void 0 ? _f : Infinity);
|
|
133
141
|
const renderSize = contents
|
|
134
142
|
.map((c) => { var _a; return (_a = c.Size) !== null && _a !== void 0 ? _a : 0; })
|
|
135
143
|
.reduce((a, b) => a + b, 0);
|
|
136
|
-
const lambdasInvokedStats = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(
|
|
144
|
+
const lambdasInvokedStats = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)({
|
|
145
|
+
contents,
|
|
146
|
+
renderId,
|
|
147
|
+
estimatedRenderLambdaInvokations: (_g = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _g !== void 0 ? _g : null,
|
|
148
|
+
startDate: (_h = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.startedDate) !== null && _h !== void 0 ? _h : null,
|
|
149
|
+
checkIfAllLambdasWereInvoked: true,
|
|
150
|
+
});
|
|
137
151
|
const retriesInfo = (0, get_retry_stats_1.getRetryStats)({
|
|
138
152
|
contents,
|
|
139
153
|
renderId,
|
|
@@ -145,17 +159,17 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
145
159
|
lambdaInvokeStatus: lambdasInvokedStats,
|
|
146
160
|
});
|
|
147
161
|
const chunkCount = outputFile
|
|
148
|
-
? (
|
|
162
|
+
? (_j = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _j !== void 0 ? _j : 0
|
|
149
163
|
: chunks.length;
|
|
150
164
|
// 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
|
|
151
165
|
const isBeyondTimeout = renderMetadata &&
|
|
152
|
-
Date.now() > renderMetadata.startedDate +
|
|
166
|
+
Date.now() > renderMetadata.startedDate + timeoutInMilliseconds + 20000;
|
|
153
167
|
const allErrors = [
|
|
154
168
|
isBeyondTimeout
|
|
155
169
|
? {
|
|
156
170
|
attempt: 1,
|
|
157
171
|
chunk: null,
|
|
158
|
-
explanation: `The main function timed out after ${
|
|
172
|
+
explanation: `The main function timed out after ${timeoutInMilliseconds}ms. Consider increasing the timeout of your function. You can use the "--timeout" parameter when deploying a function via CLI, or the "timeoutInSeconds" parameter when using the deployFunction API. ${docs_url_1.DOCS_URL}/docs/lambda/cli/functions#deploy`,
|
|
159
173
|
frame: null,
|
|
160
174
|
isFatal: true,
|
|
161
175
|
s3Location: '',
|
|
@@ -176,7 +190,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
176
190
|
renderId,
|
|
177
191
|
renderMetadata,
|
|
178
192
|
bucket: bucketName,
|
|
179
|
-
outputFile: (
|
|
193
|
+
outputFile: (_k = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _k !== void 0 ? _k : null,
|
|
180
194
|
timeToFinish,
|
|
181
195
|
errors: allErrors,
|
|
182
196
|
fatalErrorEncountered: allErrors.some((f) => f.isFatal && !f.willRetry),
|
|
@@ -191,7 +205,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
191
205
|
type: 'absolute-time',
|
|
192
206
|
})
|
|
193
207
|
: null,
|
|
194
|
-
timeToInvokeLambdas: (
|
|
208
|
+
timeToInvokeLambdas: (_l = encodingStatus === null || encodingStatus === void 0 ? void 0 : encodingStatus.timeToInvoke) !== null && _l !== void 0 ? _l : lambdasInvokedStats.timeToInvokeLambdas,
|
|
195
209
|
overallProgress: (0, get_overall_progress_1.getOverallProgress)({
|
|
196
210
|
cleanup: cleanup ? cleanup.filesDeleted / cleanup.minFilesToDelete : 0,
|
|
197
211
|
encoding: finalEncodingStatus && renderMetadata
|
|
@@ -206,11 +220,13 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
206
220
|
}),
|
|
207
221
|
retriesInfo,
|
|
208
222
|
outKey: outputFile && renderMetadata
|
|
209
|
-
? (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName).key
|
|
223
|
+
? (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName, customCredentials).key
|
|
210
224
|
: null,
|
|
211
225
|
outBucket: outputFile && renderMetadata
|
|
212
|
-
? (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName)
|
|
226
|
+
? (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName, customCredentials)
|
|
227
|
+
.renderBucketName
|
|
213
228
|
: null,
|
|
229
|
+
mostExpensiveFrameRanges: null,
|
|
214
230
|
};
|
|
215
231
|
};
|
|
216
232
|
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;
|
|
File without changes
|
|
@@ -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.
|
|
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;
|
|
File without changes
|
|
@@ -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;
|
|
File without changes
|
|
@@ -1,8 +1,10 @@
|
|
|
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 {
|
|
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 { CustomCredentials } from '../../shared/aws-clients';
|
|
6
|
+
import type { Privacy } from '../../shared/constants';
|
|
7
|
+
import type { DownloadBehavior } from '../../shared/content-disposition-header';
|
|
6
8
|
export declare type LambdaLSInput = {
|
|
7
9
|
bucketName: string;
|
|
8
10
|
prefix: string;
|
|
@@ -12,13 +14,21 @@ export declare type LambdaLSInput = {
|
|
|
12
14
|
};
|
|
13
15
|
export declare type LambdaLsReturnType = Promise<_Object[]>;
|
|
14
16
|
export declare const lambdaLs: ({ bucketName, prefix, region, expectedBucketOwner, continuationToken, }: LambdaLSInput) => LambdaLsReturnType;
|
|
15
|
-
export declare const
|
|
17
|
+
export declare const lambdaDeleteFile: ({ bucketName, key, region, customCredentials, }: {
|
|
18
|
+
region: AwsRegion;
|
|
19
|
+
bucketName: string;
|
|
20
|
+
key: string;
|
|
21
|
+
customCredentials: CustomCredentials | null;
|
|
22
|
+
}) => Promise<void>;
|
|
23
|
+
export declare const lambdaWriteFile: ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, customCredentials, }: {
|
|
16
24
|
bucketName: string;
|
|
17
25
|
key: string;
|
|
18
26
|
body: ReadStream | string;
|
|
19
27
|
region: AwsRegion;
|
|
20
28
|
privacy: Privacy;
|
|
21
29
|
expectedBucketOwner: string | null;
|
|
30
|
+
downloadBehavior: DownloadBehavior | null;
|
|
31
|
+
customCredentials: CustomCredentials | null;
|
|
22
32
|
}) => Promise<void>;
|
|
23
33
|
export declare const lambdaReadFile: ({ bucketName, key, region, expectedBucketOwner, }: {
|
|
24
34
|
bucketName: string;
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.lambdaReadFile = exports.lambdaWriteFile = exports.lambdaLs = void 0;
|
|
6
|
+
exports.lambdaReadFile = exports.lambdaWriteFile = exports.lambdaDeleteFile = exports.lambdaLs = void 0;
|
|
4
7
|
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
8
|
+
const mime_types_1 = __importDefault(require("mime-types"));
|
|
5
9
|
const aws_clients_1 = require("../../shared/aws-clients");
|
|
10
|
+
const content_disposition_header_1 = require("../../shared/content-disposition-header");
|
|
6
11
|
const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, continuationToken, }) => {
|
|
7
12
|
var _a, _b, _c;
|
|
8
13
|
try {
|
|
9
|
-
const list = await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.ListObjectsV2Command({
|
|
14
|
+
const list = await (0, aws_clients_1.getS3Client)(region, null).send(new client_s3_1.ListObjectsV2Command({
|
|
10
15
|
Bucket: bucketName,
|
|
11
16
|
Prefix: prefix,
|
|
12
17
|
ExpectedBucketOwner: expectedBucketOwner !== null && expectedBucketOwner !== void 0 ? expectedBucketOwner : undefined,
|
|
@@ -32,7 +37,7 @@ const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, conti
|
|
|
32
37
|
}
|
|
33
38
|
// Prevent from accessing a foreign bucket, retry without ExpectedBucketOwner and see if it works. If it works then it's an owner mismatch.
|
|
34
39
|
if ((_c = err.stack) === null || _c === void 0 ? void 0 : _c.includes('AccessDenied')) {
|
|
35
|
-
await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.ListObjectsV2Command({
|
|
40
|
+
await (0, aws_clients_1.getS3Client)(region, null).send(new client_s3_1.ListObjectsV2Command({
|
|
36
41
|
Bucket: bucketName,
|
|
37
42
|
Prefix: prefix,
|
|
38
43
|
}));
|
|
@@ -42,18 +47,31 @@ const lambdaLs = async ({ bucketName, prefix, region, expectedBucketOwner, conti
|
|
|
42
47
|
}
|
|
43
48
|
};
|
|
44
49
|
exports.lambdaLs = lambdaLs;
|
|
45
|
-
const
|
|
46
|
-
await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.
|
|
50
|
+
const lambdaDeleteFile = async ({ bucketName, key, region, customCredentials, }) => {
|
|
51
|
+
await (0, aws_clients_1.getS3Client)(region, customCredentials).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, customCredentials, }) => {
|
|
58
|
+
await (0, aws_clients_1.getS3Client)(region, customCredentials).send(new client_s3_1.PutObjectCommand({
|
|
47
59
|
Bucket: bucketName,
|
|
48
60
|
Key: key,
|
|
49
61
|
Body: body,
|
|
50
|
-
ACL: privacy === '
|
|
62
|
+
ACL: privacy === 'no-acl'
|
|
63
|
+
? undefined
|
|
64
|
+
: privacy === 'private'
|
|
65
|
+
? 'private'
|
|
66
|
+
: 'public-read',
|
|
51
67
|
ExpectedBucketOwner: expectedBucketOwner !== null && expectedBucketOwner !== void 0 ? expectedBucketOwner : undefined,
|
|
68
|
+
ContentType: mime_types_1.default.lookup(key) || 'application/octet-stream',
|
|
69
|
+
ContentDisposition: (0, content_disposition_header_1.getContentDispositionHeader)(downloadBehavior),
|
|
52
70
|
}));
|
|
53
71
|
};
|
|
54
72
|
exports.lambdaWriteFile = lambdaWriteFile;
|
|
55
73
|
const lambdaReadFile = async ({ bucketName, key, region, expectedBucketOwner, }) => {
|
|
56
|
-
const { Body } = await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.GetObjectCommand({
|
|
74
|
+
const { Body } = await (0, aws_clients_1.getS3Client)(region, null).send(new client_s3_1.GetObjectCommand({
|
|
57
75
|
Bucket: bucketName,
|
|
58
76
|
Key: key,
|
|
59
77
|
ExpectedBucketOwner: expectedBucketOwner,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -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;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { LambdaRoutines } from '../../defaults';
|
|
2
|
-
export declare const printCloudwatchHelper: (type: LambdaRoutines, data: Record<string, string>) => void;
|
|
1
|
+
import type { LambdaRoutines } from '../../defaults';
|
|
2
|
+
export declare const printCloudwatchHelper: (type: LambdaRoutines, data: Record<string, string | boolean>) => void;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,16 +1,19 @@
|
|
|
1
|
-
import { AwsRegion } from '../../pricing/aws-regions';
|
|
1
|
+
import type { AwsRegion } from '../../pricing/aws-regions';
|
|
2
|
+
import type { CustomCredentials } from '../../shared/aws-clients';
|
|
2
3
|
export declare type LambdaReadFileProgress = (progress: {
|
|
3
4
|
totalSize: number;
|
|
4
5
|
downloaded: number;
|
|
5
|
-
|
|
6
|
+
percent: number;
|
|
6
7
|
}) => unknown;
|
|
7
|
-
export declare const lambdaDownloadFileWithProgress: ({ bucketName, key, region, expectedBucketOwner, outputPath, onProgress, }: {
|
|
8
|
+
export declare const lambdaDownloadFileWithProgress: ({ bucketName, key, region, expectedBucketOwner, outputPath, onProgress, customCredentials, }: {
|
|
8
9
|
bucketName: string;
|
|
9
10
|
key: string;
|
|
10
11
|
region: AwsRegion;
|
|
11
12
|
expectedBucketOwner: string;
|
|
12
13
|
outputPath: string;
|
|
13
14
|
onProgress: LambdaReadFileProgress;
|
|
15
|
+
customCredentials: CustomCredentials | null;
|
|
14
16
|
}) => Promise<{
|
|
15
17
|
sizeInBytes: number;
|
|
18
|
+
to: string;
|
|
16
19
|
}>;
|
|
@@ -5,14 +5,26 @@ const client_s3_1 = require("@aws-sdk/client-s3");
|
|
|
5
5
|
const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
|
|
6
6
|
const renderer_1 = require("@remotion/renderer");
|
|
7
7
|
const aws_clients_1 = require("../../shared/aws-clients");
|
|
8
|
-
const lambdaDownloadFileWithProgress = async ({ bucketName, key, region, expectedBucketOwner, outputPath, onProgress, }) => {
|
|
9
|
-
const client = (0, aws_clients_1.getS3Client)(region);
|
|
8
|
+
const lambdaDownloadFileWithProgress = async ({ bucketName, key, region, expectedBucketOwner, outputPath, onProgress, customCredentials, }) => {
|
|
9
|
+
const client = (0, aws_clients_1.getS3Client)(region, customCredentials);
|
|
10
10
|
const command = new client_s3_1.GetObjectCommand({
|
|
11
11
|
Bucket: bucketName,
|
|
12
12
|
ExpectedBucketOwner: expectedBucketOwner,
|
|
13
13
|
Key: key,
|
|
14
14
|
});
|
|
15
15
|
const presigned = await (0, s3_request_presigner_1.getSignedUrl)(client, command);
|
|
16
|
-
|
|
16
|
+
const { to, sizeInBytes } = await renderer_1.RenderInternals.downloadFile({
|
|
17
|
+
url: presigned,
|
|
18
|
+
onProgress: ({ downloaded, percent, totalSize }) => {
|
|
19
|
+
// On Lambda, it should always be a number
|
|
20
|
+
onProgress({
|
|
21
|
+
downloaded,
|
|
22
|
+
percent: percent,
|
|
23
|
+
totalSize: totalSize,
|
|
24
|
+
});
|
|
25
|
+
},
|
|
26
|
+
to: () => outputPath,
|
|
27
|
+
});
|
|
28
|
+
return { sizeInBytes, to };
|
|
17
29
|
};
|
|
18
30
|
exports.lambdaDownloadFileWithProgress = lambdaDownloadFileWithProgress;
|
|
File without changes
|
|
File without changes
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import { openBrowser } from '@remotion/renderer';
|
|
2
|
-
import { TCompMetadata } from 'remotion';
|
|
3
|
-
import { Await } from '../../shared/await';
|
|
1
|
+
import type { ChromiumOptions, DownloadMap, FfmpegExecutable, openBrowser } from '@remotion/renderer';
|
|
2
|
+
import type { TCompMetadata } from 'remotion';
|
|
3
|
+
import type { Await } from '../../shared/await';
|
|
4
4
|
declare type ValidateCompositionOptions = {
|
|
5
5
|
serveUrl: string;
|
|
6
6
|
composition: string;
|
|
7
7
|
browserInstance: Await<ReturnType<typeof openBrowser>>;
|
|
8
8
|
inputProps: unknown;
|
|
9
9
|
envVariables: Record<string, string> | undefined;
|
|
10
|
+
ffmpegExecutable: FfmpegExecutable;
|
|
11
|
+
ffprobeExecutable: FfmpegExecutable;
|
|
12
|
+
timeoutInMilliseconds: number;
|
|
13
|
+
chromiumOptions: ChromiumOptions;
|
|
14
|
+
port: number | null;
|
|
15
|
+
downloadMap: DownloadMap;
|
|
10
16
|
};
|
|
11
|
-
export declare const validateComposition: ({ serveUrl, composition, browserInstance, inputProps, envVariables, }: ValidateCompositionOptions) => Promise<TCompMetadata>;
|
|
17
|
+
export declare const validateComposition: ({ serveUrl, composition, browserInstance, inputProps, envVariables, timeoutInMilliseconds, ffmpegExecutable, ffprobeExecutable, chromiumOptions, port, downloadMap, }: ValidateCompositionOptions) => Promise<TCompMetadata>;
|
|
12
18
|
export {};
|
|
@@ -2,11 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.validateComposition = void 0;
|
|
4
4
|
const renderer_1 = require("@remotion/renderer");
|
|
5
|
-
const validateComposition = async ({ serveUrl, composition, browserInstance, inputProps, envVariables, }) => {
|
|
5
|
+
const validateComposition = async ({ serveUrl, composition, browserInstance, inputProps, envVariables, timeoutInMilliseconds, ffmpegExecutable, ffprobeExecutable, chromiumOptions, port, downloadMap, }) => {
|
|
6
6
|
const compositions = await (0, renderer_1.getCompositions)(serveUrl, {
|
|
7
7
|
puppeteerInstance: browserInstance,
|
|
8
8
|
inputProps: inputProps,
|
|
9
9
|
envVariables,
|
|
10
|
+
ffmpegExecutable,
|
|
11
|
+
ffprobeExecutable,
|
|
12
|
+
timeoutInMilliseconds,
|
|
13
|
+
chromiumOptions,
|
|
14
|
+
port,
|
|
15
|
+
downloadMap,
|
|
10
16
|
});
|
|
11
17
|
const found = compositions.find((c) => c.id === composition);
|
|
12
18
|
if (!found) {
|
|
@@ -33,6 +33,8 @@ const writeLambdaError = async ({ bucketName, renderId, errorInfo, expectedBucke
|
|
|
33
33
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
34
34
|
privacy: 'private',
|
|
35
35
|
expectedBucketOwner,
|
|
36
|
+
downloadBehavior: null,
|
|
37
|
+
customCredentials: null,
|
|
36
38
|
});
|
|
37
39
|
};
|
|
38
40
|
exports.writeLambdaError = writeLambdaError;
|
|
@@ -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 writePostRenderData: ({ bucketName, renderId, postRenderData, expectedBucketOwner, region, }: {
|
|
4
4
|
bucketName: string;
|
|
5
5
|
renderId: string;
|
|
@@ -11,6 +11,8 @@ const writePostRenderData = async ({ bucketName, renderId, postRenderData, expec
|
|
|
11
11
|
body: JSON.stringify(postRenderData),
|
|
12
12
|
expectedBucketOwner,
|
|
13
13
|
region,
|
|
14
|
+
downloadBehavior: null,
|
|
15
|
+
customCredentials: null,
|
|
14
16
|
});
|
|
15
17
|
};
|
|
16
18
|
exports.writePostRenderData = writePostRenderData;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { LambdaPayload
|
|
2
|
-
import {
|
|
1
|
+
import type { LambdaPayload } from '../shared/constants';
|
|
2
|
+
import { LambdaRoutines } from '../shared/constants';
|
|
3
|
+
import type { LambdaReturnValues } from '../shared/return-values';
|
|
3
4
|
export declare const handler: <T extends LambdaRoutines>(params: LambdaPayload, context: {
|
|
4
5
|
invokedFunctionArn: string;
|
|
5
6
|
getRemainingTimeInMillis: () => number;
|