cdk-nextjs 0.5.15 → 0.5.16
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/.jsii +699 -238
- package/.jsii.tabl.json +1 -1
- package/API.md +543 -14
- package/README.md +1 -1
- package/docs/breaking-changes.md +33 -0
- package/docs/caching-guide.md +6 -0
- package/docs/plans/adapter-runtime-release.md +362 -0
- package/docs/plans/phase-0-image-function-opt-in.md +295 -0
- package/lib/generated-structs/OptionalNextjsDistributionProps.d.ts +10 -0
- package/lib/generated-structs/OptionalNextjsDistributionProps.js +1 -1
- package/lib/image-optimization/handler-utils.d.ts +32 -0
- package/lib/image-optimization/handler-utils.js +77 -0
- package/lib/image-optimization/handler-utils.test.d.ts +1 -0
- package/lib/image-optimization/handler-utils.test.js +142 -0
- package/lib/image-optimization/handler.mjs +56112 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +4 -2
- package/lib/nextjs-api.d.ts +18 -0
- package/lib/nextjs-api.js +25 -9
- package/lib/nextjs-build/nextjs-build.d.ts +52 -0
- package/lib/nextjs-build/nextjs-build.js +174 -27
- package/lib/nextjs-cache.js +1 -1
- package/lib/nextjs-compute/nextjs-containers.js +1 -1
- package/lib/nextjs-compute/nextjs-functions.js +1 -1
- package/lib/nextjs-compute/nextjs-image-function.d.ts +43 -0
- package/lib/nextjs-compute/nextjs-image-function.js +58 -0
- package/lib/nextjs-distribution.d.ts +22 -0
- package/lib/nextjs-distribution.js +25 -3
- package/lib/nextjs-post-deploy.js +1 -1
- package/lib/nextjs-static-assets.js +1 -1
- package/lib/root-constructs/nextjs-base-construct.d.ts +24 -1
- package/lib/root-constructs/nextjs-base-construct.js +42 -2
- package/lib/root-constructs/nextjs-global-containers.js +1 -1
- package/lib/root-constructs/nextjs-global-functions.d.ts +11 -5
- package/lib/root-constructs/nextjs-global-functions.js +15 -19
- package/lib/root-constructs/nextjs-regional-containers.js +1 -1
- package/lib/root-constructs/nextjs-regional-functions.d.ts +11 -5
- package/lib/root-constructs/nextjs-regional-functions.js +14 -18
- package/lib/utils/experimental-flags.d.ts +24 -0
- package/lib/utils/experimental-flags.js +30 -0
- package/lib/utils/get-architecture.d.ts +10 -0
- package/lib/utils/get-architecture.js +17 -2
- package/package.json +3 -1
|
@@ -6,10 +6,10 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
|
6
6
|
const aws_iam_1 = require("aws-cdk-lib/aws-iam");
|
|
7
7
|
const aws_ssm_1 = require("aws-cdk-lib/aws-ssm");
|
|
8
8
|
const constants_1 = require("../constants");
|
|
9
|
-
const
|
|
9
|
+
const nextjs_base_construct_1 = require("./nextjs-base-construct");
|
|
10
10
|
const nextjs_distribution_1 = require("../nextjs-distribution");
|
|
11
11
|
const nextjs_post_deploy_1 = require("../nextjs-post-deploy");
|
|
12
|
-
const
|
|
12
|
+
const experimental_flags_1 = require("../utils/experimental-flags");
|
|
13
13
|
/**
|
|
14
14
|
* Deploy Next.js globally distributed with functions. Uses [CloudFront
|
|
15
15
|
* Distribution](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-working-with.html)
|
|
@@ -17,8 +17,14 @@ const nextjs_base_construct_1 = require("./nextjs-base-construct");
|
|
|
17
17
|
* for functions.
|
|
18
18
|
*/
|
|
19
19
|
class NextjsGlobalFunctions extends nextjs_base_construct_1.NextjsBaseConstruct {
|
|
20
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdk-nextjs.NextjsGlobalFunctions", version: "0.5.
|
|
20
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdk-nextjs.NextjsGlobalFunctions", version: "0.5.16" };
|
|
21
21
|
nextjsFunctions;
|
|
22
|
+
/**
|
|
23
|
+
* Only created when the (experimental, unsupported) dedicated image
|
|
24
|
+
* optimization Lambda is enabled. `_next/image` is otherwise served by
|
|
25
|
+
* {@link nextjsFunctions}.
|
|
26
|
+
*/
|
|
27
|
+
nextjsImageFunction;
|
|
22
28
|
nextjsDistribution;
|
|
23
29
|
nextjsPostDeploy;
|
|
24
30
|
get url() {
|
|
@@ -28,7 +34,10 @@ class NextjsGlobalFunctions extends nextjs_base_construct_1.NextjsBaseConstruct
|
|
|
28
34
|
constructor(scope, id, props) {
|
|
29
35
|
super(scope, id, props, constants_1.NextjsType.GLOBAL_FUNCTIONS);
|
|
30
36
|
this.props = props;
|
|
31
|
-
this.nextjsFunctions = this.createNextjsFunctions();
|
|
37
|
+
this.nextjsFunctions = this.createNextjsFunctions(this.props.overrides?.nextjsFunctions);
|
|
38
|
+
if ((0, experimental_flags_1.useDedicatedImageFunction)()) {
|
|
39
|
+
this.nextjsImageFunction = this.createNextjsImageFunction(this.props.overrides?.nextjsImageFunction);
|
|
40
|
+
}
|
|
32
41
|
this.nextjsDistribution = this.createNextjsDistribution();
|
|
33
42
|
this.wireCloudFrontInvalidation();
|
|
34
43
|
this.nextjsPostDeploy = this.createNextjsPostDeploy();
|
|
@@ -83,25 +92,12 @@ class NextjsGlobalFunctions extends nextjs_base_construct_1.NextjsBaseConstruct
|
|
|
83
92
|
}));
|
|
84
93
|
this.nextjsFunctions.function.addEnvironment("CDK_NEXTJS_DISTRIBUTION_ID_PARAM_NAME", distributionIdParameterName);
|
|
85
94
|
}
|
|
86
|
-
createNextjsFunctions() {
|
|
87
|
-
// Create functions with local build output
|
|
88
|
-
return new nextjs_functions_1.NextjsFunctions(this, "NextjsFunctions", {
|
|
89
|
-
...this.computeBaseProps(),
|
|
90
|
-
overrides: {
|
|
91
|
-
...this.props.overrides?.nextjsFunctions,
|
|
92
|
-
dockerImageFunctionProps: {
|
|
93
|
-
...this.props.overrides?.nextjsFunctions?.dockerImageFunctionProps,
|
|
94
|
-
vpc: this.baseProps.vpc,
|
|
95
|
-
},
|
|
96
|
-
},
|
|
97
|
-
...this.props.overrides?.nextjsGlobalFunctions?.nextjsFunctionsProps,
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
95
|
createNextjsDistribution() {
|
|
101
96
|
return new nextjs_distribution_1.NextjsDistribution(this, "NextjsDistribution", {
|
|
102
97
|
assetsBucket: this.nextjsStaticAssets.bucket,
|
|
103
98
|
basePath: this.baseProps.basePath,
|
|
104
99
|
functionUrl: this.nextjsFunctions.functionUrl,
|
|
100
|
+
imageFunctionUrl: this.nextjsImageFunction?.functionUrl,
|
|
105
101
|
nextjsType: this.nextjsType,
|
|
106
102
|
overrides: this.props.overrides?.nextjsDistribution,
|
|
107
103
|
publicDirEntries: this.nextjsBuild.publicDirEntries,
|
|
@@ -121,4 +117,4 @@ class NextjsGlobalFunctions extends nextjs_base_construct_1.NextjsBaseConstruct
|
|
|
121
117
|
}
|
|
122
118
|
}
|
|
123
119
|
exports.NextjsGlobalFunctions = NextjsGlobalFunctions;
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWdsb2JhbC1mdW5jdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcm9vdC1jb25zdHJ1Y3RzL25leHRqcy1nbG9iYWwtZnVuY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2Q0FBb0M7QUFFcEMsaURBQXNEO0FBQ3RELGlEQUFzRDtBQUV0RCw0Q0FBMEM7QUFHMUMseUVBSTRDO0FBQzVDLGdFQUdnQztBQUNoQyw4REFHK0I7QUFDL0IsbUVBS2lDO0FBZ0NqQzs7Ozs7R0FLRztBQUNILE1BQWEscUJBQXNCLFNBQVEsMkNBQW1COztJQUM1RCxlQUFlLENBQWtCO0lBQ2pDLGtCQUFrQixDQUFxQjtJQUN2QyxnQkFBZ0IsQ0FBbUI7SUFDbkMsSUFBSSxHQUFHO1FBQ0wsT0FBTyxXQUFXLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEUsQ0FBQztJQUVPLEtBQUssQ0FBNkI7SUFFMUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQztRQUN6RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsc0JBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQzFELElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7O09BY0c7SUFDSywwQkFBMEI7UUFDaEMsTUFBTSxLQUFLLEdBQUcsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsTUFBTSwyQkFBMkIsR0FBRyw4QkFBOEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuRixJQUFJLHlCQUFlLENBQUMsSUFBSSxFQUFFLHlCQUF5QixFQUFFO1lBQ25ELGFBQWEsRUFBRSwyQkFBMkI7WUFDMUMsV0FBVyxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsY0FBYztTQUNqRSxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQzNDLElBQUkseUJBQWUsQ0FBQztZQUNsQixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztZQUM3QixTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxDQUFDLFNBQVMsQ0FBQztvQkFDZCxPQUFPLEVBQUUsS0FBSztvQkFDZCxRQUFRLEVBQUUsV0FBVztvQkFDckIsWUFBWSxFQUFFLDJCQUEyQjtpQkFDMUMsQ0FBQzthQUNIO1NBQ0YsQ0FBQyxDQUNILENBQUM7UUFDRixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQzNDLElBQUkseUJBQWUsQ0FBQztZQUNsQixPQUFPLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztZQUMxQyxvRUFBb0U7WUFDcEUsb0VBQW9FO1lBQ3BFLGlFQUFpRTtZQUNqRSxpRUFBaUU7WUFDakUsZ0VBQWdFO1lBQ2hFLFNBQVMsRUFBRTtnQkFDVCxLQUFLLENBQUMsU0FBUyxDQUFDO29CQUNkLE9BQU8sRUFBRSxZQUFZO29CQUNyQixNQUFNLEVBQUUsRUFBRTtvQkFDVixRQUFRLEVBQUUsY0FBYztvQkFDeEIsWUFBWSxFQUFFLEdBQUc7aUJBQ2xCLENBQUM7YUFDSDtTQUNGLENBQUMsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUMxQyx1Q0FBdUMsRUFDdkMsMkJBQTJCLENBQzVCLENBQUM7SUFDSixDQUFDO0lBRU8scUJBQXFCO1FBQzNCLDJDQUEyQztRQUMzQyxPQUFPLElBQUksa0NBQWUsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7WUFDbEQsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDMUIsU0FBUyxFQUFFO2dCQUNULEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsZUFBZTtnQkFDeEMsd0JBQXdCLEVBQUU7b0JBQ3hCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLHdCQUF3QjtvQkFDbEUsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRztpQkFDeEI7YUFDRjtZQUNELEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CO1NBQ3JFLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsT0FBTyxJQUFJLHdDQUFrQixDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRTtZQUN4RCxZQUFZLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU07WUFDNUMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUTtZQUNqQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXO1lBQzdDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsa0JBQWtCO1lBQ25ELGdCQUFnQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCO1lBQ25ELEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCO1NBQ3hFLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsT0FBTyxJQUFJLHFDQUFnQixDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRTtZQUNwRCxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPO1lBQ2pDLFlBQVksRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWTtZQUNsRCxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXO1lBQ3pDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCO1lBQ3JELGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNO1lBQ2xELFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0I7WUFDakQsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUI7U0FDdEUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFySEgsc0RBc0hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IERpc3RyaWJ1dGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udFwiO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IFN0cmluZ1BhcmFtZXRlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc3NtXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgTmV4dGpzVHlwZSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE9wdGlvbmFsTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHMgfSBmcm9tIFwiLi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxOZXh0anNEaXN0cmlidXRpb25Qcm9wc1wiO1xuaW1wb3J0IHsgT3B0aW9uYWxOZXh0anNQb3N0RGVwbG95UHJvcHMgfSBmcm9tIFwiLi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxOZXh0anNQb3N0RGVwbG95UHJvcHNcIjtcbmltcG9ydCB7XG4gIE5leHRqc0Z1bmN0aW9ucyxcbiAgTmV4dGpzRnVuY3Rpb25zT3ZlcnJpZGVzLFxuICBOZXh0anNGdW5jdGlvbnNQcm9wcyxcbn0gZnJvbSBcIi4uL25leHRqcy1jb21wdXRlL25leHRqcy1mdW5jdGlvbnNcIjtcbmltcG9ydCB7XG4gIE5leHRqc0Rpc3RyaWJ1dGlvbixcbiAgTmV4dGpzRGlzdHJpYnV0aW9uT3ZlcnJpZGVzLFxufSBmcm9tIFwiLi4vbmV4dGpzLWRpc3RyaWJ1dGlvblwiO1xuaW1wb3J0IHtcbiAgTmV4dGpzUG9zdERlcGxveSxcbiAgTmV4dGpzUG9zdERlcGxveU92ZXJyaWRlcyxcbn0gZnJvbSBcIi4uL25leHRqcy1wb3N0LWRlcGxveVwiO1xuaW1wb3J0IHtcbiAgTmV4dGpzQmFzZUNvbnN0cnVjdE92ZXJyaWRlcyxcbiAgTmV4dGpzQmFzZU92ZXJyaWRlcyxcbiAgTmV4dGpzQmFzZUNvbnN0cnVjdCxcbiAgTmV4dGpzQmFzZVByb3BzLFxufSBmcm9tIFwiLi9uZXh0anMtYmFzZS1jb25zdHJ1Y3RcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNHbG9iYWxGdW5jdGlvbnNDb25zdHJ1Y3RPdmVycmlkZXMgZXh0ZW5kcyBOZXh0anNCYXNlQ29uc3RydWN0T3ZlcnJpZGVzIHtcbiAgcmVhZG9ubHkgbmV4dGpzRnVuY3Rpb25zUHJvcHM/OiBOZXh0anNGdW5jdGlvbnNQcm9wcztcbiAgcmVhZG9ubHkgbmV4dGpzRGlzdHJpYnV0aW9uUHJvcHM/OiBPcHRpb25hbE5leHRqc0Rpc3RyaWJ1dGlvblByb3BzO1xuICByZWFkb25seSBuZXh0anNQb3N0RGVwbG95UHJvcHM/OiBPcHRpb25hbE5leHRqc1Bvc3REZXBsb3lQcm9wcztcbn1cblxuLyoqXG4gKiBPdmVycmlkZXMgZm9yIGBOZXh0anNHbG9iYWxGdW5jdGlvbnNgLiBPdmVycmlkZXMgYXJlIGxvd2VyIGxldmVsIHRoYW5cbiAqIHByb3BzIGFuZCBhcmUgcGFzc2VkIGRpcmVjdGx5IHRvIENESyBDb25zdHJ1Y3RzIGdpdmluZyB5b3UgbW9yZSBjb250cm9sLiBJdCdzXG4gKiByZWNvbW1lbmRlZCB0byB1c2UgY2F1dGlvbiBhbmQgcmV2aWV3IHNvdXJjZSBjb2RlIHNvIHlvdSBrbm93IGhvdyB0aGV5J3JlIHVzZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzR2xvYmFsRnVuY3Rpb25zT3ZlcnJpZGVzIGV4dGVuZHMgTmV4dGpzQmFzZU92ZXJyaWRlcyB7XG4gIHJlYWRvbmx5IG5leHRqc0dsb2JhbEZ1bmN0aW9ucz86IE5leHRqc0dsb2JhbEZ1bmN0aW9uc0NvbnN0cnVjdE92ZXJyaWRlcztcbiAgcmVhZG9ubHkgbmV4dGpzRnVuY3Rpb25zPzogTmV4dGpzRnVuY3Rpb25zT3ZlcnJpZGVzO1xuICByZWFkb25seSBuZXh0anNEaXN0cmlidXRpb24/OiBOZXh0anNEaXN0cmlidXRpb25PdmVycmlkZXM7XG4gIHJlYWRvbmx5IG5leHRqc1Bvc3REZXBsb3k/OiBOZXh0anNQb3N0RGVwbG95T3ZlcnJpZGVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc0dsb2JhbEZ1bmN0aW9uc1Byb3BzIGV4dGVuZHMgTmV4dGpzQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIEJyaW5nIHlvdXIgb3duIGRpc3RyaWJ1dGlvbi4gQ2FuIGJlIHVzZWQgd2l0aCBgYmFzZVBhdGhgIHRvIGhvc3QgbXVsdGlwbGVcbiAgICogYXBwcyBvbiB0aGUgc2FtZSBDbG91ZEZyb250IGRpc3RyaWJ1dGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbj86IERpc3RyaWJ1dGlvbjtcbiAgLyoqXG4gICAqIE92ZXJyaWRlIHByb3BzIG9mIGFueSBjb25zdHJ1Y3QuXG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZXM/OiBOZXh0anNHbG9iYWxGdW5jdGlvbnNPdmVycmlkZXM7XG59XG5cbi8qKlxuICogRGVwbG95IE5leHQuanMgZ2xvYmFsbHkgZGlzdHJpYnV0ZWQgd2l0aCBmdW5jdGlvbnMuIFVzZXMgW0Nsb3VkRnJvbnRcbiAqIERpc3RyaWJ1dGlvbl0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkRnJvbnQvbGF0ZXN0L0RldmVsb3Blckd1aWRlL2Rpc3RyaWJ1dGlvbi13b3JraW5nLXdpdGguaHRtbClcbiAqIGFzIENvbnRlbnQgRGVsaXZlcnkgTmV0d29yayAoQ0ROKSBmb3IgZ2xvYmFsIGRpc3RyaWJ1dGlvbiBhbmQgW0FXUyBMYW1iZGEgRnVuY3Rpb25zXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vbGFtYmRhL2xhdGVzdC9kZy93ZWxjb21lLmh0bWwpXG4gKiBmb3IgZnVuY3Rpb25zLlxuICovXG5leHBvcnQgY2xhc3MgTmV4dGpzR2xvYmFsRnVuY3Rpb25zIGV4dGVuZHMgTmV4dGpzQmFzZUNvbnN0cnVjdCB7XG4gIG5leHRqc0Z1bmN0aW9uczogTmV4dGpzRnVuY3Rpb25zO1xuICBuZXh0anNEaXN0cmlidXRpb246IE5leHRqc0Rpc3RyaWJ1dGlvbjtcbiAgbmV4dGpzUG9zdERlcGxveTogTmV4dGpzUG9zdERlcGxveTtcbiAgZ2V0IHVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgaHR0cHM6Ly8ke3RoaXMubmV4dGpzRGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbi5kb21haW5OYW1lfWA7XG4gIH1cblxuICBwcml2YXRlIHByb3BzOiBOZXh0anNHbG9iYWxGdW5jdGlvbnNQcm9wcztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzR2xvYmFsRnVuY3Rpb25zUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzLCBOZXh0anNUeXBlLkdMT0JBTF9GVU5DVElPTlMpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zID0gdGhpcy5jcmVhdGVOZXh0anNGdW5jdGlvbnMoKTtcbiAgICB0aGlzLm5leHRqc0Rpc3RyaWJ1dGlvbiA9IHRoaXMuY3JlYXRlTmV4dGpzRGlzdHJpYnV0aW9uKCk7XG4gICAgdGhpcy53aXJlQ2xvdWRGcm9udEludmFsaWRhdGlvbigpO1xuICAgIHRoaXMubmV4dGpzUG9zdERlcGxveSA9IHRoaXMuY3JlYXRlTmV4dGpzUG9zdERlcGxveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyB0aGUgZnVuY3Rpb24gcGVybWlzc2lvbiB0byBpbnZhbGlkYXRlIHRoZSBkaXN0cmlidXRpb24gYW5kIHBhc3Nlc1xuICAgKiBhbG9uZyBhIHdheSB0byBsb29rIHVwIGl0cyBJRCwgc28gb24tZGVtYW5kIHJldmFsaWRhdGlvblxuICAgKiAocmV2YWxpZGF0ZVRhZy9yZXZhbGlkYXRlUGF0aCkgY2FuIGV2aWN0IHN0YWxlIHJlc3BvbnNlcyBmcm9tIHRoZSBDRE5cbiAgICogZWRnZSBjYWNoZSwgbm90IGp1c3QgdGhlIG9yaWdpbidzIFMzL0R5bmFtb0RCIGNhY2hlLlxuICAgKlxuICAgKiBUaGUgZGlzdHJpYnV0aW9uIElEIGNhbid0IGJlIHBhc3NlZCBhcyBhIHBsYWluIGVudiB2YXIgb3Igc2NvcGVkIElBTVxuICAgKiByZXNvdXJjZSBBUk46IHRoZSBkaXN0cmlidXRpb24ncyBvcmlnaW4gcmVmZXJlbmNlcyB0aGlzIGZ1bmN0aW9uJ3MgVVJMLFxuICAgKiBzbyBtYWtpbmcgdGhlIGZ1bmN0aW9uJ3Mgcm9sZS9lbnZpcm9ubWVudCByZWZlcmVuY2UgdGhlIGRpc3RyaWJ1dGlvbidzXG4gICAqIElEIGluIHJldHVybiB3b3VsZCBjcmVhdGUgYSBjaXJjdWxhciBDbG91ZEZvcm1hdGlvbiBkZXBlbmRlbmN5LiBJbnN0ZWFkLFxuICAgKiB0aGUgSUQgaXMgcHVibGlzaGVkIHRvIGFuIFNTTSBQYXJhbWV0ZXIgKHdob3NlICpuYW1lKiBpcyBzdGF0aWMgYW5kIHNhZmVcbiAgICogdG8gZW1iZWQpIHRoYXQgdGhlIGZ1bmN0aW9uIHJlYWRzIGF0IHJ1bnRpbWUsIGFuZCB0aGUgSUFNIGdyYW50IGlzXG4gICAqIHNjb3BlZCB0byBhbGwgZGlzdHJpYnV0aW9ucyBpbiB0aGlzIGFjY291bnQvcmVnaW9uIHJhdGhlciB0aGFuIHRoaXNcbiAgICogc3BlY2lmaWMgKG5vdC15ZXQta25vd24tYXQtc3ludGgtdGltZSkgZGlzdHJpYnV0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSB3aXJlQ2xvdWRGcm9udEludmFsaWRhdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBzdGFjayA9IFN0YWNrLm9mKHRoaXMpO1xuICAgIGNvbnN0IGRpc3RyaWJ1dGlvbklkUGFyYW1ldGVyTmFtZSA9IGBjZGstbmV4dGpzLWRpc3RyaWJ1dGlvbi1pZC0ke3RoaXMubm9kZS5hZGRyfWA7XG5cbiAgICBuZXcgU3RyaW5nUGFyYW1ldGVyKHRoaXMsIFwiRGlzdHJpYnV0aW9uSWRQYXJhbWV0ZXJcIiwge1xuICAgICAgcGFyYW1ldGVyTmFtZTogZGlzdHJpYnV0aW9uSWRQYXJhbWV0ZXJOYW1lLFxuICAgICAgc3RyaW5nVmFsdWU6IHRoaXMubmV4dGpzRGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb25JZCxcbiAgICB9KTtcblxuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBbXCJzc206R2V0UGFyYW1ldGVyXCJdLFxuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBzdGFjay5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogXCJzc21cIixcbiAgICAgICAgICAgIHJlc291cmNlOiBcInBhcmFtZXRlclwiLFxuICAgICAgICAgICAgcmVzb3VyY2VOYW1lOiBkaXN0cmlidXRpb25JZFBhcmFtZXRlck5hbWUsXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICApO1xuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBbXCJjbG91ZGZyb250OkNyZWF0ZUludmFsaWRhdGlvblwiXSxcbiAgICAgICAgLy8gQ2FuJ3Qgc2NvcGUgdGhpcyB0byB0aGUgc3BlY2lmaWMgZGlzdHJpYnV0aW9uOiB0aGUgZGlzdHJpYnV0aW9uJ3NcbiAgICAgICAgLy8gb3JpZ2luIGFscmVhZHkgZGVwZW5kcyBvbiB0aGlzIGZ1bmN0aW9uICh2aWEgaXRzIEZ1bmN0aW9uVXJsKSwgc29cbiAgICAgICAgLy8gcmVmZXJlbmNpbmcgdGhlIGRpc3RyaWJ1dGlvbidzIElEIGhlcmUgd291bGQgY3JlYXRlIGEgY2lyY3VsYXJcbiAgICAgICAgLy8gQ2xvdWRGb3JtYXRpb24gZGVwZW5kZW5jeS4gSGVuY2UgdGhlIFNTTSBwYXJhbWV0ZXIgaW5kaXJlY3Rpb25cbiAgICAgICAgLy8gYWJvdmUgZm9yIGxvb2tpbmcgdXAgdGhlIElEIGF0IHJ1bnRpbWUgaW5zdGVhZCBvZiBzeW50aCB0aW1lLlxuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBzdGFjay5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogXCJjbG91ZGZyb250XCIsXG4gICAgICAgICAgICByZWdpb246IFwiXCIsXG4gICAgICAgICAgICByZXNvdXJjZTogXCJkaXN0cmlidXRpb25cIixcbiAgICAgICAgICAgIHJlc291cmNlTmFtZTogXCIqXCIsXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICApO1xuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLmFkZEVudmlyb25tZW50KFxuICAgICAgXCJDREtfTkVYVEpTX0RJU1RSSUJVVElPTl9JRF9QQVJBTV9OQU1FXCIsXG4gICAgICBkaXN0cmlidXRpb25JZFBhcmFtZXRlck5hbWUsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTmV4dGpzRnVuY3Rpb25zKCk6IE5leHRqc0Z1bmN0aW9ucyB7XG4gICAgLy8gQ3JlYXRlIGZ1bmN0aW9ucyB3aXRoIGxvY2FsIGJ1aWxkIG91dHB1dFxuICAgIHJldHVybiBuZXcgTmV4dGpzRnVuY3Rpb25zKHRoaXMsIFwiTmV4dGpzRnVuY3Rpb25zXCIsIHtcbiAgICAgIC4uLnRoaXMuY29tcHV0ZUJhc2VQcm9wcygpLFxuICAgICAgb3ZlcnJpZGVzOiB7XG4gICAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNGdW5jdGlvbnMsXG4gICAgICAgIGRvY2tlckltYWdlRnVuY3Rpb25Qcm9wczoge1xuICAgICAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNGdW5jdGlvbnM/LmRvY2tlckltYWdlRnVuY3Rpb25Qcm9wcyxcbiAgICAgICAgICB2cGM6IHRoaXMuYmFzZVByb3BzLnZwYyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8ubmV4dGpzR2xvYmFsRnVuY3Rpb25zPy5uZXh0anNGdW5jdGlvbnNQcm9wcyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTmV4dGpzRGlzdHJpYnV0aW9uKCkge1xuICAgIHJldHVybiBuZXcgTmV4dGpzRGlzdHJpYnV0aW9uKHRoaXMsIFwiTmV4dGpzRGlzdHJpYnV0aW9uXCIsIHtcbiAgICAgIGFzc2V0c0J1Y2tldDogdGhpcy5uZXh0anNTdGF0aWNBc3NldHMuYnVja2V0LFxuICAgICAgYmFzZVBhdGg6IHRoaXMuYmFzZVByb3BzLmJhc2VQYXRoLFxuICAgICAgZnVuY3Rpb25Vcmw6IHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uVXJsLFxuICAgICAgbmV4dGpzVHlwZTogdGhpcy5uZXh0anNUeXBlLFxuICAgICAgb3ZlcnJpZGVzOiB0aGlzLnByb3BzLm92ZXJyaWRlcz8ubmV4dGpzRGlzdHJpYnV0aW9uLFxuICAgICAgcHVibGljRGlyRW50cmllczogdGhpcy5uZXh0anNCdWlsZC5wdWJsaWNEaXJFbnRyaWVzLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0dsb2JhbEZ1bmN0aW9ucz8ubmV4dGpzRGlzdHJpYnV0aW9uUHJvcHMsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU5leHRqc1Bvc3REZXBsb3koKTogTmV4dGpzUG9zdERlcGxveSB7XG4gICAgcmV0dXJuIG5ldyBOZXh0anNQb3N0RGVwbG95KHRoaXMsIFwiTmV4dGpzUG9zdERlcGxveVwiLCB7XG4gICAgICBidWlsZElkOiB0aGlzLm5leHRqc0J1aWxkLmJ1aWxkSWQsXG4gICAgICBkaXN0cmlidXRpb246IHRoaXMubmV4dGpzRGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbixcbiAgICAgIGNhY2hlQnVja2V0OiB0aGlzLm5leHRqc0NhY2hlLmNhY2hlQnVja2V0LFxuICAgICAgcmV2YWxpZGF0aW9uVGFibGU6IHRoaXMubmV4dGpzQ2FjaGUucmV2YWxpZGF0aW9uVGFibGUsXG4gICAgICBzdGF0aWNBc3NldHNCdWNrZXQ6IHRoaXMubmV4dGpzU3RhdGljQXNzZXRzLmJ1Y2tldCxcbiAgICAgIG92ZXJyaWRlczogdGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc1Bvc3REZXBsb3ksXG4gICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8ubmV4dGpzR2xvYmFsRnVuY3Rpb25zPy5uZXh0anNQb3N0RGVwbG95UHJvcHMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWdsb2JhbC1mdW5jdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcm9vdC1jb25zdHJ1Y3RzL25leHRqcy1nbG9iYWwtZnVuY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2Q0FBb0M7QUFFcEMsaURBQXNEO0FBQ3RELGlEQUFzRDtBQUV0RCw0Q0FBMEM7QUFDMUMsbUVBS2lDO0FBV2pDLGdFQUdnQztBQUNoQyw4REFHK0I7QUFDL0Isb0VBQXdFO0FBZ0N4RTs7Ozs7R0FLRztBQUNILE1BQWEscUJBQXNCLFNBQVEsMkNBQW1COztJQUM1RCxlQUFlLENBQWtCO0lBQ2pDOzs7O09BSUc7SUFDSCxtQkFBbUIsQ0FBdUI7SUFDMUMsa0JBQWtCLENBQXFCO0lBQ3ZDLGdCQUFnQixDQUFtQjtJQUNuQyxJQUFJLEdBQUc7UUFDTCxPQUFPLFdBQVcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0RSxDQUFDO0lBRU8sS0FBSyxDQUE2QjtJQUUxQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWlDO1FBQ3pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxzQkFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FDdEMsQ0FBQztRQUNGLElBQUksSUFBQSw4Q0FBeUIsR0FBRSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FDdkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsbUJBQW1CLENBQzFDLENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxD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LENBQUMsTUFBTTtZQUNsRCxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCO1lBQ2pELEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCO1NBQ3RFLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBcEhILHNEQXFIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBEaXN0cmlidXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnRcIjtcbmltcG9ydCB7IFBvbGljeVN0YXRlbWVudCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBTdHJpbmdQYXJhbWV0ZXIgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNzbVwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE5leHRqc1R5cGUgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBOZXh0anNGdW5jdGlvbnNDb25zdHJ1Y3RPdmVycmlkZXMsXG4gIE5leHRqc0Jhc2VPdmVycmlkZXMsXG4gIE5leHRqc0Jhc2VDb25zdHJ1Y3QsXG4gIE5leHRqc0Jhc2VQcm9wcyxcbn0gZnJvbSBcIi4vbmV4dGpzLWJhc2UtY29uc3RydWN0XCI7XG5pbXBvcnQgeyBPcHRpb25hbE5leHRqc0Rpc3RyaWJ1dGlvblByb3BzIH0gZnJvbSBcIi4uL2dlbmVyYXRlZC1zdHJ1Y3RzL09wdGlvbmFsTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHNcIjtcbmltcG9ydCB7IE9wdGlvbmFsTmV4dGpzUG9zdERlcGxveVByb3BzIH0gZnJvbSBcIi4uL2dlbmVyYXRlZC1zdHJ1Y3RzL09wdGlvbmFsTmV4dGpzUG9zdERlcGxveVByb3BzXCI7XG5pbXBvcnQge1xuICBOZXh0anNGdW5jdGlvbnMsXG4gIE5leHRqc0Z1bmN0aW9uc092ZXJyaWRlcyxcbn0gZnJvbSBcIi4uL25leHRqcy1jb21wdXRlL25leHRqcy1mdW5jdGlvbnNcIjtcbmltcG9ydCB7XG4gIE5leHRqc0ltYWdlRnVuY3Rpb24sXG4gIE5leHRqc0ltYWdlRnVuY3Rpb25PdmVycmlkZXMsXG59IGZyb20gXCIuLi9uZXh0anMtY29tcHV0ZS9uZXh0anMtaW1hZ2UtZnVuY3Rpb25cIjtcbmltcG9ydCB7XG4gIE5leHRqc0Rpc3RyaWJ1dGlvbixcbiAgTmV4dGpzRGlzdHJpYnV0aW9uT3ZlcnJpZGVzLFxufSBmcm9tIFwiLi4vbmV4dGpzLWRpc3RyaWJ1dGlvblwiO1xuaW1wb3J0IHtcbiAgTmV4dGpzUG9zdERlcGxveSxcbiAgTmV4dGpzUG9zdERlcGxveU92ZXJyaWRlcyxcbn0gZnJvbSBcIi4uL25leHRqcy1wb3N0LWRlcGxveVwiO1xuaW1wb3J0IHsgdXNlRGVkaWNhdGVkSW1hZ2VGdW5jdGlvbiB9IGZyb20gXCIuLi91dGlscy9leHBlcmltZW50YWwtZmxhZ3NcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNHbG9iYWxGdW5jdGlvbnNDb25zdHJ1Y3RPdmVycmlkZXMgZXh0ZW5kcyBOZXh0anNGdW5jdGlvbnNDb25zdHJ1Y3RPdmVycmlkZXMge1xuICByZWFkb25seSBuZXh0anNEaXN0cmlidXRpb25Qcm9wcz86IE9wdGlvbmFsTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHM7XG4gIHJlYWRvbmx5IG5leHRqc1Bvc3REZXBsb3lQcm9wcz86IE9wdGlvbmFsTmV4dGpzUG9zdERlcGxveVByb3BzO1xufVxuXG4vKipcbiAqIE92ZXJyaWRlcyBmb3IgYE5leHRqc0dsb2JhbEZ1bmN0aW9uc2AuIE92ZXJyaWRlcyBhcmUgbG93ZXIgbGV2ZWwgdGhhblxuICogcHJvcHMgYW5kIGFyZSBwYXNzZWQgZGlyZWN0bHkgdG8gQ0RLIENvbnN0cnVjdHMgZ2l2aW5nIHlvdSBtb3JlIGNvbnRyb2wuIEl0J3NcbiAqIHJlY29tbWVuZGVkIHRvIHVzZSBjYXV0aW9uIGFuZCByZXZpZXcgc291cmNlIGNvZGUgc28geW91IGtub3cgaG93IHRoZXkncmUgdXNlZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXh0anNHbG9iYWxGdW5jdGlvbnNPdmVycmlkZXMgZXh0ZW5kcyBOZXh0anNCYXNlT3ZlcnJpZGVzIHtcbiAgcmVhZG9ubHkgbmV4dGpzR2xvYmFsRnVuY3Rpb25zPzogTmV4dGpzR2xvYmFsRnVuY3Rpb25zQ29uc3RydWN0T3ZlcnJpZGVzO1xuICByZWFkb25seSBuZXh0anNGdW5jdGlvbnM/OiBOZXh0anNGdW5jdGlvbnNPdmVycmlkZXM7XG4gIHJlYWRvbmx5IG5leHRqc0ltYWdlRnVuY3Rpb24/OiBOZXh0anNJbWFnZUZ1bmN0aW9uT3ZlcnJpZGVzO1xuICByZWFkb25seSBuZXh0anNEaXN0cmlidXRpb24/OiBOZXh0anNEaXN0cmlidXRpb25PdmVycmlkZXM7XG4gIHJlYWRvbmx5IG5leHRqc1Bvc3REZXBsb3k/OiBOZXh0anNQb3N0RGVwbG95T3ZlcnJpZGVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc0dsb2JhbEZ1bmN0aW9uc1Byb3BzIGV4dGVuZHMgTmV4dGpzQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIEJyaW5nIHlvdXIgb3duIGRpc3RyaWJ1dGlvbi4gQ2FuIGJlIHVzZWQgd2l0aCBgYmFzZVBhdGhgIHRvIGhvc3QgbXVsdGlwbGVcbiAgICogYXBwcyBvbiB0aGUgc2FtZSBDbG91ZEZyb250IGRpc3RyaWJ1dGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbj86IERpc3RyaWJ1dGlvbjtcbiAgLyoqXG4gICAqIE92ZXJyaWRlIHByb3BzIG9mIGFueSBjb25zdHJ1Y3QuXG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZXM/OiBOZXh0anNHbG9iYWxGdW5jdGlvbnNPdmVycmlkZXM7XG59XG5cbi8qKlxuICogRGVwbG95IE5leHQuanMgZ2xvYmFsbHkgZGlzdHJpYnV0ZWQgd2l0aCBmdW5jdGlvbnMuIFVzZXMgW0Nsb3VkRnJvbnRcbiAqIERpc3RyaWJ1dGlvbl0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkRnJvbnQvbGF0ZXN0L0RldmVsb3Blckd1aWRlL2Rpc3RyaWJ1dGlvbi13b3JraW5nLXdpdGguaHRtbClcbiAqIGFzIENvbnRlbnQgRGVsaXZlcnkgTmV0d29yayAoQ0ROKSBmb3IgZ2xvYmFsIGRpc3RyaWJ1dGlvbiBhbmQgW0FXUyBMYW1iZGEgRnVuY3Rpb25zXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vbGFtYmRhL2xhdGVzdC9kZy93ZWxjb21lLmh0bWwpXG4gKiBmb3IgZnVuY3Rpb25zLlxuICovXG5leHBvcnQgY2xhc3MgTmV4dGpzR2xvYmFsRnVuY3Rpb25zIGV4dGVuZHMgTmV4dGpzQmFzZUNvbnN0cnVjdCB7XG4gIG5leHRqc0Z1bmN0aW9uczogTmV4dGpzRnVuY3Rpb25zO1xuICAvKipcbiAgICogT25seSBjcmVhdGVkIHdoZW4gdGhlIChleHBlcmltZW50YWwsIHVuc3VwcG9ydGVkKSBkZWRpY2F0ZWQgaW1hZ2VcbiAgICogb3B0aW1pemF0aW9uIExhbWJkYSBpcyBlbmFibGVkLiBgX25leHQvaW1hZ2VgIGlzIG90aGVyd2lzZSBzZXJ2ZWQgYnlcbiAgICoge0BsaW5rIG5leHRqc0Z1bmN0aW9uc30uXG4gICAqL1xuICBuZXh0anNJbWFnZUZ1bmN0aW9uPzogTmV4dGpzSW1hZ2VGdW5jdGlvbjtcbiAgbmV4dGpzRGlzdHJpYnV0aW9uOiBOZXh0anNEaXN0cmlidXRpb247XG4gIG5leHRqc1Bvc3REZXBsb3k6IE5leHRqc1Bvc3REZXBsb3k7XG4gIGdldCB1cmwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGh0dHBzOi8vJHt0aGlzLm5leHRqc0Rpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb24uZG9tYWluTmFtZX1gO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9wczogTmV4dGpzR2xvYmFsRnVuY3Rpb25zUHJvcHM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE5leHRqc0dsb2JhbEZ1bmN0aW9uc1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcywgTmV4dGpzVHlwZS5HTE9CQUxfRlVOQ1RJT05TKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLm5leHRqc0Z1bmN0aW9ucyA9IHRoaXMuY3JlYXRlTmV4dGpzRnVuY3Rpb25zKFxuICAgICAgdGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0Z1bmN0aW9ucyxcbiAgICApO1xuICAgIGlmICh1c2VEZWRpY2F0ZWRJbWFnZUZ1bmN0aW9uKCkpIHtcbiAgICAgIHRoaXMubmV4dGpzSW1hZ2VGdW5jdGlvbiA9IHRoaXMuY3JlYXRlTmV4dGpzSW1hZ2VGdW5jdGlvbihcbiAgICAgICAgdGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0ltYWdlRnVuY3Rpb24sXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLm5leHRqc0Rpc3RyaWJ1dGlvbiA9IHRoaXMuY3JlYXRlTmV4dGpzRGlzdHJpYnV0aW9uKCk7XG4gICAgdGhpcy53aXJlQ2xvdWRGcm9udEludmFsaWRhdGlvbigpO1xuICAgIHRoaXMubmV4dGpzUG9zdERlcGxveSA9IHRoaXMuY3JlYXRlTmV4dGpzUG9zdERlcGxveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyB0aGUgZnVuY3Rpb24gcGVybWlzc2lvbiB0byBpbnZhbGlkYXRlIHRoZSBkaXN0cmlidXRpb24gYW5kIHBhc3Nlc1xuICAgKiBhbG9uZyBhIHdheSB0byBsb29rIHVwIGl0cyBJRCwgc28gb24tZGVtYW5kIHJldmFsaWRhdGlvblxuICAgKiAocmV2YWxpZGF0ZVRhZy9yZXZhbGlkYXRlUGF0aCkgY2FuIGV2aWN0IHN0YWxlIHJlc3BvbnNlcyBmcm9tIHRoZSBDRE5cbiAgICogZWRnZSBjYWNoZSwgbm90IGp1c3QgdGhlIG9yaWdpbidzIFMzL0R5bmFtb0RCIGNhY2hlLlxuICAgKlxuICAgKiBUaGUgZGlzdHJpYnV0aW9uIElEIGNhbid0IGJlIHBhc3NlZCBhcyBhIHBsYWluIGVudiB2YXIgb3Igc2NvcGVkIElBTVxuICAgKiByZXNvdXJjZSBBUk46IHRoZSBkaXN0cmlidXRpb24ncyBvcmlnaW4gcmVmZXJlbmNlcyB0aGlzIGZ1bmN0aW9uJ3MgVVJMLFxuICAgKiBzbyBtYWtpbmcgdGhlIGZ1bmN0aW9uJ3Mgcm9sZS9lbnZpcm9ubWVudCByZWZlcmVuY2UgdGhlIGRpc3RyaWJ1dGlvbidzXG4gICAqIElEIGluIHJldHVybiB3b3VsZCBjcmVhdGUgYSBjaXJjdWxhciBDbG91ZEZvcm1hdGlvbiBkZXBlbmRlbmN5LiBJbnN0ZWFkLFxuICAgKiB0aGUgSUQgaXMgcHVibGlzaGVkIHRvIGFuIFNTTSBQYXJhbWV0ZXIgKHdob3NlICpuYW1lKiBpcyBzdGF0aWMgYW5kIHNhZmVcbiAgICogdG8gZW1iZWQpIHRoYXQgdGhlIGZ1bmN0aW9uIHJlYWRzIGF0IHJ1bnRpbWUsIGFuZCB0aGUgSUFNIGdyYW50IGlzXG4gICAqIHNjb3BlZCB0byBhbGwgZGlzdHJpYnV0aW9ucyBpbiB0aGlzIGFjY291bnQvcmVnaW9uIHJhdGhlciB0aGFuIHRoaXNcbiAgICogc3BlY2lmaWMgKG5vdC15ZXQta25vd24tYXQtc3ludGgtdGltZSkgZGlzdHJpYnV0aW9uLlxuICAgKi9cbiAgcHJpdmF0ZSB3aXJlQ2xvdWRGcm9udEludmFsaWRhdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBzdGFjayA9IFN0YWNrLm9mKHRoaXMpO1xuICAgIGNvbnN0IGRpc3RyaWJ1dGlvbklkUGFyYW1ldGVyTmFtZSA9IGBjZGstbmV4dGpzLWRpc3RyaWJ1dGlvbi1pZC0ke3RoaXMubm9kZS5hZGRyfWA7XG5cbiAgICBuZXcgU3RyaW5nUGFyYW1ldGVyKHRoaXMsIFwiRGlzdHJpYnV0aW9uSWRQYXJhbWV0ZXJcIiwge1xuICAgICAgcGFyYW1ldGVyTmFtZTogZGlzdHJpYnV0aW9uSWRQYXJhbWV0ZXJOYW1lLFxuICAgICAgc3RyaW5nVmFsdWU6IHRoaXMubmV4dGpzRGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb25JZCxcbiAgICB9KTtcblxuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBbXCJzc206R2V0UGFyYW1ldGVyXCJdLFxuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBzdGFjay5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogXCJzc21cIixcbiAgICAgICAgICAgIHJlc291cmNlOiBcInBhcmFtZXRlclwiLFxuICAgICAgICAgICAgcmVzb3VyY2VOYW1lOiBkaXN0cmlidXRpb25JZFBhcmFtZXRlck5hbWUsXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICApO1xuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBhY3Rpb25zOiBbXCJjbG91ZGZyb250OkNyZWF0ZUludmFsaWRhdGlvblwiXSxcbiAgICAgICAgLy8gQ2FuJ3Qgc2NvcGUgdGhpcyB0byB0aGUgc3BlY2lmaWMgZGlzdHJpYnV0aW9uOiB0aGUgZGlzdHJpYnV0aW9uJ3NcbiAgICAgICAgLy8gb3JpZ2luIGFscmVhZHkgZGVwZW5kcyBvbiB0aGlzIGZ1bmN0aW9uICh2aWEgaXRzIEZ1bmN0aW9uVXJsKSwgc29cbiAgICAgICAgLy8gcmVmZXJlbmNpbmcgdGhlIGRpc3RyaWJ1dGlvbidzIElEIGhlcmUgd291bGQgY3JlYXRlIGEgY2lyY3VsYXJcbiAgICAgICAgLy8gQ2xvdWRGb3JtYXRpb24gZGVwZW5kZW5jeS4gSGVuY2UgdGhlIFNTTSBwYXJhbWV0ZXIgaW5kaXJlY3Rpb25cbiAgICAgICAgLy8gYWJvdmUgZm9yIGxvb2tpbmcgdXAgdGhlIElEIGF0IHJ1bnRpbWUgaW5zdGVhZCBvZiBzeW50aCB0aW1lLlxuICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICBzdGFjay5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogXCJjbG91ZGZyb250XCIsXG4gICAgICAgICAgICByZWdpb246IFwiXCIsXG4gICAgICAgICAgICByZXNvdXJjZTogXCJkaXN0cmlidXRpb25cIixcbiAgICAgICAgICAgIHJlc291cmNlTmFtZTogXCIqXCIsXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICApO1xuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLmFkZEVudmlyb25tZW50KFxuICAgICAgXCJDREtfTkVYVEpTX0RJU1RSSUJVVElPTl9JRF9QQVJBTV9OQU1FXCIsXG4gICAgICBkaXN0cmlidXRpb25JZFBhcmFtZXRlck5hbWUsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTmV4dGpzRGlzdHJpYnV0aW9uKCkge1xuICAgIHJldHVybiBuZXcgTmV4dGpzRGlzdHJpYnV0aW9uKHRoaXMsIFwiTmV4dGpzRGlzdHJpYnV0aW9uXCIsIHtcbiAgICAgIGFzc2V0c0J1Y2tldDogdGhpcy5uZXh0anNTdGF0aWNBc3NldHMuYnVja2V0LFxuICAgICAgYmFzZVBhdGg6IHRoaXMuYmFzZVByb3BzLmJhc2VQYXRoLFxuICAgICAgZnVuY3Rpb25Vcmw6IHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uVXJsLFxuICAgICAgaW1hZ2VGdW5jdGlvblVybDogdGhpcy5uZXh0anNJbWFnZUZ1bmN0aW9uPy5mdW5jdGlvblVybCxcbiAgICAgIG5leHRqc1R5cGU6IHRoaXMubmV4dGpzVHlwZSxcbiAgICAgIG92ZXJyaWRlczogdGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0Rpc3RyaWJ1dGlvbixcbiAgICAgIHB1YmxpY0RpckVudHJpZXM6IHRoaXMubmV4dGpzQnVpbGQucHVibGljRGlyRW50cmllcyxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNHbG9iYWxGdW5jdGlvbnM/Lm5leHRqc0Rpc3RyaWJ1dGlvblByb3BzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVOZXh0anNQb3N0RGVwbG95KCk6IE5leHRqc1Bvc3REZXBsb3kge1xuICAgIHJldHVybiBuZXcgTmV4dGpzUG9zdERlcGxveSh0aGlzLCBcIk5leHRqc1Bvc3REZXBsb3lcIiwge1xuICAgICAgYnVpbGRJZDogdGhpcy5uZXh0anNCdWlsZC5idWlsZElkLFxuICAgICAgZGlzdHJpYnV0aW9uOiB0aGlzLm5leHRqc0Rpc3RyaWJ1dGlvbi5kaXN0cmlidXRpb24sXG4gICAgICBjYWNoZUJ1Y2tldDogdGhpcy5uZXh0anNDYWNoZS5jYWNoZUJ1Y2tldCxcbiAgICAgIHJldmFsaWRhdGlvblRhYmxlOiB0aGlzLm5leHRqc0NhY2hlLnJldmFsaWRhdGlvblRhYmxlLFxuICAgICAgc3RhdGljQXNzZXRzQnVja2V0OiB0aGlzLm5leHRqc1N0YXRpY0Fzc2V0cy5idWNrZXQsXG4gICAgICBvdmVycmlkZXM6IHRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNQb3N0RGVwbG95LFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0dsb2JhbEZ1bmN0aW9ucz8ubmV4dGpzUG9zdERlcGxveVByb3BzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -13,7 +13,7 @@ const nextjs_post_deploy_1 = require("../nextjs-post-deploy");
|
|
|
13
13
|
* for containers.
|
|
14
14
|
*/
|
|
15
15
|
class NextjsRegionalContainers extends nextjs_base_construct_1.NextjsBaseConstruct {
|
|
16
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdk-nextjs.NextjsRegionalContainers", version: "0.5.
|
|
16
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdk-nextjs.NextjsRegionalContainers", version: "0.5.16" };
|
|
17
17
|
nextjsContainers;
|
|
18
18
|
nextjsPostDeploy;
|
|
19
19
|
get url() {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Construct } from "constructs";
|
|
2
2
|
import { NextjsApi, NextjsApiOverrides, NextjsApiProps } from "../nextjs-api";
|
|
3
|
-
import { NextjsBaseConstruct, NextjsBaseProps,
|
|
3
|
+
import { NextjsBaseConstruct, NextjsBaseProps, NextjsFunctionsConstructOverrides, NextjsBaseOverrides } from "./nextjs-base-construct";
|
|
4
4
|
import { OptionalNextjsPostDeployProps } from "../generated-structs/OptionalNextjsPostDeployProps";
|
|
5
|
-
import { NextjsFunctions, NextjsFunctionsOverrides
|
|
5
|
+
import { NextjsFunctions, NextjsFunctionsOverrides } from "../nextjs-compute/nextjs-functions";
|
|
6
|
+
import { NextjsImageFunction, NextjsImageFunctionOverrides } from "../nextjs-compute/nextjs-image-function";
|
|
6
7
|
import { NextjsPostDeploy, NextjsPostDeployOverrides } from "../nextjs-post-deploy";
|
|
7
|
-
export interface NextjsRegionalFunctionsConstructOverrides extends
|
|
8
|
-
readonly nextjsFunctionsProps?: NextjsFunctionsProps;
|
|
8
|
+
export interface NextjsRegionalFunctionsConstructOverrides extends NextjsFunctionsConstructOverrides {
|
|
9
9
|
readonly nextjsApiProps?: NextjsApiProps;
|
|
10
10
|
readonly nextjsPostDeployProps?: OptionalNextjsPostDeployProps;
|
|
11
11
|
}
|
|
@@ -17,6 +17,7 @@ export interface NextjsRegionalFunctionsConstructOverrides extends NextjsBaseCon
|
|
|
17
17
|
export interface NextjsRegionalFunctionsOverrides extends NextjsBaseOverrides {
|
|
18
18
|
readonly nextjsRegionalFunctions?: NextjsRegionalFunctionsConstructOverrides;
|
|
19
19
|
readonly nextjsFunctions?: NextjsFunctionsOverrides;
|
|
20
|
+
readonly nextjsImageFunction?: NextjsImageFunctionOverrides;
|
|
20
21
|
readonly nextjsApi?: NextjsApiOverrides;
|
|
21
22
|
readonly nextjsPostDeploy?: NextjsPostDeployOverrides;
|
|
22
23
|
}
|
|
@@ -32,12 +33,17 @@ export interface NextjsRegionalFunctionsProps extends NextjsBaseProps {
|
|
|
32
33
|
*/
|
|
33
34
|
export declare class NextjsRegionalFunctions extends NextjsBaseConstruct {
|
|
34
35
|
nextjsFunctions: NextjsFunctions;
|
|
36
|
+
/**
|
|
37
|
+
* Only created when the (experimental, unsupported) dedicated image
|
|
38
|
+
* optimization Lambda is enabled. `_next/image` is otherwise served by
|
|
39
|
+
* {@link nextjsFunctions}.
|
|
40
|
+
*/
|
|
41
|
+
nextjsImageFunction?: NextjsImageFunction;
|
|
35
42
|
nextjsApi: NextjsApi;
|
|
36
43
|
nextjsPostDeploy: NextjsPostDeploy;
|
|
37
44
|
get url(): string;
|
|
38
45
|
private props;
|
|
39
46
|
constructor(scope: Construct, id: string, props: NextjsRegionalFunctionsProps);
|
|
40
|
-
private createNextjsFunctions;
|
|
41
47
|
private createNextjsApi;
|
|
42
48
|
private createNextjsPostDeploy;
|
|
43
49
|
}
|
|
@@ -6,15 +6,21 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
|
6
6
|
const constants_1 = require("../constants");
|
|
7
7
|
const nextjs_api_1 = require("../nextjs-api");
|
|
8
8
|
const nextjs_base_construct_1 = require("./nextjs-base-construct");
|
|
9
|
-
const nextjs_functions_1 = require("../nextjs-compute/nextjs-functions");
|
|
10
9
|
const nextjs_post_deploy_1 = require("../nextjs-post-deploy");
|
|
10
|
+
const experimental_flags_1 = require("../utils/experimental-flags");
|
|
11
11
|
/**
|
|
12
12
|
* Deploy Next.js regionally with functions. Uses API Gateway REST API
|
|
13
13
|
* for routing requests and AWS Lambda Functions for server-side rendering.
|
|
14
14
|
*/
|
|
15
15
|
class NextjsRegionalFunctions extends nextjs_base_construct_1.NextjsBaseConstruct {
|
|
16
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdk-nextjs.NextjsRegionalFunctions", version: "0.5.
|
|
16
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdk-nextjs.NextjsRegionalFunctions", version: "0.5.16" };
|
|
17
17
|
nextjsFunctions;
|
|
18
|
+
/**
|
|
19
|
+
* Only created when the (experimental, unsupported) dedicated image
|
|
20
|
+
* optimization Lambda is enabled. `_next/image` is otherwise served by
|
|
21
|
+
* {@link nextjsFunctions}.
|
|
22
|
+
*/
|
|
23
|
+
nextjsImageFunction;
|
|
18
24
|
nextjsApi;
|
|
19
25
|
nextjsPostDeploy;
|
|
20
26
|
get url() {
|
|
@@ -24,28 +30,18 @@ class NextjsRegionalFunctions extends nextjs_base_construct_1.NextjsBaseConstruc
|
|
|
24
30
|
constructor(scope, id, props) {
|
|
25
31
|
super(scope, id, props, constants_1.NextjsType.REGIONAL_FUNCTIONS);
|
|
26
32
|
this.props = props;
|
|
27
|
-
this.nextjsFunctions = this.createNextjsFunctions();
|
|
33
|
+
this.nextjsFunctions = this.createNextjsFunctions(this.props.overrides?.nextjsFunctions);
|
|
34
|
+
if ((0, experimental_flags_1.useDedicatedImageFunction)()) {
|
|
35
|
+
this.nextjsImageFunction = this.createNextjsImageFunction(this.props.overrides?.nextjsImageFunction);
|
|
36
|
+
}
|
|
28
37
|
this.nextjsApi = this.createNextjsApi();
|
|
29
38
|
this.nextjsPostDeploy = this.createNextjsPostDeploy();
|
|
30
39
|
}
|
|
31
|
-
createNextjsFunctions() {
|
|
32
|
-
// Create functions with local build output
|
|
33
|
-
return new nextjs_functions_1.NextjsFunctions(this, "NextjsFunctions", {
|
|
34
|
-
...this.computeBaseProps(),
|
|
35
|
-
overrides: {
|
|
36
|
-
...this.props.overrides?.nextjsFunctions,
|
|
37
|
-
dockerImageFunctionProps: {
|
|
38
|
-
...this.props.overrides?.nextjsFunctions?.dockerImageFunctionProps,
|
|
39
|
-
vpc: this.baseProps.vpc,
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
...this.props.overrides?.nextjsRegionalFunctions?.nextjsFunctionsProps,
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
40
|
createNextjsApi() {
|
|
46
41
|
return new nextjs_api_1.NextjsApi(this, "NextjsApi", {
|
|
47
42
|
staticAssetsBucket: this.nextjsStaticAssets.bucket,
|
|
48
43
|
serverFunction: this.nextjsFunctions.function,
|
|
44
|
+
imageFunction: this.nextjsImageFunction?.function,
|
|
49
45
|
basePath: this.baseProps.basePath,
|
|
50
46
|
overrides: this.props.overrides?.nextjsApi,
|
|
51
47
|
publicDirEntries: this.nextjsBuild.publicDirEntries,
|
|
@@ -64,4 +60,4 @@ class NextjsRegionalFunctions extends nextjs_base_construct_1.NextjsBaseConstruc
|
|
|
64
60
|
}
|
|
65
61
|
}
|
|
66
62
|
exports.NextjsRegionalFunctions = NextjsRegionalFunctions;
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLXJlZ2lvbmFsLWZ1bmN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yb290LWNvbnN0cnVjdHMvbmV4dGpzLXJlZ2lvbmFsLWZ1bmN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNkNBQW9DO0FBRXBDLDRDQUEwQztBQUMxQyw4Q0FBOEU7QUFDOUUsbUVBS2lDO0FBVWpDLDhEQUcrQjtBQUMvQixvRUFBd0U7QUEyQnhFOzs7R0FHRztBQUNILE1BQWEsdUJBQXdCLFNBQVEsMkNBQW1COztJQUM5RCxlQUFlLENBQWtCO0lBQ2pDOzs7O09BSUc7SUFDSCxtQkFBbUIsQ0FBdUI7SUFDMUMsU0FBUyxDQUFZO0lBQ3JCLGdCQUFnQixDQUFtQjtJQUNuQyxJQUFJLEdBQUc7UUFDTCxPQUFPLFdBQVcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxnQkFBZ0IsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxrQkFBa0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3RKLENBQUM7SUFFTyxLQUFLLENBQStCO0lBRTVDLFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQW1DO1FBRW5DLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxzQkFBVSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FDdEMsQ0FBQztRQUNGLElBQUksSUFBQSw4Q0FBeUIsR0FBRSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FDdkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsbUJBQW1CLENBQzFDLENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFTyxlQUFlO1FBQ3JCLE9BQU8sSUFBSSxzQkFBUyxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDdEMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU07WUFDbEQsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUTtZQUM3QyxhQUFhLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFFBQVE7WUFDakQsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUTtZQUNqQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsU0FBUztZQUMxQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQjtZQUNuRCxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLHVCQUF1QixFQUFFLGNBQWM7U0FDakUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLHNCQUFzQjtRQUM1QixPQUFPLElBQUkscUNBQWdCLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFO1lBQ3BELE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU87WUFDakMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVztZQUN6QyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQjtZQUNyRCxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTTtZQUNsRCxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCO1lBQ2pELEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCO1NBQ3hFLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBekRILDBEQTBEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgTmV4dGpzVHlwZSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE5leHRqc0FwaSwgTmV4dGpzQXBpT3ZlcnJpZGVzLCBOZXh0anNBcGlQcm9wcyB9IGZyb20gXCIuLi9uZXh0anMtYXBpXCI7XG5pbXBvcnQge1xuICBOZXh0anNCYXNlQ29uc3RydWN0LFxuICBOZXh0anNCYXNlUHJvcHMsXG4gIE5leHRqc0Z1bmN0aW9uc0NvbnN0cnVjdE92ZXJyaWRlcyxcbiAgTmV4dGpzQmFzZU92ZXJyaWRlcyxcbn0gZnJvbSBcIi4vbmV4dGpzLWJhc2UtY29uc3RydWN0XCI7XG5pbXBvcnQgeyBPcHRpb25hbE5leHRqc1Bvc3REZXBsb3lQcm9wcyB9IGZyb20gXCIuLi9nZW5lcmF0ZWQtc3RydWN0cy9PcHRpb25hbE5leHRqc1Bvc3REZXBsb3lQcm9wc1wiO1xuaW1wb3J0IHtcbiAgTmV4dGpzRnVuY3Rpb25zLFxuICBOZXh0anNGdW5jdGlvbnNPdmVycmlkZXMsXG59IGZyb20gXCIuLi9uZXh0anMtY29tcHV0ZS9uZXh0anMtZnVuY3Rpb25zXCI7XG5pbXBvcnQge1xuICBOZXh0anNJbWFnZUZ1bmN0aW9uLFxuICBOZXh0anNJbWFnZUZ1bmN0aW9uT3ZlcnJpZGVzLFxufSBmcm9tIFwiLi4vbmV4dGpzLWNvbXB1dGUvbmV4dGpzLWltYWdlLWZ1bmN0aW9uXCI7XG5pbXBvcnQge1xuICBOZXh0anNQb3N0RGVwbG95LFxuICBOZXh0anNQb3N0RGVwbG95T3ZlcnJpZGVzLFxufSBmcm9tIFwiLi4vbmV4dGpzLXBvc3QtZGVwbG95XCI7XG5pbXBvcnQgeyB1c2VEZWRpY2F0ZWRJbWFnZUZ1bmN0aW9uIH0gZnJvbSBcIi4uL3V0aWxzL2V4cGVyaW1lbnRhbC1mbGFnc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc1JlZ2lvbmFsRnVuY3Rpb25zQ29uc3RydWN0T3ZlcnJpZGVzIGV4dGVuZHMgTmV4dGpzRnVuY3Rpb25zQ29uc3RydWN0T3ZlcnJpZGVzIHtcbiAgcmVhZG9ubHkgbmV4dGpzQXBpUHJvcHM/OiBOZXh0anNBcGlQcm9wcztcbiAgcmVhZG9ubHkgbmV4dGpzUG9zdERlcGxveVByb3BzPzogT3B0aW9uYWxOZXh0anNQb3N0RGVwbG95UHJvcHM7XG59XG5cbi8qKlxuICogT3ZlcnJpZGVzIGZvciBgTmV4dGpzUmVnaW9uYWxGdW5jdGlvbnNgLiBPdmVycmlkZXMgYXJlIGxvd2VyIGxldmVsIHRoYW5cbiAqIHByb3BzIGFuZCBhcmUgcGFzc2VkIGRpcmVjdGx5IHRvIENESyBDb25zdHJ1Y3RzIGdpdmluZyB5b3UgbW9yZSBjb250cm9sLiBJdCdzXG4gKiByZWNvbW1lbmRlZCB0byB1c2UgY2F1dGlvbiBhbmQgcmV2aWV3IHNvdXJjZSBjb2RlIHNvIHlvdSBrbm93IGhvdyB0aGV5J3JlIHVzZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzUmVnaW9uYWxGdW5jdGlvbnNPdmVycmlkZXMgZXh0ZW5kcyBOZXh0anNCYXNlT3ZlcnJpZGVzIHtcbiAgcmVhZG9ubHkgbmV4dGpzUmVnaW9uYWxGdW5jdGlvbnM/OiBOZXh0anNSZWdpb25hbEZ1bmN0aW9uc0NvbnN0cnVjdE92ZXJyaWRlcztcbiAgcmVhZG9ubHkgbmV4dGpzRnVuY3Rpb25zPzogTmV4dGpzRnVuY3Rpb25zT3ZlcnJpZGVzO1xuICByZWFkb25seSBuZXh0anNJbWFnZUZ1bmN0aW9uPzogTmV4dGpzSW1hZ2VGdW5jdGlvbk92ZXJyaWRlcztcbiAgcmVhZG9ubHkgbmV4dGpzQXBpPzogTmV4dGpzQXBpT3ZlcnJpZGVzO1xuICByZWFkb25seSBuZXh0anNQb3N0RGVwbG95PzogTmV4dGpzUG9zdERlcGxveU92ZXJyaWRlcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNSZWdpb25hbEZ1bmN0aW9uc1Byb3BzIGV4dGVuZHMgTmV4dGpzQmFzZVByb3BzIHtcbiAgLyoqXG4gICAqIE92ZXJyaWRlIHByb3BzIG9mIGFueSBjb25zdHJ1Y3QuXG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZXM/OiBOZXh0anNSZWdpb25hbEZ1bmN0aW9uc092ZXJyaWRlcztcbn1cblxuLyoqXG4gKiBEZXBsb3kgTmV4dC5qcyByZWdpb25hbGx5IHdpdGggZnVuY3Rpb25zLiBVc2VzIEFQSSBHYXRld2F5IFJFU1QgQVBJXG4gKiBmb3Igcm91dGluZyByZXF1ZXN0cyBhbmQgQVdTIExhbWJkYSBGdW5jdGlvbnMgZm9yIHNlcnZlci1zaWRlIHJlbmRlcmluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIE5leHRqc1JlZ2lvbmFsRnVuY3Rpb25zIGV4dGVuZHMgTmV4dGpzQmFzZUNvbnN0cnVjdCB7XG4gIG5leHRqc0Z1bmN0aW9uczogTmV4dGpzRnVuY3Rpb25zO1xuICAvKipcbiAgICogT25seSBjcmVhdGVkIHdoZW4gdGhlIChleHBlcmltZW50YWwsIHVuc3VwcG9ydGVkKSBkZWRpY2F0ZWQgaW1hZ2VcbiAgICogb3B0aW1pemF0aW9uIExhbWJkYSBpcyBlbmFibGVkLiBgX25leHQvaW1hZ2VgIGlzIG90aGVyd2lzZSBzZXJ2ZWQgYnlcbiAgICoge0BsaW5rIG5leHRqc0Z1bmN0aW9uc30uXG4gICAqL1xuICBuZXh0anNJbWFnZUZ1bmN0aW9uPzogTmV4dGpzSW1hZ2VGdW5jdGlvbjtcbiAgbmV4dGpzQXBpOiBOZXh0anNBcGk7XG4gIG5leHRqc1Bvc3REZXBsb3k6IE5leHRqc1Bvc3REZXBsb3k7XG4gIGdldCB1cmwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGh0dHBzOi8vJHt0aGlzLm5leHRqc0FwaS5hcGkucmVzdEFwaUlkfS5leGVjdXRlLWFwaS4ke1N0YWNrLm9mKHRoaXMpLnJlZ2lvbn0uYW1hem9uYXdzLmNvbS8ke3RoaXMubmV4dGpzQXBpLmFwaS5kZXBsb3ltZW50U3RhZ2Uuc3RhZ2VOYW1lfWA7XG4gIH1cblxuICBwcml2YXRlIHByb3BzOiBOZXh0anNSZWdpb25hbEZ1bmN0aW9uc1Byb3BzO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogTmV4dGpzUmVnaW9uYWxGdW5jdGlvbnNQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcywgTmV4dGpzVHlwZS5SRUdJT05BTF9GVU5DVElPTlMpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMubmV4dGpzRnVuY3Rpb25zID0gdGhpcy5jcmVhdGVOZXh0anNGdW5jdGlvbnMoXG4gICAgICB0aGlzLnByb3BzLm92ZXJyaWRlcz8ubmV4dGpzRnVuY3Rpb25zLFxuICAgICk7XG4gICAgaWYgKHVzZURlZGljYXRlZEltYWdlRnVuY3Rpb24oKSkge1xuICAgICAgdGhpcy5uZXh0anNJbWFnZUZ1bmN0aW9uID0gdGhpcy5jcmVhdGVOZXh0anNJbWFnZUZ1bmN0aW9uKFxuICAgICAgICB0aGlzLnByb3BzLm92ZXJyaWRlcz8ubmV4dGpzSW1hZ2VGdW5jdGlvbixcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMubmV4dGpzQXBpID0gdGhpcy5jcmVhdGVOZXh0anNBcGkoKTtcbiAgICB0aGlzLm5leHRqc1Bvc3REZXBsb3kgPSB0aGlzLmNyZWF0ZU5leHRqc1Bvc3REZXBsb3koKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTmV4dGpzQXBpKCkge1xuICAgIHJldHVybiBuZXcgTmV4dGpzQXBpKHRoaXMsIFwiTmV4dGpzQXBpXCIsIHtcbiAgICAgIHN0YXRpY0Fzc2V0c0J1Y2tldDogdGhpcy5uZXh0anNTdGF0aWNBc3NldHMuYnVja2V0LFxuICAgICAgc2VydmVyRnVuY3Rpb246IHRoaXMubmV4dGpzRnVuY3Rpb25zLmZ1bmN0aW9uLFxuICAgICAgaW1hZ2VGdW5jdGlvbjogdGhpcy5uZXh0anNJbWFnZUZ1bmN0aW9uPy5mdW5jdGlvbixcbiAgICAgIGJhc2VQYXRoOiB0aGlzLmJhc2VQcm9wcy5iYXNlUGF0aCxcbiAgICAgIG92ZXJyaWRlczogdGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0FwaSxcbiAgICAgIHB1YmxpY0RpckVudHJpZXM6IHRoaXMubmV4dGpzQnVpbGQucHVibGljRGlyRW50cmllcyxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNSZWdpb25hbEZ1bmN0aW9ucz8ubmV4dGpzQXBpUHJvcHMsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZU5leHRqc1Bvc3REZXBsb3koKTogTmV4dGpzUG9zdERlcGxveSB7XG4gICAgcmV0dXJuIG5ldyBOZXh0anNQb3N0RGVwbG95KHRoaXMsIFwiTmV4dGpzUG9zdERlcGxveVwiLCB7XG4gICAgICBidWlsZElkOiB0aGlzLm5leHRqc0J1aWxkLmJ1aWxkSWQsXG4gICAgICBjYWNoZUJ1Y2tldDogdGhpcy5uZXh0anNDYWNoZS5jYWNoZUJ1Y2tldCxcbiAgICAgIHJldmFsaWRhdGlvblRhYmxlOiB0aGlzLm5leHRqc0NhY2hlLnJldmFsaWRhdGlvblRhYmxlLFxuICAgICAgc3RhdGljQXNzZXRzQnVja2V0OiB0aGlzLm5leHRqc1N0YXRpY0Fzc2V0cy5idWNrZXQsXG4gICAgICBvdmVycmlkZXM6IHRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNQb3N0RGVwbG95LFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc1JlZ2lvbmFsRnVuY3Rpb25zPy5uZXh0anNQb3N0RGVwbG95UHJvcHMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Undocumented, unsupported gates for work in progress.
|
|
3
|
+
*
|
|
4
|
+
* These are deliberately env vars rather than construct props: they select
|
|
5
|
+
* between an existing code path and one that is still being built, so they
|
|
6
|
+
* carry no JSII public surface to document, deprecate, or remove. Each one is
|
|
7
|
+
* deleted in the PR that makes its new path the only path.
|
|
8
|
+
*
|
|
9
|
+
* Not part of this package's public API. Do not reference them from README or
|
|
10
|
+
* `docs/`, and do not use them in a real deployment.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Serve `_next/image` from a dedicated image optimization Lambda
|
|
14
|
+
* (`NextjsImageFunction`) instead of the Next.js server function, for the two
|
|
15
|
+
* Functions `NextjsType`s.
|
|
16
|
+
*
|
|
17
|
+
* Off by default because the dedicated Lambda is not the Next.js server, so
|
|
18
|
+
* Next.js middleware does not run for image requests — Next's default matcher
|
|
19
|
+
* (`/:path*`) covers `/_next/image`. The adapter runtime release
|
|
20
|
+
* (`docs/plans/adapter-runtime-release.md`) resolves that by dispatching
|
|
21
|
+
* `_next/image` in-process after middleware, at which point the separate
|
|
22
|
+
* Lambda and this flag both go away.
|
|
23
|
+
*/
|
|
24
|
+
export declare function useDedicatedImageFunction(): boolean;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Undocumented, unsupported gates for work in progress.
|
|
4
|
+
*
|
|
5
|
+
* These are deliberately env vars rather than construct props: they select
|
|
6
|
+
* between an existing code path and one that is still being built, so they
|
|
7
|
+
* carry no JSII public surface to document, deprecate, or remove. Each one is
|
|
8
|
+
* deleted in the PR that makes its new path the only path.
|
|
9
|
+
*
|
|
10
|
+
* Not part of this package's public API. Do not reference them from README or
|
|
11
|
+
* `docs/`, and do not use them in a real deployment.
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.useDedicatedImageFunction = useDedicatedImageFunction;
|
|
15
|
+
/**
|
|
16
|
+
* Serve `_next/image` from a dedicated image optimization Lambda
|
|
17
|
+
* (`NextjsImageFunction`) instead of the Next.js server function, for the two
|
|
18
|
+
* Functions `NextjsType`s.
|
|
19
|
+
*
|
|
20
|
+
* Off by default because the dedicated Lambda is not the Next.js server, so
|
|
21
|
+
* Next.js middleware does not run for image requests — Next's default matcher
|
|
22
|
+
* (`/:path*`) covers `/_next/image`. The adapter runtime release
|
|
23
|
+
* (`docs/plans/adapter-runtime-release.md`) resolves that by dispatching
|
|
24
|
+
* `_next/image` in-process after middleware, at which point the separate
|
|
25
|
+
* Lambda and this flag both go away.
|
|
26
|
+
*/
|
|
27
|
+
function useDedicatedImageFunction() {
|
|
28
|
+
return process.env.CDK_NEXTJS_EXPERIMENTAL_DEDICATED_IMAGE_FUNCTION === "1";
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwZXJpbWVudGFsLWZsYWdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2V4cGVyaW1lbnRhbC1mbGFncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7Ozs7R0FVRzs7QUFjSCw4REFFQztBQWREOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsU0FBZ0IseUJBQXlCO0lBQ3ZDLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxnREFBZ0QsS0FBSyxHQUFHLENBQUM7QUFDOUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVW5kb2N1bWVudGVkLCB1bnN1cHBvcnRlZCBnYXRlcyBmb3Igd29yayBpbiBwcm9ncmVzcy5cbiAqXG4gKiBUaGVzZSBhcmUgZGVsaWJlcmF0ZWx5IGVudiB2YXJzIHJhdGhlciB0aGFuIGNvbnN0cnVjdCBwcm9wczogdGhleSBzZWxlY3RcbiAqIGJldHdlZW4gYW4gZXhpc3RpbmcgY29kZSBwYXRoIGFuZCBvbmUgdGhhdCBpcyBzdGlsbCBiZWluZyBidWlsdCwgc28gdGhleVxuICogY2Fycnkgbm8gSlNJSSBwdWJsaWMgc3VyZmFjZSB0byBkb2N1bWVudCwgZGVwcmVjYXRlLCBvciByZW1vdmUuIEVhY2ggb25lIGlzXG4gKiBkZWxldGVkIGluIHRoZSBQUiB0aGF0IG1ha2VzIGl0cyBuZXcgcGF0aCB0aGUgb25seSBwYXRoLlxuICpcbiAqIE5vdCBwYXJ0IG9mIHRoaXMgcGFja2FnZSdzIHB1YmxpYyBBUEkuIERvIG5vdCByZWZlcmVuY2UgdGhlbSBmcm9tIFJFQURNRSBvclxuICogYGRvY3MvYCwgYW5kIGRvIG5vdCB1c2UgdGhlbSBpbiBhIHJlYWwgZGVwbG95bWVudC5cbiAqL1xuXG4vKipcbiAqIFNlcnZlIGBfbmV4dC9pbWFnZWAgZnJvbSBhIGRlZGljYXRlZCBpbWFnZSBvcHRpbWl6YXRpb24gTGFtYmRhXG4gKiAoYE5leHRqc0ltYWdlRnVuY3Rpb25gKSBpbnN0ZWFkIG9mIHRoZSBOZXh0LmpzIHNlcnZlciBmdW5jdGlvbiwgZm9yIHRoZSB0d29cbiAqIEZ1bmN0aW9ucyBgTmV4dGpzVHlwZWBzLlxuICpcbiAqIE9mZiBieSBkZWZhdWx0IGJlY2F1c2UgdGhlIGRlZGljYXRlZCBMYW1iZGEgaXMgbm90IHRoZSBOZXh0LmpzIHNlcnZlciwgc29cbiAqIE5leHQuanMgbWlkZGxld2FyZSBkb2VzIG5vdCBydW4gZm9yIGltYWdlIHJlcXVlc3RzIOKAlCBOZXh0J3MgZGVmYXVsdCBtYXRjaGVyXG4gKiAoYC86cGF0aCpgKSBjb3ZlcnMgYC9fbmV4dC9pbWFnZWAuIFRoZSBhZGFwdGVyIHJ1bnRpbWUgcmVsZWFzZVxuICogKGBkb2NzL3BsYW5zL2FkYXB0ZXItcnVudGltZS1yZWxlYXNlLm1kYCkgcmVzb2x2ZXMgdGhhdCBieSBkaXNwYXRjaGluZ1xuICogYF9uZXh0L2ltYWdlYCBpbi1wcm9jZXNzIGFmdGVyIG1pZGRsZXdhcmUsIGF0IHdoaWNoIHBvaW50IHRoZSBzZXBhcmF0ZVxuICogTGFtYmRhIGFuZCB0aGlzIGZsYWcgYm90aCBnbyBhd2F5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlRGVkaWNhdGVkSW1hZ2VGdW5jdGlvbigpOiBib29sZWFuIHtcbiAgcmV0dXJuIHByb2Nlc3MuZW52LkNES19ORVhUSlNfRVhQRVJJTUVOVEFMX0RFRElDQVRFRF9JTUFHRV9GVU5DVElPTiA9PT0gXCIxXCI7XG59XG4iXX0=
|
|
@@ -1,2 +1,12 @@
|
|
|
1
1
|
import { Architecture } from "aws-cdk-lib/aws-lambda";
|
|
2
|
+
/**
|
|
3
|
+
* Host architecture normalized to the two Lambda supports, spelled the way
|
|
4
|
+
* Sharp's `@img/sharp-<platform>-<arch>` packages spell it.
|
|
5
|
+
*
|
|
6
|
+
* The Lambda's architecture and the Sharp binaries bundled into its asset must
|
|
7
|
+
* come from this one value: deriving them separately lets them disagree on a
|
|
8
|
+
* host that is neither x64 nor arm (e.g. s390x), which produces a Lambda that
|
|
9
|
+
* fails to load its own bindings.
|
|
10
|
+
*/
|
|
11
|
+
export declare function getNodeArchitecture(): string;
|
|
2
12
|
export declare function getLambdaArchitecture(): Architecture;
|
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getNodeArchitecture = getNodeArchitecture;
|
|
3
4
|
exports.getLambdaArchitecture = getLambdaArchitecture;
|
|
4
5
|
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
6
|
+
/**
|
|
7
|
+
* Host architecture normalized to the two Lambda supports, spelled the way
|
|
8
|
+
* Sharp's `@img/sharp-<platform>-<arch>` packages spell it.
|
|
9
|
+
*
|
|
10
|
+
* The Lambda's architecture and the Sharp binaries bundled into its asset must
|
|
11
|
+
* come from this one value: deriving them separately lets them disagree on a
|
|
12
|
+
* host that is neither x64 nor arm (e.g. s390x), which produces a Lambda that
|
|
13
|
+
* fails to load its own bindings.
|
|
14
|
+
*/
|
|
15
|
+
function getNodeArchitecture() {
|
|
16
|
+
return process.arch.startsWith("arm") ? "arm64" : "x64";
|
|
17
|
+
}
|
|
5
18
|
function getLambdaArchitecture() {
|
|
6
|
-
return
|
|
19
|
+
return getNodeArchitecture() === "arm64"
|
|
20
|
+
? aws_lambda_1.Architecture.ARM_64
|
|
21
|
+
: aws_lambda_1.Architecture.X86_64;
|
|
7
22
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWFyY2hpdGVjdHVyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9nZXQtYXJjaGl0ZWN0dXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBV0Esa0RBRUM7QUFFRCxzREFJQztBQW5CRCx1REFBc0Q7QUFFdEQ7Ozs7Ozs7O0dBUUc7QUFDSCxTQUFnQixtQkFBbUI7SUFDakMsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDMUQsQ0FBQztBQUVELFNBQWdCLHFCQUFxQjtJQUNuQyxPQUFPLG1CQUFtQixFQUFFLEtBQUssT0FBTztRQUN0QyxDQUFDLENBQUMseUJBQVksQ0FBQyxNQUFNO1FBQ3JCLENBQUMsQ0FBQyx5QkFBWSxDQUFDLE1BQU0sQ0FBQztBQUMxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJjaGl0ZWN0dXJlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcblxuLyoqXG4gKiBIb3N0IGFyY2hpdGVjdHVyZSBub3JtYWxpemVkIHRvIHRoZSB0d28gTGFtYmRhIHN1cHBvcnRzLCBzcGVsbGVkIHRoZSB3YXlcbiAqIFNoYXJwJ3MgYEBpbWcvc2hhcnAtPHBsYXRmb3JtPi08YXJjaD5gIHBhY2thZ2VzIHNwZWxsIGl0LlxuICpcbiAqIFRoZSBMYW1iZGEncyBhcmNoaXRlY3R1cmUgYW5kIHRoZSBTaGFycCBiaW5hcmllcyBidW5kbGVkIGludG8gaXRzIGFzc2V0IG11c3RcbiAqIGNvbWUgZnJvbSB0aGlzIG9uZSB2YWx1ZTogZGVyaXZpbmcgdGhlbSBzZXBhcmF0ZWx5IGxldHMgdGhlbSBkaXNhZ3JlZSBvbiBhXG4gKiBob3N0IHRoYXQgaXMgbmVpdGhlciB4NjQgbm9yIGFybSAoZS5nLiBzMzkweCksIHdoaWNoIHByb2R1Y2VzIGEgTGFtYmRhIHRoYXRcbiAqIGZhaWxzIHRvIGxvYWQgaXRzIG93biBiaW5kaW5ncy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5vZGVBcmNoaXRlY3R1cmUoKTogc3RyaW5nIHtcbiAgcmV0dXJuIHByb2Nlc3MuYXJjaC5zdGFydHNXaXRoKFwiYXJtXCIpID8gXCJhcm02NFwiIDogXCJ4NjRcIjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExhbWJkYUFyY2hpdGVjdHVyZSgpOiBBcmNoaXRlY3R1cmUge1xuICByZXR1cm4gZ2V0Tm9kZUFyY2hpdGVjdHVyZSgpID09PSBcImFybTY0XCJcbiAgICA/IEFyY2hpdGVjdHVyZS5BUk1fNjRcbiAgICA6IEFyY2hpdGVjdHVyZS5YODZfNjQ7XG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"publishConfig": {
|
|
82
82
|
"access": "public"
|
|
83
83
|
},
|
|
84
|
-
"version": "0.5.
|
|
84
|
+
"version": "0.5.16",
|
|
85
85
|
"jest": {
|
|
86
86
|
"coverageProvider": "v8",
|
|
87
87
|
"testPathIgnorePatterns": [
|
|
@@ -161,6 +161,8 @@
|
|
|
161
161
|
"bundle:adapter/adapter:watch": "pnpm dlx projen bundle:adapter/adapter:watch",
|
|
162
162
|
"bundle:adapter/cache-handler": "pnpm dlx projen bundle:adapter/cache-handler",
|
|
163
163
|
"bundle:adapter/cache-handler:watch": "pnpm dlx projen bundle:adapter/cache-handler:watch",
|
|
164
|
+
"bundle:image-optimization/handler": "pnpm dlx projen bundle:image-optimization/handler",
|
|
165
|
+
"bundle:image-optimization/handler:watch": "pnpm dlx projen bundle:image-optimization/handler:watch",
|
|
164
166
|
"bundle:lambdas/post-deploy/post-deploy.lambda": "pnpm dlx projen bundle:lambdas/post-deploy/post-deploy.lambda",
|
|
165
167
|
"bundle:lambdas/post-deploy/post-deploy.lambda:watch": "pnpm dlx projen bundle:lambdas/post-deploy/post-deploy.lambda:watch",
|
|
166
168
|
"bundle:nextjs-build/patch-fetch": "pnpm dlx projen bundle:nextjs-build/patch-fetch",
|