commandmate 0.1.12 → 0.2.0
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/.env.example +4 -9
- package/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +24 -24
- package/.next/app-path-routes-manifest.json +1 -1
- package/.next/build-manifest.json +7 -7
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/1.pack +0 -0
- package/.next/cache/webpack/client-production/2.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack.old +0 -0
- package/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/react-loadable-manifest.json +7 -7
- package/.next/required-server-files.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/api/hooks/claude-done/route.js +1 -19
- package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/route.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/excluded/route.js +36 -0
- package/.next/server/app/api/repositories/excluded/route.js.nft.json +1 -0
- package/.next/server/app/api/repositories/excluded.body +1 -0
- package/.next/server/app/api/repositories/excluded.meta +1 -0
- package/.next/server/app/api/repositories/restore/route.js +36 -0
- package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -0
- package/.next/server/app/api/repositories/route.js +36 -1
- package/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/scan/route.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js +36 -1
- package/.next/server/app/api/slash-commands/route.js +1 -1
- package/.next/server/app/api/slash-commands.body +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/index.html +2 -2
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/page.js +7 -7
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/proxy/[...path]/route.js +2 -2
- package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/page.js +4 -4
- package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/simple-terminal/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +10 -8
- package/.next/server/chunks/5488.js +36 -0
- package/.next/server/chunks/6550.js +1 -1
- package/.next/server/chunks/7425.js +53 -50
- package/.next/server/chunks/7536.js +1 -0
- package/.next/server/chunks/8174.js +23 -0
- package/.next/server/chunks/9367.js +19 -0
- package/.next/server/functions-config-manifest.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +2 -28
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/4327.740cc7fe2d0b5049.js +60 -0
- package/.next/static/chunks/4343-ebe884a2a80eb033.js +1 -0
- package/.next/static/chunks/6568-38a33aa67d82e12b.js +1 -0
- package/.next/static/chunks/816-c254f4e2406e696a.js +1 -0
- package/.next/static/chunks/app/layout-4804cfba519283cf.js +1 -0
- package/.next/static/chunks/app/page-3926224c4cdf315b.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/page-d64624eb67af57c0.js +1 -0
- package/.next/static/chunks/main-b6d727aa9248d4f2.js +1 -0
- package/.next/static/chunks/{webpack-3fc79fab9bb738d7.js → webpack-4f85dcef6279c6ee.js} +1 -1
- package/.next/static/css/28be35e4727ae7ef.css +3 -0
- package/.next/trace +5 -5
- package/.next/types/app/api/repositories/excluded/route.ts +343 -0
- package/.next/types/app/api/repositories/restore/route.ts +343 -0
- package/README.md +2 -2
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +2 -13
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +3 -7
- package/dist/cli/config/security-messages.d.ts +11 -0
- package/dist/cli/config/security-messages.d.ts.map +1 -0
- package/dist/cli/config/security-messages.js +29 -0
- package/dist/cli/types/index.d.ts +0 -1
- package/dist/cli/types/index.d.ts.map +1 -1
- package/dist/cli/utils/daemon.d.ts.map +1 -1
- package/dist/cli/utils/daemon.js +3 -7
- package/dist/cli/utils/env-setup.d.ts +0 -4
- package/dist/cli/utils/env-setup.d.ts.map +1 -1
- package/dist/cli/utils/env-setup.js +0 -14
- package/dist/cli/utils/security-logger.d.ts.map +1 -1
- package/dist/cli/utils/security-logger.js +1 -2
- package/dist/server/src/lib/auto-yes-manager.js +13 -5
- package/dist/server/src/lib/claude-poller.js +337 -0
- package/dist/server/src/lib/cli-patterns.js +9 -2
- package/dist/server/src/lib/cli-tools/base.js +7 -1
- package/dist/server/src/lib/cli-tools/codex.js +14 -2
- package/dist/server/src/lib/cli-tools/manager.js +27 -0
- package/dist/server/src/lib/cli-tools/types.js +7 -0
- package/dist/server/src/lib/cli-tools/validation.js +41 -0
- package/dist/server/src/lib/db.js +23 -0
- package/dist/server/src/lib/env.js +0 -17
- package/dist/server/src/lib/logger.js +0 -4
- package/dist/server/src/lib/prompt-detector.js +129 -31
- package/dist/server/src/lib/ws-server.js +12 -1
- package/dist/server/src/types/sidebar.js +16 -31
- package/dist/server/src/types/slash-commands.js +2 -0
- package/package.json +1 -1
- package/.next/server/chunks/1318.js +0 -29
- package/.next/server/chunks/2597.js +0 -1
- package/.next/server/chunks/2648.js +0 -1
- package/.next/server/chunks/9703.js +0 -31
- package/.next/server/chunks/9723.js +0 -19
- package/.next/server/edge-runtime-webpack.js +0 -2
- package/.next/server/edge-runtime-webpack.js.map +0 -1
- package/.next/server/src/middleware.js +0 -14
- package/.next/server/src/middleware.js.map +0 -1
- package/.next/static/chunks/2853-d11a80b03c9a1640.js +0 -1
- package/.next/static/chunks/4327.3b84aa049900fdeb.js +0 -60
- package/.next/static/chunks/816-7e340dad784be28c.js +0 -1
- package/.next/static/chunks/9365-733d8c05712d2888.js +0 -1
- package/.next/static/chunks/app/layout-37e55f11dcc8b1bf.js +0 -1
- package/.next/static/chunks/app/page-fe35d61f14b90a51.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-58fcf2e63c056743.js +0 -1
- package/.next/static/chunks/main-a960f4a5e1a2f598.js +0 -1
- package/.next/static/css/376b339640084689.css +0 -3
- /package/.next/static/{564GHwluX5xIv9qpqLJV2 → bdUePCj-b9Gv5okYGp49O}/_buildManifest.js +0 -0
- /package/.next/static/{564GHwluX5xIv9qpqLJV2 → bdUePCj-b9Gv5okYGp49O}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=9578,e.ids=[9578],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},11303:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>b,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>j,staticGenerationAsyncStorage:()=>x});var o={};t.r(o),t.d(o,{GET:()=>c});var s=t(49303),n=t(88716),i=t(60670),u=t(87070),p=t(97425),a=t(
|
|
1
|
+
"use strict";(()=>{var e={};e.id=9578,e.ids=[9578],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},11303:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>m,patchFetch:()=>b,requestAsyncStorage:()=>l,routeModule:()=>d,serverHooks:()=>j,staticGenerationAsyncStorage:()=>x});var o={};t.r(o),t.d(o,{GET:()=>c});var s=t(49303),n=t(88716),i=t(60670),u=t(87070),p=t(97425),a=t(65488);async function c(e,{params:r}){try{let{jobId:e}=await r;if(!e)return u.NextResponse.json({success:!1,error:"Job ID is required"},{status:400});let t=(0,p.n)(),o=new a.v(t).getCloneJobStatus(e);if(!o)return u.NextResponse.json({success:!1,error:"Clone job not found"},{status:404});let s={success:!0,jobId:o.jobId,status:o.status,progress:o.progress,repositoryId:o.repositoryId};return o.error&&(s.error=o.error),u.NextResponse.json(s,{status:200})}catch(e){return console.error("[Clone Status API] Unexpected error:",e),u.NextResponse.json({success:!1,error:"Failed to get clone job status"},{status:500})}}let d=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/repositories/clone/[jobId]/route",pathname:"/api/repositories/clone/[jobId]",filename:"route",bundlePath:"app/api/repositories/clone/[jobId]/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/clone/[jobId]/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:l,staticGenerationAsyncStorage:x,serverHooks:j}=d,m="/api/repositories/clone/[jobId]/route";function b(){return(0,i.patchFetch)({serverHooks:j,staticGenerationAsyncStorage:x})}}};var r=require("../../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8948,5972,7425,5488],()=>t(11303));module.exports=o})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/bindings/bindings.js","../../../../../../../node_modules/bindings/package.json","../../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/package.json","../../../../../../../package.json","../../../../../../package.json","../../../../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/bindings/bindings.js","../../../../../../../node_modules/bindings/package.json","../../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/package.json","../../../../../../../package.json","../../../../../../package.json","../../../../../chunks/5488.js","../../../../../chunks/5972.js","../../../../../chunks/7425.js","../../../../../chunks/8948.js","../../../../../webpack-runtime.js"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=541,e.ids=[541],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},28841:(e,r,o)=>{o.r(r),o.d(r,{originalPathname:()=>j,patchFetch:()=>R,requestAsyncStorage:()=>g,routeModule:()=>d,serverHooks:()=>x,staticGenerationAsyncStorage:()=>m});var t={};o.r(t),o.d(t,{POST:()=>l});var s=o(49303),n=o(88716),a=o(60670),i=o(87070),c=o(97425),u=o(
|
|
1
|
+
"use strict";(()=>{var e={};e.id=541,e.ids=[541],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},28841:(e,r,o)=>{o.r(r),o.d(r,{originalPathname:()=>j,patchFetch:()=>R,requestAsyncStorage:()=>g,routeModule:()=>d,serverHooks:()=>x,staticGenerationAsyncStorage:()=>m});var t={};o.r(t),o.d(t,{POST:()=>l});var s=o(49303),n=o(88716),a=o(60670),i=o(87070),c=o(97425),u=o(65488);let p="[Clone API]";async function l(e){try{let{cloneUrl:r,targetDir:o}=await e.json();if(!r||"string"!=typeof r||""===r.trim())return i.NextResponse.json({success:!1,error:{category:"validation",code:"EMPTY_URL",message:"Clone URL is required",recoverable:!0,suggestedAction:"Please enter a valid git clone URL"}},{status:400});let t=(0,c.n)(),s=new u.v(t);console.info(`${p} Starting clone job for: ${r}`);let n=await s.startCloneJob(r.trim(),o);if(!n.success){let e=400;return(n.error?.code==="DUPLICATE_CLONE_URL"||n.error?.code==="CLONE_IN_PROGRESS")&&(e=409),console.warn(`${p} Clone job failed: ${n.error?.code} - ${n.error?.message}`),i.NextResponse.json({success:!1,error:n.error,jobId:n.jobId},{status:e})}return console.info(`${p} Clone job created: ${n.jobId}`),i.NextResponse.json({success:!0,jobId:n.jobId,status:"pending",message:"Clone job started"},{status:202})}catch(e){return console.error(`${p} Unexpected error:`,e),i.NextResponse.json({success:!1,error:{category:"system",code:"INTERNAL_ERROR",message:"Failed to start clone job",recoverable:!1,suggestedAction:"Please try again later"}},{status:500})}}let d=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/repositories/clone/route",pathname:"/api/repositories/clone",filename:"route",bundlePath:"app/api/repositories/clone/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/clone/route.ts",nextConfigOutput:"",userland:t}),{requestAsyncStorage:g,staticGenerationAsyncStorage:m,serverHooks:x}=d,j="/api/repositories/clone/route";function R(){return(0,a.patchFetch)({serverHooks:x,staticGenerationAsyncStorage:m})}}};var r=require("../../../../webpack-runtime.js");r.C(e);var o=e=>r(r.s=e),t=r.X(0,[8948,5972,7425,5488],()=>o(28841));module.exports=t})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/5488.js","../../../../chunks/5972.js","../../../../chunks/7425.js","../../../../chunks/8948.js","../../../../webpack-runtime.js"]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";(()=>{var e={};e.id=9036,e.ids=[9036],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},1724:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>_,patchFetch:()=>E,requestAsyncStorage:()=>c,routeModule:()=>p,serverHooks:()=>h,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{GET:()=>u});var n=t(49303),a=t(88716),l=t(60670),s=t(87070),i=t(97425),d=t(4709);async function u(){try{let e=(0,i.n)(),r=(0,d.Bj)(e);return s.NextResponse.json({success:!0,repositories:r})}catch(e){return console.error("[Excluded Repositories] Error:",e),s.NextResponse.json({success:!1,error:"Failed to get excluded repositories"},{status:500})}}let p=new n.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/repositories/excluded/route",pathname:"/api/repositories/excluded",filename:"route",bundlePath:"app/api/repositories/excluded/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/excluded/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:c,staticGenerationAsyncStorage:m,serverHooks:h}=p,_="/api/repositories/excluded/route";function E(){return(0,l.patchFetch)({serverHooks:h,staticGenerationAsyncStorage:m})}},4709:(e,r,t)=>{t.d(r,{Bj:()=>v,Bm:()=>C,Hf:()=>E,L_:()=>U,RT:()=>f,VZ:()=>h,Xo:()=>_,fC:()=>b,h4:()=>d,mm:()=>g,nb:()=>u,sN:()=>R});var o=t(84770),n=t(55315),a=t.n(n),l=t(43753);function s(e){return{id:e.id,name:e.name,path:e.path,enabled:1===e.enabled,cloneUrl:e.clone_url||void 0,normalizedCloneUrl:e.normalized_clone_url||void 0,cloneSource:e.clone_source,isEnvManaged:1===e.is_env_managed,createdAt:new Date(e.created_at),updatedAt:new Date(e.updated_at)}}function i(e){return{id:e.id,cloneUrl:e.clone_url,normalizedCloneUrl:e.normalized_clone_url,targetPath:e.target_path,repositoryId:e.repository_id||void 0,status:e.status,pid:e.pid||void 0,progress:e.progress,errorCategory:e.error_category||void 0,errorCode:e.error_code||void 0,errorMessage:e.error_message||void 0,startedAt:e.started_at?new Date(e.started_at):void 0,completedAt:e.completed_at?new Date(e.completed_at):void 0,createdAt:new Date(e.created_at)}}function d(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
2
|
+
INSERT INTO repositories (
|
|
3
|
+
id, name, path, enabled, clone_url, normalized_clone_url,
|
|
4
|
+
clone_source, is_env_managed, created_at, updated_at
|
|
5
|
+
)
|
|
6
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
7
|
+
`).run(t,r.name,r.path,!1!==r.enabled?1:0,r.cloneUrl||null,r.normalizedCloneUrl||null,r.cloneSource,r.isEnvManaged?1:0,n,n),{id:t,name:r.name,path:r.path,enabled:!1!==r.enabled,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,cloneSource:r.cloneSource,isEnvManaged:r.isEnvManaged||!1,createdAt:new Date(n),updatedAt:new Date(n)}}function u(e,r){let t=e.prepare(`
|
|
8
|
+
SELECT * FROM repositories
|
|
9
|
+
WHERE normalized_clone_url = ?
|
|
10
|
+
`).get(r);return t?s(t):null}function p(e,r){let t=e.prepare(`
|
|
11
|
+
SELECT * FROM repositories
|
|
12
|
+
WHERE path = ?
|
|
13
|
+
`).get(r);return t?s(t):null}function c(e,r,t){let o=Date.now(),n=["updated_at = ?"],a=[o];void 0!==t.name&&(n.push("name = ?"),a.push(t.name)),void 0!==t.enabled&&(n.push("enabled = ?"),a.push(t.enabled?1:0)),void 0!==t.cloneUrl&&(n.push("clone_url = ?"),a.push(t.cloneUrl||null)),void 0!==t.normalizedCloneUrl&&(n.push("normalized_clone_url = ?"),a.push(t.normalizedCloneUrl||null)),a.push(r),e.prepare(`
|
|
14
|
+
UPDATE repositories
|
|
15
|
+
SET ${n.join(", ")}
|
|
16
|
+
WHERE id = ?
|
|
17
|
+
`).run(...a)}function m(e){return a().resolve(e)}function h(e){if(!e||"string"!=typeof e)return{valid:!1,error:"repositoryPath is required"};if(e.includes("\0"))return{valid:!1,error:"Invalid repository path"};let r=m(e);return(0,l.F)(r)?{valid:!1,error:"Invalid repository path"}:{valid:!0,resolvedPath:r}}function _(e,r){for(let t of r){let r=m(t);p(e,r)||d(e,{name:a().basename(r),path:r,cloneSource:"local",isEnvManaged:!0,enabled:!0})}}function E(e,r){let t=e.prepare("SELECT path FROM repositories WHERE enabled = 0").all().map(e=>e.path);return r.filter(e=>!t.includes(m(e)))}function g(e,r){let t=m(r),o=p(e,t);if(o)c(e,o.id,{enabled:!1});else{if(e.prepare("SELECT COUNT(*) as count FROM repositories WHERE enabled = 0").get().count>=1e3)throw Error("Disabled repository limit exceeded");d(e,{name:a().basename(t),path:t,cloneSource:"local",isEnvManaged:!1,enabled:!1})}}function v(e){return e.prepare("SELECT * FROM repositories WHERE enabled = 0 ORDER BY name ASC").all().map(s)}function f(e,r){let t=p(e,m(r));return t?(c(e,t.id,{enabled:!0}),{...t,enabled:!0}):null}function C(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
18
|
+
INSERT INTO clone_jobs (
|
|
19
|
+
id, clone_url, normalized_clone_url, target_path,
|
|
20
|
+
status, progress, created_at
|
|
21
|
+
)
|
|
22
|
+
VALUES (?, ?, ?, ?, 'pending', 0, ?)
|
|
23
|
+
`).run(t,r.cloneUrl,r.normalizedCloneUrl,r.targetPath,n),{id:t,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,targetPath:r.targetPath,status:"pending",progress:0,createdAt:new Date(n)}}function U(e,r){let t=e.prepare(`
|
|
24
|
+
SELECT * FROM clone_jobs
|
|
25
|
+
WHERE id = ?
|
|
26
|
+
`).get(r);return t?i(t):null}function R(e,r,t){let o=[],n=[];void 0!==t.status&&(o.push("status = ?"),n.push(t.status)),void 0!==t.pid&&(o.push("pid = ?"),n.push(t.pid)),void 0!==t.progress&&(o.push("progress = ?"),n.push(t.progress)),void 0!==t.repositoryId&&(o.push("repository_id = ?"),n.push(t.repositoryId)),void 0!==t.errorCategory&&(o.push("error_category = ?"),n.push(t.errorCategory)),void 0!==t.errorCode&&(o.push("error_code = ?"),n.push(t.errorCode)),void 0!==t.errorMessage&&(o.push("error_message = ?"),n.push(t.errorMessage)),void 0!==t.startedAt&&(o.push("started_at = ?"),n.push(t.startedAt.getTime())),void 0!==t.completedAt&&(o.push("completed_at = ?"),n.push(t.completedAt.getTime())),0!==o.length&&(n.push(r),e.prepare(`
|
|
27
|
+
UPDATE clone_jobs
|
|
28
|
+
SET ${o.join(", ")}
|
|
29
|
+
WHERE id = ?
|
|
30
|
+
`).run(...n))}function b(e,r){let t=e.prepare(`
|
|
31
|
+
SELECT * FROM clone_jobs
|
|
32
|
+
WHERE normalized_clone_url = ?
|
|
33
|
+
AND status IN ('pending', 'running')
|
|
34
|
+
ORDER BY created_at DESC
|
|
35
|
+
LIMIT 1
|
|
36
|
+
`).get(r);return t?i(t):null}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8948,5972,7425],()=>t(1724));module.exports=o})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/5972.js","../../../../chunks/7425.js","../../../../chunks/8948.js","../../../../webpack-runtime.js"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"success":true,"repositories":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"status":200,"headers":{"content-type":"application/json","x-next-cache-tags":"_N_T_/layout,_N_T_/api/layout,_N_T_/api/repositories/layout,_N_T_/api/repositories/excluded/layout,_N_T_/api/repositories/excluded/route,_N_T_/api/repositories/excluded"}}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";(()=>{var e={};e.id=3286,e.ids=[3286],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},14371:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>E,patchFetch:()=>v,requestAsyncStorage:()=>g,routeModule:()=>m,serverHooks:()=>_,staticGenerationAsyncStorage:()=>f});var o={};t.r(o),t.d(o,{PUT:()=>h});var n=t(49303),a=t(88716),s=t(60670),i=t(87070),l=t(97425),p=t(4709),u=t(67722),d=t(92048),c=t.n(d);async function h(e){try{let{repositoryPath:r}=await e.json(),t=(0,p.VZ)(r);if(!t.valid)return i.NextResponse.json({success:!1,error:t.error},{status:400});let o=t.resolvedPath,n=(0,l.n)();if(!(0,p.RT)(n,r))return i.NextResponse.json({success:!1,error:"Repository not found in exclusion list"},{status:404});if(!c().existsSync(o))return i.NextResponse.json({success:!0,worktreeCount:0,warning:"Repository path not found on disk. No worktrees were restored."});let a=await (0,u.e9)(o);return a.length>0&&(0,u.h2)(n,a),i.NextResponse.json({success:!0,worktreeCount:a.length,message:`Repository restored with ${a.length} worktree(s)`})}catch(e){return console.error("[Repository Restore] Error:",e),i.NextResponse.json({success:!1,error:"Failed to restore repository"},{status:500})}}let m=new n.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/repositories/restore/route",pathname:"/api/repositories/restore",filename:"route",bundlePath:"app/api/repositories/restore/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/restore/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:g,staticGenerationAsyncStorage:f,serverHooks:_}=m,E="/api/repositories/restore/route";function v(){return(0,s.patchFetch)({serverHooks:_,staticGenerationAsyncStorage:f})}},4709:(e,r,t)=>{t.d(r,{Bj:()=>E,Bm:()=>R,Hf:()=>f,L_:()=>y,RT:()=>v,VZ:()=>m,Xo:()=>g,fC:()=>w,h4:()=>p,mm:()=>_,nb:()=>u,sN:()=>b});var o=t(84770),n=t(55315),a=t.n(n),s=t(43753);function i(e){return{id:e.id,name:e.name,path:e.path,enabled:1===e.enabled,cloneUrl:e.clone_url||void 0,normalizedCloneUrl:e.normalized_clone_url||void 0,cloneSource:e.clone_source,isEnvManaged:1===e.is_env_managed,createdAt:new Date(e.created_at),updatedAt:new Date(e.updated_at)}}function l(e){return{id:e.id,cloneUrl:e.clone_url,normalizedCloneUrl:e.normalized_clone_url,targetPath:e.target_path,repositoryId:e.repository_id||void 0,status:e.status,pid:e.pid||void 0,progress:e.progress,errorCategory:e.error_category||void 0,errorCode:e.error_code||void 0,errorMessage:e.error_message||void 0,startedAt:e.started_at?new Date(e.started_at):void 0,completedAt:e.completed_at?new Date(e.completed_at):void 0,createdAt:new Date(e.created_at)}}function p(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
2
|
+
INSERT INTO repositories (
|
|
3
|
+
id, name, path, enabled, clone_url, normalized_clone_url,
|
|
4
|
+
clone_source, is_env_managed, created_at, updated_at
|
|
5
|
+
)
|
|
6
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
7
|
+
`).run(t,r.name,r.path,!1!==r.enabled?1:0,r.cloneUrl||null,r.normalizedCloneUrl||null,r.cloneSource,r.isEnvManaged?1:0,n,n),{id:t,name:r.name,path:r.path,enabled:!1!==r.enabled,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,cloneSource:r.cloneSource,isEnvManaged:r.isEnvManaged||!1,createdAt:new Date(n),updatedAt:new Date(n)}}function u(e,r){let t=e.prepare(`
|
|
8
|
+
SELECT * FROM repositories
|
|
9
|
+
WHERE normalized_clone_url = ?
|
|
10
|
+
`).get(r);return t?i(t):null}function d(e,r){let t=e.prepare(`
|
|
11
|
+
SELECT * FROM repositories
|
|
12
|
+
WHERE path = ?
|
|
13
|
+
`).get(r);return t?i(t):null}function c(e,r,t){let o=Date.now(),n=["updated_at = ?"],a=[o];void 0!==t.name&&(n.push("name = ?"),a.push(t.name)),void 0!==t.enabled&&(n.push("enabled = ?"),a.push(t.enabled?1:0)),void 0!==t.cloneUrl&&(n.push("clone_url = ?"),a.push(t.cloneUrl||null)),void 0!==t.normalizedCloneUrl&&(n.push("normalized_clone_url = ?"),a.push(t.normalizedCloneUrl||null)),a.push(r),e.prepare(`
|
|
14
|
+
UPDATE repositories
|
|
15
|
+
SET ${n.join(", ")}
|
|
16
|
+
WHERE id = ?
|
|
17
|
+
`).run(...a)}function h(e){return a().resolve(e)}function m(e){if(!e||"string"!=typeof e)return{valid:!1,error:"repositoryPath is required"};if(e.includes("\0"))return{valid:!1,error:"Invalid repository path"};let r=h(e);return(0,s.F)(r)?{valid:!1,error:"Invalid repository path"}:{valid:!0,resolvedPath:r}}function g(e,r){for(let t of r){let r=h(t);d(e,r)||p(e,{name:a().basename(r),path:r,cloneSource:"local",isEnvManaged:!0,enabled:!0})}}function f(e,r){let t=e.prepare("SELECT path FROM repositories WHERE enabled = 0").all().map(e=>e.path);return r.filter(e=>!t.includes(h(e)))}function _(e,r){let t=h(r),o=d(e,t);if(o)c(e,o.id,{enabled:!1});else{if(e.prepare("SELECT COUNT(*) as count FROM repositories WHERE enabled = 0").get().count>=1e3)throw Error("Disabled repository limit exceeded");p(e,{name:a().basename(t),path:t,cloneSource:"local",isEnvManaged:!1,enabled:!1})}}function E(e){return e.prepare("SELECT * FROM repositories WHERE enabled = 0 ORDER BY name ASC").all().map(i)}function v(e,r){let t=d(e,h(r));return t?(c(e,t.id,{enabled:!0}),{...t,enabled:!0}):null}function R(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
18
|
+
INSERT INTO clone_jobs (
|
|
19
|
+
id, clone_url, normalized_clone_url, target_path,
|
|
20
|
+
status, progress, created_at
|
|
21
|
+
)
|
|
22
|
+
VALUES (?, ?, ?, ?, 'pending', 0, ?)
|
|
23
|
+
`).run(t,r.cloneUrl,r.normalizedCloneUrl,r.targetPath,n),{id:t,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,targetPath:r.targetPath,status:"pending",progress:0,createdAt:new Date(n)}}function y(e,r){let t=e.prepare(`
|
|
24
|
+
SELECT * FROM clone_jobs
|
|
25
|
+
WHERE id = ?
|
|
26
|
+
`).get(r);return t?l(t):null}function b(e,r,t){let o=[],n=[];void 0!==t.status&&(o.push("status = ?"),n.push(t.status)),void 0!==t.pid&&(o.push("pid = ?"),n.push(t.pid)),void 0!==t.progress&&(o.push("progress = ?"),n.push(t.progress)),void 0!==t.repositoryId&&(o.push("repository_id = ?"),n.push(t.repositoryId)),void 0!==t.errorCategory&&(o.push("error_category = ?"),n.push(t.errorCategory)),void 0!==t.errorCode&&(o.push("error_code = ?"),n.push(t.errorCode)),void 0!==t.errorMessage&&(o.push("error_message = ?"),n.push(t.errorMessage)),void 0!==t.startedAt&&(o.push("started_at = ?"),n.push(t.startedAt.getTime())),void 0!==t.completedAt&&(o.push("completed_at = ?"),n.push(t.completedAt.getTime())),0!==o.length&&(n.push(r),e.prepare(`
|
|
27
|
+
UPDATE clone_jobs
|
|
28
|
+
SET ${o.join(", ")}
|
|
29
|
+
WHERE id = ?
|
|
30
|
+
`).run(...n))}function w(e,r){let t=e.prepare(`
|
|
31
|
+
SELECT * FROM clone_jobs
|
|
32
|
+
WHERE normalized_clone_url = ?
|
|
33
|
+
AND status IN ('pending', 'running')
|
|
34
|
+
ORDER BY created_at DESC
|
|
35
|
+
LIMIT 1
|
|
36
|
+
`).get(r);return t?l(t):null}},67722:(e,r,t)=>{t.d(r,{Lj:()=>d,a$:()=>p,e9:()=>u,h2:()=>c});var o=t(61282),n=t(21764),a=t(55315),s=t.n(a),i=t(75748),l=t(57569);function p(){let e=process.env.WORKTREE_REPOS;if(e&&e.trim())return e.split(",").map(e=>e.trim()).filter(e=>e.length>0);let r=(0,l.Hb)("CM_ROOT_DIR");return r&&r.trim()?[r.trim()]:[]}async function u(e){let r=(0,n.promisify)(o.exec);try{let{stdout:t}=await r("git worktree list",{cwd:e}),o=function(e){if(!e||""===e.trim())return[];let r=e.trim().split("\n"),t=[];for(let e of r){let r=e.trim();if(!r)continue;let o=r.match(/^(.+?)\s+([a-z0-9]+)\s+(?:\[(.+?)\]|\(detached HEAD\))/);if(o){let[,e,r,n]=o;t.push({path:e.trim(),branch:n||`detached-${r}`,commit:r})}}return t}(t),n=s().resolve(e),a=s().basename(n);return o.map(e=>({id:function(e,r){if(!e)return"";let t=e=>e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,""),o=t(e);if(r){let e=t(r);return`${e}-${o}`}return o}(e.branch,a),name:e.branch,path:s().resolve(e.path),repositoryPath:n,repositoryName:a})).filter(e=>["/etc","/root","/sys","/proc","/dev","/boot","/bin","/sbin","/usr/bin","/usr/sbin"].some(r=>e.path.startsWith(r))?(console.warn(`Skipping potentially unsafe worktree path: ${e.path}`),!1):!(e.path.includes("\0")||e.path.includes(".."))||(console.warn(`Skipping path with potentially malicious characters: ${e.path}`),!1))}catch(t){let e=t instanceof Error?t.message:String(t),r=t.code;if(e?.includes("not a git repository")||128===r)return[];throw t}}async function d(e){let r=[];for(let t of e)try{console.log(`Scanning repository: ${t}`);let e=await u(t);r.push(...e),console.log(` Found ${e.length} worktree(s)`)}catch(e){console.error(`Error scanning repository ${t}:`,e)}return r}function c(e,r){if(0===r.length)return;let t=new Map;for(let e of r){let r=e.repositoryPath||"";t.has(r)||t.set(r,[]),t.get(r).push(e)}for(let[r,o]of t){if(!r)continue;let t=(0,i.Pv)(e,r),n=new Set(o.map(e=>e.id)),a=t.filter(e=>!n.has(e));if(a.length>0){let t=(0,i.pM)(e,a);console.log(`Removed ${t.deletedCount} deleted worktree(s) from ${r}`)}for(let r of o)(0,i.ly)(e,r)}}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8948,5972,7425],()=>t(14371));module.exports=o})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/5972.js","../../../../chunks/7425.js","../../../../chunks/8948.js","../../../../webpack-runtime.js"]}
|
|
@@ -1 +1,36 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=5361,e.ids=[5361],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},78893:e=>{e.exports=require("buffer")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},17702:e=>{e.exports=require("events")},92048:e=>{e.exports=require("fs")},20629:e=>{e.exports=require("fs/promises")},32615:e=>{e.exports=require("http")},35240:e=>{e.exports=require("https")},98216:e=>{e.exports=require("net")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},76162:e=>{e.exports=require("stream")},82452:e=>{e.exports=require("tls")},17360:e=>{e.exports=require("url")},21764:e=>{e.exports=require("util")},71568:e=>{e.exports=require("zlib")},
|
|
1
|
+
"use strict";(()=>{var e={};e.id=5361,e.ids=[5361],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},78893:e=>{e.exports=require("buffer")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},17702:e=>{e.exports=require("events")},92048:e=>{e.exports=require("fs")},20629:e=>{e.exports=require("fs/promises")},32615:e=>{e.exports=require("http")},35240:e=>{e.exports=require("https")},98216:e=>{e.exports=require("net")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},76162:e=>{e.exports=require("stream")},82452:e=>{e.exports=require("tls")},17360:e=>{e.exports=require("url")},21764:e=>{e.exports=require("util")},71568:e=>{e.exports=require("zlib")},86393:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>A,patchFetch:()=>C,requestAsyncStorage:()=>x,routeModule:()=>y,serverHooks:()=>T,staticGenerationAsyncStorage:()=>R});var o={};t.r(o),t.d(o,{DELETE:()=>b});var n=t(49303),s=t(88716),l=t(60670),a=t(87070),i=t(97425),u=t(75748),p=t(4709),d=t(59991),c=t(43632),f=t(60667),m=t(83513);let g="[Session Cleanup]";async function h(e,r){let t={worktreeId:e,sessionsKilled:[],sessionErrors:[],pollersStopped:[],pollerErrors:[]};for(let o of m.t){try{await r(e,o)&&(t.sessionsKilled.push(o),console.info(`${g} Killed session: ${e}/${o}`))}catch(n){let r=`${o}: ${n instanceof Error?n.message:String(n)}`;t.sessionErrors.push(r),console.warn(`${g} Failed to kill session ${e}/${o}:`,n)}try{(0,d.FN)(e,o),t.pollersStopped.push(`response-poller:${o}`)}catch(n){let r=`response-poller:${o}: ${n instanceof Error?n.message:String(n)}`;t.pollerErrors.push(r),console.warn(`${g} Failed to stop response-poller ${e}/${o}:`,n)}}try{(0,c.FN)(e),t.pollersStopped.push("claude-poller")}catch(o){let r=`claude-poller: ${o instanceof Error?o.message:String(o)}`;t.pollerErrors.push(r),console.warn(`${g} Failed to stop claude-poller ${e}:`,o)}try{(0,f.Qz)(e),t.pollersStopped.push("auto-yes-poller")}catch(o){let r=`auto-yes-poller: ${o instanceof Error?o.message:String(o)}`;t.pollerErrors.push(r),console.warn(`${g} Failed to stop auto-yes-poller ${e}:`,o)}return t}async function E(e,r){let t=[],o=[];for(let n of e){let e=await h(n,r);for(let r of(t.push(e),e.sessionErrors))o.push(`Session kill error (${n}): ${r}`);for(let r of e.pollerErrors)o.push(`Poller stop error (${n}): ${r}`)}return{results:t,warnings:o}}var _=t(25079),v=t(43839),w=t(10927);let $="[Repository Delete]";async function S(e,r){let t=v.g.getInstance().getTool(r);if(!await t.isRunning(e))return!1;let o=t.getSessionName(e);return(0,w.AJ)(o)}async function b(e){try{let r;let{repositoryPath:t}=await e.json(),o=(0,p.VZ)(t);if(!o.valid)return a.NextResponse.json({success:!1,error:o.error},{status:400});let n=(0,i.n)();(0,p.mm)(n,t);let s=(0,u.Pv)(n,t);if(0===s.length)return a.NextResponse.json({success:!1,error:"Repository not found"},{status:404});console.info(`${$} Starting deletion: ${t}, worktrees: ${s.length}`);let l=await E(s,S);for(let e of l.results)e.sessionsKilled.length>0&&console.info(`${$} Sessions killed for ${e.worktreeId}: ${e.sessionsKilled.join(", ")}`),e.sessionErrors.length>0&&console.warn(`${$} Session kill errors for ${e.worktreeId}: ${e.sessionErrors.join(", ")}`);(0,_.ZV)(s);try{r=(0,u.DF)(n,t).deletedCount,console.info(`${$} Successfully deleted ${r} worktrees from: ${t}`)}catch(e){return console.error(`${$} Database deletion failed for ${t}:`,e),a.NextResponse.json({success:!1,error:"Database deletion failed"},{status:500})}(0,_.ps)("repository_deleted",{worktreeId:"global",repositoryPath:t,deletedWorktreeIds:s});let d={success:!0,deletedWorktreeCount:r,deletedWorktreeIds:s};return l.warnings.length>0?(d.warnings=l.warnings,console.info(`${$} Completed with ${l.warnings.length} warnings: ${t}`)):console.info(`${$} Completed successfully: ${t}`),a.NextResponse.json(d,{status:200})}catch(e){return console.error(`${$} Unexpected error:`,e),a.NextResponse.json({success:!1,error:"Failed to delete repository"},{status:500})}}let y=new n.AppRouteRouteModule({definition:{kind:s.x.APP_ROUTE,page:"/api/repositories/route",pathname:"/api/repositories",filename:"route",bundlePath:"app/api/repositories/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:x,staticGenerationAsyncStorage:R,serverHooks:T}=y,A="/api/repositories/route";function C(){return(0,l.patchFetch)({serverHooks:T,staticGenerationAsyncStorage:R})}},60667:(e,r,t)=>{t.d(r,{bq:()=>c,gf:()=>m,bY:()=>f,w:()=>E,Qz:()=>_});var o=t(89194),n=t(63661),s=t(10927),l=t(43839),a=t(19377);let i=/^[a-zA-Z0-9_-]+$/,u=globalThis.__autoYesStates??(globalThis.__autoYesStates=new Map),p=globalThis.__autoYesPollerStates??(globalThis.__autoYesPollerStates=new Map);function d(e){return Date.now()>e.expiresAt}function c(e){let r=u.get(e);if(!r)return null;if(d(r)){let t={...r,enabled:!1};return u.set(e,t),t}return r}function f(e,r){if(r){let r=Date.now(),t={enabled:!0,enabledAt:r,expiresAt:r+36e5};return u.set(e,t),t}{let r=u.get(e),t={enabled:!1,enabledAt:r?.enabledAt??0,expiresAt:r?.expiresAt??0};return u.set(e,t),t}}function m(e){let r=p.get(e);return r?.lastServerResponseTimestamp??null}async function g(e,r){if(!p.get(e))return;let t=c(e);if(!t?.enabled||d(t)){_(e);return}try{let t=await (0,o.NA)(e,r,5e3),i=(0,a.vp)(t);if((0,a.Wg)(r,i)){h(e,r);return}let u=(0,n.F)(i);if(!u.isPrompt||!u.promptData){h(e,r);return}let d=function(e){if("yes_no"===e.type)return"y";if("multiple_choice"===e.type){let r=e.options.find(e=>e.isDefault)??e.options[0];return!r||r.requiresTextInput?null:r.number.toString()}return null}(u.promptData);if(null===d){h(e,r);return}let c=l.g.getInstance().getTool(r).getSessionName(e);await (0,s.Is)(c,d,!1),await new Promise(e=>setTimeout(e,100)),await (0,s.Is)(c,"",!0),function(e,r){let t=p.get(e);t&&(t.lastServerResponseTimestamp=r)}(e,Date.now()),function(e){let r=p.get(e);r&&(r.consecutiveErrors=0,r.currentInterval=2e3)}(e),console.info(`[Auto-Yes Poller] Sent response for worktree: ${e}`)}catch(t){!function(e){let r=p.get(e);if(r){var t;r.consecutiveErrors++,r.currentInterval=(t=r.consecutiveErrors)<5?2e3:Math.min(2e3*Math.pow(2,t-5+1),6e4)}}(e);let r=t instanceof Error?t.message:"Unknown error";console.warn(`[Auto-Yes Poller] Error for worktree ${e}: ${r}`)}h(e,r)}function h(e,r){let t=p.get(e);t&&(t.timerId=setTimeout(()=>{g(e,r)},t.currentInterval))}function E(e,r){if(!(e&&0!==e.length&&i.test(e)))return{started:!1,reason:"invalid worktree ID"};let t=c(e);if(!t?.enabled)return{started:!1,reason:"auto-yes not enabled"};let o=p.has(e);if(!o&&p.size>=50)return{started:!1,reason:"max concurrent pollers reached"};o&&_(e);let n={timerId:null,cliToolId:r,consecutiveErrors:0,currentInterval:2e3,lastServerResponseTimestamp:null};return p.set(e,n),n.timerId=setTimeout(()=>{g(e,r)},2e3),console.info(`[Auto-Yes Poller] Started for worktree: ${e}, cliTool: ${r}`),{started:!0}}function _(e){let r=p.get(e);r&&(r.timerId&&clearTimeout(r.timerId),p.delete(e),console.info(`[Auto-Yes Poller] Stopped for worktree: ${e}`))}},83513:(e,r,t)=>{t.d(r,{t:()=>o});let o=["claude","codex","gemini"]},4709:(e,r,t)=>{t.d(r,{Bj:()=>_,Bm:()=>w,Hf:()=>h,L_:()=>$,RT:()=>v,VZ:()=>m,Xo:()=>g,fC:()=>b,h4:()=>u,mm:()=>E,nb:()=>p,sN:()=>S});var o=t(84770),n=t(55315),s=t.n(n),l=t(43753);function a(e){return{id:e.id,name:e.name,path:e.path,enabled:1===e.enabled,cloneUrl:e.clone_url||void 0,normalizedCloneUrl:e.normalized_clone_url||void 0,cloneSource:e.clone_source,isEnvManaged:1===e.is_env_managed,createdAt:new Date(e.created_at),updatedAt:new Date(e.updated_at)}}function i(e){return{id:e.id,cloneUrl:e.clone_url,normalizedCloneUrl:e.normalized_clone_url,targetPath:e.target_path,repositoryId:e.repository_id||void 0,status:e.status,pid:e.pid||void 0,progress:e.progress,errorCategory:e.error_category||void 0,errorCode:e.error_code||void 0,errorMessage:e.error_message||void 0,startedAt:e.started_at?new Date(e.started_at):void 0,completedAt:e.completed_at?new Date(e.completed_at):void 0,createdAt:new Date(e.created_at)}}function u(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
2
|
+
INSERT INTO repositories (
|
|
3
|
+
id, name, path, enabled, clone_url, normalized_clone_url,
|
|
4
|
+
clone_source, is_env_managed, created_at, updated_at
|
|
5
|
+
)
|
|
6
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
7
|
+
`).run(t,r.name,r.path,!1!==r.enabled?1:0,r.cloneUrl||null,r.normalizedCloneUrl||null,r.cloneSource,r.isEnvManaged?1:0,n,n),{id:t,name:r.name,path:r.path,enabled:!1!==r.enabled,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,cloneSource:r.cloneSource,isEnvManaged:r.isEnvManaged||!1,createdAt:new Date(n),updatedAt:new Date(n)}}function p(e,r){let t=e.prepare(`
|
|
8
|
+
SELECT * FROM repositories
|
|
9
|
+
WHERE normalized_clone_url = ?
|
|
10
|
+
`).get(r);return t?a(t):null}function d(e,r){let t=e.prepare(`
|
|
11
|
+
SELECT * FROM repositories
|
|
12
|
+
WHERE path = ?
|
|
13
|
+
`).get(r);return t?a(t):null}function c(e,r,t){let o=Date.now(),n=["updated_at = ?"],s=[o];void 0!==t.name&&(n.push("name = ?"),s.push(t.name)),void 0!==t.enabled&&(n.push("enabled = ?"),s.push(t.enabled?1:0)),void 0!==t.cloneUrl&&(n.push("clone_url = ?"),s.push(t.cloneUrl||null)),void 0!==t.normalizedCloneUrl&&(n.push("normalized_clone_url = ?"),s.push(t.normalizedCloneUrl||null)),s.push(r),e.prepare(`
|
|
14
|
+
UPDATE repositories
|
|
15
|
+
SET ${n.join(", ")}
|
|
16
|
+
WHERE id = ?
|
|
17
|
+
`).run(...s)}function f(e){return s().resolve(e)}function m(e){if(!e||"string"!=typeof e)return{valid:!1,error:"repositoryPath is required"};if(e.includes("\0"))return{valid:!1,error:"Invalid repository path"};let r=f(e);return(0,l.F)(r)?{valid:!1,error:"Invalid repository path"}:{valid:!0,resolvedPath:r}}function g(e,r){for(let t of r){let r=f(t);d(e,r)||u(e,{name:s().basename(r),path:r,cloneSource:"local",isEnvManaged:!0,enabled:!0})}}function h(e,r){let t=e.prepare("SELECT path FROM repositories WHERE enabled = 0").all().map(e=>e.path);return r.filter(e=>!t.includes(f(e)))}function E(e,r){let t=f(r),o=d(e,t);if(o)c(e,o.id,{enabled:!1});else{if(e.prepare("SELECT COUNT(*) as count FROM repositories WHERE enabled = 0").get().count>=1e3)throw Error("Disabled repository limit exceeded");u(e,{name:s().basename(t),path:t,cloneSource:"local",isEnvManaged:!1,enabled:!1})}}function _(e){return e.prepare("SELECT * FROM repositories WHERE enabled = 0 ORDER BY name ASC").all().map(a)}function v(e,r){let t=d(e,f(r));return t?(c(e,t.id,{enabled:!0}),{...t,enabled:!0}):null}function w(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
18
|
+
INSERT INTO clone_jobs (
|
|
19
|
+
id, clone_url, normalized_clone_url, target_path,
|
|
20
|
+
status, progress, created_at
|
|
21
|
+
)
|
|
22
|
+
VALUES (?, ?, ?, ?, 'pending', 0, ?)
|
|
23
|
+
`).run(t,r.cloneUrl,r.normalizedCloneUrl,r.targetPath,n),{id:t,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,targetPath:r.targetPath,status:"pending",progress:0,createdAt:new Date(n)}}function $(e,r){let t=e.prepare(`
|
|
24
|
+
SELECT * FROM clone_jobs
|
|
25
|
+
WHERE id = ?
|
|
26
|
+
`).get(r);return t?i(t):null}function S(e,r,t){let o=[],n=[];void 0!==t.status&&(o.push("status = ?"),n.push(t.status)),void 0!==t.pid&&(o.push("pid = ?"),n.push(t.pid)),void 0!==t.progress&&(o.push("progress = ?"),n.push(t.progress)),void 0!==t.repositoryId&&(o.push("repository_id = ?"),n.push(t.repositoryId)),void 0!==t.errorCategory&&(o.push("error_category = ?"),n.push(t.errorCategory)),void 0!==t.errorCode&&(o.push("error_code = ?"),n.push(t.errorCode)),void 0!==t.errorMessage&&(o.push("error_message = ?"),n.push(t.errorMessage)),void 0!==t.startedAt&&(o.push("started_at = ?"),n.push(t.startedAt.getTime())),void 0!==t.completedAt&&(o.push("completed_at = ?"),n.push(t.completedAt.getTime())),0!==o.length&&(n.push(r),e.prepare(`
|
|
27
|
+
UPDATE clone_jobs
|
|
28
|
+
SET ${o.join(", ")}
|
|
29
|
+
WHERE id = ?
|
|
30
|
+
`).run(...n))}function b(e,r){let t=e.prepare(`
|
|
31
|
+
SELECT * FROM clone_jobs
|
|
32
|
+
WHERE normalized_clone_url = ?
|
|
33
|
+
AND status IN ('pending', 'running')
|
|
34
|
+
ORDER BY created_at DESC
|
|
35
|
+
LIMIT 1
|
|
36
|
+
`).get(r);return t?i(t):null}}};var r=require("../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8948,5972,3853,4893,7425,9367,7536],()=>t(86393));module.exports=o})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../package.json","../../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../node_modules/better-sqlite3/package.json","../../../../../node_modules/bindings/bindings.js","../../../../../node_modules/bindings/package.json","../../../../../node_modules/file-uri-to-path/index.js","../../../../../node_modules/file-uri-to-path/package.json","../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../node_modules/next/package.json","../../../../../package.json","../../../../package.json","../../../chunks/3853.js","../../../chunks/4893.js","../../../chunks/5972.js","../../../chunks/7425.js","../../../chunks/7536.js","../../../chunks/8948.js","../../../chunks/9367.js","../../../webpack-runtime.js"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=6865,e.ids=[6865],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},75144:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>w,patchFetch:()=>x,requestAsyncStorage:()=>g,routeModule:()=>m,serverHooks:()=>v,staticGenerationAsyncStorage:()=>y});var o={};r.r(o),r.d(o,{POST:()=>f});var s=r(49303),n=r(88716),i=r(60670),a=r(87070),p=r(55315),l=r.n(p),u=r(97425),c=r(67722),d=r(57440),h=r(
|
|
1
|
+
"use strict";(()=>{var e={};e.id=6865,e.ids=[6865],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},75144:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>w,patchFetch:()=>x,requestAsyncStorage:()=>g,routeModule:()=>m,serverHooks:()=>v,staticGenerationAsyncStorage:()=>y});var o={};r.r(o),r.d(o,{POST:()=>f});var s=r(49303),n=r(88716),i=r(60670),a=r(87070),p=r(55315),l=r.n(p),u=r(97425),c=r(67722),d=r(57440),h=r(57569);async function f(e){try{let{repositoryPath:t}=await e.json();if(!t||"string"!=typeof t)return a.NextResponse.json({error:"Repository path is required"},{status:400});let{CM_ROOT_DIR:r}=(0,h.dU)();if(!(0,d.j)(t,r))return a.NextResponse.json({error:"Invalid or unsafe repository path"},{status:400});let o=l().resolve(r,t),s=await (0,c.e9)(o);if(0===s.length)return a.NextResponse.json({error:"No worktrees found in the specified path. Make sure it is a valid git repository."},{status:404});let n=(0,u.n)();return(0,c.h2)(n,s),a.NextResponse.json({success:!0,message:`Successfully scanned and added ${s.length} worktree(s)`,worktreeCount:s.length,repositoryPath:s[0].repositoryPath,repositoryName:s[0].repositoryName},{status:200})}catch(t){console.error("Error scanning repository:",t);let e=t instanceof Error?t.message:"Failed to scan repository";return a.NextResponse.json({error:e},{status:500})}}let m=new s.AppRouteRouteModule({definition:{kind:n.x.APP_ROUTE,page:"/api/repositories/scan/route",pathname:"/api/repositories/scan",filename:"route",bundlePath:"app/api/repositories/scan/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/scan/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:g,staticGenerationAsyncStorage:y,serverHooks:v}=m,w="/api/repositories/scan/route";function x(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:y})}},57440:(e,t,r)=>{r.d(t,{j:()=>n});var o=r(55315),s=r.n(o);function n(e,t){if(!e||""===e.trim()||e.includes("\0"))return!1;let r=e;try{r=decodeURIComponent(e)}catch{r=e}if(r.includes("\0"))return!1;let o=s().resolve(t),n=s().resolve(t,r),i=s().relative(o,n);return!(i.startsWith("..")||s().isAbsolute(i))}},67722:(e,t,r)=>{r.d(t,{Lj:()=>c,a$:()=>l,e9:()=>u,h2:()=>d});var o=r(61282),s=r(21764),n=r(55315),i=r.n(n),a=r(75748),p=r(57569);function l(){let e=process.env.WORKTREE_REPOS;if(e&&e.trim())return e.split(",").map(e=>e.trim()).filter(e=>e.length>0);let t=(0,p.Hb)("CM_ROOT_DIR");return t&&t.trim()?[t.trim()]:[]}async function u(e){let t=(0,s.promisify)(o.exec);try{let{stdout:r}=await t("git worktree list",{cwd:e}),o=function(e){if(!e||""===e.trim())return[];let t=e.trim().split("\n"),r=[];for(let e of t){let t=e.trim();if(!t)continue;let o=t.match(/^(.+?)\s+([a-z0-9]+)\s+(?:\[(.+?)\]|\(detached HEAD\))/);if(o){let[,e,t,s]=o;r.push({path:e.trim(),branch:s||`detached-${t}`,commit:t})}}return r}(r),s=i().resolve(e),n=i().basename(s);return o.map(e=>({id:function(e,t){if(!e)return"";let r=e=>e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,""),o=r(e);if(t){let e=r(t);return`${e}-${o}`}return o}(e.branch,n),name:e.branch,path:i().resolve(e.path),repositoryPath:s,repositoryName:n})).filter(e=>["/etc","/root","/sys","/proc","/dev","/boot","/bin","/sbin","/usr/bin","/usr/sbin"].some(t=>e.path.startsWith(t))?(console.warn(`Skipping potentially unsafe worktree path: ${e.path}`),!1):!(e.path.includes("\0")||e.path.includes(".."))||(console.warn(`Skipping path with potentially malicious characters: ${e.path}`),!1))}catch(r){let e=r instanceof Error?r.message:String(r),t=r.code;if(e?.includes("not a git repository")||128===t)return[];throw r}}async function c(e){let t=[];for(let r of e)try{console.log(`Scanning repository: ${r}`);let e=await u(r);t.push(...e),console.log(` Found ${e.length} worktree(s)`)}catch(e){console.error(`Error scanning repository ${r}:`,e)}return t}function d(e,t){if(0===t.length)return;let r=new Map;for(let e of t){let t=e.repositoryPath||"";r.has(t)||r.set(t,[]),r.get(t).push(e)}for(let[t,o]of r){if(!t)continue;let r=(0,a.Pv)(e,t),s=new Set(o.map(e=>e.id)),n=r.filter(e=>!s.has(e));if(n.length>0){let r=(0,a.pM)(e,n);console.log(`Removed ${r.deletedCount} deleted worktree(s) from ${t}`)}for(let t of o)(0,a.ly)(e,t)}}}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),o=t.X(0,[8948,5972,7425],()=>r(75144));module.exports=o})();
|
|
@@ -1 +1,36 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=3546,e.ids=[3546],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},98165:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>
|
|
1
|
+
"use strict";(()=>{var e={};e.id=3546,e.ids=[3546],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},98165:(e,r,t)=>{t.r(r),t.d(r,{originalPathname:()=>f,patchFetch:()=>E,requestAsyncStorage:()=>h,routeModule:()=>c,serverHooks:()=>g,staticGenerationAsyncStorage:()=>m});var o={};t.r(o),t.d(o,{POST:()=>d});var n=t(49303),a=t(88716),s=t(60670),i=t(87070),l=t(97425),p=t(67722),u=t(4709);async function d(){try{let e=(0,p.a$)();if(0===e.length)return i.NextResponse.json({error:"No repositories configured. Please set WORKTREE_REPOS or CM_ROOT_DIR environment variable."},{status:400});let r=(0,l.n)();(0,u.Xo)(r,e);let t=(0,u.Hf)(r,e),o=await (0,p.Lj)(t);(0,p.h2)(r,o);let n=new Set(o.map(e=>e.repositoryPath));return i.NextResponse.json({success:!0,message:`Successfully synced ${o.length} worktree(s) from ${n.size} repository/repositories`,worktreeCount:o.length,repositoryCount:n.size,repositories:Array.from(n)},{status:200})}catch(r){console.error("Error syncing repositories:",r);let e=r instanceof Error?r.message:"Failed to sync repositories";return i.NextResponse.json({error:e},{status:500})}}let c=new n.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/repositories/sync/route",pathname:"/api/repositories/sync",filename:"route",bundlePath:"app/api/repositories/sync/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/repositories/sync/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:h,staticGenerationAsyncStorage:m,serverHooks:g}=c,f="/api/repositories/sync/route";function E(){return(0,s.patchFetch)({serverHooks:g,staticGenerationAsyncStorage:m})}},4709:(e,r,t)=>{t.d(r,{Bj:()=>_,Bm:()=>y,Hf:()=>f,L_:()=>R,RT:()=>v,VZ:()=>m,Xo:()=>g,fC:()=>C,h4:()=>p,mm:()=>E,nb:()=>u,sN:()=>b});var o=t(84770),n=t(55315),a=t.n(n),s=t(43753);function i(e){return{id:e.id,name:e.name,path:e.path,enabled:1===e.enabled,cloneUrl:e.clone_url||void 0,normalizedCloneUrl:e.normalized_clone_url||void 0,cloneSource:e.clone_source,isEnvManaged:1===e.is_env_managed,createdAt:new Date(e.created_at),updatedAt:new Date(e.updated_at)}}function l(e){return{id:e.id,cloneUrl:e.clone_url,normalizedCloneUrl:e.normalized_clone_url,targetPath:e.target_path,repositoryId:e.repository_id||void 0,status:e.status,pid:e.pid||void 0,progress:e.progress,errorCategory:e.error_category||void 0,errorCode:e.error_code||void 0,errorMessage:e.error_message||void 0,startedAt:e.started_at?new Date(e.started_at):void 0,completedAt:e.completed_at?new Date(e.completed_at):void 0,createdAt:new Date(e.created_at)}}function p(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
2
|
+
INSERT INTO repositories (
|
|
3
|
+
id, name, path, enabled, clone_url, normalized_clone_url,
|
|
4
|
+
clone_source, is_env_managed, created_at, updated_at
|
|
5
|
+
)
|
|
6
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
7
|
+
`).run(t,r.name,r.path,!1!==r.enabled?1:0,r.cloneUrl||null,r.normalizedCloneUrl||null,r.cloneSource,r.isEnvManaged?1:0,n,n),{id:t,name:r.name,path:r.path,enabled:!1!==r.enabled,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,cloneSource:r.cloneSource,isEnvManaged:r.isEnvManaged||!1,createdAt:new Date(n),updatedAt:new Date(n)}}function u(e,r){let t=e.prepare(`
|
|
8
|
+
SELECT * FROM repositories
|
|
9
|
+
WHERE normalized_clone_url = ?
|
|
10
|
+
`).get(r);return t?i(t):null}function d(e,r){let t=e.prepare(`
|
|
11
|
+
SELECT * FROM repositories
|
|
12
|
+
WHERE path = ?
|
|
13
|
+
`).get(r);return t?i(t):null}function c(e,r,t){let o=Date.now(),n=["updated_at = ?"],a=[o];void 0!==t.name&&(n.push("name = ?"),a.push(t.name)),void 0!==t.enabled&&(n.push("enabled = ?"),a.push(t.enabled?1:0)),void 0!==t.cloneUrl&&(n.push("clone_url = ?"),a.push(t.cloneUrl||null)),void 0!==t.normalizedCloneUrl&&(n.push("normalized_clone_url = ?"),a.push(t.normalizedCloneUrl||null)),a.push(r),e.prepare(`
|
|
14
|
+
UPDATE repositories
|
|
15
|
+
SET ${n.join(", ")}
|
|
16
|
+
WHERE id = ?
|
|
17
|
+
`).run(...a)}function h(e){return a().resolve(e)}function m(e){if(!e||"string"!=typeof e)return{valid:!1,error:"repositoryPath is required"};if(e.includes("\0"))return{valid:!1,error:"Invalid repository path"};let r=h(e);return(0,s.F)(r)?{valid:!1,error:"Invalid repository path"}:{valid:!0,resolvedPath:r}}function g(e,r){for(let t of r){let r=h(t);d(e,r)||p(e,{name:a().basename(r),path:r,cloneSource:"local",isEnvManaged:!0,enabled:!0})}}function f(e,r){let t=e.prepare("SELECT path FROM repositories WHERE enabled = 0").all().map(e=>e.path);return r.filter(e=>!t.includes(h(e)))}function E(e,r){let t=h(r),o=d(e,t);if(o)c(e,o.id,{enabled:!1});else{if(e.prepare("SELECT COUNT(*) as count FROM repositories WHERE enabled = 0").get().count>=1e3)throw Error("Disabled repository limit exceeded");p(e,{name:a().basename(t),path:t,cloneSource:"local",isEnvManaged:!1,enabled:!1})}}function _(e){return e.prepare("SELECT * FROM repositories WHERE enabled = 0 ORDER BY name ASC").all().map(i)}function v(e,r){let t=d(e,h(r));return t?(c(e,t.id,{enabled:!0}),{...t,enabled:!0}):null}function y(e,r){let t=(0,o.randomUUID)(),n=Date.now();return e.prepare(`
|
|
18
|
+
INSERT INTO clone_jobs (
|
|
19
|
+
id, clone_url, normalized_clone_url, target_path,
|
|
20
|
+
status, progress, created_at
|
|
21
|
+
)
|
|
22
|
+
VALUES (?, ?, ?, ?, 'pending', 0, ?)
|
|
23
|
+
`).run(t,r.cloneUrl,r.normalizedCloneUrl,r.targetPath,n),{id:t,cloneUrl:r.cloneUrl,normalizedCloneUrl:r.normalizedCloneUrl,targetPath:r.targetPath,status:"pending",progress:0,createdAt:new Date(n)}}function R(e,r){let t=e.prepare(`
|
|
24
|
+
SELECT * FROM clone_jobs
|
|
25
|
+
WHERE id = ?
|
|
26
|
+
`).get(r);return t?l(t):null}function b(e,r,t){let o=[],n=[];void 0!==t.status&&(o.push("status = ?"),n.push(t.status)),void 0!==t.pid&&(o.push("pid = ?"),n.push(t.pid)),void 0!==t.progress&&(o.push("progress = ?"),n.push(t.progress)),void 0!==t.repositoryId&&(o.push("repository_id = ?"),n.push(t.repositoryId)),void 0!==t.errorCategory&&(o.push("error_category = ?"),n.push(t.errorCategory)),void 0!==t.errorCode&&(o.push("error_code = ?"),n.push(t.errorCode)),void 0!==t.errorMessage&&(o.push("error_message = ?"),n.push(t.errorMessage)),void 0!==t.startedAt&&(o.push("started_at = ?"),n.push(t.startedAt.getTime())),void 0!==t.completedAt&&(o.push("completed_at = ?"),n.push(t.completedAt.getTime())),0!==o.length&&(n.push(r),e.prepare(`
|
|
27
|
+
UPDATE clone_jobs
|
|
28
|
+
SET ${o.join(", ")}
|
|
29
|
+
WHERE id = ?
|
|
30
|
+
`).run(...n))}function C(e,r){let t=e.prepare(`
|
|
31
|
+
SELECT * FROM clone_jobs
|
|
32
|
+
WHERE normalized_clone_url = ?
|
|
33
|
+
AND status IN ('pending', 'running')
|
|
34
|
+
ORDER BY created_at DESC
|
|
35
|
+
LIMIT 1
|
|
36
|
+
`).get(r);return t?l(t):null}},67722:(e,r,t)=>{t.d(r,{Lj:()=>d,a$:()=>p,e9:()=>u,h2:()=>c});var o=t(61282),n=t(21764),a=t(55315),s=t.n(a),i=t(75748),l=t(57569);function p(){let e=process.env.WORKTREE_REPOS;if(e&&e.trim())return e.split(",").map(e=>e.trim()).filter(e=>e.length>0);let r=(0,l.Hb)("CM_ROOT_DIR");return r&&r.trim()?[r.trim()]:[]}async function u(e){let r=(0,n.promisify)(o.exec);try{let{stdout:t}=await r("git worktree list",{cwd:e}),o=function(e){if(!e||""===e.trim())return[];let r=e.trim().split("\n"),t=[];for(let e of r){let r=e.trim();if(!r)continue;let o=r.match(/^(.+?)\s+([a-z0-9]+)\s+(?:\[(.+?)\]|\(detached HEAD\))/);if(o){let[,e,r,n]=o;t.push({path:e.trim(),branch:n||`detached-${r}`,commit:r})}}return t}(t),n=s().resolve(e),a=s().basename(n);return o.map(e=>({id:function(e,r){if(!e)return"";let t=e=>e.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,""),o=t(e);if(r){let e=t(r);return`${e}-${o}`}return o}(e.branch,a),name:e.branch,path:s().resolve(e.path),repositoryPath:n,repositoryName:a})).filter(e=>["/etc","/root","/sys","/proc","/dev","/boot","/bin","/sbin","/usr/bin","/usr/sbin"].some(r=>e.path.startsWith(r))?(console.warn(`Skipping potentially unsafe worktree path: ${e.path}`),!1):!(e.path.includes("\0")||e.path.includes(".."))||(console.warn(`Skipping path with potentially malicious characters: ${e.path}`),!1))}catch(t){let e=t instanceof Error?t.message:String(t),r=t.code;if(e?.includes("not a git repository")||128===r)return[];throw t}}async function d(e){let r=[];for(let t of e)try{console.log(`Scanning repository: ${t}`);let e=await u(t);r.push(...e),console.log(` Found ${e.length} worktree(s)`)}catch(e){console.error(`Error scanning repository ${t}:`,e)}return r}function c(e,r){if(0===r.length)return;let t=new Map;for(let e of r){let r=e.repositoryPath||"";t.has(r)||t.set(r,[]),t.get(r).push(e)}for(let[r,o]of t){if(!r)continue;let t=(0,i.Pv)(e,r),n=new Set(o.map(e=>e.id)),a=t.filter(e=>!n.has(e));if(a.length>0){let t=(0,i.pM)(e,a);console.log(`Removed ${t.deletedCount} deleted worktree(s) from ${r}`)}for(let r of o)(0,i.ly)(e,r)}}}};var r=require("../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),o=r.X(0,[8948,5972,7425],()=>t(98165));module.exports=o})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=1049,e.ids=[1049],e.modules={20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},78893:e=>{e.exports=require("buffer")},92048:e=>{e.exports=require("fs")},55315:e=>{e.exports=require("path")},68223:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>g,requestAsyncStorage:()=>u,routeModule:()=>c,serverHooks:()=>p,staticGenerationAsyncStorage:()=>m});var n={};r.r(n),r.d(n,{GET:()=>l});var o=r(49303),a=r(88716),s=r(60670),i=r(87070),d=r(53013);async function l(e){try{let e=await (0,d.HL)();return i.NextResponse.json({groups:e})}catch(e){return console.error("Error loading slash commands:",e),i.NextResponse.json({error:"Failed to load slash commands"},{status:500})}}let c=new o.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/slash-commands/route",pathname:"/api/slash-commands",filename:"route",bundlePath:"app/api/slash-commands/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/slash-commands/route.ts",nextConfigOutput:"",userland:n}),{requestAsyncStorage:u,staticGenerationAsyncStorage:m,serverHooks:p}=c,f="/api/slash-commands/route";function g(){return(0,s.patchFetch)({serverHooks:p,staticGenerationAsyncStorage:m})}},38056:(e,t,r)=>{r.d(t,{
|
|
1
|
+
"use strict";(()=>{var e={};e.id=1049,e.ids=[1049],e.modules={20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},78893:e=>{e.exports=require("buffer")},92048:e=>{e.exports=require("fs")},55315:e=>{e.exports=require("path")},68223:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>f,patchFetch:()=>g,requestAsyncStorage:()=>u,routeModule:()=>c,serverHooks:()=>p,staticGenerationAsyncStorage:()=>m});var n={};r.r(n),r.d(n,{GET:()=>l});var o=r(49303),a=r(88716),s=r(60670),i=r(87070),d=r(53013);async function l(e){try{let e=await (0,d.HL)();return i.NextResponse.json({groups:e})}catch(e){return console.error("Error loading slash commands:",e),i.NextResponse.json({error:"Failed to load slash commands"},{status:500})}}let c=new o.AppRouteRouteModule({definition:{kind:a.x.APP_ROUTE,page:"/api/slash-commands/route",pathname:"/api/slash-commands",filename:"route",bundlePath:"app/api/slash-commands/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/slash-commands/route.ts",nextConfigOutput:"",userland:n}),{requestAsyncStorage:u,staticGenerationAsyncStorage:m,serverHooks:p}=c,f="/api/slash-commands/route";function g(){return(0,s.patchFetch)({serverHooks:p,staticGenerationAsyncStorage:m})}},38056:(e,t,r)=>{r.d(t,{M6:()=>i,Nw:()=>s,Xr:()=>a});var n=r(35835);let o=["planning","development","review","documentation","workflow","standard-session","standard-config","standard-monitor","standard-git","standard-util"];function a(e){if(0===e.length)return[];let t=new Map;for(let r of e){let e=t.get(r.category)||[];e.push(r),t.set(r.category,e)}let r=[];for(let e of o){let o=t.get(e);o&&o.length>0&&r.push({category:e,label:n.H[e],commands:o})}for(let[e,a]of t)!o.includes(e)&&a.length>0&&r.push({category:e,label:n.H[e]||e,commands:a});return r}function s(e,t){let r=new Map;for(let t of e)for(let e of t.commands)r.set(e.name,{...e,source:e.source||"standard"});for(let e of t)for(let t of e.commands)r.set(t.name,{...t,source:t.source||"worktree"});return a(Array.from(r.values()))}function i(e,t){return e.map(e=>({...e,commands:e.commands.filter(e=>e.cliTools?e.cliTools.includes(t):"claude"===t)})).filter(e=>e.commands.length>0)}},53013:(e,t,r)=>{r.d(t,{HL:()=>u});var n=r(92048),o=r(55315),a=r(3673),s=r.n(a),i=r(35835),d=r(38056);let l=null;async function c(e){let t=function(e){let t=e||process.cwd();return o.join(t,".claude","commands")}(e);if(!n.existsSync(t))return console.warn(`Commands directory not found: ${t}`),[];let r=n.readdirSync(t).filter(e=>e.endsWith(".md")),a=[];for(let e of r){let r=function(e){try{let t=n.readFileSync(e,"utf-8"),{data:r}=s()(t),a=o.basename(e,".md"),d=i.c[a]||"workflow";return{name:a,description:r.description||"",category:d,model:r.model,filePath:o.relative(process.cwd(),e)}}catch(t){return console.error(`Error parsing command file ${e}:`,t),null}}(o.join(t,e));r&&a.push(r)}return a.sort((e,t)=>e.name.localeCompare(t.name)),l=a,a}async function u(e){let t=e?await c(e):l||await c();return(0,d.Xr)(t)}},35835:(e,t,r)=>{r.d(t,{H:()=>n,c:()=>o});let n={planning:"Planning",development:"Development",review:"Review",documentation:"Documentation",workflow:"Workflow","standard-session":"Standard (Session)","standard-config":"Standard (Config)","standard-monitor":"Standard (Monitor)","standard-git":"Standard (Git)","standard-util":"Standard (Utility)"},o={"work-plan":"planning","issue-create":"planning","issue-split":"planning","design-policy":"planning","tdd-impl":"development","bug-fix":"development",refactoring:"development","architecture-review":"review","acceptance-test":"review","progress-report":"documentation","create-pr":"workflow","pm-auto-dev":"workflow"}}};var t=require("../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),n=t.X(0,[8948,5972,3673],()=>r(68223));module.exports=n})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"groups":[{"category":"planning","label":"Planning","commands":[{"name":"design-policy","description":"アーキテクチャ設計、技術選定、設計判断を支援","category":"planning","model":"opus","filePath":".claude/commands/design-policy.md"},{"name":"issue-create","description":"Issue分割計画書からGitHub Issueを一括作成","category":"planning","model":"opus","filePath":".claude/commands/issue-create.md"},{"name":"issue-split","description":"FeatureをIssueに分割、依存関係整理","category":"planning","model":"opus","filePath":".claude/commands/issue-split.md"},{"name":"work-plan","description":"Issue単位の具体的な作業計画立案","category":"planning","model":"opus","filePath":".claude/commands/work-plan.md"}]},{"category":"development","label":"Development","commands":[{"name":"bug-fix","description":"不具合の調査・対策案提示・修正実施を完全自動化","category":"development","model":"opus","filePath":".claude/commands/bug-fix.md"},{"name":"refactoring","description":"コード品質改善、設計パターン適用、技術的負債解消","category":"development","model":"opus","filePath":".claude/commands/refactoring.md"},{"name":"tdd-impl","description":"テスト駆動開発で高品質コードを実装","category":"development","model":"opus","filePath":".claude/commands/tdd-impl.md"}]},{"category":"review","label":"Review","commands":[{"name":"acceptance-test","description":"Issue要件に基づく自動受入テスト実行","category":"review","model":"opus","filePath":".claude/commands/acceptance-test.md"},{"name":"architecture-review","description":"設計レビュー、リスク評価、改善提案","category":"review","model":"opus","filePath":".claude/commands/architecture-review.md"}]},{"category":"documentation","label":"Documentation","commands":[{"name":"progress-report","description":"開発進捗サマリ作成、ブロッカー報告","category":"documentation","model":"opus","filePath":".claude/commands/progress-report.md"}]},{"category":"workflow","label":"Workflow","commands":[{"name":"apply-review","description":"レビュー指摘事項を実装に反映","category":"workflow","model":"opus","filePath":".claude/commands/apply-review.md"},{"name":"create-pr","description":"Pull Request自動作成、タイトル・説明自動生成","category":"workflow","model":"opus","filePath":".claude/commands/create-pr.md"},{"name":"multi-stage-design-review","description":"設計書の4段階レビュー(通常→整合性→影響分析→セキュリティ)と指摘対応を自動実行","category":"workflow","model":"opus","filePath":".claude/commands/multi-stage-design-review.md"},{"name":"multi-stage-issue-review","description":"Issue記載内容の多段階レビュー(通常→影響範囲)×2回と指摘対応を自動実行","category":"workflow","model":"opus","filePath":".claude/commands/multi-stage-issue-review.md"},{"name":"pm-auto-design2dev","description":"設計レビューから実装完了まで完全自動化(設計レビュー→作業計画→TDD実装)","category":"workflow","model":"opus","filePath":".claude/commands/pm-auto-design2dev.md"},{"name":"pm-auto-dev","description":"Issue開発を完全自動化(TDD→テスト→報告)","category":"workflow","model":"opus","filePath":".claude/commands/pm-auto-dev.md"},{"name":"worktree-cleanup","description":"","category":"workflow","filePath":".claude/commands/worktree-cleanup.md"},{"name":"worktree-setup","description":"","category":"workflow","filePath":".claude/commands/worktree-setup.md"}]}]}
|
|
1
|
+
{"groups":[{"category":"planning","label":"Planning","commands":[{"name":"design-policy","description":"アーキテクチャ設計、技術選定、設計判断を支援","category":"planning","model":"opus","filePath":".claude/commands/design-policy.md"},{"name":"issue-create","description":"Issue分割計画書からGitHub Issueを一括作成","category":"planning","model":"opus","filePath":".claude/commands/issue-create.md"},{"name":"issue-split","description":"FeatureをIssueに分割、依存関係整理","category":"planning","model":"opus","filePath":".claude/commands/issue-split.md"},{"name":"work-plan","description":"Issue単位の具体的な作業計画立案","category":"planning","model":"opus","filePath":".claude/commands/work-plan.md"}]},{"category":"development","label":"Development","commands":[{"name":"bug-fix","description":"不具合の調査・対策案提示・修正実施を完全自動化","category":"development","model":"opus","filePath":".claude/commands/bug-fix.md"},{"name":"refactoring","description":"コード品質改善、設計パターン適用、技術的負債解消","category":"development","model":"opus","filePath":".claude/commands/refactoring.md"},{"name":"tdd-impl","description":"テスト駆動開発で高品質コードを実装","category":"development","model":"opus","filePath":".claude/commands/tdd-impl.md"}]},{"category":"review","label":"Review","commands":[{"name":"acceptance-test","description":"Issue要件に基づく自動受入テスト実行","category":"review","model":"opus","filePath":".claude/commands/acceptance-test.md"},{"name":"architecture-review","description":"設計レビュー、リスク評価、改善提案","category":"review","model":"opus","filePath":".claude/commands/architecture-review.md"}]},{"category":"documentation","label":"Documentation","commands":[{"name":"progress-report","description":"開発進捗サマリ作成、ブロッカー報告","category":"documentation","model":"opus","filePath":".claude/commands/progress-report.md"}]},{"category":"workflow","label":"Workflow","commands":[{"name":"apply-review","description":"レビュー指摘事項を実装に反映","category":"workflow","model":"opus","filePath":".claude/commands/apply-review.md"},{"name":"create-pr","description":"Pull Request自動作成、タイトル・説明自動生成","category":"workflow","model":"opus","filePath":".claude/commands/create-pr.md"},{"name":"issue-enhance","description":"Issue内容を分析し、ユーザーに質問しながら不足情報を補完・更新","category":"workflow","model":"opus","filePath":".claude/commands/issue-enhance.md"},{"name":"multi-stage-design-review","description":"設計書の4段階レビュー(通常→整合性→影響分析→セキュリティ)と指摘対応を自動実行","category":"workflow","model":"opus","filePath":".claude/commands/multi-stage-design-review.md"},{"name":"multi-stage-issue-review","description":"Issue記載内容の多段階レビュー(通常→影響範囲)×2回と指摘対応を自動実行","category":"workflow","model":"opus","filePath":".claude/commands/multi-stage-issue-review.md"},{"name":"pm-auto-design2dev","description":"設計レビューから実装完了まで完全自動化(設計レビュー→作業計画→TDD実装)","category":"workflow","model":"opus","filePath":".claude/commands/pm-auto-design2dev.md"},{"name":"pm-auto-dev","description":"Issue開発を完全自動化(TDD→テスト→報告)","category":"workflow","model":"opus","filePath":".claude/commands/pm-auto-dev.md"},{"name":"worktree-cleanup","description":"","category":"workflow","filePath":".claude/commands/worktree-cleanup.md"},{"name":"worktree-setup","description":"","category":"workflow","filePath":".claude/commands/worktree-setup.md"}]}]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(()=>{var e={};e.id=5695,e.ids=[5695],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},92048:e=>{e.exports=require("fs")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},21764:e=>{e.exports=require("util")},80134:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>h,patchFetch:()=>
|
|
1
|
+
"use strict";(()=>{var e={};e.id=5695,e.ids=[5695],e.modules={85890:e=>{e.exports=require("better-sqlite3")},20399:e=>{e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},30517:e=>{e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},78893:e=>{e.exports=require("buffer")},61282:e=>{e.exports=require("child_process")},84770:e=>{e.exports=require("crypto")},17702:e=>{e.exports=require("events")},92048:e=>{e.exports=require("fs")},20629:e=>{e.exports=require("fs/promises")},32615:e=>{e.exports=require("http")},35240:e=>{e.exports=require("https")},98216:e=>{e.exports=require("net")},19801:e=>{e.exports=require("os")},55315:e=>{e.exports=require("path")},76162:e=>{e.exports=require("stream")},82452:e=>{e.exports=require("tls")},17360:e=>{e.exports=require("url")},21764:e=>{e.exports=require("util")},71568:e=>{e.exports=require("zlib")},80134:(e,t,r)=>{r.r(t),r.d(t,{originalPathname:()=>h,patchFetch:()=>q,requestAsyncStorage:()=>b,routeModule:()=>g,serverHooks:()=>v,staticGenerationAsyncStorage:()=>w});var o={};r.r(o),r.d(o,{GET:()=>m,POST:()=>x});var n=r(49303),s=r(88716),i=r(60670),a=r(87070),u=r(97425),l=r(75748),p=r(60667);let d=["claude","codex","gemini"];function c(e,t){let r={enabled:e?.enabled??!1,expiresAt:e?.enabled?e.expiresAt:null};return void 0!==t&&(r.pollingStarted=t),r}function f(e){let t=(0,u.n)();return(0,l.gU)(t,e)?null:a.NextResponse.json({error:`Worktree '${e}' not found`},{status:404})}async function m(e,{params:t}){try{let e=f(t.id);if(e)return e;let r=(0,p.bq)(t.id);return a.NextResponse.json(c(r))}catch(e){return console.error("Error getting auto-yes state:",e),a.NextResponse.json({error:"Failed to get auto-yes state"},{status:500})}}async function x(e,{params:t}){try{var r;let o=f(t.id);if(o)return o;let n=await e.json();if("boolean"!=typeof n.enabled)return a.NextResponse.json({error:"enabled must be a boolean"},{status:400});let s=(r=n.cliToolId)&&d.includes(r)?n.cliToolId:"claude",i=(0,p.bY)(t.id,n.enabled),u=!1;if(n.enabled){let e=(0,p.w)(t.id,s);u=e.started,e.started||console.warn(`[Auto-Yes API] Polling not started: ${e.reason}`)}else(0,p.Qz)(t.id);return a.NextResponse.json(c(i,u))}catch(e){return console.error("Error setting auto-yes state:",e),a.NextResponse.json({error:"Failed to set auto-yes state"},{status:500})}}let g=new n.AppRouteRouteModule({definition:{kind:s.x.APP_ROUTE,page:"/api/worktrees/[id]/auto-yes/route",pathname:"/api/worktrees/[id]/auto-yes",filename:"route",bundlePath:"app/api/worktrees/[id]/auto-yes/route"},resolvedPagePath:"/home/runner/work/CommandMate/CommandMate/src/app/api/worktrees/[id]/auto-yes/route.ts",nextConfigOutput:"",userland:o}),{requestAsyncStorage:b,staticGenerationAsyncStorage:w,serverHooks:v}=g,h="/api/worktrees/[id]/auto-yes/route";function q(){return(0,i.patchFetch)({serverHooks:v,staticGenerationAsyncStorage:w})}},60667:(e,t,r)=>{r.d(t,{bq:()=>c,gf:()=>m,bY:()=>f,w:()=>b,Qz:()=>w});var o=r(89194),n=r(63661),s=r(10927),i=r(43839),a=r(19377);let u=/^[a-zA-Z0-9_-]+$/,l=globalThis.__autoYesStates??(globalThis.__autoYesStates=new Map),p=globalThis.__autoYesPollerStates??(globalThis.__autoYesPollerStates=new Map);function d(e){return Date.now()>e.expiresAt}function c(e){let t=l.get(e);if(!t)return null;if(d(t)){let r={...t,enabled:!1};return l.set(e,r),r}return t}function f(e,t){if(t){let t=Date.now(),r={enabled:!0,enabledAt:t,expiresAt:t+36e5};return l.set(e,r),r}{let t=l.get(e),r={enabled:!1,enabledAt:t?.enabledAt??0,expiresAt:t?.expiresAt??0};return l.set(e,r),r}}function m(e){let t=p.get(e);return t?.lastServerResponseTimestamp??null}async function x(e,t){if(!p.get(e))return;let r=c(e);if(!r?.enabled||d(r)){w(e);return}try{let r=await (0,o.NA)(e,t,5e3),u=(0,a.vp)(r);if((0,a.Wg)(t,u)){g(e,t);return}let l=(0,n.F)(u);if(!l.isPrompt||!l.promptData){g(e,t);return}let d=function(e){if("yes_no"===e.type)return"y";if("multiple_choice"===e.type){let t=e.options.find(e=>e.isDefault)??e.options[0];return!t||t.requiresTextInput?null:t.number.toString()}return null}(l.promptData);if(null===d){g(e,t);return}let c=i.g.getInstance().getTool(t).getSessionName(e);await (0,s.Is)(c,d,!1),await new Promise(e=>setTimeout(e,100)),await (0,s.Is)(c,"",!0),function(e,t){let r=p.get(e);r&&(r.lastServerResponseTimestamp=t)}(e,Date.now()),function(e){let t=p.get(e);t&&(t.consecutiveErrors=0,t.currentInterval=2e3)}(e),console.info(`[Auto-Yes Poller] Sent response for worktree: ${e}`)}catch(r){!function(e){let t=p.get(e);if(t){var r;t.consecutiveErrors++,t.currentInterval=(r=t.consecutiveErrors)<5?2e3:Math.min(2e3*Math.pow(2,r-5+1),6e4)}}(e);let t=r instanceof Error?r.message:"Unknown error";console.warn(`[Auto-Yes Poller] Error for worktree ${e}: ${t}`)}g(e,t)}function g(e,t){let r=p.get(e);r&&(r.timerId=setTimeout(()=>{x(e,t)},r.currentInterval))}function b(e,t){if(!(e&&0!==e.length&&u.test(e)))return{started:!1,reason:"invalid worktree ID"};let r=c(e);if(!r?.enabled)return{started:!1,reason:"auto-yes not enabled"};let o=p.has(e);if(!o&&p.size>=50)return{started:!1,reason:"max concurrent pollers reached"};o&&w(e);let n={timerId:null,cliToolId:t,consecutiveErrors:0,currentInterval:2e3,lastServerResponseTimestamp:null};return p.set(e,n),n.timerId=setTimeout(()=>{x(e,t)},2e3),console.info(`[Auto-Yes Poller] Started for worktree: ${e}, cliTool: ${t}`),{started:!0}}function w(e){let t=p.get(e);t&&(t.timerId&&clearTimeout(t.timerId),p.delete(e),console.info(`[Auto-Yes Poller] Stopped for worktree: ${e}`))}}};var t=require("../../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),o=t.X(0,[8948,5972,3853,4893,7425,9367,7536],()=>r(80134));module.exports=o})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/bindings/bindings.js","../../../../../../../node_modules/bindings/package.json","../../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/package.json","../../../../../../../package.json","../../../../../../package.json","../../../../../chunks/
|
|
1
|
+
{"version":1,"files":["../../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../../node_modules/better-sqlite3/package.json","../../../../../../../node_modules/bindings/bindings.js","../../../../../../../node_modules/bindings/package.json","../../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../../node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js","../../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../../node_modules/next/package.json","../../../../../../../package.json","../../../../../../package.json","../../../../../chunks/3853.js","../../../../../chunks/4893.js","../../../../../chunks/5972.js","../../../../../chunks/7425.js","../../../../../chunks/7536.js","../../../../../chunks/8948.js","../../../../../chunks/9367.js","../../../../../webpack-runtime.js"]}
|