define([],function(){"use strict";function e(e){if(!(e instanceof b))throw new Error("Invalid global store controller");j=e,e.onConnected()}function r(){if(!j)throw new Error("No global store controller set");return j.render()}function t(){if(!g)throw new Error('"aggregate" called before first route');g.render($.render())}function n(e){var r=!1;j&&(j[$traceurRuntime.toProperty(a)](e),r=!0),P&&(P[$traceurRuntime.toProperty(a)](e),r=!0),$&&($[$traceurRuntime.toProperty(a)](e),r=!0),r||console.warn("Dispatch called with nothing to dispatch to")}function o(e,r){if(!(r.storeController instanceof b))throw new Error("Invalid store controller");if(!(r.viewController instanceof R))throw new Error("Invalid view controller");if(r.linkController&&!(r.linkController instanceof y))throw new Error("Invalid link controller");$traceurRuntime.setProperty(C,e,r)}function i(e,r){var t=C[$traceurRuntime.toProperty(e)];if(!t)throw new Error('Unknown route "'+i+'"');r=r||{},$&&$[$traceurRuntime.toProperty(f)](),P&&P[$traceurRuntime.toProperty(f)](),$=t.storeController,P=t.linkController,g=t.viewController,$[$traceurRuntime.toProperty(l)](r),P&&P[$traceurRuntime.toProperty(l)]()}var u,c=Symbol(),a=Symbol(),l=Symbol(),f=Symbol(),s=function(){};$traceurRuntime.createClass(s,(u={},Object.defineProperty(u,a,{value:function(e){if(this.dispatch(e),this[$traceurRuntime.toProperty(c)])for(var r,t=this[$traceurRuntime.toProperty(c)][$traceurRuntime.toProperty(Symbol.iterator)]();!(r=t.next()).done;)try{throw void 0}catch(n){n=r.value,n[$traceurRuntime.toProperty(a)](e)}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(u,l,{value:function(e){if(this.onConnected(e),this[$traceurRuntime.toProperty(c)])for(var r,t=this[$traceurRuntime.toProperty(c)][$traceurRuntime.toProperty(Symbol.iterator)]();!(r=t.next()).done;)try{throw void 0}catch(n){n=r.value,n[$traceurRuntime.toProperty(l)](e)}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(u,f,{value:function(e){if(this.onDisconnected(e),this[$traceurRuntime.toProperty(c)])for(var r,t=this[$traceurRuntime.toProperty(c)][$traceurRuntime.toProperty(Symbol.iterator)]();!(r=t.next()).done;)try{throw void 0}catch(n){n=r.value,n[$traceurRuntime.toProperty(f)](e)}},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(u,"register",{value:function(e){this[$traceurRuntime.toProperty(c)]||$traceurRuntime.setProperty(this,c,[]),this[$traceurRuntime.toProperty(c)].push(e)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(u,"dispatch",{value:function(){},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(u,"onConnected",{value:function(){},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(u,"onDisconnected",{value:function(){},configurable:!0,enumerable:!0,writable:!0}),u),{});var b=function(){$traceurRuntime.defaultSuperCall(this,m.prototype,arguments)},m=b;$traceurRuntime.createClass(b,{render:function(){throw new Error('"render" must be implemented by a derived store controller')},register:function(e){if(!(e instanceof p))throw new Error("Invalid child");$traceurRuntime.superCall(this,m.prototype,"register",[e])}},{},s);var p=function(){$traceurRuntime.defaultSuperCall(this,d.prototype,arguments)},d=p;$traceurRuntime.createClass(p,{render:function(){throw new Error('"render" must be implemented by a derived store')},register:function(e){if(!(e instanceof d))throw new Error("Invalid child");$traceurRuntime.superCall(this,d.prototype,"register",[e])}},{},s);var y=function(){$traceurRuntime.defaultSuperCall(this,h.prototype,arguments)},h=y;$traceurRuntime.createClass(y,{register:function(e){if(!(e instanceof w))throw new Error("Invalid child");$traceurRuntime.superCall(this,h.prototype,"register",[e])}},{},s);var w=function(){$traceurRuntime.defaultSuperCall(this,v.prototype,arguments)},v=w;$traceurRuntime.createClass(w,{register:function(e){if(!(e instanceof v))throw new Error("Invalid child");$traceurRuntime.superCall(this,v.prototype,"register",[e])}},{},s);var R=function(){};$traceurRuntime.createClass(R,{render:function(){throw new Error('"render" must be implemented by a derived view controller')}},{});var $=null,g=null,P=null,j=null,C={};return{get StoreController(){return b},get Store(){return p},get LinkController(){return y},get Link(){return w},get ViewController(){return R},get registerGlobalStoreController(){return e},get getGlobalData(){return r},get aggregate(){return t},get dispatch(){return n},get registerRoute(){return o},get route(){return i},__esModule:!0}}); //# sourceMappingURL=maps/flvx.amd.min.js.map