mobx 4.12.0 → 4.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
File without changes
package/lib/mobx.es6.js CHANGED
@@ -3297,9 +3297,16 @@ class ObservableMap {
3297
3297
  return this._data.has(key);
3298
3298
  }
3299
3299
  has(key) {
3300
- if (this._hasMap.has(key))
3301
- return this._hasMap.get(key).get();
3302
- return this._updateHasMapEntry(key, false).get();
3300
+ if (!globalState.trackingDerivation)
3301
+ return this._has(key);
3302
+ let entry = this._hasMap.get(key);
3303
+ if (!entry) {
3304
+ // todo: replace with atom (breaking change)
3305
+ const newEntry = (entry = new ObservableValue(this._has(key), referenceEnhancer, `${this.name}.${stringifyKey(key)}?`, false));
3306
+ this._hasMap.set(key, newEntry);
3307
+ onBecomeUnobserved(newEntry, () => this._hasMap.delete(key));
3308
+ }
3309
+ return entry.get();
3303
3310
  }
3304
3311
  set(key, value) {
3305
3312
  const hasKey = this._has(key);
@@ -3361,16 +3368,10 @@ class ObservableMap {
3361
3368
  return false;
3362
3369
  }
3363
3370
  _updateHasMapEntry(key, value) {
3364
- // optimization; don't fill the hasMap if we are not observing, or remove entry if there are no observers anymore
3365
3371
  let entry = this._hasMap.get(key);
3366
3372
  if (entry) {
3367
3373
  entry.setNewValue(value);
3368
3374
  }
3369
- else {
3370
- entry = new ObservableValue(value, referenceEnhancer, `${this.name}.${stringifyKey(key)}?`, false);
3371
- this._hasMap.set(key, entry);
3372
- }
3373
- return entry;
3374
3375
  }
3375
3376
  _updateValue(key, newValue) {
3376
3377
  const observable = this._data.get(key);
package/lib/mobx.js CHANGED
@@ -3407,9 +3407,17 @@ var ObservableMap = /** @class */ (function () {
3407
3407
  return this._data.has(key);
3408
3408
  };
3409
3409
  ObservableMap.prototype.has = function (key) {
3410
- if (this._hasMap.has(key))
3411
- return this._hasMap.get(key).get();
3412
- return this._updateHasMapEntry(key, false).get();
3410
+ var _this = this;
3411
+ if (!globalState.trackingDerivation)
3412
+ return this._has(key);
3413
+ var entry = this._hasMap.get(key);
3414
+ if (!entry) {
3415
+ // todo: replace with atom (breaking change)
3416
+ var newEntry = (entry = new ObservableValue(this._has(key), referenceEnhancer, this.name + "." + stringifyKey(key) + "?", false));
3417
+ this._hasMap.set(key, newEntry);
3418
+ onBecomeUnobserved(newEntry, function () { return _this._hasMap.delete(key); });
3419
+ }
3420
+ return entry.get();
3413
3421
  };
3414
3422
  ObservableMap.prototype.set = function (key, value) {
3415
3423
  var hasKey = this._has(key);
@@ -3472,16 +3480,10 @@ var ObservableMap = /** @class */ (function () {
3472
3480
  return false;
3473
3481
  };
3474
3482
  ObservableMap.prototype._updateHasMapEntry = function (key, value) {
3475
- // optimization; don't fill the hasMap if we are not observing, or remove entry if there are no observers anymore
3476
3483
  var entry = this._hasMap.get(key);
3477
3484
  if (entry) {
3478
3485
  entry.setNewValue(value);
3479
3486
  }
3480
- else {
3481
- entry = new ObservableValue(value, referenceEnhancer, this.name + "." + stringifyKey(key) + "?", false);
3482
- this._hasMap.set(key, entry);
3483
- }
3484
- return entry;
3485
3487
  };
3486
3488
  ObservableMap.prototype._updateValue = function (key, newValue) {
3487
3489
  var observable = this._data.get(key);
package/lib/mobx.min.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var extendStatics=function(e,t){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function __extends(e,t){function r(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function __read(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}function __spread(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e}var OBFUSCATED_ERROR="An invariant failed, however the error is obfuscated because this is an production build.",EMPTY_ARRAY=[];Object.freeze(EMPTY_ARRAY);var EMPTY_OBJECT={};function getGlobal(){return"undefined"!=typeof window?window:global}function getNextId(){return++globalState.mobxGuid}function fail(e){throw invariant(!1,e),"X"}function invariant(e,t){if(!e)throw new Error("[mobx] "+(t||OBFUSCATED_ERROR))}Object.freeze(EMPTY_OBJECT);var deprecatedMessages=[];function deprecated(e,t){return!1}function once(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var noop=function(){};function unique(e){var t=[];return e.forEach(function(e){-1===t.indexOf(e)&&t.push(e)}),t}function isObject(e){return null!==e&&"object"==typeof e}function isPlainObject(e){if(null===e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function makeNonEnumerable(e,t){for(var r=0;r<t.length;r++)addHiddenProp(e,t[r],e[t[r]])}function addHiddenProp(e,t,r){Object.defineProperty(e,t,{enumerable:!1,writable:!0,configurable:!0,value:r})}function addHiddenFinalProp(e,t,r){Object.defineProperty(e,t,{enumerable:!1,writable:!1,configurable:!0,value:r})}function createInstanceofPredicate(e,t){var r="isMobX"+e;return t.prototype[r]=!0,function(e){return isObject(e)&&!0===e[r]}}function areBothNaN(e,t){return"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t)}function isArrayLike(e){return Array.isArray(e)||isObservableArray(e)}function isES6Map(e){return void 0!==getGlobal().Map&&e instanceof getGlobal().Map}function isES6Set(e){return e instanceof Set}function getMapLikeKeys(e){return isPlainObject(e)?Object.keys(e):Array.isArray(e)?e.map(function(e){return __read(e,1)[0]}):isES6Map(e)||isObservableMap(e)?iteratorToArray(e.keys()):fail("Cannot get keys from '"+e+"'")}function iteratorToArray(e){for(var t=[];;){var r=e.next();if(r.done)break;t.push(r.value)}return t}function primitiveSymbol(){return"function"==typeof Symbol&&Symbol.toPrimitive||"@@toPrimitive"}function toPrimitive(e){return null===e?null:"object"==typeof e?""+e:e}function iteratorSymbol(){return"function"==typeof Symbol&&Symbol.iterator||"@@iterator"}function declareIterator(e,t){addHiddenFinalProp(e,iteratorSymbol(),t)}function makeIterable(e){return e[iteratorSymbol()]=self,e}function toStringTagSymbol(){return"function"==typeof Symbol&&Symbol.toStringTag||"@@toStringTag"}function self(){return this}var Atom=function(){function e(e){void 0===e&&(e="Atom@"+getNextId()),this.name=e,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=exports.IDerivationState.NOT_TRACKING}return e.prototype.onBecomeUnobserved=function(){},e.prototype.onBecomeObserved=function(){},e.prototype.reportObserved=function(){return reportObserved(this)},e.prototype.reportChanged=function(){startBatch(),propagateChanged(this),endBatch()},e.prototype.toString=function(){return this.name},e}(),isAtom=createInstanceofPredicate("Atom",Atom);function createAtom(e,t,r){void 0===t&&(t=noop),void 0===r&&(r=noop);var n=new Atom(e);return onBecomeObserved(n,t),onBecomeUnobserved(n,r),n}function identityComparer(e,t){return e===t}function structuralComparer(e,t){return deepEqual(e,t)}function defaultComparer(e,t){return areBothNaN(e,t)||identityComparer(e,t)}var comparer={identity:identityComparer,structural:structuralComparer,default:defaultComparer},enumerableDescriptorCache={},nonEnumerableDescriptorCache={};function createPropertyInitializerDescriptor(e,t){var r=t?enumerableDescriptorCache:nonEnumerableDescriptorCache;return r[e]||(r[e]={configurable:!0,enumerable:t,get:function(){return initializeInstance(this),this[e]},set:function(t){initializeInstance(this),this[e]=t}})}function initializeInstance(e){if(!0!==e.__mobxDidRunLazyInitializers){var t=e.__mobxDecorators;if(t)for(var r in addHiddenProp(e,"__mobxDidRunLazyInitializers",!0),t){var n=t[r];n.propertyCreator(e,n.prop,n.descriptor,n.decoratorTarget,n.decoratorArguments)}}}function createPropDecorator(e,t){return function(){var r,n=function(n,o,a,i){if(!0===i)return t(n,o,a,n,r),null;if(!Object.prototype.hasOwnProperty.call(n,"__mobxDecorators")){var s=n.__mobxDecorators;addHiddenProp(n,"__mobxDecorators",__assign({},s))}return n.__mobxDecorators[o]={prop:o,propertyCreator:t,descriptor:a,decoratorTarget:n,decoratorArguments:r},createPropertyInitializerDescriptor(o,e)};return quacksLikeADecorator(arguments)?(r=EMPTY_ARRAY,n.apply(null,arguments)):(r=Array.prototype.slice.call(arguments),n)}}function quacksLikeADecorator(e){return(2===e.length||3===e.length)&&"string"==typeof e[1]||4===e.length&&!0===e[3]}function deepEnhancer(e,t,r){return isObservable(e)?e:Array.isArray(e)?observable.array(e,{name:r}):isPlainObject(e)?observable.object(e,void 0,{name:r}):isES6Map(e)?observable.map(e,{name:r}):isES6Set(e)?observable.set(e,{name:r}):e}function shallowEnhancer(e,t,r){return null==e?e:isObservableObject(e)||isObservableArray(e)||isObservableMap(e)||isObservableSet(e)?e:Array.isArray(e)?observable.array(e,{name:r,deep:!1}):isPlainObject(e)?observable.object(e,void 0,{name:r,deep:!1}):isES6Map(e)?observable.map(e,{name:r,deep:!1}):isES6Set(e)?observable.set(e,{name:r,deep:!1}):fail(!1)}function referenceEnhancer(e){return e}function refStructEnhancer(e,t,r){return deepEqual(e,t)?t:e}function createDecoratorForEnhancer(e){var t=createPropDecorator(!0,function(t,r,n,o,a){defineObservableProperty(t,r,n?n.initializer?n.initializer.call(t):n.value:void 0,e)}),r=("undefined"!=typeof process&&process.env,t);return r.enhancer=e,r}var defaultCreateObservableOptions={deep:!0,name:void 0,defaultDecorator:void 0},shallowCreateObservableOptions={deep:!1,name:void 0,defaultDecorator:void 0};function asCreateObservableOptions(e){return null==e?defaultCreateObservableOptions:"string"==typeof e?{name:e,deep:!0}:e}function getEnhancerFromOptions(e){return e.defaultDecorator?e.defaultDecorator.enhancer:!1===e.deep?referenceEnhancer:deepEnhancer}Object.freeze(defaultCreateObservableOptions),Object.freeze(shallowCreateObservableOptions);var deepDecorator=createDecoratorForEnhancer(deepEnhancer),shallowDecorator=createDecoratorForEnhancer(shallowEnhancer),refDecorator=createDecoratorForEnhancer(referenceEnhancer),refStructDecorator=createDecoratorForEnhancer(refStructEnhancer);function createObservable(e,t,r){if("string"==typeof arguments[1])return deepDecorator.apply(null,arguments);if(isObservable(e))return e;var n=isPlainObject(e)?observable.object(e,t,r):Array.isArray(e)?observable.array(e,t):isES6Map(e)?observable.map(e,t):isES6Set(e)?observable.set(e,t):e;if(n!==e)return n;fail(!1)}var observableFactories={box:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("box");var r=asCreateObservableOptions(t);return new ObservableValue(e,getEnhancerFromOptions(r),r.name,!0,r.equals)},shallowBox:function(e,t){return arguments.length>2&&incorrectlyUsedAsDecorator("shallowBox"),deprecated("observable.shallowBox","observable.box(value, { deep: false })"),observable.box(e,{name:t,deep:!1})},array:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("array");var r=asCreateObservableOptions(t);return new ObservableArray(e,getEnhancerFromOptions(r),r.name)},shallowArray:function(e,t){return arguments.length>2&&incorrectlyUsedAsDecorator("shallowArray"),deprecated("observable.shallowArray","observable.array(values, { deep: false })"),observable.array(e,{name:t,deep:!1})},map:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("map");var r=asCreateObservableOptions(t);return new ObservableMap(e,getEnhancerFromOptions(r),r.name)},shallowMap:function(e,t){return arguments.length>2&&incorrectlyUsedAsDecorator("shallowMap"),deprecated("observable.shallowMap","observable.map(values, { deep: false })"),observable.map(e,{name:t,deep:!1})},set:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("set");var r=asCreateObservableOptions(t);return new ObservableSet(e,getEnhancerFromOptions(r),r.name)},object:function(e,t,r){return"string"==typeof arguments[1]&&incorrectlyUsedAsDecorator("object"),extendObservable({},e,t,asCreateObservableOptions(r))},shallowObject:function(e,t){return"string"==typeof arguments[1]&&incorrectlyUsedAsDecorator("shallowObject"),deprecated("observable.shallowObject","observable.object(values, {}, { deep: false })"),observable.object(e,{},{name:t,deep:!1})},ref:refDecorator,shallow:shallowDecorator,deep:deepDecorator,struct:refStructDecorator},observable=createObservable;function incorrectlyUsedAsDecorator(e){fail("Expected one or two arguments to observable."+e+". Did you accidentally try to use observable."+e+" as decorator?")}Object.keys(observableFactories).forEach(function(e){return observable[e]=observableFactories[e]});var computedDecorator=createPropDecorator(!1,function(e,t,r,n,o){var a=r.get,i=r.set,s=o[0]||{};defineComputedProperty(e,t,__assign({get:a,set:i},s))}),computedStructDecorator=computedDecorator({equals:comparer.structural}),computed=function(e,t,r){if("string"==typeof t)return computedDecorator.apply(null,arguments);if(null!==e&&"object"==typeof e&&1===arguments.length)return computedDecorator.apply(null,arguments);var n="object"==typeof t?t:{};return n.get=e,n.set="function"==typeof t?t:n.set,n.name=n.name||e.name||"",new ComputedValue(n)};function createAction(e,t){var r=function(){return executeAction(e,t,this,arguments)};return r.isMobxAction=!0,r}function executeAction(e,t,r,n){var o=startAction(e,t,r,n),a=!0;try{var i=t.apply(r,n);return a=!1,i}finally{a?(globalState.suppressReactionErrors=a,endAction(o),globalState.suppressReactionErrors=!1):endAction(o)}}function startAction(e,t,r,n){var o=isSpyEnabled()&&!!e,a=0;if(o){a=Date.now();var i=n&&n.length||0,s=new Array(i);if(i>0)for(var c=0;c<i;c++)s[c]=n[c];spyReportStart({type:"action",name:e,object:r,arguments:s})}var u=untrackedStart();return startBatch(),{prevDerivation:u,prevAllowStateChanges:allowStateChangesStart(!0),notifySpy:o,startTime:a}}function endAction(e){allowStateChangesEnd(e.prevAllowStateChanges),endBatch(),untrackedEnd(e.prevDerivation),e.notifySpy&&spyReportEnd({time:Date.now()-e.startTime})}function allowStateChanges(e,t){var r,n=allowStateChangesStart(e);try{r=t()}finally{allowStateChangesEnd(n)}return r}function allowStateChangesStart(e){var t=globalState.allowStateChanges;return globalState.allowStateChanges=e,t}function allowStateChangesEnd(e){globalState.allowStateChanges=e}function allowStateChangesInsideComputed(e){var t,r=globalState.computationDepth;globalState.computationDepth=0;try{t=e()}finally{globalState.computationDepth=r}return t}computed.struct=computedStructDecorator;var ObservableValue=function(e){function t(t,r,n,o,a){void 0===n&&(n="ObservableValue@"+getNextId()),void 0===o&&(o=!0),void 0===a&&(a=comparer.default);var i=e.call(this,n)||this;return i.enhancer=r,i.name=n,i.equals=a,i.hasUnreportedChange=!1,i.value=r(t,void 0,n),o&&isSpyEnabled()&&spyReport({type:"create",name:i.name,newValue:""+i.value}),i}return __extends(t,e),t.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.prototype.set=function(e){var t=this.value;if((e=this.prepareNewValue(e))!==globalState.UNCHANGED){var r=isSpyEnabled();r&&spyReportStart({type:"update",name:this.name,newValue:e,oldValue:t}),this.setNewValue(e),r&&spyReportEnd()}},t.prototype.prepareNewValue=function(e){if(checkIfStateModificationsAreAllowed(this),hasInterceptors(this)){var t=interceptChange(this,{object:this,type:"update",newValue:e});if(!t)return globalState.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value,this.name),this.equals(this.value,e)?globalState.UNCHANGED:e},t.prototype.setNewValue=function(e){var t=this.value;this.value=e,this.reportChanged(),hasListeners(this)&&notifyListeners(this,{type:"update",object:this,newValue:e,oldValue:t})},t.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},t.prototype.intercept=function(e){return registerInterceptor(this,e)},t.prototype.observe=function(e,t){return t&&e({object:this,type:"update",newValue:this.value,oldValue:void 0}),registerListener(this,e)},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.value+"]"},t.prototype.valueOf=function(){return toPrimitive(this.get())},t}(Atom);ObservableValue.prototype[primitiveSymbol()]=ObservableValue.prototype.valueOf;var isObservableValue=createInstanceofPredicate("ObservableValue",ObservableValue),ComputedValue=function(){function e(e){this.dependenciesState=exports.IDerivationState.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=exports.IDerivationState.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+getNextId(),this.value=new CaughtException(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=TraceMode.NONE,this.derivation=e.get,this.name=e.name||"ComputedValue@"+getNextId(),e.set&&(this.setter=createAction(this.name+"-setter",e.set)),this.equals=e.equals||(e.compareStructural||e.struct?comparer.structural:comparer.default),this.scope=e.context,this.requiresReaction=!!e.requiresReaction,this.keepAlive=!!e.keepAlive}return e.prototype.onBecomeStale=function(){propagateMaybeChanged(this)},e.prototype.onBecomeUnobserved=function(){},e.prototype.onBecomeObserved=function(){},e.prototype.get=function(){this.isComputing&&fail("Cycle detected in computation "+this.name+": "+this.derivation),0!==globalState.inBatch||0!==this.observers.length||this.keepAlive?(reportObserved(this),shouldCompute(this)&&this.trackAndCompute()&&propagateChangeConfirmed(this)):shouldCompute(this)&&(this.warnAboutUntrackedRead(),startBatch(),this.value=this.computeValue(!1),endBatch());var e=this.value;if(isCaughtException(e))throw e.cause;return e},e.prototype.peek=function(){var e=this.computeValue(!1);if(isCaughtException(e))throw e.cause;return e},e.prototype.set=function(e){if(this.setter){invariant(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,e)}finally{this.isRunningSetter=!1}}else invariant(!1,!1)},e.prototype.trackAndCompute=function(){isSpyEnabled()&&spyReport({object:this.scope,type:"compute",name:this.name});var e=this.value,t=this.dependenciesState===exports.IDerivationState.NOT_TRACKING,r=this.computeValue(!0),n=t||isCaughtException(e)||isCaughtException(r)||!this.equals(e,r);return n&&(this.value=r),n},e.prototype.computeValue=function(e){var t;if(this.isComputing=!0,globalState.computationDepth++,e)t=trackDerivedFunction(this,this.derivation,this.scope);else if(!0===globalState.disableErrorBoundaries)t=this.derivation.call(this.scope);else try{t=this.derivation.call(this.scope)}catch(e){t=new CaughtException(e)}return globalState.computationDepth--,this.isComputing=!1,t},e.prototype.suspend=function(){this.keepAlive||(clearObserving(this),this.value=void 0)},e.prototype.observe=function(e,t){var r=this,n=!0,o=void 0;return autorun(function(){var a=r.get();if(!n||t){var i=untrackedStart();e({type:"update",object:r,newValue:a,oldValue:o}),untrackedEnd(i)}n=!1,o=a})},e.prototype.warnAboutUntrackedRead=function(){},e.prototype.toJSON=function(){return this.get()},e.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},e.prototype.valueOf=function(){return toPrimitive(this.get())},e}();ComputedValue.prototype[primitiveSymbol()]=ComputedValue.prototype.valueOf;var TraceMode,isComputedValue=createInstanceofPredicate("ComputedValue",ComputedValue);!function(e){e[e.NOT_TRACKING=-1]="NOT_TRACKING",e[e.UP_TO_DATE=0]="UP_TO_DATE",e[e.POSSIBLY_STALE=1]="POSSIBLY_STALE",e[e.STALE=2]="STALE"}(exports.IDerivationState||(exports.IDerivationState={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(TraceMode||(TraceMode={}));var CaughtException=function(){return function(e){this.cause=e}}();function isCaughtException(e){return e instanceof CaughtException}function shouldCompute(e){switch(e.dependenciesState){case exports.IDerivationState.UP_TO_DATE:return!1;case exports.IDerivationState.NOT_TRACKING:case exports.IDerivationState.STALE:return!0;case exports.IDerivationState.POSSIBLY_STALE:for(var t=untrackedStart(),r=e.observing,n=r.length,o=0;o<n;o++){var a=r[o];if(isComputedValue(a)){if(globalState.disableErrorBoundaries)a.get();else try{a.get()}catch(e){return untrackedEnd(t),!0}if(e.dependenciesState===exports.IDerivationState.STALE)return untrackedEnd(t),!0}}return changeDependenciesStateTo0(e),untrackedEnd(t),!1}}function isComputingDerivation(){return null!==globalState.trackingDerivation}function checkIfStateModificationsAreAllowed(e){var t=e.observers.length>0;globalState.computationDepth>0&&t&&fail(!1),globalState.allowStateChanges||!t&&"strict"!==globalState.enforceActions||fail(!1)}function trackDerivedFunction(e,t,r){changeDependenciesStateTo0(e),e.newObserving=new Array(e.observing.length+100),e.unboundDepsCount=0,e.runId=++globalState.runId;var n,o=globalState.trackingDerivation;if(globalState.trackingDerivation=e,!0===globalState.disableErrorBoundaries)n=t.call(r);else try{n=t.call(r)}catch(e){n=new CaughtException(e)}return globalState.trackingDerivation=o,bindDependencies(e),n}function bindDependencies(e){for(var t=e.observing,r=e.observing=e.newObserving,n=exports.IDerivationState.UP_TO_DATE,o=0,a=e.unboundDepsCount,i=0;i<a;i++){0===(s=r[i]).diffValue&&(s.diffValue=1,o!==i&&(r[o]=s),o++),s.dependenciesState>n&&(n=s.dependenciesState)}for(r.length=o,e.newObserving=null,a=t.length;a--;){0===(s=t[a]).diffValue&&removeObserver(s,e),s.diffValue=0}for(;o--;){var s;1===(s=r[o]).diffValue&&(s.diffValue=0,addObserver(s,e))}n!==exports.IDerivationState.UP_TO_DATE&&(e.dependenciesState=n,e.onBecomeStale())}function clearObserving(e){var t=e.observing;e.observing=[];for(var r=t.length;r--;)removeObserver(t[r],e);e.dependenciesState=exports.IDerivationState.NOT_TRACKING}function untracked(e){var t=untrackedStart(),r=e();return untrackedEnd(t),r}function untrackedStart(){var e=globalState.trackingDerivation;return globalState.trackingDerivation=null,e}function untrackedEnd(e){globalState.trackingDerivation=e}function changeDependenciesStateTo0(e){if(e.dependenciesState!==exports.IDerivationState.UP_TO_DATE){e.dependenciesState=exports.IDerivationState.UP_TO_DATE;for(var t=e.observing,r=t.length;r--;)t[r].lowestObserverState=exports.IDerivationState.UP_TO_DATE}}var persistentKeys=["mobxGuid","spyListeners","enforceActions","computedRequiresReaction","disableErrorBoundaries","runId","UNCHANGED"],MobXGlobals=function(){return function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1}}(),canMergeGlobalState=!0,isolateCalled=!1,globalState=function(){var e=getGlobal();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(canMergeGlobalState=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new MobXGlobals).version&&(canMergeGlobalState=!1),canMergeGlobalState?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new MobXGlobals):(setTimeout(function(){isolateCalled||fail("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")},1),new MobXGlobals)}();function isolateGlobalState(){(globalState.pendingReactions.length||globalState.inBatch||globalState.isRunningReactions)&&fail("isolateGlobalState should be called before MobX is running any reactions"),isolateCalled=!0,canMergeGlobalState&&(0==--getGlobal().__mobxInstanceCount&&(getGlobal().__mobxGlobals=void 0),globalState=new MobXGlobals)}function getGlobalState(){return globalState}function resetGlobalState(){var e=new MobXGlobals;for(var t in e)-1===persistentKeys.indexOf(t)&&(globalState[t]=e[t]);globalState.allowStateChanges=!globalState.enforceActions}function hasObservers(e){return e.observers&&e.observers.length>0}function getObservers(e){return e.observers}function addObserver(e,t){var r=e.observers.length;r&&(e.observersIndexes[t.__mapid]=r),e.observers[r]=t,e.lowestObserverState>t.dependenciesState&&(e.lowestObserverState=t.dependenciesState)}function removeObserver(e,t){if(1===e.observers.length)e.observers.length=0,queueForUnobservation(e);else{var r=e.observers,n=e.observersIndexes,o=r.pop();if(o!==t){var a=n[t.__mapid]||0;a?n[o.__mapid]=a:delete n[o.__mapid],r[a]=o}delete n[t.__mapid]}}function queueForUnobservation(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,globalState.pendingUnobservations.push(e))}function startBatch(){globalState.inBatch++}function endBatch(){if(0==--globalState.inBatch){runReactions();for(var e=globalState.pendingUnobservations,t=0;t<e.length;t++){var r=e[t];r.isPendingUnobservation=!1,0===r.observers.length&&(r.isBeingObserved&&(r.isBeingObserved=!1,r.onBecomeUnobserved()),r instanceof ComputedValue&&r.suspend())}globalState.pendingUnobservations=[]}}function reportObserved(e){var t=globalState.trackingDerivation;return null!==t?(t.runId!==e.lastAccessedBy&&(e.lastAccessedBy=t.runId,t.newObserving[t.unboundDepsCount++]=e,e.isBeingObserved||(e.isBeingObserved=!0,e.onBecomeObserved())),!0):(0===e.observers.length&&globalState.inBatch>0&&queueForUnobservation(e),!1)}function propagateChanged(e){if(e.lowestObserverState!==exports.IDerivationState.STALE){e.lowestObserverState=exports.IDerivationState.STALE;for(var t=e.observers,r=t.length;r--;){var n=t[r];n.dependenciesState===exports.IDerivationState.UP_TO_DATE&&(n.isTracing!==TraceMode.NONE&&logTraceInfo(n,e),n.onBecomeStale()),n.dependenciesState=exports.IDerivationState.STALE}}}function propagateChangeConfirmed(e){if(e.lowestObserverState!==exports.IDerivationState.STALE){e.lowestObserverState=exports.IDerivationState.STALE;for(var t=e.observers,r=t.length;r--;){var n=t[r];n.dependenciesState===exports.IDerivationState.POSSIBLY_STALE?n.dependenciesState=exports.IDerivationState.STALE:n.dependenciesState===exports.IDerivationState.UP_TO_DATE&&(e.lowestObserverState=exports.IDerivationState.UP_TO_DATE)}}}function propagateMaybeChanged(e){if(e.lowestObserverState===exports.IDerivationState.UP_TO_DATE){e.lowestObserverState=exports.IDerivationState.POSSIBLY_STALE;for(var t=e.observers,r=t.length;r--;){var n=t[r];n.dependenciesState===exports.IDerivationState.UP_TO_DATE&&(n.dependenciesState=exports.IDerivationState.POSSIBLY_STALE,n.isTracing!==TraceMode.NONE&&logTraceInfo(n,e),n.onBecomeStale())}}}function logTraceInfo(e,t){if(console.log("[mobx.trace] '"+e.name+"' is invalidated due to a change in: '"+t.name+"'"),e.isTracing===TraceMode.BREAK){var r=[];printDepTree(getDependencyTree(e),r,1),new Function("debugger;\n/*\nTracing '"+e.name+"'\n\nYou are entering this break point because derivation '"+e.name+"' is being traced and '"+t.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(e instanceof ComputedValue?e.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+r.join("\n")+"\n*/\n ")()}}function printDepTree(e,t,r){t.length>=1e3?t.push("(and many more)"):(t.push(""+new Array(r).join("\t")+e.name),e.dependencies&&e.dependencies.forEach(function(e){return printDepTree(e,t,r+1)}))}var Reaction=function(){function e(e,t,r){void 0===e&&(e="Reaction@"+getNextId()),this.name=e,this.onInvalidate=t,this.errorHandler=r,this.observing=[],this.newObserving=[],this.dependenciesState=exports.IDerivationState.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+getNextId(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=TraceMode.NONE}return e.prototype.onBecomeStale=function(){this.schedule()},e.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,globalState.pendingReactions.push(this),runReactions())},e.prototype.isScheduled=function(){return this._isScheduled},e.prototype.runReaction=function(){if(!this.isDisposed){if(startBatch(),this._isScheduled=!1,shouldCompute(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&isSpyEnabled()&&spyReport({name:this.name,type:"scheduled-reaction"})}catch(e){this.reportExceptionInDerivation(e)}}endBatch()}},e.prototype.track=function(e){startBatch();var t,r=isSpyEnabled();r&&(t=Date.now(),spyReportStart({name:this.name,type:"reaction"})),this._isRunning=!0;var n=trackDerivedFunction(this,e,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&clearObserving(this),isCaughtException(n)&&this.reportExceptionInDerivation(n.cause),r&&spyReportEnd({time:Date.now()-t}),endBatch()},e.prototype.reportExceptionInDerivation=function(e){var t=this;if(this.errorHandler)this.errorHandler(e,this);else{if(globalState.disableErrorBoundaries)throw e;var r="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";globalState.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(r,e),isSpyEnabled()&&spyReport({type:"error",name:this.name,message:r,error:""+e}),globalState.globalReactionErrorHandlers.forEach(function(r){return r(e,t)})}},e.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(startBatch(),clearObserving(this),endBatch()))},e.prototype.getDisposer=function(){var e=this.dispose.bind(this);return e.$mobx=this,e},e.prototype.toString=function(){return"Reaction["+this.name+"]"},e.prototype.trace=function(e){void 0===e&&(e=!1),trace(this,e)},e}();function onReactionError(e){return globalState.globalReactionErrorHandlers.push(e),function(){var t=globalState.globalReactionErrorHandlers.indexOf(e);t>=0&&globalState.globalReactionErrorHandlers.splice(t,1)}}var MAX_REACTION_ITERATIONS=100,reactionScheduler=function(e){return e()};function runReactions(){globalState.inBatch>0||globalState.isRunningReactions||reactionScheduler(runReactionsHelper)}function runReactionsHelper(){globalState.isRunningReactions=!0;for(var e=globalState.pendingReactions,t=0;e.length>0;){++t===MAX_REACTION_ITERATIONS&&(console.error("Reaction doesn't converge to a stable state after "+MAX_REACTION_ITERATIONS+" iterations. Probably there is a cycle in the reactive function: "+e[0]),e.splice(0));for(var r=e.splice(0),n=0,o=r.length;n<o;n++)r[n].runReaction()}globalState.isRunningReactions=!1}var isReaction=createInstanceofPredicate("Reaction",Reaction);function setReactionScheduler(e){var t=reactionScheduler;reactionScheduler=function(r){return e(function(){return t(r)})}}function isSpyEnabled(){return!!globalState.spyListeners.length}function spyReport(e){if(globalState.spyListeners.length)for(var t=globalState.spyListeners,r=0,n=t.length;r<n;r++)t[r](e)}function spyReportStart(e){spyReport(__assign({},e,{spyReportStart:!0}))}var END_EVENT={spyReportEnd:!0};function spyReportEnd(e){spyReport(e?__assign({},e,{spyReportEnd:!0}):END_EVENT)}function spy(e){return globalState.spyListeners.push(e),once(function(){globalState.spyListeners=globalState.spyListeners.filter(function(t){return t!==e})})}function dontReassignFields(){fail(!1)}function namedActionDecorator(e){return function(t,r,n){if(n){if(n.value)return{value:createAction(e,n.value),enumerable:!1,configurable:!0,writable:!0};var o=n.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return createAction(e,o.call(this))}}}return actionFieldDecorator(e).apply(this,arguments)}}function actionFieldDecorator(e){return function(t,r,n){Object.defineProperty(t,r,{configurable:!0,enumerable:!1,get:function(){},set:function(t){addHiddenProp(this,r,action(e,t))}})}}function boundActionDecorator(e,t,r,n){return!0===n?(defineBoundAction(e,t,r.value),null):r?{configurable:!0,enumerable:!1,get:function(){return defineBoundAction(this,t,r.value||r.initializer.call(this)),this[t]},set:dontReassignFields}:{enumerable:!1,configurable:!0,set:function(e){defineBoundAction(this,t,e)},get:function(){}}}var action=function(e,t,r,n){return 1===arguments.length&&"function"==typeof e?createAction(e.name||"<unnamed action>",e):2===arguments.length&&"function"==typeof t?createAction(e,t):1===arguments.length&&"string"==typeof e?namedActionDecorator(e):!0!==n?namedActionDecorator(t).apply(null,arguments):void(e[t]=createAction(e.name||t,r.value))};function runInAction(e,t){return executeAction("string"==typeof e?e:e.name||"<unnamed action>","function"==typeof e?e:t,this,void 0)}function isAction(e){return"function"==typeof e&&!0===e.isMobxAction}function defineBoundAction(e,t,r){addHiddenProp(e,t,createAction(t,r.bind(e)))}function autorun(e,t){void 0===t&&(t=EMPTY_OBJECT);var r,n=t&&t.name||e.name||"Autorun@"+getNextId();if(!t.scheduler&&!t.delay)r=new Reaction(n,function(){this.track(i)},t.onError);else{var o=createSchedulerFromOptions(t),a=!1;r=new Reaction(n,function(){a||(a=!0,o(function(){a=!1,r.isDisposed||r.track(i)}))},t.onError)}function i(){e(r)}return r.schedule(),r.getDisposer()}action.bound=boundActionDecorator;var run=function(e){return e()};function createSchedulerFromOptions(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:run}function reaction(e,t,r){void 0===r&&(r=EMPTY_OBJECT),"boolean"==typeof r&&(r={fireImmediately:r},deprecated("Using fireImmediately as argument is deprecated. Use '{ fireImmediately: true }' instead"));var n,o=r.name||"Reaction@"+getNextId(),a=action(o,r.onError?wrapErrorHandler(r.onError,t):t),i=!r.scheduler&&!r.delay,s=createSchedulerFromOptions(r),c=!0,u=!1,l=r.compareStructural?comparer.structural:r.equals||comparer.default,p=new Reaction(o,function(){c||i?d():u||(u=!0,s(d))},r.onError);function d(){if(u=!1,!p.isDisposed){var t=!1;p.track(function(){var r=e(p);t=c||!l(n,r),n=r}),c&&r.fireImmediately&&a(n,p),c||!0!==t||a(n,p),c&&(c=!1)}}return p.schedule(),p.getDisposer()}function wrapErrorHandler(e,t){return function(){try{return t.apply(this,arguments)}catch(t){e.call(this,t)}}}function onBecomeObserved(e,t,r){return interceptHook("onBecomeObserved",e,t,r)}function onBecomeUnobserved(e,t,r){return interceptHook("onBecomeUnobserved",e,t,r)}function interceptHook(e,t,r,n){var o="string"==typeof r?getAtom(t,r):getAtom(t),a="string"==typeof r?n:r,i=o[e];return"function"!=typeof i?fail(!1):(o[e]=function(){i.call(this),a.call(this)},function(){o[e]=i})}function configure(e){var t=e.enforceActions,r=e.computedRequiresReaction,n=e.computedConfigurable,o=e.disableErrorBoundaries,a=e.arrayBuffer,i=e.reactionScheduler;if(!0===e.isolateGlobalState&&isolateGlobalState(),void 0!==t){"boolean"!=typeof t&&"strict"!==t||deprecated("Deprecated value for 'enforceActions', use 'false' => '\"never\"', 'true' => '\"observed\"', '\"strict\"' => \"'always'\" instead");var s=void 0;switch(t){case!0:case"observed":s=!0;break;case!1:case"never":s=!1;break;case"strict":case"always":s="strict";break;default:fail("Invalid value for 'enforceActions': '"+t+"', expected 'never', 'always' or 'observed'")}globalState.enforceActions=s,globalState.allowStateChanges=!0!==s&&"strict"!==s}void 0!==r&&(globalState.computedRequiresReaction=!!r),void 0!==n&&(globalState.computedConfigurable=!!n),void 0!==o&&(!0===o&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors if this is on."),globalState.disableErrorBoundaries=!!o),"number"==typeof a&&reserveArrayBuffer(a),i&&setReactionScheduler(i)}function decorate(e,t){var r="function"==typeof e?e.prototype:e,n=function(e){var n=t[e];Array.isArray(n)||(n=[n]);var o=Object.getOwnPropertyDescriptor(r,e),a=n.reduce(function(t,n){return n(r,e,t)},o);a&&Object.defineProperty(r,e,a)};for(var o in t)n(o);return e}function extendShallowObservable(e,t,r){return deprecated("'extendShallowObservable' is deprecated, use 'extendObservable(target, props, { deep: false })' instead"),extendObservable(e,t,r,shallowCreateObservableOptions)}function extendObservable(e,t,r,n){var o=(n=asCreateObservableOptions(n)).defaultDecorator||(!1===n.deep?refDecorator:deepDecorator);initializeInstance(e),asObservableObject(e,n.name,o.enhancer),startBatch();try{for(var a in t){var i=Object.getOwnPropertyDescriptor(t,a),s=(r&&a in r?r[a]:i.get?computedDecorator:o)(e,a,i,!0);s&&Object.defineProperty(e,a,s)}}finally{endBatch()}return e}function getDependencyTree(e,t){return nodeToDependencyTree(getAtom(e,t))}function nodeToDependencyTree(e){var t={name:e.name};return e.observing&&e.observing.length>0&&(t.dependencies=unique(e.observing).map(nodeToDependencyTree)),t}function getObserverTree(e,t){return nodeToObserverTree(getAtom(e,t))}function nodeToObserverTree(e){var t={name:e.name};return hasObservers(e)&&(t.observers=getObservers(e).map(nodeToObserverTree)),t}var generatorId=0;function flow(e){1!==arguments.length&&fail("Flow expects one 1 argument and cannot be used as decorator");var t=e.name||"<unnamed flow>";return function(){var r,n=arguments,o=++generatorId,a=action(t+" - runid: "+o+" - init",e).apply(this,n),i=void 0,s=new Promise(function(e,n){var s=0;function c(e){var r;i=void 0;try{r=action(t+" - runid: "+o+" - yield "+s++,a.next).call(a,e)}catch(e){return n(e)}l(r)}function u(e){var r;i=void 0;try{r=action(t+" - runid: "+o+" - yield "+s++,a.throw).call(a,e)}catch(e){return n(e)}l(r)}function l(t){if(!t||"function"!=typeof t.then)return t.done?e(t.value):(i=Promise.resolve(t.value)).then(c,u);t.then(l,n)}r=n,c(void 0)});return s.cancel=action(t+" - runid: "+o+" - cancel",function(){try{i&&cancelPromise(i);var e=a.return(),t=Promise.resolve(e.value);t.then(noop,noop),cancelPromise(t),r(new Error("FLOW_CANCELLED"))}catch(e){r(e)}}),s}}function cancelPromise(e){"function"==typeof e.cancel&&e.cancel()}function interceptReads(e,t,r){var n;if(isObservableMap(e)||isObservableArray(e)||isObservableValue(e))n=getAdministration(e);else{if(!isObservableObject(e))return fail(!1);if("string"!=typeof t)return fail(!1);n=getAdministration(e,t)}return void 0!==n.dehancer?fail(!1):(n.dehancer="function"==typeof t?t:r,function(){n.dehancer=void 0})}function intercept(e,t,r){return"function"==typeof r?interceptProperty(e,t,r):interceptInterceptable(e,t)}function interceptInterceptable(e,t){return getAdministration(e).intercept(t)}function interceptProperty(e,t,r){return getAdministration(e,t).intercept(r)}function _isComputed(e,t){if(null==e)return!1;if(void 0!==t){if(!1===isObservableObject(e))return!1;if(!e.$mobx.values[t])return!1;var r=getAtom(e,t);return isComputedValue(r)}return isComputedValue(e)}function isComputed(e){return arguments.length>1?fail(!1):_isComputed(e)}function isComputedProp(e,t){return"string"!=typeof t?fail(!1):_isComputed(e,t)}function _isObservable(e,t){if(null==e)return!1;if(void 0!==t){if(isObservableObject(e)){var r=e.$mobx;return r.values&&!!r.values[t]}return!1}return isObservableObject(e)||!!e.$mobx||isAtom(e)||isReaction(e)||isComputedValue(e)}function isObservable(e){return 1!==arguments.length&&fail(!1),_isObservable(e)}function isObservableProp(e,t){return"string"!=typeof t?fail(!1):_isObservable(e,t)}function keys(e){return isObservableObject(e)?e.$mobx.getKeys():isObservableMap(e)?e._keys.slice():isObservableSet(e)?iteratorToArray(e.keys()):isObservableArray(e)?e.map(function(e,t){return t}):fail(!1)}function values(e){return isObservableObject(e)?keys(e).map(function(t){return e[t]}):isObservableMap(e)?keys(e).map(function(t){return e.get(t)}):isObservableSet(e)?iteratorToArray(e.values()):isObservableArray(e)?e.slice():fail(!1)}function entries(e){return isObservableObject(e)?keys(e).map(function(t){return[t,e[t]]}):isObservableMap(e)?keys(e).map(function(t){return[t,e.get(t)]}):isObservableSet(e)?iteratorToArray(e.entries()):isObservableArray(e)?e.map(function(e,t){return[t,e]}):fail(!1)}function set(e,t,r){if(2!==arguments.length||isObservableSet(e))if(isObservableObject(e)){var n=e.$mobx;n.values[t]?n.write(e,t,r):defineObservableProperty(e,t,r,n.defaultEnhancer)}else if(isObservableMap(e))e.set(t,r);else if(isObservableSet(e))e.add(t);else{if(!isObservableArray(e))return fail(!1);"number"!=typeof t&&(t=parseInt(t,10)),invariant(t>=0,"Not a valid index: '"+t+"'"),startBatch(),t>=e.length&&(e.length=t+1),e[t]=r,endBatch()}else{startBatch();var o=t;try{for(var a in o)set(e,a,o[a])}finally{endBatch()}}}function remove(e,t){if(isObservableObject(e))e.$mobx.remove(t);else if(isObservableMap(e))e.delete(t);else if(isObservableSet(e))e.delete(t);else{if(!isObservableArray(e))return fail(!1);"number"!=typeof t&&(t=parseInt(t,10)),invariant(t>=0,"Not a valid index: '"+t+"'"),e.splice(t,1)}}function has(e,t){if(isObservableObject(e)){var r=getAdministration(e);return r.getKeys(),!!r.values[t]}return isObservableMap(e)?e.has(t):isObservableSet(e)?e.has(t):isObservableArray(e)?t>=0&&t<e.length:fail(!1)}function get(e,t){if(has(e,t))return isObservableObject(e)?e[t]:isObservableMap(e)?e.get(t):isObservableArray(e)?e[t]:fail(!1)}function observe(e,t,r,n){return"function"==typeof r?observeObservableProperty(e,t,r,n):observeObservable(e,t,r)}function observeObservable(e,t,r){return getAdministration(e).observe(t,r)}function observeObservableProperty(e,t,r,n){return getAdministration(e,t).observe(r,n)}var defaultOptions={detectCycles:!0,exportMapsAsObjects:!0,recurseEverything:!1};function cache(e,t,r,n){return n.detectCycles&&e.set(t,r),r}function toJSHelper(e,t,r){if(!t.recurseEverything&&!isObservable(e))return e;if("object"!=typeof e)return e;if(null===e)return null;if(e instanceof Date)return e;if(isObservableValue(e))return toJSHelper(e.get(),t,r);if(isObservable(e)&&keys(e),!0===t.detectCycles&&null!==e&&r.has(e))return r.get(e);if(isObservableArray(e)||Array.isArray(e)){var n=cache(r,e,[],t),o=e.map(function(e){return toJSHelper(e,t,r)});n.length=o.length;for(var a=0,i=o.length;a<i;a++)n[a]=o[a];return n}if(isObservableSet(e)||Object.getPrototypeOf(e)===Set.prototype){if(!1===t.exportMapsAsObjects){var s=cache(r,e,new Set,t);return e.forEach(function(e){s.add(toJSHelper(e,t,r))}),s}var c=cache(r,e,[],t);return e.forEach(function(e){c.push(toJSHelper(e,t,r))}),c}if(isObservableMap(e)||Object.getPrototypeOf(e)===Map.prototype){if(!1===t.exportMapsAsObjects){var u=cache(r,e,new Map,t);return e.forEach(function(e,n){u.set(n,toJSHelper(e,t,r))}),u}var l=cache(r,e,{},t);return e.forEach(function(e,n){l[n]=toJSHelper(e,t,r)}),l}var p=cache(r,e,{},t);for(var d in e)p[d]=toJSHelper(e[d],t,r);return p}function toJS(e,t){var r;return"boolean"==typeof t&&(t={detectCycles:t}),t||(t=defaultOptions),t.detectCycles=void 0===t.detectCycles?!0===t.recurseEverything:!0===t.detectCycles,t.detectCycles&&(r=new Map),toJSHelper(e,t,r)}function trace(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=!1;"boolean"==typeof e[e.length-1]&&(r=e.pop());var n=getAtomFromArgs(e);if(!n)return fail(!1);n.isTracing===TraceMode.NONE&&console.log("[mobx.trace] '"+n.name+"' tracing enabled"),n.isTracing=r?TraceMode.BREAK:TraceMode.LOG}function getAtomFromArgs(e){switch(e.length){case 0:return globalState.trackingDerivation;case 1:return getAtom(e[0]);case 2:return getAtom(e[0],e[1])}}function transaction(e,t){void 0===t&&(t=void 0),startBatch();try{return e.apply(t)}finally{endBatch()}}function when(e,t,r){return 1===arguments.length||t&&"object"==typeof t?whenPromise(e,t):_when(e,t,r||{})}function _when(e,t,r){var n;"number"==typeof r.timeout&&(n=setTimeout(function(){if(!a.$mobx.isDisposed){a();var e=new Error("WHEN_TIMEOUT");if(!r.onError)throw e;r.onError(e)}},r.timeout)),r.name=r.name||"When@"+getNextId();var o=createAction(r.name+"-effect",t),a=autorun(function(t){e()&&(t.dispose(),n&&clearTimeout(n),o())},r);return a}function whenPromise(e,t){var r,n=new Promise(function(n,o){var a=_when(e,n,__assign({},t,{onError:o}));r=function(){a(),o("WHEN_CANCELLED")}});return n.cancel=r,n}function hasInterceptors(e){return void 0!==e.interceptors&&e.interceptors.length>0}function registerInterceptor(e,t){var r=e.interceptors||(e.interceptors=[]);return r.push(t),once(function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)})}function interceptChange(e,t){var r=untrackedStart();try{var n=e.interceptors;if(n)for(var o=0,a=n.length;o<a&&(invariant(!(t=n[o](t))||t.type,"Intercept handlers should return nothing or a change object"),t);o++);return t}finally{untrackedEnd(r)}}function hasListeners(e){return void 0!==e.changeListeners&&e.changeListeners.length>0}function registerListener(e,t){var r=e.changeListeners||(e.changeListeners=[]);return r.push(t),once(function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)})}function notifyListeners(e,t){var r=untrackedStart(),n=e.changeListeners;if(n){for(var o=0,a=(n=n.slice()).length;o<a;o++)n[o](t);untrackedEnd(r)}}var MAX_SPLICE_SIZE=1e4,safariPrototypeSetterInheritanceBug=function(){var e=!1,t={};return Object.defineProperty(t,"0",{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),OBSERVABLE_ARRAY_BUFFER_SIZE=0,StubArray=function(){return function(){}}();function inherit(e,t){void 0!==Object.setPrototypeOf?Object.setPrototypeOf(e.prototype,t):void 0!==e.prototype.__proto__?e.prototype.__proto__=t:e.prototype=t}inherit(StubArray,Array.prototype),Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach(function(e){Object.defineProperty(StubArray.prototype,e,{configurable:!0,writable:!0,value:Array.prototype[e]})});var ObservableArrayAdministration=function(){function e(e,t,r,n){this.array=r,this.owned=n,this.values=[],this.lastKnownLength=0,this.atom=new Atom(e||"ObservableArray@"+getNextId()),this.enhancer=function(r,n){return t(r,n,e+"[..]")}}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.dehanceValues=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e.prototype.observe=function(e,t){return void 0===t&&(t=!1),t&&e({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),registerListener(this,e)},e.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},e.prototype.setArrayLength=function(e){if("number"!=typeof e||e<0)throw new Error("[mobx.array] Out of range: "+e);var t=this.values.length;if(e!==t)if(e>t){for(var r=new Array(e-t),n=0;n<e-t;n++)r[n]=void 0;this.spliceWithArray(t,0,r)}else this.spliceWithArray(e,t-e)},e.prototype.updateArrayLength=function(e,t){if(e!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed. Did you use peek() to change it?");this.lastKnownLength+=t,t>0&&e+t+1>OBSERVABLE_ARRAY_BUFFER_SIZE&&reserveArrayBuffer(e+t+1)},e.prototype.spliceWithArray=function(e,t,r){var n=this;checkIfStateModificationsAreAllowed(this.atom);var o=this.values.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===r&&(r=EMPTY_ARRAY),hasInterceptors(this)){var a=interceptChange(this,{object:this.array,type:"splice",index:e,removedCount:t,added:r});if(!a)return EMPTY_ARRAY;t=a.removedCount,r=a.added}var i=(r=0===r.length?r:r.map(function(e){return n.enhancer(e,void 0)})).length-t;this.updateArrayLength(o,i);var s=this.spliceItemsIntoValues(e,t,r);return 0===t&&0===r.length||this.notifyArraySplice(e,r,s),this.dehanceValues(s)},e.prototype.spliceItemsIntoValues=function(e,t,r){var n;if(r.length<MAX_SPLICE_SIZE)return(n=this.values).splice.apply(n,__spread([e,t],r));var o=this.values.slice(e,e+t);return this.values=this.values.slice(0,e).concat(r,this.values.slice(e+t)),o},e.prototype.notifyArrayChildUpdate=function(e,t,r){var n=!this.owned&&isSpyEnabled(),o=hasListeners(this),a=o||n?{object:this.array,type:"update",index:e,newValue:t,oldValue:r}:null;n&&spyReportStart(__assign({},a,{name:this.atom.name})),this.atom.reportChanged(),o&&notifyListeners(this,a),n&&spyReportEnd()},e.prototype.notifyArraySplice=function(e,t,r){var n=!this.owned&&isSpyEnabled(),o=hasListeners(this),a=o||n?{object:this.array,type:"splice",index:e,removed:r,added:t,removedCount:r.length,addedCount:t.length}:null;n&&spyReportStart(__assign({},a,{name:this.atom.name})),this.atom.reportChanged(),o&&notifyListeners(this,a),n&&spyReportEnd()},e}(),ObservableArray=function(e){function t(t,r,n,o){void 0===n&&(n="ObservableArray@"+getNextId()),void 0===o&&(o=!1);var a=e.call(this)||this,i=new ObservableArrayAdministration(n,r,a,o);if(addHiddenFinalProp(a,"$mobx",i),t&&t.length){var s=allowStateChangesStart(!0);a.spliceWithArray(0,0,t),allowStateChangesEnd(s)}return safariPrototypeSetterInheritanceBug&&Object.defineProperty(i.array,"0",ENTRY_0),a}return __extends(t,e),t.prototype.intercept=function(e){return this.$mobx.intercept(e)},t.prototype.observe=function(e,t){return void 0===t&&(t=!1),this.$mobx.observe(e,t)},t.prototype.clear=function(){return this.splice(0)},t.prototype.concat=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.$mobx.atom.reportObserved(),Array.prototype.concat.apply(this.peek(),e.map(function(e){return isObservableArray(e)?e.peek():e}))},t.prototype.replace=function(e){return this.$mobx.spliceWithArray(0,this.$mobx.values.length,e)},t.prototype.toJS=function(){return this.slice()},t.prototype.toJSON=function(){return this.toJS()},t.prototype.peek=function(){return this.$mobx.atom.reportObserved(),this.$mobx.dehanceValues(this.$mobx.values)},t.prototype.find=function(e,t,r){void 0===r&&(r=0),3===arguments.length&&deprecated("The array.find fromIndex argument to find will not be supported anymore in the next major");var n=this.findIndex.apply(this,arguments);return-1===n?void 0:this.get(n)},t.prototype.findIndex=function(e,t,r){void 0===r&&(r=0),3===arguments.length&&deprecated("The array.findIndex fromIndex argument to find will not be supported anymore in the next major");for(var n=this.peek(),o=n.length,a=r;a<o;a++)if(e.call(t,n[a],a,this))return a;return-1},t.prototype.splice=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];switch(arguments.length){case 0:return[];case 1:return this.$mobx.spliceWithArray(e);case 2:return this.$mobx.spliceWithArray(e,t)}return this.$mobx.spliceWithArray(e,t,r)},t.prototype.spliceWithArray=function(e,t,r){return this.$mobx.spliceWithArray(e,t,r)},t.prototype.push=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=this.$mobx;return r.spliceWithArray(r.values.length,0,e),r.values.length},t.prototype.pop=function(){return this.splice(Math.max(this.$mobx.values.length-1,0),1)[0]},t.prototype.shift=function(){return this.splice(0,1)[0]},t.prototype.unshift=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=this.$mobx;return r.spliceWithArray(0,0,e),r.values.length},t.prototype.reverse=function(){var e=this.slice();return e.reverse.apply(e,arguments)},t.prototype.sort=function(e){var t=this.slice();return t.sort.apply(t,arguments)},t.prototype.remove=function(e){var t=this.$mobx.dehanceValues(this.$mobx.values).indexOf(e);return t>-1&&(this.splice(t,1),!0)},t.prototype.move=function(e,t){function r(e){if(e<0)throw new Error("[mobx.array] Index out of bounds: "+e+" is negative");var t=this.$mobx.values.length;if(e>=t)throw new Error("[mobx.array] Index out of bounds: "+e+" is not smaller than "+t)}if(deprecated("observableArray.move is deprecated, use .slice() & .replace() instead"),r.call(this,e),r.call(this,t),e!==t){var n,o=this.$mobx.values;n=e<t?__spread(o.slice(0,e),o.slice(e+1,t+1),[o[e]],o.slice(t+1)):__spread(o.slice(0,t),[o[e]],o.slice(t,e),o.slice(e+1)),this.replace(n)}},t.prototype.get=function(e){var t=this.$mobx;if(t){if(e<t.values.length)return t.atom.reportObserved(),t.dehanceValue(t.values[e]);console.warn("[mobx.array] Attempt to read an array index ("+e+") that is out of bounds ("+t.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},t.prototype.set=function(e,t){var r=this.$mobx,n=r.values;if(e<n.length){checkIfStateModificationsAreAllowed(r.atom);var o=n[e];if(hasInterceptors(r)){var a=interceptChange(r,{type:"update",object:this,index:e,newValue:t});if(!a)return;t=a.newValue}(t=r.enhancer(t,o))!==o&&(n[e]=t,r.notifyArrayChildUpdate(e,t,o))}else{if(e!==n.length)throw new Error("[mobx.array] Index out of bounds, "+e+" is larger than "+n.length);r.spliceWithArray(e,0,[t])}},t}(StubArray);declareIterator(ObservableArray.prototype,function(){this.$mobx.atom.reportObserved();var e=this,t=0;return makeIterable({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})}),Object.defineProperty(ObservableArray.prototype,"length",{enumerable:!1,configurable:!0,get:function(){return this.$mobx.getArrayLength()},set:function(e){this.$mobx.setArrayLength(e)}}),addHiddenProp(ObservableArray.prototype,toStringTagSymbol(),"Array"),["every","filter","forEach","indexOf","join","lastIndexOf","map","reduce","reduceRight","slice","some","toString","toLocaleString"].forEach(function(e){var t=Array.prototype[e];invariant("function"==typeof t,"Base function not defined on Array prototype: '"+e+"'"),addHiddenProp(ObservableArray.prototype,e,function(){return t.apply(this.peek(),arguments)})}),makeNonEnumerable(ObservableArray.prototype,["constructor","intercept","observe","clear","concat","get","replace","toJS","toJSON","peek","find","findIndex","splice","spliceWithArray","push","pop","set","shift","unshift","reverse","sort","remove","move","toString","toLocaleString"]);var ENTRY_0=createArrayEntryDescriptor(0);function createArrayEntryDescriptor(e){return{enumerable:!1,configurable:!1,get:function(){return this.get(e)},set:function(t){this.set(e,t)}}}function createArrayBufferItem(e){Object.defineProperty(ObservableArray.prototype,""+e,createArrayEntryDescriptor(e))}function reserveArrayBuffer(e){for(var t=OBSERVABLE_ARRAY_BUFFER_SIZE;t<e;t++)createArrayBufferItem(t);OBSERVABLE_ARRAY_BUFFER_SIZE=e}reserveArrayBuffer(1e3);var isObservableArrayAdministration=createInstanceofPredicate("ObservableArrayAdministration",ObservableArrayAdministration);function isObservableArray(e){return isObject(e)&&isObservableArrayAdministration(e.$mobx)}var ObservableMapMarker={},ObservableMap=function(){function e(e,t,r){if(void 0===t&&(t=deepEnhancer),void 0===r&&(r="ObservableMap@"+getNextId()),this.enhancer=t,this.name=r,this.$mobx=ObservableMapMarker,this._keys=new ObservableArray(void 0,referenceEnhancer,this.name+".keys()",!0),"function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(e)}return e.prototype._has=function(e){return this._data.has(e)},e.prototype.has=function(e){return this._hasMap.has(e)?this._hasMap.get(e).get():this._updateHasMapEntry(e,!1).get()},e.prototype.set=function(e,t){var r=this._has(e);if(hasInterceptors(this)){var n=interceptChange(this,{type:r?"update":"add",object:this,newValue:t,name:e});if(!n)return this;t=n.newValue}return r?this._updateValue(e,t):this._addValue(e,t),this},e.prototype.delete=function(e){var t=this;if(hasInterceptors(this)&&!(o=interceptChange(this,{type:"delete",object:this,name:e})))return!1;if(this._has(e)){var r=isSpyEnabled(),n=hasListeners(this),o=n||r?{type:"delete",object:this,oldValue:this._data.get(e).value,name:e}:null;return r&&spyReportStart(__assign({},o,{name:this.name,key:e})),transaction(function(){t._keys.remove(e),t._updateHasMapEntry(e,!1),t._data.get(e).setNewValue(void 0),t._data.delete(e)}),n&&notifyListeners(this,o),r&&spyReportEnd(),!0}return!1},e.prototype._updateHasMapEntry=function(e,t){var r=this._hasMap.get(e);return r?r.setNewValue(t):(r=new ObservableValue(t,referenceEnhancer,this.name+"."+stringifyKey(e)+"?",!1),this._hasMap.set(e,r)),r},e.prototype._updateValue=function(e,t){var r=this._data.get(e);if((t=r.prepareNewValue(t))!==globalState.UNCHANGED){var n=isSpyEnabled(),o=hasListeners(this),a=o||n?{type:"update",object:this,oldValue:r.value,name:e,newValue:t}:null;n&&spyReportStart(__assign({},a,{name:this.name,key:e})),r.setNewValue(t),o&&notifyListeners(this,a),n&&spyReportEnd()}},e.prototype._addValue=function(e,t){var r=this;transaction(function(){var n=new ObservableValue(t,r.enhancer,r.name+"."+stringifyKey(e),!1);r._data.set(e,n),t=n.value,r._updateHasMapEntry(e,!0),r._keys.push(e)});var n=isSpyEnabled(),o=hasListeners(this),a=o||n?{type:"add",object:this,name:e,newValue:t}:null;n&&spyReportStart(__assign({},a,{name:this.name,key:e})),o&&notifyListeners(this,a),n&&spyReportEnd()},e.prototype.get=function(e){return this.has(e)?this.dehanceValue(this._data.get(e).get()):this.dehanceValue(void 0)},e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.keys=function(){return this._keys[iteratorSymbol()]()},e.prototype.values=function(){var e=this,t=0;return makeIterable({next:function(){return t<e._keys.length?{value:e.get(e._keys[t++]),done:!1}:{value:void 0,done:!0}}})},e.prototype.entries=function(){var e=this,t=0;return makeIterable({next:function(){if(t<e._keys.length){var r=e._keys[t++];return{value:[r,e.get(r)],done:!1}}return{done:!0}}})},e.prototype.forEach=function(e,t){var r=this;this._keys.forEach(function(n){return e.call(t,r.get(n),n,r)})},e.prototype.merge=function(e){var t=this;return isObservableMap(e)&&(e=e.toJS()),transaction(function(){isPlainObject(e)?Object.keys(e).forEach(function(r){return t.set(r,e[r])}):Array.isArray(e)?e.forEach(function(e){var r=__read(e,2),n=r[0],o=r[1];return t.set(n,o)}):isES6Map(e)?e.constructor!==Map?fail("Cannot initialize from classes that inherit from Map: "+e.constructor.name):e.forEach(function(e,r){return t.set(r,e)}):null!=e&&fail("Cannot initialize map from "+e)}),this},e.prototype.clear=function(){var e=this;transaction(function(){untracked(function(){e._keys.slice().forEach(function(t){return e.delete(t)})})})},e.prototype.replace=function(e){var t=this;return transaction(function(){var r=getMapLikeKeys(e);t._keys.filter(function(e){return-1===r.indexOf(e)}).forEach(function(e){return t.delete(e)}),t.merge(e)}),this},Object.defineProperty(e.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),e.prototype.toPOJO=function(){var e=this,t={};return this._keys.forEach(function(r){return t["symbol"==typeof r?r:stringifyKey(r)]=e.get(r)}),t},e.prototype.toJS=function(){var e=this,t=new Map;return this._keys.forEach(function(r){return t.set(r,e.get(r))}),t},e.prototype.toJSON=function(){return this.toPOJO()},e.prototype.toString=function(){var e=this;return this.name+"[{ "+this._keys.map(function(t){return stringifyKey(t)+": "+e.get(t)}).join(", ")+" }]"},e.prototype.observe=function(e,t){return registerListener(this,e)},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e}();function stringifyKey(e){return e&&e.toString?e.toString():new String(e).toString()}declareIterator(ObservableMap.prototype,function(){return this.entries()}),addHiddenFinalProp(ObservableMap.prototype,toStringTagSymbol(),"Map");var isObservableMap=createInstanceofPredicate("ObservableMap",ObservableMap),ObservableSetMarker={},ObservableSet=function(){function e(e,t,r){if(void 0===t&&(t=deepEnhancer),void 0===r&&(r="ObservableSet@"+getNextId()),this.name=r,this.$mobx=ObservableSetMarker,this._data=new Set,this._atom=createAtom(this.name),"function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(e,n){return t(e,n,r)},e&&this.replace(e)}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.clear=function(){var e=this;transaction(function(){untracked(function(){e._data.forEach(function(t){e.delete(t)})})})},e.prototype.forEach=function(e,t){var r=this;this._data.forEach(function(n){e.call(t,n,n,r)})},Object.defineProperty(e.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),e.prototype.add=function(e){var t=this;if((checkIfStateModificationsAreAllowed(this._atom),hasInterceptors(this))&&!(o=interceptChange(this,{type:"add",object:this,newValue:e})))return this;if(!this.has(e)){transaction(function(){t._data.add(t.enhancer(e,void 0)),t._atom.reportChanged()});var r=isSpyEnabled(),n=hasListeners(this),o=n||r?{type:"add",object:this,newValue:e}:null;0,n&&notifyListeners(this,o)}return this},e.prototype.delete=function(e){var t=this;if(hasInterceptors(this)&&!(o=interceptChange(this,{type:"delete",object:this,oldValue:e})))return!1;if(this.has(e)){var r=isSpyEnabled(),n=hasListeners(this),o=n||r?{type:"delete",object:this,oldValue:e}:null;return transaction(function(){t._atom.reportChanged(),t._data.delete(e)}),n&&notifyListeners(this,o),!0}return!1},e.prototype.has=function(e){return this._atom.reportObserved(),this._data.has(this.dehanceValue(e))},e.prototype.entries=function(){var e=0,t=iteratorToArray(this.keys()),r=iteratorToArray(this.values());return makeIterable({next:function(){var n=e;return e+=1,n<r.length?{value:[t[n],r[n]],done:!1}:{done:!0}}})},e.prototype.keys=function(){return this.values()},e.prototype.values=function(){this._atom.reportObserved();var e,t=this,r=0;return void 0!==this._data.values?e=iteratorToArray(this._data.values()):(e=[],this._data.forEach(function(t){return e.push(t)})),makeIterable({next:function(){return r<e.length?{value:t.dehanceValue(e[r++]),done:!1}:{done:!0}}})},e.prototype.replace=function(e){var t=this;return isObservableSet(e)&&(e=e.toJS()),transaction(function(){Array.isArray(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):isES6Set(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&fail("Cannot initialize set from "+e)}),this},e.prototype.observe=function(e,t){return registerListener(this,e)},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e.prototype.toJS=function(){return new Set(this)},e.prototype.toString=function(){return this.name+"[ "+iteratorToArray(this.keys()).join(", ")+" ]"},e}();declareIterator(ObservableSet.prototype,function(){return this.values()}),addHiddenFinalProp(ObservableSet.prototype,toStringTagSymbol(),"Set");var isObservableSet=createInstanceofPredicate("ObservableSet",ObservableSet),ObservableObjectAdministration=function(){function e(e,t,r){this.target=e,this.name=t,this.defaultEnhancer=r,this.values={}}return e.prototype.read=function(e,t){if(this.target===e||(this.illegalAccess(e,t),this.values[t]))return this.values[t].get()},e.prototype.write=function(e,t,r){var n=this.target;n!==e&&this.illegalAccess(e,t);var o=this.values[t];if(o instanceof ComputedValue)o.set(r);else{if(hasInterceptors(this)){if(!(s=interceptChange(this,{type:"update",object:n,name:t,newValue:r})))return;r=s.newValue}if((r=o.prepareNewValue(r))!==globalState.UNCHANGED){var a=hasListeners(this),i=isSpyEnabled(),s=a||i?{type:"update",object:n,oldValue:o.value,name:t,newValue:r}:null;i&&spyReportStart(__assign({},s,{name:this.name,key:t})),o.setNewValue(r),a&&notifyListeners(this,s),i&&spyReportEnd()}}},e.prototype.remove=function(e){if(this.values[e]){var t=this.target;if(hasInterceptors(this))if(!(a=interceptChange(this,{object:t,name:e,type:"remove"})))return;try{startBatch();var r=hasListeners(this),n=isSpyEnabled(),o=this.values[e].get();this.keys&&this.keys.remove(e),delete this.values[e],delete this.target[e];var a=r||n?{type:"remove",object:t,oldValue:o,name:e}:null;n&&spyReportStart(__assign({},a,{name:this.name,key:e})),r&&notifyListeners(this,a),n&&spyReportEnd()}finally{endBatch()}}},e.prototype.illegalAccess=function(e,t){console.warn("Property '"+t+"' of '"+e+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},e.prototype.observe=function(e,t){return registerListener(this,e)},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e.prototype.getKeys=function(){var e=this;return void 0===this.keys&&(this.keys=new ObservableArray(Object.keys(this.values).filter(function(t){return e.values[t]instanceof ObservableValue}),referenceEnhancer,"keys("+this.name+")",!0)),this.keys.slice()},e}();function asObservableObject(e,t,r){void 0===t&&(t=""),void 0===r&&(r=deepEnhancer);var n=e.$mobx;return n||(isPlainObject(e)||(t=(e.constructor.name||"ObservableObject")+"@"+getNextId()),t||(t="ObservableObject@"+getNextId()),addHiddenFinalProp(e,"$mobx",n=new ObservableObjectAdministration(e,t,r)),n)}function defineObservableProperty(e,t,r,n){var o=asObservableObject(e);if(hasInterceptors(o)){var a=interceptChange(o,{object:e,name:t,type:"add",newValue:r});if(!a)return;r=a.newValue}r=(o.values[t]=new ObservableValue(r,n,o.name+"."+t,!1)).value,Object.defineProperty(e,t,generateObservablePropConfig(t)),o.keys&&o.keys.push(t),notifyPropertyAddition(o,e,t,r)}function defineComputedProperty(e,t,r){var n=asObservableObject(e);r.name=n.name+"."+t,r.context=e,n.values[t]=new ComputedValue(r),Object.defineProperty(e,t,generateComputedPropConfig(t))}var observablePropertyConfigs=Object.create(null),computedPropertyConfigs=Object.create(null);function generateObservablePropConfig(e){return observablePropertyConfigs[e]||(observablePropertyConfigs[e]={configurable:!0,enumerable:!0,get:function(){return this.$mobx.read(this,e)},set:function(t){this.$mobx.write(this,e,t)}})}function getAdministrationForComputedPropOwner(e){var t=e.$mobx;return t||(initializeInstance(e),e.$mobx)}function generateComputedPropConfig(e){return computedPropertyConfigs[e]||(computedPropertyConfigs[e]={configurable:globalState.computedConfigurable,enumerable:!1,get:function(){return getAdministrationForComputedPropOwner(this).read(this,e)},set:function(t){getAdministrationForComputedPropOwner(this).write(this,e,t)}})}function notifyPropertyAddition(e,t,r,n){var o=hasListeners(e),a=isSpyEnabled(),i=o||a?{type:"add",object:t,name:r,newValue:n}:null;a&&spyReportStart(__assign({},i,{name:e.name,key:r})),o&&notifyListeners(e,i),a&&spyReportEnd()}var isObservableObjectAdministration=createInstanceofPredicate("ObservableObjectAdministration",ObservableObjectAdministration);function isObservableObject(e){return!!isObject(e)&&(initializeInstance(e),isObservableObjectAdministration(e.$mobx))}function getAtom(e,t){if("object"==typeof e&&null!==e){if(isObservableArray(e))return void 0!==t&&fail(!1),e.$mobx.atom;if(isObservableSet(e))return e.$mobx;if(isObservableMap(e)){var r=e;return void 0===t?getAtom(r._keys):((n=r._data.get(t)||r._hasMap.get(t))||fail(!1),n)}var n;if(initializeInstance(e),t&&!e.$mobx&&e[t],isObservableObject(e))return t?((n=e.$mobx.values[t])||fail(!1),n):fail(!1);if(isAtom(e)||isComputedValue(e)||isReaction(e))return e}else if("function"==typeof e&&isReaction(e.$mobx))return e.$mobx;return fail(!1)}function getAdministration(e,t){return e||fail("Expecting some object"),void 0!==t?getAdministration(getAtom(e,t)):isAtom(e)||isComputedValue(e)||isReaction(e)?e:isObservableMap(e)||isObservableSet(e)?e:(initializeInstance(e),e.$mobx?e.$mobx:void fail(!1))}function getDebugName(e,t){return(void 0!==t?getAtom(e,t):isObservableObject(e)||isObservableMap(e)||isObservableSet(e)?getAdministration(e):getAtom(e)).name}var g,toString=Object.prototype.toString;function deepEqual(e,t){return eq(e,t)}function eq(e,t,r,n){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var o=typeof e;return("function"===o||"object"===o||"object"==typeof t)&&deepEq(e,t,r,n)}function deepEq(e,t,r,n){e=unwrap(e),t=unwrap(t);var o=toString.call(e);if(o!==toString.call(t))return!1;switch(o){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0==+e?1/+e==1/t:+e==+t;case"[object Date]":case"[object Boolean]":return+e==+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t)}var a="[object Array]"===o;if(!a){if("object"!=typeof e||"object"!=typeof t)return!1;var i=e.constructor,s=t.constructor;if(i!==s&&!("function"==typeof i&&i instanceof i&&"function"==typeof s&&s instanceof s)&&"constructor"in e&&"constructor"in t)return!1}n=n||[];for(var c=(r=r||[]).length;c--;)if(r[c]===e)return n[c]===t;if(r.push(e),n.push(t),a){if((c=e.length)!==t.length)return!1;for(;c--;)if(!eq(e[c],t[c],r,n))return!1}else{var u=Object.keys(e),l=void 0;if(c=u.length,Object.keys(t).length!==c)return!1;for(;c--;)if(!has$1(t,l=u[c])||!eq(e[l],t[l],r,n))return!1}return r.pop(),n.pop(),!0}function unwrap(e){return isObservableArray(e)?e.peek():isES6Map(e)||isObservableMap(e)?iteratorToArray(e.entries()):isES6Set(e)||isObservableSet(e)?iteratorToArray(e.entries()):e}function has$1(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var $mobx="$mobx";"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:spy,extras:{getDebugName:getDebugName},$mobx:$mobx}),exports.$mobx=$mobx,exports.ObservableMap=ObservableMap,exports.ObservableSet=ObservableSet,exports.Reaction=Reaction,exports._allowStateChanges=allowStateChanges,exports._allowStateChangesInsideComputed=allowStateChangesInsideComputed,exports._getAdministration=getAdministration,exports._getGlobalState=getGlobalState,exports._interceptReads=interceptReads,exports._isComputingDerivation=isComputingDerivation,exports._resetGlobalState=resetGlobalState,exports.action=action,exports.autorun=autorun,exports.comparer=comparer,exports.computed=computed,exports.configure=configure,exports.createAtom=createAtom,exports.decorate=decorate,exports.entries=entries,exports.extendObservable=extendObservable,exports.extendShallowObservable=extendShallowObservable,exports.flow=flow,exports.get=get,exports.getAtom=getAtom,exports.getDebugName=getDebugName,exports.getDependencyTree=getDependencyTree,exports.getObserverTree=getObserverTree,exports.has=has,exports.intercept=intercept,exports.isAction=isAction,exports.isArrayLike=isArrayLike,exports.isBoxedObservable=isObservableValue,exports.isComputed=isComputed,exports.isComputedProp=isComputedProp,exports.isObservable=isObservable,exports.isObservableArray=isObservableArray,exports.isObservableMap=isObservableMap,exports.isObservableObject=isObservableObject,exports.isObservableProp=isObservableProp,exports.isObservableSet=isObservableSet,exports.keys=keys,exports.observable=observable,exports.observe=observe,exports.onBecomeObserved=onBecomeObserved,exports.onBecomeUnobserved=onBecomeUnobserved,exports.onReactionError=onReactionError,exports.reaction=reaction,exports.remove=remove,exports.runInAction=runInAction,exports.set=set,exports.spy=spy,exports.toJS=toJS,exports.trace=trace,exports.transaction=transaction,exports.untracked=untracked,exports.values=values,exports.when=when;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var extendStatics=function(e,t){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function __extends(e,t){function r(){this.constructor=e}extendStatics(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var __assign=function(){return(__assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function __read(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i}function __spread(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e}var OBFUSCATED_ERROR="An invariant failed, however the error is obfuscated because this is an production build.",EMPTY_ARRAY=[];Object.freeze(EMPTY_ARRAY);var EMPTY_OBJECT={};function getGlobal(){return"undefined"!=typeof window?window:global}function getNextId(){return++globalState.mobxGuid}function fail(e){throw invariant(!1,e),"X"}function invariant(e,t){if(!e)throw new Error("[mobx] "+(t||OBFUSCATED_ERROR))}Object.freeze(EMPTY_OBJECT);var deprecatedMessages=[];function deprecated(e,t){return!1}function once(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var noop=function(){};function unique(e){var t=[];return e.forEach(function(e){-1===t.indexOf(e)&&t.push(e)}),t}function isObject(e){return null!==e&&"object"==typeof e}function isPlainObject(e){if(null===e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function makeNonEnumerable(e,t){for(var r=0;r<t.length;r++)addHiddenProp(e,t[r],e[t[r]])}function addHiddenProp(e,t,r){Object.defineProperty(e,t,{enumerable:!1,writable:!0,configurable:!0,value:r})}function addHiddenFinalProp(e,t,r){Object.defineProperty(e,t,{enumerable:!1,writable:!1,configurable:!0,value:r})}function createInstanceofPredicate(e,t){var r="isMobX"+e;return t.prototype[r]=!0,function(e){return isObject(e)&&!0===e[r]}}function areBothNaN(e,t){return"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t)}function isArrayLike(e){return Array.isArray(e)||isObservableArray(e)}function isES6Map(e){return void 0!==getGlobal().Map&&e instanceof getGlobal().Map}function isES6Set(e){return e instanceof Set}function getMapLikeKeys(e){return isPlainObject(e)?Object.keys(e):Array.isArray(e)?e.map(function(e){return __read(e,1)[0]}):isES6Map(e)||isObservableMap(e)?iteratorToArray(e.keys()):fail("Cannot get keys from '"+e+"'")}function iteratorToArray(e){for(var t=[];;){var r=e.next();if(r.done)break;t.push(r.value)}return t}function primitiveSymbol(){return"function"==typeof Symbol&&Symbol.toPrimitive||"@@toPrimitive"}function toPrimitive(e){return null===e?null:"object"==typeof e?""+e:e}function iteratorSymbol(){return"function"==typeof Symbol&&Symbol.iterator||"@@iterator"}function declareIterator(e,t){addHiddenFinalProp(e,iteratorSymbol(),t)}function makeIterable(e){return e[iteratorSymbol()]=self,e}function toStringTagSymbol(){return"function"==typeof Symbol&&Symbol.toStringTag||"@@toStringTag"}function self(){return this}var Atom=function(){function e(e){void 0===e&&(e="Atom@"+getNextId()),this.name=e,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=exports.IDerivationState.NOT_TRACKING}return e.prototype.onBecomeUnobserved=function(){},e.prototype.onBecomeObserved=function(){},e.prototype.reportObserved=function(){return reportObserved(this)},e.prototype.reportChanged=function(){startBatch(),propagateChanged(this),endBatch()},e.prototype.toString=function(){return this.name},e}(),isAtom=createInstanceofPredicate("Atom",Atom);function createAtom(e,t,r){void 0===t&&(t=noop),void 0===r&&(r=noop);var n=new Atom(e);return onBecomeObserved(n,t),onBecomeUnobserved(n,r),n}function identityComparer(e,t){return e===t}function structuralComparer(e,t){return deepEqual(e,t)}function defaultComparer(e,t){return areBothNaN(e,t)||identityComparer(e,t)}var comparer={identity:identityComparer,structural:structuralComparer,default:defaultComparer},enumerableDescriptorCache={},nonEnumerableDescriptorCache={};function createPropertyInitializerDescriptor(e,t){var r=t?enumerableDescriptorCache:nonEnumerableDescriptorCache;return r[e]||(r[e]={configurable:!0,enumerable:t,get:function(){return initializeInstance(this),this[e]},set:function(t){initializeInstance(this),this[e]=t}})}function initializeInstance(e){if(!0!==e.__mobxDidRunLazyInitializers){var t=e.__mobxDecorators;if(t)for(var r in addHiddenProp(e,"__mobxDidRunLazyInitializers",!0),t){var n=t[r];n.propertyCreator(e,n.prop,n.descriptor,n.decoratorTarget,n.decoratorArguments)}}}function createPropDecorator(e,t){return function(){var r,n=function(n,o,a,i){if(!0===i)return t(n,o,a,n,r),null;if(!Object.prototype.hasOwnProperty.call(n,"__mobxDecorators")){var s=n.__mobxDecorators;addHiddenProp(n,"__mobxDecorators",__assign({},s))}return n.__mobxDecorators[o]={prop:o,propertyCreator:t,descriptor:a,decoratorTarget:n,decoratorArguments:r},createPropertyInitializerDescriptor(o,e)};return quacksLikeADecorator(arguments)?(r=EMPTY_ARRAY,n.apply(null,arguments)):(r=Array.prototype.slice.call(arguments),n)}}function quacksLikeADecorator(e){return(2===e.length||3===e.length)&&"string"==typeof e[1]||4===e.length&&!0===e[3]}function deepEnhancer(e,t,r){return isObservable(e)?e:Array.isArray(e)?observable.array(e,{name:r}):isPlainObject(e)?observable.object(e,void 0,{name:r}):isES6Map(e)?observable.map(e,{name:r}):isES6Set(e)?observable.set(e,{name:r}):e}function shallowEnhancer(e,t,r){return null==e?e:isObservableObject(e)||isObservableArray(e)||isObservableMap(e)||isObservableSet(e)?e:Array.isArray(e)?observable.array(e,{name:r,deep:!1}):isPlainObject(e)?observable.object(e,void 0,{name:r,deep:!1}):isES6Map(e)?observable.map(e,{name:r,deep:!1}):isES6Set(e)?observable.set(e,{name:r,deep:!1}):fail(!1)}function referenceEnhancer(e){return e}function refStructEnhancer(e,t,r){return deepEqual(e,t)?t:e}function createDecoratorForEnhancer(e){var t=createPropDecorator(!0,function(t,r,n,o,a){defineObservableProperty(t,r,n?n.initializer?n.initializer.call(t):n.value:void 0,e)}),r=("undefined"!=typeof process&&process.env,t);return r.enhancer=e,r}var defaultCreateObservableOptions={deep:!0,name:void 0,defaultDecorator:void 0},shallowCreateObservableOptions={deep:!1,name:void 0,defaultDecorator:void 0};function asCreateObservableOptions(e){return null==e?defaultCreateObservableOptions:"string"==typeof e?{name:e,deep:!0}:e}function getEnhancerFromOptions(e){return e.defaultDecorator?e.defaultDecorator.enhancer:!1===e.deep?referenceEnhancer:deepEnhancer}Object.freeze(defaultCreateObservableOptions),Object.freeze(shallowCreateObservableOptions);var deepDecorator=createDecoratorForEnhancer(deepEnhancer),shallowDecorator=createDecoratorForEnhancer(shallowEnhancer),refDecorator=createDecoratorForEnhancer(referenceEnhancer),refStructDecorator=createDecoratorForEnhancer(refStructEnhancer);function createObservable(e,t,r){if("string"==typeof arguments[1])return deepDecorator.apply(null,arguments);if(isObservable(e))return e;var n=isPlainObject(e)?observable.object(e,t,r):Array.isArray(e)?observable.array(e,t):isES6Map(e)?observable.map(e,t):isES6Set(e)?observable.set(e,t):e;if(n!==e)return n;fail(!1)}var observableFactories={box:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("box");var r=asCreateObservableOptions(t);return new ObservableValue(e,getEnhancerFromOptions(r),r.name,!0,r.equals)},shallowBox:function(e,t){return arguments.length>2&&incorrectlyUsedAsDecorator("shallowBox"),deprecated("observable.shallowBox","observable.box(value, { deep: false })"),observable.box(e,{name:t,deep:!1})},array:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("array");var r=asCreateObservableOptions(t);return new ObservableArray(e,getEnhancerFromOptions(r),r.name)},shallowArray:function(e,t){return arguments.length>2&&incorrectlyUsedAsDecorator("shallowArray"),deprecated("observable.shallowArray","observable.array(values, { deep: false })"),observable.array(e,{name:t,deep:!1})},map:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("map");var r=asCreateObservableOptions(t);return new ObservableMap(e,getEnhancerFromOptions(r),r.name)},shallowMap:function(e,t){return arguments.length>2&&incorrectlyUsedAsDecorator("shallowMap"),deprecated("observable.shallowMap","observable.map(values, { deep: false })"),observable.map(e,{name:t,deep:!1})},set:function(e,t){arguments.length>2&&incorrectlyUsedAsDecorator("set");var r=asCreateObservableOptions(t);return new ObservableSet(e,getEnhancerFromOptions(r),r.name)},object:function(e,t,r){return"string"==typeof arguments[1]&&incorrectlyUsedAsDecorator("object"),extendObservable({},e,t,asCreateObservableOptions(r))},shallowObject:function(e,t){return"string"==typeof arguments[1]&&incorrectlyUsedAsDecorator("shallowObject"),deprecated("observable.shallowObject","observable.object(values, {}, { deep: false })"),observable.object(e,{},{name:t,deep:!1})},ref:refDecorator,shallow:shallowDecorator,deep:deepDecorator,struct:refStructDecorator},observable=createObservable;function incorrectlyUsedAsDecorator(e){fail("Expected one or two arguments to observable."+e+". Did you accidentally try to use observable."+e+" as decorator?")}Object.keys(observableFactories).forEach(function(e){return observable[e]=observableFactories[e]});var computedDecorator=createPropDecorator(!1,function(e,t,r,n,o){var a=r.get,i=r.set,s=o[0]||{};defineComputedProperty(e,t,__assign({get:a,set:i},s))}),computedStructDecorator=computedDecorator({equals:comparer.structural}),computed=function(e,t,r){if("string"==typeof t)return computedDecorator.apply(null,arguments);if(null!==e&&"object"==typeof e&&1===arguments.length)return computedDecorator.apply(null,arguments);var n="object"==typeof t?t:{};return n.get=e,n.set="function"==typeof t?t:n.set,n.name=n.name||e.name||"",new ComputedValue(n)};function createAction(e,t){var r=function(){return executeAction(e,t,this,arguments)};return r.isMobxAction=!0,r}function executeAction(e,t,r,n){var o=startAction(e,t,r,n),a=!0;try{var i=t.apply(r,n);return a=!1,i}finally{a?(globalState.suppressReactionErrors=a,endAction(o),globalState.suppressReactionErrors=!1):endAction(o)}}function startAction(e,t,r,n){var o=isSpyEnabled()&&!!e,a=0;if(o){a=Date.now();var i=n&&n.length||0,s=new Array(i);if(i>0)for(var c=0;c<i;c++)s[c]=n[c];spyReportStart({type:"action",name:e,object:r,arguments:s})}var u=untrackedStart();return startBatch(),{prevDerivation:u,prevAllowStateChanges:allowStateChangesStart(!0),notifySpy:o,startTime:a}}function endAction(e){allowStateChangesEnd(e.prevAllowStateChanges),endBatch(),untrackedEnd(e.prevDerivation),e.notifySpy&&spyReportEnd({time:Date.now()-e.startTime})}function allowStateChanges(e,t){var r,n=allowStateChangesStart(e);try{r=t()}finally{allowStateChangesEnd(n)}return r}function allowStateChangesStart(e){var t=globalState.allowStateChanges;return globalState.allowStateChanges=e,t}function allowStateChangesEnd(e){globalState.allowStateChanges=e}function allowStateChangesInsideComputed(e){var t,r=globalState.computationDepth;globalState.computationDepth=0;try{t=e()}finally{globalState.computationDepth=r}return t}computed.struct=computedStructDecorator;var ObservableValue=function(e){function t(t,r,n,o,a){void 0===n&&(n="ObservableValue@"+getNextId()),void 0===o&&(o=!0),void 0===a&&(a=comparer.default);var i=e.call(this,n)||this;return i.enhancer=r,i.name=n,i.equals=a,i.hasUnreportedChange=!1,i.value=r(t,void 0,n),o&&isSpyEnabled()&&spyReport({type:"create",name:i.name,newValue:""+i.value}),i}return __extends(t,e),t.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.prototype.set=function(e){var t=this.value;if((e=this.prepareNewValue(e))!==globalState.UNCHANGED){var r=isSpyEnabled();r&&spyReportStart({type:"update",name:this.name,newValue:e,oldValue:t}),this.setNewValue(e),r&&spyReportEnd()}},t.prototype.prepareNewValue=function(e){if(checkIfStateModificationsAreAllowed(this),hasInterceptors(this)){var t=interceptChange(this,{object:this,type:"update",newValue:e});if(!t)return globalState.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value,this.name),this.equals(this.value,e)?globalState.UNCHANGED:e},t.prototype.setNewValue=function(e){var t=this.value;this.value=e,this.reportChanged(),hasListeners(this)&&notifyListeners(this,{type:"update",object:this,newValue:e,oldValue:t})},t.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},t.prototype.intercept=function(e){return registerInterceptor(this,e)},t.prototype.observe=function(e,t){return t&&e({object:this,type:"update",newValue:this.value,oldValue:void 0}),registerListener(this,e)},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.value+"]"},t.prototype.valueOf=function(){return toPrimitive(this.get())},t}(Atom);ObservableValue.prototype[primitiveSymbol()]=ObservableValue.prototype.valueOf;var isObservableValue=createInstanceofPredicate("ObservableValue",ObservableValue),ComputedValue=function(){function e(e){this.dependenciesState=exports.IDerivationState.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=exports.IDerivationState.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+getNextId(),this.value=new CaughtException(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=TraceMode.NONE,this.derivation=e.get,this.name=e.name||"ComputedValue@"+getNextId(),e.set&&(this.setter=createAction(this.name+"-setter",e.set)),this.equals=e.equals||(e.compareStructural||e.struct?comparer.structural:comparer.default),this.scope=e.context,this.requiresReaction=!!e.requiresReaction,this.keepAlive=!!e.keepAlive}return e.prototype.onBecomeStale=function(){propagateMaybeChanged(this)},e.prototype.onBecomeUnobserved=function(){},e.prototype.onBecomeObserved=function(){},e.prototype.get=function(){this.isComputing&&fail("Cycle detected in computation "+this.name+": "+this.derivation),0!==globalState.inBatch||0!==this.observers.length||this.keepAlive?(reportObserved(this),shouldCompute(this)&&this.trackAndCompute()&&propagateChangeConfirmed(this)):shouldCompute(this)&&(this.warnAboutUntrackedRead(),startBatch(),this.value=this.computeValue(!1),endBatch());var e=this.value;if(isCaughtException(e))throw e.cause;return e},e.prototype.peek=function(){var e=this.computeValue(!1);if(isCaughtException(e))throw e.cause;return e},e.prototype.set=function(e){if(this.setter){invariant(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,e)}finally{this.isRunningSetter=!1}}else invariant(!1,!1)},e.prototype.trackAndCompute=function(){isSpyEnabled()&&spyReport({object:this.scope,type:"compute",name:this.name});var e=this.value,t=this.dependenciesState===exports.IDerivationState.NOT_TRACKING,r=this.computeValue(!0),n=t||isCaughtException(e)||isCaughtException(r)||!this.equals(e,r);return n&&(this.value=r),n},e.prototype.computeValue=function(e){var t;if(this.isComputing=!0,globalState.computationDepth++,e)t=trackDerivedFunction(this,this.derivation,this.scope);else if(!0===globalState.disableErrorBoundaries)t=this.derivation.call(this.scope);else try{t=this.derivation.call(this.scope)}catch(e){t=new CaughtException(e)}return globalState.computationDepth--,this.isComputing=!1,t},e.prototype.suspend=function(){this.keepAlive||(clearObserving(this),this.value=void 0)},e.prototype.observe=function(e,t){var r=this,n=!0,o=void 0;return autorun(function(){var a=r.get();if(!n||t){var i=untrackedStart();e({type:"update",object:r,newValue:a,oldValue:o}),untrackedEnd(i)}n=!1,o=a})},e.prototype.warnAboutUntrackedRead=function(){},e.prototype.toJSON=function(){return this.get()},e.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},e.prototype.valueOf=function(){return toPrimitive(this.get())},e}();ComputedValue.prototype[primitiveSymbol()]=ComputedValue.prototype.valueOf;var TraceMode,isComputedValue=createInstanceofPredicate("ComputedValue",ComputedValue);!function(e){e[e.NOT_TRACKING=-1]="NOT_TRACKING",e[e.UP_TO_DATE=0]="UP_TO_DATE",e[e.POSSIBLY_STALE=1]="POSSIBLY_STALE",e[e.STALE=2]="STALE"}(exports.IDerivationState||(exports.IDerivationState={})),function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(TraceMode||(TraceMode={}));var CaughtException=function(){return function(e){this.cause=e}}();function isCaughtException(e){return e instanceof CaughtException}function shouldCompute(e){switch(e.dependenciesState){case exports.IDerivationState.UP_TO_DATE:return!1;case exports.IDerivationState.NOT_TRACKING:case exports.IDerivationState.STALE:return!0;case exports.IDerivationState.POSSIBLY_STALE:for(var t=untrackedStart(),r=e.observing,n=r.length,o=0;o<n;o++){var a=r[o];if(isComputedValue(a)){if(globalState.disableErrorBoundaries)a.get();else try{a.get()}catch(e){return untrackedEnd(t),!0}if(e.dependenciesState===exports.IDerivationState.STALE)return untrackedEnd(t),!0}}return changeDependenciesStateTo0(e),untrackedEnd(t),!1}}function isComputingDerivation(){return null!==globalState.trackingDerivation}function checkIfStateModificationsAreAllowed(e){var t=e.observers.length>0;globalState.computationDepth>0&&t&&fail(!1),globalState.allowStateChanges||!t&&"strict"!==globalState.enforceActions||fail(!1)}function trackDerivedFunction(e,t,r){changeDependenciesStateTo0(e),e.newObserving=new Array(e.observing.length+100),e.unboundDepsCount=0,e.runId=++globalState.runId;var n,o=globalState.trackingDerivation;if(globalState.trackingDerivation=e,!0===globalState.disableErrorBoundaries)n=t.call(r);else try{n=t.call(r)}catch(e){n=new CaughtException(e)}return globalState.trackingDerivation=o,bindDependencies(e),n}function bindDependencies(e){for(var t=e.observing,r=e.observing=e.newObserving,n=exports.IDerivationState.UP_TO_DATE,o=0,a=e.unboundDepsCount,i=0;i<a;i++){0===(s=r[i]).diffValue&&(s.diffValue=1,o!==i&&(r[o]=s),o++),s.dependenciesState>n&&(n=s.dependenciesState)}for(r.length=o,e.newObserving=null,a=t.length;a--;){0===(s=t[a]).diffValue&&removeObserver(s,e),s.diffValue=0}for(;o--;){var s;1===(s=r[o]).diffValue&&(s.diffValue=0,addObserver(s,e))}n!==exports.IDerivationState.UP_TO_DATE&&(e.dependenciesState=n,e.onBecomeStale())}function clearObserving(e){var t=e.observing;e.observing=[];for(var r=t.length;r--;)removeObserver(t[r],e);e.dependenciesState=exports.IDerivationState.NOT_TRACKING}function untracked(e){var t=untrackedStart(),r=e();return untrackedEnd(t),r}function untrackedStart(){var e=globalState.trackingDerivation;return globalState.trackingDerivation=null,e}function untrackedEnd(e){globalState.trackingDerivation=e}function changeDependenciesStateTo0(e){if(e.dependenciesState!==exports.IDerivationState.UP_TO_DATE){e.dependenciesState=exports.IDerivationState.UP_TO_DATE;for(var t=e.observing,r=t.length;r--;)t[r].lowestObserverState=exports.IDerivationState.UP_TO_DATE}}var persistentKeys=["mobxGuid","spyListeners","enforceActions","computedRequiresReaction","disableErrorBoundaries","runId","UNCHANGED"],MobXGlobals=function(){return function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1}}(),canMergeGlobalState=!0,isolateCalled=!1,globalState=function(){var e=getGlobal();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(canMergeGlobalState=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new MobXGlobals).version&&(canMergeGlobalState=!1),canMergeGlobalState?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new MobXGlobals):(setTimeout(function(){isolateCalled||fail("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")},1),new MobXGlobals)}();function isolateGlobalState(){(globalState.pendingReactions.length||globalState.inBatch||globalState.isRunningReactions)&&fail("isolateGlobalState should be called before MobX is running any reactions"),isolateCalled=!0,canMergeGlobalState&&(0==--getGlobal().__mobxInstanceCount&&(getGlobal().__mobxGlobals=void 0),globalState=new MobXGlobals)}function getGlobalState(){return globalState}function resetGlobalState(){var e=new MobXGlobals;for(var t in e)-1===persistentKeys.indexOf(t)&&(globalState[t]=e[t]);globalState.allowStateChanges=!globalState.enforceActions}function hasObservers(e){return e.observers&&e.observers.length>0}function getObservers(e){return e.observers}function addObserver(e,t){var r=e.observers.length;r&&(e.observersIndexes[t.__mapid]=r),e.observers[r]=t,e.lowestObserverState>t.dependenciesState&&(e.lowestObserverState=t.dependenciesState)}function removeObserver(e,t){if(1===e.observers.length)e.observers.length=0,queueForUnobservation(e);else{var r=e.observers,n=e.observersIndexes,o=r.pop();if(o!==t){var a=n[t.__mapid]||0;a?n[o.__mapid]=a:delete n[o.__mapid],r[a]=o}delete n[t.__mapid]}}function queueForUnobservation(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,globalState.pendingUnobservations.push(e))}function startBatch(){globalState.inBatch++}function endBatch(){if(0==--globalState.inBatch){runReactions();for(var e=globalState.pendingUnobservations,t=0;t<e.length;t++){var r=e[t];r.isPendingUnobservation=!1,0===r.observers.length&&(r.isBeingObserved&&(r.isBeingObserved=!1,r.onBecomeUnobserved()),r instanceof ComputedValue&&r.suspend())}globalState.pendingUnobservations=[]}}function reportObserved(e){var t=globalState.trackingDerivation;return null!==t?(t.runId!==e.lastAccessedBy&&(e.lastAccessedBy=t.runId,t.newObserving[t.unboundDepsCount++]=e,e.isBeingObserved||(e.isBeingObserved=!0,e.onBecomeObserved())),!0):(0===e.observers.length&&globalState.inBatch>0&&queueForUnobservation(e),!1)}function propagateChanged(e){if(e.lowestObserverState!==exports.IDerivationState.STALE){e.lowestObserverState=exports.IDerivationState.STALE;for(var t=e.observers,r=t.length;r--;){var n=t[r];n.dependenciesState===exports.IDerivationState.UP_TO_DATE&&(n.isTracing!==TraceMode.NONE&&logTraceInfo(n,e),n.onBecomeStale()),n.dependenciesState=exports.IDerivationState.STALE}}}function propagateChangeConfirmed(e){if(e.lowestObserverState!==exports.IDerivationState.STALE){e.lowestObserverState=exports.IDerivationState.STALE;for(var t=e.observers,r=t.length;r--;){var n=t[r];n.dependenciesState===exports.IDerivationState.POSSIBLY_STALE?n.dependenciesState=exports.IDerivationState.STALE:n.dependenciesState===exports.IDerivationState.UP_TO_DATE&&(e.lowestObserverState=exports.IDerivationState.UP_TO_DATE)}}}function propagateMaybeChanged(e){if(e.lowestObserverState===exports.IDerivationState.UP_TO_DATE){e.lowestObserverState=exports.IDerivationState.POSSIBLY_STALE;for(var t=e.observers,r=t.length;r--;){var n=t[r];n.dependenciesState===exports.IDerivationState.UP_TO_DATE&&(n.dependenciesState=exports.IDerivationState.POSSIBLY_STALE,n.isTracing!==TraceMode.NONE&&logTraceInfo(n,e),n.onBecomeStale())}}}function logTraceInfo(e,t){if(console.log("[mobx.trace] '"+e.name+"' is invalidated due to a change in: '"+t.name+"'"),e.isTracing===TraceMode.BREAK){var r=[];printDepTree(getDependencyTree(e),r,1),new Function("debugger;\n/*\nTracing '"+e.name+"'\n\nYou are entering this break point because derivation '"+e.name+"' is being traced and '"+t.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(e instanceof ComputedValue?e.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+r.join("\n")+"\n*/\n ")()}}function printDepTree(e,t,r){t.length>=1e3?t.push("(and many more)"):(t.push(""+new Array(r).join("\t")+e.name),e.dependencies&&e.dependencies.forEach(function(e){return printDepTree(e,t,r+1)}))}var Reaction=function(){function e(e,t,r){void 0===e&&(e="Reaction@"+getNextId()),this.name=e,this.onInvalidate=t,this.errorHandler=r,this.observing=[],this.newObserving=[],this.dependenciesState=exports.IDerivationState.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+getNextId(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=TraceMode.NONE}return e.prototype.onBecomeStale=function(){this.schedule()},e.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,globalState.pendingReactions.push(this),runReactions())},e.prototype.isScheduled=function(){return this._isScheduled},e.prototype.runReaction=function(){if(!this.isDisposed){if(startBatch(),this._isScheduled=!1,shouldCompute(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&isSpyEnabled()&&spyReport({name:this.name,type:"scheduled-reaction"})}catch(e){this.reportExceptionInDerivation(e)}}endBatch()}},e.prototype.track=function(e){startBatch();var t,r=isSpyEnabled();r&&(t=Date.now(),spyReportStart({name:this.name,type:"reaction"})),this._isRunning=!0;var n=trackDerivedFunction(this,e,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&clearObserving(this),isCaughtException(n)&&this.reportExceptionInDerivation(n.cause),r&&spyReportEnd({time:Date.now()-t}),endBatch()},e.prototype.reportExceptionInDerivation=function(e){var t=this;if(this.errorHandler)this.errorHandler(e,this);else{if(globalState.disableErrorBoundaries)throw e;var r="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";globalState.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(r,e),isSpyEnabled()&&spyReport({type:"error",name:this.name,message:r,error:""+e}),globalState.globalReactionErrorHandlers.forEach(function(r){return r(e,t)})}},e.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(startBatch(),clearObserving(this),endBatch()))},e.prototype.getDisposer=function(){var e=this.dispose.bind(this);return e.$mobx=this,e},e.prototype.toString=function(){return"Reaction["+this.name+"]"},e.prototype.trace=function(e){void 0===e&&(e=!1),trace(this,e)},e}();function onReactionError(e){return globalState.globalReactionErrorHandlers.push(e),function(){var t=globalState.globalReactionErrorHandlers.indexOf(e);t>=0&&globalState.globalReactionErrorHandlers.splice(t,1)}}var MAX_REACTION_ITERATIONS=100,reactionScheduler=function(e){return e()};function runReactions(){globalState.inBatch>0||globalState.isRunningReactions||reactionScheduler(runReactionsHelper)}function runReactionsHelper(){globalState.isRunningReactions=!0;for(var e=globalState.pendingReactions,t=0;e.length>0;){++t===MAX_REACTION_ITERATIONS&&(console.error("Reaction doesn't converge to a stable state after "+MAX_REACTION_ITERATIONS+" iterations. Probably there is a cycle in the reactive function: "+e[0]),e.splice(0));for(var r=e.splice(0),n=0,o=r.length;n<o;n++)r[n].runReaction()}globalState.isRunningReactions=!1}var isReaction=createInstanceofPredicate("Reaction",Reaction);function setReactionScheduler(e){var t=reactionScheduler;reactionScheduler=function(r){return e(function(){return t(r)})}}function isSpyEnabled(){return!!globalState.spyListeners.length}function spyReport(e){if(globalState.spyListeners.length)for(var t=globalState.spyListeners,r=0,n=t.length;r<n;r++)t[r](e)}function spyReportStart(e){spyReport(__assign({},e,{spyReportStart:!0}))}var END_EVENT={spyReportEnd:!0};function spyReportEnd(e){spyReport(e?__assign({},e,{spyReportEnd:!0}):END_EVENT)}function spy(e){return globalState.spyListeners.push(e),once(function(){globalState.spyListeners=globalState.spyListeners.filter(function(t){return t!==e})})}function dontReassignFields(){fail(!1)}function namedActionDecorator(e){return function(t,r,n){if(n){if(n.value)return{value:createAction(e,n.value),enumerable:!1,configurable:!0,writable:!0};var o=n.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return createAction(e,o.call(this))}}}return actionFieldDecorator(e).apply(this,arguments)}}function actionFieldDecorator(e){return function(t,r,n){Object.defineProperty(t,r,{configurable:!0,enumerable:!1,get:function(){},set:function(t){addHiddenProp(this,r,action(e,t))}})}}function boundActionDecorator(e,t,r,n){return!0===n?(defineBoundAction(e,t,r.value),null):r?{configurable:!0,enumerable:!1,get:function(){return defineBoundAction(this,t,r.value||r.initializer.call(this)),this[t]},set:dontReassignFields}:{enumerable:!1,configurable:!0,set:function(e){defineBoundAction(this,t,e)},get:function(){}}}var action=function(e,t,r,n){return 1===arguments.length&&"function"==typeof e?createAction(e.name||"<unnamed action>",e):2===arguments.length&&"function"==typeof t?createAction(e,t):1===arguments.length&&"string"==typeof e?namedActionDecorator(e):!0!==n?namedActionDecorator(t).apply(null,arguments):void(e[t]=createAction(e.name||t,r.value))};function runInAction(e,t){return executeAction("string"==typeof e?e:e.name||"<unnamed action>","function"==typeof e?e:t,this,void 0)}function isAction(e){return"function"==typeof e&&!0===e.isMobxAction}function defineBoundAction(e,t,r){addHiddenProp(e,t,createAction(t,r.bind(e)))}function autorun(e,t){void 0===t&&(t=EMPTY_OBJECT);var r,n=t&&t.name||e.name||"Autorun@"+getNextId();if(!t.scheduler&&!t.delay)r=new Reaction(n,function(){this.track(i)},t.onError);else{var o=createSchedulerFromOptions(t),a=!1;r=new Reaction(n,function(){a||(a=!0,o(function(){a=!1,r.isDisposed||r.track(i)}))},t.onError)}function i(){e(r)}return r.schedule(),r.getDisposer()}action.bound=boundActionDecorator;var run=function(e){return e()};function createSchedulerFromOptions(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:run}function reaction(e,t,r){void 0===r&&(r=EMPTY_OBJECT),"boolean"==typeof r&&(r={fireImmediately:r},deprecated("Using fireImmediately as argument is deprecated. Use '{ fireImmediately: true }' instead"));var n,o=r.name||"Reaction@"+getNextId(),a=action(o,r.onError?wrapErrorHandler(r.onError,t):t),i=!r.scheduler&&!r.delay,s=createSchedulerFromOptions(r),c=!0,u=!1,l=r.compareStructural?comparer.structural:r.equals||comparer.default,p=new Reaction(o,function(){c||i?b():u||(u=!0,s(b))},r.onError);function b(){if(u=!1,!p.isDisposed){var t=!1;p.track(function(){var r=e(p);t=c||!l(n,r),n=r}),c&&r.fireImmediately&&a(n,p),c||!0!==t||a(n,p),c&&(c=!1)}}return p.schedule(),p.getDisposer()}function wrapErrorHandler(e,t){return function(){try{return t.apply(this,arguments)}catch(t){e.call(this,t)}}}function onBecomeObserved(e,t,r){return interceptHook("onBecomeObserved",e,t,r)}function onBecomeUnobserved(e,t,r){return interceptHook("onBecomeUnobserved",e,t,r)}function interceptHook(e,t,r,n){var o="string"==typeof r?getAtom(t,r):getAtom(t),a="string"==typeof r?n:r,i=o[e];return"function"!=typeof i?fail(!1):(o[e]=function(){i.call(this),a.call(this)},function(){o[e]=i})}function configure(e){var t=e.enforceActions,r=e.computedRequiresReaction,n=e.computedConfigurable,o=e.disableErrorBoundaries,a=e.arrayBuffer,i=e.reactionScheduler;if(!0===e.isolateGlobalState&&isolateGlobalState(),void 0!==t){"boolean"!=typeof t&&"strict"!==t||deprecated("Deprecated value for 'enforceActions', use 'false' => '\"never\"', 'true' => '\"observed\"', '\"strict\"' => \"'always'\" instead");var s=void 0;switch(t){case!0:case"observed":s=!0;break;case!1:case"never":s=!1;break;case"strict":case"always":s="strict";break;default:fail("Invalid value for 'enforceActions': '"+t+"', expected 'never', 'always' or 'observed'")}globalState.enforceActions=s,globalState.allowStateChanges=!0!==s&&"strict"!==s}void 0!==r&&(globalState.computedRequiresReaction=!!r),void 0!==n&&(globalState.computedConfigurable=!!n),void 0!==o&&(!0===o&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors if this is on."),globalState.disableErrorBoundaries=!!o),"number"==typeof a&&reserveArrayBuffer(a),i&&setReactionScheduler(i)}function decorate(e,t){var r="function"==typeof e?e.prototype:e,n=function(e){var n=t[e];Array.isArray(n)||(n=[n]);var o=Object.getOwnPropertyDescriptor(r,e),a=n.reduce(function(t,n){return n(r,e,t)},o);a&&Object.defineProperty(r,e,a)};for(var o in t)n(o);return e}function extendShallowObservable(e,t,r){return deprecated("'extendShallowObservable' is deprecated, use 'extendObservable(target, props, { deep: false })' instead"),extendObservable(e,t,r,shallowCreateObservableOptions)}function extendObservable(e,t,r,n){var o=(n=asCreateObservableOptions(n)).defaultDecorator||(!1===n.deep?refDecorator:deepDecorator);initializeInstance(e),asObservableObject(e,n.name,o.enhancer),startBatch();try{for(var a in t){var i=Object.getOwnPropertyDescriptor(t,a),s=(r&&a in r?r[a]:i.get?computedDecorator:o)(e,a,i,!0);s&&Object.defineProperty(e,a,s)}}finally{endBatch()}return e}function getDependencyTree(e,t){return nodeToDependencyTree(getAtom(e,t))}function nodeToDependencyTree(e){var t={name:e.name};return e.observing&&e.observing.length>0&&(t.dependencies=unique(e.observing).map(nodeToDependencyTree)),t}function getObserverTree(e,t){return nodeToObserverTree(getAtom(e,t))}function nodeToObserverTree(e){var t={name:e.name};return hasObservers(e)&&(t.observers=getObservers(e).map(nodeToObserverTree)),t}var generatorId=0;function flow(e){1!==arguments.length&&fail("Flow expects one 1 argument and cannot be used as decorator");var t=e.name||"<unnamed flow>";return function(){var r,n=arguments,o=++generatorId,a=action(t+" - runid: "+o+" - init",e).apply(this,n),i=void 0,s=new Promise(function(e,n){var s=0;function c(e){var r;i=void 0;try{r=action(t+" - runid: "+o+" - yield "+s++,a.next).call(a,e)}catch(e){return n(e)}l(r)}function u(e){var r;i=void 0;try{r=action(t+" - runid: "+o+" - yield "+s++,a.throw).call(a,e)}catch(e){return n(e)}l(r)}function l(t){if(!t||"function"!=typeof t.then)return t.done?e(t.value):(i=Promise.resolve(t.value)).then(c,u);t.then(l,n)}r=n,c(void 0)});return s.cancel=action(t+" - runid: "+o+" - cancel",function(){try{i&&cancelPromise(i);var e=a.return(),t=Promise.resolve(e.value);t.then(noop,noop),cancelPromise(t),r(new Error("FLOW_CANCELLED"))}catch(e){r(e)}}),s}}function cancelPromise(e){"function"==typeof e.cancel&&e.cancel()}function interceptReads(e,t,r){var n;if(isObservableMap(e)||isObservableArray(e)||isObservableValue(e))n=getAdministration(e);else{if(!isObservableObject(e))return fail(!1);if("string"!=typeof t)return fail(!1);n=getAdministration(e,t)}return void 0!==n.dehancer?fail(!1):(n.dehancer="function"==typeof t?t:r,function(){n.dehancer=void 0})}function intercept(e,t,r){return"function"==typeof r?interceptProperty(e,t,r):interceptInterceptable(e,t)}function interceptInterceptable(e,t){return getAdministration(e).intercept(t)}function interceptProperty(e,t,r){return getAdministration(e,t).intercept(r)}function _isComputed(e,t){if(null==e)return!1;if(void 0!==t){if(!1===isObservableObject(e))return!1;if(!e.$mobx.values[t])return!1;var r=getAtom(e,t);return isComputedValue(r)}return isComputedValue(e)}function isComputed(e){return arguments.length>1?fail(!1):_isComputed(e)}function isComputedProp(e,t){return"string"!=typeof t?fail(!1):_isComputed(e,t)}function _isObservable(e,t){if(null==e)return!1;if(void 0!==t){if(isObservableObject(e)){var r=e.$mobx;return r.values&&!!r.values[t]}return!1}return isObservableObject(e)||!!e.$mobx||isAtom(e)||isReaction(e)||isComputedValue(e)}function isObservable(e){return 1!==arguments.length&&fail(!1),_isObservable(e)}function isObservableProp(e,t){return"string"!=typeof t?fail(!1):_isObservable(e,t)}function keys(e){return isObservableObject(e)?e.$mobx.getKeys():isObservableMap(e)?e._keys.slice():isObservableSet(e)?iteratorToArray(e.keys()):isObservableArray(e)?e.map(function(e,t){return t}):fail(!1)}function values(e){return isObservableObject(e)?keys(e).map(function(t){return e[t]}):isObservableMap(e)?keys(e).map(function(t){return e.get(t)}):isObservableSet(e)?iteratorToArray(e.values()):isObservableArray(e)?e.slice():fail(!1)}function entries(e){return isObservableObject(e)?keys(e).map(function(t){return[t,e[t]]}):isObservableMap(e)?keys(e).map(function(t){return[t,e.get(t)]}):isObservableSet(e)?iteratorToArray(e.entries()):isObservableArray(e)?e.map(function(e,t){return[t,e]}):fail(!1)}function set(e,t,r){if(2!==arguments.length||isObservableSet(e))if(isObservableObject(e)){var n=e.$mobx;n.values[t]?n.write(e,t,r):defineObservableProperty(e,t,r,n.defaultEnhancer)}else if(isObservableMap(e))e.set(t,r);else if(isObservableSet(e))e.add(t);else{if(!isObservableArray(e))return fail(!1);"number"!=typeof t&&(t=parseInt(t,10)),invariant(t>=0,"Not a valid index: '"+t+"'"),startBatch(),t>=e.length&&(e.length=t+1),e[t]=r,endBatch()}else{startBatch();var o=t;try{for(var a in o)set(e,a,o[a])}finally{endBatch()}}}function remove(e,t){if(isObservableObject(e))e.$mobx.remove(t);else if(isObservableMap(e))e.delete(t);else if(isObservableSet(e))e.delete(t);else{if(!isObservableArray(e))return fail(!1);"number"!=typeof t&&(t=parseInt(t,10)),invariant(t>=0,"Not a valid index: '"+t+"'"),e.splice(t,1)}}function has(e,t){if(isObservableObject(e)){var r=getAdministration(e);return r.getKeys(),!!r.values[t]}return isObservableMap(e)?e.has(t):isObservableSet(e)?e.has(t):isObservableArray(e)?t>=0&&t<e.length:fail(!1)}function get(e,t){if(has(e,t))return isObservableObject(e)?e[t]:isObservableMap(e)?e.get(t):isObservableArray(e)?e[t]:fail(!1)}function observe(e,t,r,n){return"function"==typeof r?observeObservableProperty(e,t,r,n):observeObservable(e,t,r)}function observeObservable(e,t,r){return getAdministration(e).observe(t,r)}function observeObservableProperty(e,t,r,n){return getAdministration(e,t).observe(r,n)}var defaultOptions={detectCycles:!0,exportMapsAsObjects:!0,recurseEverything:!1};function cache(e,t,r,n){return n.detectCycles&&e.set(t,r),r}function toJSHelper(e,t,r){if(!t.recurseEverything&&!isObservable(e))return e;if("object"!=typeof e)return e;if(null===e)return null;if(e instanceof Date)return e;if(isObservableValue(e))return toJSHelper(e.get(),t,r);if(isObservable(e)&&keys(e),!0===t.detectCycles&&null!==e&&r.has(e))return r.get(e);if(isObservableArray(e)||Array.isArray(e)){var n=cache(r,e,[],t),o=e.map(function(e){return toJSHelper(e,t,r)});n.length=o.length;for(var a=0,i=o.length;a<i;a++)n[a]=o[a];return n}if(isObservableSet(e)||Object.getPrototypeOf(e)===Set.prototype){if(!1===t.exportMapsAsObjects){var s=cache(r,e,new Set,t);return e.forEach(function(e){s.add(toJSHelper(e,t,r))}),s}var c=cache(r,e,[],t);return e.forEach(function(e){c.push(toJSHelper(e,t,r))}),c}if(isObservableMap(e)||Object.getPrototypeOf(e)===Map.prototype){if(!1===t.exportMapsAsObjects){var u=cache(r,e,new Map,t);return e.forEach(function(e,n){u.set(n,toJSHelper(e,t,r))}),u}var l=cache(r,e,{},t);return e.forEach(function(e,n){l[n]=toJSHelper(e,t,r)}),l}var p=cache(r,e,{},t);for(var b in e)p[b]=toJSHelper(e[b],t,r);return p}function toJS(e,t){var r;return"boolean"==typeof t&&(t={detectCycles:t}),t||(t=defaultOptions),t.detectCycles=void 0===t.detectCycles?!0===t.recurseEverything:!0===t.detectCycles,t.detectCycles&&(r=new Map),toJSHelper(e,t,r)}function trace(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=!1;"boolean"==typeof e[e.length-1]&&(r=e.pop());var n=getAtomFromArgs(e);if(!n)return fail(!1);n.isTracing===TraceMode.NONE&&console.log("[mobx.trace] '"+n.name+"' tracing enabled"),n.isTracing=r?TraceMode.BREAK:TraceMode.LOG}function getAtomFromArgs(e){switch(e.length){case 0:return globalState.trackingDerivation;case 1:return getAtom(e[0]);case 2:return getAtom(e[0],e[1])}}function transaction(e,t){void 0===t&&(t=void 0),startBatch();try{return e.apply(t)}finally{endBatch()}}function when(e,t,r){return 1===arguments.length||t&&"object"==typeof t?whenPromise(e,t):_when(e,t,r||{})}function _when(e,t,r){var n;"number"==typeof r.timeout&&(n=setTimeout(function(){if(!a.$mobx.isDisposed){a();var e=new Error("WHEN_TIMEOUT");if(!r.onError)throw e;r.onError(e)}},r.timeout)),r.name=r.name||"When@"+getNextId();var o=createAction(r.name+"-effect",t),a=autorun(function(t){e()&&(t.dispose(),n&&clearTimeout(n),o())},r);return a}function whenPromise(e,t){var r,n=new Promise(function(n,o){var a=_when(e,n,__assign({},t,{onError:o}));r=function(){a(),o("WHEN_CANCELLED")}});return n.cancel=r,n}function hasInterceptors(e){return void 0!==e.interceptors&&e.interceptors.length>0}function registerInterceptor(e,t){var r=e.interceptors||(e.interceptors=[]);return r.push(t),once(function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)})}function interceptChange(e,t){var r=untrackedStart();try{var n=e.interceptors;if(n)for(var o=0,a=n.length;o<a&&(invariant(!(t=n[o](t))||t.type,"Intercept handlers should return nothing or a change object"),t);o++);return t}finally{untrackedEnd(r)}}function hasListeners(e){return void 0!==e.changeListeners&&e.changeListeners.length>0}function registerListener(e,t){var r=e.changeListeners||(e.changeListeners=[]);return r.push(t),once(function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)})}function notifyListeners(e,t){var r=untrackedStart(),n=e.changeListeners;if(n){for(var o=0,a=(n=n.slice()).length;o<a;o++)n[o](t);untrackedEnd(r)}}var MAX_SPLICE_SIZE=1e4,safariPrototypeSetterInheritanceBug=function(){var e=!1,t={};return Object.defineProperty(t,"0",{set:function(){e=!0}}),Object.create(t)[0]=1,!1===e}(),OBSERVABLE_ARRAY_BUFFER_SIZE=0,StubArray=function(){return function(){}}();function inherit(e,t){void 0!==Object.setPrototypeOf?Object.setPrototypeOf(e.prototype,t):void 0!==e.prototype.__proto__?e.prototype.__proto__=t:e.prototype=t}inherit(StubArray,Array.prototype),Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach(function(e){Object.defineProperty(StubArray.prototype,e,{configurable:!0,writable:!0,value:Array.prototype[e]})});var ObservableArrayAdministration=function(){function e(e,t,r,n){this.array=r,this.owned=n,this.values=[],this.lastKnownLength=0,this.atom=new Atom(e||"ObservableArray@"+getNextId()),this.enhancer=function(r,n){return t(r,n,e+"[..]")}}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.dehanceValues=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e.prototype.observe=function(e,t){return void 0===t&&(t=!1),t&&e({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),registerListener(this,e)},e.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},e.prototype.setArrayLength=function(e){if("number"!=typeof e||e<0)throw new Error("[mobx.array] Out of range: "+e);var t=this.values.length;if(e!==t)if(e>t){for(var r=new Array(e-t),n=0;n<e-t;n++)r[n]=void 0;this.spliceWithArray(t,0,r)}else this.spliceWithArray(e,t-e)},e.prototype.updateArrayLength=function(e,t){if(e!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed. Did you use peek() to change it?");this.lastKnownLength+=t,t>0&&e+t+1>OBSERVABLE_ARRAY_BUFFER_SIZE&&reserveArrayBuffer(e+t+1)},e.prototype.spliceWithArray=function(e,t,r){var n=this;checkIfStateModificationsAreAllowed(this.atom);var o=this.values.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===r&&(r=EMPTY_ARRAY),hasInterceptors(this)){var a=interceptChange(this,{object:this.array,type:"splice",index:e,removedCount:t,added:r});if(!a)return EMPTY_ARRAY;t=a.removedCount,r=a.added}var i=(r=0===r.length?r:r.map(function(e){return n.enhancer(e,void 0)})).length-t;this.updateArrayLength(o,i);var s=this.spliceItemsIntoValues(e,t,r);return 0===t&&0===r.length||this.notifyArraySplice(e,r,s),this.dehanceValues(s)},e.prototype.spliceItemsIntoValues=function(e,t,r){var n;if(r.length<MAX_SPLICE_SIZE)return(n=this.values).splice.apply(n,__spread([e,t],r));var o=this.values.slice(e,e+t);return this.values=this.values.slice(0,e).concat(r,this.values.slice(e+t)),o},e.prototype.notifyArrayChildUpdate=function(e,t,r){var n=!this.owned&&isSpyEnabled(),o=hasListeners(this),a=o||n?{object:this.array,type:"update",index:e,newValue:t,oldValue:r}:null;n&&spyReportStart(__assign({},a,{name:this.atom.name})),this.atom.reportChanged(),o&&notifyListeners(this,a),n&&spyReportEnd()},e.prototype.notifyArraySplice=function(e,t,r){var n=!this.owned&&isSpyEnabled(),o=hasListeners(this),a=o||n?{object:this.array,type:"splice",index:e,removed:r,added:t,removedCount:r.length,addedCount:t.length}:null;n&&spyReportStart(__assign({},a,{name:this.atom.name})),this.atom.reportChanged(),o&&notifyListeners(this,a),n&&spyReportEnd()},e}(),ObservableArray=function(e){function t(t,r,n,o){void 0===n&&(n="ObservableArray@"+getNextId()),void 0===o&&(o=!1);var a=e.call(this)||this,i=new ObservableArrayAdministration(n,r,a,o);if(addHiddenFinalProp(a,"$mobx",i),t&&t.length){var s=allowStateChangesStart(!0);a.spliceWithArray(0,0,t),allowStateChangesEnd(s)}return safariPrototypeSetterInheritanceBug&&Object.defineProperty(i.array,"0",ENTRY_0),a}return __extends(t,e),t.prototype.intercept=function(e){return this.$mobx.intercept(e)},t.prototype.observe=function(e,t){return void 0===t&&(t=!1),this.$mobx.observe(e,t)},t.prototype.clear=function(){return this.splice(0)},t.prototype.concat=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.$mobx.atom.reportObserved(),Array.prototype.concat.apply(this.peek(),e.map(function(e){return isObservableArray(e)?e.peek():e}))},t.prototype.replace=function(e){return this.$mobx.spliceWithArray(0,this.$mobx.values.length,e)},t.prototype.toJS=function(){return this.slice()},t.prototype.toJSON=function(){return this.toJS()},t.prototype.peek=function(){return this.$mobx.atom.reportObserved(),this.$mobx.dehanceValues(this.$mobx.values)},t.prototype.find=function(e,t,r){void 0===r&&(r=0),3===arguments.length&&deprecated("The array.find fromIndex argument to find will not be supported anymore in the next major");var n=this.findIndex.apply(this,arguments);return-1===n?void 0:this.get(n)},t.prototype.findIndex=function(e,t,r){void 0===r&&(r=0),3===arguments.length&&deprecated("The array.findIndex fromIndex argument to find will not be supported anymore in the next major");for(var n=this.peek(),o=n.length,a=r;a<o;a++)if(e.call(t,n[a],a,this))return a;return-1},t.prototype.splice=function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];switch(arguments.length){case 0:return[];case 1:return this.$mobx.spliceWithArray(e);case 2:return this.$mobx.spliceWithArray(e,t)}return this.$mobx.spliceWithArray(e,t,r)},t.prototype.spliceWithArray=function(e,t,r){return this.$mobx.spliceWithArray(e,t,r)},t.prototype.push=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=this.$mobx;return r.spliceWithArray(r.values.length,0,e),r.values.length},t.prototype.pop=function(){return this.splice(Math.max(this.$mobx.values.length-1,0),1)[0]},t.prototype.shift=function(){return this.splice(0,1)[0]},t.prototype.unshift=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var r=this.$mobx;return r.spliceWithArray(0,0,e),r.values.length},t.prototype.reverse=function(){var e=this.slice();return e.reverse.apply(e,arguments)},t.prototype.sort=function(e){var t=this.slice();return t.sort.apply(t,arguments)},t.prototype.remove=function(e){var t=this.$mobx.dehanceValues(this.$mobx.values).indexOf(e);return t>-1&&(this.splice(t,1),!0)},t.prototype.move=function(e,t){function r(e){if(e<0)throw new Error("[mobx.array] Index out of bounds: "+e+" is negative");var t=this.$mobx.values.length;if(e>=t)throw new Error("[mobx.array] Index out of bounds: "+e+" is not smaller than "+t)}if(deprecated("observableArray.move is deprecated, use .slice() & .replace() instead"),r.call(this,e),r.call(this,t),e!==t){var n,o=this.$mobx.values;n=e<t?__spread(o.slice(0,e),o.slice(e+1,t+1),[o[e]],o.slice(t+1)):__spread(o.slice(0,t),[o[e]],o.slice(t,e),o.slice(e+1)),this.replace(n)}},t.prototype.get=function(e){var t=this.$mobx;if(t){if(e<t.values.length)return t.atom.reportObserved(),t.dehanceValue(t.values[e]);console.warn("[mobx.array] Attempt to read an array index ("+e+") that is out of bounds ("+t.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},t.prototype.set=function(e,t){var r=this.$mobx,n=r.values;if(e<n.length){checkIfStateModificationsAreAllowed(r.atom);var o=n[e];if(hasInterceptors(r)){var a=interceptChange(r,{type:"update",object:this,index:e,newValue:t});if(!a)return;t=a.newValue}(t=r.enhancer(t,o))!==o&&(n[e]=t,r.notifyArrayChildUpdate(e,t,o))}else{if(e!==n.length)throw new Error("[mobx.array] Index out of bounds, "+e+" is larger than "+n.length);r.spliceWithArray(e,0,[t])}},t}(StubArray);declareIterator(ObservableArray.prototype,function(){this.$mobx.atom.reportObserved();var e=this,t=0;return makeIterable({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})}),Object.defineProperty(ObservableArray.prototype,"length",{enumerable:!1,configurable:!0,get:function(){return this.$mobx.getArrayLength()},set:function(e){this.$mobx.setArrayLength(e)}}),addHiddenProp(ObservableArray.prototype,toStringTagSymbol(),"Array"),["every","filter","forEach","indexOf","join","lastIndexOf","map","reduce","reduceRight","slice","some","toString","toLocaleString"].forEach(function(e){var t=Array.prototype[e];invariant("function"==typeof t,"Base function not defined on Array prototype: '"+e+"'"),addHiddenProp(ObservableArray.prototype,e,function(){return t.apply(this.peek(),arguments)})}),makeNonEnumerable(ObservableArray.prototype,["constructor","intercept","observe","clear","concat","get","replace","toJS","toJSON","peek","find","findIndex","splice","spliceWithArray","push","pop","set","shift","unshift","reverse","sort","remove","move","toString","toLocaleString"]);var ENTRY_0=createArrayEntryDescriptor(0);function createArrayEntryDescriptor(e){return{enumerable:!1,configurable:!1,get:function(){return this.get(e)},set:function(t){this.set(e,t)}}}function createArrayBufferItem(e){Object.defineProperty(ObservableArray.prototype,""+e,createArrayEntryDescriptor(e))}function reserveArrayBuffer(e){for(var t=OBSERVABLE_ARRAY_BUFFER_SIZE;t<e;t++)createArrayBufferItem(t);OBSERVABLE_ARRAY_BUFFER_SIZE=e}reserveArrayBuffer(1e3);var isObservableArrayAdministration=createInstanceofPredicate("ObservableArrayAdministration",ObservableArrayAdministration);function isObservableArray(e){return isObject(e)&&isObservableArrayAdministration(e.$mobx)}var ObservableMapMarker={},ObservableMap=function(){function e(e,t,r){if(void 0===t&&(t=deepEnhancer),void 0===r&&(r="ObservableMap@"+getNextId()),this.enhancer=t,this.name=r,this.$mobx=ObservableMapMarker,this._keys=new ObservableArray(void 0,referenceEnhancer,this.name+".keys()",!0),"function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(e)}return e.prototype._has=function(e){return this._data.has(e)},e.prototype.has=function(e){var t=this;if(!globalState.trackingDerivation)return this._has(e);var r=this._hasMap.get(e);if(!r){var n=r=new ObservableValue(this._has(e),referenceEnhancer,this.name+"."+stringifyKey(e)+"?",!1);this._hasMap.set(e,n),onBecomeUnobserved(n,function(){return t._hasMap.delete(e)})}return r.get()},e.prototype.set=function(e,t){var r=this._has(e);if(hasInterceptors(this)){var n=interceptChange(this,{type:r?"update":"add",object:this,newValue:t,name:e});if(!n)return this;t=n.newValue}return r?this._updateValue(e,t):this._addValue(e,t),this},e.prototype.delete=function(e){var t=this;if(hasInterceptors(this)&&!(o=interceptChange(this,{type:"delete",object:this,name:e})))return!1;if(this._has(e)){var r=isSpyEnabled(),n=hasListeners(this),o=n||r?{type:"delete",object:this,oldValue:this._data.get(e).value,name:e}:null;return r&&spyReportStart(__assign({},o,{name:this.name,key:e})),transaction(function(){t._keys.remove(e),t._updateHasMapEntry(e,!1),t._data.get(e).setNewValue(void 0),t._data.delete(e)}),n&&notifyListeners(this,o),r&&spyReportEnd(),!0}return!1},e.prototype._updateHasMapEntry=function(e,t){var r=this._hasMap.get(e);r&&r.setNewValue(t)},e.prototype._updateValue=function(e,t){var r=this._data.get(e);if((t=r.prepareNewValue(t))!==globalState.UNCHANGED){var n=isSpyEnabled(),o=hasListeners(this),a=o||n?{type:"update",object:this,oldValue:r.value,name:e,newValue:t}:null;n&&spyReportStart(__assign({},a,{name:this.name,key:e})),r.setNewValue(t),o&&notifyListeners(this,a),n&&spyReportEnd()}},e.prototype._addValue=function(e,t){var r=this;transaction(function(){var n=new ObservableValue(t,r.enhancer,r.name+"."+stringifyKey(e),!1);r._data.set(e,n),t=n.value,r._updateHasMapEntry(e,!0),r._keys.push(e)});var n=isSpyEnabled(),o=hasListeners(this),a=o||n?{type:"add",object:this,name:e,newValue:t}:null;n&&spyReportStart(__assign({},a,{name:this.name,key:e})),o&&notifyListeners(this,a),n&&spyReportEnd()},e.prototype.get=function(e){return this.has(e)?this.dehanceValue(this._data.get(e).get()):this.dehanceValue(void 0)},e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.keys=function(){return this._keys[iteratorSymbol()]()},e.prototype.values=function(){var e=this,t=0;return makeIterable({next:function(){return t<e._keys.length?{value:e.get(e._keys[t++]),done:!1}:{value:void 0,done:!0}}})},e.prototype.entries=function(){var e=this,t=0;return makeIterable({next:function(){if(t<e._keys.length){var r=e._keys[t++];return{value:[r,e.get(r)],done:!1}}return{done:!0}}})},e.prototype.forEach=function(e,t){var r=this;this._keys.forEach(function(n){return e.call(t,r.get(n),n,r)})},e.prototype.merge=function(e){var t=this;return isObservableMap(e)&&(e=e.toJS()),transaction(function(){isPlainObject(e)?Object.keys(e).forEach(function(r){return t.set(r,e[r])}):Array.isArray(e)?e.forEach(function(e){var r=__read(e,2),n=r[0],o=r[1];return t.set(n,o)}):isES6Map(e)?e.constructor!==Map?fail("Cannot initialize from classes that inherit from Map: "+e.constructor.name):e.forEach(function(e,r){return t.set(r,e)}):null!=e&&fail("Cannot initialize map from "+e)}),this},e.prototype.clear=function(){var e=this;transaction(function(){untracked(function(){e._keys.slice().forEach(function(t){return e.delete(t)})})})},e.prototype.replace=function(e){var t=this;return transaction(function(){var r=getMapLikeKeys(e);t._keys.filter(function(e){return-1===r.indexOf(e)}).forEach(function(e){return t.delete(e)}),t.merge(e)}),this},Object.defineProperty(e.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),e.prototype.toPOJO=function(){var e=this,t={};return this._keys.forEach(function(r){return t["symbol"==typeof r?r:stringifyKey(r)]=e.get(r)}),t},e.prototype.toJS=function(){var e=this,t=new Map;return this._keys.forEach(function(r){return t.set(r,e.get(r))}),t},e.prototype.toJSON=function(){return this.toPOJO()},e.prototype.toString=function(){var e=this;return this.name+"[{ "+this._keys.map(function(t){return stringifyKey(t)+": "+e.get(t)}).join(", ")+" }]"},e.prototype.observe=function(e,t){return registerListener(this,e)},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e}();function stringifyKey(e){return e&&e.toString?e.toString():new String(e).toString()}declareIterator(ObservableMap.prototype,function(){return this.entries()}),addHiddenFinalProp(ObservableMap.prototype,toStringTagSymbol(),"Map");var isObservableMap=createInstanceofPredicate("ObservableMap",ObservableMap),ObservableSetMarker={},ObservableSet=function(){function e(e,t,r){if(void 0===t&&(t=deepEnhancer),void 0===r&&(r="ObservableSet@"+getNextId()),this.name=r,this.$mobx=ObservableSetMarker,this._data=new Set,this._atom=createAtom(this.name),"function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(e,n){return t(e,n,r)},e&&this.replace(e)}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.clear=function(){var e=this;transaction(function(){untracked(function(){e._data.forEach(function(t){e.delete(t)})})})},e.prototype.forEach=function(e,t){var r=this;this._data.forEach(function(n){e.call(t,n,n,r)})},Object.defineProperty(e.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),e.prototype.add=function(e){var t=this;if((checkIfStateModificationsAreAllowed(this._atom),hasInterceptors(this))&&!(o=interceptChange(this,{type:"add",object:this,newValue:e})))return this;if(!this.has(e)){transaction(function(){t._data.add(t.enhancer(e,void 0)),t._atom.reportChanged()});var r=isSpyEnabled(),n=hasListeners(this),o=n||r?{type:"add",object:this,newValue:e}:null;0,n&&notifyListeners(this,o)}return this},e.prototype.delete=function(e){var t=this;if(hasInterceptors(this)&&!(o=interceptChange(this,{type:"delete",object:this,oldValue:e})))return!1;if(this.has(e)){var r=isSpyEnabled(),n=hasListeners(this),o=n||r?{type:"delete",object:this,oldValue:e}:null;return transaction(function(){t._atom.reportChanged(),t._data.delete(e)}),n&&notifyListeners(this,o),!0}return!1},e.prototype.has=function(e){return this._atom.reportObserved(),this._data.has(this.dehanceValue(e))},e.prototype.entries=function(){var e=0,t=iteratorToArray(this.keys()),r=iteratorToArray(this.values());return makeIterable({next:function(){var n=e;return e+=1,n<r.length?{value:[t[n],r[n]],done:!1}:{done:!0}}})},e.prototype.keys=function(){return this.values()},e.prototype.values=function(){this._atom.reportObserved();var e,t=this,r=0;return void 0!==this._data.values?e=iteratorToArray(this._data.values()):(e=[],this._data.forEach(function(t){return e.push(t)})),makeIterable({next:function(){return r<e.length?{value:t.dehanceValue(e[r++]),done:!1}:{done:!0}}})},e.prototype.replace=function(e){var t=this;return isObservableSet(e)&&(e=e.toJS()),transaction(function(){Array.isArray(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):isES6Set(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&fail("Cannot initialize set from "+e)}),this},e.prototype.observe=function(e,t){return registerListener(this,e)},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e.prototype.toJS=function(){return new Set(this)},e.prototype.toString=function(){return this.name+"[ "+iteratorToArray(this.keys()).join(", ")+" ]"},e}();declareIterator(ObservableSet.prototype,function(){return this.values()}),addHiddenFinalProp(ObservableSet.prototype,toStringTagSymbol(),"Set");var isObservableSet=createInstanceofPredicate("ObservableSet",ObservableSet),ObservableObjectAdministration=function(){function e(e,t,r){this.target=e,this.name=t,this.defaultEnhancer=r,this.values={}}return e.prototype.read=function(e,t){if(this.target===e||(this.illegalAccess(e,t),this.values[t]))return this.values[t].get()},e.prototype.write=function(e,t,r){var n=this.target;n!==e&&this.illegalAccess(e,t);var o=this.values[t];if(o instanceof ComputedValue)o.set(r);else{if(hasInterceptors(this)){if(!(s=interceptChange(this,{type:"update",object:n,name:t,newValue:r})))return;r=s.newValue}if((r=o.prepareNewValue(r))!==globalState.UNCHANGED){var a=hasListeners(this),i=isSpyEnabled(),s=a||i?{type:"update",object:n,oldValue:o.value,name:t,newValue:r}:null;i&&spyReportStart(__assign({},s,{name:this.name,key:t})),o.setNewValue(r),a&&notifyListeners(this,s),i&&spyReportEnd()}}},e.prototype.remove=function(e){if(this.values[e]){var t=this.target;if(hasInterceptors(this))if(!(a=interceptChange(this,{object:t,name:e,type:"remove"})))return;try{startBatch();var r=hasListeners(this),n=isSpyEnabled(),o=this.values[e].get();this.keys&&this.keys.remove(e),delete this.values[e],delete this.target[e];var a=r||n?{type:"remove",object:t,oldValue:o,name:e}:null;n&&spyReportStart(__assign({},a,{name:this.name,key:e})),r&&notifyListeners(this,a),n&&spyReportEnd()}finally{endBatch()}}},e.prototype.illegalAccess=function(e,t){console.warn("Property '"+t+"' of '"+e+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},e.prototype.observe=function(e,t){return registerListener(this,e)},e.prototype.intercept=function(e){return registerInterceptor(this,e)},e.prototype.getKeys=function(){var e=this;return void 0===this.keys&&(this.keys=new ObservableArray(Object.keys(this.values).filter(function(t){return e.values[t]instanceof ObservableValue}),referenceEnhancer,"keys("+this.name+")",!0)),this.keys.slice()},e}();function asObservableObject(e,t,r){void 0===t&&(t=""),void 0===r&&(r=deepEnhancer);var n=e.$mobx;return n||(isPlainObject(e)||(t=(e.constructor.name||"ObservableObject")+"@"+getNextId()),t||(t="ObservableObject@"+getNextId()),addHiddenFinalProp(e,"$mobx",n=new ObservableObjectAdministration(e,t,r)),n)}function defineObservableProperty(e,t,r,n){var o=asObservableObject(e);if(hasInterceptors(o)){var a=interceptChange(o,{object:e,name:t,type:"add",newValue:r});if(!a)return;r=a.newValue}r=(o.values[t]=new ObservableValue(r,n,o.name+"."+t,!1)).value,Object.defineProperty(e,t,generateObservablePropConfig(t)),o.keys&&o.keys.push(t),notifyPropertyAddition(o,e,t,r)}function defineComputedProperty(e,t,r){var n=asObservableObject(e);r.name=n.name+"."+t,r.context=e,n.values[t]=new ComputedValue(r),Object.defineProperty(e,t,generateComputedPropConfig(t))}var observablePropertyConfigs=Object.create(null),computedPropertyConfigs=Object.create(null);function generateObservablePropConfig(e){return observablePropertyConfigs[e]||(observablePropertyConfigs[e]={configurable:!0,enumerable:!0,get:function(){return this.$mobx.read(this,e)},set:function(t){this.$mobx.write(this,e,t)}})}function getAdministrationForComputedPropOwner(e){var t=e.$mobx;return t||(initializeInstance(e),e.$mobx)}function generateComputedPropConfig(e){return computedPropertyConfigs[e]||(computedPropertyConfigs[e]={configurable:globalState.computedConfigurable,enumerable:!1,get:function(){return getAdministrationForComputedPropOwner(this).read(this,e)},set:function(t){getAdministrationForComputedPropOwner(this).write(this,e,t)}})}function notifyPropertyAddition(e,t,r,n){var o=hasListeners(e),a=isSpyEnabled(),i=o||a?{type:"add",object:t,name:r,newValue:n}:null;a&&spyReportStart(__assign({},i,{name:e.name,key:r})),o&&notifyListeners(e,i),a&&spyReportEnd()}var isObservableObjectAdministration=createInstanceofPredicate("ObservableObjectAdministration",ObservableObjectAdministration);function isObservableObject(e){return!!isObject(e)&&(initializeInstance(e),isObservableObjectAdministration(e.$mobx))}function getAtom(e,t){if("object"==typeof e&&null!==e){if(isObservableArray(e))return void 0!==t&&fail(!1),e.$mobx.atom;if(isObservableSet(e))return e.$mobx;if(isObservableMap(e)){var r=e;return void 0===t?getAtom(r._keys):((n=r._data.get(t)||r._hasMap.get(t))||fail(!1),n)}var n;if(initializeInstance(e),t&&!e.$mobx&&e[t],isObservableObject(e))return t?((n=e.$mobx.values[t])||fail(!1),n):fail(!1);if(isAtom(e)||isComputedValue(e)||isReaction(e))return e}else if("function"==typeof e&&isReaction(e.$mobx))return e.$mobx;return fail(!1)}function getAdministration(e,t){return e||fail("Expecting some object"),void 0!==t?getAdministration(getAtom(e,t)):isAtom(e)||isComputedValue(e)||isReaction(e)?e:isObservableMap(e)||isObservableSet(e)?e:(initializeInstance(e),e.$mobx?e.$mobx:void fail(!1))}function getDebugName(e,t){return(void 0!==t?getAtom(e,t):isObservableObject(e)||isObservableMap(e)||isObservableSet(e)?getAdministration(e):getAtom(e)).name}var g,toString=Object.prototype.toString;function deepEqual(e,t){return eq(e,t)}function eq(e,t,r,n){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var o=typeof e;return("function"===o||"object"===o||"object"==typeof t)&&deepEq(e,t,r,n)}function deepEq(e,t,r,n){e=unwrap(e),t=unwrap(t);var o=toString.call(e);if(o!==toString.call(t))return!1;switch(o){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0==+e?1/+e==1/t:+e==+t;case"[object Date]":case"[object Boolean]":return+e==+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t)}var a="[object Array]"===o;if(!a){if("object"!=typeof e||"object"!=typeof t)return!1;var i=e.constructor,s=t.constructor;if(i!==s&&!("function"==typeof i&&i instanceof i&&"function"==typeof s&&s instanceof s)&&"constructor"in e&&"constructor"in t)return!1}n=n||[];for(var c=(r=r||[]).length;c--;)if(r[c]===e)return n[c]===t;if(r.push(e),n.push(t),a){if((c=e.length)!==t.length)return!1;for(;c--;)if(!eq(e[c],t[c],r,n))return!1}else{var u=Object.keys(e),l=void 0;if(c=u.length,Object.keys(t).length!==c)return!1;for(;c--;)if(!has$1(t,l=u[c])||!eq(e[l],t[l],r,n))return!1}return r.pop(),n.pop(),!0}function unwrap(e){return isObservableArray(e)?e.peek():isES6Map(e)||isObservableMap(e)?iteratorToArray(e.entries()):isES6Set(e)||isObservableSet(e)?iteratorToArray(e.entries()):e}function has$1(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var $mobx="$mobx";"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:spy,extras:{getDebugName:getDebugName},$mobx:$mobx}),exports.$mobx=$mobx,exports.ObservableMap=ObservableMap,exports.ObservableSet=ObservableSet,exports.Reaction=Reaction,exports._allowStateChanges=allowStateChanges,exports._allowStateChangesInsideComputed=allowStateChangesInsideComputed,exports._getAdministration=getAdministration,exports._getGlobalState=getGlobalState,exports._interceptReads=interceptReads,exports._isComputingDerivation=isComputingDerivation,exports._resetGlobalState=resetGlobalState,exports.action=action,exports.autorun=autorun,exports.comparer=comparer,exports.computed=computed,exports.configure=configure,exports.createAtom=createAtom,exports.decorate=decorate,exports.entries=entries,exports.extendObservable=extendObservable,exports.extendShallowObservable=extendShallowObservable,exports.flow=flow,exports.get=get,exports.getAtom=getAtom,exports.getDebugName=getDebugName,exports.getDependencyTree=getDependencyTree,exports.getObserverTree=getObserverTree,exports.has=has,exports.intercept=intercept,exports.isAction=isAction,exports.isArrayLike=isArrayLike,exports.isBoxedObservable=isObservableValue,exports.isComputed=isComputed,exports.isComputedProp=isComputedProp,exports.isObservable=isObservable,exports.isObservableArray=isObservableArray,exports.isObservableMap=isObservableMap,exports.isObservableObject=isObservableObject,exports.isObservableProp=isObservableProp,exports.isObservableSet=isObservableSet,exports.keys=keys,exports.observable=observable,exports.observe=observe,exports.onBecomeObserved=onBecomeObserved,exports.onBecomeUnobserved=onBecomeUnobserved,exports.onReactionError=onReactionError,exports.reaction=reaction,exports.remove=remove,exports.runInAction=runInAction,exports.set=set,exports.spy=spy,exports.toJS=toJS,exports.trace=trace,exports.transaction=transaction,exports.untracked=untracked,exports.values=values,exports.when=when;
@@ -3404,9 +3404,17 @@ var ObservableMap = /** @class */ (function () {
3404
3404
  return this._data.has(key);
3405
3405
  };
3406
3406
  ObservableMap.prototype.has = function (key) {
3407
- if (this._hasMap.has(key))
3408
- return this._hasMap.get(key).get();
3409
- return this._updateHasMapEntry(key, false).get();
3407
+ var _this = this;
3408
+ if (!globalState.trackingDerivation)
3409
+ return this._has(key);
3410
+ var entry = this._hasMap.get(key);
3411
+ if (!entry) {
3412
+ // todo: replace with atom (breaking change)
3413
+ var newEntry = (entry = new ObservableValue(this._has(key), referenceEnhancer, this.name + "." + stringifyKey(key) + "?", false));
3414
+ this._hasMap.set(key, newEntry);
3415
+ onBecomeUnobserved(newEntry, function () { return _this._hasMap.delete(key); });
3416
+ }
3417
+ return entry.get();
3410
3418
  };
3411
3419
  ObservableMap.prototype.set = function (key, value) {
3412
3420
  var hasKey = this._has(key);
@@ -3469,16 +3477,10 @@ var ObservableMap = /** @class */ (function () {
3469
3477
  return false;
3470
3478
  };
3471
3479
  ObservableMap.prototype._updateHasMapEntry = function (key, value) {
3472
- // optimization; don't fill the hasMap if we are not observing, or remove entry if there are no observers anymore
3473
3480
  var entry = this._hasMap.get(key);
3474
3481
  if (entry) {
3475
3482
  entry.setNewValue(value);
3476
3483
  }
3477
- else {
3478
- entry = new ObservableValue(value, referenceEnhancer, this.name + "." + stringifyKey(key) + "?", false);
3479
- this._hasMap.set(key, entry);
3480
- }
3481
- return entry;
3482
3484
  };
3483
3485
  ObservableMap.prototype._updateValue = function (key, newValue) {
3484
3486
  var observable = this._data.get(key);
package/lib/mobx.umd.js CHANGED
@@ -3409,9 +3409,17 @@
3409
3409
  return this._data.has(key);
3410
3410
  };
3411
3411
  ObservableMap.prototype.has = function (key) {
3412
- if (this._hasMap.has(key))
3413
- return this._hasMap.get(key).get();
3414
- return this._updateHasMapEntry(key, false).get();
3412
+ var _this = this;
3413
+ if (!globalState.trackingDerivation)
3414
+ return this._has(key);
3415
+ var entry = this._hasMap.get(key);
3416
+ if (!entry) {
3417
+ // todo: replace with atom (breaking change)
3418
+ var newEntry = (entry = new ObservableValue(this._has(key), referenceEnhancer, this.name + "." + stringifyKey(key) + "?", false));
3419
+ this._hasMap.set(key, newEntry);
3420
+ onBecomeUnobserved(newEntry, function () { return _this._hasMap.delete(key); });
3421
+ }
3422
+ return entry.get();
3415
3423
  };
3416
3424
  ObservableMap.prototype.set = function (key, value) {
3417
3425
  var hasKey = this._has(key);
@@ -3474,16 +3482,10 @@
3474
3482
  return false;
3475
3483
  };
3476
3484
  ObservableMap.prototype._updateHasMapEntry = function (key, value) {
3477
- // optimization; don't fill the hasMap if we are not observing, or remove entry if there are no observers anymore
3478
3485
  var entry = this._hasMap.get(key);
3479
3486
  if (entry) {
3480
3487
  entry.setNewValue(value);
3481
3488
  }
3482
- else {
3483
- entry = new ObservableValue(value, referenceEnhancer, this.name + "." + stringifyKey(key) + "?", false);
3484
- this._hasMap.set(key, entry);
3485
- }
3486
- return entry;
3487
3489
  };
3488
3490
  ObservableMap.prototype._updateValue = function (key, newValue) {
3489
3491
  var observable = this._data.get(key);
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).mobx={})}(this,function(e){"use strict";var t=function(e,n){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,n)};function n(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}var r=function(){return(r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function o(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function i(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(o(arguments[t]));return e}var a="An invariant failed, however the error is obfuscated because this is an production build.",s=[];Object.freeze(s);var u={};function c(){return"undefined"!=typeof window?window:global}function l(){return++De.mobxGuid}function f(e){throw p(!1,e),"X"}function p(e,t){if(!e)throw new Error("[mobx] "+(t||a))}Object.freeze(u);function h(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var v=function(){};function d(e){return null!==e&&"object"==typeof e}function y(e){if(null===e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function b(e,t,n){Object.defineProperty(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function m(e,t,n){Object.defineProperty(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function g(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return d(e)&&!0===e[n]}}function _(e){return void 0!==c().Map&&e instanceof c().Map}function O(e){return e instanceof Set}function w(e){for(var t=[];;){var n=e.next();if(n.done)break;t.push(n.value)}return t}function S(){return"function"==typeof Symbol&&Symbol.toPrimitive||"@@toPrimitive"}function x(e){return null===e?null:"object"==typeof e?""+e:e}function A(){return"function"==typeof Symbol&&Symbol.iterator||"@@iterator"}function E(e,t){m(e,A(),t)}function D(e){return e[A()]=k,e}function j(){return"function"==typeof Symbol&&Symbol.toStringTag||"@@toStringTag"}function k(){return this}var T=function(){function t(t){void 0===t&&(t="Atom@"+l()),this.name=t,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=e.IDerivationState.NOT_TRACKING}return t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.reportObserved=function(){return Ve(this)},t.prototype.reportChanged=function(){Ie(),function(t){if(t.lowestObserverState===e.IDerivationState.STALE)return;t.lowestObserverState=e.IDerivationState.STALE;var n=t.observers,r=n.length;for(;r--;){var o=n[r];o.dependenciesState===e.IDerivationState.UP_TO_DATE&&(o.isTracing!==fe.NONE&&Ne(o,t),o.onBecomeStale()),o.dependenciesState=e.IDerivationState.STALE}}(this),Ce()},t.prototype.toString=function(){return this.name},t}(),I=g("Atom",T);function C(e,t,n){void 0===t&&(t=v),void 0===n&&(n=v);var r=new T(e);return tt(r,t),nt(r,n),r}function V(e,t){return e===t}var N={identity:V,structural:function(e,t){return sn(e,t)},default:function(e,t){return function(e,t){return"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t)}(e,t)||V(e,t)}},R={},P={};function L(e){if(!0!==e.__mobxDidRunLazyInitializers){var t=e.__mobxDecorators;if(t)for(var n in b(e,"__mobxDidRunLazyInitializers",!0),t){var r=t[n];r.propertyCreator(e,r.prop,r.descriptor,r.decoratorTarget,r.decoratorArguments)}}}function B(e,t){return function(){var n,o,i=function(o,i,a,s){if(!0===s)return t(o,i,a,o,n),null;if(!Object.prototype.hasOwnProperty.call(o,"__mobxDecorators")){var u=o.__mobxDecorators;b(o,"__mobxDecorators",r({},u))}return o.__mobxDecorators[i]={prop:i,propertyCreator:t,descriptor:a,decoratorTarget:o,decoratorArguments:n},function(e,t){var n=t?R:P;return n[e]||(n[e]={configurable:!0,enumerable:t,get:function(){return L(this),this[e]},set:function(t){L(this),this[e]=t}})}(i,e)};return(2===(o=arguments).length||3===o.length)&&"string"==typeof o[1]||4===o.length&&!0===o[3]?(n=s,i.apply(null,arguments)):(n=Array.prototype.slice.call(arguments),i)}}function $(e,t,n){return pt(e)?e:Array.isArray(e)?F.array(e,{name:n}):y(e)?F.object(e,void 0,{name:n}):_(e)?F.map(e,{name:n}):O(e)?F.set(e,{name:n}):e}function M(e){return e}function U(e){var t=B(!0,function(t,n,r,o,i){Yt(t,n,r?r.initializer?r.initializer.call(t):r.value:void 0,e)}),n=("undefined"!=typeof process&&process.env,t);return n.enhancer=e,n}var G={deep:!0,name:void 0,defaultDecorator:void 0},H={deep:!1,name:void 0,defaultDecorator:void 0};function z(e){return null==e?G:"string"==typeof e?{name:e,deep:!0}:e}function K(e){return e.defaultDecorator?e.defaultDecorator.enhancer:!1===e.deep?M:$}Object.freeze(G),Object.freeze(H);var W=U($),q=U(function(e,t,n){return null==e?e:tn(e)||Mt(e)||zt(e)||qt(e)?e:Array.isArray(e)?F.array(e,{name:n,deep:!1}):y(e)?F.object(e,void 0,{name:n,deep:!1}):_(e)?F.map(e,{name:n,deep:!1}):O(e)?F.set(e,{name:n,deep:!1}):f(!1)}),J=U(M),X=U(function(e,t,n){return sn(e,t)?t:e});var Y={box:function(e,t){arguments.length>2&&Q("box");var n=z(t);return new se(e,K(n),n.name,!0,n.equals)},shallowBox:function(e,t){return arguments.length>2&&Q("shallowBox"),F.box(e,{name:t,deep:!1})},array:function(e,t){arguments.length>2&&Q("array");var n=z(t);return new Nt(e,K(n),n.name)},shallowArray:function(e,t){return arguments.length>2&&Q("shallowArray"),F.array(e,{name:t,deep:!1})},map:function(e,t){arguments.length>2&&Q("map");var n=z(t);return new Gt(e,K(n),n.name)},shallowMap:function(e,t){return arguments.length>2&&Q("shallowMap"),F.map(e,{name:t,deep:!1})},set:function(e,t){arguments.length>2&&Q("set");var n=z(t);return new Wt(e,K(n),n.name)},object:function(e,t,n){return"string"==typeof arguments[1]&&Q("object"),ot({},e,t,z(n))},shallowObject:function(e,t){return"string"==typeof arguments[1]&&Q("shallowObject"),F.object(e,{},{name:t,deep:!1})},ref:J,shallow:q,deep:W,struct:X},F=function(e,t,n){if("string"==typeof arguments[1])return W.apply(null,arguments);if(pt(e))return e;var r=y(e)?F.object(e,t,n):Array.isArray(e)?F.array(e,t):_(e)?F.map(e,t):O(e)?F.set(e,t):e;if(r!==e)return r;f(!1)};function Q(e){f("Expected one or two arguments to observable."+e+". Did you accidentally try to use observable."+e+" as decorator?")}Object.keys(Y).forEach(function(e){return F[e]=Y[e]});var Z=B(!1,function(e,t,n,o,i){var a=n.get,s=n.set,u=i[0]||{};!function(e,t,n){var r=Xt(e);n.name=r.name+"."+t,n.context=e,r.values[t]=new ce(n),Object.defineProperty(e,t,function(e){return Qt[e]||(Qt[e]={configurable:De.computedConfigurable,enumerable:!1,get:function(){return Zt(this).read(this,e)},set:function(t){Zt(this).write(this,e,t)}})}(t))}(e,t,r({get:a,set:s},u))}),ee=Z({equals:N.structural}),te=function(e,t,n){if("string"==typeof t)return Z.apply(null,arguments);if(null!==e&&"object"==typeof e&&1===arguments.length)return Z.apply(null,arguments);var r="object"==typeof t?t:{};return r.get=e,r.set="function"==typeof t?t:r.set,r.name=r.name||e.name||"",new ce(r)};function ne(e,t){var n=function(){return re(e,t,this,arguments)};return n.isMobxAction=!0,n}function re(e,t,n,r){var o=function(e,t,n,r){var o=Ge()&&!!e,i=0;if(o){i=Date.now();var a=r&&r.length||0,s=new Array(a);if(a>0)for(var u=0;u<a;u++)s[u]=r[u];ze({type:"action",name:e,object:n,arguments:s})}var c=_e();Ie();var l=ie(!0);return{prevDerivation:c,prevAllowStateChanges:l,notifySpy:o,startTime:i}}(e,0,n,r),i=!0;try{var a=t.apply(n,r);return i=!1,a}finally{i?(De.suppressReactionErrors=i,oe(o),De.suppressReactionErrors=!1):oe(o)}}function oe(e){ae(e.prevAllowStateChanges),Ce(),Oe(e.prevDerivation),e.notifySpy&&We({time:Date.now()-e.startTime})}function ie(e){var t=De.allowStateChanges;return De.allowStateChanges=e,t}function ae(e){De.allowStateChanges=e}te.struct=ee;var se=function(e){function t(t,n,r,o,i){void 0===r&&(r="ObservableValue@"+l()),void 0===o&&(o=!0),void 0===i&&(i=N.default);var a=e.call(this,r)||this;return a.enhancer=n,a.name=r,a.equals=i,a.hasUnreportedChange=!1,a.value=n(t,void 0,r),o&&Ge()&&He({type:"create",name:a.name,newValue:""+a.value}),a}return n(t,e),t.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.prototype.set=function(e){var t=this.value;if((e=this.prepareNewValue(e))!==De.UNCHANGED){var n=Ge();n&&ze({type:"update",name:this.name,newValue:e,oldValue:t}),this.setNewValue(e),n&&We()}},t.prototype.prepareNewValue=function(e){if(ye(this),_t(this)){var t=wt(this,{object:this,type:"update",newValue:e});if(!t)return De.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value,this.name),this.equals(this.value,e)?De.UNCHANGED:e},t.prototype.setNewValue=function(e){var t=this.value;this.value=e,this.reportChanged(),St(this)&&At(this,{type:"update",object:this,newValue:e,oldValue:t})},t.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},t.prototype.intercept=function(e){return Ot(this,e)},t.prototype.observe=function(e,t){return t&&e({object:this,type:"update",newValue:this.value,oldValue:void 0}),xt(this,e)},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.value+"]"},t.prototype.valueOf=function(){return x(this.get())},t}(T);se.prototype[S()]=se.prototype.valueOf;var ue=g("ObservableValue",se),ce=function(){function t(t){this.dependenciesState=e.IDerivationState.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=e.IDerivationState.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+l(),this.value=new he(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=fe.NONE,this.derivation=t.get,this.name=t.name||"ComputedValue@"+l(),t.set&&(this.setter=ne(this.name+"-setter",t.set)),this.equals=t.equals||(t.compareStructural||t.struct?N.structural:N.default),this.scope=t.context,this.requiresReaction=!!t.requiresReaction,this.keepAlive=!!t.keepAlive}return t.prototype.onBecomeStale=function(){!function(t){if(t.lowestObserverState!==e.IDerivationState.UP_TO_DATE)return;t.lowestObserverState=e.IDerivationState.POSSIBLY_STALE;var n=t.observers,r=n.length;for(;r--;){var o=n[r];o.dependenciesState===e.IDerivationState.UP_TO_DATE&&(o.dependenciesState=e.IDerivationState.POSSIBLY_STALE,o.isTracing!==fe.NONE&&Ne(o,t),o.onBecomeStale())}}(this)},t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.get=function(){this.isComputing&&f("Cycle detected in computation "+this.name+": "+this.derivation),0!==De.inBatch||0!==this.observers.length||this.keepAlive?(Ve(this),de(this)&&this.trackAndCompute()&&function(t){if(t.lowestObserverState===e.IDerivationState.STALE)return;t.lowestObserverState=e.IDerivationState.STALE;var n=t.observers,r=n.length;for(;r--;){var o=n[r];o.dependenciesState===e.IDerivationState.POSSIBLY_STALE?o.dependenciesState=e.IDerivationState.STALE:o.dependenciesState===e.IDerivationState.UP_TO_DATE&&(t.lowestObserverState=e.IDerivationState.UP_TO_DATE)}}(this)):de(this)&&(this.warnAboutUntrackedRead(),Ie(),this.value=this.computeValue(!1),Ce());var t=this.value;if(ve(t))throw t.cause;return t},t.prototype.peek=function(){var e=this.computeValue(!1);if(ve(e))throw e.cause;return e},t.prototype.set=function(e){if(this.setter){p(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,e)}finally{this.isRunningSetter=!1}}else p(!1,!1)},t.prototype.trackAndCompute=function(){Ge()&&He({object:this.scope,type:"compute",name:this.name});var t=this.value,n=this.dependenciesState===e.IDerivationState.NOT_TRACKING,r=this.computeValue(!0),o=n||ve(t)||ve(r)||!this.equals(t,r);return o&&(this.value=r),o},t.prototype.computeValue=function(e){var t;if(this.isComputing=!0,De.computationDepth++,e)t=be(this,this.derivation,this.scope);else if(!0===De.disableErrorBoundaries)t=this.derivation.call(this.scope);else try{t=this.derivation.call(this.scope)}catch(e){t=new he(e)}return De.computationDepth--,this.isComputing=!1,t},t.prototype.suspend=function(){this.keepAlive||(me(this),this.value=void 0)},t.prototype.observe=function(e,t){var n=this,r=!0,o=void 0;return Qe(function(){var i=n.get();if(!r||t){var a=_e();e({type:"update",object:n,newValue:i,oldValue:o}),Oe(a)}r=!1,o=i})},t.prototype.warnAboutUntrackedRead=function(){},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},t.prototype.valueOf=function(){return x(this.get())},t}();ce.prototype[S()]=ce.prototype.valueOf;var le,fe,pe=g("ComputedValue",ce);(le=e.IDerivationState||(e.IDerivationState={}))[le.NOT_TRACKING=-1]="NOT_TRACKING",le[le.UP_TO_DATE=0]="UP_TO_DATE",le[le.POSSIBLY_STALE=1]="POSSIBLY_STALE",le[le.STALE=2]="STALE",function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(fe||(fe={}));var he=function(){return function(e){this.cause=e}}();function ve(e){return e instanceof he}function de(t){switch(t.dependenciesState){case e.IDerivationState.UP_TO_DATE:return!1;case e.IDerivationState.NOT_TRACKING:case e.IDerivationState.STALE:return!0;case e.IDerivationState.POSSIBLY_STALE:for(var n=_e(),r=t.observing,o=r.length,i=0;i<o;i++){var a=r[i];if(pe(a)){if(De.disableErrorBoundaries)a.get();else try{a.get()}catch(e){return Oe(n),!0}if(t.dependenciesState===e.IDerivationState.STALE)return Oe(n),!0}}return we(t),Oe(n),!1}}function ye(e){var t=e.observers.length>0;De.computationDepth>0&&t&&f(!1),De.allowStateChanges||!t&&"strict"!==De.enforceActions||f(!1)}function be(t,n,r){we(t),t.newObserving=new Array(t.observing.length+100),t.unboundDepsCount=0,t.runId=++De.runId;var o,i=De.trackingDerivation;if(De.trackingDerivation=t,!0===De.disableErrorBoundaries)o=n.call(r);else try{o=n.call(r)}catch(e){o=new he(e)}return De.trackingDerivation=i,function(t){for(var n=t.observing,r=t.observing=t.newObserving,o=e.IDerivationState.UP_TO_DATE,i=0,a=t.unboundDepsCount,s=0;s<a;s++){var u=r[s];0===u.diffValue&&(u.diffValue=1,i!==s&&(r[i]=u),i++),u.dependenciesState>o&&(o=u.dependenciesState)}r.length=i,t.newObserving=null,a=n.length;for(;a--;){var u=n[a];0===u.diffValue&&ke(u,t),u.diffValue=0}for(;i--;){var u=r[i];1===u.diffValue&&(u.diffValue=0,je(u,t))}o!==e.IDerivationState.UP_TO_DATE&&(t.dependenciesState=o,t.onBecomeStale())}(t),o}function me(t){var n=t.observing;t.observing=[];for(var r=n.length;r--;)ke(n[r],t);t.dependenciesState=e.IDerivationState.NOT_TRACKING}function ge(e){var t=_e(),n=e();return Oe(t),n}function _e(){var e=De.trackingDerivation;return De.trackingDerivation=null,e}function Oe(e){De.trackingDerivation=e}function we(t){if(t.dependenciesState!==e.IDerivationState.UP_TO_DATE){t.dependenciesState=e.IDerivationState.UP_TO_DATE;for(var n=t.observing,r=n.length;r--;)n[r].lowestObserverState=e.IDerivationState.UP_TO_DATE}}var Se=["mobxGuid","spyListeners","enforceActions","computedRequiresReaction","disableErrorBoundaries","runId","UNCHANGED"],xe=function(){return function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1}}(),Ae=!0,Ee=!1,De=function(){var e=c();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(Ae=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new xe).version&&(Ae=!1),Ae?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new xe):(setTimeout(function(){Ee||f("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")},1),new xe)}();function je(e,t){var n=e.observers.length;n&&(e.observersIndexes[t.__mapid]=n),e.observers[n]=t,e.lowestObserverState>t.dependenciesState&&(e.lowestObserverState=t.dependenciesState)}function ke(e,t){if(1===e.observers.length)e.observers.length=0,Te(e);else{var n=e.observers,r=e.observersIndexes,o=n.pop();if(o!==t){var i=r[t.__mapid]||0;i?r[o.__mapid]=i:delete r[o.__mapid],n[i]=o}delete r[t.__mapid]}}function Te(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,De.pendingUnobservations.push(e))}function Ie(){De.inBatch++}function Ce(){if(0==--De.inBatch){Be();for(var e=De.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,0===n.observers.length&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBecomeUnobserved()),n instanceof ce&&n.suspend())}De.pendingUnobservations=[]}}function Ve(e){var t=De.trackingDerivation;return null!==t?(t.runId!==e.lastAccessedBy&&(e.lastAccessedBy=t.runId,t.newObserving[t.unboundDepsCount++]=e,e.isBeingObserved||(e.isBeingObserved=!0,e.onBecomeObserved())),!0):(0===e.observers.length&&De.inBatch>0&&Te(e),!1)}function Ne(e,t){if(console.log("[mobx.trace] '"+e.name+"' is invalidated due to a change in: '"+t.name+"'"),e.isTracing===fe.BREAK){var n=[];!function e(t,n,r){if(n.length>=1e3)return void n.push("(and many more)");n.push(""+new Array(r).join("\t")+t.name);t.dependencies&&t.dependencies.forEach(function(t){return e(t,n,r+1)})}(it(e),n,1),new Function("debugger;\n/*\nTracing '"+e.name+"'\n\nYou are entering this break point because derivation '"+e.name+"' is being traced and '"+t.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(e instanceof ce?e.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+n.join("\n")+"\n*/\n ")()}}var Re=function(){function t(t,n,r){void 0===t&&(t="Reaction@"+l()),this.name=t,this.onInvalidate=n,this.errorHandler=r,this.observing=[],this.newObserving=[],this.dependenciesState=e.IDerivationState.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+l(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=fe.NONE}return t.prototype.onBecomeStale=function(){this.schedule()},t.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,De.pendingReactions.push(this),Be())},t.prototype.isScheduled=function(){return this._isScheduled},t.prototype.runReaction=function(){if(!this.isDisposed){if(Ie(),this._isScheduled=!1,de(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&Ge()&&He({name:this.name,type:"scheduled-reaction"})}catch(e){this.reportExceptionInDerivation(e)}}Ce()}},t.prototype.track=function(e){Ie();var t,n=Ge();n&&(t=Date.now(),ze({name:this.name,type:"reaction"})),this._isRunning=!0;var r=be(this,e,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&me(this),ve(r)&&this.reportExceptionInDerivation(r.cause),n&&We({time:Date.now()-t}),Ce()},t.prototype.reportExceptionInDerivation=function(e){var t=this;if(this.errorHandler)this.errorHandler(e,this);else{if(De.disableErrorBoundaries)throw e;var n="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";De.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(n,e),Ge()&&He({type:"error",name:this.name,message:n,error:""+e}),De.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})}},t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(Ie(),me(this),Ce()))},t.prototype.getDisposer=function(){var e=this.dispose.bind(this);return e.$mobx=this,e},t.prototype.toString=function(){return"Reaction["+this.name+"]"},t.prototype.trace=function(e){void 0===e&&(e=!1),bt(this,e)},t}();var Pe=100,Le=function(e){return e()};function Be(){De.inBatch>0||De.isRunningReactions||Le($e)}function $e(){De.isRunningReactions=!0;for(var e=De.pendingReactions,t=0;e.length>0;){++t===Pe&&(console.error("Reaction doesn't converge to a stable state after "+Pe+" iterations. Probably there is a cycle in the reactive function: "+e[0]),e.splice(0));for(var n=e.splice(0),r=0,o=n.length;r<o;r++)n[r].runReaction()}De.isRunningReactions=!1}var Me=g("Reaction",Re);function Ue(e){var t=Le;Le=function(n){return e(function(){return t(n)})}}function Ge(){return!!De.spyListeners.length}function He(e){if(De.spyListeners.length)for(var t=De.spyListeners,n=0,r=t.length;n<r;n++)t[n](e)}function ze(e){He(r({},e,{spyReportStart:!0}))}var Ke={spyReportEnd:!0};function We(e){He(e?r({},e,{spyReportEnd:!0}):Ke)}function qe(e){return De.spyListeners.push(e),h(function(){De.spyListeners=De.spyListeners.filter(function(t){return t!==e})})}function Je(){f(!1)}function Xe(e){return function(t,n,r){if(r){if(r.value)return{value:ne(e,r.value),enumerable:!1,configurable:!0,writable:!0};var o=r.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return ne(e,o.call(this))}}}return function(e){return function(t,n,r){Object.defineProperty(t,n,{configurable:!0,enumerable:!1,get:function(){},set:function(t){b(this,n,Ye(e,t))}})}}(e).apply(this,arguments)}}var Ye=function(e,t,n,r){return 1===arguments.length&&"function"==typeof e?ne(e.name||"<unnamed action>",e):2===arguments.length&&"function"==typeof t?ne(e,t):1===arguments.length&&"string"==typeof e?Xe(e):!0!==r?Xe(t).apply(null,arguments):void(e[t]=ne(e.name||t,n.value))};function Fe(e,t,n){b(e,t,ne(t,n.bind(e)))}function Qe(e,t){void 0===t&&(t=u);var n,r=t&&t.name||e.name||"Autorun@"+l();if(!t.scheduler&&!t.delay)n=new Re(r,function(){this.track(a)},t.onError);else{var o=et(t),i=!1;n=new Re(r,function(){i||(i=!0,o(function(){i=!1,n.isDisposed||n.track(a)}))},t.onError)}function a(){e(n)}return n.schedule(),n.getDisposer()}Ye.bound=function(e,t,n,r){return!0===r?(Fe(e,t,n.value),null):n?{configurable:!0,enumerable:!1,get:function(){return Fe(this,t,n.value||n.initializer.call(this)),this[t]},set:Je}:{enumerable:!1,configurable:!0,set:function(e){Fe(this,t,e)},get:function(){}}};var Ze=function(e){return e()};function et(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Ze}function tt(e,t,n){return rt("onBecomeObserved",e,t,n)}function nt(e,t,n){return rt("onBecomeUnobserved",e,t,n)}function rt(e,t,n,r){var o="string"==typeof n?nn(t,n):nn(t),i="string"==typeof n?r:n,a=o[e];return"function"!=typeof a?f(!1):(o[e]=function(){a.call(this),i.call(this)},function(){o[e]=a})}function ot(e,t,n,r){var o=(r=z(r)).defaultDecorator||(!1===r.deep?J:W);L(e),Xt(e,r.name,o.enhancer),Ie();try{for(var i in t){var a=Object.getOwnPropertyDescriptor(t,i),s=(n&&i in n?n[i]:a.get?Z:o)(e,i,a,!0);s&&Object.defineProperty(e,i,s)}}finally{Ce()}return e}function it(e,t){return at(nn(e,t))}function at(e){var t,n,r={name:e.name};return e.observing&&e.observing.length>0&&(r.dependencies=(t=e.observing,n=[],t.forEach(function(e){-1===n.indexOf(e)&&n.push(e)}),n).map(at)),r}function st(e){var t,n={name:e.name};return(t=e).observers&&t.observers.length>0&&(n.observers=function(e){return e.observers}(e).map(st)),n}var ut=0;function ct(e){"function"==typeof e.cancel&&e.cancel()}function lt(e,t){if(null==e)return!1;if(void 0!==t){if(!1===tn(e))return!1;if(!e.$mobx.values[t])return!1;var n=nn(e,t);return pe(n)}return pe(e)}function ft(e,t){if(null==e)return!1;if(void 0!==t){if(tn(e)){var n=e.$mobx;return n.values&&!!n.values[t]}return!1}return tn(e)||!!e.$mobx||I(e)||Me(e)||pe(e)}function pt(e){return 1!==arguments.length&&f(!1),ft(e)}function ht(e){return tn(e)?e.$mobx.getKeys():zt(e)?e._keys.slice():qt(e)?w(e.keys()):Mt(e)?e.map(function(e,t){return t}):f(!1)}function vt(e,t){if(tn(e)){var n=rn(e);return n.getKeys(),!!n.values[t]}return zt(e)?e.has(t):qt(e)?e.has(t):Mt(e)?t>=0&&t<e.length:f(!1)}var dt={detectCycles:!0,exportMapsAsObjects:!0,recurseEverything:!1};function yt(e,t,n,r){return r.detectCycles&&e.set(t,n),n}function bt(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=!1;"boolean"==typeof e[e.length-1]&&(n=e.pop());var r=function(e){switch(e.length){case 0:return De.trackingDerivation;case 1:return nn(e[0]);case 2:return nn(e[0],e[1])}}(e);if(!r)return f(!1);r.isTracing===fe.NONE&&console.log("[mobx.trace] '"+r.name+"' tracing enabled"),r.isTracing=n?fe.BREAK:fe.LOG}function mt(e,t){void 0===t&&(t=void 0),Ie();try{return e.apply(t)}finally{Ce()}}function gt(e,t,n){var r;"number"==typeof n.timeout&&(r=setTimeout(function(){if(!i.$mobx.isDisposed){i();var e=new Error("WHEN_TIMEOUT");if(!n.onError)throw e;n.onError(e)}},n.timeout)),n.name=n.name||"When@"+l();var o=ne(n.name+"-effect",t),i=Qe(function(t){e()&&(t.dispose(),r&&clearTimeout(r),o())},n);return i}function _t(e){return void 0!==e.interceptors&&e.interceptors.length>0}function Ot(e,t){var n=e.interceptors||(e.interceptors=[]);return n.push(t),h(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function wt(e,t){var n=_e();try{var r=e.interceptors;if(r)for(var o=0,i=r.length;o<i&&(p(!(t=r[o](t))||t.type,"Intercept handlers should return nothing or a change object"),t);o++);return t}finally{Oe(n)}}function St(e){return void 0!==e.changeListeners&&e.changeListeners.length>0}function xt(e,t){var n=e.changeListeners||(e.changeListeners=[]);return n.push(t),h(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function At(e,t){var n=_e(),r=e.changeListeners;if(r){for(var o=0,i=(r=r.slice()).length;o<i;o++)r[o](t);Oe(n)}}var Et,Dt,jt,kt,Tt=(Et=!1,Dt={},Object.defineProperty(Dt,"0",{set:function(){Et=!0}}),Object.create(Dt)[0]=1,!1===Et),It=0,Ct=function(){return function(){}}();jt=Ct,kt=Array.prototype,void 0!==Object.setPrototypeOf?Object.setPrototypeOf(jt.prototype,kt):void 0!==jt.prototype.__proto__?jt.prototype.__proto__=kt:jt.prototype=kt,Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach(function(e){Object.defineProperty(Ct.prototype,e,{configurable:!0,writable:!0,value:Array.prototype[e]})});var Vt=function(){function e(e,t,n,r){this.array=n,this.owned=r,this.values=[],this.lastKnownLength=0,this.atom=new T(e||"ObservableArray@"+l()),this.enhancer=function(n,r){return t(n,r,e+"[..]")}}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.dehanceValues=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},e.prototype.intercept=function(e){return Ot(this,e)},e.prototype.observe=function(e,t){return void 0===t&&(t=!1),t&&e({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),xt(this,e)},e.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},e.prototype.setArrayLength=function(e){if("number"!=typeof e||e<0)throw new Error("[mobx.array] Out of range: "+e);var t=this.values.length;if(e!==t)if(e>t){for(var n=new Array(e-t),r=0;r<e-t;r++)n[r]=void 0;this.spliceWithArray(t,0,n)}else this.spliceWithArray(e,t-e)},e.prototype.updateArrayLength=function(e,t){if(e!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed. Did you use peek() to change it?");this.lastKnownLength+=t,t>0&&e+t+1>It&&Bt(e+t+1)},e.prototype.spliceWithArray=function(e,t,n){var r=this;ye(this.atom);var o=this.values.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===n&&(n=s),_t(this)){var i=wt(this,{object:this.array,type:"splice",index:e,removedCount:t,added:n});if(!i)return s;t=i.removedCount,n=i.added}var a=(n=0===n.length?n:n.map(function(e){return r.enhancer(e,void 0)})).length-t;this.updateArrayLength(o,a);var u=this.spliceItemsIntoValues(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice(e,n,u),this.dehanceValues(u)},e.prototype.spliceItemsIntoValues=function(e,t,n){var r;if(n.length<1e4)return(r=this.values).splice.apply(r,i([e,t],n));var o=this.values.slice(e,e+t);return this.values=this.values.slice(0,e).concat(n,this.values.slice(e+t)),o},e.prototype.notifyArrayChildUpdate=function(e,t,n){var o=!this.owned&&Ge(),i=St(this),a=i||o?{object:this.array,type:"update",index:e,newValue:t,oldValue:n}:null;o&&ze(r({},a,{name:this.atom.name})),this.atom.reportChanged(),i&&At(this,a),o&&We()},e.prototype.notifyArraySplice=function(e,t,n){var o=!this.owned&&Ge(),i=St(this),a=i||o?{object:this.array,type:"splice",index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;o&&ze(r({},a,{name:this.atom.name})),this.atom.reportChanged(),i&&At(this,a),o&&We()},e}(),Nt=function(e){function t(t,n,r,o){void 0===r&&(r="ObservableArray@"+l()),void 0===o&&(o=!1);var i=e.call(this)||this,a=new Vt(r,n,i,o);if(m(i,"$mobx",a),t&&t.length){var s=ie(!0);i.spliceWithArray(0,0,t),ae(s)}return Tt&&Object.defineProperty(a.array,"0",Rt),i}return n(t,e),t.prototype.intercept=function(e){return this.$mobx.intercept(e)},t.prototype.observe=function(e,t){return void 0===t&&(t=!1),this.$mobx.observe(e,t)},t.prototype.clear=function(){return this.splice(0)},t.prototype.concat=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.$mobx.atom.reportObserved(),Array.prototype.concat.apply(this.peek(),e.map(function(e){return Mt(e)?e.peek():e}))},t.prototype.replace=function(e){return this.$mobx.spliceWithArray(0,this.$mobx.values.length,e)},t.prototype.toJS=function(){return this.slice()},t.prototype.toJSON=function(){return this.toJS()},t.prototype.peek=function(){return this.$mobx.atom.reportObserved(),this.$mobx.dehanceValues(this.$mobx.values)},t.prototype.find=function(e,t,n){void 0===n&&(n=0),arguments.length;var r=this.findIndex.apply(this,arguments);return-1===r?void 0:this.get(r)},t.prototype.findIndex=function(e,t,n){void 0===n&&(n=0),arguments.length;for(var r=this.peek(),o=r.length,i=n;i<o;i++)if(e.call(t,r[i],i,this))return i;return-1},t.prototype.splice=function(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];switch(arguments.length){case 0:return[];case 1:return this.$mobx.spliceWithArray(e);case 2:return this.$mobx.spliceWithArray(e,t)}return this.$mobx.spliceWithArray(e,t,n)},t.prototype.spliceWithArray=function(e,t,n){return this.$mobx.spliceWithArray(e,t,n)},t.prototype.push=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this.$mobx;return n.spliceWithArray(n.values.length,0,e),n.values.length},t.prototype.pop=function(){return this.splice(Math.max(this.$mobx.values.length-1,0),1)[0]},t.prototype.shift=function(){return this.splice(0,1)[0]},t.prototype.unshift=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this.$mobx;return n.spliceWithArray(0,0,e),n.values.length},t.prototype.reverse=function(){var e=this.slice();return e.reverse.apply(e,arguments)},t.prototype.sort=function(e){var t=this.slice();return t.sort.apply(t,arguments)},t.prototype.remove=function(e){var t=this.$mobx.dehanceValues(this.$mobx.values).indexOf(e);return t>-1&&(this.splice(t,1),!0)},t.prototype.move=function(e,t){function n(e){if(e<0)throw new Error("[mobx.array] Index out of bounds: "+e+" is negative");var t=this.$mobx.values.length;if(e>=t)throw new Error("[mobx.array] Index out of bounds: "+e+" is not smaller than "+t)}if(n.call(this,e),n.call(this,t),e!==t){var r,o=this.$mobx.values;r=e<t?i(o.slice(0,e),o.slice(e+1,t+1),[o[e]],o.slice(t+1)):i(o.slice(0,t),[o[e]],o.slice(t,e),o.slice(e+1)),this.replace(r)}},t.prototype.get=function(e){var t=this.$mobx;if(t){if(e<t.values.length)return t.atom.reportObserved(),t.dehanceValue(t.values[e]);console.warn("[mobx.array] Attempt to read an array index ("+e+") that is out of bounds ("+t.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},t.prototype.set=function(e,t){var n=this.$mobx,r=n.values;if(e<r.length){ye(n.atom);var o=r[e];if(_t(n)){var i=wt(n,{type:"update",object:this,index:e,newValue:t});if(!i)return;t=i.newValue}(t=n.enhancer(t,o))!==o&&(r[e]=t,n.notifyArrayChildUpdate(e,t,o))}else{if(e!==r.length)throw new Error("[mobx.array] Index out of bounds, "+e+" is larger than "+r.length);n.spliceWithArray(e,0,[t])}},t}(Ct);E(Nt.prototype,function(){this.$mobx.atom.reportObserved();var e=this,t=0;return D({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})}),Object.defineProperty(Nt.prototype,"length",{enumerable:!1,configurable:!0,get:function(){return this.$mobx.getArrayLength()},set:function(e){this.$mobx.setArrayLength(e)}}),b(Nt.prototype,j(),"Array"),["every","filter","forEach","indexOf","join","lastIndexOf","map","reduce","reduceRight","slice","some","toString","toLocaleString"].forEach(function(e){var t=Array.prototype[e];p("function"==typeof t,"Base function not defined on Array prototype: '"+e+"'"),b(Nt.prototype,e,function(){return t.apply(this.peek(),arguments)})}),function(e,t){for(var n=0;n<t.length;n++)b(e,t[n],e[t[n]])}(Nt.prototype,["constructor","intercept","observe","clear","concat","get","replace","toJS","toJSON","peek","find","findIndex","splice","spliceWithArray","push","pop","set","shift","unshift","reverse","sort","remove","move","toString","toLocaleString"]);var Rt=Pt(0);function Pt(e){return{enumerable:!1,configurable:!1,get:function(){return this.get(e)},set:function(t){this.set(e,t)}}}function Lt(e){Object.defineProperty(Nt.prototype,""+e,Pt(e))}function Bt(e){for(var t=It;t<e;t++)Lt(t);It=e}Bt(1e3);var $t=g("ObservableArrayAdministration",Vt);function Mt(e){return d(e)&&$t(e.$mobx)}var Ut={},Gt=function(){function e(e,t,n){if(void 0===t&&(t=$),void 0===n&&(n="ObservableMap@"+l()),this.enhancer=t,this.name=n,this.$mobx=Ut,this._keys=new Nt(void 0,M,this.name+".keys()",!0),"function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(e)}return e.prototype._has=function(e){return this._data.has(e)},e.prototype.has=function(e){return this._hasMap.has(e)?this._hasMap.get(e).get():this._updateHasMapEntry(e,!1).get()},e.prototype.set=function(e,t){var n=this._has(e);if(_t(this)){var r=wt(this,{type:n?"update":"add",object:this,newValue:t,name:e});if(!r)return this;t=r.newValue}return n?this._updateValue(e,t):this._addValue(e,t),this},e.prototype.delete=function(e){var t=this;if(_t(this)&&!(i=wt(this,{type:"delete",object:this,name:e})))return!1;if(this._has(e)){var n=Ge(),o=St(this),i=o||n?{type:"delete",object:this,oldValue:this._data.get(e).value,name:e}:null;return n&&ze(r({},i,{name:this.name,key:e})),mt(function(){t._keys.remove(e),t._updateHasMapEntry(e,!1),t._data.get(e).setNewValue(void 0),t._data.delete(e)}),o&&At(this,i),n&&We(),!0}return!1},e.prototype._updateHasMapEntry=function(e,t){var n=this._hasMap.get(e);return n?n.setNewValue(t):(n=new se(t,M,this.name+"."+Ht(e)+"?",!1),this._hasMap.set(e,n)),n},e.prototype._updateValue=function(e,t){var n=this._data.get(e);if((t=n.prepareNewValue(t))!==De.UNCHANGED){var o=Ge(),i=St(this),a=i||o?{type:"update",object:this,oldValue:n.value,name:e,newValue:t}:null;o&&ze(r({},a,{name:this.name,key:e})),n.setNewValue(t),i&&At(this,a),o&&We()}},e.prototype._addValue=function(e,t){var n=this;mt(function(){var r=new se(t,n.enhancer,n.name+"."+Ht(e),!1);n._data.set(e,r),t=r.value,n._updateHasMapEntry(e,!0),n._keys.push(e)});var o=Ge(),i=St(this),a=i||o?{type:"add",object:this,name:e,newValue:t}:null;o&&ze(r({},a,{name:this.name,key:e})),i&&At(this,a),o&&We()},e.prototype.get=function(e){return this.has(e)?this.dehanceValue(this._data.get(e).get()):this.dehanceValue(void 0)},e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.keys=function(){return this._keys[A()]()},e.prototype.values=function(){var e=this,t=0;return D({next:function(){return t<e._keys.length?{value:e.get(e._keys[t++]),done:!1}:{value:void 0,done:!0}}})},e.prototype.entries=function(){var e=this,t=0;return D({next:function(){if(t<e._keys.length){var n=e._keys[t++];return{value:[n,e.get(n)],done:!1}}return{done:!0}}})},e.prototype.forEach=function(e,t){var n=this;this._keys.forEach(function(r){return e.call(t,n.get(r),r,n)})},e.prototype.merge=function(e){var t=this;return zt(e)&&(e=e.toJS()),mt(function(){y(e)?Object.keys(e).forEach(function(n){return t.set(n,e[n])}):Array.isArray(e)?e.forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.set(r,i)}):_(e)?e.constructor!==Map?f("Cannot initialize from classes that inherit from Map: "+e.constructor.name):e.forEach(function(e,n){return t.set(n,e)}):null!=e&&f("Cannot initialize map from "+e)}),this},e.prototype.clear=function(){var e=this;mt(function(){ge(function(){e._keys.slice().forEach(function(t){return e.delete(t)})})})},e.prototype.replace=function(e){var t=this;return mt(function(){var n,r=y(n=e)?Object.keys(n):Array.isArray(n)?n.map(function(e){return o(e,1)[0]}):_(n)||zt(n)?w(n.keys()):f("Cannot get keys from '"+n+"'");t._keys.filter(function(e){return-1===r.indexOf(e)}).forEach(function(e){return t.delete(e)}),t.merge(e)}),this},Object.defineProperty(e.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),e.prototype.toPOJO=function(){var e=this,t={};return this._keys.forEach(function(n){return t["symbol"==typeof n?n:Ht(n)]=e.get(n)}),t},e.prototype.toJS=function(){var e=this,t=new Map;return this._keys.forEach(function(n){return t.set(n,e.get(n))}),t},e.prototype.toJSON=function(){return this.toPOJO()},e.prototype.toString=function(){var e=this;return this.name+"[{ "+this._keys.map(function(t){return Ht(t)+": "+e.get(t)}).join(", ")+" }]"},e.prototype.observe=function(e,t){return xt(this,e)},e.prototype.intercept=function(e){return Ot(this,e)},e}();function Ht(e){return e&&e.toString?e.toString():new String(e).toString()}E(Gt.prototype,function(){return this.entries()}),m(Gt.prototype,j(),"Map");var zt=g("ObservableMap",Gt),Kt={},Wt=function(){function e(e,t,n){if(void 0===t&&(t=$),void 0===n&&(n="ObservableSet@"+l()),this.name=n,this.$mobx=Kt,this._data=new Set,this._atom=C(this.name),"function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(e,r){return t(e,r,n)},e&&this.replace(e)}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.clear=function(){var e=this;mt(function(){ge(function(){e._data.forEach(function(t){e.delete(t)})})})},e.prototype.forEach=function(e,t){var n=this;this._data.forEach(function(r){e.call(t,r,r,n)})},Object.defineProperty(e.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),e.prototype.add=function(e){var t=this;if((ye(this._atom),_t(this))&&!(o=wt(this,{type:"add",object:this,newValue:e})))return this;if(!this.has(e)){mt(function(){t._data.add(t.enhancer(e,void 0)),t._atom.reportChanged()});var n=Ge(),r=St(this),o=r||n?{type:"add",object:this,newValue:e}:null;0,r&&At(this,o)}return this},e.prototype.delete=function(e){var t=this;if(_t(this)&&!(o=wt(this,{type:"delete",object:this,oldValue:e})))return!1;if(this.has(e)){var n=Ge(),r=St(this),o=r||n?{type:"delete",object:this,oldValue:e}:null;return mt(function(){t._atom.reportChanged(),t._data.delete(e)}),r&&At(this,o),!0}return!1},e.prototype.has=function(e){return this._atom.reportObserved(),this._data.has(this.dehanceValue(e))},e.prototype.entries=function(){var e=0,t=w(this.keys()),n=w(this.values());return D({next:function(){var r=e;return e+=1,r<n.length?{value:[t[r],n[r]],done:!1}:{done:!0}}})},e.prototype.keys=function(){return this.values()},e.prototype.values=function(){this._atom.reportObserved();var e,t=this,n=0;return void 0!==this._data.values?e=w(this._data.values()):(e=[],this._data.forEach(function(t){return e.push(t)})),D({next:function(){return n<e.length?{value:t.dehanceValue(e[n++]),done:!1}:{done:!0}}})},e.prototype.replace=function(e){var t=this;return qt(e)&&(e=e.toJS()),mt(function(){Array.isArray(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):O(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&f("Cannot initialize set from "+e)}),this},e.prototype.observe=function(e,t){return xt(this,e)},e.prototype.intercept=function(e){return Ot(this,e)},e.prototype.toJS=function(){return new Set(this)},e.prototype.toString=function(){return this.name+"[ "+w(this.keys()).join(", ")+" ]"},e}();E(Wt.prototype,function(){return this.values()}),m(Wt.prototype,j(),"Set");var qt=g("ObservableSet",Wt),Jt=function(){function e(e,t,n){this.target=e,this.name=t,this.defaultEnhancer=n,this.values={}}return e.prototype.read=function(e,t){if(this.target===e||(this.illegalAccess(e,t),this.values[t]))return this.values[t].get()},e.prototype.write=function(e,t,n){var o=this.target;o!==e&&this.illegalAccess(e,t);var i=this.values[t];if(i instanceof ce)i.set(n);else{if(_t(this)){if(!(u=wt(this,{type:"update",object:o,name:t,newValue:n})))return;n=u.newValue}if((n=i.prepareNewValue(n))!==De.UNCHANGED){var a=St(this),s=Ge(),u=a||s?{type:"update",object:o,oldValue:i.value,name:t,newValue:n}:null;s&&ze(r({},u,{name:this.name,key:t})),i.setNewValue(n),a&&At(this,u),s&&We()}}},e.prototype.remove=function(e){if(this.values[e]){var t=this.target;if(_t(this))if(!(a=wt(this,{object:t,name:e,type:"remove"})))return;try{Ie();var n=St(this),o=Ge(),i=this.values[e].get();this.keys&&this.keys.remove(e),delete this.values[e],delete this.target[e];var a=n||o?{type:"remove",object:t,oldValue:i,name:e}:null;o&&ze(r({},a,{name:this.name,key:e})),n&&At(this,a),o&&We()}finally{Ce()}}},e.prototype.illegalAccess=function(e,t){console.warn("Property '"+t+"' of '"+e+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},e.prototype.observe=function(e,t){return xt(this,e)},e.prototype.intercept=function(e){return Ot(this,e)},e.prototype.getKeys=function(){var e=this;return void 0===this.keys&&(this.keys=new Nt(Object.keys(this.values).filter(function(t){return e.values[t]instanceof se}),M,"keys("+this.name+")",!0)),this.keys.slice()},e}();function Xt(e,t,n){void 0===t&&(t=""),void 0===n&&(n=$);var r=e.$mobx;return r||(y(e)||(t=(e.constructor.name||"ObservableObject")+"@"+l()),t||(t="ObservableObject@"+l()),m(e,"$mobx",r=new Jt(e,t,n)),r)}function Yt(e,t,n,o){var i=Xt(e);if(_t(i)){var a=wt(i,{object:e,name:t,type:"add",newValue:n});if(!a)return;n=a.newValue}n=(i.values[t]=new se(n,o,i.name+"."+t,!1)).value,Object.defineProperty(e,t,function(e){return Ft[e]||(Ft[e]={configurable:!0,enumerable:!0,get:function(){return this.$mobx.read(this,e)},set:function(t){this.$mobx.write(this,e,t)}})}(t)),i.keys&&i.keys.push(t),function(e,t,n,o){var i=St(e),a=Ge(),s=i||a?{type:"add",object:t,name:n,newValue:o}:null;a&&ze(r({},s,{name:e.name,key:n}));i&&At(e,s);a&&We()}(i,e,t,n)}var Ft=Object.create(null),Qt=Object.create(null);function Zt(e){var t=e.$mobx;return t||(L(e),e.$mobx)}var en=g("ObservableObjectAdministration",Jt);function tn(e){return!!d(e)&&(L(e),en(e.$mobx))}function nn(e,t){if("object"==typeof e&&null!==e){if(Mt(e))return void 0!==t&&f(!1),e.$mobx.atom;if(qt(e))return e.$mobx;if(zt(e)){var n=e;return void 0===t?nn(n._keys):((r=n._data.get(t)||n._hasMap.get(t))||f(!1),r)}var r;if(L(e),t&&!e.$mobx&&e[t],tn(e))return t?((r=e.$mobx.values[t])||f(!1),r):f(!1);if(I(e)||pe(e)||Me(e))return e}else if("function"==typeof e&&Me(e.$mobx))return e.$mobx;return f(!1)}function rn(e,t){return e||f("Expecting some object"),void 0!==t?rn(nn(e,t)):I(e)||pe(e)||Me(e)?e:zt(e)||qt(e)?e:(L(e),e.$mobx?e.$mobx:void f(!1))}function on(e,t){return(void 0!==t?nn(e,t):tn(e)||zt(e)||qt(e)?rn(e):nn(e)).name}var an=Object.prototype.toString;function sn(e,t){return un(e,t)}function un(e,t,n,r){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var o=typeof e;return("function"===o||"object"===o||"object"==typeof t)&&function(e,t,n,r){e=cn(e),t=cn(t);var o=an.call(e);if(o!==an.call(t))return!1;switch(o){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0==+e?1/+e==1/t:+e==+t;case"[object Date]":case"[object Boolean]":return+e==+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t)}var i="[object Array]"===o;if(!i){if("object"!=typeof e||"object"!=typeof t)return!1;var a=e.constructor,s=t.constructor;if(a!==s&&!("function"==typeof a&&a instanceof a&&"function"==typeof s&&s instanceof s)&&"constructor"in e&&"constructor"in t)return!1}r=r||[];var u=(n=n||[]).length;for(;u--;)if(n[u]===e)return r[u]===t;if(n.push(e),r.push(t),i){if((u=e.length)!==t.length)return!1;for(;u--;)if(!un(e[u],t[u],n,r))return!1}else{var c=Object.keys(e),l=void 0;if(u=c.length,Object.keys(t).length!==u)return!1;for(;u--;)if(l=c[u],!ln(t,l)||!un(e[l],t[l],n,r))return!1}return n.pop(),r.pop(),!0}(e,t,n,r)}function cn(e){return Mt(e)?e.peek():_(e)||zt(e)?w(e.entries()):O(e)||qt(e)?w(e.entries()):e}function ln(e,t){return Object.prototype.hasOwnProperty.call(e,t)}"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:qe,extras:{getDebugName:on},$mobx:"$mobx"}),e.$mobx="$mobx",e.ObservableMap=Gt,e.ObservableSet=Wt,e.Reaction=Re,e._allowStateChanges=function(e,t){var n,r=ie(e);try{n=t()}finally{ae(r)}return n},e._allowStateChangesInsideComputed=function(e){var t,n=De.computationDepth;De.computationDepth=0;try{t=e()}finally{De.computationDepth=n}return t},e._getAdministration=rn,e._getGlobalState=function(){return De},e._interceptReads=function(e,t,n){var r;if(zt(e)||Mt(e)||ue(e))r=rn(e);else{if(!tn(e))return f(!1);if("string"!=typeof t)return f(!1);r=rn(e,t)}return void 0!==r.dehancer?f(!1):(r.dehancer="function"==typeof t?t:n,function(){r.dehancer=void 0})},e._isComputingDerivation=function(){return null!==De.trackingDerivation},e._resetGlobalState=function(){var e=new xe;for(var t in e)-1===Se.indexOf(t)&&(De[t]=e[t]);De.allowStateChanges=!De.enforceActions},e.action=Ye,e.autorun=Qe,e.comparer=N,e.computed=te,e.configure=function(e){var t=e.enforceActions,n=e.computedRequiresReaction,r=e.computedConfigurable,o=e.disableErrorBoundaries,i=e.arrayBuffer,a=e.reactionScheduler;if(!0===e.isolateGlobalState&&((De.pendingReactions.length||De.inBatch||De.isRunningReactions)&&f("isolateGlobalState should be called before MobX is running any reactions"),Ee=!0,Ae&&(0==--c().__mobxInstanceCount&&(c().__mobxGlobals=void 0),De=new xe)),void 0!==t){var s=void 0;switch(t){case!0:case"observed":s=!0;break;case!1:case"never":s=!1;break;case"strict":case"always":s="strict";break;default:f("Invalid value for 'enforceActions': '"+t+"', expected 'never', 'always' or 'observed'")}De.enforceActions=s,De.allowStateChanges=!0!==s&&"strict"!==s}void 0!==n&&(De.computedRequiresReaction=!!n),void 0!==r&&(De.computedConfigurable=!!r),void 0!==o&&(!0===o&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors if this is on."),De.disableErrorBoundaries=!!o),"number"==typeof i&&Bt(i),a&&Ue(a)},e.createAtom=C,e.decorate=function(e,t){var n="function"==typeof e?e.prototype:e,r=function(e){var r=t[e];Array.isArray(r)||(r=[r]);var o=Object.getOwnPropertyDescriptor(n,e),i=r.reduce(function(t,r){return r(n,e,t)},o);i&&Object.defineProperty(n,e,i)};for(var o in t)r(o);return e},e.entries=function(e){return tn(e)?ht(e).map(function(t){return[t,e[t]]}):zt(e)?ht(e).map(function(t){return[t,e.get(t)]}):qt(e)?w(e.entries()):Mt(e)?e.map(function(e,t){return[t,e]}):f(!1)},e.extendObservable=ot,e.extendShallowObservable=function(e,t,n){return ot(e,t,n,H)},e.flow=function(e){1!==arguments.length&&f("Flow expects one 1 argument and cannot be used as decorator");var t=e.name||"<unnamed flow>";return function(){var n,r=arguments,o=++ut,i=Ye(t+" - runid: "+o+" - init",e).apply(this,r),a=void 0,s=new Promise(function(e,r){var s=0;function u(e){var n;a=void 0;try{n=Ye(t+" - runid: "+o+" - yield "+s++,i.next).call(i,e)}catch(e){return r(e)}l(n)}function c(e){var n;a=void 0;try{n=Ye(t+" - runid: "+o+" - yield "+s++,i.throw).call(i,e)}catch(e){return r(e)}l(n)}function l(t){if(!t||"function"!=typeof t.then)return t.done?e(t.value):(a=Promise.resolve(t.value)).then(u,c);t.then(l,r)}n=r,u(void 0)});return s.cancel=Ye(t+" - runid: "+o+" - cancel",function(){try{a&&ct(a);var e=i.return(),t=Promise.resolve(e.value);t.then(v,v),ct(t),n(new Error("FLOW_CANCELLED"))}catch(e){n(e)}}),s}},e.get=function(e,t){if(vt(e,t))return tn(e)?e[t]:zt(e)?e.get(t):Mt(e)?e[t]:f(!1)},e.getAtom=nn,e.getDebugName=on,e.getDependencyTree=it,e.getObserverTree=function(e,t){return st(nn(e,t))},e.has=vt,e.intercept=function(e,t,n){return"function"==typeof n?function(e,t,n){return rn(e,t).intercept(n)}(e,t,n):function(e,t){return rn(e).intercept(t)}(e,t)},e.isAction=function(e){return"function"==typeof e&&!0===e.isMobxAction},e.isArrayLike=function(e){return Array.isArray(e)||Mt(e)},e.isBoxedObservable=ue,e.isComputed=function(e){return arguments.length>1?f(!1):lt(e)},e.isComputedProp=function(e,t){return"string"!=typeof t?f(!1):lt(e,t)},e.isObservable=pt,e.isObservableArray=Mt,e.isObservableMap=zt,e.isObservableObject=tn,e.isObservableProp=function(e,t){return"string"!=typeof t?f(!1):ft(e,t)},e.isObservableSet=qt,e.keys=ht,e.observable=F,e.observe=function(e,t,n,r){return"function"==typeof n?function(e,t,n,r){return rn(e,t).observe(n,r)}(e,t,n,r):function(e,t,n){return rn(e).observe(t,n)}(e,t,n)},e.onBecomeObserved=tt,e.onBecomeUnobserved=nt,e.onReactionError=function(e){return De.globalReactionErrorHandlers.push(e),function(){var t=De.globalReactionErrorHandlers.indexOf(e);t>=0&&De.globalReactionErrorHandlers.splice(t,1)}},e.reaction=function(e,t,n){void 0===n&&(n=u),"boolean"==typeof n&&(n={fireImmediately:n});var r,o,i,a=n.name||"Reaction@"+l(),s=Ye(a,n.onError?(r=n.onError,o=t,function(){try{return o.apply(this,arguments)}catch(e){r.call(this,e)}}):t),c=!n.scheduler&&!n.delay,f=et(n),p=!0,h=!1,v=n.compareStructural?N.structural:n.equals||N.default,d=new Re(a,function(){p||c?y():h||(h=!0,f(y))},n.onError);function y(){if(h=!1,!d.isDisposed){var t=!1;d.track(function(){var n=e(d);t=p||!v(i,n),i=n}),p&&n.fireImmediately&&s(i,d),p||!0!==t||s(i,d),p&&(p=!1)}}return d.schedule(),d.getDisposer()},e.remove=function(e,t){if(tn(e))e.$mobx.remove(t);else if(zt(e))e.delete(t);else if(qt(e))e.delete(t);else{if(!Mt(e))return f(!1);"number"!=typeof t&&(t=parseInt(t,10)),p(t>=0,"Not a valid index: '"+t+"'"),e.splice(t,1)}},e.runInAction=function(e,t){return re("string"==typeof e?e:e.name||"<unnamed action>","function"==typeof e?e:t,this,void 0)},e.set=function e(t,n,r){if(2!==arguments.length||qt(t))if(tn(t)){var o=t.$mobx;o.values[n]?o.write(t,n,r):Yt(t,n,r,o.defaultEnhancer)}else if(zt(t))t.set(n,r);else if(qt(t))t.add(n);else{if(!Mt(t))return f(!1);"number"!=typeof n&&(n=parseInt(n,10)),p(n>=0,"Not a valid index: '"+n+"'"),Ie(),n>=t.length&&(t.length=n+1),t[n]=r,Ce()}else{Ie();var i=n;try{for(var a in i)e(t,a,i[a])}finally{Ce()}}},e.spy=qe,e.toJS=function(e,t){var n;return"boolean"==typeof t&&(t={detectCycles:t}),t||(t=dt),t.detectCycles=void 0===t.detectCycles?!0===t.recurseEverything:!0===t.detectCycles,t.detectCycles&&(n=new Map),function e(t,n,r){if(!n.recurseEverything&&!pt(t))return t;if("object"!=typeof t)return t;if(null===t)return null;if(t instanceof Date)return t;if(ue(t))return e(t.get(),n,r);if(pt(t)&&ht(t),!0===n.detectCycles&&null!==t&&r.has(t))return r.get(t);if(Mt(t)||Array.isArray(t)){var o=yt(r,t,[],n),i=t.map(function(t){return e(t,n,r)});o.length=i.length;for(var a=0,s=i.length;a<s;a++)o[a]=i[a];return o}if(qt(t)||Object.getPrototypeOf(t)===Set.prototype){if(!1===n.exportMapsAsObjects){var u=yt(r,t,new Set,n);return t.forEach(function(t){u.add(e(t,n,r))}),u}var c=yt(r,t,[],n);return t.forEach(function(t){c.push(e(t,n,r))}),c}if(zt(t)||Object.getPrototypeOf(t)===Map.prototype){if(!1===n.exportMapsAsObjects){var l=yt(r,t,new Map,n);return t.forEach(function(t,o){l.set(o,e(t,n,r))}),l}var f=yt(r,t,{},n);return t.forEach(function(t,o){f[o]=e(t,n,r)}),f}var p=yt(r,t,{},n);for(var h in t)p[h]=e(t[h],n,r);return p}(e,t,n)},e.trace=bt,e.transaction=mt,e.untracked=ge,e.values=function(e){return tn(e)?ht(e).map(function(t){return e[t]}):zt(e)?ht(e).map(function(t){return e.get(t)}):qt(e)?w(e.values()):Mt(e)?e.slice():f(!1)},e.when=function(e,t,n){return 1===arguments.length||t&&"object"==typeof t?function(e,t){var n,o=new Promise(function(o,i){var a=gt(e,o,r({},t,{onError:i}));n=function(){a(),i("WHEN_CANCELLED")}});return o.cancel=n,o}(e,t):gt(e,t,n||{})},Object.defineProperty(e,"__esModule",{value:!0})});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).mobx={})}(this,function(e){"use strict";var t=function(e,n){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,n)};function n(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}var r=function(){return(r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function o(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function i(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(o(arguments[t]));return e}var a="An invariant failed, however the error is obfuscated because this is an production build.",s=[];Object.freeze(s);var u={};function c(){return"undefined"!=typeof window?window:global}function l(){return++De.mobxGuid}function f(e){throw p(!1,e),"X"}function p(e,t){if(!e)throw new Error("[mobx] "+(t||a))}Object.freeze(u);function h(e){var t=!1;return function(){if(!t)return t=!0,e.apply(this,arguments)}}var v=function(){};function d(e){return null!==e&&"object"==typeof e}function y(e){if(null===e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);return t===Object.prototype||null===t}function b(e,t,n){Object.defineProperty(e,t,{enumerable:!1,writable:!0,configurable:!0,value:n})}function m(e,t,n){Object.defineProperty(e,t,{enumerable:!1,writable:!1,configurable:!0,value:n})}function g(e,t){var n="isMobX"+e;return t.prototype[n]=!0,function(e){return d(e)&&!0===e[n]}}function _(e){return void 0!==c().Map&&e instanceof c().Map}function O(e){return e instanceof Set}function w(e){for(var t=[];;){var n=e.next();if(n.done)break;t.push(n.value)}return t}function S(){return"function"==typeof Symbol&&Symbol.toPrimitive||"@@toPrimitive"}function x(e){return null===e?null:"object"==typeof e?""+e:e}function A(){return"function"==typeof Symbol&&Symbol.iterator||"@@iterator"}function E(e,t){m(e,A(),t)}function D(e){return e[A()]=k,e}function j(){return"function"==typeof Symbol&&Symbol.toStringTag||"@@toStringTag"}function k(){return this}var T=function(){function t(t){void 0===t&&(t="Atom@"+l()),this.name=t,this.isPendingUnobservation=!1,this.isBeingObserved=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.lastAccessedBy=0,this.lowestObserverState=e.IDerivationState.NOT_TRACKING}return t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.reportObserved=function(){return Ve(this)},t.prototype.reportChanged=function(){Ie(),function(t){if(t.lowestObserverState===e.IDerivationState.STALE)return;t.lowestObserverState=e.IDerivationState.STALE;var n=t.observers,r=n.length;for(;r--;){var o=n[r];o.dependenciesState===e.IDerivationState.UP_TO_DATE&&(o.isTracing!==fe.NONE&&Ne(o,t),o.onBecomeStale()),o.dependenciesState=e.IDerivationState.STALE}}(this),Ce()},t.prototype.toString=function(){return this.name},t}(),I=g("Atom",T);function C(e,t,n){void 0===t&&(t=v),void 0===n&&(n=v);var r=new T(e);return tt(r,t),nt(r,n),r}function V(e,t){return e===t}var N={identity:V,structural:function(e,t){return sn(e,t)},default:function(e,t){return function(e,t){return"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t)}(e,t)||V(e,t)}},R={},P={};function L(e){if(!0!==e.__mobxDidRunLazyInitializers){var t=e.__mobxDecorators;if(t)for(var n in b(e,"__mobxDidRunLazyInitializers",!0),t){var r=t[n];r.propertyCreator(e,r.prop,r.descriptor,r.decoratorTarget,r.decoratorArguments)}}}function B(e,t){return function(){var n,o,i=function(o,i,a,s){if(!0===s)return t(o,i,a,o,n),null;if(!Object.prototype.hasOwnProperty.call(o,"__mobxDecorators")){var u=o.__mobxDecorators;b(o,"__mobxDecorators",r({},u))}return o.__mobxDecorators[i]={prop:i,propertyCreator:t,descriptor:a,decoratorTarget:o,decoratorArguments:n},function(e,t){var n=t?R:P;return n[e]||(n[e]={configurable:!0,enumerable:t,get:function(){return L(this),this[e]},set:function(t){L(this),this[e]=t}})}(i,e)};return(2===(o=arguments).length||3===o.length)&&"string"==typeof o[1]||4===o.length&&!0===o[3]?(n=s,i.apply(null,arguments)):(n=Array.prototype.slice.call(arguments),i)}}function $(e,t,n){return pt(e)?e:Array.isArray(e)?F.array(e,{name:n}):y(e)?F.object(e,void 0,{name:n}):_(e)?F.map(e,{name:n}):O(e)?F.set(e,{name:n}):e}function M(e){return e}function U(e){var t=B(!0,function(t,n,r,o,i){Yt(t,n,r?r.initializer?r.initializer.call(t):r.value:void 0,e)}),n=("undefined"!=typeof process&&process.env,t);return n.enhancer=e,n}var G={deep:!0,name:void 0,defaultDecorator:void 0},H={deep:!1,name:void 0,defaultDecorator:void 0};function z(e){return null==e?G:"string"==typeof e?{name:e,deep:!0}:e}function K(e){return e.defaultDecorator?e.defaultDecorator.enhancer:!1===e.deep?M:$}Object.freeze(G),Object.freeze(H);var W=U($),q=U(function(e,t,n){return null==e?e:tn(e)||Mt(e)||zt(e)||qt(e)?e:Array.isArray(e)?F.array(e,{name:n,deep:!1}):y(e)?F.object(e,void 0,{name:n,deep:!1}):_(e)?F.map(e,{name:n,deep:!1}):O(e)?F.set(e,{name:n,deep:!1}):f(!1)}),J=U(M),X=U(function(e,t,n){return sn(e,t)?t:e});var Y={box:function(e,t){arguments.length>2&&Q("box");var n=z(t);return new se(e,K(n),n.name,!0,n.equals)},shallowBox:function(e,t){return arguments.length>2&&Q("shallowBox"),F.box(e,{name:t,deep:!1})},array:function(e,t){arguments.length>2&&Q("array");var n=z(t);return new Nt(e,K(n),n.name)},shallowArray:function(e,t){return arguments.length>2&&Q("shallowArray"),F.array(e,{name:t,deep:!1})},map:function(e,t){arguments.length>2&&Q("map");var n=z(t);return new Gt(e,K(n),n.name)},shallowMap:function(e,t){return arguments.length>2&&Q("shallowMap"),F.map(e,{name:t,deep:!1})},set:function(e,t){arguments.length>2&&Q("set");var n=z(t);return new Wt(e,K(n),n.name)},object:function(e,t,n){return"string"==typeof arguments[1]&&Q("object"),ot({},e,t,z(n))},shallowObject:function(e,t){return"string"==typeof arguments[1]&&Q("shallowObject"),F.object(e,{},{name:t,deep:!1})},ref:J,shallow:q,deep:W,struct:X},F=function(e,t,n){if("string"==typeof arguments[1])return W.apply(null,arguments);if(pt(e))return e;var r=y(e)?F.object(e,t,n):Array.isArray(e)?F.array(e,t):_(e)?F.map(e,t):O(e)?F.set(e,t):e;if(r!==e)return r;f(!1)};function Q(e){f("Expected one or two arguments to observable."+e+". Did you accidentally try to use observable."+e+" as decorator?")}Object.keys(Y).forEach(function(e){return F[e]=Y[e]});var Z=B(!1,function(e,t,n,o,i){var a=n.get,s=n.set,u=i[0]||{};!function(e,t,n){var r=Xt(e);n.name=r.name+"."+t,n.context=e,r.values[t]=new ce(n),Object.defineProperty(e,t,function(e){return Qt[e]||(Qt[e]={configurable:De.computedConfigurable,enumerable:!1,get:function(){return Zt(this).read(this,e)},set:function(t){Zt(this).write(this,e,t)}})}(t))}(e,t,r({get:a,set:s},u))}),ee=Z({equals:N.structural}),te=function(e,t,n){if("string"==typeof t)return Z.apply(null,arguments);if(null!==e&&"object"==typeof e&&1===arguments.length)return Z.apply(null,arguments);var r="object"==typeof t?t:{};return r.get=e,r.set="function"==typeof t?t:r.set,r.name=r.name||e.name||"",new ce(r)};function ne(e,t){var n=function(){return re(e,t,this,arguments)};return n.isMobxAction=!0,n}function re(e,t,n,r){var o=function(e,t,n,r){var o=Ge()&&!!e,i=0;if(o){i=Date.now();var a=r&&r.length||0,s=new Array(a);if(a>0)for(var u=0;u<a;u++)s[u]=r[u];ze({type:"action",name:e,object:n,arguments:s})}var c=_e();Ie();var l=ie(!0);return{prevDerivation:c,prevAllowStateChanges:l,notifySpy:o,startTime:i}}(e,0,n,r),i=!0;try{var a=t.apply(n,r);return i=!1,a}finally{i?(De.suppressReactionErrors=i,oe(o),De.suppressReactionErrors=!1):oe(o)}}function oe(e){ae(e.prevAllowStateChanges),Ce(),Oe(e.prevDerivation),e.notifySpy&&We({time:Date.now()-e.startTime})}function ie(e){var t=De.allowStateChanges;return De.allowStateChanges=e,t}function ae(e){De.allowStateChanges=e}te.struct=ee;var se=function(e){function t(t,n,r,o,i){void 0===r&&(r="ObservableValue@"+l()),void 0===o&&(o=!0),void 0===i&&(i=N.default);var a=e.call(this,r)||this;return a.enhancer=n,a.name=r,a.equals=i,a.hasUnreportedChange=!1,a.value=n(t,void 0,r),o&&Ge()&&He({type:"create",name:a.name,newValue:""+a.value}),a}return n(t,e),t.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},t.prototype.set=function(e){var t=this.value;if((e=this.prepareNewValue(e))!==De.UNCHANGED){var n=Ge();n&&ze({type:"update",name:this.name,newValue:e,oldValue:t}),this.setNewValue(e),n&&We()}},t.prototype.prepareNewValue=function(e){if(ye(this),_t(this)){var t=wt(this,{object:this,type:"update",newValue:e});if(!t)return De.UNCHANGED;e=t.newValue}return e=this.enhancer(e,this.value,this.name),this.equals(this.value,e)?De.UNCHANGED:e},t.prototype.setNewValue=function(e){var t=this.value;this.value=e,this.reportChanged(),St(this)&&At(this,{type:"update",object:this,newValue:e,oldValue:t})},t.prototype.get=function(){return this.reportObserved(),this.dehanceValue(this.value)},t.prototype.intercept=function(e){return Ot(this,e)},t.prototype.observe=function(e,t){return t&&e({object:this,type:"update",newValue:this.value,oldValue:void 0}),xt(this,e)},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.value+"]"},t.prototype.valueOf=function(){return x(this.get())},t}(T);se.prototype[S()]=se.prototype.valueOf;var ue=g("ObservableValue",se),ce=function(){function t(t){this.dependenciesState=e.IDerivationState.NOT_TRACKING,this.observing=[],this.newObserving=null,this.isBeingObserved=!1,this.isPendingUnobservation=!1,this.observers=[],this.observersIndexes={},this.diffValue=0,this.runId=0,this.lastAccessedBy=0,this.lowestObserverState=e.IDerivationState.UP_TO_DATE,this.unboundDepsCount=0,this.__mapid="#"+l(),this.value=new he(null),this.isComputing=!1,this.isRunningSetter=!1,this.isTracing=fe.NONE,this.derivation=t.get,this.name=t.name||"ComputedValue@"+l(),t.set&&(this.setter=ne(this.name+"-setter",t.set)),this.equals=t.equals||(t.compareStructural||t.struct?N.structural:N.default),this.scope=t.context,this.requiresReaction=!!t.requiresReaction,this.keepAlive=!!t.keepAlive}return t.prototype.onBecomeStale=function(){!function(t){if(t.lowestObserverState!==e.IDerivationState.UP_TO_DATE)return;t.lowestObserverState=e.IDerivationState.POSSIBLY_STALE;var n=t.observers,r=n.length;for(;r--;){var o=n[r];o.dependenciesState===e.IDerivationState.UP_TO_DATE&&(o.dependenciesState=e.IDerivationState.POSSIBLY_STALE,o.isTracing!==fe.NONE&&Ne(o,t),o.onBecomeStale())}}(this)},t.prototype.onBecomeUnobserved=function(){},t.prototype.onBecomeObserved=function(){},t.prototype.get=function(){this.isComputing&&f("Cycle detected in computation "+this.name+": "+this.derivation),0!==De.inBatch||0!==this.observers.length||this.keepAlive?(Ve(this),de(this)&&this.trackAndCompute()&&function(t){if(t.lowestObserverState===e.IDerivationState.STALE)return;t.lowestObserverState=e.IDerivationState.STALE;var n=t.observers,r=n.length;for(;r--;){var o=n[r];o.dependenciesState===e.IDerivationState.POSSIBLY_STALE?o.dependenciesState=e.IDerivationState.STALE:o.dependenciesState===e.IDerivationState.UP_TO_DATE&&(t.lowestObserverState=e.IDerivationState.UP_TO_DATE)}}(this)):de(this)&&(this.warnAboutUntrackedRead(),Ie(),this.value=this.computeValue(!1),Ce());var t=this.value;if(ve(t))throw t.cause;return t},t.prototype.peek=function(){var e=this.computeValue(!1);if(ve(e))throw e.cause;return e},t.prototype.set=function(e){if(this.setter){p(!this.isRunningSetter,"The setter of computed value '"+this.name+"' is trying to update itself. Did you intend to update an _observable_ value, instead of the computed property?"),this.isRunningSetter=!0;try{this.setter.call(this.scope,e)}finally{this.isRunningSetter=!1}}else p(!1,!1)},t.prototype.trackAndCompute=function(){Ge()&&He({object:this.scope,type:"compute",name:this.name});var t=this.value,n=this.dependenciesState===e.IDerivationState.NOT_TRACKING,r=this.computeValue(!0),o=n||ve(t)||ve(r)||!this.equals(t,r);return o&&(this.value=r),o},t.prototype.computeValue=function(e){var t;if(this.isComputing=!0,De.computationDepth++,e)t=be(this,this.derivation,this.scope);else if(!0===De.disableErrorBoundaries)t=this.derivation.call(this.scope);else try{t=this.derivation.call(this.scope)}catch(e){t=new he(e)}return De.computationDepth--,this.isComputing=!1,t},t.prototype.suspend=function(){this.keepAlive||(me(this),this.value=void 0)},t.prototype.observe=function(e,t){var n=this,r=!0,o=void 0;return Qe(function(){var i=n.get();if(!r||t){var a=_e();e({type:"update",object:n,newValue:i,oldValue:o}),Oe(a)}r=!1,o=i})},t.prototype.warnAboutUntrackedRead=function(){},t.prototype.toJSON=function(){return this.get()},t.prototype.toString=function(){return this.name+"["+this.derivation.toString()+"]"},t.prototype.valueOf=function(){return x(this.get())},t}();ce.prototype[S()]=ce.prototype.valueOf;var le,fe,pe=g("ComputedValue",ce);(le=e.IDerivationState||(e.IDerivationState={}))[le.NOT_TRACKING=-1]="NOT_TRACKING",le[le.UP_TO_DATE=0]="UP_TO_DATE",le[le.POSSIBLY_STALE=1]="POSSIBLY_STALE",le[le.STALE=2]="STALE",function(e){e[e.NONE=0]="NONE",e[e.LOG=1]="LOG",e[e.BREAK=2]="BREAK"}(fe||(fe={}));var he=function(){return function(e){this.cause=e}}();function ve(e){return e instanceof he}function de(t){switch(t.dependenciesState){case e.IDerivationState.UP_TO_DATE:return!1;case e.IDerivationState.NOT_TRACKING:case e.IDerivationState.STALE:return!0;case e.IDerivationState.POSSIBLY_STALE:for(var n=_e(),r=t.observing,o=r.length,i=0;i<o;i++){var a=r[i];if(pe(a)){if(De.disableErrorBoundaries)a.get();else try{a.get()}catch(e){return Oe(n),!0}if(t.dependenciesState===e.IDerivationState.STALE)return Oe(n),!0}}return we(t),Oe(n),!1}}function ye(e){var t=e.observers.length>0;De.computationDepth>0&&t&&f(!1),De.allowStateChanges||!t&&"strict"!==De.enforceActions||f(!1)}function be(t,n,r){we(t),t.newObserving=new Array(t.observing.length+100),t.unboundDepsCount=0,t.runId=++De.runId;var o,i=De.trackingDerivation;if(De.trackingDerivation=t,!0===De.disableErrorBoundaries)o=n.call(r);else try{o=n.call(r)}catch(e){o=new he(e)}return De.trackingDerivation=i,function(t){for(var n=t.observing,r=t.observing=t.newObserving,o=e.IDerivationState.UP_TO_DATE,i=0,a=t.unboundDepsCount,s=0;s<a;s++){var u=r[s];0===u.diffValue&&(u.diffValue=1,i!==s&&(r[i]=u),i++),u.dependenciesState>o&&(o=u.dependenciesState)}r.length=i,t.newObserving=null,a=n.length;for(;a--;){var u=n[a];0===u.diffValue&&ke(u,t),u.diffValue=0}for(;i--;){var u=r[i];1===u.diffValue&&(u.diffValue=0,je(u,t))}o!==e.IDerivationState.UP_TO_DATE&&(t.dependenciesState=o,t.onBecomeStale())}(t),o}function me(t){var n=t.observing;t.observing=[];for(var r=n.length;r--;)ke(n[r],t);t.dependenciesState=e.IDerivationState.NOT_TRACKING}function ge(e){var t=_e(),n=e();return Oe(t),n}function _e(){var e=De.trackingDerivation;return De.trackingDerivation=null,e}function Oe(e){De.trackingDerivation=e}function we(t){if(t.dependenciesState!==e.IDerivationState.UP_TO_DATE){t.dependenciesState=e.IDerivationState.UP_TO_DATE;for(var n=t.observing,r=n.length;r--;)n[r].lowestObserverState=e.IDerivationState.UP_TO_DATE}}var Se=["mobxGuid","spyListeners","enforceActions","computedRequiresReaction","disableErrorBoundaries","runId","UNCHANGED"],xe=function(){return function(){this.version=5,this.UNCHANGED={},this.trackingDerivation=null,this.computationDepth=0,this.runId=0,this.mobxGuid=0,this.inBatch=0,this.pendingUnobservations=[],this.pendingReactions=[],this.isRunningReactions=!1,this.allowStateChanges=!0,this.enforceActions=!1,this.spyListeners=[],this.globalReactionErrorHandlers=[],this.computedRequiresReaction=!1,this.computedConfigurable=!1,this.disableErrorBoundaries=!1,this.suppressReactionErrors=!1}}(),Ae=!0,Ee=!1,De=function(){var e=c();return e.__mobxInstanceCount>0&&!e.__mobxGlobals&&(Ae=!1),e.__mobxGlobals&&e.__mobxGlobals.version!==(new xe).version&&(Ae=!1),Ae?e.__mobxGlobals?(e.__mobxInstanceCount+=1,e.__mobxGlobals.UNCHANGED||(e.__mobxGlobals.UNCHANGED={}),e.__mobxGlobals):(e.__mobxInstanceCount=1,e.__mobxGlobals=new xe):(setTimeout(function(){Ee||f("There are multiple, different versions of MobX active. Make sure MobX is loaded only once or use `configure({ isolateGlobalState: true })`")},1),new xe)}();function je(e,t){var n=e.observers.length;n&&(e.observersIndexes[t.__mapid]=n),e.observers[n]=t,e.lowestObserverState>t.dependenciesState&&(e.lowestObserverState=t.dependenciesState)}function ke(e,t){if(1===e.observers.length)e.observers.length=0,Te(e);else{var n=e.observers,r=e.observersIndexes,o=n.pop();if(o!==t){var i=r[t.__mapid]||0;i?r[o.__mapid]=i:delete r[o.__mapid],n[i]=o}delete r[t.__mapid]}}function Te(e){!1===e.isPendingUnobservation&&(e.isPendingUnobservation=!0,De.pendingUnobservations.push(e))}function Ie(){De.inBatch++}function Ce(){if(0==--De.inBatch){Be();for(var e=De.pendingUnobservations,t=0;t<e.length;t++){var n=e[t];n.isPendingUnobservation=!1,0===n.observers.length&&(n.isBeingObserved&&(n.isBeingObserved=!1,n.onBecomeUnobserved()),n instanceof ce&&n.suspend())}De.pendingUnobservations=[]}}function Ve(e){var t=De.trackingDerivation;return null!==t?(t.runId!==e.lastAccessedBy&&(e.lastAccessedBy=t.runId,t.newObserving[t.unboundDepsCount++]=e,e.isBeingObserved||(e.isBeingObserved=!0,e.onBecomeObserved())),!0):(0===e.observers.length&&De.inBatch>0&&Te(e),!1)}function Ne(e,t){if(console.log("[mobx.trace] '"+e.name+"' is invalidated due to a change in: '"+t.name+"'"),e.isTracing===fe.BREAK){var n=[];!function e(t,n,r){if(n.length>=1e3)return void n.push("(and many more)");n.push(""+new Array(r).join("\t")+t.name);t.dependencies&&t.dependencies.forEach(function(t){return e(t,n,r+1)})}(it(e),n,1),new Function("debugger;\n/*\nTracing '"+e.name+"'\n\nYou are entering this break point because derivation '"+e.name+"' is being traced and '"+t.name+"' is now forcing it to update.\nJust follow the stacktrace you should now see in the devtools to see precisely what piece of your code is causing this update\nThe stackframe you are looking for is at least ~6-8 stack-frames up.\n\n"+(e instanceof ce?e.derivation.toString().replace(/[*]\//g,"/"):"")+"\n\nThe dependencies for this derivation are:\n\n"+n.join("\n")+"\n*/\n ")()}}var Re=function(){function t(t,n,r){void 0===t&&(t="Reaction@"+l()),this.name=t,this.onInvalidate=n,this.errorHandler=r,this.observing=[],this.newObserving=[],this.dependenciesState=e.IDerivationState.NOT_TRACKING,this.diffValue=0,this.runId=0,this.unboundDepsCount=0,this.__mapid="#"+l(),this.isDisposed=!1,this._isScheduled=!1,this._isTrackPending=!1,this._isRunning=!1,this.isTracing=fe.NONE}return t.prototype.onBecomeStale=function(){this.schedule()},t.prototype.schedule=function(){this._isScheduled||(this._isScheduled=!0,De.pendingReactions.push(this),Be())},t.prototype.isScheduled=function(){return this._isScheduled},t.prototype.runReaction=function(){if(!this.isDisposed){if(Ie(),this._isScheduled=!1,de(this)){this._isTrackPending=!0;try{this.onInvalidate(),this._isTrackPending&&Ge()&&He({name:this.name,type:"scheduled-reaction"})}catch(e){this.reportExceptionInDerivation(e)}}Ce()}},t.prototype.track=function(e){Ie();var t,n=Ge();n&&(t=Date.now(),ze({name:this.name,type:"reaction"})),this._isRunning=!0;var r=be(this,e,void 0);this._isRunning=!1,this._isTrackPending=!1,this.isDisposed&&me(this),ve(r)&&this.reportExceptionInDerivation(r.cause),n&&We({time:Date.now()-t}),Ce()},t.prototype.reportExceptionInDerivation=function(e){var t=this;if(this.errorHandler)this.errorHandler(e,this);else{if(De.disableErrorBoundaries)throw e;var n="[mobx] Encountered an uncaught exception that was thrown by a reaction or observer component, in: '"+this+"'";De.suppressReactionErrors?console.warn("[mobx] (error in reaction '"+this.name+"' suppressed, fix error of causing action below)"):console.error(n,e),Ge()&&He({type:"error",name:this.name,message:n,error:""+e}),De.globalReactionErrorHandlers.forEach(function(n){return n(e,t)})}},t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this._isRunning||(Ie(),me(this),Ce()))},t.prototype.getDisposer=function(){var e=this.dispose.bind(this);return e.$mobx=this,e},t.prototype.toString=function(){return"Reaction["+this.name+"]"},t.prototype.trace=function(e){void 0===e&&(e=!1),bt(this,e)},t}();var Pe=100,Le=function(e){return e()};function Be(){De.inBatch>0||De.isRunningReactions||Le($e)}function $e(){De.isRunningReactions=!0;for(var e=De.pendingReactions,t=0;e.length>0;){++t===Pe&&(console.error("Reaction doesn't converge to a stable state after "+Pe+" iterations. Probably there is a cycle in the reactive function: "+e[0]),e.splice(0));for(var n=e.splice(0),r=0,o=n.length;r<o;r++)n[r].runReaction()}De.isRunningReactions=!1}var Me=g("Reaction",Re);function Ue(e){var t=Le;Le=function(n){return e(function(){return t(n)})}}function Ge(){return!!De.spyListeners.length}function He(e){if(De.spyListeners.length)for(var t=De.spyListeners,n=0,r=t.length;n<r;n++)t[n](e)}function ze(e){He(r({},e,{spyReportStart:!0}))}var Ke={spyReportEnd:!0};function We(e){He(e?r({},e,{spyReportEnd:!0}):Ke)}function qe(e){return De.spyListeners.push(e),h(function(){De.spyListeners=De.spyListeners.filter(function(t){return t!==e})})}function Je(){f(!1)}function Xe(e){return function(t,n,r){if(r){if(r.value)return{value:ne(e,r.value),enumerable:!1,configurable:!0,writable:!0};var o=r.initializer;return{enumerable:!1,configurable:!0,writable:!0,initializer:function(){return ne(e,o.call(this))}}}return function(e){return function(t,n,r){Object.defineProperty(t,n,{configurable:!0,enumerable:!1,get:function(){},set:function(t){b(this,n,Ye(e,t))}})}}(e).apply(this,arguments)}}var Ye=function(e,t,n,r){return 1===arguments.length&&"function"==typeof e?ne(e.name||"<unnamed action>",e):2===arguments.length&&"function"==typeof t?ne(e,t):1===arguments.length&&"string"==typeof e?Xe(e):!0!==r?Xe(t).apply(null,arguments):void(e[t]=ne(e.name||t,n.value))};function Fe(e,t,n){b(e,t,ne(t,n.bind(e)))}function Qe(e,t){void 0===t&&(t=u);var n,r=t&&t.name||e.name||"Autorun@"+l();if(!t.scheduler&&!t.delay)n=new Re(r,function(){this.track(a)},t.onError);else{var o=et(t),i=!1;n=new Re(r,function(){i||(i=!0,o(function(){i=!1,n.isDisposed||n.track(a)}))},t.onError)}function a(){e(n)}return n.schedule(),n.getDisposer()}Ye.bound=function(e,t,n,r){return!0===r?(Fe(e,t,n.value),null):n?{configurable:!0,enumerable:!1,get:function(){return Fe(this,t,n.value||n.initializer.call(this)),this[t]},set:Je}:{enumerable:!1,configurable:!0,set:function(e){Fe(this,t,e)},get:function(){}}};var Ze=function(e){return e()};function et(e){return e.scheduler?e.scheduler:e.delay?function(t){return setTimeout(t,e.delay)}:Ze}function tt(e,t,n){return rt("onBecomeObserved",e,t,n)}function nt(e,t,n){return rt("onBecomeUnobserved",e,t,n)}function rt(e,t,n,r){var o="string"==typeof n?nn(t,n):nn(t),i="string"==typeof n?r:n,a=o[e];return"function"!=typeof a?f(!1):(o[e]=function(){a.call(this),i.call(this)},function(){o[e]=a})}function ot(e,t,n,r){var o=(r=z(r)).defaultDecorator||(!1===r.deep?J:W);L(e),Xt(e,r.name,o.enhancer),Ie();try{for(var i in t){var a=Object.getOwnPropertyDescriptor(t,i),s=(n&&i in n?n[i]:a.get?Z:o)(e,i,a,!0);s&&Object.defineProperty(e,i,s)}}finally{Ce()}return e}function it(e,t){return at(nn(e,t))}function at(e){var t,n,r={name:e.name};return e.observing&&e.observing.length>0&&(r.dependencies=(t=e.observing,n=[],t.forEach(function(e){-1===n.indexOf(e)&&n.push(e)}),n).map(at)),r}function st(e){var t,n={name:e.name};return(t=e).observers&&t.observers.length>0&&(n.observers=function(e){return e.observers}(e).map(st)),n}var ut=0;function ct(e){"function"==typeof e.cancel&&e.cancel()}function lt(e,t){if(null==e)return!1;if(void 0!==t){if(!1===tn(e))return!1;if(!e.$mobx.values[t])return!1;var n=nn(e,t);return pe(n)}return pe(e)}function ft(e,t){if(null==e)return!1;if(void 0!==t){if(tn(e)){var n=e.$mobx;return n.values&&!!n.values[t]}return!1}return tn(e)||!!e.$mobx||I(e)||Me(e)||pe(e)}function pt(e){return 1!==arguments.length&&f(!1),ft(e)}function ht(e){return tn(e)?e.$mobx.getKeys():zt(e)?e._keys.slice():qt(e)?w(e.keys()):Mt(e)?e.map(function(e,t){return t}):f(!1)}function vt(e,t){if(tn(e)){var n=rn(e);return n.getKeys(),!!n.values[t]}return zt(e)?e.has(t):qt(e)?e.has(t):Mt(e)?t>=0&&t<e.length:f(!1)}var dt={detectCycles:!0,exportMapsAsObjects:!0,recurseEverything:!1};function yt(e,t,n,r){return r.detectCycles&&e.set(t,n),n}function bt(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=!1;"boolean"==typeof e[e.length-1]&&(n=e.pop());var r=function(e){switch(e.length){case 0:return De.trackingDerivation;case 1:return nn(e[0]);case 2:return nn(e[0],e[1])}}(e);if(!r)return f(!1);r.isTracing===fe.NONE&&console.log("[mobx.trace] '"+r.name+"' tracing enabled"),r.isTracing=n?fe.BREAK:fe.LOG}function mt(e,t){void 0===t&&(t=void 0),Ie();try{return e.apply(t)}finally{Ce()}}function gt(e,t,n){var r;"number"==typeof n.timeout&&(r=setTimeout(function(){if(!i.$mobx.isDisposed){i();var e=new Error("WHEN_TIMEOUT");if(!n.onError)throw e;n.onError(e)}},n.timeout)),n.name=n.name||"When@"+l();var o=ne(n.name+"-effect",t),i=Qe(function(t){e()&&(t.dispose(),r&&clearTimeout(r),o())},n);return i}function _t(e){return void 0!==e.interceptors&&e.interceptors.length>0}function Ot(e,t){var n=e.interceptors||(e.interceptors=[]);return n.push(t),h(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function wt(e,t){var n=_e();try{var r=e.interceptors;if(r)for(var o=0,i=r.length;o<i&&(p(!(t=r[o](t))||t.type,"Intercept handlers should return nothing or a change object"),t);o++);return t}finally{Oe(n)}}function St(e){return void 0!==e.changeListeners&&e.changeListeners.length>0}function xt(e,t){var n=e.changeListeners||(e.changeListeners=[]);return n.push(t),h(function(){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})}function At(e,t){var n=_e(),r=e.changeListeners;if(r){for(var o=0,i=(r=r.slice()).length;o<i;o++)r[o](t);Oe(n)}}var Et,Dt,jt,kt,Tt=(Et=!1,Dt={},Object.defineProperty(Dt,"0",{set:function(){Et=!0}}),Object.create(Dt)[0]=1,!1===Et),It=0,Ct=function(){return function(){}}();jt=Ct,kt=Array.prototype,void 0!==Object.setPrototypeOf?Object.setPrototypeOf(jt.prototype,kt):void 0!==jt.prototype.__proto__?jt.prototype.__proto__=kt:jt.prototype=kt,Object.isFrozen(Array)&&["constructor","push","shift","concat","pop","unshift","replace","find","findIndex","splice","reverse","sort"].forEach(function(e){Object.defineProperty(Ct.prototype,e,{configurable:!0,writable:!0,value:Array.prototype[e]})});var Vt=function(){function e(e,t,n,r){this.array=n,this.owned=r,this.values=[],this.lastKnownLength=0,this.atom=new T(e||"ObservableArray@"+l()),this.enhancer=function(n,r){return t(n,r,e+"[..]")}}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.dehanceValues=function(e){return void 0!==this.dehancer&&e.length>0?e.map(this.dehancer):e},e.prototype.intercept=function(e){return Ot(this,e)},e.prototype.observe=function(e,t){return void 0===t&&(t=!1),t&&e({object:this.array,type:"splice",index:0,added:this.values.slice(),addedCount:this.values.length,removed:[],removedCount:0}),xt(this,e)},e.prototype.getArrayLength=function(){return this.atom.reportObserved(),this.values.length},e.prototype.setArrayLength=function(e){if("number"!=typeof e||e<0)throw new Error("[mobx.array] Out of range: "+e);var t=this.values.length;if(e!==t)if(e>t){for(var n=new Array(e-t),r=0;r<e-t;r++)n[r]=void 0;this.spliceWithArray(t,0,n)}else this.spliceWithArray(e,t-e)},e.prototype.updateArrayLength=function(e,t){if(e!==this.lastKnownLength)throw new Error("[mobx] Modification exception: the internal structure of an observable array was changed. Did you use peek() to change it?");this.lastKnownLength+=t,t>0&&e+t+1>It&&Bt(e+t+1)},e.prototype.spliceWithArray=function(e,t,n){var r=this;ye(this.atom);var o=this.values.length;if(void 0===e?e=0:e>o?e=o:e<0&&(e=Math.max(0,o+e)),t=1===arguments.length?o-e:null==t?0:Math.max(0,Math.min(t,o-e)),void 0===n&&(n=s),_t(this)){var i=wt(this,{object:this.array,type:"splice",index:e,removedCount:t,added:n});if(!i)return s;t=i.removedCount,n=i.added}var a=(n=0===n.length?n:n.map(function(e){return r.enhancer(e,void 0)})).length-t;this.updateArrayLength(o,a);var u=this.spliceItemsIntoValues(e,t,n);return 0===t&&0===n.length||this.notifyArraySplice(e,n,u),this.dehanceValues(u)},e.prototype.spliceItemsIntoValues=function(e,t,n){var r;if(n.length<1e4)return(r=this.values).splice.apply(r,i([e,t],n));var o=this.values.slice(e,e+t);return this.values=this.values.slice(0,e).concat(n,this.values.slice(e+t)),o},e.prototype.notifyArrayChildUpdate=function(e,t,n){var o=!this.owned&&Ge(),i=St(this),a=i||o?{object:this.array,type:"update",index:e,newValue:t,oldValue:n}:null;o&&ze(r({},a,{name:this.atom.name})),this.atom.reportChanged(),i&&At(this,a),o&&We()},e.prototype.notifyArraySplice=function(e,t,n){var o=!this.owned&&Ge(),i=St(this),a=i||o?{object:this.array,type:"splice",index:e,removed:n,added:t,removedCount:n.length,addedCount:t.length}:null;o&&ze(r({},a,{name:this.atom.name})),this.atom.reportChanged(),i&&At(this,a),o&&We()},e}(),Nt=function(e){function t(t,n,r,o){void 0===r&&(r="ObservableArray@"+l()),void 0===o&&(o=!1);var i=e.call(this)||this,a=new Vt(r,n,i,o);if(m(i,"$mobx",a),t&&t.length){var s=ie(!0);i.spliceWithArray(0,0,t),ae(s)}return Tt&&Object.defineProperty(a.array,"0",Rt),i}return n(t,e),t.prototype.intercept=function(e){return this.$mobx.intercept(e)},t.prototype.observe=function(e,t){return void 0===t&&(t=!1),this.$mobx.observe(e,t)},t.prototype.clear=function(){return this.splice(0)},t.prototype.concat=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.$mobx.atom.reportObserved(),Array.prototype.concat.apply(this.peek(),e.map(function(e){return Mt(e)?e.peek():e}))},t.prototype.replace=function(e){return this.$mobx.spliceWithArray(0,this.$mobx.values.length,e)},t.prototype.toJS=function(){return this.slice()},t.prototype.toJSON=function(){return this.toJS()},t.prototype.peek=function(){return this.$mobx.atom.reportObserved(),this.$mobx.dehanceValues(this.$mobx.values)},t.prototype.find=function(e,t,n){void 0===n&&(n=0),arguments.length;var r=this.findIndex.apply(this,arguments);return-1===r?void 0:this.get(r)},t.prototype.findIndex=function(e,t,n){void 0===n&&(n=0),arguments.length;for(var r=this.peek(),o=r.length,i=n;i<o;i++)if(e.call(t,r[i],i,this))return i;return-1},t.prototype.splice=function(e,t){for(var n=[],r=2;r<arguments.length;r++)n[r-2]=arguments[r];switch(arguments.length){case 0:return[];case 1:return this.$mobx.spliceWithArray(e);case 2:return this.$mobx.spliceWithArray(e,t)}return this.$mobx.spliceWithArray(e,t,n)},t.prototype.spliceWithArray=function(e,t,n){return this.$mobx.spliceWithArray(e,t,n)},t.prototype.push=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this.$mobx;return n.spliceWithArray(n.values.length,0,e),n.values.length},t.prototype.pop=function(){return this.splice(Math.max(this.$mobx.values.length-1,0),1)[0]},t.prototype.shift=function(){return this.splice(0,1)[0]},t.prototype.unshift=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var n=this.$mobx;return n.spliceWithArray(0,0,e),n.values.length},t.prototype.reverse=function(){var e=this.slice();return e.reverse.apply(e,arguments)},t.prototype.sort=function(e){var t=this.slice();return t.sort.apply(t,arguments)},t.prototype.remove=function(e){var t=this.$mobx.dehanceValues(this.$mobx.values).indexOf(e);return t>-1&&(this.splice(t,1),!0)},t.prototype.move=function(e,t){function n(e){if(e<0)throw new Error("[mobx.array] Index out of bounds: "+e+" is negative");var t=this.$mobx.values.length;if(e>=t)throw new Error("[mobx.array] Index out of bounds: "+e+" is not smaller than "+t)}if(n.call(this,e),n.call(this,t),e!==t){var r,o=this.$mobx.values;r=e<t?i(o.slice(0,e),o.slice(e+1,t+1),[o[e]],o.slice(t+1)):i(o.slice(0,t),[o[e]],o.slice(t,e),o.slice(e+1)),this.replace(r)}},t.prototype.get=function(e){var t=this.$mobx;if(t){if(e<t.values.length)return t.atom.reportObserved(),t.dehanceValue(t.values[e]);console.warn("[mobx.array] Attempt to read an array index ("+e+") that is out of bounds ("+t.values.length+"). Please check length first. Out of bound indices will not be tracked by MobX")}},t.prototype.set=function(e,t){var n=this.$mobx,r=n.values;if(e<r.length){ye(n.atom);var o=r[e];if(_t(n)){var i=wt(n,{type:"update",object:this,index:e,newValue:t});if(!i)return;t=i.newValue}(t=n.enhancer(t,o))!==o&&(r[e]=t,n.notifyArrayChildUpdate(e,t,o))}else{if(e!==r.length)throw new Error("[mobx.array] Index out of bounds, "+e+" is larger than "+r.length);n.spliceWithArray(e,0,[t])}},t}(Ct);E(Nt.prototype,function(){this.$mobx.atom.reportObserved();var e=this,t=0;return D({next:function(){return t<e.length?{value:e[t++],done:!1}:{done:!0,value:void 0}}})}),Object.defineProperty(Nt.prototype,"length",{enumerable:!1,configurable:!0,get:function(){return this.$mobx.getArrayLength()},set:function(e){this.$mobx.setArrayLength(e)}}),b(Nt.prototype,j(),"Array"),["every","filter","forEach","indexOf","join","lastIndexOf","map","reduce","reduceRight","slice","some","toString","toLocaleString"].forEach(function(e){var t=Array.prototype[e];p("function"==typeof t,"Base function not defined on Array prototype: '"+e+"'"),b(Nt.prototype,e,function(){return t.apply(this.peek(),arguments)})}),function(e,t){for(var n=0;n<t.length;n++)b(e,t[n],e[t[n]])}(Nt.prototype,["constructor","intercept","observe","clear","concat","get","replace","toJS","toJSON","peek","find","findIndex","splice","spliceWithArray","push","pop","set","shift","unshift","reverse","sort","remove","move","toString","toLocaleString"]);var Rt=Pt(0);function Pt(e){return{enumerable:!1,configurable:!1,get:function(){return this.get(e)},set:function(t){this.set(e,t)}}}function Lt(e){Object.defineProperty(Nt.prototype,""+e,Pt(e))}function Bt(e){for(var t=It;t<e;t++)Lt(t);It=e}Bt(1e3);var $t=g("ObservableArrayAdministration",Vt);function Mt(e){return d(e)&&$t(e.$mobx)}var Ut={},Gt=function(){function e(e,t,n){if(void 0===t&&(t=$),void 0===n&&(n="ObservableMap@"+l()),this.enhancer=t,this.name=n,this.$mobx=Ut,this._keys=new Nt(void 0,M,this.name+".keys()",!0),"function"!=typeof Map)throw new Error("mobx.map requires Map polyfill for the current browser. Check babel-polyfill or core-js/es6/map.js");this._data=new Map,this._hasMap=new Map,this.merge(e)}return e.prototype._has=function(e){return this._data.has(e)},e.prototype.has=function(e){var t=this;if(!De.trackingDerivation)return this._has(e);var n=this._hasMap.get(e);if(!n){var r=n=new se(this._has(e),M,this.name+"."+Ht(e)+"?",!1);this._hasMap.set(e,r),nt(r,function(){return t._hasMap.delete(e)})}return n.get()},e.prototype.set=function(e,t){var n=this._has(e);if(_t(this)){var r=wt(this,{type:n?"update":"add",object:this,newValue:t,name:e});if(!r)return this;t=r.newValue}return n?this._updateValue(e,t):this._addValue(e,t),this},e.prototype.delete=function(e){var t=this;if(_t(this)&&!(i=wt(this,{type:"delete",object:this,name:e})))return!1;if(this._has(e)){var n=Ge(),o=St(this),i=o||n?{type:"delete",object:this,oldValue:this._data.get(e).value,name:e}:null;return n&&ze(r({},i,{name:this.name,key:e})),mt(function(){t._keys.remove(e),t._updateHasMapEntry(e,!1),t._data.get(e).setNewValue(void 0),t._data.delete(e)}),o&&At(this,i),n&&We(),!0}return!1},e.prototype._updateHasMapEntry=function(e,t){var n=this._hasMap.get(e);n&&n.setNewValue(t)},e.prototype._updateValue=function(e,t){var n=this._data.get(e);if((t=n.prepareNewValue(t))!==De.UNCHANGED){var o=Ge(),i=St(this),a=i||o?{type:"update",object:this,oldValue:n.value,name:e,newValue:t}:null;o&&ze(r({},a,{name:this.name,key:e})),n.setNewValue(t),i&&At(this,a),o&&We()}},e.prototype._addValue=function(e,t){var n=this;mt(function(){var r=new se(t,n.enhancer,n.name+"."+Ht(e),!1);n._data.set(e,r),t=r.value,n._updateHasMapEntry(e,!0),n._keys.push(e)});var o=Ge(),i=St(this),a=i||o?{type:"add",object:this,name:e,newValue:t}:null;o&&ze(r({},a,{name:this.name,key:e})),i&&At(this,a),o&&We()},e.prototype.get=function(e){return this.has(e)?this.dehanceValue(this._data.get(e).get()):this.dehanceValue(void 0)},e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.keys=function(){return this._keys[A()]()},e.prototype.values=function(){var e=this,t=0;return D({next:function(){return t<e._keys.length?{value:e.get(e._keys[t++]),done:!1}:{value:void 0,done:!0}}})},e.prototype.entries=function(){var e=this,t=0;return D({next:function(){if(t<e._keys.length){var n=e._keys[t++];return{value:[n,e.get(n)],done:!1}}return{done:!0}}})},e.prototype.forEach=function(e,t){var n=this;this._keys.forEach(function(r){return e.call(t,n.get(r),r,n)})},e.prototype.merge=function(e){var t=this;return zt(e)&&(e=e.toJS()),mt(function(){y(e)?Object.keys(e).forEach(function(n){return t.set(n,e[n])}):Array.isArray(e)?e.forEach(function(e){var n=o(e,2),r=n[0],i=n[1];return t.set(r,i)}):_(e)?e.constructor!==Map?f("Cannot initialize from classes that inherit from Map: "+e.constructor.name):e.forEach(function(e,n){return t.set(n,e)}):null!=e&&f("Cannot initialize map from "+e)}),this},e.prototype.clear=function(){var e=this;mt(function(){ge(function(){e._keys.slice().forEach(function(t){return e.delete(t)})})})},e.prototype.replace=function(e){var t=this;return mt(function(){var n,r=y(n=e)?Object.keys(n):Array.isArray(n)?n.map(function(e){return o(e,1)[0]}):_(n)||zt(n)?w(n.keys()):f("Cannot get keys from '"+n+"'");t._keys.filter(function(e){return-1===r.indexOf(e)}).forEach(function(e){return t.delete(e)}),t.merge(e)}),this},Object.defineProperty(e.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),e.prototype.toPOJO=function(){var e=this,t={};return this._keys.forEach(function(n){return t["symbol"==typeof n?n:Ht(n)]=e.get(n)}),t},e.prototype.toJS=function(){var e=this,t=new Map;return this._keys.forEach(function(n){return t.set(n,e.get(n))}),t},e.prototype.toJSON=function(){return this.toPOJO()},e.prototype.toString=function(){var e=this;return this.name+"[{ "+this._keys.map(function(t){return Ht(t)+": "+e.get(t)}).join(", ")+" }]"},e.prototype.observe=function(e,t){return xt(this,e)},e.prototype.intercept=function(e){return Ot(this,e)},e}();function Ht(e){return e&&e.toString?e.toString():new String(e).toString()}E(Gt.prototype,function(){return this.entries()}),m(Gt.prototype,j(),"Map");var zt=g("ObservableMap",Gt),Kt={},Wt=function(){function e(e,t,n){if(void 0===t&&(t=$),void 0===n&&(n="ObservableSet@"+l()),this.name=n,this.$mobx=Kt,this._data=new Set,this._atom=C(this.name),"function"!=typeof Set)throw new Error("mobx.set requires Set polyfill for the current browser. Check babel-polyfill or core-js/es6/set.js");this.enhancer=function(e,r){return t(e,r,n)},e&&this.replace(e)}return e.prototype.dehanceValue=function(e){return void 0!==this.dehancer?this.dehancer(e):e},e.prototype.clear=function(){var e=this;mt(function(){ge(function(){e._data.forEach(function(t){e.delete(t)})})})},e.prototype.forEach=function(e,t){var n=this;this._data.forEach(function(r){e.call(t,r,r,n)})},Object.defineProperty(e.prototype,"size",{get:function(){return this._atom.reportObserved(),this._data.size},enumerable:!0,configurable:!0}),e.prototype.add=function(e){var t=this;if((ye(this._atom),_t(this))&&!(o=wt(this,{type:"add",object:this,newValue:e})))return this;if(!this.has(e)){mt(function(){t._data.add(t.enhancer(e,void 0)),t._atom.reportChanged()});var n=Ge(),r=St(this),o=r||n?{type:"add",object:this,newValue:e}:null;0,r&&At(this,o)}return this},e.prototype.delete=function(e){var t=this;if(_t(this)&&!(o=wt(this,{type:"delete",object:this,oldValue:e})))return!1;if(this.has(e)){var n=Ge(),r=St(this),o=r||n?{type:"delete",object:this,oldValue:e}:null;return mt(function(){t._atom.reportChanged(),t._data.delete(e)}),r&&At(this,o),!0}return!1},e.prototype.has=function(e){return this._atom.reportObserved(),this._data.has(this.dehanceValue(e))},e.prototype.entries=function(){var e=0,t=w(this.keys()),n=w(this.values());return D({next:function(){var r=e;return e+=1,r<n.length?{value:[t[r],n[r]],done:!1}:{done:!0}}})},e.prototype.keys=function(){return this.values()},e.prototype.values=function(){this._atom.reportObserved();var e,t=this,n=0;return void 0!==this._data.values?e=w(this._data.values()):(e=[],this._data.forEach(function(t){return e.push(t)})),D({next:function(){return n<e.length?{value:t.dehanceValue(e[n++]),done:!1}:{done:!0}}})},e.prototype.replace=function(e){var t=this;return qt(e)&&(e=e.toJS()),mt(function(){Array.isArray(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):O(e)?(t.clear(),e.forEach(function(e){return t.add(e)})):null!=e&&f("Cannot initialize set from "+e)}),this},e.prototype.observe=function(e,t){return xt(this,e)},e.prototype.intercept=function(e){return Ot(this,e)},e.prototype.toJS=function(){return new Set(this)},e.prototype.toString=function(){return this.name+"[ "+w(this.keys()).join(", ")+" ]"},e}();E(Wt.prototype,function(){return this.values()}),m(Wt.prototype,j(),"Set");var qt=g("ObservableSet",Wt),Jt=function(){function e(e,t,n){this.target=e,this.name=t,this.defaultEnhancer=n,this.values={}}return e.prototype.read=function(e,t){if(this.target===e||(this.illegalAccess(e,t),this.values[t]))return this.values[t].get()},e.prototype.write=function(e,t,n){var o=this.target;o!==e&&this.illegalAccess(e,t);var i=this.values[t];if(i instanceof ce)i.set(n);else{if(_t(this)){if(!(u=wt(this,{type:"update",object:o,name:t,newValue:n})))return;n=u.newValue}if((n=i.prepareNewValue(n))!==De.UNCHANGED){var a=St(this),s=Ge(),u=a||s?{type:"update",object:o,oldValue:i.value,name:t,newValue:n}:null;s&&ze(r({},u,{name:this.name,key:t})),i.setNewValue(n),a&&At(this,u),s&&We()}}},e.prototype.remove=function(e){if(this.values[e]){var t=this.target;if(_t(this))if(!(a=wt(this,{object:t,name:e,type:"remove"})))return;try{Ie();var n=St(this),o=Ge(),i=this.values[e].get();this.keys&&this.keys.remove(e),delete this.values[e],delete this.target[e];var a=n||o?{type:"remove",object:t,oldValue:i,name:e}:null;o&&ze(r({},a,{name:this.name,key:e})),n&&At(this,a),o&&We()}finally{Ce()}}},e.prototype.illegalAccess=function(e,t){console.warn("Property '"+t+"' of '"+e+"' was accessed through the prototype chain. Use 'decorate' instead to declare the prop or access it statically through it's owner")},e.prototype.observe=function(e,t){return xt(this,e)},e.prototype.intercept=function(e){return Ot(this,e)},e.prototype.getKeys=function(){var e=this;return void 0===this.keys&&(this.keys=new Nt(Object.keys(this.values).filter(function(t){return e.values[t]instanceof se}),M,"keys("+this.name+")",!0)),this.keys.slice()},e}();function Xt(e,t,n){void 0===t&&(t=""),void 0===n&&(n=$);var r=e.$mobx;return r||(y(e)||(t=(e.constructor.name||"ObservableObject")+"@"+l()),t||(t="ObservableObject@"+l()),m(e,"$mobx",r=new Jt(e,t,n)),r)}function Yt(e,t,n,o){var i=Xt(e);if(_t(i)){var a=wt(i,{object:e,name:t,type:"add",newValue:n});if(!a)return;n=a.newValue}n=(i.values[t]=new se(n,o,i.name+"."+t,!1)).value,Object.defineProperty(e,t,function(e){return Ft[e]||(Ft[e]={configurable:!0,enumerable:!0,get:function(){return this.$mobx.read(this,e)},set:function(t){this.$mobx.write(this,e,t)}})}(t)),i.keys&&i.keys.push(t),function(e,t,n,o){var i=St(e),a=Ge(),s=i||a?{type:"add",object:t,name:n,newValue:o}:null;a&&ze(r({},s,{name:e.name,key:n}));i&&At(e,s);a&&We()}(i,e,t,n)}var Ft=Object.create(null),Qt=Object.create(null);function Zt(e){var t=e.$mobx;return t||(L(e),e.$mobx)}var en=g("ObservableObjectAdministration",Jt);function tn(e){return!!d(e)&&(L(e),en(e.$mobx))}function nn(e,t){if("object"==typeof e&&null!==e){if(Mt(e))return void 0!==t&&f(!1),e.$mobx.atom;if(qt(e))return e.$mobx;if(zt(e)){var n=e;return void 0===t?nn(n._keys):((r=n._data.get(t)||n._hasMap.get(t))||f(!1),r)}var r;if(L(e),t&&!e.$mobx&&e[t],tn(e))return t?((r=e.$mobx.values[t])||f(!1),r):f(!1);if(I(e)||pe(e)||Me(e))return e}else if("function"==typeof e&&Me(e.$mobx))return e.$mobx;return f(!1)}function rn(e,t){return e||f("Expecting some object"),void 0!==t?rn(nn(e,t)):I(e)||pe(e)||Me(e)?e:zt(e)||qt(e)?e:(L(e),e.$mobx?e.$mobx:void f(!1))}function on(e,t){return(void 0!==t?nn(e,t):tn(e)||zt(e)||qt(e)?rn(e):nn(e)).name}var an=Object.prototype.toString;function sn(e,t){return un(e,t)}function un(e,t,n,r){if(e===t)return 0!==e||1/e==1/t;if(null==e||null==t)return!1;if(e!=e)return t!=t;var o=typeof e;return("function"===o||"object"===o||"object"==typeof t)&&function(e,t,n,r){e=cn(e),t=cn(t);var o=an.call(e);if(o!==an.call(t))return!1;switch(o){case"[object RegExp]":case"[object String]":return""+e==""+t;case"[object Number]":return+e!=+e?+t!=+t:0==+e?1/+e==1/t:+e==+t;case"[object Date]":case"[object Boolean]":return+e==+t;case"[object Symbol]":return"undefined"!=typeof Symbol&&Symbol.valueOf.call(e)===Symbol.valueOf.call(t)}var i="[object Array]"===o;if(!i){if("object"!=typeof e||"object"!=typeof t)return!1;var a=e.constructor,s=t.constructor;if(a!==s&&!("function"==typeof a&&a instanceof a&&"function"==typeof s&&s instanceof s)&&"constructor"in e&&"constructor"in t)return!1}r=r||[];var u=(n=n||[]).length;for(;u--;)if(n[u]===e)return r[u]===t;if(n.push(e),r.push(t),i){if((u=e.length)!==t.length)return!1;for(;u--;)if(!un(e[u],t[u],n,r))return!1}else{var c=Object.keys(e),l=void 0;if(u=c.length,Object.keys(t).length!==u)return!1;for(;u--;)if(l=c[u],!ln(t,l)||!un(e[l],t[l],n,r))return!1}return n.pop(),r.pop(),!0}(e,t,n,r)}function cn(e){return Mt(e)?e.peek():_(e)||zt(e)?w(e.entries()):O(e)||qt(e)?w(e.entries()):e}function ln(e,t){return Object.prototype.hasOwnProperty.call(e,t)}"object"==typeof __MOBX_DEVTOOLS_GLOBAL_HOOK__&&__MOBX_DEVTOOLS_GLOBAL_HOOK__.injectMobx({spy:qe,extras:{getDebugName:on},$mobx:"$mobx"}),e.$mobx="$mobx",e.ObservableMap=Gt,e.ObservableSet=Wt,e.Reaction=Re,e._allowStateChanges=function(e,t){var n,r=ie(e);try{n=t()}finally{ae(r)}return n},e._allowStateChangesInsideComputed=function(e){var t,n=De.computationDepth;De.computationDepth=0;try{t=e()}finally{De.computationDepth=n}return t},e._getAdministration=rn,e._getGlobalState=function(){return De},e._interceptReads=function(e,t,n){var r;if(zt(e)||Mt(e)||ue(e))r=rn(e);else{if(!tn(e))return f(!1);if("string"!=typeof t)return f(!1);r=rn(e,t)}return void 0!==r.dehancer?f(!1):(r.dehancer="function"==typeof t?t:n,function(){r.dehancer=void 0})},e._isComputingDerivation=function(){return null!==De.trackingDerivation},e._resetGlobalState=function(){var e=new xe;for(var t in e)-1===Se.indexOf(t)&&(De[t]=e[t]);De.allowStateChanges=!De.enforceActions},e.action=Ye,e.autorun=Qe,e.comparer=N,e.computed=te,e.configure=function(e){var t=e.enforceActions,n=e.computedRequiresReaction,r=e.computedConfigurable,o=e.disableErrorBoundaries,i=e.arrayBuffer,a=e.reactionScheduler;if(!0===e.isolateGlobalState&&((De.pendingReactions.length||De.inBatch||De.isRunningReactions)&&f("isolateGlobalState should be called before MobX is running any reactions"),Ee=!0,Ae&&(0==--c().__mobxInstanceCount&&(c().__mobxGlobals=void 0),De=new xe)),void 0!==t){var s=void 0;switch(t){case!0:case"observed":s=!0;break;case!1:case"never":s=!1;break;case"strict":case"always":s="strict";break;default:f("Invalid value for 'enforceActions': '"+t+"', expected 'never', 'always' or 'observed'")}De.enforceActions=s,De.allowStateChanges=!0!==s&&"strict"!==s}void 0!==n&&(De.computedRequiresReaction=!!n),void 0!==r&&(De.computedConfigurable=!!r),void 0!==o&&(!0===o&&console.warn("WARNING: Debug feature only. MobX will NOT recover from errors if this is on."),De.disableErrorBoundaries=!!o),"number"==typeof i&&Bt(i),a&&Ue(a)},e.createAtom=C,e.decorate=function(e,t){var n="function"==typeof e?e.prototype:e,r=function(e){var r=t[e];Array.isArray(r)||(r=[r]);var o=Object.getOwnPropertyDescriptor(n,e),i=r.reduce(function(t,r){return r(n,e,t)},o);i&&Object.defineProperty(n,e,i)};for(var o in t)r(o);return e},e.entries=function(e){return tn(e)?ht(e).map(function(t){return[t,e[t]]}):zt(e)?ht(e).map(function(t){return[t,e.get(t)]}):qt(e)?w(e.entries()):Mt(e)?e.map(function(e,t){return[t,e]}):f(!1)},e.extendObservable=ot,e.extendShallowObservable=function(e,t,n){return ot(e,t,n,H)},e.flow=function(e){1!==arguments.length&&f("Flow expects one 1 argument and cannot be used as decorator");var t=e.name||"<unnamed flow>";return function(){var n,r=arguments,o=++ut,i=Ye(t+" - runid: "+o+" - init",e).apply(this,r),a=void 0,s=new Promise(function(e,r){var s=0;function u(e){var n;a=void 0;try{n=Ye(t+" - runid: "+o+" - yield "+s++,i.next).call(i,e)}catch(e){return r(e)}l(n)}function c(e){var n;a=void 0;try{n=Ye(t+" - runid: "+o+" - yield "+s++,i.throw).call(i,e)}catch(e){return r(e)}l(n)}function l(t){if(!t||"function"!=typeof t.then)return t.done?e(t.value):(a=Promise.resolve(t.value)).then(u,c);t.then(l,r)}n=r,u(void 0)});return s.cancel=Ye(t+" - runid: "+o+" - cancel",function(){try{a&&ct(a);var e=i.return(),t=Promise.resolve(e.value);t.then(v,v),ct(t),n(new Error("FLOW_CANCELLED"))}catch(e){n(e)}}),s}},e.get=function(e,t){if(vt(e,t))return tn(e)?e[t]:zt(e)?e.get(t):Mt(e)?e[t]:f(!1)},e.getAtom=nn,e.getDebugName=on,e.getDependencyTree=it,e.getObserverTree=function(e,t){return st(nn(e,t))},e.has=vt,e.intercept=function(e,t,n){return"function"==typeof n?function(e,t,n){return rn(e,t).intercept(n)}(e,t,n):function(e,t){return rn(e).intercept(t)}(e,t)},e.isAction=function(e){return"function"==typeof e&&!0===e.isMobxAction},e.isArrayLike=function(e){return Array.isArray(e)||Mt(e)},e.isBoxedObservable=ue,e.isComputed=function(e){return arguments.length>1?f(!1):lt(e)},e.isComputedProp=function(e,t){return"string"!=typeof t?f(!1):lt(e,t)},e.isObservable=pt,e.isObservableArray=Mt,e.isObservableMap=zt,e.isObservableObject=tn,e.isObservableProp=function(e,t){return"string"!=typeof t?f(!1):ft(e,t)},e.isObservableSet=qt,e.keys=ht,e.observable=F,e.observe=function(e,t,n,r){return"function"==typeof n?function(e,t,n,r){return rn(e,t).observe(n,r)}(e,t,n,r):function(e,t,n){return rn(e).observe(t,n)}(e,t,n)},e.onBecomeObserved=tt,e.onBecomeUnobserved=nt,e.onReactionError=function(e){return De.globalReactionErrorHandlers.push(e),function(){var t=De.globalReactionErrorHandlers.indexOf(e);t>=0&&De.globalReactionErrorHandlers.splice(t,1)}},e.reaction=function(e,t,n){void 0===n&&(n=u),"boolean"==typeof n&&(n={fireImmediately:n});var r,o,i,a=n.name||"Reaction@"+l(),s=Ye(a,n.onError?(r=n.onError,o=t,function(){try{return o.apply(this,arguments)}catch(e){r.call(this,e)}}):t),c=!n.scheduler&&!n.delay,f=et(n),p=!0,h=!1,v=n.compareStructural?N.structural:n.equals||N.default,d=new Re(a,function(){p||c?y():h||(h=!0,f(y))},n.onError);function y(){if(h=!1,!d.isDisposed){var t=!1;d.track(function(){var n=e(d);t=p||!v(i,n),i=n}),p&&n.fireImmediately&&s(i,d),p||!0!==t||s(i,d),p&&(p=!1)}}return d.schedule(),d.getDisposer()},e.remove=function(e,t){if(tn(e))e.$mobx.remove(t);else if(zt(e))e.delete(t);else if(qt(e))e.delete(t);else{if(!Mt(e))return f(!1);"number"!=typeof t&&(t=parseInt(t,10)),p(t>=0,"Not a valid index: '"+t+"'"),e.splice(t,1)}},e.runInAction=function(e,t){return re("string"==typeof e?e:e.name||"<unnamed action>","function"==typeof e?e:t,this,void 0)},e.set=function e(t,n,r){if(2!==arguments.length||qt(t))if(tn(t)){var o=t.$mobx;o.values[n]?o.write(t,n,r):Yt(t,n,r,o.defaultEnhancer)}else if(zt(t))t.set(n,r);else if(qt(t))t.add(n);else{if(!Mt(t))return f(!1);"number"!=typeof n&&(n=parseInt(n,10)),p(n>=0,"Not a valid index: '"+n+"'"),Ie(),n>=t.length&&(t.length=n+1),t[n]=r,Ce()}else{Ie();var i=n;try{for(var a in i)e(t,a,i[a])}finally{Ce()}}},e.spy=qe,e.toJS=function(e,t){var n;return"boolean"==typeof t&&(t={detectCycles:t}),t||(t=dt),t.detectCycles=void 0===t.detectCycles?!0===t.recurseEverything:!0===t.detectCycles,t.detectCycles&&(n=new Map),function e(t,n,r){if(!n.recurseEverything&&!pt(t))return t;if("object"!=typeof t)return t;if(null===t)return null;if(t instanceof Date)return t;if(ue(t))return e(t.get(),n,r);if(pt(t)&&ht(t),!0===n.detectCycles&&null!==t&&r.has(t))return r.get(t);if(Mt(t)||Array.isArray(t)){var o=yt(r,t,[],n),i=t.map(function(t){return e(t,n,r)});o.length=i.length;for(var a=0,s=i.length;a<s;a++)o[a]=i[a];return o}if(qt(t)||Object.getPrototypeOf(t)===Set.prototype){if(!1===n.exportMapsAsObjects){var u=yt(r,t,new Set,n);return t.forEach(function(t){u.add(e(t,n,r))}),u}var c=yt(r,t,[],n);return t.forEach(function(t){c.push(e(t,n,r))}),c}if(zt(t)||Object.getPrototypeOf(t)===Map.prototype){if(!1===n.exportMapsAsObjects){var l=yt(r,t,new Map,n);return t.forEach(function(t,o){l.set(o,e(t,n,r))}),l}var f=yt(r,t,{},n);return t.forEach(function(t,o){f[o]=e(t,n,r)}),f}var p=yt(r,t,{},n);for(var h in t)p[h]=e(t[h],n,r);return p}(e,t,n)},e.trace=bt,e.transaction=mt,e.untracked=ge,e.values=function(e){return tn(e)?ht(e).map(function(t){return e[t]}):zt(e)?ht(e).map(function(t){return e.get(t)}):qt(e)?w(e.values()):Mt(e)?e.slice():f(!1)},e.when=function(e,t,n){return 1===arguments.length||t&&"object"==typeof t?function(e,t){var n,o=new Promise(function(o,i){var a=gt(e,o,r({},t,{onError:i}));n=function(){a(),i("WHEN_CANCELLED")}});return o.cancel=n,o}(e,t):gt(e,t,n||{})},Object.defineProperty(e,"__esModule",{value:!0})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mobx",
3
- "version": "4.12.0",
3
+ "version": "4.13.0",
4
4
  "description": "Simple, scalable state management.",
5
5
  "main": "lib/mobx.js",
6
6
  "umd:main": "lib/mobx.umd.js",