ccgauge 1.0.4 → 1.0.5
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/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-build-manifest.json +33 -33
- package/.next/standalone/.next/app-path-routes-manifest.json +9 -9
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
- package/.next/standalone/.next/server/app/api/projects/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/usage/route.js +1 -1
- package/.next/standalone/.next/server/app/api/usage/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/models/page.js +2 -2
- package/.next/standalone/.next/server/app/models/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page.js +2 -2
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/projects/[id]/page.js +2 -2
- package/.next/standalone/.next/server/app/projects/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/projects/page.js +1 -1
- package/.next/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/sessions/[id]/page.js +2 -2
- package/.next/standalone/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/sessions/page.js +1 -1
- package/.next/standalone/.next/server/app/sessions/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/page.js +1 -1
- package/.next/standalone/.next/server/app/usage/page.js +3 -3
- package/.next/standalone/.next/server/app/usage/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +9 -9
- package/.next/standalone/.next/server/chunks/287.js +1 -0
- package/.next/standalone/.next/server/chunks/567.js +2 -2
- package/.next/standalone/.next/server/chunks/730.js +1 -0
- package/.next/standalone/.next/server/functions-config-manifest.json +2 -2
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/node_modules/next/node_modules/postcss/package.json +0 -0
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/public/codex-logo.png +0 -0
- package/CHANGELOG.md +223 -0
- package/README.md +6 -2
- package/README.zh-CN.md +6 -2
- package/bin/cli.mjs +394 -91
- package/dist/mcp/server.mjs +16 -16
- package/dist/report/index.mjs +183 -28
- package/package.json +22 -24
- package/.next/standalone/.next/server/chunks/971.js +0 -1
- /package/.next/standalone/.next/static/{ir1LZCnQKkiNUVXLprtzh → kdpS1dOlXPsnKYuNBuMt9}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{ir1LZCnQKkiNUVXLprtzh → kdpS1dOlXPsnKYuNBuMt9}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../node_modules/next/dist/lib/constants.js","../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../node_modules/next/dist/lib/is-error.js","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../package.json","../../../chunks/153.js","../../../chunks/331.js","../../../chunks/692.js","../../../chunks/716.js","../../../chunks/802.js","../../../chunks/98.js","../../../webpack-runtime.js","route_client-reference-manifest.js"]}
|
|
1
|
+
{"version":1,"files":["../../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../node_modules/next/dist/lib/constants.js","../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../node_modules/next/dist/lib/is-error.js","../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../../node_modules/next/dist/shared/lib/segment.js","../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../package.json","../../../chunks/153.js","../../../chunks/331.js","../../../chunks/692.js","../../../chunks/716.js","../../../chunks/730.js","../../../chunks/802.js","../../../chunks/98.js","../../../webpack-runtime.js","route_client-reference-manifest.js"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=329,a.ids=[329],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21399:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>p,dynamic:()=>n,revalidate:()=>o});var d=c(75338),e=c(49098),f=c(67803),g=c(37583),h=c(89605),i=c(95012),j=c(91719),k=c(46796),l=c(69181),m=c(60704);let n="force-dynamic",o=0;async function p({searchParams:a}){let b=await a,c=await (0,k.ev)(b.source),n=await (0,j.yO)(),o=await (0,j.sG)(),p=await (0,e.So)(),r=(0,k.rY)(p.records,c),s=(0,k.n$)(c);if(0===r.length)return(0,d.jsx)(g.qK,{title:n("models.title"),children:(0,d.jsx)(g.pp,{title:n("models.empty")})});let t=s.flatMap(a=>(0,f.a9)(r,{source:a})).sort((a,b)=>b.cost-a.cost),u=t.reduce((a,b)=>a+b.cost,0),v=t.reduce((a,b)=>a+b.totalTokens,0),w=new Date;w.setDate(w.getDate()-30);let x=(0,l.i)(s.map(a=>(0,f.a6)(r,"day",{source:a,from:w}))).map(a=>({label:a.label,input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadTokens,cacheCreation:a.cacheCreationTokens,cost:a.cost,requests:a.requests}));return(0,d.jsxs)(g.qK,{title:n("models.title"),desc:n("models.subtitle",{count:t.length}),children:[(0,d.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:t.map(a=>{let b=u>0?a.cost/u:0,e=v>0?a.totalTokens/v:0,f=a.totalTokens>0?a.cacheReadTokens/Math.max(1,a.cacheReadTokens+a.inputTokens+a.cacheCreationTokens):0;return(0,d.jsxs)("div",{className:"card card-pad space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-baseline justify-between gap-2",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"font-semibold text-text-primary flex items-center gap-2",children:[(0,d.jsx)("span",{children:(0,m.sO)(a.source).shortenModel(a.model)}),"all"===c&&(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] uppercase tracking-wide text-text-tertiary font-medium",children:[(0,d.jsx)("img",{src:(0,m.sO)(a.source).logoSrc,alt:"","aria-hidden":!0,className:"w-3.5 h-3.5 rounded-[3px] object-contain"}),"claude"===a.source?"Claude":"Codex"]})]}),(0,d.jsx)("div",{className:"num-mono text-xs text-text-tertiary",children:a.model})]}),!a.pricingResolved&&(0,d.jsx)("span",{className:"pill bg-warning/10 text-warning border border-warning/20 text-[10px] whitespace-nowrap",children:n("common.fallbackPrice")})]}),(0,d.jsx)("div",{className:"num-hero",children:(0,i.az)(a.cost)}),(0,d.jsx)("div",{className:"text-xs text-text-secondary",children:n("models.field.pctOfTotal",{pct:(0,i.R8)(b,0),tokens:(0,i.jh)(a.totalTokens,o)})}),(0,d.jsx)(q,{label:n("models.share.cost"),value:b,tone:"brand",right:(0,i.R8)(b)}),(0,d.jsx)(q,{label:n("models.share.tokens"),value:e,tone:"default",right:(0,i.R8)(e)}),(0,d.jsx)(q,{label:n("models.share.cacheHit"),value:f,tone:"success",right:(0,i.R8)(f,0)}),(0,d.jsxs)("div",{className:"pt-3 border-t border-border grid grid-cols-2 gap-2 text-xs",children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.requests")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-primary",children:a.requests}),(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.savedByCache")}),(0,d.jsx)("div",{className:"num-mono text-right text-success",children:(0,i.az)(a.saved)}),a.pricing&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.input1M")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-secondary",children:(0,i.az)(a.pricing.input)}),(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.output1M")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-secondary",children:(0,i.az)(a.pricing.output)}),(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.cacheRead1M")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-secondary",children:(0,i.az)(a.pricing.cacheRead)})]})]})]},`${a.source}:${a.model}`)})}),(0,d.jsx)(g.wn,{title:n("models.eachTrend"),children:(0,d.jsx)(h.TokenStackChart,{data:x})})]})}function q({label:a,value:b,right:c,tone:e="default"}){return(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"flex items-center justify-between text-xs",children:[(0,d.jsx)("span",{className:"text-text-tertiary",children:a}),(0,d.jsx)("span",{className:"num-mono text-text-secondary",children:c})]}),(0,d.jsx)("div",{className:"h-1 bg-bg-surface-hi rounded mt-1 overflow-hidden",children:(0,d.jsx)("div",{className:`h-full ${{brand:"bg-brand",success:"bg-success",default:"bg-chart-input"}[e]} rounded`,style:{width:`${100*Math.max(0,Math.min(1,b))}%`}})})]})}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},36718:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(82802),o=c(77533),p=c(45229),q=c(32822),r=c(261),s=c(26453),t=c(52474),u=c(26713),v=c(51356),w=c(62685),x=c(36225),y=c(63446),z=c(2762),A=c(45742),B=c(86439),C=c(81170),D=c.n(C),E=c(62506),F=c(91203),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H={children:["",{children:["models",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,21399)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/models/page.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,67302)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/layout.tsx"],error:[()=>Promise.resolve().then(c.bind(c,41697)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,90391)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/loading.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,I=["/Users/zuopeng.cheng/personal/workspace/ccgauge/app/models/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/models/page",pathname:"/models",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/models/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
-
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},48161:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69181:(a,b,c)=>{"use strict";c.d(b,{i:()=>f,z:()=>e});let d={inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0,totalTokens:0,cost:0,saved:0,requests:0};function e(a){return 0===a.length?{...d}:1===a.length?a[0]:a.reduce((a,b)=>({inputTokens:a.inputTokens+b.inputTokens,outputTokens:a.outputTokens+b.outputTokens,cacheReadTokens:a.cacheReadTokens+b.cacheReadTokens,cacheCreationTokens:a.cacheCreationTokens+b.cacheCreationTokens,totalTokens:a.totalTokens+b.totalTokens,cost:a.cost+b.cost,saved:a.saved+b.saved,requests:a.requests+b.requests}),{...d})}function f(a){if(0===a.length)return[];if(1===a.length)return a[0];let b=new Map;for(let c of a)for(let a of c){let c=b.get(a.key);if(!c){b.set(a.key,{...a,models:function(a){let b={};for(let[c,d]of Object.entries(a))b[c]={tokens:d.tokens,cost:d.cost,requests:d.requests};return b}(a.models)});continue}for(let[b,d]of(c.inputTokens+=a.inputTokens,c.outputTokens+=a.outputTokens,c.cacheReadTokens+=a.cacheReadTokens,c.cacheCreationTokens+=a.cacheCreationTokens,c.totalTokens+=a.totalTokens,c.cost+=a.cost,c.saved+=a.saved,c.requests+=a.requests,Object.entries(a.models))){let a=c.models[b]??{tokens:0,cost:0,requests:0};a.tokens+=d.tokens,a.cost+=d.cost,a.requests+=d.requests,c.models[b]=a}}return Array.from(b.values()).sort((a,b)=>a.key.localeCompare(b.key))}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},80481:a=>{"use strict";a.exports=require("node:readline")},81995:(a,b,c)=>{Promise.resolve().then(c.bind(c,24919))},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87571:(a,b,c)=>{Promise.resolve().then(c.bind(c,89605))},89605:(a,b,c)=>{"use strict";c.d(b,{TokenStackChart:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call TokenStackChart() from the server but TokenStackChart is 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/zuopeng.cheng/personal/workspace/ccgauge/components/charts/token-stack-chart.tsx","TokenStackChart")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[331,802,153,993,517,716,98,567,971],()=>b(b.s=36718));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=329,a.ids=[329],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21399:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>p,dynamic:()=>n,revalidate:()=>o});var d=c(75338),e=c(49098),f=c(67803),g=c(37583),h=c(89605),i=c(95012),j=c(91719),k=c(46796),l=c(69181),m=c(60704);let n="force-dynamic",o=0;async function p({searchParams:a}){let b=await a,c=await (0,k.ev)(b.source),n=await (0,j.yO)(),o=await (0,j.sG)(),p=await (0,e.So)(),r=(0,k.rY)(p.records,c),s=(0,k.n$)(c);if(0===r.length)return(0,d.jsx)(g.qK,{title:n("models.title"),children:(0,d.jsx)(g.pp,{title:n("models.empty")})});let t=s.flatMap(a=>(0,f.a9)(r,{source:a})).sort((a,b)=>b.cost-a.cost),u=t.reduce((a,b)=>a+b.cost,0),v=t.reduce((a,b)=>a+b.totalTokens,0),w=new Date;w.setDate(w.getDate()-30);let x=(0,l.i)(s.map(a=>(0,f.a6)(r,"day",{source:a,from:w}))).map(a=>({label:a.label,input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadTokens,cacheCreation:a.cacheCreationTokens,cost:a.cost,requests:a.requests}));return(0,d.jsxs)(g.qK,{title:n("models.title"),desc:n("models.subtitle",{count:t.length}),children:[(0,d.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:t.map(a=>{let b=u>0?a.cost/u:0,e=v>0?a.totalTokens/v:0,f=a.totalTokens>0?a.cacheReadTokens/Math.max(1,a.cacheReadTokens+a.inputTokens+a.cacheCreationTokens):0;return(0,d.jsxs)("div",{className:"card card-pad space-y-3",children:[(0,d.jsxs)("div",{className:"flex items-baseline justify-between gap-2",children:[(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"font-semibold text-text-primary flex items-center gap-2",children:[(0,d.jsx)("span",{children:(0,m.sO)(a.source).shortenModel(a.model)}),"all"===c&&(0,d.jsxs)("span",{className:"inline-flex items-center gap-1 text-[10px] uppercase tracking-wide text-text-tertiary font-medium",children:[(0,d.jsx)("img",{src:(0,m.sO)(a.source).logoSrc,alt:"","aria-hidden":!0,className:"w-3.5 h-3.5 rounded-[3px] object-contain"}),"claude"===a.source?"Claude":"Codex"]})]}),(0,d.jsx)("div",{className:"num-mono text-xs text-text-tertiary",children:a.model})]}),!a.pricingResolved&&(0,d.jsx)("span",{className:"pill bg-warning/10 text-warning border border-warning/20 text-[10px] whitespace-nowrap",children:n("common.fallbackPrice")})]}),(0,d.jsx)("div",{className:"num-hero",children:(0,i.az)(a.cost)}),(0,d.jsx)("div",{className:"text-xs text-text-secondary",children:n("models.field.pctOfTotal",{pct:(0,i.R8)(b,0),tokens:(0,i.jh)(a.totalTokens,o)})}),(0,d.jsx)(q,{label:n("models.share.cost"),value:b,tone:"brand",right:(0,i.R8)(b)}),(0,d.jsx)(q,{label:n("models.share.tokens"),value:e,tone:"default",right:(0,i.R8)(e)}),(0,d.jsx)(q,{label:n("models.share.cacheHit"),value:f,tone:"success",right:(0,i.R8)(f,0)}),(0,d.jsxs)("div",{className:"pt-3 border-t border-border grid grid-cols-2 gap-2 text-xs",children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.requests")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-primary",children:a.requests}),(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.savedByCache")}),(0,d.jsx)("div",{className:"num-mono text-right text-success",children:(0,i.az)(a.saved)}),a.pricing&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.input1M")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-secondary",children:(0,i.az)(a.pricing.input)}),(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.output1M")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-secondary",children:(0,i.az)(a.pricing.output)}),(0,d.jsx)("div",{className:"text-text-tertiary",children:n("models.field.cacheRead1M")}),(0,d.jsx)("div",{className:"num-mono text-right text-text-secondary",children:(0,i.az)(a.pricing.cacheRead)})]})]})]},`${a.source}:${a.model}`)})}),(0,d.jsx)(g.wn,{title:n("models.eachTrend"),children:(0,d.jsx)(h.TokenStackChart,{data:x})})]})}function q({label:a,value:b,right:c,tone:e="default"}){return(0,d.jsxs)("div",{children:[(0,d.jsxs)("div",{className:"flex items-center justify-between text-xs",children:[(0,d.jsx)("span",{className:"text-text-tertiary",children:a}),(0,d.jsx)("span",{className:"num-mono text-text-secondary",children:c})]}),(0,d.jsx)("div",{className:"h-1 bg-bg-surface-hi rounded mt-1 overflow-hidden",children:(0,d.jsx)("div",{className:`h-full ${{brand:"bg-brand",success:"bg-success",default:"bg-chart-input"}[e]} rounded`,style:{width:`${100*Math.max(0,Math.min(1,b))}%`}})})]})}},24919:(a,b,c)=>{"use strict";c.d(b,{TokenStackChart:()=>o});var d=c(21124),e=c(6077),f=c(72400),g=c(57495),h=c(59296),i=c(16803),j=c(11767),k=c(18311),l=c(15514),m=c(15519);let n={input:"rgb(var(--chart-input))",output:"rgb(var(--chart-output))",cacheRead:"rgb(var(--chart-cache-read))",cacheCreation:"rgb(var(--chart-cache-create))"};function o({data:a,height:b="h-72"}){let c=(0,m.kj)(),{locale:o}=(0,m.s9)();return a.length?(0,d.jsxs)("div",{className:`${b} w-full`,children:[(0,d.jsx)(e.u,{width:"100%",height:"100%",children:(0,d.jsxs)(f.E,{data:a,margin:{top:12,right:8,bottom:4,left:8},barCategoryGap:"22%",children:[(0,d.jsx)(g.d,{stroke:"rgb(var(--chart-grid))",strokeOpacity:.6,strokeDasharray:"3 3",vertical:!1}),(0,d.jsx)(h.W,{dataKey:"label",tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,interval:"preserveStartEnd",minTickGap:32,tickMargin:8}),(0,d.jsx)(i.h,{tickFormatter:a=>(0,l.jh)(Number(a),o),tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,width:56,tickMargin:4}),(0,d.jsx)(j.m,{content:(0,d.jsx)(q,{}),cursor:{fill:"rgb(var(--text-primary) / 0.05)",radius:4}}),(0,d.jsx)(k.y,{dataKey:"input",stackId:"a",fill:n.input,isAnimationActive:!1}),(0,d.jsx)(k.y,{dataKey:"cacheCreation",stackId:"a",fill:n.cacheCreation,isAnimationActive:!1}),(0,d.jsx)(k.y,{dataKey:"cacheRead",stackId:"a",fill:n.cacheRead,isAnimationActive:!1}),(0,d.jsx)(k.y,{dataKey:"output",stackId:"a",fill:n.output,radius:[4,4,0,0],isAnimationActive:!1})]})}),(0,d.jsxs)("div",{className:"flex items-center flex-wrap justify-center gap-4 text-xs text-text-secondary mt-2",children:[(0,d.jsx)(p,{color:n.input,label:c("chart.legend.input")}),(0,d.jsx)(p,{color:n.cacheCreation,label:c("chart.legend.cacheWrite")}),(0,d.jsx)(p,{color:n.cacheRead,label:c("chart.legend.cacheRead")}),(0,d.jsx)(p,{color:n.output,label:c("chart.legend.output")})]})]}):(0,d.jsx)("div",{className:`${b} flex items-center justify-center text-text-tertiary text-sm`,children:c("chart.empty")})}function p({color:a,label:b}){return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,d.jsx)("span",{className:"w-2.5 h-2.5 rounded-sm",style:{background:a}}),(0,d.jsx)("span",{children:b})]})}function q(a){let b=(0,m.kj)(),{locale:c}=(0,m.s9)();if(!a.active||!a.payload||!a.payload.length)return null;let e=a.payload[0].payload,f=e.input+e.output+e.cacheRead+e.cacheCreation;return(0,d.jsxs)("div",{className:"card-elevated border border-border-hi rounded-card p-3 text-xs min-w-[200px]",children:[(0,d.jsx)("div",{className:"font-medium text-text-primary mb-2",children:a.label}),(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)(r,{color:n.input,label:b("chart.legend.input"),value:e.input,locale:c}),(0,d.jsx)(r,{color:n.cacheCreation,label:b("chart.legend.cacheWrite"),value:e.cacheCreation,locale:c}),(0,d.jsx)(r,{color:n.cacheRead,label:b("chart.legend.cacheRead"),value:e.cacheRead,locale:c}),(0,d.jsx)(r,{color:n.output,label:b("chart.legend.output"),value:e.output,locale:c})]}),(0,d.jsxs)("div",{className:"mt-2 pt-2 border-t border-border flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.total")}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:(0,l.jh)(f,c)})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-1",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.cost")}),(0,d.jsx)("span",{className:"num-mono text-brand",children:(0,l.az)(e.cost)})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-1",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.requests")}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:e.requests})]})]})}function r({color:a,label:b,value:c,locale:e}){return(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,d.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-text-secondary",children:[(0,d.jsx)("span",{className:"w-2 h-2 rounded-sm",style:{background:a}}),b]}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:(0,l.jh)(c,e)})]})}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},36718:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(82802),o=c(77533),p=c(45229),q=c(32822),r=c(261),s=c(26453),t=c(52474),u=c(26713),v=c(51356),w=c(62685),x=c(36225),y=c(63446),z=c(2762),A=c(45742),B=c(86439),C=c(81170),D=c.n(C),E=c(62506),F=c(91203),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H={children:["",{children:["models",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,21399)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/models/page.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(c.bind(c,67302)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/layout.tsx"],error:[()=>Promise.resolve().then(c.bind(c,41697)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,90391)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/loading.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}]}.children,I=["/Users/zuopeng.cheng/personal/workspace/ccgauge/app/models/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/models/page",pathname:"/models",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/models/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
+
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},37583:(a,b,c)=>{"use strict";c.d(b,{pp:()=>h,qK:()=>g,wn:()=>f});var d=c(75338),e=c(95012);function f({title:a,desc:b,right:c,children:f,className:g,inlineDesc:h,fillBody:i}){return(0,d.jsxs)("section",{className:(0,e.cn)("card overflow-hidden",i&&"flex flex-col",g),children:[(a||c)&&(0,d.jsxs)("header",{className:(0,e.cn)("section-header","flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3 sm:gap-4","px-5 sm:px-6 pt-4 sm:pt-5 pb-3 border-b border-border"),children:[(0,d.jsxs)("div",{className:(0,e.cn)("min-w-0",h&&"sm:flex sm:items-baseline sm:gap-2.5"),children:[a&&(0,d.jsx)("h2",{className:"text-[15px] font-semibold text-text-primary tracking-tight leading-tight",children:a}),b&&(0,d.jsx)("p",{className:(0,e.cn)("text-xs text-text-secondary leading-relaxed",h?"mt-1 sm:mt-0":"mt-1.5"),children:b})]}),c&&(0,d.jsx)("div",{className:"flex items-center gap-2 flex-wrap",children:c})]}),(0,d.jsx)("div",{className:(0,e.cn)("p-5 sm:p-6",i&&"flex-1 flex flex-col"),children:f})]})}function g({title:a,desc:b,right:c,children:e}){return(0,d.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 py-6 sm:py-8 space-y-5 sm:space-y-6",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-end sm:justify-between gap-3 sm:gap-4",children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("h1",{className:"text-2xl sm:text-[1.75rem] font-semibold tracking-tight leading-tight truncate",children:a}),b&&(0,d.jsx)("p",{className:"text-sm text-text-secondary mt-1.5 leading-relaxed",children:b})]}),c&&(0,d.jsx)("div",{className:"flex items-center gap-2 flex-wrap",children:c})]}),e]})}function h({title:a,desc:b,icon:c,action:e}){return(0,d.jsxs)("div",{className:"card text-center py-14 sm:py-16 px-6 flex flex-col items-center gap-3",children:[(0,d.jsx)("div",{className:"w-12 h-12 rounded-full bg-bg-surface-hi border border-border flex items-center justify-center text-text-tertiary",children:c??(0,d.jsx)(i,{})}),(0,d.jsx)("div",{className:"text-base font-medium text-text-primary",children:a}),b&&(0,d.jsx)("div",{className:"text-sm text-text-tertiary max-w-md leading-relaxed",children:b}),e&&(0,d.jsx)("div",{className:"mt-2",children:e})]})}function i(){return(0,d.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,d.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,d.jsx)("path",{d:"M9 9h.01M15 9h.01M9 15c1 1 2 1.5 3 1.5s2-.5 3-1.5"})]})}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},48161:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69181:(a,b,c)=>{"use strict";c.d(b,{i:()=>f,z:()=>e});let d={inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0,totalTokens:0,cost:0,saved:0,requests:0};function e(a){return 0===a.length?{...d}:1===a.length?a[0]:a.reduce((a,b)=>({inputTokens:a.inputTokens+b.inputTokens,outputTokens:a.outputTokens+b.outputTokens,cacheReadTokens:a.cacheReadTokens+b.cacheReadTokens,cacheCreationTokens:a.cacheCreationTokens+b.cacheCreationTokens,totalTokens:a.totalTokens+b.totalTokens,cost:a.cost+b.cost,saved:a.saved+b.saved,requests:a.requests+b.requests}),{...d})}function f(a){if(0===a.length)return[];if(1===a.length)return a[0];let b=new Map;for(let c of a)for(let a of c){let c=b.get(a.key);if(!c){b.set(a.key,{...a,models:function(a){let b={};for(let[c,d]of Object.entries(a))b[c]={tokens:d.tokens,cost:d.cost,requests:d.requests};return b}(a.models)});continue}for(let[b,d]of(c.inputTokens+=a.inputTokens,c.outputTokens+=a.outputTokens,c.cacheReadTokens+=a.cacheReadTokens,c.cacheCreationTokens+=a.cacheCreationTokens,c.totalTokens+=a.totalTokens,c.cost+=a.cost,c.saved+=a.saved,c.requests+=a.requests,Object.entries(a.models))){let a=c.models[b]??{tokens:0,cost:0,requests:0};a.tokens+=d.tokens,a.cost+=d.cost,a.requests+=d.requests,c.models[b]=a}}return Array.from(b.values()).sort((a,b)=>a.key.localeCompare(b.key))}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},80481:a=>{"use strict";a.exports=require("node:readline")},81995:(a,b,c)=>{Promise.resolve().then(c.bind(c,24919))},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},87571:(a,b,c)=>{Promise.resolve().then(c.bind(c,89605))},89605:(a,b,c)=>{"use strict";c.d(b,{TokenStackChart:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call TokenStackChart() from the server but TokenStackChart is 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/zuopeng.cheng/personal/workspace/ccgauge/components/charts/token-stack-chart.tsx","TokenStackChart")}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[331,802,153,993,517,716,98,730,567],()=>b(b.s=36718));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../package.json","../../../package.json","../../chunks/153.js","../../chunks/331.js","../../chunks/517.js","../../chunks/567.js","../../chunks/716.js","../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../node_modules/next/dist/lib/constants.js","../../../../node_modules/next/dist/lib/interop-default.js","../../../../node_modules/next/dist/lib/is-error.js","../../../../node_modules/next/dist/lib/semver-noop.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../node_modules/next/dist/server/response-cache/types.js","../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../../node_modules/next/dist/shared/lib/segment.js","../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../node_modules/next/package.json","../../../../package.json","../../../package.json","../../chunks/153.js","../../chunks/331.js","../../chunks/517.js","../../chunks/567.js","../../chunks/716.js","../../chunks/730.js","../../chunks/802.js","../../chunks/98.js","../../chunks/993.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=974,a.ids=[974],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1853:(a,b,c)=>{"use strict";c.d(b,{ls:()=>f,y2:()=>e});var d=c(50160);function e(a,b=18e6){if(0===a.length)return[];let c=[...a].sort((a,b)=>a.timestamp.localeCompare(b.timestamp)),f=[],g=null,h=0,i=Date.now();for(let a of c){let c=new Date(a.timestamp).getTime();(!g||c-h>=b)&&(h=c,g={id:a.timestamp,startTime:a.timestamp,endTime:new Date(c+b).toISOString(),actualEndTime:a.timestamp,isActive:!1,inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0,totalTokens:0,cost:0,saved:0,models:[],requests:0},f.push(g));let e=(0,d.SI)(a);g.inputTokens+=a.usage.input_tokens,g.outputTokens+=a.usage.output_tokens,g.cacheReadTokens+=a.usage.cache_read_input_tokens,g.cacheCreationTokens+=a.usage.cache_creation_input_tokens,g.totalTokens=g.inputTokens+g.outputTokens+g.cacheReadTokens+g.cacheCreationTokens,g.cost+=e.total,g.saved+=e.saved,g.requests+=1,g.actualEndTime=a.timestamp,g.models.includes(a.model)||g.models.push(a.model)}for(let a of f){let b=new Date(a.endTime).getTime();a.isActive=i<b}return f}function f(a,b=18e6){let c=function(a,b=18e6){return e(a,b).find(a=>a.isActive)??null}(a,b);if(!c)return{block:null,windowMs:b,elapsedMs:0,remainingMs:0,progress:0,burnRatePerMin:0,costPerMin:0,projectedTotal:0,projectedCost:0};let d=Date.now(),g=new Date(c.startTime).getTime(),h=new Date(c.endTime).getTime(),i=d-g,j=Math.max(0,h-d),k=Math.min(1,i/b),l=i/6e4,m=l>0?c.totalTokens/l:0,n=l>0?c.cost/l:0,o=b/6e4;return{block:c,windowMs:b,elapsedMs:i,remainingMs:j,progress:k,burnRatePerMin:m,costPerMin:n,projectedTotal:m*o,projectedCost:n*o}}},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4001:(a,b,c)=>{"use strict";c.d(b,{ActivityStatsSection:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call ActivityStatsSection() from the server but ActivityStatsSection is 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/zuopeng.cheng/personal/workspace/ccgauge/components/activity-stats.tsx","ActivityStatsSection")},10598:(a,b,c)=>{Promise.resolve().then(c.bind(c,25515)),Promise.resolve().then(c.bind(c,55423)),Promise.resolve().then(c.bind(c,72267)),Promise.resolve().then(c.bind(c,82140)),Promise.resolve().then(c.bind(c,33280))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14843:(a,b,c)=>{"use strict";c.d(b,{N0:()=>g,go:()=>h});var d=c(50160),e=c(30285),f=c(62955);function g(a){return a&&a.block?{hasBlock:!0,startTime:a.block.startTime,endTime:a.block.endTime,totalTokens:a.block.totalTokens,cost:a.block.cost,requests:a.block.requests,models:a.block.models,burnRatePerMin:a.burnRatePerMin,costPerMin:a.costPerMin,projectedTotal:a.projectedTotal,projectedCost:a.projectedCost}:{hasBlock:!1,totalTokens:0,cost:0,requests:0,models:[],burnRatePerMin:0,costPerMin:0,projectedTotal:0,projectedCost:0}}function h(a,b,c){let g=(0,e.o)(a,b,c),h=new Map;for(let a of b)h.set(a.uuid,a);let i=new Map,j=new Map,k=new Map;for(let b of a){let a=g.get(b.uuid)??b.uuid,e=(0,d.SI)(b),l=function(a){let b=i.get(a);if(void 0!==b)return b;let d=[],e=a,f="",g=new Set;for(;e&&!g.has(e);){g.add(e);let a=i.get(e);if(void 0!==a){f=a;break}d.push(e);let b=h.get(e);if(b&&b.textPreview&&b.textPreview.trim()){f=b.textPreview;break}e=c[e]??null}for(let a of d)i.set(a,f);return f}(b.uuid),m={uuid:b.uuid,timestamp:b.timestamp,source:b.source,model:b.model,cwd:b.cwd,projectLabel:(0,f.CL)(b.cwd),sessionId:b.sessionId,inputTokens:b.usage.input_tokens,outputTokens:b.usage.output_tokens,cacheReadTokens:b.usage.cache_read_input_tokens,cacheCreationTokens:b.usage.cache_creation_input_tokens,reasoningTokens:b.usage.reasoning_tokens??0,totalTokens:b.usage.input_tokens+b.usage.output_tokens+b.usage.cache_read_input_tokens+b.usage.cache_creation_input_tokens,cost:e.total,costInput:e.input,costOutput:e.output,costCacheRead:e.cacheRead,costCacheWrite:e.cacheCreation5m+e.cacheCreation1h,toolNames:b.toolNames,effort:b.effort,directPrompt:l||void 0},n=j.get(a);n?n.push(m):j.set(a,[m]),k.has(a)||k.set(a,b)}let l=[];for(let[a,b]of j){b.sort((a,b)=>a.timestamp<b.timestamp?-1:1);let c=b[0],d=b[b.length-1],e=new Set,g=new Set,i=new Set,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;for(let a of b){for(let b of(e.add(a.model),a.toolNames))g.add(b);a.effort&&i.add(a.effort),j+=a.inputTokens,k+=a.outputTokens,m+=a.cacheReadTokens,n+=a.cacheCreationTokens,o+=a.reasoningTokens,p+=a.cost,q+=a.costInput,r+=a.costOutput,s+=a.costCacheRead,t+=a.costCacheWrite}let u=h.get(a),v=new Date(c.timestamp).getTime(),w=new Date(d.timestamp).getTime(),x=Number.isFinite(v)&&Number.isFinite(w)?Math.max(0,w-v):0;l.push({turnId:a,timestamp:c.timestamp,endTimestamp:d.timestamp,durationMs:x,cwd:c.cwd,projectLabel:(0,f.CL)(c.cwd),sessionId:c.sessionId,models:Array.from(e),callCount:b.length,inputTokens:j,outputTokens:k,cacheReadTokens:m,cacheCreationTokens:n,reasoningTokens:o,totalTokens:j+k+m+n,cost:p,costInput:q,costOutput:r,costCacheRead:s,costCacheWrite:t,toolNames:Array.from(g),efforts:Array.from(i),userText:u?.textPreview??"",children:b})}return l.sort((a,b)=>a.timestamp<b.timestamp?1:-1),l}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},25515:(a,b,c)=>{"use strict";c.d(b,{ActivityStatsSection:()=>i});var d=c(21124),e=c(38301),f=c(15514),g=c(74133),h=c(78642);function i({stats:a,comparison:b,locale:c,className:f}){var i;let l=(0,e.useCallback)((a,b)=>(0,h.nA)(c,a,b),[c]),m=[{label:l("activity.activeDays"),value:a.activeDays.toLocaleString()},{label:l("activity.streakCombinedLabel"),value:l("activity.streakCombinedValue",{current:a.currentStreak,longest:a.longestStreak})},{label:l("activity.peakHour"),value:a.peakHour<0?"—":o(a.peakHour,c)}];return(0,d.jsx)(g.wn,{title:l("activity.title"),desc:l("activity.subtitle"),inlineDesc:!0,fillBody:!0,className:f,children:(0,d.jsxs)("div",{className:"flex flex-col md:flex-row gap-5 md:gap-8 items-stretch flex-1",children:[(0,d.jsx)("div",{className:"grid grid-cols-3 md:flex md:flex-col md:w-[170px] md:shrink-0 gap-2.5",children:m.map(a=>(0,d.jsx)(j,{label:a.label,value:a.value},a.label))}),(0,d.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col",children:[(0,d.jsx)(k,{data:a.heatmap,tokens:a.tokenHeatmap,max:a.heatmapMax,locale:c}),b&&(0,d.jsx)("div",{className:"mt-auto pt-4 text-xs text-text-tertiary leading-relaxed",children:l("activity.comparison",{multiplier:(i=b.multiplier)<10?i.toFixed(1):i<1e3?Math.round(i).toString():i<1e6?(i/1e3).toFixed(1)+"K":(i/1e6).toFixed(1)+"M",ref:l(`activity.ref.${b.refKey}`)})})]})]})})}function j({label:a,value:b}){return(0,d.jsxs)("div",{className:"rounded-button bg-bg-surface-hi/60 border border-border px-3.5 py-3 flex-1 flex flex-col justify-center min-h-[64px]",children:[(0,d.jsx)("div",{className:"text-[11px] uppercase tracking-[0.06em] text-text-tertiary font-semibold truncate",children:a}),(0,d.jsx)("div",{className:"num-mono text-xl font-semibold text-text-primary mt-1 leading-none truncate",children:b})]})}function k({data:a,tokens:b,max:c,locale:f}){let g=(0,e.useCallback)((a,b)=>(0,h.nA)(f,a,b),[f]),i=[0,3,6,9,12,15,18,21],[j,k]=(0,e.useState)(null),m=(0,e.useMemo)(()=>{let c=0,d=0,e=0;for(let b of a)for(let a of b)c+=a;for(let a of b)for(let b of a)d+=b,b>e&&(e=b);return{messages:c,tokens:d,maxTokens:e}},[a,b]);function o(c,d,e){let f=c.currentTarget.getBoundingClientRect();k({dow:d,hour:e,count:a[d][e],tokens:b[d][e],rect:{left:f.left,top:f.top,width:f.width,height:f.height}})}return(0,d.jsxs)("div",{className:"w-full",children:[(0,d.jsxs)("div",{className:"grid gap-y-[3px] [grid-template-columns:auto_1fr] items-center",children:[a.map((a,b)=>(0,d.jsx)(l,{dow:b,row:a,max:c,t:g,onCellHover:o,onLeave:()=>k(null)},b)),(0,d.jsx)("div",{className:"text-[10px] text-text-tertiary opacity-0 select-none pr-2",children:"."}),(0,d.jsx)("div",{className:"grid [grid-template-columns:repeat(24,minmax(0,1fr))] text-[10px] text-text-tertiary tabular-nums gap-[3px] mt-1",children:Array.from({length:24}).map((a,b)=>{var c;return(0,d.jsx)("div",{className:"text-center leading-none",children:i.includes(b)?(c=b,"zh"===f?`${c}`:0===c?"12a":c<12?`${c}a`:12===c?"12p":`${c-12}p`):""},b)})})]}),j&&(0,d.jsx)(n,{hover:j,locale:f,totalMessages:m.messages,totalTokens:m.tokens,maxCount:c,maxTokens:m.maxTokens,t:g})]})}function l({dow:a,row:b,max:c,t:e,onCellHover:f,onLeave:g}){let h=e(`activity.dow.${a}`);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"text-[11px] text-text-tertiary tabular-nums pr-2.5 leading-none whitespace-nowrap",children:h}),(0,d.jsx)("div",{className:"grid [grid-template-columns:repeat(24,minmax(0,1fr))] gap-[3px]",onMouseLeave:g,children:b.map((b,e)=>(0,d.jsx)(m,{count:b,max:c,onHover:b=>f(b,a,e)},e))})]})}function m({count:a,max:b,onHover:c}){let e=b>0&&a>0?Math.sqrt(a/b):0,g=a?{backgroundColor:`rgb(var(--brand) / ${(.18+.82*e).toFixed(2)})`}:{};return(0,d.jsx)("div",{onMouseEnter:c,className:(0,f.cn)("aspect-square rounded-[3px] transition-transform duration-100","hover:scale-125 hover:ring-1 hover:ring-brand/60 hover:z-10 relative",!a&&"bg-bg-surface-hi"),style:g})}function n({hover:a,locale:b,totalMessages:c,totalTokens:e,maxCount:g,maxTokens:h,t:i}){let j=a.rect.left+a.rect.width/2,k=a.rect.top<96,l=k?a.rect.top+a.rect.height+8:a.rect.top-8,m=i(`activity.dow.${a.dow}`),n=function(a,b){let c=(a+1)%24;return"zh"===b?`${a.toString().padStart(2,"0")}:00 – ${c.toString().padStart(2,"0")}:00`:`${o(a,b)} – ${o(c,b)}`}(a.hour,b),p=c>0?a.count/c*100:0,q=g>0?a.count/g*100:0,r=e>0?a.tokens/e*100:0,s=h>0?a.tokens/h*100:0;return(0,d.jsx)("div",{role:"tooltip",className:"pointer-events-none fixed z-50",style:{left:j,top:l,transform:`translate(-50%, ${k?"0%":"-100%"})`},children:(0,d.jsxs)("div",{className:"card-elevated rounded-button px-3 py-2 text-xs whitespace-nowrap shadow-xl border border-border-hi bg-bg-elevated min-w-[180px]",children:[(0,d.jsxs)("div",{className:"font-semibold text-text-primary mb-1",children:[m," \xb7 ",n]}),a.count>0?(0,d.jsxs)("div",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-0.5 text-text-secondary tabular-nums",children:[(0,d.jsx)("span",{className:"text-text-tertiary",children:i("activity.heatmap.messages")}),(0,d.jsxs)("span",{className:"text-right",children:[a.count.toLocaleString(),(0,d.jsxs)("span",{className:"text-text-tertiary ml-1.5",children:["\xb7"," ",(0,d.jsxs)("span",{title:i("activity.heatmap.shareLabel"),children:[p.toFixed(1),"%"]})," / ",(0,d.jsxs)("span",{title:i("activity.heatmap.intensityLabel"),children:[q.toFixed(0),"%"]})]})]}),(0,d.jsx)("span",{className:"text-text-tertiary",children:i("activity.heatmap.tokens")}),(0,d.jsxs)("span",{className:"text-right",children:[(0,f.jh)(a.tokens,b),(0,d.jsxs)("span",{className:"text-text-tertiary ml-1.5",children:["\xb7"," ",(0,d.jsxs)("span",{title:i("activity.heatmap.shareLabel"),children:[r.toFixed(1),"%"]})," / ",(0,d.jsxs)("span",{title:i("activity.heatmap.intensityLabel"),children:[s.toFixed(0),"%"]})]})]}),(0,d.jsx)("span",{}),(0,d.jsxs)("span",{className:"text-[10px] text-text-tertiary text-right pt-1 leading-none",children:[i("activity.heatmap.shareLabel")," / ",i("activity.heatmap.intensityLabel")]})]}):(0,d.jsx)("div",{className:"text-text-tertiary",children:i("activity.heatmap.empty")})]})})}function o(a,b){return"zh"===b?`${a}:00`:0===a?"12 AM":a<12?`${a} AM`:12===a?"12 PM":`${a-12} PM`}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},29820:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>z,dynamic:()=>x,revalidate:()=>y});var d=c(75338),e=c(49098),f=c(67803),g=c(30285),h=c(1853),i=c(80489),j=c(37583),k=c(60798),l=c(88622),m=c(53633),n=c(73668),o=c(14843),p=c(95012),q=c(91719),r=c(46796),s=c(69181),t=c(60704);function u(){return Array.from({length:7},()=>Array(24).fill(0))}let v=[{key:"haiku",tokens:22},{key:"tweet",tokens:50},{key:"littlePrince",tokens:22e3},{key:"gatsby",tokens:65e3},{key:"hobbit",tokens:124e3},{key:"lotrTrilogy",tokens:624e3},{key:"warAndPeace",tokens:763e3},{key:"harryPotterAll",tokens:143e4},{key:"encyclopediaBritannica",tokens:572e5},{key:"wikipediaEn",tokens:65e8}];var w=c(4001);let x="force-dynamic",y=0;async function z({searchParams:a}){let b=await a,c=await (0,r.ev)(b.source);return(0,d.jsx)(A,{source:c})}async function A({source:a}){let b=await (0,e.So)(),c=(0,r.rY)(b.records,a),x=(0,r.n$)(a),y=await (0,q.yO)(),z=await (0,q.sG)(),A=a=>(0,p.jh)(a,z);if(0===c.length)return(0,d.jsx)(j.qK,{title:y("overview.title"),desc:y("brand.tagline"),children:(0,d.jsx)(j.pp,{title:y("overview.empty.title"),desc:y("overview.subtitle.empty",{dirs:b.stats.scannedDirs.length})})});let B=c.filter(a=>(function(a){let b=new Date(a),c=new Date;return b.getFullYear()===c.getFullYear()&&b.getMonth()===c.getMonth()&&b.getDate()===c.getDate()})(a.timestamp)),C=c.filter(a=>(function(a){let b=new Date(a),c=new Date;return c.setDate(c.getDate()-1),b.getFullYear()===c.getFullYear()&&b.getMonth()===c.getMonth()&&b.getDate()===c.getDate()})(a.timestamp)),D=c.filter(a=>(function(a){let b=new Date(a),c=new Date;return b.getFullYear()===c.getFullYear()&&b.getMonth()===c.getMonth()})(a.timestamp)),E=(0,s.z)(x.map(a=>(0,f.$M)(B,{source:a}))),F=(0,s.z)(x.map(a=>(0,f.$M)(C,{source:a}))),G=(0,s.z)(x.map(a=>(0,f.$M)(D,{source:a}))),H=F.totalTokens>0||F.cost>0,I=F.totalTokens>0?(E.totalTokens-F.totalTokens)/F.totalTokens*100:NaN,J=!H&&(E.totalTokens>0||E.cost>0)?{firstTime:!0,label:y("overview.delta.firstTime")}:null,K=E.cacheReadTokens+E.inputTokens>0?E.cacheReadTokens/(E.cacheReadTokens+E.inputTokens+E.cacheCreationTokens):0,L=x.map(b=>{let d=(0,t.sO)(b),e="all"===a?c.filter(a=>a.source===b):c,f=(0,h.ls)(e,d.capabilities.blockWindowMs);return{source:b,serialized:(0,o.N0)(f)}}),M=new Date;M.setDate(M.getDate()-30);let N=(0,s.i)(x.map(a=>(0,f.a6)(c,"day",{source:a,from:M}))),O=M.toISOString(),P=c.filter(a=>a.timestamp>=O),Q=(0,r.rY)(b.userRecords,a).filter(a=>a.timestamp>=O),R=(0,g.o)(P,Q,b.parentMap),S=new Map;for(let a of P){let b=R.get(a.uuid)??a.uuid,c=S.get(b);(!c||a.timestamp<c)&&S.set(b,a.timestamp)}let T=new Map;for(let a of S.values()){let{key:b}=(0,f.a3)(a,"day");T.set(b,(T.get(b)??0)+1)}let U=N.map(a=>({label:a.label,input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadTokens,cacheCreation:a.cacheCreationTokens,cost:a.cost,requests:a.requests,turns:T.get(a.key)??0})),V=N.length,W=1===V?y("overview.trend.activeDays",{n:1}):y("overview.trend.activeDays.plural",{n:V}),X=x.flatMap(a=>(0,f.a9)(c,{source:a,from:function(){let a=new Date;return new Date(a.getFullYear(),a.getMonth(),1)}()})).sort((a,b)=>b.cost-a.cost),Y=X[0],Z=Y&&G.cost>0?(0,p.R8)(Y.cost/G.cost):"—",$="all"===a?b.bySource.reduce((a,b)=>a+b.filesScanned,0):b.bySource.find(b=>b.source===a)?.filesScanned??0,_="all"===a?b.bySource.reduce((a,b)=>a+b.assistantRecords,0):b.bySource.find(b=>b.source===a)?.assistantRecords??c.length;return(0,d.jsxs)(j.qK,{title:y("overview.title"),desc:y("overview.subtitle",{count:_.toLocaleString(),files:$,ms:b.stats.durationMs}),children:[(0,d.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[(0,d.jsx)(i.n,{label:y("overview.kpi.tokensToday"),value:A(E.totalTokens),hint:y("overview.kpi.tokensToday.hint",{count:E.requests}),delta:Number.isFinite(I)?{value:I,positiveIsGood:!1}:J,deltaTitle:y("overview.delta.title")}),(0,d.jsx)(i.n,{label:y("overview.kpi.thisMonth"),value:(0,p.az)(G.cost),hint:y("overview.kpi.thisMonth.hint",{tokens:A(G.totalTokens),req:G.requests})}),(0,d.jsx)(i.n,{label:y("overview.kpi.cacheHit"),value:(0,p.R8)(K,0),hint:y("overview.kpi.cacheHit.hint",{amount:(0,p.az)(E.saved)}),accent:"success",progress:{value:K,tone:"success"}}),(0,d.jsx)(i.n,{label:y("overview.kpi.topModel"),value:Y?(0,t.sO)(Y.source).shortenModel(Y.model):"—",hint:Y?y("overview.kpi.topModel.hint",{pct:Z}):"",accent:"brand"})]}),(0,d.jsx)(n.OverviewTrendCard,{data:U,activeDaysHint:W}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-4 items-stretch",children:[(0,d.jsx)("div",{className:"lg:col-span-2 flex",children:(0,d.jsx)(w.ActivityStatsSection,{stats:function(a,b){let c="all"===b.source?a:a.filter(a=>a.source===b.source);if(0===c.length)return{sessions:0,messages:0,totalTokens:0,activeDays:0,currentStreak:0,longestStreak:0,peakHour:-1,favoriteModel:null,heatmap:u(),heatmapMax:0,tokenHeatmap:u(),tokensSummed:0};let d=new Set,e=new Set,f=Array(24).fill(0),g=new Map,h=u(),i=u(),j=0,k=0;for(let a of c){a.sessionId&&d.add(a.sessionId);let b=new Date(a.timestamp);if(Number.isNaN(b.getTime()))continue;let c=function(a){let b=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0");return`${b}-${c}-${d}`}(b);e.add(c);let l=b.getDay(),m=b.getHours();f[m]+=1,h[l][m]+=1,g.set(a.model,(g.get(a.model)??0)+1);let n=a.usage,o=n.input_tokens+n.output_tokens+n.cache_read_input_tokens+n.cache_creation_input_tokens;i[l][m]+=o,j+=o,k+=1}let l=function(a){let b=-1,c=-1;for(let d=0;d<a.length;d+=1)a[d]>c&&(c=a[d],b=d);return b}(f),m=function(a){let b=null,c=-1;for(let[d,e]of a)e>c&&(b=d,c=e);return b}(g),{current:n,longest:o}=function(a,b){if(0===a.size)return{current:0,longest:0};let c=Array.from(a).map(a=>new Date(a+"T00:00:00").getTime()).filter(a=>Number.isFinite(a)).sort((a,b)=>a-b),d=1,e=1;for(let a=1;a<c.length;a+=1)c[a]-c[a-1]==864e5?(e+=1)>d&&(d=e):e=1;let f=function(a){let b=new Date(a);return b.setHours(0,0,0,0),b.getTime()}(Date.now()),g=c[c.length-1];if(f-g>864e5)return{current:0,longest:d};let h=g,i=0,j=0,k=new Set(c);for(;j<b&&k.has(h);)i+=1,h-=864e5,j+=1;return{current:i,longest:d}}(e,b.streakWindowDays??365),p=0;for(let a of h)for(let b of a)b>p&&(p=b);return{sessions:d.size,messages:k,totalTokens:j,activeDays:e.size,currentStreak:n,longestStreak:o,peakHour:l,favoriteModel:m,heatmap:h,heatmapMax:p,tokenHeatmap:i,tokensSummed:j}}(c,{source:a}),comparison:function(a){if(a<=0)return null;let b=null;for(let c of v)a/c.tokens>=5&&(b=c);return b||(b=v[0]),{refKey:b.key,multiplier:a/b.tokens}}(c.reduce((a,b)=>a+b.usage.input_tokens+b.usage.output_tokens+b.usage.cache_read_input_tokens+b.usage.cache_creation_input_tokens,0)),locale:z,className:"flex-1"})}),(0,d.jsx)("div",{className:"flex",children:"all"===a&&L.length>1?(0,d.jsx)(m.BlockProgressSwitcher,{slots:L.map(a=>({source:a.source,label:"claude"===a.source?"Claude":"Codex",cliName:"claude"===a.source?"Claude Code":"Codex CLI",initial:a.serialized})),defaultSource:function(a){if(0===a.length)return"claude";let b=a.filter(a=>a.serialized.hasBlock);if(1===b.length)return b[0].source;let c=b.length>0?b:a,d=c[0];for(let a of c)a.serialized.cost>d.serialized.cost&&(d=a);return d.source}(L),className:"flex-1"}):(0,d.jsx)(l.BlockProgress,{initial:L[0].serialized,cliName:"claude"===L[0].source?"Claude Code":"Codex CLI",className:"flex-1"})})]}),(0,d.jsx)(j.wn,{title:y("overview.costByModel.title"),desc:y("overview.costByModel.desc"),children:(0,d.jsx)(k.ModelBarChart,{models:X.slice(0,8)})})]})}},30285:(a,b,c)=>{"use strict";function d(a,b,c){let d=new Map;for(let a of b)!a.isSynthetic&&a.textPreview&&a.textPreview.trim()&&d.set(a.uuid,a.textPreview);let e=new Map,f=new Map;for(let b of a)e.set(b.uuid,function(a){let b=[],e=a,g=null,h=0,i=new Set;for(;e&&h++<5e3&&!i.has(e);){i.add(e);let a=f.get(e);if(a){g=a;break}if(b.push(e),d.has(e)){g=e;break}e=c[e]??null}for(let c of(g||(g=a),b))f.set(c,g);return g}(b.uuid));return e}c.d(b,{o:()=>d})},33280:(a,b,c)=>{"use strict";c.d(b,{OverviewTrendCard:()=>r});var d=c(21124),e=c(38301),f=c(74133),g=c(24919),h=c(6077),i=c(72400),j=c(57495),k=c(59296),l=c(16803),m=c(11767),n=c(18311),o=c(15519);function p({data:a,height:b="h-72"}){let c=(0,o.kj)(),{locale:e}=(0,o.s9)();return a.length?(0,d.jsx)("div",{className:`${b} w-full`,children:(0,d.jsx)(h.u,{width:"100%",height:"100%",children:(0,d.jsxs)(i.E,{data:a,margin:{top:12,right:8,bottom:4,left:8},barCategoryGap:"22%",children:[(0,d.jsx)(j.d,{stroke:"rgb(var(--chart-grid))",strokeOpacity:.6,strokeDasharray:"3 3",vertical:!1}),(0,d.jsx)(k.W,{dataKey:"label",tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,interval:"preserveStartEnd",minTickGap:32,tickMargin:8}),(0,d.jsx)(l.h,{tickFormatter:a=>{let b;return b=Number(a),"zh"===e&&b>=1e4?`${(b/1e4).toFixed(1)}万`:b.toLocaleString()},tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,width:56,tickMargin:4}),(0,d.jsx)(m.m,{content:(0,d.jsx)(q,{}),cursor:{fill:"rgb(var(--text-primary) / 0.05)",radius:4}}),(0,d.jsx)(n.y,{dataKey:"turns",fill:"rgb(var(--brand))",radius:[4,4,0,0],isAnimationActive:!1})]})})}):(0,d.jsx)("div",{className:`${b} flex items-center justify-center text-text-tertiary text-sm`,children:c("chart.empty")})}function q(a){let b=(0,o.kj)();if(!a.active||!a.payload||!a.payload.length)return null;let c=a.payload[0].payload;return(0,d.jsxs)("div",{className:"card-elevated border border-border-hi rounded-card p-3 text-xs min-w-[180px]",children:[(0,d.jsx)("div",{className:"font-medium text-text-primary mb-2",children:a.label}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.conversations")}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:(c.turns??0).toLocaleString()})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-1 text-text-tertiary",children:[(0,d.jsx)("span",{children:b("chart.tooltip.requests")}),(0,d.jsx)("span",{className:"num-mono",children:c.requests.toLocaleString()})]})]})}function r({data:a,activeDaysHint:b}){let c=(0,o.kj)(),[h,i]=(0,e.useState)("tokens"),j=c("tokens"===h?"overview.trend.desc.tokens":"overview.trend.desc.conversations");return(0,d.jsx)(f.wn,{title:c("overview.trend.title"),desc:c("overview.trend.desc",{metric:j}),right:(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[(0,d.jsx)(s,{value:h,onChange:i}),(0,d.jsx)("span",{className:"text-xs text-text-tertiary whitespace-nowrap",children:b})]}),children:"tokens"===h?(0,d.jsx)(g.TokenStackChart,{data:a}):(0,d.jsx)(p,{data:a})})}function s({value:a,onChange:b}){let c=(0,o.kj)();return(0,d.jsx)("div",{role:"tablist","aria-label":c("overview.trend.title"),className:"inline-flex items-center rounded-md border border-border bg-bg-surface p-0.5 gap-0.5",children:[{id:"tokens",labelKey:"overview.trend.metric.tokens"},{id:"conversations",labelKey:"overview.trend.metric.conversations"}].map(e=>{let f=e.id===a;return(0,d.jsx)("button",{type:"button",role:"tab","aria-selected":f,onClick:()=>b(e.id),className:`px-2.5 h-6 text-xs inline-flex items-center rounded transition-all ${f?"bg-brand-strong text-white font-semibold shadow-sm":"text-text-tertiary font-medium hover:text-text-primary hover:bg-bg-surface-hi"}`,children:c(e.labelKey)},e.id)})})}},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},48161:a=>{"use strict";a.exports=require("node:os")},53633:(a,b,c)=>{"use strict";c.d(b,{BlockProgressSwitcher:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call BlockProgressSwitcher() from the server but BlockProgressSwitcher is 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/zuopeng.cheng/personal/workspace/ccgauge/components/block-progress-switcher.tsx","BlockProgressSwitcher")},55423:(a,b,c)=>{"use strict";c.d(b,{BlockProgressSwitcher:()=>g});var d=c(21124),e=c(38301),f=c(72267);function g({slots:a,defaultSource:b,className:c}){let g=Math.max(0,a.findIndex(a=>a.source===b)),[h,i]=(0,e.useState)(g),j=a[h]??a[0];return(0,d.jsx)(f.BlockProgress,{initial:j.initial,sourceLabel:j.label,cliName:j.cliName,className:c,headerRight:(0,d.jsx)("div",{role:"tablist","aria-label":"Active 5h block source",className:"inline-flex items-center rounded-md border border-border bg-bg-surface p-0.5 gap-0.5",children:a.map((a,b)=>{let c=b===h;return(0,d.jsx)("button",{type:"button",role:"tab","aria-selected":c,onClick:()=>i(b),className:`px-2 h-5 text-[11px] inline-flex items-center rounded transition-all ${c?"bg-brand-strong text-white font-semibold shadow-sm":"text-text-tertiary font-medium hover:text-text-primary hover:bg-bg-surface-hi"}`,children:a.label},a.source)})})})}},60798:(a,b,c)=>{"use strict";c.d(b,{ModelBarChart:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call ModelBarChart() from the server but ModelBarChart is 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/zuopeng.cheng/personal/workspace/ccgauge/components/charts/model-bar-chart.tsx","ModelBarChart")},62955:(a,b,c)=>{"use strict";c.d(b,{CL:()=>k,tv:()=>l});var d=c(73024),e=c(76760),f=c(95012);let g=new Map,h=/^(.+?)[/\\]\.git[/\\]worktrees[/\\]([^/\\]+)[/\\]?$/,i=/^(.+?)[/\\](?:\.git|\.claude)[/\\]worktrees[/\\]([^/\\]+)(?:[/\\].*)?$/;function j(a){let b=(0,f.PJ)(a);if(!a)return{label:b,isWorktree:!1,mainName:b,worktreeName:"",canonicalCwd:a};let c=i.exec(a);if(c){let a=c[1],b=c[2],d=(0,e.basename)(a)||a;return{label:`${d} (${b})`,isWorktree:!0,mainName:d,worktreeName:b,canonicalCwd:a}}try{let c=`${a}/.git`;if(!(0,d.statSync)(c).isFile())return{label:b,isWorktree:!1,mainName:b,worktreeName:"",canonicalCwd:a};let f=(0,d.readFileSync)(c,"utf8").trim().split(/\r?\n/,1)[0]??"",g=/^gitdir:\s*(.+)$/.exec(f);if(!g)return{label:b,isWorktree:!1,mainName:b,worktreeName:"",canonicalCwd:a};let i=g[1].trim(),j=h.exec(i);if(!j)return{label:b,isWorktree:!1,mainName:b,worktreeName:"",canonicalCwd:a};let k=j[1],l=j[2],m=(0,e.basename)(k)||k;return{label:`${m} (${l})`,isWorktree:!0,mainName:m,worktreeName:l,canonicalCwd:k}}catch{return{label:b,isWorktree:!1,mainName:b,worktreeName:"",canonicalCwd:a}}}function k(a){let b=g.get(a);if(b)return b.label;let c=j(a);return g.set(a,c),c.label}function l(a){return function(a){let b=g.get(a);if(b)return b;let c=j(a);return g.set(a,c),c}(a).canonicalCwd}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69181:(a,b,c)=>{"use strict";c.d(b,{i:()=>f,z:()=>e});let d={inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0,totalTokens:0,cost:0,saved:0,requests:0};function e(a){return 0===a.length?{...d}:1===a.length?a[0]:a.reduce((a,b)=>({inputTokens:a.inputTokens+b.inputTokens,outputTokens:a.outputTokens+b.outputTokens,cacheReadTokens:a.cacheReadTokens+b.cacheReadTokens,cacheCreationTokens:a.cacheCreationTokens+b.cacheCreationTokens,totalTokens:a.totalTokens+b.totalTokens,cost:a.cost+b.cost,saved:a.saved+b.saved,requests:a.requests+b.requests}),{...d})}function f(a){if(0===a.length)return[];if(1===a.length)return a[0];let b=new Map;for(let c of a)for(let a of c){let c=b.get(a.key);if(!c){b.set(a.key,{...a,models:function(a){let b={};for(let[c,d]of Object.entries(a))b[c]={tokens:d.tokens,cost:d.cost,requests:d.requests};return b}(a.models)});continue}for(let[b,d]of(c.inputTokens+=a.inputTokens,c.outputTokens+=a.outputTokens,c.cacheReadTokens+=a.cacheReadTokens,c.cacheCreationTokens+=a.cacheCreationTokens,c.totalTokens+=a.totalTokens,c.cost+=a.cost,c.saved+=a.saved,c.requests+=a.requests,Object.entries(a.models))){let a=c.models[b]??{tokens:0,cost:0,requests:0};a.tokens+=d.tokens,a.cost+=d.cost,a.requests+=d.requests,c.models[b]=a}}return Array.from(b.values()).sort((a,b)=>a.key.localeCompare(b.key))}},70430:(a,b,c)=>{Promise.resolve().then(c.bind(c,4001)),Promise.resolve().then(c.bind(c,53633)),Promise.resolve().then(c.bind(c,88622)),Promise.resolve().then(c.bind(c,60798)),Promise.resolve().then(c.bind(c,73668))},72267:(a,b,c)=>{"use strict";c.d(b,{BlockProgress:()=>h});var d=c(21124),e=c(38301),f=c(15514),g=c(15519);function h({initial:a,className:b,sourceLabel:c,compact:e,headerRight:h,cliName:j="Claude Code"}){let k=(0,g.kj)(),{locale:l}=(0,g.s9)(),m=a=>(0,f.jh)(a,l),n=(0,f.cn)("card flex flex-col",e?"p-4 min-h-[160px]":"card-pad min-h-[180px]",b),o=(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)("div",{className:"label whitespace-nowrap",children:k("block.title")}),c&&(0,d.jsxs)("span",{className:"text-[10px] uppercase tracking-wide text-text-tertiary font-medium whitespace-nowrap",children:["\xb7 ",c]})]});if(!a.hasBlock||!a.endTime||!a.startTime)return(0,d.jsxs)("div",{className:n,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[o,h]}),(0,d.jsx)("div",{className:"text-sm text-text-tertiary mt-4",children:k("block.empty")}),(0,d.jsx)("div",{className:"text-xs text-text-tertiary mt-1",children:k("block.emptyDesc",{cli:j})})]});let p=(0,d.jsxs)("span",{className:"pill bg-success/10 text-success border border-success/20 whitespace-nowrap",children:[(0,d.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-success mr-1 animate-pulse"}),k("common.live")]});return(0,d.jsxs)("div",{className:n,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[o,h??p]}),(0,d.jsx)(i,{startTime:a.startTime,endTime:a.endTime,totalTokens:a.totalTokens,remainingLabel:k("block.remaining"),renderElapsed:a=>k("block.elapsed",{pct:a}),tokensSuffix:k("block.tokensSuffix"),fmtTokens:m}),(0,d.jsxs)("div",{className:"mt-4 pt-4 border-t border-border grid grid-cols-2 gap-3 text-xs",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.spentSoFar")}),(0,d.jsx)("div",{className:"num-mono text-text-primary mt-0.5 text-base",children:(0,f.az)(a.cost)})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.burnPerMin")}),(0,d.jsx)("div",{className:"num-mono text-text-primary mt-0.5 text-base",children:m(a.burnRatePerMin)})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.projectedTotal")}),(0,d.jsx)("div",{className:"num-mono text-text-secondary mt-0.5",children:(0,f.az)(a.projectedCost)})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.requests")}),(0,d.jsx)("div",{className:"num-mono text-text-secondary mt-0.5",children:a.requests})]})]}),(0,d.jsx)("div",{className:"mt-auto pt-3 text-[11px] leading-relaxed text-text-tertiary",children:k("block.disclaimer")})]})}function i({startTime:a,endTime:b,totalTokens:c,remainingLabel:f,renderElapsed:g,tokensSuffix:h,fmtTokens:i}){let[j,k]=(0,e.useState)(()=>Date.now()),l=new Date(a).getTime(),m=new Date(b).getTime(),n=Math.max(0,j-l),o=Math.max(0,m-j),p=Math.min(1,n/(m-l)),q=g((100*p).toFixed(1));return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"mt-3 flex items-baseline gap-2",children:[(0,d.jsx)("div",{className:"num-hero",children:function(a){if(a<=0)return"0s";let b=Math.floor(a/1e3),c=Math.floor(b/3600),d=Math.floor(b%3600/60),e=b%60;return c>0?`${c}h ${String(d).padStart(2,"0")}m`:d>0?`${d}m ${String(e).padStart(2,"0")}s`:`${e}s`}(o)}),(0,d.jsx)("div",{className:"text-xs text-text-secondary",children:f})]}),(0,d.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between text-xs text-text-secondary",children:[(0,d.jsx)("span",{children:q}),(0,d.jsxs)("span",{className:"num-mono",children:[i(c)," ",h]})]}),(0,d.jsx)("div",{className:"h-1.5 bg-bg-surface-hi rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full bg-gradient-to-r from-brand to-brand-hover transition-all",style:{width:`${100*p}%`},suppressHydrationWarning:!0})})]})]})}},73024:a=>{"use strict";a.exports=require("node:fs")},73668:(a,b,c)=>{"use strict";c.d(b,{OverviewTrendCard:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call OverviewTrendCard() from the server but OverviewTrendCard is 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/zuopeng.cheng/personal/workspace/ccgauge/components/overview-trend-card.tsx","OverviewTrendCard")},74133:(a,b,c)=>{"use strict";c.d(b,{wn:()=>f});var d=c(21124),e=c(15514);function f({title:a,desc:b,right:c,children:f,className:g,inlineDesc:h,fillBody:i}){return(0,d.jsxs)("section",{className:(0,e.cn)("card overflow-hidden",i&&"flex flex-col",g),children:[(a||c)&&(0,d.jsxs)("header",{className:(0,e.cn)("section-header","flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3 sm:gap-4","px-5 sm:px-6 pt-4 sm:pt-5 pb-3 border-b border-border"),children:[(0,d.jsxs)("div",{className:(0,e.cn)("min-w-0",h&&"sm:flex sm:items-baseline sm:gap-2.5"),children:[a&&(0,d.jsx)("h2",{className:"text-[15px] font-semibold text-text-primary tracking-tight leading-tight",children:a}),b&&(0,d.jsx)("p",{className:(0,e.cn)("text-xs text-text-secondary leading-relaxed",h?"mt-1 sm:mt-0":"mt-1.5"),children:b})]}),c&&(0,d.jsx)("div",{className:"flex items-center gap-2 flex-wrap",children:c})]}),(0,d.jsx)("div",{className:(0,e.cn)("p-5 sm:p-6",i&&"flex-1 flex flex-col"),children:f})]})}},76760:a=>{"use strict";a.exports=require("node:path")},77048:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(82802),o=c(77533),p=c(45229),q=c(32822),r=c(261),s=c(26453),t=c(52474),u=c(26713),v=c(51356),w=c(62685),x=c(36225),y=c(63446),z=c(2762),A=c(45742),B=c(86439),C=c(81170),D=c.n(C),E=c(62506),F=c(91203),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H=["",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,29820)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/page.tsx"]}]},{layout:[()=>Promise.resolve().then(c.bind(c,67302)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/layout.tsx"],error:[()=>Promise.resolve().then(c.bind(c,41697)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,90391)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/loading.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}],I=["/Users/zuopeng.cheng/personal/workspace/ccgauge/app/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
-
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},80481:a=>{"use strict";a.exports=require("node:readline")},82140:(a,b,c)=>{"use strict";c.d(b,{ModelBarChart:()=>h});var d=c(21124),e=c(15514),f=c(15519);let g={opus:"rgb(var(--chart-output))",sonnet:"rgb(var(--chart-input))",haiku:"rgb(var(--chart-cache-read))"};function h({models:a}){let b=(0,f.kj)(),{locale:c}=(0,f.s9)();if(!a.length)return(0,d.jsx)("div",{className:"text-sm text-text-tertiary",children:b("chart.empty")});let h=Math.max(...a.map(a=>a.cost),1e-4),i=a.reduce((a,b)=>a+b.cost,0);return(0,d.jsx)("div",{className:"space-y-3.5",children:a.map(a=>{let b=i>0?a.cost/i:0;return(0,d.jsxs)("div",{className:"space-y-1.5 group",children:[(0,d.jsxs)("div",{className:"flex items-baseline justify-between gap-3 text-sm",children:[(0,d.jsx)("span",{className:"font-medium text-text-primary truncate",children:(0,e.P6)(a.model)}),(0,d.jsxs)("span",{className:"text-xs text-text-tertiary tabular-nums flex-1 text-right",children:[(0,e.jh)(a.totalTokens,c)," \xb7 ",(0,e.R8)(b)]}),(0,d.jsx)("span",{className:"num-mono font-medium text-text-primary min-w-[80px] text-right",children:(0,e.az)(a.cost)})]}),(0,d.jsx)("div",{className:"h-2 w-full bg-bg-surface-hi rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full rounded-full transition-all duration-500 ease-out-soft group-hover:brightness-110",style:{width:`${a.cost/h*100}%`,background:function(a){for(let b of Object.keys(g))if(a.toLowerCase().includes(b))return g[b];return"rgb(var(--chart-cache-create))"}(a.model)}})})]},a.model)})})}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88622:(a,b,c)=>{"use strict";c.d(b,{BlockProgress:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call BlockProgress() from the server but BlockProgress is 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/zuopeng.cheng/personal/workspace/ccgauge/components/block-progress.tsx","BlockProgress")}};var b=require("../webpack-runtime.js");b.C(a);var c=b.X(0,[331,802,153,993,517,716,98,567
|
|
1
|
+
(()=>{var a={};a.id=974,a.ids=[974],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},1853:(a,b,c)=>{"use strict";c.d(b,{ls:()=>f,y2:()=>e});var d=c(50160);function e(a,b=18e6){if(0===a.length)return[];let c=[...a].sort((a,b)=>a.timestamp.localeCompare(b.timestamp)),f=[],g=null,h=0,i=Date.now();for(let a of c){let c=new Date(a.timestamp).getTime();(!g||c-h>=b)&&(h=c,g={id:a.timestamp,startTime:a.timestamp,endTime:new Date(c+b).toISOString(),actualEndTime:a.timestamp,isActive:!1,inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0,totalTokens:0,cost:0,saved:0,models:[],requests:0},f.push(g));let e=(0,d.SI)(a);g.inputTokens+=a.usage.input_tokens,g.outputTokens+=a.usage.output_tokens,g.cacheReadTokens+=a.usage.cache_read_input_tokens,g.cacheCreationTokens+=a.usage.cache_creation_input_tokens,g.totalTokens=g.inputTokens+g.outputTokens+g.cacheReadTokens+g.cacheCreationTokens,g.cost+=e.total,g.saved+=e.saved,g.requests+=1,g.actualEndTime=a.timestamp,g.models.includes(a.model)||g.models.push(a.model)}for(let a of f){let b=new Date(a.endTime).getTime();a.isActive=i<b}return f}function f(a,b=18e6){let c=function(a,b=18e6){return e(a,b).find(a=>a.isActive)??null}(a,b);if(!c)return{block:null,windowMs:b,elapsedMs:0,remainingMs:0,progress:0,burnRatePerMin:0,costPerMin:0,projectedTotal:0,projectedCost:0};let d=Date.now(),g=new Date(c.startTime).getTime(),h=new Date(c.endTime).getTime(),i=d-g,j=Math.max(0,h-d),k=Math.min(1,i/b),l=i/6e4,m=l>0?c.totalTokens/l:0,n=l>0?c.cost/l:0,o=b/6e4;return{block:c,windowMs:b,elapsedMs:i,remainingMs:j,progress:k,burnRatePerMin:m,costPerMin:n,projectedTotal:m*o,projectedCost:n*o}}},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4001:(a,b,c)=>{"use strict";c.d(b,{ActivityStatsSection:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call ActivityStatsSection() from the server but ActivityStatsSection is 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/zuopeng.cheng/personal/workspace/ccgauge/components/activity-stats.tsx","ActivityStatsSection")},10598:(a,b,c)=>{Promise.resolve().then(c.bind(c,25515)),Promise.resolve().then(c.bind(c,55423)),Promise.resolve().then(c.bind(c,72267)),Promise.resolve().then(c.bind(c,82140)),Promise.resolve().then(c.bind(c,33280))},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},14843:(a,b,c)=>{"use strict";c.d(b,{N0:()=>g,go:()=>h});var d=c(50160),e=c(30285),f=c(62955);function g(a){return a&&a.block?{hasBlock:!0,startTime:a.block.startTime,endTime:a.block.endTime,totalTokens:a.block.totalTokens,cost:a.block.cost,requests:a.block.requests,models:a.block.models,burnRatePerMin:a.burnRatePerMin,costPerMin:a.costPerMin,projectedTotal:a.projectedTotal,projectedCost:a.projectedCost}:{hasBlock:!1,totalTokens:0,cost:0,requests:0,models:[],burnRatePerMin:0,costPerMin:0,projectedTotal:0,projectedCost:0}}function h(a,b,c){let g=(0,e.o)(a,b,c),h=new Map;for(let a of b)h.set(a.uuid,a);let i=new Map,j=new Map,k=new Map;for(let b of a){let a=g.get(b.uuid)??b.uuid,e=(0,d.SI)(b),l=function(a){let b=i.get(a);if(void 0!==b)return b;let d=[],e=a,f="",g=new Set;for(;e&&!g.has(e);){g.add(e);let a=i.get(e);if(void 0!==a){f=a;break}d.push(e);let b=h.get(e);if(b&&b.textPreview&&b.textPreview.trim()){f=b.textPreview;break}e=c[e]??null}for(let a of d)i.set(a,f);return f}(b.uuid),m={uuid:b.uuid,timestamp:b.timestamp,source:b.source,model:b.model,cwd:b.cwd,projectLabel:(0,f.CL)(b.cwd),sessionId:b.sessionId,inputTokens:b.usage.input_tokens,outputTokens:b.usage.output_tokens,cacheReadTokens:b.usage.cache_read_input_tokens,cacheCreationTokens:b.usage.cache_creation_input_tokens,reasoningTokens:b.usage.reasoning_tokens??0,totalTokens:b.usage.input_tokens+b.usage.output_tokens+b.usage.cache_read_input_tokens+b.usage.cache_creation_input_tokens,cost:e.total,costInput:e.input,costOutput:e.output,costCacheRead:e.cacheRead,costCacheWrite:e.cacheCreation5m+e.cacheCreation1h,toolNames:b.toolNames,effort:b.effort,directPrompt:l||void 0},n=j.get(a);n?n.push(m):j.set(a,[m]),k.has(a)||k.set(a,b)}let l=[];for(let[a,b]of j){b.sort((a,b)=>a.timestamp<b.timestamp?-1:1);let c=b[0],d=b[b.length-1],e=new Set,g=new Set,i=new Set,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;for(let a of b){for(let b of(e.add(a.model),a.toolNames))g.add(b);a.effort&&i.add(a.effort),j+=a.inputTokens,k+=a.outputTokens,m+=a.cacheReadTokens,n+=a.cacheCreationTokens,o+=a.reasoningTokens,p+=a.cost,q+=a.costInput,r+=a.costOutput,s+=a.costCacheRead,t+=a.costCacheWrite}let u=h.get(a),v=new Date(c.timestamp).getTime(),w=new Date(d.timestamp).getTime(),x=Number.isFinite(v)&&Number.isFinite(w)?Math.max(0,w-v):0;l.push({turnId:a,timestamp:c.timestamp,endTimestamp:d.timestamp,durationMs:x,cwd:c.cwd,projectLabel:(0,f.CL)(c.cwd),sessionId:c.sessionId,models:Array.from(e),callCount:b.length,inputTokens:j,outputTokens:k,cacheReadTokens:m,cacheCreationTokens:n,reasoningTokens:o,totalTokens:j+k+m+n,cost:p,costInput:q,costOutput:r,costCacheRead:s,costCacheWrite:t,toolNames:Array.from(g),efforts:Array.from(i),userText:u?.textPreview??"",children:b})}return l.sort((a,b)=>a.timestamp<b.timestamp?1:-1),l}},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},24919:(a,b,c)=>{"use strict";c.d(b,{TokenStackChart:()=>o});var d=c(21124),e=c(6077),f=c(72400),g=c(57495),h=c(59296),i=c(16803),j=c(11767),k=c(18311),l=c(15514),m=c(15519);let n={input:"rgb(var(--chart-input))",output:"rgb(var(--chart-output))",cacheRead:"rgb(var(--chart-cache-read))",cacheCreation:"rgb(var(--chart-cache-create))"};function o({data:a,height:b="h-72"}){let c=(0,m.kj)(),{locale:o}=(0,m.s9)();return a.length?(0,d.jsxs)("div",{className:`${b} w-full`,children:[(0,d.jsx)(e.u,{width:"100%",height:"100%",children:(0,d.jsxs)(f.E,{data:a,margin:{top:12,right:8,bottom:4,left:8},barCategoryGap:"22%",children:[(0,d.jsx)(g.d,{stroke:"rgb(var(--chart-grid))",strokeOpacity:.6,strokeDasharray:"3 3",vertical:!1}),(0,d.jsx)(h.W,{dataKey:"label",tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,interval:"preserveStartEnd",minTickGap:32,tickMargin:8}),(0,d.jsx)(i.h,{tickFormatter:a=>(0,l.jh)(Number(a),o),tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,width:56,tickMargin:4}),(0,d.jsx)(j.m,{content:(0,d.jsx)(q,{}),cursor:{fill:"rgb(var(--text-primary) / 0.05)",radius:4}}),(0,d.jsx)(k.y,{dataKey:"input",stackId:"a",fill:n.input,isAnimationActive:!1}),(0,d.jsx)(k.y,{dataKey:"cacheCreation",stackId:"a",fill:n.cacheCreation,isAnimationActive:!1}),(0,d.jsx)(k.y,{dataKey:"cacheRead",stackId:"a",fill:n.cacheRead,isAnimationActive:!1}),(0,d.jsx)(k.y,{dataKey:"output",stackId:"a",fill:n.output,radius:[4,4,0,0],isAnimationActive:!1})]})}),(0,d.jsxs)("div",{className:"flex items-center flex-wrap justify-center gap-4 text-xs text-text-secondary mt-2",children:[(0,d.jsx)(p,{color:n.input,label:c("chart.legend.input")}),(0,d.jsx)(p,{color:n.cacheCreation,label:c("chart.legend.cacheWrite")}),(0,d.jsx)(p,{color:n.cacheRead,label:c("chart.legend.cacheRead")}),(0,d.jsx)(p,{color:n.output,label:c("chart.legend.output")})]})]}):(0,d.jsx)("div",{className:`${b} flex items-center justify-center text-text-tertiary text-sm`,children:c("chart.empty")})}function p({color:a,label:b}){return(0,d.jsxs)("span",{className:"inline-flex items-center gap-1.5",children:[(0,d.jsx)("span",{className:"w-2.5 h-2.5 rounded-sm",style:{background:a}}),(0,d.jsx)("span",{children:b})]})}function q(a){let b=(0,m.kj)(),{locale:c}=(0,m.s9)();if(!a.active||!a.payload||!a.payload.length)return null;let e=a.payload[0].payload,f=e.input+e.output+e.cacheRead+e.cacheCreation;return(0,d.jsxs)("div",{className:"card-elevated border border-border-hi rounded-card p-3 text-xs min-w-[200px]",children:[(0,d.jsx)("div",{className:"font-medium text-text-primary mb-2",children:a.label}),(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsx)(r,{color:n.input,label:b("chart.legend.input"),value:e.input,locale:c}),(0,d.jsx)(r,{color:n.cacheCreation,label:b("chart.legend.cacheWrite"),value:e.cacheCreation,locale:c}),(0,d.jsx)(r,{color:n.cacheRead,label:b("chart.legend.cacheRead"),value:e.cacheRead,locale:c}),(0,d.jsx)(r,{color:n.output,label:b("chart.legend.output"),value:e.output,locale:c})]}),(0,d.jsxs)("div",{className:"mt-2 pt-2 border-t border-border flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.total")}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:(0,l.jh)(f,c)})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-1",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.cost")}),(0,d.jsx)("span",{className:"num-mono text-brand",children:(0,l.az)(e.cost)})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-1",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.requests")}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:e.requests})]})]})}function r({color:a,label:b,value:c,locale:e}){return(0,d.jsxs)("div",{className:"flex items-center justify-between gap-3",children:[(0,d.jsxs)("span",{className:"inline-flex items-center gap-1.5 text-text-secondary",children:[(0,d.jsx)("span",{className:"w-2 h-2 rounded-sm",style:{background:a}}),b]}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:(0,l.jh)(c,e)})]})}},25515:(a,b,c)=>{"use strict";c.d(b,{ActivityStatsSection:()=>i});var d=c(21124),e=c(38301),f=c(15514),g=c(74133),h=c(78642);function i({stats:a,comparison:b,locale:c,className:f}){var i;let l=(0,e.useCallback)((a,b)=>(0,h.nA)(c,a,b),[c]),m=[{label:l("activity.activeDays"),value:a.activeDays.toLocaleString()},{label:l("activity.streakCombinedLabel"),value:l("activity.streakCombinedValue",{current:a.currentStreak,longest:a.longestStreak})},{label:l("activity.peakHour"),value:a.peakHour<0?"—":o(a.peakHour,c)}];return(0,d.jsx)(g.wn,{title:l("activity.title"),desc:l("activity.subtitle"),inlineDesc:!0,fillBody:!0,className:f,children:(0,d.jsxs)("div",{className:"flex flex-col md:flex-row gap-5 md:gap-8 items-stretch flex-1",children:[(0,d.jsx)("div",{className:"grid grid-cols-3 md:flex md:flex-col md:w-[170px] md:shrink-0 gap-2.5",children:m.map(a=>(0,d.jsx)(j,{label:a.label,value:a.value},a.label))}),(0,d.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col",children:[(0,d.jsx)(k,{data:a.heatmap,tokens:a.tokenHeatmap,max:a.heatmapMax,locale:c}),b&&(0,d.jsx)("div",{className:"mt-auto pt-4 text-xs text-text-tertiary leading-relaxed",children:l("activity.comparison",{multiplier:(i=b.multiplier)<10?i.toFixed(1):i<1e3?Math.round(i).toString():i<1e6?(i/1e3).toFixed(1)+"K":(i/1e6).toFixed(1)+"M",ref:l(`activity.ref.${b.refKey}`)})})]})]})})}function j({label:a,value:b}){return(0,d.jsxs)("div",{className:"rounded-button bg-bg-surface-hi/60 border border-border px-3.5 py-3 flex-1 flex flex-col justify-center min-h-[64px]",children:[(0,d.jsx)("div",{className:"text-[11px] uppercase tracking-[0.06em] text-text-tertiary font-semibold truncate",children:a}),(0,d.jsx)("div",{className:"num-mono text-xl font-semibold text-text-primary mt-1 leading-none truncate",children:b})]})}function k({data:a,tokens:b,max:c,locale:f}){let g=(0,e.useCallback)((a,b)=>(0,h.nA)(f,a,b),[f]),i=[0,3,6,9,12,15,18,21],[j,k]=(0,e.useState)(null),m=(0,e.useMemo)(()=>{let c=0,d=0,e=0;for(let b of a)for(let a of b)c+=a;for(let a of b)for(let b of a)d+=b,b>e&&(e=b);return{messages:c,tokens:d,maxTokens:e}},[a,b]);function o(c,d,e){let f=c.currentTarget.getBoundingClientRect();k({dow:d,hour:e,count:a[d][e],tokens:b[d][e],rect:{left:f.left,top:f.top,width:f.width,height:f.height}})}return(0,d.jsxs)("div",{className:"w-full",children:[(0,d.jsxs)("div",{className:"grid gap-y-[3px] [grid-template-columns:auto_1fr] items-center",children:[a.map((a,b)=>(0,d.jsx)(l,{dow:b,row:a,max:c,t:g,onCellHover:o,onLeave:()=>k(null)},b)),(0,d.jsx)("div",{className:"text-[10px] text-text-tertiary opacity-0 select-none pr-2",children:"."}),(0,d.jsx)("div",{className:"grid [grid-template-columns:repeat(24,minmax(0,1fr))] text-[10px] text-text-tertiary tabular-nums gap-[3px] mt-1",children:Array.from({length:24}).map((a,b)=>{var c;return(0,d.jsx)("div",{className:"text-center leading-none",children:i.includes(b)?(c=b,"zh"===f?`${c}`:0===c?"12a":c<12?`${c}a`:12===c?"12p":`${c-12}p`):""},b)})})]}),j&&(0,d.jsx)(n,{hover:j,locale:f,totalMessages:m.messages,totalTokens:m.tokens,maxCount:c,maxTokens:m.maxTokens,t:g})]})}function l({dow:a,row:b,max:c,t:e,onCellHover:f,onLeave:g}){let h=e(`activity.dow.${a}`);return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("div",{className:"text-[11px] text-text-tertiary tabular-nums pr-2.5 leading-none whitespace-nowrap",children:h}),(0,d.jsx)("div",{className:"grid [grid-template-columns:repeat(24,minmax(0,1fr))] gap-[3px]",onMouseLeave:g,children:b.map((b,e)=>(0,d.jsx)(m,{count:b,max:c,onHover:b=>f(b,a,e)},e))})]})}function m({count:a,max:b,onHover:c}){let e=b>0&&a>0?Math.sqrt(a/b):0,g=a?{backgroundColor:`rgb(var(--brand) / ${(.18+.82*e).toFixed(2)})`}:{};return(0,d.jsx)("div",{onMouseEnter:c,className:(0,f.cn)("aspect-square rounded-[3px] transition-transform duration-100","hover:scale-125 hover:ring-1 hover:ring-brand/60 hover:z-10 relative",!a&&"bg-bg-surface-hi"),style:g})}function n({hover:a,locale:b,totalMessages:c,totalTokens:e,maxCount:g,maxTokens:h,t:i}){let j=a.rect.left+a.rect.width/2,k=a.rect.top<96,l=k?a.rect.top+a.rect.height+8:a.rect.top-8,m=i(`activity.dow.${a.dow}`),n=function(a,b){let c=(a+1)%24;return"zh"===b?`${a.toString().padStart(2,"0")}:00 – ${c.toString().padStart(2,"0")}:00`:`${o(a,b)} – ${o(c,b)}`}(a.hour,b),p=c>0?a.count/c*100:0,q=g>0?a.count/g*100:0,r=e>0?a.tokens/e*100:0,s=h>0?a.tokens/h*100:0;return(0,d.jsx)("div",{role:"tooltip",className:"pointer-events-none fixed z-50",style:{left:j,top:l,transform:`translate(-50%, ${k?"0%":"-100%"})`},children:(0,d.jsxs)("div",{className:"card-elevated rounded-button px-3 py-2 text-xs whitespace-nowrap shadow-xl border border-border-hi bg-bg-elevated min-w-[180px]",children:[(0,d.jsxs)("div",{className:"font-semibold text-text-primary mb-1",children:[m," \xb7 ",n]}),a.count>0?(0,d.jsxs)("div",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-0.5 text-text-secondary tabular-nums",children:[(0,d.jsx)("span",{className:"text-text-tertiary",children:i("activity.heatmap.messages")}),(0,d.jsxs)("span",{className:"text-right",children:[a.count.toLocaleString(),(0,d.jsxs)("span",{className:"text-text-tertiary ml-1.5",children:["\xb7"," ",(0,d.jsxs)("span",{title:i("activity.heatmap.shareLabel"),children:[p.toFixed(1),"%"]})," / ",(0,d.jsxs)("span",{title:i("activity.heatmap.intensityLabel"),children:[q.toFixed(0),"%"]})]})]}),(0,d.jsx)("span",{className:"text-text-tertiary",children:i("activity.heatmap.tokens")}),(0,d.jsxs)("span",{className:"text-right",children:[(0,f.jh)(a.tokens,b),(0,d.jsxs)("span",{className:"text-text-tertiary ml-1.5",children:["\xb7"," ",(0,d.jsxs)("span",{title:i("activity.heatmap.shareLabel"),children:[r.toFixed(1),"%"]})," / ",(0,d.jsxs)("span",{title:i("activity.heatmap.intensityLabel"),children:[s.toFixed(0),"%"]})]})]}),(0,d.jsx)("span",{}),(0,d.jsxs)("span",{className:"text-[10px] text-text-tertiary text-right pt-1 leading-none",children:[i("activity.heatmap.shareLabel")," / ",i("activity.heatmap.intensityLabel")]})]}):(0,d.jsx)("div",{className:"text-text-tertiary",children:i("activity.heatmap.empty")})]})})}function o(a,b){return"zh"===b?`${a}:00`:0===a?"12 AM":a<12?`${a} AM`:12===a?"12 PM":`${a-12} PM`}},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},29820:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>z,dynamic:()=>x,revalidate:()=>y});var d=c(75338),e=c(49098),f=c(67803),g=c(30285),h=c(1853),i=c(80489),j=c(37583),k=c(60798),l=c(88622),m=c(53633),n=c(73668),o=c(14843),p=c(95012),q=c(91719),r=c(46796),s=c(69181),t=c(60704);function u(){return Array.from({length:7},()=>Array(24).fill(0))}let v=[{key:"haiku",tokens:22},{key:"tweet",tokens:50},{key:"littlePrince",tokens:22e3},{key:"gatsby",tokens:65e3},{key:"hobbit",tokens:124e3},{key:"lotrTrilogy",tokens:624e3},{key:"warAndPeace",tokens:763e3},{key:"harryPotterAll",tokens:143e4},{key:"encyclopediaBritannica",tokens:572e5},{key:"wikipediaEn",tokens:65e8}];var w=c(4001);let x="force-dynamic",y=0;async function z({searchParams:a}){let b=await a,c=await (0,r.ev)(b.source);return(0,d.jsx)(A,{source:c})}async function A({source:a}){let b=await (0,e.So)(),c=(0,r.rY)(b.records,a),x=(0,r.n$)(a),y=await (0,q.yO)(),z=await (0,q.sG)(),A=a=>(0,p.jh)(a,z);if(0===c.length)return(0,d.jsx)(j.qK,{title:y("overview.title"),desc:y("brand.tagline"),children:(0,d.jsx)(j.pp,{title:y("overview.empty.title"),desc:y("overview.subtitle.empty",{dirs:b.stats.scannedDirs.length})})});let B=c.filter(a=>(function(a){let b=new Date(a),c=new Date;return b.getFullYear()===c.getFullYear()&&b.getMonth()===c.getMonth()&&b.getDate()===c.getDate()})(a.timestamp)),C=c.filter(a=>(function(a){let b=new Date(a),c=new Date;return c.setDate(c.getDate()-1),b.getFullYear()===c.getFullYear()&&b.getMonth()===c.getMonth()&&b.getDate()===c.getDate()})(a.timestamp)),D=c.filter(a=>(function(a){let b=new Date(a),c=new Date;return b.getFullYear()===c.getFullYear()&&b.getMonth()===c.getMonth()})(a.timestamp)),E=(0,s.z)(x.map(a=>(0,f.$M)(B,{source:a}))),F=(0,s.z)(x.map(a=>(0,f.$M)(C,{source:a}))),G=(0,s.z)(x.map(a=>(0,f.$M)(D,{source:a}))),H=F.totalTokens>0||F.cost>0,I=F.totalTokens>0?(E.totalTokens-F.totalTokens)/F.totalTokens*100:NaN,J=!H&&(E.totalTokens>0||E.cost>0)?{firstTime:!0,label:y("overview.delta.firstTime")}:null,K=E.cacheReadTokens+E.inputTokens>0?E.cacheReadTokens/(E.cacheReadTokens+E.inputTokens+E.cacheCreationTokens):0,L=x.map(b=>{let d=(0,t.sO)(b),e="all"===a?c.filter(a=>a.source===b):c,f=(0,h.ls)(e,d.capabilities.blockWindowMs);return{source:b,serialized:(0,o.N0)(f)}}),M=new Date;M.setDate(M.getDate()-30);let N=(0,s.i)(x.map(a=>(0,f.a6)(c,"day",{source:a,from:M}))),O=M.toISOString(),P=c.filter(a=>a.timestamp>=O),Q=(0,r.rY)(b.userRecords,a).filter(a=>a.timestamp>=O),R=(0,g.o)(P,Q,b.parentMap),S=new Map;for(let a of P){let b=R.get(a.uuid)??a.uuid,c=S.get(b);(!c||a.timestamp<c)&&S.set(b,a.timestamp)}let T=new Map;for(let a of S.values()){let{key:b}=(0,f.a3)(a,"day");T.set(b,(T.get(b)??0)+1)}let U=N.map(a=>({label:a.label,input:a.inputTokens,output:a.outputTokens,cacheRead:a.cacheReadTokens,cacheCreation:a.cacheCreationTokens,cost:a.cost,requests:a.requests,turns:T.get(a.key)??0})),V=N.length,W=1===V?y("overview.trend.activeDays",{n:1}):y("overview.trend.activeDays.plural",{n:V}),X=x.flatMap(a=>(0,f.a9)(c,{source:a,from:function(){let a=new Date;return new Date(a.getFullYear(),a.getMonth(),1)}()})).sort((a,b)=>b.cost-a.cost),Y=X[0],Z=Y&&G.cost>0?(0,p.R8)(Y.cost/G.cost):"—",$="all"===a?b.bySource.reduce((a,b)=>a+b.filesScanned,0):b.bySource.find(b=>b.source===a)?.filesScanned??0,_="all"===a?b.bySource.reduce((a,b)=>a+b.assistantRecords,0):b.bySource.find(b=>b.source===a)?.assistantRecords??c.length;return(0,d.jsxs)(j.qK,{title:y("overview.title"),desc:y("overview.subtitle",{count:_.toLocaleString(),files:$,ms:b.stats.durationMs}),children:[(0,d.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[(0,d.jsx)(i.n,{label:y("overview.kpi.tokensToday"),value:A(E.totalTokens),hint:y("overview.kpi.tokensToday.hint",{count:E.requests}),delta:Number.isFinite(I)?{value:I,positiveIsGood:!1}:J,deltaTitle:y("overview.delta.title")}),(0,d.jsx)(i.n,{label:y("overview.kpi.thisMonth"),value:(0,p.az)(G.cost),hint:y("overview.kpi.thisMonth.hint",{tokens:A(G.totalTokens),req:G.requests})}),(0,d.jsx)(i.n,{label:y("overview.kpi.cacheHit"),value:(0,p.R8)(K,0),hint:y("overview.kpi.cacheHit.hint",{amount:(0,p.az)(E.saved)}),accent:"success",progress:{value:K,tone:"success"}}),(0,d.jsx)(i.n,{label:y("overview.kpi.topModel"),value:Y?(0,t.sO)(Y.source).shortenModel(Y.model):"—",hint:Y?y("overview.kpi.topModel.hint",{pct:Z}):"",accent:"brand"})]}),(0,d.jsx)(n.OverviewTrendCard,{data:U,activeDaysHint:W}),(0,d.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-4 items-stretch",children:[(0,d.jsx)("div",{className:"lg:col-span-2 flex",children:(0,d.jsx)(w.ActivityStatsSection,{stats:function(a,b){let c="all"===b.source?a:a.filter(a=>a.source===b.source);if(0===c.length)return{sessions:0,messages:0,totalTokens:0,activeDays:0,currentStreak:0,longestStreak:0,peakHour:-1,favoriteModel:null,heatmap:u(),heatmapMax:0,tokenHeatmap:u(),tokensSummed:0};let d=new Set,e=new Set,f=Array(24).fill(0),g=new Map,h=u(),i=u(),j=0,k=0;for(let a of c){a.sessionId&&d.add(a.sessionId);let b=new Date(a.timestamp);if(Number.isNaN(b.getTime()))continue;let c=function(a){let b=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0");return`${b}-${c}-${d}`}(b);e.add(c);let l=b.getDay(),m=b.getHours();f[m]+=1,h[l][m]+=1,g.set(a.model,(g.get(a.model)??0)+1);let n=a.usage,o=n.input_tokens+n.output_tokens+n.cache_read_input_tokens+n.cache_creation_input_tokens;i[l][m]+=o,j+=o,k+=1}let l=function(a){let b=-1,c=-1;for(let d=0;d<a.length;d+=1)a[d]>c&&(c=a[d],b=d);return b}(f),m=function(a){let b=null,c=-1;for(let[d,e]of a)e>c&&(b=d,c=e);return b}(g),{current:n,longest:o}=function(a,b){if(0===a.size)return{current:0,longest:0};let c=Array.from(a).map(a=>new Date(a+"T00:00:00").getTime()).filter(a=>Number.isFinite(a)).sort((a,b)=>a-b),d=1,e=1;for(let a=1;a<c.length;a+=1)c[a]-c[a-1]==864e5?(e+=1)>d&&(d=e):e=1;let f=function(a){let b=new Date(a);return b.setHours(0,0,0,0),b.getTime()}(Date.now()),g=c[c.length-1];if(f-g>864e5)return{current:0,longest:d};let h=g,i=0,j=0,k=new Set(c);for(;j<b&&k.has(h);)i+=1,h-=864e5,j+=1;return{current:i,longest:d}}(e,b.streakWindowDays??365),p=0;for(let a of h)for(let b of a)b>p&&(p=b);return{sessions:d.size,messages:k,totalTokens:j,activeDays:e.size,currentStreak:n,longestStreak:o,peakHour:l,favoriteModel:m,heatmap:h,heatmapMax:p,tokenHeatmap:i,tokensSummed:j}}(c,{source:a}),comparison:function(a){if(a<=0)return null;let b=null;for(let c of v)a/c.tokens>=5&&(b=c);return b||(b=v[0]),{refKey:b.key,multiplier:a/b.tokens}}(c.reduce((a,b)=>a+b.usage.input_tokens+b.usage.output_tokens+b.usage.cache_read_input_tokens+b.usage.cache_creation_input_tokens,0)),locale:z,className:"flex-1"})}),(0,d.jsx)("div",{className:"flex",children:"all"===a&&L.length>1?(0,d.jsx)(m.BlockProgressSwitcher,{slots:L.map(a=>({source:a.source,label:"claude"===a.source?"Claude":"Codex",cliName:"claude"===a.source?"Claude Code":"Codex CLI",initial:a.serialized})),defaultSource:function(a){if(0===a.length)return"claude";let b=a.filter(a=>a.serialized.hasBlock);if(1===b.length)return b[0].source;let c=b.length>0?b:a,d=c[0];for(let a of c)a.serialized.cost>d.serialized.cost&&(d=a);return d.source}(L),className:"flex-1"}):(0,d.jsx)(l.BlockProgress,{initial:L[0].serialized,cliName:"claude"===L[0].source?"Claude Code":"Codex CLI",className:"flex-1"})})]}),(0,d.jsx)(j.wn,{title:y("overview.costByModel.title"),desc:y("overview.costByModel.desc"),children:(0,d.jsx)(k.ModelBarChart,{models:X.slice(0,8)})})]})}},30285:(a,b,c)=>{"use strict";function d(a,b,c){let d=new Map;for(let a of b)!a.isSynthetic&&a.textPreview&&a.textPreview.trim()&&d.set(a.uuid,a.textPreview);let e=new Map,f=new Map;for(let b of a)e.set(b.uuid,function(a){let b=[],e=a,g=null,h=0,i=new Set;for(;e&&h++<5e3&&!i.has(e);){i.add(e);let a=f.get(e);if(a){g=a;break}if(b.push(e),d.has(e)){g=e;break}e=c[e]??null}for(let c of(g||(g=a),b))f.set(c,g);return g}(b.uuid));return e}c.d(b,{o:()=>d})},33280:(a,b,c)=>{"use strict";c.d(b,{OverviewTrendCard:()=>r});var d=c(21124),e=c(38301),f=c(74133),g=c(24919),h=c(6077),i=c(72400),j=c(57495),k=c(59296),l=c(16803),m=c(11767),n=c(18311),o=c(15519);function p({data:a,height:b="h-72"}){let c=(0,o.kj)(),{locale:e}=(0,o.s9)();return a.length?(0,d.jsx)("div",{className:`${b} w-full`,children:(0,d.jsx)(h.u,{width:"100%",height:"100%",children:(0,d.jsxs)(i.E,{data:a,margin:{top:12,right:8,bottom:4,left:8},barCategoryGap:"22%",children:[(0,d.jsx)(j.d,{stroke:"rgb(var(--chart-grid))",strokeOpacity:.6,strokeDasharray:"3 3",vertical:!1}),(0,d.jsx)(k.W,{dataKey:"label",tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,interval:"preserveStartEnd",minTickGap:32,tickMargin:8}),(0,d.jsx)(l.h,{tickFormatter:a=>{let b;return b=Number(a),"zh"===e&&b>=1e4?`${(b/1e4).toFixed(1)}万`:b.toLocaleString()},tick:{fill:"rgb(var(--chart-axis))",fontSize:11},tickLine:!1,axisLine:!1,width:56,tickMargin:4}),(0,d.jsx)(m.m,{content:(0,d.jsx)(q,{}),cursor:{fill:"rgb(var(--text-primary) / 0.05)",radius:4}}),(0,d.jsx)(n.y,{dataKey:"turns",fill:"rgb(var(--brand))",radius:[4,4,0,0],isAnimationActive:!1})]})})}):(0,d.jsx)("div",{className:`${b} flex items-center justify-center text-text-tertiary text-sm`,children:c("chart.empty")})}function q(a){let b=(0,o.kj)();if(!a.active||!a.payload||!a.payload.length)return null;let c=a.payload[0].payload;return(0,d.jsxs)("div",{className:"card-elevated border border-border-hi rounded-card p-3 text-xs min-w-[180px]",children:[(0,d.jsx)("div",{className:"font-medium text-text-primary mb-2",children:a.label}),(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsx)("span",{className:"text-text-secondary",children:b("chart.tooltip.conversations")}),(0,d.jsx)("span",{className:"num-mono text-text-primary",children:(c.turns??0).toLocaleString()})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between mt-1 text-text-tertiary",children:[(0,d.jsx)("span",{children:b("chart.tooltip.requests")}),(0,d.jsx)("span",{className:"num-mono",children:c.requests.toLocaleString()})]})]})}function r({data:a,activeDaysHint:b}){let c=(0,o.kj)(),[h,i]=(0,e.useState)("tokens"),j=c("tokens"===h?"overview.trend.desc.tokens":"overview.trend.desc.conversations");return(0,d.jsx)(f.wn,{title:c("overview.trend.title"),desc:c("overview.trend.desc",{metric:j}),right:(0,d.jsxs)("div",{className:"flex items-center gap-3",children:[(0,d.jsx)(s,{value:h,onChange:i}),(0,d.jsx)("span",{className:"text-xs text-text-tertiary whitespace-nowrap",children:b})]}),children:"tokens"===h?(0,d.jsx)(g.TokenStackChart,{data:a}):(0,d.jsx)(p,{data:a})})}function s({value:a,onChange:b}){let c=(0,o.kj)();return(0,d.jsx)("div",{role:"tablist","aria-label":c("overview.trend.title"),className:"inline-flex items-center rounded-md border border-border bg-bg-surface p-0.5 gap-0.5",children:[{id:"tokens",labelKey:"overview.trend.metric.tokens"},{id:"conversations",labelKey:"overview.trend.metric.conversations"}].map(e=>{let f=e.id===a;return(0,d.jsx)("button",{type:"button",role:"tab","aria-selected":f,onClick:()=>b(e.id),className:`px-2.5 h-6 text-xs inline-flex items-center rounded transition-all ${f?"bg-brand-strong text-white font-semibold shadow-sm":"text-text-tertiary font-medium hover:text-text-primary hover:bg-bg-surface-hi"}`,children:c(e.labelKey)},e.id)})})}},33873:a=>{"use strict";a.exports=require("path")},37583:(a,b,c)=>{"use strict";c.d(b,{pp:()=>h,qK:()=>g,wn:()=>f});var d=c(75338),e=c(95012);function f({title:a,desc:b,right:c,children:f,className:g,inlineDesc:h,fillBody:i}){return(0,d.jsxs)("section",{className:(0,e.cn)("card overflow-hidden",i&&"flex flex-col",g),children:[(a||c)&&(0,d.jsxs)("header",{className:(0,e.cn)("section-header","flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3 sm:gap-4","px-5 sm:px-6 pt-4 sm:pt-5 pb-3 border-b border-border"),children:[(0,d.jsxs)("div",{className:(0,e.cn)("min-w-0",h&&"sm:flex sm:items-baseline sm:gap-2.5"),children:[a&&(0,d.jsx)("h2",{className:"text-[15px] font-semibold text-text-primary tracking-tight leading-tight",children:a}),b&&(0,d.jsx)("p",{className:(0,e.cn)("text-xs text-text-secondary leading-relaxed",h?"mt-1 sm:mt-0":"mt-1.5"),children:b})]}),c&&(0,d.jsx)("div",{className:"flex items-center gap-2 flex-wrap",children:c})]}),(0,d.jsx)("div",{className:(0,e.cn)("p-5 sm:p-6",i&&"flex-1 flex flex-col"),children:f})]})}function g({title:a,desc:b,right:c,children:e}){return(0,d.jsxs)("div",{className:"max-w-7xl mx-auto px-4 sm:px-6 py-6 sm:py-8 space-y-5 sm:space-y-6",children:[(0,d.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-end sm:justify-between gap-3 sm:gap-4",children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("h1",{className:"text-2xl sm:text-[1.75rem] font-semibold tracking-tight leading-tight truncate",children:a}),b&&(0,d.jsx)("p",{className:"text-sm text-text-secondary mt-1.5 leading-relaxed",children:b})]}),c&&(0,d.jsx)("div",{className:"flex items-center gap-2 flex-wrap",children:c})]}),e]})}function h({title:a,desc:b,icon:c,action:e}){return(0,d.jsxs)("div",{className:"card text-center py-14 sm:py-16 px-6 flex flex-col items-center gap-3",children:[(0,d.jsx)("div",{className:"w-12 h-12 rounded-full bg-bg-surface-hi border border-border flex items-center justify-center text-text-tertiary",children:c??(0,d.jsx)(i,{})}),(0,d.jsx)("div",{className:"text-base font-medium text-text-primary",children:a}),b&&(0,d.jsx)("div",{className:"text-sm text-text-tertiary max-w-md leading-relaxed",children:b}),e&&(0,d.jsx)("div",{className:"mt-2",children:e})]})}function i(){return(0,d.jsxs)("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,d.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,d.jsx)("path",{d:"M9 9h.01M15 9h.01M9 15c1 1 2 1.5 3 1.5s2-.5 3-1.5"})]})}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},48161:a=>{"use strict";a.exports=require("node:os")},53633:(a,b,c)=>{"use strict";c.d(b,{BlockProgressSwitcher:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call BlockProgressSwitcher() from the server but BlockProgressSwitcher is 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/zuopeng.cheng/personal/workspace/ccgauge/components/block-progress-switcher.tsx","BlockProgressSwitcher")},55423:(a,b,c)=>{"use strict";c.d(b,{BlockProgressSwitcher:()=>g});var d=c(21124),e=c(38301),f=c(72267);function g({slots:a,defaultSource:b,className:c}){let g=Math.max(0,a.findIndex(a=>a.source===b)),[h,i]=(0,e.useState)(g),j=a[h]??a[0];return(0,d.jsx)(f.BlockProgress,{initial:j.initial,sourceLabel:j.label,cliName:j.cliName,className:c,headerRight:(0,d.jsx)("div",{role:"tablist","aria-label":"Active 5h block source",className:"inline-flex items-center rounded-md border border-border bg-bg-surface p-0.5 gap-0.5",children:a.map((a,b)=>{let c=b===h;return(0,d.jsx)("button",{type:"button",role:"tab","aria-selected":c,onClick:()=>i(b),className:`px-2 h-5 text-[11px] inline-flex items-center rounded transition-all ${c?"bg-brand-strong text-white font-semibold shadow-sm":"text-text-tertiary font-medium hover:text-text-primary hover:bg-bg-surface-hi"}`,children:a.label},a.source)})})})}},60798:(a,b,c)=>{"use strict";c.d(b,{ModelBarChart:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call ModelBarChart() from the server but ModelBarChart is 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/zuopeng.cheng/personal/workspace/ccgauge/components/charts/model-bar-chart.tsx","ModelBarChart")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69181:(a,b,c)=>{"use strict";c.d(b,{i:()=>f,z:()=>e});let d={inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreationTokens:0,totalTokens:0,cost:0,saved:0,requests:0};function e(a){return 0===a.length?{...d}:1===a.length?a[0]:a.reduce((a,b)=>({inputTokens:a.inputTokens+b.inputTokens,outputTokens:a.outputTokens+b.outputTokens,cacheReadTokens:a.cacheReadTokens+b.cacheReadTokens,cacheCreationTokens:a.cacheCreationTokens+b.cacheCreationTokens,totalTokens:a.totalTokens+b.totalTokens,cost:a.cost+b.cost,saved:a.saved+b.saved,requests:a.requests+b.requests}),{...d})}function f(a){if(0===a.length)return[];if(1===a.length)return a[0];let b=new Map;for(let c of a)for(let a of c){let c=b.get(a.key);if(!c){b.set(a.key,{...a,models:function(a){let b={};for(let[c,d]of Object.entries(a))b[c]={tokens:d.tokens,cost:d.cost,requests:d.requests};return b}(a.models)});continue}for(let[b,d]of(c.inputTokens+=a.inputTokens,c.outputTokens+=a.outputTokens,c.cacheReadTokens+=a.cacheReadTokens,c.cacheCreationTokens+=a.cacheCreationTokens,c.totalTokens+=a.totalTokens,c.cost+=a.cost,c.saved+=a.saved,c.requests+=a.requests,Object.entries(a.models))){let a=c.models[b]??{tokens:0,cost:0,requests:0};a.tokens+=d.tokens,a.cost+=d.cost,a.requests+=d.requests,c.models[b]=a}}return Array.from(b.values()).sort((a,b)=>a.key.localeCompare(b.key))}},70430:(a,b,c)=>{Promise.resolve().then(c.bind(c,4001)),Promise.resolve().then(c.bind(c,53633)),Promise.resolve().then(c.bind(c,88622)),Promise.resolve().then(c.bind(c,60798)),Promise.resolve().then(c.bind(c,73668))},72267:(a,b,c)=>{"use strict";c.d(b,{BlockProgress:()=>h});var d=c(21124),e=c(38301),f=c(15514),g=c(15519);function h({initial:a,className:b,sourceLabel:c,compact:e,headerRight:h,cliName:j="Claude Code"}){let k=(0,g.kj)(),{locale:l}=(0,g.s9)(),m=a=>(0,f.jh)(a,l),n=(0,f.cn)("card flex flex-col",e?"p-4 min-h-[160px]":"card-pad min-h-[180px]",b),o=(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)("div",{className:"label whitespace-nowrap",children:k("block.title")}),c&&(0,d.jsxs)("span",{className:"text-[10px] uppercase tracking-wide text-text-tertiary font-medium whitespace-nowrap",children:["\xb7 ",c]})]});if(!a.hasBlock||!a.endTime||!a.startTime)return(0,d.jsxs)("div",{className:n,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[o,h]}),(0,d.jsx)("div",{className:"text-sm text-text-tertiary mt-4",children:k("block.empty")}),(0,d.jsx)("div",{className:"text-xs text-text-tertiary mt-1",children:k("block.emptyDesc",{cli:j})})]});let p=(0,d.jsxs)("span",{className:"pill bg-success/10 text-success border border-success/20 whitespace-nowrap",children:[(0,d.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-success mr-1 animate-pulse"}),k("common.live")]});return(0,d.jsxs)("div",{className:n,children:[(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[o,h??p]}),(0,d.jsx)(i,{startTime:a.startTime,endTime:a.endTime,totalTokens:a.totalTokens,remainingLabel:k("block.remaining"),renderElapsed:a=>k("block.elapsed",{pct:a}),tokensSuffix:k("block.tokensSuffix"),fmtTokens:m}),(0,d.jsxs)("div",{className:"mt-4 pt-4 border-t border-border grid grid-cols-2 gap-3 text-xs",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.spentSoFar")}),(0,d.jsx)("div",{className:"num-mono text-text-primary mt-0.5 text-base",children:(0,f.az)(a.cost)})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.burnPerMin")}),(0,d.jsx)("div",{className:"num-mono text-text-primary mt-0.5 text-base",children:m(a.burnRatePerMin)})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.projectedTotal")}),(0,d.jsx)("div",{className:"num-mono text-text-secondary mt-0.5",children:(0,f.az)(a.projectedCost)})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"text-text-tertiary",children:k("block.requests")}),(0,d.jsx)("div",{className:"num-mono text-text-secondary mt-0.5",children:a.requests})]})]}),(0,d.jsx)("div",{className:"mt-auto pt-3 text-[11px] leading-relaxed text-text-tertiary",children:k("block.disclaimer")})]})}function i({startTime:a,endTime:b,totalTokens:c,remainingLabel:f,renderElapsed:g,tokensSuffix:h,fmtTokens:i}){let[j,k]=(0,e.useState)(()=>Date.now()),l=new Date(a).getTime(),m=new Date(b).getTime(),n=Math.max(0,j-l),o=Math.max(0,m-j),p=Math.min(1,n/(m-l)),q=g((100*p).toFixed(1));return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"mt-3 flex items-baseline gap-2",children:[(0,d.jsx)("div",{className:"num-hero",children:function(a){if(a<=0)return"0s";let b=Math.floor(a/1e3),c=Math.floor(b/3600),d=Math.floor(b%3600/60),e=b%60;return c>0?`${c}h ${String(d).padStart(2,"0")}m`:d>0?`${d}m ${String(e).padStart(2,"0")}s`:`${e}s`}(o)}),(0,d.jsx)("div",{className:"text-xs text-text-secondary",children:f})]}),(0,d.jsxs)("div",{className:"mt-3 space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between text-xs text-text-secondary",children:[(0,d.jsx)("span",{children:q}),(0,d.jsxs)("span",{className:"num-mono",children:[i(c)," ",h]})]}),(0,d.jsx)("div",{className:"h-1.5 bg-bg-surface-hi rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full bg-gradient-to-r from-brand to-brand-hover transition-all",style:{width:`${100*p}%`},suppressHydrationWarning:!0})})]})]})}},73024:a=>{"use strict";a.exports=require("node:fs")},73668:(a,b,c)=>{"use strict";c.d(b,{OverviewTrendCard:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call OverviewTrendCard() from the server but OverviewTrendCard is 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/zuopeng.cheng/personal/workspace/ccgauge/components/overview-trend-card.tsx","OverviewTrendCard")},74133:(a,b,c)=>{"use strict";c.d(b,{wn:()=>f});var d=c(21124),e=c(15514);function f({title:a,desc:b,right:c,children:f,className:g,inlineDesc:h,fillBody:i}){return(0,d.jsxs)("section",{className:(0,e.cn)("card overflow-hidden",i&&"flex flex-col",g),children:[(a||c)&&(0,d.jsxs)("header",{className:(0,e.cn)("section-header","flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3 sm:gap-4","px-5 sm:px-6 pt-4 sm:pt-5 pb-3 border-b border-border"),children:[(0,d.jsxs)("div",{className:(0,e.cn)("min-w-0",h&&"sm:flex sm:items-baseline sm:gap-2.5"),children:[a&&(0,d.jsx)("h2",{className:"text-[15px] font-semibold text-text-primary tracking-tight leading-tight",children:a}),b&&(0,d.jsx)("p",{className:(0,e.cn)("text-xs text-text-secondary leading-relaxed",h?"mt-1 sm:mt-0":"mt-1.5"),children:b})]}),c&&(0,d.jsx)("div",{className:"flex items-center gap-2 flex-wrap",children:c})]}),(0,d.jsx)("div",{className:(0,e.cn)("p-5 sm:p-6",i&&"flex-1 flex flex-col"),children:f})]})}},76760:a=>{"use strict";a.exports=require("node:path")},77048:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(49754),e=c(9117),f=c(46595),g=c(32324),h=c(39326),i=c(38928),j=c(20175),k=c(12),l=c(54290),m=c(12696),n=c(82802),o=c(77533),p=c(45229),q=c(32822),r=c(261),s=c(26453),t=c(52474),u=c(26713),v=c(51356),w=c(62685),x=c(36225),y=c(63446),z=c(2762),A=c(45742),B=c(86439),C=c(81170),D=c.n(C),E=c(62506),F=c(91203),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H=["",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,29820)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/page.tsx"]}]},{layout:[()=>Promise.resolve().then(c.bind(c,67302)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/layout.tsx"],error:[()=>Promise.resolve().then(c.bind(c,41697)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,90391)),"/Users/zuopeng.cheng/personal/workspace/ccgauge/app/loading.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,81170,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,87028,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,90461,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,32768,23)),"next/dist/client/components/builtin/unauthorized.js"]}],I=["/Users/zuopeng.cheng/personal/workspace/ccgauge/app/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/page",pathname:"/",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
|
+
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},80481:a=>{"use strict";a.exports=require("node:readline")},82140:(a,b,c)=>{"use strict";c.d(b,{ModelBarChart:()=>h});var d=c(21124),e=c(15514),f=c(15519);let g={opus:"rgb(var(--chart-output))",sonnet:"rgb(var(--chart-input))",haiku:"rgb(var(--chart-cache-read))"};function h({models:a}){let b=(0,f.kj)(),{locale:c}=(0,f.s9)();if(!a.length)return(0,d.jsx)("div",{className:"text-sm text-text-tertiary",children:b("chart.empty")});let h=Math.max(...a.map(a=>a.cost),1e-4),i=a.reduce((a,b)=>a+b.cost,0);return(0,d.jsx)("div",{className:"space-y-3.5",children:a.map(a=>{let b=i>0?a.cost/i:0;return(0,d.jsxs)("div",{className:"space-y-1.5 group",children:[(0,d.jsxs)("div",{className:"flex items-baseline justify-between gap-3 text-sm",children:[(0,d.jsx)("span",{className:"font-medium text-text-primary truncate",children:(0,e.P6)(a.model)}),(0,d.jsxs)("span",{className:"text-xs text-text-tertiary tabular-nums flex-1 text-right",children:[(0,e.jh)(a.totalTokens,c)," \xb7 ",(0,e.R8)(b)]}),(0,d.jsx)("span",{className:"num-mono font-medium text-text-primary min-w-[80px] text-right",children:(0,e.az)(a.cost)})]}),(0,d.jsx)("div",{className:"h-2 w-full bg-bg-surface-hi rounded-full overflow-hidden",children:(0,d.jsx)("div",{className:"h-full rounded-full transition-all duration-500 ease-out-soft group-hover:brightness-110",style:{width:`${a.cost/h*100}%`,background:function(a){for(let b of Object.keys(g))if(a.toLowerCase().includes(b))return g[b];return"rgb(var(--chart-cache-create))"}(a.model)}})})]},a.model)})})}},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88622:(a,b,c)=>{"use strict";c.d(b,{BlockProgress:()=>d});let d=(0,c(97954).registerClientReference)(function(){throw Error("Attempted to call BlockProgress() from the server but BlockProgress is 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/zuopeng.cheng/personal/workspace/ccgauge/components/block-progress.tsx","BlockProgress")}};var b=require("../webpack-runtime.js");b.C(a);var c=b.X(0,[331,802,153,993,517,716,98,730,567],()=>b(b.s=77048));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../node_modules/next/dist/client/components/app-router-headers.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../node_modules/next/dist/lib/client-and-server-references.js","../../../node_modules/next/dist/lib/constants.js","../../../node_modules/next/dist/lib/interop-default.js","../../../node_modules/next/dist/lib/is-error.js","../../../node_modules/next/dist/lib/semver-noop.js","../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../node_modules/next/dist/server/lib/lru-cache.js","../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/dist/server/load-manifest.external.js","../../../node_modules/next/dist/server/response-cache/types.js","../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../node_modules/next/dist/shared/lib/segment.js","../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../node_modules/next/package.json","../../../package.json","../../package.json","../chunks/153.js","../chunks/331.js","../chunks/517.js","../chunks/567.js","../chunks/716.js","../chunks/
|
|
1
|
+
{"version":1,"files":["../../../node_modules/next/dist/client/components/app-router-headers.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../node_modules/next/dist/lib/client-and-server-references.js","../../../node_modules/next/dist/lib/constants.js","../../../node_modules/next/dist/lib/interop-default.js","../../../node_modules/next/dist/lib/is-error.js","../../../node_modules/next/dist/lib/semver-noop.js","../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../node_modules/next/dist/server/lib/cache-handlers/default.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../node_modules/next/dist/server/lib/lru-cache.js","../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/dist/server/load-manifest.external.js","../../../node_modules/next/dist/server/response-cache/types.js","../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../node_modules/next/dist/shared/lib/router/utils/app-paths.js","../../../node_modules/next/dist/shared/lib/router/utils/html-bots.js","../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../node_modules/next/dist/shared/lib/segment.js","../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../node_modules/next/package.json","../../../package.json","../../package.json","../chunks/153.js","../chunks/331.js","../chunks/517.js","../chunks/567.js","../chunks/716.js","../chunks/730.js","../chunks/802.js","../chunks/98.js","../chunks/993.js","../webpack-runtime.js","page_client-reference-manifest.js"]}
|