UNPKG

9.91 kBJavaScriptView Raw
1import{visit as e}from"graphql/language/visitor.mjs";import{Kind as t}from"graphql/language/kinds.mjs";import{print as n}from"graphql/language/printer.mjs";import{toPromise as r,take as o,share as i,filter as u,map as c,tap as p,merge as h,mergeMap as d,takeUntil as l,make as y,onPush as k,makeSubject as v,publish as x,onStart as q,onEnd as O,switchMap as g,fromValue as b,interval as w,subscribe as E}from"wonka";import{_ as S,C as _,m as P,a as j,b as R,c as Q,d as D,e as L,f as M}from"./7c059aaf.min.mjs";export{C as CombinedError,f as createRequest,a as makeErrorResult,m as makeResult,s as stringifyVariables}from"./7c059aaf.min.mjs";function A(e,t){if(void 0===t&&(t=[]),Array.isArray(e))e.forEach((function(e){A(e,t)}));else if("object"==typeof e&&null!==e)for(var n in e)"__typename"===n&&"string"==typeof e[n]?t.push(e[n]):A(e[n],t);return t}function I(e,t,n){return n.indexOf(e)===t}function T(e){return e.kind===t.FIELD&&"__typename"===e.name.value}function $(e){if(e.selectionSet&&!e.selectionSet.selections.some(T))return S({},e,{selectionSet:S({},e.selectionSet,{selections:e.selectionSet.selections.concat([{kind:t.FIELD,name:{kind:t.NAME,value:"__typename"}}])})})}function F(t){var n=e(t,{Field:$,InlineFragment:$});return n.__key=t.__key,n}function G(e){return e&&"object"==typeof e?Object.keys(e).reduce((function(t,n){var r=e[n];return"__typename"===n?Object.defineProperty(t,"__typename",{enumerable:!1,value:r}):t[n]=Array.isArray(r)?r.map(G):r&&"object"==typeof r&&"__typename"in r?G(r):r,t}),{}):e}function N(e){return e.toPromise=function(){return r(o(1)(e))},e}function J(e,t,n){return n||(n=t.context),{key:t.key,query:t.query,variables:t.variables,kind:e,context:n,get operationName(){return this.kind}}}function V(e,t){return J(e.kind,e,S({},e.context,{meta:S({},e.context.meta,t)}))}function z(){}function B(e){return"subscription"!==(e=e.kind)&&"query"!==e}function H(e){return e.path||e.extensions?{message:e.message,path:e.path,extensions:e.extensions}:e.message}function K(e){return"mutation"!==(e=e.kind)&&"query"!==e}function U(e){var t=J(e.kind,e);return t.query=F(e.query),t}function W(e){return"query"!==e.kind||"cache-only"!==e.context.requestPolicy}function X(e){return V(e,{cacheOutcome:"miss"})}function Y(e){return K(e)}function Z(e){function t(e){var t=e.context.requestPolicy;return"query"===e.kind&&"network-only"!==t&&("cache-only"===t||d.has(e.key))}function n(e){var t=d.get(e.key);return t=S({},t,{operation:V(e,{cacheOutcome:t?"hit":"miss"})}),"cache-and-network"===e.context.requestPolicy&&(t.stale=!0,ee(f,e)),t}function r(e){return!K(e)&&t(e)}function o(e){e.operation&&"mutation"===e.operation.kind?y(e):e.operation&&"query"===e.operation.kind&&k(e)}function a(e){return!K(e)&&!t(e)}var s=e.forward,f=e.client;e=e.dispatchDebug;var d=new Map,l=Object.create(null),y=function(e,t,n){function r(t){if(e.has(t)){var r=e.get(t).operation;e.delete(t),ee(n,r)}}return function(e){function n(e){o.add(e)}var o=new Set,i=e.operation.context.additionalTypenames;(e=A(e.data).filter(I).concat(i||[])).forEach((function(e){(e=t[e]||(t[e]=new Set)).forEach(n),e.clear()})),o.forEach(r)}}(d,l,f),k=function(e,t){return function(n){var r=n.operation,o=n.data,i=r.context.additionalTypenames;null!=o&&(e.set(r.key,{operation:r,data:o,error:n.error}),A(n.data).filter(I).concat(i||[]).forEach((function(e){(t[e]||(t[e]=new Set)).add(r.key)})))}}(d,l);return function(e){var t=i(e);return e=c(n)(u(r)(t)),t=p(o)(s(u(W)(c(X)(h([c(U)(u(a)(t)),u(Y)(t)]))))),h([e,t])}}function ee(e,t){return e.reexecuteOperation(J(t.kind,t,S({},t.context,{requestPolicy:"network-only"})))}function te(e){function t(e){o.delete(e.operation.key)}function n(e){var t=e.key;return"teardown"===(e=e.kind)?(o.delete(t),!0):"query"!==e&&"subscription"!==e||(e=o.has(t),o.add(t),!e)}var r=e.forward,o=new Set;return function(e){return e=u(n)(e),p(t)(r(e))}}function ne(e){return"query"===e.kind||"mutation"===e.kind}function re(e){return"query"!==e.kind&&"mutation"!==e.kind}function oe(e){var t=e.forward;return function(e){var n=i(e);e=d((function(e){var t=e.key,r=u((function(e){return"teardown"===e.kind&&e.key===t}))(n),o=R(e),i=Q(e,o);return o=D(e,o),k((function(){}))(l(r)(L(e,i,o)))}))(u(ne)(n));var r=t(u(re)(n));return h([e,r])}}function ie(){return!1}function ue(){function e(){}return function(t){return u(ie)(p(e)(t))}}var ae=ue();function ce(e){return function(t){var n=t.client;return e.reduceRight((function(e,t){return t({client:n,forward:e,dispatchDebug:function(){}})}),t.forward)}}var se=[te,Z,oe];function fe(e){var t=this;this.activeOperations=Object.create(null),this.queue=[],this.createOperationContext=function(e){return e||(e={}),S({},{url:t.url,fetchOptions:t.fetchOptions,fetch:t.fetch,preferGetMethod:t.preferGetMethod},e,{suspense:e.suspense||!1!==e.suspense&&t.suspense,requestPolicy:e.requestPolicy||t.requestPolicy})},this.createRequestOperation=function(e,n,r){return J(e,n,t.createOperationContext(r))},this.executeQuery=function(e,n){return e=t.createRequestOperation("query",e,n),t.executeRequestOperation(e)},this.executeSubscription=function(e,n){return e=t.createRequestOperation("subscription",e,n),t.executeRequestOperation(e)},this.executeMutation=function(e,n){return e=t.createRequestOperation("mutation",e,n),t.executeRequestOperation(e)},this.url=e.url,this.fetchOptions=e.fetchOptions,this.fetch=e.fetch,this.suspense=!!e.suspense,this.requestPolicy=e.requestPolicy||"cache-first",this.preferGetMethod=!!e.preferGetMethod,this.maskTypename=!!e.maskTypename;var n=v(),r=n.next;this.operations$=n.source;var o=!1;this.dispatchOperation=function(e){for(o=!0,e&&r(e);e=t.queue.shift();)r(e);o=!1},this.reexecuteOperation=function(e){("mutation"===e.kind||0<(t.activeOperations[e.key]||0))&&(t.queue.push(e),o||Promise.resolve().then(t.dispatchOperation))},e=ce(void 0!==e.exchanges?e.exchanges:se),this.results$=i(e({client:this,dispatchDebug:z,forward:ue()})(this.operations$)),x(this.results$)}function pe(e){return e.data=G(e.data),e}function he(e){return new fe(e)}function de(e){var t=e.forward;return function(e){return t(e)}}function le(e){function t(e){var t=e.error;e=e.operation,t&&n(t,e)}var n=e.onError;return function(e){var n=e.forward;return function(e){return p(t)(n(e))}}}function ye(e){function t(t){var n=t.client,o=t.forward;return function(t){var l=e&&"boolean"==typeof e.isClient?!!e.isClient:!n.suspense,y=i(t);return t=o(u(a)(y)),y=c(s)(u(f)(y)),l?y=p(r)(y):t=p(d)(t),h([t,y])}}function n(e){return!B(e)&&void 0!==l[e.key]}function r(e){y.push(e.operation.key),1===y.length&&Promise.resolve().then(o)}function o(){for(var e;e=y.shift();)delete l[e]}function a(e){return!n(e)}function s(e){var t=l[e.key],n=t.error;return{operation:e,data:(t=t.data)?JSON.parse(t):void 0,extensions:void 0,error:n?new _({networkError:n.networkError?Error(n.networkError):void 0,graphQLErrors:n.graphQLErrors&&n.graphQLErrors.length?n.graphQLErrors:void 0}):void 0}}function f(e){return n(e)}function d(e){var t=e.operation;if(!B(t)){var n=e.error;e={data:JSON.stringify(e.data),error:void 0},n&&(e.error={graphQLErrors:n.graphQLErrors.map(H),networkError:n.networkError?""+n.networkError:void 0}),l[t.key]=e}}var l={},y=[];return t.restoreData=function(e){return S(l,e)},t.extractData=function(){return S({},l)},e&&e.initialState&&t.restoreData(e.initialState),t}function ke(e){function t(e){return"subscription"===(e=e.kind)||!!o&&("query"===e||"mutation"===e)}var r=e.forwardSubscription,o=e.enableAllOperations;return function(e){function o(e){var t=r({key:e.key.toString(36),query:n(e.query),variables:e.variables,context:S({},e.context)});return y((function(n){function r(t){return a(P(e,t))}function o(t){return a(j(e,t))}function i(){f||(f=!0,"subscription"===e.kind&&c.reexecuteOperation(J("teardown",e,e.context)),s())}var u,a=n.next,s=n.complete,f=!1;return Promise.resolve().then((function(){f||(u=t.subscribe({next:r,error:o,complete:i}))})),function(){f=!0,u&&u.unsubscribe()}}))}function a(e){return!f(e)}var c=e.client,s=e.forward,f=t;return function(e){var t=i(e);e=d((function(e){var n=e.key,r=u((function(e){return"teardown"===e.kind&&e.key===n}))(t);return l(r)(o(e))}))(u(f)(t));var n=s(u(a)(t));return h([e,n])}}}fe.prototype.onOperationStart=function(e){var t=e.key;this.activeOperations[t]=(this.activeOperations[t]||0)+1,this.dispatchOperation(e)},fe.prototype.onOperationEnd=function(e){var t=e.key,n=this.activeOperations[t]||0;if(0>=(this.activeOperations[t]=0>=n?0:n-1)){for(t=this.queue.length-1;0<=t;t--)this.queue[t].key===e.key&&this.queue.splice(t,1);this.dispatchOperation(J("teardown",e,e.context))}},fe.prototype.executeRequestOperation=function(e){var t=this,n=u((function(t){return t.operation.key===e.key}))(this.results$);if(this.maskTypename&&(n=c(pe)(n)),"mutation"===e.kind)return o(1)(q((function(){return t.dispatchOperation(e)}))(n));var r=u((function(t){return"teardown"===t.kind&&t.key===e.key}))(this.operations$),i=O((function(){t.onOperationEnd(e)}))(q((function(){t.onOperationStart(e)}))(l(r)(n)));return"query"===e.kind&&e.context.pollInterval?g((function(){return i}))(h([b(0),w(e.context.pollInterval)])):i},fe.prototype.query=function(e,t,n){return n&&"boolean"==typeof n.suspense||(n=S({},n,{suspense:!1})),N(this.executeQuery(M(e,t),n))},fe.prototype.readQuery=function(e,t,n){var r=null;return E((function(e){r=e}))(this.executeQuery(M(e,t),n)).unsubscribe(),r},fe.prototype.subscription=function(e,t,n){return this.executeSubscription(M(e,t),n)},fe.prototype.mutation=function(e,t,n){return N(this.executeMutation(M(e,t),n))};export{fe as Client,Z as cacheExchange,ce as composeExchanges,he as createClient,de as debugExchange,te as dedupExchange,se as defaultExchanges,le as errorExchange,ae as fallbackExchangeIO,oe as fetchExchange,F as formatDocument,J as makeOperation,G as maskTypename,ye as ssrExchange,ke as subscriptionExchange};
2//# sourceMappingURL=urql-core.min.mjs.map