cdk-nextjs 0.6.1 → 0.7.0
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 +2467 -2714
- package/.jsii.tabl.json +1 -1
- package/API.md +1725 -1909
- package/CLAUDE.md +2 -1
- package/README.md +429 -130
- package/assets/lambdas/post-deploy/post-deploy.lambda/index.js +152 -170
- package/assets/lambdas/redeploy-stage/redeploy-stage.lambda/index.js +875 -0
- package/docs/adapter-runtime.md +185 -0
- package/docs/breaking-changes.md +687 -4
- package/docs/caching-guide.md +156 -112
- package/docs/cdk-nextjs-cfn-exec-policy.json +2 -1
- package/docs/development-guide.md +1 -1
- package/docs/harness-coverage.md +598 -0
- package/docs/init-cache-deployment.md +32 -1
- package/docs/next-build-output-guide.md +30 -20
- package/examples/README.md +5 -1
- package/lib/adapter/__fixtures__/app-playground-base-path.json +4926 -0
- package/lib/adapter/__fixtures__/app-playground.json +4917 -0
- package/lib/adapter/__fixtures__/pages-i18n.json +1728 -0
- package/lib/adapter/adapter.mjs +1548 -185
- package/lib/adapter/adapter.test.js +106 -0
- package/lib/adapter/aws-cache-store.d.ts +489 -0
- package/lib/adapter/aws-cache-store.js +1004 -0
- package/lib/adapter/aws-cache-store.test.d.ts +1 -0
- package/lib/adapter/aws-cache-store.test.js +361 -0
- package/lib/adapter/build-outputs.d.ts +80 -0
- package/lib/adapter/build-outputs.js +852 -0
- package/lib/adapter/build-outputs.test.d.ts +1 -0
- package/lib/adapter/build-outputs.test.js +861 -0
- package/lib/adapter/cache-handler.d.ts +9 -2
- package/lib/adapter/cache-handler.js +72 -96
- package/lib/adapter/cache-handler.mjs +18956 -17774
- package/lib/adapter/cache-handler.test.js +263 -31
- package/lib/adapter/cache-kinds.d.ts +32 -0
- package/lib/adapter/cache-kinds.js +35 -0
- package/lib/adapter/cache-kinds.test.d.ts +1 -0
- package/lib/adapter/cache-kinds.test.js +69 -0
- package/lib/adapter/cache-utils.d.ts +90 -0
- package/lib/adapter/cache-utils.js +199 -4
- package/lib/adapter/cache-utils.test.d.ts +1 -0
- package/lib/adapter/cache-utils.test.js +179 -0
- package/lib/adapter/function-groups.d.ts +215 -0
- package/lib/adapter/function-groups.js +1099 -0
- package/lib/adapter/function-groups.test.d.ts +1 -0
- package/lib/adapter/function-groups.test.js +743 -0
- package/lib/adapter/init-cache.d.ts +6 -0
- package/lib/adapter/init-cache.js +245 -0
- package/lib/adapter/init-cache.test.d.ts +1 -0
- package/lib/adapter/init-cache.test.js +137 -0
- package/lib/adapter/local-file-cache-handler.d.ts +23 -0
- package/lib/adapter/local-file-cache-handler.js +52 -1
- package/lib/adapter/memory-cache-handler.d.ts +26 -17
- package/lib/adapter/memory-cache-handler.js +32 -50
- package/lib/adapter/memory-cache-handler.test.js +105 -85
- package/lib/adapter/s3-cache-handler.d.ts +179 -40
- package/lib/adapter/s3-cache-handler.js +807 -277
- package/lib/adapter/s3-cache-handler.test.js +1186 -31
- package/lib/adapter/use-cache-common.d.ts +90 -0
- package/lib/adapter/use-cache-common.js +250 -0
- package/lib/adapter/use-cache-common.test.d.ts +1 -0
- package/lib/adapter/use-cache-common.test.js +646 -0
- package/lib/adapter/use-cache-default-handler.d.ts +24 -0
- package/lib/adapter/use-cache-default-handler.js +90 -0
- package/lib/adapter/use-cache-default-handler.mjs +38645 -0
- package/lib/adapter/use-cache-handlers.test.d.ts +1 -0
- package/lib/adapter/use-cache-handlers.test.js +349 -0
- package/lib/adapter/use-cache-remote-handler.d.ts +26 -0
- package/lib/adapter/use-cache-remote-handler.js +186 -0
- package/lib/{image-optimization/handler.mjs → adapter/use-cache-remote-handler.mjs} +33572 -38798
- package/lib/generated-structs/OptionalNextjsApiProps.d.ts +59 -0
- package/lib/generated-structs/OptionalNextjsApiProps.js +3 -0
- package/lib/generated-structs/OptionalNextjsCacheProps.d.ts +15 -6
- package/lib/generated-structs/OptionalNextjsCacheProps.js +1 -1
- package/lib/generated-structs/OptionalNextjsContainersProps.d.ts +25 -11
- package/lib/generated-structs/OptionalNextjsContainersProps.js +1 -1
- package/lib/generated-structs/OptionalNextjsDistributionProps.d.ts +31 -9
- package/lib/generated-structs/OptionalNextjsDistributionProps.js +1 -1
- package/lib/generated-structs/OptionalNextjsPostDeployProps.d.ts +13 -0
- package/lib/generated-structs/OptionalNextjsPostDeployProps.js +1 -1
- package/lib/generated-structs/OptionalPostDeployCustomResourceProperties.d.ts +11 -2
- package/lib/generated-structs/OptionalPostDeployCustomResourceProperties.js +1 -1
- package/lib/index.d.ts +6 -7
- package/lib/index.js +2 -4
- package/lib/lambdas/post-deploy/post-deploy.lambda.js +3 -2
- package/lib/lambdas/post-deploy/prune-cache-bucket.d.ts +7 -3
- package/lib/lambdas/post-deploy/prune-cache-bucket.js +57 -71
- package/lib/lambdas/post-deploy/prune-cache-bucket.test.d.ts +1 -0
- package/lib/lambdas/post-deploy/prune-cache-bucket.test.js +114 -0
- package/lib/lambdas/post-deploy/prune-revalidation-table.d.ts +1 -0
- package/lib/lambdas/post-deploy/prune-revalidation-table.js +23 -31
- package/lib/lambdas/post-deploy/prune-revalidation-table.test.d.ts +1 -0
- package/lib/lambdas/post-deploy/prune-revalidation-table.test.js +71 -0
- package/lib/lambdas/post-deploy/prune-s3.d.ts +19 -3
- package/lib/lambdas/post-deploy/prune-s3.js +54 -15
- package/lib/lambdas/post-deploy/prune-s3.test.d.ts +1 -0
- package/lib/lambdas/post-deploy/prune-s3.test.js +255 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage-function.d.ts +13 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage-function.js +55 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage.d.ts +24 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage.js +68 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage.lambda.d.ts +20 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage.lambda.js +24 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage.test.d.ts +1 -0
- package/lib/lambdas/redeploy-stage/redeploy-stage.test.js +93 -0
- package/lib/nextjs-api.d.ts +107 -18
- package/lib/nextjs-api.js +349 -39
- package/lib/nextjs-api.test.js +582 -1
- package/lib/nextjs-build/global-containers.Dockerfile +15 -10
- package/lib/nextjs-build/nextjs-build.d.ts +339 -63
- package/lib/nextjs-build/nextjs-build.js +684 -327
- package/lib/nextjs-build/nextjs-build.test.d.ts +1 -0
- package/lib/nextjs-build/nextjs-build.test.js +412 -0
- package/lib/nextjs-build/patch-fetch.js +1 -1
- package/lib/nextjs-build/patch-fetch.test.js +166 -11
- package/lib/nextjs-build/regional-containers.Dockerfile +17 -10
- package/lib/nextjs-cache.d.ts +82 -4
- package/lib/nextjs-cache.js +186 -10
- package/lib/nextjs-cache.test.js +176 -1
- package/lib/nextjs-compute/nextjs-compute-base-props.d.ts +21 -8
- package/lib/nextjs-compute/nextjs-compute-base-props.js +41 -1
- package/lib/nextjs-compute/nextjs-compute-base-props.test.d.ts +1 -0
- package/lib/nextjs-compute/nextjs-compute-base-props.test.js +44 -0
- package/lib/nextjs-compute/nextjs-containers.d.ts +19 -0
- package/lib/nextjs-compute/nextjs-containers.js +57 -20
- package/lib/nextjs-compute/nextjs-functions.d.ts +122 -7
- package/lib/nextjs-compute/nextjs-functions.js +113 -67
- package/lib/nextjs-compute/nextjs-functions.test.d.ts +1 -0
- package/lib/nextjs-compute/nextjs-functions.test.js +99 -0
- package/lib/nextjs-distribution.d.ts +194 -23
- package/lib/nextjs-distribution.js +535 -62
- package/lib/nextjs-distribution.test.d.ts +1 -0
- package/lib/nextjs-distribution.test.js +697 -0
- package/lib/nextjs-post-deploy.d.ts +23 -3
- package/lib/nextjs-post-deploy.js +14 -10
- package/lib/nextjs-post-deploy.test.d.ts +1 -0
- package/lib/nextjs-post-deploy.test.js +34 -0
- package/lib/nextjs-static-assets.d.ts +23 -4
- package/lib/nextjs-static-assets.js +29 -6
- package/lib/nextjs-static-assets.test.js +20 -1
- package/lib/root-constructs/nextjs-base-construct.d.ts +105 -45
- package/lib/root-constructs/nextjs-base-construct.js +144 -34
- package/lib/root-constructs/nextjs-global-containers.d.ts +18 -20
- package/lib/root-constructs/nextjs-global-containers.js +20 -70
- package/lib/root-constructs/nextjs-global-functions.d.ts +26 -28
- package/lib/root-constructs/nextjs-global-functions.js +52 -69
- package/lib/root-constructs/nextjs-regional-containers.d.ts +25 -5
- package/lib/root-constructs/nextjs-regional-containers.js +17 -15
- package/lib/root-constructs/nextjs-regional-functions.d.ts +22 -18
- package/lib/root-constructs/nextjs-regional-functions.js +8 -25
- package/lib/runtime/api-gateway-path.d.ts +34 -0
- package/lib/runtime/api-gateway-path.js +71 -0
- package/lib/runtime/api-gateway-path.test.d.ts +1 -0
- package/lib/runtime/api-gateway-path.test.js +65 -0
- package/lib/runtime/case-redirect.d.ts +22 -0
- package/lib/runtime/case-redirect.js +63 -0
- package/lib/runtime/case-redirect.test.d.ts +1 -0
- package/lib/runtime/case-redirect.test.js +32 -0
- package/lib/runtime/core.d.ts +234 -0
- package/lib/runtime/core.js +1213 -0
- package/lib/runtime/core.test.d.ts +1 -0
- package/lib/runtime/core.test.js +1678 -0
- package/lib/runtime/deployment-root.d.ts +13 -0
- package/lib/runtime/deployment-root.js +29 -0
- package/lib/runtime/dispatch.d.ts +331 -0
- package/lib/runtime/dispatch.js +751 -0
- package/lib/runtime/dispatch.test.d.ts +1 -0
- package/lib/runtime/dispatch.test.js +853 -0
- package/lib/runtime/entrypoints.d.ts +57 -0
- package/lib/runtime/entrypoints.js +115 -0
- package/lib/runtime/http/abort-signal.d.ts +6 -0
- package/lib/runtime/http/abort-signal.js +19 -0
- package/lib/runtime/http/abort-signal.test.d.ts +1 -0
- package/lib/runtime/http/abort-signal.test.js +49 -0
- package/lib/runtime/http/node-server.d.ts +38 -0
- package/lib/runtime/http/node-server.js +99 -0
- package/lib/runtime/http/node-server.test.d.ts +1 -0
- package/lib/runtime/http/node-server.test.js +96 -0
- package/lib/runtime/http/node-sink.d.ts +16 -0
- package/lib/runtime/http/node-sink.js +48 -0
- package/lib/runtime/http/node-sink.test.d.ts +1 -0
- package/lib/runtime/http/node-sink.test.js +66 -0
- package/lib/runtime/http/request.d.ts +62 -0
- package/lib/runtime/http/request.js +134 -0
- package/lib/runtime/http/request.test.d.ts +1 -0
- package/lib/runtime/http/request.test.js +103 -0
- package/lib/runtime/http/response.d.ts +77 -0
- package/lib/runtime/http/response.js +229 -0
- package/lib/runtime/http/response.test.d.ts +1 -0
- package/lib/runtime/http/response.test.js +178 -0
- package/lib/runtime/http/sink.d.ts +73 -0
- package/lib/runtime/http/sink.js +188 -0
- package/lib/runtime/http/sink.test.d.ts +1 -0
- package/lib/runtime/http/sink.test.js +257 -0
- package/lib/runtime/image-utils.d.ts +78 -0
- package/lib/runtime/image-utils.js +129 -0
- package/lib/runtime/image-utils.test.d.ts +1 -0
- package/lib/runtime/image-utils.test.js +237 -0
- package/lib/runtime/image.d.ts +76 -0
- package/lib/runtime/image.js +296 -0
- package/lib/runtime/image.test.d.ts +1 -0
- package/lib/runtime/image.test.js +405 -0
- package/lib/runtime/lambda-event.d.ts +4 -0
- package/lib/runtime/lambda-event.js +113 -0
- package/lib/runtime/lambda-event.test.d.ts +1 -0
- package/lib/runtime/lambda-event.test.js +119 -0
- package/lib/runtime/lambda.mjs +41595 -0
- package/lib/runtime/load-module.d.ts +8 -0
- package/lib/runtime/load-module.js +35 -0
- package/lib/runtime/manifest.d.ts +215 -0
- package/lib/runtime/manifest.js +118 -0
- package/lib/runtime/middleware.d.ts +43 -0
- package/lib/runtime/middleware.js +113 -0
- package/lib/runtime/middleware.test.d.ts +1 -0
- package/lib/runtime/middleware.test.js +259 -0
- package/lib/runtime/next-modules.d.ts +55 -0
- package/lib/runtime/next-modules.js +124 -0
- package/lib/runtime/next-modules.test.d.ts +1 -0
- package/lib/runtime/next-modules.test.js +34 -0
- package/lib/runtime/public-files.d.ts +32 -0
- package/lib/runtime/public-files.js +117 -0
- package/lib/runtime/public-files.test.d.ts +1 -0
- package/lib/runtime/public-files.test.js +97 -0
- package/lib/runtime/server.mjs +41588 -0
- package/lib/runtime/static-files.d.ts +50 -0
- package/lib/runtime/static-files.js +266 -0
- package/lib/runtime/static-files.test.d.ts +1 -0
- package/lib/runtime/static-files.test.js +118 -0
- package/lib/runtime/util.d.ts +28 -0
- package/lib/runtime/util.js +79 -0
- package/lib/utils/base-path.d.ts +123 -11
- package/lib/utils/base-path.js +276 -39
- package/lib/utils/base-path.test.js +275 -50
- package/lib/utils/get-architecture.d.ts +7 -8
- package/lib/utils/get-architecture.js +12 -13
- package/lib/utils/zip-directory.d.ts +14 -0
- package/lib/utils/zip-directory.js +121 -0
- package/lib/utils/zip-directory.test.d.ts +1 -0
- package/lib/utils/zip-directory.test.js +99 -0
- package/package.json +22 -3
- package/scripts/capture-adapter-fixture.mjs +325 -0
- package/scripts/e2e-deploy.sh +398 -0
- package/scripts/e2e-harness/README.md +707 -0
- package/scripts/e2e-harness/app.js +370 -0
- package/scripts/e2e-harness/common.sh +249 -0
- package/scripts/e2e-harness/screen.mjs +302 -0
- package/scripts/e2e-harness/stage-proxy.mjs +145 -0
- package/scripts/e2e-harness/type-filters.mjs +47 -0
- package/scripts/e2e-logs.sh +75 -0
- package/scripts/e2e-offline.sh +91 -0
- package/scripts/e2e-sweep.sh +370 -0
- package/scripts/e2e-warm.sh +114 -0
- package/scripts/zero-config-build.mjs +418 -0
- package/docs/1k-concurrent-users-executions.png +0 -0
- package/docs/plans/adapter-runtime-release.md +0 -362
- package/docs/plans/phase-0-image-function-opt-in.md +0 -295
- package/lib/generated-structs/OptionalDockerImageFunctionProps.d.ts +0 -425
- package/lib/generated-structs/OptionalDockerImageFunctionProps.js +0 -3
- package/lib/image-optimization/handler-utils.d.ts +0 -34
- package/lib/image-optimization/handler-utils.js +0 -83
- package/lib/image-optimization/handler-utils.test.js +0 -178
- package/lib/nextjs-build/functions.Dockerfile +0 -31
- package/lib/nextjs-compute/nextjs-image-function.d.ts +0 -53
- package/lib/nextjs-compute/nextjs-image-function.js +0 -59
- package/lib/utils/experimental-flags.d.ts +0 -24
- package/lib/utils/experimental-flags.js +0 -30
- /package/lib/{image-optimization/handler-utils.test.d.ts → adapter/adapter.test.d.ts} +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CacheHandler } from "next/dist/server/lib/cache-handlers/types";
|
|
2
|
+
import { TrackedTagMarkers } from "./aws-cache-store";
|
|
3
|
+
export interface DefaultUseCacheHandlerOptions {
|
|
4
|
+
/** Tag state; the process-wide one from the environment by default. */
|
|
5
|
+
tags?: TrackedTagMarkers;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* A `'use cache'` handler with the semantics of Next.js's built-in one
|
|
9
|
+
* (`next/dist/server/lib/cache-handlers/default.js`) and tags shared across
|
|
10
|
+
* instances.
|
|
11
|
+
*
|
|
12
|
+
* An equivalent rather than a wrapper: the built-in handler judges tags against
|
|
13
|
+
* the module-level `tagsManifest` of whichever copy of `next` it was required
|
|
14
|
+
* from, and this bundle cannot be sure of reaching the copy the server loaded
|
|
15
|
+
* (the same reason `S3CacheHandler` reads that manifest from the module cache
|
|
16
|
+
* instead of requiring it). Keeping the tag state here removes the question.
|
|
17
|
+
*
|
|
18
|
+
* As in the built-in handler, an entry is dropped once it is past `revalidate`
|
|
19
|
+
* rather than served stale: an in-memory entry is likely evicted before a
|
|
20
|
+
* background refresh would pay off.
|
|
21
|
+
*/
|
|
22
|
+
export declare function createDefaultUseCacheHandler(options?: DefaultUseCacheHandlerOptions): CacheHandler;
|
|
23
|
+
declare const _default: CacheHandler;
|
|
24
|
+
export default _default;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createDefaultUseCacheHandler = createDefaultUseCacheHandler;
|
|
7
|
+
/*
|
|
8
|
+
The `cacheHandlers.default` handler, for plain `'use cache'`.
|
|
9
|
+
See: https://nextjs.org/docs/app/api-reference/config/next-config-js/cacheHandlers
|
|
10
|
+
|
|
11
|
+
Storage stays in memory, per instance, as Next.js intends for `'use cache'`
|
|
12
|
+
(`'use cache: remote'` is the shared one). What this changes is tags: Next.js's
|
|
13
|
+
built-in handler keeps them in a process-local map, so a `revalidateTag` on
|
|
14
|
+
one instance left every other instance serving the revalidated entry. Here
|
|
15
|
+
they go through the revalidation table's marker rows. See
|
|
16
|
+
`TrackedTagMarkers`.
|
|
17
|
+
*/
|
|
18
|
+
/* eslint-disable import/no-extraneous-dependencies */
|
|
19
|
+
const debug_1 = __importDefault(require("debug"));
|
|
20
|
+
const use_cache_common_1 = require("./use-cache-common");
|
|
21
|
+
/**
|
|
22
|
+
* A `'use cache'` handler with the semantics of Next.js's built-in one
|
|
23
|
+
* (`next/dist/server/lib/cache-handlers/default.js`) and tags shared across
|
|
24
|
+
* instances.
|
|
25
|
+
*
|
|
26
|
+
* An equivalent rather than a wrapper: the built-in handler judges tags against
|
|
27
|
+
* the module-level `tagsManifest` of whichever copy of `next` it was required
|
|
28
|
+
* from, and this bundle cannot be sure of reaching the copy the server loaded
|
|
29
|
+
* (the same reason `S3CacheHandler` reads that manifest from the module cache
|
|
30
|
+
* instead of requiring it). Keeping the tag state here removes the question.
|
|
31
|
+
*
|
|
32
|
+
* As in the built-in handler, an entry is dropped once it is past `revalidate`
|
|
33
|
+
* rather than served stale: an in-memory entry is likely evicted before a
|
|
34
|
+
* background refresh would pay off.
|
|
35
|
+
*/
|
|
36
|
+
function createDefaultUseCacheHandler(options = {}) {
|
|
37
|
+
const tags = options.tags ?? (0, use_cache_common_1.sharedTagManifest)();
|
|
38
|
+
const memory = new use_cache_common_1.EntryLru((0, use_cache_common_1.numberFromEnv)("CDK_NEXTJS_USE_CACHE_MEMORY_BYTES", use_cache_common_1.DEFAULT_MEMORY_BYTES));
|
|
39
|
+
const pending = new use_cache_common_1.PendingSets();
|
|
40
|
+
const debug = (0, debug_1.default)("cdk-nextjs:cache-handler:use-cache:default");
|
|
41
|
+
return {
|
|
42
|
+
async get(cacheKey) {
|
|
43
|
+
await pending.wait(cacheKey);
|
|
44
|
+
const stored = memory.get(cacheKey);
|
|
45
|
+
if (!stored) {
|
|
46
|
+
debug(`MISS ${cacheKey}`);
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
if ((0, use_cache_common_1.now)() > stored.timestamp + stored.revalidate * 1000) {
|
|
50
|
+
debug(`EXPIRED ${cacheKey}`);
|
|
51
|
+
memory.delete(cacheKey);
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
await tags.ensure(stored.tags);
|
|
55
|
+
const state = tags.state(stored.tags, stored.timestamp);
|
|
56
|
+
if (state === "expired") {
|
|
57
|
+
debug(`EXPIRED BY TAG ${cacheKey}`);
|
|
58
|
+
memory.delete(cacheKey);
|
|
59
|
+
return undefined;
|
|
60
|
+
}
|
|
61
|
+
debug(`HIT ${cacheKey}${state === "stale" ? " (stale tag)" : ""}`);
|
|
62
|
+
// `revalidate: -1` is how the built-in handler reports a stale tag: the
|
|
63
|
+
// wrapper serves the entry and regenerates it in the background.
|
|
64
|
+
return (0, use_cache_common_1.cacheEntryOf)(stored, state === "stale" ? -1 : stored.revalidate);
|
|
65
|
+
},
|
|
66
|
+
async set(cacheKey, pendingEntry) {
|
|
67
|
+
const done = pending.begin(cacheKey);
|
|
68
|
+
try {
|
|
69
|
+
const stored = await (0, use_cache_common_1.storedEntryOf)(pendingEntry);
|
|
70
|
+
if ((0, use_cache_common_1.isDynamicEntry)(stored)) {
|
|
71
|
+
debug(`SKIP dynamic entry ${cacheKey}`);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
memory.set(cacheKey, stored);
|
|
75
|
+
tags.track(stored.tags);
|
|
76
|
+
debug(`SET ${cacheKey}`);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
// The stream errored: store nothing rather than a partial entry.
|
|
80
|
+
debug(`SET FAILED ${cacheKey}`, error);
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
done();
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
...(0, use_cache_common_1.tagMethods)(tags),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
exports.default = (0, use_cache_common_1.lazyHandler)(() => createDefaultUseCacheHandler());
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWNhY2hlLWRlZmF1bHQtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hZGFwdGVyL3VzZS1jYWNoZS1kZWZhdWx0LWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFvREEsb0VBNERDO0FBaEhEOzs7Ozs7Ozs7O0VBVUU7QUFDRixzREFBc0Q7QUFDdEQsa0RBQTZCO0FBTTdCLHlEQVk0QjtBQU81Qjs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILFNBQWdCLDRCQUE0QixDQUMxQyxVQUF5QyxFQUFFO0lBRTNDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBQSxvQ0FBaUIsR0FBRSxDQUFDO0lBQ2pELE1BQU0sTUFBTSxHQUFHLElBQUksMkJBQVEsQ0FDekIsSUFBQSxnQ0FBYSxFQUFDLG1DQUFtQyxFQUFFLHVDQUFvQixDQUFDLENBQ3pFLENBQUM7SUFDRixNQUFNLE9BQU8sR0FBRyxJQUFJLDhCQUFXLEVBQUUsQ0FBQztJQUNsQyxNQUFNLEtBQUssR0FBRyxJQUFBLGVBQVEsRUFBQyw0Q0FBNEMsQ0FBQyxDQUFDO0lBRXJFLE9BQU87UUFDTCxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQWdCO1lBQ3hCLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM3QixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDWixLQUFLLENBQUMsUUFBUSxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUMxQixPQUFPLFNBQVMsQ0FBQztZQUNuQixDQUFDO1lBQ0QsSUFBSSxJQUFBLHNCQUFHLEdBQUUsR0FBRyxNQUFNLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxFQUFFLENBQUM7Z0JBQ3hELEtBQUssQ0FBQyxXQUFXLFFBQVEsRUFBRSxDQUFDLENBQUM7Z0JBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hCLE9BQU8sU0FBUyxDQUFDO1lBQ25CLENBQUM7WUFDRCxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9CLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3hCLEtBQUssQ0FBQyxrQkFBa0IsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFDcEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDeEIsT0FBTyxTQUFTLENBQUM7WUFDbkIsQ0FBQztZQUNELEtBQUssQ0FBQyxPQUFPLFFBQVEsR0FBRyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkUsd0VBQXdFO1lBQ3hFLGlFQUFpRTtZQUNqRSxPQUFPLElBQUEsK0JBQVksRUFBQyxNQUFNLEVBQUUsS0FBSyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsS0FBSyxDQUFDLEdBQUcsQ0FDUCxRQUFnQixFQUNoQixZQUFpQztZQUVqQyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQztnQkFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUEsZ0NBQWEsRUFBQyxZQUFZLENBQUMsQ0FBQztnQkFDakQsSUFBSSxJQUFBLGlDQUFjLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztvQkFDM0IsS0FBSyxDQUFDLHNCQUFzQixRQUFRLEVBQUUsQ0FBQyxDQUFDO29CQUN4QyxPQUFPO2dCQUNULENBQUM7Z0JBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN4QixLQUFLLENBQUMsT0FBTyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQzNCLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLGlFQUFpRTtnQkFDakUsS0FBSyxDQUFDLGNBQWMsUUFBUSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDekMsQ0FBQztvQkFBUyxDQUFDO2dCQUNULElBQUksRUFBRSxDQUFDO1lBQ1QsQ0FBQztRQUNILENBQUM7UUFFRCxHQUFHLElBQUEsNkJBQVUsRUFBQyxJQUFJLENBQUM7S0FDcEIsQ0FBQztBQUNKLENBQUM7QUFFRCxrQkFBZSxJQUFBLDhCQUFXLEVBQUMsR0FBRyxFQUFFLENBQUMsNEJBQTRCLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgVGhlIGBjYWNoZUhhbmRsZXJzLmRlZmF1bHRgIGhhbmRsZXIsIGZvciBwbGFpbiBgJ3VzZSBjYWNoZSdgLlxuICBTZWU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL2FwcC9hcGktcmVmZXJlbmNlL2NvbmZpZy9uZXh0LWNvbmZpZy1qcy9jYWNoZUhhbmRsZXJzXG5cbiAgU3RvcmFnZSBzdGF5cyBpbiBtZW1vcnksIHBlciBpbnN0YW5jZSwgYXMgTmV4dC5qcyBpbnRlbmRzIGZvciBgJ3VzZSBjYWNoZSdgXG4gIChgJ3VzZSBjYWNoZTogcmVtb3RlJ2AgaXMgdGhlIHNoYXJlZCBvbmUpLiBXaGF0IHRoaXMgY2hhbmdlcyBpcyB0YWdzOiBOZXh0LmpzJ3NcbiAgYnVpbHQtaW4gaGFuZGxlciBrZWVwcyB0aGVtIGluIGEgcHJvY2Vzcy1sb2NhbCBtYXAsIHNvIGEgYHJldmFsaWRhdGVUYWdgIG9uXG4gIG9uZSBpbnN0YW5jZSBsZWZ0IGV2ZXJ5IG90aGVyIGluc3RhbmNlIHNlcnZpbmcgdGhlIHJldmFsaWRhdGVkIGVudHJ5LiBIZXJlXG4gIHRoZXkgZ28gdGhyb3VnaCB0aGUgcmV2YWxpZGF0aW9uIHRhYmxlJ3MgbWFya2VyIHJvd3MuIFNlZVxuICBgVHJhY2tlZFRhZ01hcmtlcnNgLlxuKi9cbi8qIGVzbGludC1kaXNhYmxlIGltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llcyAqL1xuaW1wb3J0IGdldERlYnVnIGZyb20gXCJkZWJ1Z1wiO1xuaW1wb3J0IHR5cGUge1xuICBDYWNoZUVudHJ5LFxuICBDYWNoZUhhbmRsZXIsXG59IGZyb20gXCJuZXh0L2Rpc3Qvc2VydmVyL2xpYi9jYWNoZS1oYW5kbGVycy90eXBlc1wiO1xuaW1wb3J0IHsgVHJhY2tlZFRhZ01hcmtlcnMgfSBmcm9tIFwiLi9hd3MtY2FjaGUtc3RvcmVcIjtcbmltcG9ydCB7XG4gIGNhY2hlRW50cnlPZixcbiAgREVGQVVMVF9NRU1PUllfQllURVMsXG4gIEVudHJ5THJ1LFxuICBpc0R5bmFtaWNFbnRyeSxcbiAgbGF6eUhhbmRsZXIsXG4gIG5vdyxcbiAgbnVtYmVyRnJvbUVudixcbiAgUGVuZGluZ1NldHMsXG4gIHNoYXJlZFRhZ01hbmlmZXN0LFxuICBzdG9yZWRFbnRyeU9mLFxuICB0YWdNZXRob2RzLFxufSBmcm9tIFwiLi91c2UtY2FjaGUtY29tbW9uXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVmYXVsdFVzZUNhY2hlSGFuZGxlck9wdGlvbnMge1xuICAvKiogVGFnIHN0YXRlOyB0aGUgcHJvY2Vzcy13aWRlIG9uZSBmcm9tIHRoZSBlbnZpcm9ubWVudCBieSBkZWZhdWx0LiAqL1xuICB0YWdzPzogVHJhY2tlZFRhZ01hcmtlcnM7XG59XG5cbi8qKlxuICogQSBgJ3VzZSBjYWNoZSdgIGhhbmRsZXIgd2l0aCB0aGUgc2VtYW50aWNzIG9mIE5leHQuanMncyBidWlsdC1pbiBvbmVcbiAqIChgbmV4dC9kaXN0L3NlcnZlci9saWIvY2FjaGUtaGFuZGxlcnMvZGVmYXVsdC5qc2ApIGFuZCB0YWdzIHNoYXJlZCBhY3Jvc3NcbiAqIGluc3RhbmNlcy5cbiAqXG4gKiBBbiBlcXVpdmFsZW50IHJhdGhlciB0aGFuIGEgd3JhcHBlcjogdGhlIGJ1aWx0LWluIGhhbmRsZXIganVkZ2VzIHRhZ3MgYWdhaW5zdFxuICogdGhlIG1vZHVsZS1sZXZlbCBgdGFnc01hbmlmZXN0YCBvZiB3aGljaGV2ZXIgY29weSBvZiBgbmV4dGAgaXQgd2FzIHJlcXVpcmVkXG4gKiBmcm9tLCBhbmQgdGhpcyBidW5kbGUgY2Fubm90IGJlIHN1cmUgb2YgcmVhY2hpbmcgdGhlIGNvcHkgdGhlIHNlcnZlciBsb2FkZWRcbiAqICh0aGUgc2FtZSByZWFzb24gYFMzQ2FjaGVIYW5kbGVyYCByZWFkcyB0aGF0IG1hbmlmZXN0IGZyb20gdGhlIG1vZHVsZSBjYWNoZVxuICogaW5zdGVhZCBvZiByZXF1aXJpbmcgaXQpLiBLZWVwaW5nIHRoZSB0YWcgc3RhdGUgaGVyZSByZW1vdmVzIHRoZSBxdWVzdGlvbi5cbiAqXG4gKiBBcyBpbiB0aGUgYnVpbHQtaW4gaGFuZGxlciwgYW4gZW50cnkgaXMgZHJvcHBlZCBvbmNlIGl0IGlzIHBhc3QgYHJldmFsaWRhdGVgXG4gKiByYXRoZXIgdGhhbiBzZXJ2ZWQgc3RhbGU6IGFuIGluLW1lbW9yeSBlbnRyeSBpcyBsaWtlbHkgZXZpY3RlZCBiZWZvcmUgYVxuICogYmFja2dyb3VuZCByZWZyZXNoIHdvdWxkIHBheSBvZmYuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZWZhdWx0VXNlQ2FjaGVIYW5kbGVyKFxuICBvcHRpb25zOiBEZWZhdWx0VXNlQ2FjaGVIYW5kbGVyT3B0aW9ucyA9IHt9LFxuKTogQ2FjaGVIYW5kbGVyIHtcbiAgY29uc3QgdGFncyA9IG9wdGlvbnMudGFncyA/PyBzaGFyZWRUYWdNYW5pZmVzdCgpO1xuICBjb25zdCBtZW1vcnkgPSBuZXcgRW50cnlMcnUoXG4gICAgbnVtYmVyRnJvbUVudihcIkNES19ORVhUSlNfVVNFX0NBQ0hFX01FTU9SWV9CWVRFU1wiLCBERUZBVUxUX01FTU9SWV9CWVRFUyksXG4gICk7XG4gIGNvbnN0IHBlbmRpbmcgPSBuZXcgUGVuZGluZ1NldHMoKTtcbiAgY29uc3QgZGVidWcgPSBnZXREZWJ1ZyhcImNkay1uZXh0anM6Y2FjaGUtaGFuZGxlcjp1c2UtY2FjaGU6ZGVmYXVsdFwiKTtcblxuICByZXR1cm4ge1xuICAgIGFzeW5jIGdldChjYWNoZUtleTogc3RyaW5nKTogUHJvbWlzZTxDYWNoZUVudHJ5IHwgdW5kZWZpbmVkPiB7XG4gICAgICBhd2FpdCBwZW5kaW5nLndhaXQoY2FjaGVLZXkpO1xuICAgICAgY29uc3Qgc3RvcmVkID0gbWVtb3J5LmdldChjYWNoZUtleSk7XG4gICAgICBpZiAoIXN0b3JlZCkge1xuICAgICAgICBkZWJ1ZyhgTUlTUyAke2NhY2hlS2V5fWApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgaWYgKG5vdygpID4gc3RvcmVkLnRpbWVzdGFtcCArIHN0b3JlZC5yZXZhbGlkYXRlICogMTAwMCkge1xuICAgICAgICBkZWJ1ZyhgRVhQSVJFRCAke2NhY2hlS2V5fWApO1xuICAgICAgICBtZW1vcnkuZGVsZXRlKGNhY2hlS2V5KTtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGF3YWl0IHRhZ3MuZW5zdXJlKHN0b3JlZC50YWdzKTtcbiAgICAgIGNvbnN0IHN0YXRlID0gdGFncy5zdGF0ZShzdG9yZWQudGFncywgc3RvcmVkLnRpbWVzdGFtcCk7XG4gICAgICBpZiAoc3RhdGUgPT09IFwiZXhwaXJlZFwiKSB7XG4gICAgICAgIGRlYnVnKGBFWFBJUkVEIEJZIFRBRyAke2NhY2hlS2V5fWApO1xuICAgICAgICBtZW1vcnkuZGVsZXRlKGNhY2hlS2V5KTtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICAgIGRlYnVnKGBISVQgJHtjYWNoZUtleX0ke3N0YXRlID09PSBcInN0YWxlXCIgPyBcIiAoc3RhbGUgdGFnKVwiIDogXCJcIn1gKTtcbiAgICAgIC8vIGByZXZhbGlkYXRlOiAtMWAgaXMgaG93IHRoZSBidWlsdC1pbiBoYW5kbGVyIHJlcG9ydHMgYSBzdGFsZSB0YWc6IHRoZVxuICAgICAgLy8gd3JhcHBlciBzZXJ2ZXMgdGhlIGVudHJ5IGFuZCByZWdlbmVyYXRlcyBpdCBpbiB0aGUgYmFja2dyb3VuZC5cbiAgICAgIHJldHVybiBjYWNoZUVudHJ5T2Yoc3RvcmVkLCBzdGF0ZSA9PT0gXCJzdGFsZVwiID8gLTEgOiBzdG9yZWQucmV2YWxpZGF0ZSk7XG4gICAgfSxcblxuICAgIGFzeW5jIHNldChcbiAgICAgIGNhY2hlS2V5OiBzdHJpbmcsXG4gICAgICBwZW5kaW5nRW50cnk6IFByb21pc2U8Q2FjaGVFbnRyeT4sXG4gICAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICBjb25zdCBkb25lID0gcGVuZGluZy5iZWdpbihjYWNoZUtleSk7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBzdG9yZWQgPSBhd2FpdCBzdG9yZWRFbnRyeU9mKHBlbmRpbmdFbnRyeSk7XG4gICAgICAgIGlmIChpc0R5bmFtaWNFbnRyeShzdG9yZWQpKSB7XG4gICAgICAgICAgZGVidWcoYFNLSVAgZHluYW1pYyBlbnRyeSAke2NhY2hlS2V5fWApO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBtZW1vcnkuc2V0KGNhY2hlS2V5LCBzdG9yZWQpO1xuICAgICAgICB0YWdzLnRyYWNrKHN0b3JlZC50YWdzKTtcbiAgICAgICAgZGVidWcoYFNFVCAke2NhY2hlS2V5fWApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgLy8gVGhlIHN0cmVhbSBlcnJvcmVkOiBzdG9yZSBub3RoaW5nIHJhdGhlciB0aGFuIGEgcGFydGlhbCBlbnRyeS5cbiAgICAgICAgZGVidWcoYFNFVCBGQUlMRUQgJHtjYWNoZUtleX1gLCBlcnJvcik7XG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBkb25lKCk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIC4uLnRhZ01ldGhvZHModGFncyksXG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IGxhenlIYW5kbGVyKCgpID0+IGNyZWF0ZURlZmF1bHRVc2VDYWNoZUhhbmRsZXIoKSk7XG4iXX0=
|