@zlooks.cn/gateway-server 1.1.2 → 1.1.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/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +2 -2
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/[pluginId]/[[...path]]/page.js +1 -1
- package/.next/server/app/[pluginId]/[[...path]]/page.js.nft.json +1 -1
- package/.next/server/app/[pluginId]/[[...path]]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +4 -4
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/robots.txt/route.js +1 -1
- package/.next/server/app/robots.txt/route.js.nft.json +1 -1
- package/.next/server/app-paths-manifest.json +2 -2
- package/.next/server/chunks/10.js +1 -1
- package/.next/server/chunks/209.js +1 -0
- package/.next/server/chunks/699.js +2 -0
- package/.next/server/chunks/851.js +30 -0
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/126-11f17c983c22b3cc.js +1 -0
- package/.next/static/chunks/{794-5714a60fe83c23f4.js → 533-a0eb71efc28ef080.js} +1 -1
- package/.next/static/chunks/app/[pluginId]/[[...path]]/page-61a0e639bc176ceb.js +1 -0
- package/.next/static/chunks/app/layout-dc1f1a9af8d28a51.js +1 -0
- package/.next/trace +22 -22
- package/.next/trace-build +1 -1
- package/dist/runtime/rsc-document-metadata.d.ts +5 -0
- package/dist/runtime/rsc-document-metadata.d.ts.map +1 -0
- package/dist/runtime/rsc-document-metadata.js +70 -0
- package/dist/runtime/rsc-document-metadata.js.map +1 -0
- package/dist/runtime/rsc-initial-context.d.ts +11 -0
- package/dist/runtime/rsc-initial-context.d.ts.map +1 -1
- package/dist/runtime/rsc-initial-context.js +9 -2
- package/dist/runtime/rsc-initial-context.js.map +1 -1
- package/dist/runtime/rsc-plugin-renderer.d.ts +4 -2
- package/dist/runtime/rsc-plugin-renderer.d.ts.map +1 -1
- package/dist/runtime/rsc-plugin-renderer.js +36 -9
- package/dist/runtime/rsc-plugin-renderer.js.map +1 -1
- package/package.json +7 -7
- package/.next/server/chunks/35.js +0 -1
- package/.next/server/chunks/583.js +0 -30
- package/.next/server/chunks/944.js +0 -2
- package/.next/static/chunks/486-d7cdf2b4df4508ea.js +0 -1
- package/.next/static/chunks/app/[pluginId]/[[...path]]/page-f730564a4376a5bb.js +0 -1
- package/.next/static/chunks/app/layout-d236ca5c8c4d0c48.js +0 -1
- /package/.next/static/{oYH3cnEF9hqSiTnfd0G87 → Rhw5NLhwb-p6pTE9SuVEY}/_buildManifest.js +0 -0
- /package/.next/static/{oYH3cnEF9hqSiTnfd0G87 → Rhw5NLhwb-p6pTE9SuVEY}/_ssgManifest.js +0 -0
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-webpack","duration":
|
|
1
|
+
[{"name":"run-webpack","duration":129366992,"timestamp":2011470214274,"id":14,"parentId":1,"tags":{},"startTime":1790238900423,"traceId":"63094a252d2b8687"},{"name":"run-typescript","duration":1940354,"timestamp":2011599596069,"id":4573,"parentId":1,"tags":{},"startTime":1790239029808,"traceId":"63094a252d2b8687"},{"name":"static-check","duration":3182520,"timestamp":2011601631547,"id":4576,"parentId":1,"tags":{},"startTime":1790239031844,"traceId":"63094a252d2b8687"},{"name":"static-generation","duration":5753220,"timestamp":2011605485581,"id":4594,"parentId":1,"tags":{},"startTime":1790239035698,"traceId":"63094a252d2b8687"},{"name":"collect-build-traces","duration":25251624,"timestamp":2011604815303,"id":4591,"parentId":1,"tags":{},"startTime":1790239035028,"traceId":"63094a252d2b8687"},{"name":"telemetry-flush","duration":103,"timestamp":2011630077057,"id":4602,"parentId":1,"tags":{},"startTime":1790239060290,"traceId":"63094a252d2b8687"},{"name":"next-build","duration":160613410,"timestamp":2011469463823,"id":1,"tags":{"buildMode":"default","version":"16.3.0","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1790238899672,"traceId":"63094a252d2b8687"}]
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { RscDocumentMetadata } from '@hile/rsc/plugin';
|
|
2
|
+
import type { Metadata } from 'next';
|
|
3
|
+
export declare function createNextMetadataFromRscDocument(value: RscDocumentMetadata | undefined, publicOrigin: string): Metadata;
|
|
4
|
+
export declare function noIndexMetadata(): Metadata;
|
|
5
|
+
//# sourceMappingURL=rsc-document-metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rsc-document-metadata.d.ts","sourceRoot":"","sources":["../../src/runtime/rsc-document-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAErC,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,mBAAmB,GAAG,SAAS,EACtC,YAAY,EAAE,MAAM,GACnB,QAAQ,CA2BV;AAED,wBAAgB,eAAe,IAAI,QAAQ,CAE1C"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { parseZlooksDocumentMetadata, } from '@zlooks.cn/ui/seo';
|
|
2
|
+
export function createNextMetadataFromRscDocument(value, publicOrigin) {
|
|
3
|
+
if (value === undefined)
|
|
4
|
+
return noIndexMetadata();
|
|
5
|
+
const document = parseZlooksDocumentMetadata(value);
|
|
6
|
+
const publicOriginUrl = new URL(publicOrigin);
|
|
7
|
+
const canonical = new URL(document.canonicalPath, publicOriginUrl);
|
|
8
|
+
if (canonical.origin !== publicOriginUrl.origin) {
|
|
9
|
+
throw new Error('RSC document canonical URL must remain on the public Origin');
|
|
10
|
+
}
|
|
11
|
+
const canonicalUrl = canonical.toString();
|
|
12
|
+
const imageUrl = document.openGraph.imageUrl
|
|
13
|
+
? resolveImageUrl(document.openGraph.imageUrl, publicOrigin)
|
|
14
|
+
: undefined;
|
|
15
|
+
const index = document.robots === 'index, follow';
|
|
16
|
+
return {
|
|
17
|
+
title: document.title,
|
|
18
|
+
description: document.description,
|
|
19
|
+
applicationName: document.siteName,
|
|
20
|
+
alternates: { canonical: canonicalUrl },
|
|
21
|
+
robots: robotsMetadata(index),
|
|
22
|
+
openGraph: createOpenGraph(document, canonicalUrl, imageUrl),
|
|
23
|
+
twitter: {
|
|
24
|
+
card: imageUrl ? 'summary_large_image' : 'summary',
|
|
25
|
+
title: document.title,
|
|
26
|
+
description: document.description,
|
|
27
|
+
...(imageUrl ? { images: [imageUrl] } : {}),
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export function noIndexMetadata() {
|
|
32
|
+
return { robots: robotsMetadata(false) };
|
|
33
|
+
}
|
|
34
|
+
function robotsMetadata(index) {
|
|
35
|
+
return {
|
|
36
|
+
index,
|
|
37
|
+
follow: index,
|
|
38
|
+
googleBot: { index, follow: index },
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
function createOpenGraph(document, canonicalUrl, imageUrl) {
|
|
42
|
+
const common = {
|
|
43
|
+
title: document.title,
|
|
44
|
+
description: document.description,
|
|
45
|
+
siteName: document.siteName,
|
|
46
|
+
locale: 'zh_CN',
|
|
47
|
+
url: canonicalUrl,
|
|
48
|
+
...(imageUrl ? { images: [{ url: imageUrl }] } : {}),
|
|
49
|
+
};
|
|
50
|
+
return document.openGraph.type === 'article'
|
|
51
|
+
? {
|
|
52
|
+
...common,
|
|
53
|
+
type: 'article',
|
|
54
|
+
...(document.openGraph.publishedTime
|
|
55
|
+
? { publishedTime: document.openGraph.publishedTime }
|
|
56
|
+
: {}),
|
|
57
|
+
...(document.openGraph.modifiedTime
|
|
58
|
+
? { modifiedTime: document.openGraph.modifiedTime }
|
|
59
|
+
: {}),
|
|
60
|
+
}
|
|
61
|
+
: { ...common, type: 'website' };
|
|
62
|
+
}
|
|
63
|
+
function resolveImageUrl(value, publicOrigin) {
|
|
64
|
+
const url = new URL(value, publicOrigin);
|
|
65
|
+
if (!/^https?:$/.test(url.protocol)) {
|
|
66
|
+
throw new Error('RSC document image URL must use HTTP(S)');
|
|
67
|
+
}
|
|
68
|
+
return url.toString();
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=rsc-document-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rsc-document-metadata.js","sourceRoot":"","sources":["../../src/runtime/rsc-document-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,5 +25,16 @@ export declare function readRscInitialContext(options: {
|
|
|
25
25
|
readonly params: Record<string, string>;
|
|
26
26
|
readonly shell: ZlooksRscShellContext;
|
|
27
27
|
}>;
|
|
28
|
+
/** Public, non-personalized context for route document metadata resolution. */
|
|
29
|
+
export declare function createRscDocumentContext(options: {
|
|
30
|
+
readonly globalConfig: SitePresentationSnapshot;
|
|
31
|
+
readonly origin: string;
|
|
32
|
+
readonly pathname: string;
|
|
33
|
+
readonly policy: Pick<GatewayRscAccessPolicy, 'canDiscover'>;
|
|
34
|
+
readonly rsc: InitialContextSource;
|
|
35
|
+
}): {
|
|
36
|
+
readonly params: Record<string, string>;
|
|
37
|
+
readonly shell: ZlooksRscShellContext;
|
|
38
|
+
};
|
|
28
39
|
export {};
|
|
29
40
|
//# sourceMappingURL=rsc-initial-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc-initial-context.d.ts","sourceRoot":"","sources":["../../src/runtime/rsc-initial-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAK1D,OAAO,EAGL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7E,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;CAClF;AAED,UAAU,oBAAoB;IAC5B,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAC7D,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B,GAAG,OAAO,CAAC;IACV,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;CACvC,CAAC,
|
|
1
|
+
{"version":3,"file":"rsc-initial-context.d.ts","sourceRoot":"","sources":["../../src/runtime/rsc-initial-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAK1D,OAAO,EAGL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7E,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;CAClF;AAED,UAAU,oBAAoB;IAC5B,IAAI,CACF,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,QAAQ,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAC7D,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC;IACnC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B,GAAG,OAAO,CAAC;IACV,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;CACvC,CAAC,CAGD;AAED,+EAA+E;AAC/E,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC;IAC7D,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC;CACpC,GAAG;IACF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;CACvC,CAEA"}
|
|
@@ -7,6 +7,13 @@ import { serializeZlooksRscShellContext, ZLOOKS_RSC_SHELL_CONTEXT_PARAM, } from
|
|
|
7
7
|
import { listGatewayNavigation } from './rsc-navigation.js';
|
|
8
8
|
export async function readRscInitialContext(options) {
|
|
9
9
|
const user = await readGatewayUserShell(options);
|
|
10
|
+
return createRscPresentationContext(options, user, options.sessionToken);
|
|
11
|
+
}
|
|
12
|
+
/** Public, non-personalized context for route document metadata resolution. */
|
|
13
|
+
export function createRscDocumentContext(options) {
|
|
14
|
+
return createRscPresentationContext(options, { status: 'unavailable' });
|
|
15
|
+
}
|
|
16
|
+
function createRscPresentationContext(options, user, sessionToken) {
|
|
10
17
|
const shell = {
|
|
11
18
|
navigation: listGatewayNavigation(options.rsc, options.policy),
|
|
12
19
|
origin: options.origin,
|
|
@@ -17,8 +24,8 @@ export async function readRscInitialContext(options) {
|
|
|
17
24
|
[GLOBAL_CONFIG_RSC_PARAM]: serializeGlobalConfigRscSnapshot(options.globalConfig),
|
|
18
25
|
[ZLOOKS_RSC_SHELL_CONTEXT_PARAM]: serializeZlooksRscShellContext(shell),
|
|
19
26
|
};
|
|
20
|
-
if (
|
|
21
|
-
params[USER_RSC_SESSION_PARAM] =
|
|
27
|
+
if (sessionToken) {
|
|
28
|
+
params[USER_RSC_SESSION_PARAM] = sessionToken;
|
|
22
29
|
}
|
|
23
30
|
return { params, shell };
|
|
24
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc-initial-context.js","sourceRoot":"","sources":["../../src/runtime/rsc-initial-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EACL,+BAA+B,GAEhC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,gCAAgC,GAEjC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,GAE/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAiBzD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAU3C;IAIC,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,KAAK,GAA0B;QACnC,UAAU,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;QAC9D,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI;KACL,CAAC;IACF,MAAM,MAAM,GAA2B;QACrC,CAAC,uBAAuB,CAAC,EAAE,gCAAgC,CAAC,OAAO,CAAC,YAAY,CAAC;QACjF,CAAC,8BAA8B,CAAC,EAAE,8BAA8B,CAAC,KAAK,CAAC;KACxE,CAAC;IACF,IAAI,
|
|
1
|
+
{"version":3,"file":"rsc-initial-context.js","sourceRoot":"","sources":["../../src/runtime/rsc-initial-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EACL,+BAA+B,GAEhC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,gCAAgC,GAEjC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,aAAa,IAAI,aAAa,EAC9B,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,GAE/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAiBzD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAU3C;IAIC,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;AAC3E,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,wBAAwB,CAAC,OAMxC;IAIC,OAAO,4BAA4B,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,4BAA4B,CACnC,OAMC,EACD,IAAmC,EACnC,YAAqB;IAKrB,MAAM,KAAK,GAA0B;QACnC,UAAU,EAAE,qBAAqB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC;QAC9D,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI;KACL,CAAC;IACF,MAAM,MAAM,GAA2B;QACrC,CAAC,uBAAuB,CAAC,EAAE,gCAAgC,CAAC,OAAO,CAAC,YAAY,CAAC;QACjF,CAAC,8BAA8B,CAAC,EAAE,8BAA8B,CAAC,KAAK,CAAC;KACxE,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,CAAC,sBAAsB,CAAC,GAAG,YAAY,CAAC;IAChD,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,OAKnC;IACC,IAAI,CAAC;QACH,OAAO,MAAM,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE;YAC9C,OAAO,EAAE,sBAAsB,CAAoB,OAAO,CAAC,YAAY;gBACrE,CAAC,CAAC;oBACE,CAAC,+BAA+B,CAAC,EAAE;wBACjC,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC,YAAY;qBAC5C;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,CAAC;YACV,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC5B,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAClB,GAAG,EAAE,KAAK;YACV,KAAK,EAAE,+BAA+B;SACvC,EAAE,sCAAsC,CAAC,CAAC;QAC3C,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IACnC,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ExecutionContext } from '@hile/context';
|
|
2
|
+
import type { RscDocumentMetadata } from '@hile/rsc/plugin';
|
|
2
3
|
import type { ReactNode } from 'react';
|
|
3
4
|
import type { Logger } from '@hile/logger';
|
|
4
5
|
import { type RscResolvedStyleAsset } from '@hile/rsc/host';
|
|
@@ -11,7 +12,7 @@ export interface RscPluginRenderResult {
|
|
|
11
12
|
readonly styles: readonly RscResolvedStyleAsset[];
|
|
12
13
|
readonly tree: ReactNode;
|
|
13
14
|
}
|
|
14
|
-
interface
|
|
15
|
+
export interface RscPluginRequest {
|
|
15
16
|
readonly rsc: RscRuntimeView;
|
|
16
17
|
readonly config: GatewayConfig;
|
|
17
18
|
readonly logger: RuntimeLogger;
|
|
@@ -25,7 +26,8 @@ interface RscPluginRenderRequest {
|
|
|
25
26
|
}
|
|
26
27
|
export declare class RscPluginRenderer {
|
|
27
28
|
#private;
|
|
28
|
-
|
|
29
|
+
documentMetadata(request: RscPluginRequest): Promise<RscDocumentMetadata | undefined>;
|
|
30
|
+
render(request: RscPluginRequest): Promise<RscPluginRenderResult | undefined>;
|
|
29
31
|
}
|
|
30
32
|
export {};
|
|
31
33
|
//# sourceMappingURL=rsc-plugin-renderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc-plugin-renderer.d.ts","sourceRoot":"","sources":["../../src/runtime/rsc-plugin-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,KAAK,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;AAE7D,KAAK,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;AAEzF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CAC1B;AAED,
|
|
1
|
+
{"version":3,"file":"rsc-plugin-renderer.d.ts","sourceRoot":"","sources":["../../src/runtime/rsc-plugin-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,KAAK,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;AAE7D,KAAK,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;AAEzF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IACpD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;CACpC;AAED,qBAAa,iBAAiB;;IAGf,gBAAgB,CAC3B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAqB1C;IAEY,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CA+BzF;CAUF"}
|
|
@@ -3,7 +3,7 @@ import { RscHostRuntime } from '@hile/rsc/host/runtime';
|
|
|
3
3
|
import { decodePluginFlight } from '@hile/rsc-next';
|
|
4
4
|
export class RscPluginRenderer {
|
|
5
5
|
#manifestVerificationCache = new Map();
|
|
6
|
-
async
|
|
6
|
+
async documentMetadata(request) {
|
|
7
7
|
const active = request.rsc.deployments.getActive(request.pluginId);
|
|
8
8
|
if (!active)
|
|
9
9
|
return undefined;
|
|
@@ -13,12 +13,30 @@ export class RscPluginRenderer {
|
|
|
13
13
|
path: request.path,
|
|
14
14
|
}))
|
|
15
15
|
return undefined;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
return this.#runtime(request).documentMetadata({
|
|
17
|
+
pluginId: request.pluginId,
|
|
18
|
+
context: request.context,
|
|
19
|
+
request: {
|
|
20
|
+
buildId: active.buildId,
|
|
21
|
+
path: request.path,
|
|
22
|
+
...(request.params ? { params: request.params } : {}),
|
|
23
|
+
searchParams: request.searchParams,
|
|
24
|
+
},
|
|
25
|
+
...(request.signal ? { signal: request.signal } : {}),
|
|
26
|
+
timeout: Math.min(request.config.rsc.render.timeoutMs, 5_000),
|
|
21
27
|
});
|
|
28
|
+
}
|
|
29
|
+
async render(request) {
|
|
30
|
+
const active = request.rsc.deployments.getActive(request.pluginId);
|
|
31
|
+
if (!active)
|
|
32
|
+
return undefined;
|
|
33
|
+
if (!request.policy.canRender({
|
|
34
|
+
pluginId: request.pluginId,
|
|
35
|
+
buildId: active.buildId,
|
|
36
|
+
path: request.path,
|
|
37
|
+
}))
|
|
38
|
+
return undefined;
|
|
39
|
+
const runtime = this.#runtime(request);
|
|
22
40
|
const styles = resolveRscStyleAssets(request.rsc.artifacts, request.pluginId, active.buildId, createRscAssetUrls(request.config.rsc.assetMountPath));
|
|
23
41
|
const tree = await runtime.render({
|
|
24
42
|
pluginId: request.pluginId,
|
|
@@ -36,15 +54,24 @@ export class RscPluginRenderer {
|
|
|
36
54
|
});
|
|
37
55
|
return { styles, tree };
|
|
38
56
|
}
|
|
57
|
+
#runtime(request) {
|
|
58
|
+
return new RscHostRuntime({
|
|
59
|
+
locator: request.rsc.locator,
|
|
60
|
+
decoder: { decode: (flight) => decodePluginFlight(flight) },
|
|
61
|
+
verificationCache: this.#manifestVerificationCache,
|
|
62
|
+
observe: (event) => observeRscOperation(request.logger, event),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
39
65
|
}
|
|
40
|
-
function
|
|
66
|
+
function observeRscOperation(logger, event) {
|
|
41
67
|
logger.info({
|
|
42
|
-
event: 'rsc.
|
|
68
|
+
event: 'rsc.host.operation.completed',
|
|
69
|
+
operation: event.operation,
|
|
43
70
|
pluginId: event.pluginId,
|
|
44
71
|
buildId: event.buildId,
|
|
45
72
|
outcome: event.outcome,
|
|
46
73
|
durationMs: Math.round(event.durationMs),
|
|
47
74
|
bytes: event.bytes,
|
|
48
|
-
}, 'RSC
|
|
75
|
+
}, 'RSC Host operation completed');
|
|
49
76
|
}
|
|
50
77
|
//# sourceMappingURL=rsc-plugin-renderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rsc-plugin-renderer.js","sourceRoot":"","sources":["../../src/runtime/rsc-plugin-renderer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rsc-plugin-renderer.js","sourceRoot":"","sources":["../../src/runtime/rsc-plugin-renderer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zlooks.cn/gateway-server",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -44,18 +44,18 @@
|
|
|
44
44
|
"@hile/micro": "4.0.9",
|
|
45
45
|
"@hile/reactivity": "3.0.2",
|
|
46
46
|
"@hile/reloader": "3.0.4",
|
|
47
|
-
"@hile/rsc": "1.0.
|
|
48
|
-
"@hile/rsc-discovery-hile": "1.0.
|
|
49
|
-
"@hile/rsc-next": "1.0.
|
|
47
|
+
"@hile/rsc": "1.0.25",
|
|
48
|
+
"@hile/rsc-discovery-hile": "1.0.22",
|
|
49
|
+
"@hile/rsc-next": "1.0.23",
|
|
50
50
|
"@koa/bodyparser": "6.1.0",
|
|
51
51
|
"@zlooks.cn/browser-api": "1.0.2",
|
|
52
52
|
"@zlooks.cn/global-config-shared": "1.0.2",
|
|
53
53
|
"@zlooks.cn/public-asset": "1.0.3",
|
|
54
54
|
"@zlooks.cn/public-host-contract": "1.0.0",
|
|
55
55
|
"@zlooks.cn/registry-config": "1.0.1",
|
|
56
|
-
"@zlooks.cn/service-command": "1.0.
|
|
56
|
+
"@zlooks.cn/service-command": "1.0.4",
|
|
57
57
|
"@zlooks.cn/sitemap-contract": "1.0.2",
|
|
58
|
-
"@zlooks.cn/ui": "1.1.
|
|
58
|
+
"@zlooks.cn/ui": "1.1.2",
|
|
59
59
|
"@zlooks.cn/user-shared": "1.1.1",
|
|
60
60
|
"@zlooks.cn/utils": "1.0.0",
|
|
61
61
|
"antd": "6.6.1",
|
|
@@ -74,5 +74,5 @@
|
|
|
74
74
|
"typescript": "7.0.2",
|
|
75
75
|
"vitest": "4.1.11"
|
|
76
76
|
},
|
|
77
|
-
"gitHead": "
|
|
77
|
+
"gitHead": "5f1145d32518a984162fd8b12b726a4132f6207c"
|
|
78
78
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=35,exports.ids=[35],exports.modules={5200:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(87984).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/evioshen/code/github/cevio/www.zlooks.cn/packages/gateway-server/src/app/rsc-client-runtime.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/evioshen/code/github/cevio/www.zlooks.cn/packages/gateway-server/src/app/rsc-client-runtime.tsx","default")},12265:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95082,23)),Promise.resolve().then(c.t.bind(c,20125,23)),Promise.resolve().then(c.t.bind(c,13261,23)),Promise.resolve().then(c.t.bind(c,36804,23)),Promise.resolve().then(c.t.bind(c,76028,23)),Promise.resolve().then(c.t.bind(c,70168,23)),Promise.resolve().then(c.t.bind(c,82337,23)),Promise.resolve().then(c.bind(c,89352))},17322:(a,b,c)=>{"use strict";c.d(b,{o:()=>aK});var d=c(18509),e=c(50781),f=c(37714),g=c(62710),h=c(29951),i=c(28621);let j=g.Yj().max(256).regex(/^[a-z][a-z0-9]*(?:\.[a-z][a-z0-9-]*)+\.v[1-9][0-9]*$/),k=g.Yj().max(256).regex(/^[a-z][a-z0-9]*(?:\.[a-z][a-z0-9]*)+$/),l=g.Yj().regex(/^[a-z][a-z0-9-]{0,63}$/),m=g.Yj().trim().min(1).max(256),n=g.Yj().max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/),o=g.Yj().max(128).regex(/^@zlooks\.cn\/[a-z0-9]+(?:-[a-z0-9]+)*$/),p=g.Yj().max(128).regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/),q=g.Yj().trim().min(1).max(120),r=g.Yj().trim().min(1).max(1e3),s=g.Pq(),t=g.re({protocol:g.eu("zlooks.event"),protocolVersion:g.eu(1),eventId:g.uR(),type:j,producer:k,aggregate:g.re({type:l,id:m}).readonly(),occurredAt:h.w$({offset:!0}),data:s}).readonly();function u(a,b,c){let d=j.parse(a),e=k.parse(c.producer),f=l.parse(c.aggregateType),g=c.aggregateId;if("function"!=typeof g)throw TypeError("Event aggregateId must be a function");return Object.freeze({type:d,producer:e,aggregateType:f,dataSchema:b,parse(a){let c,h=Object.freeze({...c=t.parse(a),aggregate:Object.freeze({...c.aggregate})});if(h.type!==d)throw TypeError(`Expected event type ${d}`);if(h.producer!==e)throw TypeError(`Expected event producer ${e}`);let i=b.parse(h.data);s.parse(i);let j=m.parse(g(i));if(h.aggregate.type!==f||h.aggregate.id!==j)throw TypeError(`${d} aggregate does not identify its event data`);return Object.freeze({...h,type:d,aggregate:Object.freeze({...h.aggregate}),data:i})}})}let v="cn.zlooks.user.server",w=g.k5(["logout","user-request","family-limit","credential-recovery"]),x=g.Yj().refine(a=>a===a.trim().normalize("NFKC"),"Display name must be normalized").refine(a=>Array.from(a).length>=1&&Array.from(a).length<=160,"Display name must contain 1 to 160 Unicode code points"),y=g.Yj().refine(a=>a===a.trim().normalize("NFKC"),"Bio must be normalized").refine(a=>Array.from(a).length>=1&&Array.from(a).length<=500,"Bio must contain 1 to 500 Unicode code points"),z=g.OZ().max(2048).refine(a=>{let b=new URL(a).protocol;return"http:"===b||"https:"===b},"URL must use HTTP or HTTPS").refine(a=>a===new URL(a).toString(),"URL must be canonical"),A=g.Rp().max(320).refine(a=>a===a.toLocaleLowerCase("en-US"),"Email must be lowercase"),B=g.re({id:g.uR(),displayName:x.nullable(),avatar:z.nullable(),homepage:z.nullable(),bio:y.nullable(),email:A.nullable(),emailVerified:g.zM(),status:g.k5(["active","disabled","deleted"]),createdAt:h.w$({offset:!0}),updatedAt:h.w$({offset:!0}),version:g.ai().int().positive()}).superRefine((a,b)=>{a.emailVerified&&null===a.email&&b.addIssue({code:"custom",message:"A verified user snapshot must include its email",path:["email"]}),Date.parse(a.updatedAt)<Date.parse(a.createdAt)&&b.addIssue({code:"custom",message:"User updated time must not precede creation time",path:["updatedAt"]})}).readonly(),C=g.re({id:g.uR(),userId:g.uR(),createdAt:h.w$({offset:!0}),expiresAt:h.w$({offset:!0}),lastSeenAt:h.w$({offset:!0}),revokedAt:h.w$({offset:!0}).nullable(),revokeReason:w.nullable()}).superRefine((a,b)=>{let c=Date.parse(a.createdAt);null===a.revokedAt!=(null===a.revokeReason)&&b.addIssue({code:"custom",message:"Session revocation time and reason must be present together",path:["revokedAt"]}),Date.parse(a.expiresAt)<=c&&b.addIssue({code:"custom",message:"Session expiry must follow creation time",path:["expiresAt"]});let d=Date.parse(a.lastSeenAt);(d<c||d>Date.parse(a.expiresAt))&&b.addIssue({code:"custom",message:"Session last-seen time must fall within its lifetime",path:["lastSeenAt"]}),null!==a.revokedAt&&Date.parse(a.revokedAt)<c&&b.addIssue({code:"custom",message:"Session revoked time must not precede creation time",path:["revokedAt"]})}).readonly();function D(a,b,c,d){return u(a,c,{producer:v,aggregateType:b,aggregateId:d})}let E=D("cn.zlooks.user.registered.v1","user",g.re({user:B}).refine(a=>"active"===a.user.status,{message:"A registered user snapshot must be active",path:["user","status"]}).readonly(),a=>a.user.id),F=D("cn.zlooks.user.email-verified.v1","user",g.re({user:B}).refine(a=>null!==a.user.email&&a.user.emailVerified,{message:"An email-verified event must contain a verified email snapshot",path:["user","emailVerified"]}).readonly(),a=>a.user.id),G=g.k5(["displayName","avatar","homepage","bio"]);!function(a){let b=n.parse(a.providerId),c=q.parse(a.displayName),d=o.parse(a.contractPackage);if(0===a.events.length||a.events.length>256)throw TypeError("Event catalog must contain between 1 and 256 events");let e=a.events[0].definition.producer,f=new Set,g=new Set,h=a.events.map(a=>{var b;if(a.definition.producer!==e)throw TypeError("Event catalog definitions must have one producer");if(f.has(a.definition.type))throw TypeError("Event catalog event types must be unique");let c=p.parse(a.consumerExport);if(g.has(c))throw TypeError("Event catalog Consumer exports must be unique");f.add(a.definition.type),g.add(c);let h=function a(b){var c;if(null===b||"string"==typeof b||"boolean"==typeof b||"number"==typeof b&&Number.isFinite(b))return b;if(Array.isArray(b))return Object.freeze(b.map(a));if(null!==(c=b)&&"object"==typeof c&&!Array.isArray(c))return Object.freeze(Object.fromEntries(Object.entries(b).filter(([,a])=>void 0!==a).map(([b,c])=>[b,a(c)])));throw TypeError("Event JSON Schema contains a non-JSON value")}(i.bl(a.definition.dataSchema,{target:"draft-2020-12",unrepresentable:"any",io:"input"}));if(!(null!==(b=h)&&"object"==typeof b&&!Array.isArray(b)))throw TypeError("Event data schema must serialize to a JSON object");return Object.freeze({type:a.definition.type,title:q.parse(a.title),description:r.parse(a.description),producer:e,aggregateType:a.definition.aggregateType,consumer:Object.freeze({packageName:d,exportName:c}),dataSchema:h})});Object.freeze({protocol:"zlooks.event-catalog",protocolVersion:1,providerId:b,displayName:c,producer:e,contractPackage:d,count:h.length,delivery:Object.freeze({guarantee:"at-least-once",deduplicateBy:"eventId"}),events:Object.freeze(h)})}({providerId:"user",displayName:"用户服务事件",contractPackage:"@zlooks.cn/user-shared",events:[{definition:E,title:"用户已注册",description:"用户账户已经完成持久化创建并处于可用状态。",consumerExport:"consumeUserRegisteredEvent"},{definition:F,title:"用户邮箱已验证",description:"用户邮箱从未验证状态真实转换为已验证状态。",consumerExport:"consumeUserEmailVerifiedEvent"},{definition:D("cn.zlooks.user.profile-updated.v1","user",g.re({user:B,changedFields:g.YO(G).min(1).max(4).refine(a=>new Set(a).size===a.length,"Profile fields must be unique").readonly()}).readonly(),a=>a.user.id),title:"用户资料已更新",description:"用户公开资料字段发生真实变化并携带变更后的完整安全快照。",consumerExport:"consumeUserProfileUpdatedEvent"},{definition:D("cn.zlooks.user.session-created.v1","session-family",g.re({user:B,sessionFamily:C,intent:g.k5(["login","registration","recovery"])}).superRefine((a,b)=>{a.sessionFamily.userId!==a.user.id&&b.addIssue({code:"custom",message:"Session and user snapshots must identify the same user",path:["sessionFamily","userId"]}),null!==a.sessionFamily.revokedAt&&b.addIssue({code:"custom",message:"A created session snapshot must be active",path:["sessionFamily","revokedAt"]}),"active"!==a.user.status&&b.addIssue({code:"custom",message:"A session-created event must contain an active user snapshot",path:["user","status"]})}).readonly(),a=>a.sessionFamily.id),title:"用户会话族已创建",description:"登录、注册或恢复流程已经创建一个新的活动会话族。",consumerExport:"consumeUserSessionCreatedEvent"},{definition:D("cn.zlooks.user.session-revoked.v1","session-family",g.re({user:B,sessionFamily:C}).superRefine((a,b)=>{a.sessionFamily.userId!==a.user.id&&b.addIssue({code:"custom",message:"Session and user snapshots must identify the same user",path:["sessionFamily","userId"]}),null===a.sessionFamily.revokedAt&&b.addIssue({code:"custom",message:"A revoked session snapshot must include its revocation",path:["sessionFamily","revokedAt"]})}).readonly(),a=>a.sessionFamily.id),title:"用户会话族已撤销",description:"用户会话族从活动状态真实转换为已撤销状态。",consumerExport:"consumeUserSessionRevokedEvent"}]}),(0,e.Sz)(v,"/api/auth/methods"),(0,e.Sz)(v,"/api/auth/transactions"),(0,e.Sz)(v,"/api/auth/logout"),(0,e.Sz)(v,"/api/auth/session/refresh"),(0,e.Sz)(v,"/api/user"),(0,e.Sz)(v,"/api/user/sessions"),Object.freeze({crossOriginRejected:1001,requestRejected:1002,authenticationRequired:1003,sessionExpired:1004,authenticationDenied:1005,authenticationPending:1006,routeNotFound:1007,accountNotFound:1008,accountAlreadyExists:1009,invalidVerificationCode:1010,verificationRateLimited:1011,emailDeliveryFailed:1012,serviceUnavailable:1013});let H=g.Yj().min(1).max(2048).regex(/^\/(?!\/)[^?#]*$/),I=g.gM("status",[g.re({status:g.eu("anonymous"),loginMethods:g.YO(g.re({id:g.Yj().min(1).max(128),label:g.Yj().min(1).max(80),href:H})).max(64)}),g.re({status:g.eu("authenticated"),user:g.re({label:g.Yj().min(1).max(160),secondary:g.Yj().min(1).max(320).optional(),avatarText:g.Yj().min(1).max(8),avatarUrl:g.OZ({protocol:/^https?$/}).max(2048).optional()}),accountHref:H,logoutHref:H})]).readonly(),J=g.gM("action",[g.re({action:g.eu("set"),value:g.Yj().min(1).max(4096),expiresAt:h.w$({offset:!0})}),g.re({action:g.eu("clear")})]),K=g.Yj().min(1).max(4096),L=g.Yj().trim().min(1).max(128),M=g.re({id:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),label:g.Yj().trim().min(1).max(80),capabilities:g.re({login:g.zM(),registration:g.zM()}),rsc:g.re({pluginId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),slots:g.re({login:H.optional(),registration:H.optional()})})}).readonly(),N=g.re({}).readonly(),O=g.re({methods:g.YO(M).max(64).readonly()}).readonly(),P=g.re({methodId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),intent:g.k5(["login","registration","linking","reauthentication","recovery"]),loginHint:g.Yj().trim().min(1).max(320).optional(),requestContext:g.re({clientKey:g.Yj().min(16).max(128)})}).readonly(),Q=g.gM("status",[g.re({status:g.eu("input-required"),transactionId:g.uR(),methodId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/)}),g.re({status:g.eu("redirect-required"),transactionId:g.uR(),methodId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),redirectUrl:g.OZ().max(4096)}),g.re({status:g.eu("pending"),transactionId:g.uR(),methodId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),retryAfterMs:g.ai().int().min(250).max(6e4)})]).readonly(),R=g.re({input:g.L5()}).readonly(),S=g.gM("status",[g.re({status:g.eu("verified"),session:g.re({token:K,expiresAt:h.w$({offset:!0})}),user:g.L5()}),g.re({status:g.eu("denied"),code:g.Yj().min(1).max(128)}),g.re({status:g.eu("pending"),retryAfterMs:g.ai().int().min(250).max(6e4)})]).readonly(),T=g.re({id:g.Yj().min(1).max(128),displayName:g.Yj().min(1).max(160).optional(),avatar:g.OZ({protocol:/^https?$/}).max(2048).optional(),homepage:g.OZ({protocol:/^https?$/}).max(2048).optional(),bio:g.Yj().max(500).optional(),email:g.Rp().max(320).optional(),emailVerified:g.zM()}).readonly(),U=g.re({user:T}).readonly(),V=g.re({input:g.L5()}).readonly(),W=g.re({id:g.Yj().min(1).max(128),createdAt:h.w$(),lastSeenAt:h.w$(),expiresAt:h.w$(),revoked:g.zM()}).readonly(),X=g.re({sessions:g.YO(W).max(100).readonly()}).readonly(),Y=g.re({revoked:g.zM()}).readonly(),Z=g.re({revoked:g.zM()}).readonly(),$=g.re({session:g.re({token:K,expiresAt:h.w$({offset:!0}),user:T})}).readonly(),_=g.re({protocol:g.eu("zlooks.event-catalog"),protocolVersion:g.eu(1),providerId:g.eu("user"),displayName:g.Yj().min(1).max(160),producer:g.eu(v),contractPackage:g.eu("@zlooks.cn/user-shared"),count:g.eu(5),delivery:g.re({guarantee:g.eu("at-least-once"),deduplicateBy:g.eu("eventId")}),events:g.YO(g.re({type:g.Yj().min(1).max(256),title:g.Yj().min(1).max(160),description:g.Yj().min(1).max(1e3),producer:g.eu(v),aggregateType:g.Yj().min(1).max(128),consumer:g.re({packageName:g.eu("@zlooks.cn/user-shared"),exportName:g.Yj().min(1).max(128)}),dataSchema:g.g1(g.Yj(),g.L5())})).length(5).readonly()}).readonly(),aa=g.re({}).readonly(),ab=g.re({id:g.uR(),displayName:g.Yj().trim().min(1).max(160).nullable(),avatar:g.OZ({protocol:/^https?$/}).max(2048).nullable(),homepage:g.OZ({protocol:/^https?$/}).max(2048).nullable().optional(),bio:g.Yj().trim().min(1).max(500).nullable().optional()}).readonly(),ac=g.gM("authenticated",[g.re({authenticated:g.eu(!1)}),g.re({authenticated:g.eu(!0),user:ab})]).readonly(),ad=g.re({userIds:g.YO(g.uR()).min(1).max(100).refine(a=>new Set(a).size===a.length,{message:"User IDs must be unique"}).readonly()}).readonly(),ae=g.re({users:g.YO(ab).max(100).refine(a=>new Set(a.map(a=>a.id)).size===a.length,{message:"Public user profiles must be unique"}).readonly()}).readonly();g.re({method:g.k5(["GET","POST","PATCH"]),path:H,origin:g.Yj().max(2048).optional(),clientKey:g.Yj().regex(/^[a-f0-9]{64}$/),body:g.L5().optional()}).readonly(),g.re({status:g.ai().int().min(200).max(599).refine(a=>a<300||a>=400),body:e.RW,sessionCookie:J.optional()}).superRefine((a,b)=>{let c=a.status>=200&&a.status<300;!(0,e.lu)(a.body)!==c&&b.addIssue({code:"custom",message:"HTTP status and browser API response code disagree",path:["body","code"]})}).readonly();let af=g.re({protocol:g.eu("zlooks.user.credential-lifecycle"),kind:g.k5(["registration","recovery"]),authenticationTransactionId:g.uR(),extensionId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),methodId:g.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),subject:g.Yj().trim().min(1).max(512),email:g.Rp().max(320),occurredAt:h.w$({offset:!0})}).readonly();u("cn.zlooks.password.credential-lifecycle.v1",af,{producer:"cn.zlooks.password.auth.server",aggregateType:"credential",aggregateId:({subject:a})=>a});let ag=g.re({acknowledged:g.eu(!0)}).readonly();function ah(a){return I.parse(a)}function ai(a){return N.parse(a)}function aj(a){return O.parse(a)}function ak(a){return P.parse(a)}function al(a){return Q.parse(a)}function am(a){return R.parse(a)}function an(a){return S.parse(a)}function ao(a){return U.parse(a)}function ap(a){return V.parse(a)}function aq(a){return X.parse(a)}function ar(a){return Y.parse(a)}function as(a){return Z.parse(a)}function at(a){return $.parse(a)}function au(a){return _.parse(a)}function av(a){return af.parse(a)}function aw(a){return ag.parse(a)}function ax(a){return aa.parse(a)}function ay(a){return ac.parse(a)}function az(a){return ad.parse(a)}function aA(a){return ae.parse(a)}async function aB(a,b,c,d,e,f){let g=e(c);return f(await a.call(v,b,g,d))}async function aC(a,b){return Object.freeze({listAuthenticationMethods:b=>aB(a,"/auth/catalog",{},b,ai,aj),beginAuthentication:(b,c)=>aB(a,"/auth/transactions",b,c,ak,al),completeAuthentication:(b,c,d)=>aB(a,"/auth/transactions/:transactionId/complete".replace(":transactionId",encodeURIComponent(g.Yj().trim().min(1).max(128).parse(b))),c,d,am,an),logout:b=>aB(a,"/auth/logout",{},b,ai,as),refreshSession:b=>aB(a,"/auth/session/refresh",{},b,ai,at),applyCredentialLifecycle:(b,c)=>aB(a,"/auth/credential-lifecycle",b,c,av,aw),readCurrentUser:b=>aB(a,"/users/current",{},b,ax,ay),readPublicProfiles:async(b,c)=>{let d=az(b),e=await aB(a,"/users/public-profiles",d,c,az,aA),f=new Set(d.userIds);if(e.users.some(a=>!f.has(a.id)))throw TypeError("User service returned a public profile that was not requested");return e},readAccount:b=>aB(a,"/users/me",{},b,ai,ao),updateAccount:(b,c)=>aB(a,"/users/me/update",b,c,ap,ao),listAccountSessions:b=>aB(a,"/users/me/sessions",{},b,ai,aq),revokeAccountSession:(b,c)=>aB(a,"/users/me/sessions/:familyId/revoke".replace(":familyId",encodeURIComponent(L.parse(b))),{},c,ai,ar),readShell:b=>aB(a,"/users/shell",{},b,ai,ah),readEventCatalog:b=>aB(a,"/events/catalog",{},b,ai,au)}).readShell(b)}var aD=c(70349);let aE=g.Yj().min(1).max(2048).regex(/^\/(?!\/)[^?#]*$/),aF=g.OZ().refine(a=>{let b=new URL(a);return("http:"===b.protocol||"https:"===b.protocol)&&!b.username&&!b.password&&"/"===b.pathname&&!b.search&&!b.hash},"Public origin must be one canonical HTTP(S) origin"),aG=g.re({key:g.Yj().min(1).max(256),label:g.Yj().min(1).max(160),href:aE,order:g.ai().finite()}),aH=g.re({navigation:g.YO(aG).max(256),origin:aF,pathname:aE,user:g.L5()}),aI=g.re({status:g.eu("unavailable")});var aJ=c(22299);async function aK(a){var b,c,d,e;let g,h,i=await aL(a),j={navigation:(b=a.rsc,c=a.policy,(0,aJ.l)(b.deployments,b.artifacts).filter(({pluginId:a,buildId:b})=>c.canDiscover({pluginId:a,buildId:b})).flatMap(({pluginId:a,metadata:b})=>(b?.navigation??[]).map(b=>{var c,d;return{key:`${a}:${b.id}`,label:b.label,href:(c=a,d=b.path,`/${encodeURIComponent(c)}${"/"===d?"":d}`),order:b.order??0}})).sort((a,b)=>a.order-b.order||a.key.localeCompare(b.key))),origin:a.origin,pathname:a.pathname,user:i},k={[f.qe]:(0,f.WA)(a.globalConfig),__zlooks_shell_context:JSON.stringify((d=j,{navigation:(g=aH.parse(d)).navigation,origin:g.origin,pathname:g.pathname,user:(e=g.user,(h=aI.safeParse(e)).success?h.data:ah(e))}))};return a.sessionToken&&(k.__zlooks_user_session=a.sessionToken),{params:k,shell:j}}async function aL(a){try{return await aC(a.application,{context:(0,d.eC)(a.sessionToken?{[e.Ih]:{[aD.CY]:a.sessionToken}}:{}),timeout:1500,retries:0,...a.signal?{signal:a.signal}:{}})}catch(b){if(a.signal?.aborted)throw a.signal.reason??Error("RSC shell request was aborted");return a.logger.warn({err:b,event:"gateway.rsc-shell.unavailable"},"User shell projection is unavailable"),{status:"unavailable"}}}},25041:(a,b,c)=>{Promise.resolve().then(c.bind(c,121)),Promise.resolve().then(c.bind(c,84573))},34769:(a,b,c)=>{Promise.resolve().then(c.bind(c,2131)),Promise.resolve().then(c.bind(c,5200))},47113:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,30816,23)),Promise.resolve().then(c.t.bind(c,86955,23)),Promise.resolve().then(c.t.bind(c,61031,23)),Promise.resolve().then(c.t.bind(c,82922,23)),Promise.resolve().then(c.t.bind(c,78814,23)),Promise.resolve().then(c.t.bind(c,47898,23)),Promise.resolve().then(c.t.bind(c,5119,23)),Promise.resolve().then(c.t.bind(c,85706,23))},63788:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95082,23))},67018:()=>{},71736:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>l,dynamic:()=>k,metadata:()=>j});var d=c(68108),e=c(99103),f=c(37922),g=c(97242),h=c(22299),i=c(5200);c(54361),c(67018),c(95751);let j={referrer:"strict-origin-when-cross-origin",icons:{icon:[{url:"/favicon.ico",type:"image/svg+xml"}]},formatDetection:{email:!1,address:!1,telephone:!1}},k="force-dynamic";async function l({children:a}){return(await (0,f.oV)(g.A)).withCurrent(({config:b,rsc:c,rscAccessPolicy:f})=>(0,d.jsx)("html",{lang:"zh-CN",children:(0,d.jsx)("body",{children:(0,d.jsx)(e.Z,{children:(0,d.jsx)(i.default,{assetMountPath:b.rsc.assetMountPath,csrfToken:b.rsc.csrfToken,prefetchTargets:(0,h.l)(c.deployments,c.artifacts).filter(({pluginId:a,buildId:b})=>f.canDiscover({pluginId:a,buildId:b})).map(({pluginId:a,buildId:b})=>({pluginId:a,buildId:b})),children:a})})})}))}},76940:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,30816,23))},84573:(a,b,c)=>{"use strict";c.d(b,{default:()=>i});var d=c(17858),e=c(75555),f=c(93315),g=c(85947);function h(){return(0,d.jsx)("div",{"aria-hidden":"true","data-hile-rsc-initial-route":!0})}function i({assetMountPath:a,csrfToken:b,prefetchTargets:c,children:j}){return(0,d.jsx)(f.j,{serverFunctions:{headers:{"x-rsc-csrf-token":b}},children:(0,d.jsx)(e.jj,{assetMountPath:a,suspensePolicy:"host",renderError:(a,b,c)=>(0,d.jsxs)("section",{role:"alert","data-hile-rsc-error":b.referenceId,children:[(0,d.jsx)("p",{children:"插件组件暂时无法加载。"}),(0,d.jsx)("button",{type:"button",onClick:c,children:"重试"})]}),children:(0,d.jsx)(g.Suspense,{fallback:(0,d.jsx)(h,{}),children:j})})})}},95751:()=>{}};
|