1import{Z as e,et as t,l as n}from"./loader-circle-DDE4Av0a.js";import{n as r,t as i}from"./redirect-DCb_aIiF.js";import{g as a,h as o}from"./index-BiMXH2iB.js";function s(e){if(Array.isArray(e))return e.flatMap(e=>s(e));if(typeof e!=`string`)return[];let t=[],n=0,r,i,a,o,c,l=()=>{for(;n<e.length&&/\s/.test(e.charAt(n));)n+=1;return n<e.length},u=()=>(i=e.charAt(n),i!==`=`&&i!==`;`&&i!==`,`);for(;n<e.length;){for(r=n,c=!1;l();)if(i=e.charAt(n),i===`,`){for(a=n,n+=1,l(),o=n;n<e.length&&u();)n+=1;n<e.length&&e.charAt(n)===`=`?(c=!0,n=o,t.push(e.slice(r,a)),r=n):n=a+1}else n+=1;(!c||n>=e.length)&&t.push(e.slice(r))}return t}function c(e){return e instanceof Headers?e:Array.isArray(e)||typeof e==`object`?new Headers(e):null}function l(...e){return e.reduce((e,t)=>{let n=c(t);if(!n)return e;for(let[t,r]of n.entries())t===`set-cookie`?s(r).forEach(t=>e.append(`set-cookie`,t)):e.set(t,r);return e},new Headers)}var u=t(e(),1);function d(e){let t=n();return u.useCallback(async(...n)=>{try{let t=await e(...n);if(i(t))throw t;return t}catch(e){if(i(e))return e.options._fromLocation=t.stores.location.get(),t.navigate(t.resolveRedirect(e).options);throw e}},[t,e])}function f(e){return e!==`__proto__`&&e!==`constructor`&&e!==`prototype`}function p(e,t){let n=Object.create(null);if(e)for(let t of Object.keys(e))f(t)&&(n[t]=e[t]);if(t&&typeof t==`object`)for(let e of Object.keys(t))f(e)&&(n[e]=t[e]);return n}function m(e){if(!e)return Object.create(null);let t=Object.create(null);for(let n of Object.keys(e))f(n)&&(t[n]=e[n]);return t}var h=()=>{throw Error(`createServerOnlyFn() functions can only be called on the server!`)},g=(e,t)=>{let n=t||e||{};return n.method===void 0&&(n.method=`GET`),Object.assign(e=>g(void 0,{...n,...e}),{options:n,middleware:e=>{let t=[...n.middleware||[]];e.map(e=>{a in e?e.options.middleware&&t.push(...e.options.middleware):t.push(e)});let r=g(void 0,{...n,middleware:t});return r[a]=!0,r},inputValidator:e=>g(void 0,{...n,inputValidator:e}),handler:(...e)=>{let[t,i]=e,a={...n,extractedFn:t,serverFn:i},o=[...a.middleware||[],b(a)];return t.method=n.method,Object.assign(async e=>{let n=await _(o,`client`,{...t,...a,data:e?.data,headers:e?.headers,signal:e?.signal,fetch:e?.fetch,context:m()}),i=r(n.error);if(i)throw i;if(n.error)throw n.error;return n.result},{...t,method:n.method,__executeServer:async e=>{let n=h(),r=n.contextAfterGlobalMiddlewares;return await _(o,`server`,{...t,...e,serverFnMeta:t.serverFnMeta,context:p(e.context,r),request:n.request}).then(e=>({result:e.result,error:e.error,context:e.sendContext}))}})}})};async function _(e,t,n){let r=v([...o()?.functionMiddleware||[],...e]);if(t===`server`){let e=h({throwIfNotFound:!1});e?.executedRequestMiddlewares&&(r=r.filter(t=>!e.executedRequestMiddlewares.has(t)))}let a=async e=>{let n=r.shift();if(!n)return e;try{`inputValidator`in n.options&&n.options.inputValidator&&t===`server`&&(e.data=await y(n.options.inputValidator,e.data));let r;if(t===`client`?`client`in n.options&&(r=n.options.client):`server`in n.options&&(r=n.options.server),r){let t=async(t={})=>{let n=await a({...e,...t,context:p(e.context,t.context),sendContext:p(e.sendContext,t.sendContext),headers:l(e.headers,t.headers),_callSiteFetch:e._callSiteFetch,fetch:e._callSiteFetch??t.fetch??e.fetch,result:t.result===void 0?t instanceof Response?t:e.result:t.result,error:t.error??e.error});if(n.error)throw n.error;return n},n=await r({...e,next:t});if(i(n))return{...e,error:n};if(n instanceof Response)return{...e,result:n};if(!n)throw Error(`User middleware returned undefined. You must call next() or return a result in your middlewares.`);return n}return a(e)}catch(t){return{...e,error:t}}};return a({...n,headers:n.headers||{},sendContext:n.sendContext||{},context:n.context||m(),_callSiteFetch:n.fetch})}function v(e,t=100){let n=new Set,r=[],i=(e,a)=>{if(a>t)throw Error(`Middleware nesting depth exceeded maximum of ${t}. Check for circular references.`);e.forEach(e=>{e.options.middleware&&i(e.options.middleware,a+1),n.has(e)||(n.add(e),r.push(e))})};return i(e,0),r}async function y(e,t){if(e==null)return{};if(`~standard`in e){let n=await e[`~standard`].validate(t);if(n.issues)throw Error(JSON.stringify(n.issues,void 0,2));return n.value}if(`parse`in e)return e.parse(t);if(typeof e==`function`)return e(t);throw Error(`Invalid validator type!`)}function b(e){return{"~types":void 0,options:{inputValidator:e.inputValidator,client:async({next:t,sendContext:n,fetch:r,...i})=>{let a={...i,context:n,fetch:r};return t(await e.extractedFn?.(a))},server:async({next:t,...n})=>{let r=await e.serverFn?.(n);return t({...n,result:r})}}}}export{d as n,g as t};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.