@aligent/cdk-prerender-proxy 0.2.1 → 0.2.2
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/README.md +17 -6
- package/index.d.ts +2 -1
- package/index.js +4 -2
- package/lib/handlers/cache-control.ts +21 -0
- package/lib/handlers/tsconfig.json +4 -1
- package/lib/prerender-cf-cache-control-construct.d.ts +10 -0
- package/lib/prerender-cf-cache-control-construct.js +33 -0
- package/lib/prerender-lambda-construct.d.ts +3 -0
- package/lib/prerender-lambda-construct.js +3 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
# Prerender Proxy
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
This library provides two function constructs and a construct that creates two Lambda@Edge functions to use prerender.io as a Cloudfront Origin for site indexers (Google, Bing, etc).
|
|
3
4
|
|
|
4
5
|
The `prerender-check` is a `viewer-request` function that will check if a requester is from a indexer and if it is adds a header so that the second function `prerender` (`origin-request`) will alter the origin to prerender.
|
|
5
6
|
|
|
@@ -7,9 +8,19 @@ The `prerender` will function also make a HEAD request to a nominated backend to
|
|
|
7
8
|
|
|
8
9
|
These functions are intended to be added to an existing Cloudfront
|
|
9
10
|
|
|
11
|
+
## Cache Control
|
|
12
|
+
|
|
13
|
+
The intention of `cache-control` function is to avoid/control CloudFront Caches for `prerender` bot.
|
|
14
|
+
This function to be associated with CloudFront's `origin response`
|
|
15
|
+
|
|
10
16
|
## Props
|
|
11
|
-
|
|
12
|
-
`
|
|
13
|
-
`
|
|
14
|
-
`
|
|
15
|
-
`
|
|
17
|
+
|
|
18
|
+
`redirectBackendOrigin`: The backend origin to make the HEAD request to
|
|
19
|
+
`redirectFrontendHost`: This hostname is used to replace the backend host for any redirects that contain the backend host
|
|
20
|
+
`prerenderToken`: Your prerender.io authentication token
|
|
21
|
+
`prerenderUrl`: The URL of your Prerender service (optional: defaults to prerender.io)
|
|
22
|
+
`pathPrefix`: A prefix path (optional)
|
|
23
|
+
`cacheControlProps.cacheKey`: An optional parameter, which is to set `PRERENDER_CACHE_KEY` to be used in *[prerender CloudFront cache control function]*
|
|
24
|
+
`cacheControlProps.maxAge`: An optional parameter, which is to set `PRERENDER_CACHE_MAX_AGE` to be used in *[prerender CloudFront cache control function]*
|
|
25
|
+
|
|
26
|
+
[prerender CloudFront cache control function]:lib/handlers/cache-control.ts
|
package/index.d.ts
CHANGED
|
@@ -2,4 +2,5 @@ import { PrerenderLambda } from "./lib/prerender-lambda-construct";
|
|
|
2
2
|
import { PrerenderFunction } from "./lib/prerender-construct";
|
|
3
3
|
import { PrerenderCheckFunction } from "./lib/prerender-check-construct";
|
|
4
4
|
import { ErrorResponseFunction } from "./lib/error-response-construct";
|
|
5
|
-
|
|
5
|
+
import { CloudFrontCacheControl } from "./lib/prerender-cf-cache-control-construct";
|
|
6
|
+
export { PrerenderLambda, PrerenderFunction, PrerenderCheckFunction, ErrorResponseFunction, CloudFrontCacheControl };
|
package/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ErrorResponseFunction = exports.PrerenderCheckFunction = exports.PrerenderFunction = exports.PrerenderLambda = void 0;
|
|
3
|
+
exports.CloudFrontCacheControl = exports.ErrorResponseFunction = exports.PrerenderCheckFunction = exports.PrerenderFunction = exports.PrerenderLambda = void 0;
|
|
4
4
|
const prerender_lambda_construct_1 = require("./lib/prerender-lambda-construct");
|
|
5
5
|
Object.defineProperty(exports, "PrerenderLambda", { enumerable: true, get: function () { return prerender_lambda_construct_1.PrerenderLambda; } });
|
|
6
6
|
const prerender_construct_1 = require("./lib/prerender-construct");
|
|
@@ -9,4 +9,6 @@ const prerender_check_construct_1 = require("./lib/prerender-check-construct");
|
|
|
9
9
|
Object.defineProperty(exports, "PrerenderCheckFunction", { enumerable: true, get: function () { return prerender_check_construct_1.PrerenderCheckFunction; } });
|
|
10
10
|
const error_response_construct_1 = require("./lib/error-response-construct");
|
|
11
11
|
Object.defineProperty(exports, "ErrorResponseFunction", { enumerable: true, get: function () { return error_response_construct_1.ErrorResponseFunction; } });
|
|
12
|
-
|
|
12
|
+
const prerender_cf_cache_control_construct_1 = require("./lib/prerender-cf-cache-control-construct");
|
|
13
|
+
Object.defineProperty(exports, "CloudFrontCacheControl", { enumerable: true, get: function () { return prerender_cf_cache_control_construct_1.CloudFrontCacheControl; } });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpRkFBbUU7QUFNMUQsZ0dBTkEsNENBQWUsT0FNQTtBQUx4QixtRUFBOEQ7QUFLcEMsa0dBTGpCLHVDQUFpQixPQUtpQjtBQUozQywrRUFBeUU7QUFJNUIsdUdBSnBDLGtEQUFzQixPQUlvQztBQUhuRSw2RUFBdUU7QUFHRixzR0FINUQsZ0RBQXFCLE9BRzREO0FBRjFGLHFHQUFtRjtBQUVTLHVHQUZuRiw2REFBc0IsT0FFbUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmVyZW5kZXJMYW1iZGEgfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWxhbWJkYS1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IFByZXJlbmRlckZ1bmN0aW9uIH0gZnJvbSBcIi4vbGliL3ByZXJlbmRlci1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IFByZXJlbmRlckNoZWNrRnVuY3Rpb24gfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWNoZWNrLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgRXJyb3JSZXNwb25zZUZ1bmN0aW9uIH0gZnJvbSBcIi4vbGliL2Vycm9yLXJlc3BvbnNlLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgQ2xvdWRGcm9udENhY2hlQ29udHJvbCB9IGZyb20gXCIuL2xpYi9wcmVyZW5kZXItY2YtY2FjaGUtY29udHJvbC1jb25zdHJ1Y3RcIlxuXG5leHBvcnQgeyBQcmVyZW5kZXJMYW1iZGEsIFByZXJlbmRlckZ1bmN0aW9uLCBQcmVyZW5kZXJDaGVja0Z1bmN0aW9uLCBFcnJvclJlc3BvbnNlRnVuY3Rpb24sIENsb3VkRnJvbnRDYWNoZUNvbnRyb2wgfTtcbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import 'source-map-support/register';
|
|
2
|
+
import { CloudFrontResponseEvent, CloudFrontResponse } from 'aws-lambda';
|
|
3
|
+
/*
|
|
4
|
+
Prerender cache control function
|
|
5
|
+
Consider associate this function as *origin response* function
|
|
6
|
+
*/
|
|
7
|
+
export const handler = async (event: CloudFrontResponseEvent): Promise<CloudFrontResponse> => {
|
|
8
|
+
const cacheKey = process.env.PRERENDER_CACHE_KEY || 'x-prerender-requestid';
|
|
9
|
+
const cacheMaxAge = process.env.PRERENDER_CACHE_MAX_AGE || '0';
|
|
10
|
+
let response = event.Records[0].cf.response;
|
|
11
|
+
|
|
12
|
+
if (response.headers[`${cacheKey}`]) {
|
|
13
|
+
response.headers['Cache-Control'] = [
|
|
14
|
+
{
|
|
15
|
+
key: 'Cache-Control',
|
|
16
|
+
value: `max-age=${cacheMaxAge}`
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
return response;
|
|
21
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Construct } from "@aws-cdk/core";
|
|
2
|
+
import { EdgeFunction } from "@aws-cdk/aws-cloudfront/lib/experimental";
|
|
3
|
+
export interface CloudFrontCacheControlOptions {
|
|
4
|
+
cacheKey?: string;
|
|
5
|
+
maxAge?: Number;
|
|
6
|
+
}
|
|
7
|
+
export declare class CloudFrontCacheControl extends Construct {
|
|
8
|
+
readonly edgeFunction: EdgeFunction;
|
|
9
|
+
constructor(scope: Construct, id: string, options?: CloudFrontCacheControlOptions);
|
|
10
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CloudFrontCacheControl = void 0;
|
|
4
|
+
const core_1 = require("@aws-cdk/core");
|
|
5
|
+
const bundling_1 = require("@aws-cdk/aws-lambda-nodejs/lib/bundling");
|
|
6
|
+
const aws_lambda_1 = require("@aws-cdk/aws-lambda");
|
|
7
|
+
const aws_cloudfront_1 = require("@aws-cdk/aws-cloudfront");
|
|
8
|
+
class CloudFrontCacheControl extends core_1.Construct {
|
|
9
|
+
constructor(scope, id, options) {
|
|
10
|
+
var _a, _b;
|
|
11
|
+
super(scope, id);
|
|
12
|
+
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this, 'PrerenderCloudFrontCacheControl', {
|
|
13
|
+
code: bundling_1.Bundling.bundle({
|
|
14
|
+
entry: `${__dirname}/handlers/cache-control.ts`,
|
|
15
|
+
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
16
|
+
sourceMap: true,
|
|
17
|
+
projectRoot: `${__dirname}/handlers/`,
|
|
18
|
+
depsLockFilePath: `${__dirname}/handlers/package-lock.json`,
|
|
19
|
+
// Define options replace values at build time so we can use environment variables to test locally
|
|
20
|
+
// and replace during build/deploy with static values. This gets around the lambda@edge limitation
|
|
21
|
+
// of no environment variables at runtime.
|
|
22
|
+
define: {
|
|
23
|
+
'process.env.PRERENDER_CACHE_KEY': JSON.stringify((_a = options === null || options === void 0 ? void 0 : options.cacheKey) !== null && _a !== void 0 ? _a : 'x-prerender-requestid'),
|
|
24
|
+
'process.env.PRERENDER_CACHE_MAX_AGE': JSON.stringify((_b = String(options === null || options === void 0 ? void 0 : options.maxAge)) !== null && _b !== void 0 ? _b : '0'),
|
|
25
|
+
}
|
|
26
|
+
}),
|
|
27
|
+
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
28
|
+
handler: 'index.handler',
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.CloudFrontCacheControl = CloudFrontCacheControl;
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLWNmLWNhY2hlLWNvbnRyb2wtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJlcmVuZGVyLWNmLWNhY2hlLWNvbnRyb2wtY29uc3RydWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdDQUEwQztBQUMxQyxzRUFBbUU7QUFDbkUsb0RBQThDO0FBQzlDLDREQUF1RDtBQVF2RCxNQUFhLHNCQUF1QixTQUFRLGdCQUFTO0lBR2pELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsT0FBdUM7O1FBQzdFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLDZCQUFZLENBQUMsWUFBWSxDQUM3QyxJQUFJLEVBQ0osaUNBQWlDLEVBQ2pDO1lBQ0UsSUFBSSxFQUFFLG1CQUFRLENBQUMsTUFBTSxDQUFDO2dCQUNwQixLQUFLLEVBQUUsR0FBRyxTQUFTLDRCQUE0QjtnQkFDL0MsT0FBTyxFQUFFLG9CQUFPLENBQUMsV0FBVztnQkFDNUIsU0FBUyxFQUFFLElBQUk7Z0JBQ2YsV0FBVyxFQUFFLEdBQUcsU0FBUyxZQUFZO2dCQUNyQyxnQkFBZ0IsRUFBRSxHQUFHLFNBQVMsNkJBQTZCO2dCQUMzRCxrR0FBa0c7Z0JBQ2xHLGtHQUFrRztnQkFDbEcsMENBQTBDO2dCQUMxQyxNQUFNLEVBQUU7b0JBQ04saUNBQWlDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxRQUFRLG1DQUFJLHVCQUF1QixDQUFDO29CQUMvRixxQ0FBcUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQUEsTUFBTSxDQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxNQUFNLENBQUMsbUNBQUksR0FBRyxDQUFDO2lCQUN0RjthQUNGLENBQUM7WUFDRixPQUFPLEVBQUUsb0JBQU8sQ0FBQyxXQUFXO1lBQzVCLE9BQU8sRUFBRSxlQUFlO1NBQ3pCLENBQ0osQ0FBQztJQUNOLENBQUM7Q0FDSjtBQTdCRCx3REE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiQGF3cy1jZGsvY29yZVwiO1xuaW1wb3J0IHsgQnVuZGxpbmcgfSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhLW5vZGVqcy9saWIvYnVuZGxpbmcnO1xuaW1wb3J0IHsgUnVudGltZSB9IGZyb20gJ0Bhd3MtY2RrL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgZXhwZXJpbWVudGFsIH0gZnJvbSAnQGF3cy1jZGsvYXdzLWNsb3VkZnJvbnQnO1xuaW1wb3J0IHsgRWRnZUZ1bmN0aW9uIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1jbG91ZGZyb250L2xpYi9leHBlcmltZW50YWxcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDbG91ZEZyb250Q2FjaGVDb250cm9sT3B0aW9ucyB7XG4gICAgY2FjaGVLZXk/OiBzdHJpbmcsXG4gICAgbWF4QWdlPzogTnVtYmVyLFxufVxuXG5leHBvcnQgY2xhc3MgQ2xvdWRGcm9udENhY2hlQ29udHJvbCBleHRlbmRzIENvbnN0cnVjdCB7XG4gICAgcmVhZG9ubHkgZWRnZUZ1bmN0aW9uOiBFZGdlRnVuY3Rpb247XG5cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBvcHRpb25zPzogQ2xvdWRGcm9udENhY2hlQ29udHJvbE9wdGlvbnMpIHtcbiAgICAgICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgICAgICB0aGlzLmVkZ2VGdW5jdGlvbiA9IG5ldyBleHBlcmltZW50YWwuRWRnZUZ1bmN0aW9uKFxuICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICAgICdQcmVyZW5kZXJDbG91ZEZyb250Q2FjaGVDb250cm9sJyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY29kZTogQnVuZGxpbmcuYnVuZGxlKHtcbiAgICAgICAgICAgICAgICBlbnRyeTogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9jYWNoZS1jb250cm9sLnRzYCxcbiAgICAgICAgICAgICAgICBydW50aW1lOiBSdW50aW1lLk5PREVKU18xNF9YLFxuICAgICAgICAgICAgICAgIHNvdXJjZU1hcDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBwcm9qZWN0Um9vdDogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9gLFxuICAgICAgICAgICAgICAgIGRlcHNMb2NrRmlsZVBhdGg6IGAke19fZGlybmFtZX0vaGFuZGxlcnMvcGFja2FnZS1sb2NrLmpzb25gLFxuICAgICAgICAgICAgICAgIC8vIERlZmluZSBvcHRpb25zIHJlcGxhY2UgdmFsdWVzIGF0IGJ1aWxkIHRpbWUgc28gd2UgY2FuIHVzZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gdGVzdCBsb2NhbGx5XG4gICAgICAgICAgICAgICAgLy8gYW5kIHJlcGxhY2UgZHVyaW5nIGJ1aWxkL2RlcGxveSB3aXRoIHN0YXRpYyB2YWx1ZXMuIFRoaXMgZ2V0cyBhcm91bmQgdGhlIGxhbWJkYUBlZGdlIGxpbWl0YXRpb25cbiAgICAgICAgICAgICAgICAvLyBvZiBubyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYXQgcnVudGltZS5cbiAgICAgICAgICAgICAgICBkZWZpbmU6IHtcbiAgICAgICAgICAgICAgICAgICdwcm9jZXNzLmVudi5QUkVSRU5ERVJfQ0FDSEVfS0VZJzogSlNPTi5zdHJpbmdpZnkob3B0aW9ucz8uY2FjaGVLZXkgPz8gJ3gtcHJlcmVuZGVyLXJlcXVlc3RpZCcpLFxuICAgICAgICAgICAgICAgICAgJ3Byb2Nlc3MuZW52LlBSRVJFTkRFUl9DQUNIRV9NQVhfQUdFJzogSlNPTi5zdHJpbmdpZnkoU3RyaW5nKG9wdGlvbnM/Lm1heEFnZSkgPz8gJzAnKSxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBydW50aW1lOiBSdW50aW1lLk5PREVKU18xNF9YLFxuICAgICAgICAgICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxufVxuIl19
|
|
@@ -2,13 +2,16 @@ import { Construct } from '@aws-cdk/core';
|
|
|
2
2
|
import { PrerenderFunction } from './prerender-construct';
|
|
3
3
|
import { PrerenderCheckFunction } from './prerender-check-construct';
|
|
4
4
|
import { ErrorResponseFunction } from './error-response-construct';
|
|
5
|
+
import { CloudFrontCacheControl, CloudFrontCacheControlOptions } from "./prerender-cf-cache-control-construct";
|
|
5
6
|
export interface PrerenderLambdaProps {
|
|
6
7
|
prerenderToken: string;
|
|
7
8
|
exclusionExpression?: string;
|
|
9
|
+
cacheControlProps?: CloudFrontCacheControlOptions;
|
|
8
10
|
}
|
|
9
11
|
export declare class PrerenderLambda extends Construct {
|
|
10
12
|
readonly prerenderCheckFunction: PrerenderCheckFunction;
|
|
11
13
|
readonly prerenderFunction: PrerenderFunction;
|
|
12
14
|
readonly errorResponseFunction: ErrorResponseFunction;
|
|
15
|
+
readonly cacheControlFunction: CloudFrontCacheControl;
|
|
13
16
|
constructor(scope: Construct, id: string, props: PrerenderLambdaProps);
|
|
14
17
|
}
|
|
@@ -5,13 +5,15 @@ const core_1 = require("@aws-cdk/core");
|
|
|
5
5
|
const prerender_construct_1 = require("./prerender-construct");
|
|
6
6
|
const prerender_check_construct_1 = require("./prerender-check-construct");
|
|
7
7
|
const error_response_construct_1 = require("./error-response-construct");
|
|
8
|
+
const prerender_cf_cache_control_construct_1 = require("./prerender-cf-cache-control-construct");
|
|
8
9
|
class PrerenderLambda extends core_1.Construct {
|
|
9
10
|
constructor(scope, id, props) {
|
|
10
11
|
super(scope, id);
|
|
11
12
|
this.prerenderCheckFunction = new prerender_check_construct_1.PrerenderCheckFunction(this, 'PrerenderViewerRequest');
|
|
12
13
|
this.prerenderFunction = new prerender_construct_1.PrerenderFunction(this, 'PrerenderOriginRequest', props);
|
|
13
14
|
this.errorResponseFunction = new error_response_construct_1.ErrorResponseFunction(this, 'ErrorResponse', {});
|
|
15
|
+
this.cacheControlFunction = new prerender_cf_cache_control_construct_1.CloudFrontCacheControl(this, 'PrerenderCloudFrontCacheControl', props.cacheControlProps);
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
18
|
exports.PrerenderLambda = PrerenderLambda;
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLWxhbWJkYS1jb25zdHJ1Y3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwcmVyZW5kZXItbGFtYmRhLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx3Q0FBcUQ7QUFDckQsK0RBQTBEO0FBQzFELDJFQUFxRTtBQUNyRSx5RUFBbUU7QUFDbkUsaUdBQStHO0FBUS9HLE1BQWEsZUFBZ0IsU0FBUSxnQkFBUztJQU81QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTJCO1FBQ25FLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksa0RBQXNCLENBQUMsSUFBSSxFQUFFLHdCQUF3QixDQUFDLENBQUM7UUFFekYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksdUNBQWlCLENBQUMsSUFBSSxFQUFFLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXRGLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLGdEQUFxQixDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFbEYsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksNkRBQXNCLENBQUMsSUFBSSxFQUFFLGlDQUFpQyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO0lBQzFILENBQUM7Q0FDRjtBQWxCRCwwQ0FrQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QsIENmbk91dHB1dCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHsgUHJlcmVuZGVyRnVuY3Rpb24gfSBmcm9tICcuL3ByZXJlbmRlci1jb25zdHJ1Y3QnO1xuaW1wb3J0IHsgUHJlcmVuZGVyQ2hlY2tGdW5jdGlvbiB9IGZyb20gJy4vcHJlcmVuZGVyLWNoZWNrLWNvbnN0cnVjdCc7XG5pbXBvcnQgeyBFcnJvclJlc3BvbnNlRnVuY3Rpb24gfSBmcm9tICcuL2Vycm9yLXJlc3BvbnNlLWNvbnN0cnVjdCc7XG5pbXBvcnQgeyBDbG91ZEZyb250Q2FjaGVDb250cm9sLCBDbG91ZEZyb250Q2FjaGVDb250cm9sT3B0aW9ucyB9IGZyb20gXCIuL3ByZXJlbmRlci1jZi1jYWNoZS1jb250cm9sLWNvbnN0cnVjdFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByZXJlbmRlckxhbWJkYVByb3BzIHtcbiAgICBwcmVyZW5kZXJUb2tlbjogc3RyaW5nXG4gICAgZXhjbHVzaW9uRXhwcmVzc2lvbj86IHN0cmluZ1xuICAgIGNhY2hlQ29udHJvbFByb3BzPzogQ2xvdWRGcm9udENhY2hlQ29udHJvbE9wdGlvbnNcbn1cblxuZXhwb3J0IGNsYXNzIFByZXJlbmRlckxhbWJkYSBleHRlbmRzIENvbnN0cnVjdCB7XG5cbiAgcmVhZG9ubHkgIHByZXJlbmRlckNoZWNrRnVuY3Rpb246UHJlcmVuZGVyQ2hlY2tGdW5jdGlvblxuICByZWFkb25seSAgcHJlcmVuZGVyRnVuY3Rpb246UHJlcmVuZGVyRnVuY3Rpb25cbiAgcmVhZG9ubHkgIGVycm9yUmVzcG9uc2VGdW5jdGlvbjpFcnJvclJlc3BvbnNlRnVuY3Rpb25cbiAgcmVhZG9ubHkgIGNhY2hlQ29udHJvbEZ1bmN0aW9uOkNsb3VkRnJvbnRDYWNoZUNvbnRyb2xcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogUHJlcmVuZGVyTGFtYmRhUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5wcmVyZW5kZXJDaGVja0Z1bmN0aW9uID0gbmV3IFByZXJlbmRlckNoZWNrRnVuY3Rpb24odGhpcywgJ1ByZXJlbmRlclZpZXdlclJlcXVlc3QnKTtcbiAgIFxuICAgIHRoaXMucHJlcmVuZGVyRnVuY3Rpb24gPSBuZXcgUHJlcmVuZGVyRnVuY3Rpb24odGhpcywgJ1ByZXJlbmRlck9yaWdpblJlcXVlc3QnLCBwcm9wcyk7XG4gICAgXG4gICAgdGhpcy5lcnJvclJlc3BvbnNlRnVuY3Rpb24gPSBuZXcgRXJyb3JSZXNwb25zZUZ1bmN0aW9uKHRoaXMsICdFcnJvclJlc3BvbnNlJywge30pO1xuXG4gICAgdGhpcy5jYWNoZUNvbnRyb2xGdW5jdGlvbiA9IG5ldyBDbG91ZEZyb250Q2FjaGVDb250cm9sKHRoaXMsICdQcmVyZW5kZXJDbG91ZEZyb250Q2FjaGVDb250cm9sJywgcHJvcHMuY2FjaGVDb250cm9sUHJvcHMpXG4gIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aligent/cdk-prerender-proxy",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "A Cloudfront Lambda@Edge stack for integrating with prerender.io",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@aws-cdk/assert": "^1.111.0",
|
|
21
21
|
"@types/jest": "^26.0.21",
|
|
22
|
-
"@types/node": "10.17.
|
|
22
|
+
"@types/node": "^10.17.60",
|
|
23
23
|
"jest": "^26.4.2",
|
|
24
24
|
"ts-jest": "^26.5.4",
|
|
25
25
|
"ts-node": "^10.0.0",
|