@nhost/nhost-js
Version:
Nhost JavaScript SDK
2 lines • 2.09 kB
JavaScript
import{a as s,i as n,o as t,r as o}from"./fetch-CaGArzje.js";import{t as r}from"./refreshSession-C7G1H9pk.js";import{createAPIClient as i}from"./nhost-js/auth.js";import{createAPIClient as a}from"./nhost-js/functions.js";import{t as e}from"./graphql-BMKt1R6b.js";import{n as h,t as u}from"./session-BikXm4j-.js";import{createAPIClient as c}from"./nhost-js/storage.js";var g=({auth:o,storage:r,graphql:i,functions:a,sessionStorage:e})=>{const h=[s(o,e),n(e),t(e)];for(const s of h)o.pushChainFunction(s),r.pushChainFunction(s),i.pushChainFunction(s),a.pushChainFunction(s)},f=({auth:s,storage:o,graphql:r,functions:i,sessionStorage:a})=>{const e=[n(a),t(a)];for(const n of e)s.pushChainFunction(n),o.pushChainFunction(n),r.pushChainFunction(n),i.pushChainFunction(n)};function p(s){return({storage:n,graphql:t,functions:r})=>{const i=o(s);n.pushChainFunction(i),t.pushChainFunction(i),r.pushChainFunction(i)}}var l=class{auth;storage;graphql;functions;sessionStorage;constructor(s,n,t,o,r){this.auth=s,this.storage=n,this.graphql=t,this.functions=o,this.sessionStorage=r}getUserSession(){return this.sessionStorage.get()}async refreshSession(s=60){return r(this.auth,this.sessionStorage,s)}clearSession(){this.sessionStorage.remove()}};function m(s={}){const{subdomain:n,region:t,authUrl:o,storageUrl:r,graphqlUrl:g,functionsUrl:f,storage:p=h(),configure:m=[]}=s,C=new u(p),S=F("auth",n,t,o),j=F("storage",n,t,r),q=F("graphql",n,t,g),v=F("functions",n,t,f),U=i(S),$=c(j,[]),w=e(q,[]),A=a(v,[]);for(const i of m)i({auth:U,storage:$,graphql:w,functions:A,sessionStorage:C});return new l(U,$,w,A,C)}function C(s={}){const n=s.storage??h();return m({...s,storage:n,configure:[g,...s.configure??[]]})}function S(s){return m({...s,configure:[f,...s.configure??[]]})}var F=(s,n,t,o)=>o||(n&&t?`https://${n}.${s}.${t}.nhost.run/v1`:`https://local.${s}.local.nhost.run/v1`);export{C as createClient,m as createNhostClient,S as createServerClient,F as generateServiceUrl,p as withAdminSession,g as withClientSideSessionMiddleware,f as withServerSideSessionMiddleware};
//# sourceMappingURL=nhost-js.js.map