PageSourceSearch

https://app.fllite.com/_next/static/chunks/47e070a9-92190ec29b792e72.js

js fllite.com collected 2026-10-05 22:46:00 UTC 121,846 bytes, 101 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[778],{52920:function(e,t,n){/*
2@license
3The following license applies to all parts of this software except as
4documented below.
5
6    Copyright (c) 2016, Twilio, inc.
7    All rights reserved.
8
9    Redistribution and use in source and binary forms, with or without
10    modification, are permitted provided that the following conditions are
11    met:
12
13      1. Redistributions of source code must retain the above copyright
14         notice, this list of conditions and the following disclaimer.
15
16      2. Redistributions in binary form must reproduce the above copyright
17         notice, this list of conditions and the following disclaimer in
18         the documentation and/or other materials provided with the
19         distribution.
20
21      3. Neither the name of Twilio nor the names of its contributors may
22         be used to endorse or promote products derived from this software
23         without specific prior written permission.
24
25    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
26    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
27    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
28    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
29    HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
37This software includes loglevel under the following license.
38
39    Copyright (c) 2013 Tim Perry
40
41    Permission is hereby granted, free of charge, to any person
42    obtaining a copy of this software and associated documentation
43    files (the "Software"), to deal in the Software without
44    restriction, including without limitation the rights to use,
45    copy, modify, merge, publish, distribute, sublicense, and/or sell
46    copies of the Software, and to permit persons to whom the
47    Software is furnished to do so, subject to the following
48    conditions:
49
50    The above copyright notice and this permission notice shall be
51    included in all copies or substantial portions of the Software.
52
53    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
54    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
55    OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
56    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
57    HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
58    WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
59    FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
60    OTHER DEALINGS IN THE SOFTWARE.
61
62This software includes Backoff library under the following license
63
64    Copyright (C) 2012 Mathieu Turcotte
65
66    Permission is hereby granted, free of charge, to any person obtaining a copy of
67    this software and associated documentation files (the "Software"), to deal in
68    the Software without restriction, including without limitation the rights to
69    use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
70    of the Software, and to permit persons to whom the Software is furnished to do
71    so, subject to the following conditions:
72
73    The above copyright notice and this permission notice shall be included in all
74    copies or substantial portions of the Software.
75
76    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
77    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
78    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
79    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
80    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
81    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
82    SOFTWARE.
83
84This software includes Event-to-Promise library under the following license
85
86    Copyright (c) 2014, Julien Fontanet <[email protected]>.
87
88    Permission to use, copy, modify, and/or distribute this software for any purpose
89    with or without fee is hereby granted, provided that the above copyright notice
90    and this permission notice appear in all copies.
91
92    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
93    REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
94    FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
95    INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
96    OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
97    TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
98    THIS SOFTWARE.
99
100*/Object.defineProperty(t,"__esModule",{value:!0}),n(69867),n(66479),n(93801),n(18916),n(25955),n(43201),n(21716);var r,i=n(91461),s=n(53100),a=n(98870),u=n(85297),o=n(68230),c=n(60421),d=n(1147),l=n(26290);n(91560),n(17385),n(4256);var p=n(82841),f=n(67425),h=n(80996),v=n(58194);n(16268);var y=n(78365);n(11063),n(69460),n(60452),n(65845),n(99492);var m=n(79640);n(31002),n(90399),n(95696);var g=n(43681);n(91211),n(44215),n(70309),n(92374),n(87246),n(17125);var k=n(11625);n(21531);var b=n(98022),_=n(70611);n(76464);var w=n(89653);function x(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function I(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}var S=x(i),E=x(s),R=x(a),T=x(u),N=x(o),q=x(c),L=x(d),C=x(l),j=x(p),M=x(f),O=x(y),A=I(m),F=x(g),U=I(b),P=x(_),D=I(w);function B(e,t,n,r){var i,s=arguments.length,a=s<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if(("undefined"==typeof Reflect?"undefined":M.default(Reflect))==="object"&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var u=e.length-1;u>=0;u--)(i=e[u])&&(a=(s<3?i(a):s>3?i(t,n,a):i(t,n))||a);return s>3&&a&&Object.defineProperty(t,n,a),a}function Q(e,t){if(("undefined"==typeof Reflect?"undefined":M.default(Reflect))==="object"&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function W(){}function z(){z.init.call(this)}function K(e){return void 0===e._maxListeners?z.defaultMaxListeners:e._maxListeners}function H(e,t,n,r){if("function"!=typeof n)throw TypeError('"listener" argument must be a function');if((s=e._events)?(s.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),s=e._events),a=s[t]):(s=e._events=new W,e._eventsCount=0),a){if("function"==typeof a?a=s[t]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),!a.warned&&(i=K(e))&&i>0&&a.length>i){a.warned=!0;var i,s,a,u=Error("Possible EventEmitter memory leak detected. "+a.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=a.length,"function"==typeof console.warn?console.warn(u):console.log(u)}}else a=s[t]=n,++e._eventsCount;return e}function V(e,t,n){var r=!1;function i(){e.removeListener(t,i),r||(r=!0,n.apply(e,arguments))}return i.listener=n,i}function J(e){var t=this._events;if(t){var n=t[e];if("function"==typeof n)return 1;if(n)return n.length}return 0}function $(e,t){for(var n=Array(t);t--;)n[t]=e[t];return n}W.prototype=Object.create(null),z.EventEmitter=z,z.usingDomains=!1,z.prototype.domain=void 0,z.prototype._events=void 0,z.prototype._maxListeners=void 0,z.defaultMaxListeners=10,z.init=function(){this.domain=null,z.usingDomains&&r.active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new W,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},z.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},z.prototype.getMaxListeners=function(){return K(this)},z.prototype.emit=function(e){var t,n,r,i,s,a,u,o="error"===e;if(a=this._events)o=o&&null==a.error;else if(!o)return!1;if(u=this.domain,o){if(t=arguments[1],u)t||(t=Error('Uncaught, unspecified "error" event')),t.domainEmitter=this,t.domain=u,t.domainThrown=!1,u.emit("error",t);else if(t instanceof Error)throw t;else{var c=Error('Uncaught, unspecified "error" event. ('+t+")");throw c.context=t,c}return!1}if(!(n=a[e]))return!1;var d="function"==typeof n;switch(r=arguments.length){case 1:!function(e,t,n){if(t)e.call(n);else for(var r=e.length,i=$(e,r),s=0;s<r;++s)i[s].call(n)}(n,d,this);break;case 2:!function(e,t,n,r){if(t)e.call(n,r);else for(var i=e.length,s=$(e,i),a=0;a<i;++a)s[a].call(n,r)}(n,d,this,arguments[1]);break;case 3:!function(e,t,n,r,i){if(t)e.call(n,r,i);else for(var s=e.length,a=$(e,s),u=0;u<s;++u)a[u].call(n,r,i)}(n,d,this,arguments[1],arguments[2]);break;case 4:!function(e,t,n,r,i,s){if(t)e.call(n,r,i,s);else for(var a=e.length,u=$(e,a),o=0;o<a;++o)u[o].call(n,r,i,s)}(n,d,this,arguments[1],arguments[2],arguments[3]);break;default:for(s=1,i=Array(r-1);s<r;s++)i[s-1]=arguments[s];!function(e,t,n,r){if(t)e.apply(n,r);else for(var i=e.length,s=$(e,i),a=0;a<i;++a)s[a].apply(n,r)}(n,d,this,i)}return!0},z.prototype.addListener=function(e,t){return H(this,e,t,!1)},z.prototype.on=z.prototype.addListener,z.prototype.prependListener=function(e,t){return H(this,e,t,!0)},z.prototype.once=function(e,t){if("function"!=typeof t)throw TypeError('"listener" argument must be a function');return this.on(e,V(this,e,t)),this},z.prototype.prependOnceListener=function(e,t){if("function"!=typeof t)throw TypeError('"listener" argument must be a function');return this.prependListener(e,V(this,e,t)),this},z.prototype.removeListener=function(e,t){var n,r,i,s,a;
100if("function"!=typeof t)throw TypeError('"listener" argument must be a function');if(!(r=this._events)||!(n=r[e]))return this;if(n===t||n.listener&&n.listener===t)0==--this._eventsCount?this._events=new W:(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,s=n.length;s-- >0;)if(n[s]===t||n[s].listener&&n[s].listener===t){a=n[s].listener,i=s;break}if(i<0)return this;if(1===n.length){if(n[0]=void 0,0==--this._eventsCount)return this._events=new W,this;delete r[e]}else(function(e,t){for(var n=t,r=n+1,i=e.length;r<i;n+=1,r+=1)e[n]=e[r];e.pop()})(n,i);r.removeListener&&this.emit("removeListener",e,a||t)}return this},z.prototype.off=function(e,t){return this.removeListener(e,t)},z.prototype.removeAllListeners=function(e){if(!(n=this._events))return this;if(!n.removeListener)return 0==arguments.length?(this._events=new W,this._eventsCount=0):n[e]&&(0==--this._eventsCount?this._events=new W:delete n[e]),this;if(0==arguments.length){for(var t,n,r,i=Object.keys(n),s=0;s<i.length;++s)"removeListener"!==(r=i[s])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=new W,this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(t)do this.removeListener(e,t[t.length-1]);while(t[0]);return this},z.prototype.listeners=function(e){var t,n=this._events;return n&&(t=n[e])?"function"==typeof t?[t.listener||t]:function(e){for(var t=Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(t):[]},z.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):J.call(e,t)},z.prototype.listenerCount=J,z.prototype.eventNames=function(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};var G=function(){function e(t){E.default(this,e),this.base=t,this.args=[],this.paths=[]}return R.default(e,[{key:"pathSegment",value:function(e){return this.paths.push(encodeURIComponent(e)),this}},{key:"queryParam",value:function(e,t){return void 0!==t&&this.args.push(encodeURIComponent(e)+"="+encodeURIComponent(t)),this}},{key:"build",value:function(){var e=this.base;return this.paths.length&&(e+="/"+this.paths.join("/")),this.args.length&&(e+="?"+this.args.join("&")),e}}]),e}();function Z(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=L.default(e);return n=t?Reflect.construct(r,arguments,L.default(this).constructor):r.apply(this,arguments),q.default(this,n)}}var X=function(e){N.default(n,e);var t=Z(n);function n(e){var r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return E.default(this,n),(r=t.call(this)).name=r.constructor.name,r.message="".concat(e," (status: ").concat(i,", code: ").concat(s,")"),r.status=i,r.code=s,r}return n}(O.default(Error)),Y=function(e){N.default(n,e);var t=Z(n);function n(e){var r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3?arguments[3]:void 0;return E.default(this,n),(r=t.call(this,e,i,s)).body=a,r}return n}(X);function ee(e){return JSON.parse(JSON.stringify(e))}function et(e){if(!(void 0===e||en(e)))throw new X("Invalid pageSize parameter. Expected a positive integer, was '".concat(e,"'."),400,20007)}function en(e){return!isNaN(parseInt(e))&&isFinite(e)&&e>0}var er=A.getLogger("twilio-sync");function ei(e,t){return["".concat(new Date().toISOString()," Sync ").concat(e,":")].concat(Array.from(t))}var es={setLevel:function(e){er.setLevel(e)},trace:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];er.trace.apply(null,ei("T",t))},debug:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];er.debug.apply(null,ei("D",t))},warn:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];er.warn.apply(null,ei("W",t))},error:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];er.error.apply(null,ei("E",t))}},ea=function(){function e(){var t,n,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E.default(this,e);var i=r.region||"us1",s=r.cdsUri||"https://cds.".concat(i,".twilio.com");this.settings={subscriptionsUri:s+"/v4/Subscriptions",documentsUri:s+"/v3/Documents",listsUri:s+"/v3/Lists",mapsUri:s+"/v3/Maps",streamsUri:s+"/v3/Stream
100s",insightsUri:s+"/v3/Insights",sessionStorageEnabled:(t=r.Sync,n="enableSessionStorage",!t||void 0===t[n]||t[n]),productId:r.productId}}return R.default(e,[{key:"subscriptionsUri",get:function(){return this.settings.subscriptionsUri}},{key:"documentsUri",get:function(){return this.settings.documentsUri}},{key:"listsUri",get:function(){return this.settings.listsUri}},{key:"mapsUri",get:function(){return this.settings.mapsUri}},{key:"streamsUri",get:function(){return this.settings.streamsUri}},{key:"insightsUri",get:function(){return this.settings.insightsUri}},{key:"backoffConfig",get:function(){return this.settings.backoffConfig||{}}},{key:"sessionStorageEnabled",get:function(){return this.settings.sessionStorageEnabled}},{key:"productId",get:function(){return this.settings.productId}}]),e}();function eu(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return eo(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return eo(e,void 0)}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){u=!0,s=e},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw s}}}}function eo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var ec=function(){function e(t){E.default(this,e),this.localObject=t,this.pendingCorrelationId=null,this.pendingAction=null,this.established=!1,this.retryCount=0}return R.default(e,[{key:"sid",get:function(){return this.localObject.sid}},{key:"type",get:function(){return this.localObject.type}},{key:"lastEventId",get:function(){return this.localObject.lastEventId}},{key:"indexName",get:function(){return this.localObject.indexName}},{key:"queryString",get:function(){return this.localObject.queryString}},{key:"isEstablished",get:function(){return this.established}},{key:"update",value:function(e,t){this.localObject._update(e,t)}},{key:"updatePending",value:function(e,t){this.pendingAction=e,this.pendingCorrelationId=t}},{key:"reset",value:function(){this.updatePending(null,null),this.retryCount=0,this.established=!1,this.setSubscriptionState("none")}},{key:"markAsFailed",value:function(e){this.rejectedWithError=e.error,this.updatePending(null,null),this.localObject.reportFailure(new X("Failed to subscribe on service events: ".concat(e.error.message),e.error.status,e.error.code))}},{key:"complete",value:function(e){this.updatePending(null,null),this.established=!0,this.localObject._advanceLastEventId(e)}},{key:"setSubscriptionState",value:function(e){this.localObject._setSubscriptionState(e)}}]),e}(),ed=function(){var e;function t(e){var n=this;E.default(this,t),C.default(this,"isConnected",!1),C.default(this,"maxBatchSize",100),C.default(this,"subscriptionTtlTimer",null),C.default(this,"pendingPokeReason",null),this.services=e,this.subscriptions=new Map,this.persisted=new Map,this.latestPokeResponseArrivalTimestampByCorrelationId=new Map,this.backoff=k.Backoff.exponential(Object.assign({randomisationFactor:.2,initialDelay:100,maxDelay:12e4},this.services.config.backoffConfig)),this.backoff.on("ready",function(){var e=n.getSubscriptionUpdateBatch(),t=e.action,r=e.subscriptions;t?n.applyNewSubscriptionUpdateBatch(t,r):(n.backoff.reset(),es.debug("All subscriptions resolved."))})}return R.default(t,[{key:"getSubscriptionUpdateBatch",value:function(){function e(e,t,n,r){var i,s=[],a=eu(e);try{for(a.s();!(i=a.n()).done;){var u=F.default(i.value,2),o=u[0],c=u[1];if(!t.get(o)&&n!==c.pendingAction&&!c.rejectedWithError&&(s.push(c),r&&s.length>=r))break}}catch(e){a.e(e)}finally{a.f()}return s}var t=e(this.subscriptions,this.persisted,"establish",this.maxBatchSize);if(t.length>0)return{action:"establish",subscriptions:t};var n=e(this.persisted,this.subscriptions,"cancel",this.maxBatchSize);return n.length>0?{action:"cancel",subscriptions:n}:{action:null,subscriptions:null}}},{key:"persist",value:function(){this.backoff.backoff()}},{key:"applyNewSubscriptionUpdateBatch",value:(e=S.default(j.default.mark(function e(t,n){var r,i,s,a,u,o,c,d,l,p,f,h,y=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.isConnected){e.next=4;break}return es.debug("Twilsock connection (required for subscription) not ready; waiting…"),this.backoff.reset(),e.abrupt("return");case 4:n=this.processLocalActions(t,n),r=new Date().getTime(),i=eu(n);try{for(i.s();!(s=i.n()).done;)a=s.value,this.recordActionAttemptOn(a,t,r)}catch(e){i.e(e)}finally{i.f()}return u=this.pendingPokeReason,this.pendingPokeReason=null,e.prev=10,e.next=13,this.request(t,r,u,n);case 13:!isNaN(parseInt(c=(o=e.sent).body.max_batch_size))&&isFinite(c)&&c>0&&(this.maxBatchSize=c),!this.subscriptionTtlTimer&&!isNaN(parseFloat(d=o.body.ttl_in_s))&&isFinite(d)&&d>0&&(this.subscriptionTtlTimer=setTimeout(function(){return y.onSubscriptionTtlElapsed()},1e3*d)),"establish"===t&&(!isNaN(parseFloat(l=o.body.estimated_delivery_in_ms))&&isFinite(l)&&l>0?setTimeout(function(){return y.verifyPokeDelivery(r,l,n)},l):es.error("Invalid timeout: ".concat(l)),n.filter(function(e){return e.pendingCorrelationId===r}
100).forEach(function(e){return e.setSubscriptionState("response_in_flight")})),this.backoff.reset(),e.next=26;break;case 21:e.prev=21,e.t0=e.catch(10),p=eu(n);try{for(p.s();!(f=p.n()).done;)h=f.value,this.recordActionFailureOn(h,t)}catch(e){p.e(e)}finally{p.f()}e.t0 instanceof v.TransportUnavailableError?(es.debug("Twilsock connection (required for subscription) not ready (c:".concat(r,"); waiting…")),this.backoff.reset()):(es.debug("Failed an attempt to ".concat(t," subscriptions (c:").concat(r,"); retrying"),e.t0),this.persist());case 26:case"end":return e.stop()}},e,this,[[10,21]])})),function(t,n){return e.apply(this,arguments)})},{key:"verifyPokeDelivery",value:function(e,t,n){var r=this,i=this.latestPokeResponseArrivalTimestampByCorrelationId.get(e),s=i?new Date().getTime()-i:t;s>=t?(n.filter(function(t){return t.pendingCorrelationId===e}).forEach(function(e){e.updatePending(null,null),e.retryCount++,r.persisted.delete(e.sid)}),this.persist(),this.latestPokeResponseArrivalTimestampByCorrelationId.delete(e)):setTimeout(function(){return r.verifyPokeDelivery(e,t,n)},t-s)}},{key:"processLocalActions",value:function(e,t){return"cancel"===e?t.filter(function(e){return!e.rejectedWithError}):t}},{key:"recordActionAttemptOn",value:function(e,t,n){if(e.setSubscriptionState("request_in_flight"),"establish"===t)this.persisted.set(e.sid,e),e.updatePending(t,n);else{var r=this.persisted.get(e.sid);r&&r.updatePending(t,n)}}},{key:"recordActionFailureOn",value:function(e,t){e.setSubscriptionState("none"),e.updatePending(null,null),"establish"===t&&this.persisted.delete(e.sid)}},{key:"request",value:function(e,t,n,r){var i=r.map(function(t){return{object_sid:t.sid,object_type:t.type,last_event_id:"establish"===e?t.lastEventId:void 0,index_name:"establish"===e?t.indexName:void 0,query_string:"establish"===e?t.queryString:void 0}}),s=r.filter(function(e){return e.retryCount>0}).length;es.debug("Attempting '".concat(e,"' request (c:").concat(t,"):"),i);var a={event_protocol_version:4,action:e,correlation_id:t,retried_requests:s,ttl_in_s:-1,requests:i};return"ttl"===n&&(a.reason=n),this.services.network.post(this.services.config.subscriptionsUri,a)}},{key:"add",value:function(e,t){es.debug("Establishing intent to subscribe to ".concat(e));var n=this.subscriptions.get(e);n&&t&&n.lastEventId===t.lastEventId||(this.persisted.delete(e),this.subscriptions.set(e,new ec(t)),this.persist())}},{key:"remove",value:function(e){es.debug("Establishing intent to unsubscribe from ".concat(e)),this.subscriptions.delete(e)&&this.persist()}},{key:"acceptMessage",value:function(e,t){es.trace("Subscriptions received",e);var n=e.event_type,r=void 0!==e.events?e.events:[e.event],i=e.correlation_id;i&&this.latestPokeResponseArrivalTimestampByCorrelationId.set(i,new Date().getTime());var s,a=eu(r);try{for(a.s();!(s=a.n()).done;){var u=s.value,o=void 0;switch(e.event_type){case"subscription_established":this.applySubscriptionEstablishedMessage(u,i);break;case"subscription_canceled":this.applySubscriptionCancelledMessage(u,i);break;case"subscription_failed":this.applySubscriptionFailedMessage(u,i);break;case(o=n.match(/^(?:map|list|document|stream|live_query)_/)||{}).input:var c=void 0;switch(o[0]){case"map_":c=u.map_sid;break;case"list_":c=u.list_sid;break;case"document_":c=u.document_sid;break;case"stream_":c=u.stream_sid;break;case"live_query_":c=u.query_id,t=!1,!0===e.strictly_ordered&&(t=!0);break;default:c=void 0}this.applyEventToSubscribedEntity(c,u,n,t);break;default:es.debug("Dropping unknown message type ".concat(n))}}}catch(e){a.e(e)}finally{a.f()}}},{key:"applySubscriptionEstablishedMessage",value:function(e,t){var n=e.object_sid,r=this.persisted.get(e.object_sid);r&&r.pendingCorrelationId===t?"interrupted"===e.replay_status?(es.debug("Event Replay for subscription to ".concat(n," (c:").concat(t,") interrupted; continuing eagerly.")),r.updatePending(null,null),this.persisted.delete(r.sid),this.backoff.reset()):"completed"===e.replay_status&&(es.debug("Event Replay for subscription to ".concat(n," (c:").concat(t,") completed. Subscription is ready.")),r.complete(e.last_event_id),this.persisted.set(e.object_sid,r),r.setSubscriptionState("established"),this.backoff.reset()):es.debug("Late message for ".concat(e.object_sid," (c:").concat(t,") dropped.")),this.persist()}},{key:"applySubscriptionCancelledMessage",value:function(e,t){var n=this.persisted.get(e.object_sid);n&&n.pendingCorrelationId===t?(n.updatePending(null,null),n.setSubscriptionState("none"),this.persisted.delete(e.object_sid)):es.debug("Late message for ".concat(e.object_sid," (c:").concat(t,") dropped.")),this.persist()}},{key:"applySubscriptionFailedMessage",value:function(e,t){var n=e.object_sid,r=this.subscriptions.get(n),i=this.persisted.get(n);r&&i?i.pendingCorrelationId===t&&(es.error("Failed to subscribe on ".concat(i.sid),e.error),i.markAsFailed(e),i.setSubscriptionState("none")):!r&&i&&(this.persisted.delete(n),i.setSubscriptionState("none")),this.persist()}},{key:"applyEventToSubscribedEntity",value:function(e,t,n,r){var i;if(e){r=r||(i=this.persisted.get(e))&&i.isEstablished;var s=this.subscriptions.get(e);s?(t.type=n,s.update(t,r)):es.debug("Message dropped for SID '".concat(e,"', for which there is no subscription."))}}},{key:"onConnectionStateChanged",value:function(e){this.isConnected=e,e&&this.poke("reconnect")}},{key:"onSubscriptionTtlElapsed",value:function(){this.isConnected&&this.poke("ttl")}},{key:"poke",value:function(e){es.debug("Triggering event replay for all subscriptions, reason=".concat(e)),this.pendingPokeReason=e,this.subscriptionTtlTimer&&(clearTimeout(this.subscriptionTtlTimer),this.subscriptionTtlTimer=null);var t,n=[],r=eu(this.persisted.values());try{for(r.s();!(t=r.n()).done;){var i=t.value;i.reset(),i.rejectedWithError&&n.push(i)}}catch(e){r.e(e)}finally{r.f()}this.persisted.clear();for(var s=0;s<n.length;s++){var a=n[s];this.persisted.set(a.sid,a)}this.persist()}},{key:"shutdown",value:function(){this.backoff.reset(),this.subscriptions.clear()}}]),t}();function el(e){if(e.body&&e.body.message)return e.body.message;switch(e.status){case 429:return"Throttled by server";case 404:return"Not found from server";default:return"Error from server"}}function ep(e){return e.body?e.body.code:0}function ef(e){return 409===e.status?new Y(el(e),e.status,ep(e),e.body):e.status?new X(el(e),e.status,ep(e)):e instanceof v.TransportUnavailableError?e:new X(e.message,0,0)}var eh=function(){function e(t,n,r){E.default(this,e),this.clientInfo=t,this.config=n,this.transport=r}return R.default(e,[{key:"createHeaders",value:function(){return{"Content-Type":"application/json","Twilio-Sync-Client-Info":JSON.stringify(this.clientInfo),"Twilio-Request-Id":"RQ"+U.v4().replace(/-/g,"")}}},{key:"backoffConfig",value:function(){return Object.assign({min:4e3,max:6e4,maxAttemptsTime:9e4,randomness:.2},this.config.backoffConfig)}},{key:"executeWithRetry",value:function(e){var t=this,n=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return new Promise(function(r,i){var s=[502,503,504];n&&s.push(429);var a=new k.Retrier(t.backoffConfig());a.on("attempt",function(){e().then(function(e){return a.succeeded(e)}).catch(function(e){if(s.includes(e.status)){var t=parseInt(e.headers?e.headers["Retry-After"]:null);a.failed(ef(e),isNaN(t)?null:1e3*t)}else"Twilsock disconnected"===e.message?a.failed(ef(e)):(a.removeAllListeners(),a.cancel(),i(ef(e)))})}),a.on("succeeded",function(e){r(e)}),a.on("cancelled",function(e){return i(ef(e))}),a.on("failed",function(e){return i(ef(e))}),a.start()})}},{key:"get",value:function(e){var t=this,n=this.createHeaders();return es.debug("GET",e,"ID:",n["Twilio-Request-Id"]),this.executeWithRetry(function(){return t.transport.get(e,n,t.config.productId)},!0)}},{key:"post",value:function(e,t,n){var r=this,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=this.createHeaders();return null!=n&&(s["If-Match"]=n),es.debug("POST",e,"ID:",s["Twilio-Request-Id"]),this.executeWithRetry(function(){return r.transport.post(e,s,t,r.config.productId)},i)}},{key:"put",value:function(e,t,n){var r=this,i=this.createHeaders();return null!=n&&(i["If-Match"]=n),es.debug("PUT",e,"ID:",i["Twilio-Request-Id"]),this.executeWithRetry(function(){return r.transport.put(e,i,t,r.config.productId)},!1)}},{key:"delete",value:function(e){var t=this,n=this.createHeaders();return es.debug("DELETE",e,"ID:",n["Twilio-Request-Id"]),this.executeWithRetry(function(){return t.transport.delete(e,n,t.config.productId)},!1)}}]),e}(),ev=function(){function e(t,n){E.default(this,e),this.config=t,this.storageId=null;try{this.storage=n||sessionStorage}catch(e){}}return R.default(e,[{key:"storageKey",value:function(e,t){return"".concat(this.storageId,"::").concat(e,"::").concat(t)}},{key:"isReady",get:function(){return this.config.sessionStorageEnabled&&!!this.storageId}},{key:"updateStorageId",value:function(e){this.storageId=e}},{key:"store",value:function(e,t,n){return this.isReady?this._store(this.storageKey(e,t),n):null}},{key:"read",value:function(e,t){return this.isReady?this._read(this.storageKey(e,t)):null}},{key:"remove",value:function(e,t,n){if(!this.isReady)return null;try{this.storage.removeItem(this.storageKey(e,t)),n&&this.storage.removeItem(this.storageKey(e,n))}catch(e){}}},{key:"update",value:function(e,t,n,r){if(!this.isReady)return null;this._apply(this.storageKey(e,t),r),n&&this._apply(this.storageKey(e,n),r)}},{key:"_store",value:function(e,t){try{this.storage.setItem(e,JSON.stringify(t))}catch(e){}}},{key:"_read",value:function(e){try{var t=this.storage.getItem(e);if(t)return JSON.parse(t)}catch(e){}return null}},{key:"_apply",value:function(e,t){var n=this._read(e);if(!n)return!1;this._store(e,Object.assign(n,t))}}]),e}();function ey(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var em=function(){function e(t,n){E.default(this,e),this.services=t,this.removalHandler=n,this.subscriptionState="none",this._attachedListeners=new Map}return R.default(e,[{key:"_advanceLastEventId",value:function(e,t){}},{key:"reportFailure",value:function(e){404===e.status?this.onRemoved(!1):this.broadcastEventToListeners("failure",e)}},{key:"_subscribe",value:function(){this.services.router._subscribe(this.sid,this)}},{key:"_unsubscribe",value:function(){this.services.router._unsubscribe(this.sid)}},{key:"_setSubscriptionState",value:function(e){this.subscriptionState=e,this.broadcastEventToListeners("_subscriptionStateChanged",e)}},{key:"close",value:function(){this._unsubscribe(),null!=this.removalHandler&&this.removalHandler(this.type,this.sid,this.uniqueName)}},{key:"attach",value:function(e){var t=e.listenerUuid;this._attachedListeners.get(t)||(this._attachedListeners.size||this._subscribe(),this._attachedListeners.set(t,e))}},{key:"detach",value:function(e){this._attachedListeners.delete(e),this._attachedListeners.size||this.close()}},{key:"broadcastEventToListeners",value:function(e,t){var n,r=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];
100if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return ey(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ey(e,void 0)}}(e))){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){u=!0,s=e},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw s}}}}(this._attachedListeners.values());try{for(r.s();!(n=r.n()).done;)n.value.emit(e,t)}catch(e){r.e(e)}finally{r.f()}}}]),e}(),eg=function(){function e(t){E.default(this,e),C.default(this,"queuedRequests",[]),C.default(this,"isRequestInFlight",!1),this.inputMergingFunction=t}return R.default(e,[{key:"add",value:function(e,t){var n=this,r=new Promise(function(r,i){return n.queuedRequests.push({input:e,requestFunction:t,resolve:r,reject:i})});return this.wakeupQueue(),r}},{key:"squashAndAdd",value:function(e,t){var n,r=this.queuedRequests;this.queuedRequests=[],r.length>0?(n=r.map(function(e){return e.input}).reduce(this.inputMergingFunction),n=this.inputMergingFunction(n,e)):n=e;var i=this.add(n,t);return r.forEach(function(e){return i.then(e.resolve,e.reject)}),i}},{key:"isEmpty",value:function(){return 0===this.queuedRequests.length&&!this.isRequestInFlight}},{key:"wakeupQueue",value:function(){var e=this;if(0!==this.queuedRequests.length&&!this.isRequestInFlight){var t=this.queuedRequests.shift();this.isRequestInFlight=!0,t.requestFunction(t.input).then(t.resolve,t.reject).then(function(t){e.isRequestInFlight=!1,e.wakeupQueue()})}}}]),e}(),ek=function(){var e,t,n;function r(e){E.default(this,r),C.default(this,"queueByNamespaceKey",new Map),this.inputReducer=e}return R.default(r,[{key:"add",value:(e=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.invokeQueueMethod(t,function(e){return e.add(n,r)}));case 1:case"end":return e.stop()}},e,this)})),function(t,n,r){return e.apply(this,arguments)})},{key:"squashAndAdd",value:(t=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.invokeQueueMethod(t,function(e){return e.squashAndAdd(n,r)}));case 1:case"end":return e.stop()}},e,this)})),function(e,n,r){return t.apply(this,arguments)})},{key:"invokeQueueMethod",value:(n=S.default(j.default.mark(function e(t,n){var r;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.queueByNamespaceKey.has(t)||this.queueByNamespaceKey.set(t,new eg(this.inputReducer)),r=n(this.queueByNamespaceKey.get(t)),this.queueByNamespaceKey.get(t).isEmpty()&&this.queueByNamespaceKey.delete(t),e.abrupt("return",r);case 5:case"end":return e.stop()}},e,this)})),function(e,t){return n.apply(this,arguments)})}]),r}(),eb=function(e){N.default(r,e);var t,n=(t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}(),function(){var e,n=L.default(r);return e=t?Reflect.construct(n,arguments,L.default(this).constructor):n.apply(this,arguments),q.default(this,e)});function r(){var e;return E.default(this,r),(e=n.call(this)).closed=!1,e.uuid=b.v4(),e}return R.default(r,[{key:"listenerUuid",get:function(){return this.uuid}},{key:"close",value:function(){this.removeAllListeners(),this.closed=!0}},{key:"ensureNotClosed",value:function(){if(this.closed)throw Error("Invalid operation on closed object")}}]),r}(z);function e_(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=L.default(e);return n=t?Reflect.construct(r,arguments,L.default(this).constructor):r.apply(this,arguments),q.default(this,n)}}var ew=function(e){N.default(l,e);var t,n,r,i,s,a,u,o,c,d=e_(l);function l(e,t,n){var r;return E.default(this,l),r=d.call(this,e,n),C.default(T.default(r),"isDeleted",!1),r.updateMergingQueue=new eg(function(e,t){return"number"==typeof t.ttl?{ttl:t.ttl}:e}),r.descriptor=t,r.descriptor.data=r.descriptor.data||{},r.descriptor.date_updated=new Date(r.descriptor.date_updated),r}return R.default(l,[{key:"uri",get:function(){return this.descriptor.url}},{key:"revision",get:function(){return this.descriptor.revision}},{key:"lastEventId",get:function(){return this.descriptor.last_event_id}},{key:"dateExpires",get:function(){return this.descriptor.date_expires}},{key:"type",get:function(){return"document"}},{key:"indexName",get:function(){}},{key:"queryString",get:function(){}},{key:"sid",get:function(){return this.descriptor.sid}},{key:"data",get:function(){return this.descriptor.data}},{key:"dateUpdated",get:function(){return this.descriptor.date_updated}},{key:"uniqueName",get:function(){return this.descriptor.unique_name||null}},{key:"_update",value:function(e){switch(e.date_created=new Date(e.date_created),e.type){case"document_updated":if(e.id<=this.lastEventId){es.trace("Document update skipped, current:",this.lastEventId,", remote:",e.id);break}var t=void 0!==this.descriptor.data?ee(this.descriptor.data):null;this.descriptor.last_event_id=e.id,this.descriptor.revision=e.document_revision,this.descriptor.date_updated=e.date_created,this.descriptor.data=e.document_data,this.broadcastEventToListeners("updated",{data:e.document_data,isLocal:!1,previousData:t}
100),this.services.storage.update(this.type,this.sid,this.uniqueName,{last_event_id:e.id,revision:e.document_revision,date_updated:e.date_created,data:e.document_data});break;case"document_removed":this.onRemoved(!1)}}},{key:"set",value:(t=S.default(j.default.mark(function e(t,n){var r,i=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=n||{},e.abrupt("return",this.updateMergingQueue.squashAndAdd(r,function(e){return i._setUnconditionally(t,e.ttl)}));case 2:case"end":return e.stop()}},e,this)})),function(e,n){return t.apply(this,arguments)})},{key:"mutate",value:(n=S.default(j.default.mark(function e(t,n){var r,i=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=n||{},e.abrupt("return",this.updateMergingQueue.add(r,function(e){return i._setWithIfMatch(t,e.ttl)}));case 2:case"end":return e.stop()}},e,this)})),function(e,t){return n.apply(this,arguments)})},{key:"update",value:(r=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mutate(function(e){return Object.assign(e,t)},n));case 1:case"end":return e.stop()}},e,this)})),function(e,t){return r.apply(this,arguments)})},{key:"setTtl",value:(i=S.default(j.default.mark(function e(t){var n;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._postUpdateToServer({ttl:t});case 2:n=e.sent,this.descriptor.date_expires=n.date_expires;case 4:case"end":return e.stop()}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"_setUnconditionally",value:(s=S.default(j.default.mark(function e(t,n){var r;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._postUpdateToServer({data:t,revision:void 0,ttl:n});case 2:return r=e.sent,this._handleSuccessfulUpdateResult(r),e.abrupt("return",this.descriptor.data);case 5:case"end":return e.stop()}},e,this)})),function(e,t){return s.apply(this,arguments)})},{key:"_setWithIfMatch",value:(a=S.default(j.default.mark(function e(t,n){var r,i,s;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=t(ee(this.descriptor.data)))){e.next=22;break}return i=this.revision,e.prev=3,e.next=6,this._postUpdateToServer({data:r,revision:i,ttl:n});case 6:return s=e.sent,this._handleSuccessfulUpdateResult(s),e.abrupt("return",this.descriptor.data);case 11:if(e.prev=11,e.t0=e.catch(3),412!==e.t0.status){e.next=19;break}return e.next=16,this._softSync();case 16:return e.abrupt("return",this._setWithIfMatch(t));case 19:throw e.t0;case 20:e.next=23;break;case 22:return e.abrupt("return",this.descriptor.data);case 23:case"end":return e.stop()}},e,this,[[3,11]])})),function(e,t){return a.apply(this,arguments)})},{key:"_handleSuccessfulUpdateResult",value:function(e){if(!(e.last_event_id<=this.descriptor.last_event_id)){var t=void 0!==this.descriptor.data?ee(this.descriptor.data):null;this.descriptor.revision=e.revision,this.descriptor.data=e.data,this.descriptor.last_event_id=e.last_event_id,this.descriptor.date_expires=e.date_expires,this.descriptor.date_updated=new Date(e.date_updated),this.services.storage.update(this.type,this.sid,this.uniqueName,{last_event_id:e.last_event_id,revision:e.revision,date_updated:e.date_updated,data:e.data}),this.broadcastEventToListeners("updated",{data:this.descriptor.data,isLocal:!0,previousData:t})}}},{key:"_postUpdateToServer",value:(u=S.default(j.default.mark(function e(t){var n,r,i;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.isDeleted){e.next=17;break}return n={data:t.data},void 0!==t.ttl&&(n.ttl=t.ttl),r=t.revision,e.prev=4,e.next=7,this.services.network.post(this.uri,n,r);case 7:return i=e.sent,e.abrupt("return",{revision:i.body.revision,data:t.data,last_event_id:i.body.last_event_id,date_updated:i.body.date_updated,date_expires:i.body.date_expires});case 11:throw e.prev=11,e.t0=e.catch(4),404===e.t0.status&&this.onRemoved(!1),e.t0;case 15:e.next=18;break;case 17:return e.abrupt("return",Promise.reject(new X("The Document has been removed",404,54100)));case 18:case"end":return e.stop()}},e,this,[[4,11]])})),function(e){return u.apply(this,arguments)})},{key:"_softSync",value:(o=S.default(j.default.mark(function e(){var t=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.services.network.get(this.uri).then(function(e){var n={type:"document_updated",id:e.body.last_event_id,document_revision:e.body.revision,document_data:e.body.data,date_created:e.body.date_updated};return t._update(n),t}).catch(function(e){404===e.status?t.onRemoved(!1):es.error("Can't get updates for ".concat(t.sid,":"),e)}));case 1:case"end":return e.stop()}},e,this)})),function(){return o.apply(this,arguments)})},{key:"onRemoved",value:function(e){if(!this.isDeleted){var t=void 0!==this.descriptor.data?ee(this.descriptor.data):null;this.isDeleted=!0,this._unsubscribe(),this.removalHandler(this.type,this.sid,this.uniqueName),this.broadcastEventToListeners("removed",{isLocal:e,previousData:t})}}},{key:"removeDocument",value:(c=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.isDeleted){e.next=6;break}return e.next=3,this.services.network.delete(this.uri);case 3:this.onRemoved(!0),e.next=7;break;case 6:return e.abrupt("return",Promise.reject(new X("The Document has been removed",404,54100)));case 7:case"end":return e.stop()}},e,this)})),function(){return c.apply(this,arguments)})}],[{key:"type",get:function(){return"document"}}]),l}(em),ex=function(e){N.default(u,e);var t,n,r,i,s,a=e_(u);function u(e){var t;return E.default(this,u),(t=a.call(this)).syncDocumentImpl=e,t.syncDocumentImpl.attach(T.default(t)),t}return R.default(u,[{key:"uri",get:function(){return this.syncDocumentImpl.uri}},{key:"revision",get:function(){return this.syncDocumentImpl.revision}},{key:"lastEventId",get:function(){return this.syncDocumentImpl.lastEventId}},{key:"dateExpires",get:function(){return this.syncDocumentImpl.dateExpires}},{key:"type",get:function(){return ew.type}},{key:"sid",get:function(){return this.syncDocumentImpl.sid}},{key:"data",get:function(){return this.syncDocumentImpl.data}},{key:"dateUpdated",get:function(){return this.syncDocumentImpl.dateUpdated}},{key:"uniqueName",get:function(){return this.syncDocumentImpl.uniqueName}},{key:"set",value:(t=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncDocumentImpl.set(t,n));case 2:case"end":return e.stop()}},e,this)})),function(e,n){return t.apply(this,arguments)})},{key:"mutate",value:(n=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncDocumentImpl.mutate(t,n));case 2:case"end":return e.stop()}},e,this)})),function(e,t){return n.apply(this,arguments)})},{key:"update",value:(r=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncDocumentImpl.update(t,n));case 2:case"end":return e.stop()}},e,this)})),function(e,t){return r.apply(this,arguments)})},{key:"setTtl",value:(i=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncDocumentImpl.setTtl(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"removeDocument",value:(s=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncDocumentImpl.removeDocument());case 2:case"end":return e.stop()}},e,this)})),function(){return s.apply(this,arguments)})},{key:"close",value:function(){P.default(L.default(u.prototype),"close",this).call(this),this.syncDocumentImpl.detach(this.listenerUuid)}}],[{key:"type",get:function(){return ew.type}}]),u}(eb);C.default(ex,"removed","removed"),C.default(ex,"updated","updated"),B([h.validateTypesAsync(h.pureObject,["undefined",h.objectSchema("document metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object,Object]),Q("design:returntype",Promise)],ex.prototype,"set",null),B([h.validateTypesAsync("function",["undefined",h.objectSchema("document metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Function,Object]),Q("design:returntype",Promise)],ex.prototype,"mutate",null),B([h.validateTypesAsync(h.pureObject,["undefined",h.objectSchema("document metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object,Object]),Q("design:returntype",Promise)],ex.prototype,"update",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],ex.prototype,"setTtl",null);var eI=function(){function e(t){E.default(this,e),this.descriptor=t}return R.default(e,[{key:"uri",get:function(){return this.descriptor.uri}},{key:"revision",get:function(){return this.descriptor.revision}},{key:"lastEventId",get:function(){return this.descriptor.lastEventId}},{key:"dateUpdated",get:function(){return this.descriptor.dateUpdated}},{key:"dateExpires",get:function(){return this.descriptor.dateExpires}},{key:"index",get:function(){return this.descriptor.index}},{key:"data",get:function(){return this.descriptor.data}},{key:"update",value:function(e,t,n,r){return this.descriptor.lastEventId=e,this.descriptor.revision=t,this.descriptor.data=n,this.descriptor.dateUpdated=r,this}},{key:"updateDateExpires",value:function(e){this.descriptor.dateExpires=e}}]),e}(),eS=function(){var e,t;function n(e,t,r,i){E.default(this,n),this.prevToken=r,this.nextToken=i,this.items=e,this.source=t}return R.default(n,[{key:"hasNextPage",get:function(){return!!this.nextToken}},{key:"hasPrevPage",get:function(){return!!this.prevToken}},{key:"nextPage",value:(e=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.hasNextPage){e.next=2;break}throw Error("No next page");case 2:return e.abrupt("return",this.source(this.nextToken));case 3:case"end":return e.stop()}},e,this)})),function(){return e.apply(this,arguments)})},{key:"prevPage",value:(t=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.hasPrevPage){e.next=2;break}throw Error("No previous page");case 2:return e.abrupt("return",this.source(this.prevToken));case 3:case"end":return e.stop()}},e,this)})),function(){return t.apply(this,arguments)})}]),n}();function eE(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var eR=function(){function e(t,n){E.default(this,e),this.balanceFactor=0,this.key=t,this.value=n,this.parent=null,this.left=null,this.right=null}return R.default(e,[{key:"isRoot",get:function(){return null===this.parent}},{key:"isLeaf",get:function(){return null===this.left&&null===this.right}},{key:"isLeftChild",get:function(){return this.parent.left===this}},{key:"update",value:function(e){this.value=e}},{key:"replace",value:function(e,t){e&&(this.left===t?this.left=t:this.right===t&&(this.right=t))}}]),e}(),eT=function(){function e(t,n){E.default(this,e),this.isLessThan=t||function(e,t){return e<t},this.isEqual=n||function(e,t){return e===t},this.root=null,this.count=null}return R.default(e,[{key:"size",get:function(){return this.count}},{key:"clear",value:function(){this.root=null,this.count=0}},{key:"set",value:function(e,t){var n=this.getNode(e);n?n.update(t):this.insert(e,t)}},{key:"insert",value:function(e,t){var n=new eR(e,t);if(this.count++,!this.root){this.root=n;return}for(var r=this.root;;)if(this.isLessThan(e,r.key)){if(r.left)r=r.left;else{r.left=n;break}}else if(r.right)r=r.right;else{r.right=n;break}for(n.parent=r,r=n;r.parent;){var i=r.parent,s=i.balanceFactor;if(r.isLeftChild?i.balanceFactor++:i.balanceFactor--,Math.abs(i.balanceFactor)<Math.abs(s))break;if(i.balanceFactor<-1||i.balanceFactor>1){this.rebalance(i);break}r=i}}},{key:"get",value:function(e){for(var t=this.root;t;){if(this.isEqual(e,t.key))return t.value;t=this.isLessThan(e,t.key)?t.left:t.right}return null}},{key:"delete",value:function(e){var t=this.getNode(e);if(!t||t.key!==e)return null;var n=t.parent,r=t.left,i=t.right;if(!!r!=!!i){var s=r||i;n||s?n&&!s?this.root=s:(n.replace(t,null),this.rebalance(n)):this.root=null}else{for(var a=t.left;
100a.right;)a=a.right;if(t.left===a)t.isRoot?(this.root=a,a.parent=null):(t.isLeftChild?t.parent.left=a:t.parent.right=a,a.parent=t.parent),a.right=t.right,a.right.parent=a,a.balanceFactor=t.balanceFactor,t={parent:a,isLeftChild:!0};else{var u=a.parent,o=a.left;u.right=o,o&&(o.parent=u),t.isRoot?(this.root=a,a.parent=null):(t.isLeftChild?t.parent.left=a:t.parent.right=a,a.parent=t.parent),a.right=t.right,a.right.parent=a,a.left=t.left,a.left.parent=a,a.balanceFactor=t.balanceFactor,t={parent:u,isLeftChild:!1}}}for(this.count--;t.parent;){var c=t.parent,d=c.balanceFactor;if(t.isLeftChild?c.balanceFactor-=1:c.balanceFactor+=1,Math.abs(c.balanceFactor)>Math.abs(d)){if(c.balanceFactor<-1||c.balanceFactor>1){if(this.rebalance(c),0===c.parent.balanceFactor)t=c.parent;else break}else break}else t=c}return null}},{key:"getNode",value:function(e){for(var t=this.root;t;){if(this.isEqual(e,t.key))return t;t=this.isLessThan(e,t.key)?t.left:t.right}return null}},{key:"rebalance",value:function(e){e.balanceFactor<0?(e.right.balanceFactor>0&&this.rotateRight(e.right),this.rotateLeft(e)):e.balanceFactor>0&&(e.left.balanceFactor<0&&this.rotateLeft(e.left),this.rotateRight(e))}},{key:"rotateLeft",value:function(e){var t=e.right;e.right=t.left,null!==t.left&&(t.left.parent=e),t.parent=e.parent,null===t.parent?this.root=t:e.isLeftChild?t.parent.left=t:t.parent.right=t,t.left=e,e.parent=t,e.balanceFactor=e.balanceFactor+1-Math.min(t.balanceFactor,0),t.balanceFactor=t.balanceFactor+1-Math.max(e.balanceFactor,0)}},{key:"rotateRight",value:function(e){var t=e.left;e.left=t.right,null!==t.right&&(t.right.parent=e),t.parent=e.parent,null===t.parent?this.root=t:e.isLeftChild?t.parent.left=t:t.parent.right=t,t.right=e,e.parent=t,e.balanceFactor=e.balanceFactor-1-Math.min(t.balanceFactor,0),t.balanceFactor=t.balanceFactor-1-Math.max(e.balanceFactor,0)}},{key:Symbol.iterator,value:j.default.mark(function e(){var t,n,r;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return eE(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return eE(e,void 0)}}(e))){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){u=!0,s=e},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw s}}}}(this.getIterator()),e.prev=1,t.s();case 3:if((n=t.n()).done){e.next=9;break}return r=n.value,e.next=7,r;case 7:e.next=3;break;case 9:e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),t.e(e.t0);case 14:return e.prev=14,t.f(),e.finish(14);case 17:case"end":return e.stop()}},e,this,[[1,11,14,17]])})},{key:"getIterator",value:j.default.mark(function e(){var t,n,r,i=arguments;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t=i.length>0&&void 0!==i[0]?i[0]:null,n=this.root;case 2:if(!n){e.next=8;break}if(!(this.isEqual(t,n.key)||null===t&&!n.left)){e.next=5;break}return e.abrupt("break",8);case 5:n=this.isLessThan(t,n.key)||null===t?n.left:n.right,e.next=2;break;case 8:if(n){e.next=10;break}return e.abrupt("return",null);case 10:r=!0;case 11:if(!r){e.next=29;break}return e.next=14,[n.key,n.value];case 14:if(r=!1,!n.right){e.next=21;break}for(n=n.right;n.left;)n=n.left;r=!0,e.next=27;break;case 21:if(!n.parent){e.next=26;break}r=n.parent.left===n,n=n.parent,e.next=27;break;case 26:case 34:return e.abrupt("break",37);case 27:e.next=35;break;case 29:if(!n.parent){e.next=34;break}r=n.parent.left===n,n=n.parent,e.next=35;break;case 35:e.next=11;break;case 37:return e.abrupt("return",null);case 38:case"end":return e.stop()}},e,this)})},{key:"getReverseIterator",value:j.default.mark(function e(){var t,n,r,i=arguments;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t=i.length>0&&void 0!==i[0]?i[0]:null,n=this.root;case 2:if(!n){e.next=8;break}if(!(this.isEqual(t,n.key)||null===t&&!n.right)){e.next=5;break}return e.abrupt("break",8);
100case 5:n=this.isLessThan(t,n.key)&&null!==t?n.left:n.right,e.next=2;break;case 8:if(n){e.next=10;break}return e.abrupt("return",null);case 10:r=!0;case 11:if(!r){e.next=29;break}return e.next=14,[n.key,n.value];case 14:if(r=!1,!n.left){e.next=21;break}for(n=n.left;n.right;)n=n.right;r=!0,e.next=27;break;case 21:if(!n.parent){e.next=26;break}r=n.parent.right===n,n=n.parent,e.next=27;break;case 26:case 34:return e.abrupt("break",37);case 27:e.next=35;break;case 29:if(!n.parent){e.next=34;break}r=n.parent.right===n,n=n.parent,e.next=35;break;case 35:e.next=11;break;case 37:return e.abrupt("return",null);case 38:case"end":return e.stop()}},e,this)})}]),e}();function eN(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var eq=function(){function e(t,n){E.default(this,e),this.value=t,this.revision=n||0}return R.default(e,[{key:"isValid",get:function(){return!0}}]),e}(),eL=function(){function e(t){E.default(this,e),this.revision=t}return R.default(e,[{key:"isValid",get:function(){return!1}}]),e}(),eC=function(){function e(){E.default(this,e),this.items=new eT}return R.default(e,[{key:"store",value:function(e,t,n){var r=this.items.get(e);return r&&r.revision>n?r.isValid?r.value:null:(this.items.set(e,new eq(t,n)),t)}},{key:"delete",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=this.items.get(e);(!r||r.revision<t||r&&!0===n)&&this.items.set(e,new eL(t))}},{key:"isKnown",value:function(e,t){var n=this.items.get(e);return n&&n.revision>=t}},{key:"get",value:function(e){var t=this.items.get(e);return t&&t.isValid?t.value:null}},{key:"has",value:function(e){var t=this.items.get(e);return t&&t.isValid}},{key:"forEach",value:function(e){if(this.items){var t,n=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return eN(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return eN(e,void 0)}}(e))){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,a=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){u=!0,s=e},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw s}}}}(this.items);try{for(n.s();!(t=n.n()).done;){var r=F.default(t.value,2),i=r[0],s=r[1];s.isValid&&e(i,s.value)}}catch(e){n.e(e)}finally{n.f()}}}}]),e}();function ej(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=L.default(e);return n=t?Reflect.construct(r,arguments,L.default(this).constructor):r.apply(this,arguments),q.default(this,n)}}var eM=function(e){N.default(g,e);var t,n,r,i,s,a,u,o,c,d,l,p,f,h,v,y,m=ej(g);function g(e,t,n){var r;return E.default(this,g),(r=m.call(this,e,n)).updateMergingQueue=new ek(function(e,t){return"number"==typeof t.ttl?{ttl:t.ttl}:e}),r.cache=new eC,r.descriptor=t,r.descriptor.date_updated=new Date(r.descriptor.date_updated),r}return R.default(g,[{key:"uri",get:function(){return this.descriptor.url}},{key:"revision",get:function(){return this.descriptor.revision}},{key:"lastEventId",get:function(){return this.descriptor.last_event_id}},{key:"links",get:function(){return this.descriptor.links}},{key:"dateExpires",get:function(){return this.descriptor.date_expires}},{key:"type",get:function(){return"list"}},{key:"indexName",get:function(){}},{key:"queryString",get:function(){}},{key:"sid",get:function(){return this.descriptor.sid}},{key:"uniqueName",get:function(){return this.descriptor.unique_name||null}},{key:"dateUpdated",get:function(){return this.descriptor.date_updated}},{key:"_addOrUpdateItemOnServer",value:(t=S.default(j.default.mark(function e(t,n,r,i){var s,a;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return s={data:n},void 0!==i&&(s.ttl=i),e.next=4,this.services.network.post(t,s,r);case 4:return(a=e.sent).body.data=n,a.body.date_updated=new Date(a.body.date_updated),e.abrupt("return",a.body);case 8:case"end":return e.stop()}},e,this)})),function(e,n,r,i){return t.apply(this,arguments)})},{key:"push",value:(n=S.default(j.default.mark(function e(t,n){var r,i,s;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=(n||{}).ttl,e.next=3,this._addOrUpdateItemOnServer(this.links.items,t,void 0,r);case 3:return s=Number((i=e.sent).index),this._handleItemMutated(s,i.url,i.last_event_id,i.revision,t,i.date_updated,i.date_expires,!0,!1),e.abrupt("return",this.cache.get(s));case 7:case"end":return e.stop()}},e,this)})),function(e,t){return n.apply(this,arguments)})},{key:"set",value:(r=S.default(j.default.mark(function e(t,n,r){var i,s=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=r||{},e.abrupt("return",this.updateMergingQueue.squashAndAdd(t,i,function(e){return s._updateItemUnconditionally(t,n,e.ttl)}));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return r.apply(this,arguments)})},{key:"_updateItemUnconditionally",value:(i=S.default(j.default.mark(function e(t,n,r){var i,s;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t);case 2:return i=e.sent,e.next=5,this._addOrUpdateItemOnServer(i.uri,n,void 0,r);case 5:return s=e.sent,this._handleItemMutated(t,s.url,s.last_event_id,s.revision,s.data,s.date_updated,s.date_expires,!1,!1),e.abrupt("return",this.cache.get(t));case 8:case"end":return e.stop()}},e,this)})),function(e,t,n){return i.apply(this,arguments)})},{key:"_updateItemWithIfMatch",value:(s=S.default(j.default.mark(function e(t,n,r){var i,s,a,u;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t);case 2:if(!(s=n(ee((i=e.sent).data)))){e.next=25;break}return a=i.revision,e.prev=6,e.next=9,this._addOrUpdateItemOnServer(i.uri,s,a,r);case 9:return u=e.sent,this._handleItemMutated(t,u.url,u.last_event_id,u.revision,u.data,u.date_updated,u.date_expires,!1,!1),e.abrupt("return",this.cache.get(t));case 14:if(e.prev=14,e.t0=e.catch(6),412!==e.t0.status){e.next=22;break}return e.next=19,this._getItemFromServer(t);case 19:return e.abrupt("return",this._updateItemWithIfMatch(t,n,r));case 22:throw e.t0;case 23:e.next=26;break;case 25:return e.abrupt("return",i);case 26:case"end":return e.stop()}},e,this,[[6,14]])}
100)),function(e,t,n){return s.apply(this,arguments)})},{key:"mutate",value:(a=S.default(j.default.mark(function e(t,n,r){var i,s=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=r||{},e.abrupt("return",this.updateMergingQueue.add(t,i,function(e){return s._updateItemWithIfMatch(t,n,e.ttl)}));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return a.apply(this,arguments)})},{key:"update",value:(u=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mutate(t,function(e){return Object.assign(e,n)},r));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n){return u.apply(this,arguments)})},{key:"remove",value:(o=S.default(j.default.mark(function e(t){var n,r,i;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t);case 2:return r=ee((n=e.sent).data),e.next=6,this.services.network.delete(n.uri);case 6:i=e.sent,this._handleItemRemoved(t,i.body.last_event_id,r,new Date(i.body.date_updated),!1);case 8:case"end":return e.stop()}},e,this)})),function(e){return o.apply(this,arguments)})},{key:"get",value:(c=S.default(j.default.mark(function e(t){var n;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=this.cache.get(t))){e.next=5;break}return e.abrupt("return",n);case 5:return e.abrupt("return",this._getItemFromServer(t));case 6:case"end":return e.stop()}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"_getItemFromServer",value:(d=S.default(j.default.mark(function e(t){var n;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.queryItems({index:t});case 2:if(!((n=e.sent).items.length<1)){e.next=7;break}throw new X("No item with index ".concat(t," found"),404,54151);case 7:return e.abrupt("return",n.items[0]);case 8:case"end":return e.stop()}},e,this)})),function(e){return d.apply(this,arguments)})},{key:"queryItems",value:(l=S.default(j.default.mark(function e(t){var n,r,i,s,a=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=t||{},n=new G(this.links.items).queryParam("From",t.from).queryParam("PageSize",t.limit).queryParam("Index",t.index).queryParam("PageToken",t.pageToken).queryParam("Order",t.order).build(),e.next=4,this.services.network.get(n);case 4:return i=(r=e.sent).body.items.map(function(e){return e.date_updated=new Date(e.date_updated),a.cache.get(e.index)?a._handleItemMutated(e.index,e.url,e.last_event_id,e.revision,e.data,e.date_updated,e.date_expires,!1,!0):a.cache.store(Number(e.index),new eI({index:Number(e.index),uri:e.url,revision:e.revision,lastEventId:e.last_event_id,dateUpdated:e.date_updated,dateExpires:e.date_expires,data:e.data}),e.last_event_id),a.cache.get(e.index)}),s=r.body.meta,e.abrupt("return",new eS(i,function(e){return a.queryItems({pageToken:e})},s.previous_token,s.next_token));case 8:case"end":return e.stop()}},e,this)})),function(e){return l.apply(this,arguments)})},{key:"getItems",value:(p=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return et((t=t||{}).pageSize),t.limit=t.pageSize||t.limit||50,t.order=t.order||"asc",e.abrupt("return",this.queryItems(t));case 5:case"end":return e.stop()}},e,this)})),function(e){return p.apply(this,arguments)})},{key:"getContext",value:(f=S.default(j.default.mark(function e(){var t;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.context){e.next=5;break}return e.next=3,this.services.network.get(this.links.context);case 3:t=e.sent,this._updateContextIfRequired(t.body.data,t.body.last_event_id);case 5:return e.abrupt("return",this.context);case 6:case"end":return e.stop()}},e,this)})),function(){return f.apply(this,arguments)})},{key:"setTtl",value:(h=S.default(j.default.mark(function e(t){var n,r;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,n={ttl:t},e.next=4,this.services.network.post(this.uri,n);case 4:r=e.sent,this.descriptor.date_expires=r.body.date_expires,e.next=12;break;case 8:throw e.prev=8,e.t0=e.catch(0),404===e.t0.status&&this.onRemoved(!1),e.t0;case 12:case"end":return e.stop()}},e,this,[[0,8]])})),function(e){return h.apply(this,arguments)})},{key:"setItemTtl",value:(v=S.default(j.default.mark(function e(t,n){var r,i,s;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t);case 2:return r=e.sent,i={ttl:n},e.next=6,this.services.network.post(r.uri,i);case 6:s=e.sent,r.updateDateExpires(s.body.date_expires);case 8:case"end":return e.stop()}},e,this)})),function(e,t){return v.apply(this,arguments)})},{key:"removeList",value:(y=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.network.delete(this.uri);case 2:this.onRemoved(!0);case 3:case"end":return e.stop()}},e,this)})),function(){return y.apply(this,arguments)})},{key:"onRemoved",value:function(e){this._unsubscribe(),this.removalHandler(this.type,this.sid,this.uniqueName),this.broadcastEventToListeners("removed",{isLocal:e})}},{key:"shouldIgnoreEvent",value:function(e,t){return this.cache.isKnown(e,t)}},{key:"_update",value:function(e,t){var n=Number(e.item_index);switch(e.date_created=new Date(e.date_created),e.type){case"list_item_added":case"list_item_updated":this._handleItemMutated(n,e.item_url,e.id,e.item_revision,e.item_data,e.date_created,void 0,"list_item_added"===e.type,!0);break;case"list_item_removed":this._handleItemRemoved(n,e.id,e.item_data,e.date_created,!0);break;case"list_context_updated":this._handleContextUpdate(e.context_data,e.id,e.date_created);break;case"list_removed":this.onRemoved(!1)}t&&this._advanceLastEventId(e.id,e.list_revision)}},{key:"_advanceLastEventId",value:function(e,t){this.lastEventId<e&&(this.descriptor.last_event_id=e,t&&(this.descriptor.revision=t))}},{key:"_updateRootDateUpdated",value:function(e){(!this.descriptor.date_updated||e.getTime()>this.descriptor.date_updated.getTime())&&(this.descriptor.date_updated=e,this.services.storage.update(this.t
100ype,this.sid,this.uniqueName,{date_updated:e}))}},{key:"_handleItemMutated",value:function(e,t,n,r,i,s,a,u,o){if(this.shouldIgnoreEvent(e,n)){es.trace("Item ".concat(e," update skipped, current: ").concat(this.lastEventId,", remote: ").concat(n));return}this._updateRootDateUpdated(s);var c=this.cache.get(e);if(!c){var d=new eI({index:e,uri:t,lastEventId:n,revision:r,data:i,dateUpdated:s,dateExpires:a});this.cache.store(e,d,n),this.emitItemMutationEvent(d,o,u);return}var l=ee(c.data);c.update(n,r,i,s),this.cache.store(e,c,n),void 0!==a&&c.updateDateExpires(a),this.emitItemMutationEvent(c,o,!1,l)}},{key:"emitItemMutationEvent",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i={item:e,isLocal:!t};n||(i.previousItemData=r),this.broadcastEventToListeners(n?"itemAdded":"itemUpdated",i)}},{key:"_handleItemRemoved",value:function(e,t,n,r,i){this._updateRootDateUpdated(r),this.cache.delete(e,t),this.broadcastEventToListeners("itemRemoved",{index:e,isLocal:!i,previousItemData:n})}},{key:"_handleContextUpdate",value:function(e,t,n){this._updateRootDateUpdated(n),this._updateContextIfRequired(e,t)&&this.broadcastEventToListeners("contextUpdated",{context:e,isLocal:!1})}},{key:"_updateContextIfRequired",value:function(e,t){return!this.contextEventId||t>this.contextEventId?(this.context=e,this.contextEventId=t,!0):(es.trace("Context update skipped, current:",this.lastEventId,", remote:",t),!1)}}],[{key:"type",get:function(){return"list"}}]),g}(em),eO=function(e){N.default(f,e);var t,n,r,i,s,a,u,o,c,d,l,p=ej(f);function f(e){var t;return E.default(this,f),(t=p.call(this)).syncListImpl=e,t.syncListImpl.attach(T.default(t)),t}return R.default(f,[{key:"uri",get:function(){return this.syncListImpl.uri}},{key:"revision",get:function(){return this.syncListImpl.revision}},{key:"lastEventId",get:function(){return this.syncListImpl.lastEventId}},{key:"links",get:function(){return this.syncListImpl.links}},{key:"dateExpires",get:function(){return this.syncListImpl.dateExpires}},{key:"type",get:function(){return eM.type}},{key:"sid",get:function(){return this.syncListImpl.sid}},{key:"uniqueName",get:function(){return this.syncListImpl.uniqueName}},{key:"dateUpdated",get:function(){return this.syncListImpl.dateUpdated}},{key:"push",value:(t=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.push(t,n));case 2:case"end":return e.stop()}},e,this)})),function(e,n){return t.apply(this,arguments)})},{key:"set",value:(n=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.set(t,n,r));case 2:case"end":return e.stop()}},e,this)})),function(e,t,r){return n.apply(this,arguments)})},{key:"mutate",value:(r=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.mutate(t,n,r));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return r.apply(this,arguments)})},{key:"update",value:(i=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.update(t,n,r));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return i.apply(this,arguments)})},{key:"remove",value:(s=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.remove(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return s.apply(this,arguments)})},{key:"get",value:(a=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.get(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"getContext",value:(u=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.getContext());case 2:case"end":return e.stop()}},e,this)})),function(){return u.apply(this,arguments)})},{key:"getItems",value:(o=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.getItems(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return o.apply(this,arguments)})},{key:"setTtl",value:(c=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.setTtl(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"setItemTtl",value:(d=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.setItemTtl(t,n));case 2:case"end":return e.stop()}},e,this)})),function(e,t){return d.apply(this,arguments)})},{key:"removeList",value:(l=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncListImpl.removeList());case 2:case"end":return e.stop()}},e,this)})),function(){return l.apply(this,arguments)})},{key:"close",value:function(){P.default(L.default(f.prototype),"close",this).call(this),this.syncListImpl.detach(this.listenerUuid)}}],[{key:"type",get:function(){return eM.type}}]),f}(eb);C.default(eO,"itemAdded","itemAdded"),C.default(eO,"itemUpdated","itemUpdated"),C.default(eO,"itemRemoved","itemRemoved"),C.default(eO,"removed","removed"),B([h.validateTypesAsync(h.pureObject,["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object,Object]),Q("design:returntype",Promise)],eO.prototype,"push",null),B([h.validateTypesAsync(h.nonNegativeInteger,h.pureObject,["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Number,Object,Object]),Q("design:returntype",Promise)],eO.prototype,"set",null),B([h.validateTypesAsync(h.nonNegativeInteger,"function",["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Number,Function,Object]),Q("design:returntype",Promise)],eO.prototype,"mutate",null),B([h.validateTypesAsync(h.nonNegativeInteger,h.pureObject,["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Number,Object,Object]),Q("design:returntype",Promise)],eO.prototype,"update",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],eO.prototype,"remove",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],eO.prototype,"get",null),B([h.validateTypesAsync(["undefined",h.objectSchema("query options",{from:[h.nonNegativeInteger,"undefined"],pageSize:[h.custom(function(e){return[en(e),"a positive integer"]}),"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],eO.prototype,"getItems",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],eO.prototype,"setTtl",null),B([h.validateTypesAsync(h.nonNegativeInteger,h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number,Number]),Q("design:returntype",Promise)],eO.prototype,"setItemTtl",null);var eA=function(){function e(t){E.default(this,e),this.descriptor=t}return R.default(e,[{key:"uri",get:function(){return this.descriptor.url}},{key:"revision",get:function(){return this.descriptor.revision}},{key:"lastEventId",get:function(){return this.descriptor.last_event_id}},{key:"dateExpires",get:function(){return this.descriptor.date_expires}},{key:"key",get:function(){return this.descriptor.key}},{key:"data",get:function(){return this.descriptor.data}},{key:"dateUpdated",get:function(){return this.descriptor.date_updated}},{key:"update",value:function(e,t,n,r){return this.descriptor.last_event_id=e,this.descriptor.revision=t,this.descriptor.data=n,this.descriptor.date_updated=r,this}},{key:"updateDateExpires",value:function(e){this.descriptor.date_expires=e}}]),e}();function eF(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=L.default(e);return n=t?Reflect.construct(r,arguments,L.default(this).constructor):r.apply(this,arguments),q.default(this,n)}}var eU=function(e){N.default(y,e);var t,n,r,i,s,a,u,o,c,d,l,p,f,h,v=eF(y);function y(e,t,n){var r;return E.default(this,y),(r=v.call(this,e,n)).updateMergingQueue=new ek(function(e,t){return"number"==typeof t.ttl?{ttl:t.ttl}:e}),r.cache=new eC,r.descriptor=t,r.descriptor.date_updated=new Date(r.descriptor.date_updated),t.items&&t.items.forEac
100h(function(e){e.date_updated=new Date(e.date_updated),r.cache.store(e.key,new eA(e),e.last_event_id)}),r}return R.default(y,[{key:"uri",get:function(){return this.descriptor.url}},{key:"links",get:function(){return this.descriptor.links}},{key:"revision",get:function(){return this.descriptor.revision}},{key:"lastEventId",get:function(){return this.descriptor.last_event_id}},{key:"dateExpires",get:function(){return this.descriptor.date_expires}},{key:"type",get:function(){return"map"}},{key:"indexName",get:function(){}},{key:"queryString",get:function(){}},{key:"sid",get:function(){return this.descriptor.sid}},{key:"uniqueName",get:function(){return this.descriptor.unique_name||null}},{key:"dateUpdated",get:function(){return this.descriptor.date_updated}},{key:"set",value:(t=S.default(j.default.mark(function e(t,n,r){var i,s=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=r||{},e.abrupt("return",this.updateMergingQueue.squashAndAdd(t,i,function(e){return s._putItemUnconditionally(t,n,e.ttl)}));case 2:case"end":return e.stop()}},e,this)})),function(e,n,r){return t.apply(this,arguments)})},{key:"get",value:(n=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=t){e.next=2;break}throw new X("SyncMapItem key may not be empty",400,54209);case 2:if(!this.cache.has(t)){e.next=6;break}return e.abrupt("return",this.cache.get(t));case 6:return e.abrupt("return",this._getItemFromServer(t));case 7:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"_getItemFromServer",value:(r=S.default(j.default.mark(function e(t){var n;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.queryItems({key:t});case 2:if(!((n=e.sent).items.length<1)){e.next=7;break}throw new X("The specified Map Item does not exist",404,54201);case 7:return e.abrupt("return",n.items[0]);case 8:case"end":return e.stop()}},e,this)})),function(e){return r.apply(this,arguments)})},{key:"mutate",value:(i=S.default(j.default.mark(function e(t,n,r){var i,s=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=r||{},e.abrupt("return",this.updateMergingQueue.add(t,i,function(e){return s._putItemWithIfMatch(t,n,e.ttl)}));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return i.apply(this,arguments)})},{key:"update",value:(s=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.mutate(t,function(e){return Object.assign(e,n)},r));case 1:case"end":return e.stop()}},e,this)})),function(e,t,n){return s.apply(this,arguments)})},{key:"_putItemUnconditionally",value:(a=S.default(j.default.mark(function e(t,n,r){var i,s;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._putItemToServer(t,n,void 0,r);case 2:return s=(i=e.sent).item,this._handleItemMutated(s.key,s.url,s.last_event_id,s.revision,s.data,s.date_updated,s.date_expires,i.added,!1),e.abrupt("return",this.cache.get(s.key));case 6:case"end":return e.stop()}},e,this)})),function(e,t,n){return a.apply(this,arguments)})},{key:"_putItemWithIfMatch",value:(u=S.default(j.default.mark(function e(t,n,r){var i,s,a,u,o;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t).catch(function(e){if(404===e.status)return new eA({key:t,data:{},last_event_id:-1,revision:"-1",url:null,date_updated:null,date_expires:null});throw e});case 2:if(!(s=n(ee((i=e.sent).data)))){e.next=26;break}return a=i.revision,e.prev=6,e.next=9,this._putItemToServer(t,s,a,r);case 9:return o=(u=e.sent).item,this._handleItemMutated(o.key,o.url,o.last_event_id,o.revision,o.data,o.date_updated,o.date_expires,u.added,!1),e.abrupt("return",this.cache.get(o.key));case 15:if(e.prev=15,e.t0=e.catch(6),412!==e.t0.status){e.next=23;break}return e.next=20,this._getItemFromServer(t);case 20:return e.abrupt("return",this._putItemWithIfMatch(t,n,r));case 23:throw e.t0;case 24:e.next=27;break;case 26:return e.abrupt("return",i);case 27:case"end":return e.stop()}},e,this,[[6,15]])})),function(e,t,n){return u.apply(this,arguments)})},{key:"_putItemToServer",value:(o=S.default(j.default.mark(function e(t,n,r,i){var s,a,u,o,c;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return s=new G(this.links.items).pathSegment(t).build(),a={data:n},void 0!==i&&(a.ttl=i),e.prev=3,e.next=6,this.services.network.put(s,a,r);case 6:return(o=(u=e.sent).body).data=n,o.date_updated=new Date(o.date_updated),c=201===u.status.code,e.abrupt("return",{added:c,item:o});case 14:throw e.prev=14,e.t0=e.catch(3),404===e.t0.status&&this.onRemoved(!1),e.t0;case 18:case"end":return e.stop()}},e,this,[[3,14]])})),function(e,t,n,r){return o.apply(this,arguments)})},{key:"remove",value:(c=S.default(j.default.mark(function e(t){var n,r,i;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t);case 2:return r=ee((n=e.sent).data),e.next=6,this.services.network.delete(n.uri);case 6:i=e.sent,this._handleItemRemoved(t,i.body.last_event_id,r,new Date(i.body.date_updated),!1);case 8:case"end":return e.stop()}},e,this)})),function(e){return c.apply(this,arguments)})},{key:"queryItems",value:(d=S.default(j.default.mark(function e(t){var n,r,i,s,a=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=t||{},n=new G(this.links.items).queryParam("From",t.from).queryParam("PageSize",t.limit).queryParam("Key",t.key).queryParam("PageToken",t.pageToken).queryParam("Order",t.order).build(),e.next=4,this.services.network.get(n);case 4:return i=(r=e.sent).body.items.map(function(e){return e.date_updated=new Date(e.date_updated),a.cache.get(e.key)?a._handleItemMutated(e.key,e.url,e.last_event_id,e.revision,e.data,e.date_updated,e.date_expires,!1,!0):a.cache.store(e.key,new eA(e),e.last_event_id),a.cache.get(e.key)}),s=r.body.meta,e.abrupt("return",new eS(i,function(e){return a.queryItems({pageToken:e})},s.previous_token,s.next_token));case 8:case"end":return e.stop()}},e,this)})),function(e){return d.apply(this,arguments)})},{key:"getItems",value:(l=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return et((t=t||{}).pageSize),t.limit=t.pageSize||t.limit||50,t.order=t.order||"asc",e.abrupt("return",this.queryItems(t));case 5:case"end":return e.stop()}},e,this)})),function(e){return l.apply(this,arguments)})},{key:"shouldIgnoreEvent",value:function(e,t){return this.cache.isKnown(e,t)}},{key:"_update",value:function(e,t){switch(e.date_created=new Date(e.date_created),e.type){case"map_item_added":case"map_item_updated":this._handleItemMutated(e.item_
100key,e.item_url,e.id,e.item_revision,e.item_data,e.date_created,void 0,"map_item_added"===e.type,!0);break;case"map_item_removed":this._handleItemRemoved(e.item_key,e.id,e.item_data,e.date_created,!0);break;case"map_removed":this.onRemoved(!1)}t&&this._advanceLastEventId(e.id,e.map_revision)}},{key:"_advanceLastEventId",value:function(e,t){this.lastEventId<e&&(this.descriptor.last_event_id=e,t&&(this.descriptor.revision=t))}},{key:"_updateRootDateUpdated",value:function(e){(!this.descriptor.date_updated||e.getTime()>this.descriptor.date_updated.getTime())&&(this.descriptor.date_updated=e,this.services.storage.update(this.type,this.sid,this.uniqueName,{date_updated:e}))}},{key:"_handleItemMutated",value:function(e,t,n,r,i,s,a,u,o){if(this.shouldIgnoreEvent(e,n)){es.trace("SyncMapItem ",e," update skipped, current:",this.lastEventId,", remote:",n);return}this._updateRootDateUpdated(s);var c=this.cache.get(e);if(!c){var d=new eA({key:e,url:t,last_event_id:n,revision:r,data:i,date_updated:s,date_expires:a});this.cache.store(e,d,n),this.emitItemMutationEvent(d,o,u);return}var l=ee(c.data);c.update(n,r,i,s),this.cache.store(e,c,n),void 0!==a&&c.updateDateExpires(a),this.emitItemMutationEvent(c,o,!1,l)}},{key:"emitItemMutationEvent",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i={item:e,isLocal:!t};n||(i.previousItemData=r),this.broadcastEventToListeners(n?"itemAdded":"itemUpdated",i)}},{key:"_handleItemRemoved",value:function(e,t,n,r,i){this._updateRootDateUpdated(r),this.cache.delete(e,t),this.broadcastEventToListeners("itemRemoved",{key:e,isLocal:!i,previousItemData:n})}},{key:"onRemoved",value:function(e){this._unsubscribe(),this.removalHandler(this.type,this.sid,this.uniqueName),this.broadcastEventToListeners("removed",{isLocal:e})}},{key:"setTtl",value:(p=S.default(j.default.mark(function e(t){var n,r;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,n={ttl:t},e.next=4,this.services.network.post(this.uri,n);case 4:r=e.sent,this.descriptor.date_expires=r.body.date_expires,e.next=12;break;case 8:throw e.prev=8,e.t0=e.catch(0),404===e.t0.status&&this.onRemoved(!1),e.t0;case 12:case"end":return e.stop()}},e,this,[[0,8]])})),function(e){return p.apply(this,arguments)})},{key:"setItemTtl",value:(f=S.default(j.default.mark(function e(t,n){var r,i,s;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.get(t);case 2:return r=e.sent,i={ttl:n},e.next=6,this.services.network.post(r.uri,i);case 6:s=e.sent,r.updateDateExpires(s.body.date_expires);case 8:case"end":return e.stop()}},e,this)})),function(e,t){return f.apply(this,arguments)})},{key:"removeMap",value:(h=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.network.delete(this.uri);case 2:this.onRemoved(!0);case 3:case"end":return e.stop()}},e,this)})),function(){return h.apply(this,arguments)})}],[{key:"type",get:function(){return"map"}}]),y}(em),eP=function(e){N.default(l,e);var t,n,r,i,s,a,u,o,c,d=eF(l);function l(e){var t;return E.default(this,l),(t=d.call(this)).syncMapImpl=e,t.syncMapImpl.attach(T.default(t)),t}return R.default(l,[{key:"uri",get:function(){return this.syncMapImpl.uri}},{key:"links",get:function(){return this.syncMapImpl.links}},{key:"revision",get:function(){return this.syncMapImpl.revision}},{key:"lastEventId",get:function(){return this.syncMapImpl.lastEventId}},{key:"dateExpires",get:function(){return this.syncMapImpl.dateExpires}},{key:"type",get:function(){return eU.type}},{key:"sid",get:function(){return this.syncMapImpl.sid}},{key:"uniqueName",get:function(){return this.syncMapImpl.uniqueName}},{key:"dateUpdated",get:function(){return this.syncMapImpl.dateUpdated}},{key:"set",value:(t=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.set(t,n,r));case 2:case"end":return e.stop()}},e,this)})),function(e,n,r){return t.apply(this,arguments)})},{key:"get",value:(n=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.get(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"mutate",value:(r=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.mutate(t,n,r));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return r.apply(this,arguments)})},{key:"update",value:(i=S.default(j.default.mark(function e(t,n,r){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.update(t,n,r));case 2:case"end":return e.stop()}},e,this)})),function(e,t,n){return i.apply(this,arguments)})},{key:"remove",value:(s=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.remove(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return s.apply(this,arguments)})},{key:"getItems",value:(a=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.getItems(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"setTtl",value:(u=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.setTtl(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"setItemTtl",value:(o=S.default(j.default.mark(function e(t,n){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncMapImpl.setItemTtl(t,n));case 2:case"end":return e.stop()}},e,this)})),function(e,t){return o.apply(this,arguments)})},{key:"removeMap",value:(c=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.next=3,this.syncMapImpl.removeMap();case 3:case"end":return e.stop()}},e,this)})),function(){return c.apply(this,arguments)})},{key:"close",value:function(){P.default(L.default(l.prototype),"close",this).call(this),this.syncMapImpl.detach(this.listenerUuid)}}],[{key:"type",get:function(){return eU.type}}]),l}(eb);function eD(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=L.default(e);return n=t?Reflect.construct(r,arguments,L.default(this).constructor):r.apply(this,arguments),q.default(this,n)}}C.default(eP,"itemAdded","itemAdded"),C.default(eP,"itemUpdated","itemUpdated"),C.default(eP,"itemRemoved","itemRemoved"),C.default(eP,"removed","removed"),B([h.validateTypesAsync("string",h.pureObject,["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[String,Object,Object]),Q("design:returntype",Promise)],eP.prototype,"set",null),B([h.validateTypesAsync("string"),Q("design:type",Function),Q("design:paramtypes",[String]),Q("design:returntype",Promise)],eP.prototype,"get",null),B([h.validateTypesAsync("string","function",["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[String,Function,Object]),Q("design:returntype",Promise)],eP.prototype,"mutate",null),B([h.validateTypesAsync("string",h.pureObject,["undefined",h.objectSchema("item metadata",{ttl:[h.nonNegativeInteger,"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[String,Object,Object]),Q("design:returntype",Promise)],eP.prototype,"update",null),B([h.validateTypesAsync("string"),Q("design:type",Function),Q("design:paramtypes",[String]),Q("design:returntype",Promise)],eP.prototype,"remove",null),B([h.validateTypesAsync(["undefined",h.objectSchema("query options",{from:["string","undefined"],pageSize:[h.custom(function(e){return[en(e),"a positive integer"]}),"undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],eP.prototype,"getItems",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],eP.prototype,"setTtl",null),B([h.validateTypesAsync("string",h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[String,Number]),Q("design:returntype",Promise)],eP.prototype,"setItemTtl",null);var eB=function(e){N.default(s,e);var t,n,r,i=eD(s);function s(e,t,n){var r;return E.default(this,s),(r=i.call(this,e,n)).descriptor=t,r}return R.default(s,[{key:"uri",get:function(){return this.descriptor.url}},{key:"links",get:function(){return this.descriptor.links}},{key:"dateExpires",get:function(){return this.descriptor.date_expires}},{key:"type",get:function(){return"stream"}},{key:"lastEventId",get:function(){return null}},{key:"indexName",get:function(){}},{key:"queryString",get:function(){}},{key:"sid",get:function(){return this.descriptor.sid}},{key:"uniqueName",get:function(){return this.descriptor.unique_name||null}},{key:"publishMessage",value:(t=S.default(j.default.mark(function e(t){var n,r,i;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n={data:t},e.next=3,this.services.network.post(this.links.messages,n);case 3:return r=e.sent.body,i=this._handleMessagePublished(r.sid,t,!1),e.abrupt("return",i);case 7:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"setTtl",value:(n=S.default(j.default.mark(function e(t){var n,r;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,n={ttl:t},e.next=4,this.services.network.post(this.uri,n);case 4:r=e.sent,this.descriptor.date_expires=r.body.date_expires,e.next=12;break;case 8:throw e.prev=8,e.t0=e.catch(0),404===e.t0.status&&this.onRemoved(!1),e.t0;case 12:case"end":return e.stop()}},e,this,[[0,8]])})),function(e){return n.apply(this,arguments)})},{key:"removeStream",value:(r=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.network.delete(this.uri);case 2:this.onRemoved(!0);case 3:case"end":return e.stop()}},e,this)})),function(){return r.apply(this,arguments)})},{key:"_update",value:function(e){switch(e.type){case"stream_message_published":this._handleMessagePublished(e.message_sid,e.message_data,!0);break;case"stream_removed":this.onRemoved(!1)}}},{key:"_handleMessagePublished",value:function(e,t,n){var r={sid:e,data:t};return this.broadcastEventToListeners("messagePublished",{message:r,isLocal:!n}),r}},{key:"onRemoved",value:function(e){this._unsubscribe(),this.removalHandler(this.type,this.sid,this.uniqueName),this.broadcastEventToListeners("removed",{isLocal:e})}}],[{key:"type",get:function(){return"stream"}}]),s}(em);B([h.validateTypesAsync(h.pureObject),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],eB.prototype,"publishMessage",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],eB.prototype,"setTtl",null);var eQ=function(e){N.default(s,e);var t,n,r,i=eD(s);function s(e){var t;return E.default(this,s),(t=i.call(this)).syncStreamImpl=e,t.syncStreamImpl.attach(T.default(t)),t}return R.default(s,[{key:"uri",get:function(){return this.syncStreamImpl.ur
100i}},{key:"links",get:function(){return this.syncStreamImpl.links}},{key:"dateExpires",get:function(){return this.syncStreamImpl.dateExpires}},{key:"type",get:function(){return eB.type}},{key:"lastEventId",get:function(){return null}},{key:"sid",get:function(){return this.syncStreamImpl.sid}},{key:"uniqueName",get:function(){return this.syncStreamImpl.uniqueName}},{key:"publishMessage",value:(t=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncStreamImpl.publishMessage(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"setTtl",value:(n=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncStreamImpl.setTtl(t));case 2:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"removeStream",value:(r=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.ensureNotClosed(),e.abrupt("return",this.syncStreamImpl.removeStream());case 2:case"end":return e.stop()}},e,this)})),function(){return r.apply(this,arguments)})},{key:"close",value:function(){P.default(L.default(s.prototype),"close",this).call(this),this.syncStreamImpl.detach(this.listenerUuid)}}],[{key:"type",get:function(){return eB.type}}]),s}(eb);C.default(eQ,"messagePublished","messagePublished"),C.default(eQ,"removed","removed"),B([h.validateTypesAsync(h.pureObject),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],eQ.prototype,"publishMessage",null),B([h.validateTypesAsync(h.nonNegativeInteger),Q("design:type",Function),Q("design:paramtypes",[Number]),Q("design:returntype",Promise)],eQ.prototype,"setTtl",null);var eW=function e(t){E.default(this,e),this.sdk="js",this.sdkVer=t,this.os=D.os.family,this.osVer=D.os.version,this.pl=D.name,this.plVer=D.version},ez=function(){function e(){E.default(this,e),this.names=new Map,this.entities=new Map}return R.default(e,[{key:"store",value:function(e){return this.entities.get(e.sid)||(this.entities.set(e.sid,e),e.uniqueName&&this.names.set(e.type+"::"+e.uniqueName,e.sid),e)}},{key:"getResolved",value:function(e,t){var n=this.names.get(t+"::"+e);return n?this.entities.get(n):null}},{key:"get",value:function(e,t){return this.entities.get(e)||this.getResolved(e,t)||null}},{key:"remove",value:function(e){var t=this.entities.get(e);t&&(this.entities.delete(e),t.uniqueName&&this.names.delete(t.type+"::"+t.uniqueName))}}]),e}();function eK(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var n,r=L.default(e);return n=t?Reflect.construct(r,arguments,L.default(this).constructor):r.apply(this,arguments),q.default(this,n)}}var eH=function(e){N.default(n,e);var t=eK(n);function n(e,r,i,s){var a;return E.default(this,n),(a=t.call(this,r,i)).descriptor=e,a.cache=new eC,s&&s.forEach(function(e){a.cache.store(e.key,{key:e.key,value:e.data},e.revision)}),a}return R.default(n,[{key:"sid",get:function(){return this.descriptor.sid}},{key:"uniqueName",get:function(){return null}},{key:"type",get:function(){return n.type}},{key:"lastEventId",get:function(){return this.descriptor.last_event_id}},{key:"indexName",get:function(){return this.descriptor.indexName}},{key:"queryString",get:function(){return this.descriptor.queryExpression}},{key:"queryUri",get:function(){return this.descriptor.queryUri}},{key:"liveQueryDescriptor",get:function(){return this.descriptor}},{key:"onRemoved",value:function(){}},{key:"getItems",value:function(){var e={};return this.cache.forEach(function(t,n){e[t]=n.value}),e}},{key:"_update",value:function(e,t){switch(e.type){case"live_query_item_updated":this.handleItemMutated(e.item_key,e.item_data,e.item_revision);break;
100case"live_query_item_removed":this.handleItemRemoved(e.item_key,e.item_revision);break;case"live_query_updated":this.handleBatchUpdate(e.items)}t&&this._advanceLastEventId(e.last_event_id)}},{key:"handleItemMutated",value:function(e,t,n){if(this.shouldIgnoreEvent(e,n))es.trace("Item ".concat(e," update skipped, revision: ").concat(n));else{var r={key:e,value:t};this.cache.store(e,r,n),this.broadcastEventToListeners("itemUpdated",r)}}},{key:"handleItemRemoved",value:function(e,t){this.shouldIgnoreEvent(e,t)?es.trace("Item ".concat(e," delete skipped, revision: ").concat(t)):(this.cache.delete(e,t,null===t),this.broadcastEventToListeners("itemRemoved",{key:e}))}},{key:"handleBatchUpdate",value:function(e){var t=this,n={};for(var r in null!=e&&e.forEach(function(e){n[e.key]={data:e.data,revision:e.revision}}),this.cache.forEach(function(e,r){var i=n[e];null!=i?t.handleItemMutated(e,i.data,i.revision):t.handleItemRemoved(e,null),delete n[e]}),n)this.handleItemMutated(r,n[r].data,n[r].revision)}},{key:"shouldIgnoreEvent",value:function(e,t){return null!=e&&null!=t&&this.cache.isKnown(e,t)}},{key:"_advanceLastEventId",value:function(e,t){this.lastEventId<e&&(this.descriptor.last_event_id=e)}}],[{key:"type",get:function(){return"live_query"}}]),n}(em);function eV(e){return eJ.apply(this,arguments)}function eJ(){return(eJ=S.default(j.default.mark(function e(t){var n,r,i,s,a,u;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.network,r=t.queryString,i=t.uri,s=t.type,null!=r){e.next=3;break}throw new X("Invalid query",400,54507);case 3:return a={query_string:r},s===e$.type&&(a.type=s),e.next=7,n.post(i,a,void 0,!0);case 7:return u=e.sent,e.abrupt("return",u.body);case 9:case"end":return e.stop()}},e)}))).apply(this,arguments)}var e$=function(e){N.default(n,e);var t=eK(n);function n(e){var r;return E.default(this,n),(r=t.call(this)).liveQueryImpl=e,r.liveQueryImpl.attach(T.default(r)),r}return R.default(n,[{key:"type",get:function(){return eH.type}},{key:"lastEventId",get:function(){return this.liveQueryImpl.lastEventId}},{key:"sid",get:function(){return this.liveQueryImpl.sid}},{key:"close",value:function(){P.default(L.default(n.prototype),"close",this).call(this),this.liveQueryImpl.detach(this.listenerUuid)}},{key:"getItems",value:function(){return this.ensureNotClosed(),this.liveQueryImpl.getItems()}}],[{key:"type",get:function(){return eH.type}}]),n}(eb);C.default(e$,"itemUpdated","itemUpdated"),C.default(e$,"itemRemoved","itemRemoved");var eG=function(e){N.default(i,e);var t,n,r=eK(i);function i(e){var t;return E.default(this,i),t=r.call(this),C.default(T.default(t),"queryExpression",null),C.default(T.default(t),"items",{}),Object.assign(T.default(t),e),t.updateIndexName(e.indexName),t}return R.default(i,[{key:"type",get:function(){return i.type}},{key:"search",value:(t=S.default(j.default.mark(function e(t){var n=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.items={},e.abrupt("return",eV({network:this.network,uri:this.queryUri,queryString:t}).then(function(e){n.queryExpression=t,e.items&&e.items.forEach(function(e){n.items[e.key]=e.data}),n.emit("searchResult",n.getItems())}).catch(function(e){throw es.error("Error '".concat(e.message,"' while executing query '").concat(t,"'")),n.queryExpression=null,e}));case 2:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})},{key:"subscribe",value:(n=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=this.queryExpression){e.next=2;break}return e.abrupt("return",Promise.reject(new X("Invalid query",400,54507)));case 2:return e.abrupt("return",this.liveQueryCreator(this.indexName,this.queryExpression));case 3:case"end":return e.stop()}},e,this)})),function(){return n.apply(this,arguments)})},{key:"getItems",value:function(){return this.items}},{key:"updateIndexName",value:function(e){this.indexName=e,this.queryUri=this.generateQueryUri(this.indexName)}},{key:"generateQueryUri",value:function(e){return new G(this.insightsUri).pathSegment(e).pathSegment("Items").build()}}],[{key:"type",get:function(){return"instant_query"}}]),i}(z);function eZ(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function eX(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
100t%2?eZ(Object(n),!0).forEach(function(t){C.default(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):eZ(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}C.default(eG,"searchResult","searchResult"),B([h.validateTypesAsync("string"),Q("design:type",Function),Q("design:paramtypes",[String]),Q("design:returntype",Promise)],eG.prototype,"search",null),B([h.validateTypes(h.nonEmptyString),Q("design:type",Function),Q("design:paramtypes",[String]),Q("design:returntype",void 0)],eG.prototype,"updateIndexName",null);var eY="3.1.0";function e0(e){if(!e)return{mode:"create_new"};if("string"==typeof e)return{id:e,mode:"open_or_create"};var t=e.mode||(e.id?"open_or_create":"create_new");return eX(eX({},e),{},{mode:t})}var e1="com.twilio.rtd.cds.document",e2="com.twilio.rtd.cds.list",e4="com.twilio.rtd.cds.map",e3="twilio.sync.event",e6=function(e){N.default(k,e);var t,n,r,i,s,a,u,o,c,d,l,p,f,h,y,m,g=(t=function(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}(),function(){var e,n=L.default(k);return e=t?Reflect.construct(n,arguments,L.default(this).constructor):n.apply(this,arguments),q.default(this,e)});function k(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(E.default(this,k),t=g.call(this),!e)throw Error("Sync library needs a valid Twilio token to be passed");n.hasOwnProperty("logLevel")?es.setLevel(n.logLevel):es.setLevel("silent");var r=n.productId=n.productId||"data_sync";n.clientMetadata=n.clientMetadata||{},n.clientMetadata.hasOwnProperty("type")||(n.clientMetadata.type="sync"),n.clientMetadata.hasOwnProperty("sdk")||(n.clientMetadata.sdk="JS",n.clientMetadata.sdkv=eY);var i=!n.twilsockClient;if(!n.initRegistrations){var s=new v.InitRegistration(r);k.populateInitRegistrations(s),n.initRegistrations=[s]}var a=n.twilsockClient=n.twilsockClient||new v.Twilsock(e,r,n);a.on("tokenAboutToExpire",function(e){return t.emit("tokenAboutToExpire",e)}),a.on("tokenExpired",function(){return t.emit("tokenExpired")}),a.on("connectionError",function(e){return t.emit("connectionError",e)}),a.on("stateChanged",function(e){t.emit("connectionStateChanged",e),t.services.subscriptions.onConnectionStateChanged("connected"===e)}),a.on("message",function(e,n){return t._routeMessage(e,n)});var u=new ea(n),o=new eh(new eW(eY),u,a),c=new ev(u);return t.services={config:u,twilsock:a,network:o,storage:c,router:T.default(t),subscriptions:null},t.services.subscriptions=new ed(t.services),t.entities=new ez,i&&a.connect(),t}return R.default(k,[{key:"_routeMessage",value:function(e,t){switch(es.trace("Notification type:",e,"content:",t),e){case e1:case e2:case e4:this.services.subscriptions.acceptMessage(t,!1);break;case e3:this.services.subscriptions.acceptMessage(t,!0)}}},{key:"_subscribe",value:function(e,t){this.services.subscriptions.add(e,t)}},{key:"_unsubscribe",value:function(e){this.services.subscriptions.remove(e)}},{key:"connectionState",get:function(){return this.services.twilsock.state}},{key:"ensureReady",value:(n=S.default(j.default.mark(function e(){var t;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.services.config.sessionStorageEnabled){e.next=2;break}return e.abrupt("return");case 2:return e.prev=2,e.next=5,this.services.twilsock.storageId();case 5:t=e.sent,this.services.storage.updateStorageId(t.id),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(2),es.warn("Failed to initialize storage",e.t0);case 12:case"end":return e.stop()}},e,this,[[2,9]])})),function(){return n.apply(this,arguments)})},{key:"storeRootInSessionCache",value:function(e,t,n){if(this.services.config.sessionStorageEnabled&&t){var r=ee(n);(e===eO.type||e===eP.type)&&(r.last_event_id=null,delete r.items),this.services.storage.store(e,t,r)}}},{key:"readRootFromSessionCache",value:function(e,t){return this.services.config.sessionStorageEnabled&&t?this.services.storage.read(e,t):null}},{key:"_get",value:(r=S.default(j.default.mark(function e(t,n){var r,i,s,a=arguments;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=a.length>
1002&&void 0!==a[2]&&a[2],n){e.next=3;break}throw new X("Cannot get entity without id",404);case 3:return i=new G(t).pathSegment(n).queryParam("Include",r?"items":void 0).build(),e.next=6,this.services.network.get(i);case 6:return s=e.sent,e.abrupt("return",s.body);case 8:case"end":return e.stop()}},e,this)})),function(e,t){return r.apply(this,arguments)})},{key:"_createDocument",value:function(e,t,n){var r={unique_name:e,data:t||{}};return void 0!==n&&(r.ttl=n),this.services.network.post(this.services.config.documentsUri,r).then(function(e){return e.body.data=r.data,e.body})}},{key:"_getDocument",value:(i=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.readRootFromSessionCache(ex.type,t)||this._get(this.services.config.documentsUri,t));case 1:case"end":return e.stop()}},e,this)})),function(e){return i.apply(this,arguments)})},{key:"_createList",value:function(e,t,n,r){var i={unique_name:e,purpose:t,context:n};return void 0!==r&&(i.ttl=r),this.services.network.post(this.services.config.listsUri,i).then(function(e){return e.body})}},{key:"_getList",value:(s=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.readRootFromSessionCache(eO.type,t)||this._get(this.services.config.listsUri,t));case 1:case"end":return e.stop()}},e,this)})),function(e){return s.apply(this,arguments)})},{key:"_createMap",value:function(e,t){var n={unique_name:e};return void 0!==t&&(n.ttl=t),this.services.network.post(this.services.config.mapsUri,n).then(function(e){return e.body})}},{key:"_getMap",value:(a=S.default(j.default.mark(function e(t){var n,r=arguments;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.length>1&&void 0!==r[1]&&r[1],e.abrupt("return",this.readRootFromSessionCache(eP.type,t)||this._get(this.services.config.mapsUri,t,n));case 2:case"end":return e.stop()}},e,this)})),function(e){return a.apply(this,arguments)})},{key:"_getStream",value:(u=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.readRootFromSessionCache(eQ.type,t)||this._get(this.services.config.streamsUri,t,!1));case 1:case"end":return e.stop()}},e,this)})),function(e){return u.apply(this,arguments)})},{key:"_createStream",value:(o=S.default(j.default.mark(function e(t,n){var r,i;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r={unique_name:t},void 0!==n&&(r.ttl=n),e.next=4,this.services.network.post(this.services.config.streamsUri,r);case 4:return i=e.sent,e.abrupt("return",i.body);case 6:case"end":return e.stop()}},e,this)})),function(e,t){return o.apply(this,arguments)})},{key:"_getLiveQuery",value:function(e){return this.readRootFromSessionCache(e$.type,e)}},{key:"getCached",value:function(e,t){return e&&this.entities.get(e,t)||null}},{key:"removeFromCacheAndSession",value:function(e,t,n){this.entities.remove(t),this.services.config.sessionStorageEnabled&&this.services.storage.remove(e,t,n)}},{key:"document",value:(c=S.default(j.default.mark(function e(t){var n,r,i,s,a=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ensureReady();case 2:if("create_new"!==(n=e0(t)).mode){e.next=9;break}return e.next=6,this._createDocument(n.id,n.data,n.ttl);case 6:case 17:case 29:r=e.sent,e.next=39;break;case 9:if(!(i=this.getCached(n.id,ex.type))){e.next=14;break}return e.abrupt("return",new ex(i));case 14:return e.prev=14,e.next=17,this._getDocument(n.id);case 20:if(e.prev=20,e.t0=e.catch(14),!(404!==e.t0.status||"open_existing"===n.mode)){e.next=26;break}throw e.t0;case 26:return e.prev=26,e.next=29,this._createDocument(n.id,n.data,n.ttl);case 32:if(e.prev=32,e.t1=e.catch(26),409!==e.t1.status){e.next=38;break}return e.abrupt("return",this.document(t));case 38:throw e.t1;case 39:return this.storeRootInSessionCache(ex.type,n.id,r),s=new ew(this.services,r,function(e,t,n){return a.removeFromCacheAndSession(e,t,n)}),s=this.entities.store(s),e.abrupt("return",new ex(s));case 43:case"end":return e.stop()}},e,this,[[14,20],[26,32]])})),function(e){return c.apply(this,arguments)})},{key:"map",value:(d=S.default(j.default.mark(function e(t){var n,r,i,s,a=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ensureReady();case 2:if("create_new"!==(n=e0(t)).mode){e.next=9;break}return e.next=6,this._createMap(n.id,n.ttl);case 6:case 17:case 29:r=e.sent,e.next=39;break;case 9:if(!(i=this.getCached(n.id,eP.type))){e.next=14;break}return e.abrupt("return",new eP(i));case 14:return e.prev=14,e.next=17,this._getMap(n.id,n.includeItems);case 20:if(e.prev=20,e.t0=e.catch(14),!(404!==e.t0.status||"open_existing"===n.mode)){e.next=26;break}throw e.t0;case 26:return e.prev=26,e.next=29,this._createMap(n.id,n.ttl);case 32:if(e.prev=32,e.t1=e.catch(26),409!==e.t1.status){e.next=38;break}return e.abrupt("return",this.map(t));case 38:throw e.t1;case 39:return this.storeRootInSessionCache(eP.type,n.id,r),s=new eU(this.services,r,function(e,t,n){return a.removeFromCacheAndSession(e,t,n)}),s=this.entities.store(s),e.abrupt("return",new eP(s));case 43:case"end":return e.stop()}},e,this,[[14,20],[26,32]])})),function(e){return d.apply(this,arguments)})},{key:"list",value:(l=S.default(j.default.mark(function e(t){var n,r,i,s,a=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ensureReady();case 2:if("create_new"!==(n=e0(t)).mode){e.next=9;break}return e.next=6,this._createList(n.id,n.purpose,n.context,n.ttl);case 6:case 17:case 29:r=e.sent,e.next=39;break;case 9:if(!(i=this.getCached(n.id,eO.type))){e.next=14;break}return e.abrupt("return",new eO(i));case 14:return e.prev=14,e.next=17,this._getList(n.id);case 20:if(e.prev=20,e.t0=e.catch(14),!(404!==e.t0.status||"open_existing"===n.mode)){e.next=26;break}throw e.t0;case 26:return e.prev=26,e.next=29,this._createList(n.id,n.purpose,n.context,n.ttl);case 32:if(e.prev=32,e.t1=e.catch(26),409!==e.t1.status){e.next=38;break}return e.abrupt("return",this.list(t));case 38:throw e.t1;case 39:return this.storeRootInSessionCache(eO.type,n.id,r),s=new eM(this.services,r,function(e,t,n){return a.removeFromCacheAndSession(e,t,n)}),s=this.entities.store(s),e.abrupt("return",new eO(s));case 43:case"end":return e.stop()}},e,this,[[14,20],[26,32]])})),function(e){return l.apply(this,arguments)})},{key:"stream",value:(p=S.default(j.default.mark(function e(t){var n,r,i,s,a,u=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ensureReady();case 2:if("create_new"!==(n=e0(t)).mode){e.next=9;break}return e.next=6,this._createStream(n.id,n.ttl);case 6:case 17:case 29:r=e.sent,e.next=39;break;case 9:if(!(i=this.getCached(n.id,eQ.type))){e.next=14;break}return e.abrupt("return",new eQ(i));case 14:return e.prev=14,e.next=17,this._getStream(n.id);case 20:if(e.prev=20,e.t0=e.catch(14),!(404!==e.t0.status||"open_existing"===n.mode)){e.next=26;break}throw e.t0;case 26:return e.prev=26,e.next=29,this._createStream(n.id,n.ttl);case 32:if(e.prev=32,e.t1=e.catch(26),409!==e.t1.status){e.next=38;break}return e.abrupt("return",this.stream(t));case 38:throw e.t1;case 39:return this.storeRootInSessionCache(eQ.type,n.id,r),s=function(e,t,n){return u.removeFromCacheAndSession(e,t,n)},a=new eB(this.services,r,s),a=this.entities.store(a),e.abrupt("return",new eQ(a));case 44:case"end":return e.stop()}},e,this,[[14,20],[26,32]])})),function(e){return p.apply(this,arguments)})},{key:"shutdown",value:(f=S.default(j.default.mark(function e(){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.services.subscriptions.shutdown();case 2:return e.next=4,this.services.twilsock.disconnect();case 4:case"end":return e.stop()}},e,this)})),function(){return f.apply(this,arguments)})},{key:"updateToken",value:(h=S.default(j.default.mark(function e(t){return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.services.twilsock.updateToken(t).cat
100ch(function(e){var t,n=null==e?void 0:null===(t=e.reply)||void 0===t?void 0:t.status;if((null==n?void 0:n.code)===401&&(null==n?void 0:n.status)==="UNAUTHORIZED")throw new X("Updated token was rejected by server",400,51130);throw e}));case 1:case"end":return e.stop()}},e,this)})),function(e){return h.apply(this,arguments)})},{key:"liveQuery",value:(y=S.default(j.default.mark(function e(t,n){var r,i,s,a,u,o=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ensureReady();case 2:return r=new G(this.services.config.insightsUri).pathSegment(t).pathSegment("Items").build(),e.next=5,eV({network:this.services.network,uri:r,queryString:n,type:e$.type});case 5:return i=e.sent,(s=this.getCached(i.query_id,e$.type))||((a=this._getLiveQuery(i.query_id))||(a={indexName:t,queryExpression:n,sid:i.query_id,queryUri:r,last_event_id:i.last_event_id}),u=function(e,t,n){return o.removeFromCacheAndSession(e,t,n)},s=new eH(a,this.services,u,i.items)),this.storeRootInSessionCache(e$.type,i.query_id,s.liveQueryDescriptor),s=this.entities.store(s),e.abrupt("return",new e$(s));case 11:case"end":return e.stop()}},e,this)})),function(e,t){return y.apply(this,arguments)})},{key:"instantQuery",value:(m=S.default(j.default.mark(function e(t){var n,r=this;return j.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.ensureReady();case 2:return n=function(e,t){return r.liveQuery(e,t)},e.abrupt("return",new eG({indexName:t,network:this.services.network,insightsUri:this.services.config.insightsUri,liveQueryCreator:n}));case 4:case"end":return e.stop()}},e,this)})),function(e){return m.apply(this,arguments)})}],[{key:"populateInitRegistrations",value:function(e){e.populateInitRegistrations([e3,e1,e2,e4])}},{key:"version",get:function(){return eY}}]),k}(z);C.default(e6,"connectionStateChanged","connectionStateChanged"),C.default(e6,"connectionError","connectionError"),C.default(e6,"tokenAboutToExpire","tokenAboutToExpire"),C.default(e6,"tokenExpired","tokenExpired"),B([h.validateTypesAsync(["undefined","string",h.objectSchema("open document options",{id:["string","undefined"],mode:[h.literal("open_or_create","open_existing","create_new"),"undefined"],ttl:[h.nonNegativeInteger,"undefined"],data:[h.pureObject,"undefined",h.literal(null)]})]),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],e6.prototype,"document",null),B([h.validateTypesAsync(["undefined","string",h.objectSchema("open map options",{id:["string","undefined"],mode:[h.literal("open_or_create","open_existing","create_new"),"undefined"],ttl:[h.nonNegativeInteger,"undefined"],data:[h.pureObject,"undefined",h.literal(null)],includeItems:["boolean","undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],e6.prototype,"map",null),B([h.validateTypesAsync(["undefined","string",h.objectSchema("open list options",{id:["string","undefined"],mode:[h.literal("open_or_create","open_existing","create_new"),"undefined"],ttl:[h.nonNegativeInteger,"undefined"],data:[h.pureObject,"undefined",h.literal(null)],purpose:["string","undefined"],context:[h.pureObject,"undefined"],includeItems:["boolean","undefined"]})]),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],e6.prototype,"list",null),B([h.validateTypesAsync(["undefined","string",h.objectSchema("open stream options",{id:["string","undefined"],mode:[h.literal("open_or_create","open_existing","create_new"),"undefined"],ttl:[h.nonNegativeInteger,"undefined"],data:[h.pureObject,"undefined",h.literal(null)]})]),Q("design:type",Function),Q("design:paramtypes",[Object]),Q("design:returntype",Promise)],e6.prototype,"stream",null),B([h.validateTypesAsync(h.nonEmptyString),Q("design:type",Function),Q("design:paramtypes",[String]),Q("design:returntype",Promise)],e6.prototype,"updateToken",null),B([h.validateTypesAsync(h.nonEmptyString,"string"),Q("design:type",Function),Q("design:paramtypes",[String,String]),Q("design:returntype",Promise)],e6.prototype,"liveQuery",null),B([h.validateTypesAsync(h.nonEmptyString),Q("design:type",Function),Q("design:paramtypes",[String]),Q("design:returntype",Promise)],e6.prototype,"instantQuery",null),t.Client=e6,t.InsightsItem=function e(){E.default(this,e)},t.InstantQuery=eG,t.LiveQuery=e$,t.Paginator=eS,t.SyncClient=e6,t.SyncDocument=ex,t.SyncList=eO,t.SyncListItem=eI,t.SyncMap=eP,t.SyncMapItem=eA,t.SyncStream=eQ}}]);
101//# sourceMappingURL=47e070a9-92190ec29b792e72.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.