idea-manager 2.0.0 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/build-manifest.json +2 -2
- package/.next/routes-manifest.json +15 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +2 -2
- 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_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +2 -2
- 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/advisor-actions/route.js +15 -0
- package/.next/server/app/api/advisor-actions/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/archive/route.js +1 -130
- package/.next/server/app/api/archive/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/filesystem/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/filesystem/tree/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/global-advisor/route.js +22 -11
- package/.next/server/app/api/global-advisor/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/global-memo/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/maintenance/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/advisor/route.js +22 -11
- package/.next/server/app/api/projects/[id]/advisor/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/apply-distribute/route.js +2 -8
- package/.next/server/app/api/projects/[id]/apply-distribute/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/auto-distribute/route.js +126 -3
- package/.next/server/app/api/projects/[id]/auto-distribute/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/brainstorm/route.js +124 -1
- package/.next/server/app/api/projects/[id]/brainstorm/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/git-sync/route.js +124 -1
- package/.next/server/app/api/projects/[id]/git-sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/route.js +124 -1
- package/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route.js +1 -7
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route.js +2 -8
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route.js +1 -130
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/reorder/route.js +124 -0
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/reorder/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route.js +1 -130
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/route.js +124 -1
- package/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/move/route.js +2 -131
- package/.next/server/app/api/tasks/[taskId]/move/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/version/route_client-reference-manifest.js +1 -1
- package/.next/server/app/index.html +2 -2
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +3 -3
- 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/page.js +10 -10
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/projects/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +13 -11
- package/.next/server/chunks/{117.js → 697.js} +8 -2
- package/.next/server/pages/404.html +2 -2
- package/.next/server/pages/500.html +2 -2
- package/.next/static/DgEYXBynAPZFgESajdpuy/_buildManifest.js +1 -0
- package/.next/static/chunks/app/_global-error/page-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/advisor-actions/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/archive/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/filesystem/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/filesystem/tree/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/global-advisor/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/global-memo/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/health/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/maintenance/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/advisor/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/apply-distribute/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/auto-distribute/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/brainstorm/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/git-sync/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/reorder/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/projects/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/search/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/sync/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/tasks/[taskId]/move/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/update/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/api/version/route-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/app/page-517beed417b9d63a.js +28 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-f051f234bea7bddd.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-f051f234bea7bddd.js +1 -0
- package/.next/static/css/31b47c8edfe1a047.css +3 -0
- package/package.json +22 -8
- package/src/app/api/advisor-actions/route.ts +52 -0
- package/src/app/api/projects/[id]/sub-projects/[subId]/tasks/reorder/route.ts +24 -0
- package/src/components/advisor/ActionBlock.tsx +124 -0
- package/src/components/advisor/AdvisorChat.tsx +19 -9
- package/src/components/brainstorm/Editor.tsx +5 -13
- package/src/components/task/NoteEditor.tsx +137 -0
- package/src/components/task/ProjectTree.tsx +105 -57
- package/src/components/task/TaskDetail.tsx +93 -0
- package/src/components/ui/ShortcutOverlay.tsx +4 -0
- package/src/components/workspace/WorkspacePanel.tsx +69 -3
- package/src/lib/advisor-actions/parse.ts +59 -0
- package/src/lib/ai/global-context.ts +24 -4
- package/src/lib/ai/project-context.ts +22 -2
- package/src/types/advisor-actions.ts +25 -0
- package/.next/static/5I00mUqwYdcGFbs7ETC9d/_buildManifest.js +0 -1
- package/.next/static/chunks/app/_global-error/page-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/archive/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/filesystem/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/filesystem/tree/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/global-advisor/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/global-memo/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/health/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/maintenance/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/advisor/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/apply-distribute/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/auto-distribute/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/brainstorm/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/git-sync/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/[subId]/tasks/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/[id]/sub-projects/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/projects/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/search/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/sync/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/tasks/[taskId]/move/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/update/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/api/version/route-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/app/page-b6580e09a4af9dff.js +0 -28
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-92496bc87f5c29a9.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-92496bc87f5c29a9.js +0 -1
- package/.next/static/css/a57b4564ec9082ab.css +0 -3
- /package/.next/static/{5I00mUqwYdcGFbs7ETC9d → DgEYXBynAPZFgESajdpuy}/_ssgManifest.js +0 -0
|
@@ -1,130 +1 @@
|
|
|
1
|
-
(()=>{var a={};a.id=212,a.ids=[212],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1421:a=>{"use strict";a.exports=require("node:child_process")},1799:(a,b,c)=>{"use strict";c.d(b,{bE:()=>m,sA:()=>k});var d=c(3873),e=c.n(d),f=c(1820),g=c.n(f),h=c(9021),i=c.n(h);let j=e().join(g().homedir(),".idea-manager","data");function k(){return e().join((i().existsSync(j)||i().mkdirSync(j,{recursive:!0}),j),"im.db")}let l=e().join(g().homedir(),".idea-manager","sync");function m(){return i().existsSync(l)||i().mkdirSync(l,{recursive:!0}),l}},1820:a=>{"use strict";a.exports=require("os")},3033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3680:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>y,PUT:()=>z});var e=c(9225),f=c(4006),g=c(8317),h=c(9373),i=c(4775),j=c(4235),k=c(261),l=c(4365),m=c(771),n=c(3461),o=c(7798),p=c(2280),q=c(2018),r=c(5696),s=c(7929),t=c(6439),u=c(7527),v=c(5592),w=c(9933),x=c(5440);async function y(a){await (0,x.t)();let b=a.nextUrl.searchParams.get("projectId")||void 0,c=(0,w.fn)(b);return v.NextResponse.json(c)}async function z(a){await (0,x.t)();let{taskId:b,action:c}=await a.json();if(!b||!c)return v.NextResponse.json({error:"taskId and action required"},{status:400});if("restore"===c){let a=(0,w.ec)(b);return a?v.NextResponse.json(a):v.NextResponse.json({error:"Task not found"},{status:404})}return"delete"===c?(0,w.vq)(b)?v.NextResponse.json({success:!0}):v.NextResponse.json({error:"Task not found"},{status:404}):v.NextResponse.json({error:"Invalid action"},{status:400})}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/archive/route",pathname:"/api/archive",filename:"route",bundlePath:"app/api/archive/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/young/Toy/idea-manager/src/app/api/archive/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/archive/route";"/index"===d&&(d="/");let e=await A.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,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.experimental.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q={params:v,prerenderManifest:z,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},R=new l.NodeNextRequest(a),S=new l.NodeNextResponse(b),T=m.NextRequestAdapter.fromNodeNextRequest(R,(0,m.signalFromNodeResponse)(b));try{let e=async a=>A.handle(T,Q).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.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 e=c.get("next.route");if(e){let b=`${N} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b)}else a.updateName(`${N} ${d}`)}),g=!!(0,h.getRequestMeta)(a,"minimalMode"),j=async h=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!g&&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 e(h);a.fetchMetrics=Q.renderOpts.fetchMetrics;let i=Q.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=Q.renderOpts.collectedTags;if(!I)return await (0,p.I)(R,S,d,Q.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);j&&(b[s.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,e=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:Q.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},l=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:k,waitUntil:c.waitUntil,isMinimalMode:g});if(!I)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});g||b.setHeader("x-nextjs-cache",C?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,q.fromNodeOutgoingHttpHeaders)(l.value.headers);return g&&I||m.delete(s.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,r.getCacheControlHeader)(l.cacheControl)),await (0,p.I)(R,S,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};P?await j(P):await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},j))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(R,S,new Response(null,{status:500})),null}}},3873:a=>{"use strict";a.exports=require("path")},4870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},5359:(a,b,c)=>{"use strict";let d,e;c.d(b,{$:()=>g});var f=c(7598);function g(){return function(a=21){var b;b=a|=0,!d||d.length<b?(d=Buffer.allocUnsafe(128*b),f.webcrypto.getRandomValues(d),e=0):e+b>d.length&&(f.webcrypto.getRandomValues(d),e=0),e+=b;let c="";for(let b=e-a;b<e;b++)c+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&d[b]];return c}(16)}},5440:(a,b,c)=>{"use strict";c.d(b,{t:()=>o,L:()=>p});var d=c(9021),e=c.n(d),f=c(1799),g=c(1421);let h=!1,i="";async function j(){let a=new Date,b=a.getHours(),c=`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")}`;if(9===b&&i!==c)try{let a,b;await o();let d=p(),e=d.prepare("SELECT t.title, t.status, p.name as project_name FROM tasks t JOIN projects p ON t.project_id = p.id WHERE t.is_today = 1 AND t.status != 'done'").all(),f=d.prepare("SELECT COUNT(*) as count FROM tasks WHERE status IN ('submitted', 'testing')").get(),h=d.prepare("SELECT COUNT(*) as count FROM tasks WHERE status = 'problem'").get(),j=[];if(e.length>0){for(let a of(j.push(`Today: ${e.length}개`),e.slice(0,5)))j.push(` - ${a.title}`);e.length>5&&j.push(` ... +${e.length-5}개`)}else j.push("Today 태스크가 없습니다.");f.count>0&&j.push(`진행 중: ${f.count}개`),h.count>0&&j.push(`문제: ${h.count}개`),a=j.join("\n").replace(/"/g,'\\"').replace(/\n/g,"\\n"),b=`display notification "${a}" with title "IM - 오늘의 할 일"`,(0,g.exec)(`osascript -e '${b}'`,a=>{a&&console.error("[Scheduler] notification error:",a.message)}),i=c}catch(a){console.error("[Scheduler] error:",a)}}class k{constructor(a,b){this.dirty=!1,this.inTransaction=!1,this.db=a,this.dbPath=b}save(){if(!this.dirty)return;let a=this.db.export();e().writeFileSync(this.dbPath,Buffer.from(a)),this.dirty=!1}immediatelySave(){this.dirty=!0,this.inTransaction||this.save()}rowsToObjects(a,b){return b.map(b=>{let c={};return a.forEach((a,d)=>{c[a]=b[d]}),c})}prepare(a){let b=this,c=/^\s*(INSERT|UPDATE|DELETE|CREATE|ALTER|DROP)/i.test(a);return{all(...c){let d=b.db.prepare(a);c.length>0&&d.bind(c);let e=d.getColumnNames(),f=[];for(;d.step();)f.push(d.get());return d.free(),b.rowsToObjects(e,f)},get(...c){let d,e=b.db.prepare(a);if(c.length>0&&e.bind(c),e.step()){let a=e.getColumnNames(),b=e.get(),c={};a.forEach((a,d)=>{c[a]=b[d]}),d=c}return e.free(),d},run:(...d)=>(b.db.run(a,d),c&&b.immediatelySave(),{changes:b.db.getRowsModified()})}}exec(a){this.db.exec(a),/^\s*(INSERT|UPDATE|DELETE|CREATE|ALTER|DROP)/im.test(a)&&this.immediatelySave()}pragma(a){if(a.startsWith("table_info(")){let b=a.match(/table_info\((\w+)\)/)?.[1];if(!b)return[];let c=this.db.exec(`PRAGMA table_info(${b})`);return c.length?this.rowsToObjects(c[0].columns,c[0].values):[]}if(a.includes("journal_mode")||a.includes("wal_checkpoint"))return this.immediatelySave(),"memory";if(a.includes("foreign_keys")){try{this.db.run(`PRAGMA ${a}`)}catch{}return}try{let b=this.db.exec(`PRAGMA ${a}`);if(b.length>0&&b[0].values.length>0)return b[0].values[0][0]}catch{}}transaction(a){let b=this;return()=>{b.inTransaction=!0,b.db.run("BEGIN");try{let c=a();return b.db.run("COMMIT"),b.inTransaction=!1,b.immediatelySave(),c}catch(a){b.inTransaction=!1;try{b.db.run("ROLLBACK")}catch{}throw a}}}close(){this.immediatelySave(),this.db.close()}}let l=null,m=null;async function n(){let a;if(l)return l;let b=c(9661),d=await b(),g=(0,f.sA)();if(e().existsSync(g)){let b=e().readFileSync(g);a=new d.Database(b)}else a=new d.Database;return!function(a){a.exec(`
|
|
2
|
-
CREATE TABLE IF NOT EXISTS projects (
|
|
3
|
-
id TEXT PRIMARY KEY,
|
|
4
|
-
name TEXT NOT NULL,
|
|
5
|
-
description TEXT NOT NULL DEFAULT '',
|
|
6
|
-
project_path TEXT,
|
|
7
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
8
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
9
|
-
);
|
|
10
|
-
|
|
11
|
-
CREATE TABLE IF NOT EXISTS brainstorms (
|
|
12
|
-
id TEXT PRIMARY KEY,
|
|
13
|
-
project_id TEXT NOT NULL,
|
|
14
|
-
content TEXT NOT NULL DEFAULT '',
|
|
15
|
-
version INTEGER NOT NULL DEFAULT 1,
|
|
16
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
17
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
18
|
-
FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
`);let b=a.prepare("PRAGMA table_info(projects)").all();b.some(a=>"project_path"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN project_path TEXT"),b.some(a=>"ai_context"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN ai_context TEXT NOT NULL DEFAULT ''"),b.some(a=>"watch_enabled"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN watch_enabled INTEGER NOT NULL DEFAULT 0"),b.some(a=>"agent_type"===a.name)||a.exec("ALTER TABLE projects ADD COLUMN agent_type TEXT NOT NULL DEFAULT 'claude'"),a.exec(`
|
|
22
|
-
CREATE TABLE IF NOT EXISTS sub_projects (
|
|
23
|
-
id TEXT PRIMARY KEY,
|
|
24
|
-
project_id TEXT NOT NULL,
|
|
25
|
-
name TEXT NOT NULL,
|
|
26
|
-
description TEXT NOT NULL DEFAULT '',
|
|
27
|
-
folder_path TEXT,
|
|
28
|
-
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
29
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
30
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
31
|
-
FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
|
|
32
|
-
);
|
|
33
|
-
|
|
34
|
-
CREATE TABLE IF NOT EXISTS tasks (
|
|
35
|
-
id TEXT PRIMARY KEY,
|
|
36
|
-
project_id TEXT NOT NULL,
|
|
37
|
-
sub_project_id TEXT NOT NULL,
|
|
38
|
-
title TEXT NOT NULL,
|
|
39
|
-
description TEXT NOT NULL DEFAULT '',
|
|
40
|
-
status TEXT NOT NULL DEFAULT 'idea'
|
|
41
|
-
CHECK(status IN ('idea','doing','writing','submitted','testing','done','problem')),
|
|
42
|
-
priority TEXT NOT NULL DEFAULT 'medium'
|
|
43
|
-
CHECK(priority IN ('high','medium','low')),
|
|
44
|
-
is_today INTEGER NOT NULL DEFAULT 0,
|
|
45
|
-
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
46
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
47
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
48
|
-
FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE,
|
|
49
|
-
FOREIGN KEY (sub_project_id) REFERENCES sub_projects(id) ON DELETE CASCADE
|
|
50
|
-
);
|
|
51
|
-
|
|
52
|
-
CREATE TABLE IF NOT EXISTS task_prompts (
|
|
53
|
-
id TEXT PRIMARY KEY,
|
|
54
|
-
task_id TEXT NOT NULL UNIQUE,
|
|
55
|
-
content TEXT NOT NULL DEFAULT '',
|
|
56
|
-
prompt_type TEXT NOT NULL DEFAULT 'manual'
|
|
57
|
-
CHECK(prompt_type IN ('manual','ai_assisted')),
|
|
58
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
59
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
60
|
-
FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
|
|
61
|
-
);
|
|
62
|
-
|
|
63
|
-
CREATE TABLE IF NOT EXISTS global_memos (
|
|
64
|
-
id TEXT PRIMARY KEY,
|
|
65
|
-
content TEXT NOT NULL DEFAULT '',
|
|
66
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
67
|
-
);
|
|
68
|
-
|
|
69
|
-
CREATE TABLE IF NOT EXISTS task_conversations (
|
|
70
|
-
id TEXT PRIMARY KEY,
|
|
71
|
-
task_id TEXT NOT NULL,
|
|
72
|
-
role TEXT NOT NULL CHECK(role IN ('assistant','user')),
|
|
73
|
-
content TEXT NOT NULL,
|
|
74
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
75
|
-
FOREIGN KEY (task_id) REFERENCES tasks(id) ON DELETE CASCADE
|
|
76
|
-
);
|
|
77
|
-
`),a.exec(`
|
|
78
|
-
CREATE TABLE IF NOT EXISTS global_conversations (
|
|
79
|
-
id TEXT PRIMARY KEY,
|
|
80
|
-
project_id TEXT NOT NULL DEFAULT '__global__',
|
|
81
|
-
role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
|
|
82
|
-
content TEXT NOT NULL,
|
|
83
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
84
|
-
);
|
|
85
|
-
|
|
86
|
-
CREATE TABLE IF NOT EXISTS project_conversations (
|
|
87
|
-
id TEXT PRIMARY KEY,
|
|
88
|
-
project_id TEXT NOT NULL,
|
|
89
|
-
role TEXT NOT NULL CHECK(role IN ('assistant','user','system')),
|
|
90
|
-
content TEXT NOT NULL,
|
|
91
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
92
|
-
FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE
|
|
93
|
-
);
|
|
94
|
-
`);let c=a.prepare("PRAGMA table_info(tasks)").all();c.some(a=>"is_archived"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN is_archived INTEGER NOT NULL DEFAULT 0"),c.some(a=>"tags"===a.name)||a.exec("ALTER TABLE tasks ADD COLUMN tags TEXT NOT NULL DEFAULT '[]'");let d="\x3c!-- legacy-prompt --\x3e",e=a.prepare(`
|
|
95
|
-
SELECT tp.task_id AS task_id, tp.content AS content, t.description AS description
|
|
96
|
-
FROM task_prompts tp
|
|
97
|
-
JOIN tasks t ON t.id = tp.task_id
|
|
98
|
-
WHERE tp.content IS NOT NULL AND TRIM(tp.content) <> ''
|
|
99
|
-
AND (t.description IS NULL OR t.description NOT LIKE '%${d}%')
|
|
100
|
-
`).all();if(e.length>0){let b=a.prepare("UPDATE tasks SET description = ? WHERE id = ?");for(let a of e){let c=(a.description??"").trimEnd(),e=[c,c?"":null,c?"---":null,`${d}`,"**Legacy Prompt**","",a.content.trim()].filter(a=>null!==a).join("\n");b.run(e,a.task_id)}}let f=a.prepare("SELECT sql FROM sqlite_master WHERE type='table' AND name='tasks'").get();f&&!f.sql.includes("'doing'")&&a.exec(`
|
|
101
|
-
CREATE TABLE tasks_new (
|
|
102
|
-
id TEXT PRIMARY KEY,
|
|
103
|
-
project_id TEXT NOT NULL,
|
|
104
|
-
sub_project_id TEXT NOT NULL,
|
|
105
|
-
title TEXT NOT NULL,
|
|
106
|
-
description TEXT NOT NULL DEFAULT '',
|
|
107
|
-
status TEXT NOT NULL DEFAULT 'idea'
|
|
108
|
-
CHECK(status IN ('idea','doing','writing','submitted','testing','done','problem')),
|
|
109
|
-
priority TEXT NOT NULL DEFAULT 'medium'
|
|
110
|
-
CHECK(priority IN ('high','medium','low')),
|
|
111
|
-
is_today INTEGER NOT NULL DEFAULT 0,
|
|
112
|
-
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
113
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
114
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
115
|
-
is_archived INTEGER NOT NULL DEFAULT 0,
|
|
116
|
-
tags TEXT NOT NULL DEFAULT '[]',
|
|
117
|
-
FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE,
|
|
118
|
-
FOREIGN KEY (sub_project_id) REFERENCES sub_projects(id) ON DELETE CASCADE
|
|
119
|
-
);
|
|
120
|
-
INSERT INTO tasks_new (id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at, is_archived, tags)
|
|
121
|
-
SELECT id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at, is_archived, tags FROM tasks;
|
|
122
|
-
DROP TABLE tasks;
|
|
123
|
-
ALTER TABLE tasks_new RENAME TO tasks;
|
|
124
|
-
`)}(l=new k(a,g)),process.on("exit",()=>l?.close()),h||(h=!0,setInterval(j,6e4),j(),console.log("[Scheduler] Morning notification scheduler started")),l}async function o(){return l||(m||(m=n()),m)}function p(){if(!l)throw Error("Database not initialized. Call await ensureDb() first.");return l}},6439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},6487:()=>{},7598:a=>{"use strict";a.exports=require("node:crypto")},8335:()=>{},9021:a=>{"use strict";a.exports=require("fs")},9294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{"use strict";a.exports=require("sql.js/dist/sql-wasm.js")},9933:(a,b,c)=>{"use strict";c.d(b,{Lw:()=>i,Q$:()=>k,UT:()=>m,ec:()=>l,fn:()=>j,gg:()=>h,lC:()=>n,vq:()=>o,x1:()=>g});var d=c(5440),e=c(5359);function f(a){let b=[];try{b=JSON.parse(a.tags||"[]")}catch{}return{...a,is_today:1===a.is_today,is_archived:(a.is_archived??0)===1,tags:b}}function g(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE sub_project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function h(a){let b=(0,d.L)().prepare("SELECT * FROM tasks WHERE id = ?").get(a);return b?f(b):void 0}function i(a){return(0,d.L)().prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 0 ORDER BY sort_order ASC").all(a).map(f)}function j(a){let b=(0,d.L)();return(a?b.prepare("SELECT * FROM tasks WHERE project_id = ? AND is_archived = 1 ORDER BY updated_at DESC").all(a):b.prepare("SELECT * FROM tasks WHERE is_archived = 1 ORDER BY updated_at DESC").all()).map(f)}function k(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 1, is_today = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function l(a){let b=(0,d.L)(),c=new Date().toISOString();return b.prepare("UPDATE tasks SET is_archived = 0, updated_at = ? WHERE id = ?").run(c,a),h(a)}function m(a){let b=(0,d.L)(),c=(0,e.$)(),f=new Date().toISOString(),g=b.prepare("SELECT MAX(sort_order) as max_order FROM tasks WHERE sub_project_id = ?").get(a.sub_project_id),i=(g?.max_order??-1)+1;return b.prepare(`INSERT INTO tasks (id, project_id, sub_project_id, title, description, status, priority, is_today, sort_order, created_at, updated_at)
|
|
125
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?, ?)`).run(c,a.project_id,a.sub_project_id,a.title,a.description??"",a.status??"idea",a.priority??"medium",i,f,f),h(c)}function n(a,b){let c=(0,d.L)(),e=c.prepare("SELECT * FROM tasks WHERE id = ?").get(a);if(!e)return;let f=new Date().toISOString();return c.prepare(`
|
|
126
|
-
UPDATE tasks SET
|
|
127
|
-
title = ?, description = ?, status = ?, priority = ?,
|
|
128
|
-
is_today = ?, sort_order = ?, project_id = ?, sub_project_id = ?, tags = ?, updated_at = ?
|
|
129
|
-
WHERE id = ?
|
|
130
|
-
`).run(b.title??e.title,b.description??e.description,b.status??e.status,b.priority??e.priority,void 0!==b.is_today?+!!b.is_today:e.is_today,b.sort_order??e.sort_order,b.project_id??e.project_id,b.sub_project_id??e.sub_project_id,b.tags?JSON.stringify(b.tags):e.tags,f,a),h(a)}function o(a){return(0,d.L)().prepare("DELETE FROM tasks WHERE id = ?").run(a).changes>0}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813],()=>b(b.s=3680));module.exports=c})();
|
|
1
|
+
"use strict";(()=>{var a={};a.id=212,a.ids=[212],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1421:a=>{a.exports=require("node:child_process")},1820:a=>{a.exports=require("os")},3033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3680:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>y,PUT:()=>z});var e=c(9225),f=c(4006),g=c(8317),h=c(9373),i=c(4775),j=c(4235),k=c(261),l=c(4365),m=c(771),n=c(3461),o=c(7798),p=c(2280),q=c(2018),r=c(5696),s=c(7929),t=c(6439),u=c(7527),v=c(5592),w=c(9933),x=c(5440);async function y(a){await (0,x.t)();let b=a.nextUrl.searchParams.get("projectId")||void 0,c=(0,w.fn)(b);return v.NextResponse.json(c)}async function z(a){await (0,x.t)();let{taskId:b,action:c}=await a.json();if(!b||!c)return v.NextResponse.json({error:"taskId and action required"},{status:400});if("restore"===c){let a=(0,w.ec)(b);return a?v.NextResponse.json(a):v.NextResponse.json({error:"Task not found"},{status:404})}return"delete"===c?(0,w.vq)(b)?v.NextResponse.json({success:!0}):v.NextResponse.json({error:"Task not found"},{status:404}):v.NextResponse.json({error:"Invalid action"},{status:400})}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/archive/route",pathname:"/api/archive",filename:"route",bundlePath:"app/api/archive/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/young/Toy/idea-manager/src/app/api/archive/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/archive/route";"/index"===d&&(d="/");let e=await A.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,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(z.dynamicRoutes[H]||z.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!z.routes[E],b=z.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.experimental.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||A.isDev||y||(K="/index"===(K=E)?"/":K);let L=!0===A.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q={params:v,prerenderManifest:z,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},R=new l.NodeNextRequest(a),S=new l.NodeNextResponse(b),T=m.NextRequestAdapter.fromNodeNextRequest(R,(0,m.signalFromNodeResponse)(b));try{let e=async a=>A.handle(T,Q).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.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 e=c.get("next.route");if(e){let b=`${N} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b)}else a.updateName(`${N} ${d}`)}),g=!!(0,h.getRequestMeta)(a,"minimalMode"),j=async h=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!g&&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 e(h);a.fetchMetrics=Q.renderOpts.fetchMetrics;let i=Q.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=Q.renderOpts.collectedTags;if(!I)return await (0,p.I)(R,S,d,Q.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);j&&(b[s.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,e=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:Q.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 A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},l=await A.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:k,waitUntil:c.waitUntil,isMinimalMode:g});if(!I)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});g||b.setHeader("x-nextjs-cache",C?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,q.fromNodeOutgoingHttpHeaders)(l.value.headers);return g&&I||m.delete(s.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,r.getCacheControlHeader)(l.cacheControl)),await (0,p.I)(R,S,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};P?await j(P):await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},j))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(R,S,new Response(null,{status:500})),null}}},3873:a=>{a.exports=require("path")},4870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},6439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},7598:a=>{a.exports=require("node:crypto")},9021:a=>{a.exports=require("fs")},9294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{a.exports=require("sql.js/dist/sql-wasm.js")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813,697],()=>b(b.s=3680));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/archive/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/archive/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"8229","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":9770,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-517beed417b9d63a.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/31b47c8edfe1a047.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/archive/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"4494","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"8229","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":9770,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-517beed417b9d63a.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/31b47c8edfe1a047.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"4494","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/tree/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/filesystem/tree/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"8229","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":9770,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-517beed417b9d63a.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/31b47c8edfe1a047.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/route":[],"/Users/young/Toy/idea-manager/src/app/api/filesystem/tree/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"4494","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
|
@@ -1,9 +1,26 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=424,a.ids=[424],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1421:a=>{a.exports=require("node:child_process")},1820:a=>{a.exports=require("os")},3033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3052:(a,b,c)=>{c.d(b,{J:()=>f});var d=c(1421);let e={claude:{name:"Claude",binary:"claude",buildArgs:({streaming:a,model:b})=>["--dangerously-skip-permissions","--model",b||"opus",...a?["--output-format","stream-json","--verbose"]:["--output-format","text"],"--max-turns","80","-p","-"],buildEnv:()=>{let a={...process.env};for(let b of(delete a.CLAUDECODE,delete a.CLAUDE_CODE_ENTRYPOINT,delete a.CLAUDE_CODE_MAX_OUTPUT_TOKENS,Object.keys(a)))(b.startsWith("CLAUDE_CODE_")||"ANTHROPIC_PARENT_SESSION"===b)&&delete a[b];return{...a,FORCE_COLOR:"0"}},parseStreamEvent:a=>{if("content_block_delta"===a.type&&a.delta?.text)return{text:a.delta.text};if("assistant"===a.type&&a.message?.content){let b="";for(let c of a.message.content)"text"===c.type&&(b+=c.text);return{final:b}}return"result"===a.type&&a.result?{final:a.result}:null},cleanOutput:a=>a.replace(/Error: Reached max turns \(\d+\)\s*/g,"").trim()},gemini:{name:"Gemini",binary:"gemini",buildArgs:({streaming:a})=>["--yolo","-m","gemini-2.5-flash",...a?["--output-format","stream-json"]:["--output-format","json"],"-p","-"],buildEnv:()=>({...process.env,FORCE_COLOR:"0"}),parseStreamEvent:a=>"content_block_delta"===a.type&&a.delta?.text?{text:a.delta.text}:"result"===a.type?{final:a.response||a.text||a.result}:null,cleanOutput:a=>{let b=a.trim();if(!b.startsWith("{"))return b;try{let a=JSON.parse(b);return a.response||a.text||a.result||b}catch{return b}}},codex:{name:"Codex",binary:"codex",buildArgs:({streaming:a})=>["exec","--full-auto",...a?["--json"]:[],"-"],buildEnv:()=>({...process.env,FORCE_COLOR:"0"}),parseStreamEvent:a=>"item.completed"===a.type&&a.item?.type==="agent_message"?{final:a.item.text}:"item.updated"===a.type&&a.item?.type==="agent_message"?{text:a.item.text}:null}};function f(a,b,c,f,g){let h=e[a];return h?new Promise((a,e)=>{let i=!!(c||f),j=h.buildArgs({streaming:i,model:g?.model}),k=h.buildEnv(),l=(0,d.spawn)(h.binary,j,{cwd:g?.cwd||process.cwd(),stdio:["pipe","pipe","pipe"],shell:"win32"===process.platform,env:k}),m=null,n=!1;g?.timeoutMs&&(m=setTimeout(()=>{n=!0,l.kill("SIGTERM")},g.timeoutMs)),l.stdin?.write(b),l.stdin?.end();let o="",p="",q="",r=0;i?l.stdout?.on("data",a=>{let b=(o+=a.toString()).split("\n");for(let a of(o=b.pop()??"",b)){let b=a.trim();if(b)try{let a=JSON.parse(b);f?.(a);let d=h.parseStreamEvent(a);if(d)if(d.final){if(d.final.length>r){let a=d.final.slice(r);c?.(a),r=d.final.length}p=d.final}else d.text&&(p+=d.text,r=p.length,c?.(d.text))}catch{}}}):l.stdout?.on("data",a=>{p+=a.toString()}),l.stderr?.on("data",a=>{q+=a.toString()}),l.on("error",a=>{e(Error(`${h.name} CLI error: ${a.message}`))}),l.on("exit",(b,c)=>{if(m&&clearTimeout(m),!i&&h.cleanOutput&&(p=h.cleanOutput(p)),n)return void e(Error(`${h.name} CLI timed out after ${Math.round((g?.timeoutMs||0)/1e3)}s`));if(0!==b&&!p){let a=q.slice(0,500)||(c?`killed by signal ${c}`:"no output");e(Error(`${h.name} CLI exited with code ${b}: ${a}`));return}a(p)})}):Promise.reject(Error(`Unknown agent type: ${a}`))}},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3873:a=>{a.exports=require("path")},4181:(a,b,c)=>{c.d(b,{T:()=>f,a:()=>e});var d=c(5440);function e(a){return(0,d.L)().prepare("SELECT * FROM brainstorms WHERE project_id = ? ORDER BY version DESC LIMIT 1").get(a)}function f(a,b){let c=(0,d.L)(),f=new Date().toISOString(),g=e(a);if(g)return c.prepare("UPDATE brainstorms SET content = ?, version = version + 1, updated_at = ? WHERE id = ?").run(b,f,g.id),c.prepare("UPDATE projects SET updated_at = ? WHERE id = ?").run(f,a),e(a)}},4870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},5821:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";(()=>{var a={};a.id=424,a.ids=[424],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},1421:a=>{a.exports=require("node:child_process")},1820:a=>{a.exports=require("os")},3033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3052:(a,b,c)=>{c.d(b,{J:()=>f});var d=c(1421);let e={claude:{name:"Claude",binary:"claude",buildArgs:({streaming:a,model:b})=>["--dangerously-skip-permissions","--model",b||"opus",...a?["--output-format","stream-json","--verbose"]:["--output-format","text"],"--max-turns","80","-p","-"],buildEnv:()=>{let a={...process.env};for(let b of(delete a.CLAUDECODE,delete a.CLAUDE_CODE_ENTRYPOINT,delete a.CLAUDE_CODE_MAX_OUTPUT_TOKENS,Object.keys(a)))(b.startsWith("CLAUDE_CODE_")||"ANTHROPIC_PARENT_SESSION"===b)&&delete a[b];return{...a,FORCE_COLOR:"0"}},parseStreamEvent:a=>{if("content_block_delta"===a.type&&a.delta?.text)return{text:a.delta.text};if("assistant"===a.type&&a.message?.content){let b="";for(let c of a.message.content)"text"===c.type&&(b+=c.text);return{final:b}}return"result"===a.type&&a.result?{final:a.result}:null},cleanOutput:a=>a.replace(/Error: Reached max turns \(\d+\)\s*/g,"").trim()},gemini:{name:"Gemini",binary:"gemini",buildArgs:({streaming:a})=>["--yolo","-m","gemini-2.5-flash",...a?["--output-format","stream-json"]:["--output-format","json"],"-p","-"],buildEnv:()=>({...process.env,FORCE_COLOR:"0"}),parseStreamEvent:a=>"content_block_delta"===a.type&&a.delta?.text?{text:a.delta.text}:"result"===a.type?{final:a.response||a.text||a.result}:null,cleanOutput:a=>{let b=a.trim();if(!b.startsWith("{"))return b;try{let a=JSON.parse(b);return a.response||a.text||a.result||b}catch{return b}}},codex:{name:"Codex",binary:"codex",buildArgs:({streaming:a})=>["exec","--full-auto",...a?["--json"]:[],"-"],buildEnv:()=>({...process.env,FORCE_COLOR:"0"}),parseStreamEvent:a=>"item.completed"===a.type&&a.item?.type==="agent_message"?{final:a.item.text}:"item.updated"===a.type&&a.item?.type==="agent_message"?{text:a.item.text}:null}};function f(a,b,c,f,g){let h=e[a];return h?new Promise((a,e)=>{let i=!!(c||f),j=h.buildArgs({streaming:i,model:g?.model}),k=h.buildEnv(),l=(0,d.spawn)(h.binary,j,{cwd:g?.cwd||process.cwd(),stdio:["pipe","pipe","pipe"],shell:"win32"===process.platform,env:k}),m=null,n=!1;g?.timeoutMs&&(m=setTimeout(()=>{n=!0,l.kill("SIGTERM")},g.timeoutMs)),l.stdin?.write(b),l.stdin?.end();let o="",p="",q="",r=0;i?l.stdout?.on("data",a=>{let b=(o+=a.toString()).split("\n");for(let a of(o=b.pop()??"",b)){let b=a.trim();if(b)try{let a=JSON.parse(b);f?.(a);let d=h.parseStreamEvent(a);if(d)if(d.final){if(d.final.length>r){let a=d.final.slice(r);c?.(a),r=d.final.length}p=d.final}else d.text&&(p+=d.text,r=p.length,c?.(d.text))}catch{}}}):l.stdout?.on("data",a=>{p+=a.toString()}),l.stderr?.on("data",a=>{q+=a.toString()}),l.on("error",a=>{e(Error(`${h.name} CLI error: ${a.message}`))}),l.on("exit",(b,c)=>{if(m&&clearTimeout(m),!i&&h.cleanOutput&&(p=h.cleanOutput(p)),n)return void e(Error(`${h.name} CLI timed out after ${Math.round((g?.timeoutMs||0)/1e3)}s`));if(0!==b&&!p){let a=q.slice(0,500)||(c?`killed by signal ${c}`:"no output");e(Error(`${h.name} CLI exited with code ${b}: ${a}`));return}a(p)})}):Promise.reject(Error(`Unknown agent type: ${a}`))}},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3873:a=>{a.exports=require("path")},4181:(a,b,c)=>{c.d(b,{T:()=>f,a:()=>e});var d=c(5440);function e(a){return(0,d.L)().prepare("SELECT * FROM brainstorms WHERE project_id = ? ORDER BY version DESC LIMIT 1").get(a)}function f(a,b){let c=(0,d.L)(),f=new Date().toISOString(),g=e(a);if(g)return c.prepare("UPDATE brainstorms SET content = ?, version = version + 1, updated_at = ? WHERE id = ?").run(b,f,g.id),c.prepare("UPDATE projects SET updated_at = ? WHERE id = ?").run(f,a),e(a)}},4870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},5821:(a,b,c)=>{c.r(b),c.d(b,{handler:()=>Q,patchFetch:()=>P,routeModule:()=>L,serverHooks:()=>O,workAsyncStorage:()=>M,workUnitAsyncStorage:()=>N});var d={};c.r(d),c.d(d,{DELETE:()=>K,GET:()=>I,POST:()=>J});var e=c(9225),f=c(4006),g=c(8317),h=c(9373),i=c(4775),j=c(4235),k=c(261),l=c(4365),m=c(771),n=c(3461),o=c(7798),p=c(2280),q=c(2018),r=c(5696),s=c(7929),t=c(6439),u=c(7527),v=c(5592),w=c(5440),x=c(5359);function y(a=50){return(0,w.L)().prepare("SELECT * FROM global_conversations ORDER BY created_at DESC LIMIT ?").all(a).reverse()}function z(a,b){let c=(0,w.L)(),d=(0,x.$)(),e=new Date().toISOString();return c.prepare("INSERT INTO global_conversations (id, project_id, role, content, created_at) VALUES (?, ?, ?, ?, ?)").run(d,"__global__",a,b,e),c.prepare("SELECT * FROM global_conversations WHERE id = ?").get(d)}var A=c(6241),B=c(7228),C=c(9933),D=c(4181);let E=`
|
|
2
|
+
## Actions
|
|
3
|
+
사용자가 요청하면 태스크 생성/수정을 제안할 수 있습니다. \`\`\`action 블록을 사용하세요.
|
|
4
|
+
사용자가 명시적으로 요청하지 않으면 action 블록을 넣지 마세요.
|
|
5
|
+
|
|
6
|
+
형식:
|
|
7
|
+
\`\`\`action
|
|
8
|
+
[
|
|
9
|
+
{"type":"create_task","subProjectId":"<sub_id값>","projectId":"<project_id값>","title":"제목","priority":"high|medium|low"},
|
|
10
|
+
{"type":"update_task","taskId":"<task_id값>","changes":{"status":"done"}}
|
|
11
|
+
]
|
|
12
|
+
\`\`\`
|
|
13
|
+
|
|
14
|
+
규칙:
|
|
15
|
+
- subProjectId, taskId, projectId는 아래 컨텍스트의 [sub_id:...], [task_id:...], [project_id:...] 값을 정확히 사용
|
|
16
|
+
- action 블록 앞에 항상 무엇을 제안하는지 설명
|
|
17
|
+
- 사용자가 승인해야 실행됨
|
|
18
|
+
`;function F(a,b){return a?a.length<=b?a:a.slice(0,b)+"…":""}let G={idea:"idea",doing:"DOING",writing:"writing",submitted:"submitted",testing:"testing",done:"done",problem:"PROBLEM"};var H=c(3052);async function I(){await (0,w.t)();let a=y();return v.NextResponse.json(a)}async function J(a){var b;await (0,w.t)();let c=await a.json();if(!c.message||"string"!=typeof c.message)return v.NextResponse.json({error:"message is required"},{status:400});let d=z("user",c.message),e=function(){let a=(0,A.hF)(),b=[];b.push("당신은 사용자의 전체 워크스페이스를 조망하는 AI 어드바이저입니다."),b.push("여러 프로젝트의 현황을 파악하고, 우선순위\xb7방향\xb7빠진 부분\xb7크로스-프로젝트 이슈 등을 논의합니다."),b.push("한국어로 간결하게 답하세요. 긴 설교 금지."),b.push(E),b.push("=== ALL WORKSPACES ===\n");let c=0,d=0,e=0;for(let f of a){let a=(0,B.VU)(f.id),g=(0,C.Lw)(f.id),h=(0,D.a)(f.id);c+=g.length,d+=g.filter(a=>"done"===a.status).length,e+=g.filter(a=>"problem"===a.status).length;let i={},j=[],k=[];for(let a of g)i[a.status]=(i[a.status]??0)+1,a.is_today&&j.push(a.title),"problem"===a.status&&k.push(a.title);let l=[];l.push(`## ${f.name} [project_id:${f.id}]`),f.description&&l.push(f.description);let m=Object.entries(i).map(([a,b])=>`${a}:${b}`).join(" / ");for(let b of(l.push(`태스크 ${g.length}개 (${m})`),j.length&&l.push(`Today: ${j.join(", ")}`),k.length&&l.push(`문제: ${k.join(", ")}`),h?.content&&l.push(`
|
|
19
|
+
브레인스토밍 요약: ${F(h.content,1500)}`),a)){let a=g.filter(a=>a.sub_project_id===b.id&&"done"!==a.status);if(a.length)for(let c of(l.push(`
|
|
20
|
+
### ${b.name} [sub_id:${b.id}]`),a)){let a=F(c.description,120),b=["high"===c.priority?"HIGH":null,c.is_today?"today":null].filter(Boolean).join(", "),d=b?` (${b})`:"";l.push(`- [${G[c.status]??c.status}] **${c.title}** [task_id:${c.id}]${d}${a?" — "+a:""}`)}}b.push(l.join("\n")),b.push("")}return b.push("---"),b.push(`전체: ${a.length}개 워크스페이스, ${c}개 태스크 (완료 ${d}, 문제 ${e})`),b.join("\n")}(),f=((b=y().map(a=>({role:a.role,content:a.content}))).length<=20?b:b.slice(-20)).map(a=>`${"user"===a.role?"User":"system"===a.role?"System":"Assistant"}: ${a.content}`).join("\n"),g=`${e}
|
|
4
21
|
|
|
5
22
|
=== CONVERSATION ===
|
|
6
|
-
${f}`;try{let a=(await (0,
|
|
23
|
+
${f}`;try{let a=(await (0,H.J)("claude",g,void 0,void 0,{timeoutMs:12e4})).trim();if(!a){let a=z("assistant","(AI 응답을 생성하지 못했습니다.)");return v.NextResponse.json({userMessage:d,aiMessage:a})}let b=z("assistant",a);return v.NextResponse.json({userMessage:d,aiMessage:b})}catch{let a=z("assistant","(AI 호출에 실패했습니다.)");return v.NextResponse.json({userMessage:d,aiMessage:a})}}async function K(){return await (0,w.t)(),(0,w.L)().prepare("DELETE FROM global_conversations").run(),v.NextResponse.json({ok:!0})}let L=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/global-advisor/route",pathname:"/api/global-advisor",filename:"route",bundlePath:"app/api/global-advisor/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/Users/young/Toy/idea-manager/src/app/api/global-advisor/route.ts",nextConfigOutput:"",userland:d}),{workAsyncStorage:M,workUnitAsyncStorage:N,serverHooks:O}=L;function P(){return(0,g.patchFetch)({workAsyncStorage:M,workUnitAsyncStorage:N})}async function Q(a,b,c){L.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/global-advisor/route";"/index"===d&&(d="/");let e=await L.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,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:z,routerServerContext:A,isOnDemandRevalidate:B,revalidateOnlyGenerated:C,resolvedPathname:D,clientReferenceManifest:E,serverActionsManifest:F}=e,G=(0,k.normalizeAppPath)(d),H=!!(z.dynamicRoutes[G]||z.routes[D]),I=async()=>((null==A?void 0:A.render404)?await A.render404(a,b,x,!1):b.end("This page could not be found"),null);if(H&&!y){let a=!!z.routes[D],b=z.dynamicRoutes[G];if(b&&!1===b.fallback&&!a){if(w.experimental.adapterPath)return await I();throw new t.NoFallbackError}}let J=null;!H||L.isDev||y||(J="/index"===(J=D)?"/":J);let K=!0===L.isDev||!H,M=H&&!K;F&&E&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:E,serverActionsManifest:F});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q={params:v,prerenderManifest:z,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:K,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>L.onRequestError(a,b,d,e,A)},sharedContext:{buildId:g}},R=new l.NodeNextRequest(a),S=new l.NodeNextResponse(b),T=m.NextRequestAdapter.fromNodeNextRequest(R,(0,m.signalFromNodeResponse)(b));try{let e=async a=>L.handle(T,Q).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.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 e=c.get("next.route");if(e){let b=`${N} ${e}`;a.setAttributes({"next.route":e,"http.route":e,"next.span_name":b}),a.updateName(b)}else a.updateName(`${N} ${d}`)}),g=!!(0,h.getRequestMeta)(a,"minimalMode"),j=async h=>{var i,j;let k=async({previousCacheEntry:f})=>{try{if(!g&&B&&C&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await e(h);a.fetchMetrics=Q.renderOpts.fetchMetrics;let i=Q.renderOpts.pendingWaitUntil;i&&c.waitUntil&&(c.waitUntil(i),i=void 0);let j=Q.renderOpts.collectedTags;if(!H)return await (0,p.I)(R,S,d,Q.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);j&&(b[s.NEXT_CACHE_TAGS_HEADER]=j),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==Q.renderOpts.collectedRevalidate&&!(Q.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&Q.renderOpts.collectedRevalidate,e=void 0===Q.renderOpts.collectedExpire||Q.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:Q.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 L.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:B})},!1,A),b}},l=await L.handleResponse({req:a,nextConfig:w,cacheKey:J,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:z,isRoutePPREnabled:!1,isOnDemandRevalidate:B,revalidateOnlyGenerated:C,responseGenerator:k,waitUntil:c.waitUntil,isMinimalMode:g});if(!H)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(j=l.value)?void 0:j.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});g||b.setHeader("x-nextjs-cache",B?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,q.fromNodeOutgoingHttpHeaders)(l.value.headers);return g&&H||m.delete(s.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||b.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,r.getCacheControlHeader)(l.cacheControl)),await (0,p.I)(R,S,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};P?await j(P):await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},j))}catch(b){if(b instanceof t.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:B})},!1,A),H)throw b;return await (0,p.I)(R,S,new Response(null,{status:500})),null}}},6241:(a,b,c)=>{c.d(b,{U1:()=>h,gA:()=>i,hF:()=>g,vr:()=>j,xx:()=>k});var d=c(5440),e=c(5359);function f(a){return{...a,watch_enabled:1===a.watch_enabled,agent_type:a.agent_type||"claude"}}function g(){return(0,d.L)().prepare("SELECT * FROM projects ORDER BY updated_at DESC").all().map(f)}function h(a){let b=(0,d.L)().prepare("SELECT * FROM projects WHERE id = ?").get(a);return b?f(b):void 0}function i(a,b="",c){let f=(0,d.L)(),g=(0,e.$)(),j=new Date().toISOString();f.prepare("INSERT INTO projects (id, name, description, project_path, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?)").run(g,a,b,c??null,j,j);let k=(0,e.$)();return f.prepare("INSERT INTO brainstorms (id, project_id, content, version, created_at, updated_at) VALUES (?, ?, ?, 1, ?, ?)").run(k,g,"",j,j),h(g)}function j(a,b){let c=(0,d.L)(),e=h(a);if(!e)return;let f=new Date().toISOString();return c.prepare("UPDATE projects SET name = ?, description = ?, project_path = ?, ai_context = ?, watch_enabled = ?, agent_type = ?, updated_at = ? WHERE id = ?").run(b.name??e.name,b.description??e.description,void 0!==b.project_path?b.project_path:e.project_path,void 0!==b.ai_context?b.ai_context:e.ai_context??"",void 0!==b.watch_enabled?+!!b.watch_enabled:+!!e.watch_enabled,b.agent_type??e.agent_type??"claude",f,a),h(a)}function k(a){return(0,d.L)().prepare("DELETE FROM projects WHERE id = ?").run(a).changes>0}},6439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},7228:(a,b,c)=>{c.d(b,{G8:()=>g,NG:()=>k,VU:()=>f,bU:()=>j,en:()=>i,kh:()=>h,y4:()=>l});var d=c(5440),e=c(5359);function f(a){return(0,d.L)().prepare("SELECT * FROM sub_projects WHERE project_id = ? ORDER BY sort_order ASC").all(a)}function g(a){return(0,d.L)().prepare("SELECT * FROM sub_projects WHERE id = ?").get(a)}function h(a){let b=(0,d.L)();return b.prepare("SELECT * FROM sub_projects WHERE project_id = ? ORDER BY sort_order ASC").all(a).map(a=>{let c=b.prepare(`
|
|
7
24
|
SELECT
|
|
8
25
|
COUNT(*) as task_count,
|
|
9
26
|
SUM(CASE WHEN status IN ('doing','submitted','testing') THEN 1 ELSE 0 END) as active_count,
|
|
@@ -17,10 +34,4 @@ ${f}`;try{let a=(await (0,G.J)("claude",g,void 0,void 0,{timeoutMs:12e4})).trim(
|
|
|
17
34
|
WHEN 'doing' THEN 0 WHEN 'submitted' THEN 1 WHEN 'testing' THEN 2 WHEN 'writing' THEN 3
|
|
18
35
|
WHEN 'idea' THEN 4 WHEN 'problem' THEN 5 WHEN 'done' THEN 6
|
|
19
36
|
END, sort_order ASC LIMIT 5`).all(a.id);return{...a,task_count:c.task_count??0,active_count:c.active_count??0,pending_count:c.pending_count??0,done_count:c.done_count??0,problem_count:c.problem_count??0,last_activity:c.last_activity,preview_tasks:d}})}function i(a){let b=(0,d.L)(),c=(0,e.$)(),f=new Date().toISOString(),h=b.prepare("SELECT MAX(sort_order) as max_order FROM sub_projects WHERE project_id = ?").get(a.project_id),i=(h?.max_order??-1)+1;return b.prepare(`INSERT INTO sub_projects (id, project_id, name, description, folder_path, sort_order, created_at, updated_at)
|
|
20
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?)`).run(c,a.project_id,a.name,a.description??"",a.folder_path??null,i,f,f),g(c)}function j(a,b){let c=(0,d.L)(),e=g(a);if(!e)return;let f=new Date().toISOString();return c.prepare("UPDATE sub_projects SET name = ?, description = ?, folder_path = ?, updated_at = ? WHERE id = ?").run(b.name??e.name,b.description??e.description,void 0!==b.folder_path?b.folder_path:e.folder_path,f,a),g(a)}function k(a){return(0,d.L)().prepare("DELETE FROM sub_projects WHERE id = ?").run(a).changes>0}function l(a,b){let c=(0,d.L)(),e=c.prepare("UPDATE sub_projects SET sort_order = ? WHERE id = ? AND project_id = ?");c.transaction(()=>{b.forEach((b,c)=>e.run(c,b,a))})()}},7598:a=>{a.exports=require("node:crypto")},9021:a=>{a.exports=require("fs")},9294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{a.exports=require("sql.js/dist/sql-wasm.js")}
|
|
21
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?, ?)`).run(c,a.project_id,a.sub_project_id,a.title,a.description??"",a.status??"idea",a.priority??"medium",i,f,f),h(c)}function n(a,b){let c=(0,d.L)(),e=c.prepare("SELECT * FROM tasks WHERE id = ?").get(a);if(!e)return;let f=new Date().toISOString();return c.prepare(`
|
|
22
|
-
UPDATE tasks SET
|
|
23
|
-
title = ?, description = ?, status = ?, priority = ?,
|
|
24
|
-
is_today = ?, sort_order = ?, project_id = ?, sub_project_id = ?, tags = ?, updated_at = ?
|
|
25
|
-
WHERE id = ?
|
|
26
|
-
`).run(b.title??e.title,b.description??e.description,b.status??e.status,b.priority??e.priority,void 0!==b.is_today?+!!b.is_today:e.is_today,b.sort_order??e.sort_order,b.project_id??e.project_id,b.sub_project_id??e.sub_project_id,b.tags?JSON.stringify(b.tags):e.tags,f,a),h(a)}function o(a){return(0,d.L)().prepare("DELETE FROM tasks WHERE id = ?").run(a).changes>0}}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813,117],()=>b(b.s=5821));module.exports=c})();
|
|
37
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?)`).run(c,a.project_id,a.name,a.description??"",a.folder_path??null,i,f,f),g(c)}function j(a,b){let c=(0,d.L)(),e=g(a);if(!e)return;let f=new Date().toISOString();return c.prepare("UPDATE sub_projects SET name = ?, description = ?, folder_path = ?, updated_at = ? WHERE id = ?").run(b.name??e.name,b.description??e.description,void 0!==b.folder_path?b.folder_path:e.folder_path,f,a),g(a)}function k(a){return(0,d.L)().prepare("DELETE FROM sub_projects WHERE id = ?").run(a).changes>0}function l(a,b){let c=(0,d.L)(),e=c.prepare("UPDATE sub_projects SET sort_order = ? WHERE id = ? AND project_id = ?");c.transaction(()=>{b.forEach((b,c)=>e.run(c,b,a))})()}},7598:a=>{a.exports=require("node:crypto")},9021:a=>{a.exports=require("fs")},9294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9661:a=>{a.exports=require("sql.js/dist/sql-wasm.js")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[445,813,697],()=>b(b.s=5821));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-advisor/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-advisor/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"8229","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":9770,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-517beed417b9d63a.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/31b47c8edfe1a047.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/global-advisor/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"4494","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-memo/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/global-memo/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"484":{"*":{"id":"664","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8935","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"440","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"1335","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"2265","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"4661","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"5421","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"1921","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"4342","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"8229","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/builtin/global-error.js":{"id":7123,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-page.js":{"id":1304,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/client-segment.js":{"id":8616,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":4777,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7121,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":4581,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":484,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":6869,"name":"*","chunks":[],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist\",\"arguments\":[{\"variable\":\"--font-geist-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistSans\"}":{"id":421,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/node_modules/next/font/google/target.css?{\"path\":\"src/app/layout.tsx\",\"import\":\"Geist_Mono\",\"arguments\":[{\"variable\":\"--font-geist-mono\",\"subsets\":[\"latin\"]}],\"variableName\":\"geistMono\"}":{"id":9695,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/globals.css":{"id":1743,"name":"*","chunks":["558","static/chunks/app/layout-52917f6c941a9818.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/page.tsx":{"id":9770,"name":"*","chunks":["79","static/chunks/363642f4-9eb39e0bc542c65b.js","374","static/chunks/374-23189d7e246ad164.js","974","static/chunks/app/page-517beed417b9d63a.js"],"async":false},"/Users/young/Toy/idea-manager/src/app/projects/[id]/page.tsx":{"id":1048,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/young/Toy/idea-manager/src/":[],"/Users/young/Toy/idea-manager/src/app/layout":[{"inlined":false,"path":"static/css/31b47c8edfe1a047.css"}],"/Users/young/Toy/idea-manager/src/app/page":[],"/Users/young/Toy/idea-manager/src/app/api/global-memo/route":[]},"rscModuleMapping":{"484":{"*":{"id":"8562","name":"*","chunks":[],"async":false}},"1048":{"*":{"id":"8965","name":"*","chunks":[],"async":false}},"1304":{"*":{"id":"5098","name":"*","chunks":[],"async":false}},"1743":{"*":{"id":"1135","name":"*","chunks":[],"async":false}},"4581":{"*":{"id":"6237","name":"*","chunks":[],"async":false}},"4777":{"*":{"id":"3859","name":"*","chunks":[],"async":false}},"6869":{"*":{"id":"6675","name":"*","chunks":[],"async":false}},"7121":{"*":{"id":"8099","name":"*","chunks":[],"async":false}},"7123":{"*":{"id":"5547","name":"*","chunks":[],"async":false}},"8616":{"*":{"id":"7644","name":"*","chunks":[],"async":false}},"9770":{"*":{"id":"4494","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|