@zlooks.cn/gateway-server 1.0.4 → 1.0.6

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.
Files changed (36) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +3 -3
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/server/app/[pluginId]/[[...path]]/page.js +1 -1
  6. package/.next/server/app/[pluginId]/[[...path]]/page.js.nft.json +1 -1
  7. package/.next/server/app/[pluginId]/[[...path]]/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/_global-error.html +1 -1
  10. package/.next/server/app/_global-error.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/page.js +238 -238
  16. package/.next/server/app/page.js.nft.json +1 -1
  17. package/.next/server/app/page_client-reference-manifest.js +1 -1
  18. package/.next/server/app-paths-manifest.json +3 -3
  19. package/.next/server/chunks/377.js +1 -0
  20. package/.next/server/chunks/919.js +1 -1
  21. package/.next/server/chunks/991.js +1 -1
  22. package/.next/server/middleware-build-manifest.js +1 -1
  23. package/.next/server/pages/500.html +1 -1
  24. package/.next/server/server-reference-manifest.json +1 -1
  25. package/.next/static/chunks/{288-a59115f31341e242.js → 996-077fc2adb823b371.js} +66 -66
  26. package/.next/static/chunks/app/page-8ee7b33b33cd79ee.js +1 -0
  27. package/.next/trace +22 -22
  28. package/.next/trace-build +1 -1
  29. package/dist/runtime/mcp-gateway-runtime.d.ts.map +1 -1
  30. package/dist/runtime/mcp-gateway-runtime.js +4 -0
  31. package/dist/runtime/mcp-gateway-runtime.js.map +1 -1
  32. package/package.json +4 -4
  33. package/.next/server/chunks/964.js +0 -1
  34. package/.next/static/chunks/app/page-92e8fba15a05dc80.js +0 -1
  35. /package/.next/static/{4JU1L88bqvTqs50yGMNXG → W7JvaJOxXMTBDe7uMIlWm}/_buildManifest.js +0 -0
  36. /package/.next/static/{4JU1L88bqvTqs50yGMNXG → W7JvaJOxXMTBDe7uMIlWm}/_ssgManifest.js +0 -0
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":138340288,"timestamp":870271676590,"id":14,"parentId":1,"tags":{},"startTime":1788779733464,"traceId":"4d87ba1f5ce1d4fd"},{"name":"run-typescript","duration":1699881,"timestamp":870410023145,"id":4719,"parentId":1,"tags":{},"startTime":1788779871815,"traceId":"4d87ba1f5ce1d4fd"},{"name":"static-check","duration":2739244,"timestamp":870411764633,"id":4722,"parentId":1,"tags":{},"startTime":1788779873556,"traceId":"4d87ba1f5ce1d4fd"},{"name":"static-generation","duration":5326055,"timestamp":870415275628,"id":4742,"parentId":1,"tags":{},"startTime":1788779877067,"traceId":"4d87ba1f5ce1d4fd"},{"name":"collect-build-traces","duration":31345074,"timestamp":870414505214,"id":4739,"parentId":1,"tags":{},"startTime":1788779876297,"traceId":"4d87ba1f5ce1d4fd"},{"name":"telemetry-flush","duration":490,"timestamp":870445855969,"id":4750,"parentId":1,"tags":{},"startTime":1788779907649,"traceId":"4d87ba1f5ce1d4fd"},{"name":"next-build","duration":174821618,"timestamp":870271034869,"id":1,"tags":{"buildMode":"default","version":"16.3.0","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1788779732823,"traceId":"4d87ba1f5ce1d4fd"}]
1
+ [{"name":"run-webpack","duration":73679167,"timestamp":948964317010,"id":14,"parentId":1,"tags":{},"startTime":1788954743791,"traceId":"7d199f14e3c512f9"},{"name":"run-typescript","duration":963594,"timestamp":949038016905,"id":4740,"parentId":1,"tags":{},"startTime":1788954817493,"traceId":"7d199f14e3c512f9"},{"name":"static-check","duration":1686903,"timestamp":949039005903,"id":4743,"parentId":1,"tags":{},"startTime":1788954818482,"traceId":"7d199f14e3c512f9"},{"name":"static-generation","duration":4566533,"timestamp":949041151655,"id":4763,"parentId":1,"tags":{},"startTime":1788954820628,"traceId":"7d199f14e3c512f9"},{"name":"collect-build-traces","duration":16106284,"timestamp":949040693630,"id":4760,"parentId":1,"tags":{},"startTime":1788954820170,"traceId":"7d199f14e3c512f9"},{"name":"telemetry-flush","duration":111,"timestamp":949056804032,"id":4771,"parentId":1,"tags":{},"startTime":1788954836280,"traceId":"7d199f14e3c512f9"},{"name":"next-build","duration":92989888,"timestamp":948963814271,"id":1,"tags":{"buildMode":"default","version":"16.3.0","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1788954743288,"traceId":"7d199f14e3c512f9"}]
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-gateway-runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/mcp-gateway-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAItD,KAAK,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;AAE7D,eAAO,MAAM,wBAAwB,QAW1B,CAAC;AAEZ,qBAAa,iBAAiB;;IAK1B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHzB,YACmB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,EAC5B,MAAM,EAAE,aAAa,EACpC;IAEJ,IAAW,UAAU,IAAI,eAAe,CAAC,YAAY,CAAC,CAIrD;IAEM,OAAO,IAAI,oBAAoB,CAIrC;IAEY,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAyDlC;IAEY,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAalC;CAEF"}
1
+ {"version":3,"file":"mcp-gateway-runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/mcp-gateway-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAItD,KAAK,aAAa,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;AAE7D,eAAO,MAAM,wBAAwB,QAe1B,CAAC;AAEZ,qBAAa,iBAAiB;;IAK1B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHzB,YACmB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,EAC5B,MAAM,EAAE,aAAa,EACpC;IAEJ,IAAW,UAAU,IAAI,eAAe,CAAC,YAAY,CAAC,CAIrD;IAEM,OAAO,IAAI,oBAAoB,CAIrC;IAEY,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAyDlC;IAEY,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAalC;CAEF"}
@@ -14,6 +14,10 @@ export const MCP_GATEWAY_INSTRUCTIONS = [
14
14
  "For a multi-step workflow, prefer the owning provider's Prompt when one is available.",
15
15
  'A Prompt is guidance, not evidence that any action succeeded.',
16
16
  'Read current state before a write, obtain explicit user confirmation whenever the workflow requires it, invoke the Tool, and read the resulting state again before reporting success.',
17
+ 'An event-catalog Resource represents only the events owned by its currently discovered Provider; a Provider that is absent from the current MCP catalog contributes no available events.',
18
+ 'When creating or modifying a service, enumerate the complete Resource catalog and read every currently discovered event catalog before selecting event contracts or Consumer helpers.',
19
+ 'Refresh the event catalog before finalizing generated service code; if a required catalog disappeared or conflicts, stop and report the unavailable contract.',
20
+ 'Never infer an available event from an installed package, source-tree inventory, prior run, or conversation history.',
17
21
  ].join(' ');
18
22
  export class McpGatewayRuntime {
19
23
  application;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-gateway-runtime.js","sourceRoot":"","sources":["../../src/runtime/mcp-gateway-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-gateway-runtime.js","sourceRoot":"","sources":["../../src/runtime/mcp-gateway-runtime.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.0.4",
3
+ "version": "1.0.6",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "engines": {
@@ -52,8 +52,8 @@
52
52
  "@zlooks.cn/public-host-contract": "1.0.0",
53
53
  "@zlooks.cn/registry-config": "1.0.0",
54
54
  "@zlooks.cn/service-command": "1.0.0",
55
- "@zlooks.cn/ui": "1.0.0",
56
- "@zlooks.cn/user-shared": "1.0.0",
55
+ "@zlooks.cn/ui": "1.0.2",
56
+ "@zlooks.cn/user-shared": "1.0.1",
57
57
  "@zlooks.cn/utils": "1.0.0",
58
58
  "antd": "6.6.1",
59
59
  "detect-port": "2.1.0",
@@ -72,5 +72,5 @@
72
72
  "typescript": "7.0.2",
73
73
  "vitest": "4.1.11"
74
74
  },
75
- "gitHead": "0aaee21087cc402608c0f13836a0fa204e6a402a"
75
+ "gitHead": "b118899f7646d3cb4e82563f0d32f68238bb38d0"
76
76
  }
@@ -1 +0,0 @@
1
- exports.id=964,exports.ids=[964],exports.modules={4151:(a,b,c)=>{Promise.resolve().then(c.bind(c,80395)),Promise.resolve().then(c.bind(c,71954))},8199:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,12698,23))},12326:(a,b,c)=>{"use strict";c.d(b,{o:()=>M});var d=c(77598),e=c(69350),f=c(87903),g=c(36928),h=c(69347),i=c(87056),j=c(41309);let k="cn.zlooks.user.server",l=i.k5(["logout","user-request","family-limit","credential-recovery"]),m=i.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"),n=i.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"),o=i.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"),p=i.Rp().max(320).refine(a=>a===a.toLocaleLowerCase("en-US"),"Email must be lowercase"),q=i.re({id:i.uR(),displayName:m.nullable(),avatar:o.nullable(),homepage:o.nullable(),bio:n.nullable(),email:p.nullable(),emailVerified:i.zM(),status:i.k5(["active","disabled","deleted"]),createdAt:j.w$({offset:!0}),updatedAt:j.w$({offset:!0}),version:i.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(),r=i.re({id:i.uR(),userId:i.uR(),createdAt:j.w$({offset:!0}),expiresAt:j.w$({offset:!0}),lastSeenAt:j.w$({offset:!0}),revokedAt:j.w$({offset:!0}).nullable(),revokeReason:l.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(),s=i.Yj().max(256).regex(/^[a-z][a-z0-9]*(?:\.[a-z][a-z0-9-]*)+\.v[1-9][0-9]*$/),t=i.Yj().max(256).regex(/^[a-z][a-z0-9]*(?:\.[a-z][a-z0-9]*)+$/),u=i.Yj().regex(/^[a-z][a-z0-9-]{0,63}$/),v=i.Yj().trim().min(1).max(256),w=i.re({protocol:i.eu("zlooks.event"),protocolVersion:i.eu(1),eventId:i.uR(),type:s,producer:t,aggregate:i.re({type:u,id:v}).readonly(),occurredAt:j.w$({offset:!0}),data:i.L5()}).readonly();function x(a,b,c,d){let e,f=Object.freeze({type:e=s.parse(a),parse(a){let b=w.parse(a);if(b.type!==e)throw TypeError(`Expected event type ${e}`);return Object.freeze({...b,type:e,aggregate:Object.freeze({...b.aggregate}),data:c.parse(b.data)})}});return Object.freeze({type:f.type,parse(c){let e=f.parse(c);if(e.producer!==k)throw TypeError(`Expected event producer ${k}`);if(e.aggregate.type!==b||e.aggregate.id!==d(e.data))throw TypeError(`${a} aggregate does not identify its event data`);return e}})}x("cn.zlooks.user.registered.v1","user",i.re({user:q}).refine(a=>"active"===a.user.status,{message:"A registered user snapshot must be active",path:["user","status"]}).readonly(),a=>a.user.id),x("cn.zlooks.user.email-verified.v1","user",i.re({user:q}).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);let y=i.k5(["displayName","avatar","homepage","bio"]);x("cn.zlooks.user.profile-updated.v1","user",i.re({user:q,changedFields:i.YO(y).min(1).max(4).refine(a=>new Set(a).size===a.length,"Profile fields must be unique").readonly()}).readonly(),a=>a.user.id),x("cn.zlooks.user.session-created.v1","session-family",i.re({user:q,sessionFamily:r,intent:i.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),x("cn.zlooks.user.session-revoked.v1","session-family",i.re({user:q,sessionFamily:r}).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),Object.freeze([Object.freeze({exact:"/api/auth/methods",methods:Object.freeze(["GET"]),forwardCookieNames:Object.freeze([])}),Object.freeze({exact:"/api/user/shell",methods:Object.freeze(["GET"]),forwardCookieNames:Object.freeze([h.CY])}),Object.freeze({exact:"/api/user",methods:Object.freeze(["GET","PATCH"]),forwardCookieNames:Object.freeze([h.CY])}),Object.freeze({exact:"/api/user/sessions",methods:Object.freeze(["GET"]),forwardCookieNames:Object.freeze([h.CY])}),Object.freeze({exact:"/api/auth/transactions",methods:Object.freeze(["POST"]),forwardCookieNames:Object.freeze([])}),Object.freeze({prefix:"/api/auth/transactions/",methods:Object.freeze(["POST"]),forwardCookieNames:Object.freeze([])}),Object.freeze({exact:"/api/auth/logout",methods:Object.freeze(["POST"]),forwardCookieNames:Object.freeze([h.CY])}),Object.freeze({exact:"/api/auth/session/refresh",methods:Object.freeze(["POST"]),forwardCookieNames:Object.freeze([h.CY])}),Object.freeze({prefix:"/api/user/sessions/",methods:Object.freeze(["POST"]),forwardCookieNames:Object.freeze([h.CY])})]),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 z=i.Yj().min(1).max(2048).regex(/^\/(?!\/)[^?#]*$/),A=i.gM("status",[i.re({status:i.eu("anonymous"),loginMethods:i.YO(i.re({id:i.Yj().min(1).max(128),label:i.Yj().min(1).max(80),href:z})).max(64)}),i.re({status:i.eu("authenticated"),user:i.re({label:i.Yj().min(1).max(160),secondary:i.Yj().min(1).max(320).optional(),avatarText:i.Yj().min(1).max(8),avatarUrl:i.OZ({protocol:/^https?$/}).max(2048).optional()}),accountHref:z,logoutHref:z})]).readonly(),B=i.gM("action",[i.re({action:i.eu("set"),value:i.Yj().min(1).max(4096),expiresAt:j.w$({offset:!0})}),i.re({action:i.eu("clear")})]);i.re({}).readonly();let C=i.re({id:i.uR(),displayName:i.Yj().trim().min(1).max(160).nullable(),avatar:i.OZ({protocol:/^https?$/}).max(2048).nullable(),homepage:i.OZ({protocol:/^https?$/}).max(2048).nullable().optional(),bio:i.Yj().trim().min(1).max(500).nullable().optional()}).readonly();i.gM("authenticated",[i.re({authenticated:i.eu(!1)}),i.re({authenticated:i.eu(!0),user:C})]).readonly(),i.re({userIds:i.YO(i.uR()).min(1).max(100).refine(a=>new Set(a).size===a.length,{message:"User IDs must be unique"}).readonly()}).readonly(),i.re({users:i.YO(C).max(100).refine(a=>new Set(a.map(a=>a.id)).size===a.length,{message:"Public user profiles must be unique"}).readonly()}).readonly(),i.re({method:i.k5(["GET","POST","PATCH"]),path:z,origin:i.Yj().max(2048).optional(),clientKey:i.Yj().regex(/^[a-f0-9]{64}$/),body:i.L5().optional()}).readonly();let D=i.re({method:i.k5(["GET","POST","PATCH"]),path:z,origin:i.Yj().max(2048).optional(),clientKey:i.Yj().regex(/^[a-f0-9]{64}$/),body:i.L5().optional()}).readonly(),E=f.pF.superRefine((a,b)=>{for(let[c,d]of(a.cookieEffects??[]).entries())d.name!==h.CY&&b.addIssue({code:"custom",message:"User Browser API may only mutate its declared session cookie",path:["cookieEffects",c,"name"]})}).readonly();i.re({status:i.ai().int().min(200).max(599).refine(a=>a<300||a>=400),body:f.RW,sessionCookie:B.optional()}).superRefine((a,b)=>{let c=a.status>=200&&a.status<300;!(0,f.lu)(a.body)!==c&&b.addIssue({code:"custom",message:"HTTP status and browser API response code disagree",path:["body","code"]})}).readonly(),i.re({protocol:i.eu("zlooks.user.credential-lifecycle"),kind:i.k5(["registration","recovery"]),authenticationTransactionId:i.uR(),extensionId:i.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),methodId:i.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),subject:i.Yj().trim().min(1).max(512),email:i.Rp().max(320),occurredAt:j.w$({offset:!0})}).readonly(),i.re({acknowledged:i.eu(!0)}).readonly();let F=i.Yj().min(1).max(2048).regex(/^\/(?!\/)[^?#]*$/),G=i.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"),H=i.re({key:i.Yj().min(1).max(256),label:i.Yj().min(1).max(160),href:F,order:i.ai().finite()}),I=i.re({navigation:i.YO(H).max(256),origin:G,pathname:F,user:i.L5()}),J=i.re({status:i.eu("unavailable")});var K=c(60255);let L=(0,d.createHash)("sha256").update("zlooks:gateway:rsc-shell:v1").digest("hex");async function M(a){var b;let c,d=await N(a),e={navigation:(0,K.R)(a.rsc,a.policy),origin:a.origin,pathname:a.pathname,user:d},f={[g.qe]:(0,g.WA)(a.globalConfig),__zlooks_shell_context:JSON.stringify((b=e,{navigation:(c=I.parse(b)).navigation,origin:c.origin,pathname:c.pathname,user:function(a){let b=J.safeParse(a);return b.success?b.data:A.parse(a)}(c.user)}))};return a.sessionToken&&(f.__zlooks_user_session=a.sessionToken),{params:f,shell:e}}async function N(a){try{var b,c,d;let g=(b={method:"GET",path:"/api/user/shell",clientKey:L},D.parse(f.Dy.parse(b))),i=(c=await a.application.call(k,"/browser/call",g,{context:(0,e.eC)(a.sessionToken?{[f.Ih]:{[h.CY]:a.sessionToken}}:{}),timeout:1500,retries:0,...a.signal?{signal:a.signal}:{}}),E.parse(c));if(200!==i.status)throw Error(`User shell projection failed with status ${i.status}`);if((0,f.lu)(i.body))throw Error(`User shell projection failed with code ${i.body.code}`);return d=i.body.data,A.parse(d)}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"}}}},28341:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,12698,23)),Promise.resolve().then(c.t.bind(c,84933,23)),Promise.resolve().then(c.t.bind(c,55205,23)),Promise.resolve().then(c.t.bind(c,88268,23)),Promise.resolve().then(c.t.bind(c,4692,23)),Promise.resolve().then(c.t.bind(c,45504,23)),Promise.resolve().then(c.t.bind(c,37577,23)),Promise.resolve().then(c.t.bind(c,15648,23))},41909:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,75536,23)),Promise.resolve().then(c.t.bind(c,3699,23)),Promise.resolve().then(c.t.bind(c,37903,23)),Promise.resolve().then(c.t.bind(c,73762,23)),Promise.resolve().then(c.t.bind(c,15190,23)),Promise.resolve().then(c.t.bind(c,69970,23)),Promise.resolve().then(c.t.bind(c,15687,23)),Promise.resolve().then(c.bind(c,59266))},47519:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,75536,23))},57295:(a,b,c)=>{Promise.resolve().then(c.bind(c,9641)),Promise.resolve().then(c.bind(c,57944))},57944:(a,b,c)=>{"use strict";c.d(b,{default:()=>i});var d=c(95780),e=c(25730),f=c(96157),g=c(51402);function h(){return(0,d.jsx)("div",{"aria-hidden":"true","data-hile-rsc-initial-route":!0})}function i({assetMountPath:a,csrfToken:b,children:c}){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:c})})})}},60255:(a,b,c)=>{"use strict";c.d(b,{R:()=>e});var d=c(80674);function e(a,b){return(0,d.l)(a.deployments,a.artifacts).filter(({pluginId:a,buildId:c})=>b.canDiscover({pluginId:a,buildId:c})).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))}},71331:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k,dynamic:()=>j,metadata:()=>i});var d=c(16818),e=c(52167),f=c(2963),g=c(45964),h=c(71954);c(23977),c(86586),c(88247);let i={referrer:"strict-origin-when-cross-origin",icons:{icon:[{url:"/favicon.ico",type:"image/svg+xml"}]},formatDetection:{email:!1,address:!1,telephone:!1}},j="force-dynamic";async function k({children:a}){return(await (0,f.oV)(g.A)).withCurrent(({config:b})=>(0,d.jsx)("html",{lang:"zh-CN",children:(0,d.jsx)("body",{children:(0,d.jsx)(e.Z,{children:(0,d.jsx)(h.default,{assetMountPath:b.rsc.assetMountPath,csrfToken:b.rsc.csrfToken,children:a})})})}))}},71954:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(35498).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")},86586:()=>{},88247:()=>{}};
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{3241:(e,r,a)=>{Promise.resolve().then(a.bind(a,34138)),Promise.resolve().then(a.bind(a,30382)),Promise.resolve().then(a.bind(a,77128)),Promise.resolve().then(a.t.bind(a,74718,23))},8176:e=>{e.exports={page:"landing-frame_page__8Eln3",backgroundVideo:"landing-frame_backgroundVideo__8hHRt",headerWrap:"landing-frame_headerWrap__ZsC2J",content:"landing-frame_content__0gHs1",legal:"landing-frame_legal__sJCNe",header:"landing-frame_header__HX8s8",brand:"landing-frame_brand__hrKJt",brandMark:"landing-frame_brandMark__zjCCK",brandLogo:"landing-frame_brandLogo__Vx5Mx",navigation:"landing-frame_navigation__kcn9E",actions:"landing-frame_actions__lRf4u",themeControl:"landing-frame_themeControl___Chhn",registrationIcon:"landing-frame_registrationIcon__eOCiT"}},30382:(e,r,a)=>{"use strict";a.d(r,{default:()=>ey});var t=a(49660),n=a(22538),i=a(94292),o=a(80032),s=a(25840);function l(e){if(null!==e&&"object"==typeof e&&!Object.isFrozen(e))for(let r of(Object.freeze(e),Object.values(e)))l(r);return e}let d=l({token:{colorPrimary:"#1677ff",borderRadius:10,motion:!0,fontFamily:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif"}}),c="zlooks.theme",u="zlooks:theme-change",h="default";function m(){return{mode:(0,s.useSyncExternalStore)(y,g,x),setMode:f}}function p(e){return"dark"===e||"light"===e||"default"===e?e:"default"}function g(){try{let e=window.localStorage.getItem(c);null!==e&&(h=p(e))}catch{}return h}function x(){return"default"}function f(e){if(p(e)!==e)throw TypeError(`Unsupported Zlooks theme mode: ${String(e)}`);h=e;try{window.localStorage.setItem(c,e)}catch{}window.dispatchEvent(new CustomEvent(u,{detail:e}))}function y(e){let r=r=>{h=p(r.detail),e()},a=r=>{r.key===c&&(h=p(r.newValue),e())};return window.addEventListener(u,r),window.addEventListener("storage",a),()=>{window.removeEventListener(u,r),window.removeEventListener("storage",a)}}function v({children:e,theme:r}){let a=m(),{resolvedMode:o,resolvedTheme:s}=b(r??a.mode);return(0,t.jsx)(n.Ay,{button:{autoInsertSpace:!1},theme:s,children:(0,t.jsx)(i.A,{children:(0,t.jsx)("div",{className:"zlooks-ui-theme","data-zlooks-theme":o,children:e})})})}function b(e){let r=function(e){let[r,a]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{if(!e)return;let r=window.matchMedia("(prefers-color-scheme: dark)"),t=()=>a(r.matches);return t(),r.addEventListener("change",t),()=>r.removeEventListener("change",t)},[e]),r}("default"===e),a="default"===e?r?"dark":"light":e,t=(0,s.useMemo)(()=>({...d,algorithm:"dark"===a?o.A.darkAlgorithm:o.A.defaultAlgorithm,cssVar:{key:`zlooks-${a}`},hashed:!1,zeroRuntime:!0}),[a]);return{resolvedMode:a,resolvedTheme:t}}a(85206);var j=a(71124),k=a(28875),A=a(70642),w=a(18353),_=a(59091),z=a(33076),S=a(29397),C=a(50009),E=a(85293),N=a(79294);let T=l({Button:{textActiveBg:"transparent",textHoverBg:"transparent"}});var P=a(52491),W=a(71363);let R=P.Yj().regex(/^[a-z][a-z0-9._-]{0,127}$/),M=P.Yj().regex(/^[a-z][a-z0-9]*(?:\.[a-z][a-z0-9]*)+$/),Y=P.Yj().min(1).max(2048).regex(/^\/(?!\/)[^?#\s]*$/),O=P.Yj().min(5).max(2048).regex(/^\/api\/(?!\/)[^?#\s]*$/),I=W.w$({offset:!0}),q=P.Yj().regex(/^[A-Za-z][A-Za-z0-9_-]{0,127}$/),L=P.k5(["GET","POST","PUT","PATCH","DELETE"]),H=P.YO(q).max(8).refine(e=>new Set(e).size===e.length,"Cookie names must be unique").readonly(),B=P.re({code:P.ai().int().safe().refine(e=>0!==e),message:P.Yj().trim().min(1).max(500)}).readonly(),U=P.re({code:P.eu(0),data:P.L5().refine(e=>void 0!==e)}).readonly(),$=P.re({code:P.ai().int().safe().refine(e=>0!==e),error:P.Yj().trim().min(1).max(500)}).readonly(),K=P.KC([U,$]),Z=P.re({exact:O,methods:P.YO(L).min(1).max(5).refine(e=>new Set(e).size===e.length,"Methods must be unique").readonly(),forwardCookieNames:H}).readonly(),V=P.re({prefix:O.refine(e=>e.endsWith("/"),"Route prefix must end with /"),methods:P.YO(L).min(1).max(5).refine(e=>new Set(e).size===e.length,"Methods must be unique").readonly(),forwardCookieNames:H}).readonly(),D=P.KC([Z,V]),F=P.re({issuedAt:I,expiresAt:I,sequence:P.ai().int().nonnegative().max(Number.MAX_SAFE_INTEGER)}).refine(e=>Date.parse(e.expiresAt)>Date.parse(e.issuedAt),{message:"Browser API Provider lease must expire after it is issued"}).readonly(),X=P.re({protocol:P.eu("zlooks.browser-api.provider"),providerId:R,instanceId:R,namespace:M,operation:P.eu("/browser/dispatch"),routes:P.YO(D).min(1).max(64).refine(e=>!e.some((r,a)=>e.slice(a+1).some(e=>{var a,t;return a=r,t=e,!!a.methods.some(e=>t.methods.includes(e))&&("exact"in a&&"exact"in t?a.exact===t.exact:"prefix"in a&&"prefix"in t?a.prefix.startsWith(t.prefix)||t.prefix.startsWith(a.prefix):"exact"in a&&"prefix"in t?a.exact.startsWith(t.prefix):"prefix"in a&&"exact"in t&&t.exact.startsWith(a.prefix))})),"Provider routes must not overlap for the same HTTP method").readonly(),writableCookieNames:H,errors:P.re({invalidRequest:B,unavailable:B}).readonly(),lease:F}).readonly();P.re({topic:P.Yj().min(1).max(512),payload:X,publishers:P.YO(P.re({host:P.Yj().trim().min(1).max(253),port:P.ai().int().min(1).max(65535)}).readonly()).length(1).readonly()}).readonly();let G=P.KC([P.Yj().max(512),P.YO(P.Yj().max(512)).max(20).readonly()]),J=P.g1(P.Yj().regex(/^[a-z][a-zA-Z0-9_-]{0,63}$/),G).refine(e=>Object.keys(e).length<=20,{message:"Browser API query has too many fields"}).readonly();P.g1(q,P.Yj().min(1).max(4096)).refine(e=>Object.keys(e).length<=8,{message:"Browser API context has too many cookies"}).readonly(),P.re({ipAddress:P.KC([P.uX(),P.ug()]),userAgent:P.Yj().trim().min(1).max(1024).nullable()}).readonly(),P.re({method:L,path:Y,origin:P.Yj().max(2048).optional(),clientKey:P.Yj().regex(/^[a-f0-9]{64}$/),query:J.optional(),body:P.L5().optional()}).readonly();let Q=P.gM("action",[P.re({action:P.eu("set"),name:q,value:P.Yj().min(1).max(4096),expiresAt:I}),P.re({action:P.eu("clear"),name:q})]).readonly();P.re({status:P.ai().int().min(200).max(599).refine(e=>e<300||e>=400),body:K,cookieEffects:P.YO(Q).max(8).refine(e=>new Set(e.map(e=>e.name)).size===e.length,"Cookie effects must target unique names").readonly().optional()}).superRefine((e,r)=>{let a=e.status>=200&&e.status<300;0===e.body.code!==a&&r.addIssue({code:"custom",message:"HTTP status and browser API response code disagree",path:["body","code"]})}).readonly();class ee extends Error{constructor(e,r,a,t){super(r,t),this.reported=!0,this.code=e,this.status=a,this.name="RequestError"}}async function er(e,r,a,t,n={}){var i,o;let s,l,d,c=(i=n.errorMessage,(s=i?.trim())&&s.length<=500?s:"请求失败,请稍后重试");try{l=await r(a,t)}catch(r){if(et(r))throw r;return ea(e,new ee(-1,c,void 0,{cause:r}))}try{o=await l.json(),d=K.parse(o)}catch(r){if(et(r))throw r;return ea(e,new ee(-1,c,l.status,{cause:r}))}if(0!==d.code)return ea(e,new ee(d.code,d.error,l.status));if(!l.ok)return ea(e,new ee(-1,c,l.status));try{return n.parse?await n.parse(d.data):d.data}catch(r){if(et(r))throw r;return ea(e,new ee(-1,c,l.status,{cause:r}))}}function ea(e,r){return e.error(r.message),Promise.reject(r)}function et(e){return null!==e&&"object"==typeof e&&"name"in e&&"AbortError"===e.name}let en=(0,s.createContext)(void 0);function ei({children:e,initialContext:r}){return(0,t.jsx)(en,{value:r,children:e})}function eo({className:e,classNames:r={},style:a,size:n="middle",shape:o="round",variant:l="compact",onNavigate:d,onLogout:c}){var u,h;let m=el().user,[p,g]=(0,s.useState)(!1),[x,f]=(0,s.useState)(!1),{message:y,modal:v}=i.A.useApp(),b=ed("zlooks-user-access-trigger",e,r.trigger),T=ed("zlooks-user-access-avatar",r.avatar),P=ed("zlooks-user-access-label",r.label),W="avatar"===l,R=(u=n,(h=W)&&"small"===u?32:h&&"large"===u?48:h?40:"small"===u?20:"large"===u?28:24),M=W?"circle":o,Y=W?"circle":"square",O=W?{height:R,minWidth:R,padding:0,width:R,...a}:a;async function I(e,r){try{await c(e),r(),g(!1)}catch(e){e instanceof ee||y.error("退出登录失败")}}function q(e,r,a){d&&(0,N.a)(e)&&(e.preventDefault(),a(),d(r))}return"unavailable"===m.status?(0,t.jsx)(es,{children:(0,t.jsx)(j.Ay,{"aria-label":"账户服务暂不可用",className:b,disabled:!0,shape:M,size:n,style:O,type:"text",children:(0,t.jsxs)(k.A,{align:"center",size:6,children:[(0,t.jsx)(A.A,{className:T,shape:Y,size:R,style:{background:"var(--ant-color-fill-secondary)",border:W?"none":void 0,borderRadius:W?"50%":9,boxShadow:W?"none":void 0,color:"var(--ant-color-text-tertiary)",fontSize:12,fontWeight:750},children:"Z"}),"compact"===l?(0,t.jsx)(w.A.Text,{type:"secondary",children:"暂不可用"}):null]})})}):"authenticated"===m.status?(0,t.jsx)(es,{children:(0,t.jsx)(_.A,{arrow:!1,destroyOnHidden:!0,onOpenChange:g,open:p,placement:"bottomRight",styles:{container:{border:"1px solid var(--ant-color-border-secondary)",borderRadius:16,boxShadow:"0 18px 48px rgb(15 23 42 / 14%)",overflow:"hidden",padding:0},content:{maxWidth:"calc(100vw - 32px)",width:280}},trigger:"click",content:(0,t.jsxs)(z.A,{"aria-label":"账户信息",className:r.popup,role:"dialog",style:{background:"var(--ant-color-bg-elevated)"},vertical:!0,children:[(0,t.jsxs)(z.A,{align:"center",gap:12,style:{background:"linear-gradient(color-mix(in srgb, var(--ant-color-fill-quaternary) 48%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ant-color-fill-quaternary) 48%, transparent) 1px, transparent 1px), var(--ant-color-bg-elevated)",backgroundSize:"28px 28px",padding:16},children:[(0,t.jsx)(A.A,{className:T,shape:"square",size:44,src:m.user.avatarUrl,style:{background:"var(--ant-color-text)",borderRadius:12,color:"var(--ant-color-bg-container)",fontSize:16,fontWeight:700},children:m.user.avatarText}),(0,t.jsxs)(z.A,{style:{flex:1,minWidth:0},vertical:!0,children:[(0,t.jsx)(w.A.Text,{strong:!0,ellipsis:!0,style:{fontSize:15,lineHeight:1.4},children:m.user.label}),m.user.secondary?(0,t.jsx)(w.A.Text,{ellipsis:{tooltip:m.user.secondary},style:{display:"block"},type:"secondary",children:m.user.secondary}):null]}),(0,t.jsx)("span",{"aria-label":"已登录",role:"status",style:{background:"var(--ant-color-success)",borderRadius:999,boxShadow:"0 0 0 3px var(--ant-color-success-bg)",flex:"0 0 auto",height:7,width:7}})]}),(0,t.jsx)(S.A,{style:{margin:0}}),(0,t.jsxs)(z.A,{gap:2,style:{padding:8},vertical:!0,children:[(0,t.jsx)(j.Ay,{block:!0,href:m.accountHref,size:"large",style:{fontWeight:600,height:44,paddingInline:12},type:"text",onClick:e=>q(e,m.accountHref,()=>g(!1)),children:(0,t.jsxs)(z.A,{justify:"space-between",style:{width:"100%"},children:[(0,t.jsx)("span",{children:"个人资料"}),(0,t.jsx)(w.A.Text,{"aria-hidden":"true",type:"secondary",children:"→"})]})}),(0,t.jsx)(j.Ay,{block:!0,danger:!0,size:"large",style:{height:44,justifyContent:"flex-start",paddingInline:12},type:"text",onClick:()=>{var e;return e=m.logoutHref,void v.confirm({title:"确认退出登录?",content:"退出后,需要重新登录才能访问个人账户。",okText:"退出登录",okButtonProps:{danger:!0},cancelText:"取消",onOk(r){I(e,r)}})},children:"退出登录"})]})]}),children:(0,t.jsx)(j.Ay,{"aria-expanded":p,"aria-haspopup":"dialog","aria-label":`打开${m.user.label}的账户信息`,className:b,shape:M,size:n,style:O,type:"text",children:(0,t.jsxs)(k.A,{align:"center",size:6,children:[(0,t.jsx)(A.A,{className:T,shape:Y,size:R,src:m.user.avatarUrl,style:{background:W?"var(--ant-color-fill-secondary)":"var(--ant-color-text)",border:W?"none":void 0,borderRadius:W?"50%":9,boxShadow:W?"none":void 0,color:W?"var(--ant-color-text)":"var(--ant-color-bg-container)",fontSize:12,fontWeight:700},children:m.user.avatarText}),"compact"===l?(0,t.jsx)(w.A.Text,{className:P,ellipsis:!0,style:{fontSize:13,fontWeight:650,maxWidth:120},children:m.user.label}):null]})})})}):(0,t.jsxs)(es,{children:[(0,t.jsx)(j.Ay,{"aria-expanded":x,"aria-haspopup":"dialog","aria-label":"登录",className:b,shape:M,size:n,style:O,type:"text",onClick:()=>f(!0),children:(0,t.jsxs)(k.A,{align:"center",size:6,children:[(0,t.jsx)(A.A,{className:T,shape:Y,size:R,style:{background:"var(--ant-color-primary-bg)",border:W?"none":"1px solid var(--ant-color-primary-border)",borderRadius:W?"50%":9,boxShadow:W?"none":void 0,color:"var(--ant-color-primary)",fontSize:12,fontWeight:750},children:"Z"}),"compact"===l?(0,t.jsx)(w.A.Text,{className:P,style:{fontSize:13,fontWeight:650},children:"登录"}):null]})}),(0,t.jsx)(C.A,{centered:!0,destroyOnHidden:!0,footer:null,open:x,rootClassName:ed("zlooks-user-access-modal",r.popup),styles:{body:{paddingTop:4},container:{border:"1px solid var(--ant-color-border-secondary)",borderRadius:22,boxShadow:"0 28px 80px rgb(15 23 42 / 18%)",overflow:"hidden",padding:24},header:{marginBottom:22}},title:(0,t.jsxs)(k.A,{align:"center",size:"middle",children:[(0,t.jsx)(A.A,{shape:"square",size:44,style:{background:"var(--ant-color-text)",borderRadius:12,color:"var(--ant-color-bg-container)",fontWeight:750},children:"Z"}),(0,t.jsxs)(z.A,{vertical:!0,children:[(0,t.jsx)(w.A.Text,{strong:!0,style:{fontSize:17},children:"欢迎回来"}),(0,t.jsx)(w.A.Text,{type:"secondary",children:"选择一种方式继续"})]})]}),width:480,onCancel:()=>f(!1),children:(0,t.jsxs)(z.A,{gap:12,vertical:!0,children:[0===m.loginMethods.length?(0,t.jsx)(E.A,{description:"暂时无法登录,请稍后再试",image:E.A.PRESENTED_IMAGE_SIMPLE,style:{paddingBlock:24}}):m.loginMethods.map((e,r)=>(0,t.jsx)(j.Ay,{block:!0,href:e.href,onClick:r=>q(r,e.href,()=>f(!1)),style:{height:"auto",minHeight:72,padding:"10px 14px",textAlign:"left"},children:(0,t.jsxs)(z.A,{align:"center",gap:14,justify:"space-between",style:{width:"100%"},children:[(0,t.jsxs)(z.A,{align:"center",gap:12,style:{minWidth:0},children:[(0,t.jsx)(A.A,{shape:"square",size:40,style:{background:"var(--ant-color-primary-bg)",borderRadius:11,color:"var(--ant-color-primary)",fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace",fontSize:11,fontWeight:700},children:String(r+1).padStart(2,"0")}),(0,t.jsxs)(z.A,{style:{minWidth:0},vertical:!0,children:[(0,t.jsx)(w.A.Text,{strong:!0,children:e.label}),(0,t.jsx)(w.A.Text,{ellipsis:!0,type:"secondary",children:"继续访问你的个人空间"})]})]}),(0,t.jsx)(w.A.Text,{"aria-hidden":"true",style:{color:"var(--ant-color-primary)"},children:"→"})]})},e.id)),(0,t.jsx)(w.A.Text,{style:{fontSize:12,marginTop:6,textAlign:"center"},type:"secondary",children:"登录信息仅用于识别你的账户"})]})})]})}function es({children:e}){let{mode:r}=m(),{resolvedMode:a,resolvedTheme:i}=b(r),o=(0,s.useMemo)(()=>({...i,cssVar:{key:`zlooks-user-access-${a}`},components:{...i.components,Button:{...i.components?.Button,...T.Button}}}),[a,i]);return(0,t.jsx)(n.Ay,{theme:o,children:e})}function el(){let e=(0,s.useContext)(en);if(!e)throw Error("ZlooksShellProvider is required");return e}function ed(...e){return e.filter(Boolean).join(" ")}let ec=(0,s.createContext)(void 0);function eu({children:e,initialConfig:r}){return(0,t.jsx)(ec,{value:r,children:e})}var eh=a(12143),em=a.n(eh),ep=a(25872),eg=a(8176),ex=a.n(eg);function ef({src:e}){let r=(0,s.useRef)(null),[a,n]=(0,s.useState)(!1);return((0,s.useEffect)(()=>{let e=r.current;if(!e)return;let a=window.matchMedia("(prefers-reduced-motion: reduce)"),t=()=>{a.matches?e.pause():e.play().catch(()=>void 0)};return t(),a.addEventListener("change",t),()=>a.removeEventListener("change",t)},[]),!e||a)?null:(0,t.jsx)("video",{"aria-hidden":"true",autoPlay:!0,className:ex().backgroundVideo,loop:!0,muted:!0,onError:()=>n(!0),playsInline:!0,preload:"metadata",ref:r,src:e})}function ey({children:e,shell:r,site:a}){return(0,t.jsx)(v,{children:(0,t.jsx)(ei,{initialContext:r,children:(0,t.jsx)(eu,{initialConfig:a,children:(0,t.jsx)(ev,{children:e})})})})}function ev({children:e}){let r,a=(r=el(),(0,s.useMemo)(()=>[{key:"gateway:home",label:"首页",href:"/",order:-1},...r.navigation].map(e=>({...e,active:"/"===e.href?"/"===r.pathname:r.pathname===e.href||r.pathname.startsWith(`${e.href}/`)})),[r])),n=function(){let e=(0,s.useContext)(ec);if(!e)throw Error("ZlooksSiteConfigProvider is required");return e}().value,o=n.identity.backgroundVideoUrl,l=function(){let{message:e}=i.A.useApp();return(0,s.useCallback)((r,a,t)=>er(e,fetch,r,a,t),[e])}(),d=(0,ep.useRouter)();async function c(e){await l(e,{method:"POST",credentials:"same-origin"},{errorMessage:"退出登录失败"}),d.refresh()}return(0,t.jsxs)("div",{className:ex().page,children:[(0,t.jsx)(ef,{src:o},o??"none"),(0,t.jsx)("div",{className:ex().headerWrap,children:(0,t.jsxs)("header",{className:ex().header,children:[(0,t.jsxs)(em(),{className:ex().brand,href:n.identity.homeHref,children:[n.identity.logoUrl?(0,t.jsx)("img",{alt:"",className:ex().brandLogo,src:n.identity.logoUrl}):(0,t.jsx)("span",{className:ex().brandMark,"aria-hidden":"true",children:"Z"}),(0,t.jsx)("span",{children:n.identity.name})]}),(0,t.jsx)("nav",{"aria-label":"主导航",className:ex().navigation,children:a.map(e=>(0,t.jsx)(em(),{"aria-current":e.active?"page":void 0,href:e.href,children:e.label},e.key))}),(0,t.jsxs)("div",{className:ex().actions,children:[(0,t.jsx)(eb,{}),(0,t.jsx)(eo,{shape:"round",size:"middle",variant:"avatar",onLogout:c,onNavigate:e=>d.push(e)})]})]})}),(0,t.jsx)("main",{className:ex().content,children:e}),(0,t.jsxs)("aside",{"aria-label":"网站备案与版权",className:ex().legal,children:[n.legal.registrations.map(e=>{let r=(0,t.jsxs)(t.Fragment,{children:[e.iconUrl?(0,t.jsx)("img",{alt:"",className:ex().registrationIcon,src:e.iconUrl}):null,e.number]});return e.verificationUrl?e.verificationUrl.startsWith("/")?(0,t.jsx)(em(),{href:e.verificationUrl,children:r},e.id):(0,t.jsx)("a",{href:e.verificationUrl,rel:"noreferrer",target:"_blank",children:r},e.id):(0,t.jsx)("span",{children:r},e.id)}),n.legal.copyright?(0,t.jsx)("small",{children:n.legal.copyright}):null]})]})}function eb(){let{mode:e,setMode:r}=m(),[a,n]=(0,s.useState)("light");(0,s.useEffect)(()=>{let e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>n(e.matches?"dark":"light");return r(),e.addEventListener("change",r),()=>e.removeEventListener("change",r)},[]);let i="default"===e?a:e;return(0,t.jsx)(j.Ay,{"aria-label":`当前为${"dark"===i?"深色":"浅色"}主题,点击切换`,className:ex().themeControl??"","data-zlooks-theme-control":!0,icon:(0,t.jsx)("span",{"aria-hidden":"true",children:"dark"===i?"☾":"☀"}),onClick:()=>r("dark"===i?"light":"dark"),shape:"circle",size:"middle"})}},74718:e=>{e.exports={landing:"page_landing__vDqfd",hero:"page_hero__SKW6o",haloCopy:"page_haloCopy__dOkqi",haloSide:"page_haloSide__fXPB5",primaryActions:"page_primaryActions__hw9X7",action:"page_action__5pSuV",haloTopics:"page_haloTopics__SO9Gp"}},77128:(e,r,a)=>{"use strict";a.d(r,{default:()=>s});var t=a(49660),n=a(71124),i=a(79294),o=a(25872);function s({href:e,onClick:r,...a}){let l=(0,o.useRouter)();return(0,t.jsx)(n.Ay,{...a,href:e,onClick:function(a){r?.(a),(0,i.a)(a)&&(a.preventDefault(),l.push(e))}})}},79294:(e,r,a)=>{"use strict";function t(e){return!e.defaultPrevented&&0===e.button&&!e.altKey&&!e.ctrlKey&&!e.metaKey&&!e.shiftKey}a.d(r,{a:()=>t})},85206:()=>{}},e=>{e.O(0,[565,507,288,11,128,358],()=>e(e.s=3241)),_N_E=e.O()}]);