You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
2.4 KiB
JavaScript

(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[481],{2067:e=>{"use strict";e.exports=require("node:async_hooks")},6195:e=>{"use strict";e.exports=require("node:buffer")},8438:(e,t,a)=>{"use strict";a.r(t),a.d(t,{ComponentMod:()=>_,default:()=>N});var r={};a.r(r),a.d(r,{GET:()=>w,OPTIONS:()=>b,PUT:()=>f,runtime:()=>g});var n={};a.r(n),a.d(n,{headerHooks:()=>x,originalPathname:()=>k,patchFetch:()=>O,requestAsyncStorage:()=>y,routeModule:()=>v,serverHooks:()=>T,staticGenerationAsyncStorage:()=>P,staticGenerationBailout:()=>E});var o=a(7875),s=a(8381),u=a(2251),i=a(9845),d=a(572),h=a(7736);let p=(0,a(9579).g)(),l=[...h.NU,...p.allowedWebDavEndpoints].filter(e=>!!e.trim()),c=e=>{try{return new URL(e)}catch(e){return null}};async function m(e,{params:t}){let a;if("OPTIONS"===e.method)return d.xk.json({body:"OK"},{status:200});let r=h.Uf,n=`${r}/backup.json`,o=new URL(e.url),s=o.searchParams.get("endpoint"),u=o.searchParams.get("proxy_method")||e.method;if(!s||!l.some(e=>{let t=c(e),a=c(s);return a&&a.hostname===t?.hostname&&a.pathname.startsWith(t.pathname)}))return d.xk.json({error:!0,msg:"Invalid endpoint"},{status:400});s?.endsWith("/")||(s+="/");let i=t.path.join("/"),p=`${s}${i}`;if("MKCOL"!==u&&"GET"!==u&&"PUT"!==u||"MKCOL"===u&&!p.endsWith(r)||"GET"===u&&!p.endsWith(n)||"PUT"===u&&!p.endsWith(n))return d.xk.json({error:!0,msg:"you are not allowed to request "+p},{status:403});let m=u||e.method,f=["get","head"].includes(m?.toLowerCase()??""),w={headers:{authorization:e.headers.get("authorization")??""},body:f?null:e.body,redirect:"manual",method:m,duplex:"half"};try{a=await fetch(p,w)}finally{console.log("[Any Proxy]",p,{method:m},{status:a?.status,statusText:a?.statusText})}return a}let f=m,w=m,b=m,g="edge",v=new s.AppRouteRouteModule({definition:{kind:u.x.APP_ROUTE,page:"/api/webdav/[...path]/route",pathname:"/api/webdav/[...path]",filename:"route",bundlePath:"app/api/webdav/[...path]/route"},resolvedPagePath:"D:\\NextWeb\\app\\api\\webdav\\[...path]\\route.ts",nextConfigOutput:"standalone",userland:r}),{requestAsyncStorage:y,staticGenerationAsyncStorage:P,serverHooks:T,headerHooks:x,staticGenerationBailout:E}=v,k="/api/webdav/[...path]/route";function O(){return(0,i.XH)({serverHooks:T,staticGenerationAsyncStorage:P})}let _=n,N=o.a.wrap(v)}},e=>{var t=t=>e(e.s=t);e.O(0,[297,45,579],()=>t(8438));var a=e.O();(_ENTRIES="undefined"==typeof _ENTRIES?{}:_ENTRIES)["middleware_app/api/webdav/[...path]/route"]=a}]);
//# sourceMappingURL=route.js.map