>>0?1:0))+q+((G+=$)>>>0<$>>>0?1:0))+((L=P+G|0)>>>0>>0?1:0)|0,M=O,P=T,O=A,T=F,A=R,F=D,R=X+(V=J+V+(($=Q+ee)>>>0>>0?1:0))+((D=G+$|0)>>>0>>0?1:0)|0}p=n.low=p+D,n.high=d+R+(p>>>0>>0?1:0),m=r.low=m+F,r.high=h+A+(m>>>0>>0?1:0),g=a.low=g+T,a.high=v+O+(g>>>0>>0?1:0),b=i.low=b+P,i.high=y+M+(b>>>0>>0?1:0),w=u.low=w+L,u.high=k+N+(w>>>0>>0?1:0),S=l.low=S+B,l.high=x+j+(S>>>0>>0?1:0),E=c.low=E+U,c.high=_+z+(E>>>0>>0?1:0),I=f.low=I+W,f.high=C+H+(I>>>0>>0?1:0)},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[30+(r+128>>>10<<5)]=Math.floor(n/4294967296),t[31+(r+128>>>10<<5)]=n,e.sigBytes=4*t.length,this._process(),this._hash.toX32()},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e},blockSize:32}),t.SHA512=n._createHelper(i),t.HmacSHA512=n._createHmacHelper(i)}(),s=(o=u).enc.Utf8,o.algo.HMAC=o.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=s.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),i=this._iKey=t.clone(),o=a.words,u=i.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++){if(16>l)r[l]=0|e[t+l];else{var c=r[l-3]^r[l-8]^r[l-14]^r[l-16];r[l]=c<<1|c>>>31}c=(a<<5|a>>>27)+u+r[l],c=20>l?c+(1518500249+(i&o|~i&s)):40>l?c+(1859775393+(i^o^s)):60>l?c+((i&o|i&s|o&s)-1894007588):c+((i^o^s)-899497514),u=s,s=o,o=i<<30|i>>>2,i=a,a=c}n[0]=n[0]+a|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),t[15+(r+64>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});e.SHA1=n._createHelper(a),e.HmacSHA1=n._createHmacHelper(a)}(),function(){var e=u,t=e.enc.Utf8;e.algo.HMAC=e.lib.Base.extend({init:function(e,n){e=this._hasher=new e.init,"string"==typeof n&&(n=t.parse(n));var r=e.blockSize,a=4*r;n.sigBytes>a&&(n=e.finalize(n)),n.clamp();for(var i=this._oKey=n.clone(),o=this._iKey=n.clone(),s=i.words,u=o.words,l=0;l>>2]|=(n[a>>>2]>>>24-a%4*8&255)<<24-(r+a)%4*8;else if(65535>>2]=n[a>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=i.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((a>>>4).toString(16)),n.push((15&a).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},l=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},c=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(l.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return l.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=i.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=c.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,a=n.sigBytes,i=this.blockSize,s=a/(4*i);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*i,a=e.min(4*t,a),t){for(var u=0;ul;l++){if(16>l)r[l]=0|e[t+l];else{var c=r[l-3]^r[l-8]^r[l-14]^r[l-16];r[l]=c<<1|c>>>31}c=(a<<5|a>>>27)+u+r[l],c=20>l?c+(1518500249+(i&o|~i&s)):40>l?c+(1859775393+(i^o^s)):60>l?c+((i&o|i&s|o&s)-1894007588):c+((i^o^s)-899497514),u=s,s=o,o=i<<30|i>>>2,i=a,a=c}n[0]=n[0]+a|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0},_doFinalize:function(){var e=this._data,t=e.words,n=8*this._nDataBytes,r=8*e.sigBytes;return t[r>>>5]|=128<<24-r%32,t[14+(r+64>>>9<<4)]=Math.floor(n/4294967296),t[15+(r+64>>>9<<4)]=n,e.sigBytes=4*t.length,this._process(),this._hash},clone:function(){var e=n.clone.call(this);return e._hash=this._hash.clone(),e}});e.SHA1=n._createHelper(a),e.HmacSHA1=n._createHmacHelper(a)}(),Object.defineProperty(r,"__esModule",{value:!0}),r.StandardFile=r.SFItemTransformer=r.SFCryptoWeb=r.SFCryptoJS=r.SFAbstractCrypto=r.SFItemHistoryEntry=r.SFItemHistory=r.SFHistorySession=r.SFPrivileges=r.SFPredicate=r.SFItemParams=r.SFItem=r.SFSyncManager=r.SFStorageManager=r.SFSingletonManager=r.SFSessionHistoryManager=r.SFPrivilegesManager=r.SFModelManager=r.SFMigrationManager=r.SFHttpManager=r.SFAuthManager=r.SFAlertManager=void 0;var E=function(){function e(){w(this,e)}return S(e,[{key:"alert",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){window.alert(t.text),e()})));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"confirm",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){window.confirm(t.text)?e():n()})));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()}]),e}();r.SFAlertManager=E;var C=function(){function e(t,n,r,a){w(this,e),e.DidSignOutEvent="DidSignOutEvent",e.WillSignInEvent="WillSignInEvent",e.DidSignInEvent="DidSignInEvent",this.httpManager=n,this.storageManager=t,this.alertManager=r||new E,this.$timeout=a||setTimeout.bind(window),this.eventHandlers=[]}return S(e,[{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.eventHandlers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e,t||{})}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"saveKeys",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._keys=t,e.next=3,this.storageManager.setItem("mk",t.mk);case 3:return e.next=5,this.storageManager.setItem("ak",t.ak);case 5:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"signout",value:function(){var t=k(regeneratorRuntime.mark((function t(n){var r=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(this._keys=null,this._authParams=null,!n){t.next=6;break}return t.abrupt("return",this.storageManager.clearAllData().then((function(){r.notifyEvent(e.DidSignOutEvent)})));case 6:this.notifyEvent(e.DidSignOutEvent);case 7:case"end":return t.stop()}}),t,this)})));function n(e){return t.apply(this,arguments)}return n}()},{key:"keys",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._keys){e.next=11;break}return e.next=3,this.storageManager.getItem("mk");case 3:if(t=e.sent){e.next=6;break}return e.abrupt("return",null);case 6:return e.t0=t,e.next=9,this.storageManager.getItem("ak");case 9:e.t1=e.sent,this._keys={mk:e.t0,ak:e.t1};case 11:return e.abrupt("return",this._keys);case 12:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"getAuthParams",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._authParams){e.next=5;break}return e.next=3,this.storageManager.getItem("auth_params");case 3:t=e.sent,this._authParams=JSON.parse(t);case 5:if(!this._authParams||this._authParams.version){e.next=9;break}return e.next=8,this.defaultProtocolVersion();case 8:this._authParams.version=e.sent;case 9:return e.abrupt("return",this._authParams);case 10:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"defaultProtocolVersion",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.keys();case 2:if(!(t=e.sent)||!t.ak){e.next=7;break}return e.abrupt("return","002");case 7:return e.abrupt("return","001");case 8:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"protocolVersion",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getAuthParams();case 2:if(!(t=e.sent)||!t.version){e.next=5;break}return e.abrupt("return",t.version);case 5:return e.abrupt("return",this.defaultProtocolVersion());case 6:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"getAuthParamsForEmail",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){var a,i=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(a=_.merge({email:n},r)).api=R.getApiVersion(),e.abrupt("return",new Promise((function(e,n){var r=t+"/auth/params";i.httpManager.getAbsolute(r,a,(function(t){e(t)}),(function(t){console.error("Error getting auth params",t),"object"!==y(t)&&(t={error:{message:"A server error occurred while trying to sign in. Please try again."}}),e(t)}))})));case 3:case"end":return e.stop()}}),e)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"lock",value:function(){this.locked=!0}},{key:"unlock",value:function(){this.locked=!1}},{key:"isLocked",value:function(){return 1==this.locked}},{key:"unlockAndResolve",value:function(e,t){this.unlock(),e(t)}},{key:"login",value:function(){var t=k(regeneratorRuntime.mark((function t(n,r,a,i,o){var s=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise(function(){var t=k(regeneratorRuntime.mark((function t(u,l){var c,f,d,p,h,m,v,g,b,w,x,S;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,s.keys();case 2:if(null==t.sent){t.next=6;break}return u({error:{message:"Cannot log in because already signed in."}}),t.abrupt("return");case 6:if(!s.isLocked()){t.next=9;break}return u({error:{message:"Login already in progress."}}),t.abrupt("return");case 9:return s.lock(),s.notifyEvent(e.WillSignInEvent),t.next=13,s.getAuthParamsForEmail(n,r,o);case 13:if((c=t.sent).identifier=r,!c.error){t.next=18;break}return s.unlockAndResolve(u,c),t.abrupt("return");case 18:if(c&&c.pw_cost){t.next=21;break}return s.unlockAndResolve(u,{error:{message:"Invalid email or password."}}),t.abrupt("return");case 21:if(SFJS.supportedVersions().includes(c.version)){t.next=25;break}return f=SFJS.isVersionNewerThanLibraryVersion(c.version)?"This version of the application does not support your newer account type. Please upgrade to the latest version of Standard Notes to sign in.":"The protocol version associated with your account is outdated and no longer supported by this application. Please visit standardnotes.org/help/security for more information.",s.unlockAndResolve(u,{error:{message:f}}),t.abrupt("return");case 25:if(!SFJS.isProtocolVersionOutdated(c.version)){t.next=32;break}return d="The encryption version for your account, ".concat(c.version,", is outdated and requires upgrade. You may proceed with login, but are advised to perform a security update using the web or desktop application. Please visit standardnotes.org/help/security for more information."),p=!1,t.next=30,s.alertManager.confirm({title:"Update Needed",text:d,confirmButtonText:"Sign In"}).catch((function(){s.unlockAndResolve(u,{error:{}}),p=!0}));case 30:if(!p){t.next=32;break}return t.abrupt("return");case 32:if(SFJS.supportsPasswordDerivationCost(c.pw_cost)){t.next=36;break}return h="Your account was created on a platform with higher security capabilities than this browser supports. If we attempted to generate your login keys here, it would take hours. Please use a browser with more up to date security capabilities, like Google Chrome or Firefox, to log in.",s.unlockAndResolve(u,{error:{message:h}}),t.abrupt("return");case 36:if(m=SFJS.costMinimumForVersion(c.version),!(c.pw_cost5&&void 0!==u[5]&&u[5],e.abrupt("return",new Promise(function(){var e=k(regeneratorRuntime.mark((function e(u,l){var c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((c=new XMLHttpRequest).onreadystatechange=function(){if(4==c.readyState){var e=c.responseText;if(e)try{e=JSON.parse(e)}catch(e){}c.status>=200&&c.status<=299?s.$timeout((function(){a(e),u(e)})):(console.error("Request error:",e),s.$timeout((function(){i(e,c.status),l(e)})))}},"get"==t&&Object.keys(r).length>0&&(n=s.urlForUrlAndParams(n,r)),c.open(t,n,!0),c.setRequestHeader("Content-type","application/json"),!o){e.next=8;break}return e.next=8,s.setAuthHeadersForRequest(c);case 8:"post"==t||"patch"==t?c.send(JSON.stringify(r)):c.send();case 9:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}()));case 2:case"end":return e.stop()}}),e)})));function t(t,n,r,a,i){return e.apply(this,arguments)}return t}()},{key:"urlForUrlAndParams",value:function(e,t){var n=Object.keys(t).map((function(e){return e+"="+encodeURIComponent(t[e])})).join("&");return e.includes("?")?e+"&"+n:e+"?"+n}}]),e}();r.SFHttpManager=R;var D=function(){function e(t,n,r,a){var i=this;w(this,e),this.modelManager=t,this.syncManager=n,this.storageManager=r,this.completionHandlers=[],this.loadMigrations();var o=!1,s=a.addEventHandler((function(e){e==C.DidSignInEvent&&(o=!0)}));this.receivedLocalDataEvent=n.initialDataLoaded(),this.syncManager.addEventHandler(function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r,u,l,c,f,d,p,h,m;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u="sync:completed"==t,!(r="local-data-loaded"==t)&&!u){e.next=40;break}if(r?i.receivedLocalDataEvent=!0:u&&(i.receivedSyncCompletedEvent=!0),!i.receivedLocalDataEvent||!i.receivedSyncCompletedEvent){e.next=40;break}if(!o){e.next=39;break}return o=!1,a.removeEventHandler(s),e.next=10,i.getCompletedMigrations();case 10:l=e.sent.slice(),c=!0,f=!1,d=void 0,e.prev=14,p=l[Symbol.iterator]();case 16:if(c=(h=p.next()).done){e.next=25;break}return m=h.value,e.next=20,i.migrationForEncodedName(m);case 20:e.sent.runOnlyOnce||_.pull(i._completed,m);case 22:c=!0,e.next=16;break;case 25:e.next=31;break;case 27:e.prev=27,e.t0=e.catch(14),f=!0,d=e.t0;case 31:e.prev=31,e.prev=32,c||null==p.return||p.return();case 34:if(e.prev=34,!f){e.next=37;break}throw d;case 37:return e.finish(34);case 38:return e.finish(31);case 39:i.runPendingMigrations();case 40:case"end":return e.stop()}}),e,null,[[14,27,31,39],[32,,34,38]])})));return function(t,n){return e.apply(this,arguments)}}())}return S(e,[{key:"addCompletionHandler",value:function(e){this.completionHandlers.push(e)}},{key:"removeCompletionHandler",value:function(e){_.pull(this.completionHandlers,e)}},{key:"migrationForEncodedName",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.decode(t);case 2:return n=e.sent,e.abrupt("return",this.migrations.find((function(e){return e.name==n})));case 4:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"loadMigrations",value:function(){this.migrations=this.registeredMigrations()}},{key:"registeredMigrations",value:function(){}},{key:"runPendingMigrations",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f,d,p,h,m,v,g,y,b,k,w,x,S,_,E,C,I,R;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPendingMigrations();case 2:for(t=e.sent,n=!0,r=!1,a=void 0,e.prev=6,i=t[Symbol.iterator]();!(n=(o=i.next()).done);n=!0)(s=o.value).items=[];e.next=14;break;case 10:e.prev=10,e.t0=e.catch(6),r=!0,a=e.t0;case 14:e.prev=14,e.prev=15,n||null==i.return||i.return();case 17:if(e.prev=17,!r){e.next=20;break}throw a;case 20:return e.finish(17);case 21:return e.finish(14);case 22:u=!0,l=!1,c=void 0,e.prev=25,f=this.modelManager.allNondummyItems[Symbol.iterator]();case 27:if(u=(d=f.next()).done){e.next=51;break}for(p=d.value,h=!0,m=!1,v=void 0,e.prev=32,g=t[Symbol.iterator]();!(h=(y=g.next()).done);h=!0)s=y.value,p.content_type==s.content_type&&s.items.push(p);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),m=!0,v=e.t1;case 40:e.prev=40,e.prev=41,h||null==g.return||g.return();case 43:if(e.prev=43,!m){e.next=46;break}throw v;case 46:return e.finish(43);case 47:return e.finish(40);case 48:u=!0,e.next=27;break;case 51:e.next=57;break;case 53:e.prev=53,e.t2=e.catch(25),l=!0,c=e.t2;case 57:e.prev=57,e.prev=58,u||null==f.return||f.return();case 60:if(e.prev=60,!l){e.next=63;break}throw c;case 63:return e.finish(60);case 64:return e.finish(57);case 65:b=!0,k=!1,w=void 0,e.prev=68,x=t[Symbol.iterator]();case 70:if(b=(S=x.next()).done){e.next=81;break}if(!((s=S.value).items&&s.items.length>0||s.customHandler)){e.next=77;break}return e.next=75,this.runMigration(s,s.items);case 75:e.next=78;break;case 77:this.markMigrationCompleted(s);case 78:b=!0,e.next=70;break;case 81:e.next=87;break;case 83:e.prev=83,e.t3=e.catch(68),k=!0,w=e.t3;case 87:e.prev=87,e.prev=88,b||null==x.return||x.return();case 90:if(e.prev=90,!k){e.next=93;break}throw w;case 93:return e.finish(90);case 94:return e.finish(87);case 95:for(_=!0,E=!1,C=void 0,e.prev=98,I=this.completionHandlers[Symbol.iterator]();!(_=(R=I.next()).done);_=!0)(0,R.value)();e.next=106;break;case 102:e.prev=102,e.t4=e.catch(98),E=!0,C=e.t4;case 106:e.prev=106,e.prev=107,_||null==I.return||I.return();case 109:if(e.prev=109,!E){e.next=112;break}throw C;case 112:return e.finish(109);case 113:return e.finish(106);case 114:case"end":return e.stop()}}),e,this,[[6,10,14,22],[15,,17,21],[25,53,57,65],[32,36,40,48],[41,,43,47],[58,,60,64],[68,83,87,95],[88,,90,94],[98,102,106,114],[107,,109,113]])})));function t(){return e.apply(this,arguments)}return t}()},{key:"encode",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.btoa(t));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"decode",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",window.atob(t));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"getCompletedMigrations",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._completed){e.next=5;break}return e.next=3,this.storageManager.getItem("migrations");case 3:t=e.sent,this._completed=t?JSON.parse(t):[];case 5:return e.abrupt("return",this._completed);case 6:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"getPendingMigrations",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:t=e.sent,n=[],r=!0,a=!1,i=void 0,e.prev=7,o=this.migrations[Symbol.iterator]();case 9:if(r=(s=o.next()).done){e.next=22;break}return u=s.value,e.t0=t,e.next=14,this.encode(u.name);case 14:if(e.t1=e.sent,e.t2=e.t0.indexOf.call(e.t0,e.t1),e.t3=-1,e.t2!=e.t3){e.next=19;break}n.push(u);case 19:r=!0,e.next=9;break;case 22:e.next=28;break;case 24:e.prev=24,e.t4=e.catch(7),a=!0,i=e.t4;case 28:e.prev=28,e.prev=29,r||null==o.return||o.return();case 31:if(e.prev=31,!a){e.next=34;break}throw i;case 34:return e.finish(31);case 35:return e.finish(28);case 36:return e.abrupt("return",n);case 37:case"end":return e.stop()}}),e,this,[[7,24,28,36],[29,,31,35]])})));function t(){return e.apply(this,arguments)}return t}()},{key:"markMigrationCompleted",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getCompletedMigrations();case 2:return n=e.sent,e.t0=n,e.next=6,this.encode(t.name);case 6:e.t1=e.sent,e.t0.push.call(e.t0,e.t1),this.storageManager.setItem("migrations",JSON.stringify(n)),t.running=!1;case 10:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"runMigration",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.running){e.next=2;break}return e.abrupt("return");case 2:if(console.log("Running migration:",t.name),t.running=!0,!t.customHandler){e.next=8;break}return e.abrupt("return",t.customHandler().then((function(){r.markMigrationCompleted(t)})));case 8:return e.abrupt("return",t.handler(n).then((function(){r.markMigrationCompleted(t)})));case 9:case"end":return e.stop()}}),e)})));function t(t,n){return e.apply(this,arguments)}return t}()}]),e}();r.SFMigrationManager=D;var A=function(){function e(t){w(this,e),e.MappingSourceRemoteRetrieved="MappingSourceRemoteRetrieved",e.MappingSourceRemoteSaved="MappingSourceRemoteSaved",e.MappingSourceLocalSaved="MappingSourceLocalSaved",e.MappingSourceLocalRetrieved="MappingSourceLocalRetrieved",e.MappingSourceLocalDirtied="MappingSourceLocalDirtied",e.MappingSourceComponentRetrieved="MappingSourceComponentRetrieved",e.MappingSourceDesktopInstalled="MappingSourceDesktopInstalled",e.MappingSourceRemoteActionRetrieved="MappingSourceRemoteActionRetrieved",e.MappingSourceFileImport="MappingSourceFileImport",e.isMappingSourceRetrieved=function(t){return[e.MappingSourceRemoteRetrieved,e.MappingSourceComponentRetrieved,e.MappingSourceRemoteActionRetrieved].includes(t)},this.$timeout=t||setTimeout.bind(window),this.itemSyncObservers=[],this.items=[],this.itemsHash={},this.missedReferences={},this.uuidChangeObservers=[]}return S(e,[{key:"handleSignout",value:function(){this.items.length=0,this.itemsHash={},this.missedReferences={}}},{key:"addModelUuidChangeObserver",value:function(e,t){this.uuidChangeObservers.push({id:e,callback:t})}},{key:"notifyObserversOfUuidChange",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.uuidChangeObservers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;try{s.callback(e,t)}catch(e){console.error("Notify observers of uuid change exception:",e)}}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"alternateUUIDForItem",value:function(){var t=k(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=this.createItem(n),t.next=3,SFJS.crypto.generateUUID();case 3:for(r.uuid=t.sent,r.informReferencesOfUUIDChange(n.uuid,r.uuid),this.informModelsOfUUIDChangeForItem(r,n.uuid,r.uuid),a=!0,i=!1,o=void 0,t.prev=9,s=n.referencingObjects[Symbol.iterator]();!(a=(u=s.next()).done);a=!0)(l=u.value).setIsNoLongerBeingReferencedBy(n),n.setIsNoLongerBeingReferencedBy(l),l.addItemAsRelationship(r);t.next=17;break;case 13:t.prev=13,t.t0=t.catch(9),i=!0,o=t.t0;case 17:t.prev=17,t.prev=18,a||null==s.return||s.return();case 20:if(t.prev=20,!i){t.next=23;break}throw o;case 23:return t.finish(20);case 24:return t.finish(17);case 25:return this.setItemsDirty(n.referencingObjects,!0),this.resolveReferencesForItem(r),this.loggingEnabled&&console.log(n.uuid,"--\x3e",r.uuid),n.deleted=!0,n.content.references=[],this.setItemDirty(n,!1,!1,e.MappingSourceLocalSaved),t.next=33,this.mapResponseItemsToLocalModels([n],e.MappingSourceLocalSaved);case 33:return this.addItem(r),this.setItemDirty(r,!0,!0,e.MappingSourceLocalSaved),this.notifyObserversOfUuidChange(n,r),t.abrupt("return",r);case 37:case"end":return t.stop()}}),t,this,[[9,13,17,25],[18,,20,24]])})));function n(e){return t.apply(this,arguments)}return n}()},{key:"informModelsOfUUIDChangeForItem",value:function(e,t,n){var r=!0,a=!1,i=void 0;try{for(var o,s=this.items[Symbol.iterator]();!(r=(o=s.next()).done);r=!0)o.value.potentialItemOfInterestHasChangedItsUUID(e,t,n)}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}}},{key:"didSyncModelsOffline",value:function(t){this.notifySyncObserversOfModels(t,e.MappingSourceLocalSaved)}},{key:"mapResponseItemsToLocalModels",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,source:n,sourceKey:r}));case 1:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"mapResponseItemsToLocalModelsOmittingFields",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mapResponseItemsToLocalModelsWithOptions({items:t,omitFields:n,source:r,sourceKey:a}));case 1:case"end":return e.stop()}}),e,this)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"mapResponseItemsToLocalModelsWithOptions",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,u,l,c,f,d,p,m,v,g,y,b,k,w,x,S,_,E,C,I,R,D,A,F,O,T,M,P,N,L,j,B,z,U;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=t.items,r=t.omitFields,a=t.source,i=t.sourceKey,t.options,o=[],s=[],u=[],l=!0,c=!1,f=void 0,e.prev=5,d=n[Symbol.iterator]();case 7:if(l=(p=d.next()).done){e.next=58;break}if(m=p.value){e.next=11;break}return e.abrupt("continue",55);case 11:if(v=!m.content&&!m.errorDecrypting,m.content_type&&m.uuid&&!v||m.deleted){e.next=16;break}return console.error("Server response item is corrupt:",m),e.abrupt("continue",55);case 16:if(!Array.isArray(r)){e.next=36;break}for(g=!0,y=!1,b=void 0,e.prev=20,k=r[Symbol.iterator]();!(g=(w=k.next()).done);g=!0)x=w.value,delete m[x];e.next=28;break;case 24:e.prev=24,e.t0=e.catch(20),y=!0,b=e.t0;case 28:e.prev=28,e.prev=29,g||null==k.return||k.return();case 31:if(e.prev=31,!y){e.next=34;break}throw b;case 34:return e.finish(31);case 35:return e.finish(28);case 36:if((S=this.findItem(m.uuid))&&(S.updateFromJSON(m),S.dummy=!1),_=m.content_type||S&&S.content_type,!this.acceptableContentTypes||this.acceptableContentTypes.includes(_)){e.next=42;break}return e.abrupt("continue",55);case 42:if(E=!1,1!=m.deleted){e.next=50;break}if(!m.dirty){e.next=48;break}E=!0,e.next=50;break;case 48:return S&&(o.push(S),u.push(S),this.removeItemLocally(S)),e.abrupt("continue",55);case 50:S||(S=this.createItem(m)),this.addItem(S,E),S.errorDecrypting||u.push(S),o.push(S),s.push(m);case 55:l=!0,e.next=7;break;case 58:e.next=64;break;case 60:e.prev=60,e.t1=e.catch(5),c=!0,f=e.t1;case 64:e.prev=64,e.prev=65,l||null==d.return||d.return();case 67:if(e.prev=67,!c){e.next=70;break}throw f;case 70:return e.finish(67);case 71:return e.finish(64);case 72:for(C=!0,I=!1,R=void 0,e.prev=75,D=s.entries()[Symbol.iterator]();!(C=(A=D.next()).done);C=!0)F=h(A.value,2),O=F[0],T=F[1],M=o[O],T.content&&this.resolveReferencesForItem(M),M.didFinishSyncing();e.next=83;break;case 79:e.prev=79,e.t2=e.catch(75),I=!0,R=e.t2;case 83:e.prev=83,e.prev=84,C||null==D.return||D.return();case 86:if(e.prev=86,!I){e.next=89;break}throw R;case 89:return e.finish(86);case 90:return e.finish(83);case 91:for(P=this.popMissedReferenceStructsForObjects(s),N=!0,L=!1,j=void 0,e.prev=95,B=function(){var e=U.value,t=o.find((function(t){return t.uuid==e.reference_uuid}));t&&e.for_item.addItemAsRelationship(t)},z=P[Symbol.iterator]();!(N=(U=z.next()).done);N=!0)B();e.next=104;break;case 100:e.prev=100,e.t3=e.catch(95),L=!0,j=e.t3;case 104:e.prev=104,e.prev=105,N||null==z.return||z.return();case 107:if(e.prev=107,!L){e.next=110;break}throw j;case 110:return e.finish(107);case 111:return e.finish(104);case 112:return e.next=114,this.notifySyncObserversOfModels(u,a,i);case 114:return e.abrupt("return",o);case 115:case"end":return e.stop()}}),e,this,[[5,60,64,72],[20,24,28,36],[29,,31,35],[65,,67,71],[75,79,83,91],[84,,86,90],[95,100,104,112],[105,,107,111]])})));function t(t){return e.apply(this,arguments)}return t}()},{key:"missedReferenceBuildKey",value:function(e,t){return"".concat(e,":").concat(t)}},{key:"popMissedReferenceStructsForObjects",value:function(e){if(!e||0==e.length)return[];for(var t=[],n=[],r=e.map((function(e){return e.uuid})),a=r[0].length,i=0,o=Object.keys(this.missedReferences);i1&&void 0!==arguments[1]&&arguments[1];if(!e.errorDecrypting){var n=e.contentObject;if(e.updateLocalRelationships(),n.references){var r=n.references.slice().map((function(e){return e.uuid})),a=!0,i=this.findItems(r,a),o=!0,s=!1,u=void 0;try{for(var l,c=i.entries()[Symbol.iterator]();!(o=(l=c.next()).done);o=!0){var f=h(l.value,2),d=f[0],p=f[1];if(p)e.addItemAsRelationship(p),t&&this.setItemDirty(p,!0);else{var m=r[d],v=this.missedReferenceBuildKey(m,e.uuid);if(!this.missedReferences[v]){var g={reference_uuid:m,for_item:e};this.missedReferences[v]=g}}}}catch(e){s=!0,u=e}finally{try{o||null==c.return||c.return()}finally{if(s)throw u}}}}}},{key:"notifySyncObserversOfModels",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s,u,l,c,f=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:a=this.itemSyncObservers.sort((function(e,t){return e.priority0)){e.next=25;break}return e.next=25,f._callSyncObserverCallbackWithTimeout(a,i,o,s,n,r);case 25:case"end":return e.stop()}}),e,null,[[6,10,14,22],[15,,17,21]])})),l=a[Symbol.iterator]();case 7:if(i=(c=l.next()).done){e.next=12;break}return e.delegateYield(u(),"t0",9);case 9:i=!0,e.next=7;break;case 12:e.next=18;break;case 14:e.prev=14,e.t1=e.catch(4),o=!0,s=e.t1;case 18:e.prev=18,e.prev=19,i||null==l.return||l.return();case 21:if(e.prev=21,!o){e.next=24;break}throw s;case 24:return e.finish(21);case 25:return e.finish(18);case 26:case"end":return e.stop()}}),e,this,[[4,14,18,26],[19,,21,25]])})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"_callSyncObserverCallbackWithTimeout",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a,i,o){var s=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,u){s.$timeout((function(){try{t.callback(n,r,a,i,o)}catch(e){console.error("Sync observer exception",e)}finally{e()}}))})));case 1:case"end":return e.stop()}}),e)})));function t(t,n,r,a,i,o){return e.apply(this,arguments)}return t}()},{key:"setItemDirty",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;this.setItemsDirty([e],t,n,r,a)}},{key:"setItemsDirty",value:function(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,i=arguments.length>4?arguments[4]:void 0,o=!0,s=!1,u=void 0;try{for(var l,c=t[Symbol.iterator]();!(o=(l=c.next()).done);o=!0)l.value.setDirty(n,r)}catch(e){s=!0,u=e}finally{try{o||null==c.return||c.return()}finally{if(s)throw u}}this.notifySyncObserversOfModels(t,a||e.MappingSourceLocalDirtied,i)}},{key:"createItem",value:function(t){var n=e.ContentTypeClassMapping&&e.ContentTypeClassMapping[t.content_type];return n||(n=z),new n(t)}},{key:"createDuplicateItemFromResponseItem",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n,r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof t.setDirty){e.next=3;break}return console.error("Attempting to create conflicted copy of non-response item."),e.abrupt("return",null);case 3:return n=JSON.parse(JSON.stringify(t)),e.next=6,SFJS.crypto.generateUUID();case 6:return n.uuid=e.sent,r=this.createItem(n),e.abrupt("return",r);case 9:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"duplicateItemAndAddAsConflict",value:function(e){return this.duplicateItemWithCustomContentAndAddAsConflict({content:e.content,duplicateOf:e})}},{key:"duplicateItemWithCustomContentAndAddAsConflict",value:function(e){var t=e.content,n=e.duplicateOf,r=this.duplicateItemWithCustomContent({content:t,duplicateOf:n});return this.addDuplicatedItemAsConflict({duplicate:r,duplicateOf:n}),r}},{key:"addDuplicatedItemAsConflict",value:function(e){var t=e.duplicate,n=e.duplicateOf;this.addDuplicatedItem(t,n),t.content.conflict_of=n.uuid}},{key:"duplicateItemWithCustomContent",value:function(e){var t=e.content,n=e.duplicateOf,r=new n.constructor({content:t});return r.created_at=n.created_at,r.content_type||(r.content_type=n.content_type),r}},{key:"duplicateItemAndAdd",value:function(e){var t=this.duplicateItemWithoutAdding(e);return this.addDuplicatedItem(t,e),t}},{key:"duplicateItemWithoutAdding",value:function(e){var t=new e.constructor({content:e.content});return t.created_at=e.created_at,t.content_type||(t.content_type=e.content_type),t}},{key:"addDuplicatedItem",value:function(e,t){this.addItem(e);var n=!0,r=!1,a=void 0;try{for(var i,o=t.referencingObjects[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;s.addItemAsRelationship(e),this.setItemDirty(s,!0)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}this.resolveReferencesForItem(e),this.setItemDirty(e,!0)}},{key:"addItem",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.addItems([e],t)}},{key:"addItems",value:function(e){var t=this;e.forEach((function(e){t.itemsHash[e.uuid]||(t.itemsHash[e.uuid]=e,t.items.push(e))}))}},{key:"addItemSyncObserver",value:function(e,t,n){this.addItemSyncObserverWithPriority({id:e,types:t,callback:n,priority:1})}},{key:"addItemSyncObserverWithPriority",value:function(e){var t=e.id,n=e.priority,r=e.types,a=e.callback;Array.isArray(r)||(r=[r]),this.itemSyncObservers.push({id:t,types:r,priority:n,callback:a})}},{key:"removeItemSyncObserver",value:function(e){_.remove(this.itemSyncObservers,_.find(this.itemSyncObservers,{id:e}))}},{key:"getDirtyItems",value:function(){return this.items.filter((function(e){return 1==e.dirty&&!e.dummy&&(!e.errorDecrypting||e.deleted)}))}},{key:"clearDirtyItems",value:function(e){var t=!0,n=!1,r=void 0;try{for(var a,i=e[Symbol.iterator]();!(t=(a=i.next()).done);t=!0)a.value.setDirty(!1)}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}}},{key:"removeAndDirtyAllRelationshipsForItem",value:function(e){if(!e.errorDecrypting){var t=!0,n=!1,r=void 0;try{for(var a,i=e.content.references[Symbol.iterator]();!(t=(a=i.next()).done);t=!0){var o=a.value,s=this.findItem(o.uuid);s&&(e.removeItemAsRelationship(s),s.hasRelationshipWithItem(e)&&(s.removeItemAsRelationship(e),this.setItemDirty(s,!0)))}}catch(e){n=!0,r=e}finally{try{t||null==i.return||i.return()}finally{if(n)throw r}}}var u=!0,l=!1,c=void 0;try{for(var f,d=e.referencingObjects[Symbol.iterator]();!(u=(f=d.next()).done);u=!0){var p=f.value;p.removeItemAsRelationship(e),this.setItemDirty(p,!0)}}catch(e){l=!0,c=e}finally{try{u||null==d.return||d.return()}finally{if(l)throw c}}e.referencingObjects=[]}},{key:"setAllItemsDirty",value:function(){var e=this.allItems;this.setItemsDirty(e,!0)}},{key:"setItemToBeDeleted",value:function(e){e.deleted=!0,e.dummy||this.setItemDirty(e,!0),this.removeAndDirtyAllRelationshipsForItem(e)}},{key:"removeItemLocally",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:_.remove(this.items,{uuid:t.uuid}),delete this.itemsHash[t.uuid],t.isBeingRemovedLocally();case 3:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"allItemsMatchingTypes",value:function(e){return this.allItems.filter((function(t){return(_.includes(e,t.content_type)||_.includes(e,"*"))&&!t.dummy}))}},{key:"invalidItems",value:function(){return this.allItems.filter((function(e){return e.errorDecrypting}))}},{key:"validItemsForContentType",value:function(e){return this.allItems.filter((function(t){return t.content_type==e&&!t.errorDecrypting}))}},{key:"findItem",value:function(e){return this.itemsHash[e]}},{key:"findItems",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done);r=!0){var u=o.value,l=this.itemsHash[u];(l||t)&&n.push(l)}}catch(e){a=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(a)throw i}}return n}},{key:"itemsMatchingPredicate",value:function(e){return this.itemsMatchingPredicates([e])}},{key:"itemsMatchingPredicates",value:function(e){return this.filterItemsWithPredicates(this.allItems,e)}},{key:"filterItemsWithPredicates",value:function(e,t){return e.filter((function(e){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;if(!e.satisfiesPredicate(s))return!1}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return!0}))}},{key:"importItems",value:function(){var t=k(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,d,p,h,m,v,g,y,b,k,w,x,S,_,E,C,I,R,D;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:r=[],a={},i=!0,o=!1,s=void 0,t.prev=5,u=n[Symbol.iterator]();case 7:if(i=(l=u.next()).done){t.next=18;break}if(c=l.value,f=this.findItem(c.uuid)){t.next=13;break}return a[c.uuid]={},t.abrupt("continue",15);case 13:d=this.duplicateItemWithoutAdding(f),a[c.uuid]={frozenValue:d,itemRef:f};case 15:i=!0,t.next=7;break;case 18:t.next=24;break;case 20:t.prev=20,t.t0=t.catch(5),o=!0,s=t.t0;case 24:t.prev=24,t.prev=25,i||null==u.return||u.return();case 27:if(t.prev=27,!o){t.next=30;break}throw s;case 30:return t.finish(27);case 31:return t.finish(24);case 32:p=!0,h=!1,m=void 0,t.prev=35,v=n[Symbol.iterator]();case 37:if(p=(g=v.next()).done){t.next=52;break}if(y=g.value,b=a[y.uuid],k=b.frozenValue,w=b.itemRef,!k||w.errorDecrypting){t.next=47;break}return t.next=43,this.createDuplicateItemFromResponseItem(y);case 43:x=t.sent,y.deleted||k.isItemContentEqualWith(x)||(this.addDuplicatedItemAsConflict({duplicate:x,duplicateOf:w}),r.push(x)),t.next=49;break;case 47:r.push(y),w&&w.errorDecrypting&&(w.errorDecrypting=!1);case 49:p=!0,t.next=37;break;case 52:t.next=58;break;case 54:t.prev=54,t.t1=t.catch(35),h=!0,m=t.t1;case 58:t.prev=58,t.prev=59,p||null==v.return||v.return();case 61:if(t.prev=61,!h){t.next=64;break}throw m;case 64:return t.finish(61);case 65:return t.finish(58);case 66:return t.next=68,this.mapResponseItemsToLocalModels(r,e.MappingSourceFileImport);case 68:for(S=t.sent,_=!0,E=!1,C=void 0,t.prev=72,I=S[Symbol.iterator]();!(_=(R=I.next()).done);_=!0)D=R.value,this.setItemDirty(D,!0,!1),D.deleted=!1;t.next=80;break;case 76:t.prev=76,t.t2=t.catch(72),E=!0,C=t.t2;case 80:t.prev=80,t.prev=81,_||null==I.return||I.return();case 83:if(t.prev=83,!E){t.next=86;break}throw C;case 86:return t.finish(83);case 87:return t.finish(80);case 88:return t.abrupt("return",S);case 89:case"end":return t.stop()}}),t,this,[[5,20,24,32],[25,,27,31],[35,54,58,66],[59,,61,65],[72,76,80,88],[81,,83,87]])})));function n(e){return t.apply(this,arguments)}return n}()},{key:"getAllItemsJSONData",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.getJSONDataForItems(this.allItems,t,n,r));case 1:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"getJSONDataForItems",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all(t.map((function(e){return new U(e,n,r).paramsForExportFile()}))).then((function(e){if(a&&0==e.length)return null;var t={items:e};return n&&(t.auth_params=r),JSON.stringify(t,null,2)})));case 1:case"end":return e.stop()}}),e)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"computeDataIntegrityHash",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,t=this.allNondummyItems.sort((function(e,t){return t.updated_at-e.updated_at})),n=t.map((function(e){return e.updatedAtTimestamp()})),r=n.join(","),e.next=6,SFJS.crypto.sha256(r);case 6:return a=e.sent,e.abrupt("return",a);case 10:return e.prev=10,e.t0=e.catch(0),console.error("Error computing data integrity hash",e.t0),e.abrupt("return",null);case 14:case"end":return e.stop()}}),e,this,[[0,10]])})));function t(){return e.apply(this,arguments)}return t}()},{key:"allItems",get:function(){return this.items.slice()}},{key:"allNondummyItems",get:function(){return this.items.filter((function(e){return!e.dummy}))}}]),e}();r.SFModelManager=A;var F=function(){function e(t,n,r){w(this,e),this.modelManager=t,this.syncManager=n,this.singletonManager=r,this.loadPrivileges(),e.CredentialAccountPassword="CredentialAccountPassword",e.CredentialLocalPasscode="CredentialLocalPasscode",e.ActionManageExtensions="ActionManageExtensions",e.ActionManageBackups="ActionManageBackups",e.ActionViewProtectedNotes="ActionViewProtectedNotes",e.ActionManagePrivileges="ActionManagePrivileges",e.ActionManagePasscode="ActionManagePasscode",e.ActionDeleteNote="ActionDeleteNote",e.SessionExpiresAtKey="SessionExpiresAtKey",e.SessionLengthKey="SessionLengthKey",e.SessionLengthNone=0,e.SessionLengthFiveMinutes=300,e.SessionLengthOneHour=3600,e.SessionLengthOneWeek=604800,this.availableActions=[e.ActionViewProtectedNotes,e.ActionDeleteNote,e.ActionManagePasscode,e.ActionManageBackups,e.ActionManageExtensions,e.ActionManagePrivileges],this.availableCredentials=[e.CredentialAccountPassword,e.CredentialLocalPasscode],this.sessionLengths=[e.SessionLengthNone,e.SessionLengthFiveMinutes,e.SessionLengthOneHour,e.SessionLengthOneWeek,e.SessionLengthIndefinite]}return S(e,[{key:"setDelegate",value:function(e){this.delegate=e}},{key:"getAvailableActions",value:function(){return this.availableActions}},{key:"getAvailableCredentials",value:function(){return this.availableCredentials}},{key:"netCredentialsForAction",value:function(){var t=k(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.getPrivileges();case 2:t.t0=n,r=t.sent.getCredentialsForAction(t.t0),a=[],i=!0,o=!1,s=void 0,t.prev=8,u=r[Symbol.iterator]();case 10:if(i=(l=u.next()).done){t.next=27;break}if((c=l.value)!=e.CredentialAccountPassword){t.next=19;break}return t.next=15,this.delegate.isOffline();case 15:t.sent||a.push(c),t.next=24;break;case 19:if(c!=e.CredentialLocalPasscode){t.next=24;break}return t.next=22,this.delegate.hasLocalPasscode();case 22:t.sent&&a.push(c);case 24:i=!0,t.next=10;break;case 27:t.next=33;break;case 29:t.prev=29,t.t1=t.catch(8),o=!0,s=t.t1;case 33:t.prev=33,t.prev=34,i||null==u.return||u.return();case 36:if(t.prev=36,!o){t.next=39;break}throw s;case 39:return t.finish(36);case 40:return t.finish(33);case 41:return t.abrupt("return",a);case 42:case"end":return t.stop()}}),t,this,[[8,29,33,41],[34,,36,40]])})));function n(e){return t.apply(this,arguments)}return n}()},{key:"loadPrivileges",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.loadPromise){e.next=2;break}return e.abrupt("return",this.loadPromise);case 2:return this.loadPromise=new Promise((function(e,n){var r=W.contentType(),a=new H("content_type","=",r);t.singletonManager.registerSingleton([a],(function(n){t.privileges=n,e(n)}),function(){var n=k(regeneratorRuntime.mark((function n(a){var i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(i=new W({content_type:r}),SFJS.crypto.generateUUIDSync){n.next=4;break}return n.next=4,i.initUUID();case 4:t.modelManager.addItem(i),t.modelManager.setItemDirty(i,!0),t.syncManager.sync(),a(i),e(i);case 9:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}())})),e.abrupt("return",this.loadPromise);case 4:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"getPrivileges",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.privileges){e.next=4;break}return e.abrupt("return",this.privileges);case 4:return e.abrupt("return",this.loadPrivileges());case 5:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"displayInfoForCredential",value:function(t){var n={};return n[e.CredentialAccountPassword]={label:"Account Password",prompt:"Please enter your account password."},n[e.CredentialLocalPasscode]={label:"Local Passcode",prompt:"Please enter your local passcode."},n[t]}},{key:"displayInfoForAction",value:function(t){var n={};return n[e.ActionManageExtensions]={label:"Manage Extensions"},n[e.ActionManageBackups]={label:"Download/Import Backups"},n[e.ActionViewProtectedNotes]={label:"View Protected Notes"},n[e.ActionManagePrivileges]={label:"Manage Privileges"},n[e.ActionManagePasscode]={label:"Manage Passcode"},n[e.ActionDeleteNote]={label:"Delete Notes"},n[t]}},{key:"getSessionLengthOptions",value:function(){return[{value:e.SessionLengthNone,label:"Don't Remember"},{value:e.SessionLengthFiveMinutes,label:"5 Minutes"},{value:e.SessionLengthOneHour,label:"1 Hour"},{value:e.SessionLengthOneWeek,label:"1 Week"}]}},{key:"setSessionLength",value:function(){var t=k(regeneratorRuntime.mark((function t(n){var r;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=n,i=void 0,(i=new Date).setSeconds(i.getSeconds()+a),r=i,t.abrupt("return",Promise.all([this.delegate.saveToStorage(e.SessionExpiresAtKey,JSON.stringify(r)),this.delegate.saveToStorage(e.SessionLengthKey,JSON.stringify(n))]));case 3:case"end":return t.stop()}var a,i}),t,this)})));function n(e){return t.apply(this,arguments)}return n}()},{key:"clearSession",value:function(){var t=k(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.setSessionLength(e.SessionLengthNone));case 1:case"end":return t.stop()}}),t,this)})));function n(){return t.apply(this,arguments)}return n}()},{key:"getSelectedSessionLength",value:function(){var t=k(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.delegate.getFromStorage(e.SessionLengthKey);case 2:if(!(n=t.sent)){t.next=7;break}return t.abrupt("return",JSON.parse(n));case 7:return t.abrupt("return",e.SessionLengthNone);case 8:case"end":return t.stop()}}),t,this)})));function n(){return t.apply(this,arguments)}return n}()},{key:"getSessionExpirey",value:function(){var t=k(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.delegate.getFromStorage(e.SessionExpiresAtKey);case 2:if(!(n=t.sent)){t.next=7;break}return t.abrupt("return",new Date(JSON.parse(n)));case 7:return t.abrupt("return",new Date);case 8:case"end":return t.stop()}}),t,this)})));function n(){return t.apply(this,arguments)}return n}()},{key:"actionHasPrivilegesConfigured",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:return e.t0=e.sent.length,e.abrupt("return",e.t0>0);case 4:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"actionRequiresPrivilege",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getSessionExpirey();case 2:if(!(e.sent>new Date)){e.next=5;break}return e.abrupt("return",!1);case 5:return e.next=7,this.netCredentialsForAction(t);case 7:return n=e.sent,e.abrupt("return",n.length>0);case 9:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"savePrivileges",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getPrivileges();case 2:t=e.sent,this.modelManager.setItemDirty(t,!0),this.syncManager.sync();case 5:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"authenticateAction",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r,a,i,o,s,u,l,c,f;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.netCredentialsForAction(t);case 2:r=e.sent,a=[],i=[],o=!0,s=!1,u=void 0,e.prev=7,l=r[Symbol.iterator]();case 9:if(o=(c=l.next()).done){e.next=18;break}return f=c.value,e.next=13,this._verifyAuthenticationParameters(f,n[f]);case 13:e.sent?a.push(f):i.push(f);case 15:o=!0,e.next=9;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(7),s=!0,u=e.t0;case 24:e.prev=24,e.prev=25,o||null==l.return||l.return();case 27:if(e.prev=27,!s){e.next=30;break}throw u;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.abrupt("return",{success:0==i.length,successfulCredentials:a,failedCredentials:i});case 33:case"end":return e.stop()}}),e,this,[[7,20,24,32],[25,,27,31]])})));function t(t,n){return e.apply(this,arguments)}return t}()},{key:"_verifyAuthenticationParameters",value:function(){var t=k(regeneratorRuntime.mark((function t(n,r){var a,i,o=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(a=function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o.delegate.verifyAccountPassword(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),i=function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",o.delegate.verifyLocalPasscode(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),n!=e.CredentialAccountPassword){t.next=6;break}return t.abrupt("return",a(r));case 6:if(n!=e.CredentialLocalPasscode){t.next=8;break}return t.abrupt("return",i(r));case 8:case"end":return t.stop()}}),t)})));function n(e,n){return t.apply(this,arguments)}return n}()}]),e}();r.SFPrivilegesManager=F;var O="sessionHistory_persist",T="sessionHistory_revisions",M="sessionHistory_autoOptimize",P=function(){function e(t,n,r,a,i){var o=this;w(this,e),this.modelManager=t,this.storageManager=n,this.$timeout=i||setTimeout.bind(window),this.keyRequestHandler=r,this.loadFromDisk().then((function(){o.modelManager.addItemSyncObserver("session-history",a,(function(e,t,n,r,a){if(r!==A.MappingSourceLocalDirtied){var i=!0,s=!1,u=void 0;try{for(var l,c=e[Symbol.iterator]();!(i=(l=c.next()).done);i=!0){var f=l.value;try{o.addHistoryEntryForItem(f)}catch(e){console.log("Caught exception while trying to add item history entry",e)}}}catch(e){s=!0,u=e}finally{try{i||null==c.return||c.return()}finally{if(s)throw u}}}}))}))}return S(e,[{key:"encryptionParams",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler());case 1:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"addHistoryEntryForItem",value:function(e){var t=this,n={uuid:e.uuid,content_type:e.content_type,updated_at:e.updated_at,content:e.getContentCopy()},r=this.historySession.addEntryForItem(n);this.autoOptimize&&this.historySession.optimizeHistoryForItem(e),r&&this.diskEnabled&&(this.diskTimeout&&(this.$timeout.hasOwnProperty("cancel")?this.$timeout.cancel(this.diskTimeout):clearTimeout(this.diskTimeout)),this.diskTimeout=this.$timeout((function(){t.saveToDisk()}),2e3))}},{key:"historyForItem",value:function(e){return this.historySession.historyForItem(e)}},{key:"clearHistoryForItem",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearItemHistory(t),e.abrupt("return",this.saveToDisk());case 2:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"clearAllHistory",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.historySession.clearAllHistory(),e.abrupt("return",this.storageManager.removeItem(T));case 2:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"toggleDiskSaving",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled=!this.diskEnabled,!this.diskEnabled){e.next=6;break}this.storageManager.setItem(O,JSON.stringify(!0)),this.saveToDisk(),e.next=8;break;case 6:return this.storageManager.setItem(O,JSON.stringify(!1)),e.abrupt("return",this.storageManager.removeItem(T));case 8:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"saveToDisk",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.diskEnabled){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,this.encryptionParams();case 4:t=e.sent,new U(this.historySession,t.keys,t.auth_params).paramsForSync().then((function(e){n.storageManager.setItem(T,JSON.stringify(e))}));case 7:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"loadFromDisk",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem(O);case 2:return(t=e.sent)&&(this.diskEnabled=JSON.parse(t)),e.next=6,this.storageManager.getItem(T);case 6:if(!(n=e.sent)){e.next=18;break}return n=JSON.parse(n),e.next=11,this.encryptionParams();case 11:return r=e.sent,e.next=14,SFJS.itemTransformer.decryptItem(n,r.keys);case 14:a=new K(n),this.historySession=a,e.next=19;break;case 18:this.historySession=new K;case 19:return e.next=21,this.storageManager.getItem(M);case 21:i=e.sent,this.autoOptimize=!i||JSON.parse(i);case 23:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"toggleAutoOptimize",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.autoOptimize=!this.autoOptimize,this.autoOptimize?this.storageManager.setItem(M,JSON.stringify(!0)):this.storageManager.setItem(M,JSON.stringify(!1));case 2:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()}]),e}();r.SFSessionHistoryManager=P;var N=function(){function e(t,n){var r=this;w(this,e),this.syncManager=n,this.modelManager=t,this.singletonHandlers=[],t.addItemSyncObserverWithPriority({id:"sf-singleton-manager",types:"*",priority:-1,callback:function(e,n,a,i,o){i!==A.MappingSourceLocalDirtied&&r.resolveSingletons(t.allNondummyItems,null,!0)}}),n.addEventHandler((function(e,n){if("local-data-loaded"==e)r.resolveSingletons(t.allNondummyItems,null,!0),r.initialDataLoaded=!0;else if("sync:completed"==e){if(!r.initialDataLoaded)return;r.resolveSingletons(n.retrievedItems,n.savedItems)}})),t.addModelUuidChangeObserver("singleton-manager",(function(e,t){var n=!0,a=!1,i=void 0;try{for(var o,s=r.singletonHandlers[Symbol.iterator]();!(n=(o=s.next()).done);n=!0){var u=o.value;u.singleton&&H.ItemSatisfiesPredicates(t,u.predicates)&&(u.singleton=null,r.resolveSingletons([t]))}}catch(e){a=!0,i=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw i}}}))}return S(e,[{key:"registerSingleton",value:function(e,t,n){this.singletonHandlers.push({predicates:e,resolutionCallback:t,createBlock:n})}},{key:"resolveSingletons",value:function(e,t,n){var r=this;e=e||[],t=t||[];var a=!0,i=!1,o=void 0;try{for(var s,u=function(){var a=s.value,i=a.predicates.slice(),o=r.modelManager.filterItemsWithPredicates(e,i),u=function(){a.createBlock&&(a.pendingCreateBlockCallback=!0,a.createBlock((function(e){a.singleton=e,a.pendingCreateBlockCallback=!1,a.resolutionCallback&&a.resolutionCallback(e)})))},l=r.modelManager.filterItemsWithPredicates(t,i).length;if(o.length>0||l>0){var c=r.modelManager.itemsMatchingPredicates(i);if(c.length>=2){var f=c.sort((function(e,t){return e.errorDecrypting?1:t.errorDecrypting||e.created_at=this.MaxDiscordanceBeforeOutOfSync&&(this.outOfSync||(this.outOfSync=!0,this.notifyEvent("enter-out-of-sync"))),e.abrupt("return",!1);case 13:return this.outOfSync&&(this.outOfSync=!1,this.notifyEvent("exit-out-of-sync")),this.syncDiscordance=0,e.abrupt("return",!0);case 16:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"isOutOfSync",value:function(){return this.outOfSync}},{key:"getServerURL",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.storageManager.getItem("server");case 2:if(e.t0=e.sent,e.t0){e.next=5;break}e.t0=window._default_sf_server;case 5:return e.abrupt("return",e.t0);case 6:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"getSyncURL",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getServerURL();case 2:return e.t0=e.sent,e.abrupt("return",e.t0+"/items/sync");case 4:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"registerSyncStatusObserver",value:function(e){var t={key:new Date,callback:e};return this.syncStatusObservers.push(t),t}},{key:"removeSyncStatusObserver",value:function(e){_.pull(this.syncStatusObservers,e)}},{key:"syncStatusDidChange",value:function(){var e=this;this.syncStatusObservers.forEach((function(t){t.callback(e.syncStatus)}))}},{key:"addEventHandler",value:function(e){return this.eventHandlers.push(e),e}},{key:"removeEventHandler",value:function(e){_.pull(this.eventHandlers,e)}},{key:"notifyEvent",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=this.eventHandlers[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e,t||{})}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}},{key:"setKeyRequestHandler",value:function(e){this.keyRequestHandler=e}},{key:"getActiveKeyInfo",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.keyRequestHandler(t));case 1:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"initialDataLoaded",value:function(){return!0===this._initialDataLoaded}},{key:"_sortLocalItems",value:function(e){var t=this;return e.sort((function(e,n){var r=new Date(n.updated_at)-new Date(e.updated_at),a=t.contentTypeLoadPriority,i=0,o=0;return a&&(i=a.indexOf(e.content_type),o=a.indexOf(n.content_type),-1==i&&(i=a.length),-1==o&&(o=a.length)),i==o?r:i0&&void 0!==u[0]?u[0]:{},r=n.incrementalCallback,a=n.batchSize,!(i=n.options)||!i.simulateHighLatency){t.next=5;break}return o=i.simulatedLatency||1e3,t.next=5,this._awaitSleep(o);case 5:if(!this.loadLocalDataPromise){t.next=7;break}return t.abrupt("return",this.loadLocalDataPromise);case 7:return a||(a=100),this.loadLocalDataPromise=this.storageManager.getAllModels().then((function(t){var n=(t=(t=s._sortLocalItems(t)).filter((function(e){var t=s.modelManager.findItem(e.uuid);return!t||new Date(e.dirtiedDate)>t.dirtiedDate}))).length,i=0,o=[],u=function(){var l=k(regeneratorRuntime.mark((function l(){var c,f;return regeneratorRuntime.wrap((function(l){for(;;)switch(l.prev=l.next){case 0:return c=t.slice(i,i+a),l.next=3,s.handleItemsResponse(c,null,A.MappingSourceLocalRetrieved,e.KeyRequestLoadLocal);case 3:if(f=l.sent,o.push(f),!((i+=c.length)0)){t.next=23;break}return t.next=23,Promise.all(u.map(function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.storageManager.deleteModel(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 23:return t.next=25,a.getActiveKeyInfo(e.KeyRequestSaveLocal);case 25:if(m=t.sent,!(s.length>0)){t.next=33;break}return t.next=29,Promise.all(s.map(function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=new U(t,m.keys,m.auth_params),e.next=3,n.paramsForLocalStorage();case 3:return n=e.sent,r&&delete n.dirty,e.abrupt("return",n);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())).catch((function(e){return o(e)}));case 29:return v=t.sent,t.next=32,a.storageManager.saveModels(v).catch((function(e){console.error("Error writing items",e),a.syncStatus.localError=e,a.syncStatusDidChange(),o()}));case 32:a.syncStatus.localError&&(a.syncStatus.localError=null,a.syncStatusDidChange());case 33:i();case 34:case"end":return t.stop()}}),t,null,[[4,8,12,20],[13,,15,19]])})));return function(e,n){return t.apply(this,arguments)}}()));case 3:case"end":return t.stop()}}),t)})));function n(e,n){return t.apply(this,arguments)}return n}()},{key:"syncOffline",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(n=!0,r=!1,a=void 0,e.prev=3,i=t[Symbol.iterator]();!(n=(o=i.next()).done);n=!0)o.value.updated_at=new Date;e.next=11;break;case 7:e.prev=7,e.t0=e.catch(3),r=!0,a=e.t0;case 11:e.prev=11,e.prev=12,n||null==i.return||i.return();case 14:if(e.prev=14,!r){e.next=17;break}throw a;case 17:return e.finish(14);case 18:return e.finish(11);case 19:return e.abrupt("return",this.writeItemsToLocalStorage(t,!0).then((function(e){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var u=i.value;u.deleted&&s.modelManager.removeItemLocally(u)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return s.modelManager.clearDirtyItems(t),s.modelManager.didSyncModelsOffline(t),s.notifyEvent("sync:completed",{savedItems:t}),{saved_items:t}})));case 20:case"end":return e.stop()}}),e,this,[[3,7,11,19],[12,,14,18]])})));function t(t){return e.apply(this,arguments)}return t}()},{key:"markAllItemsDirtyAndSaveOffline",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n,r,a,i,o,s,u,l,c,f,d,p,h;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=28;break}n=this.modelManager.allNondummyItems.filter((function(e){return!e.errorDecrypting})).slice(),r=!0,a=!1,i=void 0,e.prev=5,o=n[Symbol.iterator]();case 7:if(r=(s=o.next()).done){e.next=14;break}return u=s.value,e.next=11,this.modelManager.alternateUUIDForItem(u);case 11:r=!0,e.next=7;break;case 14:e.next=20;break;case 16:e.prev=16,e.t0=e.catch(5),a=!0,i=e.t0;case 20:e.prev=20,e.prev=21,r||null==o.return||o.return();case 23:if(e.prev=23,!a){e.next=26;break}throw i;case 26:return e.finish(23);case 27:return e.finish(20);case 28:for(l=this.modelManager.allNondummyItems,c=!0,f=!1,d=void 0,e.prev=32,p=l[Symbol.iterator]();!(c=(h=p.next()).done);c=!0)h.value.setDirty(!0);e.next=40;break;case 36:e.prev=36,e.t1=e.catch(32),f=!0,d=e.t1;case 40:e.prev=40,e.prev=41,c||null==p.return||p.return();case 43:if(e.prev=43,!f){e.next=46;break}throw d;case 46:return e.finish(43);case 47:return e.finish(40);case 48:return e.abrupt("return",this.writeItemsToLocalStorage(l,!1));case 49:case"end":return e.stop()}}),e,this,[[5,16,20,28],[21,,23,27],[32,36,40,48],[41,,43,47]])})));function t(t){return e.apply(this,arguments)}return t}()},{key:"setSyncToken",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=t,e.next=3,this.storageManager.setItem("syncToken",t);case 3:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"getSyncToken",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._syncToken){e.next=4;break}return e.next=3,this.storageManager.getItem("syncToken");case 3:this._syncToken=e.sent;case 4:return e.abrupt("return",this._syncToken);case 5:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"setCursorToken",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken=t,!t){e.next=6;break}return e.next=4,this.storageManager.setItem("cursorToken",t);case 4:e.next=8;break;case 6:return e.next=8,this.storageManager.removeItem("cursorToken");case 8:case"end":return e.stop()}}),e,this)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"getCursorToken",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this._cursorToken){e.next=4;break}return e.next=3,this.storageManager.getItem("cursorToken");case 3:this._cursorToken=e.sent;case 4:return e.abrupt("return",this._cursorToken);case 5:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"clearQueuedCallbacks",value:function(){this._queuedCallbacks=[]}},{key:"callQueuedCallbacks",value:function(e){var t=this.queuedCallbacks;if(t.length){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0)(0,i.value)(e)}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}this.clearQueuedCallbacks()}}},{key:"beginCheckingIfSyncIsTakingTooLong",value:function(){this.syncStatus.checker&&this.stopCheckingIfSyncIsTakingTooLong(),this.syncStatus.checker=this.$interval(function(){(new Date-this.syncStatus.syncStart)/1e3>5&&(this.notifyEvent("sync:taking-too-long"),this.stopCheckingIfSyncIsTakingTooLong())}.bind(this),500)}},{key:"stopCheckingIfSyncIsTakingTooLong",value:function(){this.$interval.hasOwnProperty("cancel")?this.$interval.cancel(this.syncStatus.checker):clearInterval(this.syncStatus.checker),this.syncStatus.checker=null}},{key:"lockSyncing",value:function(){this.syncLocked=!0}},{key:"unlockSyncing",value:function(){this.syncLocked=!1}},{key:"sync",value:function(){var t=k(regeneratorRuntime.mark((function t(){var n,r=this,a=arguments;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=a.length>0&&void 0!==a[0]?a[0]:{},!this.syncLocked){t.next=4;break}return console.log("Sync Locked, Returning;"),t.abrupt("return");case 4:return t.abrupt("return",new Promise(function(){var t=k(regeneratorRuntime.mark((function t(a,i){var o,s,u,l,c,f,d,p,h,m,v,g,y,b;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n||(n={}),o=r.modelManager.getDirtyItems(),s=o.filter((function(e){return!r.lastDirtyItemsSave||e.dirtiedDate>r.lastDirtyItemsSave})),t.next=5,r.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 5:if(u=t.sent,l=r.syncStatus.syncOpInProgress,c=r.initialDataLoaded(),!l&&c){t.next=16;break}return r.performSyncAgainOnCompletion=!0,r.lastDirtyItemsSave=new Date,t.next=13,r.writeItemsToLocalStorage(s,!1);case 13:return l&&(r.queuedCallbacks.push(a),r.loggingEnabled&&console.warn("Attempting to sync while existing sync is in progress.")),c||(r.loggingEnabled&&console.warn("(1) Attempting to perform online sync before local data has loaded"),a()),t.abrupt("return");case 16:if(r.syncStatus.syncOpInProgress=!0,!u.offline){t.next=19;break}return t.abrupt("return",r.syncOffline(o).then((function(e){r.syncStatus.syncOpInProgress=!1,a(e)})).catch((function(e){r.notifyEvent("sync-exception",e)})));case 19:if(r.initialDataLoaded()){t.next=22;break}return console.error("Attempting to perform online sync before local data has loaded"),t.abrupt("return");case 22:return r.loggingEnabled&&console.log("Syncing online user."),f=r.syncStatus.needsMoreSync,r.syncStatus.syncStart=new Date,r.beginCheckingIfSyncIsTakingTooLong(),d=r.PerSyncItemUploadLimit,(p=o.slice(0,d)).lengthr.syncStatus.total&&(r.syncStatus.total=r.syncStatus.current),r.syncStatusDidChange(),t.next=34,r.writeItemsToLocalStorage(s,!1);case 34:return r.lastDirtyItemsSave=new Date,n.onPreSyncSave&&n.onPreSyncSave(),r.allRetreivedItems||(r.allRetreivedItems=[]),r.allSavedItems||(r.allSavedItems=[]),(h={}).limit=r.ServerItemDownloadLimit,n.performIntegrityCheck&&(h.compute_integrity=!0),t.prev=41,t.next=44,Promise.all(p.map((function(e){var t=new U(e,u.keys,u.auth_params);return t.additionalFields=n.additionalFields,t.paramsForSync()}))).then((function(e){h.items=e}));case 44:t.next=49;break;case 46:t.prev=46,t.t0=t.catch(41),r.notifyEvent("sync-exception",t.t0);case 49:for(m=!0,v=!1,g=void 0,t.prev=52,y=p[Symbol.iterator]();!(m=(b=y.next()).done);m=!0)b.value.dirtyCount=0;t.next=60;break;case 56:t.prev=56,t.t1=t.catch(52),v=!0,g=t.t1;case 60:t.prev=60,t.prev=61,m||null==y.return||y.return();case 63:if(t.prev=63,!v){t.next=66;break}throw g;case 66:return t.finish(63);case 67:return t.finish(60);case 68:return t.next=70,r.getSyncToken();case 70:return h.sync_token=t.sent,t.next=73,r.getCursorToken();case 73:return h.cursor_token=t.sent,h.api=R.getApiVersion(),r.loggingEnabled&&console.log("Syncing with params",h),t.prev=76,t.t2=r.httpManager,t.next=80,r.getSyncURL();case 80:t.t3=t.sent,t.t4=h,t.t5=function(e){r.handleSyncSuccess(p,e,n).then((function(){a(e)})).catch((function(e){console.log("Caught sync success exception:",e),r.handleSyncError(e,null,o).then((function(t){r.notifyEvent("sync-exception",e),a(t)}))}))},t.t6=function(e,t){r.handleSyncError(e,t,o).then((function(e){a(e)}))},t.t2.postAuthenticatedAbsolute.call(t.t2,t.t3,t.t4,t.t5,t.t6),t.next=90;break;case 87:t.prev=87,t.t7=t.catch(76),console.log("Sync exception caught:",t.t7);case 90:case"end":return t.stop()}}),t,null,[[41,46],[52,56,60,68],[61,,63,67],[76,87]])})));return function(e,n){return t.apply(this,arguments)}}()));case 5:case"end":return t.stop()}}),t,this)})));function n(){return t.apply(this,arguments)}return n}()},{key:"_awaitSleep",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.warn("Simulating high latency sync request",t),e.abrupt("return",new Promise((function(e,n){setTimeout((function(){e()}),t)})));case 2:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"handleSyncSuccess",value:function(){var t=k(regeneratorRuntime.mark((function t(n,r,a){var i,o,s,u,l,c,f,d,p,h,m,v,g,y,b,k,w=this;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!a.simulateHighLatency){t.next=4;break}return i=a.simulatedLatency||1e3,t.next=4,this._awaitSleep(i);case 4:for(this.syncStatus.error=null,this.loggingEnabled&&console.log("Sync response",r),o=this.allSavedItems.map((function(e){return e.uuid})),s=r.saved_items.map((function(e){return e.uuid})),r.retrieved_items=r.retrieved_items.filter((function(e){var t=o.includes(e.uuid),n=s.includes(e.uuid);if(t||n)return!1;var r=w.modelManager.findItem(e.uuid);return!r||!r.dirty})),u=[],l=!0,c=!1,f=void 0,t.prev=13,d=n[Symbol.iterator]();!(l=(p=d.next()).done);l=!0)0==(h=p.value).dirtyCount&&u.push(h);t.next=21;break;case 17:t.prev=17,t.t0=t.catch(13),c=!0,f=t.t0;case 21:t.prev=21,t.prev=22,l||null==d.return||d.return();case 24:if(t.prev=24,!c){t.next=27;break}throw f;case 27:return t.finish(24);case 28:return t.finish(21);case 29:return this.modelManager.clearDirtyItems(u),t.next=32,this.handleItemsResponse(r.retrieved_items,null,A.MappingSourceRemoteRetrieved,e.KeyRequestLoadSaveAccount);case 32:return m=t.sent,this.allRetreivedItems=this.allRetreivedItems.concat(m),this.syncStatus.retrievedCount=this.allRetreivedItems.length,v=["content","auth_hash"],t.next=38,this.handleItemsResponse(r.saved_items,v,A.MappingSourceRemoteSaved,e.KeyRequestLoadSaveAccount);case 38:return g=t.sent,this.allSavedItems=this.allSavedItems.concat(g),y=r.unsaved,t.next=43,this.deprecated_handleUnsavedItemsResponse(y);case 43:return t.next=45,this.handleConflictsResponse(r.conflicts);case 45:if(b=t.sent,k=b&&b.length>0,!b){t.next=50;break}return t.next=50,this.writeItemsToLocalStorage(b,!1);case 50:return t.next=52,this.writeItemsToLocalStorage(g,!1);case 52:return t.next=54,this.writeItemsToLocalStorage(m,!1);case 54:if(!r.integrity_hash||r.cursor_token){t.next=59;break}return t.next=57,this.handleServerIntegrityHash(r.integrity_hash);case 57:t.sent||this.syncDiscordance=this.majorDataChangeThreshold||g.length>=this.majorDataChangeThreshold||y&&y.length>=this.majorDataChangeThreshold||b&&b.length>=this.majorDataChangeThreshold)&&this.notifyEvent("major-data-change"),this.callQueuedCallbacks(r),this.notifyEvent("sync:completed",{retrievedItems:this.allRetreivedItems,savedItems:this.allSavedItems}),this.allRetreivedItems=[],this.allSavedItems=[],this.performSyncAgainOnCompletion&&(this.performSyncAgainOnCompletion=!1,setTimeout((function(){w.sync(a)}),10)),t.abrupt("return",r);case 88:case"end":return t.stop()}}),t,this,[[13,17,21,29],[22,,24,28]])})));function n(e,n,r){return t.apply(this,arguments)}return n}()},{key:"handleSyncError",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.log("Sync error: ",t),401==n&&this.notifyEvent("sync-session-invalid"),t?"string"==typeof t&&(t={error:{message:t}}):t={error:{message:"Could not connect to server."}},this.syncStatus.syncOpInProgress=!1,this.syncStatus.error=t.error,this.syncStatusDidChange(),this.writeItemsToLocalStorage(r,!1),this.modelManager.didSyncModelsOffline(r),this.stopCheckingIfSyncIsTakingTooLong(),this.notifyEvent("sync:error",t.error),this.callQueuedCallbacks({error:"Sync error"}),e.abrupt("return",t);case 12:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"handleItemsResponse",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){var i,o,s;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getActiveKeyInfo(a);case 2:return i=e.sent.keys,e.next=5,SFJS.itemTransformer.decryptMultipleItems(t,i);case 5:return e.next=7,this.modelManager.mapResponseItemsToLocalModelsOmittingFields(t,n,r);case 7:return o=e.sent,(s=o.filter((function(e){var t=e.errorDecryptingValueChanged;return e.errorDecryptingValueChanged=!1,t}))).length>0&&this.writeItemsToLocalStorage(s,!1),e.abrupt("return",o);case 11:case"end":return e.stop()}}),e,this)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"refreshErroredItems",value:function(){var t=k(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!((n=this.modelManager.allNondummyItems.filter((function(e){return 1==e.errorDecrypting}))).length>0)){t.next=3;break}return t.abrupt("return",this.handleItemsResponse(n,null,A.MappingSourceLocalRetrieved,e.KeyRequestLoadSaveAccount));case 3:case"end":return t.stop()}}),t,this)})));function n(){return t.apply(this,arguments)}return n}()},{key:"handleConflictsResponse",value:function(){var t=k(regeneratorRuntime.mark((function t(n){var r,a,i,o,s,u,l,c,f,d,p,h,m,v,g,y,b,k,w,x,S,_,E,C,I,R,D,F,O,T,M,P;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n&&0!=n.length){t.next=2;break}return t.abrupt("return");case 2:this.loggingEnabled&&console.log("Handle Conflicted Items:",n),r={},a=!0,i=!1,o=void 0,t.prev=7,s=n[Symbol.iterator]();case 9:if(a=(u=s.next()).done){t.next=21;break}if(l=u.value,c=l.server_item||l.unsaved_item,f=this.modelManager.findItem(c.uuid)){t.next=16;break}return r[c.uuid]={},t.abrupt("continue",18);case 16:d=f.getContentCopy(),r[c.uuid]={frozenContent:d,itemRef:f};case 18:a=!0,t.next=9;break;case 21:t.next=27;break;case 23:t.prev=23,t.t0=t.catch(7),i=!0,o=t.t0;case 27:t.prev=27,t.prev=28,a||null==s.return||s.return();case 30:if(t.prev=30,!i){t.next=33;break}throw o;case 33:return t.finish(30);case 34:return t.finish(27);case 35:p=[],h=!0,m=!1,v=void 0,t.prev=39,g=n[Symbol.iterator]();case 41:if(h=(y=g.next()).done){t.next=91;break}return b=y.value,k=b.server_item||b.unsaved_item,t.t1=SFJS.itemTransformer,t.t2=[k],t.next=48,this.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 48:return t.t3=t.sent.keys,t.next=51,t.t1.decryptMultipleItems.call(t.t1,t.t2,t.t3);case 51:if(w=r[k.uuid],x=w.frozenContent,S=w.itemRef){t.next=54;break}return t.abrupt("continue",88);case 54:if(p.push(S),"uuid_conflict"!==b.type){t.next=62;break}return t.next=58,this.modelManager.alternateUUIDForItem(S);case 58:_=t.sent,p.push(_),t.next=88;break;case 62:if("sync_conflict"!==b.type){t.next=86;break}return t.next=65,this.modelManager.createDuplicateItemFromResponseItem(k);case 65:if(E=t.sent,C=this.modelManager.duplicateItemWithCustomContent({content:x,duplicateOf:S}),I=!C.isItemContentEqualWith(E),R=!S.isItemContentEqualWith(E),D=!1,F=!1,O=!1,T=!1,k.deleted||S.deleted?T=!0:I?(M=20,(new Date-S.client_updated_at)/1e30&&void 0!==arguments[0]?arguments[0]:{};return new Promise(function(){var r=k(regeneratorRuntime.mark((function r(a,i){var o;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o={limit:n.limit||500,sync_token:n.syncToken,cursor_token:n.cursorToken,content_type:n.contentType,event:n.event,api:R.getApiVersion()},r.prev=1,r.t0=t.httpManager,r.next=5,t.getSyncURL();case 5:r.t1=r.sent,r.t2=o,r.t3=function(){var r=k(regeneratorRuntime.mark((function r(i){var o,s;return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return n.retrievedItems||(n.retrievedItems=[]),o=i.retrieved_items,r.next=4,t.getActiveKeyInfo(e.KeyRequestLoadSaveAccount);case 4:return s=r.sent.keys,r.next=7,SFJS.itemTransformer.decryptMultipleItems(o,s);case 7:n.retrievedItems=n.retrievedItems.concat(o.map((function(e){return t.modelManager.createItem(e)}))),n.syncToken=i.sync_token,n.cursorToken=i.cursor_token,n.cursorToken?t.stateless_downloadAllItems(n).then(a):a(n.retrievedItems);case 11:case"end":return r.stop()}}),r)})));return function(e){return r.apply(this,arguments)}}(),r.t4=function(e,t){i(e)},r.t0.postAuthenticatedAbsolute.call(r.t0,r.t1,r.t2,r.t3,r.t4),r.next=16;break;case 12:r.prev=12,r.t5=r.catch(1),console.log("Download all items exception caught:",r.t5),i(r.t5);case 16:case"end":return r.stop()}}),r,null,[[1,12]])})));return function(e,t){return r.apply(this,arguments)}}())}},{key:"resolveOutOfSync",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.stateless_downloadAllItems({event:"resolve-out-of-sync"}).then(function(){var e=k(regeneratorRuntime.mark((function e(n){var r,a,i,o,s,u,l,c;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=[],a=!0,i=!1,o=void 0,e.prev=4,s=n[Symbol.iterator]();case 6:if(a=(u=s.next()).done){e.next=18;break}if(l=u.value,!(c=t.modelManager.findItem(l.uuid))){e.next=14;break}if(l.isItemContentEqualWith(c)){e.next=14;break}return e.next=14,t.modelManager.duplicateItemAndAddAsConflict(c);case 14:r.push(l);case 15:a=!0,e.next=6;break;case 18:e.next=24;break;case 20:e.prev=20,e.t0=e.catch(4),i=!0,o=e.t0;case 24:e.prev=24,e.prev=25,a||null==s.return||s.return();case 27:if(e.prev=27,!i){e.next=30;break}throw o;case 30:return e.finish(27);case 31:return e.finish(24);case 32:return e.next=34,t.modelManager.mapResponseItemsToLocalModelsWithOptions({items:r,source:A.MappingSourceRemoteRetrieved});case 34:return e.next=36,t.writeItemsToLocalStorage(t.modelManager.allNondummyItems);case 36:return e.abrupt("return",t.sync({performIntegrityCheck:!0}));case 37:case"end":return e.stop()}}),e,null,[[4,20,24,32],[25,,27,31]])})));return function(t){return e.apply(this,arguments)}}()));case 1:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"handleSignout",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.outOfSync=!1,this.loadLocalDataPromise=null,this.performSyncAgainOnCompletion=!1,this.syncStatus.syncOpInProgress=!1,this._queuedCallbacks=[],this.syncStatus={},e.abrupt("return",this.clearSyncToken());case 7:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"clearSyncToken",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this._syncToken=null,this._cursorToken=null,e.abrupt("return",this.storageManager.removeItem("syncToken"));case 3:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"__setLocalDataNotLoaded",value:function(){this.loadLocalDataPromise=null,this._initialDataLoaded=!1}},{key:"queuedCallbacks",get:function(){return this._queuedCallbacks||(this._queuedCallbacks=[]),this._queuedCallbacks}}]),e}();r.SFSyncManager=B;var z=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};w(this,e),this.content={},this.referencingObjects=[],this.updateFromJSON(t),this.uuid||"undefined"!=typeof SFJS&&SFJS.crypto.generateUUIDSync&&(this.uuid=SFJS.crypto.generateUUIDSync()),"object"!==y(this.content)||this.content.references||(this.content.references=[])}return S(e,[{key:"initUUID",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.uuid){e.next=4;break}return e.next=3,SFJS.crypto.generateUUID();case 3:this.uuid=e.sent;case 4:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"updateFromJSON",value:function(t){if(t){this.deleted=t.deleted,this.uuid=t.uuid,this.enc_item_key=t.enc_item_key,this.auth_hash=t.auth_hash,this.auth_params=t.auth_params;for(var n=0,r=["errorDecrypting","dirty","dirtyCount","dirtiedDate","dummy"];n"==n.operator?m>h:"<="==n.operator?m<=h:">="==n.operator?m>=h:"startsWith"==n.operator?m.startsWith(h):"in"==n.operator?-1!=h.indexOf(m):"includes"==n.operator?this.resolveIncludesPredicate(m,h):"matches"==n.operator&&new RegExp(h).test(m)}},{key:"resolveIncludesPredicate",value:function(t,n){if("string"==typeof n)return t.includes(n);var r;r=Array.isArray(n)?e.fromArray(n):n;var a=!0,i=!1,o=void 0;try{for(var s,u=t[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var l=s.value;if(this.ObjectSatisfiesPredicate(l,r))return!0}}catch(e){i=!0,o=e}finally{try{a||null==u.return||u.return()}finally{if(i)throw o}}return!1}},{key:"ItemSatisfiesPredicate",value:function(t,n){return Array.isArray(n)&&(n=e.fromArray(n)),this.ObjectSatisfiesPredicate(t,n)}},{key:"ItemSatisfiesPredicates",value:function(e,t){var n=!0,r=!1,a=void 0;try{for(var i,o=t[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value;if(!this.ItemSatisfiesPredicate(e,s))return!1}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}return!0}},{key:"DateFromString",value:function(e){var t=e.split("."),n=t[1],r=new Date,a=parseInt(t[0]);return"days"==n?r.setDate(r.getDate()-a):"hours"==n&&r.setHours(r.getHours()-a),r}},{key:"IsRecursiveOperator",value:function(e){return["and","or"].includes(e)}}]),e}();r.SFPredicate=H;var W=function(e){function t(e){var n;return w(this,t),(n=l(this,f(t).call(this,e))).content.desktopPrivileges||(n.content.desktopPrivileges={}),n}return d(t,e),S(t,null,[{key:"contentType",value:function(){return"SN|Privileges"}}]),S(t,[{key:"setCredentialsForAction",value:function(e,t){this.content.desktopPrivileges[e]=t}},{key:"getCredentialsForAction",value:function(e){return this.content.desktopPrivileges[e]||[]}},{key:"toggleCredentialForAction",value:function(e,t){this.isCredentialRequiredForAction(e,t)?this.removeCredentialForAction(e,t):this.addCredentialForAction(e,t)}},{key:"removeCredentialForAction",value:function(e,t){_.pull(this.content.desktopPrivileges[e],t)}},{key:"addCredentialForAction",value:function(e,t){var n=this.getCredentialsForAction(e);n.push(t),this.setCredentialsForAction(e,n)}},{key:"isCredentialRequiredForAction",value:function(e,t){return this.getCredentialsForAction(e).includes(t)}}]),t}(z);r.SFPrivileges=W;var K=function(e){function t(e){var n;return w(this,t),(n=l(this,f(t).call(this,e))).content.itemUUIDToItemHistoryMapping||(n.content.itemUUIDToItemHistoryMapping={}),Object.keys(n.content.itemUUIDToItemHistoryMapping).forEach((function(e){var t=n.content.itemUUIDToItemHistoryMapping[e];n.content.itemUUIDToItemHistoryMapping[e]=new V(t)})),n}return d(t,e),S(t,[{key:"addEntryForItem",value:function(e){return this.historyForItem(e).addHistoryEntryForItem(e)}},{key:"historyForItem",value:function(e){var t=this.content.itemUUIDToItemHistoryMapping[e.uuid];return t||(t=this.content.itemUUIDToItemHistoryMapping[e.uuid]=new V),t}},{key:"clearItemHistory",value:function(e){this.historyForItem(e).clear()}},{key:"clearAllHistory",value:function(){this.content.itemUUIDToItemHistoryMapping={}}},{key:"optimizeHistoryForItem",value:function(e){var n=this.historyForItem(e);n.entries.length>t.LargeItemEntryAmountThreshold&&n.optimize()}}]),t}(z);r.SFHistorySession=K,K.LargeItemEntryAmountThreshold=60;var V=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(w(this,e),this.entries||(this.entries=[]),t.entries){var n=!0,r=!1,a=void 0;try{for(var i,o=t.entries[Symbol.iterator]();!(n=(i=o.next()).done);n=!0){var s=i.value,u=this.createEntryForItem(s.item);u.setPreviousEntry(this.getLastEntry()),this.entries.push(u)}}catch(e){r=!0,a=e}finally{try{n||null==o.return||o.return()}finally{if(r)throw a}}}}return S(e,[{key:"createEntryForItem",value:function(t){var n=e.HistoryEntryClassMapping&&e.HistoryEntryClassMapping[t.content_type];return n||(n=q),new n(t)}},{key:"getLastEntry",value:function(){return this.entries[this.entries.length-1]}},{key:"addHistoryEntryForItem",value:function(e){var t=this.createEntryForItem(e),n=this.getLastEntry();if(t.setPreviousEntry(n),!t.isSameAsEntry(n))return this.entries.push(t),t}},{key:"clear",value:function(){this.entries.length=0}},{key:"optimize",value:function(){var t=this,n=[],r=function(t){return t.deltaSize()>e.LargeEntryDeltaThreshold},a=function(e,a,i){if(i?n.push(e):-1!==(a=n.indexOf(e))&&n.splice(a,1),i&&r(e)&&-1==e.operationVector()){var o=t.entries[a-1];o&&n.push(o)}};this.entries.forEach((function(e,n){if(0==n||n==t.entries.length-1)a(e,n,!0);else{var i=r(e);a(e,n,i)}})),this.entries=this.entries.filter((function(e,t){return-1!==n.indexOf(e)}))}}]),e}();r.SFItemHistory=V,V.LargeEntryDeltaThreshold=15;var q=function(){function e(t){w(this,e),this.item=z.deepMerge({},t),this.defaultContentKeyToDiffOn="text",this.textCharDiffLength=0,"string"==typeof this.item.updated_at&&(this.item.updated_at=new Date(this.item.updated_at))}return S(e,[{key:"setPreviousEntry",value:function(e){this.hasPreviousEntry=null!=e,this.item.content[this.defaultContentKeyToDiffOn]&&(this.textCharDiffLength=e?this.item.content[this.defaultContentKeyToDiffOn].length-e.item.content[this.defaultContentKeyToDiffOn].length:this.item.content[this.defaultContentKeyToDiffOn].length)}},{key:"operationVector",value:function(){return null!=this.textCharDiffLength?this.hasPreviousEntry&&0!=this.textCharDiffLength?this.textCharDiffLength<0?-1:1:0:1}},{key:"deltaSize",value:function(){return null!=this.textCharDiffLength?Math.abs(this.textCharDiffLength):1}},{key:"isSameAsEntry",value:function(e){if(!e)return!1;var t=new z(this.item),n=new z(e.item);return t.isItemContentEqualWith(n)}}]),e}();r.SFItemHistoryEntry=q,I="undefined"!=typeof window?window:void 0!==e?e:null;var $=function(){function e(){w(this,e),this.DefaultPBKDF2Length=768}return S(e,[{key:"generateUUIDSync",value:function(){var e=I.crypto||I.msCrypto;if(e){var t=new Uint32Array(4);e.getRandomValues(t);var n=-1;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){n++;var r=t[n>>3]>>n%8*4&15;return("x"==e?r:3&r|8).toString(16)}))}var r=(new Date).getTime();return I.performance&&"function"==typeof I.performance.now&&(r+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),("x"==e?t:3&t|8).toString(16)}))}},{key:"generateUUID",value:function(){var e=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.generateUUIDSync());case 1:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"timingSafeEqual",value:function(e,t){var n=String(e),r=String(t),a=n.length,i=0;a!==r.length&&(r=n,i=1);for(var o=0;o0&&void 0!==p[0]?p[0]:{},n=t.ciphertextToAuth,r=t.contentCiphertext,a=t.encryptionKey,i=t.iv,o=t.authHash,s=t.authKey,!(p.length>1?p[1]:void 0)||o){e.next=5;break}return console.error("Auth hash is required."),e.abrupt("return");case 5:if(!o){e.next=12;break}return e.next=8,this.hmac256(n,s);case 8:if(l=e.sent,!1!==this.timingSafeEqual(o,l)){e.next=12;break}return console.error("Auth hash does not match, returning null."),e.abrupt("return",null);case 12:return c=u.enc.Hex.parse(a),f=u.enc.Hex.parse(i||""),d=u.AES.decrypt(r,c,{iv:f,mode:u.mode.CBC,padding:u.pad.Pkcs7}),e.abrupt("return",d.toString(u.enc.Utf8));case 16:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"encryptText",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){var a,i,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=u.enc.Hex.parse(n),i=u.enc.Hex.parse(r||""),o=u.AES.encrypt(t,a,{iv:i,mode:u.mode.CBC,padding:u.pad.Pkcs7}),e.abrupt("return",o.toString());case 4:case"end":return e.stop()}}),e)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"generateRandomKey",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u.lib.WordArray.random(t/8).toString());case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"generateItemEncryptionKey",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=512,n=1,e.next=4,this.generateRandomKey(t);case 4:return r=e.sent,e.next=7,this.generateRandomKey(t);case 7:return a=e.sent,e.abrupt("return",this.pbkdf2(a,r,n,t));case 9:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"firstHalfOfKey",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(0,t.length/2));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"secondHalfOfKey",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",t.substring(t.length/2,t.length));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"base64",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",I.btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,(function(e,t){return String.fromCharCode("0x"+t)}))));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"base64Decode",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",I.atob(t));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"sha256",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",u.SHA256(t).toString());case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"hmac256",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=u.enc.Hex.parse(n),a=u.enc.Utf8.parse(t),i=u.HmacSHA256(a,r).toString(),e.abrupt("return",i);case 4:case"end":return e.stop()}}),e)})));function t(t,n){return e.apply(this,arguments)}return t}()},{key:"generateSalt",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.sha256([t,"SF",n,r,a].join(":"));case 2:return i=e.sent,e.abrupt("return",i);case 4:case"end":return e.stop()}}),e,this)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"generateSymmetricKeyPair",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=f.length>0&&void 0!==f[0]?f[0]:{},n=t.password,r=t.pw_salt,a=t.pw_cost,e.next=3,this.pbkdf2(n,r,a,this.DefaultPBKDF2Length);case 3:return i=e.sent,o=i.length,s=o/3,u=i.slice(0,s),l=i.slice(s,2*s),c=i.slice(2*s,3*s),e.abrupt("return",[u,l,c]);case 10:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"computeEncryptionKeysForUser",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("003"!=n.version){e.next=9;break}if(n.identifier){e.next=4;break}return console.error("authParams is missing identifier."),e.abrupt("return");case 4:return e.next=6,this.generateSalt(n.identifier,n.version,n.pw_cost,n.pw_nonce);case 6:r=e.sent,e.next=10;break;case 9:r=n.pw_salt;case 10:return e.abrupt("return",this.generateSymmetricKeyPair({password:t,pw_salt:r,pw_cost:n.pw_cost}).then((function(e){return{pw:e[0],mk:e[1],ak:e[2]}})));case 11:case"end":return e.stop()}}),e,this)})));function t(t,n){return e.apply(this,arguments)}return t}()},{key:"generateInitialKeysAndAuthParamsForUser",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r,a,i,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.SFJS.version,a=this.SFJS.defaultPasswordGenerationCost,e.next=4,this.generateRandomKey(256);case 4:return i=e.sent,e.next=7,this.generateSalt(t,r,a,i);case 7:return o=e.sent,e.abrupt("return",this.generateSymmetricKeyPair({password:n,pw_salt:o,pw_cost:a}).then((function(e){var n={pw_nonce:i,pw_cost:a,identifier:t,version:r};return{keys:{pw:e[0],mk:e[1],ak:e[2]},authParams:n}})));case 9:case"end":return e.stop()}}),e,this)})));function t(t,n){return e.apply(this,arguments)}return t}()}]),e}();r.SFAbstractCrypto=$;var J=function(e){function t(){return w(this,t),l(this,f(t).apply(this,arguments))}return d(t,e),S(t,[{key:"pbkdf2",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i={keySize:a/32,hasher:u.algo.SHA512,iterations:r},e.abrupt("return",u.PBKDF2(t,n,i).toString());case 2:case"end":return e.stop()}}),e)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()}]),t}($);r.SFCryptoJS=J;var Q=(I="undefined"!=typeof window?window:void 0!==e?e:null).crypto?I.crypto.subtle:null,G=function(e){function t(){return w(this,t),l(this,f(t).apply(this,arguments))}return d(t,e),S(t,[{key:"pbkdf2",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.webCryptoImportKey(t,"PBKDF2",["deriveBits"]);case 2:if(i=e.sent){e.next=6;break}return console.log("Key is null, unable to continue"),e.abrupt("return",null);case 6:return e.abrupt("return",this.webCryptoDeriveBits(i,n,r,a));case 7:case"end":return e.stop()}}),e,this)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"generateRandomKey",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n,r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=!0,e.abrupt("return",Q.generateKey({name:"AES-CBC",length:t},n,["encrypt","decrypt"]).then((function(e){return Q.exportKey("raw",e).then(function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,r.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error exporting key",e)}))})).catch((function(e){console.error("Error generating key",e)})));case 2:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"generateItemEncryptionKey",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=256,e.abrupt("return",Promise.all([this.generateRandomKey(t),this.generateRandomKey(t)]).then((function(e){return e.join("")})));case 2:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"encryptText",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r){var a,i,o,s,u,l=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!r){e.next=6;break}return e.next=3,this.hexStringToArrayBuffer(r);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=new ArrayBuffer(16);case 7:return a=e.t0,i={name:"AES-CBC",iv:a},e.next=11,this.hexStringToArrayBuffer(n);case 11:return o=e.sent,e.next=14,this.webCryptoImportKey(o,i.name,["encrypt"]);case 14:return s=e.sent,e.next=17,this.stringToArrayBuffer(t);case 17:return u=e.sent,e.abrupt("return",crypto.subtle.encrypt(i,s,u).then(function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.arrayBufferToBase64(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 19:case"end":return e.stop()}}),e,this)})));function t(t,n,r){return e.apply(this,arguments)}return t}()},{key:"decryptText",value:function(){var e=k(regeneratorRuntime.mark((function e(){var t,n,r,a,i,o,s,u,l,c,f,d,p,h=this,m=arguments;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=m.length>0&&void 0!==m[0]?m[0]:{},n=t.ciphertextToAuth,r=t.contentCiphertext,a=t.encryptionKey,i=t.iv,o=t.authHash,s=t.authKey,!(m.length>1?m[1]:void 0)||o){e.next=5;break}return console.error("Auth hash is required."),e.abrupt("return");case 5:if(!o){e.next=12;break}return e.next=8,this.hmac256(n,s);case 8:if(u=e.sent,!1!==this.timingSafeEqual(o,u)){e.next=12;break}return console.error("Auth hash does not match, returning null. ".concat(o," != ").concat(u)),e.abrupt("return",null);case 12:if(!i){e.next=18;break}return e.next=15,this.hexStringToArrayBuffer(i);case 15:e.t0=e.sent,e.next=19;break;case 18:e.t0=new ArrayBuffer(16);case 19:return l=e.t0,c={name:"AES-CBC",iv:l},e.next=23,this.hexStringToArrayBuffer(a);case 23:return f=e.sent,e.next=26,this.webCryptoImportKey(f,c.name,["decrypt"]);case 26:return d=e.sent,e.next=29,this.base64ToArrayBuffer(r);case 29:return p=e.sent,e.abrupt("return",crypto.subtle.decrypt(c,d,p).then(function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,h.arrayBufferToString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error decrypting:",e)})));case 31:case"end":return e.stop()}}),e,this)})));function t(){return e.apply(this,arguments)}return t}()},{key:"hmac256",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n){var r,a,i,o=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.hexStringToArrayBuffer(n);case 2:return r=e.sent,e.next=5,this.webCryptoImportKey(r,"HMAC",["sign"],{name:"SHA-256"});case 5:return a=e.sent,e.next=8,this.stringToArrayBuffer(t);case 8:return i=e.sent,e.abrupt("return",crypto.subtle.sign({name:"HMAC"},a,i).then(function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(t);case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){console.error("Error computing hmac",e)})));case 10:case"end":return e.stop()}}),e,this)})));function t(t,n){return e.apply(this,arguments)}return t}()},{key:"webCryptoImportKey",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){var i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t){e.next=6;break}return e.next=3,this.stringToArrayBuffer(t);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=t;case 7:return i=e.t0,e.abrupt("return",Q.importKey("raw",i,{name:n,hash:a},!1,r).then((function(e){return e})).catch((function(e){return console.error(e),null})));case 9:case"end":return e.stop()}}),e,this)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"webCryptoDeriveBits",value:function(){var e=k(regeneratorRuntime.mark((function e(t,n,r,a){var i,o=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.stringToArrayBuffer(n);case 2:return e.t0=e.sent,e.t1=r,e.t2={name:"SHA-512"},i={name:"PBKDF2",salt:e.t0,iterations:e.t1,hash:e.t2},e.abrupt("return",Q.deriveBits(i,t,a).then(function(){var e=k(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,o.arrayBufferToHexString(new Uint8Array(t));case 2:return n=e.sent,e.abrupt("return",n);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).catch((function(e){return console.error(e),null})));case 7:case"end":return e.stop()}}),e,this)})));function t(t,n,r,a){return e.apply(this,arguments)}return t}()},{key:"stringToArrayBuffer",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new Blob([t]),a=new FileReader;a.onload=function(t){e(t.target.result)},a.readAsArrayBuffer(r)})));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"arrayBufferToString",value:function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new Blob([t]),a=new FileReader;a.onload=function(t){e(t.target.result)},a.readAsText(r)})));case 1:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()},{key:"arrayBufferToHexString",value:function(){var e=k(regeneratorRuntime.mark((function e(t){var n,r,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(n=new Uint8Array(t),r="",i=0;i5e3)||this.crypto instanceof G}},{key:"supportedVersions",value:function(){return["001","002","003"]}},{key:"isVersionNewerThanLibraryVersion",value:function(e){var t=this.version();return parseInt(e)>parseInt(t)}},{key:"isProtocolVersionOutdated",value:function(e){var t={"001":Date.parse("2018-01-01"),"002":Date.parse("2020-01-01")}[e];return!!t&&new Date>t}},{key:"costMinimumForVersion",value:function(e){return{"001":3e3,"002":3e3,"003":11e4}[e]}},{key:"defaultPasswordGenerationCost",value:function(){return this.costMinimumForVersion(this.version())}}]),e}();if(r.StandardFile=X,I)try{I.StandardFile=X,I.SFJS=new X,I.SFCryptoWeb=G,I.SFCryptoJS=J,I.SFItemTransformer=Y,I.SFModelManager=A,I.SFItem=z,I.SFItemParams=U,I.SFHttpManager=R,I.SFStorageManager=L,I.SFSyncManager=B,I.SFAuthManager=C,I.SFMigrationManager=D,I.SFAlertManager=E,I.SFPredicate=H,I.SFHistorySession=K,I.SFSessionHistoryManager=P,I.SFItemHistory=V,I.SFItemHistoryEntry=q,I.SFPrivilegesManager=F,I.SFPrivileges=W,I.SFSingletonManager=N}catch(e){console.log("Exception while exporting window variables",e)}}).call(this,void 0!==t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1])(1)}).call(t,n(3))},function(e,t){!function(t){"use strict";var n,r=Object.prototype,a=r.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag",l="object"==typeof e,c=t.regeneratorRuntime;if(c)l&&(e.exports=c);else{(c=t.regeneratorRuntime=l?e.exports:{}).wrap=k;var f="suspendedStart",d="suspendedYield",p="executing",h="completed",m={},v={};v[o]=function(){return this};var g=Object.getPrototypeOf,y=g&&g(g(F([])));y&&y!==r&&a.call(y,o)&&(v=y);var b=_.prototype=x.prototype=Object.create(v);S.prototype=b.constructor=_,_.constructor=S,_[u]=S.displayName="GeneratorFunction",c.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===S||"GeneratorFunction"===(t.displayName||t.name))},c.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,_):(e.__proto__=_,u in e||(e[u]="GeneratorFunction")),e.prototype=Object.create(b),e},c.awrap=function(e){return{__await:e}},E(C.prototype),C.prototype[s]=function(){return this},c.AsyncIterator=C,c.async=function(e,t,n,r){var a=new C(k(e,t,n,r));return c.isGeneratorFunction(t)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},E(b),b[u]="Generator",b[o]=function(){return this},b.toString=function(){return"[object Generator]"},c.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},c.values=F,A.prototype={constructor:A,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(D),!e)for(var t in this)"t"===t.charAt(0)&&a.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=n)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(r,a){return s.type="throw",s.arg=e,t.next=r,a&&(t.method="next",t.arg=n),!!a}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var u=a.call(o,"catchLoc"),l=a.call(o,"finallyLoc");if(u&&l){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&a.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),D(n),m}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var a=r.arg;D(n)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:F(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=n),m}}}function k(e,t,n,r){var a=t&&t.prototype instanceof x?t:x,i=Object.create(a.prototype),o=new A(r||[]);return i._invoke=function(e,t,n){var r=f;return function(a,i){if(r===p)throw new Error("Generator is already running");if(r===h){if("throw"===a)throw i;return O()}for(n.method=a,n.arg=i;;){var o=n.delegate;if(o){var s=I(o,n);if(s){if(s===m)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===f)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=p;var u=w(e,t,n);if("normal"===u.type){if(r=n.done?h:d,u.arg===m)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r=h,n.method="throw",n.arg=u.arg)}}}(e,n,o),i}function w(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}function x(){}function S(){}function _(){}function E(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function C(e){function t(n,r,i,o){var s=w(e[n],e,r);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==typeof l&&a.call(l,"__await")?Promise.resolve(l.__await).then((function(e){t("next",e,i,o)}),(function(e){t("throw",e,i,o)})):Promise.resolve(l).then((function(e){u.value=e,i(u)}),o)}o(s.arg)}var n;this._invoke=function(e,r){function a(){return new Promise((function(n,a){t(e,r,n,a)}))}return n=n?n.then(a,a):a()}}function I(e,t){var r=e.iterator[t.method];if(r===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=n,I(e,t),"throw"===t.method))return m;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var a=w(r,e.iterator,t.arg);if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,m;var i=a.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=n),t.delegate=null,m):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,m)}function R(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function D(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(R,this),this.reset(!0)}function F(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function t(){for(;++r=0?this.items[l]=u:this.items.push(u);case 15:n=!0,c.next=5;break;case 18:c.next=24;break;case 20:c.prev=20,c.t0=c.catch(3),r=!0,a=c.t0;case 24:c.prev=24,c.prev=25,n||null==o.return||o.return();case 27:if(c.prev=27,!r){c.next=30;break}throw a;case 30:return c.finish(27);case 31:return c.finish(24);case 32:this.notifyObserversOfEvent(e.BridgeEventReceivedItems);case 33:case"end":return c.stop()}}),null,this,[[3,20,24,32],[25,,27,31]])}},{key:"indexOfItem",value:function(e){for(var t in this.items)if(this.items[t].uuid==e.uuid)return t;return-1}},{key:"removeItemFromItems",value:function(e){this.items=this.items.filter((function(t){return t.uuid!==e.uuid}))}},{key:"createItem",value:function(e,t){this.createItems([e],t)}},{key:"createItems",value:function(e,t){this.componentManager.createItems(e,(function(e){t&&t(e.map((function(e){return new i.SFItem(e)})))}))}},{key:"saveItem",value:function(e){return regeneratorRuntime.async((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",this.saveItems([e]));case 1:case"end":return t.stop()}}),null,this)}},{key:"saveItems",value:function(t){var n=this;return regeneratorRuntime.async((function(r){for(;;)switch(r.prev=r.next){case 0:return r.abrupt("return",new Promise((function(r,a){n.componentManager.saveItems(t,(function(t){r(t),n.notifyObserversOfEvent(e.BridgeEventSavedItem)}))})));case 1:case"end":return r.stop()}}))}},{key:"indexOfItem",value:function(e){for(var t in this.items)if(this.items[t].uuid==e.uuid)return t;return-1}},{key:"deleteItem",value:function(e,t){this.deleteItems([e],t)}},{key:"deleteItems",value:function(e,t){this.componentManager.deleteItems(e,t)}},{key:"removeItemFromItems",value:function(e){this.items=this.items.filter((function(t){return t.uuid!==e.uuid}))}}])&&o(t.prototype,n),r&&o(t,r),e}();s(u,"FileItemContentTypeKey","SN|FileSafe|File"),s(u,"FileSafeCredentialsContentType","SN|FileSafe|Credentials"),s(u,"FileDescriptorContentTypeKey","SN|FileSafe|FileMetadata"),s(u,"FileSafeIntegrationContentTypeKey","SN|FileSafe|Integration"),s(u,"BridgeEventLoadedCredentials","BridgeEventLoadedCredentials"),s(u,"BridgeEventReceivedItems","BridgeEventReceivedItems"),s(u,"BridgeEventSavedItem","BridgeEventSavedItem")},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"default",(function(){return d}));var r=n(2),a=n(7),i=n(8),o=n(9),s=n(10),u=n(12),l=n(0);n.n(l);function c(e,t){for(var n=0;n(t=$(t,e)).length)n=e;else{var r=0,a=-1,i=-1,o=(n=t).length;for(0>r&&(r=-r>o?0:o+r),0>(a=a>o?o:a)&&(a+=o),o=r>a?0:a-r>>>0,r>>>=0,a=Array(o);++ii?Ge:o,i=1),t=Object(t);++as))return!1;if((u=i.get(e))&&i.get(t))return u==t;var u=-1,l=!0,c=2&n?new E:Ge;for(i.set(e,t),i.set(t,e);++u(n=null==n?0:Me(n))&&(n=$t(r+n,0)),h(e,ie(t,3),n)):-1}function be(e){return null!=e&&e.length?M(e,1):[]}function ke(e){var t=null==e?0:e.length;return t?e[t-1]:Ge}function we(e,t){var n;if(e&&e.length&&t&&t.length){var r=m,a=-1,i=(n=t).length;for(e===n&&(n=Y(n));++a=e}function Re(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function De(e){return null!=e&&"object"==typeof e}function Ae(e){return!(!De(e)||"[object Object]"!=L(e))&&(null===(e=Nt(e))||"function"==typeof(e=It.call(e,"constructor")&&e.constructor)&&e instanceof e&&Ct.call(e)==At)}function Fe(e){return"string"==typeof e||!_n(e)&&De(e)&&"[object String]"==L(e)}function Oe(e){return"symbol"==typeof e||De(e)&&"[object Symbol]"==L(e)}function Te(e){return e?(e=Pe(e))===Ye||e===-Ye?17976931348623157e292*(0>e?-1:1):e==e?e:0:0===e?e:0}function Me(e){var t=(e=Te(e))%1;return e==e?t?e-t:e:0}function Pe(e){if("number"==typeof e)return e;if(Oe(e))return Xe;if(Re(e)&&(e=Re(e="function"==typeof e.valueOf?e.valueOf():e)?e+"":e),"string"!=typeof e)return 0===e?e:+e;e=e.replace(rt,"");var t=st.test(e);return t||lt.test(e)?ht(e.slice(2),t?2:8):ot.test(e)?Xe:+e}function Ne(e){return X(e,Ue(e))}function Le(e){return null==e?"":V(e)}function je(e,t,n){return(e=null==e?Ge:P(e,t))===Ge?n:e}function Be(e,t){var n;if(n=null!=e){for(var r,a=-1,i=(r=$(t,n=e)).length,o=!1;++a(e=A(t,e))||(e==t.length-1?t.pop():Bt.call(t,e,1),--this.size,0))},S.prototype.get=function(e){var t=this.__data__;return 0>(e=A(t,e))?Ge:t[e][1]},S.prototype.has=function(e){return-1r?(++this.size,n.push([e,t])):n[r][1]=t,this},_.prototype.clear=function(){this.size=0,this.__data__={hash:new x,map:new(Yt||S),string:new x}},_.prototype.delete=function(e){return e=oe(this,e).delete(e),this.size-=e?1:0,e},_.prototype.get=function(e){return oe(this,e).get(e)},_.prototype.has=function(e){return oe(this,e).has(e)},_.prototype.set=function(e,t){var n=oe(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},E.prototype.add=E.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},E.prototype.has=function(e){return this.__data__.has(e)},C.prototype.clear=function(){this.__data__=new S,this.size=0},C.prototype.delete=function(e){var t=this.__data__;return e=t.delete(e),this.size=t.size,e},C.prototype.get=function(e){return this.__data__.get(e)},C.prototype.has=function(e){return this.__data__.has(e)},C.prototype.set=function(e,t){var n=this.__data__;if(n instanceof S){var r=n.__data__;if(!Yt||199>r.length)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new _(r)}return n.set(e,t),this.size=n.size,this};var dn=function(e,t){if(null==e)return e;if(!_e(e))return function(e,t){return e&&pn(e,t,ze)}(e,t);for(var n=e.length,r=-1,a=Object(e);++rn&&(n=$t(r+n,0)),Fe(e)?n<=r&&-10){var a=!0,i=!1,o=void 0;try{for(var s,u=t.integrations[Symbol.iterator]();!(a=(s=u.next()).done);a=!0){var l=s.value;if(l!=e){t.setIntegrationAsDefault(l);break}}}catch(e){i=!0,o=e}finally{try{a||null==u.return||u.return()}finally{if(i)throw o}}}}))}},{key:"integrations",get:function(){return this.extensionBridge.filterItems(i.a.FileSafeIntegrationContentTypeKey)}}])&&o(t.prototype,n),r&&o(t,r),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var r=n(1),a=(n.n(r),n(0)),i=(n.n(a),n(2));function o(e,t){for(var n=0;n0&&(e=n.credentials[0]),e})),s(this,"setCredentialAsDefault",(function(e){var t=n.getDefaultCredentials();t&&(t.content.isDefault=!1),e.content.isDefault=!0,n.extensionBridge.saveItems([t,e])})),s(this,"deleteCredential",(function(e){n.extensionBridge.deleteItem(e)})),this.extensionBridge=r,this.onCredentialLoad=a,this.credentials=[],this.extensionBridge.addEventHandler((function(e){e==i.a.BridgeEventReceivedItems&&n.reloadCredentials()}))}var t,n,r;return t=e,(n=[{key:"reloadCredentials",value:function(){this.credentials=[];var e=this.extensionBridge.filterItems(i.a.FileSafeCredentialsContentType);if(0!=e.length){var t=!0,n=!1,r=void 0;try{for(var a,o=e[Symbol.iterator]();!(t=(a=o.next()).done);t=!0){var s=a.value;this.credentials.find((function(e){return e.uuid==s.uuid}))||this.credentials.push(s)}}catch(e){n=!0,r=e}finally{try{t||null==o.return||o.return()}finally{if(n)throw r}}this.onCredentialLoad(),this.credentials.length>0&&this.didLoadCredentials()}}},{key:"createNewCredentials",value:function(){var e,t,n,r,o;return regeneratorRuntime.async((function(s){for(;;)switch(s.prev=s.next){case 0:return e=256,s.next=3,regeneratorRuntime.awrap(SFJS.crypto.generateRandomKey(e));case 3:return t=s.sent,s.next=6,regeneratorRuntime.awrap(SFJS.crypto.generateRandomKey(e));case 6:return n=s.sent,s.next=9,regeneratorRuntime.awrap(SFJS.crypto.generateInitialKeysAndAuthParamsForUser(t,n));case 9:return(r=s.sent).isDefault=0==this.credentials.length,o=new a.SFItem({content_type:i.a.FileSafeCredentialsContentType,content:r}),this.extensionBridge.saveItem(o),this.didLoadCredentials(),s.abrupt("return",o);case 15:case"end":return s.stop()}}),null,this)}},{key:"didLoadCredentials",value:function(){this.extensionBridge.notifyObserversOfEvent(i.a.BridgeEventLoadedCredentials)}},{key:"credentialForFileDescriptor",value:function(e){return this.credentials.find((function(t){return e.content.references.find((function(e){return e.uuid==t.uuid}))}))}},{key:"getAllCredentials",value:function(){return this.credentials}},{key:"saveCredential",value:function(e){this.extensionBridge.saveItem(e)}}])&&o(t.prototype,n),r&&o(t,r),e}()},function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n(1),a=(n.n(r),n(0)),i=(n.n(a),n(11)),o=n.n(i),s=n(2);function u(e,t){for(var n=0;n3&&void 0!==arguments[3]&&arguments[3],i=document.createElement("a");i.setAttribute("download",t);var o=this.tempUrlForData(e,n);i.href=o,i.setAttribute("target","_blank"),a?window.location.href=i.href:(document.body.appendChild(i),i.click(),i.remove()),setTimeout((function(){r.revokeTempUrl(o)}),500)}},{key:"tempUrlForData",value:function(e,t){return window.URL.createObjectURL(new Blob([e],{type:t||"text/json"}))}},{key:"revokeTempUrl",value:function(e){window.URL.revokeObjectURL(e)}},{key:"copyTextToClipboard",value:function(e){if(window.clipboardData&&window.clipboardData.setData)return clipboardData.setData("Text",e);var t;if(document.queryCommandSupported&&document.queryCommandSupported("copy"))try{(t=document.createElement("textarea")).setAttribute("readonly",!0),t.setAttribute("contenteditable",!0),t.style.position="fixed",t.value=e,document.body.appendChild(t),t.focus(),t.select();var n=document.createRange();n.selectNodeContents(t);var r=window.getSelection();r.removeAllRanges(),r.addRange(n),t.setSelectionRange(0,t.value.length),document.execCommand("copy")}catch(e){console.error(e)}finally{document.body.removeChild(t)}}}],(n=null)&&r(t.prototype,n),a&&r(t,a),e}()}])},418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,i){for(var o,s,u=a(e),l=1;l{"use strict";var r=n(294),a=n(418),i=n(840);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;nt}return!1}(t,n,a,r)&&(n=null),r||null===a?function(e){return!!p.call(m,e)||!p.call(h,e)&&(d.test(e)?m[e]=!0:(h[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=null===n?3!==a.type&&"":n:(t=a.attributeName,r=a.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(a=a.type)||4===a&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new v(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new v(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(y,b);g[t]=new v(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new v(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new v("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new v(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,x=60103,S=60106,_=60107,E=60108,C=60114,I=60109,R=60110,D=60112,A=60113,F=60120,O=60115,T=60116,M=60121,P=60128,N=60129,L=60130,j=60131;if("function"==typeof Symbol&&Symbol.for){var B=Symbol.for;x=B("react.element"),S=B("react.portal"),_=B("react.fragment"),E=B("react.strict_mode"),C=B("react.profiler"),I=B("react.provider"),R=B("react.context"),D=B("react.forward_ref"),A=B("react.suspense"),F=B("react.suspense_list"),O=B("react.memo"),T=B("react.lazy"),M=B("react.block"),B("react.scope"),P=B("react.opaque.id"),N=B("react.debug_trace_mode"),L=B("react.offscreen"),j=B("react.legacy_hidden")}var z,U="function"==typeof Symbol&&Symbol.iterator;function H(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=U&&e[U]||e["@@iterator"])?e:null}function W(e){if(void 0===z)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);z=t&&t[1]||""}return"\n"+z+e}var K=!1;function V(e,t){if(!e||K)return"";K=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(e){if(e&&r&&"string"==typeof e.stack){for(var a=e.stack.split("\n"),i=r.stack.split("\n"),o=a.length-1,s=i.length-1;1<=o&&0<=s&&a[o]!==i[s];)s--;for(;1<=o&&0<=s;o--,s--)if(a[o]!==i[s]){if(1!==o||1!==s)do{if(o--,0>--s||a[o]!==i[s])return"\n"+a[o].replace(" at new "," at ")}while(1<=o&&0<=s);break}}}finally{K=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?W(e):""}function q(e){switch(e.tag){case 5:return W(e.type);case 16:return W("Lazy");case 13:return W("Suspense");case 19:return W("SuspenseList");case 0:case 2:case 15:return e=V(e.type,!1);case 11:return e=V(e.type.render,!1);case 22:return e=V(e.type._render,!1);case 1:return e=V(e.type,!0);default:return""}}function $(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case _:return"Fragment";case S:return"Portal";case C:return"Profiler";case E:return"StrictMode";case A:return"Suspense";case F:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case R:return(e.displayName||"Context")+".Consumer";case I:return(e._context.displayName||"Context")+".Provider";case D:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case O:return $(e.type);case M:return $(e._render);case T:t=e._payload,e=e._init;try{return $(e(t))}catch(e){}}return null}function J(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Q(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function G(e){e._valueTracker||(e._valueTracker=function(e){var t=Q(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var a=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(e){r=""+e,i.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function Y(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Q(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function X(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function Z(e,t){var n=t.checked;return a({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=J(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&k(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=J(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ae(e,t.type,n):t.hasOwnProperty("defaultValue")&&ae(e,t.type,J(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ae(e,t,n){"number"===t&&X(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function ie(e,t){return e=a({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function oe(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a=n.length))throw Error(o(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:J(n)}}function le(e,t){var n=J(t.value),r=J(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ce(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var fe="http://www.w3.org/1999/xhtml",de="http://www.w3.org/2000/svg";function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function he(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?pe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var me,ve,ge=(ve=function(e,t){if(e.namespaceURI!==de||"innerHTML"in e)e.innerHTML=t;else{for((me=me||document.createElement("div")).innerHTML=""+t.valueOf().toString()+" ",t=me.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ve(e,t)}))}:ve);function ye(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var be={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ke=["Webkit","ms","Moz","O"];function we(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||be.hasOwnProperty(e)&&be[e]?(""+t).trim():t+"px"}function xe(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),a=we(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}Object.keys(be).forEach((function(e){ke.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),be[t]=be[e]}))}));var Se=a({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function _e(e,t){if(t){if(Se[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(o(62))}}function Ee(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function Ce(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Ie=null,Re=null,De=null;function Ae(e){if(e=ea(e)){if("function"!=typeof Ie)throw Error(o(280));var t=e.stateNode;t&&(t=na(t),Ie(e.stateNode,e.type,t))}}function Fe(e){Re?De?De.push(e):De=[e]:Re=e}function Oe(){if(Re){var e=Re,t=De;if(De=Re=null,Ae(e),t)for(e=0;e(r=31-Kt(r))?0:1<n;n++)t.push(e);return t}function Wt(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-Kt(t)]=n}var Kt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-(Vt(e)/qt|0)|0},Vt=Math.log,qt=Math.LN2;var $t=i.unstable_UserBlockingPriority,Jt=i.unstable_runWithPriority,Qt=!0;function Gt(e,t,n,r){Le||Pe();var a=Xt,i=Le;Le=!0;try{Me(a,e,t,n,r)}finally{(Le=i)||Be()}}function Yt(e,t,n,r){Jt($t,Xt.bind(null,e,t,n,r))}function Xt(e,t,n,r){var a;if(Qt)if((a=0==(4&t))&&0=Pn),jn=String.fromCharCode(32),Bn=!1;function zn(e,t){switch(e){case"keyup":return-1!==Tn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Un(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Hn=!1;var Wn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Kn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Wn[e.type]:"textarea"===t}function Vn(e,t,n,r){Fe(r),0<(t=Mr(t,"onChange")).length&&(n=new pn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var qn=null,$n=null;function Jn(e){Cr(e,0)}function Qn(e){if(Y(ta(e)))return e}function Gn(e,t){if("change"===e)return t}var Yn=!1;if(f){var Xn;if(f){var Zn="oninput"in document;if(!Zn){var er=document.createElement("div");er.setAttribute("oninput","return;"),Zn="function"==typeof er.oninput}Xn=Zn}else Xn=!1;Yn=Xn&&(!document.documentMode||9=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=cr(r)}}function dr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function pr(){for(var e=window,t=X();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=X((e=t.contentWindow).document)}return t}function hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var mr=f&&"documentMode"in document&&11>=document.documentMode,vr=null,gr=null,yr=null,br=!1;function kr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;br||null==vr||vr!==X(r)||("selectionStart"in(r=vr)&&hr(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},yr&&lr(yr,r)||(yr=r,0<(r=Mr(gr,"onSelect")).length&&(t=new pn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=vr)))}Pt("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),Pt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),Pt(Mt,2);for(var wr="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),xr=0;xria||(e.current=aa[ia],aa[ia]=null,ia--)}function ua(e,t){ia++,aa[ia]=e.current,e.current=t}var la={},ca=oa(la),fa=oa(!1),da=la;function pa(e,t){var n=e.type.contextTypes;if(!n)return la;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a,i={};for(a in n)i[a]=t[a];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function ha(e){return null!=(e=e.childContextTypes)}function ma(){sa(fa),sa(ca)}function va(e,t,n){if(ca.current!==la)throw Error(o(168));ua(ca,t),ua(fa,n)}function ga(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var i in r=r.getChildContext())if(!(i in e))throw Error(o(108,$(t)||"Unknown",i));return a({},n,r)}function ya(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||la,da=ca.current,ua(ca,e),ua(fa,fa.current),!0}function ba(e,t,n){var r=e.stateNode;if(!r)throw Error(o(169));n?(e=ga(e,t,da),r.__reactInternalMemoizedMergedChildContext=e,sa(fa),sa(ca),ua(ca,e)):sa(fa),ua(fa,n)}var ka=null,wa=null,xa=i.unstable_runWithPriority,Sa=i.unstable_scheduleCallback,_a=i.unstable_cancelCallback,Ea=i.unstable_shouldYield,Ca=i.unstable_requestPaint,Ia=i.unstable_now,Ra=i.unstable_getCurrentPriorityLevel,Da=i.unstable_ImmediatePriority,Aa=i.unstable_UserBlockingPriority,Fa=i.unstable_NormalPriority,Oa=i.unstable_LowPriority,Ta=i.unstable_IdlePriority,Ma={},Pa=void 0!==Ca?Ca:function(){},Na=null,La=null,ja=!1,Ba=Ia(),za=1e4>Ba?Ia:function(){return Ia()-Ba};function Ua(){switch(Ra()){case Da:return 99;case Aa:return 98;case Fa:return 97;case Oa:return 96;case Ta:return 95;default:throw Error(o(332))}}function Ha(e){switch(e){case 99:return Da;case 98:return Aa;case 97:return Fa;case 96:return Oa;case 95:return Ta;default:throw Error(o(332))}}function Wa(e,t){return e=Ha(e),xa(e,t)}function Ka(e,t,n){return e=Ha(e),Sa(e,t,n)}function Va(){if(null!==La){var e=La;La=null,_a(e)}qa()}function qa(){if(!ja&&null!==Na){ja=!0;var e=0;try{var t=Na;Wa(99,(function(){for(;em?(v=f,f=null):v=f.sibling;var g=p(a,f,s[m],u);if(null===g){null===f&&(f=v);break}e&&f&&null===g.alternate&&t(a,f),o=i(g,o,m),null===c?l=g:c.sibling=g,c=g,f=v}if(m===s.length)return n(a,f),l;if(null===f){for(;mv?(g=m,m=null):g=m.sibling;var b=p(a,m,y.value,l);if(null===b){null===m&&(m=g);break}e&&m&&null===b.alternate&&t(a,m),s=i(b,s,v),null===f?c=b:f.sibling=b,f=b,m=g}if(y.done)return n(a,m),c;if(null===m){for(;!y.done;v++,y=u.next())null!==(y=d(a,y.value,l))&&(s=i(y,s,v),null===f?c=y:f.sibling=y,f=y);return c}for(m=r(a,m);!y.done;v++,y=u.next())null!==(y=h(m,a,v,y.value,l))&&(e&&null!==y.alternate&&m.delete(null===y.key?v:y.key),s=i(y,s,v),null===f?c=y:f.sibling=y,f=y);return e&&m.forEach((function(e){return t(a,e)})),c}return function(e,r,i,u){var l="object"==typeof i&&null!==i&&i.type===_&&null===i.key;l&&(i=i.props.children);var c="object"==typeof i&&null!==i;if(c)switch(i.$$typeof){case x:e:{for(c=i.key,l=r;null!==l;){if(l.key===c){switch(l.tag){case 7:if(i.type===_){n(e,l.sibling),(r=a(l,i.props.children)).return=e,e=r;break e}break;default:if(l.elementType===i.type){n(e,l.sibling),(r=a(l,i.props)).ref=ki(e,l,i),r.return=e,e=r;break e}}n(e,l);break}t(e,l),l=l.sibling}i.type===_?((r=Vu(i.props.children,e.mode,u,i.key)).return=e,e=r):((u=Ku(i.type,i.key,i.props,null,e.mode,u)).ref=ki(e,r,i),u.return=e,e=u)}return s(e);case S:e:{for(l=i.key;null!==r;){if(r.key===l){if(4===r.tag&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(e,r.sibling),(r=a(r,i.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=Ju(i,e.mode,u)).return=e,e=r}return s(e)}if("string"==typeof i||"number"==typeof i)return i=""+i,null!==r&&6===r.tag?(n(e,r.sibling),(r=a(r,i)).return=e,e=r):(n(e,r),(r=$u(i,e.mode,u)).return=e,e=r),s(e);if(bi(i))return m(e,r,i,u);if(H(i))return v(e,r,i,u);if(c&&wi(e,i),void 0===i&&!l)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(o(152,$(e.type)||"Component"))}return n(e,r)}}var Si=xi(!0),_i=xi(!1),Ei={},Ci=oa(Ei),Ii=oa(Ei),Ri=oa(Ei);function Di(e){if(e===Ei)throw Error(o(174));return e}function Ai(e,t){switch(ua(Ri,t),ua(Ii,e),ua(Ci,Ei),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:he(null,"");break;default:t=he(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}sa(Ci),ua(Ci,t)}function Fi(){sa(Ci),sa(Ii),sa(Ri)}function Oi(e){Di(Ri.current);var t=Di(Ci.current),n=he(t,e.type);t!==n&&(ua(Ii,e),ua(Ci,n))}function Ti(e){Ii.current===e&&(sa(Ci),sa(Ii))}var Mi=oa(0);function Pi(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Ni=null,Li=null,ji=!1;function Bi(e,t){var n=Uu(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function zi(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);case 13:default:return!1}}function Ui(e){if(ji){var t=Li;if(t){var n=t;if(!zi(e,t)){if(!(t=Vr(n.nextSibling))||!zi(e,t))return e.flags=-1025&e.flags|2,ji=!1,void(Ni=e);Bi(Ni,n)}Ni=e,Li=Vr(t.firstChild)}else e.flags=-1025&e.flags|2,ji=!1,Ni=e}}function Hi(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;Ni=e}function Wi(e){if(e!==Ni)return!1;if(!ji)return Hi(e),ji=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!Ur(t,e.memoizedProps))for(t=Li;t;)Bi(e,t),t=Vr(t.nextSibling);if(Hi(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(o(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Li=Vr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Li=null}}else Li=Ni?Vr(e.stateNode.nextSibling):null;return!0}function Ki(){Li=Ni=null,ji=!1}var Vi=[];function qi(){for(var e=0;ei))throw Error(o(301));i+=1,Xi=Yi=null,t.updateQueue=null,$i.current=Oo,e=n(r,a)}while(eo)}if($i.current=Do,t=null!==Yi&&null!==Yi.next,Qi=0,Xi=Yi=Gi=null,Zi=!1,t)throw Error(o(300));return e}function ao(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===Xi?Gi.memoizedState=Xi=e:Xi=Xi.next=e,Xi}function io(){if(null===Yi){var e=Gi.alternate;e=null!==e?e.memoizedState:null}else e=Yi.next;var t=null===Xi?Gi.memoizedState:Xi.next;if(null!==t)Xi=t,Yi=e;else{if(null===e)throw Error(o(310));e={memoizedState:(Yi=e).memoizedState,baseState:Yi.baseState,baseQueue:Yi.baseQueue,queue:Yi.queue,next:null},null===Xi?Gi.memoizedState=Xi=e:Xi=Xi.next=e}return Xi}function oo(e,t){return"function"==typeof t?t(e):t}function so(e){var t=io(),n=t.queue;if(null===n)throw Error(o(311));n.lastRenderedReducer=e;var r=Yi,a=r.baseQueue,i=n.pending;if(null!==i){if(null!==a){var s=a.next;a.next=i.next,i.next=s}r.baseQueue=a=i,n.pending=null}if(null!==a){a=a.next,r=r.baseState;var u=s=i=null,l=a;do{var c=l.lane;if((Qi&c)===c)null!==u&&(u=u.next={lane:0,action:l.action,eagerReducer:l.eagerReducer,eagerState:l.eagerState,next:null}),r=l.eagerReducer===e?l.eagerState:e(r,l.action);else{var f={lane:c,action:l.action,eagerReducer:l.eagerReducer,eagerState:l.eagerState,next:null};null===u?(s=u=f,i=r):u=u.next=f,Gi.lanes|=c,js|=c}l=l.next}while(null!==l&&l!==a);null===u?i=r:u.next=s,sr(r,t.memoizedState)||(Mo=!0),t.memoizedState=r,t.baseState=i,t.baseQueue=u,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function uo(e){var t=io(),n=t.queue;if(null===n)throw Error(o(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,i=t.memoizedState;if(null!==a){n.pending=null;var s=a=a.next;do{i=e(i,s.action),s=s.next}while(s!==a);sr(i,t.memoizedState)||(Mo=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function lo(e,t,n){var r=t._getVersion;r=r(t._source);var a=t._workInProgressVersionPrimary;if(null!==a?e=a===r:(e=e.mutableReadLanes,(e=(Qi&e)===e)&&(t._workInProgressVersionPrimary=r,Vi.push(t))),e)return n(t._source);throw Vi.push(t),Error(o(350))}function co(e,t,n,r){var a=As;if(null===a)throw Error(o(349));var i=t._getVersion,s=i(t._source),u=$i.current,l=u.useState((function(){return lo(a,t,n)})),c=l[1],f=l[0];l=Xi;var d=e.memoizedState,p=d.refs,h=p.getSnapshot,m=d.source;d=d.subscribe;var v=Gi;return e.memoizedState={refs:p,source:t,subscribe:r},u.useEffect((function(){p.getSnapshot=n,p.setSnapshot=c;var e=i(t._source);if(!sr(s,e)){e=n(t._source),sr(f,e)||(c(e),e=cu(v),a.mutableReadLanes|=e&a.pendingLanes),e=a.mutableReadLanes,a.entangledLanes|=e;for(var r=a.entanglements,o=e;0