!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("lodash.merge")):"function"==typeof define&&define.amd?define(["exports","lodash.merge"],t):t((e=e||self).VuexPersistence={},e._.merge)}(this,function(e,r){"use strict";r=r&&r.hasOwnProperty("default")?r.default:r;var t=(s.prototype.enqueue=function(e){return this._queue.push(e),this._flushing?Promise.resolve():this.flushQueue()},s.prototype.flushQueue=function(){var t=this;this._flushing=!0;var r=function(){var e=t._queue.shift();if(e)return e.then(r);t._flushing=!1};return Promise.resolve(r())},s);function s(){this._queue=[],this._flushing=!1}function n(e,t){return r({},e,t)}function u(e){var s=this;this._mutex=new t,this.subscriber=function(t){return function(e){return t.subscribe(e)}},void 0===e&&(e={}),this.key=null!=e.key?e.key:"vuex",this.subscribed=!1,this.supportCircular=e.supportCircular||!1,this.supportCircular&&(i=require("flatted")),this.storage=e.storage||window.localStorage,this.reducer=null!=e.reducer?e.reducer:null==e.modules?function(e){return e}:function(s){return e.modules.reduce(function(e,t){var r;return n(e,((r={})[t]=s[t],r))},{})},this.filter=e.filter||function(e){return!0},this.strictMode=e.strictMode||!1,this.RESTORE_MUTATION=function(e,t){for(var r=n(e,t||{}),s=0,u=Object.keys(r);s