@elysiajs/eden
Version:
Fully type-safe Elysia client
2 lines (1 loc) • 2.71 kB
JavaScript
;var Eden=(()=>{var u=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var j=(t,e)=>{for(var r in e)u(t,r,{get:e[r],enumerable:!0})},O=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of b(e))!N.call(t,s)&&s!==r&&u(t,s,{get:()=>e[s],enumerable:!(n=E(e,s))||n.enumerable});return t};var F=t=>O(u({},"__esModule",{value:!0}),t);var U={};j(U,{edenFetch:()=>V});var d=class extends Error{constructor(r,n){super(n+"");this.status=r;this.value=n}};var w=/(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))/,A=/(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{2}\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT(?:\+|-)\d{4}\s\([^)]+\)/,C=/^(?:(?:(?:(?:0?[1-9]|[12][0-9]|3[01])[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:19|20)\d{2})|(?:(?:19|20)\d{2}[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:0?[1-9]|[12][0-9]|3[01]))))(?:\s(?:1[012]|0?[1-9]):[0-5][0-9](?::[0-5][0-9])?(?:\s[AP]M)?)?$/,D=t=>t.trim().length!==0&&!Number.isNaN(Number(t)),l=t=>{if(typeof t!="string")return null;let e=t.replace(/"/g,"");if(w.test(e)||A.test(e)||C.test(e)){let r=new Date(e);if(!Number.isNaN(r.getTime()))return r}return null},M=t=>{let e=t.charCodeAt(0),r=t.charCodeAt(t.length-1);return e===123&&r===125||e===91&&r===93},$=t=>JSON.parse(t,(e,r)=>{let n=l(r);return n||r}),y=t=>{if(!t)return t;if(D(t))return+t;if(t==="true")return!0;if(t==="false")return!1;let e=l(t);if(e)return e;if(M(t))try{return $(t)}catch{}return t};var J=async t=>{switch(t.headers.get("Content-Type")?.split(";")[0]){case"application/json":return t.json();case"application/octet-stream":return t.arrayBuffer();case"multipart/form-data":{let r=await t.formData(),n={};return r.forEach((s,a)=>{n[a]=s}),n}}return t.text().then(y)},R=async(t,e)=>{let r=await J(t);return t.status>300?{data:null,status:t.status,headers:t.headers,retry:e,error:new d(t.status,r)}:{data:r,error:null,status:t.status,headers:t.headers,retry:e}},V=(t,e)=>(r,{query:n,params:s,body:a,...c}={})=>{s&&Object.entries(s).forEach(([i,o])=>{r=r.replace(`:${i}`,o)});let p=c.headers?.["Content-Type"];if(!p||p==="application/json")try{a=JSON.stringify(a)}catch{}let g=e?.fetcher||globalThis.fetch,f=n?Object.fromEntries(Object.entries(n).filter(([i,o])=>o!=null)):null,m=f?`?${new URLSearchParams(f).toString()}`:"",S=`${t}${r}${m}`,x=a?{"content-type":"application/json",...c.headers}:c.headers,T={...c,method:c.method?.toUpperCase()||"GET",headers:x,body:a},h=()=>g(S,T).then(i=>R(i,h));return h()};return F(U);})();