@aligent/cdk-prerender-proxy 0.2.5-experimental5 → 0.2.6
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/index.d.ts +1 -1
- package/index.js +1 -1
- package/lib/error-response-construct.js +5 -5
- package/lib/handlers/cache-control.ts +22 -3
- package/lib/handlers/error-response.ts +61 -3
- package/lib/handlers/node_modules/.package-lock.json +55 -0
- package/lib/handlers/node_modules/@types/aws-lambda/LICENSE +21 -0
- package/lib/handlers/node_modules/@types/aws-lambda/README.md +16 -0
- package/lib/handlers/node_modules/@types/aws-lambda/common/api-gateway.d.ts +79 -0
- package/lib/handlers/node_modules/@types/aws-lambda/common/cloudfront.d.ts +79 -0
- package/lib/handlers/node_modules/@types/aws-lambda/handler.d.ts +171 -0
- package/lib/handlers/node_modules/@types/aws-lambda/index.d.ts +85 -0
- package/lib/handlers/node_modules/@types/aws-lambda/package.json +210 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/alb.d.ts +48 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/api-gateway-authorizer.d.ts +174 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/api-gateway-proxy.d.ts +187 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/appsync-resolver.d.ts +51 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cloudformation-custom-resource.d.ts +68 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cloudfront-request.d.ts +20 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cloudfront-response.d.ts +21 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cloudwatch-events.d.ts +8 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cloudwatch-logs.d.ts +37 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/codebuild-cloudwatch-state.d.ts +104 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/codepipeline-cloudwatch-action.d.ts +31 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/codepipeline-cloudwatch-pipeline.d.ts +32 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/codepipeline-cloudwatch-stage.d.ts +23 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/codepipeline-cloudwatch.d.ts +11 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/codepipeline.d.ts +55 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/_common.d.ts +41 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/create-auth-challenge.d.ts +22 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/custom-email-sender.d.ts +86 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/custom-message.d.ts +44 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/define-auth-challenge.d.ts +21 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/index.d.ts +119 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/post-authentication.d.ts +15 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/post-confirmation.d.ts +22 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/pre-authentication.d.ts +15 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/pre-signup.d.ts +31 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/pre-token-generation.d.ts +45 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/user-migration.d.ts +39 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/cognito-user-pool-trigger/verify-auth-challenge-response.d.ts +20 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/connect-contact-flow.d.ts +65 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/dynamodb-stream.d.ts +45 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/eventbridge.d.ts +18 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/iot.d.ts +28 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/kinesis-firehose-transformation.d.ts +45 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/kinesis-stream.d.ts +28 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/lex.d.ts +116 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/msk.d.ts +21 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/s3-batch.d.ts +41 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/s3.d.ts +60 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/ses.d.ts +103 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/sns.d.ts +38 -0
- package/lib/handlers/node_modules/@types/aws-lambda/trigger/sqs.d.ts +46 -0
- package/lib/handlers/node_modules/@types/node/LICENSE +21 -0
- package/lib/handlers/node_modules/@types/node/README.md +16 -0
- package/lib/handlers/node_modules/@types/node/assert/strict.d.ts +4 -0
- package/lib/handlers/node_modules/@types/node/assert.d.ts +124 -0
- package/lib/handlers/node_modules/@types/node/async_hooks.d.ts +226 -0
- package/lib/handlers/node_modules/@types/node/base.d.ts +19 -0
- package/lib/handlers/node_modules/@types/node/buffer.d.ts +84 -0
- package/lib/handlers/node_modules/@types/node/child_process.d.ts +526 -0
- package/lib/handlers/node_modules/@types/node/cluster.d.ts +262 -0
- package/lib/handlers/node_modules/@types/node/console.d.ts +133 -0
- package/lib/handlers/node_modules/@types/node/constants.d.ts +13 -0
- package/lib/handlers/node_modules/@types/node/crypto.d.ts +1580 -0
- package/lib/handlers/node_modules/@types/node/dgram.d.ts +141 -0
- package/lib/handlers/node_modules/@types/node/diagnostic_channel.d.ts +34 -0
- package/lib/handlers/node_modules/@types/node/dns/promises.d.ts +97 -0
- package/lib/handlers/node_modules/@types/node/dns.d.ts +322 -0
- package/lib/handlers/node_modules/@types/node/domain.d.ts +24 -0
- package/lib/handlers/node_modules/@types/node/events.d.ts +93 -0
- package/lib/handlers/node_modules/@types/node/fs/promises.d.ts +592 -0
- package/lib/handlers/node_modules/@types/node/fs.d.ts +2239 -0
- package/lib/handlers/node_modules/@types/node/globals.d.ts +655 -0
- package/lib/handlers/node_modules/@types/node/globals.global.d.ts +1 -0
- package/lib/handlers/node_modules/@types/node/http.d.ts +434 -0
- package/lib/handlers/node_modules/@types/node/http2.d.ts +976 -0
- package/lib/handlers/node_modules/@types/node/https.d.ts +36 -0
- package/lib/handlers/node_modules/@types/node/index.d.ts +58 -0
- package/lib/handlers/node_modules/@types/node/inspector.d.ts +3041 -0
- package/lib/handlers/node_modules/@types/node/module.d.ts +52 -0
- package/lib/handlers/node_modules/@types/node/net.d.ts +326 -0
- package/lib/handlers/node_modules/@types/node/os.d.ts +239 -0
- package/lib/handlers/node_modules/@types/node/package.json +232 -0
- package/lib/handlers/node_modules/@types/node/path.d.ts +163 -0
- package/lib/handlers/node_modules/@types/node/perf_hooks.d.ts +310 -0
- package/lib/handlers/node_modules/@types/node/process.d.ts +461 -0
- package/lib/handlers/node_modules/@types/node/punycode.d.ts +75 -0
- package/lib/handlers/node_modules/@types/node/querystring.d.ts +28 -0
- package/lib/handlers/node_modules/@types/node/readline.d.ts +192 -0
- package/lib/handlers/node_modules/@types/node/repl.d.ts +395 -0
- package/lib/handlers/node_modules/@types/node/stream/promises.d.ts +67 -0
- package/lib/handlers/node_modules/@types/node/stream.d.ts +471 -0
- package/lib/handlers/node_modules/@types/node/string_decoder.d.ts +7 -0
- package/lib/handlers/node_modules/@types/node/timers/promises.d.ts +21 -0
- package/lib/handlers/node_modules/@types/node/timers.d.ts +27 -0
- package/lib/handlers/node_modules/@types/node/tls.d.ts +793 -0
- package/lib/handlers/node_modules/@types/node/trace_events.d.ts +61 -0
- package/lib/handlers/node_modules/@types/node/ts3.6/assert.d.ts +98 -0
- package/lib/handlers/node_modules/@types/node/ts3.6/base.d.ts +68 -0
- package/lib/handlers/node_modules/@types/node/ts3.6/index.d.ts +7 -0
- package/lib/handlers/node_modules/@types/node/tty.d.ts +66 -0
- package/lib/handlers/node_modules/@types/node/url.d.ts +116 -0
- package/lib/handlers/node_modules/@types/node/util/types.d.ts +53 -0
- package/lib/handlers/node_modules/@types/node/util.d.ts +156 -0
- package/lib/handlers/node_modules/@types/node/v8.d.ts +198 -0
- package/lib/handlers/node_modules/@types/node/vm.d.ts +152 -0
- package/lib/handlers/node_modules/@types/node/wasi.d.ts +86 -0
- package/lib/handlers/node_modules/@types/node/worker_threads.d.ts +282 -0
- package/lib/handlers/node_modules/@types/node/zlib.d.ts +361 -0
- package/lib/handlers/node_modules/axios/CHANGELOG.md +685 -0
- package/lib/handlers/node_modules/axios/LICENSE +19 -0
- package/lib/handlers/node_modules/axios/README.md +800 -0
- package/lib/handlers/node_modules/axios/UPGRADE_GUIDE.md +162 -0
- package/lib/handlers/node_modules/axios/dist/axios.js +1756 -0
- package/lib/handlers/node_modules/axios/dist/axios.map +1 -0
- package/lib/handlers/node_modules/axios/dist/axios.min.js +3 -0
- package/lib/handlers/node_modules/axios/dist/axios.min.map +1 -0
- package/lib/handlers/node_modules/axios/index.d.ts +161 -0
- package/lib/handlers/node_modules/axios/index.js +1 -0
- package/lib/handlers/node_modules/axios/lib/adapters/README.md +37 -0
- package/lib/handlers/node_modules/axios/lib/adapters/http.js +303 -0
- package/lib/handlers/node_modules/axios/lib/adapters/xhr.js +179 -0
- package/lib/handlers/node_modules/axios/lib/axios.js +56 -0
- package/lib/handlers/node_modules/axios/lib/cancel/Cancel.js +19 -0
- package/lib/handlers/node_modules/axios/lib/cancel/CancelToken.js +57 -0
- package/lib/handlers/node_modules/axios/lib/cancel/isCancel.js +5 -0
- package/lib/handlers/node_modules/axios/lib/core/Axios.js +95 -0
- package/lib/handlers/node_modules/axios/lib/core/InterceptorManager.js +52 -0
- package/lib/handlers/node_modules/axios/lib/core/README.md +7 -0
- package/lib/handlers/node_modules/axios/lib/core/buildFullPath.js +20 -0
- package/lib/handlers/node_modules/axios/lib/core/createError.js +18 -0
- package/lib/handlers/node_modules/axios/lib/core/dispatchRequest.js +79 -0
- package/lib/handlers/node_modules/axios/lib/core/enhanceError.js +42 -0
- package/lib/handlers/node_modules/axios/lib/core/mergeConfig.js +87 -0
- package/lib/handlers/node_modules/axios/lib/core/settle.js +25 -0
- package/lib/handlers/node_modules/axios/lib/core/transformData.js +20 -0
- package/lib/handlers/node_modules/axios/lib/defaults.js +98 -0
- package/lib/handlers/node_modules/axios/lib/helpers/README.md +7 -0
- package/lib/handlers/node_modules/axios/lib/helpers/bind.js +11 -0
- package/lib/handlers/node_modules/axios/lib/helpers/buildURL.js +70 -0
- package/lib/handlers/node_modules/axios/lib/helpers/combineURLs.js +14 -0
- package/lib/handlers/node_modules/axios/lib/helpers/cookies.js +53 -0
- package/lib/handlers/node_modules/axios/lib/helpers/deprecatedMethod.js +24 -0
- package/lib/handlers/node_modules/axios/lib/helpers/isAbsoluteURL.js +14 -0
- package/lib/handlers/node_modules/axios/lib/helpers/isAxiosError.js +11 -0
- package/lib/handlers/node_modules/axios/lib/helpers/isURLSameOrigin.js +68 -0
- package/lib/handlers/node_modules/axios/lib/helpers/normalizeHeaderName.js +12 -0
- package/lib/handlers/node_modules/axios/lib/helpers/parseHeaders.js +53 -0
- package/lib/handlers/node_modules/axios/lib/helpers/spread.js +27 -0
- package/lib/handlers/node_modules/axios/lib/utils.js +351 -0
- package/lib/handlers/node_modules/axios/package.json +86 -0
- package/lib/handlers/node_modules/buffer-from/LICENSE +21 -0
- package/lib/handlers/node_modules/buffer-from/index.js +69 -0
- package/lib/handlers/node_modules/buffer-from/package.json +19 -0
- package/lib/handlers/node_modules/buffer-from/readme.md +69 -0
- package/lib/handlers/node_modules/follow-redirects/LICENSE +18 -0
- package/lib/handlers/node_modules/follow-redirects/README.md +148 -0
- package/lib/handlers/node_modules/follow-redirects/debug.js +14 -0
- package/lib/handlers/node_modules/follow-redirects/http.js +1 -0
- package/lib/handlers/node_modules/follow-redirects/https.js +1 -0
- package/lib/handlers/node_modules/follow-redirects/index.js +531 -0
- package/lib/handlers/node_modules/follow-redirects/package.json +59 -0
- package/lib/handlers/node_modules/source-map/CHANGELOG.md +301 -0
- package/lib/handlers/node_modules/source-map/LICENSE +28 -0
- package/lib/handlers/node_modules/source-map/README.md +742 -0
- package/lib/handlers/node_modules/source-map/dist/source-map.debug.js +3234 -0
- package/lib/handlers/node_modules/source-map/dist/source-map.js +3233 -0
- package/lib/handlers/node_modules/source-map/dist/source-map.min.js +2 -0
- package/lib/handlers/node_modules/source-map/dist/source-map.min.js.map +1 -0
- package/lib/handlers/node_modules/source-map/lib/array-set.js +121 -0
- package/lib/handlers/node_modules/source-map/lib/base64-vlq.js +140 -0
- package/lib/handlers/node_modules/source-map/lib/base64.js +67 -0
- package/lib/handlers/node_modules/source-map/lib/binary-search.js +111 -0
- package/lib/handlers/node_modules/source-map/lib/mapping-list.js +79 -0
- package/lib/handlers/node_modules/source-map/lib/quick-sort.js +114 -0
- package/lib/handlers/node_modules/source-map/lib/source-map-consumer.js +1145 -0
- package/lib/handlers/node_modules/source-map/lib/source-map-generator.js +425 -0
- package/lib/handlers/node_modules/source-map/lib/source-node.js +413 -0
- package/lib/handlers/node_modules/source-map/lib/util.js +488 -0
- package/lib/handlers/node_modules/source-map/package.json +73 -0
- package/lib/handlers/node_modules/source-map/source-map.d.ts +98 -0
- package/lib/handlers/node_modules/source-map/source-map.js +8 -0
- package/lib/handlers/node_modules/source-map-support/LICENSE.md +21 -0
- package/lib/handlers/node_modules/source-map-support/README.md +284 -0
- package/lib/handlers/node_modules/source-map-support/browser-source-map-support.js +114 -0
- package/lib/handlers/node_modules/source-map-support/package.json +31 -0
- package/lib/handlers/node_modules/source-map-support/register.js +1 -0
- package/lib/handlers/node_modules/source-map-support/source-map-support.js +604 -0
- package/lib/handlers/package-lock.json +40 -1257
- package/lib/handlers/package.json +3 -7
- package/lib/handlers/prerender-check.ts +32 -3
- package/lib/handlers/prerender.ts +50 -3
- package/lib/handlers/tsconfig.json +3 -2
- package/lib/prerender-cf-cache-control-construct.d.ts +1 -1
- package/lib/prerender-cf-cache-control-construct.js +6 -6
- package/lib/prerender-check-construct.js +4 -4
- package/lib/prerender-construct.js +7 -7
- package/lib/prerender-lambda-construct.d.ts +4 -4
- package/lib/prerender-lambda-construct.js +5 -5
- package/package.json +4 -6
- package/tsconfig.json +1 -1
|
@@ -5,13 +5,9 @@
|
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "ISC",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@aws-cdk/aws-lambda": "^1.180.0",
|
|
9
|
-
"@middy/core": "^3.6.2",
|
|
10
8
|
"@types/aws-lambda": "^8.10.77",
|
|
11
|
-
"@
|
|
9
|
+
"@types/node": "^15.12.4",
|
|
10
|
+
"axios": "^0.21.1",
|
|
12
11
|
"source-map-support": "^0.5.19"
|
|
13
|
-
},
|
|
14
|
-
"devDependencies": {
|
|
15
|
-
"@types/node": "^18.11.9"
|
|
16
12
|
}
|
|
17
|
-
}
|
|
13
|
+
}
|
|
@@ -1,4 +1,33 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import "source-map-support/register";
|
|
2
|
+
import { CloudFrontRequest, CloudFrontRequestEvent } from "aws-lambda";
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
const IS_BOT =
|
|
5
|
+
/googlebot|Google-InspectionTool|chrome-lighthouse|lighthouse|adsbot\-google|Feedfetcher\-Google|bingbot|yandex|baiduspider|Facebot|facebookexternalhit|twitterbot|rogerbot|linkedinbot|embedly|quora link preview|showyoubot|outbrain|pinterest|slackbot|vkShare|W3C_Validator/i;
|
|
6
|
+
const IS_FILE =
|
|
7
|
+
/\.(js|css|xml|less|png|jpg|jpeg|gif|pdf|doc|txt|ico|rss|zip|mp3|rar|exe|wmv|doc|avi|ppt|mpg|mpeg|tif|wav|mov|psd|ai|xls|mp4|m4a|swf|dat|dmg|iso|flv|m4v|torrent|ttf|woff|svg|eot)$/i;
|
|
8
|
+
|
|
9
|
+
export const handler = async (
|
|
10
|
+
event: CloudFrontRequestEvent
|
|
11
|
+
): Promise<CloudFrontRequest> => {
|
|
12
|
+
const request = event.Records[0].cf.request;
|
|
13
|
+
|
|
14
|
+
// If the request is from a bot, is not a file and is not from prerender
|
|
15
|
+
// then set the x-request-prerender header so the origin-request lambda function
|
|
16
|
+
// alters the origin to prerender.io
|
|
17
|
+
if (IS_BOT.test(request.headers["user-agent"][0].value)) {
|
|
18
|
+
if (!IS_FILE.test(request.uri) && !request.headers["x-prerender"]) {
|
|
19
|
+
request.headers["x-request-prerender"] = [
|
|
20
|
+
{
|
|
21
|
+
key: "x-request-prerender",
|
|
22
|
+
value: "true",
|
|
23
|
+
},
|
|
24
|
+
];
|
|
25
|
+
|
|
26
|
+
request.headers["x-prerender-host"] = [
|
|
27
|
+
{ key: "X-Prerender-Host", value: request.headers.host[0].value },
|
|
28
|
+
];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return request;
|
|
33
|
+
};
|
|
@@ -1,4 +1,51 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import "source-map-support/register";
|
|
2
|
+
import {
|
|
3
|
+
CloudFrontRequest,
|
|
4
|
+
CloudFrontRequestEvent,
|
|
5
|
+
CloudFrontResponse,
|
|
6
|
+
} from "@aws-cdk/aws-lambda";
|
|
3
7
|
|
|
4
|
-
|
|
8
|
+
const PRERENDER_TOKEN = process.env.PRERENDER_TOKEN;
|
|
9
|
+
const PATH_PREFIX = process.env.PATH_PREFIX;
|
|
10
|
+
const PRERENDER_URL = process.env.PRERENDER_URL;
|
|
11
|
+
|
|
12
|
+
export const handler = async (
|
|
13
|
+
event: CloudFrontRequestEvent
|
|
14
|
+
): Promise<CloudFrontResponse | CloudFrontRequest> => {
|
|
15
|
+
const request = event.Records[0].cf.request;
|
|
16
|
+
|
|
17
|
+
// viewer-request function will determine whether we prerender or not
|
|
18
|
+
// if we should we add prerender as our custom origin
|
|
19
|
+
if (request.headers["x-request-prerender"]) {
|
|
20
|
+
// Cloudfront will alter the request for / to /index.html
|
|
21
|
+
// since it is defined as the default root object
|
|
22
|
+
// we do not want to do this when prerendering the homepage
|
|
23
|
+
if (request.uri === `${PATH_PREFIX}/index.html`) {
|
|
24
|
+
request.uri = `${PATH_PREFIX}/`;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
request.origin = {
|
|
28
|
+
custom: {
|
|
29
|
+
domainName: PRERENDER_URL,
|
|
30
|
+
port: 443,
|
|
31
|
+
protocol: "https",
|
|
32
|
+
readTimeout: 20,
|
|
33
|
+
keepaliveTimeout: 5,
|
|
34
|
+
sslProtocols: ["TLSv1", "TLSv1.1", "TLSv1.2"],
|
|
35
|
+
path: "/https%3A%2F%2F" + request.headers["x-prerender-host"][0].value,
|
|
36
|
+
customHeaders: {
|
|
37
|
+
"x-prerender-token": [
|
|
38
|
+
{
|
|
39
|
+
key: "x-prerender-token",
|
|
40
|
+
value: PRERENDER_TOKEN,
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
} else {
|
|
47
|
+
request.uri = `${PATH_PREFIX}/index.html`;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
return request;
|
|
51
|
+
};
|
|
@@ -8,7 +8,8 @@
|
|
|
8
8
|
"sourceMap": true,
|
|
9
9
|
"target": "es2017",
|
|
10
10
|
"outDir": "lib",
|
|
11
|
-
"typeRoots": ["./types", "../node_modules/@types"]
|
|
11
|
+
"typeRoots": ["./types", "../node_modules/@types"],
|
|
12
|
+
"types": ["node"]
|
|
12
13
|
},
|
|
13
14
|
"include": ["./**/*.ts"],
|
|
14
15
|
"exclude": [
|
|
@@ -18,4 +19,4 @@
|
|
|
18
19
|
".vscode/**/*",
|
|
19
20
|
"types"
|
|
20
21
|
]
|
|
21
|
-
}
|
|
22
|
+
}
|
|
@@ -2,7 +2,7 @@ import { Construct } from "@aws-cdk/core";
|
|
|
2
2
|
import { EdgeFunction } from "@aws-cdk/aws-cloudfront/lib/experimental";
|
|
3
3
|
export interface CloudFrontCacheControlOptions {
|
|
4
4
|
cacheKey?: string;
|
|
5
|
-
maxAge?:
|
|
5
|
+
maxAge?: number;
|
|
6
6
|
}
|
|
7
7
|
export declare class CloudFrontCacheControl extends Construct {
|
|
8
8
|
readonly edgeFunction: EdgeFunction;
|
|
@@ -9,7 +9,7 @@ class CloudFrontCacheControl extends core_1.Construct {
|
|
|
9
9
|
constructor(scope, id, options) {
|
|
10
10
|
var _a, _b;
|
|
11
11
|
super(scope, id);
|
|
12
|
-
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this,
|
|
12
|
+
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this, "PrerenderCloudFrontCacheControl", {
|
|
13
13
|
code: bundling_1.Bundling.bundle({
|
|
14
14
|
entry: `${__dirname}/handlers/cache-control.ts`,
|
|
15
15
|
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
@@ -20,14 +20,14 @@ class CloudFrontCacheControl extends core_1.Construct {
|
|
|
20
20
|
// and replace during build/deploy with static values. This gets around the lambda@edge limitation
|
|
21
21
|
// of no environment variables at runtime.
|
|
22
22
|
define: {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
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
26
|
}),
|
|
27
27
|
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
28
|
-
handler:
|
|
28
|
+
handler: "index.handler",
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
exports.CloudFrontCacheControl = CloudFrontCacheControl;
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLWNmLWNhY2hlLWNvbnRyb2wtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicHJlcmVuZGVyLWNmLWNhY2hlLWNvbnRyb2wtY29uc3RydWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdDQUEwQztBQUMxQyxzRUFBbUU7QUFDbkUsb0RBQThDO0FBQzlDLDREQUF1RDtBQVF2RCxNQUFhLHNCQUF1QixTQUFRLGdCQUFTO0lBR25ELFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLE9BQXVDOztRQUV2QyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSw2QkFBWSxDQUFDLFlBQVksQ0FDL0MsSUFBSSxFQUNKLGlDQUFpQyxFQUNqQztZQUNFLElBQUksRUFBRSxtQkFBUSxDQUFDLE1BQU0sQ0FBQztnQkFDcEIsS0FBSyxFQUFFLEdBQUcsU0FBUyw0QkFBNEI7Z0JBQy9DLE9BQU8sRUFBRSxvQkFBTyxDQUFDLFdBQVc7Z0JBQzVCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLFdBQVcsRUFBRSxHQUFHLFNBQVMsWUFBWTtnQkFDckMsZ0JBQWdCLEVBQUUsR0FBRyxTQUFTLDZCQUE2QjtnQkFDM0Qsa0dBQWtHO2dCQUNsRyxrR0FBa0c7Z0JBQ2xHLDBDQUEwQztnQkFDMUMsTUFBTSxFQUFFO29CQUNOLGlDQUFpQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQy9DLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFFBQVEsbUNBQUksdUJBQXVCLENBQzdDO29CQUNELHFDQUFxQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQ25ELE1BQUEsTUFBTSxDQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxNQUFNLENBQUMsbUNBQUksR0FBRyxDQUMvQjtpQkFDRjthQUNLLENBQUM7WUFDVCxPQUFPLEVBQUUsb0JBQU8sQ0FBQyxXQUFXO1lBQzVCLE9BQU8sRUFBRSxlQUFlO1NBQ3pCLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXJDRCx3REFxQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiQGF3cy1jZGsvY29yZVwiO1xuaW1wb3J0IHsgQnVuZGxpbmcgfSBmcm9tIFwiQGF3cy1jZGsvYXdzLWxhbWJkYS1ub2RlanMvbGliL2J1bmRsaW5nXCI7XG5pbXBvcnQgeyBSdW50aW1lIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IGV4cGVyaW1lbnRhbCB9IGZyb20gXCJAYXdzLWNkay9hd3MtY2xvdWRmcm9udFwiO1xuaW1wb3J0IHsgRWRnZUZ1bmN0aW9uIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1jbG91ZGZyb250L2xpYi9leHBlcmltZW50YWxcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDbG91ZEZyb250Q2FjaGVDb250cm9sT3B0aW9ucyB7XG4gIGNhY2hlS2V5Pzogc3RyaW5nO1xuICBtYXhBZ2U/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBDbG91ZEZyb250Q2FjaGVDb250cm9sIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgZWRnZUZ1bmN0aW9uOiBFZGdlRnVuY3Rpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiBDbG91ZEZyb250Q2FjaGVDb250cm9sT3B0aW9uc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5lZGdlRnVuY3Rpb24gPSBuZXcgZXhwZXJpbWVudGFsLkVkZ2VGdW5jdGlvbihcbiAgICAgIHRoaXMsXG4gICAgICBcIlByZXJlbmRlckNsb3VkRnJvbnRDYWNoZUNvbnRyb2xcIixcbiAgICAgIHtcbiAgICAgICAgY29kZTogQnVuZGxpbmcuYnVuZGxlKHtcbiAgICAgICAgICBlbnRyeTogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9jYWNoZS1jb250cm9sLnRzYCxcbiAgICAgICAgICBydW50aW1lOiBSdW50aW1lLk5PREVKU18xNF9YLFxuICAgICAgICAgIHNvdXJjZU1hcDogdHJ1ZSxcbiAgICAgICAgICBwcm9qZWN0Um9vdDogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9gLFxuICAgICAgICAgIGRlcHNMb2NrRmlsZVBhdGg6IGAke19fZGlybmFtZX0vaGFuZGxlcnMvcGFja2FnZS1sb2NrLmpzb25gLFxuICAgICAgICAgIC8vIERlZmluZSBvcHRpb25zIHJlcGxhY2UgdmFsdWVzIGF0IGJ1aWxkIHRpbWUgc28gd2UgY2FuIHVzZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gdGVzdCBsb2NhbGx5XG4gICAgICAgICAgLy8gYW5kIHJlcGxhY2UgZHVyaW5nIGJ1aWxkL2RlcGxveSB3aXRoIHN0YXRpYyB2YWx1ZXMuIFRoaXMgZ2V0cyBhcm91bmQgdGhlIGxhbWJkYUBlZGdlIGxpbWl0YXRpb25cbiAgICAgICAgICAvLyBvZiBubyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYXQgcnVudGltZS5cbiAgICAgICAgICBkZWZpbmU6IHtcbiAgICAgICAgICAgIFwicHJvY2Vzcy5lbnYuUFJFUkVOREVSX0NBQ0hFX0tFWVwiOiBKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICAgICAgb3B0aW9ucz8uY2FjaGVLZXkgPz8gXCJ4LXByZXJlbmRlci1yZXF1ZXN0aWRcIlxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIFwicHJvY2Vzcy5lbnYuUFJFUkVOREVSX0NBQ0hFX01BWF9BR0VcIjogSlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgICAgIFN0cmluZyhvcHRpb25zPy5tYXhBZ2UpID8/IFwiMFwiXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0gYXMgYW55KSxcbiAgICAgICAgcnVudGltZTogUnVudGltZS5OT0RFSlNfMTRfWCxcbiAgICAgICAgaGFuZGxlcjogXCJpbmRleC5oYW5kbGVyXCIsXG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -8,18 +8,18 @@ const aws_cloudfront_1 = require("@aws-cdk/aws-cloudfront");
|
|
|
8
8
|
class PrerenderCheckFunction extends core_1.Construct {
|
|
9
9
|
constructor(scope, id) {
|
|
10
10
|
super(scope, id);
|
|
11
|
-
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this,
|
|
11
|
+
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this, "PrerenderCheckFunction", {
|
|
12
12
|
code: bundling_1.Bundling.bundle({
|
|
13
13
|
entry: `${__dirname}/handlers/prerender-check.ts`,
|
|
14
14
|
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
15
15
|
sourceMap: true,
|
|
16
16
|
projectRoot: `${__dirname}/handlers/`,
|
|
17
|
-
depsLockFilePath: `${__dirname}/handlers/package-lock.json
|
|
17
|
+
depsLockFilePath: `${__dirname}/handlers/package-lock.json`,
|
|
18
18
|
}),
|
|
19
19
|
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
20
|
-
handler:
|
|
20
|
+
handler: "index.handler",
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
exports.PrerenderCheckFunction = PrerenderCheckFunction;
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLWNoZWNrLWNvbnN0cnVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInByZXJlbmRlci1jaGVjay1jb25zdHJ1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0NBQTBDO0FBQzFDLHNFQUFtRTtBQUNuRSxvREFBOEM7QUFDOUMsNERBQXVEO0FBR3ZELE1BQWEsc0JBQXVCLFNBQVEsZ0JBQVM7SUFHbkQsWUFBWSxLQUFnQixFQUFFLEVBQVU7UUFDdEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksNkJBQVksQ0FBQyxZQUFZLENBQy9DLElBQUksRUFDSix3QkFBd0IsRUFDeEI7WUFDRSxJQUFJLEVBQUUsbUJBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3BCLEtBQUssRUFBRSxHQUFHLFNBQVMsOEJBQThCO2dCQUNqRCxPQUFPLEVBQUUsb0JBQU8sQ0FBQyxXQUFXO2dCQUM1QixTQUFTLEVBQUUsSUFBSTtnQkFDZixXQUFXLEVBQUUsR0FBRyxTQUFTLFlBQVk7Z0JBQ3JDLGdCQUFnQixFQUFFLEdBQUcsU0FBUyw2QkFBNkI7YUFDckQsQ0FBQztZQUNULE9BQU8sRUFBRSxvQkFBTyxDQUFDLFdBQVc7WUFDNUIsT0FBTyxFQUFFLGVBQWU7U0FDekIsQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBckJELHdEQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJAYXdzLWNkay9jb3JlXCI7XG5pbXBvcnQgeyBCdW5kbGluZyB9IGZyb20gXCJAYXdzLWNkay9hd3MtbGFtYmRhLW5vZGVqcy9saWIvYnVuZGxpbmdcIjtcbmltcG9ydCB7IFJ1bnRpbWUgfSBmcm9tIFwiQGF3cy1jZGsvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgZXhwZXJpbWVudGFsIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1jbG91ZGZyb250XCI7XG5pbXBvcnQgeyBFZGdlRnVuY3Rpb24gfSBmcm9tIFwiQGF3cy1jZGsvYXdzLWNsb3VkZnJvbnQvbGliL2V4cGVyaW1lbnRhbFwiO1xuXG5leHBvcnQgY2xhc3MgUHJlcmVuZGVyQ2hlY2tGdW5jdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGVkZ2VGdW5jdGlvbjogRWRnZUZ1bmN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMuZWRnZUZ1bmN0aW9uID0gbmV3IGV4cGVyaW1lbnRhbC5FZGdlRnVuY3Rpb24oXG4gICAgICB0aGlzLFxuICAgICAgXCJQcmVyZW5kZXJDaGVja0Z1bmN0aW9uXCIsXG4gICAgICB7XG4gICAgICAgIGNvZGU6IEJ1bmRsaW5nLmJ1bmRsZSh7XG4gICAgICAgICAgZW50cnk6IGAke19fZGlybmFtZX0vaGFuZGxlcnMvcHJlcmVuZGVyLWNoZWNrLnRzYCxcbiAgICAgICAgICBydW50aW1lOiBSdW50aW1lLk5PREVKU18xNF9YLFxuICAgICAgICAgIHNvdXJjZU1hcDogdHJ1ZSxcbiAgICAgICAgICBwcm9qZWN0Um9vdDogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9gLFxuICAgICAgICAgIGRlcHNMb2NrRmlsZVBhdGg6IGAke19fZGlybmFtZX0vaGFuZGxlcnMvcGFja2FnZS1sb2NrLmpzb25gLFxuICAgICAgICB9IGFzIGFueSksXG4gICAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuTk9ERUpTXzE0X1gsXG4gICAgICAgIGhhbmRsZXI6IFwiaW5kZXguaGFuZGxlclwiLFxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -9,7 +9,7 @@ class PrerenderFunction extends core_1.Construct {
|
|
|
9
9
|
constructor(scope, id, options) {
|
|
10
10
|
var _a, _b;
|
|
11
11
|
super(scope, id);
|
|
12
|
-
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this,
|
|
12
|
+
this.edgeFunction = new aws_cloudfront_1.experimental.EdgeFunction(this, "PrerenderFunction", {
|
|
13
13
|
code: bundling_1.Bundling.bundle({
|
|
14
14
|
entry: `${__dirname}/handlers/prerender.ts`,
|
|
15
15
|
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
@@ -20,15 +20,15 @@ class PrerenderFunction extends core_1.Construct {
|
|
|
20
20
|
// and replace during build/deploy with static values. This gets around the lambda@edge limitation
|
|
21
21
|
// of no environment variables at runtime.
|
|
22
22
|
define: {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
23
|
+
"process.env.PRERENDER_TOKEN": JSON.stringify(options.prerenderToken),
|
|
24
|
+
"process.env.PATH_PREFIX": JSON.stringify((_a = options.pathPrefix) !== null && _a !== void 0 ? _a : ""),
|
|
25
|
+
"process.env.PRERENDER_URL": JSON.stringify((_b = options.prerenderUrl) !== null && _b !== void 0 ? _b : "service.prerender.io"),
|
|
26
|
+
},
|
|
27
27
|
}),
|
|
28
28
|
runtime: aws_lambda_1.Runtime.NODEJS_14_X,
|
|
29
|
-
handler:
|
|
29
|
+
handler: "index.handler",
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
exports.PrerenderFunction = PrerenderFunction;
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLWNvbnN0cnVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInByZXJlbmRlci1jb25zdHJ1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0NBQTBDO0FBQzFDLHNFQUFtRTtBQUNuRSxvREFBOEM7QUFDOUMsNERBQXVEO0FBU3ZELE1BQWEsaUJBQWtCLFNBQVEsZ0JBQVM7SUFHOUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUFpQzs7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksNkJBQVksQ0FBQyxZQUFZLENBQy9DLElBQUksRUFDSixtQkFBbUIsRUFDbkI7WUFDRSxJQUFJLEVBQUUsbUJBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3BCLEtBQUssRUFBRSxHQUFHLFNBQVMsd0JBQXdCO2dCQUMzQyxPQUFPLEVBQUUsb0JBQU8sQ0FBQyxXQUFXO2dCQUM1QixTQUFTLEVBQUUsSUFBSTtnQkFDZixXQUFXLEVBQUUsR0FBRyxTQUFTLFlBQVk7Z0JBQ3JDLGdCQUFnQixFQUFFLEdBQUcsU0FBUyw2QkFBNkI7Z0JBQzNELGtHQUFrRztnQkFDbEcsa0dBQWtHO2dCQUNsRywwQ0FBMEM7Z0JBQzFDLE1BQU0sRUFBRTtvQkFDTiw2QkFBNkIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUMzQyxPQUFPLENBQUMsY0FBYyxDQUN2QjtvQkFDRCx5QkFBeUIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQUEsT0FBTyxDQUFDLFVBQVUsbUNBQUksRUFBRSxDQUFDO29CQUNuRSwyQkFBMkIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUN6QyxNQUFBLE9BQU8sQ0FBQyxZQUFZLG1DQUFJLHNCQUFzQixDQUMvQztpQkFDRjthQUNLLENBQUM7WUFDVCxPQUFPLEVBQUUsb0JBQU8sQ0FBQyxXQUFXO1lBQzVCLE9BQU8sRUFBRSxlQUFlO1NBQ3pCLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWxDRCw4Q0FrQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiQGF3cy1jZGsvY29yZVwiO1xuaW1wb3J0IHsgQnVuZGxpbmcgfSBmcm9tIFwiQGF3cy1jZGsvYXdzLWxhbWJkYS1ub2RlanMvbGliL2J1bmRsaW5nXCI7XG5pbXBvcnQgeyBSdW50aW1lIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IGV4cGVyaW1lbnRhbCB9IGZyb20gXCJAYXdzLWNkay9hd3MtY2xvdWRmcm9udFwiO1xuaW1wb3J0IHsgRWRnZUZ1bmN0aW9uIH0gZnJvbSBcIkBhd3MtY2RrL2F3cy1jbG91ZGZyb250L2xpYi9leHBlcmltZW50YWxcIjtcblxuZXhwb3J0IGludGVyZmFjZSBQcmVyZW5kZXJGdW5jdGlvbk9wdGlvbnMge1xuICBwcmVyZW5kZXJUb2tlbjogc3RyaW5nO1xuICBwcmVyZW5kZXJVcmw/OiBzdHJpbmc7XG4gIHBhdGhQcmVmaXg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBQcmVyZW5kZXJGdW5jdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGVkZ2VGdW5jdGlvbjogRWRnZUZ1bmN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG9wdGlvbnM6IFByZXJlbmRlckZ1bmN0aW9uT3B0aW9ucykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmVkZ2VGdW5jdGlvbiA9IG5ldyBleHBlcmltZW50YWwuRWRnZUZ1bmN0aW9uKFxuICAgICAgdGhpcyxcbiAgICAgIFwiUHJlcmVuZGVyRnVuY3Rpb25cIixcbiAgICAgIHtcbiAgICAgICAgY29kZTogQnVuZGxpbmcuYnVuZGxlKHtcbiAgICAgICAgICBlbnRyeTogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9wcmVyZW5kZXIudHNgLFxuICAgICAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuTk9ERUpTXzE0X1gsXG4gICAgICAgICAgc291cmNlTWFwOiB0cnVlLFxuICAgICAgICAgIHByb2plY3RSb290OiBgJHtfX2Rpcm5hbWV9L2hhbmRsZXJzL2AsXG4gICAgICAgICAgZGVwc0xvY2tGaWxlUGF0aDogYCR7X19kaXJuYW1lfS9oYW5kbGVycy9wYWNrYWdlLWxvY2suanNvbmAsXG4gICAgICAgICAgLy8gRGVmaW5lIG9wdGlvbnMgcmVwbGFjZSB2YWx1ZXMgYXQgYnVpbGQgdGltZSBzbyB3ZSBjYW4gdXNlIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byB0ZXN0IGxvY2FsbHlcbiAgICAgICAgICAvLyBhbmQgcmVwbGFjZSBkdXJpbmcgYnVpbGQvZGVwbG95IHdpdGggc3RhdGljIHZhbHVlcy4gVGhpcyBnZXRzIGFyb3VuZCB0aGUgbGFtYmRhQGVkZ2UgbGltaXRhdGlvblxuICAgICAgICAgIC8vIG9mIG5vIGVudmlyb25tZW50IHZhcmlhYmxlcyBhdCBydW50aW1lLlxuICAgICAgICAgIGRlZmluZToge1xuICAgICAgICAgICAgXCJwcm9jZXNzLmVudi5QUkVSRU5ERVJfVE9LRU5cIjogSlNPTi5zdHJpbmdpZnkoXG4gICAgICAgICAgICAgIG9wdGlvbnMucHJlcmVuZGVyVG9rZW5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBcInByb2Nlc3MuZW52LlBBVEhfUFJFRklYXCI6IEpTT04uc3RyaW5naWZ5KG9wdGlvbnMucGF0aFByZWZpeCA/PyBcIlwiKSxcbiAgICAgICAgICAgIFwicHJvY2Vzcy5lbnYuUFJFUkVOREVSX1VSTFwiOiBKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICAgICAgb3B0aW9ucy5wcmVyZW5kZXJVcmwgPz8gXCJzZXJ2aWNlLnByZXJlbmRlci5pb1wiXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0gYXMgYW55KSxcbiAgICAgICAgcnVudGltZTogUnVudGltZS5OT0RFSlNfMTRfWCxcbiAgICAgICAgaGFuZGxlcjogXCJpbmRleC5oYW5kbGVyXCIsXG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Construct } from
|
|
2
|
-
import { PrerenderFunction } from
|
|
3
|
-
import { PrerenderCheckFunction } from
|
|
4
|
-
import { ErrorResponseFunction } from
|
|
1
|
+
import { Construct } from "@aws-cdk/core";
|
|
2
|
+
import { PrerenderFunction } from "./prerender-construct";
|
|
3
|
+
import { PrerenderCheckFunction } from "./prerender-check-construct";
|
|
4
|
+
import { ErrorResponseFunction } from "./error-response-construct";
|
|
5
5
|
import { CloudFrontCacheControl, CloudFrontCacheControlOptions } from "./prerender-cf-cache-control-construct";
|
|
6
6
|
export interface PrerenderLambdaProps {
|
|
7
7
|
prerenderToken: string;
|
|
@@ -9,11 +9,11 @@ const prerender_cf_cache_control_construct_1 = require("./prerender-cf-cache-con
|
|
|
9
9
|
class PrerenderLambda extends core_1.Construct {
|
|
10
10
|
constructor(scope, id, props) {
|
|
11
11
|
super(scope, id);
|
|
12
|
-
this.prerenderCheckFunction = new prerender_check_construct_1.PrerenderCheckFunction(this,
|
|
13
|
-
this.prerenderFunction = new prerender_construct_1.PrerenderFunction(this,
|
|
14
|
-
this.errorResponseFunction = new error_response_construct_1.ErrorResponseFunction(this,
|
|
15
|
-
this.cacheControlFunction = new prerender_cf_cache_control_construct_1.CloudFrontCacheControl(this,
|
|
12
|
+
this.prerenderCheckFunction = new prerender_check_construct_1.PrerenderCheckFunction(this, "PrerenderViewerRequest");
|
|
13
|
+
this.prerenderFunction = new prerender_construct_1.PrerenderFunction(this, "PrerenderOriginRequest", props);
|
|
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);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
exports.PrerenderLambda = PrerenderLambda;
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcmVuZGVyLWxhbWJkYS1jb25zdHJ1Y3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwcmVyZW5kZXItbGFtYmRhLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx3Q0FBcUQ7QUFDckQsK0RBQTBEO0FBQzFELDJFQUFxRTtBQUNyRSx5RUFBbUU7QUFDbkUsaUdBR2dEO0FBUWhELE1BQWEsZUFBZ0IsU0FBUSxnQkFBUztJQU01QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTJCO1FBQ25FLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksa0RBQXNCLENBQ3RELElBQUksRUFDSix3QkFBd0IsQ0FDekIsQ0FBQztRQUVGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLHVDQUFpQixDQUM1QyxJQUFJLEVBQ0osd0JBQXdCLEVBQ3hCLEtBQUssQ0FDTixDQUFDO1FBRUYsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksZ0RBQXFCLENBQ3BELElBQUksRUFDSixlQUFlLEVBQ2YsRUFBRSxDQUNILENBQUM7UUFFRixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSw2REFBc0IsQ0FDcEQsSUFBSSxFQUNKLGlDQUFpQyxFQUNqQyxLQUFLLENBQUMsaUJBQWlCLENBQ3hCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFoQ0QsMENBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0LCBDZm5PdXRwdXQgfSBmcm9tIFwiQGF3cy1jZGsvY29yZVwiO1xuaW1wb3J0IHsgUHJlcmVuZGVyRnVuY3Rpb24gfSBmcm9tIFwiLi9wcmVyZW5kZXItY29uc3RydWN0XCI7XG5pbXBvcnQgeyBQcmVyZW5kZXJDaGVja0Z1bmN0aW9uIH0gZnJvbSBcIi4vcHJlcmVuZGVyLWNoZWNrLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgRXJyb3JSZXNwb25zZUZ1bmN0aW9uIH0gZnJvbSBcIi4vZXJyb3ItcmVzcG9uc2UtY29uc3RydWN0XCI7XG5pbXBvcnQge1xuICBDbG91ZEZyb250Q2FjaGVDb250cm9sLFxuICBDbG91ZEZyb250Q2FjaGVDb250cm9sT3B0aW9ucyxcbn0gZnJvbSBcIi4vcHJlcmVuZGVyLWNmLWNhY2hlLWNvbnRyb2wtY29uc3RydWN0XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJlcmVuZGVyTGFtYmRhUHJvcHMge1xuICBwcmVyZW5kZXJUb2tlbjogc3RyaW5nO1xuICBleGNsdXNpb25FeHByZXNzaW9uPzogc3RyaW5nO1xuICBjYWNoZUNvbnRyb2xQcm9wcz86IENsb3VkRnJvbnRDYWNoZUNvbnRyb2xPcHRpb25zO1xufVxuXG5leHBvcnQgY2xhc3MgUHJlcmVuZGVyTGFtYmRhIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgcHJlcmVuZGVyQ2hlY2tGdW5jdGlvbjogUHJlcmVuZGVyQ2hlY2tGdW5jdGlvbjtcbiAgcmVhZG9ubHkgcHJlcmVuZGVyRnVuY3Rpb246IFByZXJlbmRlckZ1bmN0aW9uO1xuICByZWFkb25seSBlcnJvclJlc3BvbnNlRnVuY3Rpb246IEVycm9yUmVzcG9uc2VGdW5jdGlvbjtcbiAgcmVhZG9ubHkgY2FjaGVDb250cm9sRnVuY3Rpb246IENsb3VkRnJvbnRDYWNoZUNvbnRyb2w7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFByZXJlbmRlckxhbWJkYVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMucHJlcmVuZGVyQ2hlY2tGdW5jdGlvbiA9IG5ldyBQcmVyZW5kZXJDaGVja0Z1bmN0aW9uKFxuICAgICAgdGhpcyxcbiAgICAgIFwiUHJlcmVuZGVyVmlld2VyUmVxdWVzdFwiXG4gICAgKTtcblxuICAgIHRoaXMucHJlcmVuZGVyRnVuY3Rpb24gPSBuZXcgUHJlcmVuZGVyRnVuY3Rpb24oXG4gICAgICB0aGlzLFxuICAgICAgXCJQcmVyZW5kZXJPcmlnaW5SZXF1ZXN0XCIsXG4gICAgICBwcm9wc1xuICAgICk7XG5cbiAgICB0aGlzLmVycm9yUmVzcG9uc2VGdW5jdGlvbiA9IG5ldyBFcnJvclJlc3BvbnNlRnVuY3Rpb24oXG4gICAgICB0aGlzLFxuICAgICAgXCJFcnJvclJlc3BvbnNlXCIsXG4gICAgICB7fVxuICAgICk7XG5cbiAgICB0aGlzLmNhY2hlQ29udHJvbEZ1bmN0aW9uID0gbmV3IENsb3VkRnJvbnRDYWNoZUNvbnRyb2woXG4gICAgICB0aGlzLFxuICAgICAgXCJQcmVyZW5kZXJDbG91ZEZyb250Q2FjaGVDb250cm9sXCIsXG4gICAgICBwcm9wcy5jYWNoZUNvbnRyb2xQcm9wc1xuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aligent/cdk-prerender-proxy",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"description": "A Cloudfront Lambda@Edge stack for integrating with prerender.io",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"build": "tsc",
|
|
8
|
-
"prepublish": "tsc"
|
|
7
|
+
"build": "tsc && cd ./lib/handlers && npm ci",
|
|
8
|
+
"prepublish": "tsc && cd ./lib/handlers && npm ci"
|
|
9
9
|
},
|
|
10
10
|
"repository": {
|
|
11
11
|
"type": "git",
|
|
@@ -32,9 +32,7 @@
|
|
|
32
32
|
"@aws-cdk/core": "1.180.0",
|
|
33
33
|
"aws-cdk": "1.180.0",
|
|
34
34
|
"esbuild": "0.12.15",
|
|
35
|
-
"
|
|
36
|
-
"source-map-support": "^0.5.16",
|
|
37
|
-
"@aligent/cdk-lambda-at-edge-handlers": "^0.1.0"
|
|
35
|
+
"source-map-support": "^0.5.16"
|
|
38
36
|
},
|
|
39
37
|
"peerDependencies": {
|
|
40
38
|
"@aws-cdk/aws-cloudfront": "1.180.0",
|
package/tsconfig.json
CHANGED