UNPKG

@gqty/solid

Version:

The No-GraphQL Client for React

2 lines (1 loc) 4.35 kB
"use strict";var J=Object.create;var T=Object.defineProperty;var K=Object.getOwnPropertyDescriptor;var X=Object.getOwnPropertyNames;var Y=Object.getPrototypeOf,Z=Object.prototype.hasOwnProperty;var _=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ee=(e,t)=>{for(var r in t)T(e,r,{get:t[r],enumerable:!0})},R=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of X(t))!Z.call(e,o)&&o!==r&&T(e,o,{get:()=>t[o],enumerable:!(n=K(t,o))||n.enumerable});return e};var te=(e,t,r)=>(r=e!=null?J(Y(e)):{},R(t||!e||!e.__esModule?T(r,"default",{value:e,enumerable:!0}):r,e)),re=e=>R(T({},"__esModule",{value:!0}),e);var D=_((he,Q)=>{"use strict";var ne=()=>{let e={};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e};Q.exports=ne});var ie={};ee(ie,{createSolidClient:()=>oe});module.exports=re(ie);var q=(e,t)=>(r,n)=>(...o)=>e.resolve(({mutation:s})=>r(s,...o),{...t?.defaults,...n});var E=typeof queueMicrotask=="function"?queueMicrotask:e=>Promise.resolve().then(e),h=(e,t)=>{let r=!1,{debounceLimit:n=1e3}=t??{},o;return(...s)=>{if(t?.updateArguments?o=s:o??(o=s),r)return;if(n--<=0)switch(t?.limitAction){case"ignore":return;case"invoke":return e(...o);case"throw":default:throw new Error("Maximum debounce limit reached.")}r=!0,E(m);function m(){r?(r=!1,E(m)):(n=t?.debounceLimit??1e3,e(...o))}}};var M=require("gqty"),$=te(D(),1),i=require("solid-js");var O=require("solid-js"),L=(e,t,r)=>{let n;(0,O.onMount)(()=>{n||(n=setInterval(()=>{let o=r?.()??[];e(...o)},t))}),(0,O.onCleanup)(()=>{clearInterval(n)})};var S=require("solid-js"),N=()=>{let{navigator:e}=globalThis,[t,r]=(0,S.createSignal)(e.onLine),n=()=>{r(e.onLine)};return(0,S.onMount)(()=>{globalThis.addEventListener("online",n),globalThis.addEventListener("offline",n)}),(0,S.onCleanup)(()=>{globalThis.removeEventListener("online",n),globalThis.removeEventListener("offline",n)}),t};var y=require("solid-js"),I=()=>{let{document:e}=globalThis,[t,r]=(0,y.createSignal)(!e.hidden),n=()=>{r(!e.hidden)};return(0,y.onMount)(()=>{e.addEventListener("visibilitychange",n)}),(0,y.onCleanup)(()=>{e.removeEventListener("visibilitychange",n)}),t};var j=(e,t)=>{let r=new Set,n=s=>{r.add(s),o()},o=h(()=>{(0,i.batch)(()=>{r.forEach(s=>s()),r.clear()})});return({cachePolicy:s=t?.defaults?.cachePolicy??"default",extensions:m,operationName:w,prepare:u,retryPolicy:l=t?.defaults?.retryPolicy,refetchInterval:C,refetchOnReconnect:k=!0,refetchOnWindowVisible:A=!0}={})=>{let c,b,z=h(()=>f({skipPrepass:!0}),{limitAction:"ignore"}),{accessor:p,context:d,resolve:U,restorePreviousSelections:F,selections:g,subscribe:W}=e.createResolver({cachePolicy:s,extensions:m,retryPolicy:l,operationName:w,onSelect(){if(z(),u)return!1}}),[B,{refetch:G}]=(0,i.createResource)(()=>c,{storage:()=>(0,i.createSignal)(void 0,{equals:!1})}),f=async a=>{if((a?.ignoreCache||e.cache!==d.cache)&&(d.shouldFetch=!0),!a?.skipPrepass&&isFinite(e.cache.maxAge)&&(g.size===0&&F(),u?u(p,{prepass:M.prepass}):(0,M.prepass)(p,g)),g.size===0)return;let x=()=>{x=void 0,c=void 0,d.reset()};if(!d.shouldFetch){x?.(),c||g.clear();return}let v=(0,$.default)();c=v.promise,c.then(()=>x?.(),()=>x?.()),b?.(),b=W({onNext(){c?v.resolve(p):n(G)},onError(H){v.reject(H)},onComplete(){v.resolve(p)}}),n(G)};if((0,i.onMount)(()=>f({skipPrepass:!0})),(0,i.onCleanup)(()=>b?.()),u){d.shouldFetch=!1;let a=u;u=void 0,a(p,{prepass:M.prepass}),u=a,d.shouldFetch&&(c=U())}if(C&&L(()=>f(),C),k){let a=N();(0,i.createEffect)(()=>{a()&&f()})}if(A){let a=I();(0,i.createEffect)(()=>{a()&&f()})}return Object.assign(()=>B()?.query??p.query,{$state:{get loading(){return B.loading},get error(){return B.error}},$refetch:async(a=!0)=>{if(!c)return F(),await f({ignoreCache:a})}})}};var P=require("solid-js"),V=(e,t)=>({cachePolicy:r=t?.defaults?.cachePolicy,extensions:n,retryPolicy:o=t?.defaults?.retryPolicy,operationName:s,onSubscribe:m,onComplete:w,onError:u=l=>{throw l}}={})=>{let l,{accessor:C,selections:k,subscribe:A}=e.createResolver({cachePolicy:r,extensions:n,retryPolicy:o,operationName:s,onSubscribe:m,onSelect:h(()=>{k.size!==0&&(l?.(),l=A({onNext:()=>b(),onError:u,onComplete:w}))},{limitAction:"ignore"})});(0,P.onCleanup)(()=>{l?.()});let[c,b]=(0,P.createSignal)(void 0,{equals:!1});return()=>(c(),C.subscription)};var oe=(e,t)=>({createQuery:j(e,t),createMutation:q(e,t),createSubscription:V(e,t)});