cdk-nextjs 0.4.1 → 0.4.3
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 +1254 -733
- package/API.md +2458 -1108
- package/README.md +220 -7
- package/docs/1k-concurrent-users-executions.png +0 -0
- package/docs/cdk-nextjs-NextjsGlobalContainers.png +0 -0
- package/docs/cdk-nextjs-NextjsGlobalFunctions.png +0 -0
- package/docs/cdk-nextjs-NextjsRegionalContainers.png +0 -0
- package/docs/cdk-nextjs-NextjsRegionalFunctions.png +0 -0
- package/docs/cdk-nextjs-cfn-exec-policy.json +27 -0
- package/docs/cdk-nextjs.drawio +147 -76
- package/docs/usage.xlsx +0 -0
- package/lib/constants.d.ts +2 -1
- package/lib/constants.js +2 -1
- package/lib/generated-structs/OptionalNextjsDistributionProps.d.ts +1 -1
- package/lib/generated-structs/OptionalNextjsDistributionProps.js +1 -1
- package/lib/index.d.ts +3 -2
- package/lib/index.js +8 -2
- package/lib/nextjs-api.d.ts +71 -0
- package/lib/nextjs-api.js +173 -0
- package/lib/nextjs-assets-deployment.js +2 -2
- package/lib/nextjs-build/nextjs-build.d.ts +1 -1
- package/lib/nextjs-build/nextjs-build.js +2 -2
- package/lib/nextjs-compute/nextjs-containers.js +1 -1
- package/lib/nextjs-compute/nextjs-functions.d.ts +3 -1
- package/lib/nextjs-compute/nextjs-functions.js +11 -10
- package/lib/nextjs-distribution.d.ts +3 -3
- package/lib/nextjs-distribution.js +3 -3
- package/lib/nextjs-file-system.js +1 -1
- package/lib/nextjs-post-deploy.js +1 -1
- package/lib/nextjs-static-assets.d.ts +0 -4
- package/lib/nextjs-static-assets.js +2 -2
- package/lib/nextjs-vpc.js +1 -1
- package/lib/root-constructs/nextjs-base-construct.d.ts +137 -0
- package/lib/root-constructs/nextjs-base-construct.js +112 -0
- package/lib/root-constructs/nextjs-global-containers.d.ts +5 -32
- package/lib/root-constructs/nextjs-global-containers.js +10 -83
- package/lib/root-constructs/nextjs-global-functions.d.ts +5 -32
- package/lib/root-constructs/nextjs-global-functions.js +12 -84
- package/lib/root-constructs/nextjs-regional-containers.d.ts +5 -21
- package/lib/root-constructs/nextjs-regional-containers.js +10 -71
- package/lib/root-constructs/nextjs-regional-functions.d.ts +37 -0
- package/lib/root-constructs/nextjs-regional-functions.js +58 -0
- package/package.json +6 -6
- package/lib/root-constructs/nextjs-base-overrides.d.ts +0 -30
- package/lib/root-constructs/nextjs-base-overrides.js +0 -3
- package/lib/root-constructs/nextjs-base-props.d.ts +0 -64
- package/lib/root-constructs/nextjs-base-props.js +0 -3
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
export interface NextjsBaseProps {
|
|
2
|
-
/**
|
|
3
|
-
* Command to generate optimized version of your Next.js app in container;
|
|
4
|
-
* @default "npm run build"
|
|
5
|
-
*/
|
|
6
|
-
readonly buildCommand?: string;
|
|
7
|
-
/**
|
|
8
|
-
* [Build context](https://docs.docker.com/build/building/context/) for
|
|
9
|
-
* `docker build`. This directory should contain your lockfile (i.e.
|
|
10
|
-
* pnpm-lock.yaml) for your Next.js app. If you're not in a monorepo, then
|
|
11
|
-
* this will be the same directory as your Next.js app. If you are in a
|
|
12
|
-
* monorepo, then this value should be the root of your monorepo. You then
|
|
13
|
-
* must pass the relative path to your Next.js app via {@link NextjsBaseProps.relativePathToPackage}
|
|
14
|
-
*
|
|
15
|
-
* Note, by default cdk-nextjs' `builder.Dockerfile` is used to build your
|
|
16
|
-
* Next.js app. You can customize this by specifying `overrides.{nextjs...}.nextjsBuildProps.builderImageProps.file`.
|
|
17
|
-
* If you override the default, then you are responsible for ensuring the
|
|
18
|
-
* Dockerfile is in the build context directory before cdk-nextjs construct
|
|
19
|
-
* is instantiated.
|
|
20
|
-
* @example join(import.meta.dirname, "..") (monorepo)
|
|
21
|
-
*/
|
|
22
|
-
readonly buildContext: string;
|
|
23
|
-
/**
|
|
24
|
-
* Path to API Route Handler that returns HTTP 200 to ensure compute health.
|
|
25
|
-
* @example "/api/health"
|
|
26
|
-
* @example
|
|
27
|
-
* // api/health/route.ts
|
|
28
|
-
* import { NextResponse } from "next/server";
|
|
29
|
-
*
|
|
30
|
-
* export function GET() {
|
|
31
|
-
* return NextResponse.json("");
|
|
32
|
-
* }
|
|
33
|
-
*/
|
|
34
|
-
readonly healthCheckPath: string;
|
|
35
|
-
/**
|
|
36
|
-
* Use this if building in monorepo. This is the relative path from
|
|
37
|
-
* {@link NextjsBaseProps.buildContext} or root workspace to nested package
|
|
38
|
-
* containing Next.js app. See example below:
|
|
39
|
-
*
|
|
40
|
-
* Let's say you have a monorepo with the following folder structure:
|
|
41
|
-
* - my-monorepo/
|
|
42
|
-
* - packages/
|
|
43
|
-
* - ui/
|
|
44
|
-
* - package.json (nested)
|
|
45
|
-
* - package.json (root)
|
|
46
|
-
*
|
|
47
|
-
* And your Next.js app directory is the ui folder. Then you would set {@link NextjsBaseProps.buildContext}
|
|
48
|
-
* to `"/absolute/path/to/my-monorepo"` and {@link NextjsBaseProps.relativePathToPackage}
|
|
49
|
-
* to `"./packages/ui"`.
|
|
50
|
-
*
|
|
51
|
-
* Note, setting {@link NextjsBaseProps.buildContext} to the root of your
|
|
52
|
-
* monorepo will invalidate container runtime (i.e. docker) build cache when any file is
|
|
53
|
-
* changed in your monorepo. This is slows down deployments. Checkout how you
|
|
54
|
-
* can use [turbo](https://turbo.build/) in [Deploying with Docker Guide](https://turbo.build/repo/docs/handbook/deploying-with-docker)
|
|
55
|
-
* in the cdk-nextjs/examples/turbo.
|
|
56
|
-
*
|
|
57
|
-
* @example "./packages/ui"
|
|
58
|
-
*/
|
|
59
|
-
readonly relativePathToPackage?: string;
|
|
60
|
-
/**
|
|
61
|
-
* @deprecated use relativePathToPackage
|
|
62
|
-
*/
|
|
63
|
-
readonly relativePathToWorkspace?: string;
|
|
64
|
-
}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWJhc2UtcHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcm9vdC1jb25zdHJ1Y3RzL25leHRqcy1iYXNlLXByb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE5leHRqc0Jhc2VQcm9wcyB7XG4gIC8qKlxuICAgKiBDb21tYW5kIHRvIGdlbmVyYXRlIG9wdGltaXplZCB2ZXJzaW9uIG9mIHlvdXIgTmV4dC5qcyBhcHAgaW4gY29udGFpbmVyO1xuICAgKiBAZGVmYXVsdCBcIm5wbSBydW4gYnVpbGRcIlxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRDb21tYW5kPzogc3RyaW5nO1xuICAvKipcbiAgICogW0J1aWxkIGNvbnRleHRdKGh0dHBzOi8vZG9jcy5kb2NrZXIuY29tL2J1aWxkL2J1aWxkaW5nL2NvbnRleHQvKSBmb3JcbiAgICogYGRvY2tlciBidWlsZGAuIFRoaXMgZGlyZWN0b3J5IHNob3VsZCBjb250YWluIHlvdXIgbG9ja2ZpbGUgKGkuZS5cbiAgICogcG5wbS1sb2NrLnlhbWwpIGZvciB5b3VyIE5leHQuanMgYXBwLiBJZiB5b3UncmUgbm90IGluIGEgbW9ub3JlcG8sIHRoZW5cbiAgICogdGhpcyB3aWxsIGJlIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB5b3VyIE5leHQuanMgYXBwLiBJZiB5b3UgYXJlIGluIGFcbiAgICogbW9ub3JlcG8sIHRoZW4gdGhpcyB2YWx1ZSBzaG91bGQgYmUgdGhlIHJvb3Qgb2YgeW91ciBtb25vcmVwby4gWW91IHRoZW5cbiAgICogbXVzdCBwYXNzIHRoZSByZWxhdGl2ZSBwYXRoIHRvIHlvdXIgTmV4dC5qcyBhcHAgdmlhIHtAbGluayBOZXh0anNCYXNlUHJvcHMucmVsYXRpdmVQYXRoVG9QYWNrYWdlfVxuICAgKlxuICAgKiBOb3RlLCBieSBkZWZhdWx0IGNkay1uZXh0anMnIGBidWlsZGVyLkRvY2tlcmZpbGVgIGlzIHVzZWQgdG8gYnVpbGQgeW91clxuICAgKiBOZXh0LmpzIGFwcC4gWW91IGNhbiBjdXN0b21pemUgdGhpcyBieSBzcGVjaWZ5aW5nIGBvdmVycmlkZXMue25leHRqcy4uLn0ubmV4dGpzQnVpbGRQcm9wcy5idWlsZGVySW1hZ2VQcm9wcy5maWxlYC5cbiAgICogSWYgeW91IG92ZXJyaWRlIHRoZSBkZWZhdWx0LCB0aGVuIHlvdSBhcmUgcmVzcG9uc2libGUgZm9yIGVuc3VyaW5nIHRoZVxuICAgKiBEb2NrZXJmaWxlIGlzIGluIHRoZSBidWlsZCBjb250ZXh0IGRpcmVjdG9yeSBiZWZvcmUgY2RrLW5leHRqcyBjb25zdHJ1Y3RcbiAgICogaXMgaW5zdGFudGlhdGVkLlxuICAgKiBAZXhhbXBsZSBqb2luKGltcG9ydC5tZXRhLmRpcm5hbWUsIFwiLi5cIikgKG1vbm9yZXBvKVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRDb250ZXh0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBQYXRoIHRvIEFQSSBSb3V0ZSBIYW5kbGVyIHRoYXQgcmV0dXJucyBIVFRQIDIwMCB0byBlbnN1cmUgY29tcHV0ZSBoZWFsdGguXG4gICAqIEBleGFtcGxlIFwiL2FwaS9oZWFsdGhcIlxuICAgKiBAZXhhbXBsZVxuICAgKiAvLyBhcGkvaGVhbHRoL3JvdXRlLnRzXG4gICAqIGltcG9ydCB7IE5leHRSZXNwb25zZSB9IGZyb20gXCJuZXh0L3NlcnZlclwiO1xuICAgKlxuICAgKiBleHBvcnQgZnVuY3Rpb24gR0VUKCkge1xuICAgKiAgIHJldHVybiBOZXh0UmVzcG9uc2UuanNvbihcIlwiKTtcbiAgICogfVxuICAgKi9cbiAgcmVhZG9ubHkgaGVhbHRoQ2hlY2tQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2UgdGhpcyBpZiBidWlsZGluZyBpbiBtb25vcmVwby4gVGhpcyBpcyB0aGUgcmVsYXRpdmUgcGF0aCBmcm9tXG4gICAqIHtAbGluayBOZXh0anNCYXNlUHJvcHMuYnVpbGRDb250ZXh0fSBvciByb290IHdvcmtzcGFjZSB0byBuZXN0ZWQgcGFja2FnZVxuICAgKiBjb250YWluaW5nIE5leHQuanMgYXBwLiBTZWUgZXhhbXBsZSBiZWxvdzpcbiAgICpcbiAgICogTGV0J3Mgc2F5IHlvdSBoYXZlIGEgbW9ub3JlcG8gd2l0aCB0aGUgZm9sbG93aW5nIGZvbGRlciBzdHJ1Y3R1cmU6XG4gICAqIC0gbXktbW9ub3JlcG8vXG4gICAqICAgLSBwYWNrYWdlcy9cbiAgICogICAgIC0gdWkvXG4gICAqICAgICAgIC0gcGFja2FnZS5qc29uIChuZXN0ZWQpXG4gICAqICAgLSBwYWNrYWdlLmpzb24gKHJvb3QpXG4gICAqXG4gICAqIEFuZCB5b3VyIE5leHQuanMgYXBwIGRpcmVjdG9yeSBpcyB0aGUgdWkgZm9sZGVyLiBUaGVuIHlvdSB3b3VsZCBzZXQge0BsaW5rIE5leHRqc0Jhc2VQcm9wcy5idWlsZENvbnRleHR9XG4gICAqIHRvIGBcIi9hYnNvbHV0ZS9wYXRoL3RvL215LW1vbm9yZXBvXCJgIGFuZCB7QGxpbmsgTmV4dGpzQmFzZVByb3BzLnJlbGF0aXZlUGF0aFRvUGFja2FnZX1cbiAgICogdG8gYFwiLi9wYWNrYWdlcy91aVwiYC5cbiAgICpcbiAgICogTm90ZSwgc2V0dGluZyB7QGxpbmsgTmV4dGpzQmFzZVByb3BzLmJ1aWxkQ29udGV4dH0gdG8gdGhlIHJvb3Qgb2YgeW91clxuICAgKiBtb25vcmVwbyB3aWxsIGludmFsaWRhdGUgY29udGFpbmVyIHJ1bnRpbWUgKGkuZS4gZG9ja2VyKSBidWlsZCBjYWNoZSB3aGVuIGFueSBmaWxlIGlzXG4gICAqIGNoYW5nZWQgaW4geW91ciBtb25vcmVwby4gVGhpcyBpcyBzbG93cyBkb3duIGRlcGxveW1lbnRzLiBDaGVja291dCBob3cgeW91XG4gICAqIGNhbiB1c2UgW3R1cmJvXShodHRwczovL3R1cmJvLmJ1aWxkLykgaW4gW0RlcGxveWluZyB3aXRoIERvY2tlciBHdWlkZV0oaHR0cHM6Ly90dXJiby5idWlsZC9yZXBvL2RvY3MvaGFuZGJvb2svZGVwbG95aW5nLXdpdGgtZG9ja2VyKVxuICAgKiBpbiB0aGUgY2RrLW5leHRqcy9leGFtcGxlcy90dXJiby5cbiAgICpcbiAgICogQGV4YW1wbGUgXCIuL3BhY2thZ2VzL3VpXCJcbiAgICovXG4gIHJlYWRvbmx5IHJlbGF0aXZlUGF0aFRvUGFja2FnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSByZWxhdGl2ZVBhdGhUb1BhY2thZ2VcbiAgICovXG4gIHJlYWRvbmx5IHJlbGF0aXZlUGF0aFRvV29ya3NwYWNlPzogc3RyaW5nO1xufVxuIl19
|