UNPKG

1.35 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.Prerender = void 0;
4class Prerender {
5 constructor({ expiration, lambda, fallback, group, bypassToken, }) {
6 this.type = 'Prerender';
7 this.expiration = expiration;
8 this.lambda = lambda;
9 if (typeof group !== 'undefined' &&
10 (group <= 0 || !Number.isInteger(group))) {
11 throw new Error('The `group` argument for `Prerender` needs to be a natural number.');
12 }
13 this.group = group;
14 if (bypassToken == null) {
15 this.bypassToken = null;
16 }
17 else if (typeof bypassToken === 'string') {
18 if (bypassToken.length < 32) {
19 // Enforce 128 bits of entropy for safety reasons (UUIDv4 size)
20 throw new Error('The `bypassToken` argument for `Prerender` must be 32 characters or more.');
21 }
22 this.bypassToken = bypassToken;
23 }
24 else {
25 throw new Error('The `bypassToken` argument for `Prerender` must be a `string`.');
26 }
27 if (typeof fallback === 'undefined') {
28 throw new Error('The `fallback` argument for `Prerender` needs to be a `FileBlob`, `FileFsRef`, `FileRef`, or null.');
29 }
30 this.fallback = fallback;
31 }
32}
33exports.Prerender = Prerender;