@aligent/cdk-prerender-proxy 0.2.4-beta1 → 0.2.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -2
- package/index.js +2 -4
- package/package.json +1 -1
- package/lib/handlers/prerender-handler.ts +0 -13
- package/lib/sendToPrerender.d.ts +0 -2
- package/lib/sendToPrerender.js +0 -42
package/index.d.ts
CHANGED
|
@@ -3,5 +3,4 @@ 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, CloudFrontCacheControlOptions } from "./lib/prerender-cf-cache-control-construct";
|
|
6
|
-
|
|
7
|
-
export { PrerenderLambda, PrerenderFunction, PrerenderCheckFunction, ErrorResponseFunction, CloudFrontCacheControl, CloudFrontCacheControlOptions, sendToPrerender };
|
|
6
|
+
export { PrerenderLambda, PrerenderFunction, PrerenderCheckFunction, ErrorResponseFunction, CloudFrontCacheControl, CloudFrontCacheControlOptions };
|
package/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
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");
|
|
@@ -11,6 +11,4 @@ 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
13
|
Object.defineProperty(exports, "CloudFrontCacheControl", { enumerable: true, get: function () { return prerender_cf_cache_control_construct_1.CloudFrontCacheControl; } });
|
|
14
|
-
|
|
15
|
-
Object.defineProperty(exports, "sendToPrerender", { enumerable: true, get: function () { return sendToPrerender_1.sendToPrerender; } });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpRkFBbUU7QUFVakUsZ0dBVk8sNENBQWUsT0FVUDtBQVRqQixtRUFBOEQ7QUFVNUQsa0dBVk8sdUNBQWlCLE9BVVA7QUFUbkIsK0VBQXlFO0FBVXZFLHVHQVZPLGtEQUFzQixPQVVQO0FBVHhCLDZFQUF1RTtBQVVyRSxzR0FWTyxnREFBcUIsT0FVUDtBQVR2QixxR0FHb0Q7QUFPbEQsdUdBVEEsNkRBQXNCLE9BU0E7QUFOeEIsMkRBQXdEO0FBUXRELGdHQVJPLGlDQUFlLE9BUVAiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmVyZW5kZXJMYW1iZGEgfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWxhbWJkYS1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IFByZXJlbmRlckZ1bmN0aW9uIH0gZnJvbSBcIi4vbGliL3ByZXJlbmRlci1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IFByZXJlbmRlckNoZWNrRnVuY3Rpb24gfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWNoZWNrLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgRXJyb3JSZXNwb25zZUZ1bmN0aW9uIH0gZnJvbSBcIi4vbGliL2Vycm9yLXJlc3BvbnNlLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHtcbiAgQ2xvdWRGcm9udENhY2hlQ29udHJvbCxcbiAgQ2xvdWRGcm9udENhY2hlQ29udHJvbE9wdGlvbnMsXG59IGZyb20gXCIuL2xpYi9wcmVyZW5kZXItY2YtY2FjaGUtY29udHJvbC1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IHNlbmRUb1ByZXJlbmRlciB9IGZyb20gJy4vbGliL3NlbmRUb1ByZXJlbmRlcic7XG5leHBvcnQge1xuICBQcmVyZW5kZXJMYW1iZGEsXG4gIFByZXJlbmRlckZ1bmN0aW9uLFxuICBQcmVyZW5kZXJDaGVja0Z1bmN0aW9uLFxuICBFcnJvclJlc3BvbnNlRnVuY3Rpb24sXG4gIENsb3VkRnJvbnRDYWNoZUNvbnRyb2wsXG4gIENsb3VkRnJvbnRDYWNoZUNvbnRyb2xPcHRpb25zLFxuICBzZW5kVG9QcmVyZW5kZXIgXG59O1xuIl19
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxpRkFBbUU7QUFPdkQsZ0dBUEgsNENBQWUsT0FPRztBQU4zQixtRUFBOEQ7QUFPbEQsa0dBUEgsdUNBQWlCLE9BT0c7QUFON0IsK0VBQXlFO0FBTzdELHVHQVBILGtEQUFzQixPQU9HO0FBTmxDLDZFQUF1RTtBQU8zRCxzR0FQSCxnREFBcUIsT0FPRztBQU5qQyxxR0FBa0g7QUFPdEcsdUdBUEgsNkRBQXNCLE9BT0ciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcmVyZW5kZXJMYW1iZGEgfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWxhbWJkYS1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IFByZXJlbmRlckZ1bmN0aW9uIH0gZnJvbSBcIi4vbGliL3ByZXJlbmRlci1jb25zdHJ1Y3RcIjtcbmltcG9ydCB7IFByZXJlbmRlckNoZWNrRnVuY3Rpb24gfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWNoZWNrLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgRXJyb3JSZXNwb25zZUZ1bmN0aW9uIH0gZnJvbSBcIi4vbGliL2Vycm9yLXJlc3BvbnNlLWNvbnN0cnVjdFwiO1xuaW1wb3J0IHsgQ2xvdWRGcm9udENhY2hlQ29udHJvbCwgQ2xvdWRGcm9udENhY2hlQ29udHJvbE9wdGlvbnMgfSBmcm9tIFwiLi9saWIvcHJlcmVuZGVyLWNmLWNhY2hlLWNvbnRyb2wtY29uc3RydWN0XCJcblxuZXhwb3J0IHsgICAgXG4gICAgICAgICAgICBQcmVyZW5kZXJMYW1iZGEsIFxuICAgICAgICAgICAgUHJlcmVuZGVyRnVuY3Rpb24sIFxuICAgICAgICAgICAgUHJlcmVuZGVyQ2hlY2tGdW5jdGlvbiwgXG4gICAgICAgICAgICBFcnJvclJlc3BvbnNlRnVuY3Rpb24sIFxuICAgICAgICAgICAgQ2xvdWRGcm9udENhY2hlQ29udHJvbCwgXG4gICAgICAgICAgICBDbG91ZEZyb250Q2FjaGVDb250cm9sT3B0aW9ucyBcbiAgICAgICAgfTsiXX0=
|
package/package.json
CHANGED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import 'source-map-support/register';
|
|
2
|
-
import {sendToPrerender} from '../sendToPrerender';
|
|
3
|
-
import { CloudFrontRequest, CloudFrontRequestEvent, CloudFrontResponse } from 'aws-lambda';
|
|
4
|
-
|
|
5
|
-
const PRERENDER_TOKEN = process.env.PRERENDER_TOKEN;
|
|
6
|
-
const PATH_PREFIX = process.env.PATH_PREFIX;
|
|
7
|
-
const PRERENDER_URL = process.env.PRERENDER_URL;
|
|
8
|
-
|
|
9
|
-
export const handler = async (event: CloudFrontRequestEvent): Promise<CloudFrontResponse|CloudFrontRequest> => {
|
|
10
|
-
let request = event.Records[0].cf.request;
|
|
11
|
-
|
|
12
|
-
return sendToPrerender(request)
|
|
13
|
-
}
|
package/lib/sendToPrerender.d.ts
DELETED
package/lib/sendToPrerender.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sendToPrerender = void 0;
|
|
4
|
-
require("source-map-support/register");
|
|
5
|
-
const PRERENDER_TOKEN = process.env.PRERENDER_TOKEN;
|
|
6
|
-
const PATH_PREFIX = process.env.PATH_PREFIX;
|
|
7
|
-
const PRERENDER_URL = process.env.PRERENDER_URL;
|
|
8
|
-
const sendToPrerender = (request) => {
|
|
9
|
-
// viewer-request function will determine whether we prerender or not
|
|
10
|
-
// if we should we add prerender as our custom origin
|
|
11
|
-
if (request.headers['x-request-prerender']) {
|
|
12
|
-
// Cloudfront will alter the request for / to /index.html
|
|
13
|
-
// since it is defined as the default root object
|
|
14
|
-
// we do not want to do this when prerendering the homepage
|
|
15
|
-
if (request.uri === `${PATH_PREFIX}/index.html`) {
|
|
16
|
-
request.uri = `${PATH_PREFIX}/`;
|
|
17
|
-
}
|
|
18
|
-
request.origin = {
|
|
19
|
-
custom: {
|
|
20
|
-
domainName: PRERENDER_URL,
|
|
21
|
-
port: 443,
|
|
22
|
-
protocol: 'https',
|
|
23
|
-
readTimeout: 20,
|
|
24
|
-
keepaliveTimeout: 5,
|
|
25
|
-
sslProtocols: ['TLSv1', 'TLSv1.1', 'TLSv1.2'],
|
|
26
|
-
path: '/https%3A%2F%2F' + request.headers['x-prerender-host'][0].value,
|
|
27
|
-
customHeaders: {
|
|
28
|
-
'x-prerender-token': [{
|
|
29
|
-
key: 'x-prerender-token',
|
|
30
|
-
value: PRERENDER_TOKEN
|
|
31
|
-
}]
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
request.uri = `${PATH_PREFIX}/index.html`;
|
|
38
|
-
}
|
|
39
|
-
return request;
|
|
40
|
-
};
|
|
41
|
-
exports.sendToPrerender = sendToPrerender;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZFRvUHJlcmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2VuZFRvUHJlcmVuZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVDQUFxQztBQUVyQyxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztBQUNwRCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztBQUM1QyxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQztBQUV6QyxNQUFNLGVBQWUsR0FBRyxDQUFDLE9BQVksRUFBRSxFQUFFO0lBQzVDLHFFQUFxRTtJQUN2RSxxREFBcUQ7SUFDckQsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEVBQUU7UUFDMUMseURBQXlEO1FBQ3pELGlEQUFpRDtRQUNqRCwyREFBMkQ7UUFDM0QsSUFBSSxPQUFPLENBQUMsR0FBRyxLQUFLLEdBQUcsV0FBVyxhQUFhLEVBQUU7WUFDNUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxHQUFHLFdBQVcsR0FBRyxDQUFDO1NBQ3BDO1FBRUQsT0FBTyxDQUFDLE1BQU0sR0FBRztZQUNaLE1BQU0sRUFBRTtnQkFDSCxVQUFVLEVBQUUsYUFBYTtnQkFDekIsSUFBSSxFQUFFLEdBQUc7Z0JBQ1QsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLFdBQVcsRUFBRSxFQUFFO2dCQUNmLGdCQUFnQixFQUFFLENBQUM7Z0JBQ25CLFlBQVksRUFBRSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO2dCQUM3QyxJQUFJLEVBQUUsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7Z0JBQ3RFLGFBQWEsRUFBRTtvQkFDVixtQkFBbUIsRUFBRSxDQUFDOzRCQUNqQixHQUFHLEVBQUUsbUJBQW1COzRCQUN4QixLQUFLLEVBQUUsZUFBZTt5QkFDMUIsQ0FBQztpQkFDTjthQUNMO1NBQ0wsQ0FBQztLQUNMO1NBQU07UUFDSCxPQUFPLENBQUMsR0FBRyxHQUFHLEdBQUcsV0FBVyxhQUFhLENBQUM7S0FDN0M7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNmLENBQUMsQ0FBQTtBQWpDWSxRQUFBLGVBQWUsbUJBaUMzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnc291cmNlLW1hcC1zdXBwb3J0L3JlZ2lzdGVyJztcblxuY29uc3QgUFJFUkVOREVSX1RPS0VOID0gcHJvY2Vzcy5lbnYuUFJFUkVOREVSX1RPS0VOO1xuY29uc3QgUEFUSF9QUkVGSVggPSBwcm9jZXNzLmVudi5QQVRIX1BSRUZJWDtcbmNvbnN0IFBSRVJFTkRFUl9VUkwgPSBwcm9jZXNzLmVudi5QUkVSRU5ERVJfVVJMO1xuXG5leHBvcnQgY29uc3Qgc2VuZFRvUHJlcmVuZGVyID0gKHJlcXVlc3Q6IGFueSkgPT4ge1xuICAgIC8vIHZpZXdlci1yZXF1ZXN0IGZ1bmN0aW9uIHdpbGwgZGV0ZXJtaW5lIHdoZXRoZXIgd2UgcHJlcmVuZGVyIG9yIG5vdFxuICAvLyBpZiB3ZSBzaG91bGQgd2UgYWRkIHByZXJlbmRlciBhcyBvdXIgY3VzdG9tIG9yaWdpblxuICBpZiAocmVxdWVzdC5oZWFkZXJzWyd4LXJlcXVlc3QtcHJlcmVuZGVyJ10pIHtcbiAgICAvLyBDbG91ZGZyb250IHdpbGwgYWx0ZXIgdGhlIHJlcXVlc3QgZm9yIC8gdG8gL2luZGV4Lmh0bWxcbiAgICAvLyBzaW5jZSBpdCBpcyBkZWZpbmVkIGFzIHRoZSBkZWZhdWx0IHJvb3Qgb2JqZWN0XG4gICAgLy8gd2UgZG8gbm90IHdhbnQgdG8gZG8gdGhpcyB3aGVuIHByZXJlbmRlcmluZyB0aGUgaG9tZXBhZ2VcbiAgICBpZiAocmVxdWVzdC51cmkgPT09IGAke1BBVEhfUFJFRklYfS9pbmRleC5odG1sYCkge1xuICAgICAgICAgcmVxdWVzdC51cmkgPSBgJHtQQVRIX1BSRUZJWH0vYDtcbiAgICB9XG5cbiAgICByZXF1ZXN0Lm9yaWdpbiA9IHtcbiAgICAgICAgIGN1c3RvbToge1xuICAgICAgICAgICAgICBkb21haW5OYW1lOiBQUkVSRU5ERVJfVVJMLFxuICAgICAgICAgICAgICBwb3J0OiA0NDMsXG4gICAgICAgICAgICAgIHByb3RvY29sOiAnaHR0cHMnLFxuICAgICAgICAgICAgICByZWFkVGltZW91dDogMjAsXG4gICAgICAgICAgICAgIGtlZXBhbGl2ZVRpbWVvdXQ6IDUsXG4gICAgICAgICAgICAgIHNzbFByb3RvY29sczogWydUTFN2MScsICdUTFN2MS4xJywgJ1RMU3YxLjInXSxcbiAgICAgICAgICAgICAgcGF0aDogJy9odHRwcyUzQSUyRiUyRicgKyByZXF1ZXN0LmhlYWRlcnNbJ3gtcHJlcmVuZGVyLWhvc3QnXVswXS52YWx1ZSxcbiAgICAgICAgICAgICAgY3VzdG9tSGVhZGVyczoge1xuICAgICAgICAgICAgICAgICAgICd4LXByZXJlbmRlci10b2tlbic6IFt7XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk6ICd4LXByZXJlbmRlci10b2tlbicsXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogUFJFUkVOREVSX1RPS0VOXG4gICAgICAgICAgICAgICAgICAgfV1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgfVxuICAgIH07XG59IGVsc2Uge1xuICAgIHJlcXVlc3QudXJpID0gYCR7UEFUSF9QUkVGSVh9L2luZGV4Lmh0bWxgO1xufVxuXG5yZXR1cm4gcmVxdWVzdDtcbn0gIl19
|