UNPKG

@pollyjs/persister

Version:

Extendable base persister class used by @pollyjs

3 lines (2 loc) 48.4 kB
"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var stringify=_interopDefault(require("fast-json-stable-stringify")),utils=require("@pollyjs/utils"),Bowser=_interopDefault(require("bowser")),getByteLength=_interopDefault(require("utf8-byte-length")),setCookies=_interopDefault(require("set-cookie-parser")),_defined=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e},_toObject=function(e){return Object(_defined(e))},hasOwnProperty={}.hasOwnProperty,_has=function(e,t){return hasOwnProperty.call(e,t)},toString={}.toString,_cof=function(e){return toString.call(e).slice(8,-1)},_iobject=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==_cof(e)?e.split(""):Object(e)},_toIobject=function(e){return _iobject(_defined(e))},ceil=Math.ceil,floor=Math.floor,_toInteger=function(e){return isNaN(e=+e)?0:(e>0?floor:ceil)(e)},min=Math.min,_toLength=function(e){return e>0?min(_toInteger(e),9007199254740991):0},max=Math.max,min$1=Math.min,_toAbsoluteIndex=function(e,t){return(e=_toInteger(e))<0?max(e+t,0):min$1(e,t)},_arrayIncludes=function(e){return function(t,r,o){var n,i=_toIobject(t),s=_toLength(i.length),a=_toAbsoluteIndex(o,s);if(e&&r!=r){for(;s>a;)if((n=i[a++])!=n)return!0}else for(;s>a;a++)if((e||a in i)&&i[a]===r)return e||a||0;return!e&&-1}};function unwrapExports(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function createCommonjsModule(e,t){return e(t={exports:{}},t.exports),t.exports}var _core=createCommonjsModule((function(e){var t=e.exports={version:"2.6.9"};"number"==typeof __e&&(__e=t)})),_core_1=_core.version,_global=createCommonjsModule((function(e){var t=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=t)})),_library=!0,_shared=createCommonjsModule((function(e){var t=_global["__core-js_shared__"]||(_global["__core-js_shared__"]={});(e.exports=function(e,r){return t[e]||(t[e]=void 0!==r?r:{})})("versions",[]).push({version:_core.version,mode:"pure",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})})),id=0,px=Math.random(),_uid=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++id+px).toString(36))},shared=_shared("keys"),_sharedKey=function(e){return shared[e]||(shared[e]=_uid(e))},arrayIndexOf=_arrayIncludes(!1),IE_PROTO=_sharedKey("IE_PROTO"),_objectKeysInternal=function(e,t){var r,o=_toIobject(e),n=0,i=[];for(r in o)r!=IE_PROTO&&_has(o,r)&&i.push(r);for(;t.length>n;)_has(o,r=t[n++])&&(~arrayIndexOf(i,r)||i.push(r));return i},_enumBugKeys="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),_objectKeys=Object.keys||function(e){return _objectKeysInternal(e,_enumBugKeys)},_aFunction=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e},_ctx=function(e,t,r){if(_aFunction(e),void 0===t)return e;switch(r){case 1:return function(r){return e.call(t,r)};case 2:return function(r,o){return e.call(t,r,o)};case 3:return function(r,o,n){return e.call(t,r,o,n)}}return function(){return e.apply(t,arguments)}},_isObject=function(e){return"object"==typeof e?null!==e:"function"==typeof e},_anObject=function(e){if(!_isObject(e))throw TypeError(e+" is not an object!");return e},_fails=function(e){try{return!!e()}catch(e){return!0}},_descriptors=!_fails((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})),document$1=_global.document,is=_isObject(document$1)&&_isObject(document$1.createElement),_domCreate=function(e){return is?document$1.createElement(e):{}},_ie8DomDefine=!_descriptors&&!_fails((function(){return 7!=Object.defineProperty(_domCreate("div"),"a",{get:function(){return 7}}).a})),_toPrimitive=function(e,t){if(!_isObject(e))return e;var r,o;if(t&&"function"==typeof(r=e.toString)&&!_isObject(o=r.call(e)))return o;if("function"==typeof(r=e.valueOf)&&!_isObject(o=r.call(e)))return o;if(!t&&"function"==typeof(r=e.toString)&&!_isObject(o=r.call(e)))return o;throw TypeError("Can't convert object to primitive value")},dP=Object.defineProperty,f=_descriptors?Object.defineProperty:function(e,t,r){if(_anObject(e),t=_toPrimitive(t,!0),_anObject(r),_ie8DomDefine)try{return dP(e,t,r)}catch(e){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(e[t]=r.value),e},_objectDp={f:f},_propertyDesc=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},_hide=_descriptors?function(e,t,r){return _objectDp.f(e,t,_propertyDesc(1,r))}:function(e,t,r){return e[t]=r,e},PROTOTYPE="prototype",$export=function(e,t,r){var o,n,i,s=e&$export.F,a=e&$export.G,c=e&$export.S,u=e&$export.P,l=e&$export.B,_=e&$export.W,p=a?_core:_core[t]||(_core[t]={}),f=p[PROTOTYPE],h=a?_global:c?_global[t]:(_global[t]||{})[PROTOTYPE];for(o in a&&(r=t),r)(n=!s&&h&&void 0!==h[o])&&_has(p,o)||(i=n?h[o]:r[o],p[o]=a&&"function"!=typeof h[o]?r[o]:l&&n?_ctx(i,_global):_&&h[o]==i?function(e){var t=function(t,r,o){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,r)}return new e(t,r,o)}return e.apply(this,arguments)};return t[PROTOTYPE]=e[PROTOTYPE],t}(i):u&&"function"==typeof i?_ctx(Function.call,i):i,u&&((p.virtual||(p.virtual={}))[o]=i,e&$export.R&&f&&!f[o]&&_hide(f,o,i)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128;var _export=$export,_objectSap=function(e,t){var r=(_core.Object||{})[e]||Object[e],o={};o[e]=t(r),_export(_export.S+_export.F*_fails((function(){r(1)})),"Object",o)};_objectSap("keys",(function(){return function(e){return _objectKeys(_toObject(e))}}));var keys=_core.Object.keys,keys$1=keys,_redefine=_hide,_meta=createCommonjsModule((function(e){var t=_uid("meta"),r=_objectDp.f,o=0,n=Object.isExtensible||function(){return!0},i=!_fails((function(){return n(Object.preventExtensions({}))})),s=function(e){r(e,t,{value:{i:"O"+ ++o,w:{}}})},a=e.exports={KEY:t,NEED:!1,fastKey:function(e,r){if(!_isObject(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!_has(e,t)){if(!n(e))return"F";if(!r)return"E";s(e)}return e[t].i},getWeak:function(e,r){if(!_has(e,t)){if(!n(e))return!0;if(!r)return!1;s(e)}return e[t].w},onFreeze:function(e){return i&&a.NEED&&n(e)&&!_has(e,t)&&s(e),e}}})),_meta_1=_meta.KEY,_meta_2=_meta.NEED,_meta_3=_meta.fastKey,_meta_4=_meta.getWeak,_meta_5=_meta.onFreeze,_wks=createCommonjsModule((function(e){var t=_shared("wks"),r=_global.Symbol,o="function"==typeof r;(e.exports=function(e){return t[e]||(t[e]=o&&r[e]||(o?r:_uid)("Symbol."+e))}).store=t})),def=_objectDp.f,TAG=_wks("toStringTag"),_setToStringTag=function(e,t,r){e&&!_has(e=r?e:e.prototype,TAG)&&def(e,TAG,{configurable:!0,value:t})},f$1=_wks,_wksExt={f:f$1},defineProperty=_objectDp.f,_wksDefine=function(e){var t=_core.Symbol||(_core.Symbol={});"_"==e.charAt(0)||e in t||defineProperty(t,e,{value:_wksExt.f(e)})},f$2=Object.getOwnPropertySymbols,_objectGops={f:f$2},f$3={}.propertyIsEnumerable,_objectPie={f:f$3},_enumKeys=function(e){var t=_objectKeys(e),r=_objectGops.f;if(r)for(var o,n=r(e),i=_objectPie.f,s=0;n.length>s;)i.call(e,o=n[s++])&&t.push(o);return t},_isArray=Array.isArray||function(e){return"Array"==_cof(e)},_objectDps=_descriptors?Object.defineProperties:function(e,t){_anObject(e);for(var r,o=_objectKeys(t),n=o.length,i=0;n>i;)_objectDp.f(e,r=o[i++],t[r]);return e},document$2=_global.document,_html=document$2&&document$2.documentElement,IE_PROTO$1=_sharedKey("IE_PROTO"),Empty=function(){},PROTOTYPE$1="prototype",createDict=function(){var e,t=_domCreate("iframe"),r=_enumBugKeys.length;for(t.style.display="none",_html.appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),createDict=e.F;r--;)delete createDict[PROTOTYPE$1][_enumBugKeys[r]];return createDict()},_objectCreate=Object.create||function(e,t){var r;return null!==e?(Empty[PROTOTYPE$1]=_anObject(e),r=new Empty,Empty[PROTOTYPE$1]=null,r[IE_PROTO$1]=e):r=createDict(),void 0===t?r:_objectDps(r,t)},hiddenKeys=_enumBugKeys.concat("length","prototype"),f$4=Object.getOwnPropertyNames||function(e){return _objectKeysInternal(e,hiddenKeys)},_objectGopn={f:f$4},gOPN=_objectGopn.f,toString$1={}.toString,windowNames="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],getWindowNames=function(e){try{return gOPN(e)}catch(e){return windowNames.slice()}},f$5=function(e){return windowNames&&"[object Window]"==toString$1.call(e)?getWindowNames(e):gOPN(_toIobject(e))},_objectGopnExt={f:f$5},gOPD=Object.getOwnPropertyDescriptor,f$6=_descriptors?gOPD:function(e,t){if(e=_toIobject(e),t=_toPrimitive(t,!0),_ie8DomDefine)try{return gOPD(e,t)}catch(e){}if(_has(e,t))return _propertyDesc(!_objectPie.f.call(e,t),e[t])},_objectGopd={f:f$6},META=_meta.KEY,gOPD$1=_objectGopd.f,dP$1=_objectDp.f,gOPN$1=_objectGopnExt.f,$Symbol=_global.Symbol,$JSON=_global.JSON,_stringify=$JSON&&$JSON.stringify,PROTOTYPE$2="prototype",HIDDEN=_wks("_hidden"),TO_PRIMITIVE=_wks("toPrimitive"),isEnum={}.propertyIsEnumerable,SymbolRegistry=_shared("symbol-registry"),AllSymbols=_shared("symbols"),OPSymbols=_shared("op-symbols"),ObjectProto=Object[PROTOTYPE$2],USE_NATIVE="function"==typeof $Symbol&&!!_objectGops.f,QObject=_global.QObject,setter=!QObject||!QObject[PROTOTYPE$2]||!QObject[PROTOTYPE$2].findChild,setSymbolDesc=_descriptors&&_fails((function(){return 7!=_objectCreate(dP$1({},"a",{get:function(){return dP$1(this,"a",{value:7}).a}})).a}))?function(e,t,r){var o=gOPD$1(ObjectProto,t);o&&delete ObjectProto[t],dP$1(e,t,r),o&&e!==ObjectProto&&dP$1(ObjectProto,t,o)}:dP$1,wrap=function(e){var t=AllSymbols[e]=_objectCreate($Symbol[PROTOTYPE$2]);return t._k=e,t},isSymbol=USE_NATIVE&&"symbol"==typeof $Symbol.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof $Symbol},$defineProperty=function(e,t,r){return e===ObjectProto&&$defineProperty(OPSymbols,t,r),_anObject(e),t=_toPrimitive(t,!0),_anObject(r),_has(AllSymbols,t)?(r.enumerable?(_has(e,HIDDEN)&&e[HIDDEN][t]&&(e[HIDDEN][t]=!1),r=_objectCreate(r,{enumerable:_propertyDesc(0,!1)})):(_has(e,HIDDEN)||dP$1(e,HIDDEN,_propertyDesc(1,{})),e[HIDDEN][t]=!0),setSymbolDesc(e,t,r)):dP$1(e,t,r)},$defineProperties=function(e,t){_anObject(e);for(var r,o=_enumKeys(t=_toIobject(t)),n=0,i=o.length;i>n;)$defineProperty(e,r=o[n++],t[r]);return e},$create=function(e,t){return void 0===t?_objectCreate(e):$defineProperties(_objectCreate(e),t)},$propertyIsEnumerable=function(e){var t=isEnum.call(this,e=_toPrimitive(e,!0));return!(this===ObjectProto&&_has(AllSymbols,e)&&!_has(OPSymbols,e))&&(!(t||!_has(this,e)||!_has(AllSymbols,e)||_has(this,HIDDEN)&&this[HIDDEN][e])||t)},$getOwnPropertyDescriptor=function(e,t){if(e=_toIobject(e),t=_toPrimitive(t,!0),e!==ObjectProto||!_has(AllSymbols,t)||_has(OPSymbols,t)){var r=gOPD$1(e,t);return!r||!_has(AllSymbols,t)||_has(e,HIDDEN)&&e[HIDDEN][t]||(r.enumerable=!0),r}},$getOwnPropertyNames=function(e){for(var t,r=gOPN$1(_toIobject(e)),o=[],n=0;r.length>n;)_has(AllSymbols,t=r[n++])||t==HIDDEN||t==META||o.push(t);return o},$getOwnPropertySymbols=function(e){for(var t,r=e===ObjectProto,o=gOPN$1(r?OPSymbols:_toIobject(e)),n=[],i=0;o.length>i;)!_has(AllSymbols,t=o[i++])||r&&!_has(ObjectProto,t)||n.push(AllSymbols[t]);return n};USE_NATIVE||(_redefine(($Symbol=function(){if(this instanceof $Symbol)throw TypeError("Symbol is not a constructor!");var e=_uid(arguments.length>0?arguments[0]:void 0),t=function(r){this===ObjectProto&&t.call(OPSymbols,r),_has(this,HIDDEN)&&_has(this[HIDDEN],e)&&(this[HIDDEN][e]=!1),setSymbolDesc(this,e,_propertyDesc(1,r))};return _descriptors&&setter&&setSymbolDesc(ObjectProto,e,{configurable:!0,set:t}),wrap(e)})[PROTOTYPE$2],"toString",(function(){return this._k})),_objectGopd.f=$getOwnPropertyDescriptor,_objectDp.f=$defineProperty,_objectGopn.f=_objectGopnExt.f=$getOwnPropertyNames,_objectPie.f=$propertyIsEnumerable,_objectGops.f=$getOwnPropertySymbols,_descriptors&&!_library&&_redefine(ObjectProto,"propertyIsEnumerable",$propertyIsEnumerable,!0),_wksExt.f=function(e){return wrap(_wks(e))}),_export(_export.G+_export.W+_export.F*!USE_NATIVE,{Symbol:$Symbol});for(var es6Symbols="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),j=0;es6Symbols.length>j;)_wks(es6Symbols[j++]);for(var wellKnownSymbols=_objectKeys(_wks.store),k=0;wellKnownSymbols.length>k;)_wksDefine(wellKnownSymbols[k++]);_export(_export.S+_export.F*!USE_NATIVE,"Symbol",{for:function(e){return _has(SymbolRegistry,e+="")?SymbolRegistry[e]:SymbolRegistry[e]=$Symbol(e)},keyFor:function(e){if(!isSymbol(e))throw TypeError(e+" is not a symbol!");for(var t in SymbolRegistry)if(SymbolRegistry[t]===e)return t},useSetter:function(){setter=!0},useSimple:function(){setter=!1}}),_export(_export.S+_export.F*!USE_NATIVE,"Object",{create:$create,defineProperty:$defineProperty,defineProperties:$defineProperties,getOwnPropertyDescriptor:$getOwnPropertyDescriptor,getOwnPropertyNames:$getOwnPropertyNames,getOwnPropertySymbols:$getOwnPropertySymbols});var FAILS_ON_PRIMITIVES=_fails((function(){_objectGops.f(1)}));_export(_export.S+_export.F*FAILS_ON_PRIMITIVES,"Object",{getOwnPropertySymbols:function(e){return _objectGops.f(_toObject(e))}}),$JSON&&_export(_export.S+_export.F*(!USE_NATIVE||_fails((function(){var e=$Symbol();return"[null]"!=_stringify([e])||"{}"!=_stringify({a:e})||"{}"!=_stringify(Object(e))}))),"JSON",{stringify:function(e){for(var t,r,o=[e],n=1;arguments.length>n;)o.push(arguments[n++]);if(r=t=o[1],(_isObject(t)||void 0!==e)&&!isSymbol(e))return _isArray(t)||(t=function(e,t){if("function"==typeof r&&(t=r.call(this,e,t)),!isSymbol(t))return t}),o[1]=t,_stringify.apply($JSON,o)}}),$Symbol[PROTOTYPE$2][TO_PRIMITIVE]||_hide($Symbol[PROTOTYPE$2],TO_PRIMITIVE,$Symbol[PROTOTYPE$2].valueOf),_setToStringTag($Symbol,"Symbol"),_setToStringTag(Math,"Math",!0),_setToStringTag(_global.JSON,"JSON",!0);var getOwnPropertySymbols=_core.Object.getOwnPropertySymbols,getOwnPropertySymbols$1=getOwnPropertySymbols,$getOwnPropertyDescriptor$1=_objectGopd.f;_objectSap("getOwnPropertyDescriptor",(function(){return function(e,t){return $getOwnPropertyDescriptor$1(_toIobject(e),t)}}));var $Object=_core.Object,getOwnPropertyDescriptor=function(e,t){return $Object.getOwnPropertyDescriptor(e,t)},getOwnPropertyDescriptor$1=getOwnPropertyDescriptor,Reflect=_global.Reflect,_ownKeys=Reflect&&Reflect.ownKeys||function(e){var t=_objectGopn.f(_anObject(e)),r=_objectGops.f;return r?t.concat(r(e)):t},_createProperty=function(e,t,r){t in e?_objectDp.f(e,t,_propertyDesc(0,r)):e[t]=r};_export(_export.S,"Object",{getOwnPropertyDescriptors:function(e){for(var t,r,o=_toIobject(e),n=_objectGopd.f,i=_ownKeys(o),s={},a=0;i.length>a;)void 0!==(r=n(o,t=i[a++]))&&_createProperty(s,t,r);return s}});var getOwnPropertyDescriptors=_core.Object.getOwnPropertyDescriptors,getOwnPropertyDescriptors$1=getOwnPropertyDescriptors;_export(_export.S+_export.F*!_descriptors,"Object",{defineProperties:_objectDps});var $Object$1=_core.Object,defineProperties=function(e,t){return $Object$1.defineProperties(e,t)},defineProperties$1=defineProperties;_export(_export.S+_export.F*!_descriptors,"Object",{defineProperty:_objectDp.f});var $Object$2=_core.Object,defineProperty$1=function(e,t,r){return $Object$2.defineProperty(e,t,r)},defineProperty$2=defineProperty$1,defineProperty$3=createCommonjsModule((function(e){e.exports=function(e,t,r){return t in e?defineProperty$2(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e},e.exports.default=e.exports,e.exports.__esModule=!0})),_defineProperty=unwrapExports(defineProperty$3),_stringAt=function(e){return function(t,r){var o,n,i=String(_defined(t)),s=_toInteger(r),a=i.length;return s<0||s>=a?e?"":void 0:(o=i.charCodeAt(s))<55296||o>56319||s+1===a||(n=i.charCodeAt(s+1))<56320||n>57343?e?i.charAt(s):o:e?i.slice(s,s+2):n-56320+(o-55296<<10)+65536}},_iterators={},IteratorPrototype={};_hide(IteratorPrototype,_wks("iterator"),(function(){return this}));var _iterCreate=function(e,t,r){e.prototype=_objectCreate(IteratorPrototype,{next:_propertyDesc(1,r)}),_setToStringTag(e,t+" Iterator")},IE_PROTO$2=_sharedKey("IE_PROTO"),ObjectProto$1=Object.prototype,_objectGpo=Object.getPrototypeOf||function(e){return e=_toObject(e),_has(e,IE_PROTO$2)?e[IE_PROTO$2]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?ObjectProto$1:null},ITERATOR=_wks("iterator"),BUGGY=!([].keys&&"next"in[].keys()),FF_ITERATOR="@@iterator",KEYS="keys",VALUES="values",returnThis=function(){return this},_iterDefine=function(e,t,r,o,n,i,s){_iterCreate(r,t,o);var a,c,u,l=function(e){if(!BUGGY&&e in h)return h[e];switch(e){case KEYS:case VALUES:return function(){return new r(this,e)}}return function(){return new r(this,e)}},_=t+" Iterator",p=n==VALUES,f=!1,h=e.prototype,d=h[ITERATOR]||h[FF_ITERATOR]||n&&h[n],y=d||l(n),g=n?p?l("entries"):y:void 0,b="Array"==t&&h.entries||d;if(b&&(u=_objectGpo(b.call(new e)))!==Object.prototype&&u.next&&_setToStringTag(u,_,!0),p&&d&&d.name!==VALUES&&(f=!0,y=function(){return d.call(this)}),s&&(BUGGY||f||!h[ITERATOR])&&_hide(h,ITERATOR,y),_iterators[t]=y,_iterators[_]=returnThis,n)if(a={values:p?y:l(VALUES),keys:i?y:l(KEYS),entries:g},s)for(c in a)c in h||_redefine(h,c,a[c]);else _export(_export.P+_export.F*(BUGGY||f),t,a);return a},$at=_stringAt(!0);_iterDefine(String,"String",(function(e){this._t=String(e),this._i=0}),(function(){var e,t=this._t,r=this._i;return r>=t.length?{value:void 0,done:!0}:(e=$at(t,r),this._i+=e.length,{value:e,done:!1})}));var _iterStep=function(e,t){return{value:t,done:!!e}},es6_array_iterator=_iterDefine(Array,"Array",(function(e,t){this._t=_toIobject(e),this._i=0,this._k=t}),(function(){var e=this._t,t=this._k,r=this._i++;return!e||r>=e.length?(this._t=void 0,_iterStep(1)):_iterStep(0,"keys"==t?r:"values"==t?e[r]:[r,e[r]])}),"values");_iterators.Arguments=_iterators.Array;for(var TO_STRING_TAG=_wks("toStringTag"),DOMIterables="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),i=0;i<DOMIterables.length;i++){var NAME=DOMIterables[i],Collection=_global[NAME],proto=Collection&&Collection.prototype;proto&&!proto[TO_STRING_TAG]&&_hide(proto,TO_STRING_TAG,NAME),_iterators[NAME]=_iterators.Array}var _redefineAll=function(e,t,r){for(var o in t)r&&e[o]?e[o]=t[o]:_hide(e,o,t[o]);return e},_anInstance=function(e,t,r,o){if(!(e instanceof t)||void 0!==o&&o in e)throw TypeError(r+": incorrect invocation!");return e},_iterCall=function(e,t,r,o){try{return o?t(_anObject(r)[0],r[1]):t(r)}catch(t){var n=e.return;throw void 0!==n&&_anObject(n.call(e)),t}},ITERATOR$1=_wks("iterator"),ArrayProto=Array.prototype,_isArrayIter=function(e){return void 0!==e&&(_iterators.Array===e||ArrayProto[ITERATOR$1]===e)},TAG$1=_wks("toStringTag"),ARG="Arguments"==_cof(function(){return arguments}()),tryGet=function(e,t){try{return e[t]}catch(e){}},_classof=function(e){var t,r,o;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(r=tryGet(t=Object(e),TAG$1))?r:ARG?_cof(t):"Object"==(o=_cof(t))&&"function"==typeof t.callee?"Arguments":o},ITERATOR$2=_wks("iterator"),core_getIteratorMethod=_core.getIteratorMethod=function(e){if(null!=e)return e[ITERATOR$2]||e["@@iterator"]||_iterators[_classof(e)]},_forOf=createCommonjsModule((function(e){var t={},r={},o=e.exports=function(e,o,n,i,s){var a,c,u,l,_=s?function(){return e}:core_getIteratorMethod(e),p=_ctx(n,i,o?2:1),f=0;if("function"!=typeof _)throw TypeError(e+" is not iterable!");if(_isArrayIter(_)){for(a=_toLength(e.length);a>f;f++)if((l=o?p(_anObject(c=e[f])[0],c[1]):p(e[f]))===t||l===r)return l}else for(u=_.call(e);!(c=u.next()).done;)if((l=_iterCall(u,p,c.value,o))===t||l===r)return l};o.BREAK=t,o.RETURN=r})),SPECIES=_wks("species"),_setSpecies=function(e){var t="function"==typeof _core[e]?_core[e]:_global[e];_descriptors&&t&&!t[SPECIES]&&_objectDp.f(t,SPECIES,{configurable:!0,get:function(){return this}})},_validateCollection=function(e,t){if(!_isObject(e)||e._t!==t)throw TypeError("Incompatible receiver, "+t+" required!");return e},dP$2=_objectDp.f,fastKey=_meta.fastKey,SIZE=_descriptors?"_s":"size",getEntry=function(e,t){var r,o=fastKey(t);if("F"!==o)return e._i[o];for(r=e._f;r;r=r.n)if(r.k==t)return r},_collectionStrong={getConstructor:function(e,t,r,o){var n=e((function(e,i){_anInstance(e,n,t,"_i"),e._t=t,e._i=_objectCreate(null),e._f=void 0,e._l=void 0,e[SIZE]=0,null!=i&&_forOf(i,r,e[o],e)}));return _redefineAll(n.prototype,{clear:function(){for(var e=_validateCollection(this,t),r=e._i,o=e._f;o;o=o.n)o.r=!0,o.p&&(o.p=o.p.n=void 0),delete r[o.i];e._f=e._l=void 0,e[SIZE]=0},delete:function(e){var r=_validateCollection(this,t),o=getEntry(r,e);if(o){var n=o.n,i=o.p;delete r._i[o.i],o.r=!0,i&&(i.n=n),n&&(n.p=i),r._f==o&&(r._f=n),r._l==o&&(r._l=i),r[SIZE]--}return!!o},forEach:function(e){_validateCollection(this,t);for(var r,o=_ctx(e,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(o(r.v,r.k,this);r&&r.r;)r=r.p},has:function(e){return!!getEntry(_validateCollection(this,t),e)}}),_descriptors&&dP$2(n.prototype,"size",{get:function(){return _validateCollection(this,t)[SIZE]}}),n},def:function(e,t,r){var o,n,i=getEntry(e,t);return i?i.v=r:(e._l=i={i:n=fastKey(t,!0),k:t,v:r,p:o=e._l,n:void 0,r:!1},e._f||(e._f=i),o&&(o.n=i),e[SIZE]++,"F"!==n&&(e._i[n]=i)),e},getEntry:getEntry,setStrong:function(e,t,r){_iterDefine(e,t,(function(e,r){this._t=_validateCollection(e,t),this._k=r,this._l=void 0}),(function(){for(var e=this._k,t=this._l;t&&t.r;)t=t.p;return this._t&&(this._l=t=t?t.n:this._t._f)?_iterStep(0,"keys"==e?t.k:"values"==e?t.v:[t.k,t.v]):(this._t=void 0,_iterStep(1))}),r?"entries":"values",!r,!0),_setSpecies(t)}},SPECIES$1=_wks("species"),_arraySpeciesConstructor=function(e){var t;return _isArray(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!_isArray(t.prototype)||(t=void 0),_isObject(t)&&null===(t=t[SPECIES$1])&&(t=void 0)),void 0===t?Array:t},_arraySpeciesCreate=function(e,t){return new(_arraySpeciesConstructor(e))(t)},_arrayMethods=function(e,t){var r=1==e,o=2==e,n=3==e,i=4==e,s=6==e,a=5==e||s,c=t||_arraySpeciesCreate;return function(t,u,l){for(var _,p,f=_toObject(t),h=_iobject(f),d=_ctx(u,l,3),y=_toLength(h.length),g=0,b=r?c(t,y):o?c(t,0):void 0;y>g;g++)if((a||g in h)&&(p=d(_=h[g],g,f),e))if(r)b[g]=p;else if(p)switch(e){case 3:return!0;case 5:return _;case 6:return g;case 2:b.push(_)}else if(i)return!1;return s?-1:n||i?i:b}},dP$3=_objectDp.f,each=_arrayMethods(0),_collection=function(e,t,r,o,n,i){var s=_global[e],a=s,c=n?"set":"add",u=a&&a.prototype,l={};return _descriptors&&"function"==typeof a&&(i||u.forEach&&!_fails((function(){(new a).entries().next()})))?(a=t((function(t,r){_anInstance(t,a,e,"_c"),t._c=new s,null!=r&&_forOf(r,n,t[c],t)})),each("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(e){var t="add"==e||"set"==e;!(e in u)||i&&"clear"==e||_hide(a.prototype,e,(function(r,o){if(_anInstance(this,a,e),!t&&i&&!_isObject(r))return"get"==e&&void 0;var n=this._c[e](0===r?0:r,o);return t?this:n}))})),i||dP$3(a.prototype,"size",{get:function(){return this._c.size}})):(a=o.getConstructor(t,e,n,c),_redefineAll(a.prototype,r),_meta.NEED=!0),_setToStringTag(a,e),l[e]=a,_export(_export.G+_export.W+_export.F,l),i||o.setStrong(a,e,n),a},MAP="Map",es6_map=_collection(MAP,(function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}}),{get:function(e){var t=_collectionStrong.getEntry(_validateCollection(this,MAP),e);return t&&t.v},set:function(e,t){return _collectionStrong.def(_validateCollection(this,MAP),0===e?0:e,t)}},_collectionStrong,!0),_arrayFromIterable=function(e,t){var r=[];return _forOf(e,!1,r.push,r,t),r},_collectionToJson=function(e){return function(){if(_classof(this)!=e)throw TypeError(e+"#toJSON isn't generic");return _arrayFromIterable(this)}};_export(_export.P+_export.R,"Map",{toJSON:_collectionToJson("Map")});var _setCollectionOf=function(e){_export(_export.S,e,{of:function(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];return new this(t)}})};_setCollectionOf("Map");var _setCollectionFrom=function(e){_export(_export.S,e,{from:function(e){var t,r,o,n,i=arguments[1];return _aFunction(this),(t=void 0!==i)&&_aFunction(i),null==e?new this:(r=[],t?(o=0,n=_ctx(i,arguments[2],2),_forOf(e,!1,(function(e){r.push(n(e,o++))}))):_forOf(e,!1,r.push,r),new this(r))}})};_setCollectionFrom("Map");var defer,channel,port,map=_core.Map,map$1=map,SPECIES$2=_wks("species"),_speciesConstructor=function(e,t){var r,o=_anObject(e).constructor;return void 0===o||null==(r=_anObject(o)[SPECIES$2])?t:_aFunction(r)},_invoke=function(e,t,r){var o=void 0===r;switch(t.length){case 0:return o?e():e.call(r);case 1:return o?e(t[0]):e.call(r,t[0]);case 2:return o?e(t[0],t[1]):e.call(r,t[0],t[1]);case 3:return o?e(t[0],t[1],t[2]):e.call(r,t[0],t[1],t[2]);case 4:return o?e(t[0],t[1],t[2],t[3]):e.call(r,t[0],t[1],t[2],t[3])}return e.apply(r,t)},process=_global.process,setTask=_global.setImmediate,clearTask=_global.clearImmediate,MessageChannel=_global.MessageChannel,Dispatch=_global.Dispatch,counter=0,queue={},ONREADYSTATECHANGE="onreadystatechange",run=function(){var e=+this;if(queue.hasOwnProperty(e)){var t=queue[e];delete queue[e],t()}},listener=function(e){run.call(e.data)};setTask&&clearTask||(setTask=function(e){for(var t=[],r=1;arguments.length>r;)t.push(arguments[r++]);return queue[++counter]=function(){_invoke("function"==typeof e?e:Function(e),t)},defer(counter),counter},clearTask=function(e){delete queue[e]},"process"==_cof(process)?defer=function(e){process.nextTick(_ctx(run,e,1))}:Dispatch&&Dispatch.now?defer=function(e){Dispatch.now(_ctx(run,e,1))}:MessageChannel?(port=(channel=new MessageChannel).port2,channel.port1.onmessage=listener,defer=_ctx(port.postMessage,port,1)):_global.addEventListener&&"function"==typeof postMessage&&!_global.importScripts?(defer=function(e){_global.postMessage(e+"","*")},_global.addEventListener("message",listener,!1)):defer=ONREADYSTATECHANGE in _domCreate("script")?function(e){_html.appendChild(_domCreate("script"))[ONREADYSTATECHANGE]=function(){_html.removeChild(this),run.call(e)}}:function(e){setTimeout(_ctx(run,e,1),0)});var _task={set:setTask,clear:clearTask},macrotask=_task.set,Observer=_global.MutationObserver||_global.WebKitMutationObserver,process$1=_global.process,Promise=_global.Promise,isNode="process"==_cof(process$1),_microtask=function(){var e,t,r,o=function(){var o,n;for(isNode&&(o=process$1.domain)&&o.exit();e;){n=e.fn,e=e.next;try{n()}catch(o){throw e?r():t=void 0,o}}t=void 0,o&&o.enter()};if(isNode)r=function(){process$1.nextTick(o)};else if(!Observer||_global.navigator&&_global.navigator.standalone)if(Promise&&Promise.resolve){var n=Promise.resolve(void 0);r=function(){n.then(o)}}else r=function(){macrotask.call(_global,o)};else{var i=!0,s=document.createTextNode("");new Observer(o).observe(s,{characterData:!0}),r=function(){s.data=i=!i}}return function(o){var n={fn:o,next:void 0};t&&(t.next=n),e||(e=n,r()),t=n}};function PromiseCapability(e){var t,r;this.promise=new e((function(e,o){if(void 0!==t||void 0!==r)throw TypeError("Bad Promise constructor");t=e,r=o})),this.resolve=_aFunction(t),this.reject=_aFunction(r)}var f$7=function(e){return new PromiseCapability(e)},_newPromiseCapability={f:f$7},_perform=function(e){try{return{e:!1,v:e()}}catch(e){return{e:!0,v:e}}},navigator=_global.navigator,_userAgent=navigator&&navigator.userAgent||"",_promiseResolve=function(e,t){if(_anObject(e),_isObject(t)&&t.constructor===e)return t;var r=_newPromiseCapability.f(e);return(0,r.resolve)(t),r.promise},ITERATOR$3=_wks("iterator"),SAFE_CLOSING=!1;try{var riter=[7][ITERATOR$3]();riter.return=function(){SAFE_CLOSING=!0},Array.from(riter,(function(){throw 2}))}catch(e){}var Internal,newGenericPromiseCapability,OwnPromiseCapability,Wrapper,_iterDetect=function(e,t){if(!t&&!SAFE_CLOSING)return!1;var r=!1;try{var o=[7],n=o[ITERATOR$3]();n.next=function(){return{done:r=!0}},o[ITERATOR$3]=function(){return n},e(o)}catch(e){}return r},task=_task.set,microtask=_microtask(),PROMISE="Promise",TypeError$1=_global.TypeError,process$2=_global.process,versions=process$2&&process$2.versions,v8=versions&&versions.v8||"",$Promise=_global[PROMISE],isNode$1="process"==_classof(process$2),empty=function(){},newPromiseCapability=newGenericPromiseCapability=_newPromiseCapability.f,USE_NATIVE$1=!!function(){try{var e=$Promise.resolve(1),t=(e.constructor={})[_wks("species")]=function(e){e(empty,empty)};return(isNode$1||"function"==typeof PromiseRejectionEvent)&&e.then(empty)instanceof t&&0!==v8.indexOf("6.6")&&-1===_userAgent.indexOf("Chrome/66")}catch(e){}}(),isThenable=function(e){var t;return!(!_isObject(e)||"function"!=typeof(t=e.then))&&t},notify=function(e,t){if(!e._n){e._n=!0;var r=e._c;microtask((function(){for(var o=e._v,n=1==e._s,i=0,s=function(t){var r,i,s,a=n?t.ok:t.fail,c=t.resolve,u=t.reject,l=t.domain;try{a?(n||(2==e._h&&onHandleUnhandled(e),e._h=1),!0===a?r=o:(l&&l.enter(),r=a(o),l&&(l.exit(),s=!0)),r===t.promise?u(TypeError$1("Promise-chain cycle")):(i=isThenable(r))?i.call(r,c,u):c(r)):u(o)}catch(e){l&&!s&&l.exit(),u(e)}};r.length>i;)s(r[i++]);e._c=[],e._n=!1,t&&!e._h&&onUnhandled(e)}))}},onUnhandled=function(e){task.call(_global,(function(){var t,r,o,n=e._v,i=isUnhandled(e);if(i&&(t=_perform((function(){isNode$1?process$2.emit("unhandledRejection",n,e):(r=_global.onunhandledrejection)?r({promise:e,reason:n}):(o=_global.console)&&o.error&&o.error("Unhandled promise rejection",n)})),e._h=isNode$1||isUnhandled(e)?2:1),e._a=void 0,i&&t.e)throw t.v}))},isUnhandled=function(e){return 1!==e._h&&0===(e._a||e._c).length},onHandleUnhandled=function(e){task.call(_global,(function(){var t;isNode$1?process$2.emit("rejectionHandled",e):(t=_global.onrejectionhandled)&&t({promise:e,reason:e._v})}))},$reject=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),notify(t,!0))},$resolve=function(e){var t,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===e)throw TypeError$1("Promise can't be resolved itself");(t=isThenable(e))?microtask((function(){var o={_w:r,_d:!1};try{t.call(e,_ctx($resolve,o,1),_ctx($reject,o,1))}catch(e){$reject.call(o,e)}})):(r._v=e,r._s=1,notify(r,!1))}catch(e){$reject.call({_w:r,_d:!1},e)}}};USE_NATIVE$1||($Promise=function(e){_anInstance(this,$Promise,PROMISE,"_h"),_aFunction(e),Internal.call(this);try{e(_ctx($resolve,this,1),_ctx($reject,this,1))}catch(e){$reject.call(this,e)}},(Internal=function(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=_redefineAll($Promise.prototype,{then:function(e,t){var r=newPromiseCapability(_speciesConstructor(this,$Promise));return r.ok="function"!=typeof e||e,r.fail="function"==typeof t&&t,r.domain=isNode$1?process$2.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&notify(this,!1),r.promise},catch:function(e){return this.then(void 0,e)}}),OwnPromiseCapability=function(){var e=new Internal;this.promise=e,this.resolve=_ctx($resolve,e,1),this.reject=_ctx($reject,e,1)},_newPromiseCapability.f=newPromiseCapability=function(e){return e===$Promise||e===Wrapper?new OwnPromiseCapability(e):newGenericPromiseCapability(e)}),_export(_export.G+_export.W+_export.F*!USE_NATIVE$1,{Promise:$Promise}),_setToStringTag($Promise,PROMISE),_setSpecies(PROMISE),Wrapper=_core[PROMISE],_export(_export.S+_export.F*!USE_NATIVE$1,PROMISE,{reject:function(e){var t=newPromiseCapability(this);return(0,t.reject)(e),t.promise}}),_export(_export.S+_export.F*_library,PROMISE,{resolve:function(e){return _promiseResolve(this===Wrapper?$Promise:this,e)}}),_export(_export.S+_export.F*!(USE_NATIVE$1&&_iterDetect((function(e){$Promise.all(e).catch(empty)}))),PROMISE,{all:function(e){var t=this,r=newPromiseCapability(t),o=r.resolve,n=r.reject,i=_perform((function(){var r=[],i=0,s=1;_forOf(e,!1,(function(e){var a=i++,c=!1;r.push(void 0),s++,t.resolve(e).then((function(e){c||(c=!0,r[a]=e,--s||o(r))}),n)})),--s||o(r)}));return i.e&&n(i.v),r.promise},race:function(e){var t=this,r=newPromiseCapability(t),o=r.reject,n=_perform((function(){_forOf(e,!1,(function(e){t.resolve(e).then(r.resolve,o)}))}));return n.e&&o(n.v),r.promise}}),_export(_export.P+_export.R,"Promise",{finally:function(e){var t=_speciesConstructor(this,_core.Promise||_global.Promise),r="function"==typeof e;return this.then(r?function(r){return _promiseResolve(t,e()).then((function(){return r}))}:e,r?function(r){return _promiseResolve(t,e()).then((function(){throw r}))}:e)}}),_export(_export.S,"Promise",{try:function(e){var t=_newPromiseCapability.f(this),r=_perform(e);return(r.e?t.reject:t.resolve)(r.v),t.promise}});var promise=_core.Promise,promise$1=promise,$assign=Object.assign,_objectAssign=!$assign||_fails((function(){var e={},t={},r=Symbol(),o="abcdefghijklmnopqrst";return e[r]=7,o.split("").forEach((function(e){t[e]=e})),7!=$assign({},e)[r]||Object.keys($assign({},t)).join("")!=o}))?function(e,t){for(var r=_toObject(e),o=arguments.length,n=1,i=_objectGops.f,s=_objectPie.f;o>n;)for(var a,c=_iobject(arguments[n++]),u=i?_objectKeys(c).concat(i(c)):_objectKeys(c),l=u.length,_=0;l>_;)a=u[_++],_descriptors&&!s.call(c,a)||(r[a]=c[a]);return r}:$assign;_export(_export.S+_export.F,"Object",{assign:_objectAssign});var assign=_core.Object.assign,assign$1=assign,freeGlobal="object"==typeof global&&global&&global.Object===Object&&global,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),Symbol$1=root.Symbol,objectProto=Object.prototype,hasOwnProperty$1=objectProto.hasOwnProperty,nativeObjectToString=objectProto.toString,symToStringTag=Symbol$1?Symbol$1.toStringTag:void 0;function getRawTag(e){var t=hasOwnProperty$1.call(e,symToStringTag),r=e[symToStringTag];try{e[symToStringTag]=void 0;var o=!0}catch(e){}var n=nativeObjectToString.call(e);return o&&(t?e[symToStringTag]=r:delete e[symToStringTag]),n}var objectProto$1=Object.prototype,nativeObjectToString$1=objectProto$1.toString;function objectToString(e){return nativeObjectToString$1.call(e)}var nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag$1=Symbol$1?Symbol$1.toStringTag:void 0;function baseGetTag(e){return null==e?void 0===e?undefinedTag:nullTag:symToStringTag$1&&symToStringTag$1 in Object(e)?getRawTag(e):objectToString(e)}function isObject(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}var asyncTag="[object AsyncFunction]",funcTag="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction(e){if(!isObject(e))return!1;var t=baseGetTag(e);return t==funcTag||t==genTag||t==asyncTag||t==proxyTag}var coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var e=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function isMasked(e){return!!maskSrcKey&&maskSrcKey in e}var funcProto=Function.prototype,funcToString=funcProto.toString;function toSource(e){if(null!=e){try{return funcToString.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto$1=Function.prototype,objectProto$2=Object.prototype,funcToString$1=funcProto$1.toString,hasOwnProperty$2=objectProto$2.hasOwnProperty,reIsNative=RegExp("^"+funcToString$1.call(hasOwnProperty$2).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative(e){return!(!isObject(e)||isMasked(e))&&(isFunction(e)?reIsNative:reIsHostCtor).test(toSource(e))}function getValue(e,t){return null==e?void 0:e[t]}function getNative(e,t){var r=getValue(e,t);return baseIsNative(r)?r:void 0}var nativeCreate=getNative(Object,"create");function hashClear(){this.__data__=nativeCreate?nativeCreate(null):{},this.size=0}function hashDelete(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var HASH_UNDEFINED="__lodash_hash_undefined__",objectProto$3=Object.prototype,hasOwnProperty$3=objectProto$3.hasOwnProperty;function hashGet(e){var t=this.__data__;if(nativeCreate){var r=t[e];return r===HASH_UNDEFINED?void 0:r}return hasOwnProperty$3.call(t,e)?t[e]:void 0}var objectProto$4=Object.prototype,hasOwnProperty$4=objectProto$4.hasOwnProperty;function hashHas(e){var t=this.__data__;return nativeCreate?void 0!==t[e]:hasOwnProperty$4.call(t,e)}var HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=nativeCreate&&void 0===t?HASH_UNDEFINED$1:t,this}function Hash(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var o=e[t];this.set(o[0],o[1])}}function listCacheClear(){this.__data__=[],this.size=0}function eq(e,t){return e===t||e!=e&&t!=t}function assocIndexOf(e,t){for(var r=e.length;r--;)if(eq(e[r][0],t))return r;return-1}Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet;var arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete(e){var t=this.__data__,r=assocIndexOf(t,e);return!(r<0)&&(r==t.length-1?t.pop():splice.call(t,r,1),--this.size,!0)}function listCacheGet(e){var t=this.__data__,r=assocIndexOf(t,e);return r<0?void 0:t[r][1]}function listCacheHas(e){return assocIndexOf(this.__data__,e)>-1}function listCacheSet(e,t){var r=this.__data__,o=assocIndexOf(r,e);return o<0?(++this.size,r.push([e,t])):r[o][1]=t,this}function ListCache(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var o=e[t];this.set(o[0],o[1])}}ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet;var Map=getNative(root,"Map");function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map||ListCache),string:new Hash}}function isKeyable(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function getMapData(e,t){var r=e.__data__;return isKeyable(t)?r["string"==typeof t?"string":"hash"]:r.map}function mapCacheDelete(e){var t=getMapData(this,e).delete(e);return this.size-=t?1:0,t}function mapCacheGet(e){return getMapData(this,e).get(e)}function mapCacheHas(e){return getMapData(this,e).has(e)}function mapCacheSet(e,t){var r=getMapData(this,e),o=r.size;return r.set(e,t),this.size+=r.size==o?0:1,this}function MapCache(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var o=e[t];this.set(o[0],o[1])}}MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet;var HASH_UNDEFINED$2="__lodash_hash_undefined__";function setCacheAdd(e){return this.__data__.set(e,HASH_UNDEFINED$2),this}function setCacheHas(e){return this.__data__.has(e)}function SetCache(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new MapCache;++t<r;)this.add(e[t])}function baseFindIndex(e,t,r,o){for(var n=e.length,i=r+(o?1:-1);o?i--:++i<n;)if(t(e[i],i,e))return i;return-1}function baseIsNaN(e){return e!=e}function strictIndexOf(e,t,r){for(var o=r-1,n=e.length;++o<n;)if(e[o]===t)return o;return-1}function baseIndexOf(e,t,r){return t==t?strictIndexOf(e,t,r):baseFindIndex(e,baseIsNaN,r)}function arrayIncludes(e,t){return!!(null==e?0:e.length)&&baseIndexOf(e,t,0)>-1}function arrayIncludesWith(e,t,r){for(var o=-1,n=null==e?0:e.length;++o<n;)if(r(t,e[o]))return!0;return!1}function cacheHas(e,t){return e.has(t)}SetCache.prototype.add=SetCache.prototype.push=setCacheAdd,SetCache.prototype.has=setCacheHas;var Set=getNative(root,"Set");function noop(){}function setToArray(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var INFINITY=1/0,createSet=Set&&1/setToArray(new Set([,-0]))[1]==INFINITY?function(e){return new Set(e)}:noop,LARGE_ARRAY_SIZE=200;function baseUniq(e,t,r){var o=-1,n=arrayIncludes,i=e.length,s=!0,a=[],c=a;if(r)s=!1,n=arrayIncludesWith;else if(i>=LARGE_ARRAY_SIZE){var u=t?null:createSet(e);if(u)return setToArray(u);s=!1,n=cacheHas,c=new SetCache}else c=t?[]:a;e:for(;++o<i;){var l=e[o],_=t?t(l):l;if(l=r||0!==l?l:0,s&&_==_){for(var p=c.length;p--;)if(c[p]===_)continue e;t&&c.push(_),a.push(l)}else n(c,_,r)||(c!==a&&c.push(_),a.push(l))}return a}function uniqWith(e,t){return t="function"==typeof t?t:void 0,e&&e.length?baseUniq(e,void 0,t):[]}const bowser=global.navigator&&global.navigator.userAgent?Bowser.getParser(global.navigator.userAgent).getBrowser():null,browser=bowser&&bowser.name&&bowser.version?{name:bowser.name,version:bowser.version}:null;class Log{constructor(e={}){assign$1(this,{version:"1.2",entries:[],pages:[]},e),!this.browser&&browser&&(this.browser=browser)}addEntries(e=[]){this.entries=uniqWith([...e,...this.entries],(e,t)=>e._id===t._id&&e._order===t._order)}sortEntries(){this.entries=this.entries.sort((e,t)=>new Date(e.startedDateTime)-new Date(t.startedDateTime))}}class HAR{constructor(e={}){this.log=new Log(e.log)}}var _stringWs="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff",space="["+_stringWs+"]",non="​…",ltrim=RegExp("^"+space+space+"*"),rtrim=RegExp(space+space+"*$"),exporter=function(e,t,r){var o={},n=_fails((function(){return!!_stringWs[e]()||non[e]()!=non})),i=o[e]=n?t(trim):_stringWs[e];r&&(o[r]=i),_export(_export.P+_export.F*n,"String",o)},trim=exporter.trim=function(e,t){return e=String(_defined(e)),1&t&&(e=e.replace(ltrim,"")),2&t&&(e=e.replace(rtrim,"")),e},_stringTrim=exporter,$parseInt=_global.parseInt,$trim=_stringTrim.trim,hex=/^[-+]?0[xX]/,_parseInt=8!==$parseInt(_stringWs+"08")||22!==$parseInt(_stringWs+"0x16")?function(e,t){var r=$trim(String(e),3);return $parseInt(r,t>>>0||(hex.test(r)?16:10))}:$parseInt;_export(_export.G+_export.F*(parseInt!=_parseInt),{parseInt:_parseInt});var _parseInt$1=_core.parseInt,_parseInt$2=_parseInt$1;const{keys:keys$2}=Object,{isArray:isArray}=Array;function toNVPairs(e){return keys$2(e||{}).reduce((t,r)=>{const o=e[r];return isArray(o)?t.push(...o.map(e=>({name:r,value:e,_fromType:"array"}))):t.push({name:r,value:o}),t},[])}const{isArray:isArray$1}=Array;function getFirstHeader(e,t){const r=e.getHeader(t);return isArray$1(r)?r.length>0?r[0]:"":r}function headersSize(e){const t=[],r=[];e.headers.forEach(({name:e,value:o})=>{t.push(e),r.push(o)});const o=e.method+e.url+t.join()+r.join();return getByteLength(o)+2*t.length+2+12+2}class Request{constructor(e){this.httpVersion="HTTP/1.1",this.url=e.absoluteUrl,this.method=e.method,this.headers=toNVPairs(e.headers),this.headersSize=headersSize(this),this.queryString=toNVPairs(e.query),this.cookies=setCookies.parse(e.getHeader("Set-Cookie")),e.body&&(this.postData={mimeType:getFirstHeader(e,"Content-Type")||"text/plain",params:[]},"string"==typeof e.body&&(this.postData.text=e.body));const t=getFirstHeader(e,"Content-Length");this.bodySize=t?_parseInt$2(t,10):this.postData&&this.postData.text?getByteLength(this.postData.text):0}}function headersSize$1(e){const t=[],r=[];e.headers.forEach(({name:e,value:o})=>{t.push(e),r.push(o)});const o=t.join()+r.join();return getByteLength(o)+2*t.length+2+2}class Response{constructor(e){this.httpVersion="HTTP/1.1",this.status=e.statusCode,this.statusText=e.statusText,this.headers=toNVPairs(e.headers),this.headersSize=headersSize$1(this),this.cookies=setCookies.parse(e.getHeader("Set-Cookie")),this.redirectURL=getFirstHeader(e,"Location")||"",this.content={mimeType:getFirstHeader(e,"Content-Type")||"text/plain"},e.body&&"string"==typeof e.body&&(this.content.text=e.body,e.encoding&&(this.content.encoding=e.encoding));const t=getFirstHeader(e,"Content-Length");this.content.size=t?_parseInt$2(t,10):this.content.text?getByteLength(this.content.text):0,this.bodySize=this.content.size}}const{keys:keys$3}=Object;function totalTime(e={}){return keys$3(e).reduce((t,r)=>e[r]>0?t+=e[r]:t,0)}class Entry{constructor(e){this._id=e.id,this._order=e.order,this.startedDateTime=e.timestamp,this.request=new Request(e),this.response=new Response(e.response),this.cache={},this.timings={blocked:-1,dns:-1,connect:-1,send:0,wait:e.responseTime,receive:0,ssl:-1},this.time=totalTime(this.timings)}}function ownKeys(e,t){var r=keys$1(e);if(getOwnPropertySymbols$1){var o=getOwnPropertySymbols$1(e);t&&(o=o.filter((function(t){return getOwnPropertyDescriptor$1(e,t).enumerable}))),r.push.apply(r,o)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach((function(t){_defineProperty(e,t,r[t])})):getOwnPropertyDescriptors$1?defineProperties$1(e,getOwnPropertyDescriptors$1(r)):ownKeys(Object(r)).forEach((function(t){defineProperty$2(e,t,getOwnPropertyDescriptor$1(r,t))}))}return e}const CREATOR_NAME="Polly.JS";class Persister{constructor(e){this.polly=e,this.pending=new map$1,this._cache=new map$1}static get type(){return"persister"}static get id(){utils.assert("Must override the static `id` getter.")}get defaultOptions(){return{}}get options(){return _objectSpread(_objectSpread({},this.defaultOptions||{}),(this.polly.config.persisterOptions||{})[this.constructor.id]||{})}get hasPending(){return this.pending.size>0}async persist(){if(!this.hasPending)return;const e=[],t={name:"Polly.JS",version:this.polly.constructor.VERSION,comment:`${this.constructor.type}:${this.constructor.id}`};for(const[r,{name:o,requests:n}]of this.pending){const i=[],s=await this.findRecording(r);let a;a=new HAR(s||{log:{creator:t,_recordingName:o}});for(const e of n){const t=new Entry(e);this.assert(`Cannot persist response for [${t.request.method}] ${t.request.url} because the status code was ${t.response.status} and \`recordFailedRequests\` is \`false\``,t.response.status<400||e.config.recordFailedRequests),await e._emit("beforePersist",t),i.push(t)}a.log.addEntries(i),this.polly.config.persisterOptions.disableSortingHarEntries||a.log.sortEntries(),this.polly.config.persisterOptions.keepUnusedRequests||this._removeUnusedEntries(r,a),e.push(this.saveRecording(r,a))}await promise$1.all(e),this.pending.clear()}recordRequest(e){this.assert("You must pass a PollyRequest to 'recordRequest'.",e),this.assert("Cannot save a request with no response.",e.didRespond);const{recordingId:t,recordingName:r}=e;this.pending.has(t)||this.pending.set(t,{name:r,requests:[]}),this.pending.get(t).requests.push(e)}async findRecording(e){const{_cache:t}=this;if(!t.has(e)){const r=async()=>{const r=await this.onFindRecording(e);return r?(this.assert(`Recording with id '${e}' is invalid. Please delete the recording so a new one can be created.`,r.log&&"Polly.JS"===r.log.creator.name),r):(t.delete(e),null)};t.set(e,r())}return t.get(e)}onFindRecording(){this.assert("Must implement the `onFindRecording` hook.")}async saveRecording(e,t){await this.onSaveRecording(...arguments),this._cache.delete(e),this.polly.logger.log.debug("Recording saved.",{recordingId:e,har:t})}onSaveRecording(){this.assert("Must implement the `onSaveRecording` hook.")}async deleteRecording(e){await this.onDeleteRecording(...arguments),this._cache.delete(e)}onDeleteRecording(){this.assert("Must implement the `onDeleteRecording` hook.")}async findEntry(e){const{id:t,order:r,recordingId:o}=e,n=await this.findRecording(o);return n&&n.log.entries.find(e=>e._id===t&&e._order===r)||null}stringify(){return stringify(...arguments)}assert(e,...t){utils.assert(`[${this.constructor.type}:${this.constructor.id}] ${e}`,...t)}_removeUnusedEntries(e,t){const r=this.polly._requests.filter(t=>t.recordingId===e&&(t.action===utils.ACTIONS.RECORD||t.action===utils.ACTIONS.REPLAY));t.log.entries=t.log.entries.filter(e=>r.find(t=>e._id===t.id&&e._order===t.order))}}module.exports=Persister; //# sourceMappingURL=pollyjs-persister.min.js.map