makearmy-app/.next/server/app/api/files/list-files/route.js
2025-09-22 10:37:53 -04:00

1 line
No EOL
2.3 KiB
JavaScript

(()=>{var e={};e.id=1743,e.ids=[1743],e.modules={3295:e=>{"use strict";e.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},51455:e=>{"use strict";e.exports=require("node:fs/promises")},63033:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},76760:e=>{"use strict";e.exports=require("node:path")},78335:()=>{},80728:(e,t,r)=>{"use strict";r.r(t),r.d(t,{patchFetch:()=>w,routeModule:()=>m,serverHooks:()=>v,workAsyncStorage:()=>f,workUnitAsyncStorage:()=>h});var s={};r.r(s),r.d(s,{GET:()=>x});var i=r(96559),a=r(48088),n=r(37719),o=r(32190),p=r(76760),u=r.n(p),l=r(51455),c=r.n(l);let d="/app/files";async function x(e){try{let t=new URL(e.url).searchParams.get("path")??"/",r=u().normalize("/"+t).replace(/^\/+/,"/"),s=u().resolve(d,"."+r);if(!s.startsWith(d))return o.NextResponse.json({error:"Invalid path"},{status:400});let i=await c().stat(s).catch(()=>null);if(!i||!i.isDirectory())return o.NextResponse.json({error:"Not a directory"},{status:400});let a=await c().readdir(s,{withFileTypes:!0}),n=await Promise.all(a.map(async e=>{let t=u().join(s,e.name),i=u().posix.join(r,e.name).replaceAll("\\","/"),a=await c().stat(t);return{name:e.name,path:i,type:e.isDirectory()?"dir":"file",size:a.size,mtime:a.mtimeMs}}));return o.NextResponse.json({path:r,items:n})}catch(e){return o.NextResponse.json({error:e?.message??"Unknown error"},{status:500})}}let m=new i.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/files/list-files/route",pathname:"/api/files/list-files",filename:"route",bundlePath:"app/api/files/list-files/route"},resolvedPagePath:"/app/app/api/files/list-files/route.ts",nextConfigOutput:"",userland:s}),{workAsyncStorage:f,workUnitAsyncStorage:h,serverHooks:v}=m;function w(){return(0,n.patchFetch)({workAsyncStorage:f,workUnitAsyncStorage:h})}},96487:()=>{}};var t=require("../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[7719,580],()=>r(80728));module.exports=s})();