/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/superapi-cache@0.12.0/dist/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _readCache=require("./read-cache"),_readCache2=_interopRequireDefault(_readCache),_serialize=require("./serialize"),_serialize2=_interopRequireDefault(_serialize),_memory=require("./memory"),_memory2=_interopRequireDefault(_memory),_exclude=require("./exclude"),_exclude2=_interopRequireDefault(_exclude);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function cache(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0];e.store=e.store||_memory2.default;var r=e.key||cache.key;return e.maxAge=e.maxAge||0,e.readCache=e.readCache||_readCache2.default,e.serialize=e.serialize||_serialize2.default,e.clearOnStale=void 0===e.clearOnStale||e.clearOnStale,e.exclude=e.exclude||{},e.exclude.query=e.exclude.query||!0,e.exclude.paths=e.exclude.paths||[],e.exclude.filter=null,!1!==e.log&&(e.log="function"==typeof e.log?e.log:console.log.bind(console)),function(a,t){var l=arguments.length<=2||void 0===arguments[2]?{}:arguments[2];if((0,_exclude2.default)(a,l,e.exclude))return null;var u=r(a),i=l.cache||{},o=a.method.toLowerCase();if("head"===o)return null;if("get"!==o)return e.store.removeItem(u),null;var n=function(){return t().then((function(r){if(2!==(r.status/100|0))return r;if(["arraybuffer","blob"].indexOf(r.responseType)>-1)return r;var t=0===e.maxAge?0:Date.now()+e.maxAge;return void 0!==i.expiration&&(t=Date.now()+i.expiration,e.log("override expiration to use "+t)),e.store.setItem(u,{expires:t,data:e.serialize(a,r)})}))};return e.store.getItem(u).then((function(r){return e.readCache(a,e.log)(r).catch((function(r){e.clearOnStale&&"cache-stale"===r.reason?e.store.removeItem(u).then(n):n()}))}))}}cache.readCache=_readCache2.default,cache.serialize=_serialize2.default,cache.key=function(e){return e.url},exports.default=cache,module.exports=exports.default;
//# sourceMappingURL=/sm/6e03daef22011d406841f3ba62d9a97780ecc231a31da71559ce4a4ea17e8213.map