UNPKG

react-query

Version:

Hooks for managing, caching and syncing asynchronous and remote data in React

3 lines (2 loc) 2.94 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).ReactQueryPersistQueryClientExperimental={})}(this,(function(e){"use strict";function t(){return(t=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function n(){}var r=console||{error:n,warn:n,log:n};function i(){return r}function u(e){return e.state.isPaused}function o(e){return"success"===e.state.status}function a(e,t){var n,r,i=[],a=[];if(!1!==(null==(n=t=t||{})?void 0:n.dehydrateMutations)){var s=t.shouldDehydrateMutation||u;e.getMutationCache().getAll().forEach((function(e){s(e)&&i.push(function(e){return{mutationKey:e.options.mutationKey,state:e.state}}(e))}))}if(!1!==(null==(r=t)?void 0:r.dehydrateQueries)){var c=t.shouldDehydrateQuery||o;e.getQueryCache().getAll().forEach((function(e){c(e)&&a.push(function(e){return{state:e.state,queryKey:e.queryKey,queryHash:e.queryHash}}(e))}))}return{mutations:i,queries:a}}function s(){}var c,f=(c=function(e){var n=e.queryClient,r=e.persistor,u=e.maxAge,o=void 0===u?864e5:u,c=e.buster,f=void 0===c?"":c,l=e.hydrateOptions,d=e.dehydrateOptions;return function(e){var t=e();if(t&&t.then)return t.then(s)}((function(){if("undefined"!=typeof window){var e=function(){var e={buster:f,timestamp:Date.now(),clientState:a(n,d)};r.persistClient(e)};return function(e,t){return e&&e.then?e.then(t):t(e)}(function(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}((function(){return e=r.restoreClient(),i=function(e){if(e)if(e.timestamp){var i=Date.now()-e.timestamp>o,u=e.buster!==f;i||u?r.removeClient():function(e,n,r){if("object"==typeof n&&null!==n){var i=e.getMutationCache(),u=e.getQueryCache(),o=n.mutations||[],a=n.queries||[];o.forEach((function(n){var u;i.build(e,t({},null==r||null==(u=r.defaultOptions)?void 0:u.mutations,{mutationKey:n.mutationKey}),n.state)})),a.forEach((function(n){var i,o=u.get(n.queryHash);o?o.state.dataUpdatedAt<n.state.dataUpdatedAt&&o.setState(n.state):u.build(e,t({},null==r||null==(i=r.defaultOptions)?void 0:i.queries,{queryKey:n.queryKey,queryHash:n.queryHash}),n.state)}))}}(n,e.clientState,l)}else r.removeClient()},u?i?i(e):e:(e&&e.then||(e=Promise.resolve(e)),i?e.then(i):e);var e,i,u}),(function(e){i().error(e),i().warn("Encountered an error attempting to restore client cache from persisted location. As a precaution, the persisted cache will be discarded."),r.removeClient()})),(function(){n.getQueryCache().subscribe(e)}))}}))},function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];try{return Promise.resolve(c.apply(this,e))}catch(e){return Promise.reject(e)}});e.persistQueryClient=f,Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=persistQueryClient-experimental.production.min.js.map