!function e(t,n,r){function a(s,i){if(!n[s]){if(!t[s]){var u="function"==typeof require&&require;if(!i&&u)return u(s,!0);if(o)return o(s,!0);var l=new Error("Cannot find module '"+s+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[s]={exports:{}};t[s][0].call(c.exports,function(e){var n=t[s][1][e];return a(n?n:e)},c,c.exports,e,t,n,r)}return n[s].exports}for(var o="function"==typeof require&&require,s=0;s0&&i.eventHandler.callEventListeners(n)})}return o(t,[{key:"_destroy",value:function(){this.eventHandler.destroy(),this.eventHandler=null,this.contents=null,this.opContents=null,this._model=null,this.os=null,this.map=null}},{key:"get",value:function(e){var t=this;if(null==e)throw new Error("You must specify key!");return null==this.opContents[e]?this.contents[e]:new Promise(function(n){var r=t.opContents[e];t.os.requestTransaction(regeneratorRuntime.mark(function a(){var e;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.delegateYield(this.getType(r),"t0",1);case 1:e=t.t0,n(e);case 3:case"end":return t.stop()}},a,this)}))})}},{key:"getPrimitive",value:function(t){return null==t?e.utils.copyObject(this.contents):this.contents[t]}},{key:"delete",value:function(t){var n=this.map[t];if(null!=n){var r={target:n,struct:"Delete"},a=this.eventHandler,o=e.utils.copyObject(r);o.key=t,a.awaitAndPrematurelyCall([o]),this.os.requestTransaction(regeneratorRuntime.mark(function s(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.delegateYield(this.applyCreatedOperations([r]),"t0",1);case 1:a.awaitedDeletes(1);case 2:case"end":return e.stop()}},s,this)}))}}},{key:"set",value:function(t,n){var r=this,a=this.map[t]||null,o={left:null,right:a,origin:null,parent:this._model,parentSub:t,struct:"Insert"};return new Promise(function(t){if(n instanceof e.utils.CustomType)r.os.requestTransaction(regeneratorRuntime.mark(function s(){var e;return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.delegateYield(this.createType(n),"t0",1);case 1:return e=r.t0,o.opContent=e._model,o.id=this.store.getNextOpId(),r.delegateYield(this.applyCreatedOperations([o]),"t1",5);case 5:t(e);case 6:case"end":return r.stop()}},s,this)}));else{o.content=n,o.id=r.os.getNextOpId();var a=r.eventHandler;a.awaitAndPrematurelyCall([o]),r.os.requestTransaction(regeneratorRuntime.mark(function i(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.delegateYield(this.applyCreatedOperations([o]),"t0",1);case 1:a.awaitedInserts(1);case 2:case"end":return e.stop()}},i,this)})),t(n)}})}},{key:"observe",value:function(e){this.eventHandler.addEventListener(e)}},{key:"unobserve",value:function(e){this.eventHandler.removeEventListener(e)}},{key:"observePath",value:function(t,n){function r(e){for(var t=0;t