trybeacon 0.1.33 → 0.1.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +15 -15
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/db/backfill-access/route.js +1 -1
- package/.next/server/app/api/draft/status/route.js +1 -1
- package/.next/server/app/api/init/route.js +1 -1
- package/.next/server/app/api/plan/annotations/route.js +1 -1
- package/.next/server/app/api/preferences/route.js +1 -1
- package/.next/server/app/api/reset/route.js +1 -1
- package/.next/server/app/api/workspace/route.js +1 -1
- package/.next/server/app/docs/page.js +1 -1
- package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/docs.html +1 -1
- package/.next/server/app/docs.rsc +2 -2
- package/.next/server/app/docs.segments/_full.segment.rsc +2 -2
- package/.next/server/app/docs.segments/_head.segment.rsc +1 -1
- package/.next/server/app/docs.segments/_index.segment.rsc +2 -2
- package/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/docs.segments/docs.segment.rsc +1 -1
- package/.next/server/app/feedback/page.js +1 -1
- package/.next/server/app/feedback/page_client-reference-manifest.js +1 -1
- package/.next/server/app/feedback.html +1 -1
- package/.next/server/app/feedback.rsc +2 -2
- package/.next/server/app/feedback.segments/_full.segment.rsc +2 -2
- package/.next/server/app/feedback.segments/_head.segment.rsc +1 -1
- package/.next/server/app/feedback.segments/_index.segment.rsc +2 -2
- package/.next/server/app/feedback.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/feedback.segments/feedback/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/feedback.segments/feedback.segment.rsc +1 -1
- package/.next/server/app/help/page.js +2 -2
- package/.next/server/app/help/page.js.nft.json +1 -1
- package/.next/server/app/help/page_client-reference-manifest.js +1 -1
- package/.next/server/app/help.html +1 -1
- package/.next/server/app/help.rsc +2 -2
- package/.next/server/app/help.segments/_full.segment.rsc +2 -2
- package/.next/server/app/help.segments/_head.segment.rsc +1 -1
- package/.next/server/app/help.segments/_index.segment.rsc +2 -2
- package/.next/server/app/help.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/help.segments/help/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/help.segments/help.segment.rsc +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +2 -2
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/map/page.js +1 -1
- package/.next/server/app/map/page.js.nft.json +1 -1
- package/.next/server/app/map/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/plan/page.js +2 -2
- package/.next/server/app/plan/page.js.nft.json +1 -1
- package/.next/server/app/plan/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page.js +2 -2
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +15 -15
- package/.next/server/chunks/249.js +1 -1
- package/.next/server/chunks/2933.js +1 -1
- package/.next/server/chunks/4378.js +1 -1
- package/.next/server/chunks/4940.js +1 -0
- package/.next/server/chunks/7266.js +1 -0
- package/.next/server/chunks/9213.js +1 -1
- package/.next/server/chunks/9683.js +1 -1
- package/.next/server/chunks/9734.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/6764-ff2754e69d33be8a.js +1 -0
- package/.next/static/chunks/app/map/page-f3aa9e2ca859e0a1.js +1 -0
- package/.next/static/chunks/app/plan/page-056303390782b974.js +1 -0
- package/.next/static/css/496162fa86c30a1d.css +1 -0
- package/.next/trace +38 -38
- package/.next/trace-build +1 -1
- package/dist/bin/beacon.js +9 -6
- package/dist/bin/doctor.js +25 -25
- package/dist/bin/hook.js +22 -22
- package/dist/bin/mcp.js +33 -33
- package/dist/bin/plan.js +25 -25
- package/dist/bin/remove.js +6 -6
- package/dist/bin/uninstall.js +24 -24
- package/dist/lib/release.js +2 -0
- package/dist/lib/semver.js +2 -0
- package/dist/lib/workspaces.js +1 -1
- package/package.json +1 -1
- package/.next/server/chunks/7138.js +0 -1
- package/.next/static/chunks/8252-326851ad274762f5.js +0 -1
- package/.next/static/chunks/app/map/page-ac03f88297a40d47.js +0 -1
- package/.next/static/chunks/app/plan/page-47e880f3e83a2753.js +0 -1
- package/.next/static/css/cb2ba3334a6b2336.css +0 -1
- /package/.next/static/{kJSpkyKRHr2jFBQoOGP8P → OgbjxEMZfqIJgM1cAQ4cs}/_buildManifest.js +0 -0
- /package/.next/static/{kJSpkyKRHr2jFBQoOGP8P → OgbjxEMZfqIJgM1cAQ4cs}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=1288,a.ids=[1288],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},16698:a=>{a.exports=require("node:async_hooks")},19225:(a,b,c)=>{a.exports=c(44870)},26723:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{POST:()=>i});var e=c(72264),f=c(56727),g=c(6716),h=a([e,f]);async function i(a){try{let b=await a.json(),
|
|
1
|
+
"use strict";(()=>{var a={};a.id=1288,a.ids=[1288],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},16698:a=>{a.exports=require("node:async_hooks")},19225:(a,b,c)=>{a.exports=c(44870)},26723:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{POST:()=>i});var e=c(72264),f=c(56727),g=c(6716),h=a([e,f]);async function i(a){try{let b,c=await a.json(),d=a.headers.get(g.Q8);if(d&&(0,g.FF)(d)){let a=(0,g.F2)(d);await (0,g.kO)(a.id),b=a.id}else b=(0,g.Ck)(a);let h=await (0,f.X_)(b,()=>(0,e.kc)(c));return Response.json({ok:!0,...h})}catch(b){let a=b instanceof Error?b.message:"error";return new Response(`Invalid init payload: ${a}`,{status:400})}}[e,f]=h.then?(await h)():h,d()}catch(a){d(a)}})},28855:a=>{a.exports=import("@libsql/client")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31059:(a,b,c)=>{c.d(b,{ie:()=>f});var d=c(37096),e=c(71484);function f(...a){return a[0].columns?new g(a[0].columns,a[0].name):new g(a)}class g{static [d.i]="SQLitePrimaryKeyBuilder";columns;name;constructor(a,b){this.columns=a,this.name=b}build(a){return new h(a,this.columns,this.name)}}class h{constructor(a,b,c){this.table=a,this.columns=b,this.name=c}static [d.i]="SQLitePrimaryKey";columns;name;getName(){return this.name??`${this.table[e.jo.Symbol.Name]}_${this.columns.map(a=>a.name).join("_")}_pk`}}},31421:a=>{a.exports=require("node:child_process")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66469:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{GJ:()=>m});var e=c(73024),f=c(76760),g=c(56727),h=c(45301),i=c(72595),j=a([g,i]);[g,i]=j.then?(await j)():j;let n="\x3c!-- beacon:start --\x3e",o="\x3c!-- beacon:end --\x3e";async function k(){let a=await (0,i.h)(),b=[];try{b=JSON.parse(a.conventions)}catch{b=[]}let c=await g.db.query.node.findMany({where:(a,{eq:b})=>b(a.view,"ARCHITECTURE"),with:{files:{columns:{path:!0}}},orderBy:(a,{asc:b})=>b(a.cluster)}),d=await g.db.query.dbTable.findMany({with:{columns:{orderBy:(a,{asc:b})=>b(a.ord)}},orderBy:(a,{asc:b})=>b(a.name)}),j=await g.db.query.endpoint.findMany({orderBy:(a,{asc:b})=>[b(a.domain),b(a.path)]}),k=function(a){let b={};try{let c=JSON.parse((0,e.readFileSync)((0,f.join)(a,"package.json"),"utf8"));for(let a of["dev","build","test","lint","start"])c.scripts?.[a]&&(b[a]=`npm run ${a}`)}catch{}try{let c=(0,e.readFileSync)((0,f.join)(a,"Makefile"),"utf8");for(let a of["dev","up","build","test","lint"])RegExp(`^${a}:`,"m").test(c)&&(b[a]=`make ${a}`)}catch{}return!b.test&&((0,e.existsSync)((0,f.join)(a,"pyproject.toml"))||(0,e.existsSync)((0,f.join)(a,"requirements.txt")))&&(b.test="pytest"),b}((0,h.jv)()),l=[`## Project: ${(0,h.Qq)()}`];if(a.overview&&l.push("",a.overview),Object.keys(k).length)for(let[a,b]of(l.push("","### Commands"),Object.entries(k)))l.push(`- ${a}: \`${b}\``);if(c.length){l.push("","### Architecture");let a=new Map;for(let b of c){let c=b.cluster??"MISC";a.has(c)||a.set(c,[]),a.get(c).push(b)}for(let[b,c]of a)for(let a of(l.push(`- **${b}**`),c)){let b=a.files.map(a=>a.path).slice(0,6).join(", ");l.push(` - ${a.title}${a.role?` — ${a.role}`:""}${b?` (${b})`:""}`)}}if(d.length)for(let a of(l.push("","### Database"),d))l.push(`- \`${a.name}\`: ${a.columns.map(a=>a.name).slice(0,12).join(", ")}`);if(j.length)for(let a of(l.push("","### Endpoints"),j.slice(0,40)))l.push(`- ${a.method} ${a.path}`);if(b.length)for(let a of(l.push("","### Conventions & gotchas"),b))l.push(`- ${a}`);return l.push("","_Maintained by Beacon — edit outside the markers; this block is regenerated._"),l.join("\n")}function l(a,b,c){let d=b.replaceAll(n,"`beacon:start`").replaceAll(o,"`beacon:end`"),f=`${n}
|
|
2
2
|
${d}
|
|
3
3
|
${o}`,g=(0,e.existsSync)(a)?(0,e.readFileSync)(a,"utf8"):"";g=g.includes(n)&&g.includes(o)?g.replace(RegExp(`${n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}[\\s\\S]*${o.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}`),()=>f):g.trim()?`${g.trim()}
|
|
4
4
|
|
|
@@ -10,4 +10,4 @@ ${i.join("\n\n")}`:""}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},33235:(a
|
|
|
10
10
|
|
|
11
11
|
${e}`),c.length){let a=["## Inline comments",""];for(let b of c){let c=b.excerpt.split("\n").map(a=>`> ${a}`).join("\n");a.push(`${c}
|
|
12
12
|
|
|
13
|
-
${b.comment.trim()}`)}f.push(a.join("\n"))}if(d.length){let a=["## Marked for deletion","","The user marked these passages for removal — drop them from the next plan:",""];for(let b of d){let c=b.excerpt.split("\n").map(a=>`> ${a}`).join("\n");a.push(c),a.push("")}f.push(a.join("\n").trim())}return f.join("\n\n").trim()}(a.annotations,a.globalComment),a.boardEdits??"",!(b=(a.questions??[]).filter(a=>a.question.trim())).length?"":["## Questions to answer before approving",...b.map(a=>`- **${a.target}** — ${a.question.trim()}`)].join("\n")].filter(Boolean).join("\n\n")}function m(){let a=i();return{submitted:a.submitted,feedback:a.submitted?l(a):""}}},72179:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BK:()=>B,CW:()=>D,Gf:()=>u,NK:()=>y,Vs:()=>v,XF:()=>C,iL:()=>t,mk:()=>A,rw:()=>w,zO:()=>x});var e=c(77598),f=c(73024),g=c(76760),h=c(44046),i=c(34216),j=c(56727),k=c(30046),l=c(45301),m=c(32213),n=c(19734),o=c(86548),p=c(24983),q=a([j,n]);function r(){return(0,g.join)((0,l.KS)(),"draft.json")}function s(){return(0,g.join)((0,l.KS)(),"draft-verdict.json")}function t(){try{return JSON.parse((0,f.readFileSync)(r(),"utf8"))}catch{return null}}function u(a,b=0,c=Date.now()){let d=function(a,b,c=0){let d=new Map,f=(0,p.wx)(a.tables.map(a=>({key:a.name,columnCount:a.columns.length}))),g=0,h=a.tables.map(a=>{let b=(0,e.randomUUID)();d.set(a.name,b);let h=f.get(a.name)??{x:0,y:0};return g=Math.max(g,h.y+(0,p.mn)(a.columns.length)),{id:b,name:a.name,domain:a.domain??null,description:a.description??null,x:h.x,y:c+h.y,columns:a.columns.map(a=>({name:a.name,type:a.type,isPk:a.isPk??!1,isFk:a.isFk??!1,nullable:a.nullable??!0,note:a.note??null}))}}),i=a.relations.flatMap(a=>{let b=d.get(a.fromTable),c=d.get(a.toTable);return b&&c?[{id:(0,e.randomUUID)(),fromTableId:b,toTableId:c,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label??`${a.fromColumn} → ${a.toTable}.${a.toColumn}`}]:[]}),j=c+g+280,k=a.endpoints.map((a,b)=>({id:(0,e.randomUUID)(),method:a.method,path:a.path,domain:a.domain??null,description:a.description??null,x:b%3*320+40,y:j+120*Math.floor(b/3),links:a.uses.flatMap(a=>{let b=d.get(a.table);return b?[{tableId:b,access:a.access}]:[]})}));return{proposedAt:b,status:"pending",tables:h,relations:i,endpoints:k}}(a,c,b);return(0,m.q)(r(),d),(0,f.rmSync)(s(),{force:!0}),d}function v(){(0,f.rmSync)(r(),{force:!0})}function w(){(0,f.rmSync)(r(),{force:!0}),(0,f.rmSync)(s(),{force:!0})}function x(a){let b=new Map(a.tables.map(a=>[a.id,a.name])),c=["## Approved schema","","### Tables"];for(let b of a.tables)for(let a of(c.push(`- **${b.name}**${b.domain?` (${b.domain})`:""}`),b.columns)){let b=[a.isPk&&"PK",a.isFk&&"FK",a.nullable?"NULL":"NOT NULL"].filter(Boolean).join(" ");c.push(` - ${a.name} ${a.type}${b?` ${b}`:""}${a.note?` — ${a.note}`:""}`)}if(a.relations.length)for(let d of(c.push("","### Relations (FKs)"),a.relations)){let a=b.get(d.fromTableId)??d.fromTableId,e=b.get(d.toTableId)??d.toTableId;c.push(`- ${a}.${d.fromColumn} → ${e}.${d.toColumn}`)}if(a.endpoints.length)for(let d of(c.push("","### Endpoints"),a.endpoints)){let a=d.links.map(a=>`${b.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`- ${d.method} ${d.path}${a?` — ${a}`:""}`)}return c.join("\n")}function y(a,b){let c=[],d=new Map(a.tables.map(a=>[a.name,a])),e=new Map(b.tables.map(a=>[a.name,a]));for(let a of b.tables)d.has(a.name)||c.push(`added table **${a.name}**`);for(let b of a.tables)e.has(b.name)||c.push(`removed table **${b.name}**`);for(let a of b.tables){let b=d.get(a.name);if(!b)continue;let e=new Map(b.columns.map(a=>[a.name,a])),f=new Map(a.columns.map(a=>[a.name,a]));for(let b of a.columns){let d=e.get(b.name);if(!d){c.push(`added column **${a.name}.${b.name}** (${b.type})`);continue}let f=[];d.type!==b.type&&f.push(`type ${d.type} → ${b.type}`),d.isPk!==b.isPk&&f.push(b.isPk?"now PK":"no longer PK"),d.isFk!==b.isFk&&f.push(b.isFk?"now FK":"no longer FK"),d.nullable!==b.nullable&&f.push(b.nullable?"now accepts NULL":"now NOT NULL"),(d.note??"")!==(b.note??"")&&f.push(`note: "${b.note??""}"`),f.length&&c.push(`changed **${a.name}.${b.name}** — ${f.join("; ")}`)}for(let d of b.columns)f.has(d.name)||c.push(`removed column **${a.name}.${d.name}** (was ${d.type})`)}let f=(a,b)=>`${b.get(a.fromTableId)??a.fromTableId}.${a.fromColumn}→${b.get(a.toTableId)??a.toTableId}.${a.toColumn}`,g=new Map(a.tables.map(a=>[a.id,a.name])),h=new Map(b.tables.map(a=>[a.id,a.name])),i=new Set(a.relations.map(a=>f(a,g))),j=new Set(b.relations.map(a=>f(a,h)));for(let a of j)i.has(a)||c.push(`added relation ${a}`);for(let a of i)j.has(a)||c.push(`removed relation ${a}`);let k=a=>`${a.method} ${a.path}`,l=new Map(a.endpoints.map(a=>[k(a),a])),m=new Map(b.endpoints.map(a=>[k(a),a]));for(let[a,b]of m)if(!l.has(a)){let d=b.links.map(a=>`${h.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`added endpoint **${a}**${d?` — ${d}`:""}`)}for(let[a]of l)m.has(a)||c.push(`removed endpoint **${a}**`);return c}function z(a){(0,m.q)(s(),a)}function A(){let a=t();a&&z({proposedAt:a.proposedAt,status:"discarded",summary:"The user discarded the draft."}),v()}function B(){let a=t();if(a)return{state:"pending",proposedAt:a.proposedAt};let b=function(){try{return JSON.parse((0,f.readFileSync)(s(),"utf8"))}catch{return null}}();return b?{state:b.status,proposedAt:b.proposedAt,summary:b.summary,detail:b.detail}:{state:"none"}}[j,n]=q.then?(await q)():q;let E=h.Ik({proposedAt:h.ai(),status:h.Yj(),tables:h.YO(h.Ik({id:h.Yj(),name:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),columns:h.YO(h.Ik({name:h.Yj().trim().min(1),type:h.Yj(),isPk:h.zM(),isFk:h.zM(),nullable:h.zM(),note:h.Yj().nullable()}))})),relations:h.YO(h.Ik({id:h.Yj(),fromTableId:h.Yj(),toTableId:h.Yj(),fromColumn:h.Yj(),toColumn:h.Yj(),label:h.Yj().nullable()})),endpoints:h.YO(h.Ik({id:h.Yj(),method:h.Yj().trim().min(1),path:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),links:h.YO(h.Ik({tableId:h.Yj(),access:h.Yj()}))}))});async function C(a,b=j.db,c={}){let d=E.parse(a),e=new Map(d.tables.map(a=>[a.id,a.name])),f=new Map,g=c.planId??null;for(let a of d.tables){let[c]=await b.insert(k.dbTable).values({name:a.name,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:k.dbTable.name,set:{domain:a.domain,description:a.description,planId:g}}).returning();f.set(a.name,c.id),await b.delete(k.dbColumn).where((0,i.eq)(k.dbColumn.tableId,c.id)),a.columns.length&&await b.insert(k.dbColumn).values(a.columns.map((a,b)=>({tableId:c.id,name:a.name,type:a.type,isPk:a.isPk,isFk:a.isFk,nullable:a.nullable,note:a.note,ord:b})))}let h=async a=>{let c=e.get(a);if(c)return f.get(c)??null;let d=await b.query.dbTable.findFirst({where:(b,{eq:c})=>c(b.id,a)}).catch(()=>null);return d?d.id:null};for(let a of d.relations){let c=await h(a.fromTableId),d=await h(a.toTableId);c&&d&&(await b.query.dbRelation.findFirst({where:(b,{and:e,eq:f})=>e(f(b.fromTableId,c),f(b.toTableId,d),f(b.fromColumn,a.fromColumn),f(b.toColumn,a.toColumn))})||await b.insert(k.dbRelation).values({fromTableId:c,toTableId:d,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label}))}for(let a of d.endpoints){let[c]=await b.insert(k.endpoint).values({method:a.method,path:a.path,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:[k.endpoint.method,k.endpoint.path],set:{domain:a.domain,description:a.description,planId:g}}).returning();for(let d of(await b.delete(k.endpointTable).where((0,i.eq)(k.endpointTable.endpointId,c.id)),a.links)){let a=await h(d.tableId);a&&await b.insert(k.endpointTable).values({endpointId:c.id,tableId:a,access:d.access}).catch(()=>{})}}let l=`${d.tables.length} table(s), ${d.relations.length} relation(s) and ${d.endpoints.length} endpoint(s) approved and persisted to the schema.`;return z({proposedAt:d.proposedAt,status:"approved",summary:l,detail:x(d)}),v(),await (0,n.Bx)(b),{tables:d.tables.length,relations:d.relations.length,endpoints:d.endpoints.length}}async function D(a=j.db){let b=await a.query.endpoint.findMany({with:{tables:!0}}),c=0;for(let d of b)if("write"===(0,o.P)(d.method))for(let b of d.tables)"read"===b.access&&(await a.update(k.endpointTable).set({access:"write"}).where((0,i.eq)(k.endpointTable.id,b.id)),c++);return c}d()}catch(a){d(a)}})},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},76760:a=>{a.exports=require("node:path")},76968:(a,b,c)=>{c.d(b,{GL:()=>i,Pe:()=>h});var d=c(37096);class e{constructor(a,b){this.name=a,this.unique=b}static [d.i]="SQLiteIndexBuilderOn";on(...a){return new f(this.name,a,this.unique)}}class f{static [d.i]="SQLiteIndexBuilder";config;constructor(a,b,c){this.config={name:a,columns:b,unique:c,where:void 0}}where(a){return this.config.where=a,this}build(a){return new g(this.config,a)}}class g{static [d.i]="SQLiteIndex";config;constructor(a,b){this.config={...a,table:b}}}function h(a){return new e(a,!1)}function i(a){return new e(a,!0)}},77598:a=>{a.exports=require("node:crypto")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86548:(a,b,c)=>{c.d(b,{P:()=>e});let d=new Set(["GET","HEAD","OPTIONS"]);function e(a){return d.has(a.trim().toUpperCase())?"read":"write"}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,9884,3254,5871,4046,9683,9734],()=>b(b.s=18095));module.exports=c})();
|
|
13
|
+
${b.comment.trim()}`)}f.push(a.join("\n"))}if(d.length){let a=["## Marked for deletion","","The user marked these passages for removal — drop them from the next plan:",""];for(let b of d){let c=b.excerpt.split("\n").map(a=>`> ${a}`).join("\n");a.push(c),a.push("")}f.push(a.join("\n").trim())}return f.join("\n\n").trim()}(a.annotations,a.globalComment),a.boardEdits??"",!(b=(a.questions??[]).filter(a=>a.question.trim())).length?"":["## Questions to answer before approving",...b.map(a=>`- **${a.target}** — ${a.question.trim()}`)].join("\n")].filter(Boolean).join("\n\n")}function m(){let a=i();return{submitted:a.submitted,feedback:a.submitted?l(a):""}}},72179:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BK:()=>B,CW:()=>D,Gf:()=>u,NK:()=>y,Vs:()=>v,XF:()=>C,iL:()=>t,mk:()=>A,rw:()=>w,zO:()=>x});var e=c(77598),f=c(73024),g=c(76760),h=c(44046),i=c(34216),j=c(56727),k=c(30046),l=c(45301),m=c(32213),n=c(19734),o=c(86548),p=c(96976),q=a([j,n]);function r(){return(0,g.join)((0,l.KS)(),"draft.json")}function s(){return(0,g.join)((0,l.KS)(),"draft-verdict.json")}function t(){try{return JSON.parse((0,f.readFileSync)(r(),"utf8"))}catch{return null}}function u(a,b=0,c=Date.now()){let d=function(a,b,c=0){let d=new Map;for(let b of a.tables)d.set(b.name,(0,e.randomUUID)());let f=a.endpoints.map(()=>(0,e.randomUUID)()),g=(0,p.kq)(a.tables.map(a=>({id:d.get(a.name),name:a.name,domain:a.domain??null,columnCount:a.columns.length})),a.endpoints.map((a,b)=>({id:f[b],method:a.method,path:a.path,uses:a.uses.flatMap(a=>{let b=d.get(a.table);return b?[{tableId:b}]:[]})}))),h=a.tables.map(a=>{let b=d.get(a.name),e=g.tables.get(b)??{x:0,y:0};return{id:b,name:a.name,domain:a.domain??null,description:a.description??null,x:e.x,y:c+e.y,columns:a.columns.map(a=>({name:a.name,type:a.type,isPk:a.isPk??!1,isFk:a.isFk??!1,nullable:a.nullable??!0,note:a.note??null}))}}),i=a.relations.flatMap(a=>{let b=d.get(a.fromTable),c=d.get(a.toTable);return b&&c?[{id:(0,e.randomUUID)(),fromTableId:b,toTableId:c,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label??`${a.fromColumn} → ${a.toTable}.${a.toColumn}`}]:[]}),j=a.endpoints.map((a,b)=>{let e=f[b],h=g.endpoints.get(e)??{x:0,y:0};return{id:e,method:a.method,path:a.path,domain:a.domain??null,description:a.description??null,x:h.x,y:c+h.y,links:a.uses.flatMap(a=>{let b=d.get(a.table);return b?[{tableId:b,access:a.access}]:[]})}});return{proposedAt:b,status:"pending",tables:h,relations:i,endpoints:j}}(a,c,b);return(0,m.q)(r(),d),(0,f.rmSync)(s(),{force:!0}),d}function v(){(0,f.rmSync)(r(),{force:!0})}function w(){(0,f.rmSync)(r(),{force:!0}),(0,f.rmSync)(s(),{force:!0})}function x(a){let b=new Map(a.tables.map(a=>[a.id,a.name])),c=["## Approved schema","","### Tables"];for(let b of a.tables)for(let a of(c.push(`- **${b.name}**${b.domain?` (${b.domain})`:""}`),b.columns)){let b=[a.isPk&&"PK",a.isFk&&"FK",a.nullable?"NULL":"NOT NULL"].filter(Boolean).join(" ");c.push(` - ${a.name} ${a.type}${b?` ${b}`:""}${a.note?` — ${a.note}`:""}`)}if(a.relations.length)for(let d of(c.push("","### Relations (FKs)"),a.relations)){let a=b.get(d.fromTableId)??d.fromTableId,e=b.get(d.toTableId)??d.toTableId;c.push(`- ${a}.${d.fromColumn} → ${e}.${d.toColumn}`)}if(a.endpoints.length)for(let d of(c.push("","### Endpoints"),a.endpoints)){let a=d.links.map(a=>`${b.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`- ${d.method} ${d.path}${a?` — ${a}`:""}`)}return c.join("\n")}function y(a,b){let c=[],d=new Map(a.tables.map(a=>[a.name,a])),e=new Map(b.tables.map(a=>[a.name,a]));for(let a of b.tables)d.has(a.name)||c.push(`added table **${a.name}**`);for(let b of a.tables)e.has(b.name)||c.push(`removed table **${b.name}**`);for(let a of b.tables){let b=d.get(a.name);if(!b)continue;let e=new Map(b.columns.map(a=>[a.name,a])),f=new Map(a.columns.map(a=>[a.name,a]));for(let b of a.columns){let d=e.get(b.name);if(!d){c.push(`added column **${a.name}.${b.name}** (${b.type})`);continue}let f=[];d.type!==b.type&&f.push(`type ${d.type} → ${b.type}`),d.isPk!==b.isPk&&f.push(b.isPk?"now PK":"no longer PK"),d.isFk!==b.isFk&&f.push(b.isFk?"now FK":"no longer FK"),d.nullable!==b.nullable&&f.push(b.nullable?"now accepts NULL":"now NOT NULL"),(d.note??"")!==(b.note??"")&&f.push(`note: "${b.note??""}"`),f.length&&c.push(`changed **${a.name}.${b.name}** — ${f.join("; ")}`)}for(let d of b.columns)f.has(d.name)||c.push(`removed column **${a.name}.${d.name}** (was ${d.type})`)}let f=(a,b)=>`${b.get(a.fromTableId)??a.fromTableId}.${a.fromColumn}→${b.get(a.toTableId)??a.toTableId}.${a.toColumn}`,g=new Map(a.tables.map(a=>[a.id,a.name])),h=new Map(b.tables.map(a=>[a.id,a.name])),i=new Set(a.relations.map(a=>f(a,g))),j=new Set(b.relations.map(a=>f(a,h)));for(let a of j)i.has(a)||c.push(`added relation ${a}`);for(let a of i)j.has(a)||c.push(`removed relation ${a}`);let k=a=>`${a.method} ${a.path}`,l=new Map(a.endpoints.map(a=>[k(a),a])),m=new Map(b.endpoints.map(a=>[k(a),a]));for(let[a,b]of m)if(!l.has(a)){let d=b.links.map(a=>`${h.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`added endpoint **${a}**${d?` — ${d}`:""}`)}for(let[a]of l)m.has(a)||c.push(`removed endpoint **${a}**`);return c}function z(a){(0,m.q)(s(),a)}function A(){let a=t();a&&z({proposedAt:a.proposedAt,status:"discarded",summary:"The user discarded the draft."}),v()}function B(){let a=t();if(a)return{state:"pending",proposedAt:a.proposedAt};let b=function(){try{return JSON.parse((0,f.readFileSync)(s(),"utf8"))}catch{return null}}();return b?{state:b.status,proposedAt:b.proposedAt,summary:b.summary,detail:b.detail}:{state:"none"}}[j,n]=q.then?(await q)():q;let E=h.Ik({proposedAt:h.ai(),status:h.Yj(),tables:h.YO(h.Ik({id:h.Yj(),name:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),columns:h.YO(h.Ik({name:h.Yj().trim().min(1),type:h.Yj(),isPk:h.zM(),isFk:h.zM(),nullable:h.zM(),note:h.Yj().nullable()}))})),relations:h.YO(h.Ik({id:h.Yj(),fromTableId:h.Yj(),toTableId:h.Yj(),fromColumn:h.Yj(),toColumn:h.Yj(),label:h.Yj().nullable()})),endpoints:h.YO(h.Ik({id:h.Yj(),method:h.Yj().trim().min(1),path:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),links:h.YO(h.Ik({tableId:h.Yj(),access:h.Yj()}))}))});async function C(a,b=j.db,c={}){let d=E.parse(a),e=new Map(d.tables.map(a=>[a.id,a.name])),f=new Map,g=c.planId??null;for(let a of d.tables){let[c]=await b.insert(k.dbTable).values({name:a.name,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:k.dbTable.name,set:{domain:a.domain,description:a.description,planId:g}}).returning();f.set(a.name,c.id),await b.delete(k.dbColumn).where((0,i.eq)(k.dbColumn.tableId,c.id)),a.columns.length&&await b.insert(k.dbColumn).values(a.columns.map((a,b)=>({tableId:c.id,name:a.name,type:a.type,isPk:a.isPk,isFk:a.isFk,nullable:a.nullable,note:a.note,ord:b})))}let h=async a=>{let c=e.get(a);if(c)return f.get(c)??null;let d=await b.query.dbTable.findFirst({where:(b,{eq:c})=>c(b.id,a)}).catch(()=>null);return d?d.id:null};for(let a of d.relations){let c=await h(a.fromTableId),d=await h(a.toTableId);c&&d&&(await b.query.dbRelation.findFirst({where:(b,{and:e,eq:f})=>e(f(b.fromTableId,c),f(b.toTableId,d),f(b.fromColumn,a.fromColumn),f(b.toColumn,a.toColumn))})||await b.insert(k.dbRelation).values({fromTableId:c,toTableId:d,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label}))}for(let a of d.endpoints){let[c]=await b.insert(k.endpoint).values({method:a.method,path:a.path,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:[k.endpoint.method,k.endpoint.path],set:{domain:a.domain,description:a.description,planId:g}}).returning();for(let d of(await b.delete(k.endpointTable).where((0,i.eq)(k.endpointTable.endpointId,c.id)),a.links)){let a=await h(d.tableId);a&&await b.insert(k.endpointTable).values({endpointId:c.id,tableId:a,access:d.access}).catch(()=>{})}}let l=`${d.tables.length} table(s), ${d.relations.length} relation(s) and ${d.endpoints.length} endpoint(s) approved and persisted to the schema.`;return z({proposedAt:d.proposedAt,status:"approved",summary:l,detail:x(d)}),v(),await (0,n.Bx)(b),{tables:d.tables.length,relations:d.relations.length,endpoints:d.endpoints.length}}async function D(a=j.db){let b=await a.query.endpoint.findMany({with:{tables:!0}}),c=0;for(let d of b)if("write"===(0,o.P)(d.method))for(let b of d.tables)"read"===b.access&&(await a.update(k.endpointTable).set({access:"write"}).where((0,i.eq)(k.endpointTable.id,b.id)),c++);return c}d()}catch(a){d(a)}})},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},76760:a=>{a.exports=require("node:path")},76968:(a,b,c)=>{c.d(b,{GL:()=>i,Pe:()=>h});var d=c(37096);class e{constructor(a,b){this.name=a,this.unique=b}static [d.i]="SQLiteIndexBuilderOn";on(...a){return new f(this.name,a,this.unique)}}class f{static [d.i]="SQLiteIndexBuilder";config;constructor(a,b,c){this.config={name:a,columns:b,unique:c,where:void 0}}where(a){return this.config.where=a,this}build(a){return new g(this.config,a)}}class g{static [d.i]="SQLiteIndex";config;constructor(a,b){this.config={...a,table:b}}}function h(a){return new e(a,!1)}function i(a){return new e(a,!0)}},77598:a=>{a.exports=require("node:crypto")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86548:(a,b,c)=>{c.d(b,{P:()=>e});let d=new Set(["GET","HEAD","OPTIONS"]);function e(a){return d.has(a.trim().toUpperCase())?"read":"write"}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,9884,3254,5871,4046,9683,9734],()=>b(b.s=18095));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=9560,a.ids=[9560],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},6716:(a,b,c)=>{"use strict";c.d(b,{AV:()=>B,Ck:()=>z,Dk:()=>x,FF:()=>p,K4:()=>q,Lm:()=>G,Nx:()=>m,Q8:()=>A,T_:()=>l,UP:()=>t,VB:()=>w,WQ:()=>v,X_:()=>D,_g:()=>u,kO:()=>H,oW:()=>i,p1:()=>E,qh:()=>r});var d=c(16698);c(31421);var e=c(77598),f=c(73024),g=c(48161),h=c(76760);function i(){return process.env.BEACON_HOME||(0,h.join)((0,g.homedir)(),".beacon")}function j(){return(0,h.join)(i(),"workspaces.json")}function k(a){return(0,e.createHash)("sha256").update(a).digest("hex").slice(0,12)}function l(a){return(0,h.join)(i(),a)}function m(a){return`file:${(0,h.join)(l(a),"db.sqlite")}`}function n(){try{let a=JSON.parse((0,f.readFileSync)(j(),"utf8"));return Array.isArray(a)?a:[]}catch{return[]}}function o(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(j(),JSON.stringify(a,null,2))}function p(){return n().sort((a,b)=>b.lastOpenedAt.localeCompare(a.lastOpenedAt))}function q(a){return n().find(b=>b.id===a)??null}function r(a){o(n().filter(b=>b.id!==a)),t()===a&&u(p()[0]?.id??null)}function s(){return(0,h.join)(i(),"active")}function t(){try{return(0,f.readFileSync)(s(),"utf8").trim()||null}catch{return null}}function u(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(s(),a??"")}function v(){let a=t();return a?q(a):null}function w(){let a=E()??t();return a?q(a):null}let x="beacon_ws";function y(a,b){let c=a.headers.get("cookie");if(!c)return null;for(let a of c.split(";")){let c=a.indexOf("=");if(-1!==c&&a.slice(0,c).trim()===b)return decodeURIComponent(a.slice(c+1).trim())}return null}function z(a){let b=a.headers.get("x-beacon-workspace");if(b&&q(b))return b;let c=y(a,x);return c&&q(c)?c:null}let A="x-beacon-workspace-path";async function B(a){let b=a.headers.get("x-beacon-workspace");if(b&&q(b))return b;let c=a.headers.get(A);if(c&&(!b||k(c)===b)){let a=function(a,b=new Date().toISOString()){let c=k(a),d=n(),e=d.find(a=>a.id===c),g={id:c,path:a,name:e?.name||(0,h.basename)(a),lastOpenedAt:b},i=[g,...d.filter(a=>a.id!==c)];return(0,f.mkdirSync)(l(c),{recursive:!0}),o(i),g}(c);return await H(a.id),a.id}let d=y(a,x);return d&&q(d)?d:null}let C=new d.AsyncLocalStorage;function D(a,b){return a?C.run(a,b):b()}function E(){return C.getStore()??null}let F=new Set;function G(a){F.delete((0,h.join)(l(a),"db.sqlite"))}async function H(a){let b=l(a),d=(0,h.join)(b,"db.sqlite"),e=(0,f.existsSync)(d);if(e&&F.has(d))return{ok:!0,created:!1,migrated:!1};try{(0,f.mkdirSync)(b,{recursive:!0});let{provisionDb:g}=await Promise.all([c.e(9884),c.e(5871),c.e(5258)]).then(c.bind(c,35258)),h=await g(m(a));return F.add(d),{ok:!0,created:!e,migrated:e&&h.migrated}}catch(a){return{ok:!1,created:!1,migrated:!1,error:a instanceof Error?a.message:String(a)}}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},15870:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>L,patchFetch:()=>K,routeModule:()=>G,serverHooks:()=>J,workAsyncStorage:()=>H,workUnitAsyncStorage:()=>I});var d={};c.r(d),c.d(d,{GET:()=>D,POST:()=>F,dynamic:()=>C});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(44046),w=c(73024),x=c(76760),y=c(6716);let z=["default","acceptEdits","bypassPermissions","auto"];function A(){return(0,x.join)((0,y.oW)(),"preferences.json")}function B(){try{var a;let b=JSON.parse((0,w.readFileSync)(A(),"utf8"));return{planApprovalMode:(a=b.planApprovalMode,"string"==typeof a&&z.includes(a))?b.planApprovalMode:void 0,planApprovalModeConfigured:!0===b.planApprovalModeConfigured}}catch{return{}}}let C="force-dynamic";async function D(){let a=B();return Response.json({planApprovalMode:a.planApprovalMode??null,planApprovalModeConfigured:a.planApprovalModeConfigured??!1})}let E=v.Ik({planApprovalMode:v.k5(z)});async function F(a){try{var b;let c,{planApprovalMode:d}=E.parse(await a.json()),e=(b={planApprovalMode:d,planApprovalModeConfigured:!0},c={...B(),...b},(0,w.mkdirSync)((0,y.oW)(),{recursive:!0}),(0,w.writeFileSync)(A(),JSON.stringify(c,null,2)),c);return Response.json({ok:!0,planApprovalMode:e.planApprovalMode,planApprovalModeConfigured:e.planApprovalModeConfigured})}catch(a){return new Response(`invalid preference: ${a instanceof Error?a.message:"error"}`,{status:400})}}let G=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/preferences/route",pathname:"/api/preferences",filename:"route",bundlePath:"app/api/preferences/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/beacon/beacon/app/api/preferences/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:H,workUnitAsyncStorage:I,serverHooks:J}=G;function K(){return(0,g.patchFetch)({workAsyncStorage:H,workUnitAsyncStorage:I})}async function L(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),G.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/preferences/route";"/index"===d&&(d="/");let e=await G.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:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||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[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||G.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===G.isDev||!J,N=J&&!M;H&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,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 G.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)=>G.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=>G.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 G.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await G.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 G.onRequestError(a,b,{routerKind:"App Router",routePath:I,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}}},16698:a=>{"use strict";a.exports=require("node:async_hooks")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28855:a=>{"use strict";a.exports=import("@libsql/client")},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")},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")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,4046],()=>b(b.s=15870));module.exports=c})();
|
|
1
|
+
(()=>{var a={};a.id=9560,a.ids=[9560],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},6716:(a,b,c)=>{"use strict";c.d(b,{AV:()=>J,Ck:()=>H,Dk:()=>F,F2:()=>y,FF:()=>l,K4:()=>w,Lm:()=>O,Nx:()=>s,Q8:()=>I,T_:()=>r,UP:()=>B,VB:()=>E,VO:()=>q,WQ:()=>D,X_:()=>L,Y2:()=>v,_g:()=>C,kO:()=>P,oW:()=>i,p1:()=>M,qh:()=>z});var d=c(16698);c(31421);var e=c(77598),f=c(73024),g=c(48161),h=c(76760);function i(){return process.env.BEACON_HOME||(0,h.join)((0,g.homedir)(),".beacon")}function j(){return(0,h.join)(i(),"workspaces.json")}function k(a){return(0,e.createHash)("sha256").update(a).digest("hex").slice(0,12)}function l(a){let b=(0,h.resolve)(a);return b!==(0,h.resolve)((0,g.homedir)())&&b!==(0,h.parse)(b).root}function m(){return(0,h.join)(i(),"deleted.json")}function n(){try{let a=JSON.parse((0,f.readFileSync)(m(),"utf8"));return Array.isArray(a)?a:[]}catch{return[]}}function o(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(m(),JSON.stringify(a,null,2))}function p(a){return n().includes(a)}function q(a){let b=n();b.includes(a)||o([...b,a])}function r(a){return(0,h.join)(i(),a)}function s(a){return`file:${(0,h.join)(r(a),"db.sqlite")}`}function t(){try{let a=JSON.parse((0,f.readFileSync)(j(),"utf8"));return Array.isArray(a)?a:[]}catch{return[]}}function u(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(j(),JSON.stringify(a,null,2))}function v(){return t().sort((a,b)=>b.lastOpenedAt.localeCompare(a.lastOpenedAt))}function w(a){return t().find(b=>b.id===a)??null}function x(a,b,c=new Date().toISOString()){if(!l(a))throw Error(`beacon: refusing to register a non-repo path as a workspace: ${a}`);let d=k(a);if(p(d))throw Error(`beacon: workspace ${d} (${a}) was deleted — run \`beacon\` or /beacon-init to re-add it`);let e=t(),g=e.find(a=>a.id===d),i={id:d,path:a,name:b||g?.name||(0,h.basename)(a),lastOpenedAt:c},j=[i,...e.filter(a=>a.id!==d)];return(0,f.mkdirSync)(r(d),{recursive:!0}),u(j),i}function y(a,b){var c;let d;return c=k(a),(d=n()).includes(c)&&o(d.filter(a=>a!==c)),x(a,b)}function z(a){u(t().filter(b=>b.id!==a)),B()===a&&C(v()[0]?.id??null)}function A(){return(0,h.join)(i(),"active")}function B(){try{return(0,f.readFileSync)(A(),"utf8").trim()||null}catch{return null}}function C(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(A(),a??"")}function D(){let a=B();return a?w(a):null}function E(){let a=M()??B();return a?w(a):null}let F="beacon_ws";function G(a,b){let c=a.headers.get("cookie");if(!c)return null;for(let a of c.split(";")){let c=a.indexOf("=");if(-1!==c&&a.slice(0,c).trim()===b)return decodeURIComponent(a.slice(c+1).trim())}return null}function H(a){let b=a.headers.get("x-beacon-workspace");if(b&&w(b))return b;let c=G(a,F);return c&&w(c)?c:null}let I="x-beacon-workspace-path";async function J(a){let b=a.headers.get("x-beacon-workspace");if(b&&w(b))return b;let c=a.headers.get(I);if(c&&l(c)&&!p(k(c))&&(!b||k(c)===b)){let a=x(c);return await P(a.id),a.id}let d=G(a,F);return d&&w(d)?d:null}let K=new d.AsyncLocalStorage;function L(a,b){return a?K.run(a,b):b()}function M(){return K.getStore()??null}let N=new Set;function O(a){N.delete((0,h.join)(r(a),"db.sqlite"))}async function P(a){let b=r(a),d=(0,h.join)(b,"db.sqlite"),e=(0,f.existsSync)(d);if(e&&N.has(d))return{ok:!0,created:!1,migrated:!1};try{(0,f.mkdirSync)(b,{recursive:!0});let{provisionDb:g}=await Promise.all([c.e(9884),c.e(5871),c.e(5258)]).then(c.bind(c,35258)),h=await g(s(a));return N.add(d),{ok:!0,created:!e,migrated:e&&h.migrated}}catch(a){return{ok:!1,created:!1,migrated:!1,error:a instanceof Error?a.message:String(a)}}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},15870:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>L,patchFetch:()=>K,routeModule:()=>G,serverHooks:()=>J,workAsyncStorage:()=>H,workUnitAsyncStorage:()=>I});var d={};c.r(d),c.d(d,{GET:()=>D,POST:()=>F,dynamic:()=>C});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(44046),w=c(73024),x=c(76760),y=c(6716);let z=["default","acceptEdits","bypassPermissions","auto"];function A(){return(0,x.join)((0,y.oW)(),"preferences.json")}function B(){try{var a;let b=JSON.parse((0,w.readFileSync)(A(),"utf8"));return{planApprovalMode:(a=b.planApprovalMode,"string"==typeof a&&z.includes(a))?b.planApprovalMode:void 0,planApprovalModeConfigured:!0===b.planApprovalModeConfigured}}catch{return{}}}let C="force-dynamic";async function D(){let a=B();return Response.json({planApprovalMode:a.planApprovalMode??null,planApprovalModeConfigured:a.planApprovalModeConfigured??!1})}let E=v.Ik({planApprovalMode:v.k5(z)});async function F(a){try{var b;let c,{planApprovalMode:d}=E.parse(await a.json()),e=(b={planApprovalMode:d,planApprovalModeConfigured:!0},c={...B(),...b},(0,w.mkdirSync)((0,y.oW)(),{recursive:!0}),(0,w.writeFileSync)(A(),JSON.stringify(c,null,2)),c);return Response.json({ok:!0,planApprovalMode:e.planApprovalMode,planApprovalModeConfigured:e.planApprovalModeConfigured})}catch(a){return new Response(`invalid preference: ${a instanceof Error?a.message:"error"}`,{status:400})}}let G=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/preferences/route",pathname:"/api/preferences",filename:"route",bundlePath:"app/api/preferences/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/beacon/beacon/app/api/preferences/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:H,workUnitAsyncStorage:I,serverHooks:J}=G;function K(){return(0,g.patchFetch)({workAsyncStorage:H,workUnitAsyncStorage:I})}async function L(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),G.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/preferences/route";"/index"===d&&(d="/");let e=await G.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:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||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[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||G.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===G.isDev||!J,N=J&&!M;H&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,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 G.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)=>G.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=>G.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 G.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await G.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 G.onRequestError(a,b,{routerKind:"App Router",routePath:I,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}}},16698:a=>{"use strict";a.exports=require("node:async_hooks")},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},28855:a=>{"use strict";a.exports=import("@libsql/client")},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")},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")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,4046],()=>b(b.s=15870));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=3979,a.ids=[3979],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")},10833:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});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(20402),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/reset/route",pathname:"/api/reset",filename:"route",bundlePath:"app/api/reset/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/beacon/beacon/app/api/reset/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/reset/route";"/index"===d&&(d="/");let e=await z.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:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.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&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.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 z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.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)=>z.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=>z.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 z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,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"),A&&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 z.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}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},16698:a=>{a.exports=require("node:async_hooks")},19225:(a,b,c)=>{a.exports=c(44870)},20402:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{POST:()=>i,dynamic:()=>h});var e=c(46419),f=c(68204),g=a([e,f]);[e,f]=g.then?(await g)():g;let h="force-dynamic",i=(0,f.d)(async()=>{try{return await (0,e.J)(),Response.json({ok:!0})}catch(a){return new Response(`reset failed: ${a instanceof Error?a.message:"error"}`,{status:500})}});d()}catch(a){d(a)}})},28855:a=>{a.exports=import("@libsql/client")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31059:(a,b,c)=>{c.d(b,{ie:()=>f});var d=c(37096),e=c(71484);function f(...a){return a[0].columns?new g(a[0].columns,a[0].name):new g(a)}class g{static [d.i]="SQLitePrimaryKeyBuilder";columns;name;constructor(a,b){this.columns=a,this.name=b}build(a){return new h(a,this.columns,this.name)}}class h{constructor(a,b,c){this.table=a,this.columns=b,this.name=c}static [d.i]="SQLitePrimaryKey";columns;name;getName(){return this.name??`${this.table[e.jo.Symbol.Name]}_${this.columns.map(a=>a.name).join("_")}_pk`}}},31421:a=>{a.exports=require("node:child_process")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46419:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{J:()=>j});var e=c(56727),f=c(30046),g=c(19734),h=c(72179),i=a([e,g,h]);async function j(a=e.db){await a.delete(f.endpointTable),await a.delete(f.endpoint),await a.delete(f.dbRelation),await a.delete(f.dbColumn),await a.delete(f.dbTable),await a.delete(f.draftRelation),await a.delete(f.draftColumn),await a.delete(f.draftTable),(0,h.rw)(),await a.delete(f.edge),await a.delete(f.note),await a.delete(f.nodeFile),await a.delete(f.node),await a.delete(f.tag),await a.delete(f.projectMeta),await a.update(f.appSetting).set({currentFeatureId:null}),await (0,g.Bx)(a)}[e,g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},48161:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68204:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(6716),f=c(56727),g=a([f]);async function h(a){if(a)return void await (0,e.kO)(a);let b=(0,e.UP)();b?await (0,e.kO)(b):await (0,f.e$)()}function i(a){return async(b,...c)=>{let d=await (0,e.AV)(b);return await h(d),(0,e.X_)(d,async()=>a(b,...c))}}f=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},72179:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BK:()=>B,CW:()=>D,Gf:()=>u,NK:()=>y,Vs:()=>v,XF:()=>C,iL:()=>t,mk:()=>A,rw:()=>w,zO:()=>x});var e=c(77598),f=c(73024),g=c(76760),h=c(44046),i=c(34216),j=c(56727),k=c(30046),l=c(45301),m=c(32213),n=c(19734),o=c(86548),p=c(24983),q=a([j,n]);function r(){return(0,g.join)((0,l.KS)(),"draft.json")}function s(){return(0,g.join)((0,l.KS)(),"draft-verdict.json")}function t(){try{return JSON.parse((0,f.readFileSync)(r(),"utf8"))}catch{return null}}function u(a,b=0,c=Date.now()){let d=function(a,b,c=0){let d=new Map,f=(0,p.wx)(a.tables.map(a=>({key:a.name,columnCount:a.columns.length}))),g=0,h=a.tables.map(a=>{let b=(0,e.randomUUID)();d.set(a.name,b);let h=f.get(a.name)??{x:0,y:0};return g=Math.max(g,h.y+(0,p.mn)(a.columns.length)),{id:b,name:a.name,domain:a.domain??null,description:a.description??null,x:h.x,y:c+h.y,columns:a.columns.map(a=>({name:a.name,type:a.type,isPk:a.isPk??!1,isFk:a.isFk??!1,nullable:a.nullable??!0,note:a.note??null}))}}),i=a.relations.flatMap(a=>{let b=d.get(a.fromTable),c=d.get(a.toTable);return b&&c?[{id:(0,e.randomUUID)(),fromTableId:b,toTableId:c,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label??`${a.fromColumn} → ${a.toTable}.${a.toColumn}`}]:[]}),j=c+g+280,k=a.endpoints.map((a,b)=>({id:(0,e.randomUUID)(),method:a.method,path:a.path,domain:a.domain??null,description:a.description??null,x:b%3*320+40,y:j+120*Math.floor(b/3),links:a.uses.flatMap(a=>{let b=d.get(a.table);return b?[{tableId:b,access:a.access}]:[]})}));return{proposedAt:b,status:"pending",tables:h,relations:i,endpoints:k}}(a,c,b);return(0,m.q)(r(),d),(0,f.rmSync)(s(),{force:!0}),d}function v(){(0,f.rmSync)(r(),{force:!0})}function w(){(0,f.rmSync)(r(),{force:!0}),(0,f.rmSync)(s(),{force:!0})}function x(a){let b=new Map(a.tables.map(a=>[a.id,a.name])),c=["## Approved schema","","### Tables"];for(let b of a.tables)for(let a of(c.push(`- **${b.name}**${b.domain?` (${b.domain})`:""}`),b.columns)){let b=[a.isPk&&"PK",a.isFk&&"FK",a.nullable?"NULL":"NOT NULL"].filter(Boolean).join(" ");c.push(` - ${a.name} ${a.type}${b?` ${b}`:""}${a.note?` — ${a.note}`:""}`)}if(a.relations.length)for(let d of(c.push("","### Relations (FKs)"),a.relations)){let a=b.get(d.fromTableId)??d.fromTableId,e=b.get(d.toTableId)??d.toTableId;c.push(`- ${a}.${d.fromColumn} → ${e}.${d.toColumn}`)}if(a.endpoints.length)for(let d of(c.push("","### Endpoints"),a.endpoints)){let a=d.links.map(a=>`${b.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`- ${d.method} ${d.path}${a?` — ${a}`:""}`)}return c.join("\n")}function y(a,b){let c=[],d=new Map(a.tables.map(a=>[a.name,a])),e=new Map(b.tables.map(a=>[a.name,a]));for(let a of b.tables)d.has(a.name)||c.push(`added table **${a.name}**`);for(let b of a.tables)e.has(b.name)||c.push(`removed table **${b.name}**`);for(let a of b.tables){let b=d.get(a.name);if(!b)continue;let e=new Map(b.columns.map(a=>[a.name,a])),f=new Map(a.columns.map(a=>[a.name,a]));for(let b of a.columns){let d=e.get(b.name);if(!d){c.push(`added column **${a.name}.${b.name}** (${b.type})`);continue}let f=[];d.type!==b.type&&f.push(`type ${d.type} → ${b.type}`),d.isPk!==b.isPk&&f.push(b.isPk?"now PK":"no longer PK"),d.isFk!==b.isFk&&f.push(b.isFk?"now FK":"no longer FK"),d.nullable!==b.nullable&&f.push(b.nullable?"now accepts NULL":"now NOT NULL"),(d.note??"")!==(b.note??"")&&f.push(`note: "${b.note??""}"`),f.length&&c.push(`changed **${a.name}.${b.name}** — ${f.join("; ")}`)}for(let d of b.columns)f.has(d.name)||c.push(`removed column **${a.name}.${d.name}** (was ${d.type})`)}let f=(a,b)=>`${b.get(a.fromTableId)??a.fromTableId}.${a.fromColumn}→${b.get(a.toTableId)??a.toTableId}.${a.toColumn}`,g=new Map(a.tables.map(a=>[a.id,a.name])),h=new Map(b.tables.map(a=>[a.id,a.name])),i=new Set(a.relations.map(a=>f(a,g))),j=new Set(b.relations.map(a=>f(a,h)));for(let a of j)i.has(a)||c.push(`added relation ${a}`);for(let a of i)j.has(a)||c.push(`removed relation ${a}`);let k=a=>`${a.method} ${a.path}`,l=new Map(a.endpoints.map(a=>[k(a),a])),m=new Map(b.endpoints.map(a=>[k(a),a]));for(let[a,b]of m)if(!l.has(a)){let d=b.links.map(a=>`${h.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`added endpoint **${a}**${d?` — ${d}`:""}`)}for(let[a]of l)m.has(a)||c.push(`removed endpoint **${a}**`);return c}function z(a){(0,m.q)(s(),a)}function A(){let a=t();a&&z({proposedAt:a.proposedAt,status:"discarded",summary:"The user discarded the draft."}),v()}function B(){let a=t();if(a)return{state:"pending",proposedAt:a.proposedAt};let b=function(){try{return JSON.parse((0,f.readFileSync)(s(),"utf8"))}catch{return null}}();return b?{state:b.status,proposedAt:b.proposedAt,summary:b.summary,detail:b.detail}:{state:"none"}}[j,n]=q.then?(await q)():q;let E=h.Ik({proposedAt:h.ai(),status:h.Yj(),tables:h.YO(h.Ik({id:h.Yj(),name:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),columns:h.YO(h.Ik({name:h.Yj().trim().min(1),type:h.Yj(),isPk:h.zM(),isFk:h.zM(),nullable:h.zM(),note:h.Yj().nullable()}))})),relations:h.YO(h.Ik({id:h.Yj(),fromTableId:h.Yj(),toTableId:h.Yj(),fromColumn:h.Yj(),toColumn:h.Yj(),label:h.Yj().nullable()})),endpoints:h.YO(h.Ik({id:h.Yj(),method:h.Yj().trim().min(1),path:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),links:h.YO(h.Ik({tableId:h.Yj(),access:h.Yj()}))}))});async function C(a,b=j.db,c={}){let d=E.parse(a),e=new Map(d.tables.map(a=>[a.id,a.name])),f=new Map,g=c.planId??null;for(let a of d.tables){let[c]=await b.insert(k.dbTable).values({name:a.name,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:k.dbTable.name,set:{domain:a.domain,description:a.description,planId:g}}).returning();f.set(a.name,c.id),await b.delete(k.dbColumn).where((0,i.eq)(k.dbColumn.tableId,c.id)),a.columns.length&&await b.insert(k.dbColumn).values(a.columns.map((a,b)=>({tableId:c.id,name:a.name,type:a.type,isPk:a.isPk,isFk:a.isFk,nullable:a.nullable,note:a.note,ord:b})))}let h=async a=>{let c=e.get(a);if(c)return f.get(c)??null;let d=await b.query.dbTable.findFirst({where:(b,{eq:c})=>c(b.id,a)}).catch(()=>null);return d?d.id:null};for(let a of d.relations){let c=await h(a.fromTableId),d=await h(a.toTableId);c&&d&&(await b.query.dbRelation.findFirst({where:(b,{and:e,eq:f})=>e(f(b.fromTableId,c),f(b.toTableId,d),f(b.fromColumn,a.fromColumn),f(b.toColumn,a.toColumn))})||await b.insert(k.dbRelation).values({fromTableId:c,toTableId:d,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label}))}for(let a of d.endpoints){let[c]=await b.insert(k.endpoint).values({method:a.method,path:a.path,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:[k.endpoint.method,k.endpoint.path],set:{domain:a.domain,description:a.description,planId:g}}).returning();for(let d of(await b.delete(k.endpointTable).where((0,i.eq)(k.endpointTable.endpointId,c.id)),a.links)){let a=await h(d.tableId);a&&await b.insert(k.endpointTable).values({endpointId:c.id,tableId:a,access:d.access}).catch(()=>{})}}let l=`${d.tables.length} table(s), ${d.relations.length} relation(s) and ${d.endpoints.length} endpoint(s) approved and persisted to the schema.`;return z({proposedAt:d.proposedAt,status:"approved",summary:l,detail:x(d)}),v(),await (0,n.Bx)(b),{tables:d.tables.length,relations:d.relations.length,endpoints:d.endpoints.length}}async function D(a=j.db){let b=await a.query.endpoint.findMany({with:{tables:!0}}),c=0;for(let d of b)if("write"===(0,o.P)(d.method))for(let b of d.tables)"read"===b.access&&(await a.update(k.endpointTable).set({access:"write"}).where((0,i.eq)(k.endpointTable.id,b.id)),c++);return c}d()}catch(a){d(a)}})},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},76760:a=>{a.exports=require("node:path")},76968:(a,b,c)=>{c.d(b,{GL:()=>i,Pe:()=>h});var d=c(37096);class e{constructor(a,b){this.name=a,this.unique=b}static [d.i]="SQLiteIndexBuilderOn";on(...a){return new f(this.name,a,this.unique)}}class f{static [d.i]="SQLiteIndexBuilder";config;constructor(a,b,c){this.config={name:a,columns:b,unique:c,where:void 0}}where(a){return this.config.where=a,this}build(a){return new g(this.config,a)}}class g{static [d.i]="SQLiteIndex";config;constructor(a,b){this.config={...a,table:b}}}function h(a){return new e(a,!1)}function i(a){return new e(a,!0)}},77598:a=>{a.exports=require("node:crypto")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86548:(a,b,c)=>{c.d(b,{P:()=>e});let d=new Set(["GET","HEAD","OPTIONS"]);function e(a){return d.has(a.trim().toUpperCase())?"read":"write"}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,9884,3254,5871,4046,9683,9734],()=>b(b.s=10833));module.exports=c})();
|
|
1
|
+
"use strict";(()=>{var a={};a.id=3979,a.ids=[3979],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")},10833:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});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(20402),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/reset/route",pathname:"/api/reset",filename:"route",bundlePath:"app/api/reset/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/beacon/beacon/app/api/reset/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/reset/route";"/index"===d&&(d="/");let e=await z.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:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.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&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.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 z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.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)=>z.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=>z.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 z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,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"),A&&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 z.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}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},16698:a=>{a.exports=require("node:async_hooks")},19225:(a,b,c)=>{a.exports=c(44870)},20402:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{POST:()=>i,dynamic:()=>h});var e=c(46419),f=c(68204),g=a([e,f]);[e,f]=g.then?(await g)():g;let h="force-dynamic",i=(0,f.d)(async()=>{try{return await (0,e.J)(),Response.json({ok:!0})}catch(a){return new Response(`reset failed: ${a instanceof Error?a.message:"error"}`,{status:500})}});d()}catch(a){d(a)}})},28855:a=>{a.exports=import("@libsql/client")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31059:(a,b,c)=>{c.d(b,{ie:()=>f});var d=c(37096),e=c(71484);function f(...a){return a[0].columns?new g(a[0].columns,a[0].name):new g(a)}class g{static [d.i]="SQLitePrimaryKeyBuilder";columns;name;constructor(a,b){this.columns=a,this.name=b}build(a){return new h(a,this.columns,this.name)}}class h{constructor(a,b,c){this.table=a,this.columns=b,this.name=c}static [d.i]="SQLitePrimaryKey";columns;name;getName(){return this.name??`${this.table[e.jo.Symbol.Name]}_${this.columns.map(a=>a.name).join("_")}_pk`}}},31421:a=>{a.exports=require("node:child_process")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46419:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{J:()=>j});var e=c(56727),f=c(30046),g=c(19734),h=c(72179),i=a([e,g,h]);async function j(a=e.db){await a.delete(f.endpointTable),await a.delete(f.endpoint),await a.delete(f.dbRelation),await a.delete(f.dbColumn),await a.delete(f.dbTable),await a.delete(f.draftRelation),await a.delete(f.draftColumn),await a.delete(f.draftTable),(0,h.rw)(),await a.delete(f.edge),await a.delete(f.note),await a.delete(f.nodeFile),await a.delete(f.node),await a.delete(f.tag),await a.delete(f.projectMeta),await a.update(f.appSetting).set({currentFeatureId:null}),await (0,g.Bx)(a)}[e,g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},48161:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68204:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{d:()=>i});var e=c(6716),f=c(56727),g=a([f]);async function h(a){if(a)return void await (0,e.kO)(a);let b=(0,e.UP)();b?await (0,e.kO)(b):await (0,f.e$)()}function i(a){return async(b,...c)=>{let d=await (0,e.AV)(b);return await h(d),(0,e.X_)(d,async()=>a(b,...c))}}f=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},72179:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{BK:()=>B,CW:()=>D,Gf:()=>u,NK:()=>y,Vs:()=>v,XF:()=>C,iL:()=>t,mk:()=>A,rw:()=>w,zO:()=>x});var e=c(77598),f=c(73024),g=c(76760),h=c(44046),i=c(34216),j=c(56727),k=c(30046),l=c(45301),m=c(32213),n=c(19734),o=c(86548),p=c(96976),q=a([j,n]);function r(){return(0,g.join)((0,l.KS)(),"draft.json")}function s(){return(0,g.join)((0,l.KS)(),"draft-verdict.json")}function t(){try{return JSON.parse((0,f.readFileSync)(r(),"utf8"))}catch{return null}}function u(a,b=0,c=Date.now()){let d=function(a,b,c=0){let d=new Map;for(let b of a.tables)d.set(b.name,(0,e.randomUUID)());let f=a.endpoints.map(()=>(0,e.randomUUID)()),g=(0,p.kq)(a.tables.map(a=>({id:d.get(a.name),name:a.name,domain:a.domain??null,columnCount:a.columns.length})),a.endpoints.map((a,b)=>({id:f[b],method:a.method,path:a.path,uses:a.uses.flatMap(a=>{let b=d.get(a.table);return b?[{tableId:b}]:[]})}))),h=a.tables.map(a=>{let b=d.get(a.name),e=g.tables.get(b)??{x:0,y:0};return{id:b,name:a.name,domain:a.domain??null,description:a.description??null,x:e.x,y:c+e.y,columns:a.columns.map(a=>({name:a.name,type:a.type,isPk:a.isPk??!1,isFk:a.isFk??!1,nullable:a.nullable??!0,note:a.note??null}))}}),i=a.relations.flatMap(a=>{let b=d.get(a.fromTable),c=d.get(a.toTable);return b&&c?[{id:(0,e.randomUUID)(),fromTableId:b,toTableId:c,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label??`${a.fromColumn} → ${a.toTable}.${a.toColumn}`}]:[]}),j=a.endpoints.map((a,b)=>{let e=f[b],h=g.endpoints.get(e)??{x:0,y:0};return{id:e,method:a.method,path:a.path,domain:a.domain??null,description:a.description??null,x:h.x,y:c+h.y,links:a.uses.flatMap(a=>{let b=d.get(a.table);return b?[{tableId:b,access:a.access}]:[]})}});return{proposedAt:b,status:"pending",tables:h,relations:i,endpoints:j}}(a,c,b);return(0,m.q)(r(),d),(0,f.rmSync)(s(),{force:!0}),d}function v(){(0,f.rmSync)(r(),{force:!0})}function w(){(0,f.rmSync)(r(),{force:!0}),(0,f.rmSync)(s(),{force:!0})}function x(a){let b=new Map(a.tables.map(a=>[a.id,a.name])),c=["## Approved schema","","### Tables"];for(let b of a.tables)for(let a of(c.push(`- **${b.name}**${b.domain?` (${b.domain})`:""}`),b.columns)){let b=[a.isPk&&"PK",a.isFk&&"FK",a.nullable?"NULL":"NOT NULL"].filter(Boolean).join(" ");c.push(` - ${a.name} ${a.type}${b?` ${b}`:""}${a.note?` — ${a.note}`:""}`)}if(a.relations.length)for(let d of(c.push("","### Relations (FKs)"),a.relations)){let a=b.get(d.fromTableId)??d.fromTableId,e=b.get(d.toTableId)??d.toTableId;c.push(`- ${a}.${d.fromColumn} → ${e}.${d.toColumn}`)}if(a.endpoints.length)for(let d of(c.push("","### Endpoints"),a.endpoints)){let a=d.links.map(a=>`${b.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`- ${d.method} ${d.path}${a?` — ${a}`:""}`)}return c.join("\n")}function y(a,b){let c=[],d=new Map(a.tables.map(a=>[a.name,a])),e=new Map(b.tables.map(a=>[a.name,a]));for(let a of b.tables)d.has(a.name)||c.push(`added table **${a.name}**`);for(let b of a.tables)e.has(b.name)||c.push(`removed table **${b.name}**`);for(let a of b.tables){let b=d.get(a.name);if(!b)continue;let e=new Map(b.columns.map(a=>[a.name,a])),f=new Map(a.columns.map(a=>[a.name,a]));for(let b of a.columns){let d=e.get(b.name);if(!d){c.push(`added column **${a.name}.${b.name}** (${b.type})`);continue}let f=[];d.type!==b.type&&f.push(`type ${d.type} → ${b.type}`),d.isPk!==b.isPk&&f.push(b.isPk?"now PK":"no longer PK"),d.isFk!==b.isFk&&f.push(b.isFk?"now FK":"no longer FK"),d.nullable!==b.nullable&&f.push(b.nullable?"now accepts NULL":"now NOT NULL"),(d.note??"")!==(b.note??"")&&f.push(`note: "${b.note??""}"`),f.length&&c.push(`changed **${a.name}.${b.name}** — ${f.join("; ")}`)}for(let d of b.columns)f.has(d.name)||c.push(`removed column **${a.name}.${d.name}** (was ${d.type})`)}let f=(a,b)=>`${b.get(a.fromTableId)??a.fromTableId}.${a.fromColumn}→${b.get(a.toTableId)??a.toTableId}.${a.toColumn}`,g=new Map(a.tables.map(a=>[a.id,a.name])),h=new Map(b.tables.map(a=>[a.id,a.name])),i=new Set(a.relations.map(a=>f(a,g))),j=new Set(b.relations.map(a=>f(a,h)));for(let a of j)i.has(a)||c.push(`added relation ${a}`);for(let a of i)j.has(a)||c.push(`removed relation ${a}`);let k=a=>`${a.method} ${a.path}`,l=new Map(a.endpoints.map(a=>[k(a),a])),m=new Map(b.endpoints.map(a=>[k(a),a]));for(let[a,b]of m)if(!l.has(a)){let d=b.links.map(a=>`${h.get(a.tableId)??a.tableId} (${a.access})`).join(", ");c.push(`added endpoint **${a}**${d?` — ${d}`:""}`)}for(let[a]of l)m.has(a)||c.push(`removed endpoint **${a}**`);return c}function z(a){(0,m.q)(s(),a)}function A(){let a=t();a&&z({proposedAt:a.proposedAt,status:"discarded",summary:"The user discarded the draft."}),v()}function B(){let a=t();if(a)return{state:"pending",proposedAt:a.proposedAt};let b=function(){try{return JSON.parse((0,f.readFileSync)(s(),"utf8"))}catch{return null}}();return b?{state:b.status,proposedAt:b.proposedAt,summary:b.summary,detail:b.detail}:{state:"none"}}[j,n]=q.then?(await q)():q;let E=h.Ik({proposedAt:h.ai(),status:h.Yj(),tables:h.YO(h.Ik({id:h.Yj(),name:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),columns:h.YO(h.Ik({name:h.Yj().trim().min(1),type:h.Yj(),isPk:h.zM(),isFk:h.zM(),nullable:h.zM(),note:h.Yj().nullable()}))})),relations:h.YO(h.Ik({id:h.Yj(),fromTableId:h.Yj(),toTableId:h.Yj(),fromColumn:h.Yj(),toColumn:h.Yj(),label:h.Yj().nullable()})),endpoints:h.YO(h.Ik({id:h.Yj(),method:h.Yj().trim().min(1),path:h.Yj().trim().min(1),domain:h.Yj().nullable(),description:h.Yj().nullable(),x:h.ai(),y:h.ai(),links:h.YO(h.Ik({tableId:h.Yj(),access:h.Yj()}))}))});async function C(a,b=j.db,c={}){let d=E.parse(a),e=new Map(d.tables.map(a=>[a.id,a.name])),f=new Map,g=c.planId??null;for(let a of d.tables){let[c]=await b.insert(k.dbTable).values({name:a.name,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:k.dbTable.name,set:{domain:a.domain,description:a.description,planId:g}}).returning();f.set(a.name,c.id),await b.delete(k.dbColumn).where((0,i.eq)(k.dbColumn.tableId,c.id)),a.columns.length&&await b.insert(k.dbColumn).values(a.columns.map((a,b)=>({tableId:c.id,name:a.name,type:a.type,isPk:a.isPk,isFk:a.isFk,nullable:a.nullable,note:a.note,ord:b})))}let h=async a=>{let c=e.get(a);if(c)return f.get(c)??null;let d=await b.query.dbTable.findFirst({where:(b,{eq:c})=>c(b.id,a)}).catch(()=>null);return d?d.id:null};for(let a of d.relations){let c=await h(a.fromTableId),d=await h(a.toTableId);c&&d&&(await b.query.dbRelation.findFirst({where:(b,{and:e,eq:f})=>e(f(b.fromTableId,c),f(b.toTableId,d),f(b.fromColumn,a.fromColumn),f(b.toColumn,a.toColumn))})||await b.insert(k.dbRelation).values({fromTableId:c,toTableId:d,fromColumn:a.fromColumn,toColumn:a.toColumn,label:a.label}))}for(let a of d.endpoints){let[c]=await b.insert(k.endpoint).values({method:a.method,path:a.path,domain:a.domain,description:a.description,source:"MANUAL",planId:g,x:a.x,y:a.y}).onConflictDoUpdate({target:[k.endpoint.method,k.endpoint.path],set:{domain:a.domain,description:a.description,planId:g}}).returning();for(let d of(await b.delete(k.endpointTable).where((0,i.eq)(k.endpointTable.endpointId,c.id)),a.links)){let a=await h(d.tableId);a&&await b.insert(k.endpointTable).values({endpointId:c.id,tableId:a,access:d.access}).catch(()=>{})}}let l=`${d.tables.length} table(s), ${d.relations.length} relation(s) and ${d.endpoints.length} endpoint(s) approved and persisted to the schema.`;return z({proposedAt:d.proposedAt,status:"approved",summary:l,detail:x(d)}),v(),await (0,n.Bx)(b),{tables:d.tables.length,relations:d.relations.length,endpoints:d.endpoints.length}}async function D(a=j.db){let b=await a.query.endpoint.findMany({with:{tables:!0}}),c=0;for(let d of b)if("write"===(0,o.P)(d.method))for(let b of d.tables)"read"===b.access&&(await a.update(k.endpointTable).set({access:"write"}).where((0,i.eq)(k.endpointTable.id,b.id)),c++);return c}d()}catch(a){d(a)}})},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},76760:a=>{a.exports=require("node:path")},76968:(a,b,c)=>{c.d(b,{GL:()=>i,Pe:()=>h});var d=c(37096);class e{constructor(a,b){this.name=a,this.unique=b}static [d.i]="SQLiteIndexBuilderOn";on(...a){return new f(this.name,a,this.unique)}}class f{static [d.i]="SQLiteIndexBuilder";config;constructor(a,b,c){this.config={name:a,columns:b,unique:c,where:void 0}}where(a){return this.config.where=a,this}build(a){return new g(this.config,a)}}class g{static [d.i]="SQLiteIndex";config;constructor(a,b){this.config={...a,table:b}}}function h(a){return new e(a,!1)}function i(a){return new e(a,!0)}},77598:a=>{a.exports=require("node:crypto")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86548:(a,b,c)=>{c.d(b,{P:()=>e});let d=new Set(["GET","HEAD","OPTIONS"]);function e(a){return d.has(a.trim().toUpperCase())?"read":"write"}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,9884,3254,5871,4046,9683,9734],()=>b(b.s=10833));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=1361,a.ids=[1361],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3409:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});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(82296),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/workspace/route",pathname:"/api/workspace",filename:"route",bundlePath:"app/api/workspace/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/beacon/beacon/app/api/workspace/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/workspace/route";"/index"===d&&(d="/");let e=await z.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:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.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&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.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 z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.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)=>z.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=>z.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 z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,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"),A&&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 z.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}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},16698:a=>{a.exports=require("node:async_hooks")},19225:(a,b,c)=>{a.exports=c(44870)},28855:a=>{a.exports=import("@libsql/client")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},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")},52969:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{b:()=>j});var e=c(73024),f=c(6716),g=c(56727),h=c(94490),i=a([g,h]);async function j(a){if(!(0,f.K4)(a))return{ok:!1,removed:!1,fallbackId:(0,f.UP)(),error:"unknown workspace"};(0,f.qh)(a),await (0,h.Wn)(a),(0,g.dI)((0,f.Nx)(a)),(0,f.Lm)(a);try{(0,e.rmSync)((0,f.T_)(a),{recursive:!0,force:!0})}catch(a){return{ok:!1,removed:!0,fallbackId:(0,f.UP)(),error:a instanceof Error?a.message:String(a)}}return{ok:!0,removed:!0,fallbackId:(0,f.UP)()}}[g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},82296:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>k,GET:()=>i,POST:()=>j,dynamic:()=>l});var e=c(6716),f=c(56727),g=c(52969),h=a([f,g]);[f,g]=h.then?(await h)():h;let l="force-dynamic";async function i(a){return Response.json({workspaces:(0,e.FF)(),active:(0,e.Ck)(a)??(0,e.UP)()})}async function j(a){let{id:b}=await a.json();if("string"!=typeof b||!b)return new Response("id required",{status:400});if(!(0,e.K4)(b))return new Response("unknown workspace",{status:404});let c=await (0,e.kO)(b);if(!c.ok)return Response.json({ok:!1,error:c.error},{status:500});(c.created||c.migrated)&&(0,f.sc)((0,e.Nx)(b)),(0,e._g)(b);let d=Response.json({ok:!0,healed:c.created||c.migrated});return d.headers.set("set-cookie",`${e.Dk}=${b}; Path=/; Max-Age=31536000; SameSite=Lax`),d}async function k(a){let{id:b}=await a.json();if("string"!=typeof b||!b)return new Response("id required",{status:400});let c=await (0,g.b)(b);if(!c.removed)return new Response("unknown workspace",{status:404});if(!c.ok)return Response.json({ok:!1,error:c.error},{status:500});if(c.fallbackId){let a=await (0,e.kO)(c.fallbackId);(a.created||a.migrated)&&(0,f.sc)((0,e.Nx)(c.fallbackId))}else await (0,f.e$)();let d=Response.json({ok:!0,fallbackId:c.fallbackId});return d.headers.set("set-cookie",c.fallbackId?`${e.Dk}=${c.fallbackId}; Path=/; Max-Age=31536000; SameSite=Lax`:`${e.Dk}=; Path=/; Max-Age=0; SameSite=Lax`),d}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,9884,3254,5871,4046,9683,9734,9213],()=>b(b.s=3409));module.exports=c})();
|
|
1
|
+
"use strict";(()=>{var a={};a.id=1361,a.ids=[1361],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3409:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});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(82296),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/workspace/route",pathname:"/api/workspace",filename:"route",bundlePath:"app/api/workspace/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/beacon/beacon/app/api/workspace/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/workspace/route";"/index"===d&&(d="/");let e=await z.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:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.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&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.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 z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.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)=>z.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=>z.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 z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,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"),A&&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 z.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}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},16698:a=>{a.exports=require("node:async_hooks")},19225:(a,b,c)=>{a.exports=c(44870)},28855:a=>{a.exports=import("@libsql/client")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{a.exports=require("node:child_process")},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")},52969:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{b:()=>j});var e=c(73024),f=c(6716),g=c(56727),h=c(94490),i=a([g,h]);async function j(a){if(!(0,f.K4)(a))return{ok:!1,removed:!1,fallbackId:(0,f.UP)(),error:"unknown workspace"};(0,f.qh)(a),(0,f.VO)(a),await (0,h.Wn)(a),(0,g.dI)((0,f.Nx)(a)),(0,f.Lm)(a);try{(0,e.rmSync)((0,f.T_)(a),{recursive:!0,force:!0})}catch(a){return{ok:!1,removed:!0,fallbackId:(0,f.UP)(),error:a instanceof Error?a.message:String(a)}}return{ok:!0,removed:!0,fallbackId:(0,f.UP)()}}[g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73024:a=>{a.exports=require("node:fs")},73136:a=>{a.exports=require("node:url")},76760:a=>{a.exports=require("node:path")},77598:a=>{a.exports=require("node:crypto")},82296:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>k,GET:()=>i,POST:()=>j,dynamic:()=>l});var e=c(6716),f=c(56727),g=c(52969),h=a([f,g]);[f,g]=h.then?(await h)():h;let l="force-dynamic";async function i(a){return Response.json({workspaces:(0,e.Y2)(),active:(0,e.Ck)(a)??(0,e.UP)()})}async function j(a){let{id:b}=await a.json();if("string"!=typeof b||!b)return new Response("id required",{status:400});if(!(0,e.K4)(b))return new Response("unknown workspace",{status:404});let c=await (0,e.kO)(b);if(!c.ok)return Response.json({ok:!1,error:c.error},{status:500});(c.created||c.migrated)&&(0,f.sc)((0,e.Nx)(b)),(0,e._g)(b);let d=Response.json({ok:!0,healed:c.created||c.migrated});return d.headers.set("set-cookie",`${e.Dk}=${b}; Path=/; Max-Age=31536000; SameSite=Lax`),d}async function k(a){let{id:b}=await a.json();if("string"!=typeof b||!b)return new Response("id required",{status:400});let c=await (0,g.b)(b);if(!c.removed)return new Response("unknown workspace",{status:404});if(!c.ok)return Response.json({ok:!1,error:c.error},{status:500});if(c.fallbackId){let a=await (0,e.kO)(c.fallbackId);(a.created||a.migrated)&&(0,f.sc)((0,e.Nx)(c.fallbackId))}else await (0,f.e$)();let d=Response.json({ok:!0,fallbackId:c.fallbackId});return d.headers.set("set-cookie",c.fallbackId?`${e.Dk}=${c.fallbackId}; Path=/; Max-Age=31536000; SameSite=Lax`:`${e.Dk}=; Path=/; Max-Age=0; SameSite=Lax`),d}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,9884,3254,5871,4046,9683,9734,9213],()=>b(b.s=3409));module.exports=c})();
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var a={};a.id=9040,a.ids=[9040],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")},6716:(a,b,c)=>{"use strict";c.d(b,{AV:()=>B,Ck:()=>z,Dk:()=>x,FF:()=>p,K4:()=>q,Lm:()=>G,Nx:()=>m,Q8:()=>A,T_:()=>l,UP:()=>t,VB:()=>w,WQ:()=>v,X_:()=>D,_g:()=>u,kO:()=>H,oW:()=>i,p1:()=>E,qh:()=>r});var d=c(16698);c(31421);var e=c(77598),f=c(73024),g=c(48161),h=c(76760);function i(){return process.env.BEACON_HOME||(0,h.join)((0,g.homedir)(),".beacon")}function j(){return(0,h.join)(i(),"workspaces.json")}function k(a){return(0,e.createHash)("sha256").update(a).digest("hex").slice(0,12)}function l(a){return(0,h.join)(i(),a)}function m(a){return`file:${(0,h.join)(l(a),"db.sqlite")}`}function n(){try{let a=JSON.parse((0,f.readFileSync)(j(),"utf8"));return Array.isArray(a)?a:[]}catch{return[]}}function o(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(j(),JSON.stringify(a,null,2))}function p(){return n().sort((a,b)=>b.lastOpenedAt.localeCompare(a.lastOpenedAt))}function q(a){return n().find(b=>b.id===a)??null}function r(a){o(n().filter(b=>b.id!==a)),t()===a&&u(p()[0]?.id??null)}function s(){return(0,h.join)(i(),"active")}function t(){try{return(0,f.readFileSync)(s(),"utf8").trim()||null}catch{return null}}function u(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(s(),a??"")}function v(){let a=t();return a?q(a):null}function w(){let a=E()??t();return a?q(a):null}let x="beacon_ws";function y(a,b){let c=a.headers.get("cookie");if(!c)return null;for(let a of c.split(";")){let c=a.indexOf("=");if(-1!==c&&a.slice(0,c).trim()===b)return decodeURIComponent(a.slice(c+1).trim())}return null}function z(a){let b=a.headers.get("x-beacon-workspace");if(b&&q(b))return b;let c=y(a,x);return c&&q(c)?c:null}let A="x-beacon-workspace-path";async function B(a){let b=a.headers.get("x-beacon-workspace");if(b&&q(b))return b;let c=a.headers.get(A);if(c&&(!b||k(c)===b)){let a=function(a,b=new Date().toISOString()){let c=k(a),d=n(),e=d.find(a=>a.id===c),g={id:c,path:a,name:e?.name||(0,h.basename)(a),lastOpenedAt:b},i=[g,...d.filter(a=>a.id!==c)];return(0,f.mkdirSync)(l(c),{recursive:!0}),o(i),g}(c);return await H(a.id),a.id}let d=y(a,x);return d&&q(d)?d:null}let C=new d.AsyncLocalStorage;function D(a,b){return a?C.run(a,b):b()}function E(){return C.getStore()??null}let F=new Set;function G(a){F.delete((0,h.join)(l(a),"db.sqlite"))}async function H(a){let b=l(a),d=(0,h.join)(b,"db.sqlite"),e=(0,f.existsSync)(d);if(e&&F.has(d))return{ok:!0,created:!1,migrated:!1};try{(0,f.mkdirSync)(b,{recursive:!0});let{provisionDb:g}=await Promise.all([c.e(9884),c.e(5871),c.e(5258)]).then(c.bind(c,35258)),h=await g(m(a));return F.add(d),{ok:!0,created:!e,migrated:e&&h.migrated}}catch(a){return{ok:!1,created:!1,migrated:!1,error:a instanceof Error?a.message:String(a)}}}},7929:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>O,handler:()=>Q,routeModule:()=>P});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(14965),o=c(63747),p=c(24235),q=c(23938),r=c(261),s=c(66758),t=c(77243),u=c(26713),v=c(37527),w=c(22820),x=c(88216),y=c(47929),z=c(79551),A=c(71797),B=c(89125),C=c(86439),D=c(77068),E=c(27269),F=c(37525),G=c(61287),H=c(81494),I=c(70722),J=c(70753),K=c(43954),L=c(17891),M={};for(let a in G)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(M[a]=()=>G[a]);c.d(b,M);let N={children:["",{children:["docs",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,15113)),"/home/runner/work/beacon/beacon/app/docs/page.tsx"]}]},{"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,7667))).default(a)],openGraph:[],twitter:[],manifest:void 0}},[]]},{layout:[()=>Promise.resolve().then(c.bind(c,23704)),"/home/runner/work/beacon/beacon/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,7667))).default(a)],openGraph:[],twitter:[],manifest:void 0}},[]]}.children,O={require:c,loadChunk:()=>Promise.resolve()},P=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/docs/page",pathname:"/docs",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:N},distDir:".next",relativeProjectDir:""});async function Q(a,b,d){var M,R,S,T,U;d.requestMeta&&(0,h.setRequestMeta)(a,d.requestMeta),P.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let V=!!(0,h.getRequestMeta)(a,"minimalMode"),W="/docs/page";"/index"===W&&(W="/");let X=await P.prepare(a,b,{srcPage:W,multiZoneDraftMode:!1});if(!X)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Y,query:Z,params:$,pageIsDynamic:_,buildManifest:aa,nextFontManifest:ab,reactLoadableManifest:ac,serverActionsManifest:ad,clientReferenceManifest:ae,subresourceIntegrityManifest:af,prerenderManifest:ag,isDraftMode:ah,resolvedPathname:ai,revalidateOnlyGenerated:aj,routerServerContext:ak,nextConfig:al,parsedUrl:am,interceptionRoutePatterns:an,deploymentId:ao,clientAssetToken:ap}=X,aq=(0,r.normalizeAppPath)(W),{isOnDemandRevalidate:ar}=X,as=al.experimental.ppr&&!al.cacheComponents&&(0,K.isInterceptionRouteAppPath)(ai)?null:P.match(ai,ag),at=(null==as?void 0:as.route)??null,au=!!ag.routes[ai],av=a.headers["user-agent"]||"",aw=(0,u.getBotType)(av),ax=(0,q.isHtmlBotRequest)(a),ay=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],az=(0,h.getRequestMeta)(a,"isRSCRequest")??(0,n.f)(a.headers[t.RSC_HEADER]),aA=(0,s.getIsPossibleServerAction)(a),aB=(0,m.checkIsAppPPREnabled)(al.experimental.ppr),aC=a.headers[y.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,h.getRequestMeta)(a,"postponed")&&V&&aB&&aA&&aC&&"string"==typeof aC){let e=parseInt(aC,10),{maxPostponedStateSize:f,maxPostponedStateSizeBytes:g}=(0,E.getMaxPostponedStateSize)(al.experimental.maxPostponedStateSize);if(!isNaN(e)&&e>0){if(e>g)return b.statusCode=413,b.end((0,E.getPostponedStateExceededErrorMessage)(f)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let i="1 MB",j=(null==(U=al.experimental.serverActions)?void 0:U.bodySizeLimit)??i,k=e+(j!==i?c(95726).parse(j):1048576),l=await (0,E.readBodyWithSizeLimit)(a,k);if(null===l)return b.statusCode=413,b.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;if(l.length>=e){let b=l.subarray(0,e).toString("utf8");(0,h.addRequestMeta)(a,"postponed",b);let c=l.subarray(e);(0,h.addRequestMeta)(a,"actionBody",c)}else throw Object.defineProperty(Error(`invariant: expected ${e} bytes of postponed state but only received ${l.length} bytes`),"__NEXT_ERROR_CODE",{value:"E979",enumerable:!1,configurable:!0})}}if(!(0,h.getRequestMeta)(a,"postponed")&&aB&&"1"===a.headers[y.NEXT_RESUME_HEADER]&&"POST"===a.method){let{maxPostponedStateSize:c,maxPostponedStateSizeBytes:e}=(0,E.getMaxPostponedStateSize)(al.experimental.maxPostponedStateSize),f=await (0,E.readBodyWithSizeLimit)(a,e);if(null===f)return b.statusCode=413,b.end((0,E.getPostponedStateExceededErrorMessage)(c)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let g=f.toString("utf8");(0,h.addRequestMeta)(a,"postponed",g)}let aD=!0===P.isDev||!0===al.experimental.exposeTestingApiInProductionBuild,aE=aD&&("1"===a.headers[t.NEXT_INSTANT_PREFETCH_HEADER]||!(0,n.f)(a.headers[t.RSC_HEADER])&&"string"==typeof a.headers.cookie&&a.headers.cookie.includes(t.NEXT_INSTANT_TEST_COOKIE+"=")),aF=(aB||aE)&&((null==(M=ag.routes[aq]??ag.dynamicRoutes[aq])?void 0:M.renderingMode)==="PARTIALLY_STATIC"||aE&&(aD||(null==ak?void 0:ak.experimentalTestProxy)===!0)),aG=aE&&aF,aH=aG&&!0===P.isDev,aI=!1,aJ=aF?(0,h.getRequestMeta)(a,"postponed"):void 0,aK=null==(R=ag.routes[ai])?void 0:R.prefetchDataRoute,aL=aF&&az&&!ay&&!aK;V&&(aL=aL&&!!aJ);let aM=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),aN=(!aw||!aF)&&(!av||(0,q.shouldServeStreamingMetadata)(av,al.htmlLimitedBots)),aO=!!((at||au||ag.routes[aq])&&!(aw&&aF)),aP=aF&&!0===al.cacheComponents,aQ=!0===P.isDev||!aO||"string"==typeof aJ||(aP&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aL&&!V:aL),aR=!!aw&&aF,aS=(null==at?void 0:at.remainingPrerenderableParams)??[],aT=(null==at?void 0:at.fallback)===null&&((null==(S=at.fallbackRootParams)?void 0:S.length)??0)>0,aU=null;if(!ah&&aO&&!aQ&&!aA&&!aJ&&!aL){let a=as?"string"==typeof(null==at?void 0:at.fallback)?at.fallback:as.source:null;if(!0===al.experimental.partialFallbacks&&a&&(null==at?void 0:at.fallbackRouteParams)&&!aT){if(aS.length>0){let b,c=(b=new Map(aS.map(a=>[a.paramName,a])),a.split("/").map(a=>{let c=(0,L.getSegmentParam)(a);if(!c)return a;let d=b.get(c.paramName);if(!d)return a;let e=null==$?void 0:$[d.paramName];if(!e)return a;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return a.replace((0,o.buildDynamicSegmentPlaceholder)(d),f)}).join("/")||"/");aU=c!==a?c:null}}else aU=ai}let aV=aU;!aV&&(P.isDev||aO&&_&&(null==at?void 0:at.fallbackRouteParams)&&!aA)&&(aV=ai),P.isDev||ah||!aO||!az||aL||(0,k.d)(a.headers);let aW={...G,tree:N,handler:Q,routeModule:P,__next_app__:O};ad&&ae&&(0,p.setManifestsSingleton)({page:W,clientReferenceManifest:ae,serverActionsManifest:ad});let aX=a.method||"GET",aY=(0,g.getTracer)(),aZ=aY.getActiveScopeSpan(),a$=!!(null==ak?void 0:ak.isWrappedByNextServer),a_=!0===al.experimental.partialFallbacks&&aS.length>0?(null==at||null==(T=at.fallbackRouteParams)?void 0:T.filter(a=>!aS.some(b=>b.paramName===a.paramName)))??[]:[],a0=async()=>((null==ak?void 0:ak.render404)?await ak.render404(a,b,am,!1):b.end("This page could not be found"),null);try{let k,m=P.getVaryHeader(ai,an);b.setHeader("Vary",m);let n=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return P.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aY.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aX} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a),k&&k!==c&&(k.setAttribute("http.route",d),k.updateName(a))}else c.updateName(`${aX} ${W}`)})},p=(0,h.getRequestMeta)(a,"incrementalCache")||await P.getIncrementalCache(a,al,ag,V);null==p||p.resetRequestCache(),globalThis.__incrementalCache=p;let q=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let k={query:Z,params:$,page:aq,sharedContext:{buildId:Y,deploymentId:ao,clientAssetToken:ap},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aW,Component:(0,j.T)(aW),params:$,routeModule:P,page:W,postponed:f,shouldWaitOnAllReady:aR,serveStreamingMetadata:aN,supportsDynamicResponse:"string"==typeof f||aQ,buildManifest:aa,nextFontManifest:ab,reactLoadableManifest:ac,subresourceIntegrityManifest:af,setCacheStatus:null==ak?void 0:ak.setCacheStatus,setIsrStatus:null==ak?void 0:ak.setIsrStatus,setReactDebugChannel:null==ak?void 0:ak.setReactDebugChannel,sendErrorsToBrowser:null==ak?void 0:ak.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),P.relativeProjectDir),isDraftMode:ah,botType:aw,isOnDemandRevalidate:ar,isPossibleServerAction:aA,assetPrefix:al.assetPrefix,nextConfigOutput:al.output,crossOrigin:al.crossOrigin,trailingSlash:al.trailingSlash,images:al.images,previewProps:ag.preview,enableTainting:al.experimental.taint,htmlLimitedBots:al.htmlLimitedBots,reactMaxHeadersLength:al.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:p,cacheLifeProfiles:al.cacheLife,basePath:al.basePath,serverActions:al.experimental.serverActions,logServerFunctions:"object"==typeof al.logging&&!!al.logging.serverFunctions,...aG||aH||aI?{isBuildTimePrerendering:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:aH}:{},cacheComponents:!!al.cacheComponents,experimental:{isRoutePPREnabled:aF,expireTime:al.expireTime,staleTimes:al.experimental.staleTimes,dynamicOnHover:!!al.experimental.dynamicOnHover,optimisticRouting:!!al.experimental.optimisticRouting,inlineCss:!!al.experimental.inlineCss,prefetchInlining:al.experimental.prefetchInlining??!1,authInterrupts:!!al.experimental.authInterrupts,cachedNavigations:!!al.experimental.cachedNavigations,clientTraceMetadata:al.experimental.clientTraceMetadata||[],clientParamParsingOrigins:al.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,D.parseMaxPostponedStateSize)(al.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>P.onRequestError(a,b,d,e,ak),err:(0,h.getRequestMeta)(a,"invokeError")}};i&&(k.renderOpts.supportsDynamicResponse=!1);let l=await n(e,k),{metadata:m}=l,{cacheControl:o,headers:q={},fetchTags:r,fetchMetrics:s}=m;if(r&&(q[y.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aO&&(null==o?void 0:o.revalidate)===0&&!P.isDev&&!aF){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ai}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
1
|
+
(()=>{var a={};a.id=9040,a.ids=[9040],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")},6716:(a,b,c)=>{"use strict";c.d(b,{AV:()=>J,Ck:()=>H,Dk:()=>F,F2:()=>y,FF:()=>l,K4:()=>w,Lm:()=>O,Nx:()=>s,Q8:()=>I,T_:()=>r,UP:()=>B,VB:()=>E,VO:()=>q,WQ:()=>D,X_:()=>L,Y2:()=>v,_g:()=>C,kO:()=>P,oW:()=>i,p1:()=>M,qh:()=>z});var d=c(16698);c(31421);var e=c(77598),f=c(73024),g=c(48161),h=c(76760);function i(){return process.env.BEACON_HOME||(0,h.join)((0,g.homedir)(),".beacon")}function j(){return(0,h.join)(i(),"workspaces.json")}function k(a){return(0,e.createHash)("sha256").update(a).digest("hex").slice(0,12)}function l(a){let b=(0,h.resolve)(a);return b!==(0,h.resolve)((0,g.homedir)())&&b!==(0,h.parse)(b).root}function m(){return(0,h.join)(i(),"deleted.json")}function n(){try{let a=JSON.parse((0,f.readFileSync)(m(),"utf8"));return Array.isArray(a)?a:[]}catch{return[]}}function o(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(m(),JSON.stringify(a,null,2))}function p(a){return n().includes(a)}function q(a){let b=n();b.includes(a)||o([...b,a])}function r(a){return(0,h.join)(i(),a)}function s(a){return`file:${(0,h.join)(r(a),"db.sqlite")}`}function t(){try{let a=JSON.parse((0,f.readFileSync)(j(),"utf8"));return Array.isArray(a)?a:[]}catch{return[]}}function u(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(j(),JSON.stringify(a,null,2))}function v(){return t().sort((a,b)=>b.lastOpenedAt.localeCompare(a.lastOpenedAt))}function w(a){return t().find(b=>b.id===a)??null}function x(a,b,c=new Date().toISOString()){if(!l(a))throw Error(`beacon: refusing to register a non-repo path as a workspace: ${a}`);let d=k(a);if(p(d))throw Error(`beacon: workspace ${d} (${a}) was deleted — run \`beacon\` or /beacon-init to re-add it`);let e=t(),g=e.find(a=>a.id===d),i={id:d,path:a,name:b||g?.name||(0,h.basename)(a),lastOpenedAt:c},j=[i,...e.filter(a=>a.id!==d)];return(0,f.mkdirSync)(r(d),{recursive:!0}),u(j),i}function y(a,b){var c;let d;return c=k(a),(d=n()).includes(c)&&o(d.filter(a=>a!==c)),x(a,b)}function z(a){u(t().filter(b=>b.id!==a)),B()===a&&C(v()[0]?.id??null)}function A(){return(0,h.join)(i(),"active")}function B(){try{return(0,f.readFileSync)(A(),"utf8").trim()||null}catch{return null}}function C(a){(0,f.mkdirSync)(i(),{recursive:!0}),(0,f.writeFileSync)(A(),a??"")}function D(){let a=B();return a?w(a):null}function E(){let a=M()??B();return a?w(a):null}let F="beacon_ws";function G(a,b){let c=a.headers.get("cookie");if(!c)return null;for(let a of c.split(";")){let c=a.indexOf("=");if(-1!==c&&a.slice(0,c).trim()===b)return decodeURIComponent(a.slice(c+1).trim())}return null}function H(a){let b=a.headers.get("x-beacon-workspace");if(b&&w(b))return b;let c=G(a,F);return c&&w(c)?c:null}let I="x-beacon-workspace-path";async function J(a){let b=a.headers.get("x-beacon-workspace");if(b&&w(b))return b;let c=a.headers.get(I);if(c&&l(c)&&!p(k(c))&&(!b||k(c)===b)){let a=x(c);return await P(a.id),a.id}let d=G(a,F);return d&&w(d)?d:null}let K=new d.AsyncLocalStorage;function L(a,b){return a?K.run(a,b):b()}function M(){return K.getStore()??null}let N=new Set;function O(a){N.delete((0,h.join)(r(a),"db.sqlite"))}async function P(a){let b=r(a),d=(0,h.join)(b,"db.sqlite"),e=(0,f.existsSync)(d);if(e&&N.has(d))return{ok:!0,created:!1,migrated:!1};try{(0,f.mkdirSync)(b,{recursive:!0});let{provisionDb:g}=await Promise.all([c.e(9884),c.e(5871),c.e(5258)]).then(c.bind(c,35258)),h=await g(s(a));return N.add(d),{ok:!0,created:!e,migrated:e&&h.migrated}}catch(a){return{ok:!1,created:!1,migrated:!1,error:a instanceof Error?a.message:String(a)}}}},7929:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>O,handler:()=>Q,routeModule:()=>P});var d=c(7553),e=c(84006),f=c(67798),g=c(34775),h=c(99373),i=c(73461),j=c(1020),k=c(26349),l=c(54365),m=c(16023),n=c(14965),o=c(63747),p=c(24235),q=c(23938),r=c(261),s=c(66758),t=c(77243),u=c(26713),v=c(37527),w=c(22820),x=c(88216),y=c(47929),z=c(79551),A=c(71797),B=c(89125),C=c(86439),D=c(77068),E=c(27269),F=c(37525),G=c(61287),H=c(81494),I=c(70722),J=c(70753),K=c(43954),L=c(17891),M={};for(let a in G)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(M[a]=()=>G[a]);c.d(b,M);let N={children:["",{children:["docs",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,15113)),"/home/runner/work/beacon/beacon/app/docs/page.tsx"]}]},{"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,7667))).default(a)],openGraph:[],twitter:[],manifest:void 0}},[]]},{layout:[()=>Promise.resolve().then(c.bind(c,23704)),"/home/runner/work/beacon/beacon/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,95547,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,55091,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,45270,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,28193,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,86364))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,7667))).default(a)],openGraph:[],twitter:[],manifest:void 0}},[]]}.children,O={require:c,loadChunk:()=>Promise.resolve()},P=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/docs/page",pathname:"/docs",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:N},distDir:".next",relativeProjectDir:""});async function Q(a,b,d){var M,R,S,T,U;d.requestMeta&&(0,h.setRequestMeta)(a,d.requestMeta),P.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let V=!!(0,h.getRequestMeta)(a,"minimalMode"),W="/docs/page";"/index"===W&&(W="/");let X=await P.prepare(a,b,{srcPage:W,multiZoneDraftMode:!1});if(!X)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:Y,query:Z,params:$,pageIsDynamic:_,buildManifest:aa,nextFontManifest:ab,reactLoadableManifest:ac,serverActionsManifest:ad,clientReferenceManifest:ae,subresourceIntegrityManifest:af,prerenderManifest:ag,isDraftMode:ah,resolvedPathname:ai,revalidateOnlyGenerated:aj,routerServerContext:ak,nextConfig:al,parsedUrl:am,interceptionRoutePatterns:an,deploymentId:ao,clientAssetToken:ap}=X,aq=(0,r.normalizeAppPath)(W),{isOnDemandRevalidate:ar}=X,as=al.experimental.ppr&&!al.cacheComponents&&(0,K.isInterceptionRouteAppPath)(ai)?null:P.match(ai,ag),at=(null==as?void 0:as.route)??null,au=!!ag.routes[ai],av=a.headers["user-agent"]||"",aw=(0,u.getBotType)(av),ax=(0,q.isHtmlBotRequest)(a),ay=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],az=(0,h.getRequestMeta)(a,"isRSCRequest")??(0,n.f)(a.headers[t.RSC_HEADER]),aA=(0,s.getIsPossibleServerAction)(a),aB=(0,m.checkIsAppPPREnabled)(al.experimental.ppr),aC=a.headers[y.NEXT_RESUME_STATE_LENGTH_HEADER];if(!(0,h.getRequestMeta)(a,"postponed")&&V&&aB&&aA&&aC&&"string"==typeof aC){let e=parseInt(aC,10),{maxPostponedStateSize:f,maxPostponedStateSizeBytes:g}=(0,E.getMaxPostponedStateSize)(al.experimental.maxPostponedStateSize);if(!isNaN(e)&&e>0){if(e>g)return b.statusCode=413,b.end((0,E.getPostponedStateExceededErrorMessage)(f)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let i="1 MB",j=(null==(U=al.experimental.serverActions)?void 0:U.bodySizeLimit)??i,k=e+(j!==i?c(95726).parse(j):1048576),l=await (0,E.readBodyWithSizeLimit)(a,k);if(null===l)return b.statusCode=413,b.end("Request body exceeded limit. To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;if(l.length>=e){let b=l.subarray(0,e).toString("utf8");(0,h.addRequestMeta)(a,"postponed",b);let c=l.subarray(e);(0,h.addRequestMeta)(a,"actionBody",c)}else throw Object.defineProperty(Error(`invariant: expected ${e} bytes of postponed state but only received ${l.length} bytes`),"__NEXT_ERROR_CODE",{value:"E979",enumerable:!1,configurable:!0})}}if(!(0,h.getRequestMeta)(a,"postponed")&&aB&&"1"===a.headers[y.NEXT_RESUME_HEADER]&&"POST"===a.method){let{maxPostponedStateSize:c,maxPostponedStateSizeBytes:e}=(0,E.getMaxPostponedStateSize)(al.experimental.maxPostponedStateSize),f=await (0,E.readBodyWithSizeLimit)(a,e);if(null===f)return b.statusCode=413,b.end((0,E.getPostponedStateExceededErrorMessage)(c)),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let g=f.toString("utf8");(0,h.addRequestMeta)(a,"postponed",g)}let aD=!0===P.isDev||!0===al.experimental.exposeTestingApiInProductionBuild,aE=aD&&("1"===a.headers[t.NEXT_INSTANT_PREFETCH_HEADER]||!(0,n.f)(a.headers[t.RSC_HEADER])&&"string"==typeof a.headers.cookie&&a.headers.cookie.includes(t.NEXT_INSTANT_TEST_COOKIE+"=")),aF=(aB||aE)&&((null==(M=ag.routes[aq]??ag.dynamicRoutes[aq])?void 0:M.renderingMode)==="PARTIALLY_STATIC"||aE&&(aD||(null==ak?void 0:ak.experimentalTestProxy)===!0)),aG=aE&&aF,aH=aG&&!0===P.isDev,aI=!1,aJ=aF?(0,h.getRequestMeta)(a,"postponed"):void 0,aK=null==(R=ag.routes[ai])?void 0:R.prefetchDataRoute,aL=aF&&az&&!ay&&!aK;V&&(aL=aL&&!!aJ);let aM=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),aN=(!aw||!aF)&&(!av||(0,q.shouldServeStreamingMetadata)(av,al.htmlLimitedBots)),aO=!!((at||au||ag.routes[aq])&&!(aw&&aF)),aP=aF&&!0===al.cacheComponents,aQ=!0===P.isDev||!aO||"string"==typeof aJ||(aP&&(0,h.getRequestMeta)(a,"onCacheEntryV2")?aL&&!V:aL),aR=!!aw&&aF,aS=(null==at?void 0:at.remainingPrerenderableParams)??[],aT=(null==at?void 0:at.fallback)===null&&((null==(S=at.fallbackRootParams)?void 0:S.length)??0)>0,aU=null;if(!ah&&aO&&!aQ&&!aA&&!aJ&&!aL){let a=as?"string"==typeof(null==at?void 0:at.fallback)?at.fallback:as.source:null;if(!0===al.experimental.partialFallbacks&&a&&(null==at?void 0:at.fallbackRouteParams)&&!aT){if(aS.length>0){let b,c=(b=new Map(aS.map(a=>[a.paramName,a])),a.split("/").map(a=>{let c=(0,L.getSegmentParam)(a);if(!c)return a;let d=b.get(c.paramName);if(!d)return a;let e=null==$?void 0:$[d.paramName];if(!e)return a;let f=Array.isArray(e)?e.map(a=>encodeURIComponent(a)).join("/"):encodeURIComponent(e);return a.replace((0,o.buildDynamicSegmentPlaceholder)(d),f)}).join("/")||"/");aU=c!==a?c:null}}else aU=ai}let aV=aU;!aV&&(P.isDev||aO&&_&&(null==at?void 0:at.fallbackRouteParams)&&!aA)&&(aV=ai),P.isDev||ah||!aO||!az||aL||(0,k.d)(a.headers);let aW={...G,tree:N,handler:Q,routeModule:P,__next_app__:O};ad&&ae&&(0,p.setManifestsSingleton)({page:W,clientReferenceManifest:ae,serverActionsManifest:ad});let aX=a.method||"GET",aY=(0,g.getTracer)(),aZ=aY.getActiveScopeSpan(),a$=!!(null==ak?void 0:ak.isWrappedByNextServer),a_=!0===al.experimental.partialFallbacks&&aS.length>0?(null==at||null==(T=at.fallbackRouteParams)?void 0:T.filter(a=>!aS.some(b=>b.paramName===a.paramName)))??[]:[],a0=async()=>((null==ak?void 0:ak.render404)?await ak.render404(a,b,am,!1):b.end("This page could not be found"),null);try{let k,m=P.getVaryHeader(ai,an);b.setHeader("Vary",m);let n=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return P.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let a=aY.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let d=a.get("next.route");if(d){let a=`${aX} ${d}`;c.setAttributes({"next.route":d,"http.route":d,"next.span_name":a}),c.updateName(a),k&&k!==c&&(k.setAttribute("http.route",d),k.updateName(a))}else c.updateName(`${aX} ${W}`)})},p=(0,h.getRequestMeta)(a,"incrementalCache")||await P.getIncrementalCache(a,al,ag,V);null==p||p.resetRequestCache(),globalThis.__incrementalCache=p;let q=async({span:e,postponed:f,fallbackRouteParams:g,forceStaticRender:i})=>{let k={query:Z,params:$,page:aq,sharedContext:{buildId:Y,deploymentId:ao,clientAssetToken:ap},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aW,Component:(0,j.T)(aW),params:$,routeModule:P,page:W,postponed:f,shouldWaitOnAllReady:aR,serveStreamingMetadata:aN,supportsDynamicResponse:"string"==typeof f||aQ,buildManifest:aa,nextFontManifest:ab,reactLoadableManifest:ac,subresourceIntegrityManifest:af,setCacheStatus:null==ak?void 0:ak.setCacheStatus,setIsrStatus:null==ak?void 0:ak.setIsrStatus,setReactDebugChannel:null==ak?void 0:ak.setReactDebugChannel,sendErrorsToBrowser:null==ak?void 0:ak.sendErrorsToBrowser,dir:c(33873).join(process.cwd(),P.relativeProjectDir),isDraftMode:ah,botType:aw,isOnDemandRevalidate:ar,isPossibleServerAction:aA,assetPrefix:al.assetPrefix,nextConfigOutput:al.output,crossOrigin:al.crossOrigin,trailingSlash:al.trailingSlash,images:al.images,previewProps:ag.preview,enableTainting:al.experimental.taint,htmlLimitedBots:al.htmlLimitedBots,reactMaxHeadersLength:al.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:p,cacheLifeProfiles:al.cacheLife,basePath:al.basePath,serverActions:al.experimental.serverActions,logServerFunctions:"object"==typeof al.logging&&!!al.logging.serverFunctions,...aG||aH||aI?{isBuildTimePrerendering:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isDebugDynamicAccesses:aH}:{},cacheComponents:!!al.cacheComponents,experimental:{isRoutePPREnabled:aF,expireTime:al.expireTime,staleTimes:al.experimental.staleTimes,dynamicOnHover:!!al.experimental.dynamicOnHover,optimisticRouting:!!al.experimental.optimisticRouting,inlineCss:!!al.experimental.inlineCss,prefetchInlining:al.experimental.prefetchInlining??!1,authInterrupts:!!al.experimental.authInterrupts,cachedNavigations:!!al.experimental.cachedNavigations,clientTraceMetadata:al.experimental.clientTraceMetadata||[],clientParamParsingOrigins:al.experimental.clientParamParsingOrigins,maxPostponedStateSizeBytes:(0,D.parseMaxPostponedStateSize)(al.experimental.maxPostponedStateSize)},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d,e)=>P.onRequestError(a,b,d,e,ak),err:(0,h.getRequestMeta)(a,"invokeError")}};i&&(k.renderOpts.supportsDynamicResponse=!1);let l=await n(e,k),{metadata:m}=l,{cacheControl:o,headers:q={},fetchTags:r,fetchMetrics:s}=m;if(r&&(q[y.NEXT_CACHE_TAGS_HEADER]=r),a.fetchMetrics=s,aO&&(null==o?void 0:o.revalidate)===0&&!P.isDev&&!aF){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ai}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
|
|
2
2
|
see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:q,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:o}},r=async({hasResolved:c,previousCacheEntry:g,isRevalidating:i,span:j,forceStaticRender:k=!1})=>{let l=!1===P.isDev,m=c||b.writableEnded;try{var n;let f;if(ar&&aj&&!g&&!V)return(null==ak?void 0:ak.render404)?await ak.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(at&&(f=(0,w.parseFallbackField)(at.fallback)),!0===al.experimental.partialFallbacks&&(null==at?void 0:at.fallback)===null&&!aT&&aS.length>0&&(f=w.FallbackMode.PRERENDER),f===w.FallbackMode.PRERENDER&&(0,u.isBot)(av)&&(!aF||ax)&&(f=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==g?void 0:g.isStale)===-1&&(ar=!0),ar&&(f!==w.FallbackMode.NOT_FOUND||g)&&(f=w.FallbackMode.BLOCKING_STATIC_RENDER),!V&&f!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aV&&!m&&!ah&&_&&(l||!au)){if((l||at)&&f===w.FallbackMode.NOT_FOUND){if(al.adapterPath)return await a0();throw new C.NoFallbackError}if(aF&&(al.cacheComponents?!aL:!az)){let b=l&&"string"==typeof(null==at?void 0:at.fallback)?at.fallback:aq,f=(l||aG)&&(null==at?void 0:at.fallbackRouteParams)?(0,o.createOpaqueFallbackRouteParams)(at.fallbackRouteParams):aI?(0,o.getFallbackRouteParams)(aq,P):null;aG&&f&&(0,h.addRequestMeta)(a,"fallbackParams",f);let g=await P.handleResponse({cacheKey:b,req:a,nextConfig:al,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:ag,isRoutePPREnabled:aF,responseGenerator:async()=>q({span:j,postponed:void 0,fallbackRouteParams:f,forceStaticRender:!0}),waitUntil:d.waitUntil,isMinimalMode:V});if(null===g)return null;if(g)return V||!aF||!(aS.length>0)||!0!==al.experimental.partialFallbacks||!aU||!p||ar||aI||aD||aE||ay||(0,J.scheduleOnNextTick)(async()=>{let b=P.getResponseCache(a);try{await b.revalidate(aU,p,aF,!1,a=>q({span:a.span,postponed:void 0,fallbackRouteParams:a_.length>0?(0,o.createOpaqueFallbackRouteParams)(a_):null,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}),delete g.cacheControl,g}}let s=ar||i||!aJ?void 0:aJ;if(aP&&!V&&p&&(aL||aA)&&!k){let b=await p.get(ai,{kind:v.IncrementalCacheKind.APP_PAGE,isRoutePPREnabled:!0,isFallback:!1});b&&b.value&&b.value.kind===v.CachedRouteKind.APP_PAGE&&(s=b.value.postponed,b&&(-1===b.isStale||!0===b.isStale)&&(0,J.scheduleOnNextTick)(async()=>{let b=P.getResponseCache(a);try{await b.revalidate(ai,p,aF,!1,a=>r({...a,forceStaticRender:!0}),null,c,d.waitUntil)}catch(a){console.error("Error revalidating the page in the background",a)}}))}if((aG||aH)&&void 0!==s)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let t=!P.isDev&&_&&(null==at?void 0:at.fallbackRouteParams)?(0,o.getPlaceholderFallbackRouteParams)($,at.fallbackRouteParams):null,y=t&&t.length>0?t:null==at?void 0:at.fallbackRouteParams,z=null!=t&&t.length>0,A=null;if(al.cacheComponents&&(null==at?void 0:at.fallbackRouteParams)){let b=(0,h.getRequestMeta)(a,"resolvedRouteParamKeys");b&&b.size>0&&(A=at.fallbackRouteParams.filter(a=>!b.has(a.paramName)))}let B=(l&&(0,h.getRequestMeta)(a,"renderFallbackShell")||z||aG&&!au)&&y?(0,o.createOpaqueFallbackRouteParams)(y):A&&A.length>0&&A.length<((null==at||null==(n=at.fallbackRouteParams)?void 0:n.length)??0)?(0,o.createOpaqueFallbackRouteParams)(A):aI?(0,o.getFallbackRouteParams)(aq,P):null;if((l||aG)&&al.cacheComponents&&!au&&(null==at?void 0:at.fallbackRouteParams)){let b=(0,o.createOpaqueFallbackRouteParams)(y??at.fallbackRouteParams);b&&(0,h.addRequestMeta)(a,"fallbackParams",b)}return q({span:j,postponed:s,fallbackRouteParams:B,forceStaticRender:k})}catch(b){throw(null==g?void 0:g.isStale)&&await P.onRequestError(a,b,{routerKind:"App Router",routePath:W,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aO,isOnDemandRevalidate:ar})},!1,ak),b}},s=async c=>{var f,g,i,j,k,l;let m,n=await P.handleResponse({cacheKey:aU,responseGenerator:a=>r({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ar,isRoutePPREnabled:aF,req:a,nextConfig:al,prerenderManifest:ag,waitUntil:d.waitUntil,isMinimalMode:V});if(ah&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),P.isDev&&b.setHeader("Cache-Control","no-cache, must-revalidate"),!n){if(aU)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let o="string"==typeof n.value.postponed;az&&!aA&&ao&&b.setHeader(y.NEXT_NAV_DEPLOYMENT_ID_HEADER,ao),aO&&!aL&&(!o||ay)&&(V||b.setHeader("x-nextjs-cache",ar?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:p}=n;if(aJ)m={revalidate:0,expire:void 0};else if(aL)m={revalidate:0,expire:void 0};else if(!P.isDev)if(ah)m={revalidate:0,expire:void 0};else if(aO){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});m={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??al.expireTime}}else m={revalidate:y.CACHE_ONE_YEAR_SECONDS,expire:void 0}}else b.getHeader("Cache-Control")||(m={revalidate:0,expire:void 0});if(n.cacheControl=m,"string"==typeof aM&&(null==p?void 0:p.kind)===v.CachedRouteKind.APP_PAGE&&p.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=p.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];V&&aO&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=p.segmentData.get(aM);return void 0!==d?(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let s=aP?(0,h.getRequestMeta)(a,"onCacheEntryV2")??(0,h.getRequestMeta)(a,"onCacheEntry"):(0,h.getRequestMeta)(a,"onCacheEntry");if(s){let b=(0,h.getRequestMeta)(a,"initURL")??a.url,c=b?(null==(l=(0,F.parseUrl)(b))?void 0:l.pathname)??b:void 0;if(await s(n,{url:c}))return null}if(p.headers){let a={...p.headers};for(let[c,d]of(V&&aO||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let u=null==(g=p.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(V&&aO&&u&&"string"==typeof u&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,u),!p.status||az&&aF||(b.statusCode=p.status),!V&&p.status&&H.RedirectStatusCode[p.status]&&az&&(b.statusCode=200),o&&!aL&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),az&&!ah){if(void 0===p.rscData){if(p.html.contentType!==t.RSC_CONTENT_TYPE_HEADER)if(al.cacheComponents)return b.statusCode=404,(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl});else throw Object.defineProperty(new I.InvariantError(`Expected RSC response, got ${p.html.contentType}`),"__NEXT_ERROR_CODE",{value:"E789",enumerable:!1,configurable:!0});return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:p.html,cacheControl:n.cacheControl})}return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:x.default.fromStatic(p.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let w=p.html;if(aE&&aG){let c=!0===P.isDev?crypto.randomUUID():null;return w.pipeThrough(await (0,A.createInstantTestScriptInsertionTransformStream)(c)),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})}if(!o||V||az)return(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:n.cacheControl});if(aG||aH)return w.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}});let C=new TransformStream;return w.push(C.readable),q({span:c,postponed:p.postponed,fallbackRouteParams:null,forceStaticRender:!1}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(C.writable)}).catch(a=>{C.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,B.sendRenderResult)({req:a,res:b,generateEtags:al.generateEtags,poweredByHeader:al.poweredByHeader,result:w,cacheControl:{revalidate:0,expire:void 0}})};if(!a$||!aZ)return k=aY.getActiveScopeSpan(),await aY.withPropagatedContext(a.headers,()=>aY.trace(i.BaseServerSpan.handleRequest,{spanName:`${aX} ${W}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aX,"http.target":a.url}},s),void 0,!a$);await s(aZ)}catch(b){throw b instanceof C.NoFallbackError||await P.onRequestError(a,b,{routerKind:"App Router",routePath:W,routeType:"render",revalidateReason:(0,f.c)({isStaticGeneration:aO,isOnDemandRevalidate:ar})},!1,ak),b}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},12372:(a,b,c)=>{Promise.resolve().then(c.bind(c,88264))},15113:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g,metadata:()=>f});var d=c(5735),e=c(42590);let f={title:"Docs — Beacon",description:"How Beacon works: install, the planning loop, the canvases, the CLI, and the Claude Code integration (skills, MCP tools, hooks)."};function g(){return(0,d.jsx)(e.Docs,{})}},16698:a=>{"use strict";a.exports=require("node:async_hooks")},17891:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/get-segment-param")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},28855:a=>{"use strict";a.exports=import("@libsql/client")},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")},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},42590:(a,b,c)=>{"use strict";c.d(b,{Docs:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call Docs() from the server but Docs is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/beacon/beacon/components/docs/docs.tsx","Docs")},43954:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/interception-routes")},45301:(a,b,c)=>{"use strict";c.d(b,{KS:()=>l,Qq:()=>k,jv:()=>j});var d=c(31421),e=c(77598),f=c(48161),g=c(76760),h=c(6716);let i=null;function j(){if(process.env.BEACON_REPO)return process.env.BEACON_REPO;let a=(0,h.p1)();if(a){let b=(0,h.K4)(a);if(b)return b.path}let b=(0,h.WQ)();if(b)return b.path;if(i)return i;try{let a=(0,d.execSync)("git rev-parse --show-toplevel",{cwd:process.cwd(),stdio:["ignore","pipe","ignore"]}).toString().trim();if(a)return i=a}catch{}return i=(0,g.resolve)(process.cwd(),"../..")}function k(){return(0,g.basename)(j())}function l(){if(process.env.BEACON_DATA_DIR)return process.env.BEACON_DATA_DIR;let a=(0,h.p1)();if(a&&(0,h.K4)(a))return(0,h.T_)(a);let b=(0,h.WQ)();return b?(0,h.T_)(b.id):(0,g.join)((0,f.homedir)(),".beacon",(0,e.createHash)("sha256").update(j()).digest("hex").slice(0,12))}},48161:a=>{"use strict";a.exports=require("node:os")},59636:(a,b,c)=>{Promise.resolve().then(c.bind(c,42590))},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},70722:a=>{"use strict";a.exports=require("next/dist/shared/lib/invariant-error")},73024:a=>{"use strict";a.exports=require("node:fs")},73136:a=>{"use strict";a.exports=require("node:url")},76760:a=>{"use strict";a.exports=require("node:path")},77068:a=>{"use strict";a.exports=require("next/dist/shared/lib/size-limit")},77598:a=>{"use strict";a.exports=require("node:crypto")},77702:()=>{},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88264:(a,b,c)=>{"use strict";c.d(b,{Docs:()=>s});var d=c(48249),e=c(67484),f=c(2116),g=c.n(f),h=c(79291),i=c(49183);c(77702);let j=[{id:"overview",title:"What is Beacon"},{id:"install",title:"Install"},{id:"quickstart",title:"Quickstart"},{id:"loop",title:"The planning loop"},{id:"canvases",title:"The canvases"},{id:"cli",title:"CLI reference"},{id:"integration",title:"Claude Code integration"},{id:"config",title:"Configuration"},{id:"troubleshooting",title:"Troubleshooting"}],k=[{cmd:"beacon",what:"Register the current repo, ensure the shared server is running, and open the panel on this repo. The everyday command."},{cmd:"beacon doctor",what:"Audit what's wired — the global Claude Code hooks + skills, this repo's .mcp.json, and the running daemon."},{cmd:"beacon stop",what:"Stop the shared background server. It restarts the next time you run beacon."},{cmd:"beacon setup",what:"(Re)install Beacon's per-repo helpers — the skills and .mcp.json — in the current repo without opening the panel."},{cmd:"beacon uninstall",what:"Reverse every Beacon artifact: the global ~/.claude wiring and the per-repo files."},{cmd:"beacon mcp",what:"The stdio MCP server Claude Code spawns automatically. You never run this by hand."}],l=[{name:"/beacon-init",when:"First time you point Beacon at a repo.",what:"The agent reads the codebase and fills Beacon's map — the main components, the rough roadmap themes, the database schema, and the endpoints. Run it once per repo to bootstrap the picture."},{name:"/beacon-refresh",when:"Every few weeks, or after a big set of changes.",what:"The agent re-surveys the repo and updates what /beacon-init produced — adds new components, drops removed ones, picks up new tables and routes. Anything you added by hand on the canvas survives."},{name:"/beacon-plan",when:"Whenever you want to review an approach on the canvas.",what:"Present the current plan or approach on Beacon's /plan page for annotation instead of asking for approval as a wall of text."}],m=[{name:"beacon_context_for_feature",what:"Before touching code, the agent pulls the files attached to a feature plus their imports, the endpoints in that domain, the tables those endpoints touch, and the surrounding components — one round-trip instead of a blind Glob/Grep scan."},{name:"beacon_blast_radius",what:"Mid-feature, the agent runs this on a file it's about to edit to see what imports it and what it imports — so it can judge whether a change is safe."},{name:"beacon_propose_plan",what:"When the agent has a feature plan (tables + relations + endpoints), this opens it on /plan and BLOCKS the session until you Approve, Discard, or Submit feedback."},{name:"beacon_describe_feature",what:"When a feature is done, the agent records a short markdown summary and the files it touched, keeping the next session's context accurate."},{name:"beacon_map",what:"A quick list of features already on the roadmap. The agent calls it near the start of work to avoid duplicating what's planned."},{name:"beacon_entities",what:"A raw readout of everything mapped — features, architecture, tables, endpoints — when the agent just needs the planning data."}],n=[{trigger:"Plan mode (ExitPlanMode)",what:"When the agent shows you a plan, Beacon intercepts it and renders the markdown on /plan with a native annotation panel. Select text and type → it becomes a comment. Approve / Discard / Submit feedback flows back to the session as the next instruction."},{trigger:"File edits (PostToolUse)",what:"Every Edit/Write the agent runs is reported to Beacon and the file is attached to whichever feature the session is working on. The /map view fills in with the real files behind each feature, without you tagging anything."},{trigger:"Code-graph watcher",what:"While the panel is open, a background watcher rebuilds the Files view as you save code — the maps stay current with the repo on their own."}],o=[{key:"BEACON_HOME",what:"Where per-workspace data lives — the SQLite databases and the server record. Defaults to ~/.beacon."},{key:"PORT",what:"Port for the shared local server. Defaults to 4319."},{key:"Settings → intel",what:"In the panel, the Settings page drives the code-intelligence model/provider and your editor, and triggers a code-map sync."}];function p({text:a,label:b="Copy"}){let[c,f]=(0,e.useState)(!1);return(0,d.jsx)("button",{onClick:()=>{navigator.clipboard?.writeText(a),f(!0),setTimeout(()=>f(!1),1500)},className:"glass-soft w-hover grid h-8 w-8 shrink-0 place-items-center rounded-md","aria-label":b,children:c?(0,d.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"#ff7a45",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:(0,d.jsx)("path",{d:"M20 6 9 17l-5-5"})}):(0,d.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2"}),(0,d.jsx)("path",{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"})]})})}function q({children:a,copy:b}){return(0,d.jsxs)("div",{className:"glass-soft flex items-center gap-3 rounded-lg px-4 py-2.5",children:[(0,d.jsx)("span",{className:"w-signal select-none",children:"$"}),(0,d.jsx)("code",{className:"w-mono w-scrollbar-none flex-1 overflow-x-auto whitespace-nowrap text-[0.85rem] text-foreground",children:a}),b&&(0,d.jsx)(p,{text:a})]})}function r({id:a,eyebrow:b,children:c}){return(0,d.jsxs)("div",{className:"mb-5 scroll-mt-28",id:a,children:[(0,d.jsx)("p",{className:"w-mono w-eyebrow w-signal mb-2",children:b}),(0,d.jsx)("h2",{className:"text-[1.6rem] font-semibold tracking-tight",children:c})]})}function s(){let[a,b]=(0,e.useState)(j[0].id),c=(0,e.useRef)(null);return(0,d.jsxs)("div",{className:"welcome",ref:c,children:[(0,d.jsx)("div",{className:"welcome-bg","aria-hidden":!0}),(0,d.jsx)("header",{className:"fixed inset-x-0 top-0 z-50",children:(0,d.jsx)("div",{className:"mx-auto max-w-6xl px-6",children:(0,d.jsxs)("div",{className:"w-load mt-4 glass flex items-center justify-between rounded-full py-2.5 pl-5 pr-3",style:{animationDelay:".05s"},children:[(0,d.jsxs)(g(),{href:"/",className:"flex items-center gap-2.5",children:[(0,d.jsx)(h._,{size:20,className:"text-foreground"}),(0,d.jsx)("span",{className:"font-semibold tracking-tight",children:"Beacon"}),(0,d.jsx)("span",{className:"w-mono w-eyebrow w-muted ml-1 hidden sm:inline",children:"docs"})]}),(0,d.jsxs)("nav",{className:"flex items-center gap-6 text-sm w-muted",children:[(0,d.jsx)(g(),{href:"/",className:"transition-colors hover:text-foreground",children:"Home"}),(0,d.jsx)("a",{href:"#install",className:"transition-colors hover:text-foreground",children:"Install"})]})]})})}),(0,d.jsx)("div",{className:"mx-auto max-w-6xl px-6 pb-24 pt-20",children:(0,d.jsxs)("div",{className:"lg:grid lg:grid-cols-[15rem_1fr] lg:gap-14",children:[(0,d.jsx)("aside",{className:"hidden lg:block",children:(0,d.jsxs)("nav",{className:"sticky top-28",children:[(0,d.jsx)("p",{className:"w-mono w-eyebrow w-muted mb-4",children:"On this page"}),(0,d.jsx)("ul",{className:"space-y-1.5 text-sm",children:j.map(b=>(0,d.jsx)("li",{children:(0,d.jsx)("a",{href:`#${b.id}`,className:`block border-l-2 py-1 pl-3 transition-colors ${a===b.id?"w-signal border-[#ff7a45]":"w-muted border-transparent hover:text-foreground"}`,children:b.title})},b.id))})]})}),(0,d.jsxs)("main",{className:"min-w-0 max-w-2xl",children:[(0,d.jsxs)("section",{className:"w-load",children:[(0,d.jsx)(r,{id:"overview",eyebrow:"Overview",children:"What is Beacon"}),(0,d.jsxs)("p",{className:"w-muted leading-relaxed",children:["Beacon is the ",(0,d.jsx)("span",{className:"text-foreground",children:"visual planning surface for the coding agent in your terminal"}),". That session is the brain; Beacon is its eyes and hands. The agent proposes a feature plan — roadmap features, database schema, and endpoints — you review it on a canvas instead of a wall of text, give scoped feedback, and approve or discard with a click. The verdict flows straight back to your session."]}),(0,d.jsxs)("p",{className:"w-muted mt-4 leading-relaxed",children:["It runs entirely on your machine — ",(0,d.jsx)("span",{className:"text-foreground",children:"local-first, your code never leaves it"}),". One shared server quietly serves every repo you open; each keeps its own data under ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"~/.beacon"}),"."]})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"install",eyebrow:"Get started",children:"Install"}),(0,d.jsxs)("p",{className:"w-muted mb-4 leading-relaxed",children:["One command. It installs ",(0,d.jsx)("span",{className:"text-foreground",children:"Bun"})," if you don't have it, then puts the"," ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon"})," CLI on your PATH. Re-run it any time to update."]}),(0,d.jsx)(q,{copy:!0,children:i.EO}),(0,d.jsx)("p",{className:"w-muted mt-4 leading-relaxed",children:"Then, inside any repository:"}),(0,d.jsx)("div",{className:"mt-3",children:(0,d.jsx)(q,{copy:!0,children:"beacon"})})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"quickstart",eyebrow:"Get started",children:"Quickstart"}),(0,d.jsx)("ol",{className:"space-y-5",children:[(0,d.jsxs)(d.Fragment,{children:["Install with the command above, then run ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon"})," inside a repo. It registers the repo, starts the shared server, and opens the panel in your browser."]}),(0,d.jsxs)(d.Fragment,{children:["In your Claude Code session, run ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"/beacon-init"}),". The agent reads the repo and draws its architecture, schema, and roadmap onto the canvas."]}),(0,d.jsxs)(d.Fragment,{children:["Ask the agent to plan a feature. It calls ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon_propose_plan"})," and the plan renders live on ",(0,d.jsx)("span",{className:"text-foreground",children:"/plan"}),"."]}),(0,d.jsxs)(d.Fragment,{children:["Review it — annotate inline, edit the boards — then ",(0,d.jsx)("span",{className:"text-foreground",children:"Approve"}),", ",(0,d.jsx)("span",{className:"text-foreground",children:"Submit feedback"}),", or ",(0,d.jsx)("span",{className:"text-foreground",children:"Discard"}),". Your verdict returns to the session."]})].map((a,b)=>(0,d.jsxs)("li",{className:"relative pl-11",children:[(0,d.jsx)("span",{className:"w-mono glass absolute left-0 top-0 grid h-7 w-7 place-items-center rounded-md text-[0.72rem] font-semibold text-foreground",children:b+1}),(0,d.jsx)("p",{className:"w-muted leading-relaxed",children:a})]},b))})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"loop",eyebrow:"Concepts",children:"The planning loop"}),(0,d.jsx)("p",{className:"w-muted leading-relaxed",children:"The loop is the whole point. It closes in five steps:"}),(0,d.jsx)("ol",{className:"mt-4 space-y-3",children:[(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"text-foreground",children:"Propose."})," The agent calls ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon_propose_plan"})," (or you present a plan in plan mode). The tool ",(0,d.jsx)("span",{className:"text-foreground",children:"blocks"})," — the session waits for your verdict."]}),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"text-foreground",children:"Review."})," The plan renders on ",(0,d.jsx)("span",{className:"text-foreground",children:"/plan"}),": a native annotation panel on the left, the roadmap and database boards on the right. Select text to comment; edit the boards directly."]}),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"text-foreground",children:"Decide."})," Approve, Discard, or Submit feedback. Feedback bundles your inline notes plus any board edits."]}),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"text-foreground",children:"Return."})," The verdict flows back to the terminal. On feedback, the agent revises and re-proposes — the loop continues."]}),(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)("span",{className:"text-foreground",children:"Record."})," On approval the schema and roadmap drafts persist, and when the work is done the agent calls ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon_describe_feature"})," so the next session has accurate context."]})].map((a,b)=>(0,d.jsx)("li",{className:"glass w-hover rounded-lg p-4",children:(0,d.jsx)("p",{className:"w-muted text-[0.95rem] leading-relaxed",children:a})},b))})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"canvases",eyebrow:"Concepts",children:"The canvases"}),(0,d.jsx)("div",{className:"space-y-4",children:[{path:"/map",what:"The roadmap: feature cards, their sub-tasks, and dependency links — plus a separate architecture view of the real components. Files the agent edits attach themselves here."},{path:"/db",what:"The database design board: tables and columns, endpoints, and the endpoint→table links. Proposed schema lands as a distinct draft layer you can approve or discard."},{path:"/plan",what:"The split-screen review page: annotations on the left, the roadmap + database boards tabbed on the right, plus a history of every plan and its verdict."}].map(a=>(0,d.jsxs)("div",{className:"glass w-hover rounded-lg p-5",children:[(0,d.jsx)("p",{className:"w-mono text-foreground mb-1",children:a.path}),(0,d.jsx)("p",{className:"w-muted text-[0.95rem] leading-relaxed",children:a.what})]},a.path))})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"cli",eyebrow:"Reference",children:"CLI reference"}),(0,d.jsx)("div",{className:"space-y-3",children:k.map(a=>(0,d.jsxs)("div",{className:"glass rounded-lg p-4",children:[(0,d.jsxs)("code",{className:"w-mono text-foreground text-[0.9rem]",children:[(0,d.jsx)("span",{className:"w-signal select-none",children:"$ "}),a.cmd]}),(0,d.jsx)("p",{className:"w-muted mt-1.5 text-[0.92rem] leading-relaxed",children:a.what})]},a.cmd))})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"integration",eyebrow:"Reference",children:"Claude Code integration"}),(0,d.jsx)("h3",{className:"mb-1 mt-2 font-semibold text-foreground",children:"Skills — you type these"}),(0,d.jsx)("p",{className:"w-muted mb-4 text-[0.92rem]",children:"Slash commands that tell the agent to do something Beacon-shaped."}),(0,d.jsx)("div",{className:"space-y-3",children:l.map(a=>(0,d.jsxs)("div",{className:"glass rounded-lg p-4",children:[(0,d.jsx)("code",{className:"w-mono text-foreground text-[0.9rem]",children:a.name}),(0,d.jsxs)("p",{className:"w-muted mt-1.5 text-[0.92rem] leading-relaxed",children:[(0,d.jsx)("span",{className:"text-foreground",children:"When:"})," ",a.when," ",a.what]})]},a.name))}),(0,d.jsx)("h3",{className:"mb-1 mt-8 font-semibold text-foreground",children:"MCP tools — the agent calls these"}),(0,d.jsx)("p",{className:"w-muted mb-4 text-[0.92rem]",children:"You don't run these; the agent reaches for them when they fit. Knowing they exist makes its moves legible."}),(0,d.jsx)("div",{className:"space-y-3",children:m.map(a=>(0,d.jsxs)("div",{className:"glass rounded-lg p-4",children:[(0,d.jsx)("code",{className:"w-mono text-foreground text-[0.9rem]",children:a.name}),(0,d.jsx)("p",{className:"w-muted mt-1.5 text-[0.92rem] leading-relaxed",children:a.what})]},a.name))}),(0,d.jsx)("h3",{className:"mb-1 mt-8 font-semibold text-foreground",children:"Hooks — these run on their own"}),(0,d.jsx)("p",{className:"w-muted mb-4 text-[0.92rem]",children:"Wired into Claude Code globally; they react to what the session is already doing."}),(0,d.jsx)("div",{className:"space-y-3",children:n.map(a=>(0,d.jsxs)("div",{className:"glass rounded-lg p-4",children:[(0,d.jsx)("p",{className:"font-medium text-foreground text-[0.92rem]",children:a.trigger}),(0,d.jsx)("p",{className:"w-muted mt-1.5 text-[0.92rem] leading-relaxed",children:a.what})]},a.trigger))})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"config",eyebrow:"Reference",children:"Configuration"}),(0,d.jsx)("div",{className:"space-y-3",children:o.map(a=>(0,d.jsxs)("div",{className:"glass rounded-lg p-4",children:[(0,d.jsx)("code",{className:"w-mono text-foreground text-[0.9rem]",children:a.key}),(0,d.jsx)("p",{className:"w-muted mt-1.5 text-[0.92rem] leading-relaxed",children:a.what})]},a.key))})]}),(0,d.jsxs)("section",{className:"mt-16",children:[(0,d.jsx)(r,{id:"troubleshooting",eyebrow:"Help",children:"Troubleshooting"}),(0,d.jsx)("p",{className:"w-muted mb-4 leading-relaxed",children:"When something looks off, start here:"}),(0,d.jsx)("div",{className:"mb-4",children:(0,d.jsx)(q,{copy:!0,children:"beacon doctor"})}),(0,d.jsx)("div",{className:"space-y-3",children:[{q:"The panel won't open",a:(0,d.jsxs)(d.Fragment,{children:["Make sure the server is up — run ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon"})," again, or ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon stop"})," then ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon"})," to restart it."]})},{q:"The @beacon tools or skills are missing in Claude Code",a:(0,d.jsxs)(d.Fragment,{children:["Run ",(0,d.jsx)("span",{className:"w-mono text-foreground",children:"beacon setup"})," in the repo, then restart your Claude Code session so it re-reads the MCP registration."]})},{q:"How do I update?",a:(0,d.jsx)(d.Fragment,{children:"Re-run the install command — it fetches the latest and relinks. Nothing else to do."})}].map(a=>(0,d.jsxs)("div",{className:"glass rounded-lg p-4",children:[(0,d.jsx)("p",{className:"font-medium text-foreground text-[0.92rem]",children:a.q}),(0,d.jsx)("p",{className:"w-muted mt-1.5 text-[0.92rem] leading-relaxed",children:a.a})]},a.q))})]})]})]})}),(0,d.jsx)("footer",{className:"px-6 pb-12 pt-8",children:(0,d.jsxs)("div",{className:"mx-auto max-w-6xl",children:[(0,d.jsx)("div",{className:"w-accent-line mb-8 h-px w-full opacity-60"}),(0,d.jsxs)("div",{className:"flex flex-col items-center justify-between gap-5 md:flex-row",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,d.jsx)(h._,{size:26,className:"text-foreground"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-semibold leading-tight",children:"Beacon"}),(0,d.jsx)("p",{className:"w-mono w-muted text-[0.72rem]",children:"the visual planning surface for your terminal"})]})]}),(0,d.jsxs)("nav",{className:"flex items-center gap-6 text-sm w-muted",children:[(0,d.jsx)(g(),{href:"/",className:"transition-colors hover:text-foreground",children:"Home"}),(0,d.jsx)("a",{href:"#overview",className:"transition-colors hover:text-foreground",children:"Docs"})]}),(0,d.jsxs)("p",{className:"w-mono w-muted text-[0.72rem]",children:["Created by"," ",(0,d.jsxs)("a",{href:"https://www.instagram.com/wenzorithelly/",target:"_blank",rel:"noreferrer",className:"w-signal inline-flex items-center gap-1 underline decoration-dotted underline-offset-2 transition-opacity hover:opacity-80",children:[(0,d.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":!0,children:[(0,d.jsx)("rect",{x:"2",y:"2",width:"20",height:"20",rx:"5",ry:"5"}),(0,d.jsx)("path",{d:"M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z"}),(0,d.jsx)("line",{x1:"17.5",y1:"6.5",x2:"17.51",y2:"6.5"})]}),"Wenzo"]}),(0,d.jsx)("span",{className:"mx-2 opacity-40",children:"\xb7"}),"\xa9 2026 Beacon"]})]})]})})]})}},96487:()=>{}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,319,4217,3015],()=>b(b.s=7929));module.exports=c})();
|