vinext 0.0.0 → 0.0.1
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/LICENSE +21 -0
- package/README.md +1 -0
- package/dist/build/static-export.d.ts +78 -0
- package/dist/build/static-export.d.ts.map +1 -0
- package/dist/build/static-export.js +553 -0
- package/dist/build/static-export.js.map +1 -0
- package/dist/check.d.ts +52 -0
- package/dist/check.d.ts.map +1 -0
- package/dist/check.js +483 -0
- package/dist/check.js.map +1 -0
- package/dist/cli.d.ts +15 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +565 -0
- package/dist/cli.js.map +1 -0
- package/dist/client/entry.d.ts +2 -0
- package/dist/client/entry.d.ts.map +1 -0
- package/dist/client/entry.js +85 -0
- package/dist/client/entry.js.map +1 -0
- package/dist/cloudflare/index.d.ts +8 -0
- package/dist/cloudflare/index.d.ts.map +1 -0
- package/dist/cloudflare/index.js +8 -0
- package/dist/cloudflare/index.js.map +1 -0
- package/dist/cloudflare/kv-cache-handler.d.ts +68 -0
- package/dist/cloudflare/kv-cache-handler.d.ts.map +1 -0
- package/dist/cloudflare/kv-cache-handler.js +304 -0
- package/dist/cloudflare/kv-cache-handler.js.map +1 -0
- package/dist/cloudflare/tpr.d.ts +78 -0
- package/dist/cloudflare/tpr.d.ts.map +1 -0
- package/dist/cloudflare/tpr.js +672 -0
- package/dist/cloudflare/tpr.js.map +1 -0
- package/dist/config/config-matchers.d.ts +106 -0
- package/dist/config/config-matchers.d.ts.map +1 -0
- package/dist/config/config-matchers.js +499 -0
- package/dist/config/config-matchers.js.map +1 -0
- package/dist/config/next-config.d.ts +153 -0
- package/dist/config/next-config.d.ts.map +1 -0
- package/dist/config/next-config.js +274 -0
- package/dist/config/next-config.js.map +1 -0
- package/dist/deploy.d.ts +87 -0
- package/dist/deploy.d.ts.map +1 -0
- package/dist/deploy.js +644 -0
- package/dist/deploy.js.map +1 -0
- package/dist/index.d.ts +156 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3287 -0
- package/dist/index.js.map +1 -0
- package/dist/init.d.ts +55 -0
- package/dist/init.d.ts.map +1 -0
- package/dist/init.js +201 -0
- package/dist/init.js.map +1 -0
- package/dist/routing/app-router.d.ts +96 -0
- package/dist/routing/app-router.d.ts.map +1 -0
- package/dist/routing/app-router.js +815 -0
- package/dist/routing/app-router.js.map +1 -0
- package/dist/routing/pages-router.d.ts +52 -0
- package/dist/routing/pages-router.d.ts.map +1 -0
- package/dist/routing/pages-router.js +239 -0
- package/dist/routing/pages-router.js.map +1 -0
- package/dist/server/api-handler.d.ts +18 -0
- package/dist/server/api-handler.d.ts.map +1 -0
- package/dist/server/api-handler.js +169 -0
- package/dist/server/api-handler.js.map +1 -0
- package/dist/server/app-dev-server.d.ts +42 -0
- package/dist/server/app-dev-server.d.ts.map +1 -0
- package/dist/server/app-dev-server.js +2718 -0
- package/dist/server/app-dev-server.js.map +1 -0
- package/dist/server/app-router-entry.d.ts +18 -0
- package/dist/server/app-router-entry.d.ts.map +1 -0
- package/dist/server/app-router-entry.js +34 -0
- package/dist/server/app-router-entry.js.map +1 -0
- package/dist/server/dev-server.d.ts +40 -0
- package/dist/server/dev-server.d.ts.map +1 -0
- package/dist/server/dev-server.js +758 -0
- package/dist/server/dev-server.js.map +1 -0
- package/dist/server/html.d.ts +22 -0
- package/dist/server/html.d.ts.map +1 -0
- package/dist/server/html.js +29 -0
- package/dist/server/html.js.map +1 -0
- package/dist/server/image-optimization.d.ts +56 -0
- package/dist/server/image-optimization.d.ts.map +1 -0
- package/dist/server/image-optimization.js +103 -0
- package/dist/server/image-optimization.js.map +1 -0
- package/dist/server/instrumentation.d.ts +68 -0
- package/dist/server/instrumentation.d.ts.map +1 -0
- package/dist/server/instrumentation.js +90 -0
- package/dist/server/instrumentation.js.map +1 -0
- package/dist/server/isr-cache.d.ts +61 -0
- package/dist/server/isr-cache.d.ts.map +1 -0
- package/dist/server/isr-cache.js +134 -0
- package/dist/server/isr-cache.js.map +1 -0
- package/dist/server/metadata-routes.d.ts +103 -0
- package/dist/server/metadata-routes.d.ts.map +1 -0
- package/dist/server/metadata-routes.js +270 -0
- package/dist/server/metadata-routes.js.map +1 -0
- package/dist/server/middleware.d.ts +77 -0
- package/dist/server/middleware.d.ts.map +1 -0
- package/dist/server/middleware.js +228 -0
- package/dist/server/middleware.js.map +1 -0
- package/dist/server/prod-server.d.ts +78 -0
- package/dist/server/prod-server.d.ts.map +1 -0
- package/dist/server/prod-server.js +712 -0
- package/dist/server/prod-server.js.map +1 -0
- package/dist/shims/amp.d.ts +17 -0
- package/dist/shims/amp.d.ts.map +1 -0
- package/dist/shims/amp.js +21 -0
- package/dist/shims/amp.js.map +1 -0
- package/dist/shims/app.d.ts +12 -0
- package/dist/shims/app.d.ts.map +1 -0
- package/dist/shims/app.js +2 -0
- package/dist/shims/app.js.map +1 -0
- package/dist/shims/cache-runtime.d.ts +68 -0
- package/dist/shims/cache-runtime.d.ts.map +1 -0
- package/dist/shims/cache-runtime.js +437 -0
- package/dist/shims/cache-runtime.js.map +1 -0
- package/dist/shims/cache.d.ts +243 -0
- package/dist/shims/cache.d.ts.map +1 -0
- package/dist/shims/cache.js +415 -0
- package/dist/shims/cache.js.map +1 -0
- package/dist/shims/client-only.d.ts +18 -0
- package/dist/shims/client-only.d.ts.map +1 -0
- package/dist/shims/client-only.js +18 -0
- package/dist/shims/client-only.js.map +1 -0
- package/dist/shims/config.d.ts +27 -0
- package/dist/shims/config.d.ts.map +1 -0
- package/dist/shims/config.js +30 -0
- package/dist/shims/config.js.map +1 -0
- package/dist/shims/constants.d.ts +13 -0
- package/dist/shims/constants.d.ts.map +1 -0
- package/dist/shims/constants.js +13 -0
- package/dist/shims/constants.js.map +1 -0
- package/dist/shims/document.d.ts +33 -0
- package/dist/shims/document.d.ts.map +1 -0
- package/dist/shims/document.js +32 -0
- package/dist/shims/document.js.map +1 -0
- package/dist/shims/dynamic.d.ts +33 -0
- package/dist/shims/dynamic.d.ts.map +1 -0
- package/dist/shims/dynamic.js +148 -0
- package/dist/shims/dynamic.js.map +1 -0
- package/dist/shims/error-boundary.d.ts +33 -0
- package/dist/shims/error-boundary.d.ts.map +1 -0
- package/dist/shims/error-boundary.js +88 -0
- package/dist/shims/error-boundary.js.map +1 -0
- package/dist/shims/error.d.ts +16 -0
- package/dist/shims/error.d.ts.map +1 -0
- package/dist/shims/error.js +45 -0
- package/dist/shims/error.js.map +1 -0
- package/dist/shims/fetch-cache.d.ts +61 -0
- package/dist/shims/fetch-cache.d.ts.map +1 -0
- package/dist/shims/fetch-cache.js +307 -0
- package/dist/shims/fetch-cache.js.map +1 -0
- package/dist/shims/font-google.d.ts +122 -0
- package/dist/shims/font-google.d.ts.map +1 -0
- package/dist/shims/font-google.js +387 -0
- package/dist/shims/font-google.js.map +1 -0
- package/dist/shims/font-local.d.ts +61 -0
- package/dist/shims/font-local.d.ts.map +1 -0
- package/dist/shims/font-local.js +303 -0
- package/dist/shims/font-local.js.map +1 -0
- package/dist/shims/form.d.ts +30 -0
- package/dist/shims/form.d.ts.map +1 -0
- package/dist/shims/form.js +78 -0
- package/dist/shims/form.js.map +1 -0
- package/dist/shims/head-state.d.ts +11 -0
- package/dist/shims/head-state.d.ts.map +1 -0
- package/dist/shims/head-state.js +47 -0
- package/dist/shims/head-state.js.map +1 -0
- package/dist/shims/head.d.ts +28 -0
- package/dist/shims/head.d.ts.map +1 -0
- package/dist/shims/head.js +148 -0
- package/dist/shims/head.js.map +1 -0
- package/dist/shims/headers.d.ts +150 -0
- package/dist/shims/headers.d.ts.map +1 -0
- package/dist/shims/headers.js +412 -0
- package/dist/shims/headers.js.map +1 -0
- package/dist/shims/image-config.d.ts +30 -0
- package/dist/shims/image-config.d.ts.map +1 -0
- package/dist/shims/image-config.js +91 -0
- package/dist/shims/image-config.js.map +1 -0
- package/dist/shims/image.d.ts +63 -0
- package/dist/shims/image.d.ts.map +1 -0
- package/dist/shims/image.js +284 -0
- package/dist/shims/image.js.map +1 -0
- package/dist/shims/internal/api-utils.d.ts +12 -0
- package/dist/shims/internal/api-utils.d.ts.map +1 -0
- package/dist/shims/internal/api-utils.js +7 -0
- package/dist/shims/internal/api-utils.js.map +1 -0
- package/dist/shims/internal/app-router-context.d.ts +21 -0
- package/dist/shims/internal/app-router-context.d.ts.map +1 -0
- package/dist/shims/internal/app-router-context.js +15 -0
- package/dist/shims/internal/app-router-context.js.map +1 -0
- package/dist/shims/internal/cookies.d.ts +9 -0
- package/dist/shims/internal/cookies.d.ts.map +1 -0
- package/dist/shims/internal/cookies.js +9 -0
- package/dist/shims/internal/cookies.js.map +1 -0
- package/dist/shims/internal/router-context.d.ts +2 -0
- package/dist/shims/internal/router-context.d.ts.map +1 -0
- package/dist/shims/internal/router-context.js +9 -0
- package/dist/shims/internal/router-context.js.map +1 -0
- package/dist/shims/internal/utils.d.ts +48 -0
- package/dist/shims/internal/utils.d.ts.map +1 -0
- package/dist/shims/internal/utils.js +35 -0
- package/dist/shims/internal/utils.js.map +1 -0
- package/dist/shims/internal/work-unit-async-storage.d.ts +12 -0
- package/dist/shims/internal/work-unit-async-storage.d.ts.map +1 -0
- package/dist/shims/internal/work-unit-async-storage.js +13 -0
- package/dist/shims/internal/work-unit-async-storage.js.map +1 -0
- package/dist/shims/layout-segment-context.d.ts +21 -0
- package/dist/shims/layout-segment-context.d.ts.map +1 -0
- package/dist/shims/layout-segment-context.js +27 -0
- package/dist/shims/layout-segment-context.js.map +1 -0
- package/dist/shims/legacy-image.d.ts +52 -0
- package/dist/shims/legacy-image.d.ts.map +1 -0
- package/dist/shims/legacy-image.js +46 -0
- package/dist/shims/legacy-image.js.map +1 -0
- package/dist/shims/link.d.ts +48 -0
- package/dist/shims/link.d.ts.map +1 -0
- package/dist/shims/link.js +395 -0
- package/dist/shims/link.js.map +1 -0
- package/dist/shims/metadata.d.ts +184 -0
- package/dist/shims/metadata.d.ts.map +1 -0
- package/dist/shims/metadata.js +472 -0
- package/dist/shims/metadata.js.map +1 -0
- package/dist/shims/navigation-state.d.ts +14 -0
- package/dist/shims/navigation-state.d.ts.map +1 -0
- package/dist/shims/navigation-state.js +77 -0
- package/dist/shims/navigation-state.js.map +1 -0
- package/dist/shims/navigation.d.ts +201 -0
- package/dist/shims/navigation.d.ts.map +1 -0
- package/dist/shims/navigation.js +672 -0
- package/dist/shims/navigation.js.map +1 -0
- package/dist/shims/og.d.ts +20 -0
- package/dist/shims/og.d.ts.map +1 -0
- package/dist/shims/og.js +19 -0
- package/dist/shims/og.js.map +1 -0
- package/dist/shims/router-state.d.ts +11 -0
- package/dist/shims/router-state.d.ts.map +1 -0
- package/dist/shims/router-state.js +56 -0
- package/dist/shims/router-state.js.map +1 -0
- package/dist/shims/router.d.ts +103 -0
- package/dist/shims/router.d.ts.map +1 -0
- package/dist/shims/router.js +536 -0
- package/dist/shims/router.js.map +1 -0
- package/dist/shims/script.d.ts +58 -0
- package/dist/shims/script.d.ts.map +1 -0
- package/dist/shims/script.js +163 -0
- package/dist/shims/script.js.map +1 -0
- package/dist/shims/server-only.d.ts +19 -0
- package/dist/shims/server-only.d.ts.map +1 -0
- package/dist/shims/server-only.js +19 -0
- package/dist/shims/server-only.js.map +1 -0
- package/dist/shims/server.d.ts +178 -0
- package/dist/shims/server.d.ts.map +1 -0
- package/dist/shims/server.js +377 -0
- package/dist/shims/server.js.map +1 -0
- package/dist/shims/web-vitals.d.ts +24 -0
- package/dist/shims/web-vitals.d.ts.map +1 -0
- package/dist/shims/web-vitals.js +17 -0
- package/dist/shims/web-vitals.js.map +1 -0
- package/dist/utils/hash.d.ts +6 -0
- package/dist/utils/hash.d.ts.map +1 -0
- package/dist/utils/hash.js +20 -0
- package/dist/utils/hash.js.map +1 -0
- package/dist/utils/project.d.ts +36 -0
- package/dist/utils/project.d.ts.map +1 -0
- package/dist/utils/project.js +112 -0
- package/dist/utils/project.js.map +1 -0
- package/dist/utils/query.d.ts +10 -0
- package/dist/utils/query.d.ts.map +1 -0
- package/dist/utils/query.js +27 -0
- package/dist/utils/query.js.map +1 -0
- package/package.json +65 -7
- package/index.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prod-server.js","sourceRoot":"","sources":["../../src/server/prod-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* next/amp shim
|
|
3
|
+
*
|
|
4
|
+
* AMP support was deprecated in Next.js 13+ and removed in later versions.
|
|
5
|
+
* These are no-op stubs for apps that still import from next/amp.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Check if the current page is being served as AMP.
|
|
9
|
+
* Always returns false — AMP is not supported.
|
|
10
|
+
*/
|
|
11
|
+
export declare function useAmp(): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Check if AMP is enabled for the current page.
|
|
14
|
+
* Always returns false.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isInAmpMode(): boolean;
|
|
17
|
+
//# sourceMappingURL=amp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"amp.d.ts","sourceRoot":"","sources":["../../src/shims/amp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,wBAAgB,MAAM,IAAI,OAAO,CAEhC;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAErC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* next/amp shim
|
|
3
|
+
*
|
|
4
|
+
* AMP support was deprecated in Next.js 13+ and removed in later versions.
|
|
5
|
+
* These are no-op stubs for apps that still import from next/amp.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Check if the current page is being served as AMP.
|
|
9
|
+
* Always returns false — AMP is not supported.
|
|
10
|
+
*/
|
|
11
|
+
export function useAmp() {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Check if AMP is enabled for the current page.
|
|
16
|
+
* Always returns false.
|
|
17
|
+
*/
|
|
18
|
+
export function isInAmpMode() {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=amp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"amp.js","sourceRoot":"","sources":["../../src/shims/amp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* next/app shim
|
|
3
|
+
*
|
|
4
|
+
* Provides the AppProps type and default App component for _app.tsx.
|
|
5
|
+
*/
|
|
6
|
+
import type { ComponentType } from "react";
|
|
7
|
+
export interface AppProps<P = Record<string, unknown>> {
|
|
8
|
+
Component: ComponentType<P>;
|
|
9
|
+
pageProps: P;
|
|
10
|
+
}
|
|
11
|
+
export type { AppProps as default };
|
|
12
|
+
//# sourceMappingURL=app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/shims/app.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,MAAM,WAAW,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnD,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAC5B,SAAS,EAAE,CAAC,CAAC;CACd;AAGD,YAAY,EAAE,QAAQ,IAAI,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/shims/app.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* "use cache" runtime
|
|
3
|
+
*
|
|
4
|
+
* This module provides the runtime for "use cache" directive support.
|
|
5
|
+
* Functions marked with "use cache" are transformed by the vinext:use-cache
|
|
6
|
+
* Vite plugin to wrap them with `registerCachedFunction()`.
|
|
7
|
+
*
|
|
8
|
+
* The runtime:
|
|
9
|
+
* 1. Generates a cache key from function identity + serialized arguments
|
|
10
|
+
* 2. Checks the CacheHandler for a cached value
|
|
11
|
+
* 3. On HIT: returns the cached value (deserialized via RSC stream)
|
|
12
|
+
* 4. On MISS: creates an AsyncLocalStorage context for cacheLife/cacheTag,
|
|
13
|
+
* calls the original function, serializes the result via RSC stream,
|
|
14
|
+
* collects metadata, stores the result
|
|
15
|
+
*
|
|
16
|
+
* Serialization uses the RSC protocol (renderToReadableStream /
|
|
17
|
+
* createFromReadableStream / encodeReply) from @vitejs/plugin-rsc.
|
|
18
|
+
* This correctly handles React elements, client references, Promises,
|
|
19
|
+
* and all RSC-serializable types — unlike JSON.stringify which silently
|
|
20
|
+
* drops $$typeof Symbols and function values.
|
|
21
|
+
*
|
|
22
|
+
* When RSC APIs are unavailable (e.g. in unit tests), falls back to
|
|
23
|
+
* JSON.stringify/parse with the same stableStringify cache key generation.
|
|
24
|
+
*
|
|
25
|
+
* Cache variants:
|
|
26
|
+
* - "use cache" — shared cache (default profile)
|
|
27
|
+
* - "use cache: remote" — shared cache (explicit)
|
|
28
|
+
* - "use cache: private" — per-request cache (not shared across requests)
|
|
29
|
+
*/
|
|
30
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
31
|
+
import { type CacheLifeConfig } from "./cache.js";
|
|
32
|
+
export interface CacheContext {
|
|
33
|
+
/** Tags collected via cacheTag() during execution */
|
|
34
|
+
tags: string[];
|
|
35
|
+
/** Cache life configs collected via cacheLife() — minimum-wins rule applies */
|
|
36
|
+
lifeConfigs: CacheLifeConfig[];
|
|
37
|
+
/** Cache variant: "default" | "remote" | "private" */
|
|
38
|
+
variant: string;
|
|
39
|
+
}
|
|
40
|
+
export declare const cacheContextStorage: AsyncLocalStorage<CacheContext>;
|
|
41
|
+
/**
|
|
42
|
+
* Get the current cache context. Returns null if not inside a "use cache" function.
|
|
43
|
+
*/
|
|
44
|
+
export declare function getCacheContext(): CacheContext | null;
|
|
45
|
+
/**
|
|
46
|
+
* Convert an encodeReply result (string | FormData) to a cache key string.
|
|
47
|
+
* For FormData (binary args), produces a deterministic SHA-256 hash over
|
|
48
|
+
* the sorted entries. We can't hash `new Response(formData).arrayBuffer()`
|
|
49
|
+
* because multipart boundaries are non-deterministic across serializations.
|
|
50
|
+
*
|
|
51
|
+
* Exported for testing.
|
|
52
|
+
*/
|
|
53
|
+
export declare function replyToCacheKey(reply: string | FormData): Promise<string>;
|
|
54
|
+
/**
|
|
55
|
+
* Clear the private per-request cache. Should be called at the start of each request.
|
|
56
|
+
*/
|
|
57
|
+
export declare function clearPrivateCache(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Register a function as a cached function. This is called by the Vite
|
|
60
|
+
* transform for each "use cache" function.
|
|
61
|
+
*
|
|
62
|
+
* @param fn - The original async function
|
|
63
|
+
* @param id - A stable identifier for the function (module path + export name)
|
|
64
|
+
* @param variant - Cache variant: "" (default/shared), "remote", "private"
|
|
65
|
+
* @returns A wrapper function that checks cache before calling the original
|
|
66
|
+
*/
|
|
67
|
+
export declare function registerCachedFunction<T extends (...args: any[]) => Promise<any>>(fn: T, id: string, variant?: string): T;
|
|
68
|
+
//# sourceMappingURL=cache-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-runtime.d.ts","sourceRoot":"","sources":["../../src/shims/cache-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAqE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAMrH,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,+EAA+E;IAC/E,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,mBAAmB,iCAAwC,CAAC;AAMzE;;GAEG;AACH,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAErD;AA+ED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAsB/E;AAgFD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC;AAMD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EAC/E,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,MAAM,GACf,CAAC,CAiJH"}
|
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* "use cache" runtime
|
|
3
|
+
*
|
|
4
|
+
* This module provides the runtime for "use cache" directive support.
|
|
5
|
+
* Functions marked with "use cache" are transformed by the vinext:use-cache
|
|
6
|
+
* Vite plugin to wrap them with `registerCachedFunction()`.
|
|
7
|
+
*
|
|
8
|
+
* The runtime:
|
|
9
|
+
* 1. Generates a cache key from function identity + serialized arguments
|
|
10
|
+
* 2. Checks the CacheHandler for a cached value
|
|
11
|
+
* 3. On HIT: returns the cached value (deserialized via RSC stream)
|
|
12
|
+
* 4. On MISS: creates an AsyncLocalStorage context for cacheLife/cacheTag,
|
|
13
|
+
* calls the original function, serializes the result via RSC stream,
|
|
14
|
+
* collects metadata, stores the result
|
|
15
|
+
*
|
|
16
|
+
* Serialization uses the RSC protocol (renderToReadableStream /
|
|
17
|
+
* createFromReadableStream / encodeReply) from @vitejs/plugin-rsc.
|
|
18
|
+
* This correctly handles React elements, client references, Promises,
|
|
19
|
+
* and all RSC-serializable types — unlike JSON.stringify which silently
|
|
20
|
+
* drops $$typeof Symbols and function values.
|
|
21
|
+
*
|
|
22
|
+
* When RSC APIs are unavailable (e.g. in unit tests), falls back to
|
|
23
|
+
* JSON.stringify/parse with the same stableStringify cache key generation.
|
|
24
|
+
*
|
|
25
|
+
* Cache variants:
|
|
26
|
+
* - "use cache" — shared cache (default profile)
|
|
27
|
+
* - "use cache: remote" — shared cache (explicit)
|
|
28
|
+
* - "use cache: private" — per-request cache (not shared across requests)
|
|
29
|
+
*/
|
|
30
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
31
|
+
import { getCacheHandler, cacheLifeProfiles, _registerCacheContextAccessor } from "./cache.js";
|
|
32
|
+
export const cacheContextStorage = new AsyncLocalStorage();
|
|
33
|
+
// Register the context accessor so cacheLife()/cacheTag() in cache.ts can
|
|
34
|
+
// access the context without a circular import.
|
|
35
|
+
_registerCacheContextAccessor(() => cacheContextStorage.getStore() ?? null);
|
|
36
|
+
/**
|
|
37
|
+
* Get the current cache context. Returns null if not inside a "use cache" function.
|
|
38
|
+
*/
|
|
39
|
+
export function getCacheContext() {
|
|
40
|
+
return cacheContextStorage.getStore() ?? null;
|
|
41
|
+
}
|
|
42
|
+
const NOT_LOADED = Symbol("not-loaded");
|
|
43
|
+
let _rscModule = NOT_LOADED;
|
|
44
|
+
async function getRscModule() {
|
|
45
|
+
if (_rscModule !== NOT_LOADED)
|
|
46
|
+
return _rscModule;
|
|
47
|
+
try {
|
|
48
|
+
_rscModule = await import("@vitejs/plugin-rsc/react/rsc");
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
_rscModule = null;
|
|
52
|
+
}
|
|
53
|
+
return _rscModule;
|
|
54
|
+
}
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
// RSC stream helpers
|
|
57
|
+
// ---------------------------------------------------------------------------
|
|
58
|
+
/** Collect a ReadableStream<Uint8Array> into a single Uint8Array. */
|
|
59
|
+
async function collectStream(stream) {
|
|
60
|
+
const reader = stream.getReader();
|
|
61
|
+
const chunks = [];
|
|
62
|
+
let totalLength = 0;
|
|
63
|
+
for (;;) {
|
|
64
|
+
const { done, value } = await reader.read();
|
|
65
|
+
if (done)
|
|
66
|
+
break;
|
|
67
|
+
chunks.push(value);
|
|
68
|
+
totalLength += value.length;
|
|
69
|
+
}
|
|
70
|
+
if (chunks.length === 1)
|
|
71
|
+
return chunks[0];
|
|
72
|
+
const result = new Uint8Array(totalLength);
|
|
73
|
+
let offset = 0;
|
|
74
|
+
for (const chunk of chunks) {
|
|
75
|
+
result.set(chunk, offset);
|
|
76
|
+
offset += chunk.length;
|
|
77
|
+
}
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
/** Encode a Uint8Array as a base64 string for storage. Uses Node Buffer. */
|
|
81
|
+
function uint8ToBase64(bytes) {
|
|
82
|
+
return Buffer.from(bytes).toString("base64");
|
|
83
|
+
}
|
|
84
|
+
/** Decode a base64 string back to Uint8Array. Uses Node Buffer. */
|
|
85
|
+
function base64ToUint8(base64) {
|
|
86
|
+
return new Uint8Array(Buffer.from(base64, "base64"));
|
|
87
|
+
}
|
|
88
|
+
/** Create a ReadableStream from a Uint8Array. */
|
|
89
|
+
function uint8ToStream(bytes) {
|
|
90
|
+
return new ReadableStream({
|
|
91
|
+
start(controller) {
|
|
92
|
+
controller.enqueue(bytes);
|
|
93
|
+
controller.close();
|
|
94
|
+
},
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Convert an encodeReply result (string | FormData) to a cache key string.
|
|
99
|
+
* For FormData (binary args), produces a deterministic SHA-256 hash over
|
|
100
|
+
* the sorted entries. We can't hash `new Response(formData).arrayBuffer()`
|
|
101
|
+
* because multipart boundaries are non-deterministic across serializations.
|
|
102
|
+
*
|
|
103
|
+
* Exported for testing.
|
|
104
|
+
*/
|
|
105
|
+
export async function replyToCacheKey(reply) {
|
|
106
|
+
if (typeof reply === "string")
|
|
107
|
+
return reply;
|
|
108
|
+
// Collect entries in stable order (sorted by name, then by value for
|
|
109
|
+
// entries with the same name) so the hash is deterministic.
|
|
110
|
+
const entries = [...reply.entries()];
|
|
111
|
+
entries.sort((a, b) => a[0].localeCompare(b[0]) || String(a[1]).localeCompare(String(b[1])));
|
|
112
|
+
const parts = [];
|
|
113
|
+
for (const [name, value] of entries) {
|
|
114
|
+
if (typeof value === "string") {
|
|
115
|
+
parts.push(`${name}=s:${value}`);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
// Blob/File: include type, size, and content bytes
|
|
119
|
+
const bytes = new Uint8Array(await value.arrayBuffer());
|
|
120
|
+
parts.push(`${name}=b:${value.type}:${value.size}:${Buffer.from(bytes).toString("base64")}`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
const payload = new TextEncoder().encode(parts.join("\0"));
|
|
124
|
+
const hashBuffer = await crypto.subtle.digest("SHA-256", payload);
|
|
125
|
+
return Buffer.from(new Uint8Array(hashBuffer)).toString("base64url");
|
|
126
|
+
}
|
|
127
|
+
// ---------------------------------------------------------------------------
|
|
128
|
+
// Minimum-wins resolution for cacheLife
|
|
129
|
+
// ---------------------------------------------------------------------------
|
|
130
|
+
/**
|
|
131
|
+
* Resolve collected cacheLife configs into a single effective config.
|
|
132
|
+
* The "minimum-wins" rule: if multiple cacheLife() calls are made,
|
|
133
|
+
* each field takes the smallest value across all calls.
|
|
134
|
+
*/
|
|
135
|
+
function resolveCacheLife(configs) {
|
|
136
|
+
if (configs.length === 0) {
|
|
137
|
+
// Default profile
|
|
138
|
+
return { ...cacheLifeProfiles.default };
|
|
139
|
+
}
|
|
140
|
+
if (configs.length === 1) {
|
|
141
|
+
return { ...configs[0] };
|
|
142
|
+
}
|
|
143
|
+
// Minimum-wins across all fields
|
|
144
|
+
const result = {};
|
|
145
|
+
for (const config of configs) {
|
|
146
|
+
if (config.stale !== undefined) {
|
|
147
|
+
result.stale = result.stale !== undefined
|
|
148
|
+
? Math.min(result.stale, config.stale)
|
|
149
|
+
: config.stale;
|
|
150
|
+
}
|
|
151
|
+
if (config.revalidate !== undefined) {
|
|
152
|
+
result.revalidate = result.revalidate !== undefined
|
|
153
|
+
? Math.min(result.revalidate, config.revalidate)
|
|
154
|
+
: config.revalidate;
|
|
155
|
+
}
|
|
156
|
+
if (config.expire !== undefined) {
|
|
157
|
+
result.expire = result.expire !== undefined
|
|
158
|
+
? Math.min(result.expire, config.expire)
|
|
159
|
+
: config.expire;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
return result;
|
|
163
|
+
}
|
|
164
|
+
const _PRIVATE_ALS_KEY = Symbol.for("vinext.cacheRuntime.privateAls");
|
|
165
|
+
const _PRIVATE_FALLBACK_KEY = Symbol.for("vinext.cacheRuntime.privateFallback");
|
|
166
|
+
const _g = globalThis;
|
|
167
|
+
const _privateAls = (_g[_PRIVATE_ALS_KEY] ??= new AsyncLocalStorage());
|
|
168
|
+
const _privateFallbackState = (_g[_PRIVATE_FALLBACK_KEY] ??= {
|
|
169
|
+
cache: new Map(),
|
|
170
|
+
});
|
|
171
|
+
function _privateEnterWith(state) {
|
|
172
|
+
const enterWith = _privateAls.enterWith;
|
|
173
|
+
if (typeof enterWith === "function") {
|
|
174
|
+
try {
|
|
175
|
+
enterWith.call(_privateAls, state);
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
catch {
|
|
179
|
+
// Fall through to best-effort fallback.
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
_privateFallbackState.cache = state.cache;
|
|
183
|
+
}
|
|
184
|
+
function _getPrivateState() {
|
|
185
|
+
return _privateAls.getStore() ?? _privateFallbackState;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Clear the private per-request cache. Should be called at the start of each request.
|
|
189
|
+
*/
|
|
190
|
+
export function clearPrivateCache() {
|
|
191
|
+
_privateEnterWith({ cache: new Map() });
|
|
192
|
+
_privateFallbackState.cache = new Map();
|
|
193
|
+
}
|
|
194
|
+
// ---------------------------------------------------------------------------
|
|
195
|
+
// Core runtime: registerCachedFunction
|
|
196
|
+
// ---------------------------------------------------------------------------
|
|
197
|
+
/**
|
|
198
|
+
* Register a function as a cached function. This is called by the Vite
|
|
199
|
+
* transform for each "use cache" function.
|
|
200
|
+
*
|
|
201
|
+
* @param fn - The original async function
|
|
202
|
+
* @param id - A stable identifier for the function (module path + export name)
|
|
203
|
+
* @param variant - Cache variant: "" (default/shared), "remote", "private"
|
|
204
|
+
* @returns A wrapper function that checks cache before calling the original
|
|
205
|
+
*/
|
|
206
|
+
export function registerCachedFunction(fn, id, variant) {
|
|
207
|
+
const cacheVariant = variant ?? "";
|
|
208
|
+
// In dev mode, skip the shared cache so code changes are immediately
|
|
209
|
+
// visible after HMR. Without this, the MemoryCacheHandler returns stale
|
|
210
|
+
// results because the cache key (module path + export name) doesn't
|
|
211
|
+
// change when the file is edited — only the function body changes.
|
|
212
|
+
// Per-request ("use cache: private") caching still works in dev since
|
|
213
|
+
// it's scoped to a single request and doesn't persist across HMR.
|
|
214
|
+
const isDev = typeof process !== "undefined" && process.env.NODE_ENV === "development";
|
|
215
|
+
const cachedFn = async (...args) => {
|
|
216
|
+
const rsc = await getRscModule();
|
|
217
|
+
// Build the cache key. Use encodeReply (RSC protocol) when available —
|
|
218
|
+
// it correctly handles React elements as temporary references (excluded
|
|
219
|
+
// from key). Falls back to stableStringify when RSC is unavailable.
|
|
220
|
+
let cacheKey;
|
|
221
|
+
try {
|
|
222
|
+
if (rsc && args.length > 0) {
|
|
223
|
+
// Temporary references let encodeReply handle non-serializable values
|
|
224
|
+
// (like React elements in args) by excluding them from the key.
|
|
225
|
+
const tempRefs = rsc.createClientTemporaryReferenceSet();
|
|
226
|
+
// Unwrap Promise-augmented objects before encoding.
|
|
227
|
+
// Next.js 16 params/searchParams are created via
|
|
228
|
+
// Object.assign(Promise.resolve(obj), obj) — a Promise with own
|
|
229
|
+
// enumerable properties. encodeReply treats Promises as temporary
|
|
230
|
+
// references (excluded from the key), which means different param
|
|
231
|
+
// values (e.g., section:"sports" vs section:"electronics") produce
|
|
232
|
+
// identical cache keys. We must extract the plain data so the actual
|
|
233
|
+
// values are included in the cache key.
|
|
234
|
+
const processedArgs = unwrapThenableObjects(args);
|
|
235
|
+
const encoded = await rsc.encodeReply(processedArgs, {
|
|
236
|
+
temporaryReferences: tempRefs,
|
|
237
|
+
});
|
|
238
|
+
const argsKey = await replyToCacheKey(encoded);
|
|
239
|
+
cacheKey = `use-cache:${id}:${argsKey}`;
|
|
240
|
+
}
|
|
241
|
+
else {
|
|
242
|
+
const argsKey = args.length > 0 ? ":" + stableStringify(args) : "";
|
|
243
|
+
cacheKey = `use-cache:${id}${argsKey}`;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
catch {
|
|
247
|
+
// Non-serializable arguments — run without caching
|
|
248
|
+
return fn(...args);
|
|
249
|
+
}
|
|
250
|
+
// "use cache: private" uses per-request in-memory cache
|
|
251
|
+
if (cacheVariant === "private") {
|
|
252
|
+
const privateCache = _getPrivateState().cache;
|
|
253
|
+
const privateHit = privateCache.get(cacheKey);
|
|
254
|
+
if (privateHit !== undefined) {
|
|
255
|
+
return privateHit;
|
|
256
|
+
}
|
|
257
|
+
const result = await executeWithContext(fn, args, cacheVariant);
|
|
258
|
+
privateCache.set(cacheKey, result);
|
|
259
|
+
return result;
|
|
260
|
+
}
|
|
261
|
+
// In dev mode, always execute fresh — skip shared cache lookup/storage.
|
|
262
|
+
// This ensures HMR changes are reflected immediately.
|
|
263
|
+
if (isDev) {
|
|
264
|
+
return cacheContextStorage.run({ tags: [], lifeConfigs: [], variant: cacheVariant || "default" }, () => fn(...args));
|
|
265
|
+
}
|
|
266
|
+
// Shared cache ("use cache" / "use cache: remote")
|
|
267
|
+
const handler = getCacheHandler();
|
|
268
|
+
// Check cache — deserialize via RSC stream when available, JSON otherwise
|
|
269
|
+
const existing = await handler.get(cacheKey, { kind: "FETCH" });
|
|
270
|
+
if (existing?.value && existing.value.kind === "FETCH" && existing.cacheState !== "stale") {
|
|
271
|
+
try {
|
|
272
|
+
if (rsc && existing.value.data.headers["x-vinext-rsc"] === "1") {
|
|
273
|
+
// RSC-serialized entry: base64 → bytes → stream → deserialize
|
|
274
|
+
const bytes = base64ToUint8(existing.value.data.body);
|
|
275
|
+
const stream = uint8ToStream(bytes);
|
|
276
|
+
return await rsc.createFromReadableStream(stream);
|
|
277
|
+
}
|
|
278
|
+
// JSON-serialized entry (legacy or no RSC available)
|
|
279
|
+
return JSON.parse(existing.value.data.body);
|
|
280
|
+
}
|
|
281
|
+
catch {
|
|
282
|
+
// Corrupted entry, fall through to re-execute
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
// Cache miss (or stale) — execute with context
|
|
286
|
+
const ctx = {
|
|
287
|
+
tags: [],
|
|
288
|
+
lifeConfigs: [],
|
|
289
|
+
variant: cacheVariant || "default",
|
|
290
|
+
};
|
|
291
|
+
const result = await cacheContextStorage.run(ctx, () => fn(...args));
|
|
292
|
+
// Resolve effective cache life from collected configs
|
|
293
|
+
const effectiveLife = resolveCacheLife(ctx.lifeConfigs);
|
|
294
|
+
const revalidateSeconds = effectiveLife.revalidate ?? cacheLifeProfiles.default.revalidate ?? 900;
|
|
295
|
+
// Store in cache — use RSC stream serialization when available (handles
|
|
296
|
+
// React elements, client refs, Promises, etc.), JSON otherwise.
|
|
297
|
+
try {
|
|
298
|
+
let body;
|
|
299
|
+
const headers = {};
|
|
300
|
+
if (rsc) {
|
|
301
|
+
// RSC serialization: result → stream → bytes → base64.
|
|
302
|
+
// No temporaryReferences — cached values must be self-contained
|
|
303
|
+
// since they're persisted across requests.
|
|
304
|
+
const stream = rsc.renderToReadableStream(result);
|
|
305
|
+
const bytes = await collectStream(stream);
|
|
306
|
+
body = uint8ToBase64(bytes);
|
|
307
|
+
headers["x-vinext-rsc"] = "1";
|
|
308
|
+
}
|
|
309
|
+
else {
|
|
310
|
+
// JSON fallback
|
|
311
|
+
body = JSON.stringify(result);
|
|
312
|
+
if (body === undefined)
|
|
313
|
+
return result;
|
|
314
|
+
}
|
|
315
|
+
const cacheValue = {
|
|
316
|
+
kind: "FETCH",
|
|
317
|
+
data: {
|
|
318
|
+
headers,
|
|
319
|
+
body,
|
|
320
|
+
url: cacheKey,
|
|
321
|
+
},
|
|
322
|
+
tags: ctx.tags,
|
|
323
|
+
revalidate: revalidateSeconds,
|
|
324
|
+
};
|
|
325
|
+
await handler.set(cacheKey, cacheValue, {
|
|
326
|
+
fetchCache: true,
|
|
327
|
+
tags: ctx.tags,
|
|
328
|
+
revalidate: revalidateSeconds,
|
|
329
|
+
});
|
|
330
|
+
}
|
|
331
|
+
catch {
|
|
332
|
+
// Result not serializable — skip caching, still return the result
|
|
333
|
+
}
|
|
334
|
+
return result;
|
|
335
|
+
};
|
|
336
|
+
return cachedFn;
|
|
337
|
+
}
|
|
338
|
+
// ---------------------------------------------------------------------------
|
|
339
|
+
// Helper: execute function within cache context
|
|
340
|
+
// ---------------------------------------------------------------------------
|
|
341
|
+
async function executeWithContext(fn, args, variant) {
|
|
342
|
+
const ctx = {
|
|
343
|
+
tags: [],
|
|
344
|
+
lifeConfigs: [],
|
|
345
|
+
variant: variant || "default",
|
|
346
|
+
};
|
|
347
|
+
return cacheContextStorage.run(ctx, () => fn(...args));
|
|
348
|
+
}
|
|
349
|
+
// ---------------------------------------------------------------------------
|
|
350
|
+
// Unwrap Promise-augmented objects for cache key generation
|
|
351
|
+
// ---------------------------------------------------------------------------
|
|
352
|
+
/**
|
|
353
|
+
* Recursively unwrap "thenable objects" — values created by
|
|
354
|
+
* `Object.assign(Promise.resolve(obj), obj)` — into plain objects.
|
|
355
|
+
*
|
|
356
|
+
* Next.js 16 params and searchParams are passed as Promise-augmented objects
|
|
357
|
+
* that work both as `await params` and `params.key`. When these are fed to
|
|
358
|
+
* `encodeReply` with `temporaryReferences`, the Promise is treated as a
|
|
359
|
+
* temporary reference and its actual values are **excluded** from the
|
|
360
|
+
* serialized output. This means different param values (e.g.,
|
|
361
|
+
* `section:"sports"` vs `section:"electronics"`) produce identical cache keys.
|
|
362
|
+
*
|
|
363
|
+
* This function extracts the own enumerable properties into plain objects
|
|
364
|
+
* so `encodeReply` can serialize the actual values into the cache key.
|
|
365
|
+
* Only used for cache key generation — the original Promise-augmented
|
|
366
|
+
* objects are still passed to the actual function on cache miss.
|
|
367
|
+
*/
|
|
368
|
+
function unwrapThenableObjects(value) {
|
|
369
|
+
if (value === null || value === undefined || typeof value !== "object") {
|
|
370
|
+
return value;
|
|
371
|
+
}
|
|
372
|
+
if (Array.isArray(value)) {
|
|
373
|
+
return value.map(unwrapThenableObjects);
|
|
374
|
+
}
|
|
375
|
+
// Detect thenable (Promise-like) with own enumerable properties —
|
|
376
|
+
// this is the Object.assign(Promise.resolve(obj), obj) pattern.
|
|
377
|
+
if (typeof value.then === "function") {
|
|
378
|
+
const keys = Object.keys(value);
|
|
379
|
+
if (keys.length > 0) {
|
|
380
|
+
const plain = {};
|
|
381
|
+
for (const key of keys) {
|
|
382
|
+
plain[key] = unwrapThenableObjects(value[key]);
|
|
383
|
+
}
|
|
384
|
+
return plain;
|
|
385
|
+
}
|
|
386
|
+
// Pure Promise with no own properties — leave as-is
|
|
387
|
+
return value;
|
|
388
|
+
}
|
|
389
|
+
// Regular object — recurse into values
|
|
390
|
+
const result = {};
|
|
391
|
+
for (const key of Object.keys(value)) {
|
|
392
|
+
result[key] = unwrapThenableObjects(value[key]);
|
|
393
|
+
}
|
|
394
|
+
return result;
|
|
395
|
+
}
|
|
396
|
+
// ---------------------------------------------------------------------------
|
|
397
|
+
// Fallback: stable JSON serialization for cache keys (when RSC unavailable)
|
|
398
|
+
// ---------------------------------------------------------------------------
|
|
399
|
+
function stableStringify(value, seen) {
|
|
400
|
+
if (value === undefined)
|
|
401
|
+
return "undefined";
|
|
402
|
+
if (value === null)
|
|
403
|
+
return "null";
|
|
404
|
+
// Bail on non-serializable primitives so the caller can skip caching
|
|
405
|
+
if (typeof value === "function")
|
|
406
|
+
throw new Error("Cannot serialize function");
|
|
407
|
+
if (typeof value === "symbol")
|
|
408
|
+
throw new Error("Cannot serialize symbol");
|
|
409
|
+
if (Array.isArray(value)) {
|
|
410
|
+
// Circular reference detection
|
|
411
|
+
if (!seen)
|
|
412
|
+
seen = new Set();
|
|
413
|
+
if (seen.has(value))
|
|
414
|
+
throw new Error("Circular reference");
|
|
415
|
+
seen.add(value);
|
|
416
|
+
const result = "[" + value.map(v => stableStringify(v, seen)).join(",") + "]";
|
|
417
|
+
seen.delete(value);
|
|
418
|
+
return result;
|
|
419
|
+
}
|
|
420
|
+
if (typeof value === "object" && value !== null) {
|
|
421
|
+
if (value instanceof Date) {
|
|
422
|
+
return `Date(${value.getTime()})`;
|
|
423
|
+
}
|
|
424
|
+
// Circular reference detection
|
|
425
|
+
if (!seen)
|
|
426
|
+
seen = new Set();
|
|
427
|
+
if (seen.has(value))
|
|
428
|
+
throw new Error("Circular reference");
|
|
429
|
+
seen.add(value);
|
|
430
|
+
const keys = Object.keys(value).sort();
|
|
431
|
+
const result = "{" + keys.map(k => `${JSON.stringify(k)}:${stableStringify(value[k], seen)}`).join(",") + "}";
|
|
432
|
+
seen.delete(value);
|
|
433
|
+
return result;
|
|
434
|
+
}
|
|
435
|
+
return JSON.stringify(value);
|
|
436
|
+
}
|
|
437
|
+
//# sourceMappingURL=cache-runtime.js.map
|