agent-log-viewer 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/standalone/.next/BUILD_ID +1 -1
- package/dist/standalone/.next/app-path-routes-manifest.json +7 -7
- package/dist/standalone/.next/build-manifest.json +2 -2
- package/dist/standalone/.next/prerender-manifest.json +3 -3
- package/dist/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app/_global-error.html +1 -1
- package/dist/standalone/.next/server/app/_global-error.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app/_not-found.html +1 -1
- package/dist/standalone/.next/server/app/_not-found.rsc +2 -2
- package/dist/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/api/access/route.js +1 -1
- package/dist/standalone/.next/server/app/api/answer/route.js +1 -1
- package/dist/standalone/.next/server/app/api/files/route.js +1 -1
- package/dist/standalone/.next/server/app/api/flows/[id]/route.js +1 -1
- package/dist/standalone/.next/server/app/api/flows/route.js +1 -1
- package/dist/standalone/.next/server/app/api/inbox/route.js +1 -1
- package/dist/standalone/.next/server/app/api/log/route.js +1 -1
- package/dist/standalone/.next/server/app/api/proc/route.js +1 -1
- package/dist/standalone/.next/server/app/api/push/route.js +1 -1
- package/dist/standalone/.next/server/app/api/resources/route.js +1 -1
- package/dist/standalone/.next/server/app/api/spawn/route.js +1 -1
- package/dist/standalone/.next/server/app/api/tasks/[id]/route.js +1 -1
- package/dist/standalone/.next/server/app/api/tasks/[id]/send/route.js +1 -1
- package/dist/standalone/.next/server/app/api/tasks/[id]/spawn/route.js +1 -1
- package/dist/standalone/.next/server/app/api/tasks/route.js +1 -1
- package/dist/standalone/.next/server/app/api/timeline/route.js +1 -1
- package/dist/standalone/.next/server/app/api/tmux/route.js +1 -1
- package/dist/standalone/.next/server/app/api/tmux/targets/route.js +1 -1
- package/dist/standalone/.next/server/app/api/transcribe/backend/route.js +1 -1
- package/dist/standalone/.next/server/app/api/transcribe/route.js +1 -1
- package/dist/standalone/.next/server/app/api/transcribe/token/route.js +1 -1
- package/dist/standalone/.next/server/app/api/workflows/[id]/route.js +1 -1
- package/dist/standalone/.next/server/app/api/workflows/route.js +1 -1
- package/dist/standalone/.next/server/app/index.html +1 -1
- package/dist/standalone/.next/server/app/index.rsc +3 -3
- package/dist/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/dist/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/dist/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dist/standalone/.next/server/app/page.js +2 -2
- package/dist/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/standalone/.next/server/app-paths-manifest.json +7 -7
- package/dist/standalone/.next/server/chunks/51.js +3 -3
- package/dist/standalone/.next/server/chunks/628.js +1 -1
- package/dist/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/dist/standalone/.next/server/middleware.js +1 -1
- package/dist/standalone/.next/server/pages/404.html +1 -1
- package/dist/standalone/.next/server/pages/500.html +1 -1
- package/dist/standalone/.next/server/server-reference-manifest.json +1 -1
- package/dist/standalone/.next/static/chunks/app/page-bdda213b08e4faa2.js +2 -0
- package/dist/standalone/.next/static/css/2db772af912b50a7.css +1 -0
- package/dist/standalone/package.json +1 -1
- package/package.json +1 -1
- package/dist/standalone/.next/static/chunks/app/page-3409152bbdaac94d.js +0 -2
- package/dist/standalone/.next/static/css/a04cbf1ccde7513b.css +0 -1
- /package/dist/standalone/.next/static/{k12qUMD3gcGhQKJwxEHUn → dShHonCUOGjh3FGbQydLs}/_buildManifest.js +0 -0
- /package/dist/standalone/.next/static/{k12qUMD3gcGhQKJwxEHUn → dShHonCUOGjh3FGbQydLs}/_ssgManifest.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=834,a.ids=[834],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")},14904:(a,b,c)=>{"use strict";c.d(b,{CN:()=>q,F3:()=>r,NW:()=>p,Q2:()=>n,yI:()=>o});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h),j=c(43312),k=c(91724),l=c(24546);let m=["local","chatgpt","elevenlabs"];function n(a){return"string"==typeof a&&m.includes(a)}function o(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();if(n(a))return a;try{let a=e().readFileSync((0,k.ks)("transcribe-backend"),"utf8").trim().toLowerCase();if(n(a))return a}catch{}return"local"}function p(a){let b=(0,k.ks)("transcribe-backend");e().mkdirSync(i().dirname(b),{recursive:!0}),e().writeFileSync(b,a+"\n")}function q(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();return{backend:o(),lockedByEnv:n(a),options:[{id:"local",available:(0,l.Zm)(),keyPath:(0,l.cX)()},{id:"chatgpt",available:null!==(0,j.g)(),keyPath:i().join(g().homedir(),".codex","auth.json")},{id:"elevenlabs",available:null!==r(),keyPath:(0,k.ks)("elevenlabs-api-key")}]}}function r(){let a=process.env.ELEVENLABS_API_KEY?.trim();if(a)return a;try{return e().readFileSync((0,k.ks)("elevenlabs-api-key"),"utf8").trim()||null}catch{return null}}},24546:(a,b,c)=>{"use strict";c.d(b,{Tc:()=>o,Zm:()=>n,cX:()=>m});var d=c(31421),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(91724);let j=process.env.LLV_WHISPER_MODEL||"small",k=process.env.LLV_WHISPER_DEVICE||"cpu";function l(){return process.env.LLV_WHISPER_VENV||(0,i.UT)("whisper-venv")}function m(){return h().join(l(),"bin","python")}function n(){return f().existsSync(m())}function o(a,b){let c=h().join(l(),"bin","python"),e=h().join(process.cwd(),"scripts","whisper_transcribe.py");return new Promise((f,g)=>{(0,d.execFile)(c,[e,a,j,k,b],{maxBuffer:4194304,timeout:12e4},(a,b)=>{if(a&&!b){let b="ENOENT"===a.code?" (запусти scripts/setup-whisper.sh)":"";g(Error(a.message+b));return}try{let a=JSON.parse(b.trim().split("\n").at(-1)??"{}");if("string"==typeof a.error)return void g(Error(a.error));f({text:"string"==typeof a.text?a.text:""})}catch{g(Error("локальний STT повернув некоректний вивід"))}})})}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},35961:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"заборонено: запит з іншого origin"},{status:403})}},43312:(a,b,c)=>{"use strict";c.d(b,{g:()=>j});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);function j(){try{let a=JSON.parse(e().readFileSync(i().join(g().homedir(),".codex","auth.json"),"utf8")),b="string"==typeof a.tokens?.access_token?a.tokens.access_token:"",c="string"==typeof a.tokens?.account_id?a.tokens.account_id:"";return b&&c?{accessToken:b,accountId:c}:null}catch{return null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},52722:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>H,patchFetch:()=>G,routeModule:()=>C,serverHooks:()=>F,workAsyncStorage:()=>D,workUnitAsyncStorage:()=>E});var d={};c.r(d),c.d(d,{GET:()=>A,POST:()=>B,dynamic:()=>z,runtime:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(35961),x=c(14904);let y="nodejs",z="force-dynamic";async function A(){return v.NextResponse.json((0,x.CN)())}async function B(a){let b,c=(0,w.W)(a);if(c)return c;try{b=await a.json()}catch{return v.NextResponse.json({error:"некоректний JSON"},{status:400})}if(!(0,x.Q2)(b.backend))return v.NextResponse.json({error:"backend має бути local, chatgpt або elevenlabs"},{status:400});if((0,x.CN)().lockedByEnv)return v.NextResponse.json({error:"вибір заблоковано змінною LLV_TRANSCRIBE_BACKEND"},{status:409});try{(0,x.NW)(b.backend)}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}return v.NextResponse.json((0,x.CN)())}let C=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/transcribe/backend/route",pathname:"/api/transcribe/backend",filename:"route",bundlePath:"app/api/transcribe/backend/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/transcribe/backend/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:D,workUnitAsyncStorage:E,serverHooks:F}=C;function G(){return(0,g.patchFetch)({workAsyncStorage:D,workUnitAsyncStorage:E})}async function H(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),C.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/transcribe/backend/route";"/index"===d&&(d="/");let e=await C.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||C.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===C.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await C.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>C.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>C.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await C.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,B),b}},k=await C.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await C.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91724:(a,b,c)=>{"use strict";c.d(b,{BQ:()=>r,UT:()=>m,ks:()=>l,oy:()=>s});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);let j="agent-log-viewer";function k(){return process.env.XDG_CONFIG_HOME||i().join(g().homedir(),".config")}function l(a){return n(k(),a)}function m(a){return n(process.env.XDG_CACHE_HOME||i().join(g().homedir(),".cache"),a)}function n(a,b){let c=i().join(a,j,b);if(e().existsSync(c))return c;let d=i().join(a,"live-log-viewer",b);return e().existsSync(d)?d:c}let o=new Set,p=".migrated-from-legacy";function q(a,b){if(o.has(a))return;let c=i().join(a,p),d=()=>`${new Date().toISOString()} ${b}
|
|
1
|
+
(()=>{var a={};a.id=834,a.ids=[834],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")},14904:(a,b,c)=>{"use strict";c.d(b,{CN:()=>q,F3:()=>r,NW:()=>p,Q2:()=>n,yI:()=>o});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h),j=c(43312),k=c(91724),l=c(24546);let m=["local","chatgpt","elevenlabs"];function n(a){return"string"==typeof a&&m.includes(a)}function o(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();if(n(a))return a;try{let a=e().readFileSync((0,k.ks)("transcribe-backend"),"utf8").trim().toLowerCase();if(n(a))return a}catch{}return"local"}function p(a){let b=(0,k.ks)("transcribe-backend");e().mkdirSync(i().dirname(b),{recursive:!0}),e().writeFileSync(b,a+"\n")}function q(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();return{backend:o(),lockedByEnv:n(a),options:[{id:"local",available:(0,l.Zm)(),keyPath:(0,l.cX)()},{id:"chatgpt",available:null!==(0,j.g)(),keyPath:i().join(g().homedir(),".codex","auth.json")},{id:"elevenlabs",available:null!==r(),keyPath:(0,k.ks)("elevenlabs-api-key")}]}}function r(){let a=process.env.ELEVENLABS_API_KEY?.trim();if(a)return a;try{return e().readFileSync((0,k.ks)("elevenlabs-api-key"),"utf8").trim()||null}catch{return null}}},24546:(a,b,c)=>{"use strict";c.d(b,{Tc:()=>o,Zm:()=>n,cX:()=>m});var d=c(31421),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(91724);let j=process.env.LLV_WHISPER_MODEL||"small",k=process.env.LLV_WHISPER_DEVICE||"cpu";function l(){return process.env.LLV_WHISPER_VENV||(0,i.UT)("whisper-venv")}function m(){return h().join(l(),"bin","python")}function n(){return f().existsSync(m())}function o(a,b){let c=h().join(l(),"bin","python"),e=h().join(process.cwd(),"scripts","whisper_transcribe.py");return new Promise((f,g)=>{(0,d.execFile)(c,[e,a,j,k,b],{maxBuffer:4194304,timeout:12e4},(a,b)=>{if(a&&!b){let b="ENOENT"===a.code?" (run scripts/setup-whisper.sh)":"";g(Error(a.message+b));return}try{let a=JSON.parse(b.trim().split("\n").at(-1)??"{}");if("string"==typeof a.error)return void g(Error(a.error));f({text:"string"==typeof a.text?a.text:""})}catch{g(Error("local STT returned invalid output"))}})})}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},35961:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"forbidden: cross-origin request"},{status:403})}},43312:(a,b,c)=>{"use strict";c.d(b,{g:()=>j});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);function j(){try{let a=JSON.parse(e().readFileSync(i().join(g().homedir(),".codex","auth.json"),"utf8")),b="string"==typeof a.tokens?.access_token?a.tokens.access_token:"",c="string"==typeof a.tokens?.account_id?a.tokens.account_id:"";return b&&c?{accessToken:b,accountId:c}:null}catch{return null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},52722:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>H,patchFetch:()=>G,routeModule:()=>C,serverHooks:()=>F,workAsyncStorage:()=>D,workUnitAsyncStorage:()=>E});var d={};c.r(d),c.d(d,{GET:()=>A,POST:()=>B,dynamic:()=>z,runtime:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(35961),x=c(14904);let y="nodejs",z="force-dynamic";async function A(){return v.NextResponse.json((0,x.CN)())}async function B(a){let b,c=(0,w.W)(a);if(c)return c;try{b=await a.json()}catch{return v.NextResponse.json({error:"invalid JSON"},{status:400})}if(!(0,x.Q2)(b.backend))return v.NextResponse.json({error:"backend must be local, chatgpt, or elevenlabs"},{status:400});if((0,x.CN)().lockedByEnv)return v.NextResponse.json({error:"selection is locked by LLV_TRANSCRIBE_BACKEND"},{status:409});try{(0,x.NW)(b.backend)}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}return v.NextResponse.json((0,x.CN)())}let C=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/transcribe/backend/route",pathname:"/api/transcribe/backend",filename:"route",bundlePath:"app/api/transcribe/backend/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/transcribe/backend/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:D,workUnitAsyncStorage:E,serverHooks:F}=C;function G(){return(0,g.patchFetch)({workAsyncStorage:D,workUnitAsyncStorage:E})}async function H(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),C.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/transcribe/backend/route";"/index"===d&&(d="/");let e=await C.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||C.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===C.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await C.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>C.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>C.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await C.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,B),b}},k=await C.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await C.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91724:(a,b,c)=>{"use strict";c.d(b,{BQ:()=>r,UT:()=>m,ks:()=>l,oy:()=>s});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);let j="agent-log-viewer";function k(){return process.env.XDG_CONFIG_HOME||i().join(g().homedir(),".config")}function l(a){return n(k(),a)}function m(a){return n(process.env.XDG_CACHE_HOME||i().join(g().homedir(),".cache"),a)}function n(a,b){let c=i().join(a,j,b);if(e().existsSync(c))return c;let d=i().join(a,"live-log-viewer",b);return e().existsSync(d)?d:c}let o=new Set,p=".migrated-from-legacy";function q(a,b){if(o.has(a))return;let c=i().join(a,p),d=()=>`${new Date().toISOString()} ${b}
|
|
2
2
|
`;try{if(e().existsSync(c))return void o.add(a);if(!e().existsSync(b)){e().mkdirSync(a,{recursive:!0}),e().writeFileSync(c,d()),o.add(a);return}if(!e().existsSync(a)){e().mkdirSync(i().dirname(a),{recursive:!0});let c=`${a}.migrating.${process.pid}`;e().rmSync(c,{recursive:!0,force:!0});try{e().cpSync(b,c,{recursive:!0}),e().writeFileSync(i().join(c,p),d()),e().renameSync(c,a)}catch(a){throw e().rmSync(c,{recursive:!0,force:!0}),a}o.add(a);return}e().cpSync(b,a,{recursive:!0,force:!1,errorOnExist:!1}),e().writeFileSync(c,d()),o.add(a)}catch(c){console.error(`viewer state migration ${b} -> ${a} failed; will retry:`,c)}}function r(...a){return i().join(function(){let a=process.env.LLV_STATE_DIR;if(a)return a;let b=i().join(k(),j,"state");return q(b,i().join(g().homedir(),".claude","viewer-state")),b}(),...a)}function s(){let a=i().join(k(),j,"inbox");return q(a,i().join(g().homedir(),".claude","viewer-inbox")),a}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[741,813],()=>b(b.s=52722));module.exports=c})();
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=391,a.ids=[391],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")},14904:(a,b,c)=>{"use strict";c.d(b,{CN:()=>q,F3:()=>r,NW:()=>p,Q2:()=>n,yI:()=>o});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h),j=c(43312),k=c(91724),l=c(24546);let m=["local","chatgpt","elevenlabs"];function n(a){return"string"==typeof a&&m.includes(a)}function o(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();if(n(a))return a;try{let a=e().readFileSync((0,k.ks)("transcribe-backend"),"utf8").trim().toLowerCase();if(n(a))return a}catch{}return"local"}function p(a){let b=(0,k.ks)("transcribe-backend");e().mkdirSync(i().dirname(b),{recursive:!0}),e().writeFileSync(b,a+"\n")}function q(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();return{backend:o(),lockedByEnv:n(a),options:[{id:"local",available:(0,l.Zm)(),keyPath:(0,l.cX)()},{id:"chatgpt",available:null!==(0,j.g)(),keyPath:i().join(g().homedir(),".codex","auth.json")},{id:"elevenlabs",available:null!==r(),keyPath:(0,k.ks)("elevenlabs-api-key")}]}}function r(){let a=process.env.ELEVENLABS_API_KEY?.trim();if(a)return a;try{return e().readFileSync((0,k.ks)("elevenlabs-api-key"),"utf8").trim()||null}catch{return null}}},24546:(a,b,c)=>{"use strict";c.d(b,{Tc:()=>o,Zm:()=>n,cX:()=>m});var d=c(31421),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(91724);let j=process.env.LLV_WHISPER_MODEL||"small",k=process.env.LLV_WHISPER_DEVICE||"cpu";function l(){return process.env.LLV_WHISPER_VENV||(0,i.UT)("whisper-venv")}function m(){return h().join(l(),"bin","python")}function n(){return f().existsSync(m())}function o(a,b){let c=h().join(l(),"bin","python"),e=h().join(process.cwd(),"scripts","whisper_transcribe.py");return new Promise((f,g)=>{(0,d.execFile)(c,[e,a,j,k,b],{maxBuffer:4194304,timeout:12e4},(a,b)=>{if(a&&!b){let b="ENOENT"===a.code?" (запусти scripts/setup-whisper.sh)":"";g(Error(a.message+b));return}try{let a=JSON.parse(b.trim().split("\n").at(-1)??"{}");if("string"==typeof a.error)return void g(Error(a.error));f({text:"string"==typeof a.text?a.text:""})}catch{g(Error("локальний STT повернув некоректний вивід"))}})})}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},35961:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"заборонено: запит з іншого origin"},{status:403})}},38743:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>S,patchFetch:()=>R,routeModule:()=>N,serverHooks:()=>Q,workAsyncStorage:()=>O,workUnitAsyncStorage:()=>P});var d={};c.r(d),c.d(d,{POST:()=>M,dynamic:()=>K,runtime:()=>J});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(73024),w=c.n(v),x=c(48161),y=c.n(x),z=c(76760),A=c.n(z),B=c(23211),C=c(43312),D=c(35961),E=c(31421);let F=process.env.LLV_ELEVENLABS_STT_MODEL||"scribe_v1";async function G(a,b,c){let d=new FormData;d.append("model_id",F),d.append("file",b,"dictation.webm"),c&&d.append("language_code",c);let e=await fetch("https://api.elevenlabs.io/v1/speech-to-text",{method:"POST",headers:{"xi-api-key":a},body:d,signal:AbortSignal.timeout(9e4)});if(!e.ok){let a=await e.text().catch(()=>"");throw Error(`HTTP ${e.status}${a?` — ${a.slice(0,200)}`:""}`)}let f=await e.json();return{text:"string"==typeof f.text?f.text:""}}var H=c(24546),I=c(14904);let J="nodejs",K="force-dynamic",L=/^[a-z]{2}(?:-[A-Z]{2})?$/;async function M(a){let b,c=(0,D.W)(a);if(c)return c;try{b=await a.formData()}catch{return B.NextResponse.json({error:"очікується multipart/form-data з полем file"},{status:400})}let d=b.get("file");if(!(d instanceof File))return B.NextResponse.json({error:"нема аудіофайла в полі file"},{status:400});if(d.size>0x1000000)return B.NextResponse.json({error:"аудіо завелике (ліміт 16 МБ)"},{status:413});let e=d.type&&d.type.startsWith("audio/")?d.type.split(";")[0]:"audio/webm";if(d.type&&!d.type.startsWith("audio/"))return B.NextResponse.json({error:"очікується аудіо"},{status:415});let f=b.get("language"),g="string"==typeof f&&L.test(f)?f:"",h=(0,I.yI)();if("elevenlabs"===h){let a=(0,I.F3)();if(!a)return B.NextResponse.json({error:"нема ключа ElevenLabs (~/.config/agent-log-viewer/elevenlabs-api-key або ELEVENLABS_API_KEY)"},{status:503});try{return B.NextResponse.json(await G(a,d,g))}catch(a){return B.NextResponse.json({error:`ElevenLabs STT: ${a instanceof Error?a.message:String(a)}`},{status:502})}}let i=A().join(y().tmpdir(),`viewer-dictation-${Date.now()}-${Math.floor(1e6*Math.random())}.webm`);try{let a;if(w().writeFileSync(i,Buffer.from(await d.arrayBuffer())),"local"===h){let a=await (0,H.Tc)(i,g);return B.NextResponse.json(a)}let b=(0,C.g)();if(!b)return B.NextResponse.json({error:"нема ChatGPT-токена Codex (~/.codex/auth.json) — залогінься в Codex"},{status:503});let c=await (a=['url = "https://chatgpt.com/backend-api/transcribe"','request = "POST"',"silent","max-time = 90",`header = "Authorization: Bearer ${b.accessToken}"`,`header = "chatgpt-account-id: ${b.accountId}"`,'header = "originator: codex_cli_rs"','header = "User-Agent: codex_cli_rs (live-log-viewer)"',`form = "file=@${i};type=${e}"`,...g?[`form = "language=${g}"`]:[],'write-out = "\\n%{http_code}"'].join("\n"),new Promise((b,c)=>{let d=(0,E.execFile)("curl",["--config","-"],{maxBuffer:4194304,timeout:95e3},(a,d)=>{if(a&&!d)return void c(Error(a.message));let e=d.lastIndexOf("\n"),f=Number(d.slice(e+1).trim());b({status:Number.isInteger(f)?f:0,body:d.slice(0,e)})});d.stdin?.end(a)}));if(401===c.status)return B.NextResponse.json({error:"ChatGPT-токен протух — відкрий Codex, щоб він оновив токен"},{status:502});if(200!==c.status)return B.NextResponse.json({error:`бекенд транскрипції: HTTP ${c.status||"0 (мережа)"}`},{status:502});let f=JSON.parse(c.body);return B.NextResponse.json({text:"string"==typeof f.text?f.text:""})}catch(a){return B.NextResponse.json({error:`${"local"===h?"локальний STT":"бекенд транскрипції"}: ${a instanceof Error?a.message:String(a)}`},{status:502})}finally{w().rmSync(i,{force:!0})}}let N=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/transcribe/route",pathname:"/api/transcribe",filename:"route",bundlePath:"app/api/transcribe/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/transcribe/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:O,workUnitAsyncStorage:P,serverHooks:Q}=N;function R(){return(0,g.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:P})}async function S(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),N.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/transcribe/route";"/index"===d&&(d="/");let e=await N.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||N.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===N.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await N.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>N.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>N.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await N.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await N.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await N.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},43312:(a,b,c)=>{"use strict";c.d(b,{g:()=>j});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);function j(){try{let a=JSON.parse(e().readFileSync(i().join(g().homedir(),".codex","auth.json"),"utf8")),b="string"==typeof a.tokens?.access_token?a.tokens.access_token:"",c="string"==typeof a.tokens?.account_id?a.tokens.account_id:"";return b&&c?{accessToken:b,accountId:c}:null}catch{return null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.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")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91724:(a,b,c)=>{"use strict";c.d(b,{BQ:()=>r,UT:()=>m,ks:()=>l,oy:()=>s});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);let j="agent-log-viewer";function k(){return process.env.XDG_CONFIG_HOME||i().join(g().homedir(),".config")}function l(a){return n(k(),a)}function m(a){return n(process.env.XDG_CACHE_HOME||i().join(g().homedir(),".cache"),a)}function n(a,b){let c=i().join(a,j,b);if(e().existsSync(c))return c;let d=i().join(a,"live-log-viewer",b);return e().existsSync(d)?d:c}let o=new Set,p=".migrated-from-legacy";function q(a,b){if(o.has(a))return;let c=i().join(a,p),d=()=>`${new Date().toISOString()} ${b}
|
|
1
|
+
(()=>{var a={};a.id=391,a.ids=[391],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")},14904:(a,b,c)=>{"use strict";c.d(b,{CN:()=>q,F3:()=>r,NW:()=>p,Q2:()=>n,yI:()=>o});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h),j=c(43312),k=c(91724),l=c(24546);let m=["local","chatgpt","elevenlabs"];function n(a){return"string"==typeof a&&m.includes(a)}function o(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();if(n(a))return a;try{let a=e().readFileSync((0,k.ks)("transcribe-backend"),"utf8").trim().toLowerCase();if(n(a))return a}catch{}return"local"}function p(a){let b=(0,k.ks)("transcribe-backend");e().mkdirSync(i().dirname(b),{recursive:!0}),e().writeFileSync(b,a+"\n")}function q(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();return{backend:o(),lockedByEnv:n(a),options:[{id:"local",available:(0,l.Zm)(),keyPath:(0,l.cX)()},{id:"chatgpt",available:null!==(0,j.g)(),keyPath:i().join(g().homedir(),".codex","auth.json")},{id:"elevenlabs",available:null!==r(),keyPath:(0,k.ks)("elevenlabs-api-key")}]}}function r(){let a=process.env.ELEVENLABS_API_KEY?.trim();if(a)return a;try{return e().readFileSync((0,k.ks)("elevenlabs-api-key"),"utf8").trim()||null}catch{return null}}},24546:(a,b,c)=>{"use strict";c.d(b,{Tc:()=>o,Zm:()=>n,cX:()=>m});var d=c(31421),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(91724);let j=process.env.LLV_WHISPER_MODEL||"small",k=process.env.LLV_WHISPER_DEVICE||"cpu";function l(){return process.env.LLV_WHISPER_VENV||(0,i.UT)("whisper-venv")}function m(){return h().join(l(),"bin","python")}function n(){return f().existsSync(m())}function o(a,b){let c=h().join(l(),"bin","python"),e=h().join(process.cwd(),"scripts","whisper_transcribe.py");return new Promise((f,g)=>{(0,d.execFile)(c,[e,a,j,k,b],{maxBuffer:4194304,timeout:12e4},(a,b)=>{if(a&&!b){let b="ENOENT"===a.code?" (run scripts/setup-whisper.sh)":"";g(Error(a.message+b));return}try{let a=JSON.parse(b.trim().split("\n").at(-1)??"{}");if("string"==typeof a.error)return void g(Error(a.error));f({text:"string"==typeof a.text?a.text:""})}catch{g(Error("local STT returned invalid output"))}})})}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},35961:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"forbidden: cross-origin request"},{status:403})}},38743:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>S,patchFetch:()=>R,routeModule:()=>N,serverHooks:()=>Q,workAsyncStorage:()=>O,workUnitAsyncStorage:()=>P});var d={};c.r(d),c.d(d,{POST:()=>M,dynamic:()=>K,runtime:()=>J});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(73024),w=c.n(v),x=c(48161),y=c.n(x),z=c(76760),A=c.n(z),B=c(23211),C=c(43312),D=c(35961),E=c(31421);let F=process.env.LLV_ELEVENLABS_STT_MODEL||"scribe_v1";async function G(a,b,c){let d=new FormData;d.append("model_id",F),d.append("file",b,"dictation.webm"),c&&d.append("language_code",c);let e=await fetch("https://api.elevenlabs.io/v1/speech-to-text",{method:"POST",headers:{"xi-api-key":a},body:d,signal:AbortSignal.timeout(9e4)});if(!e.ok){let a=await e.text().catch(()=>"");throw Error(`HTTP ${e.status}${a?` — ${a.slice(0,200)}`:""}`)}let f=await e.json();return{text:"string"==typeof f.text?f.text:""}}var H=c(24546),I=c(14904);let J="nodejs",K="force-dynamic",L=/^[a-z]{2}(?:-[A-Z]{2})?$/;async function M(a){let b,c=(0,D.W)(a);if(c)return c;try{b=await a.formData()}catch{return B.NextResponse.json({error:"expected multipart/form-data with a file field"},{status:400})}let d=b.get("file");if(!(d instanceof File))return B.NextResponse.json({error:"missing audio file in the file field"},{status:400});if(d.size>0x1000000)return B.NextResponse.json({error:"audio is too large (16 MB limit)"},{status:413});let e=d.type&&d.type.startsWith("audio/")?d.type.split(";")[0]:"audio/webm";if(d.type&&!d.type.startsWith("audio/"))return B.NextResponse.json({error:"expected audio"},{status:415});let f=b.get("language"),g="string"==typeof f&&L.test(f)?f:"",h=(0,I.yI)();if("elevenlabs"===h){let a=(0,I.F3)();if(!a)return B.NextResponse.json({error:"missing ElevenLabs key (~/.config/agent-log-viewer/elevenlabs-api-key or ELEVENLABS_API_KEY)"},{status:503});try{return B.NextResponse.json(await G(a,d,g))}catch(a){return B.NextResponse.json({error:`ElevenLabs STT: ${a instanceof Error?a.message:String(a)}`},{status:502})}}let i=A().join(y().tmpdir(),`viewer-dictation-${Date.now()}-${Math.floor(1e6*Math.random())}.webm`);try{let a;if(w().writeFileSync(i,Buffer.from(await d.arrayBuffer())),"local"===h){let a=await (0,H.Tc)(i,g);return B.NextResponse.json(a)}let b=(0,C.g)();if(!b)return B.NextResponse.json({error:"missing Codex ChatGPT token (~/.codex/auth.json) — sign in to Codex"},{status:503});let c=await (a=['url = "https://chatgpt.com/backend-api/transcribe"','request = "POST"',"silent","max-time = 90",`header = "Authorization: Bearer ${b.accessToken}"`,`header = "chatgpt-account-id: ${b.accountId}"`,'header = "originator: codex_cli_rs"','header = "User-Agent: codex_cli_rs (live-log-viewer)"',`form = "file=@${i};type=${e}"`,...g?[`form = "language=${g}"`]:[],'write-out = "\\n%{http_code}"'].join("\n"),new Promise((b,c)=>{let d=(0,E.execFile)("curl",["--config","-"],{maxBuffer:4194304,timeout:95e3},(a,d)=>{if(a&&!d)return void c(Error(a.message));let e=d.lastIndexOf("\n"),f=Number(d.slice(e+1).trim());b({status:Number.isInteger(f)?f:0,body:d.slice(0,e)})});d.stdin?.end(a)}));if(401===c.status)return B.NextResponse.json({error:"ChatGPT token expired — open Codex so it can refresh the token"},{status:502});if(200!==c.status)return B.NextResponse.json({error:`transcription backend: HTTP ${c.status||"0 (network)"}`},{status:502});let f=JSON.parse(c.body);return B.NextResponse.json({text:"string"==typeof f.text?f.text:""})}catch(a){return B.NextResponse.json({error:`${"local"===h?"local STT":"transcription backend"}: ${a instanceof Error?a.message:String(a)}`},{status:502})}finally{w().rmSync(i,{force:!0})}}let N=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/transcribe/route",pathname:"/api/transcribe",filename:"route",bundlePath:"app/api/transcribe/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/transcribe/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:O,workUnitAsyncStorage:P,serverHooks:Q}=N;function R(){return(0,g.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:P})}async function S(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),N.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/transcribe/route";"/index"===d&&(d="/");let e=await N.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||N.isDev||z||(K="/index"===(K=E)?"/":K);let L=!0===N.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await N.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:L,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>N.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>N.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await N.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await N.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await N.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},43312:(a,b,c)=>{"use strict";c.d(b,{g:()=>j});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);function j(){try{let a=JSON.parse(e().readFileSync(i().join(g().homedir(),".codex","auth.json"),"utf8")),b="string"==typeof a.tokens?.access_token?a.tokens.access_token:"",c="string"==typeof a.tokens?.account_id?a.tokens.account_id:"";return b&&c?{accessToken:b,accountId:c}:null}catch{return null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.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")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91724:(a,b,c)=>{"use strict";c.d(b,{BQ:()=>r,UT:()=>m,ks:()=>l,oy:()=>s});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);let j="agent-log-viewer";function k(){return process.env.XDG_CONFIG_HOME||i().join(g().homedir(),".config")}function l(a){return n(k(),a)}function m(a){return n(process.env.XDG_CACHE_HOME||i().join(g().homedir(),".cache"),a)}function n(a,b){let c=i().join(a,j,b);if(e().existsSync(c))return c;let d=i().join(a,"live-log-viewer",b);return e().existsSync(d)?d:c}let o=new Set,p=".migrated-from-legacy";function q(a,b){if(o.has(a))return;let c=i().join(a,p),d=()=>`${new Date().toISOString()} ${b}
|
|
2
2
|
`;try{if(e().existsSync(c))return void o.add(a);if(!e().existsSync(b)){e().mkdirSync(a,{recursive:!0}),e().writeFileSync(c,d()),o.add(a);return}if(!e().existsSync(a)){e().mkdirSync(i().dirname(a),{recursive:!0});let c=`${a}.migrating.${process.pid}`;e().rmSync(c,{recursive:!0,force:!0});try{e().cpSync(b,c,{recursive:!0}),e().writeFileSync(i().join(c,p),d()),e().renameSync(c,a)}catch(a){throw e().rmSync(c,{recursive:!0,force:!0}),a}o.add(a);return}e().cpSync(b,a,{recursive:!0,force:!1,errorOnExist:!1}),e().writeFileSync(c,d()),o.add(a)}catch(c){console.error(`viewer state migration ${b} -> ${a} failed; will retry:`,c)}}function r(...a){return i().join(function(){let a=process.env.LLV_STATE_DIR;if(a)return a;let b=i().join(k(),j,"state");return q(b,i().join(g().homedir(),".claude","viewer-state")),b}(),...a)}function s(){let a=i().join(k(),j,"inbox");return q(a,i().join(g().homedir(),".claude","viewer-inbox")),a}},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[741,813],()=>b(b.s=38743));module.exports=c})();
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=781,a.ids=[781],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")},14904:(a,b,c)=>{"use strict";c.d(b,{CN:()=>q,F3:()=>r,NW:()=>p,Q2:()=>n,yI:()=>o});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h),j=c(43312),k=c(91724),l=c(24546);let m=["local","chatgpt","elevenlabs"];function n(a){return"string"==typeof a&&m.includes(a)}function o(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();if(n(a))return a;try{let a=e().readFileSync((0,k.ks)("transcribe-backend"),"utf8").trim().toLowerCase();if(n(a))return a}catch{}return"local"}function p(a){let b=(0,k.ks)("transcribe-backend");e().mkdirSync(i().dirname(b),{recursive:!0}),e().writeFileSync(b,a+"\n")}function q(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();return{backend:o(),lockedByEnv:n(a),options:[{id:"local",available:(0,l.Zm)(),keyPath:(0,l.cX)()},{id:"chatgpt",available:null!==(0,j.g)(),keyPath:i().join(g().homedir(),".codex","auth.json")},{id:"elevenlabs",available:null!==r(),keyPath:(0,k.ks)("elevenlabs-api-key")}]}}function r(){let a=process.env.ELEVENLABS_API_KEY?.trim();if(a)return a;try{return e().readFileSync((0,k.ks)("elevenlabs-api-key"),"utf8").trim()||null}catch{return null}}},24546:(a,b,c)=>{"use strict";c.d(b,{Tc:()=>o,Zm:()=>n,cX:()=>m});var d=c(31421),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(91724);let j=process.env.LLV_WHISPER_MODEL||"small",k=process.env.LLV_WHISPER_DEVICE||"cpu";function l(){return process.env.LLV_WHISPER_VENV||(0,i.UT)("whisper-venv")}function m(){return h().join(l(),"bin","python")}function n(){return f().existsSync(m())}function o(a,b){let c=h().join(l(),"bin","python"),e=h().join(process.cwd(),"scripts","whisper_transcribe.py");return new Promise((f,g)=>{(0,d.execFile)(c,[e,a,j,k,b],{maxBuffer:4194304,timeout:12e4},(a,b)=>{if(a&&!b){let b="ENOENT"===a.code?" (запусти scripts/setup-whisper.sh)":"";g(Error(a.message+b));return}try{let a=JSON.parse(b.trim().split("\n").at(-1)??"{}");if("string"==typeof a.error)return void g(Error(a.error));f({text:"string"==typeof a.text?a.text:""})}catch{g(Error("локальний STT повернув некоректний вивід"))}})})}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},35961:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"заборонено: запит з іншого origin"},{status:403})}},43312:(a,b,c)=>{"use strict";c.d(b,{g:()=>j});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);function j(){try{let a=JSON.parse(e().readFileSync(i().join(g().homedir(),".codex","auth.json"),"utf8")),b="string"==typeof a.tokens?.access_token?a.tokens.access_token:"",c="string"==typeof a.tokens?.account_id?a.tokens.account_id:"";return b&&c?{accessToken:b,accountId:c}:null}catch{return null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},58592:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{POST:()=>A,dynamic:()=>z,runtime:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(35961),x=c(14904);let y="nodejs",z="force-dynamic";async function A(a){let b=(0,w.W)(a);if(b)return b;if("elevenlabs"!==(0,x.yI)())return v.NextResponse.json({error:"live-транскрипція доступна лише з бекендом elevenlabs"},{status:409});let c=(0,x.F3)();if(!c)return v.NextResponse.json({error:"нема ключа ElevenLabs (~/.config/agent-log-viewer/elevenlabs-api-key або ELEVENLABS_API_KEY)"},{status:503});try{let a=await fetch("https://api.elevenlabs.io/v1/single-use-token/realtime_scribe",{method:"POST",headers:{"xi-api-key":c},signal:AbortSignal.timeout(1e4)});if(!a.ok)return v.NextResponse.json({error:`ElevenLabs token: HTTP ${a.status}`},{status:502});let b=await a.json();if("string"!=typeof b.token||!b.token)return v.NextResponse.json({error:"ElevenLabs token: відповідь без token"},{status:502});return v.NextResponse.json({token:b.token})}catch(a){return v.NextResponse.json({error:`ElevenLabs token: ${a instanceof Error?a.message:String(a)}`},{status:502})}}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/transcribe/token/route",pathname:"/api/transcribe/token",filename:"route",bundlePath:"app/api/transcribe/token/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/transcribe/token/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/transcribe/token/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91724:(a,b,c)=>{"use strict";c.d(b,{BQ:()=>r,UT:()=>m,ks:()=>l,oy:()=>s});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);let j="agent-log-viewer";function k(){return process.env.XDG_CONFIG_HOME||i().join(g().homedir(),".config")}function l(a){return n(k(),a)}function m(a){return n(process.env.XDG_CACHE_HOME||i().join(g().homedir(),".cache"),a)}function n(a,b){let c=i().join(a,j,b);if(e().existsSync(c))return c;let d=i().join(a,"live-log-viewer",b);return e().existsSync(d)?d:c}let o=new Set,p=".migrated-from-legacy";function q(a,b){if(o.has(a))return;let c=i().join(a,p),d=()=>`${new Date().toISOString()} ${b}
|
|
1
|
+
(()=>{var a={};a.id=781,a.ids=[781],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")},14904:(a,b,c)=>{"use strict";c.d(b,{CN:()=>q,F3:()=>r,NW:()=>p,Q2:()=>n,yI:()=>o});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h),j=c(43312),k=c(91724),l=c(24546);let m=["local","chatgpt","elevenlabs"];function n(a){return"string"==typeof a&&m.includes(a)}function o(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();if(n(a))return a;try{let a=e().readFileSync((0,k.ks)("transcribe-backend"),"utf8").trim().toLowerCase();if(n(a))return a}catch{}return"local"}function p(a){let b=(0,k.ks)("transcribe-backend");e().mkdirSync(i().dirname(b),{recursive:!0}),e().writeFileSync(b,a+"\n")}function q(){let a=process.env.LLV_TRANSCRIBE_BACKEND?.trim().toLowerCase();return{backend:o(),lockedByEnv:n(a),options:[{id:"local",available:(0,l.Zm)(),keyPath:(0,l.cX)()},{id:"chatgpt",available:null!==(0,j.g)(),keyPath:i().join(g().homedir(),".codex","auth.json")},{id:"elevenlabs",available:null!==r(),keyPath:(0,k.ks)("elevenlabs-api-key")}]}}function r(){let a=process.env.ELEVENLABS_API_KEY?.trim();if(a)return a;try{return e().readFileSync((0,k.ks)("elevenlabs-api-key"),"utf8").trim()||null}catch{return null}}},24546:(a,b,c)=>{"use strict";c.d(b,{Tc:()=>o,Zm:()=>n,cX:()=>m});var d=c(31421),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(91724);let j=process.env.LLV_WHISPER_MODEL||"small",k=process.env.LLV_WHISPER_DEVICE||"cpu";function l(){return process.env.LLV_WHISPER_VENV||(0,i.UT)("whisper-venv")}function m(){return h().join(l(),"bin","python")}function n(){return f().existsSync(m())}function o(a,b){let c=h().join(l(),"bin","python"),e=h().join(process.cwd(),"scripts","whisper_transcribe.py");return new Promise((f,g)=>{(0,d.execFile)(c,[e,a,j,k,b],{maxBuffer:4194304,timeout:12e4},(a,b)=>{if(a&&!b){let b="ENOENT"===a.code?" (run scripts/setup-whisper.sh)":"";g(Error(a.message+b));return}try{let a=JSON.parse(b.trim().split("\n").at(-1)??"{}");if("string"==typeof a.error)return void g(Error(a.error));f({text:"string"==typeof a.text?a.text:""})}catch{g(Error("local STT returned invalid output"))}})})}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},35961:(a,b,c)=>{"use strict";c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"forbidden: cross-origin request"},{status:403})}},43312:(a,b,c)=>{"use strict";c.d(b,{g:()=>j});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);function j(){try{let a=JSON.parse(e().readFileSync(i().join(g().homedir(),".codex","auth.json"),"utf8")),b="string"==typeof a.tokens?.access_token?a.tokens.access_token:"",c="string"==typeof a.tokens?.account_id?a.tokens.account_id:"";return b&&c?{accessToken:b,accountId:c}:null}catch{return null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},58592:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{POST:()=>A,dynamic:()=>z,runtime:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(35961),x=c(14904);let y="nodejs",z="force-dynamic";async function A(a){let b=(0,w.W)(a);if(b)return b;if("elevenlabs"!==(0,x.yI)())return v.NextResponse.json({error:"live transcription is only available with the elevenlabs backend"},{status:409});let c=(0,x.F3)();if(!c)return v.NextResponse.json({error:"missing ElevenLabs key (~/.config/agent-log-viewer/elevenlabs-api-key or ELEVENLABS_API_KEY)"},{status:503});try{let a=await fetch("https://api.elevenlabs.io/v1/single-use-token/realtime_scribe",{method:"POST",headers:{"xi-api-key":c},signal:AbortSignal.timeout(1e4)});if(!a.ok)return v.NextResponse.json({error:`ElevenLabs token: HTTP ${a.status}`},{status:502});let b=await a.json();if("string"!=typeof b.token||!b.token)return v.NextResponse.json({error:"ElevenLabs token: response had no token"},{status:502});return v.NextResponse.json({token:b.token})}catch(a){return v.NextResponse.json({error:`ElevenLabs token: ${a instanceof Error?a.message:String(a)}`},{status:502})}}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/transcribe/token/route",pathname:"/api/transcribe/token",filename:"route",bundlePath:"app/api/transcribe/token/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/transcribe/token/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/transcribe/token/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},91724:(a,b,c)=>{"use strict";c.d(b,{BQ:()=>r,UT:()=>m,ks:()=>l,oy:()=>s});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(76760),i=c.n(h);let j="agent-log-viewer";function k(){return process.env.XDG_CONFIG_HOME||i().join(g().homedir(),".config")}function l(a){return n(k(),a)}function m(a){return n(process.env.XDG_CACHE_HOME||i().join(g().homedir(),".cache"),a)}function n(a,b){let c=i().join(a,j,b);if(e().existsSync(c))return c;let d=i().join(a,"live-log-viewer",b);return e().existsSync(d)?d:c}let o=new Set,p=".migrated-from-legacy";function q(a,b){if(o.has(a))return;let c=i().join(a,p),d=()=>`${new Date().toISOString()} ${b}
|
|
2
2
|
`;try{if(e().existsSync(c))return void o.add(a);if(!e().existsSync(b)){e().mkdirSync(a,{recursive:!0}),e().writeFileSync(c,d()),o.add(a);return}if(!e().existsSync(a)){e().mkdirSync(i().dirname(a),{recursive:!0});let c=`${a}.migrating.${process.pid}`;e().rmSync(c,{recursive:!0,force:!0});try{e().cpSync(b,c,{recursive:!0}),e().writeFileSync(i().join(c,p),d()),e().renameSync(c,a)}catch(a){throw e().rmSync(c,{recursive:!0,force:!0}),a}o.add(a);return}e().cpSync(b,a,{recursive:!0,force:!1,errorOnExist:!1}),e().writeFileSync(c,d()),o.add(a)}catch(c){console.error(`viewer state migration ${b} -> ${a} failed; will retry:`,c)}}function r(...a){return i().join(function(){let a=process.env.LLV_STATE_DIR;if(a)return a;let b=i().join(k(),j,"state");return q(b,i().join(g().homedir(),".claude","viewer-state")),b}(),...a)}function s(){let a=i().join(k(),j,"inbox");return q(a,i().join(g().homedir(),".claude","viewer-inbox")),a}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[741,813],()=>b(b.s=58592));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=994,a.ids=[994],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},35961:(a,b,c)=>{c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"
|
|
1
|
+
"use strict";(()=>{var a={};a.id=994,a.ids=[994],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},35961:(a,b,c)=>{c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"forbidden: cross-origin request"},{status:403})}},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},99712:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{PATCH:()=>A,dynamic:()=>z,runtime:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(35961),x=c(41017);let y="nodejs",z="force-dynamic";async function A(a,b){let c,d=(0,w.W)(a);if(d)return d;try{c=await a.json()}catch{return v.NextResponse.json({error:"invalid JSON"},{status:400})}if(!new Set(["pause","resume","advance","retry-stage","close"]).has(c.action))return v.NextResponse.json({error:"unknown action"},{status:400});let{id:e}=await b.params,f=await (0,x.w1)(e,c);return f.workflow?v.NextResponse.json({ok:!0,workflow:f.workflow}):v.NextResponse.json({error:f.error??"could not update workflow"},{status:f.status??400})}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/workflows/[id]/route",pathname:"/api/workflows/[id]",filename:"route",bundlePath:"app/api/workflows/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/workflows/[id]/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/workflows/[id]/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[741,813,628,51],()=>b(b.s=99712));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=616,a.ids=[616],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},35961:(a,b,c)=>{c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"
|
|
1
|
+
"use strict";(()=>{var a={};a.id=616,a.ids=[616],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},35961:(a,b,c)=>{c.d(b,{W:()=>g});var d=c(23211);let e=["localhost","127.0.0.1","::1"];function f(a){if(a.startsWith("[")){let b=a.indexOf("]");return -1===b?a:a.slice(1,b)}let b=a.lastIndexOf(":");return -1===b?a:a.slice(0,b)}function g(a){let b=new Set(e),c=process.env.LLV_TS_HOST;c&&b.add(f(c));let d=a.headers.get("host");if(null===d||!b.has(f(d)))return h();let g=a.headers.get("origin");if(null!==g){let a;try{a=new URL(g).host}catch{a=null}if(null===a||!b.has(f(a)))return h()}let i=a.headers.get("sec-fetch-site");return null!==i&&"same-origin"!==i&&"none"!==i?h():null}function h(){return d.NextResponse.json({error:"forbidden: cross-origin request"},{status:403})}},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},51455:a=>{a.exports=require("node:fs/promises")},52697:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>N,patchFetch:()=>M,routeModule:()=>I,serverHooks:()=>L,workAsyncStorage:()=>J,workUnitAsyncStorage:()=>K});var d={};c.r(d),c.d(d,{GET:()=>G,POST:()=>H,dynamic:()=>F,runtime:()=>E});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(73024),w=c.n(v),x=c(48161),y=c.n(x),z=c(76760),A=c.n(z),B=c(23211),C=c(35961),D=c(41017);let E="nodejs",F="force-dynamic";async function G(){return B.NextResponse.json((0,D.WD)())}async function H(a){let b,c,d=(0,C.W)(a);if(d)return d;try{b=await a.json()}catch{return B.NextResponse.json({error:"invalid JSON"},{status:400})}let e="string"==typeof b.repoDir?b.repoDir.trim():"";if(!e)return B.NextResponse.json({error:"repository directory is required"},{status:400});let f=A().resolve("~"===e||e.startsWith("~/")?A().join(y().homedir(),e.slice(1)):e);try{c=w().statSync(f)}catch{return B.NextResponse.json({error:`directory does not exist: ${f}`},{status:400})}if(!c.isDirectory())return B.NextResponse.json({error:`not a directory: ${f}`},{status:400});try{let a=(0,D.zN)({...b,repoDir:f});if(!a.workflow)return B.NextResponse.json({error:a.error??"could not create workflow"},{status:a.status??400});return B.NextResponse.json({ok:!0,workflow:a.workflow})}catch(a){return B.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}let I=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/workflows/route",pathname:"/api/workflows",filename:"route",bundlePath:"app/api/workflows/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/live-log-viewer-next/live-log-viewer-next/src/app/api/workflows/route.ts",nextConfigOutput:"standalone",userland:d,...{}}),{workAsyncStorage:J,workUnitAsyncStorage:K,serverHooks:L}=I;function M(){return(0,g.patchFetch)({workAsyncStorage:J,workUnitAsyncStorage:K})}async function N(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),I.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/workflows/route";"/index"===d&&(d="/");let e=await I.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[H]||A.routes[E]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||I.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===I.isDev||!J,N=J&&!M;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await I.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>I.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>I.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await I.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await I.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await I.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[741,813,628,51],()=>b(b.s=52697));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" class="h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en" class="h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"/><link rel="stylesheet" href="/_next/static/css/2db772af912b50a7.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-7dc14fd5ff1227ce.js"/><script src="/_next/static/chunks/4bd1b696-215e5051988c3dde.js" async=""></script><script src="/_next/static/chunks/794-0fc36bf1952fbc29.js" async=""></script><script src="/_next/static/chunks/main-app-e6ff5fbff7d5b38f.js" async=""></script><script src="/_next/static/chunks/680-e2cc45e50038da25.js" async=""></script><script src="/_next/static/chunks/app/page-bdda213b08e4faa2.js" async=""></script><title>Live logs</title><meta name="description" content="Live viewer for Codex/Claude agent logs"/><link rel="icon" href="/favicon.ico?603d046c9a6fdfbb" type="image/x-icon" sizes="16x16"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="h-dvh overflow-hidden font-sans text-[15px]"><div hidden=""><!--$--><!--/$--></div><div class="flex h-full"><aside class="flex w-[248px] shrink-0 flex-col border-r border-line bg-panel"><header class="flex h-10 shrink-0 items-center gap-2 border-b border-line px-4 text-[13.5px] font-bold">Agent logs<button class="inline-flex h-[26px] shrink-0 items-center justify-center rounded-full border border-line bg-panel px-2 text-[10.5px] font-bold text-dim hover:text-ink focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40" title="Interface language" aria-label="Interface language">EN</button><div class="relative ml-auto shrink-0"><button type="button" aria-expanded="false" aria-label="Show a QR code for phone login" class="flex items-center justify-center rounded-[8px] border border-line bg-panel p-1.5 text-dim hover:border-accent/45 hover:text-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-qr-code h-4 w-4" aria-hidden="true"><rect width="5" height="5" x="3" y="3" rx="1"></rect><rect width="5" height="5" x="16" y="3" rx="1"></rect><rect width="5" height="5" x="3" y="16" rx="1"></rect><path d="M21 16h-3a2 2 0 0 0-2 2v3"></path><path d="M21 21v.01"></path><path d="M12 7v3a2 2 0 0 1-2 2H7"></path><path d="M3 12h.01"></path><path d="M12 3h.01"></path><path d="M12 16v.01"></path><path d="M16 12h1"></path><path d="M21 12v.01"></path><path d="M12 21v-1"></path></svg></button></div><button class="inline-flex h-[26px] w-[26px] shrink-0 items-center justify-center rounded-full border border-line bg-panel text-dim hover:text-ink disabled:opacity-45 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40" title="Push requires HTTPS" aria-label="Push requires HTTPS" aria-pressed="false" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bell-off h-3.5 w-3.5" aria-hidden="true"><path d="M10.268 21a2 2 0 0 0 3.464 0"></path><path d="M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742"></path><path d="m2 2 20 20"></path><path d="M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05"></path></svg></button></header><div class="px-2.5 pb-1 pt-2.5"><input class="w-full rounded-[9px] border border-line bg-bg px-2.5 py-1.5 text-[12px] outline-none focus-visible:ring-2 focus-visible:ring-accent/40" placeholder="Filter projects…" value=""/></div><nav class="flex-1 overflow-y-auto px-2 pb-3 pt-1" aria-label="Projects"><button class="mb-0.5 flex w-full items-center gap-2 rounded-[10px] border px-2.5 py-2 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40 border-line bg-bg shadow-card" aria-current="page"><span class="h-2 w-2 shrink-0 rounded-full bg-[#d6d6dd]"></span><span class="min-w-0 flex-1"><span class="block truncate text-[13px] font-bold">Overview</span></span></button><div class="mx-2.5 my-1.5 border-t border-line"></div><div></div><div class="flex items-center justify-center gap-2 px-3 py-4 text-[12px] text-dim"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-loader-circle h-4 w-4 animate-spin" aria-hidden="true"><path d="M21 12a9 9 0 1 1-6.219-8.56"></path></svg>loading…</div></nav></aside><main class="flex min-w-0 flex-1 flex-col"><div class="pointer-events-none fixed right-4 top-4 z-50 flex flex-col items-end gap-2"></div><div class="flex min-h-0 min-w-0 flex-1 flex-col"><div class="flex h-10 shrink-0 items-center gap-2.5 border-b border-line bg-panel px-4"><h1 class="text-[13.5px] font-bold">Overview</h1><span class="text-[11.5px] text-dim">nothing is running right now</span></div><div class="grid flex-1 auto-rows-min gap-2.5 overflow-y-auto p-3" style="grid-template-columns:repeat(3, minmax(0, 1fr))"><div class="col-span-full mt-[20vh] text-center text-dim">No logs yet</div></div></div></main></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-7dc14fd5ff1227ce.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[7121,[],\"\"]\n3:I[4581,[],\"\"]\n4:I[7657,[\"680\",\"static/chunks/680-e2cc45e50038da25.js\",\"974\",\"static/chunks/app/page-bdda213b08e4faa2.js\"],\"Viewer\"]\n5:I[484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\n8:I[484,[],\"ViewportBoundary\"]\na:I[484,[],\"MetadataBoundary\"]\nc:I[7123,[],\"default\",1]\n:HL[\"/_next/static/css/2db772af912b50a7.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/2db772af912b50a7.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"h-full antialiased\",\"children\":[\"$\",\"body\",null,{\"className\":\"h-dvh overflow-hidden font-sans text-[15px]\",\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L4\",null,{}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"dShHonCUOGjh3FGbQydLs\"}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content\"}]]\n"])</script><script>self.__next_f.push([1,"d:I[6869,[],\"IconMark\"]\n7:null\nb:[[\"$\",\"title\",\"0\",{\"children\":\"Live logs\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Live viewer for Codex/Claude agent logs\"}],[\"$\",\"link\",\"2\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?603d046c9a6fdfbb\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"$Ld\",\"3\",{}]]\n"])</script></body></html>
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[7121,[],""]
|
|
3
3
|
3:I[4581,[],""]
|
|
4
|
-
4:I[7657,["680","static/chunks/680-e2cc45e50038da25.js","974","static/chunks/app/page-
|
|
4
|
+
4:I[7657,["680","static/chunks/680-e2cc45e50038da25.js","974","static/chunks/app/page-bdda213b08e4faa2.js"],"Viewer"]
|
|
5
5
|
5:I[484,[],"OutletBoundary"]
|
|
6
6
|
6:"$Sreact.suspense"
|
|
7
7
|
8:I[484,[],"ViewportBoundary"]
|
|
8
8
|
a:I[484,[],"MetadataBoundary"]
|
|
9
9
|
c:I[7123,[],"default",1]
|
|
10
|
-
:HL["/_next/static/css/
|
|
11
|
-
0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/
|
|
10
|
+
:HL["/_next/static/css/2db772af912b50a7.css","style"]
|
|
11
|
+
0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/2db772af912b50a7.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased","children":["$","body",null,{"className":"h-dvh overflow-hidden font-sans text-[15px]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"dShHonCUOGjh3FGbQydLs"}
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}]]
|
|
13
13
|
d:I[6869,[],"IconMark"]
|
|
14
14
|
7:null
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
|
-
2:I[7657,["680","static/chunks/680-e2cc45e50038da25.js","974","static/chunks/app/page-
|
|
2
|
+
2:I[7657,["680","static/chunks/680-e2cc45e50038da25.js","974","static/chunks/app/page-bdda213b08e4faa2.js"],"Viewer"]
|
|
3
3
|
3:I[484,[],"OutletBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[["$","$L2",null,{}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
5
|
+
0:{"rsc":["$","$1","c",{"children":[["$","$L2",null,{}],null,["$","$L3",null,{"children":["$","$4",null,{"name":"Next.MetadataOutlet","children":"$@5"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"dShHonCUOGjh3FGbQydLs"}
|
|
6
6
|
5:null
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[7121,[],""]
|
|
3
3
|
3:I[4581,[],""]
|
|
4
|
-
4:I[7657,["680","static/chunks/680-e2cc45e50038da25.js","974","static/chunks/app/page-
|
|
4
|
+
4:I[7657,["680","static/chunks/680-e2cc45e50038da25.js","974","static/chunks/app/page-bdda213b08e4faa2.js"],"Viewer"]
|
|
5
5
|
5:I[484,[],"OutletBoundary"]
|
|
6
6
|
6:"$Sreact.suspense"
|
|
7
7
|
8:I[484,[],"ViewportBoundary"]
|
|
8
8
|
a:I[484,[],"MetadataBoundary"]
|
|
9
9
|
c:I[7123,[],"default",1]
|
|
10
|
-
:HL["/_next/static/css/
|
|
11
|
-
0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/
|
|
10
|
+
:HL["/_next/static/css/2db772af912b50a7.css","style"]
|
|
11
|
+
0:{"P":null,"c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",16],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/2db772af912b50a7.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"h-full antialiased","children":["$","body",null,{"className":"h-dvh overflow-hidden font-sans text-[15px]","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L4",null,{}],null,["$","$L5",null,{"children":["$","$6",null,{"name":"Next.MetadataOutlet","children":"$@7"}]}]]}],{},null,false,null]},null,false,null],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$6",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],null]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"dShHonCUOGjh3FGbQydLs"}
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}]]
|
|
13
13
|
d:I[6869,[],"IconMark"]
|
|
14
14
|
7:null
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
3:I[484,[],"MetadataBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
5
|
5:I[6869,[],"IconMark"]
|
|
6
|
-
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Live logs"}],["$","meta","1",{"name":"description","content":"Live viewer for Codex/Claude agent logs"}],["$","link","2",{"rel":"icon","href":"/favicon.ico?603d046c9a6fdfbb","type":"image/x-icon","sizes":"16x16"}],["$","$L5","3",{}]]}]}]}],null]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
6
|
+
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"Live logs"}],["$","meta","1",{"name":"description","content":"Live viewer for Codex/Claude agent logs"}],["$","link","2",{"rel":"icon","href":"/favicon.ico?603d046c9a6fdfbb","type":"image/x-icon","sizes":"16x16"}],["$","$L5","3",{}]]}]}]}],null]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"dShHonCUOGjh3FGbQydLs"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[7121,[],""]
|
|
3
3
|
3:I[4581,[],""]
|
|
4
|
-
:HL["/_next/static/css/
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/
|
|
4
|
+
:HL["/_next/static/css/2db772af912b50a7.css","style"]
|
|
5
|
+
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/2db772af912b50a7.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"h-full antialiased","children":["$","body",null,{"className":"h-dvh overflow-hidden font-sans text-[15px]","children":["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"dShHonCUOGjh3FGbQydLs"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
:HL["/_next/static/css/
|
|
2
|
-
0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"
|
|
1
|
+
:HL["/_next/static/css/2db772af912b50a7.css","style"]
|
|
2
|
+
0:{"tree":{"name":"","param":null,"prefetchHints":16,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"dShHonCUOGjh3FGbQydLs"}
|