@remotion/lambda 4.0.0-tts.12 → 4.0.0-umungobongo.4
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.js +1 -0
- package/dist/admin/make-layer-public.js +2 -2
- package/dist/api/bucket-exists.d.ts +1 -1
- package/dist/api/clean-items.d.ts +1 -1
- package/dist/api/create-bucket.d.ts +1 -1
- package/dist/api/create-function.d.ts +2 -2
- package/dist/api/delete-function.d.ts +1 -1
- package/dist/api/delete-site.d.ts +1 -1
- package/dist/api/deploy-function.d.ts +2 -2
- package/dist/api/deploy-site.d.ts +3 -3
- package/dist/api/deploy-site.js +2 -3
- package/dist/api/download-media.d.ts +2 -2
- package/dist/api/enable-s3-website.d.ts +1 -1
- package/dist/api/estimate-price.d.ts +2 -2
- package/dist/api/get-aws-client.d.ts +2 -2
- package/dist/api/get-buckets.d.ts +1 -1
- package/dist/api/get-function-info.d.ts +2 -2
- package/dist/api/get-functions.d.ts +2 -2
- package/dist/api/get-or-create-bucket.d.ts +1 -1
- package/dist/api/get-regions.d.ts +1 -1
- package/dist/api/get-render-progress.d.ts +2 -2
- package/dist/api/get-sites.d.ts +2 -2
- package/dist/api/iam-validation/role-permissions.d.ts +2 -1
- package/dist/api/iam-validation/simulate-rule.d.ts +1 -1
- package/dist/api/iam-validation/simulate.d.ts +2 -2
- package/dist/api/mock-functions.d.ts +3 -3
- package/dist/api/presign-url.d.ts +3 -2
- package/dist/api/render-media-on-lambda.d.ts +13 -8
- package/dist/api/render-media-on-lambda.js +12 -5
- package/dist/api/render-still-on-lambda.d.ts +8 -7
- package/dist/api/render-still-on-lambda.js +4 -4
- package/dist/api/upload-dir.d.ts +2 -2
- package/dist/api/upload-dir.js +5 -1
- package/dist/cli/args.d.ts +4 -3
- 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.js +13 -3
- package/dist/cli/commands/sites/create.js +2 -3
- package/dist/cli/commands/sites/ls.js +1 -2
- package/dist/cli/commands/sites/rm.js +2 -3
- package/dist/cli/commands/sites/rmall.js +2 -3
- package/dist/cli/commands/still.js +1 -2
- package/dist/cli/get-aws-region.d.ts +1 -1
- package/dist/cli/helpers/get-cloudwatch-stream-url.d.ts +2 -2
- package/dist/cli/helpers/progress-bar.js +1 -2
- package/dist/cli/index.js +1 -1
- package/dist/functions/chunk-optimization/can-use-optimization.d.ts +1 -1
- package/dist/functions/chunk-optimization/collect-data.d.ts +1 -1
- package/dist/functions/chunk-optimization/get-frame-ranges-from-profile.d.ts +1 -1
- package/dist/functions/chunk-optimization/get-profile-duration.d.ts +1 -1
- 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-profile.d.ts +1 -1
- 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 +1 -0
- package/dist/functions/chunk-optimization/simulate-frame-ranges.d.ts +1 -1
- package/dist/functions/chunk-optimization/sort-by-duration.d.ts +1 -1
- package/dist/functions/chunk-optimization/types.d.ts +2 -1
- package/dist/functions/helpers/calculate-chunk-times.d.ts +1 -1
- package/dist/functions/helpers/calculate-price-from-bucket.d.ts +4 -4
- package/dist/functions/helpers/concat-videos.d.ts +5 -4
- package/dist/functions/helpers/concat-videos.js +2 -1
- 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/expected-out-name.d.ts +1 -1
- package/dist/functions/helpers/find-output-file-in-bucket.d.ts +2 -2
- package/dist/functions/helpers/find-output-file-in-bucket.js +5 -1
- package/dist/functions/helpers/format-costs-info.d.ts +1 -1
- package/dist/functions/helpers/get-browser-instance.d.ts +2 -1
- package/dist/functions/helpers/get-cleanup-progress.d.ts +2 -2
- package/dist/functions/helpers/get-current-architecture.d.ts +1 -1
- package/dist/functions/helpers/get-encoding-metadata.d.ts +2 -2
- package/dist/functions/helpers/get-final-encoding-status.d.ts +2 -2
- package/dist/functions/helpers/get-lambdas-invoked-stats.d.ts +8 -3
- package/dist/functions/helpers/get-lambdas-invoked-stats.js +7 -7
- package/dist/functions/helpers/get-output-url-from-metadata.d.ts +1 -1
- package/dist/functions/helpers/get-post-render-data.d.ts +2 -2
- package/dist/functions/helpers/get-progress.d.ts +2 -2
- package/dist/functions/helpers/get-progress.js +18 -10
- package/dist/functions/helpers/get-render-metadata.d.ts +2 -2
- package/dist/functions/helpers/get-retry-stats.d.ts +1 -1
- package/dist/functions/helpers/get-time-to-finish.d.ts +1 -1
- package/dist/functions/helpers/inspect-errors.d.ts +3 -3
- package/dist/functions/helpers/io.d.ts +8 -6
- package/dist/functions/helpers/io.js +8 -2
- 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/read-with-progress.d.ts +3 -2
- package/dist/functions/helpers/read-with-progress.js +13 -1
- package/dist/functions/helpers/validate-composition.d.ts +5 -4
- package/dist/functions/helpers/validate-composition.js +2 -1
- package/dist/functions/helpers/write-lambda-error.d.ts +1 -1
- package/dist/functions/helpers/write-lambda-error.js +1 -0
- package/dist/functions/helpers/write-post-render-data.d.ts +2 -2
- package/dist/functions/helpers/write-post-render-data.js +1 -0
- package/dist/functions/index.d.ts +3 -2
- package/dist/functions/index.js +12 -5
- package/dist/functions/info.d.ts +1 -1
- package/dist/functions/launch.d.ts +1 -1
- package/dist/functions/launch.js +37 -19
- package/dist/functions/progress.d.ts +1 -1
- package/dist/functions/renderer.d.ts +1 -1
- package/dist/functions/renderer.js +18 -11
- package/dist/functions/start.d.ts +1 -1
- package/dist/functions/start.js +5 -2
- package/dist/functions/still.d.ts +1 -1
- package/dist/functions/still.js +12 -6
- package/dist/index.d.ts +33 -18
- package/dist/pricing/price-per-1-s.d.ts +1 -1
- package/dist/shared/aws-clients.d.ts +1 -1
- package/dist/shared/bundle-site.d.ts +1 -6
- package/dist/shared/call-lambda.d.ts +3 -3
- package/dist/shared/check-credentials.js +2 -2
- package/dist/shared/constants.d.ts +29 -13
- package/dist/shared/constants.js +2 -2
- 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/get-account-id.d.ts +1 -1
- package/dist/shared/get-function-version.d.ts +2 -2
- 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/make-s3-url.d.ts +1 -1
- package/dist/shared/return-values.d.ts +7 -7
- package/dist/shared/return-values.js +0 -1
- package/dist/shared/stream-to-string.d.ts +1 -1
- package/dist/shared/truthy.d.ts +3 -0
- package/dist/shared/truthy.js +7 -0
- package/dist/shared/validate-aws-region.d.ts +1 -1
- package/dist/shared/validate-download-behavior.d.ts +1 -0
- package/dist/shared/validate-download-behavior.js +21 -0
- package/dist/shared/validate-lambda-codec.d.ts +4 -0
- package/dist/shared/validate-lambda-codec.js +30 -0
- package/dist/shared/validate-outname.d.ts +1 -1
- 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/package.json +8 -10
- 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
|
@@ -23,7 +23,7 @@ const get_time_to_finish_1 = require("./get-time-to-finish");
|
|
|
23
23
|
const inspect_errors_1 = require("./inspect-errors");
|
|
24
24
|
const io_1 = require("./io");
|
|
25
25
|
const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region, memorySizeInMb, timeoutInMiliseconds, }) => {
|
|
26
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
26
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
27
27
|
const postRenderData = await (0, get_post_render_data_1.getPostRenderData)({
|
|
28
28
|
bucketName,
|
|
29
29
|
region,
|
|
@@ -68,6 +68,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
68
68
|
retriesInfo: postRenderData.retriesInfo,
|
|
69
69
|
outKey: outData.key,
|
|
70
70
|
outBucket: outData.renderBucketName,
|
|
71
|
+
mostExpensiveFrameRanges: (_a = postRenderData.mostExpensiveFrameRanges) !== null && _a !== void 0 ? _a : null,
|
|
71
72
|
};
|
|
72
73
|
}
|
|
73
74
|
const contents = await (0, io_1.lambdaLs)({
|
|
@@ -114,27 +115,33 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
114
115
|
memorySizeInMb,
|
|
115
116
|
outputFileMetadata: outputFile,
|
|
116
117
|
architecture: (0, get_current_architecture_1.getCurrentArchitecture)(),
|
|
117
|
-
lambdasInvoked: (
|
|
118
|
+
lambdasInvoked: (_b = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _b !== void 0 ? _b : 0,
|
|
118
119
|
// We cannot determine the ephemeral storage size, so we
|
|
119
120
|
// overestimate the price, but will only have a miniscule effect (~0.2%)
|
|
120
121
|
diskSizeInMb: constants_1.MAX_EPHEMERAL_STORAGE_IN_MB,
|
|
121
122
|
}));
|
|
122
123
|
const cleanup = (0, get_cleanup_progress_1.getCleanupProgress)({
|
|
123
|
-
chunkCount: (
|
|
124
|
+
chunkCount: (_c = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _c !== void 0 ? _c : 0,
|
|
124
125
|
contents,
|
|
125
|
-
output: (
|
|
126
|
+
output: (_d = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _d !== void 0 ? _d : null,
|
|
126
127
|
renderId,
|
|
127
128
|
});
|
|
128
129
|
const timeToFinish = (0, get_time_to_finish_1.getTimeToFinish)({
|
|
129
|
-
lastModified: (
|
|
130
|
+
lastModified: (_e = outputFile === null || outputFile === void 0 ? void 0 : outputFile.lastModified) !== null && _e !== void 0 ? _e : null,
|
|
130
131
|
renderMetadata,
|
|
131
132
|
});
|
|
132
133
|
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 === ((
|
|
134
|
+
const allChunks = chunks.length === ((_f = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _f !== void 0 ? _f : Infinity);
|
|
134
135
|
const renderSize = contents
|
|
135
136
|
.map((c) => { var _a; return (_a = c.Size) !== null && _a !== void 0 ? _a : 0; })
|
|
136
137
|
.reduce((a, b) => a + b, 0);
|
|
137
|
-
const lambdasInvokedStats = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(
|
|
138
|
+
const lambdasInvokedStats = (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)({
|
|
139
|
+
contents,
|
|
140
|
+
renderId,
|
|
141
|
+
estimatedRenderLambdaInvokations: (_g = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.estimatedRenderLambdaInvokations) !== null && _g !== void 0 ? _g : null,
|
|
142
|
+
startDate: (_h = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.startedDate) !== null && _h !== void 0 ? _h : null,
|
|
143
|
+
checkIfAllLambdasWereInvoked: true,
|
|
144
|
+
});
|
|
138
145
|
const retriesInfo = (0, get_retry_stats_1.getRetryStats)({
|
|
139
146
|
contents,
|
|
140
147
|
renderId,
|
|
@@ -146,7 +153,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
146
153
|
lambdaInvokeStatus: lambdasInvokedStats,
|
|
147
154
|
});
|
|
148
155
|
const chunkCount = outputFile
|
|
149
|
-
? (
|
|
156
|
+
? (_j = renderMetadata === null || renderMetadata === void 0 ? void 0 : renderMetadata.totalChunks) !== null && _j !== void 0 ? _j : 0
|
|
150
157
|
: chunks.length;
|
|
151
158
|
// 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
159
|
const isBeyondTimeout = renderMetadata &&
|
|
@@ -177,7 +184,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
177
184
|
renderId,
|
|
178
185
|
renderMetadata,
|
|
179
186
|
bucket: bucketName,
|
|
180
|
-
outputFile: (
|
|
187
|
+
outputFile: (_k = outputFile === null || outputFile === void 0 ? void 0 : outputFile.url) !== null && _k !== void 0 ? _k : null,
|
|
181
188
|
timeToFinish,
|
|
182
189
|
errors: allErrors,
|
|
183
190
|
fatalErrorEncountered: allErrors.some((f) => f.isFatal && !f.willRetry),
|
|
@@ -192,7 +199,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
192
199
|
type: 'absolute-time',
|
|
193
200
|
})
|
|
194
201
|
: null,
|
|
195
|
-
timeToInvokeLambdas: (
|
|
202
|
+
timeToInvokeLambdas: (_l = encodingStatus === null || encodingStatus === void 0 ? void 0 : encodingStatus.timeToInvoke) !== null && _l !== void 0 ? _l : lambdasInvokedStats.timeToInvokeLambdas,
|
|
196
203
|
overallProgress: (0, get_overall_progress_1.getOverallProgress)({
|
|
197
204
|
cleanup: cleanup ? cleanup.filesDeleted / cleanup.minFilesToDelete : 0,
|
|
198
205
|
encoding: finalEncodingStatus && renderMetadata
|
|
@@ -212,6 +219,7 @@ const getProgress = async ({ bucketName, renderId, expectedBucketOwner, region,
|
|
|
212
219
|
outBucket: outputFile && renderMetadata
|
|
213
220
|
? (0, expected_out_name_1.getExpectedOutName)(renderMetadata, bucketName).renderBucketName
|
|
214
221
|
: null,
|
|
222
|
+
mostExpensiveFrameRanges: null,
|
|
215
223
|
};
|
|
216
224
|
};
|
|
217
225
|
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,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,14 @@ 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 lambdaWriteFile: ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, }: {
|
|
16
17
|
bucketName: string;
|
|
17
18
|
key: string;
|
|
18
19
|
body: ReadStream | string;
|
|
19
20
|
region: AwsRegion;
|
|
20
21
|
privacy: Privacy;
|
|
21
22
|
expectedBucketOwner: string | null;
|
|
23
|
+
downloadBehavior: DownloadBehavior | null;
|
|
22
24
|
}) => Promise<void>;
|
|
23
25
|
export declare const lambdaReadFile: ({ bucketName, key, region, expectedBucketOwner, }: {
|
|
24
26
|
bucketName: string;
|
|
@@ -7,6 +7,7 @@ exports.lambdaReadFile = exports.lambdaWriteFile = 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,19 @@ 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 lambdaWriteFile = async ({ bucketName, key, body, region, privacy, expectedBucketOwner, downloadBehavior, }) => {
|
|
50
51
|
await (0, aws_clients_1.getS3Client)(region).send(new client_s3_1.PutObjectCommand({
|
|
51
52
|
Bucket: bucketName,
|
|
52
53
|
Key: key,
|
|
53
54
|
Body: body,
|
|
54
|
-
ACL: privacy === '
|
|
55
|
+
ACL: privacy === 'no-acl'
|
|
56
|
+
? undefined
|
|
57
|
+
: privacy === 'private'
|
|
58
|
+
? 'private'
|
|
59
|
+
: 'public-read',
|
|
55
60
|
ExpectedBucketOwner: expectedBucketOwner !== null && expectedBucketOwner !== void 0 ? expectedBucketOwner : undefined,
|
|
56
61
|
ContentType: mime_types_1.default.lookup(key) || 'application/octet-stream',
|
|
62
|
+
ContentDisposition: (0, content_disposition_header_1.getContentDispositionHeader)(downloadBehavior),
|
|
57
63
|
}));
|
|
58
64
|
};
|
|
59
65
|
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;
|
|
@@ -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;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { AwsRegion } from '../../pricing/aws-regions';
|
|
1
|
+
import type { AwsRegion } from '../../pricing/aws-regions';
|
|
2
2
|
export declare type LambdaReadFileProgress = (progress: {
|
|
3
3
|
totalSize: number;
|
|
4
4
|
downloaded: number;
|
|
5
|
-
|
|
5
|
+
percent: number;
|
|
6
6
|
}) => unknown;
|
|
7
7
|
export declare const lambdaDownloadFileWithProgress: ({ bucketName, key, region, expectedBucketOwner, outputPath, onProgress, }: {
|
|
8
8
|
bucketName: string;
|
|
@@ -13,4 +13,5 @@ export declare const lambdaDownloadFileWithProgress: ({ bucketName, key, region,
|
|
|
13
13
|
onProgress: LambdaReadFileProgress;
|
|
14
14
|
}) => Promise<{
|
|
15
15
|
sizeInBytes: number;
|
|
16
|
+
to: string;
|
|
16
17
|
}>;
|
|
@@ -13,6 +13,18 @@ const lambdaDownloadFileWithProgress = async ({ bucketName, key, region, expecte
|
|
|
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;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ChromiumOptions, openBrowser } from '@remotion/renderer';
|
|
2
|
-
import {
|
|
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;
|
|
@@ -12,6 +12,7 @@ declare type ValidateCompositionOptions = {
|
|
|
12
12
|
timeoutInMilliseconds: number;
|
|
13
13
|
chromiumOptions: ChromiumOptions;
|
|
14
14
|
port: number | null;
|
|
15
|
+
downloadMap: DownloadMap;
|
|
15
16
|
};
|
|
16
|
-
export declare const validateComposition: ({ serveUrl, composition, browserInstance, inputProps, envVariables, timeoutInMilliseconds, ffmpegExecutable, ffprobeExecutable, chromiumOptions, port, }: ValidateCompositionOptions) => Promise<TCompMetadata>;
|
|
17
|
+
export declare const validateComposition: ({ serveUrl, composition, browserInstance, inputProps, envVariables, timeoutInMilliseconds, ffmpegExecutable, ffprobeExecutable, chromiumOptions, port, downloadMap, }: ValidateCompositionOptions) => Promise<TCompMetadata>;
|
|
17
18
|
export {};
|
|
@@ -2,7 +2,7 @@
|
|
|
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, timeoutInMilliseconds, ffmpegExecutable, ffprobeExecutable, chromiumOptions, port, }) => {
|
|
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,
|
|
@@ -12,6 +12,7 @@ const validateComposition = async ({ serveUrl, composition, browserInstance, inp
|
|
|
12
12
|
timeoutInMilliseconds,
|
|
13
13
|
chromiumOptions,
|
|
14
14
|
port,
|
|
15
|
+
downloadMap,
|
|
15
16
|
});
|
|
16
17
|
const found = compositions.find((c) => c.id === composition);
|
|
17
18
|
if (!found) {
|
|
@@ -33,6 +33,7 @@ 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,
|
|
36
37
|
});
|
|
37
38
|
};
|
|
38
39
|
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;
|
|
@@ -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;
|
package/dist/functions/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.handler = void 0;
|
|
4
|
-
const
|
|
4
|
+
const renderer_1 = require("@remotion/renderer");
|
|
5
5
|
const constants_1 = require("../shared/constants");
|
|
6
6
|
const clean_tmpdir_1 = require("./helpers/clean-tmpdir");
|
|
7
7
|
const is_warm_1 = require("./helpers/is-warm");
|
|
@@ -9,7 +9,7 @@ const print_cloudwatch_helper_1 = require("./helpers/print-cloudwatch-helper");
|
|
|
9
9
|
const info_1 = require("./info");
|
|
10
10
|
const launch_1 = require("./launch");
|
|
11
11
|
const progress_1 = require("./progress");
|
|
12
|
-
const
|
|
12
|
+
const renderer_2 = require("./renderer");
|
|
13
13
|
const start_1 = require("./start");
|
|
14
14
|
const still_1 = require("./still");
|
|
15
15
|
const handler = async (params, context) => {
|
|
@@ -25,6 +25,7 @@ const handler = async (params, context) => {
|
|
|
25
25
|
if (params.type === constants_1.LambdaRoutines.still) {
|
|
26
26
|
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.still, {
|
|
27
27
|
inputProps: JSON.stringify(params.inputProps),
|
|
28
|
+
isWarm,
|
|
28
29
|
});
|
|
29
30
|
return (0, still_1.stillHandler)(params, {
|
|
30
31
|
expectedBucketOwner: currentUserId,
|
|
@@ -33,6 +34,7 @@ const handler = async (params, context) => {
|
|
|
33
34
|
if (params.type === constants_1.LambdaRoutines.start) {
|
|
34
35
|
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.start, {
|
|
35
36
|
inputProps: JSON.stringify(params.inputProps),
|
|
37
|
+
isWarm,
|
|
36
38
|
});
|
|
37
39
|
return (0, start_1.startHandler)(params);
|
|
38
40
|
}
|
|
@@ -40,12 +42,14 @@ const handler = async (params, context) => {
|
|
|
40
42
|
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.launch, {
|
|
41
43
|
renderId: params.renderId,
|
|
42
44
|
inputProps: JSON.stringify(params.inputProps),
|
|
45
|
+
isWarm,
|
|
43
46
|
});
|
|
44
47
|
return (0, launch_1.launchHandler)(params, { expectedBucketOwner: currentUserId });
|
|
45
48
|
}
|
|
46
49
|
if (params.type === constants_1.LambdaRoutines.status) {
|
|
47
50
|
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.status, {
|
|
48
51
|
renderId: params.renderId,
|
|
52
|
+
isWarm,
|
|
49
53
|
});
|
|
50
54
|
return (0, progress_1.progressHandler)(params, {
|
|
51
55
|
expectedBucketOwner: currentUserId,
|
|
@@ -56,16 +60,19 @@ const handler = async (params, context) => {
|
|
|
56
60
|
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.renderer, {
|
|
57
61
|
renderId: params.renderId,
|
|
58
62
|
chunk: String(params.chunk),
|
|
59
|
-
dumpLogs: String(
|
|
63
|
+
dumpLogs: String(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose')),
|
|
60
64
|
inputProps: JSON.stringify(params.inputProps),
|
|
65
|
+
isWarm,
|
|
61
66
|
});
|
|
62
|
-
return (0,
|
|
67
|
+
return (0, renderer_2.rendererHandler)(params, {
|
|
63
68
|
expectedBucketOwner: currentUserId,
|
|
64
69
|
isWarm,
|
|
65
70
|
});
|
|
66
71
|
}
|
|
67
72
|
if (params.type === constants_1.LambdaRoutines.info) {
|
|
68
|
-
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.info, {
|
|
73
|
+
(0, print_cloudwatch_helper_1.printCloudwatchHelper)(constants_1.LambdaRoutines.info, {
|
|
74
|
+
isWarm,
|
|
75
|
+
});
|
|
69
76
|
return (0, info_1.infoHandler)(params);
|
|
70
77
|
}
|
|
71
78
|
throw new Error(constants_1.COMMAND_NOT_FOUND);
|
package/dist/functions/info.d.ts
CHANGED
package/dist/functions/launch.js
CHANGED
|
@@ -46,7 +46,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
46
46
|
}
|
|
47
47
|
const startedDate = Date.now();
|
|
48
48
|
const [browserInstance, optimization] = await Promise.all([
|
|
49
|
-
(0, get_browser_instance_1.getBrowserInstance)(
|
|
49
|
+
(0, get_browser_instance_1.getBrowserInstance)(renderer_1.RenderInternals.isEqualOrBelowLogLevel(params.logLevel, 'verbose'), params.chromiumOptions),
|
|
50
50
|
(0, s3_optimization_file_1.getOptimization)({
|
|
51
51
|
bucketName: params.bucketName,
|
|
52
52
|
siteId: (0, make_s3_url_1.getServeUrlHash)(params.serveUrl),
|
|
@@ -55,6 +55,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
55
55
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
56
56
|
}),
|
|
57
57
|
]);
|
|
58
|
+
const downloadMap = renderer_1.RenderInternals.makeDownloadMap();
|
|
58
59
|
const comp = await (0, validate_composition_1.validateComposition)({
|
|
59
60
|
serveUrl: params.serveUrl,
|
|
60
61
|
composition: params.composition,
|
|
@@ -66,16 +67,18 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
66
67
|
timeoutInMilliseconds: params.timeoutInMilliseconds,
|
|
67
68
|
chromiumOptions: params.chromiumOptions,
|
|
68
69
|
port: null,
|
|
70
|
+
downloadMap,
|
|
69
71
|
});
|
|
70
|
-
remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to
|
|
71
|
-
remotion_1.Internals.validateFps(comp.fps, 'passed to
|
|
72
|
-
remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to
|
|
73
|
-
remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to
|
|
72
|
+
remotion_1.Internals.validateDurationInFrames(comp.durationInFrames, 'passed to a Lambda render');
|
|
73
|
+
remotion_1.Internals.validateFps(comp.fps, 'passed to a Lambda render', false);
|
|
74
|
+
remotion_1.Internals.validateDimension(comp.height, 'height', 'passed to a Lambda render');
|
|
75
|
+
remotion_1.Internals.validateDimension(comp.width, 'width', 'passed to a Lambda render');
|
|
76
|
+
renderer_1.RenderInternals.validateConcurrency(params.concurrencyPerLambda, 'concurrencyPerLambda');
|
|
74
77
|
const realFrameRange = renderer_1.RenderInternals.getRealFrameRange(comp.durationInFrames, params.frameRange);
|
|
75
|
-
const frameCount = renderer_1.RenderInternals.
|
|
76
|
-
const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount);
|
|
78
|
+
const frameCount = renderer_1.RenderInternals.getFramesToRender(realFrameRange, params.everyNthFrame);
|
|
79
|
+
const framesPerLambda = (_a = params.framesPerLambda) !== null && _a !== void 0 ? _a : (0, best_frames_per_lambda_param_1.bestFramesPerLambdaParam)(frameCount.length);
|
|
77
80
|
(0, validate_frames_per_lambda_1.validateFramesPerLambda)(framesPerLambda);
|
|
78
|
-
const chunkCount = Math.ceil(frameCount / framesPerLambda);
|
|
81
|
+
const chunkCount = Math.ceil(frameCount.length / framesPerLambda);
|
|
79
82
|
if (chunkCount > constants_1.MAX_FUNCTIONS_PER_RENDER) {
|
|
80
83
|
throw new Error(`Too many functions: This render would cause ${chunkCount} functions to spawn. We limit this amount to ${constants_1.MAX_FUNCTIONS_PER_RENDER} functions as more would result in diminishing returns. Values set: frameCount = ${frameCount}, framesPerLambda=${framesPerLambda}. See ${docs_url_1.DOCS_URL}/docs/lambda/concurrency for how this parameter is calculated.`);
|
|
81
84
|
}
|
|
@@ -83,12 +86,12 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
83
86
|
(0, validate_privacy_1.validatePrivacy)(params.privacy);
|
|
84
87
|
renderer_1.RenderInternals.validatePuppeteerTimeout(params.timeoutInMilliseconds);
|
|
85
88
|
const { chunks, didUseOptimization } = (0, plan_frame_ranges_1.planFrameRanges)({
|
|
86
|
-
chunkCount,
|
|
87
89
|
framesPerLambda,
|
|
88
90
|
optimization,
|
|
89
91
|
// TODO: Re-enable chunk optimization later
|
|
90
92
|
shouldUseOptimization: false,
|
|
91
93
|
frameRange: realFrameRange,
|
|
94
|
+
everyNthFrame: params.everyNthFrame,
|
|
92
95
|
});
|
|
93
96
|
const sortedChunks = chunks.slice().sort((a, b) => a[0] - b[0]);
|
|
94
97
|
const invokers = Math.round(Math.sqrt(chunks.length));
|
|
@@ -110,18 +113,20 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
110
113
|
inputProps: params.inputProps,
|
|
111
114
|
renderId: params.renderId,
|
|
112
115
|
imageFormat: params.imageFormat,
|
|
113
|
-
codec: params.codec,
|
|
116
|
+
codec: params.codec === 'h264' ? 'h264-mkv' : params.codec,
|
|
114
117
|
crf: params.crf,
|
|
115
118
|
envVariables: params.envVariables,
|
|
116
119
|
pixelFormat: params.pixelFormat,
|
|
117
120
|
proResProfile: params.proResProfile,
|
|
118
121
|
quality: params.quality,
|
|
119
122
|
privacy: params.privacy,
|
|
120
|
-
logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a :
|
|
123
|
+
logLevel: (_a = params.logLevel) !== null && _a !== void 0 ? _a : 'info',
|
|
121
124
|
attempt: 1,
|
|
122
125
|
timeoutInMilliseconds: params.timeoutInMilliseconds,
|
|
123
126
|
chromiumOptions: params.chromiumOptions,
|
|
124
127
|
scale: params.scale,
|
|
128
|
+
everyNthFrame: params.everyNthFrame,
|
|
129
|
+
concurrencyPerLambda: params.concurrencyPerLambda,
|
|
125
130
|
};
|
|
126
131
|
return payload;
|
|
127
132
|
});
|
|
@@ -158,6 +163,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
158
163
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
159
164
|
privacy: 'private',
|
|
160
165
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
166
|
+
downloadBehavior: null,
|
|
161
167
|
});
|
|
162
168
|
await Promise.all(lambdaPayloads.map(async (payload, index) => {
|
|
163
169
|
const callingLambdaTimer = (0, timer_1.timer)('Calling chunk ' + index);
|
|
@@ -173,7 +179,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
173
179
|
let lastProgressUploaded = 0;
|
|
174
180
|
let encodingStop = null;
|
|
175
181
|
const onProgress = (framesEncoded, start) => {
|
|
176
|
-
const relativeProgress = framesEncoded / frameCount;
|
|
182
|
+
const relativeProgress = framesEncoded / frameCount.length;
|
|
177
183
|
const deltaSinceLastProgressUploaded = relativeProgress - lastProgressUploaded;
|
|
178
184
|
if (relativeProgress === 1) {
|
|
179
185
|
encodingStop = Date.now();
|
|
@@ -184,7 +190,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
184
190
|
lastProgressUploaded = relativeProgress;
|
|
185
191
|
const encodingProgress = {
|
|
186
192
|
framesEncoded,
|
|
187
|
-
totalFrames: frameCount,
|
|
193
|
+
totalFrames: frameCount.length,
|
|
188
194
|
doneIn: encodingStop ? encodingStop - start : null,
|
|
189
195
|
timeToInvoke: null,
|
|
190
196
|
};
|
|
@@ -195,6 +201,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
195
201
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
196
202
|
privacy: 'private',
|
|
197
203
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
204
|
+
downloadBehavior: null,
|
|
198
205
|
}).catch((err) => {
|
|
199
206
|
(0, write_lambda_error_1.writeLambdaError)({
|
|
200
207
|
bucketName: params.bucketName,
|
|
@@ -216,16 +223,18 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
216
223
|
});
|
|
217
224
|
});
|
|
218
225
|
};
|
|
226
|
+
const fps = comp.fps / params.everyNthFrame;
|
|
219
227
|
const { outfile, cleanupChunksProm, encodingStart } = await (0, concat_videos_1.concatVideosS3)({
|
|
220
228
|
bucket: params.bucketName,
|
|
221
229
|
expectedFiles: chunkCount,
|
|
222
230
|
onProgress,
|
|
223
|
-
numberOfFrames: frameCount,
|
|
231
|
+
numberOfFrames: frameCount.length,
|
|
224
232
|
renderId: params.renderId,
|
|
225
233
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
226
234
|
codec: params.codec,
|
|
227
235
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
228
|
-
fps
|
|
236
|
+
fps,
|
|
237
|
+
numberOfGifLoops: params.numberOfGifLoops,
|
|
229
238
|
});
|
|
230
239
|
if (!encodingStop) {
|
|
231
240
|
encodingStop = Date.now();
|
|
@@ -239,6 +248,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
239
248
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
240
249
|
privacy: params.privacy,
|
|
241
250
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
251
|
+
downloadBehavior: params.downloadBehavior,
|
|
242
252
|
});
|
|
243
253
|
let chunkProm = Promise.resolve();
|
|
244
254
|
// TODO: Enable in a later release
|
|
@@ -263,6 +273,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
263
273
|
framesPerLambda,
|
|
264
274
|
lambdaVersion: constants_1.CURRENT_VERSION,
|
|
265
275
|
frameRange: realFrameRange,
|
|
276
|
+
everyNthFrame: params.everyNthFrame,
|
|
266
277
|
},
|
|
267
278
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
268
279
|
compositionId: params.composition,
|
|
@@ -281,10 +292,16 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
281
292
|
}),
|
|
282
293
|
]);
|
|
283
294
|
const finalEncodingProgress = {
|
|
284
|
-
framesEncoded: frameCount,
|
|
285
|
-
totalFrames: frameCount,
|
|
295
|
+
framesEncoded: frameCount.length,
|
|
296
|
+
totalFrames: frameCount.length,
|
|
286
297
|
doneIn: encodingStop ? encodingStop - encodingStart : null,
|
|
287
|
-
timeToInvoke: (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)(
|
|
298
|
+
timeToInvoke: (0, get_lambdas_invoked_stats_1.getLambdasInvokedStats)({
|
|
299
|
+
contents,
|
|
300
|
+
renderId: params.renderId,
|
|
301
|
+
estimatedRenderLambdaInvokations: renderMetadata.estimatedRenderLambdaInvokations,
|
|
302
|
+
checkIfAllLambdasWereInvoked: false,
|
|
303
|
+
startDate: renderMetadata.startedDate,
|
|
304
|
+
}).timeToInvokeLambdas,
|
|
288
305
|
};
|
|
289
306
|
const finalEncodingProgressProm = (0, io_1.lambdaWriteFile)({
|
|
290
307
|
bucketName: params.bucketName,
|
|
@@ -293,6 +310,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
293
310
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
294
311
|
privacy: 'private',
|
|
295
312
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
313
|
+
downloadBehavior: null,
|
|
296
314
|
});
|
|
297
315
|
const errorExplanationsProm = (0, inspect_errors_1.inspectErrors)({
|
|
298
316
|
contents,
|
|
@@ -311,7 +329,7 @@ const innerLaunchHandler = async (params, options) => {
|
|
|
311
329
|
contents,
|
|
312
330
|
jobs,
|
|
313
331
|
});
|
|
314
|
-
const postRenderData =
|
|
332
|
+
const postRenderData = (0, create_post_render_data_1.createPostRenderData)({
|
|
315
333
|
expectedBucketOwner: options.expectedBucketOwner,
|
|
316
334
|
region: (0, get_current_region_1.getCurrentRegionInFunction)(),
|
|
317
335
|
renderId: params.renderId,
|