text: (function webpackUniversalModuleDefinition(root, factory) {
  	if(typeof exports === 'object' && typeof module === 'object')
  		module.exports = factory(require("vue"));
  	else if(typeof define === 'function' && define.amd)
  		define([], factory);
  	else if(typeof exports === 'object')
  		exports["vue-responsive-dash"] = factory(require("vue"));
  	else
  		root["vue-responsive-dash"] = factory(root["Vue"]);
  })((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {
  return /******/ (function(modules) { // webpackBootstrap
  /******/ 	// The module cache
  /******/ 	var installedModules = {};
  /******/
  /******/ 	// The require function
  /******/ 	function __webpack_require__(moduleId) {
  /******/
  /******/ 		// Check if module is in cache
  /******/ 		if(installedModules[moduleId]) {
  /******/ 			return installedModules[moduleId].exports;
  /******/ 		}
  /******/ 		// Create a new module (and put it into the cache)
  /******/ 		var module = installedModules[moduleId] = {
  /******/ 			i: moduleId,
  /******/ 			l: false,
  /******/ 			exports: {}
  /******/ 		};
  /******/
  /******/ 		// Execute the module function
  /******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
  /******/
  /******/ 		// Flag the module as loaded
  /******/ 		module.l = true;
  /******/
  /******/ 		// Return the exports of the module
  /******/ 		return module.exports;
  /******/ 	}
  /******/
  /******/
  /******/ 	// expose the modules object (__webpack_modules__)
  /******/ 	__webpack_require__.m = modules;
  /******/
  /******/ 	// expose the module cache
  /******/ 	__webpack_require__.c = installedModules;
  /******/
  /******/ 	// define getter function for harmony exports
  /******/ 	__webpack_require__.d = function(exports, name, getter) {
  /******/ 		if(!__webpack_require__.o(exports, name)) {
  /******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
  /******/ 		}
  /******/ 	};
  /******/
  /******/ 	// define __esModule on exports
  /******/ 	__webpack_require__.r = function(exports) {
  /******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
  /******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
  /******/ 		}
  /******/ 		Object.defineProperty(exports, '__esModule', { value: true });
  /******/ 	};
  /******/
  /******/ 	// create a fake namespace object
  /******/ 	// mode & 1: value is a module id, require it
  /******/ 	// mode & 2: merge all properties of value into the ns
  /******/ 	// mode & 4: return value when already ns object
  /******/ 	// mode & 8|1: behave like require
  /******/ 	__webpack_require__.t = function(value, mode) {
  /******/ 		if(mode & 1) value = __webpack_require__(value);
  /******/ 		if(mode & 8) return value;
  /******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
  /******/ 		var ns = Object.create(null);
  /******/ 		__webpack_require__.r(ns);
  /******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
  /******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
  /******/ 		return ns;
  /******/ 	};
  /******/
  /******/ 	// getDefaultExport function for compatibility with non-harmony modules
  /******/ 	__webpack_require__.n = function(module) {
  /******/ 		var getter = module && module.__esModule ?
  /******/ 			function getDefault() { return module['default']; } :
  /******/ 			function getModuleExports() { return module; };
  /******/ 		__webpack_require__.d(getter, 'a', getter);
  /******/ 		return getter;
  /******/ 	};
  /******/
  /******/ 	// Object.prototype.hasOwnProperty.call
  /******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
  /******/
  /******/ 	// __webpack_public_path__
  /******/ 	__webpack_require__.p = "";
  /******/
  /******/
  /******/ 	// Load entry module and return exports
  /******/ 	return __webpack_require__(__webpack_require__.s = "fb15");
  /******/ })
  /************************************************************************/
  /******/ ({
  
  /***/ "00ee":
  /***/ (function(module, exports, __webpack_require__) {
  
  var wellKnownSymbol = __webpack_require__("b622");
  
  var TO_STRING_TAG = wellKnownSymbol('toStringTag');
  var test = {};
  
  test[TO_STRING_TAG] = 'z';
  
  module.exports = String(test) === '[object z]';
  
  
  /***/ }),
  
  /***/ "01f3":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.Subscription = void 0;
  /**
   * Stores a handler. Manages execution meta data.
   * @class Subscription
   * @template TEventHandler
   */
  class Subscription {
      /**
       * Creates an instance of Subscription.
       *
       * @param {TEventHandler} handler The handler for the subscription.
       * @param {boolean} isOnce Indicates if the handler should only be executed once.
       */
      constructor(handler, isOnce) {
          this.handler = handler;
          this.isOnce = isOnce;
          /**
           * Indicates if the subscription has been executed before.
           */
          this.isExecuted = false;
      }
      /**
       * Executes the handler.
       *
       * @param {boolean} executeAsync True if the even should be executed async.
       * @param {*} scope The scope the scope of the event.
       * @param {IArguments} args The arguments for the event.
       */
      execute(executeAsync, scope, args) {
          if (!this.isOnce || !this.isExecuted) {
              this.isExecuted = true;
              var fn = this.handler;
              if (executeAsync) {
                  setTimeout(() => {
                      fn.apply(scope, args);
                  }, 1);
              }
              else {
                  fn.apply(scope, args);
              }
          }
      }
  }
  exports.Subscription = Subscription;
  
  
  /***/ }),
  
  /***/ "0366":
  /***/ (function(module, exports, __webpack_require__) {
  
  var aFunction = __webpack_require__("1c0b");
  
  // optional / simple context binding
  module.exports = function (fn, that, length) {
    aFunction(fn);
    if (that === undefined) return fn;
    switch (length) {
      case 0: return function () {
        return fn.call(that);
      };
      case 1: return function (a) {
        return fn.call(that, a);
      };
      case 2: return function (a, b) {
        return fn.call(that, a, b);
      };
      case 3: return function (a, b, c) {
        return fn.call(that, a, b, c);
      };
    }
    return function (/* ...args */) {
      return fn.apply(that, arguments);
    };
  };
  
  
  /***/ }),
  
  /***/ "04d1":
  /***/ (function(module, exports, __webpack_require__) {
  
  var userAgent = __webpack_require__("342f");
  
  var firefox = userAgent.match(/firefox\/(\d+)/i);
  
  module.exports = !!firefox && +firefox[1];
  
  
  /***/ }),
  
  /***/ "057f":
  /***/ (function(module, exports, __webpack_require__) {
  
  /* eslint-disable es/no-object-getownpropertynames -- safe */
  var toIndexedObject = __webpack_require__("fc6a");
  var $getOwnPropertyNames = __webpack_require__("241c").f;
  
  var toString = {}.toString;
  
  var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
    ? Object.getOwnPropertyNames(window) : [];
  
  var getWindowNames = function (it) {
    try {
      return $getOwnPropertyNames(it);
    } catch (error) {
      return windowNames.slice();
    }
  };
  
  // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
  module.exports.f = function getOwnPropertyNames(it) {
    return windowNames && toString.call(it) == '[object Window]'
      ? getWindowNames(it)
      : $getOwnPropertyNames(toIndexedObject(it));
  };
  
  
  /***/ }),
  
  /***/ "05d3":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  /*!
   * Strongly Typed Events for TypeScript - Core
   * https://github.com/KeesCBakker/StronlyTypedEvents/
   * http://keestalkstech.com
   *
   * Copyright Kees C. Bakker / KeesTalksTech
   * Released under the MIT license
   */
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.SubscriptionChangeEventDispatcher = exports.HandlingBase = exports.PromiseDispatcherBase = exports.PromiseSubscription = exports.DispatchError = exports.EventManagement = exports.EventListBase = exports.DispatcherWrapper = exports.DispatcherBase = exports.Subscription = void 0;
  const DispatcherBase_1 = __webpack_require__("8142");
  Object.defineProperty(exports, "DispatcherBase", { enumerable: true, get: function () { return DispatcherBase_1.DispatcherBase; } });
  const DispatchError_1 = __webpack_require__("65f7");
  Object.defineProperty(exports, "DispatchError", { enumerable: true, get: function () { return DispatchError_1.DispatchError; } });
  const DispatcherWrapper_1 = __webpack_require__("59c9");
  Object.defineProperty(exports, "DispatcherWrapper", { enumerable: true, get: function () { return DispatcherWrapper_1.DispatcherWrapper; } });
  const EventListBase_1 = __webpack_require__("1bc5");
  Object.defineProperty(exports, "EventListBase", { enumerable: true, get: function () { return EventListBase_1.EventListBase; } });
  const EventManagement_1 = __webpack_require__("09bd");
  Object.defineProperty(exports, "EventManagement", { enumerable: true, get: function () { return EventManagement_1.EventManagement; } });
  const HandlingBase_1 = __webpack_require__("b583");
  Object.defineProperty(exports, "HandlingBase", { enumerable: true, get: function () { return HandlingBase_1.HandlingBase; } });
  const PromiseDispatcherBase_1 = __webpack_require__("32ff");
  Object.defineProperty(exports, "PromiseDispatcherBase", { enumerable: true, get: function () { return PromiseDispatcherBase_1.PromiseDispatcherBase; } });
  const PromiseSubscription_1 = __webpack_require__("2af7");
  Object.defineProperty(exports, "PromiseSubscription", { enumerable: true, get: function () { return PromiseSubscription_1.PromiseSubscription; } });
  const Subscription_1 = __webpack_require__("01f3");
  Object.defineProperty(exports, "Subscription", { enumerable: true, get: function () { return Subscription_1.Subscription; } });
  const SubscriptionChangeEventHandler_1 = __webpack_require__("2bf0");
  Object.defineProperty(exports, "SubscriptionChangeEventDispatcher", { enumerable: true, get: function () { return SubscriptionChangeEventHandler_1.SubscriptionChangeEventDispatcher; } });
  
  
  /***/ }),
  
  /***/ "06cf":
  /***/ (function(module, exports, __webpack_require__) {
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var propertyIsEnumerableModule = __webpack_require__("d1e7");
  var createPropertyDescriptor = __webpack_require__("5c6c");
  var toIndexedObject = __webpack_require__("fc6a");
  var toPrimitive = __webpack_require__("c04e");
  var has = __webpack_require__("5135");
  var IE8_DOM_DEFINE = __webpack_require__("0cfb");
  
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
  var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
  
  // `Object.getOwnPropertyDescriptor` method
  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
  exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
    O = toIndexedObject(O);
    P = toPrimitive(P, true);
    if (IE8_DOM_DEFINE) try {
      return $getOwnPropertyDescriptor(O, P);
    } catch (error) { /* empty */ }
    if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);
  };
  
  
  /***/ }),
  
  /***/ "09bd":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.EventManagement = void 0;
  /**
   * Allows the user to interact with the event.
   *
   * @export
   * @class EventManagement
   * @implements {IEventManagement}
   */
  class EventManagement {
      /**
       * Creates an instance of EventManagement.
       * @param {() => void} unsub An unsubscribe handler.
       *
       * @memberOf EventManagement
       */
      constructor(unsub) {
          this.unsub = unsub;
          this.propagationStopped = false;
      }
      /**
       * Stops the propagation of the event.
       * Cannot be used when async dispatch is done.
       *
       * @memberOf EventManagement
       */
      stopPropagation() {
          this.propagationStopped = true;
      }
  }
  exports.EventManagement = EventManagement;
  
  
  /***/ }),
  
  /***/ "0cfb":
  /***/ (function(module, exports, __webpack_require__) {
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var fails = __webpack_require__("d039");
  var createElement = __webpack_require__("cc12");
  
  // Thank's IE8 for his funny defineProperty
  module.exports = !DESCRIPTORS && !fails(function () {
    // eslint-disable-next-line es/no-object-defineproperty -- requied for testing
    return Object.defineProperty(createElement('div'), 'a', {
      get: function () { return 7; }
    }).a != 7;
  });
  
  
  /***/ }),
  
  /***/ "159b":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var DOMIterables = __webpack_require__("fdbc");
  var forEach = __webpack_require__("17c2");
  var createNonEnumerableProperty = __webpack_require__("9112");
  
  for (var COLLECTION_NAME in DOMIterables) {
    var Collection = global[COLLECTION_NAME];
    var CollectionPrototype = Collection && Collection.prototype;
    // some Chrome versions have non-configurable methods on DOMTokenList
    if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {
      createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);
    } catch (error) {
      CollectionPrototype.forEach = forEach;
    }
  }
  
  
  /***/ }),
  
  /***/ "15a4":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.SimpleEventList = void 0;
  const ste_core_1 = __webpack_require__("05d3");
  const SimpleEventDispatcher_1 = __webpack_require__("d694");
  /**
   * Storage class for multiple simple events that are accessible by name.
   * Events dispatchers are automatically created.
   */
  class SimpleEventList extends ste_core_1.EventListBase {
      /**
       * Creates a new SimpleEventList instance.
       */
      constructor() {
          super();
      }
      /**
       * Creates a new dispatcher instance.
       */
      createDispatcher() {
          return new SimpleEventDispatcher_1.SimpleEventDispatcher();
      }
  }
  exports.SimpleEventList = SimpleEventList;
  
  
  /***/ }),
  
  /***/ "17c2":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $forEach = __webpack_require__("b727").forEach;
  var arrayMethodIsStrict = __webpack_require__("a640");
  
  var STRICT_METHOD = arrayMethodIsStrict('forEach');
  
  // `Array.prototype.forEach` method implementation
  // https://tc39.es/ecma262/#sec-array.prototype.foreach
  module.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {
    return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  // eslint-disable-next-line es/no-array-prototype-foreach -- safe
  } : [].forEach;
  
  
  /***/ }),
  
  /***/ "1bc5":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.EventListBase = void 0;
  /**
   * Base class for event lists classes. Implements the get and remove.
   *
   * @export
   * @abstract
   * @class EventListBaset
   * @template TEventDispatcher The type of event dispatcher.
   */
  class EventListBase {
      constructor() {
          this._events = {};
      }
      /**
       * Gets the dispatcher associated with the name.
       *
       * @param {string} name The name of the event.
       * @returns {TEventDispatcher} The disptacher.
       *
       * @memberOf EventListBase
       */
      get(name) {
          let event = this._events[name];
          if (event) {
              return event;
          }
          event = this.createDispatcher();
          this._events[name] = event;
          return event;
      }
      /**
       * Removes the dispatcher associated with the name.
       *
       * @param {string} name
       *
       * @memberOf EventListBase
       */
      remove(name) {
          delete this._events[name];
      }
  }
  exports.EventListBase = EventListBase;
  
  
  /***/ }),
  
  /***/ "1be4":
  /***/ (function(module, exports, __webpack_require__) {
  
  var getBuiltIn = __webpack_require__("d066");
  
  module.exports = getBuiltIn('document', 'documentElement');
  
  
  /***/ }),
  
  /***/ "1c0b":
  /***/ (function(module, exports) {
  
  module.exports = function (it) {
    if (typeof it != 'function') {
      throw TypeError(String(it) + ' is not a function');
    } return it;
  };
  
  
  /***/ }),
  
  /***/ "1c7e":
  /***/ (function(module, exports, __webpack_require__) {
  
  var wellKnownSymbol = __webpack_require__("b622");
  
  var ITERATOR = wellKnownSymbol('iterator');
  var SAFE_CLOSING = false;
  
  try {
    var called = 0;
    var iteratorWithReturn = {
      next: function () {
        return { done: !!called++ };
      },
      'return': function () {
        SAFE_CLOSING = true;
      }
    };
    iteratorWithReturn[ITERATOR] = function () {
      return this;
    };
    // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing
    Array.from(iteratorWithReturn, function () { throw 2; });
  } catch (error) { /* empty */ }
  
  module.exports = function (exec, SKIP_CLOSING) {
    if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
    var ITERATION_SUPPORT = false;
    try {
      var object = {};
      object[ITERATOR] = function () {
        return {
          next: function () {
            return { done: ITERATION_SUPPORT = true };
          }
        };
      };
      exec(object);
    } catch (error) { /* empty */ }
    return ITERATION_SUPPORT;
  };
  
  
  /***/ }),
  
  /***/ "1d80":
  /***/ (function(module, exports) {
  
  // `RequireObjectCoercible` abstract operation
  // https://tc39.es/ecma262/#sec-requireobjectcoercible
  module.exports = function (it) {
    if (it == undefined) throw TypeError("Can't call method on " + it);
    return it;
  };
  
  
  /***/ }),
  
  /***/ "1dde":
  /***/ (function(module, exports, __webpack_require__) {
  
  var fails = __webpack_require__("d039");
  var wellKnownSymbol = __webpack_require__("b622");
  var V8_VERSION = __webpack_require__("2d00");
  
  var SPECIES = wellKnownSymbol('species');
  
  module.exports = function (METHOD_NAME) {
    // We can't use this feature detection in V8 since it causes
    // deoptimization and serious performance degradation
    // https://github.com/zloirock/core-js/issues/677
    return V8_VERSION >= 51 || !fails(function () {
      var array = [];
      var constructor = array.constructor = {};
      constructor[SPECIES] = function () {
        return { foo: 1 };
      };
      return array[METHOD_NAME](Boolean).foo !== 1;
    });
  };
  
  
  /***/ }),
  
  /***/ "23cb":
  /***/ (function(module, exports, __webpack_require__) {
  
  var toInteger = __webpack_require__("a691");
  
  var max = Math.max;
  var min = Math.min;
  
  // Helper for a popular repeating case of the spec:
  // Let integer be ? ToInteger(index).
  // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).
  module.exports = function (index, length) {
    var integer = toInteger(index);
    return integer < 0 ? max(integer + length, 0) : min(integer, length);
  };
  
  
  /***/ }),
  
  /***/ "23e7":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var getOwnPropertyDescriptor = __webpack_require__("06cf").f;
  var createNonEnumerableProperty = __webpack_require__("9112");
  var redefine = __webpack_require__("6eeb");
  var setGlobal = __webpack_require__("ce4e");
  var copyConstructorProperties = __webpack_require__("e893");
  var isForced = __webpack_require__("94ca");
  
  /*
    options.target      - name of the target object
    options.global      - target is the global object
    options.stat        - export as static methods of target
    options.proto       - export as prototype methods of target
    options.real        - real prototype method for the `pure` version
    options.forced      - export even if the native feature is available
    options.bind        - bind methods to the target, required for the `pure` version
    options.wrap        - wrap constructors to preventing global pollution, required for the `pure` version
    options.unsafe      - use the simple assignment of property instead of delete + defineProperty
    options.sham        - add a flag to not completely full polyfills
    options.enumerable  - export as enumerable property
    options.noTargetGet - prevent calling a getter on target
  */
  module.exports = function (options, source) {
    var TARGET = options.target;
    var GLOBAL = options.global;
    var STATIC = options.stat;
    var FORCED, target, key, targetProperty, sourceProperty, descriptor;
    if (GLOBAL) {
      target = global;
    } else if (STATIC) {
      target = global[TARGET] || setGlobal(TARGET, {});
    } else {
      target = (global[TARGET] || {}).prototype;
    }
    if (target) for (key in source) {
      sourceProperty = source[key];
      if (options.noTargetGet) {
        descriptor = getOwnPropertyDescriptor(target, key);
        targetProperty = descriptor && descriptor.value;
      } else targetProperty = target[key];
      FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);
      // contained in target
      if (!FORCED && targetProperty !== undefined) {
        if (typeof sourceProperty === typeof targetProperty) continue;
        copyConstructorProperties(sourceProperty, targetProperty);
      }
      // add a flag to not completely full polyfills
      if (options.sham || (targetProperty && targetProperty.sham)) {
        createNonEnumerableProperty(sourceProperty, 'sham', true);
      }
      // extend global
      redefine(target, key, sourceProperty, options);
    }
  };
  
  
  /***/ }),
  
  /***/ "241c":
  /***/ (function(module, exports, __webpack_require__) {
  
  var internalObjectKeys = __webpack_require__("ca84");
  var enumBugKeys = __webpack_require__("7839");
  
  var hiddenKeys = enumBugKeys.concat('length', 'prototype');
  
  // `Object.getOwnPropertyNames` method
  // https://tc39.es/ecma262/#sec-object.getownpropertynames
  // eslint-disable-next-line es/no-object-getownpropertynames -- safe
  exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
    return internalObjectKeys(O, hiddenKeys);
  };
  
  
  /***/ }),
  
  /***/ "24fb":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  
  /*
    MIT License http://www.opensource.org/licenses/mit-license.php
    Author Tobias Koppers @sokra
  */
  // css base code, injected by the css-loader
  // eslint-disable-next-line func-names
  module.exports = function (useSourceMap) {
    var list = []; // return the list of modules as css string
  
    list.toString = function toString() {
      return this.map(function (item) {
        var content = cssWithMappingToString(item, useSourceMap);
  
        if (item[2]) {
          return "@media ".concat(item[2], " {").concat(content, "}");
        }
  
        return content;
      }).join('');
    }; // import a list of modules into the list
    // eslint-disable-next-line func-names
  
  
    list.i = function (modules, mediaQuery, dedupe) {
      if (typeof modules === 'string') {
        // eslint-disable-next-line no-param-reassign
        modules = [[null, modules, '']];
      }
  
      var alreadyImportedModules = {};
  
      if (dedupe) {
        for (var i = 0; i < this.length; i++) {
          // eslint-disable-next-line prefer-destructuring
          var id = this[i][0];
  
          if (id != null) {
            alreadyImportedModules[id] = true;
          }
        }
      }
  
      for (var _i = 0; _i < modules.length; _i++) {
        var item = [].concat(modules[_i]);
  
        if (dedupe && alreadyImportedModules[item[0]]) {
          // eslint-disable-next-line no-continue
          continue;
        }
  
        if (mediaQuery) {
          if (!item[2]) {
            item[2] = mediaQuery;
          } else {
            item[2] = "".concat(mediaQuery, " and ").concat(item[2]);
          }
        }
  
        list.push(item);
      }
    };
  
    return list;
  };
  
  function cssWithMappingToString(item, useSourceMap) {
    var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring
  
    var cssMapping = item[3];
  
    if (!cssMapping) {
      return content;
    }
  
    if (useSourceMap && typeof btoa === 'function') {
      var sourceMapping = toComment(cssMapping);
      var sourceURLs = cssMapping.sources.map(function (source) {
        return "/*# sourceURL=".concat(cssMapping.sourceRoot || '').concat(source, " */");
      });
      return [content].concat(sourceURLs).concat([sourceMapping]).join('\n');
    }
  
    return [content].join('\n');
  } // Adapted from convert-source-map (MIT)
  
  
  function toComment(sourceMap) {
    // eslint-disable-next-line no-undef
    var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));
    var data = "sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(base64);
    return "/*# ".concat(data, " */");
  }
  
  /***/ }),
  
  /***/ "2532":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var notARegExp = __webpack_require__("5a34");
  var requireObjectCoercible = __webpack_require__("1d80");
  var correctIsRegExpLogic = __webpack_require__("ab13");
  
  // `String.prototype.includes` method
  // https://tc39.es/ecma262/#sec-string.prototype.includes
  $({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {
    includes: function includes(searchString /* , position = 0 */) {
      return !!~String(requireObjectCoercible(this))
        .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined);
    }
  });
  
  
  /***/ }),
  
  /***/ "25ea":
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_v16_dist_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_v16_dist_index_js_ref_0_1_DashLayout_vue_vue_type_style_index_0_id_09f23364_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("f9ad");
  /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_v16_dist_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_v16_dist_index_js_ref_0_1_DashLayout_vue_vue_type_style_index_0_id_09f23364_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_v16_dist_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_v16_dist_index_js_ref_0_1_DashLayout_vue_vue_type_style_index_0_id_09f23364_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0__);
  /* unused harmony reexport * */
  
  
  /***/ }),
  
  /***/ "2a62":
  /***/ (function(module, exports, __webpack_require__) {
  
  var anObject = __webpack_require__("825a");
  
  module.exports = function (iterator) {
    var returnMethod = iterator['return'];
    if (returnMethod !== undefined) {
      return anObject(returnMethod.call(iterator)).value;
    }
  };
  
  
  /***/ }),
  
  /***/ "2af7":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.PromiseSubscription = void 0;
  /**
   * Subscription implementation for events with promises.
   *
   * @export
   * @class PromiseSubscription
   * @implements {ISubscription<TEventHandler>}
   * @template TEventHandler The type of event handler.
   */
  class PromiseSubscription {
      /**
       * Creates an instance of PromiseSubscription.
       * @param {TEventHandler} handler The handler for the subscription.
       * @param {boolean} isOnce Indicates if the handler should only be executed once.
       *
       * @memberOf PromiseSubscription
       */
      constructor(handler, isOnce) {
          this.handler = handler;
          this.isOnce = isOnce;
          /**
           * Indicates if the subscription has been executed before.
           *
           * @memberOf PromiseSubscription
           */
          this.isExecuted = false;
      }
      /**
       * Executes the handler.
       *
       * @param {boolean} executeAsync True if the even should be executed async.
       * @param {*} scope The scope the scope of the event.
       * @param {IArguments} args The arguments for the event.
       *
       * @memberOf PromiseSubscription
       */
      async execute(executeAsync, scope, args) {
          if (!this.isOnce || !this.isExecuted) {
              this.isExecuted = true;
              //TODO: do we need to cast to any -- seems yuck
              var fn = this.handler;
              if (executeAsync) {
                  setTimeout(() => {
                      fn.apply(scope, args);
                  }, 1);
                  return;
              }
              let result = fn.apply(scope, args);
              await result;
          }
      }
  }
  exports.PromiseSubscription = PromiseSubscription;
  
  
  /***/ }),
  
  /***/ "2bf0":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.SubscriptionChangeEventDispatcher = void 0;
  const __1 = __webpack_require__("05d3");
  /**
   * Dispatcher for subscription changes.
   *
   * @export
   * @class SubscriptionChangeEventDispatcher
   * @extends {DispatcherBase<SubscriptionChangeEventHandler>}
   */
  class SubscriptionChangeEventDispatcher extends __1.DispatcherBase {
      /**
       * Dispatches the event.
       *
       * @param {number} count The currrent number of subscriptions.
       *
       * @memberOf SubscriptionChangeEventDispatcher
       */
      dispatch(count) {
          this._dispatch(false, this, arguments);
      }
  }
  exports.SubscriptionChangeEventDispatcher = SubscriptionChangeEventDispatcher;
  
  
  /***/ }),
  
  /***/ "2d00":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var userAgent = __webpack_require__("342f");
  
  var process = global.process;
  var versions = process && process.versions;
  var v8 = versions && versions.v8;
  var match, version;
  
  if (v8) {
    match = v8.split('.');
    version = match[0] < 4 ? 1 : match[0] + match[1];
  } else if (userAgent) {
    match = userAgent.match(/Edge\/(\d+)/);
    if (!match || match[1] >= 74) {
      match = userAgent.match(/Chrome\/(\d+)/);
      if (match) version = match[1];
    }
  }
  
  module.exports = version && +version;
  
  
  /***/ }),
  
  /***/ "32ff":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.PromiseDispatcherBase = void 0;
  const __1 = __webpack_require__("05d3");
  /**
   * Dispatcher base for dispatchers that use promises. Each promise
   * is awaited before the next is dispatched, unless the event is
   * dispatched with the executeAsync flag.
   *
   * @export
   * @abstract
   * @class PromiseDispatcherBase
   * @extends {DispatcherBase<TEventHandler>}
   * @template TEventHandler The type of event handler.
   */
  class PromiseDispatcherBase extends __1.DispatcherBase {
      /**
       * The normal dispatch cannot be used in this class.
       *
       * @protected
       * @param {boolean} executeAsync `True` if the even should be executed async.
       * @param {*} scope The scope of the event. The scope becomes the `this` for handler.
       * @param {IArguments} args The arguments for the event.
       * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.
       *
       * @memberOf DispatcherBase
       */
      _dispatch(executeAsync, scope, args) {
          throw new __1.DispatchError("_dispatch not supported. Use _dispatchAsPromise.");
      }
      /**
       * Crates a new subscription.
       *
       * @protected
       * @param {TEventHandler} handler The handler.
       * @param {boolean} isOnce Indicates if the handler should only run once.
       * @returns {ISubscription<TEventHandler>} The subscription.
       *
       * @memberOf PromiseDispatcherBase
       */
      createSubscription(handler, isOnce) {
          return new __1.PromiseSubscription(handler, isOnce);
      }
      /**
       * Generic dispatch will dispatch the handlers with the given arguments.
       *
       * @protected
       * @param {boolean} executeAsync `True` if the even should be executed async.
       * @param {*} scope The scope of the event. The scope becomes the `this` for handler.
       * @param {IArguments} args The arguments for the event.
       * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.
       *
       * @memberOf DispatcherBase
       */
      async _dispatchAsPromise(executeAsync, scope, args) {
          //execute on a copy because of bug #9
          for (let sub of [...this._subscriptions]) {
              let ev = new __1.EventManagement(() => this.unsub(sub.handler));
              let nargs = Array.prototype.slice.call(args);
              nargs.push(ev);
              let ps = sub;
              await ps.execute(executeAsync, scope, nargs);
              //cleanup subs that are no longer needed
              this.cleanup(sub);
              if (!executeAsync && ev.propagationStopped) {
                  return { propagationStopped: true };
              }
          }
          if (executeAsync) {
              return null;
          }
          return { propagationStopped: false };
      }
  }
  exports.PromiseDispatcherBase = PromiseDispatcherBase;
  
  
  /***/ }),
  
  /***/ "342f":
  /***/ (function(module, exports, __webpack_require__) {
  
  var getBuiltIn = __webpack_require__("d066");
  
  module.exports = getBuiltIn('navigator', 'userAgent') || '';
  
  
  /***/ }),
  
  /***/ "35a1":
  /***/ (function(module, exports, __webpack_require__) {
  
  var classof = __webpack_require__("f5df");
  var Iterators = __webpack_require__("3f8c");
  var wellKnownSymbol = __webpack_require__("b622");
  
  var ITERATOR = wellKnownSymbol('iterator');
  
  module.exports = function (it) {
    if (it != undefined) return it[ITERATOR]
      || it['@@iterator']
      || Iterators[classof(it)];
  };
  
  
  /***/ }),
  
  /***/ "37e8":
  /***/ (function(module, exports, __webpack_require__) {
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var definePropertyModule = __webpack_require__("9bf2");
  var anObject = __webpack_require__("825a");
  var objectKeys = __webpack_require__("df75");
  
  // `Object.defineProperties` method
  // https://tc39.es/ecma262/#sec-object.defineproperties
  // eslint-disable-next-line es/no-object-defineproperties -- safe
  module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {
    anObject(O);
    var keys = objectKeys(Properties);
    var length = keys.length;
    var index = 0;
    var key;
    while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);
    return O;
  };
  
  
  /***/ }),
  
  /***/ "3b31":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.SimpleEventHandlingBase = void 0;
  const ste_core_1 = __webpack_require__("05d3");
  const SimpleEventList_1 = __webpack_require__("15a4");
  /**
   * Extends objects with signal event handling capabilities.
   */
  class SimpleEventHandlingBase extends ste_core_1.HandlingBase {
      constructor() {
          super(new SimpleEventList_1.SimpleEventList());
      }
  }
  exports.SimpleEventHandlingBase = SimpleEventHandlingBase;
  
  
  /***/ }),
  
  /***/ "3bbe":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isObject = __webpack_require__("861d");
  
  module.exports = function (it) {
    if (!isObject(it) && it !== null) {
      throw TypeError("Can't set " + String(it) + ' as a prototype');
    } return it;
  };
  
  
  /***/ }),
  
  /***/ "3ca3":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var charAt = __webpack_require__("6547").charAt;
  var InternalStateModule = __webpack_require__("69f3");
  var defineIterator = __webpack_require__("7dd0");
  
  var STRING_ITERATOR = 'String Iterator';
  var setInternalState = InternalStateModule.set;
  var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);
  
  // `String.prototype[@@iterator]` method
  // https://tc39.es/ecma262/#sec-string.prototype-@@iterator
  defineIterator(String, 'String', function (iterated) {
    setInternalState(this, {
      type: STRING_ITERATOR,
      string: String(iterated),
      index: 0
    });
  // `%StringIteratorPrototype%.next` method
  // https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next
  }, function next() {
    var state = getInternalState(this);
    var string = state.string;
    var index = state.index;
    var point;
    if (index >= string.length) return { value: undefined, done: true };
    point = charAt(string, index);
    state.index += point.length;
    return { value: point, done: false };
  });
  
  
  /***/ }),
  
  /***/ "3f8c":
  /***/ (function(module, exports) {
  
  module.exports = {};
  
  
  /***/ }),
  
  /***/ "428f":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  
  module.exports = global;
  
  
  /***/ }),
  
  /***/ "44ad":
  /***/ (function(module, exports, __webpack_require__) {
  
  var fails = __webpack_require__("d039");
  var classof = __webpack_require__("c6b6");
  
  var split = ''.split;
  
  // fallback for non-array-like ES3 and non-enumerable old V8 strings
  module.exports = fails(function () {
    // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346
    // eslint-disable-next-line no-prototype-builtins -- safe
    return !Object('z').propertyIsEnumerable(0);
  }) ? function (it) {
    return classof(it) == 'String' ? split.call(it, '') : Object(it);
  } : Object;
  
  
  /***/ }),
  
  /***/ "44d2":
  /***/ (function(module, exports, __webpack_require__) {
  
  var wellKnownSymbol = __webpack_require__("b622");
  var create = __webpack_require__("7c73");
  var definePropertyModule = __webpack_require__("9bf2");
  
  var UNSCOPABLES = wellKnownSymbol('unscopables');
  var ArrayPrototype = Array.prototype;
  
  // Array.prototype[@@unscopables]
  // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
  if (ArrayPrototype[UNSCOPABLES] == undefined) {
    definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {
      configurable: true,
      value: create(null)
    });
  }
  
  // add a key to Array.prototype[@@unscopables]
  module.exports = function (key) {
    ArrayPrototype[UNSCOPABLES][key] = true;
  };
  
  
  /***/ }),
  
  /***/ "44e7":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isObject = __webpack_require__("861d");
  var classof = __webpack_require__("c6b6");
  var wellKnownSymbol = __webpack_require__("b622");
  
  var MATCH = wellKnownSymbol('match');
  
  // `IsRegExp` abstract operation
  // https://tc39.es/ecma262/#sec-isregexp
  module.exports = function (it) {
    var isRegExp;
    return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');
  };
  
  
  /***/ }),
  
  /***/ "4930":
  /***/ (function(module, exports, __webpack_require__) {
  
  /* eslint-disable es/no-symbol -- required for testing */
  var V8_VERSION = __webpack_require__("2d00");
  var fails = __webpack_require__("d039");
  
  // eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
  module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
    var symbol = Symbol();
    // Chrome 38 Symbol has incorrect toString conversion
    // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
    return !String(symbol) || !(Object(symbol) instanceof Symbol) ||
      // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
      !Symbol.sham && V8_VERSION && V8_VERSION < 41;
  });
  
  
  /***/ }),
  
  /***/ "499e":
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  // ESM COMPAT FLAG
  __webpack_require__.r(__webpack_exports__);
  
  // EXPORTS
  __webpack_require__.d(__webpack_exports__, "default", function() { return /* binding */ addStylesClient; });
  
  // CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/listToStyles.js
  /**
   * Translates the list format produced by css-loader into something
   * easier to manipulate.
   */
  function listToStyles (parentId, list) {
    var styles = []
    var newStyles = {}
    for (var i = 0; i < list.length; i++) {
      var item = list[i]
      var id = item[0]
      var css = item[1]
      var media = item[2]
      var sourceMap = item[3]
      var part = {
        id: parentId + ':' + i,
        css: css,
        media: media,
        sourceMap: sourceMap
      }
      if (!newStyles[id]) {
        styles.push(newStyles[id] = { id: id, parts: [part] })
      } else {
        newStyles[id].parts.push(part)
      }
    }
    return styles
  }
  
  // CONCATENATED MODULE: ./node_modules/vue-style-loader/lib/addStylesClient.js
  /*
    MIT License http://www.opensource.org/licenses/mit-license.php
    Author Tobias Koppers @sokra
    Modified by Evan You @yyx990803
  */
  
  
  
  var hasDocument = typeof document !== 'undefined'
  
  if (typeof DEBUG !== 'undefined' && DEBUG) {
    if (!hasDocument) {
      throw new Error(
      'vue-style-loader cannot be used in a non-browser environment. ' +
      "Use { target: 'node' } in your Webpack config to indicate a server-rendering environment."
    ) }
  }
  
  /*
  type StyleObject = {
    id: number;
    parts: Array<StyleObjectPart>
  }
  
  type StyleObjectPart = {
    css: string;
    media: string;
    sourceMap: ?string
  }
  */
  
  var stylesInDom = {/*
    [id: number]: {
      id: number,
      refs: number,
      parts: Array<(obj?: StyleObjectPart) => void>
    }
  */}
  
  var head = hasDocument && (document.head || document.getElementsByTagName('head')[0])
  var singletonElement = null
  var singletonCounter = 0
  var isProduction = false
  var noop = function () {}
  var options = null
  var ssrIdKey = 'data-vue-ssr-id'
  
  // Force single-tag solution on IE6-9, which has a hard limit on the # of <style>
  // tags it will allow on a page
  var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase())
  
  function addStylesClient (parentId, list, _isProduction, _options) {
    isProduction = _isProduction
  
    options = _options || {}
  
    var styles = listToStyles(parentId, list)
    addStylesToDom(styles)
  
    return function update (newList) {
      var mayRemove = []
      for (var i = 0; i < styles.length; i++) {
        var item = styles[i]
        var domStyle = stylesInDom[item.id]
        domStyle.refs--
        mayRemove.push(domStyle)
      }
      if (newList) {
        styles = listToStyles(parentId, newList)
        addStylesToDom(styles)
      } else {
        styles = []
      }
      for (var i = 0; i < mayRemove.length; i++) {
        var domStyle = mayRemove[i]
        if (domStyle.refs === 0) {
          for (var j = 0; j < domStyle.parts.length; j++) {
            domStyle.parts[j]()
          }
          delete stylesInDom[domStyle.id]
        }
      }
    }
  }
  
  function addStylesToDom (styles /* Array<StyleObject> */) {
    for (var i = 0; i < styles.length; i++) {
      var item = styles[i]
      var domStyle = stylesInDom[item.id]
      if (domStyle) {
        domStyle.refs++
        for (var j = 0; j < domStyle.parts.length; j++) {
          domStyle.parts[j](item.parts[j])
        }
        for (; j < item.parts.length; j++) {
          domStyle.parts.push(addStyle(item.parts[j]))
        }
        if (domStyle.parts.length > item.parts.length) {
          domStyle.parts.length = item.parts.length
        }
      } else {
        var parts = []
        for (var j = 0; j < item.parts.length; j++) {
          parts.push(addStyle(item.parts[j]))
        }
        stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }
      }
    }
  }
  
  function createStyleElement () {
    var styleElement = document.createElement('style')
    styleElement.type = 'text/css'
    head.appendChild(styleElement)
    return styleElement
  }
  
  function addStyle (obj /* StyleObjectPart */) {
    var update, remove
    var styleElement = document.querySelector('style[' + ssrIdKey + '~="' + obj.id + '"]')
  
    if (styleElement) {
      if (isProduction) {
        // has SSR styles and in production mode.
        // simply do nothing.
        return noop
      } else {
        // has SSR styles but in dev mode.
        // for some reason Chrome can't handle source map in server-rendered
        // style tags - source maps in <style> only works if the style tag is
        // created and inserted dynamically. So we remove the server rendered
        // styles and inject new ones.
        styleElement.parentNode.removeChild(styleElement)
      }
    }
  
    if (isOldIE) {
      // use singleton mode for IE9.
      var styleIndex = singletonCounter++
      styleElement = singletonElement || (singletonElement = createStyleElement())
      update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)
      remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)
    } else {
      // use multi-style-tag mode in all other cases
      styleElement = createStyleElement()
      update = applyToTag.bind(null, styleElement)
      remove = function () {
        styleElement.parentNode.removeChild(styleElement)
      }
    }
  
    update(obj)
  
    return function updateStyle (newObj /* StyleObjectPart */) {
      if (newObj) {
        if (newObj.css === obj.css &&
            newObj.media === obj.media &&
            newObj.sourceMap === obj.sourceMap) {
          return
        }
        update(obj = newObj)
      } else {
        remove()
      }
    }
  }
  
  var replaceText = (function () {
    var textStore = []
  
    return function (index, replacement) {
      textStore[index] = replacement
      return textStore.filter(Boolean).join('\n')
    }
  })()
  
  function applyToSingletonTag (styleElement, index, remove, obj) {
    var css = remove ? '' : obj.css
  
    if (styleElement.styleSheet) {
      styleElement.styleSheet.cssText = replaceText(index, css)
    } else {
      var cssNode = document.createTextNode(css)
      var childNodes = styleElement.childNodes
      if (childNodes[index]) styleElement.removeChild(childNodes[index])
      if (childNodes.length) {
        styleElement.insertBefore(cssNode, childNodes[index])
      } else {
        styleElement.appendChild(cssNode)
      }
    }
  }
  
  function applyToTag (styleElement, obj) {
    var css = obj.css
    var media = obj.media
    var sourceMap = obj.sourceMap
  
    if (media) {
      styleElement.setAttribute('media', media)
    }
    if (options.ssrId) {
      styleElement.setAttribute(ssrIdKey, obj.id)
    }
  
    if (sourceMap) {
      // https://developer.chrome.com/devtools/docs/javascript-debugging
      // this makes source maps inside style tags work properly in Chrome
      css += '\n/*# sourceURL=' + sourceMap.sources[0] + ' */'
      // http://stackoverflow.com/a/26603875
      css += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'
    }
  
    if (styleElement.styleSheet) {
      styleElement.styleSheet.cssText = css
    } else {
      while (styleElement.firstChild) {
        styleElement.removeChild(styleElement.firstChild)
      }
      styleElement.appendChild(document.createTextNode(css))
    }
  }
  
  
  /***/ }),
  
  /***/ "4d64":
  /***/ (function(module, exports, __webpack_require__) {
  
  var toIndexedObject = __webpack_require__("fc6a");
  var toLength = __webpack_require__("50c4");
  var toAbsoluteIndex = __webpack_require__("23cb");
  
  // `Array.prototype.{ indexOf, includes }` methods implementation
  var createMethod = function (IS_INCLUDES) {
    return function ($this, el, fromIndex) {
      var O = toIndexedObject($this);
      var length = toLength(O.length);
      var index = toAbsoluteIndex(fromIndex, length);
      var value;
      // Array#includes uses SameValueZero equality algorithm
      // eslint-disable-next-line no-self-compare -- NaN check
      if (IS_INCLUDES && el != el) while (length > index) {
        value = O[index++];
        // eslint-disable-next-line no-self-compare -- NaN check
        if (value != value) return true;
      // Array#indexOf ignores holes, Array#includes - not
      } else for (;length > index; index++) {
        if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;
      } return !IS_INCLUDES && -1;
    };
  };
  
  module.exports = {
    // `Array.prototype.includes` method
    // https://tc39.es/ecma262/#sec-array.prototype.includes
    includes: createMethod(true),
    // `Array.prototype.indexOf` method
    // https://tc39.es/ecma262/#sec-array.prototype.indexof
    indexOf: createMethod(false)
  };
  
  
  /***/ }),
  
  /***/ "4de4":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var $filter = __webpack_require__("b727").filter;
  var arrayMethodHasSpeciesSupport = __webpack_require__("1dde");
  
  var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');
  
  // `Array.prototype.filter` method
  // https://tc39.es/ecma262/#sec-array.prototype.filter
  // with adding support of @@species
  $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
    filter: function filter(callbackfn /* , thisArg */) {
      return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
    }
  });
  
  
  /***/ }),
  
  /***/ "4df4":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var bind = __webpack_require__("0366");
  var toObject = __webpack_require__("7b0b");
  var callWithSafeIterationClosing = __webpack_require__("9bdd");
  var isArrayIteratorMethod = __webpack_require__("e95a");
  var toLength = __webpack_require__("50c4");
  var createProperty = __webpack_require__("8418");
  var getIteratorMethod = __webpack_require__("35a1");
  
  // `Array.from` method implementation
  // https://tc39.es/ecma262/#sec-array.from
  module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var argumentsLength = arguments.length;
    var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var iteratorMethod = getIteratorMethod(O);
    var index = 0;
    var length, result, step, iterator, next, value;
    if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);
    // if the target is not iterable or it's an array with the default iterator - use a simple case
    if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {
      iterator = iteratorMethod.call(O);
      next = iterator.next;
      result = new C();
      for (;!(step = next.call(iterator)).done; index++) {
        value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
        createProperty(result, index, value);
      }
    } else {
      length = toLength(O.length);
      result = new C(length);
      for (;length > index; index++) {
        value = mapping ? mapfn(O[index], index) : O[index];
        createProperty(result, index, value);
      }
    }
    result.length = index;
    return result;
  };
  
  
  /***/ }),
  
  /***/ "4e82":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var aFunction = __webpack_require__("1c0b");
  var toObject = __webpack_require__("7b0b");
  var toLength = __webpack_require__("50c4");
  var fails = __webpack_require__("d039");
  var internalSort = __webpack_require__("addb");
  var arrayMethodIsStrict = __webpack_require__("a640");
  var FF = __webpack_require__("04d1");
  var IE_OR_EDGE = __webpack_require__("d998");
  var V8 = __webpack_require__("2d00");
  var WEBKIT = __webpack_require__("512c");
  
  var test = [];
  var nativeSort = test.sort;
  
  // IE8-
  var FAILS_ON_UNDEFINED = fails(function () {
    test.sort(undefined);
  });
  // V8 bug
  var FAILS_ON_NULL = fails(function () {
    test.sort(null);
  });
  // Old WebKit
  var STRICT_METHOD = arrayMethodIsStrict('sort');
  
  var STABLE_SORT = !fails(function () {
    // feature detection can be too slow, so check engines versions
    if (V8) return V8 < 70;
    if (FF && FF > 3) return;
    if (IE_OR_EDGE) return true;
    if (WEBKIT) return WEBKIT < 603;
  
    var result = '';
    var code, chr, value, index;
  
    // generate an array with more 512 elements (Chakra and old V8 fails only in this case)
    for (code = 65; code < 76; code++) {
      chr = String.fromCharCode(code);
  
      switch (code) {
        case 66: case 69: case 70: case 72: value = 3; break;
        case 68: case 71: value = 4; break;
        default: value = 2;
      }
  
      for (index = 0; index < 47; index++) {
        test.push({ k: chr + index, v: value });
      }
    }
  
    test.sort(function (a, b) { return b.v - a.v; });
  
    for (index = 0; index < test.length; index++) {
      chr = test[index].k.charAt(0);
      if (result.charAt(result.length - 1) !== chr) result += chr;
    }
  
    return result !== 'DGBEFHACIJK';
  });
  
  var FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;
  
  var getSortCompare = function (comparefn) {
    return function (x, y) {
      if (y === undefined) return -1;
      if (x === undefined) return 1;
      if (comparefn !== undefined) return +comparefn(x, y) || 0;
      return String(x) > String(y) ? 1 : -1;
    };
  };
  
  // `Array.prototype.sort` method
  // https://tc39.es/ecma262/#sec-array.prototype.sort
  $({ target: 'Array', proto: true, forced: FORCED }, {
    sort: function sort(comparefn) {
      if (comparefn !== undefined) aFunction(comparefn);
  
      var array = toObject(this);
  
      if (STABLE_SORT) return comparefn === undefined ? nativeSort.call(array) : nativeSort.call(array, comparefn);
  
      var items = [];
      var arrayLength = toLength(array.length);
      var itemsLength, index;
  
      for (index = 0; index < arrayLength; index++) {
        if (index in array) items.push(array[index]);
      }
  
      items = internalSort(items, getSortCompare(comparefn));
      itemsLength = items.length;
      index = 0;
  
      while (index < itemsLength) array[index] = items[index++];
      while (index < arrayLength) delete array[index++];
  
      return array;
    }
  });
  
  
  /***/ }),
  
  /***/ "5014":
  /***/ (function(module, exports, __webpack_require__) {
  
  /* interact.js 1.10.11 | https://interactjs.io/license */
  !function(t){ true?module.exports=t():undefined}((function(){var t={};Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=function(t){return!(!t||!t.Window)&&t instanceof t.Window};var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.init=o,e.getWindow=function(e){return(0,t.default)(e)?e:(e.ownerDocument||e).defaultView||r.window},e.window=e.realWindow=void 0;var n=void 0;e.realWindow=n;var r=void 0;function o(t){e.realWindow=n=t;var o=t.document.createTextNode("");o.ownerDocument!==t.document&&"function"==typeof t.wrap&&t.wrap(o)===o&&(t=t.wrap(t)),e.window=r=t}e.window=r,"undefined"!=typeof window&&window&&o(window);var i={};function a(t){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.defineProperty(i,"__esModule",{value:!0}),i.default=void 0;var s=function(t){return!!t&&"object"===a(t)},l=function(t){return"function"==typeof t},u={window:function(n){return n===e.window||(0,t.default)(n)},docFrag:function(t){return s(t)&&11===t.nodeType},object:s,func:l,number:function(t){return"number"==typeof t},bool:function(t){return"boolean"==typeof t},string:function(t){return"string"==typeof t},element:function(t){if(!t||"object"!==a(t))return!1;var n=e.getWindow(t)||e.window;return/object|function/.test(a(n.Element))?t instanceof n.Element:1===t.nodeType&&"string"==typeof t.nodeName},plainObject:function(t){return s(t)&&!!t.constructor&&/function Object\b/.test(t.constructor.toString())},array:function(t){return s(t)&&void 0!==t.length&&l(t.splice)}};i.default=u;var c={};function f(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.prepared.axis;"x"===n?(e.coords.cur.page.y=e.coords.start.page.y,e.coords.cur.client.y=e.coords.start.client.y,e.coords.velocity.client.y=0,e.coords.velocity.page.y=0):"y"===n&&(e.coords.cur.page.x=e.coords.start.page.x,e.coords.cur.client.x=e.coords.start.client.x,e.coords.velocity.client.x=0,e.coords.velocity.page.x=0)}}function d(t){var e=t.iEvent,n=t.interaction;if("drag"===n.prepared.name){var r=n.prepared.axis;if("x"===r||"y"===r){var o="x"===r?"y":"x";e.page[o]=n.coords.start.page[o],e.client[o]=n.coords.start.client[o],e.delta[o]=0}}}Object.defineProperty(c,"__esModule",{value:!0}),c.default=void 0;var p={id:"actions/drag",install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.draggable=p.draggable,e.map.drag=p,e.methodDict.drag="draggable",r.actions.drag=p.defaults},listeners:{"interactions:before-action-move":f,"interactions:action-resume":f,"interactions:action-move":d,"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.buttons,o=n.options.drag;if(o&&o.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(r&n.options.drag.mouseButtons)))return t.action={name:"drag",axis:"start"===o.lockAxis?o.startAxis:o.lockAxis},!1}},draggable:function(t){return i.default.object(t)?(this.options.drag.enabled=!1!==t.enabled,this.setPerAction("drag",t),this.setOnEvents("drag",t),/^(xy|x|y|start)$/.test(t.lockAxis)&&(this.options.drag.lockAxis=t.lockAxis),/^(xy|x|y)$/.test(t.startAxis)&&(this.options.drag.startAxis=t.startAxis),this):i.default.bool(t)?(this.options.drag.enabled=t,this):this.options.drag},beforeMove:f,move:d,defaults:{startAxis:"xy",lockAxis:"xy"},getCursor:function(){return"move"}},v=p;c.default=v;var h={};Object.defineProperty(h,"__esModule",{value:!0}),h.default=void 0;var g={init:function(t){var e=t;g.document=e.document,g.DocumentFragment=e.DocumentFragment||y,g.SVGElement=e.SVGElement||y,g.SVGSVGElement=e.SVGSVGElement||y,g.SVGElementInstance=e.SVGElementInstance||y,g.Element=e.Element||y,g.HTMLElement=e.HTMLElement||g.Element,g.Event=e.Event,g.Touch=e.Touch||y,g.PointerEvent=e.PointerEvent||e.MSPointerEvent},document:null,DocumentFragment:null,SVGElement:null,SVGSVGElement:null,SVGElementInstance:null,Element:null,HTMLElement:null,Event:null,Touch:null,PointerEvent:null};function y(){}var m=g;h.default=m;var b={};Object.defineProperty(b,"__esModule",{value:!0}),b.default=void 0;var x={init:function(t){var e=h.default.Element,n=t.navigator||{};x.supportsTouch="ontouchstart"in t||i.default.func(t.DocumentTouch)&&h.default.document instanceof t.DocumentTouch,x.supportsPointerEvent=!1!==n.pointerEnabled&&!!h.default.PointerEvent,x.isIOS=/iP(hone|od|ad)/.test(n.platform),x.isIOS7=/iP(hone|od|ad)/.test(n.platform)&&/OS 7[^\d]/.test(n.appVersion),x.isIe9=/MSIE 9/.test(n.userAgent),x.isOperaMobile="Opera"===n.appName&&x.supportsTouch&&/Presto/.test(n.userAgent),x.prefixedMatchesSelector="matches"in e.prototype?"matches":"webkitMatchesSelector"in e.prototype?"webkitMatchesSelector":"mozMatchesSelector"in e.prototype?"mozMatchesSelector":"oMatchesSelector"in e.prototype?"oMatchesSelector":"msMatchesSelector",x.pEventTypes=x.supportsPointerEvent?h.default.PointerEvent===t.MSPointerEvent?{up:"MSPointerUp",down:"MSPointerDown",over:"mouseover",out:"mouseout",move:"MSPointerMove",cancel:"MSPointerCancel"}:{up:"pointerup",down:"pointerdown",over:"pointerover",out:"pointerout",move:"pointermove",cancel:"pointercancel"}:null,x.wheelEvent=h.default.document&&"onmousewheel"in h.default.document?"mousewheel":"wheel"},supportsTouch:null,supportsPointerEvent:null,isIOS7:null,isIOS:null,isIe9:null,isOperaMobile:null,prefixedMatchesSelector:null,pEventTypes:null,wheelEvent:null},w=x;b.default=w;var _={};function P(t){var e=t.parentNode;if(i.default.docFrag(e)){for(;(e=e.host)&&i.default.docFrag(e););return e}return e}function O(t,n){return e.window!==e.realWindow&&(n=n.replace(/\/deep\//g," ")),t[b.default.prefixedMatchesSelector](n)}Object.defineProperty(_,"__esModule",{value:!0}),_.nodeContains=function(t,e){if(t.contains)return t.contains(e);for(;e;){if(e===t)return!0;e=e.parentNode}return!1},_.closest=function(t,e){for(;i.default.element(t);){if(O(t,e))return t;t=P(t)}return null},_.parentNode=P,_.matchesSelector=O,_.indexOfDeepestElement=function(t){for(var n,r=[],o=0;o<t.length;o++){var i=t[o],a=t[n];if(i&&o!==n)if(a){var s=S(i),l=S(a);if(s!==i.ownerDocument)if(l!==i.ownerDocument)if(s!==l){r=r.length?r:E(a);var u=void 0;if(a instanceof h.default.HTMLElement&&i instanceof h.default.SVGElement&&!(i instanceof h.default.SVGSVGElement)){if(i===l)continue;u=i.ownerSVGElement}else u=i;for(var c=E(u,a.ownerDocument),f=0;c[f]&&c[f]===r[f];)f++;var d=[c[f-1],c[f],r[f]];if(d[0])for(var p=d[0].lastChild;p;){if(p===d[1]){n=o,r=c;break}if(p===d[2])break;p=p.previousSibling}}else v=i,g=a,void 0,void 0,(parseInt(e.getWindow(v).getComputedStyle(v).zIndex,10)||0)>=(parseInt(e.getWindow(g).getComputedStyle(g).zIndex,10)||0)&&(n=o);else n=o}else n=o}var v,g;return n},_.matchesUpTo=function(t,e,n){for(;i.default.element(t);){if(O(t,e))return!0;if((t=P(t))===n)return O(t,e)}return!1},_.getActualElement=function(t){return t.correspondingUseElement||t},_.getScrollXY=T,_.getElementClientRect=M,_.getElementRect=function(t){var n=M(t);if(!b.default.isIOS7&&n){var r=T(e.getWindow(t));n.left+=r.x,n.right+=r.x,n.top+=r.y,n.bottom+=r.y}return n},_.getPath=function(t){for(var e=[];t;)e.push(t),t=P(t);return e},_.trySelector=function(t){return!!i.default.string(t)&&(h.default.document.querySelector(t),!0)};var S=function(t){return t.parentNode||t.host};function E(t,e){for(var n,r=[],o=t;(n=S(o))&&o!==e&&n!==o.ownerDocument;)r.unshift(o),o=n;return r}function T(t){return{x:(t=t||e.window).scrollX||t.document.documentElement.scrollLeft,y:t.scrollY||t.document.documentElement.scrollTop}}function M(t){var e=t instanceof h.default.SVGElement?t.getBoundingClientRect():t.getClientRects()[0];return e&&{left:e.left,right:e.right,top:e.top,bottom:e.bottom,width:e.width||e.right-e.left,height:e.height||e.bottom-e.top}}var j={};Object.defineProperty(j,"__esModule",{value:!0}),j.default=function(t,e){for(var n in e)t[n]=e[n];return t};var k={};function I(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function D(t,e,n){return"parent"===t?(0,_.parentNode)(n):"self"===t?e.getRect(n):(0,_.closest)(n,t)}Object.defineProperty(k,"__esModule",{value:!0}),k.getStringOptionResult=D,k.resolveRectLike=function(t,e,n,r){var o,a=t;return i.default.string(a)?a=D(a,e,n):i.default.func(a)&&(a=a.apply(void 0,function(t){if(Array.isArray(t))return I(t)}(o=r)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(o)||function(t,e){if(t){if("string"==typeof t)return I(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?I(t,e):void 0}}(o)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())),i.default.element(a)&&(a=(0,_.getElementRect)(a)),a},k.rectToXY=function(t){return t&&{x:"x"in t?t.x:t.left,y:"y"in t?t.y:t.top}},k.xywhToTlbr=function(t){return!t||"left"in t&&"top"in t||((t=(0,j.default)({},t)).left=t.x||0,t.top=t.y||0,t.right=t.right||t.left+t.width,t.bottom=t.bottom||t.top+t.height),t},k.tlbrToXywh=function(t){return!t||"x"in t&&"y"in t||((t=(0,j.default)({},t)).x=t.left||0,t.y=t.top||0,t.width=t.width||(t.right||0)-t.x,t.height=t.height||(t.bottom||0)-t.y),t},k.addEdges=function(t,e,n){t.left&&(e.left+=n.x),t.right&&(e.right+=n.x),t.top&&(e.top+=n.y),t.bottom&&(e.bottom+=n.y),e.width=e.right-e.left,e.height=e.bottom-e.top};var A={};Object.defineProperty(A,"__esModule",{value:!0}),A.default=function(t,e,n){var r=t.options[n],o=r&&r.origin||t.options.origin,i=(0,k.resolveRectLike)(o,t,e,[t&&e]);return(0,k.rectToXY)(i)||{x:0,y:0}};var R={};function z(t){return t.trim().split(/ +/)}Object.defineProperty(R,"__esModule",{value:!0}),R.default=function t(e,n,r){if(r=r||{},i.default.string(e)&&-1!==e.search(" ")&&(e=z(e)),i.default.array(e))return e.reduce((function(e,o){return(0,j.default)(e,t(o,n,r))}),r);if(i.default.object(e)&&(n=e,e=""),i.default.func(n))r[e]=r[e]||[],r[e].push(n);else if(i.default.array(n))for(var o=0;o<n.length;o++){var a;a=n[o],t(e,a,r)}else if(i.default.object(n))for(var s in n){var l=z(s).map((function(t){return"".concat(e).concat(t)}));t(l,n[s],r)}return r};var C={};Object.defineProperty(C,"__esModule",{value:!0}),C.default=void 0,C.default=function(t,e){return Math.sqrt(t*t+e*e)};var F={};function X(t,e){for(var n in e){var r=X.prefixedPropREs,o=!1;for(var i in r)if(0===n.indexOf(i)&&r[i].test(n)){o=!0;break}o||"function"==typeof e[n]||(t[n]=e[n])}return t}Object.defineProperty(F,"__esModule",{value:!0}),F.default=void 0,X.prefixedPropREs={webkit:/(Movement[XY]|Radius[XY]|RotationAngle|Force)$/,moz:/(Pressure)$/};var Y=X;F.default=Y;var B={};function W(t){return t instanceof h.default.Event||t instanceof h.default.Touch}function L(t,e,n){return t=t||"page",(n=n||{}).x=e[t+"X"],n.y=e[t+"Y"],n}function U(t,e){return e=e||{x:0,y:0},b.default.isOperaMobile&&W(t)?(L("screen",t,e),e.x+=window.scrollX,e.y+=window.scrollY):L("page",t,e),e}function V(t,e){return e=e||{},b.default.isOperaMobile&&W(t)?L("screen",t,e):L("client",t,e),e}function N(t){var e=[];return i.default.array(t)?(e[0]=t[0],e[1]=t[1]):"touchend"===t.type?1===t.touches.length?(e[0]=t.touches[0],e[1]=t.changedTouches[0]):0===t.touches.length&&(e[0]=t.changedTouches[0],e[1]=t.changedTouches[1]):(e[0]=t.touches[0],e[1]=t.touches[1]),e}function q(t){for(var e={pageX:0,pageY:0,clientX:0,clientY:0,screenX:0,screenY:0},n=0;n<t.length;n++){var r=t[n];for(var o in e)e[o]+=r[o]}for(var i in e)e[i]/=t.length;return e}Object.defineProperty(B,"__esModule",{value:!0}),B.copyCoords=function(t,e){t.page=t.page||{},t.page.x=e.page.x,t.page.y=e.page.y,t.client=t.client||{},t.client.x=e.client.x,t.client.y=e.client.y,t.timeStamp=e.timeStamp},B.setCoordDeltas=function(t,e,n){t.page.x=n.page.x-e.page.x,t.page.y=n.page.y-e.page.y,t.client.x=n.client.x-e.client.x,t.client.y=n.client.y-e.client.y,t.timeStamp=n.timeStamp-e.timeStamp},B.setCoordVelocity=function(t,e){var n=Math.max(e.timeStamp/1e3,.001);t.page.x=e.page.x/n,t.page.y=e.page.y/n,t.client.x=e.client.x/n,t.client.y=e.client.y/n,t.timeStamp=n},B.setZeroCoords=function(t){t.page.x=0,t.page.y=0,t.client.x=0,t.client.y=0},B.isNativePointer=W,B.getXY=L,B.getPageXY=U,B.getClientXY=V,B.getPointerId=function(t){return i.default.number(t.pointerId)?t.pointerId:t.identifier},B.setCoords=function(t,e,n){var r=e.length>1?q(e):e[0];U(r,t.page),V(r,t.client),t.timeStamp=n},B.getTouchPair=N,B.pointerAverage=q,B.touchBBox=function(t){if(!t.length)return null;var e=N(t),n=Math.min(e[0].pageX,e[1].pageX),r=Math.min(e[0].pageY,e[1].pageY),o=Math.max(e[0].pageX,e[1].pageX),i=Math.max(e[0].pageY,e[1].pageY);return{x:n,y:r,left:n,top:r,right:o,bottom:i,width:o-n,height:i-r}},B.touchDistance=function(t,e){var n=e+"X",r=e+"Y",o=N(t),i=o[0][n]-o[1][n],a=o[0][r]-o[1][r];return(0,C.default)(i,a)},B.touchAngle=function(t,e){var n=e+"X",r=e+"Y",o=N(t),i=o[1][n]-o[0][n],a=o[1][r]-o[0][r];return 180*Math.atan2(a,i)/Math.PI},B.getPointerType=function(t){return i.default.string(t.pointerType)?t.pointerType:i.default.number(t.pointerType)?[void 0,void 0,"touch","pen","mouse"][t.pointerType]:/touch/.test(t.type||"")||t instanceof h.default.Touch?"touch":"mouse"},B.getEventTargets=function(t){var e=i.default.func(t.composedPath)?t.composedPath():t.path;return[_.getActualElement(e?e[0]:t.target),_.getActualElement(t.currentTarget)]},B.newCoords=function(){return{page:{x:0,y:0},client:{x:0,y:0},timeStamp:0}},B.coordsToEvent=function(t){return{coords:t,get page(){return this.coords.page},get client(){return this.coords.client},get timeStamp(){return this.coords.timeStamp},get pageX(){return this.coords.page.x},get pageY(){return this.coords.page.y},get clientX(){return this.coords.client.x},get clientY(){return this.coords.client.y},get pointerId(){return this.coords.pointerId},get target(){return this.coords.target},get type(){return this.coords.type},get pointerType(){return this.coords.pointerType},get buttons(){return this.coords.buttons},preventDefault:function(){}}},Object.defineProperty(B,"pointerExtend",{enumerable:!0,get:function(){return F.default}});var $={};function G(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function H(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty($,"__esModule",{value:!0}),$.BaseEvent=void 0;var K=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),H(this,"type",void 0),H(this,"target",void 0),H(this,"currentTarget",void 0),H(this,"interactable",void 0),H(this,"_interaction",void 0),H(this,"timeStamp",void 0),H(this,"immediatePropagationStopped",!1),H(this,"propagationStopped",!1),this._interaction=e}var e,n;return e=t,(n=[{key:"preventDefault",value:function(){}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}}])&&G(e.prototype,n),t}();$.BaseEvent=K,Object.defineProperty(K.prototype,"interaction",{get:function(){return this._interaction._proxy},set:function(){}});var Z={};Object.defineProperty(Z,"__esModule",{value:!0}),Z.find=Z.findIndex=Z.from=Z.merge=Z.remove=Z.contains=void 0,Z.contains=function(t,e){return-1!==t.indexOf(e)},Z.remove=function(t,e){return t.splice(t.indexOf(e),1)};var J=function(t,e){for(var n=0;n<e.length;n++){var r=e[n];t.push(r)}return t};Z.merge=J,Z.from=function(t){return J([],t)};var Q=function(t,e){for(var n=0;n<t.length;n++)if(e(t[n],n,t))return n;return-1};Z.findIndex=Q,Z.find=function(t,e){return t[Q(t,e)]};var tt={};function et(t){return(et="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function nt(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function rt(t,e){return(rt=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function ot(t,e){return!e||"object"!==et(e)&&"function"!=typeof e?it(t):e}function it(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function at(t){return(at=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function st(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(tt,"__esModule",{value:!0}),tt.DropEvent=void 0;var lt=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&rt(t,e)}(a,t);var e,n,r,o,i=(r=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=at(r);if(o){var n=at(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return ot(this,t)});function a(t,e,n){var r;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,a),st(it(r=i.call(this,e._interaction)),"target",void 0),st(it(r),"dropzone",void 0),st(it(r),"dragEvent",void 0),st(it(r),"relatedTarget",void 0),st(it(r),"draggable",void 0),st(it(r),"timeStamp",void 0),st(it(r),"propagationStopped",!1),st(it(r),"immediatePropagationStopped",!1);var o="dragleave"===n?t.prev:t.cur,s=o.element,l=o.dropzone;return r.type=n,r.target=s,r.currentTarget=s,r.dropzone=l,r.dragEvent=e,r.relatedTarget=e.target,r.draggable=e.interactable,r.timeStamp=e.timeStamp,r}return e=a,(n=[{key:"reject",value:function(){var t=this,e=this._interaction.dropState;if("dropactivate"===this.type||this.dropzone&&e.cur.dropzone===this.dropzone&&e.cur.element===this.target)if(e.prev.dropzone=this.dropzone,e.prev.element=this.target,e.rejected=!0,e.events.enter=null,this.stopImmediatePropagation(),"dropactivate"===this.type){var n=e.activeDrops,r=Z.findIndex(n,(function(e){var n=e.dropzone,r=e.element;return n===t.dropzone&&r===t.target}));e.activeDrops.splice(r,1);var o=new a(e,this.dragEvent,"dropdeactivate");o.dropzone=this.dropzone,o.target=this.target,this.dropzone.fire(o)}else this.dropzone.fire(new a(e,this.dragEvent,"dragleave"))}},{key:"preventDefault",value:function(){}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}}])&&nt(e.prototype,n),a}($.BaseEvent);tt.DropEvent=lt;var ut={};function ct(t,e){for(var n=0;n<t.slice().length;n++){var r=t.slice()[n],o=r.dropzone,i=r.element;e.dropzone=o,e.target=i,o.fire(e),e.propagationStopped=e.immediatePropagationStopped=!1}}function ft(t,e){for(var n=function(t,e){for(var n=t.interactables,r=[],o=0;o<n.list.length;o++){var a=n.list[o];if(a.options.drop.enabled){var s=a.options.drop.accept;if(!(i.default.element(s)&&s!==e||i.default.string(s)&&!_.matchesSelector(e,s)||i.default.func(s)&&!s({dropzone:a,draggableElement:e})))for(var l=i.default.string(a.target)?a._context.querySelectorAll(a.target):i.default.array(a.target)?a.target:[a.target],u=0;u<l.length;u++){var c=l[u];c!==e&&r.push({dropzone:a,element:c,rect:a.getRect(c)})}}}return r}(t,e),r=0;r<n.length;r++){var o=n[r];o.rect=o.dropzone.getRect(o.element)}return n}function dt(t,e,n){for(var r=t.dropState,o=t.interactable,i=t.element,a=[],s=0;s<r.activeDrops.length;s++){var l=r.activeDrops[s],u=l.dropzone,c=l.element,f=l.rect;a.push(u.dropCheck(e,n,o,i,c,f)?c:null)}var d=_.indexOfDeepestElement(a);return r.activeDrops[d]||null}function pt(t,e,n){var r=t.dropState,o={enter:null,leave:null,activate:null,deactivate:null,move:null,drop:null};return"dragstart"===n.type&&(o.activate=new tt.DropEvent(r,n,"dropactivate"),o.activate.target=null,o.activate.dropzone=null),"dragend"===n.type&&(o.deactivate=new tt.DropEvent(r,n,"dropdeactivate"),o.deactivate.target=null,o.deactivate.dropzone=null),r.rejected||(r.cur.element!==r.prev.element&&(r.prev.dropzone&&(o.leave=new tt.DropEvent(r,n,"dragleave"),n.dragLeave=o.leave.target=r.prev.element,n.prevDropzone=o.leave.dropzone=r.prev.dropzone),r.cur.dropzone&&(o.enter=new tt.DropEvent(r,n,"dragenter"),n.dragEnter=r.cur.element,n.dropzone=r.cur.dropzone)),"dragend"===n.type&&r.cur.dropzone&&(o.drop=new tt.DropEvent(r,n,"drop"),n.dropzone=r.cur.dropzone,n.relatedTarget=r.cur.element),"dragmove"===n.type&&r.cur.dropzone&&(o.move=new tt.DropEvent(r,n,"dropmove"),o.move.dragmove=n,n.dropzone=r.cur.dropzone)),o}function vt(t,e){var n=t.dropState,r=n.activeDrops,o=n.cur,i=n.prev;e.leave&&i.dropzone.fire(e.leave),e.enter&&o.dropzone.fire(e.enter),e.move&&o.dropzone.fire(e.move),e.drop&&o.dropzone.fire(e.drop),e.deactivate&&ct(r,e.deactivate),n.prev.dropzone=o.dropzone,n.prev.element=o.element}function ht(t,e){var n=t.interaction,r=t.iEvent,o=t.event;if("dragmove"===r.type||"dragend"===r.type){var i=n.dropState;e.dynamicDrop&&(i.activeDrops=ft(e,n.element));var a=r,s=dt(n,a,o);i.rejected=i.rejected&&!!s&&s.dropzone===i.cur.dropzone&&s.element===i.cur.element,i.cur.dropzone=s&&s.dropzone,i.cur.element=s&&s.element,i.events=pt(n,0,a)}}Object.defineProperty(ut,"__esModule",{value:!0}),ut.default=void 0;var gt={id:"actions/drop",install:function(t){var e=t.actions,n=t.interactStatic,r=t.Interactable,o=t.defaults;t.usePlugin(c.default),r.prototype.dropzone=function(t){return function(t,e){if(i.default.object(e)){if(t.options.drop.enabled=!1!==e.enabled,e.listeners){var n=(0,R.default)(e.listeners),r=Object.keys(n).reduce((function(t,e){return t[/^(enter|leave)/.test(e)?"drag".concat(e):/^(activate|deactivate|move)/.test(e)?"drop".concat(e):e]=n[e],t}),{});t.off(t.options.drop.listeners),t.on(r),t.options.drop.listeners=r}return i.default.func(e.ondrop)&&t.on("drop",e.ondrop),i.default.func(e.ondropactivate)&&t.on("dropactivate",e.ondropactivate),i.default.func(e.ondropdeactivate)&&t.on("dropdeactivate",e.ondropdeactivate),i.default.func(e.ondragenter)&&t.on("dragenter",e.ondragenter),i.default.func(e.ondragleave)&&t.on("dragleave",e.ondragleave),i.default.func(e.ondropmove)&&t.on("dropmove",e.ondropmove),/^(pointer|center)$/.test(e.overlap)?t.options.drop.overlap=e.overlap:i.default.number(e.overlap)&&(t.options.drop.overlap=Math.max(Math.min(1,e.overlap),0)),"accept"in e&&(t.options.drop.accept=e.accept),"checker"in e&&(t.options.drop.checker=e.checker),t}return i.default.bool(e)?(t.options.drop.enabled=e,t):t.options.drop}(this,t)},r.prototype.dropCheck=function(t,e,n,r,o,a){return function(t,e,n,r,o,a,s){var l=!1;if(!(s=s||t.getRect(a)))return!!t.options.drop.checker&&t.options.drop.checker(e,n,l,t,a,r,o);var u=t.options.drop.overlap;if("pointer"===u){var c=(0,A.default)(r,o,"drag"),f=B.getPageXY(e);f.x+=c.x,f.y+=c.y;var d=f.x>s.left&&f.x<s.right,p=f.y>s.top&&f.y<s.bottom;l=d&&p}var v=r.getRect(o);if(v&&"center"===u){var h=v.left+v.width/2,g=v.top+v.height/2;l=h>=s.left&&h<=s.right&&g>=s.top&&g<=s.bottom}return v&&i.default.number(u)&&(l=Math.max(0,Math.min(s.right,v.right)-Math.max(s.left,v.left))*Math.max(0,Math.min(s.bottom,v.bottom)-Math.max(s.top,v.top))/(v.width*v.height)>=u),t.options.drop.checker&&(l=t.options.drop.checker(e,n,l,t,a,r,o)),l}(this,t,e,n,r,o,a)},n.dynamicDrop=function(e){return i.default.bool(e)?(t.dynamicDrop=e,n):t.dynamicDrop},(0,j.default)(e.phaselessTypes,{dragenter:!0,dragleave:!0,dropactivate:!0,dropdeactivate:!0,dropmove:!0,drop:!0}),e.methodDict.drop="dropzone",t.dynamicDrop=!1,o.actions.drop=gt.defaults},listeners:{"interactions:before-action-start":function(t){var e=t.interaction;"drag"===e.prepared.name&&(e.dropState={cur:{dropzone:null,element:null},prev:{dropzone:null,element:null},rejected:null,events:null,activeDrops:[]})},"interactions:after-action-start":function(t,e){var n=t.interaction,r=(t.event,t.iEvent);if("drag"===n.prepared.name){var o=n.dropState;o.activeDrops=null,o.events=null,o.activeDrops=ft(e,n.element),o.events=pt(n,0,r),o.events.activate&&(ct(o.activeDrops,o.events.activate),e.fire("actions/drop:start",{interaction:n,dragEvent:r}))}},"interactions:action-move":ht,"interactions:after-action-move":function(t,e){var n=t.interaction,r=t.iEvent;"drag"===n.prepared.name&&(vt(n,n.dropState.events),e.fire("actions/drop:move",{interaction:n,dragEvent:r}),n.dropState.events={})},"interactions:action-end":function(t,e){if("drag"===t.interaction.prepared.name){var n=t.interaction,r=t.iEvent;ht(t,e),vt(n,n.dropState.events),e.fire("actions/drop:end",{interaction:n,dragEvent:r})}},"interactions:stop":function(t){var e=t.interaction;if("drag"===e.prepared.name){var n=e.dropState;n&&(n.activeDrops=null,n.events=null,n.cur.dropzone=null,n.cur.element=null,n.prev.dropzone=null,n.prev.element=null,n.rejected=!1)}}},getActiveDrops:ft,getDrop:dt,getDropEvents:pt,fireDropEvents:vt,defaults:{enabled:!1,accept:null,overlap:"pointer"}},yt=gt;ut.default=yt;var mt={};function bt(t){var e=t.interaction,n=t.iEvent,r=t.phase;if("gesture"===e.prepared.name){var o=e.pointers.map((function(t){return t.pointer})),a="start"===r,s="end"===r,l=e.interactable.options.deltaSource;if(n.touches=[o[0],o[1]],a)n.distance=B.touchDistance(o,l),n.box=B.touchBBox(o),n.scale=1,n.ds=0,n.angle=B.touchAngle(o,l),n.da=0,e.gesture.startDistance=n.distance,e.gesture.startAngle=n.angle;else if(s){var u=e.prevEvent;n.distance=u.distance,n.box=u.box,n.scale=u.scale,n.ds=0,n.angle=u.angle,n.da=0}else n.distance=B.touchDistance(o,l),n.box=B.touchBBox(o),n.scale=n.distance/e.gesture.startDistance,n.angle=B.touchAngle(o,l),n.ds=n.scale-e.gesture.scale,n.da=n.angle-e.gesture.angle;e.gesture.distance=n.distance,e.gesture.angle=n.angle,i.default.number(n.scale)&&n.scale!==1/0&&!isNaN(n.scale)&&(e.gesture.scale=n.scale)}}Object.defineProperty(mt,"__esModule",{value:!0}),mt.default=void 0;var xt={id:"actions/gesture",before:["actions/drag","actions/resize"],install:function(t){var e=t.actions,n=t.Interactable,r=t.defaults;n.prototype.gesturable=function(t){return i.default.object(t)?(this.options.gesture.enabled=!1!==t.enabled,this.setPerAction("gesture",t),this.setOnEvents("gesture",t),this):i.default.bool(t)?(this.options.gesture.enabled=t,this):this.options.gesture},e.map.gesture=xt,e.methodDict.gesture="gesturable",r.actions.gesture=xt.defaults},listeners:{"interactions:action-start":bt,"interactions:action-move":bt,"interactions:action-end":bt,"interactions:new":function(t){t.interaction.gesture={angle:0,distance:0,scale:1,startAngle:0,startDistance:0}},"auto-start:check":function(t){if(!(t.interaction.pointers.length<2)){var e=t.interactable.options.gesture;if(e&&e.enabled)return t.action={name:"gesture"},!1}}},defaults:{},getCursor:function(){return""}},wt=xt;mt.default=wt;var _t={};function Pt(t,e,n,r,o,a,s){if(!e)return!1;if(!0===e){var l=i.default.number(a.width)?a.width:a.right-a.left,u=i.default.number(a.height)?a.height:a.bottom-a.top;if(s=Math.min(s,Math.abs(("left"===t||"right"===t?l:u)/2)),l<0&&("left"===t?t="right":"right"===t&&(t="left")),u<0&&("top"===t?t="bottom":"bottom"===t&&(t="top")),"left"===t)return n.x<(l>=0?a.left:a.right)+s;if("top"===t)return n.y<(u>=0?a.top:a.bottom)+s;if("right"===t)return n.x>(l>=0?a.right:a.left)-s;if("bottom"===t)return n.y>(u>=0?a.bottom:a.top)-s}return!!i.default.element(r)&&(i.default.element(e)?e===r:_.matchesUpTo(r,e,o))}function Ot(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.resizeAxes){var r=e;n.interactable.options.resize.square?("y"===n.resizeAxes?r.delta.x=r.delta.y:r.delta.y=r.delta.x,r.axes="xy"):(r.axes=n.resizeAxes,"x"===n.resizeAxes?r.delta.y=0:"y"===n.resizeAxes&&(r.delta.x=0))}}Object.defineProperty(_t,"__esModule",{value:!0}),_t.default=void 0;var St={id:"actions/resize",before:["actions/drag"],install:function(t){var e=t.actions,n=t.browser,r=t.Interactable,o=t.defaults;St.cursors=function(t){return t.isIe9?{x:"e-resize",y:"s-resize",xy:"se-resize",top:"n-resize",left:"w-resize",bottom:"s-resize",right:"e-resize",topleft:"se-resize",bottomright:"se-resize",topright:"ne-resize",bottomleft:"ne-resize"}:{x:"ew-resize",y:"ns-resize",xy:"nwse-resize",top:"ns-resize",left:"ew-resize",bottom:"ns-resize",right:"ew-resize",topleft:"nwse-resize",bottomright:"nwse-resize",topright:"nesw-resize",bottomleft:"nesw-resize"}}(n),St.defaultMargin=n.supportsTouch||n.supportsPointerEvent?20:10,r.prototype.resizable=function(e){return function(t,e,n){return i.default.object(e)?(t.options.resize.enabled=!1!==e.enabled,t.setPerAction("resize",e),t.setOnEvents("resize",e),i.default.string(e.axis)&&/^x$|^y$|^xy$/.test(e.axis)?t.options.resize.axis=e.axis:null===e.axis&&(t.options.resize.axis=n.defaults.actions.resize.axis),i.default.bool(e.preserveAspectRatio)?t.options.resize.preserveAspectRatio=e.preserveAspectRatio:i.default.bool(e.square)&&(t.options.resize.square=e.square),t):i.default.bool(e)?(t.options.resize.enabled=e,t):t.options.resize}(this,e,t)},e.map.resize=St,e.methodDict.resize="resizable",o.actions.resize=St.defaults},listeners:{"interactions:new":function(t){t.interaction.resizeAxes="xy"},"interactions:action-start":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,o=n.rect;n._rects={start:(0,j.default)({},o),corrected:(0,j.default)({},o),previous:(0,j.default)({},o),delta:{left:0,right:0,width:0,top:0,bottom:0,height:0}},r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}}(t),Ot(t)},"interactions:action-move":function(t){!function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e,o=n.interactable.options.resize.invert,i="reposition"===o||"negate"===o,a=n.rect,s=n._rects,l=s.start,u=s.corrected,c=s.delta,f=s.previous;if((0,j.default)(f,u),i){if((0,j.default)(u,a),"reposition"===o){if(u.top>u.bottom){var d=u.top;u.top=u.bottom,u.bottom=d}if(u.left>u.right){var p=u.left;u.left=u.right,u.right=p}}}else u.top=Math.min(a.top,l.bottom),u.bottom=Math.max(a.bottom,l.top),u.left=Math.min(a.left,l.right),u.right=Math.max(a.right,l.left);for(var v in u.width=u.right-u.left,u.height=u.bottom-u.top,u)c[v]=u[v]-f[v];r.edges=n.prepared.edges,r.rect=u,r.deltaRect=c}}(t),Ot(t)},"interactions:action-end":function(t){var e=t.iEvent,n=t.interaction;if("resize"===n.prepared.name&&n.prepared.edges){var r=e;r.edges=n.prepared.edges,r.rect=n._rects.corrected,r.deltaRect=n._rects.delta}},"auto-start:check":function(t){var e=t.interaction,n=t.interactable,r=t.element,o=t.rect,a=t.buttons;if(o){var s=(0,j.default)({},e.coords.cur.page),l=n.options.resize;if(l&&l.enabled&&(!e.pointerIsDown||!/mouse|pointer/.test(e.pointerType)||0!=(a&l.mouseButtons))){if(i.default.object(l.edges)){var u={left:!1,right:!1,top:!1,bottom:!1};for(var c in u)u[c]=Pt(c,l.edges[c],s,e._latestPointer.eventTarget,r,o,l.margin||St.defaultMargin);u.left=u.left&&!u.right,u.top=u.top&&!u.bottom,(u.left||u.right||u.top||u.bottom)&&(t.action={name:"resize",edges:u})}else{var f="y"!==l.axis&&s.x>o.right-St.defaultMargin,d="x"!==l.axis&&s.y>o.bottom-St.defaultMargin;(f||d)&&(t.action={name:"resize",axes:(f?"x":"")+(d?"y":"")})}return!t.action&&void 0}}}},defaults:{square:!1,preserveAspectRatio:!1,axis:"xy",margin:NaN,edges:null,invert:"none"},cursors:null,getCursor:function(t){var e=t.edges,n=t.axis,r=t.name,o=St.cursors,i=null;if(n)i=o[r+n];else if(e){for(var a="",s=["top","bottom","left","right"],l=0;l<s.length;l++){var u=s[l];e[u]&&(a+=u)}i=o[a]}return i},defaultMargin:null},Et=St;_t.default=Et;var Tt={};Object.defineProperty(Tt,"__esModule",{value:!0}),Tt.default=void 0;var Mt={id:"actions",install:function(t){t.usePlugin(mt.default),t.usePlugin(_t.default),t.usePlugin(c.default),t.usePlugin(ut.default)}};Tt.default=Mt;var jt={};Object.defineProperty(jt,"__esModule",{value:!0}),jt.default=void 0;var kt,It,Dt=0,At={request:function(t){return kt(t)},cancel:function(t){return It(t)},init:function(t){if(kt=t.requestAnimationFrame,It=t.cancelAnimationFrame,!kt)for(var e=["ms","moz","webkit","o"],n=0;n<e.length;n++){var r=e[n];kt=t["".concat(r,"RequestAnimationFrame")],It=t["".concat(r,"CancelAnimationFrame")]||t["".concat(r,"CancelRequestAnimationFrame")]}kt=kt&&kt.bind(t),It=It&&It.bind(t),kt||(kt=function(e){var n=Date.now(),r=Math.max(0,16-(n-Dt)),o=t.setTimeout((function(){e(n+r)}),r);return Dt=n+r,o},It=function(t){return clearTimeout(t)})}};jt.default=At;var Rt={};Object.defineProperty(Rt,"__esModule",{value:!0}),Rt.getContainer=Ct,Rt.getScroll=Ft,Rt.getScrollSize=function(t){return i.default.window(t)&&(t=window.document.body),{x:t.scrollWidth,y:t.scrollHeight}},Rt.getScrollSizeDelta=function(t,e){var n=t.interaction,r=t.element,o=n&&n.interactable.options[n.prepared.name].autoScroll;if(!o||!o.enabled)return e(),{x:0,y:0};var i=Ct(o.container,n.interactable,r),a=Ft(i);e();var s=Ft(i);return{x:s.x-a.x,y:s.y-a.y}},Rt.default=void 0;var zt={defaults:{enabled:!1,margin:60,container:null,speed:300},now:Date.now,interaction:null,i:0,x:0,y:0,isScrolling:!1,prevTime:0,margin:0,speed:0,start:function(t){zt.isScrolling=!0,jt.default.cancel(zt.i),t.autoScroll=zt,zt.interaction=t,zt.prevTime=zt.now(),zt.i=jt.default.request(zt.scroll)},stop:function(){zt.isScrolling=!1,zt.interaction&&(zt.interaction.autoScroll=null),jt.default.cancel(zt.i)},scroll:function(){var t=zt.interaction,e=t.interactable,n=t.element,r=t.prepared.name,o=e.options[r].autoScroll,a=Ct(o.container,e,n),s=zt.now(),l=(s-zt.prevTime)/1e3,u=o.speed*l;if(u>=1){var c={x:zt.x*u,y:zt.y*u};if(c.x||c.y){var f=Ft(a);i.default.window(a)?a.scrollBy(c.x,c.y):a&&(a.scrollLeft+=c.x,a.scrollTop+=c.y);var d=Ft(a),p={x:d.x-f.x,y:d.y-f.y};(p.x||p.y)&&e.fire({type:"autoscroll",target:n,interactable:e,delta:p,interaction:t,container:a})}zt.prevTime=s}zt.isScrolling&&(jt.default.cancel(zt.i),zt.i=jt.default.request(zt.scroll))},check:function(t,e){var n;return null==(n=t.options[e].autoScroll)?void 0:n.enabled},onInteractionMove:function(t){var e=t.interaction,n=t.pointer;if(e.interacting()&&zt.check(e.interactable,e.prepared.name))if(e.simulation)zt.x=zt.y=0;else{var r,o,a,s,l=e.interactable,u=e.element,c=e.prepared.name,f=l.options[c].autoScroll,d=Ct(f.container,l,u);if(i.default.window(d))s=n.clientX<zt.margin,r=n.clientY<zt.margin,o=n.clientX>d.innerWidth-zt.margin,a=n.clientY>d.innerHeight-zt.margin;else{var p=_.getElementClientRect(d);s=n.clientX<p.left+zt.margin,r=n.clientY<p.top+zt.margin,o=n.clientX>p.right-zt.margin,a=n.clientY>p.bottom-zt.margin}zt.x=o?1:s?-1:0,zt.y=a?1:r?-1:0,zt.isScrolling||(zt.margin=f.margin,zt.speed=f.speed,zt.start(e))}}};function Ct(t,n,r){return(i.default.string(t)?(0,k.getStringOptionResult)(t,n,r):t)||(0,e.getWindow)(r)}function Ft(t){return i.default.window(t)&&(t=window.document.body),{x:t.scrollLeft,y:t.scrollTop}}var Xt={id:"auto-scroll",install:function(t){var e=t.defaults,n=t.actions;t.autoScroll=zt,zt.now=function(){return t.now()},n.phaselessTypes.autoscroll=!0,e.perAction.autoScroll=zt.defaults},listeners:{"interactions:new":function(t){t.interaction.autoScroll=null},"interactions:destroy":function(t){t.interaction.autoScroll=null,zt.stop(),zt.interaction&&(zt.interaction=null)},"interactions:stop":zt.stop,"interactions:action-move":function(t){return zt.onInteractionMove(t)}}};Rt.default=Xt;var Yt={};Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.warnOnce=function(t,n){var r=!1;return function(){return r||(e.window.console.warn(n),r=!0),t.apply(this,arguments)}},Yt.copyAction=function(t,e){return t.name=e.name,t.axis=e.axis,t.edges=e.edges,t},Yt.sign=void 0,Yt.sign=function(t){return t>=0?1:-1};var Bt={};function Wt(t){return i.default.bool(t)?(this.options.styleCursor=t,this):null===t?(delete this.options.styleCursor,this):this.options.styleCursor}function Lt(t){return i.default.func(t)?(this.options.actionChecker=t,this):null===t?(delete this.options.actionChecker,this):this.options.actionChecker}Object.defineProperty(Bt,"__esModule",{value:!0}),Bt.default=void 0;var Ut={id:"auto-start/interactableMethods",install:function(t){var e=t.Interactable;e.prototype.getAction=function(e,n,r,o){var i=function(t,e,n,r,o){var i=t.getRect(r),a={action:null,interactable:t,interaction:n,element:r,rect:i,buttons:e.buttons||{0:1,1:4,3:8,4:16}[e.button]};return o.fire("auto-start:check",a),a.action}(this,n,r,o,t);return this.options.actionChecker?this.options.actionChecker(e,n,i,this,o,r):i},e.prototype.ignoreFrom=(0,Yt.warnOnce)((function(t){return this._backCompatOption("ignoreFrom",t)}),"Interactable.ignoreFrom() has been deprecated. Use Interactble.draggable({ignoreFrom: newValue})."),e.prototype.allowFrom=(0,Yt.warnOnce)((function(t){return this._backCompatOption("allowFrom",t)}),"Interactable.allowFrom() has been deprecated. Use Interactble.draggable({allowFrom: newValue})."),e.prototype.actionChecker=Lt,e.prototype.styleCursor=Wt}};Bt.default=Ut;var Vt={};function Nt(t,e,n,r,o){return e.testIgnoreAllow(e.options[t.name],n,r)&&e.options[t.name].enabled&&Ht(e,n,t,o)?t:null}function qt(t,e,n,r,o,i,a){for(var s=0,l=r.length;s<l;s++){var u=r[s],c=o[s],f=u.getAction(e,n,t,c);if(f){var d=Nt(f,u,c,i,a);if(d)return{action:d,interactable:u,element:c}}}return{action:null,interactable:null,element:null}}function $t(t,e,n,r,o){var a=[],s=[],l=r;function u(t){a.push(t),s.push(l)}for(;i.default.element(l);){a=[],s=[],o.interactables.forEachMatch(l,u);var c=qt(t,e,n,a,s,r,o);if(c.action&&!c.interactable.options[c.action.name].manualStart)return c;l=_.parentNode(l)}return{action:null,interactable:null,element:null}}function Gt(t,e,n){var r=e.action,o=e.interactable,i=e.element;r=r||{name:null},t.interactable=o,t.element=i,(0,Yt.copyAction)(t.prepared,r),t.rect=o&&r.name?o.getRect(i):null,Jt(t,n),n.fire("autoStart:prepared",{interaction:t})}function Ht(t,e,n,r){var o=t.options,i=o[n.name].max,a=o[n.name].maxPerElement,s=r.autoStart.maxInteractions,l=0,u=0,c=0;if(!(i&&a&&s))return!1;for(var f=0;f<r.interactions.list.length;f++){var d=r.interactions.list[f],p=d.prepared.name;if(d.interacting()){if(++l>=s)return!1;if(d.interactable===t){if((u+=p===n.name?1:0)>=i)return!1;if(d.element===e&&(c++,p===n.name&&c>=a))return!1}}}return s>0}function Kt(t,e){return i.default.number(t)?(e.autoStart.maxInteractions=t,this):e.autoStart.maxInteractions}function Zt(t,e,n){var r=n.autoStart.cursorElement;r&&r!==t&&(r.style.cursor=""),t.ownerDocument.documentElement.style.cursor=e,t.style.cursor=e,n.autoStart.cursorElement=e?t:null}function Jt(t,e){var n=t.interactable,r=t.element,o=t.prepared;if("mouse"===t.pointerType&&n&&n.options.styleCursor){var a="";if(o.name){var s=n.options[o.name].cursorChecker;a=i.default.func(s)?s(o,n,r,t._interacting):e.actions.map[o.name].getCursor(o)}Zt(t.element,a||"",e)}else e.autoStart.cursorElement&&Zt(e.autoStart.cursorElement,"",e)}Object.defineProperty(Vt,"__esModule",{value:!0}),Vt.default=void 0;var Qt={id:"auto-start/base",before:["actions"],install:function(t){var e=t.interactStatic,n=t.defaults;t.usePlugin(Bt.default),n.base.actionChecker=null,n.base.styleCursor=!0,(0,j.default)(n.perAction,{manualStart:!1,max:1/0,maxPerElement:1,allowFrom:null,ignoreFrom:null,mouseButtons:1}),e.maxInteractions=function(e){return Kt(e,t)},t.autoStart={maxInteractions:1/0,withinInteractionLimit:Ht,cursorElement:null}},listeners:{"interactions:down":function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;n.interacting()||Gt(n,$t(n,r,o,i,e),e)},"interactions:move":function(t,e){!function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;"mouse"!==n.pointerType||n.pointerIsDown||n.interacting()||Gt(n,$t(n,r,o,i,e),e)}(t,e),function(t,e){var n=t.interaction;if(n.pointerIsDown&&!n.interacting()&&n.pointerWasMoved&&n.prepared.name){e.fire("autoStart:before-start",t);var r=n.interactable,o=n.prepared.name;o&&r&&(r.options[o].manualStart||!Ht(r,n.element,n.prepared,e)?n.stop():(n.start(n.prepared,r,n.element),Jt(n,e)))}}(t,e)},"interactions:stop":function(t,e){var n=t.interaction,r=n.interactable;r&&r.options.styleCursor&&Zt(n.element,"",e)}},maxInteractions:Kt,withinInteractionLimit:Ht,validateAction:Nt};Vt.default=Qt;var te={};Object.defineProperty(te,"__esModule",{value:!0}),te.default=void 0;var ee={id:"auto-start/dragAxis",listeners:{"autoStart:before-start":function(t,e){var n=t.interaction,r=t.eventTarget,o=t.dx,a=t.dy;if("drag"===n.prepared.name){var s=Math.abs(o),l=Math.abs(a),u=n.interactable.options.drag,c=u.startAxis,f=s>l?"x":s<l?"y":"xy";if(n.prepared.axis="start"===u.lockAxis?f[0]:u.lockAxis,"xy"!==f&&"xy"!==c&&c!==f){n.prepared.name=null;for(var d=r,p=function(t){if(t!==n.interactable){var o=n.interactable.options.drag;if(!o.manualStart&&t.testIgnoreAllow(o,d,r)){var i=t.getAction(n.downPointer,n.downEvent,n,d);if(i&&"drag"===i.name&&function(t,e){if(!e)return!1;var n=e.options.drag.startAxis;return"xy"===t||"xy"===n||n===t}(f,t)&&Vt.default.validateAction(i,t,d,r,e))return t}}};i.default.element(d);){var v=e.interactables.forEachMatch(d,p);if(v){n.prepared.name="drag",n.interactable=v,n.element=d;break}d=(0,_.parentNode)(d)}}}}}};te.default=ee;var ne={};function re(t){var e=t.prepared&&t.prepared.name;if(!e)return null;var n=t.interactable.options;return n[e].hold||n[e].delay}Object.defineProperty(ne,"__esModule",{value:!0}),ne.default=void 0;var oe={id:"auto-start/hold",install:function(t){var e=t.defaults;t.usePlugin(Vt.default),e.perAction.hold=0,e.perAction.delay=0},listeners:{"interactions:new":function(t){t.interaction.autoStartHoldTimer=null},"autoStart:prepared":function(t){var e=t.interaction,n=re(e);n>0&&(e.autoStartHoldTimer=setTimeout((function(){e.start(e.prepared,e.interactable,e.element)}),n))},"interactions:move":function(t){var e=t.interaction,n=t.duplicate;e.autoStartHoldTimer&&e.pointerWasMoved&&!n&&(clearTimeout(e.autoStartHoldTimer),e.autoStartHoldTimer=null)},"autoStart:before-start":function(t){var e=t.interaction;re(e)>0&&(e.prepared.name=null)}},getHoldDuration:re};ne.default=oe;var ie={};Object.defineProperty(ie,"__esModule",{value:!0}),ie.default=void 0;var ae={id:"auto-start",install:function(t){t.usePlugin(Vt.default),t.usePlugin(ne.default),t.usePlugin(te.default)}};ie.default=ae;var se={};function le(t){return/^(always|never|auto)$/.test(t)?(this.options.preventDefault=t,this):i.default.bool(t)?(this.options.preventDefault=t?"always":"never",this):this.options.preventDefault}function ue(t){var e=t.interaction,n=t.event;e.interactable&&e.interactable.checkAndPreventDefault(n)}function ce(t){var n=t.Interactable;n.prototype.preventDefault=le,n.prototype.checkAndPreventDefault=function(n){return function(t,n,r){var o=t.options.preventDefault;if("never"!==o)if("always"!==o){if(n.events.supportsPassive&&/^touch(start|move)$/.test(r.type)){var a=(0,e.getWindow)(r.target).document,s=n.getDocOptions(a);if(!s||!s.events||!1!==s.events.passive)return}/^(mouse|pointer|touch)*(down|start)/i.test(r.type)||i.default.element(r.target)&&(0,_.matchesSelector)(r.target,"input,select,textarea,[contenteditable=true],[contenteditable=true] *")||r.preventDefault()}else r.preventDefault()}(this,t,n)},t.interactions.docEvents.push({type:"dragstart",listener:function(e){for(var n=0;n<t.interactions.list.length;n++){var r=t.interactions.list[n];if(r.element&&(r.element===e.target||(0,_.nodeContains)(r.element,e.target)))return void r.interactable.checkAndPreventDefault(e)}}})}Object.defineProperty(se,"__esModule",{value:!0}),se.install=ce,se.default=void 0;var fe={id:"core/interactablePreventDefault",install:ce,listeners:["down","move","up","cancel"].reduce((function(t,e){return t["interactions:".concat(e)]=ue,t}),{})};se.default=fe;var de={};Object.defineProperty(de,"__esModule",{value:!0}),de.default=void 0,de.default={};var pe,ve={};Object.defineProperty(ve,"__esModule",{value:!0}),ve.default=void 0,function(t){t.touchAction="touchAction",t.boxSizing="boxSizing",t.noListeners="noListeners"}(pe||(pe={}));pe.touchAction,pe.boxSizing,pe.noListeners;var he={id:"dev-tools",install:function(){}};ve.default=he;var ge={};Object.defineProperty(ge,"__esModule",{value:!0}),ge.default=function t(e){var n={};for(var r in e){var o=e[r];i.default.plainObject(o)?n[r]=t(o):i.default.array(o)?n[r]=Z.from(o):n[r]=o}return n};var ye={};function me(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return be(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?be(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function be(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function xe(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function we(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(ye,"__esModule",{value:!0}),ye.getRectOffset=Oe,ye.default=void 0;var _e=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),we(this,"states",[]),we(this,"startOffset",{left:0,right:0,top:0,bottom:0}),we(this,"startDelta",void 0),we(this,"result",void 0),we(this,"endResult",void 0),we(this,"edges",void 0),we(this,"interaction",void 0),this.interaction=e,this.result=Pe()}var e,n;return e=t,(n=[{key:"start",value:function(t,e){var n=t.phase,r=this.interaction,o=function(t){var e=t.interactable.options[t.prepared.name],n=e.modifiers;return n&&n.length?n:["snap","snapSize","snapEdges","restrict","restrictEdges","restrictSize"].map((function(t){var n=e[t];return n&&n.enabled&&{options:n,methods:n._methods}})).filter((function(t){return!!t}))}(r);this.prepareStates(o),this.edges=(0,j.default)({},r.edges),this.startOffset=Oe(r.rect,e),this.startDelta={x:0,y:0};var i=this.fillArg({phase:n,pageCoords:e,preEnd:!1});return this.result=Pe(),this.startAll(i),this.result=this.setAll(i)}},{key:"fillArg",value:function(t){var e=this.interaction;return t.interaction=e,t.interactable=e.interactable,t.element=e.element,t.rect=t.rect||e.rect,t.edges=this.edges,t.startOffset=this.startOffset,t}},{key:"startAll",value:function(t){for(var e=0;e<this.states.length;e++){var n=this.states[e];n.methods.start&&(t.state=n,n.methods.start(t))}}},{key:"setAll",value:function(t){var e=t.phase,n=t.preEnd,r=t.skipModifiers,o=t.rect;t.coords=(0,j.default)({},t.pageCoords),t.rect=(0,j.default)({},o);for(var i=r?this.states.slice(r):this.states,a=Pe(t.coords,t.rect),s=0;s<i.length;s++){var l,u=i[s],c=u.options,f=(0,j.default)({},t.coords),d=null;null!=(l=u.methods)&&l.set&&this.shouldDo(c,n,e)&&(t.state=u,d=u.methods.set(t),k.addEdges(this.interaction.edges,t.rect,{x:t.coords.x-f.x,y:t.coords.y-f.y})),a.eventProps.push(d)}a.delta.x=t.coords.x-t.pageCoords.x,a.delta.y=t.coords.y-t.pageCoords.y,a.rectDelta.left=t.rect.left-o.left,a.rectDelta.right=t.rect.right-o.right,a.rectDelta.top=t.rect.top-o.top,a.rectDelta.bottom=t.rect.bottom-o.bottom;var p=this.result.coords,v=this.result.rect;if(p&&v){var h=a.rect.left!==v.left||a.rect.right!==v.right||a.rect.top!==v.top||a.rect.bottom!==v.bottom;a.changed=h||p.x!==a.coords.x||p.y!==a.coords.y}return a}},{key:"applyToInteraction",value:function(t){var e=this.interaction,n=t.phase,r=e.coords.cur,o=e.coords.start,i=this.result,a=this.startDelta,s=i.delta;"start"===n&&(0,j.default)(this.startDelta,i.delta);for(var l=0;l<[[o,a],[r,s]].length;l++){var u=me([[o,a],[r,s]][l],2),c=u[0],f=u[1];c.page.x+=f.x,c.page.y+=f.y,c.client.x+=f.x,c.client.y+=f.y}var d=this.result.rectDelta,p=t.rect||e.rect;p.left+=d.left,p.right+=d.right,p.top+=d.top,p.bottom+=d.bottom,p.width=p.right-p.left,p.height=p.bottom-p.top}},{key:"setAndApply",value:function(t){var e=this.interaction,n=t.phase,r=t.preEnd,o=t.skipModifiers,i=this.setAll(this.fillArg({preEnd:r,phase:n,pageCoords:t.modifiedCoords||e.coords.cur.page}));if(this.result=i,!i.changed&&(!o||o<this.states.length)&&e.interacting())return!1;if(t.modifiedCoords){var a=e.coords.cur.page,s={x:t.modifiedCoords.x-a.x,y:t.modifiedCoords.y-a.y};i.coords.x+=s.x,i.coords.y+=s.y,i.delta.x+=s.x,i.delta.y+=s.y}this.applyToInteraction(t)}},{key:"beforeEnd",value:function(t){var e=t.interaction,n=t.event,r=this.states;if(r&&r.length){for(var o=!1,i=0;i<r.length;i++){var a=r[i];t.state=a;var s=a.options,l=a.methods,u=l.beforeEnd&&l.beforeEnd(t);if(u)return this.endResult=u,!1;o=o||!o&&this.shouldDo(s,!0,t.phase,!0)}o&&e.move({event:n,preEnd:!0})}}},{key:"stop",value:function(t){var e=t.interaction;if(this.states&&this.states.length){var n=(0,j.default)({states:this.states,interactable:e.interactable,element:e.element,rect:null},t);this.fillArg(n);for(var r=0;r<this.states.length;r++){var o=this.states[r];n.state=o,o.methods.stop&&o.methods.stop(n)}this.states=null,this.endResult=null}}},{key:"prepareStates",value:function(t){this.states=[];for(var e=0;e<t.length;e++){var n=t[e],r=n.options,o=n.methods,i=n.name;this.states.push({options:r,methods:o,index:e,name:i})}return this.states}},{key:"restoreInteractionCoords",value:function(t){var e=t.interaction,n=e.coords,r=e.rect,o=e.modification;if(o.result){for(var i=o.startDelta,a=o.result,s=a.delta,l=a.rectDelta,u=[[n.start,i],[n.cur,s]],c=0;c<u.length;c++){var f=me(u[c],2),d=f[0],p=f[1];d.page.x-=p.x,d.page.y-=p.y,d.client.x-=p.x,d.client.y-=p.y}r.left-=l.left,r.right-=l.right,r.top-=l.top,r.bottom-=l.bottom}}},{key:"shouldDo",value:function(t,e,n,r){return!(!t||!1===t.enabled||r&&!t.endOnly||t.endOnly&&!e||"start"===n&&!t.setStart)}},{key:"copyFrom",value:function(t){this.startOffset=t.startOffset,this.startDelta=t.startDelta,this.edges=t.edges,this.states=t.states.map((function(t){return(0,ge.default)(t)})),this.result=Pe((0,j.default)({},t.result.coords),(0,j.default)({},t.result.rect))}},{key:"destroy",value:function(){for(var t in this)this[t]=null}}])&&xe(e.prototype,n),t}();function Pe(t,e){return{rect:e,coords:t,delta:{x:0,y:0},rectDelta:{left:0,right:0,top:0,bottom:0},eventProps:[],changed:!0}}function Oe(t,e){return t?{left:e.x-t.left,top:e.y-t.top,right:t.right-e.x,bottom:t.bottom-e.y}:{left:0,top:0,right:0,bottom:0}}ye.default=_e;var Se={};function Ee(t){var e=t.iEvent,n=t.interaction.modification.result;n&&(e.modifiers=n.eventProps)}Object.defineProperty(Se,"__esModule",{value:!0}),Se.makeModifier=function(t,e){var n=t.defaults,r={start:t.start,set:t.set,beforeEnd:t.beforeEnd,stop:t.stop},o=function(t){var o=t||{};for(var i in o.enabled=!1!==o.enabled,n)i in o||(o[i]=n[i]);var a={options:o,methods:r,name:e,enable:function(){return o.enabled=!0,a},disable:function(){return o.enabled=!1,a}};return a};return e&&"string"==typeof e&&(o._defaults=n,o._methods=r),o},Se.addEventModifiers=Ee,Se.default=void 0;var Te={id:"modifiers/base",before:["actions"],install:function(t){t.defaults.perAction.modifiers=[]},listeners:{"interactions:new":function(t){var e=t.interaction;e.modification=new ye.default(e)},"interactions:before-action-start":function(t){var e=t.interaction.modification;e.start(t,t.interaction.coords.start.page),t.interaction.edges=e.edges,e.applyToInteraction(t)},"interactions:before-action-move":function(t){return t.interaction.modification.setAndApply(t)},"interactions:before-action-end":function(t){return t.interaction.modification.beforeEnd(t)},"interactions:action-start":Ee,"interactions:action-move":Ee,"interactions:action-end":Ee,"interactions:after-action-start":function(t){return t.interaction.modification.restoreInteractionCoords(t)},"interactions:after-action-move":function(t){return t.interaction.modification.restoreInteractionCoords(t)},"interactions:stop":function(t){return t.interaction.modification.stop(t)}}};Se.default=Te;var Me={};Object.defineProperty(Me,"__esModule",{value:!0}),Me.defaults=void 0,Me.defaults={base:{preventDefault:"auto",deltaSource:"page"},perAction:{enabled:!1,origin:{x:0,y:0}},actions:{}};var je={};function ke(t){return(ke="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Ie(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function De(t,e){return(De=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function Ae(t,e){return!e||"object"!==ke(e)&&"function"!=typeof e?Re(t):e}function Re(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function ze(t){return(ze=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function Ce(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(je,"__esModule",{value:!0}),je.InteractEvent=void 0;var Fe=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&De(t,e)}(a,t);var e,n,r,o,i=(r=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=ze(r);if(o){var n=ze(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return Ae(this,t)});function a(t,e,n,r,o,s,l){var u;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,a),Ce(Re(u=i.call(this,t)),"target",void 0),Ce(Re(u),"currentTarget",void 0),Ce(Re(u),"relatedTarget",null),Ce(Re(u),"screenX",void 0),Ce(Re(u),"screenY",void 0),Ce(Re(u),"button",void 0),Ce(Re(u),"buttons",void 0),Ce(Re(u),"ctrlKey",void 0),Ce(Re(u),"shiftKey",void 0),Ce(Re(u),"altKey",void 0),Ce(Re(u),"metaKey",void 0),Ce(Re(u),"page",void 0),Ce(Re(u),"client",void 0),Ce(Re(u),"delta",void 0),Ce(Re(u),"rect",void 0),Ce(Re(u),"x0",void 0),Ce(Re(u),"y0",void 0),Ce(Re(u),"t0",void 0),Ce(Re(u),"dt",void 0),Ce(Re(u),"duration",void 0),Ce(Re(u),"clientX0",void 0),Ce(Re(u),"clientY0",void 0),Ce(Re(u),"velocity",void 0),Ce(Re(u),"speed",void 0),Ce(Re(u),"swipe",void 0),Ce(Re(u),"timeStamp",void 0),Ce(Re(u),"axes",void 0),Ce(Re(u),"preEnd",void 0),o=o||t.element;var c=t.interactable,f=(c&&c.options||Me.defaults).deltaSource,d=(0,A.default)(c,o,n),p="start"===r,v="end"===r,h=p?Re(u):t.prevEvent,g=p?t.coords.start:v?{page:h.page,client:h.client,timeStamp:t.coords.cur.timeStamp}:t.coords.cur;return u.page=(0,j.default)({},g.page),u.client=(0,j.default)({},g.client),u.rect=(0,j.default)({},t.rect),u.timeStamp=g.timeStamp,v||(u.page.x-=d.x,u.page.y-=d.y,u.client.x-=d.x,u.client.y-=d.y),u.ctrlKey=e.ctrlKey,u.altKey=e.altKey,u.shiftKey=e.shiftKey,u.metaKey=e.metaKey,u.button=e.button,u.buttons=e.buttons,u.target=o,u.currentTarget=o,u.preEnd=s,u.type=l||n+(r||""),u.interactable=c,u.t0=p?t.pointers[t.pointers.length-1].downTime:h.t0,u.x0=t.coords.start.page.x-d.x,u.y0=t.coords.start.page.y-d.y,u.clientX0=t.coords.start.client.x-d.x,u.clientY0=t.coords.start.client.y-d.y,u.delta=p||v?{x:0,y:0}:{x:u[f].x-h[f].x,y:u[f].y-h[f].y},u.dt=t.coords.delta.timeStamp,u.duration=u.timeStamp-u.t0,u.velocity=(0,j.default)({},t.coords.velocity[f]),u.speed=(0,C.default)(u.velocity.x,u.velocity.y),u.swipe=v||"inertiastart"===r?u.getSwipe():null,u}return e=a,(n=[{key:"getSwipe",value:function(){var t=this._interaction;if(t.prevEvent.speed<600||this.timeStamp-t.prevEvent.timeStamp>150)return null;var e=180*Math.atan2(t.prevEvent.velocityY,t.prevEvent.velocityX)/Math.PI;e<0&&(e+=360);var n=112.5<=e&&e<247.5,r=202.5<=e&&e<337.5;return{up:r,down:!r&&22.5<=e&&e<157.5,left:n,right:!n&&(292.5<=e||e<67.5),angle:e,speed:t.prevEvent.speed,velocity:{x:t.prevEvent.velocityX,y:t.prevEvent.velocityY}}}},{key:"preventDefault",value:function(){}},{key:"stopImmediatePropagation",value:function(){this.immediatePropagationStopped=this.propagationStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}}])&&Ie(e.prototype,n),a}($.BaseEvent);je.InteractEvent=Fe,Object.defineProperties(Fe.prototype,{pageX:{get:function(){return this.page.x},set:function(t){this.page.x=t}},pageY:{get:function(){return this.page.y},set:function(t){this.page.y=t}},clientX:{get:function(){return this.client.x},set:function(t){this.client.x=t}},clientY:{get:function(){return this.client.y},set:function(t){this.client.y=t}},dx:{get:function(){return this.delta.x},set:function(t){this.delta.x=t}},dy:{get:function(){return this.delta.y},set:function(t){this.delta.y=t}},velocityX:{get:function(){return this.velocity.x},set:function(t){this.velocity.x=t}},velocityY:{get:function(){return this.velocity.y},set:function(t){this.velocity.y=t}}});var Xe={};function Ye(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(Xe,"__esModule",{value:!0}),Xe.PointerInfo=void 0,Xe.PointerInfo=function t(e,n,r,o,i){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),Ye(this,"id",void 0),Ye(this,"pointer",void 0),Ye(this,"event",void 0),Ye(this,"downTime",void 0),Ye(this,"downTarget",void 0),this.id=e,this.pointer=n,this.event=r,this.downTime=o,this.downTarget=i};var Be,We,Le={};function Ue(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function Ve(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(Le,"__esModule",{value:!0}),Object.defineProperty(Le,"PointerInfo",{enumerable:!0,get:function(){return Xe.PointerInfo}}),Le.default=Le.Interaction=Le._ProxyMethods=Le._ProxyValues=void 0,Le._ProxyValues=Be,function(t){t.interactable="",t.element="",t.prepared="",t.pointerIsDown="",t.pointerWasMoved="",t._proxy=""}(Be||(Le._ProxyValues=Be={})),Le._ProxyMethods=We,function(t){t.start="",t.move="",t.end="",t.stop="",t.interacting=""}(We||(Le._ProxyMethods=We={}));var Ne=0,qe=function(){function t(e){var n=this,r=e.pointerType,o=e.scopeFire;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),Ve(this,"interactable",null),Ve(this,"element",null),Ve(this,"rect",void 0),Ve(this,"_rects",void 0),Ve(this,"edges",void 0),Ve(this,"_scopeFire",void 0),Ve(this,"prepared",{name:null,axis:null,edges:null}),Ve(this,"pointerType",void 0),Ve(this,"pointers",[]),Ve(this,"downEvent",null),Ve(this,"downPointer",{}),Ve(this,"_latestPointer",{pointer:null,event:null,eventTarget:null}),Ve(this,"prevEvent",null),Ve(this,"pointerIsDown",!1),Ve(this,"pointerWasMoved",!1),Ve(this,"_interacting",!1),Ve(this,"_ending",!1),Ve(this,"_stopped",!0),Ve(this,"_proxy",null),Ve(this,"simulation",null),Ve(this,"doMove",(0,Yt.warnOnce)((function(t){this.move(t)}),"The interaction.doMove() method has been renamed to interaction.move()")),Ve(this,"coords",{start:B.newCoords(),prev:B.newCoords(),cur:B.newCoords(),delta:B.newCoords(),velocity:B.newCoords()}),Ve(this,"_id",Ne++),this._scopeFire=o,this.pointerType=r;var i=this;this._proxy={};var a=function(t){Object.defineProperty(n._proxy,t,{get:function(){return i[t]}})};for(var s in Be)a(s);var l=function(t){Object.defineProperty(n._proxy,t,{value:function(){return i[t].apply(i,arguments)}})};for(var u in We)l(u);this._scopeFire("interactions:new",{interaction:this})}var e,n;return e=t,(n=[{key:"pointerMoveTolerance",get:function(){return 1}},{key:"pointerDown",value:function(t,e,n){var r=this.updatePointer(t,e,n,!0),o=this.pointers[r];this._scopeFire("interactions:down",{pointer:t,event:e,eventTarget:n,pointerIndex:r,pointerInfo:o,type:"down",interaction:this})}},{key:"start",value:function(t,e,n){return!(this.interacting()||!this.pointerIsDown||this.pointers.length<("gesture"===t.name?2:1)||!e.options[t.name].enabled)&&((0,Yt.copyAction)(this.prepared,t),this.interactable=e,this.element=n,this.rect=e.getRect(n),this.edges=this.prepared.edges?(0,j.default)({},this.prepared.edges):{left:!0,right:!0,top:!0,bottom:!0},this._stopped=!1,this._interacting=this._doPhase({interaction:this,event:this.downEvent,phase:"start"})&&!this._stopped,this._interacting)}},{key:"pointerMove",value:function(t,e,n){this.simulation||this.modification&&this.modification.endResult||this.updatePointer(t,e,n,!1);var r,o,i=this.coords.cur.page.x===this.coords.prev.page.x&&this.coords.cur.page.y===this.coords.prev.page.y&&this.coords.cur.client.x===this.coords.prev.client.x&&this.coords.cur.client.y===this.coords.prev.client.y;this.pointerIsDown&&!this.pointerWasMoved&&(r=this.coords.cur.client.x-this.coords.start.client.x,o=this.coords.cur.client.y-this.coords.start.client.y,this.pointerWasMoved=(0,C.default)(r,o)>this.pointerMoveTolerance);var a=this.getPointerIndex(t),s={pointer:t,pointerIndex:a,pointerInfo:this.pointers[a],event:e,type:"move",eventTarget:n,dx:r,dy:o,duplicate:i,interaction:this};i||B.setCoordVelocity(this.coords.velocity,this.coords.delta),this._scopeFire("interactions:move",s),i||this.simulation||(this.interacting()&&(s.type=null,this.move(s)),this.pointerWasMoved&&B.copyCoords(this.coords.prev,this.coords.cur))}},{key:"move",value:function(t){t&&t.event||B.setZeroCoords(this.coords.delta),(t=(0,j.default)({pointer:this._latestPointer.pointer,event:this._latestPointer.event,eventTarget:this._latestPointer.eventTarget,interaction:this},t||{})).phase="move",this._doPhase(t)}},{key:"pointerUp",value:function(t,e,n,r){var o=this.getPointerIndex(t);-1===o&&(o=this.updatePointer(t,e,n,!1));var i=/cancel$/i.test(e.type)?"cancel":"up";this._scopeFire("interactions:".concat(i),{pointer:t,pointerIndex:o,pointerInfo:this.pointers[o],event:e,eventTarget:n,type:i,curEventTarget:r,interaction:this}),this.simulation||this.end(e),this.removePointer(t,e)}},{key:"documentBlur",value:function(t){this.end(t),this._scopeFire("interactions:blur",{event:t,type:"blur",interaction:this})}},{key:"end",value:function(t){var e;this._ending=!0,t=t||this._latestPointer.event,this.interacting()&&(e=this._doPhase({event:t,interaction:this,phase:"end"})),this._ending=!1,!0===e&&this.stop()}},{key:"currentAction",value:function(){return this._interacting?this.prepared.name:null}},{key:"interacting",value:function(){return this._interacting}},{key:"stop",value:function(){this._scopeFire("interactions:stop",{interaction:this}),this.interactable=this.element=null,this._interacting=!1,this._stopped=!0,this.prepared.name=this.prevEvent=null}},{key:"getPointerIndex",value:function(t){var e=B.getPointerId(t);return"mouse"===this.pointerType||"pen"===this.pointerType?this.pointers.length-1:Z.findIndex(this.pointers,(function(t){return t.id===e}))}},{key:"getPointerInfo",value:function(t){return this.pointers[this.getPointerIndex(t)]}},{key:"updatePointer",value:function(t,e,n,r){var o=B.getPointerId(t),i=this.getPointerIndex(t),a=this.pointers[i];return r=!1!==r&&(r||/(down|start)$/i.test(e.type)),a?a.pointer=t:(a=new Xe.PointerInfo(o,t,e,null,null),i=this.pointers.length,this.pointers.push(a)),B.setCoords(this.coords.cur,this.pointers.map((function(t){return t.pointer})),this._now()),B.setCoordDeltas(this.coords.delta,this.coords.prev,this.coords.cur),r&&(this.pointerIsDown=!0,a.downTime=this.coords.cur.timeStamp,a.downTarget=n,B.pointerExtend(this.downPointer,t),this.interacting()||(B.copyCoords(this.coords.start,this.coords.cur),B.copyCoords(this.coords.prev,this.coords.cur),this.downEvent=e,this.pointerWasMoved=!1)),this._updateLatestPointer(t,e,n),this._scopeFire("interactions:update-pointer",{pointer:t,event:e,eventTarget:n,down:r,pointerInfo:a,pointerIndex:i,interaction:this}),i}},{key:"removePointer",value:function(t,e){var n=this.getPointerIndex(t);if(-1!==n){var r=this.pointers[n];this._scopeFire("interactions:remove-pointer",{pointer:t,event:e,eventTarget:null,pointerIndex:n,pointerInfo:r,interaction:this}),this.pointers.splice(n,1),this.pointerIsDown=!1}}},{key:"_updateLatestPointer",value:function(t,e,n){this._latestPointer.pointer=t,this._latestPointer.event=e,this._latestPointer.eventTarget=n}},{key:"destroy",value:function(){this._latestPointer.pointer=null,this._latestPointer.event=null,this._latestPointer.eventTarget=null}},{key:"_createPreparedEvent",value:function(t,e,n,r){return new je.InteractEvent(this,t,this.prepared.name,e,this.element,n,r)}},{key:"_fireEvent",value:function(t){this.interactable.fire(t),(!this.prevEvent||t.timeStamp>=this.prevEvent.timeStamp)&&(this.prevEvent=t)}},{key:"_doPhase",value:function(t){var e=t.event,n=t.phase,r=t.preEnd,o=t.type,i=this.rect;if(i&&"move"===n&&(k.addEdges(this.edges,i,this.coords.delta[this.interactable.options.deltaSource]),i.width=i.right-i.left,i.height=i.bottom-i.top),!1===this._scopeFire("interactions:before-action-".concat(n),t))return!1;var a=t.iEvent=this._createPreparedEvent(e,n,r,o);return this._scopeFire("interactions:action-".concat(n),t),"start"===n&&(this.prevEvent=a),this._fireEvent(a),this._scopeFire("interactions:after-action-".concat(n),t),!0}},{key:"_now",value:function(){return Date.now()}}])&&Ue(e.prototype,n),t}();Le.Interaction=qe;var $e=qe;Le.default=$e;var Ge={};function He(t){t.pointerIsDown&&(Qe(t.coords.cur,t.offset.total),t.offset.pending.x=0,t.offset.pending.y=0)}function Ke(t){Ze(t.interaction)}function Ze(t){if(!function(t){return!(!t.offset.pending.x&&!t.offset.pending.y)}(t))return!1;var e=t.offset.pending;return Qe(t.coords.cur,e),Qe(t.coords.delta,e),k.addEdges(t.edges,t.rect,e),e.x=0,e.y=0,!0}function Je(t){var e=t.x,n=t.y;this.offset.pending.x+=e,this.offset.pending.y+=n,this.offset.total.x+=e,this.offset.total.y+=n}function Qe(t,e){var n=t.page,r=t.client,o=e.x,i=e.y;n.x+=o,n.y+=i,r.x+=o,r.y+=i}Object.defineProperty(Ge,"__esModule",{value:!0}),Ge.addTotal=He,Ge.applyPending=Ze,Ge.default=void 0,Le._ProxyMethods.offsetBy="";var tn={id:"offset",before:["modifiers","pointer-events","actions","inertia"],install:function(t){t.Interaction.prototype.offsetBy=Je},listeners:{"interactions:new":function(t){t.interaction.offset={total:{x:0,y:0},pending:{x:0,y:0}}},"interactions:update-pointer":function(t){return He(t.interaction)},"interactions:before-action-start":Ke,"interactions:before-action-move":Ke,"interactions:before-action-end":function(t){var e=t.interaction;if(Ze(e))return e.move({offset:!0}),e.end(),!1},"interactions:stop":function(t){var e=t.interaction;e.offset.total.x=0,e.offset.total.y=0,e.offset.pending.x=0,e.offset.pending.y=0}}};Ge.default=tn;var en={};function nn(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function rn(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(en,"__esModule",{value:!0}),en.default=en.InertiaState=void 0;var on=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),rn(this,"active",!1),rn(this,"isModified",!1),rn(this,"smoothEnd",!1),rn(this,"allowResume",!1),rn(this,"modification",void 0),rn(this,"modifierCount",0),rn(this,"modifierArg",void 0),rn(this,"startCoords",void 0),rn(this,"t0",0),rn(this,"v0",0),rn(this,"te",0),rn(this,"targetOffset",void 0),rn(this,"modifiedOffset",void 0),rn(this,"currentOffset",void 0),rn(this,"lambda_v0",0),rn(this,"one_ve_v0",0),rn(this,"timeout",void 0),rn(this,"interaction",void 0),this.interaction=e}var e,n;return e=t,(n=[{key:"start",value:function(t){var e=this.interaction,n=an(e);if(!n||!n.enabled)return!1;var r=e.coords.velocity.client,o=(0,C.default)(r.x,r.y),i=this.modification||(this.modification=new ye.default(e));if(i.copyFrom(e.modification),this.t0=e._now(),this.allowResume=n.allowResume,this.v0=o,this.currentOffset={x:0,y:0},this.startCoords=e.coords.cur.page,this.modifierArg=i.fillArg({pageCoords:this.startCoords,preEnd:!0,phase:"inertiastart"}),this.t0-e.coords.cur.timeStamp<50&&o>n.minSpeed&&o>n.endSpeed)this.startInertia();else{if(i.result=i.setAll(this.modifierArg),!i.result.changed)return!1;this.startSmoothEnd()}return e.modification.result.rect=null,e.offsetBy(this.targetOffset),e._doPhase({interaction:e,event:t,phase:"inertiastart"}),e.offsetBy({x:-this.targetOffset.x,y:-this.targetOffset.y}),e.modification.result.rect=null,this.active=!0,e.simulation=this,!0}},{key:"startInertia",value:function(){var t=this,e=this.interaction.coords.velocity.client,n=an(this.interaction),r=n.resistance,o=-Math.log(n.endSpeed/this.v0)/r;this.targetOffset={x:(e.x-o)/r,y:(e.y-o)/r},this.te=o,this.lambda_v0=r/this.v0,this.one_ve_v0=1-n.endSpeed/this.v0;var i=this.modification,a=this.modifierArg;a.pageCoords={x:this.startCoords.x+this.targetOffset.x,y:this.startCoords.y+this.targetOffset.y},i.result=i.setAll(a),i.result.changed&&(this.isModified=!0,this.modifiedOffset={x:this.targetOffset.x+i.result.delta.x,y:this.targetOffset.y+i.result.delta.y}),this.onNextFrame((function(){return t.inertiaTick()}))}},{key:"startSmoothEnd",value:function(){var t=this;this.smoothEnd=!0,this.isModified=!0,this.targetOffset={x:this.modification.result.delta.x,y:this.modification.result.delta.y},this.onNextFrame((function(){return t.smoothEndTick()}))}},{key:"onNextFrame",value:function(t){var e=this;this.timeout=jt.default.request((function(){e.active&&t()}))}},{key:"inertiaTick",value:function(){var t,e,n,r,o,i=this,a=this.interaction,s=an(a).resistance,l=(a._now()-this.t0)/1e3;if(l<this.te){var u,c=1-(Math.exp(-s*l)-this.lambda_v0)/this.one_ve_v0;this.isModified?(0,0,t=this.targetOffset.x,e=this.targetOffset.y,n=this.modifiedOffset.x,r=this.modifiedOffset.y,u={x:sn(o=c,0,t,n),y:sn(o,0,e,r)}):u={x:this.targetOffset.x*c,y:this.targetOffset.y*c};var f={x:u.x-this.currentOffset.x,y:u.y-this.currentOffset.y};this.currentOffset.x+=f.x,this.currentOffset.y+=f.y,a.offsetBy(f),a.move(),this.onNextFrame((function(){return i.inertiaTick()}))}else a.offsetBy({x:this.modifiedOffset.x-this.currentOffset.x,y:this.modifiedOffset.y-this.currentOffset.y}),this.end()}},{key:"smoothEndTick",value:function(){var t=this,e=this.interaction,n=e._now()-this.t0,r=an(e).smoothEndDuration;if(n<r){var o={x:ln(n,0,this.targetOffset.x,r),y:ln(n,0,this.targetOffset.y,r)},i={x:o.x-this.currentOffset.x,y:o.y-this.currentOffset.y};this.currentOffset.x+=i.x,this.currentOffset.y+=i.y,e.offsetBy(i),e.move({skipModifiers:this.modifierCount}),this.onNextFrame((function(){return t.smoothEndTick()}))}else e.offsetBy({x:this.targetOffset.x-this.currentOffset.x,y:this.targetOffset.y-this.currentOffset.y}),this.end()}},{key:"resume",value:function(t){var e=t.pointer,n=t.event,r=t.eventTarget,o=this.interaction;o.offsetBy({x:-this.currentOffset.x,y:-this.currentOffset.y}),o.updatePointer(e,n,r,!0),o._doPhase({interaction:o,event:n,phase:"resume"}),(0,B.copyCoords)(o.coords.prev,o.coords.cur),this.stop()}},{key:"end",value:function(){this.interaction.move(),this.interaction.end(),this.stop()}},{key:"stop",value:function(){this.active=this.smoothEnd=!1,this.interaction.simulation=null,jt.default.cancel(this.timeout)}}])&&nn(e.prototype,n),t}();function an(t){var e=t.interactable,n=t.prepared;return e&&e.options&&n.name&&e.options[n.name].inertia}function sn(t,e,n,r){var o=1-t;return o*o*e+2*o*t*n+t*t*r}function ln(t,e,n,r){return-n*(t/=r)*(t-2)+e}en.InertiaState=on;var un={id:"inertia",before:["modifiers","actions"],install:function(t){var e=t.defaults;t.usePlugin(Ge.default),t.usePlugin(Se.default),t.actions.phases.inertiastart=!0,t.actions.phases.resume=!0,e.perAction.inertia={enabled:!1,resistance:10,minSpeed:100,endSpeed:10,allowResume:!0,smoothEndDuration:300}},listeners:{"interactions:new":function(t){var e=t.interaction;e.inertia=new on(e)},"interactions:before-action-end":function(t){var e=t.interaction,n=t.event;return(!e._interacting||e.simulation||!e.inertia.start(n))&&null},"interactions:down":function(t){var e=t.interaction,n=t.eventTarget,r=e.inertia;if(r.active)for(var o=n;i.default.element(o);){if(o===e.element){r.resume(t);break}o=_.parentNode(o)}},"interactions:stop":function(t){var e=t.interaction.inertia;e.active&&e.stop()},"interactions:before-action-resume":function(t){var e=t.interaction.modification;e.stop(t),e.start(t,t.interaction.coords.cur.page),e.applyToInteraction(t)},"interactions:before-action-inertiastart":function(t){return t.interaction.modification.setAndApply(t)},"interactions:action-resume":Se.addEventModifiers,"interactions:action-inertiastart":Se.addEventModifiers,"interactions:after-action-inertiastart":function(t){return t.interaction.modification.restoreInteractionCoords(t)},"interactions:after-action-resume":function(t){return t.interaction.modification.restoreInteractionCoords(t)}}};en.default=un;var cn={};function fn(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function dn(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function pn(t,e){for(var n=0;n<e.length;n++){var r=e[n];if(t.immediatePropagationStopped)break;r(t)}}Object.defineProperty(cn,"__esModule",{value:!0}),cn.Eventable=void 0;var vn=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),dn(this,"options",void 0),dn(this,"types",{}),dn(this,"propagationStopped",!1),dn(this,"immediatePropagationStopped",!1),dn(this,"global",void 0),this.options=(0,j.default)({},e||{})}var e,n;return e=t,(n=[{key:"fire",value:function(t){var e,n=this.global;(e=this.types[t.type])&&pn(t,e),!t.propagationStopped&&n&&(e=n[t.type])&&pn(t,e)}},{key:"on",value:function(t,e){var n=(0,R.default)(t,e);for(t in n)this.types[t]=Z.merge(this.types[t]||[],n[t])}},{key:"off",value:function(t,e){var n=(0,R.default)(t,e);for(t in n){var r=this.types[t];if(r&&r.length)for(var o=0;o<n[t].length;o++){var i=n[t][o],a=r.indexOf(i);-1!==a&&r.splice(a,1)}}}},{key:"getRect",value:function(t){return null}}])&&fn(e.prototype,n),t}();cn.Eventable=vn;var hn={};Object.defineProperty(hn,"__esModule",{value:!0}),hn.default=function(t,e){if(e.phaselessTypes[t])return!0;for(var n in e.map)if(0===t.indexOf(n)&&t.substr(n.length)in e.phases)return!0;return!1};var gn={};Object.defineProperty(gn,"__esModule",{value:!0}),gn.createInteractStatic=function(t){var e=function e(n,r){var o=t.interactables.get(n,r);return o||((o=t.interactables.new(n,r)).events.global=e.globalEvents),o};return e.getPointerAverage=B.pointerAverage,e.getTouchBBox=B.touchBBox,e.getTouchDistance=B.touchDistance,e.getTouchAngle=B.touchAngle,e.getElementRect=_.getElementRect,e.getElementClientRect=_.getElementClientRect,e.matchesSelector=_.matchesSelector,e.closest=_.closest,e.globalEvents={},e.version="1.10.11",e.scope=t,e.use=function(t,e){return this.scope.usePlugin(t,e),this},e.isSet=function(t,e){return!!this.scope.interactables.get(t,e&&e.context)},e.on=(0,Yt.warnOnce)((function(t,e,n){if(i.default.string(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),i.default.array(t)){for(var r=0;r<t.length;r++){var o=t[r];this.on(o,e,n)}return this}if(i.default.object(t)){for(var a in t)this.on(a,t[a],e);return this}return(0,hn.default)(t,this.scope.actions)?this.globalEvents[t]?this.globalEvents[t].push(e):this.globalEvents[t]=[e]:this.scope.events.add(this.scope.document,t,e,{options:n}),this}),"The interact.on() method is being deprecated"),e.off=(0,Yt.warnOnce)((function(t,e,n){if(i.default.string(t)&&-1!==t.search(" ")&&(t=t.trim().split(/ +/)),i.default.array(t)){for(var r=0;r<t.length;r++){var o=t[r];this.off(o,e,n)}return this}if(i.default.object(t)){for(var a in t)this.off(a,t[a],e);return this}var s;return(0,hn.default)(t,this.scope.actions)?t in this.globalEvents&&-1!==(s=this.globalEvents[t].indexOf(e))&&this.globalEvents[t].splice(s,1):this.scope.events.remove(this.scope.document,t,e,n),this}),"The interact.off() method is being deprecated"),e.debug=function(){return this.scope},e.supportsTouch=function(){return b.default.supportsTouch},e.supportsPointerEvent=function(){return b.default.supportsPointerEvent},e.stop=function(){for(var t=0;t<this.scope.interactions.list.length;t++)this.scope.interactions.list[t].stop();return this},e.pointerMoveTolerance=function(t){return i.default.number(t)?(this.scope.interactions.pointerMoveTolerance=t,this):this.scope.interactions.pointerMoveTolerance},e.addDocument=function(t,e){this.scope.addDocument(t,e)},e.removeDocument=function(t){this.scope.removeDocument(t)},e};var yn={};function mn(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function bn(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(yn,"__esModule",{value:!0}),yn.Interactable=void 0;var xn=function(){function t(n,r,o,i){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),bn(this,"options",void 0),bn(this,"_actions",void 0),bn(this,"target",void 0),bn(this,"events",new cn.Eventable),bn(this,"_context",void 0),bn(this,"_win",void 0),bn(this,"_doc",void 0),bn(this,"_scopeEvents",void 0),bn(this,"_rectChecker",void 0),this._actions=r.actions,this.target=n,this._context=r.context||o,this._win=(0,e.getWindow)((0,_.trySelector)(n)?this._context:n),this._doc=this._win.document,this._scopeEvents=i,this.set(r)}var n,r;return n=t,(r=[{key:"_defaults",get:function(){return{base:{},perAction:{},actions:{}}}},{key:"setOnEvents",value:function(t,e){return i.default.func(e.onstart)&&this.on("".concat(t,"start"),e.onstart),i.default.func(e.onmove)&&this.on("".concat(t,"move"),e.onmove),i.default.func(e.onend)&&this.on("".concat(t,"end"),e.onend),i.default.func(e.oninertiastart)&&this.on("".concat(t,"inertiastart"),e.oninertiastart),this}},{key:"updatePerActionListeners",value:function(t,e,n){(i.default.array(e)||i.default.object(e))&&this.off(t,e),(i.default.array(n)||i.default.object(n))&&this.on(t,n)}},{key:"setPerAction",value:function(t,e){var n=this._defaults;for(var r in e){var o=r,a=this.options[t],s=e[o];"listeners"===o&&this.updatePerActionListeners(t,a.listeners,s),i.default.array(s)?a[o]=Z.from(s):i.default.plainObject(s)?(a[o]=(0,j.default)(a[o]||{},(0,ge.default)(s)),i.default.object(n.perAction[o])&&"enabled"in n.perAction[o]&&(a[o].enabled=!1!==s.enabled)):i.default.bool(s)&&i.default.object(n.perAction[o])?a[o].enabled=s:a[o]=s}}},{key:"getRect",value:function(t){return t=t||(i.default.element(this.target)?this.target:null),i.default.string(this.target)&&(t=t||this._context.querySelector(this.target)),(0,_.getElementRect)(t)}},{key:"rectChecker",value:function(t){var e=this;return i.default.func(t)?(this._rectChecker=t,this.getRect=function(t){var n=(0,j.default)({},e._rectChecker(t));return"width"in n||(n.width=n.right-n.left,n.height=n.bottom-n.top),n},this):null===t?(delete this.getRect,delete this._rectChecker,this):this.getRect}},{key:"_backCompatOption",value:function(t,e){if((0,_.trySelector)(e)||i.default.object(e)){for(var n in this.options[t]=e,this._actions.map)this.options[n][t]=e;return this}return this.options[t]}},{key:"origin",value:function(t){return this._backCompatOption("origin",t)}},{key:"deltaSource",value:function(t){return"page"===t||"client"===t?(this.options.deltaSource=t,this):this.options.deltaSource}},{key:"context",value:function(){return this._context}},{key:"inContext",value:function(t){return this._context===t.ownerDocument||(0,_.nodeContains)(this._context,t)}},{key:"testIgnoreAllow",value:function(t,e,n){return!this.testIgnore(t.ignoreFrom,e,n)&&this.testAllow(t.allowFrom,e,n)}},{key:"testAllow",value:function(t,e,n){return!t||!!i.default.element(n)&&(i.default.string(t)?(0,_.matchesUpTo)(n,t,e):!!i.default.element(t)&&(0,_.nodeContains)(t,n))}},{key:"testIgnore",value:function(t,e,n){return!(!t||!i.default.element(n))&&(i.default.string(t)?(0,_.matchesUpTo)(n,t,e):!!i.default.element(t)&&(0,_.nodeContains)(t,n))}},{key:"fire",value:function(t){return this.events.fire(t),this}},{key:"_onOff",value:function(t,e,n,r){i.default.object(e)&&!i.default.array(e)&&(r=n,n=null);var o="on"===t?"add":"remove",a=(0,R.default)(e,n);for(var s in a){"wheel"===s&&(s=b.default.wheelEvent);for(var l=0;l<a[s].length;l++){var u=a[s][l];(0,hn.default)(s,this._actions)?this.events[t](s,u):i.default.string(this.target)?this._scopeEvents["".concat(o,"Delegate")](this.target,this._context,s,u,r):this._scopeEvents[o](this.target,s,u,r)}}return this}},{key:"on",value:function(t,e,n){return this._onOff("on",t,e,n)}},{key:"off",value:function(t,e,n){return this._onOff("off",t,e,n)}},{key:"set",value:function(t){var e=this._defaults;for(var n in i.default.object(t)||(t={}),this.options=(0,ge.default)(e.base),this._actions.methodDict){var r=n,o=this._actions.methodDict[r];this.options[r]={},this.setPerAction(r,(0,j.default)((0,j.default)({},e.perAction),e.actions[r])),this[o](t[r])}for(var a in t)i.default.func(this[a])&&this[a](t[a]);return this}},{key:"unset",value:function(){if(i.default.string(this.target))for(var t in this._scopeEvents.delegatedEvents)for(var e=this._scopeEvents.delegatedEvents[t],n=e.length-1;n>=0;n--){var r=e[n],o=r.selector,a=r.context,s=r.listeners;o===this.target&&a===this._context&&e.splice(n,1);for(var l=s.length-1;l>=0;l--)this._scopeEvents.removeDelegate(this.target,this._context,t,s[l][0],s[l][1])}else this._scopeEvents.remove(this.target,"all")}}])&&mn(n.prototype,r),t}();yn.Interactable=xn;var wn={};function _n(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function Pn(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(wn,"__esModule",{value:!0}),wn.InteractableSet=void 0;var On=function(){function t(e){var n=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),Pn(this,"list",[]),Pn(this,"selectorMap",{}),Pn(this,"scope",void 0),this.scope=e,e.addListeners({"interactable:unset":function(t){var e=t.interactable,r=e.target,o=e._context,a=i.default.string(r)?n.selectorMap[r]:r[n.scope.id],s=Z.findIndex(a,(function(t){return t.context===o}));a[s]&&(a[s].context=null,a[s].interactable=null),a.splice(s,1)}})}var e,n;return e=t,(n=[{key:"new",value:function(t,e){e=(0,j.default)(e||{},{actions:this.scope.actions});var n=new this.scope.Interactable(t,e,this.scope.document,this.scope.events),r={context:n._context,interactable:n};return this.scope.addDocument(n._doc),this.list.push(n),i.default.string(t)?(this.selectorMap[t]||(this.selectorMap[t]=[]),this.selectorMap[t].push(r)):(n.target[this.scope.id]||Object.defineProperty(t,this.scope.id,{value:[],configurable:!0}),t[this.scope.id].push(r)),this.scope.fire("interactable:new",{target:t,options:e,interactable:n,win:this.scope._win}),n}},{key:"get",value:function(t,e){var n=e&&e.context||this.scope.document,r=i.default.string(t),o=r?this.selectorMap[t]:t[this.scope.id];if(!o)return null;var a=Z.find(o,(function(e){return e.context===n&&(r||e.interactable.inContext(t))}));return a&&a.interactable}},{key:"forEachMatch",value:function(t,e){for(var n=0;n<this.list.length;n++){var r=this.list[n],o=void 0;if((i.default.string(r.target)?i.default.element(t)&&_.matchesSelector(t,r.target):t===r.target)&&r.inContext(t)&&(o=e(r)),void 0!==o)return o}}}])&&_n(e.prototype,n),t}();wn.InteractableSet=On;var Sn={};function En(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function Tn(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Mn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return jn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?jn(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function jn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}Object.defineProperty(Sn,"__esModule",{value:!0}),Sn.default=void 0;var kn=function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),Tn(this,"currentTarget",void 0),Tn(this,"originalEvent",void 0),Tn(this,"type",void 0),this.originalEvent=e,(0,F.default)(this,e)}var e,n;return e=t,(n=[{key:"preventOriginalDefault",value:function(){this.originalEvent.preventDefault()}},{key:"stopPropagation",value:function(){this.originalEvent.stopPropagation()}},{key:"stopImmediatePropagation",value:function(){this.originalEvent.stopImmediatePropagation()}}])&&En(e.prototype,n),t}();function In(t){if(!i.default.object(t))return{capture:!!t,passive:!1};var e=(0,j.default)({},t);return e.capture=!!t.capture,e.passive=!!t.passive,e}var Dn={id:"events",install:function(t){var e,n=[],r={},o=[],a={add:s,remove:l,addDelegate:function(t,e,n,i,a){var l=In(a);if(!r[n]){r[n]=[];for(var f=0;f<o.length;f++){var d=o[f];s(d,n,u),s(d,n,c,!0)}}var p=r[n],v=Z.find(p,(function(n){return n.selector===t&&n.context===e}));v||(v={selector:t,context:e,listeners:[]},p.push(v)),v.listeners.push([i,l])},removeDelegate:function(t,e,n,o,i){var a,s=In(i),f=r[n],d=!1;if(f)for(a=f.length-1;a>=0;a--){var p=f[a];if(p.selector===t&&p.context===e){for(var v=p.listeners,h=v.length-1;h>=0;h--){var g=Mn(v[h],2),y=g[0],m=g[1],b=m.capture,x=m.passive;if(y===o&&b===s.capture&&x===s.passive){v.splice(h,1),v.length||(f.splice(a,1),l(e,n,u),l(e,n,c,!0)),d=!0;break}}if(d)break}}},delegateListener:u,delegateUseCapture:c,delegatedEvents:r,documents:o,targets:n,supportsOptions:!1,supportsPassive:!1};function s(t,e,r,o){var i=In(o),s=Z.find(n,(function(e){return e.eventTarget===t}));s||(s={eventTarget:t,events:{}},n.push(s)),s.events[e]||(s.events[e]=[]),t.addEventListener&&!Z.contains(s.events[e],r)&&(t.addEventListener(e,r,a.supportsOptions?i:i.capture),s.events[e].push(r))}function l(t,e,r,o){var i=In(o),s=Z.findIndex(n,(function(e){return e.eventTarget===t})),u=n[s];if(u&&u.events)if("all"!==e){var c=!1,f=u.events[e];if(f){if("all"===r){for(var d=f.length-1;d>=0;d--)l(t,e,f[d],i);return}for(var p=0;p<f.length;p++)if(f[p]===r){t.removeEventListener(e,r,a.supportsOptions?i:i.capture),f.splice(p,1),0===f.length&&(delete u.events[e],c=!0);break}}c&&!Object.keys(u.events).length&&n.splice(s,1)}else for(e in u.events)u.events.hasOwnProperty(e)&&l(t,e,"all")}function u(t,e){for(var n=In(e),o=new kn(t),a=r[t.type],s=Mn(B.getEventTargets(t),1)[0],l=s;i.default.element(l);){for(var u=0;u<a.length;u++){var c=a[u],f=c.selector,d=c.context;if(_.matchesSelector(l,f)&&_.nodeContains(d,s)&&_.nodeContains(d,l)){var p=c.listeners;o.currentTarget=l;for(var v=0;v<p.length;v++){var h=Mn(p[v],2),g=h[0],y=h[1],m=y.capture,b=y.passive;m===n.capture&&b===n.passive&&g(o)}}}l=_.parentNode(l)}}function c(t){return u(t,!0)}return null==(e=t.document)||e.createElement("div").addEventListener("test",null,{get capture(){return a.supportsOptions=!0},get passive(){return a.supportsPassive=!0}}),t.events=a,a}};Sn.default=Dn;var An={};Object.defineProperty(An,"__esModule",{value:!0}),An.default=void 0;var Rn={methodOrder:["simulationResume","mouseOrPen","hasPointer","idle"],search:function(t){for(var e=0;e<Rn.methodOrder.length;e++){var n;n=Rn.methodOrder[e];var r=Rn[n](t);if(r)return r}return null},simulationResume:function(t){var e=t.pointerType,n=t.eventType,r=t.eventTarget,o=t.scope;if(!/down|start/i.test(n))return null;for(var i=0;i<o.interactions.list.length;i++){var a=o.interactions.list[i],s=r;if(a.simulation&&a.simulation.allowResume&&a.pointerType===e)for(;s;){if(s===a.element)return a;s=_.parentNode(s)}}return null},mouseOrPen:function(t){var e,n=t.pointerId,r=t.pointerType,o=t.eventType,i=t.scope;if("mouse"!==r&&"pen"!==r)return null;for(var a=0;a<i.interactions.list.length;a++){var s=i.interactions.list[a];if(s.pointerType===r){if(s.simulation&&!zn(s,n))continue;if(s.interacting())return s;e||(e=s)}}if(e)return e;for(var l=0;l<i.interactions.list.length;l++){var u=i.interactions.list[l];if(!(u.pointerType!==r||/down/i.test(o)&&u.simulation))return u}return null},hasPointer:function(t){for(var e=t.pointerId,n=t.scope,r=0;r<n.interactions.list.length;r++){var o=n.interactions.list[r];if(zn(o,e))return o}return null},idle:function(t){for(var e=t.pointerType,n=t.scope,r=0;r<n.interactions.list.length;r++){var o=n.interactions.list[r];if(1===o.pointers.length){var i=o.interactable;if(i&&(!i.options.gesture||!i.options.gesture.enabled))continue}else if(o.pointers.length>=2)continue;if(!o.interacting()&&e===o.pointerType)return o}return null}};function zn(t,e){return t.pointers.some((function(t){return t.id===e}))}var Cn=Rn;An.default=Cn;var Fn={};function Xn(t){return(Xn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Yn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Bn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Bn(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Bn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function Wn(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Ln(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function Un(t,e){return(Un=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function Vn(t,e){return!e||"object"!==Xn(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function Nn(t){return(Nn=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}Object.defineProperty(Fn,"__esModule",{value:!0}),Fn.default=void 0;var qn=["pointerDown","pointerMove","pointerUp","updatePointer","removePointer","windowBlur"];function $n(t,e){return function(n){var r=e.interactions.list,o=B.getPointerType(n),i=Yn(B.getEventTargets(n),2),a=i[0],s=i[1],l=[];if(/^touch/.test(n.type)){e.prevTouchTime=e.now();for(var u=0;u<n.changedTouches.length;u++){var c=n.changedTouches[u],f={pointer:c,pointerId:B.getPointerId(c),pointerType:o,eventType:n.type,eventTarget:a,curEventTarget:s,scope:e},d=Gn(f);l.push([f.pointer,f.eventTarget,f.curEventTarget,d])}}else{var p=!1;if(!b.default.supportsPointerEvent&&/mouse/.test(n.type)){for(var v=0;v<r.length&&!p;v++)p="mouse"!==r[v].pointerType&&r[v].pointerIsDown;p=p||e.now()-e.prevTouchTime<500||0===n.timeStamp}if(!p){var h={pointer:n,pointerId:B.getPointerId(n),pointerType:o,eventType:n.type,curEventTarget:s,eventTarget:a,scope:e},g=Gn(h);l.push([h.pointer,h.eventTarget,h.curEventTarget,g])}}for(var y=0;y<l.length;y++){var m=Yn(l[y],4),x=m[0],w=m[1],_=m[2];m[3][t](x,n,w,_)}}}function Gn(t){var e=t.pointerType,n=t.scope,r={interaction:An.default.search(t),searchDetails:t};return n.fire("interactions:find",r),r.interaction||n.interactions.new({pointerType:e})}function Hn(t,e){var n=t.doc,r=t.scope,o=t.options,i=r.interactions.docEvents,a=r.events,s=a[e];for(var l in r.browser.isIOS&&!o.events&&(o.events={passive:!1}),a.delegatedEvents)s(n,l,a.delegateListener),s(n,l,a.delegateUseCapture,!0);for(var u=o&&o.events,c=0;c<i.length;c++){var f=i[c];s(n,f.type,f.listener,u)}}var Kn={id:"core/interactions",install:function(t){for(var e={},n=0;n<qn.length;n++){var r=qn[n];e[r]=$n(r,t)}var o,i=b.default.pEventTypes;function a(){for(var e=0;e<t.interactions.list.length;e++){var n=t.interactions.list[e];if(n.pointerIsDown&&"touch"===n.pointerType&&!n._interacting)for(var r=function(){var e=n.pointers[o];t.documents.some((function(t){var n=t.doc;return(0,_.nodeContains)(n,e.downTarget)}))||n.removePointer(e.pointer,e.event)},o=0;o<n.pointers.length;o++)r()}}(o=h.default.PointerEvent?[{type:i.down,listener:a},{type:i.down,listener:e.pointerDown},{type:i.move,listener:e.pointerMove},{type:i.up,listener:e.pointerUp},{type:i.cancel,listener:e.pointerUp}]:[{type:"mousedown",listener:e.pointerDown},{type:"mousemove",listener:e.pointerMove},{type:"mouseup",listener:e.pointerUp},{type:"touchstart",listener:a},{type:"touchstart",listener:e.pointerDown},{type:"touchmove",listener:e.pointerMove},{type:"touchend",listener:e.pointerUp},{type:"touchcancel",listener:e.pointerUp}]).push({type:"blur",listener:function(e){for(var n=0;n<t.interactions.list.length;n++)t.interactions.list[n].documentBlur(e)}}),t.prevTouchTime=0,t.Interaction=function(e){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&Un(t,e)}(s,e);var n,r,o,i,a=(o=s,i=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=Nn(o);if(i){var n=Nn(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return Vn(this,t)});function s(){return Wn(this,s),a.apply(this,arguments)}return n=s,(r=[{key:"pointerMoveTolerance",get:function(){return t.interactions.pointerMoveTolerance},set:function(e){t.interactions.pointerMoveTolerance=e}},{key:"_now",value:function(){return t.now()}}])&&Ln(n.prototype,r),s}(Le.default),t.interactions={list:[],new:function(e){e.scopeFire=function(e,n){return t.fire(e,n)};var n=new t.Interaction(e);return t.interactions.list.push(n),n},listeners:e,docEvents:o,pointerMoveTolerance:1},t.usePlugin(se.default)},listeners:{"scope:add-document":function(t){return Hn(t,"add")},"scope:remove-document":function(t){return Hn(t,"remove")},"interactable:unset":function(t,e){for(var n=t.interactable,r=e.interactions.list.length-1;r>=0;r--){var o=e.interactions.list[r];o.interactable===n&&(o.stop(),e.fire("interactions:destroy",{interaction:o}),o.destroy(),e.interactions.list.length>2&&e.interactions.list.splice(r,1))}}},onDocSignal:Hn,doOnInteractions:$n,methodNames:qn};Fn.default=Kn;var Zn={};function Jn(t){return(Jn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function Qn(t,e,n){return(Qn="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var r=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=nr(t)););return t}(t,e);if(r){var o=Object.getOwnPropertyDescriptor(r,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}function tr(t,e){return(tr=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function er(t,e){return!e||"object"!==Jn(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function nr(t){return(nr=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function rr(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function or(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function ir(t,e,n){return e&&or(t.prototype,e),n&&or(t,n),t}function ar(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(Zn,"__esModule",{value:!0}),Zn.initScope=lr,Zn.Scope=void 0;var sr=function(){function t(){var e=this;rr(this,t),ar(this,"id","__interact_scope_".concat(Math.floor(100*Math.random()))),ar(this,"isInitialized",!1),ar(this,"listenerMaps",[]),ar(this,"browser",b.default),ar(this,"defaults",(0,ge.default)(Me.defaults)),ar(this,"Eventable",cn.Eventable),ar(this,"actions",{map:{},phases:{start:!0,move:!0,end:!0},methodDict:{},phaselessTypes:{}}),ar(this,"interactStatic",(0,gn.createInteractStatic)(this)),ar(this,"InteractEvent",je.InteractEvent),ar(this,"Interactable",void 0),ar(this,"interactables",new wn.InteractableSet(this)),ar(this,"_win",void 0),ar(this,"document",void 0),ar(this,"window",void 0),ar(this,"documents",[]),ar(this,"_plugins",{list:[],map:{}}),ar(this,"onWindowUnload",(function(t){return e.removeDocument(t.target)}));var n=this;this.Interactable=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&tr(t,e)}(i,t);var e,r,o=(e=i,r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,n=nr(e);if(r){var o=nr(this).constructor;t=Reflect.construct(n,arguments,o)}else t=n.apply(this,arguments);return er(this,t)});function i(){return rr(this,i),o.apply(this,arguments)}return ir(i,[{key:"_defaults",get:function(){return n.defaults}},{key:"set",value:function(t){return Qn(nr(i.prototype),"set",this).call(this,t),n.fire("interactable:set",{options:t,interactable:this}),this}},{key:"unset",value:function(){Qn(nr(i.prototype),"unset",this).call(this),n.interactables.list.splice(n.interactables.list.indexOf(this),1),n.fire("interactable:unset",{interactable:this})}}]),i}(yn.Interactable)}return ir(t,[{key:"addListeners",value:function(t,e){this.listenerMaps.push({id:e,map:t})}},{key:"fire",value:function(t,e){for(var n=0;n<this.listenerMaps.length;n++){var r=this.listenerMaps[n].map[t];if(r&&!1===r(e,this,t))return!1}}},{key:"init",value:function(t){return this.isInitialized?this:lr(this,t)}},{key:"pluginIsInstalled",value:function(t){return this._plugins.map[t.id]||-1!==this._plugins.list.indexOf(t)}},{key:"usePlugin",value:function(t,e){if(!this.isInitialized)return this;if(this.pluginIsInstalled(t))return this;if(t.id&&(this._plugins.map[t.id]=t),this._plugins.list.push(t),t.install&&t.install(this,e),t.listeners&&t.before){for(var n=0,r=this.listenerMaps.length,o=t.before.reduce((function(t,e){return t[e]=!0,t[ur(e)]=!0,t}),{});n<r;n++){var i=this.listenerMaps[n].id;if(o[i]||o[ur(i)])break}this.listenerMaps.splice(n,0,{id:t.id,map:t.listeners})}else t.listeners&&this.listenerMaps.push({id:t.id,map:t.listeners});return this}},{key:"addDocument",value:function(t,n){if(-1!==this.getDocIndex(t))return!1;var r=e.getWindow(t);n=n?(0,j.default)({},n):{},this.documents.push({doc:t,options:n}),this.events.documents.push(t),t!==this.document&&this.events.add(r,"unload",this.onWindowUnload),this.fire("scope:add-document",{doc:t,window:r,scope:this,options:n})}},{key:"removeDocument",value:function(t){var n=this.getDocIndex(t),r=e.getWindow(t),o=this.documents[n].options;this.events.remove(r,"unload",this.onWindowUnload),this.documents.splice(n,1),this.events.documents.splice(n,1),this.fire("scope:remove-document",{doc:t,window:r,scope:this,options:o})}},{key:"getDocIndex",value:function(t){for(var e=0;e<this.documents.length;e++)if(this.documents[e].doc===t)return e;return-1}},{key:"getDocOptions",value:function(t){var e=this.getDocIndex(t);return-1===e?null:this.documents[e].options}},{key:"now",value:function(){return(this.window.Date||Date).now()}}]),t}();function lr(t,n){return t.isInitialized=!0,i.default.window(n)&&e.init(n),h.default.init(n),b.default.init(n),jt.default.init(n),t.window=n,t.document=n.document,t.usePlugin(Fn.default),t.usePlugin(Sn.default),t}function ur(t){return t&&t.replace(/\/.*$/,"")}Zn.Scope=sr;var cr={};Object.defineProperty(cr,"__esModule",{value:!0}),cr.default=void 0;var fr=new Zn.Scope,dr=fr.interactStatic;cr.default=dr;var pr="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0;fr.init(pr);var vr={};Object.defineProperty(vr,"__esModule",{value:!0}),vr.default=void 0,vr.default=function(){};var hr={};Object.defineProperty(hr,"__esModule",{value:!0}),hr.default=void 0,hr.default=function(){};var gr={};function yr(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return mr(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?mr(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function mr(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}Object.defineProperty(gr,"__esModule",{value:!0}),gr.default=void 0,gr.default=function(t){var e=[["x","y"],["left","top"],["right","bottom"],["width","height"]].filter((function(e){var n=yr(e,2),r=n[0],o=n[1];return r in t||o in t})),n=function(n,r){for(var o=t.range,i=t.limits,a=void 0===i?{left:-1/0,right:1/0,top:-1/0,bottom:1/0}:i,s=t.offset,l=void 0===s?{x:0,y:0}:s,u={range:o,grid:t,x:null,y:null},c=0;c<e.length;c++){var f=yr(e[c],2),d=f[0],p=f[1],v=Math.round((n-l.x)/t[d]),h=Math.round((r-l.y)/t[p]);u[d]=Math.max(a.left,Math.min(a.right,v*t[d]+l.x)),u[p]=Math.max(a.top,Math.min(a.bottom,h*t[p]+l.y))}return u};return n.grid=t,n.coordFields=e,n};var br={};Object.defineProperty(br,"__esModule",{value:!0}),Object.defineProperty(br,"edgeTarget",{enumerable:!0,get:function(){return vr.default}}),Object.defineProperty(br,"elements",{enumerable:!0,get:function(){return hr.default}}),Object.defineProperty(br,"grid",{enumerable:!0,get:function(){return gr.default}});var xr={};Object.defineProperty(xr,"__esModule",{value:!0}),xr.default=void 0;var wr={id:"snappers",install:function(t){var e=t.interactStatic;e.snappers=(0,j.default)(e.snappers||{},br),e.createSnapGrid=e.snappers.grid}};xr.default=wr;var _r={};function Pr(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Or(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Pr(Object(n),!0).forEach((function(e){Sr(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Pr(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Sr(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(_r,"__esModule",{value:!0}),_r.aspectRatio=_r.default=void 0;var Er={start:function(t){var e=t.state,n=t.rect,r=t.edges,o=t.pageCoords,i=e.options.ratio,a=e.options,s=a.equalDelta,l=a.modifiers;"preserve"===i&&(i=n.width/n.height),e.startCoords=(0,j.default)({},o),e.startRect=(0,j.default)({},n),e.ratio=i,e.equalDelta=s;var u=e.linkedEdges={top:r.top||r.left&&!r.bottom,left:r.left||r.top&&!r.right,bottom:r.bottom||r.right&&!r.top,right:r.right||r.bottom&&!r.left};if(e.xIsPrimaryAxis=!(!r.left&&!r.right),e.equalDelta)e.edgeSign=(u.left?1:-1)*(u.top?1:-1);else{var c=e.xIsPrimaryAxis?u.top:u.left;e.edgeSign=c?-1:1}if((0,j.default)(t.edges,u),l&&l.length){var f=new ye.default(t.interaction);f.copyFrom(t.interaction.modification),f.prepareStates(l),e.subModification=f,f.startAll(Or({},t))}},set:function(t){var e=t.state,n=t.rect,r=t.coords,o=(0,j.default)({},r),i=e.equalDelta?Tr:Mr;if(i(e,e.xIsPrimaryAxis,r,n),!e.subModification)return null;var a=(0,j.default)({},n);(0,k.addEdges)(e.linkedEdges,a,{x:r.x-o.x,y:r.y-o.y});var s=e.subModification.setAll(Or(Or({},t),{},{rect:a,edges:e.linkedEdges,pageCoords:r,prevCoords:r,prevRect:a})),l=s.delta;return s.changed&&(i(e,Math.abs(l.x)>Math.abs(l.y),s.coords,s.rect),(0,j.default)(r,s.coords)),s.eventProps},defaults:{ratio:"preserve",equalDelta:!1,modifiers:[],enabled:!1}};function Tr(t,e,n){var r=t.startCoords,o=t.edgeSign;e?n.y=r.y+(n.x-r.x)*o:n.x=r.x+(n.y-r.y)*o}function Mr(t,e,n,r){var o=t.startRect,i=t.startCoords,a=t.ratio,s=t.edgeSign;if(e){var l=r.width/a;n.y=i.y+(l-o.height)*s}else{var u=r.height*a;n.x=i.x+(u-o.width)*s}}_r.aspectRatio=Er;var jr=(0,Se.makeModifier)(Er,"aspectRatio");_r.default=jr;var kr={};Object.defineProperty(kr,"__esModule",{value:!0}),kr.default=void 0;var Ir=function(){};Ir._defaults={};var Dr=Ir;kr.default=Dr;var Ar={};Object.defineProperty(Ar,"__esModule",{value:!0}),Object.defineProperty(Ar,"default",{enumerable:!0,get:function(){return kr.default}});var Rr={};function zr(t,e,n){return i.default.func(t)?k.resolveRectLike(t,e.interactable,e.element,[n.x,n.y,e]):k.resolveRectLike(t,e.interactable,e.element)}Object.defineProperty(Rr,"__esModule",{value:!0}),Rr.getRestrictionRect=zr,Rr.restrict=Rr.default=void 0;var Cr={start:function(t){var e=t.rect,n=t.startOffset,r=t.state,o=t.interaction,i=t.pageCoords,a=r.options,s=a.elementRect,l=(0,j.default)({left:0,top:0,right:0,bottom:0},a.offset||{});if(e&&s){var u=zr(a.restriction,o,i);if(u){var c=u.right-u.left-e.width,f=u.bottom-u.top-e.height;c<0&&(l.left+=c,l.right+=c),f<0&&(l.top+=f,l.bottom+=f)}l.left+=n.left-e.width*s.left,l.top+=n.top-e.height*s.top,l.right+=n.right-e.width*(1-s.right),l.bottom+=n.bottom-e.height*(1-s.bottom)}r.offset=l},set:function(t){var e=t.coords,n=t.interaction,r=t.state,o=r.options,i=r.offset,a=zr(o.restriction,n,e);if(a){var s=k.xywhToTlbr(a);e.x=Math.max(Math.min(s.right-i.right,e.x),s.left+i.left),e.y=Math.max(Math.min(s.bottom-i.bottom,e.y),s.top+i.top)}},defaults:{restriction:null,elementRect:null,offset:null,endOnly:!1,enabled:!1}};Rr.restrict=Cr;var Fr=(0,Se.makeModifier)(Cr,"restrict");Rr.default=Fr;var Xr={};Object.defineProperty(Xr,"__esModule",{value:!0}),Xr.restrictEdges=Xr.default=void 0;var Yr={top:1/0,left:1/0,bottom:-1/0,right:-1/0},Br={top:-1/0,left:-1/0,bottom:1/0,right:1/0};function Wr(t,e){for(var n=["top","left","bottom","right"],r=0;r<n.length;r++){var o=n[r];o in t||(t[o]=e[o])}return t}var Lr={noInner:Yr,noOuter:Br,start:function(t){var e,n=t.interaction,r=t.startOffset,o=t.state,i=o.options;if(i){var a=(0,Rr.getRestrictionRect)(i.offset,n,n.coords.start.page);e=k.rectToXY(a)}e=e||{x:0,y:0},o.offset={top:e.y+r.top,left:e.x+r.left,bottom:e.y-r.bottom,right:e.x-r.right}},set:function(t){var e=t.coords,n=t.edges,r=t.interaction,o=t.state,i=o.offset,a=o.options;if(n){var s=(0,j.default)({},e),l=(0,Rr.getRestrictionRect)(a.inner,r,s)||{},u=(0,Rr.getRestrictionRect)(a.outer,r,s)||{};Wr(l,Yr),Wr(u,Br),n.top?e.y=Math.min(Math.max(u.top+i.top,s.y),l.top+i.top):n.bottom&&(e.y=Math.max(Math.min(u.bottom+i.bottom,s.y),l.bottom+i.bottom)),n.left?e.x=Math.min(Math.max(u.left+i.left,s.x),l.left+i.left):n.right&&(e.x=Math.max(Math.min(u.right+i.right,s.x),l.right+i.right))}},defaults:{inner:null,outer:null,offset:null,endOnly:!1,enabled:!1}};Xr.restrictEdges=Lr;var Ur=(0,Se.makeModifier)(Lr,"restrictEdges");Xr.default=Ur;var Vr={};Object.defineProperty(Vr,"__esModule",{value:!0}),Vr.restrictRect=Vr.default=void 0;var Nr=(0,j.default)({get elementRect(){return{top:0,left:0,bottom:1,right:1}},set elementRect(t){}},Rr.restrict.defaults),qr={start:Rr.restrict.start,set:Rr.restrict.set,defaults:Nr};Vr.restrictRect=qr;var $r=(0,Se.makeModifier)(qr,"restrictRect");Vr.default=$r;var Gr={};Object.defineProperty(Gr,"__esModule",{value:!0}),Gr.restrictSize=Gr.default=void 0;var Hr={width:-1/0,height:-1/0},Kr={width:1/0,height:1/0},Zr={start:function(t){return Xr.restrictEdges.start(t)},set:function(t){var e=t.interaction,n=t.state,r=t.rect,o=t.edges,i=n.options;if(o){var a=k.tlbrToXywh((0,Rr.getRestrictionRect)(i.min,e,t.coords))||Hr,s=k.tlbrToXywh((0,Rr.getRestrictionRect)(i.max,e,t.coords))||Kr;n.options={endOnly:i.endOnly,inner:(0,j.default)({},Xr.restrictEdges.noInner),outer:(0,j.default)({},Xr.restrictEdges.noOuter)},o.top?(n.options.inner.top=r.bottom-a.height,n.options.outer.top=r.bottom-s.height):o.bottom&&(n.options.inner.bottom=r.top+a.height,n.options.outer.bottom=r.top+s.height),o.left?(n.options.inner.left=r.right-a.width,n.options.outer.left=r.right-s.width):o.right&&(n.options.inner.right=r.left+a.width,n.options.outer.right=r.left+s.width),Xr.restrictEdges.set(t),n.options=i}},defaults:{min:null,max:null,endOnly:!1,enabled:!1}};Gr.restrictSize=Zr;var Jr=(0,Se.makeModifier)(Zr,"restrictSize");Gr.default=Jr;var Qr={};Object.defineProperty(Qr,"__esModule",{value:!0}),Object.defineProperty(Qr,"default",{enumerable:!0,get:function(){return kr.default}});var to={};Object.defineProperty(to,"__esModule",{value:!0}),to.snap=to.default=void 0;var eo={start:function(t){var e,n=t.interaction,r=t.interactable,o=t.element,i=t.rect,a=t.state,s=t.startOffset,l=a.options,u=l.offsetWithOrigin?function(t){var e=t.interaction.element;return(0,k.rectToXY)((0,k.resolveRectLike)(t.state.options.origin,null,null,[e]))||(0,A.default)(t.interactable,e,t.interaction.prepared.name)}(t):{x:0,y:0};if("startCoords"===l.offset)e={x:n.coords.start.page.x,y:n.coords.start.page.y};else{var c=(0,k.resolveRectLike)(l.offset,r,o,[n]);(e=(0,k.rectToXY)(c)||{x:0,y:0}).x+=u.x,e.y+=u.y}var f=l.relativePoints;a.offsets=i&&f&&f.length?f.map((function(t,n){return{index:n,relativePoint:t,x:s.left-i.width*t.x+e.x,y:s.top-i.height*t.y+e.y}})):[{index:0,relativePoint:null,x:e.x,y:e.y}]},set:function(t){var e=t.interaction,n=t.coords,r=t.state,o=r.options,a=r.offsets,s=(0,A.default)(e.interactable,e.element,e.prepared.name),l=(0,j.default)({},n),u=[];o.offsetWithOrigin||(l.x-=s.x,l.y-=s.y);for(var c=0;c<a.length;c++)for(var f=a[c],d=l.x-f.x,p=l.y-f.y,v=0,h=o.targets.length;v<h;v++){var g,y=o.targets[v];(g=i.default.func(y)?y(d,p,e._proxy,f,v):y)&&u.push({x:(i.default.number(g.x)?g.x:d)+f.x,y:(i.default.number(g.y)?g.y:p)+f.y,range:i.default.number(g.range)?g.range:o.range,source:y,index:v,offset:f})}for(var m={target:null,inRange:!1,distance:0,range:0,delta:{x:0,y:0}},b=0;b<u.length;b++){var x=u[b],w=x.range,_=x.x-l.x,P=x.y-l.y,O=(0,C.default)(_,P),S=O<=w;w===1/0&&m.inRange&&m.range!==1/0&&(S=!1),m.target&&!(S?m.inRange&&w!==1/0?O/w<m.distance/m.range:w===1/0&&m.range!==1/0||O<m.distance:!m.inRange&&O<m.distance)||(m.target=x,m.distance=O,m.range=w,m.inRange=S,m.delta.x=_,m.delta.y=P)}return m.inRange&&(n.x=m.target.x,n.y=m.target.y),r.closest=m,m},defaults:{range:1/0,targets:null,offset:null,offsetWithOrigin:!0,origin:null,relativePoints:null,endOnly:!1,enabled:!1}};to.snap=eo;var no=(0,Se.makeModifier)(eo,"snap");to.default=no;var ro={};function oo(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}Object.defineProperty(ro,"__esModule",{value:!0}),ro.snapSize=ro.default=void 0;var io={start:function(t){var e=t.state,n=t.edges,r=e.options;if(!n)return null;t.state={options:{targets:null,relativePoints:[{x:n.left?0:1,y:n.top?0:1}],offset:r.offset||"self",origin:{x:0,y:0},range:r.range}},e.targetFields=e.targetFields||[["width","height"],["x","y"]],to.snap.start(t),e.offsets=t.state.offsets,t.state=e},set:function(t){var e,n,r=t.interaction,o=t.state,a=t.coords,s=o.options,l=o.offsets,u={x:a.x-l[0].x,y:a.y-l[0].y};o.options=(0,j.default)({},s),o.options.targets=[];for(var c=0;c<(s.targets||[]).length;c++){var f=(s.targets||[])[c],d=void 0;if(d=i.default.func(f)?f(u.x,u.y,r):f){for(var p=0;p<o.targetFields.length;p++){var v=(e=o.targetFields[p],n=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(e,n)||function(t,e){if(t){if("string"==typeof t)return oo(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?oo(t,e):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=v[0],g=v[1];if(h in d||g in d){d.x=d[h],d.y=d[g];break}}o.options.targets.push(d)}}var y=to.snap.set(t);return o.options=s,y},defaults:{range:1/0,targets:null,offset:null,endOnly:!1,enabled:!1}};ro.snapSize=io;var ao=(0,Se.makeModifier)(io,"snapSize");ro.default=ao;var so={};Object.defineProperty(so,"__esModule",{value:!0}),so.snapEdges=so.default=void 0;var lo={start:function(t){var e=t.edges;return e?(t.state.targetFields=t.state.targetFields||[[e.left?"left":"right",e.top?"top":"bottom"]],ro.snapSize.start(t)):null},set:ro.snapSize.set,defaults:(0,j.default)((0,ge.default)(ro.snapSize.defaults),{targets:null,range:null,offset:{x:0,y:0}})};so.snapEdges=lo;var uo=(0,Se.makeModifier)(lo,"snapEdges");so.default=uo;var co={};Object.defineProperty(co,"__esModule",{value:!0}),Object.defineProperty(co,"default",{enumerable:!0,get:function(){return kr.default}});var fo={};Object.defineProperty(fo,"__esModule",{value:!0}),Object.defineProperty(fo,"default",{enumerable:!0,get:function(){return kr.default}});var po={};Object.defineProperty(po,"__esModule",{value:!0}),po.default=void 0;var vo={aspectRatio:_r.default,restrictEdges:Xr.default,restrict:Rr.default,restrictRect:Vr.default,restrictSize:Gr.default,snapEdges:so.default,snap:to.default,snapSize:ro.default,spring:co.default,avoid:Ar.default,transform:fo.default,rubberband:Qr.default};po.default=vo;var ho={};Object.defineProperty(ho,"__esModule",{value:!0}),ho.default=void 0;var go={id:"modifiers",install:function(t){var e=t.interactStatic;for(var n in t.usePlugin(Se.default),t.usePlugin(xr.default),e.modifiers=po.default,po.default){var r=po.default[n],o=r._defaults,i=r._methods;o._methods=i,t.defaults.perAction[n]=o}}};ho.default=go;var yo={};function mo(t){return(mo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function bo(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function xo(t,e){return(xo=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function wo(t,e){return!e||"object"!==mo(e)&&"function"!=typeof e?_o(t):e}function _o(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function Po(t){return(Po=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function Oo(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}Object.defineProperty(yo,"__esModule",{value:!0}),yo.PointerEvent=yo.default=void 0;var So=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&xo(t,e)}(a,t);var e,n,r,o,i=(r=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=Po(r);if(o){var n=Po(this).constructor;t=Reflect.construct(e,arguments,n)}else t=e.apply(this,arguments);return wo(this,t)});function a(t,e,n,r,o,s){var l;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,a),Oo(_o(l=i.call(this,o)),"type",void 0),Oo(_o(l),"originalEvent",void 0),Oo(_o(l),"pointerId",void 0),Oo(_o(l),"pointerType",void 0),Oo(_o(l),"double",void 0),Oo(_o(l),"pageX",void 0),Oo(_o(l),"pageY",void 0),Oo(_o(l),"clientX",void 0),Oo(_o(l),"clientY",void 0),Oo(_o(l),"dt",void 0),Oo(_o(l),"eventable",void 0),B.pointerExtend(_o(l),n),n!==e&&B.pointerExtend(_o(l),e),l.timeStamp=s,l.originalEvent=n,l.type=t,l.pointerId=B.getPointerId(e),l.pointerType=B.getPointerType(e),l.target=r,l.currentTarget=null,"tap"===t){var u=o.getPointerIndex(e);l.dt=l.timeStamp-o.pointers[u].downTime;var c=l.timeStamp-o.tapTime;l.double=!!(o.prevTap&&"doubletap"!==o.prevTap.type&&o.prevTap.target===l.target&&c<500)}else"doubletap"===t&&(l.dt=e.timeStamp-o.tapTime);return l}return e=a,(n=[{key:"_subtractOrigin",value:function(t){var e=t.x,n=t.y;return this.pageX-=e,this.pageY-=n,this.clientX-=e,this.clientY-=n,this}},{key:"_addOrigin",value:function(t){var e=t.x,n=t.y;return this.pageX+=e,this.pageY+=n,this.clientX+=e,this.clientY+=n,this}},{key:"preventDefault",value:function(){this.originalEvent.preventDefault()}}])&&bo(e.prototype,n),a}($.BaseEvent);yo.PointerEvent=yo.default=So;var Eo={};Object.defineProperty(Eo,"__esModule",{value:!0}),Eo.default=void 0;var To={id:"pointer-events/base",before:["inertia","modifiers","auto-start","actions"],install:function(t){t.pointerEvents=To,t.defaults.actions.pointerEvents=To.defaults,(0,j.default)(t.actions.phaselessTypes,To.types)},listeners:{"interactions:new":function(t){var e=t.interaction;e.prevTap=null,e.tapTime=0},"interactions:update-pointer":function(t){var e=t.down,n=t.pointerInfo;!e&&n.hold||(n.hold={duration:1/0,timeout:null})},"interactions:move":function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;t.duplicate||n.pointerIsDown&&!n.pointerWasMoved||(n.pointerIsDown&&ko(t),Mo({interaction:n,pointer:r,event:o,eventTarget:i,type:"move"},e))},"interactions:down":function(t,e){!function(t,e){for(var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget,a=t.pointerIndex,s=n.pointers[a].hold,l=_.getPath(i),u={interaction:n,pointer:r,event:o,eventTarget:i,type:"hold",targets:[],path:l,node:null},c=0;c<l.length;c++){var f=l[c];u.node=f,e.fire("pointerEvents:collect-targets",u)}if(u.targets.length){for(var d=1/0,p=0;p<u.targets.length;p++){var v=u.targets[p].eventable.options.holdDuration;v<d&&(d=v)}s.duration=d,s.timeout=setTimeout((function(){Mo({interaction:n,eventTarget:i,pointer:r,event:o,type:"hold"},e)}),d)}}(t,e),Mo(t,e)},"interactions:up":function(t,e){ko(t),Mo(t,e),function(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget;n.pointerWasMoved||Mo({interaction:n,eventTarget:i,pointer:r,event:o,type:"tap"},e)}(t,e)},"interactions:cancel":function(t,e){ko(t),Mo(t,e)}},PointerEvent:yo.PointerEvent,fire:Mo,collectEventTargets:jo,defaults:{holdDuration:600,ignoreFrom:null,allowFrom:null,origin:{x:0,y:0}},types:{down:!0,move:!0,up:!0,cancel:!0,tap:!0,doubletap:!0,hold:!0}};function Mo(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget,a=t.type,s=t.targets,l=void 0===s?jo(t,e):s,u=new yo.PointerEvent(a,r,o,i,n,e.now());e.fire("pointerEvents:new",{pointerEvent:u});for(var c={interaction:n,pointer:r,event:o,eventTarget:i,targets:l,type:a,pointerEvent:u},f=0;f<l.length;f++){var d=l[f];for(var p in d.props||{})u[p]=d.props[p];var v=(0,A.default)(d.eventable,d.node);if(u._subtractOrigin(v),u.eventable=d.eventable,u.currentTarget=d.node,d.eventable.fire(u),u._addOrigin(v),u.immediatePropagationStopped||u.propagationStopped&&f+1<l.length&&l[f+1].node!==u.currentTarget)break}if(e.fire("pointerEvents:fired",c),"tap"===a){var h=u.double?Mo({interaction:n,pointer:r,event:o,eventTarget:i,type:"doubletap"},e):u;n.prevTap=h,n.tapTime=h.timeStamp}return u}function jo(t,e){var n=t.interaction,r=t.pointer,o=t.event,i=t.eventTarget,a=t.type,s=n.getPointerIndex(r),l=n.pointers[s];if("tap"===a&&(n.pointerWasMoved||!l||l.downTarget!==i))return[];for(var u=_.getPath(i),c={interaction:n,pointer:r,event:o,eventTarget:i,type:a,path:u,targets:[],node:null},f=0;f<u.length;f++){var d=u[f];c.node=d,e.fire("pointerEvents:collect-targets",c)}return"hold"===a&&(c.targets=c.targets.filter((function(t){var e;return t.eventable.options.holdDuration===(null==(e=n.pointers[s])?void 0:e.hold.duration)}))),c.targets}function ko(t){var e=t.interaction,n=t.pointerIndex,r=e.pointers[n].hold;r&&r.timeout&&(clearTimeout(r.timeout),r.timeout=null)}var Io=To;Eo.default=Io;var Do={};function Ao(t){var e=t.interaction;e.holdIntervalHandle&&(clearInterval(e.holdIntervalHandle),e.holdIntervalHandle=null)}Object.defineProperty(Do,"__esModule",{value:!0}),Do.default=void 0;var Ro={id:"pointer-events/holdRepeat",install:function(t){t.usePlugin(Eo.default);var e=t.pointerEvents;e.defaults.holdRepeatInterval=0,e.types.holdrepeat=t.actions.phaselessTypes.holdrepeat=!0},listeners:["move","up","cancel","endall"].reduce((function(t,e){return t["pointerEvents:".concat(e)]=Ao,t}),{"pointerEvents:new":function(t){var e=t.pointerEvent;"hold"===e.type&&(e.count=(e.count||0)+1)},"pointerEvents:fired":function(t,e){var n=t.interaction,r=t.pointerEvent,o=t.eventTarget,i=t.targets;if("hold"===r.type&&i.length){var a=i[0].eventable.options.holdRepeatInterval;a<=0||(n.holdIntervalHandle=setTimeout((function(){e.pointerEvents.fire({interaction:n,eventTarget:o,type:"hold",pointer:r,event:r},e)}),a))}}})};Do.default=Ro;var zo={};function Co(t){return(0,j.default)(this.events.options,t),this}Object.defineProperty(zo,"__esModule",{value:!0}),zo.default=void 0;var Fo={id:"pointer-events/interactableTargets",install:function(t){var e=t.Interactable;e.prototype.pointerEvents=Co;var n=e.prototype._backCompatOption;e.prototype._backCompatOption=function(t,e){var r=n.call(this,t,e);return r===this&&(this.events.options[t]=e),r}},listeners:{"pointerEvents:collect-targets":function(t,e){var n=t.targets,r=t.node,o=t.type,i=t.eventTarget;e.interactables.forEachMatch(r,(function(t){var e=t.events,a=e.options;e.types[o]&&e.types[o].length&&t.testIgnoreAllow(a,r,i)&&n.push({node:r,eventable:e,props:{interactable:t}})}))},"interactable:new":function(t){var e=t.interactable;e.events.getRect=function(t){return e.getRect(t)}},"interactable:set":function(t,e){var n=t.interactable,r=t.options;(0,j.default)(n.events.options,e.pointerEvents.defaults),(0,j.default)(n.events.options,r.pointerEvents||{})}}};zo.default=Fo;var Xo={};Object.defineProperty(Xo,"__esModule",{value:!0}),Xo.default=void 0;var Yo={id:"pointer-events",install:function(t){t.usePlugin(Eo),t.usePlugin(Do.default),t.usePlugin(zo.default)}};Xo.default=Yo;var Bo={};function Wo(t){var e=t.Interactable;t.actions.phases.reflow=!0,e.prototype.reflow=function(e){return function(t,e,n){for(var r=i.default.string(t.target)?Z.from(t._context.querySelectorAll(t.target)):[t.target],o=n.window.Promise,a=o?[]:null,s=function(){var i=r[l],s=t.getRect(i);if(!s)return"break";var u=Z.find(n.interactions.list,(function(n){return n.interacting()&&n.interactable===t&&n.element===i&&n.prepared.name===e.name})),c=void 0;if(u)u.move(),a&&(c=u._reflowPromise||new o((function(t){u._reflowResolve=t})));else{var f=(0,k.tlbrToXywh)(s),d={page:{x:f.x,y:f.y},client:{x:f.x,y:f.y},timeStamp:n.now()},p=B.coordsToEvent(d);c=function(t,e,n,r,o){var i=t.interactions.new({pointerType:"reflow"}),a={interaction:i,event:o,pointer:o,eventTarget:n,phase:"reflow"};i.interactable=e,i.element=n,i.prevEvent=o,i.updatePointer(o,o,n,!0),B.setZeroCoords(i.coords.delta),(0,Yt.copyAction)(i.prepared,r),i._doPhase(a);var s=t.window.Promise,l=s?new s((function(t){i._reflowResolve=t})):void 0;return i._reflowPromise=l,i.start(r,e,n),i._interacting?(i.move(a),i.end(o)):(i.stop(),i._reflowResolve()),i.removePointer(o,o),l}(n,t,i,e,p)}a&&a.push(c)},l=0;l<r.length&&"break"!==s();l++);return a&&o.all(a).then((function(){return t}))}(this,e,t)}}Object.defineProperty(Bo,"__esModule",{value:!0}),Bo.install=Wo,Bo.default=void 0;var Lo={id:"reflow",install:Wo,listeners:{"interactions:stop":function(t,e){var n=t.interaction;"reflow"===n.pointerType&&(n._reflowResolve&&n._reflowResolve(),Z.remove(e.interactions.list,n))}}};Bo.default=Lo;var Uo={exports:{}};function Vo(t){return(Vo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.defineProperty(Uo.exports,"__esModule",{value:!0}),Uo.exports.default=void 0,cr.default.use(se.default),cr.default.use(Ge.default),cr.default.use(Xo.default),cr.default.use(en.default),cr.default.use(ho.default),cr.default.use(ie.default),cr.default.use(Tt.default),cr.default.use(Rt.default),cr.default.use(Bo.default);var No=cr.default;if(Uo.exports.default=No,"object"===Vo(Uo)&&Uo)try{Uo.exports=cr.default}catch(t){}cr.default.default=cr.default,Uo=Uo.exports;var qo={exports:{}};function $o(t){return($o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}Object.defineProperty(qo.exports,"__esModule",{value:!0}),qo.exports.default=void 0;var Go=Uo.default;if(qo.exports.default=Go,"object"===$o(qo)&&qo)try{qo.exports=Uo.default}catch(t){}return Uo.default.default=Uo.default,qo.exports}));
  //# sourceMappingURL=interact.min.js.map
  
  
  /***/ }),
  
  /***/ "50c4":
  /***/ (function(module, exports, __webpack_require__) {
  
  var toInteger = __webpack_require__("a691");
  
  var min = Math.min;
  
  // `ToLength` abstract operation
  // https://tc39.es/ecma262/#sec-tolength
  module.exports = function (argument) {
    return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991
  };
  
  
  /***/ }),
  
  /***/ "512c":
  /***/ (function(module, exports, __webpack_require__) {
  
  var userAgent = __webpack_require__("342f");
  
  var webkit = userAgent.match(/AppleWebKit\/(\d+)\./);
  
  module.exports = !!webkit && +webkit[1];
  
  
  /***/ }),
  
  /***/ "5135":
  /***/ (function(module, exports, __webpack_require__) {
  
  var toObject = __webpack_require__("7b0b");
  
  var hasOwnProperty = {}.hasOwnProperty;
  
  module.exports = Object.hasOwn || function hasOwn(it, key) {
    return hasOwnProperty.call(toObject(it), key);
  };
  
  
  /***/ }),
  
  /***/ "5692":
  /***/ (function(module, exports, __webpack_require__) {
  
  var IS_PURE = __webpack_require__("c430");
  var store = __webpack_require__("c6cd");
  
  (module.exports = function (key, value) {
    return store[key] || (store[key] = value !== undefined ? value : {});
  })('versions', []).push({
    version: '3.15.2',
    mode: IS_PURE ? 'pure' : 'global',
    copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
  });
  
  
  /***/ }),
  
  /***/ "56ef":
  /***/ (function(module, exports, __webpack_require__) {
  
  var getBuiltIn = __webpack_require__("d066");
  var getOwnPropertyNamesModule = __webpack_require__("241c");
  var getOwnPropertySymbolsModule = __webpack_require__("7418");
  var anObject = __webpack_require__("825a");
  
  // all object keys, includes non-enumerable and symbols
  module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {
    var keys = getOwnPropertyNamesModule.f(anObject(it));
    var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;
    return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;
  };
  
  
  /***/ }),
  
  /***/ "5899":
  /***/ (function(module, exports) {
  
  // a string of all valid unicode whitespaces
  module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' +
    '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
  
  
  /***/ }),
  
  /***/ "58a8":
  /***/ (function(module, exports, __webpack_require__) {
  
  var requireObjectCoercible = __webpack_require__("1d80");
  var whitespaces = __webpack_require__("5899");
  
  var whitespace = '[' + whitespaces + ']';
  var ltrim = RegExp('^' + whitespace + whitespace + '*');
  var rtrim = RegExp(whitespace + whitespace + '*$');
  
  // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation
  var createMethod = function (TYPE) {
    return function ($this) {
      var string = String(requireObjectCoercible($this));
      if (TYPE & 1) string = string.replace(ltrim, '');
      if (TYPE & 2) string = string.replace(rtrim, '');
      return string;
    };
  };
  
  module.exports = {
    // `String.prototype.{ trimLeft, trimStart }` methods
    // https://tc39.es/ecma262/#sec-string.prototype.trimstart
    start: createMethod(1),
    // `String.prototype.{ trimRight, trimEnd }` methods
    // https://tc39.es/ecma262/#sec-string.prototype.trimend
    end: createMethod(2),
    // `String.prototype.trim` method
    // https://tc39.es/ecma262/#sec-string.prototype.trim
    trim: createMethod(3)
  };
  
  
  /***/ }),
  
  /***/ "59c9":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.DispatcherWrapper = void 0;
  /**
   * Hides the implementation of the event dispatcher. Will expose methods that
   * are relevent to the event.
   *
   * @export
   * @class DispatcherWrapper
   * @implements {ISubscribable<TEventHandler>}
   * @template TEventHandler The type of event handler.
   */
  class DispatcherWrapper {
      /**
       * Creates an instance of DispatcherWrapper.
       * @param {ISubscribable<TEventHandler>} dispatcher
       *
       * @memberOf DispatcherWrapper
       */
      constructor(dispatcher) {
          this._subscribe = (fn) => dispatcher.subscribe(fn);
          this._unsubscribe = (fn) => dispatcher.unsubscribe(fn);
          this._one = (fn) => dispatcher.one(fn);
          this._has = (fn) => dispatcher.has(fn);
          this._clear = () => dispatcher.clear();
          this._count = () => dispatcher.count;
          this._onSubscriptionChange = () => dispatcher.onSubscriptionChange;
      }
      /**
       * Triggered when subscriptions are changed (added or removed).
       *
       * @readonly
       * @type {ISubscribable<SubscriptionChangeEventHandler>}
       * @memberOf DispatcherWrapper
       */
      get onSubscriptionChange() {
          return this._onSubscriptionChange();
      }
      /**
       * Returns the number of subscriptions.
       *
       * @readonly
       * @type {number}
       * @memberOf DispatcherWrapper
       */
      get count() {
          return this._count();
      }
      /**
       * Subscribe to the event dispatcher.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       * @returns {() => void} A function that unsubscribes the event handler from the event.
       *
       * @memberOf DispatcherWrapper
       */
      subscribe(fn) {
          return this._subscribe(fn);
      }
      /**
       * Subscribe to the event dispatcher.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       * @returns {() => void} A function that unsubscribes the event handler from the event.
       *
       * @memberOf DispatcherWrapper
       */
      sub(fn) {
          return this.subscribe(fn);
      }
      /**
       * Unsubscribe from the event dispatcher.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       *
       * @memberOf DispatcherWrapper
       */
      unsubscribe(fn) {
          this._unsubscribe(fn);
      }
      /**
       * Unsubscribe from the event dispatcher.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       *
       * @memberOf DispatcherWrapper
       */
      unsub(fn) {
          this.unsubscribe(fn);
      }
      /**
       * Subscribe once to the event with the specified name.
       *
       * @returns {() => void} A function that unsubscribes the event handler from the event.
       *
       * @memberOf DispatcherWrapper
       */
      one(fn) {
          return this._one(fn);
      }
      /**
       * Checks it the event has a subscription for the specified handler.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       *
       * @memberOf DispatcherWrapper
       */
      has(fn) {
          return this._has(fn);
      }
      /**
       * Clears all the subscriptions.
       *
       * @memberOf DispatcherWrapper
       */
      clear() {
          this._clear();
      }
  }
  exports.DispatcherWrapper = DispatcherWrapper;
  
  
  /***/ }),
  
  /***/ "5a34":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isRegExp = __webpack_require__("44e7");
  
  module.exports = function (it) {
    if (isRegExp(it)) {
      throw TypeError("The method doesn't accept regular expressions");
    } return it;
  };
  
  
  /***/ }),
  
  /***/ "5c6c":
  /***/ (function(module, exports) {
  
  module.exports = function (bitmap, value) {
    return {
      enumerable: !(bitmap & 1),
      configurable: !(bitmap & 2),
      writable: !(bitmap & 4),
      value: value
    };
  };
  
  
  /***/ }),
  
  /***/ "6547":
  /***/ (function(module, exports, __webpack_require__) {
  
  var toInteger = __webpack_require__("a691");
  var requireObjectCoercible = __webpack_require__("1d80");
  
  // `String.prototype.{ codePointAt, at }` methods implementation
  var createMethod = function (CONVERT_TO_STRING) {
    return function ($this, pos) {
      var S = String(requireObjectCoercible($this));
      var position = toInteger(pos);
      var size = S.length;
      var first, second;
      if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;
      first = S.charCodeAt(position);
      return first < 0xD800 || first > 0xDBFF || position + 1 === size
        || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF
          ? CONVERT_TO_STRING ? S.charAt(position) : first
          : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
    };
  };
  
  module.exports = {
    // `String.prototype.codePointAt` method
    // https://tc39.es/ecma262/#sec-string.prototype.codepointat
    codeAt: createMethod(false),
    // `String.prototype.at` method
    // https://github.com/mathiasbynens/String.prototype.at
    charAt: createMethod(true)
  };
  
  
  /***/ }),
  
  /***/ "65f0":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isObject = __webpack_require__("861d");
  var isArray = __webpack_require__("e8b5");
  var wellKnownSymbol = __webpack_require__("b622");
  
  var SPECIES = wellKnownSymbol('species');
  
  // `ArraySpeciesCreate` abstract operation
  // https://tc39.es/ecma262/#sec-arrayspeciescreate
  module.exports = function (originalArray, length) {
    var C;
    if (isArray(originalArray)) {
      C = originalArray.constructor;
      // cross-realm fallback
      if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
      else if (isObject(C)) {
        C = C[SPECIES];
        if (C === null) C = undefined;
      }
    } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
  };
  
  
  /***/ }),
  
  /***/ "65f7":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.DispatchError = void 0;
  /**
   * Indicates an error with dispatching.
   *
   * @export
   * @class DispatchError
   * @extends {Error}
   */
  class DispatchError extends Error {
      /**
       * Creates an instance of DispatchError.
       * @param {string} message The message.
       *
       * @memberOf DispatchError
       */
      constructor(message) {
          super(message);
      }
  }
  exports.DispatchError = DispatchError;
  
  
  /***/ }),
  
  /***/ "69f3":
  /***/ (function(module, exports, __webpack_require__) {
  
  var NATIVE_WEAK_MAP = __webpack_require__("7f9a");
  var global = __webpack_require__("da84");
  var isObject = __webpack_require__("861d");
  var createNonEnumerableProperty = __webpack_require__("9112");
  var objectHas = __webpack_require__("5135");
  var shared = __webpack_require__("c6cd");
  var sharedKey = __webpack_require__("f772");
  var hiddenKeys = __webpack_require__("d012");
  
  var OBJECT_ALREADY_INITIALIZED = 'Object already initialized';
  var WeakMap = global.WeakMap;
  var set, get, has;
  
  var enforce = function (it) {
    return has(it) ? get(it) : set(it, {});
  };
  
  var getterFor = function (TYPE) {
    return function (it) {
      var state;
      if (!isObject(it) || (state = get(it)).type !== TYPE) {
        throw TypeError('Incompatible receiver, ' + TYPE + ' required');
      } return state;
    };
  };
  
  if (NATIVE_WEAK_MAP || shared.state) {
    var store = shared.state || (shared.state = new WeakMap());
    var wmget = store.get;
    var wmhas = store.has;
    var wmset = store.set;
    set = function (it, metadata) {
      if (wmhas.call(store, it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
      metadata.facade = it;
      wmset.call(store, it, metadata);
      return metadata;
    };
    get = function (it) {
      return wmget.call(store, it) || {};
    };
    has = function (it) {
      return wmhas.call(store, it);
    };
  } else {
    var STATE = sharedKey('state');
    hiddenKeys[STATE] = true;
    set = function (it, metadata) {
      if (objectHas(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);
      metadata.facade = it;
      createNonEnumerableProperty(it, STATE, metadata);
      return metadata;
    };
    get = function (it) {
      return objectHas(it, STATE) ? it[STATE] : {};
    };
    has = function (it) {
      return objectHas(it, STATE);
    };
  }
  
  module.exports = {
    set: set,
    get: get,
    has: has,
    enforce: enforce,
    getterFor: getterFor
  };
  
  
  /***/ }),
  
  /***/ "6eeb":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var createNonEnumerableProperty = __webpack_require__("9112");
  var has = __webpack_require__("5135");
  var setGlobal = __webpack_require__("ce4e");
  var inspectSource = __webpack_require__("8925");
  var InternalStateModule = __webpack_require__("69f3");
  
  var getInternalState = InternalStateModule.get;
  var enforceInternalState = InternalStateModule.enforce;
  var TEMPLATE = String(String).split('String');
  
  (module.exports = function (O, key, value, options) {
    var unsafe = options ? !!options.unsafe : false;
    var simple = options ? !!options.enumerable : false;
    var noTargetGet = options ? !!options.noTargetGet : false;
    var state;
    if (typeof value == 'function') {
      if (typeof key == 'string' && !has(value, 'name')) {
        createNonEnumerableProperty(value, 'name', key);
      }
      state = enforceInternalState(value);
      if (!state.source) {
        state.source = TEMPLATE.join(typeof key == 'string' ? key : '');
      }
    }
    if (O === global) {
      if (simple) O[key] = value;
      else setGlobal(key, value);
      return;
    } else if (!unsafe) {
      delete O[key];
    } else if (!noTargetGet && O[key]) {
      simple = true;
    }
    if (simple) O[key] = value;
    else createNonEnumerableProperty(O, key, value);
  // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
  })(Function.prototype, 'toString', function toString() {
    return typeof this == 'function' && getInternalState(this).source || inspectSource(this);
  });
  
  
  /***/ }),
  
  /***/ "7156":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isObject = __webpack_require__("861d");
  var setPrototypeOf = __webpack_require__("d2bb");
  
  // makes subclassing work correct for wrapped built-ins
  module.exports = function ($this, dummy, Wrapper) {
    var NewTarget, NewTargetPrototype;
    if (
      // it can work only with native `setPrototypeOf`
      setPrototypeOf &&
      // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
      typeof (NewTarget = dummy.constructor) == 'function' &&
      NewTarget !== Wrapper &&
      isObject(NewTargetPrototype = NewTarget.prototype) &&
      NewTargetPrototype !== Wrapper.prototype
    ) setPrototypeOf($this, NewTargetPrototype);
    return $this;
  };
  
  
  /***/ }),
  
  /***/ "7418":
  /***/ (function(module, exports) {
  
  // eslint-disable-next-line es/no-object-getownpropertysymbols -- safe
  exports.f = Object.getOwnPropertySymbols;
  
  
  /***/ }),
  
  /***/ "746f":
  /***/ (function(module, exports, __webpack_require__) {
  
  var path = __webpack_require__("428f");
  var has = __webpack_require__("5135");
  var wrappedWellKnownSymbolModule = __webpack_require__("e538");
  var defineProperty = __webpack_require__("9bf2").f;
  
  module.exports = function (NAME) {
    var Symbol = path.Symbol || (path.Symbol = {});
    if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {
      value: wrappedWellKnownSymbolModule.f(NAME)
    });
  };
  
  
  /***/ }),
  
  /***/ "7839":
  /***/ (function(module, exports) {
  
  // IE8- don't enum bug keys
  module.exports = [
    'constructor',
    'hasOwnProperty',
    'isPrototypeOf',
    'propertyIsEnumerable',
    'toLocaleString',
    'toString',
    'valueOf'
  ];
  
  
  /***/ }),
  
  /***/ "7b0b":
  /***/ (function(module, exports, __webpack_require__) {
  
  var requireObjectCoercible = __webpack_require__("1d80");
  
  // `ToObject` abstract operation
  // https://tc39.es/ecma262/#sec-toobject
  module.exports = function (argument) {
    return Object(requireObjectCoercible(argument));
  };
  
  
  /***/ }),
  
  /***/ "7c73":
  /***/ (function(module, exports, __webpack_require__) {
  
  var anObject = __webpack_require__("825a");
  var defineProperties = __webpack_require__("37e8");
  var enumBugKeys = __webpack_require__("7839");
  var hiddenKeys = __webpack_require__("d012");
  var html = __webpack_require__("1be4");
  var documentCreateElement = __webpack_require__("cc12");
  var sharedKey = __webpack_require__("f772");
  
  var GT = '>';
  var LT = '<';
  var PROTOTYPE = 'prototype';
  var SCRIPT = 'script';
  var IE_PROTO = sharedKey('IE_PROTO');
  
  var EmptyConstructor = function () { /* empty */ };
  
  var scriptTag = function (content) {
    return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
  };
  
  // Create object with fake `null` prototype: use ActiveX Object with cleared prototype
  var NullProtoObjectViaActiveX = function (activeXDocument) {
    activeXDocument.write(scriptTag(''));
    activeXDocument.close();
    var temp = activeXDocument.parentWindow.Object;
    activeXDocument = null; // avoid memory leak
    return temp;
  };
  
  // Create object with fake `null` prototype: use iframe Object with cleared prototype
  var NullProtoObjectViaIFrame = function () {
    // Thrash, waste and sodomy: IE GC bug
    var iframe = documentCreateElement('iframe');
    var JS = 'java' + SCRIPT + ':';
    var iframeDocument;
    iframe.style.display = 'none';
    html.appendChild(iframe);
    // https://github.com/zloirock/core-js/issues/475
    iframe.src = String(JS);
    iframeDocument = iframe.contentWindow.document;
    iframeDocument.open();
    iframeDocument.write(scriptTag('document.F=Object'));
    iframeDocument.close();
    return iframeDocument.F;
  };
  
  // Check for document.domain and active x support
  // No need to use active x approach when document.domain is not set
  // see https://github.com/es-shims/es5-shim/issues/150
  // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
  // avoid IE GC bug
  var activeXDocument;
  var NullProtoObject = function () {
    try {
      /* global ActiveXObject -- old IE */
      activeXDocument = document.domain && new ActiveXObject('htmlfile');
    } catch (error) { /* ignore */ }
    NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();
    var length = enumBugKeys.length;
    while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
    return NullProtoObject();
  };
  
  hiddenKeys[IE_PROTO] = true;
  
  // `Object.create` method
  // https://tc39.es/ecma262/#sec-object.create
  module.exports = Object.create || function create(O, Properties) {
    var result;
    if (O !== null) {
      EmptyConstructor[PROTOTYPE] = anObject(O);
      result = new EmptyConstructor();
      EmptyConstructor[PROTOTYPE] = null;
      // add "__proto__" for Object.getPrototypeOf polyfill
      result[IE_PROTO] = O;
    } else result = NullProtoObject();
    return Properties === undefined ? result : defineProperties(result, Properties);
  };
  
  
  /***/ }),
  
  /***/ "7dd0":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var createIteratorConstructor = __webpack_require__("9ed3");
  var getPrototypeOf = __webpack_require__("e163");
  var setPrototypeOf = __webpack_require__("d2bb");
  var setToStringTag = __webpack_require__("d44e");
  var createNonEnumerableProperty = __webpack_require__("9112");
  var redefine = __webpack_require__("6eeb");
  var wellKnownSymbol = __webpack_require__("b622");
  var IS_PURE = __webpack_require__("c430");
  var Iterators = __webpack_require__("3f8c");
  var IteratorsCore = __webpack_require__("ae93");
  
  var IteratorPrototype = IteratorsCore.IteratorPrototype;
  var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;
  var ITERATOR = wellKnownSymbol('iterator');
  var KEYS = 'keys';
  var VALUES = 'values';
  var ENTRIES = 'entries';
  
  var returnThis = function () { return this; };
  
  module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {
    createIteratorConstructor(IteratorConstructor, NAME, next);
  
    var getIterationMethod = function (KIND) {
      if (KIND === DEFAULT && defaultIterator) return defaultIterator;
      if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];
      switch (KIND) {
        case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };
        case VALUES: return function values() { return new IteratorConstructor(this, KIND); };
        case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };
      } return function () { return new IteratorConstructor(this); };
    };
  
    var TO_STRING_TAG = NAME + ' Iterator';
    var INCORRECT_VALUES_NAME = false;
    var IterablePrototype = Iterable.prototype;
    var nativeIterator = IterablePrototype[ITERATOR]
      || IterablePrototype['@@iterator']
      || DEFAULT && IterablePrototype[DEFAULT];
    var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);
    var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;
    var CurrentIteratorPrototype, methods, KEY;
  
    // fix native
    if (anyNativeIterator) {
      CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));
      if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {
        if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {
          if (setPrototypeOf) {
            setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
          } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {
            createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);
          }
        }
        // Set @@toStringTag to native iterators
        setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);
        if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;
      }
    }
  
    // fix Array.prototype.{ values, @@iterator }.name in V8 / FF
    if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {
      INCORRECT_VALUES_NAME = true;
      defaultIterator = function values() { return nativeIterator.call(this); };
    }
  
    // define iterator
    if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
      createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);
    }
    Iterators[NAME] = defaultIterator;
  
    // export additional methods
    if (DEFAULT) {
      methods = {
        values: getIterationMethod(VALUES),
        keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),
        entries: getIterationMethod(ENTRIES)
      };
      if (FORCED) for (KEY in methods) {
        if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
          redefine(IterablePrototype, KEY, methods[KEY]);
        }
      } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
    }
  
    return methods;
  };
  
  
  /***/ }),
  
  /***/ "7f9a":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var inspectSource = __webpack_require__("8925");
  
  var WeakMap = global.WeakMap;
  
  module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));
  
  
  /***/ }),
  
  /***/ "8142":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.DispatcherBase = void 0;
  const __1 = __webpack_require__("05d3");
  /**
   * Base class for implementation of the dispatcher. It facilitates the subscribe
   * and unsubscribe methods based on generic handlers. The TEventType specifies
   * the type of event that should be exposed. Use the asEvent to expose the
   * dispatcher as event.
   *
   * @export
   * @abstract
   * @class DispatcherBase
   * @implements {ISubscribable<TEventHandler>}
   * @template TEventHandler The type of event handler.
   */
  class DispatcherBase {
      constructor() {
          /**
           * The subscriptions.
           *
           * @protected
           *
           * @memberOf DispatcherBase
           */
          this._subscriptions = new Array();
      }
      /**
       * Returns the number of subscriptions.
       *
       * @readonly
       * @type {number}
       * @memberOf DispatcherBase
       */
      get count() {
          return this._subscriptions.length;
      }
      /**
       * Triggered when subscriptions are changed (added or removed).
       *
       * @readonly
       * @type {ISubscribable<SubscriptionChangeEventHandler>}
       * @memberOf DispatcherBase
       */
      get onSubscriptionChange() {
          if (this._onSubscriptionChange == null) {
              this._onSubscriptionChange = new __1.SubscriptionChangeEventDispatcher();
          }
          return this._onSubscriptionChange.asEvent();
      }
      /**
       * Subscribe to the event dispatcher.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       * @returns A function that unsubscribes the event handler from the event.
       *
       * @memberOf DispatcherBase
       */
      subscribe(fn) {
          if (fn) {
              this._subscriptions.push(this.createSubscription(fn, false));
              this.triggerSubscriptionChange();
          }
          return () => {
              this.unsubscribe(fn);
          };
      }
      /**
       * Subscribe to the event dispatcher.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       * @returns A function that unsubscribes the event handler from the event.
       *
       * @memberOf DispatcherBase
       */
      sub(fn) {
          return this.subscribe(fn);
      }
      /**
       * Subscribe once to the event with the specified name.
       *
       * @param {TEventHandler} fn The event handler that is called when the event is dispatched.
       * @returns A function that unsubscribes the event handler from the event.
       *
       * @memberOf DispatcherBase
       */
      one(fn) {
          if (fn) {
              this._subscriptions.push(this.createSubscription(fn, true));
              this.triggerSubscriptionChange();
          }
          return () => {
              this.unsubscribe(fn);
          };
      }
      /**
       * Checks it the event has a subscription for the specified handler.
       *
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf DispatcherBase
       */
      has(fn) {
          if (!fn)
              return false;
          return this._subscriptions.some((sub) => sub.handler == fn);
      }
      /**
       * Unsubscribes the handler from the dispatcher.
       *
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf DispatcherBase
       */
      unsubscribe(fn) {
          if (!fn)
              return;
          let changes = false;
          for (let i = 0; i < this._subscriptions.length; i++) {
              if (this._subscriptions[i].handler == fn) {
                  this._subscriptions.splice(i, 1);
                  changes = true;
                  break;
              }
          }
          if (changes) {
              this.triggerSubscriptionChange();
          }
      }
      /**
       * Unsubscribes the handler from the dispatcher.
       *
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf DispatcherBase
       */
      unsub(fn) {
          this.unsubscribe(fn);
      }
      /**
       * Generic dispatch will dispatch the handlers with the given arguments.
       *
       * @protected
       * @param {boolean} executeAsync `True` if the even should be executed async.
       * @param {*} scope The scope of the event. The scope becomes the `this` for handler.
       * @param {IArguments} args The arguments for the event.
       * @returns {(IPropagationStatus | null)} The propagation status, or if an `executeAsync` is used `null`.
       *
       * @memberOf DispatcherBase
       */
      _dispatch(executeAsync, scope, args) {
          //execute on a copy because of bug #9
          for (let sub of [...this._subscriptions]) {
              let ev = new __1.EventManagement(() => this.unsub(sub.handler));
              let nargs = Array.prototype.slice.call(args);
              nargs.push(ev);
              let s = sub;
              s.execute(executeAsync, scope, nargs);
              //cleanup subs that are no longer needed
              this.cleanup(sub);
              if (!executeAsync && ev.propagationStopped) {
                  return { propagationStopped: true };
              }
          }
          if (executeAsync) {
              return null;
          }
          return { propagationStopped: false };
      }
      /**
       * Creates a subscription.
       *
       * @protected
       * @param {TEventHandler} handler The handler.
       * @param {boolean} isOnce True if the handler should run only one.
       * @returns {ISubscription<TEventHandler>} The subscription.
       *
       * @memberOf DispatcherBase
       */
      createSubscription(handler, isOnce) {
          return new __1.Subscription(handler, isOnce);
      }
      /**
       * Cleans up subs that ran and should run only once.
       *
       * @protected
       * @param {ISubscription<TEventHandler>} sub The subscription.
       *
       * @memberOf DispatcherBase
       */
      cleanup(sub) {
          let changes = false;
          if (sub.isOnce && sub.isExecuted) {
              let i = this._subscriptions.indexOf(sub);
              if (i > -1) {
                  this._subscriptions.splice(i, 1);
                  changes = true;
              }
          }
          if (changes) {
              this.triggerSubscriptionChange();
          }
      }
      /**
       * Creates an event from the dispatcher. Will return the dispatcher
       * in a wrapper. This will prevent exposure of any dispatcher methods.
       *
       * @returns {ISubscribable<TEventHandler>}
       *
       * @memberOf DispatcherBase
       */
      asEvent() {
          if (this._wrap == null) {
              this._wrap = new __1.DispatcherWrapper(this);
          }
          return this._wrap;
      }
      /**
       * Clears the subscriptions.
       *
       * @memberOf DispatcherBase
       */
      clear() {
          if (this._subscriptions.length != 0) {
              this._subscriptions.splice(0, this._subscriptions.length);
              this.triggerSubscriptionChange();
          }
      }
      /**
       * Triggers the subscription change event.
       *
       * @private
       *
       * @memberOf DispatcherBase
       */
      triggerSubscriptionChange() {
          if (this._onSubscriptionChange != null) {
              this._onSubscriptionChange.dispatch(this.count);
          }
      }
  }
  exports.DispatcherBase = DispatcherBase;
  
  
  /***/ }),
  
  /***/ "825a":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isObject = __webpack_require__("861d");
  
  module.exports = function (it) {
    if (!isObject(it)) {
      throw TypeError(String(it) + ' is not an object');
    } return it;
  };
  
  
  /***/ }),
  
  /***/ "83ab":
  /***/ (function(module, exports, __webpack_require__) {
  
  var fails = __webpack_require__("d039");
  
  // Detect IE8's incomplete defineProperty implementation
  module.exports = !fails(function () {
    // eslint-disable-next-line es/no-object-defineproperty -- required for testing
    return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;
  });
  
  
  /***/ }),
  
  /***/ "8418":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var toPrimitive = __webpack_require__("c04e");
  var definePropertyModule = __webpack_require__("9bf2");
  var createPropertyDescriptor = __webpack_require__("5c6c");
  
  module.exports = function (object, key, value) {
    var propertyKey = toPrimitive(key);
    if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
    else object[propertyKey] = value;
  };
  
  
  /***/ }),
  
  /***/ "861d":
  /***/ (function(module, exports) {
  
  module.exports = function (it) {
    return typeof it === 'object' ? it !== null : typeof it === 'function';
  };
  
  
  /***/ }),
  
  /***/ "8875":
  /***/ (function(module, exports, __webpack_require__) {
  
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// addapted from the document.currentScript polyfill by Adam Miller
  // MIT license
  // source: https://github.com/amiller-gh/currentScript-polyfill
  
  // added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505
  
  (function (root, factory) {
    if (true) {
      !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
  				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
  				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
  				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
    } else {}
  }(typeof self !== 'undefined' ? self : this, function () {
    function getCurrentScript () {
      var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')
      // for chrome
      if (!descriptor && 'currentScript' in document && document.currentScript) {
        return document.currentScript
      }
  
      // for other browsers with native support for currentScript
      if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {
        return document.currentScript
      }
    
      // IE 8-10 support script readyState
      // IE 11+ & Firefox support stack trace
      try {
        throw new Error();
      }
      catch (err) {
        // Find the second match for the "at" string to get file src url from stack.
        var ieStackRegExp = /.*at [^(]*\((.*):(.+):(.+)\)$/ig,
          ffStackRegExp = /@([^@]*):(\d+):(\d+)\s*$/ig,
          stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),
          scriptLocation = (stackDetails && stackDetails[1]) || false,
          line = (stackDetails && stackDetails[2]) || false,
          currentLocation = document.location.href.replace(document.location.hash, ''),
          pageSource,
          inlineScriptSourceRegExp,
          inlineScriptSource,
          scripts = document.getElementsByTagName('script'); // Live NodeList collection
    
        if (scriptLocation === currentLocation) {
          pageSource = document.documentElement.outerHTML;
          inlineScriptSourceRegExp = new RegExp('(?:[^\\n]+?\\n){0,' + (line - 2) + '}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*', 'i');
          inlineScriptSource = pageSource.replace(inlineScriptSourceRegExp, '$1').trim();
        }
    
        for (var i = 0; i < scripts.length; i++) {
          // If ready state is interactive, return the script tag
          if (scripts[i].readyState === 'interactive') {
            return scripts[i];
          }
    
          // If src matches, return the script tag
          if (scripts[i].src === scriptLocation) {
            return scripts[i];
          }
    
          // If inline source matches, return the script tag
          if (
            scriptLocation === currentLocation &&
            scripts[i].innerHTML &&
            scripts[i].innerHTML.trim() === inlineScriptSource
          ) {
            return scripts[i];
          }
        }
    
        // If no match, return null
        return null;
      }
    };
  
    return getCurrentScript
  }));
  
  
  /***/ }),
  
  /***/ "8925":
  /***/ (function(module, exports, __webpack_require__) {
  
  var store = __webpack_require__("c6cd");
  
  var functionToString = Function.toString;
  
  // this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper
  if (typeof store.inspectSource != 'function') {
    store.inspectSource = function (it) {
      return functionToString.call(it);
    };
  }
  
  module.exports = store.inspectSource;
  
  
  /***/ }),
  
  /***/ "8bbf":
  /***/ (function(module, exports) {
  
  module.exports = __WEBPACK_EXTERNAL_MODULE__8bbf__;
  
  /***/ }),
  
  /***/ "90e3":
  /***/ (function(module, exports) {
  
  var id = 0;
  var postfix = Math.random();
  
  module.exports = function (key) {
    return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);
  };
  
  
  /***/ }),
  
  /***/ "9112":
  /***/ (function(module, exports, __webpack_require__) {
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var definePropertyModule = __webpack_require__("9bf2");
  var createPropertyDescriptor = __webpack_require__("5c6c");
  
  module.exports = DESCRIPTORS ? function (object, key, value) {
    return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));
  } : function (object, key, value) {
    object[key] = value;
    return object;
  };
  
  
  /***/ }),
  
  /***/ "94ca":
  /***/ (function(module, exports, __webpack_require__) {
  
  var fails = __webpack_require__("d039");
  
  var replacement = /#|\.prototype\./;
  
  var isForced = function (feature, detection) {
    var value = data[normalize(feature)];
    return value == POLYFILL ? true
      : value == NATIVE ? false
      : typeof detection == 'function' ? fails(detection)
      : !!detection;
  };
  
  var normalize = isForced.normalize = function (string) {
    return String(string).replace(replacement, '.').toLowerCase();
  };
  
  var data = isForced.data = {};
  var NATIVE = isForced.NATIVE = 'N';
  var POLYFILL = isForced.POLYFILL = 'P';
  
  module.exports = isForced;
  
  
  /***/ }),
  
  /***/ "9bdd":
  /***/ (function(module, exports, __webpack_require__) {
  
  var anObject = __webpack_require__("825a");
  var iteratorClose = __webpack_require__("2a62");
  
  // call something on iterator step with safe closing on error
  module.exports = function (iterator, fn, value, ENTRIES) {
    try {
      return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);
    } catch (error) {
      iteratorClose(iterator);
      throw error;
    }
  };
  
  
  /***/ }),
  
  /***/ "9bf2":
  /***/ (function(module, exports, __webpack_require__) {
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var IE8_DOM_DEFINE = __webpack_require__("0cfb");
  var anObject = __webpack_require__("825a");
  var toPrimitive = __webpack_require__("c04e");
  
  // eslint-disable-next-line es/no-object-defineproperty -- safe
  var $defineProperty = Object.defineProperty;
  
  // `Object.defineProperty` method
  // https://tc39.es/ecma262/#sec-object.defineproperty
  exports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {
    anObject(O);
    P = toPrimitive(P, true);
    anObject(Attributes);
    if (IE8_DOM_DEFINE) try {
      return $defineProperty(O, P, Attributes);
    } catch (error) { /* empty */ }
    if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
    if ('value' in Attributes) O[P] = Attributes.value;
    return O;
  };
  
  
  /***/ }),
  
  /***/ "9ed3":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var IteratorPrototype = __webpack_require__("ae93").IteratorPrototype;
  var create = __webpack_require__("7c73");
  var createPropertyDescriptor = __webpack_require__("5c6c");
  var setToStringTag = __webpack_require__("d44e");
  var Iterators = __webpack_require__("3f8c");
  
  var returnThis = function () { return this; };
  
  module.exports = function (IteratorConstructor, NAME, next) {
    var TO_STRING_TAG = NAME + ' Iterator';
    IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });
    setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);
    Iterators[TO_STRING_TAG] = returnThis;
    return IteratorConstructor;
  };
  
  
  /***/ }),
  
  /***/ "a434":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var toAbsoluteIndex = __webpack_require__("23cb");
  var toInteger = __webpack_require__("a691");
  var toLength = __webpack_require__("50c4");
  var toObject = __webpack_require__("7b0b");
  var arraySpeciesCreate = __webpack_require__("65f0");
  var createProperty = __webpack_require__("8418");
  var arrayMethodHasSpeciesSupport = __webpack_require__("1dde");
  
  var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');
  
  var max = Math.max;
  var min = Math.min;
  var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
  var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';
  
  // `Array.prototype.splice` method
  // https://tc39.es/ecma262/#sec-array.prototype.splice
  // with adding support of @@species
  $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
    splice: function splice(start, deleteCount /* , ...items */) {
      var O = toObject(this);
      var len = toLength(O.length);
      var actualStart = toAbsoluteIndex(start, len);
      var argumentsLength = arguments.length;
      var insertCount, actualDeleteCount, A, k, from, to;
      if (argumentsLength === 0) {
        insertCount = actualDeleteCount = 0;
      } else if (argumentsLength === 1) {
        insertCount = 0;
        actualDeleteCount = len - actualStart;
      } else {
        insertCount = argumentsLength - 2;
        actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);
      }
      if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {
        throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);
      }
      A = arraySpeciesCreate(O, actualDeleteCount);
      for (k = 0; k < actualDeleteCount; k++) {
        from = actualStart + k;
        if (from in O) createProperty(A, k, O[from]);
      }
      A.length = actualDeleteCount;
      if (insertCount < actualDeleteCount) {
        for (k = actualStart; k < len - actualDeleteCount; k++) {
          from = k + actualDeleteCount;
          to = k + insertCount;
          if (from in O) O[to] = O[from];
          else delete O[to];
        }
        for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];
      } else if (insertCount > actualDeleteCount) {
        for (k = len - actualDeleteCount; k > actualStart; k--) {
          from = k + actualDeleteCount - 1;
          to = k + insertCount - 1;
          if (from in O) O[to] = O[from];
          else delete O[to];
        }
      }
      for (k = 0; k < insertCount; k++) {
        O[k + actualStart] = arguments[k + 2];
      }
      O.length = len - actualDeleteCount + insertCount;
      return A;
    }
  });
  
  
  /***/ }),
  
  /***/ "a4d3":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var global = __webpack_require__("da84");
  var getBuiltIn = __webpack_require__("d066");
  var IS_PURE = __webpack_require__("c430");
  var DESCRIPTORS = __webpack_require__("83ab");
  var NATIVE_SYMBOL = __webpack_require__("4930");
  var USE_SYMBOL_AS_UID = __webpack_require__("fdbf");
  var fails = __webpack_require__("d039");
  var has = __webpack_require__("5135");
  var isArray = __webpack_require__("e8b5");
  var isObject = __webpack_require__("861d");
  var anObject = __webpack_require__("825a");
  var toObject = __webpack_require__("7b0b");
  var toIndexedObject = __webpack_require__("fc6a");
  var toPrimitive = __webpack_require__("c04e");
  var createPropertyDescriptor = __webpack_require__("5c6c");
  var nativeObjectCreate = __webpack_require__("7c73");
  var objectKeys = __webpack_require__("df75");
  var getOwnPropertyNamesModule = __webpack_require__("241c");
  var getOwnPropertyNamesExternal = __webpack_require__("057f");
  var getOwnPropertySymbolsModule = __webpack_require__("7418");
  var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
  var definePropertyModule = __webpack_require__("9bf2");
  var propertyIsEnumerableModule = __webpack_require__("d1e7");
  var createNonEnumerableProperty = __webpack_require__("9112");
  var redefine = __webpack_require__("6eeb");
  var shared = __webpack_require__("5692");
  var sharedKey = __webpack_require__("f772");
  var hiddenKeys = __webpack_require__("d012");
  var uid = __webpack_require__("90e3");
  var wellKnownSymbol = __webpack_require__("b622");
  var wrappedWellKnownSymbolModule = __webpack_require__("e538");
  var defineWellKnownSymbol = __webpack_require__("746f");
  var setToStringTag = __webpack_require__("d44e");
  var InternalStateModule = __webpack_require__("69f3");
  var $forEach = __webpack_require__("b727").forEach;
  
  var HIDDEN = sharedKey('hidden');
  var SYMBOL = 'Symbol';
  var PROTOTYPE = 'prototype';
  var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
  var setInternalState = InternalStateModule.set;
  var getInternalState = InternalStateModule.getterFor(SYMBOL);
  var ObjectPrototype = Object[PROTOTYPE];
  var $Symbol = global.Symbol;
  var $stringify = getBuiltIn('JSON', 'stringify');
  var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
  var nativeDefineProperty = definePropertyModule.f;
  var nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;
  var nativePropertyIsEnumerable = propertyIsEnumerableModule.f;
  var AllSymbols = shared('symbols');
  var ObjectPrototypeSymbols = shared('op-symbols');
  var StringToSymbolRegistry = shared('string-to-symbol-registry');
  var SymbolToStringRegistry = shared('symbol-to-string-registry');
  var WellKnownSymbolsStore = shared('wks');
  var QObject = global.QObject;
  // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
  var USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
  
  // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
  var setSymbolDescriptor = DESCRIPTORS && fails(function () {
    return nativeObjectCreate(nativeDefineProperty({}, 'a', {
      get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }
    })).a != 7;
  }) ? function (O, P, Attributes) {
    var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);
    if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];
    nativeDefineProperty(O, P, Attributes);
    if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {
      nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);
    }
  } : nativeDefineProperty;
  
  var wrap = function (tag, description) {
    var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);
    setInternalState(symbol, {
      type: SYMBOL,
      tag: tag,
      description: description
    });
    if (!DESCRIPTORS) symbol.description = description;
    return symbol;
  };
  
  var isSymbol = USE_SYMBOL_AS_UID ? function (it) {
    return typeof it == 'symbol';
  } : function (it) {
    return Object(it) instanceof $Symbol;
  };
  
  var $defineProperty = function defineProperty(O, P, Attributes) {
    if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);
    anObject(O);
    var key = toPrimitive(P, true);
    anObject(Attributes);
    if (has(AllSymbols, key)) {
      if (!Attributes.enumerable) {
        if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));
        O[HIDDEN][key] = true;
      } else {
        if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;
        Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });
      } return setSymbolDescriptor(O, key, Attributes);
    } return nativeDefineProperty(O, key, Attributes);
  };
  
  var $defineProperties = function defineProperties(O, Properties) {
    anObject(O);
    var properties = toIndexedObject(Properties);
    var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));
    $forEach(keys, function (key) {
      if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);
    });
    return O;
  };
  
  var $create = function create(O, Properties) {
    return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);
  };
  
  var $propertyIsEnumerable = function propertyIsEnumerable(V) {
    var P = toPrimitive(V, true);
    var enumerable = nativePropertyIsEnumerable.call(this, P);
    if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;
    return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;
  };
  
  var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {
    var it = toIndexedObject(O);
    var key = toPrimitive(P, true);
    if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;
    var descriptor = nativeGetOwnPropertyDescriptor(it, key);
    if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {
      descriptor.enumerable = true;
    }
    return descriptor;
  };
  
  var $getOwnPropertyNames = function getOwnPropertyNames(O) {
    var names = nativeGetOwnPropertyNames(toIndexedObject(O));
    var result = [];
    $forEach(names, function (key) {
      if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);
    });
    return result;
  };
  
  var $getOwnPropertySymbols = function getOwnPropertySymbols(O) {
    var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;
    var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));
    var result = [];
    $forEach(names, function (key) {
      if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {
        result.push(AllSymbols[key]);
      }
    });
    return result;
  };
  
  // `Symbol` constructor
  // https://tc39.es/ecma262/#sec-symbol-constructor
  if (!NATIVE_SYMBOL) {
    $Symbol = function Symbol() {
      if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');
      var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);
      var tag = uid(description);
      var setter = function (value) {
        if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);
        if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
        setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));
      };
      if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });
      return wrap(tag, description);
    };
  
    redefine($Symbol[PROTOTYPE], 'toString', function toString() {
      return getInternalState(this).tag;
    });
  
    redefine($Symbol, 'withoutSetter', function (description) {
      return wrap(uid(description), description);
    });
  
    propertyIsEnumerableModule.f = $propertyIsEnumerable;
    definePropertyModule.f = $defineProperty;
    getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;
    getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;
    getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;
  
    wrappedWellKnownSymbolModule.f = function (name) {
      return wrap(wellKnownSymbol(name), name);
    };
  
    if (DESCRIPTORS) {
      // https://github.com/tc39/proposal-Symbol-description
      nativeDefineProperty($Symbol[PROTOTYPE], 'description', {
        configurable: true,
        get: function description() {
          return getInternalState(this).description;
        }
      });
      if (!IS_PURE) {
        redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });
      }
    }
  }
  
  $({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {
    Symbol: $Symbol
  });
  
  $forEach(objectKeys(WellKnownSymbolsStore), function (name) {
    defineWellKnownSymbol(name);
  });
  
  $({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {
    // `Symbol.for` method
    // https://tc39.es/ecma262/#sec-symbol.for
    'for': function (key) {
      var string = String(key);
      if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];
      var symbol = $Symbol(string);
      StringToSymbolRegistry[string] = symbol;
      SymbolToStringRegistry[symbol] = string;
      return symbol;
    },
    // `Symbol.keyFor` method
    // https://tc39.es/ecma262/#sec-symbol.keyfor
    keyFor: function keyFor(sym) {
      if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');
      if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];
    },
    useSetter: function () { USE_SETTER = true; },
    useSimple: function () { USE_SETTER = false; }
  });
  
  $({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {
    // `Object.create` method
    // https://tc39.es/ecma262/#sec-object.create
    create: $create,
    // `Object.defineProperty` method
    // https://tc39.es/ecma262/#sec-object.defineproperty
    defineProperty: $defineProperty,
    // `Object.defineProperties` method
    // https://tc39.es/ecma262/#sec-object.defineproperties
    defineProperties: $defineProperties,
    // `Object.getOwnPropertyDescriptor` method
    // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
    getOwnPropertyDescriptor: $getOwnPropertyDescriptor
  });
  
  $({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {
    // `Object.getOwnPropertyNames` method
    // https://tc39.es/ecma262/#sec-object.getownpropertynames
    getOwnPropertyNames: $getOwnPropertyNames,
    // `Object.getOwnPropertySymbols` method
    // https://tc39.es/ecma262/#sec-object.getownpropertysymbols
    getOwnPropertySymbols: $getOwnPropertySymbols
  });
  
  // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
  // https://bugs.chromium.org/p/v8/issues/detail?id=3443
  $({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {
    getOwnPropertySymbols: function getOwnPropertySymbols(it) {
      return getOwnPropertySymbolsModule.f(toObject(it));
    }
  });
  
  // `JSON.stringify` method behavior with symbols
  // https://tc39.es/ecma262/#sec-json.stringify
  if ($stringify) {
    var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {
      var symbol = $Symbol();
      // MS Edge converts symbol values to JSON as {}
      return $stringify([symbol]) != '[null]'
        // WebKit converts symbol values to JSON as null
        || $stringify({ a: symbol }) != '{}'
        // V8 throws on boxed symbols
        || $stringify(Object(symbol)) != '{}';
    });
  
    $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {
      // eslint-disable-next-line no-unused-vars -- required for `.length`
      stringify: function stringify(it, replacer, space) {
        var args = [it];
        var index = 1;
        var $replacer;
        while (arguments.length > index) args.push(arguments[index++]);
        $replacer = replacer;
        if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
        if (!isArray(replacer)) replacer = function (key, value) {
          if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
          if (!isSymbol(value)) return value;
        };
        args[1] = replacer;
        return $stringify.apply(null, args);
      }
    });
  }
  
  // `Symbol.prototype[@@toPrimitive]` method
  // https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
  if (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {
    createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
  }
  // `Symbol.prototype[@@toStringTag]` property
  // https://tc39.es/ecma262/#sec-symbol.prototype-@@tostringtag
  setToStringTag($Symbol, SYMBOL);
  
  hiddenKeys[HIDDEN] = true;
  
  
  /***/ }),
  
  /***/ "a630":
  /***/ (function(module, exports, __webpack_require__) {
  
  var $ = __webpack_require__("23e7");
  var from = __webpack_require__("4df4");
  var checkCorrectnessOfIteration = __webpack_require__("1c7e");
  
  var INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {
    // eslint-disable-next-line es/no-array-from -- required for testing
    Array.from(iterable);
  });
  
  // `Array.from` method
  // https://tc39.es/ecma262/#sec-array.from
  $({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {
    from: from
  });
  
  
  /***/ }),
  
  /***/ "a640":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var fails = __webpack_require__("d039");
  
  module.exports = function (METHOD_NAME, argument) {
    var method = [][METHOD_NAME];
    return !!method && fails(function () {
      // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing
      method.call(null, argument || function () { throw 1; }, 1);
    });
  };
  
  
  /***/ }),
  
  /***/ "a691":
  /***/ (function(module, exports) {
  
  var ceil = Math.ceil;
  var floor = Math.floor;
  
  // `ToInteger` abstract operation
  // https://tc39.es/ecma262/#sec-tointeger
  module.exports = function (argument) {
    return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);
  };
  
  
  /***/ }),
  
  /***/ "a9e3":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var global = __webpack_require__("da84");
  var isForced = __webpack_require__("94ca");
  var redefine = __webpack_require__("6eeb");
  var has = __webpack_require__("5135");
  var classof = __webpack_require__("c6b6");
  var inheritIfRequired = __webpack_require__("7156");
  var toPrimitive = __webpack_require__("c04e");
  var fails = __webpack_require__("d039");
  var create = __webpack_require__("7c73");
  var getOwnPropertyNames = __webpack_require__("241c").f;
  var getOwnPropertyDescriptor = __webpack_require__("06cf").f;
  var defineProperty = __webpack_require__("9bf2").f;
  var trim = __webpack_require__("58a8").trim;
  
  var NUMBER = 'Number';
  var NativeNumber = global[NUMBER];
  var NumberPrototype = NativeNumber.prototype;
  
  // Opera ~12 has broken Object#toString
  var BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;
  
  // `ToNumber` abstract operation
  // https://tc39.es/ecma262/#sec-tonumber
  var toNumber = function (argument) {
    var it = toPrimitive(argument, false);
    var first, third, radix, maxCode, digits, length, index, code;
    if (typeof it == 'string' && it.length > 2) {
      it = trim(it);
      first = it.charCodeAt(0);
      if (first === 43 || first === 45) {
        third = it.charCodeAt(2);
        if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
      } else if (first === 48) {
        switch (it.charCodeAt(1)) {
          case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i
          case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i
          default: return +it;
        }
        digits = it.slice(2);
        length = digits.length;
        for (index = 0; index < length; index++) {
          code = digits.charCodeAt(index);
          // parseInt parses a string to a first unavailable symbol
          // but ToNumber should return NaN if a string contains unavailable symbols
          if (code < 48 || code > maxCode) return NaN;
        } return parseInt(digits, radix);
      }
    } return +it;
  };
  
  // `Number` constructor
  // https://tc39.es/ecma262/#sec-number-constructor
  if (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {
    var NumberWrapper = function Number(value) {
      var it = arguments.length < 1 ? 0 : value;
      var dummy = this;
      return dummy instanceof NumberWrapper
        // check on 1..constructor(foo) case
        && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)
          ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);
    };
    for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (
      // ES3:
      'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
      // ES2015 (in case, if modules with ES2015 Number statics required before):
      'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
      'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,' +
      // ESNext
      'fromString,range'
    ).split(','), j = 0, key; keys.length > j; j++) {
      if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {
        defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));
      }
    }
    NumberWrapper.prototype = NumberPrototype;
    NumberPrototype.constructor = NumberWrapper;
    redefine(global, NUMBER, NumberWrapper);
  }
  
  
  /***/ }),
  
  /***/ "ab13":
  /***/ (function(module, exports, __webpack_require__) {
  
  var wellKnownSymbol = __webpack_require__("b622");
  
  var MATCH = wellKnownSymbol('match');
  
  module.exports = function (METHOD_NAME) {
    var regexp = /./;
    try {
      '/./'[METHOD_NAME](regexp);
    } catch (error1) {
      try {
        regexp[MATCH] = false;
        return '/./'[METHOD_NAME](regexp);
      } catch (error2) { /* empty */ }
    } return false;
  };
  
  
  /***/ }),
  
  /***/ "addb":
  /***/ (function(module, exports) {
  
  // TODO: use something more complex like timsort?
  var floor = Math.floor;
  
  var mergeSort = function (array, comparefn) {
    var length = array.length;
    var middle = floor(length / 2);
    return length < 8 ? insertionSort(array, comparefn) : merge(
      mergeSort(array.slice(0, middle), comparefn),
      mergeSort(array.slice(middle), comparefn),
      comparefn
    );
  };
  
  var insertionSort = function (array, comparefn) {
    var length = array.length;
    var i = 1;
    var element, j;
  
    while (i < length) {
      j = i;
      element = array[i];
      while (j && comparefn(array[j - 1], element) > 0) {
        array[j] = array[--j];
      }
      if (j !== i++) array[j] = element;
    } return array;
  };
  
  var merge = function (left, right, comparefn) {
    var llength = left.length;
    var rlength = right.length;
    var lindex = 0;
    var rindex = 0;
    var result = [];
  
    while (lindex < llength || rindex < rlength) {
      if (lindex < llength && rindex < rlength) {
        result.push(comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]);
      } else {
        result.push(lindex < llength ? left[lindex++] : right[rindex++]);
      }
    } return result;
  };
  
  module.exports = mergeSort;
  
  
  /***/ }),
  
  /***/ "ae93":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var fails = __webpack_require__("d039");
  var getPrototypeOf = __webpack_require__("e163");
  var createNonEnumerableProperty = __webpack_require__("9112");
  var has = __webpack_require__("5135");
  var wellKnownSymbol = __webpack_require__("b622");
  var IS_PURE = __webpack_require__("c430");
  
  var ITERATOR = wellKnownSymbol('iterator');
  var BUGGY_SAFARI_ITERATORS = false;
  
  var returnThis = function () { return this; };
  
  // `%IteratorPrototype%` object
  // https://tc39.es/ecma262/#sec-%iteratorprototype%-object
  var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;
  
  /* eslint-disable es/no-array-prototype-keys -- safe */
  if ([].keys) {
    arrayIterator = [].keys();
    // Safari 8 has buggy iterators w/o `next`
    if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;
    else {
      PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));
      if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;
    }
  }
  
  var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () {
    var test = {};
    // FF44- legacy iterators case
    return IteratorPrototype[ITERATOR].call(test) !== test;
  });
  
  if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};
  
  // `%IteratorPrototype%[@@iterator]()` method
  // https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
  if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) {
    createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);
  }
  
  module.exports = {
    IteratorPrototype: IteratorPrototype,
    BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS
  };
  
  
  /***/ }),
  
  /***/ "b041":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
  var classof = __webpack_require__("f5df");
  
  // `Object.prototype.toString` method implementation
  // https://tc39.es/ecma262/#sec-object.prototype.tostring
  module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {
    return '[object ' + classof(this) + ']';
  };
  
  
  /***/ }),
  
  /***/ "b0c0":
  /***/ (function(module, exports, __webpack_require__) {
  
  var DESCRIPTORS = __webpack_require__("83ab");
  var defineProperty = __webpack_require__("9bf2").f;
  
  var FunctionPrototype = Function.prototype;
  var FunctionPrototypeToString = FunctionPrototype.toString;
  var nameRE = /^\s*function ([^ (]*)/;
  var NAME = 'name';
  
  // Function instances `.name` property
  // https://tc39.es/ecma262/#sec-function-instances-name
  if (DESCRIPTORS && !(NAME in FunctionPrototype)) {
    defineProperty(FunctionPrototype, NAME, {
      configurable: true,
      get: function () {
        try {
          return FunctionPrototypeToString.call(this).match(nameRE)[1];
        } catch (error) {
          return '';
        }
      }
    });
  }
  
  
  /***/ }),
  
  /***/ "b2ff":
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_v16_dist_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_v16_dist_index_js_ref_0_1_DashItem_vue_vue_type_style_index_0_id_70e2b960_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("bcc7");
  /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_v16_dist_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_v16_dist_index_js_ref_0_1_DashItem_vue_vue_type_style_index_0_id_70e2b960_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_6_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_node_modules_vue_loader_v16_dist_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_v16_dist_index_js_ref_0_1_DashItem_vue_vue_type_style_index_0_id_70e2b960_scoped_true_lang_css__WEBPACK_IMPORTED_MODULE_0__);
  /* unused harmony reexport * */
  
  
  /***/ }),
  
  /***/ "b583":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.HandlingBase = void 0;
  /**
   * Base class that implements event handling. With a an
   * event list this base class will expose events that can be
   * subscribed to. This will give your class generic events.
   *
   * @export
   * @abstract
   * @class HandlingBase
   * @template TEventHandler The type of event handler.
   * @template TDispatcher The type of dispatcher.
   * @template TList The type of event list.
   */
  class HandlingBase {
      /**
       * Creates an instance of HandlingBase.
       * @param {TList} events The event list. Used for event management.
       *
       * @memberOf HandlingBase
       */
      constructor(events) {
          this.events = events;
      }
      /**
       * Subscribes once to the event with the specified name.
       * @param {string} name The name of the event.
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf HandlingBase
       */
      one(name, fn) {
          this.events.get(name).one(fn);
      }
      /**
       * Checks it the event has a subscription for the specified handler.
       * @param {string} name The name of the event.
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf HandlingBase
       */
      has(name, fn) {
          return this.events.get(name).has(fn);
      }
      /**
       * Subscribes to the event with the specified name.
       * @param {string} name The name of the event.
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf HandlingBase
       */
      subscribe(name, fn) {
          this.events.get(name).subscribe(fn);
      }
      /**
       * Subscribes to the event with the specified name.
       * @param {string} name The name of the event.
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf HandlingBase
       */
      sub(name, fn) {
          this.subscribe(name, fn);
      }
      /**
       * Unsubscribes from the event with the specified name.
       * @param {string} name The name of the event.
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf HandlingBase
       */
      unsubscribe(name, fn) {
          this.events.get(name).unsubscribe(fn);
      }
      /**
       * Unsubscribes from the event with the specified name.
       * @param {string} name The name of the event.
       * @param {TEventHandler} fn The event handler.
       *
       * @memberOf HandlingBase
       */
      unsub(name, fn) {
          this.unsubscribe(name, fn);
      }
  }
  exports.HandlingBase = HandlingBase;
  
  
  /***/ }),
  
  /***/ "b622":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var shared = __webpack_require__("5692");
  var has = __webpack_require__("5135");
  var uid = __webpack_require__("90e3");
  var NATIVE_SYMBOL = __webpack_require__("4930");
  var USE_SYMBOL_AS_UID = __webpack_require__("fdbf");
  
  var WellKnownSymbolsStore = shared('wks');
  var Symbol = global.Symbol;
  var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;
  
  module.exports = function (name) {
    if (!has(WellKnownSymbolsStore, name) || !(NATIVE_SYMBOL || typeof WellKnownSymbolsStore[name] == 'string')) {
      if (NATIVE_SYMBOL && has(Symbol, name)) {
        WellKnownSymbolsStore[name] = Symbol[name];
      } else {
        WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);
      }
    } return WellKnownSymbolsStore[name];
  };
  
  
  /***/ }),
  
  /***/ "b64b":
  /***/ (function(module, exports, __webpack_require__) {
  
  var $ = __webpack_require__("23e7");
  var toObject = __webpack_require__("7b0b");
  var nativeKeys = __webpack_require__("df75");
  var fails = __webpack_require__("d039");
  
  var FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });
  
  // `Object.keys` method
  // https://tc39.es/ecma262/#sec-object.keys
  $({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {
    keys: function keys(it) {
      return nativeKeys(toObject(it));
    }
  });
  
  
  /***/ }),
  
  /***/ "b727":
  /***/ (function(module, exports, __webpack_require__) {
  
  var bind = __webpack_require__("0366");
  var IndexedObject = __webpack_require__("44ad");
  var toObject = __webpack_require__("7b0b");
  var toLength = __webpack_require__("50c4");
  var arraySpeciesCreate = __webpack_require__("65f0");
  
  var push = [].push;
  
  // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation
  var createMethod = function (TYPE) {
    var IS_MAP = TYPE == 1;
    var IS_FILTER = TYPE == 2;
    var IS_SOME = TYPE == 3;
    var IS_EVERY = TYPE == 4;
    var IS_FIND_INDEX = TYPE == 6;
    var IS_FILTER_OUT = TYPE == 7;
    var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
    return function ($this, callbackfn, that, specificCreate) {
      var O = toObject($this);
      var self = IndexedObject(O);
      var boundFunction = bind(callbackfn, that, 3);
      var length = toLength(self.length);
      var index = 0;
      var create = specificCreate || arraySpeciesCreate;
      var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined;
      var value, result;
      for (;length > index; index++) if (NO_HOLES || index in self) {
        value = self[index];
        result = boundFunction(value, index, O);
        if (TYPE) {
          if (IS_MAP) target[index] = result; // map
          else if (result) switch (TYPE) {
            case 3: return true;              // some
            case 5: return value;             // find
            case 6: return index;             // findIndex
            case 2: push.call(target, value); // filter
          } else switch (TYPE) {
            case 4: return false;             // every
            case 7: push.call(target, value); // filterOut
          }
        }
      }
      return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;
    };
  };
  
  module.exports = {
    // `Array.prototype.forEach` method
    // https://tc39.es/ecma262/#sec-array.prototype.foreach
    forEach: createMethod(0),
    // `Array.prototype.map` method
    // https://tc39.es/ecma262/#sec-array.prototype.map
    map: createMethod(1),
    // `Array.prototype.filter` method
    // https://tc39.es/ecma262/#sec-array.prototype.filter
    filter: createMethod(2),
    // `Array.prototype.some` method
    // https://tc39.es/ecma262/#sec-array.prototype.some
    some: createMethod(3),
    // `Array.prototype.every` method
    // https://tc39.es/ecma262/#sec-array.prototype.every
    every: createMethod(4),
    // `Array.prototype.find` method
    // https://tc39.es/ecma262/#sec-array.prototype.find
    find: createMethod(5),
    // `Array.prototype.findIndex` method
    // https://tc39.es/ecma262/#sec-array.prototype.findIndex
    findIndex: createMethod(6),
    // `Array.prototype.filterOut` method
    // https://github.com/tc39/proposal-array-filtering
    filterOut: createMethod(7)
  };
  
  
  /***/ }),
  
  /***/ "bcc7":
  /***/ (function(module, exports, __webpack_require__) {
  
  // style-loader: Adds some css to the DOM by adding a <style> tag
  
  // load the styles
  var content = __webpack_require__("fc76");
  if(content.__esModule) content = content.default;
  if(typeof content === 'string') content = [[module.i, content, '']];
  if(content.locals) module.exports = content.locals;
  // add the styles to the DOM
  var add = __webpack_require__("499e").default
  var update = add("4bec576b", content, true, {"sourceMap":false,"shadowMode":false});
  
  /***/ }),
  
  /***/ "c04e":
  /***/ (function(module, exports, __webpack_require__) {
  
  var isObject = __webpack_require__("861d");
  
  // `ToPrimitive` abstract operation
  // https://tc39.es/ecma262/#sec-toprimitive
  // instead of the ES6 spec version, we didn't implement @@toPrimitive case
  // and the second argument - flag - preferred type is a string
  module.exports = function (input, PREFERRED_STRING) {
    if (!isObject(input)) return input;
    var fn, val;
    if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
    if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
    if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
    throw TypeError("Can't convert object to primitive value");
  };
  
  
  /***/ }),
  
  /***/ "c430":
  /***/ (function(module, exports) {
  
  module.exports = false;
  
  
  /***/ }),
  
  /***/ "c6b6":
  /***/ (function(module, exports) {
  
  var toString = {}.toString;
  
  module.exports = function (it) {
    return toString.call(it).slice(8, -1);
  };
  
  
  /***/ }),
  
  /***/ "c6cd":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var setGlobal = __webpack_require__("ce4e");
  
  var SHARED = '__core-js_shared__';
  var store = global[SHARED] || setGlobal(SHARED, {});
  
  module.exports = store;
  
  
  /***/ }),
  
  /***/ "c740":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var $findIndex = __webpack_require__("b727").findIndex;
  var addToUnscopables = __webpack_require__("44d2");
  
  var FIND_INDEX = 'findIndex';
  var SKIPS_HOLES = true;
  
  // Shouldn't skip holes
  if (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; });
  
  // `Array.prototype.findIndex` method
  // https://tc39.es/ecma262/#sec-array.prototype.findindex
  $({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
    findIndex: function findIndex(callbackfn /* , that = undefined */) {
      return $findIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
    }
  });
  
  // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
  addToUnscopables(FIND_INDEX);
  
  
  /***/ }),
  
  /***/ "c8ba":
  /***/ (function(module, exports) {
  
  var g;
  
  // This works in non-strict mode
  g = (function() {
  	return this;
  })();
  
  try {
  	// This works if eval is allowed (see CSP)
  	g = g || new Function("return this")();
  } catch (e) {
  	// This works if the window reference is available
  	if (typeof window === "object") g = window;
  }
  
  // g can still be undefined, but nothing to do about it...
  // We return undefined, instead of nothing here, so it's
  // easier to handle this case. if(!global) { ...}
  
  module.exports = g;
  
  
  /***/ }),
  
  /***/ "ca84":
  /***/ (function(module, exports, __webpack_require__) {
  
  var has = __webpack_require__("5135");
  var toIndexedObject = __webpack_require__("fc6a");
  var indexOf = __webpack_require__("4d64").indexOf;
  var hiddenKeys = __webpack_require__("d012");
  
  module.exports = function (object, names) {
    var O = toIndexedObject(object);
    var i = 0;
    var result = [];
    var key;
    for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);
    // Don't enum bug & hidden keys
    while (names.length > i) if (has(O, key = names[i++])) {
      ~indexOf(result, key) || result.push(key);
    }
    return result;
  };
  
  
  /***/ }),
  
  /***/ "caad":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var $includes = __webpack_require__("4d64").includes;
  var addToUnscopables = __webpack_require__("44d2");
  
  // `Array.prototype.includes` method
  // https://tc39.es/ecma262/#sec-array.prototype.includes
  $({ target: 'Array', proto: true }, {
    includes: function includes(el /* , fromIndex = 0 */) {
      return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
    }
  });
  
  // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
  addToUnscopables('includes');
  
  
  /***/ }),
  
  /***/ "cc12":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var isObject = __webpack_require__("861d");
  
  var document = global.document;
  // typeof document.createElement is 'object' in old IE
  var EXISTS = isObject(document) && isObject(document.createElement);
  
  module.exports = function (it) {
    return EXISTS ? document.createElement(it) : {};
  };
  
  
  /***/ }),
  
  /***/ "ce4e":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var createNonEnumerableProperty = __webpack_require__("9112");
  
  module.exports = function (key, value) {
    try {
      createNonEnumerableProperty(global, key, value);
    } catch (error) {
      global[key] = value;
    } return value;
  };
  
  
  /***/ }),
  
  /***/ "d012":
  /***/ (function(module, exports) {
  
  module.exports = {};
  
  
  /***/ }),
  
  /***/ "d039":
  /***/ (function(module, exports) {
  
  module.exports = function (exec) {
    try {
      return !!exec();
    } catch (error) {
      return true;
    }
  };
  
  
  /***/ }),
  
  /***/ "d066":
  /***/ (function(module, exports, __webpack_require__) {
  
  var path = __webpack_require__("428f");
  var global = __webpack_require__("da84");
  
  var aFunction = function (variable) {
    return typeof variable == 'function' ? variable : undefined;
  };
  
  module.exports = function (namespace, method) {
    return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])
      : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
  };
  
  
  /***/ }),
  
  /***/ "d1e7":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $propertyIsEnumerable = {}.propertyIsEnumerable;
  // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
  var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
  
  // Nashorn ~ JDK8 bug
  var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);
  
  // `Object.prototype.propertyIsEnumerable` method implementation
  // https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
  exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
    var descriptor = getOwnPropertyDescriptor(this, V);
    return !!descriptor && descriptor.enumerable;
  } : $propertyIsEnumerable;
  
  
  /***/ }),
  
  /***/ "d28b":
  /***/ (function(module, exports, __webpack_require__) {
  
  var defineWellKnownSymbol = __webpack_require__("746f");
  
  // `Symbol.iterator` well-known symbol
  // https://tc39.es/ecma262/#sec-symbol.iterator
  defineWellKnownSymbol('iterator');
  
  
  /***/ }),
  
  /***/ "d2bb":
  /***/ (function(module, exports, __webpack_require__) {
  
  /* eslint-disable no-proto -- safe */
  var anObject = __webpack_require__("825a");
  var aPossiblePrototype = __webpack_require__("3bbe");
  
  // `Object.setPrototypeOf` method
  // https://tc39.es/ecma262/#sec-object.setprototypeof
  // Works with __proto__ only. Old v8 can't work with null proto objects.
  // eslint-disable-next-line es/no-object-setprototypeof -- safe
  module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {
    var CORRECT_SETTER = false;
    var test = {};
    var setter;
    try {
      // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
      setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;
      setter.call(test, []);
      CORRECT_SETTER = test instanceof Array;
    } catch (error) { /* empty */ }
    return function setPrototypeOf(O, proto) {
      anObject(O);
      aPossiblePrototype(proto);
      if (CORRECT_SETTER) setter.call(O, proto);
      else O.__proto__ = proto;
      return O;
    };
  }() : undefined);
  
  
  /***/ }),
  
  /***/ "d3a8":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.NonUniformSimpleEventList = void 0;
  const SimpleEventDispatcher_1 = __webpack_require__("d694");
  /**
   * Similar to EventList, but instead of TArgs, a map of event names ang argument types is provided with TArgsMap.
   */
  class NonUniformSimpleEventList {
      constructor() {
          this._events = {};
      }
      /**
       * Gets the dispatcher associated with the name.
       * @param name The name of the event.
       */
      get(name) {
          if (this._events[name]) {
              // @TODO avoid typecasting. Not sure why TS thinks this._events[name] could still be undefined.
              return this._events[name];
          }
          const event = this.createDispatcher();
          this._events[name] = event;
          return event;
      }
      /**
       * Removes the dispatcher associated with the name.
       * @param name The name of the event.
       */
      remove(name) {
          delete this._events[name];
      }
      /**
       * Creates a new dispatcher instance.
       */
      createDispatcher() {
          return new SimpleEventDispatcher_1.SimpleEventDispatcher();
      }
  }
  exports.NonUniformSimpleEventList = NonUniformSimpleEventList;
  
  
  /***/ }),
  
  /***/ "d3b7":
  /***/ (function(module, exports, __webpack_require__) {
  
  var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
  var redefine = __webpack_require__("6eeb");
  var toString = __webpack_require__("b041");
  
  // `Object.prototype.toString` method
  // https://tc39.es/ecma262/#sec-object.prototype.tostring
  if (!TO_STRING_TAG_SUPPORT) {
    redefine(Object.prototype, 'toString', toString, { unsafe: true });
  }
  
  
  /***/ }),
  
  /***/ "d44e":
  /***/ (function(module, exports, __webpack_require__) {
  
  var defineProperty = __webpack_require__("9bf2").f;
  var has = __webpack_require__("5135");
  var wellKnownSymbol = __webpack_require__("b622");
  
  var TO_STRING_TAG = wellKnownSymbol('toStringTag');
  
  module.exports = function (it, TAG, STATIC) {
    if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {
      defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });
    }
  };
  
  
  /***/ }),
  
  /***/ "d5a2":
  /***/ (function(module, exports, __webpack_require__) {
  
  // Imports
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__("24fb");
  exports = ___CSS_LOADER_API_IMPORT___(false);
  // Module
  exports.push([module.i, ".placeholder[data-v-09f23364]{height:100%;width:100%;background-color:red;opacity:.2}", ""]);
  // Exports
  module.exports = exports;
  
  
  /***/ }),
  
  /***/ "d694":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.SimpleEventDispatcher = void 0;
  const ste_core_1 = __webpack_require__("05d3");
  /**
   * The dispatcher handles the storage of subsciptions and facilitates
   * subscription, unsubscription and dispatching of a simple event
   *
   * @export
   * @class SimpleEventDispatcher
   * @extends {DispatcherBase<ISimpleEventHandler<TArgs>>}
   * @implements {ISimpleEvent<TArgs>}
   * @template TArgs
   */
  class SimpleEventDispatcher extends ste_core_1.DispatcherBase {
      /**
       * Creates an instance of SimpleEventDispatcher.
       *
       * @memberOf SimpleEventDispatcher
       */
      constructor() {
          super();
      }
      /**
       * Dispatches the event.
       *
       * @param {TArgs} args The arguments object.
       * @returns {IPropagationStatus} The status of the event.
       *
       * @memberOf SimpleEventDispatcher
       */
      dispatch(args) {
          const result = this._dispatch(false, this, arguments);
          if (result == null) {
              throw new ste_core_1.DispatchError("Got `null` back from dispatch.");
          }
          return result;
      }
      /**
       * Dispatches the event without waiting for the result.
       *
       * @param {TArgs} args The arguments object.
       *
       * @memberOf SimpleEventDispatcher
       */
      dispatchAsync(args) {
          this._dispatch(true, this, arguments);
      }
      /**
       * Creates an event from the dispatcher. Will return the dispatcher
       * in a wrapper. This will prevent exposure of any dispatcher methods.
       *
       * @returns {ISimpleEvent<TArgs>} The event.
       *
       * @memberOf SimpleEventDispatcher
       */
      asEvent() {
          return super.asEvent();
      }
  }
  exports.SimpleEventDispatcher = SimpleEventDispatcher;
  
  
  /***/ }),
  
  /***/ "d81d":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var $map = __webpack_require__("b727").map;
  var arrayMethodHasSpeciesSupport = __webpack_require__("1dde");
  
  var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');
  
  // `Array.prototype.map` method
  // https://tc39.es/ecma262/#sec-array.prototype.map
  // with adding support of @@species
  $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
    map: function map(callbackfn /* , thisArg */) {
      return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
    }
  });
  
  
  /***/ }),
  
  /***/ "d998":
  /***/ (function(module, exports, __webpack_require__) {
  
  var UA = __webpack_require__("342f");
  
  module.exports = /MSIE|Trident/.test(UA);
  
  
  /***/ }),
  
  /***/ "da84":
  /***/ (function(module, exports, __webpack_require__) {
  
  /* WEBPACK VAR INJECTION */(function(global) {var check = function (it) {
    return it && it.Math == Math && it;
  };
  
  // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
  module.exports =
    // eslint-disable-next-line es/no-global-this -- safe
    check(typeof globalThis == 'object' && globalThis) ||
    check(typeof window == 'object' && window) ||
    // eslint-disable-next-line no-restricted-globals -- safe
    check(typeof self == 'object' && self) ||
    check(typeof global == 'object' && global) ||
    // eslint-disable-next-line no-new-func -- fallback
    (function () { return this; })() || Function('return this')();
  
  /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))
  
  /***/ }),
  
  /***/ "dbb4":
  /***/ (function(module, exports, __webpack_require__) {
  
  var $ = __webpack_require__("23e7");
  var DESCRIPTORS = __webpack_require__("83ab");
  var ownKeys = __webpack_require__("56ef");
  var toIndexedObject = __webpack_require__("fc6a");
  var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
  var createProperty = __webpack_require__("8418");
  
  // `Object.getOwnPropertyDescriptors` method
  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptors
  $({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {
    getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
      var O = toIndexedObject(object);
      var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
      var keys = ownKeys(O);
      var result = {};
      var index = 0;
      var key, descriptor;
      while (keys.length > index) {
        descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);
        if (descriptor !== undefined) createProperty(result, key, descriptor);
      }
      return result;
    }
  });
  
  
  /***/ }),
  
  /***/ "ddb0":
  /***/ (function(module, exports, __webpack_require__) {
  
  var global = __webpack_require__("da84");
  var DOMIterables = __webpack_require__("fdbc");
  var ArrayIteratorMethods = __webpack_require__("e260");
  var createNonEnumerableProperty = __webpack_require__("9112");
  var wellKnownSymbol = __webpack_require__("b622");
  
  var ITERATOR = wellKnownSymbol('iterator');
  var TO_STRING_TAG = wellKnownSymbol('toStringTag');
  var ArrayValues = ArrayIteratorMethods.values;
  
  for (var COLLECTION_NAME in DOMIterables) {
    var Collection = global[COLLECTION_NAME];
    var CollectionPrototype = Collection && Collection.prototype;
    if (CollectionPrototype) {
      // some Chrome versions have non-configurable methods on DOMTokenList
      if (CollectionPrototype[ITERATOR] !== ArrayValues) try {
        createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);
      } catch (error) {
        CollectionPrototype[ITERATOR] = ArrayValues;
      }
      if (!CollectionPrototype[TO_STRING_TAG]) {
        createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
      }
      if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
        // some Chrome versions have non-configurable methods on DOMTokenList
        if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
          createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);
        } catch (error) {
          CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];
        }
      }
    }
  }
  
  
  /***/ }),
  
  /***/ "df75":
  /***/ (function(module, exports, __webpack_require__) {
  
  var internalObjectKeys = __webpack_require__("ca84");
  var enumBugKeys = __webpack_require__("7839");
  
  // `Object.keys` method
  // https://tc39.es/ecma262/#sec-object.keys
  // eslint-disable-next-line es/no-object-keys -- safe
  module.exports = Object.keys || function keys(O) {
    return internalObjectKeys(O, enumBugKeys);
  };
  
  
  /***/ }),
  
  /***/ "e01a":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  // `Symbol.prototype.description` getter
  // https://tc39.es/ecma262/#sec-symbol.prototype.description
  
  var $ = __webpack_require__("23e7");
  var DESCRIPTORS = __webpack_require__("83ab");
  var global = __webpack_require__("da84");
  var has = __webpack_require__("5135");
  var isObject = __webpack_require__("861d");
  var defineProperty = __webpack_require__("9bf2").f;
  var copyConstructorProperties = __webpack_require__("e893");
  
  var NativeSymbol = global.Symbol;
  
  if (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||
    // Safari 12 bug
    NativeSymbol().description !== undefined
  )) {
    var EmptyStringDescriptionStore = {};
    // wrap Symbol constructor for correct work with undefined description
    var SymbolWrapper = function Symbol() {
      var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);
      var result = this instanceof SymbolWrapper
        ? new NativeSymbol(description)
        // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'
        : description === undefined ? NativeSymbol() : NativeSymbol(description);
      if (description === '') EmptyStringDescriptionStore[result] = true;
      return result;
    };
    copyConstructorProperties(SymbolWrapper, NativeSymbol);
    var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;
    symbolPrototype.constructor = SymbolWrapper;
  
    var symbolToString = symbolPrototype.toString;
    var native = String(NativeSymbol('test')) == 'Symbol(test)';
    var regexp = /^Symbol\((.*)\)[^)]+$/;
    defineProperty(symbolPrototype, 'description', {
      configurable: true,
      get: function description() {
        var symbol = isObject(this) ? this.valueOf() : this;
        var string = symbolToString.call(symbol);
        if (has(EmptyStringDescriptionStore, symbol)) return '';
        var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');
        return desc === '' ? undefined : desc;
      }
    });
  
    $({ global: true, forced: true }, {
      Symbol: SymbolWrapper
    });
  }
  
  
  /***/ }),
  
  /***/ "e163":
  /***/ (function(module, exports, __webpack_require__) {
  
  var has = __webpack_require__("5135");
  var toObject = __webpack_require__("7b0b");
  var sharedKey = __webpack_require__("f772");
  var CORRECT_PROTOTYPE_GETTER = __webpack_require__("e177");
  
  var IE_PROTO = sharedKey('IE_PROTO');
  var ObjectPrototype = Object.prototype;
  
  // `Object.getPrototypeOf` method
  // https://tc39.es/ecma262/#sec-object.getprototypeof
  // eslint-disable-next-line es/no-object-getprototypeof -- safe
  module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
    O = toObject(O);
    if (has(O, IE_PROTO)) return O[IE_PROTO];
    if (typeof O.constructor == 'function' && O instanceof O.constructor) {
      return O.constructor.prototype;
    } return O instanceof Object ? ObjectPrototype : null;
  };
  
  
  /***/ }),
  
  /***/ "e177":
  /***/ (function(module, exports, __webpack_require__) {
  
  var fails = __webpack_require__("d039");
  
  module.exports = !fails(function () {
    function F() { /* empty */ }
    F.prototype.constructor = null;
    // eslint-disable-next-line es/no-object-getprototypeof -- required for testing
    return Object.getPrototypeOf(new F()) !== F.prototype;
  });
  
  
  /***/ }),
  
  /***/ "e260":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var toIndexedObject = __webpack_require__("fc6a");
  var addToUnscopables = __webpack_require__("44d2");
  var Iterators = __webpack_require__("3f8c");
  var InternalStateModule = __webpack_require__("69f3");
  var defineIterator = __webpack_require__("7dd0");
  
  var ARRAY_ITERATOR = 'Array Iterator';
  var setInternalState = InternalStateModule.set;
  var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);
  
  // `Array.prototype.entries` method
  // https://tc39.es/ecma262/#sec-array.prototype.entries
  // `Array.prototype.keys` method
  // https://tc39.es/ecma262/#sec-array.prototype.keys
  // `Array.prototype.values` method
  // https://tc39.es/ecma262/#sec-array.prototype.values
  // `Array.prototype[@@iterator]` method
  // https://tc39.es/ecma262/#sec-array.prototype-@@iterator
  // `CreateArrayIterator` internal method
  // https://tc39.es/ecma262/#sec-createarrayiterator
  module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
    setInternalState(this, {
      type: ARRAY_ITERATOR,
      target: toIndexedObject(iterated), // target
      index: 0,                          // next index
      kind: kind                         // kind
    });
  // `%ArrayIteratorPrototype%.next` method
  // https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next
  }, function () {
    var state = getInternalState(this);
    var target = state.target;
    var kind = state.kind;
    var index = state.index++;
    if (!target || index >= target.length) {
      state.target = undefined;
      return { value: undefined, done: true };
    }
    if (kind == 'keys') return { value: index, done: false };
    if (kind == 'values') return { value: target[index], done: false };
    return { value: [index, target[index]], done: false };
  }, 'values');
  
  // argumentsList[@@iterator] is %ArrayProto_values%
  // https://tc39.es/ecma262/#sec-createunmappedargumentsobject
  // https://tc39.es/ecma262/#sec-createmappedargumentsobject
  Iterators.Arguments = Iterators.Array;
  
  // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
  addToUnscopables('keys');
  addToUnscopables('values');
  addToUnscopables('entries');
  
  
  /***/ }),
  
  /***/ "e439":
  /***/ (function(module, exports, __webpack_require__) {
  
  var $ = __webpack_require__("23e7");
  var fails = __webpack_require__("d039");
  var toIndexedObject = __webpack_require__("fc6a");
  var nativeGetOwnPropertyDescriptor = __webpack_require__("06cf").f;
  var DESCRIPTORS = __webpack_require__("83ab");
  
  var FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });
  var FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;
  
  // `Object.getOwnPropertyDescriptor` method
  // https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
  $({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {
    getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {
      return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);
    }
  });
  
  
  /***/ }),
  
  /***/ "e538":
  /***/ (function(module, exports, __webpack_require__) {
  
  var wellKnownSymbol = __webpack_require__("b622");
  
  exports.f = wellKnownSymbol;
  
  
  /***/ }),
  
  /***/ "e893":
  /***/ (function(module, exports, __webpack_require__) {
  
  var has = __webpack_require__("5135");
  var ownKeys = __webpack_require__("56ef");
  var getOwnPropertyDescriptorModule = __webpack_require__("06cf");
  var definePropertyModule = __webpack_require__("9bf2");
  
  module.exports = function (target, source) {
    var keys = ownKeys(source);
    var defineProperty = definePropertyModule.f;
    var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;
    for (var i = 0; i < keys.length; i++) {
      var key = keys[i];
      if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));
    }
  };
  
  
  /***/ }),
  
  /***/ "e8b5":
  /***/ (function(module, exports, __webpack_require__) {
  
  var classof = __webpack_require__("c6b6");
  
  // `IsArray` abstract operation
  // https://tc39.es/ecma262/#sec-isarray
  // eslint-disable-next-line es/no-array-isarray -- safe
  module.exports = Array.isArray || function isArray(arg) {
    return classof(arg) == 'Array';
  };
  
  
  /***/ }),
  
  /***/ "e95a":
  /***/ (function(module, exports, __webpack_require__) {
  
  var wellKnownSymbol = __webpack_require__("b622");
  var Iterators = __webpack_require__("3f8c");
  
  var ITERATOR = wellKnownSymbol('iterator');
  var ArrayPrototype = Array.prototype;
  
  // check on default Array iterator
  module.exports = function (it) {
    return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);
  };
  
  
  /***/ }),
  
  /***/ "eeef":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.NonUniformSimpleEventList = exports.SimpleEventList = exports.SimpleEventHandlingBase = exports.SimpleEventDispatcher = void 0;
  const SimpleEventDispatcher_1 = __webpack_require__("d694");
  Object.defineProperty(exports, "SimpleEventDispatcher", { enumerable: true, get: function () { return SimpleEventDispatcher_1.SimpleEventDispatcher; } });
  const SimpleEventHandlingBase_1 = __webpack_require__("3b31");
  Object.defineProperty(exports, "SimpleEventHandlingBase", { enumerable: true, get: function () { return SimpleEventHandlingBase_1.SimpleEventHandlingBase; } });
  const NonUniformSimpleEventList_1 = __webpack_require__("d3a8");
  Object.defineProperty(exports, "NonUniformSimpleEventList", { enumerable: true, get: function () { return NonUniformSimpleEventList_1.NonUniformSimpleEventList; } });
  const SimpleEventList_1 = __webpack_require__("15a4");
  Object.defineProperty(exports, "SimpleEventList", { enumerable: true, get: function () { return SimpleEventList_1.SimpleEventList; } });
  
  
  /***/ }),
  
  /***/ "f5df":
  /***/ (function(module, exports, __webpack_require__) {
  
  var TO_STRING_TAG_SUPPORT = __webpack_require__("00ee");
  var classofRaw = __webpack_require__("c6b6");
  var wellKnownSymbol = __webpack_require__("b622");
  
  var TO_STRING_TAG = wellKnownSymbol('toStringTag');
  // ES3 wrong here
  var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';
  
  // fallback for IE11 Script Access Denied error
  var tryGet = function (it, key) {
    try {
      return it[key];
    } catch (error) { /* empty */ }
  };
  
  // getting tag from ES6+ `Object.prototype.toString`
  module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
    var O, tag, result;
    return it === undefined ? 'Undefined' : it === null ? 'Null'
      // @@toStringTag case
      : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag
      // builtinTag case
      : CORRECT_ARGUMENTS ? classofRaw(O)
      // ES3 arguments fallback
      : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;
  };
  
  
  /***/ }),
  
  /***/ "f772":
  /***/ (function(module, exports, __webpack_require__) {
  
  var shared = __webpack_require__("5692");
  var uid = __webpack_require__("90e3");
  
  var keys = shared('keys');
  
  module.exports = function (key) {
    return keys[key] || (keys[key] = uid(key));
  };
  
  
  /***/ }),
  
  /***/ "f9ad":
  /***/ (function(module, exports, __webpack_require__) {
  
  // style-loader: Adds some css to the DOM by adding a <style> tag
  
  // load the styles
  var content = __webpack_require__("d5a2");
  if(content.__esModule) content = content.default;
  if(typeof content === 'string') content = [[module.i, content, '']];
  if(content.locals) module.exports = content.locals;
  // add the styles to the DOM
  var add = __webpack_require__("499e").default
  var update = add("852a6106", content, true, {"sourceMap":false,"shadowMode":false});
  
  /***/ }),
  
  /***/ "fb15":
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
  
  "use strict";
  // ESM COMPAT FLAG
  __webpack_require__.r(__webpack_exports__);
  
  // EXPORTS
  __webpack_require__.d(__webpack_exports__, "install", function() { return /* reexport */ install; });
  __webpack_require__.d(__webpack_exports__, "DashItem", function() { return /* reexport */ components_DashItem; });
  __webpack_require__.d(__webpack_exports__, "DashLayout", function() { return /* reexport */ DashLayout; });
  __webpack_require__.d(__webpack_exports__, "Dashboard", function() { return /* reexport */ components_Dashboard; });
  
  // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
  // This file is imported into lib/wc client bundles.
  
  if (typeof window !== 'undefined') {
    var currentScript = window.document.currentScript
    if (true) {
      var getCurrentScript = __webpack_require__("8875")
      currentScript = getCurrentScript()
  
      // for backward compatibility, because previously we directly included the polyfill
      if (!('currentScript' in document)) {
        Object.defineProperty(document, 'currentScript', { get: getCurrentScript })
      }
    }
  
    var src = currentScript && currentScript.src.match(/(.+\/)[^/]+\.js(\?.*)?$/)
    if (src) {
      __webpack_require__.p = src[1] // eslint-disable-line
    }
  }
  
  // Indicate to webpack that this file can be concatenated
  /* harmony default export */ var setPublicPath = (null);
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js
  var web_dom_collections_for_each = __webpack_require__("159b");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.keys.js
  var es_object_keys = __webpack_require__("b64b");
  
  // EXTERNAL MODULE: external {"commonjs":"vue","commonjs2":"vue","root":"Vue"}
  var external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__("8bbf");
  
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/vue-loader-v16/dist/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/DashItem.vue?vue&type=template&id=70e2b960&scoped=true
  
  
  var _withId = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withScopeId"])("data-v-70e2b960");
  
  var render = /*#__PURE__*/_withId(function (_ctx, _cache, $props, $setup, $data, $options) {
    return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      id: 'item_' + _ctx.id,
      ref: "itemElement",
      class: ["item", _ctx.classObj],
      style: _ctx.cssStyle,
      onMouseover: _cache[1] || (_cache[1] = function ($event) {
        return _ctx.hover = true;
      }),
      onMouseleave: _cache[2] || (_cache[2] = function ($event) {
        return _ctx.hover = false;
      })
    }, [_ctx.resizeTop ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 0,
      id: _ctx.id + '-resizeTop',
      ref: _ctx.id + '-resizeTop',
      class: "resize resize-top",
      style: {
        height: _ctx.resizeHandleSize + 'px',
        top: -(_ctx.resizeHandleSize / 2) + 'px',
        left: 0,
        right: 0,
        cursor: 'ns-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeTop", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeBottom ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 1,
      id: _ctx.id + '-resizeBottom',
      ref: _ctx.id + '-resizeBottom',
      class: "resize resize-bottom",
      style: {
        height: _ctx.resizeHandleSize + 'px',
        left: 0 + 'px',
        right: 0 + 'px',
        bottom: -(_ctx.resizeHandleSize / 2) + 'px',
        cursor: 'ns-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeBottom", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeLeft ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 2,
      id: _ctx.id + '-resizeLeft',
      ref: _ctx.id + '-resizeLeft',
      class: "resize resize-left",
      style: {
        width: _ctx.resizeHandleSize + 'px',
        top: 0 + 'px',
        bottom: 0 + 'px',
        left: -(_ctx.resizeHandleSize / 2) + 'px',
        cursor: 'ew-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeLeft", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeRight ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 3,
      id: _ctx.id + '-resizeRight',
      ref: _ctx.id + '-resizeRight',
      class: "resize resize-right",
      style: {
        width: _ctx.resizeHandleSize + 'px',
        top: 0 + 'px',
        bottom: 0 + 'px',
        right: -(_ctx.resizeHandleSize / 2) + 'px',
        cursor: 'ew-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeRight", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeTopLeft ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 4,
      id: _ctx.id + '-resizeTopLeft',
      ref: _ctx.id + '-resizeTopLeft',
      class: "resize resize-left resize-top",
      style: {
        width: _ctx.resizeHandleSize * 2 + 'px',
        height: _ctx.resizeHandleSize * 2 + 'px',
        top: -_ctx.resizeHandleSize + 'px',
        left: -_ctx.resizeHandleSize + 'px',
        cursor: 'nw-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeTopLeft", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeTopRight ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 5,
      id: _ctx.id + '-resizeTopRight',
      ref: _ctx.id + '-resizeTopRight',
      class: "resize resize-right resize-top",
      style: {
        width: _ctx.resizeHandleSize * 2 + 'px',
        height: _ctx.resizeHandleSize * 2 + 'px',
        top: -_ctx.resizeHandleSize + 'px',
        right: -_ctx.resizeHandleSize + 'px',
        cursor: 'ne-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeTopRight", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeBottomLeft ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 6,
      id: _ctx.id + '-resizeBottomLeft',
      ref: _ctx.id + '-resizeBottomLeft',
      class: "resize resize-left resize-bottom",
      style: {
        width: _ctx.resizeHandleSize * 2 + 'px',
        height: _ctx.resizeHandleSize * 2 + 'px',
        bottom: -_ctx.resizeHandleSize + 'px',
        left: -_ctx.resizeHandleSize + 'px',
        cursor: 'ne-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeBottomLeft", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), _ctx.resizeBottomRight ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      key: 7,
      id: _ctx.id + '-resizeBottomRight',
      ref: _ctx.id + '-resizeBottomRight',
      class: "resize resize-right resize-bottom",
      style: {
        width: _ctx.resizeHandleSize * 2 + 'px',
        height: _ctx.resizeHandleSize * 2 + 'px',
        bottom: -_ctx.resizeHandleSize + 'px',
        right: -_ctx.resizeHandleSize + 'px',
        cursor: 'nw-resize',
        position: 'absolute',
        zIndex: _ctx.resizableZIndex
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "resizeBottomRight", {}, undefined, true)], 12, ["id"])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "default", {}, undefined, true)], 46, ["id"]);
  });
  // CONCATENATED MODULE: ./src/components/DashItem.vue?vue&type=template&id=70e2b960&scoped=true
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js
  var es_symbol = __webpack_require__("a4d3");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js
  var es_array_filter = __webpack_require__("4de4");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptor.js
  var es_object_get_own_property_descriptor = __webpack_require__("e439");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptors.js
  var es_object_get_own_property_descriptors = __webpack_require__("dbb4");
  
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
  function _defineProperty(obj, key, value) {
    if (key in obj) {
      Object.defineProperty(obj, key, {
        value: value,
        enumerable: true,
        configurable: true,
        writable: true
      });
    } else {
      obj[key] = value;
    }
  
    return obj;
  }
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread2.js
  
  
  
  
  
  
  
  
  function ownKeys(object, enumerableOnly) {
    var keys = Object.keys(object);
  
    if (Object.getOwnPropertySymbols) {
      var symbols = Object.getOwnPropertySymbols(object);
  
      if (enumerableOnly) {
        symbols = symbols.filter(function (sym) {
          return Object.getOwnPropertyDescriptor(object, sym).enumerable;
        });
      }
  
      keys.push.apply(keys, symbols);
    }
  
    return keys;
  }
  
  function _objectSpread2(target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i] != null ? arguments[i] : {};
  
      if (i % 2) {
        ownKeys(Object(source), true).forEach(function (key) {
          _defineProperty(target, key, source[key]);
        });
      } else if (Object.getOwnPropertyDescriptors) {
        Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
      } else {
        ownKeys(Object(source)).forEach(function (key) {
          Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
        });
      }
    }
  
    return target;
  }
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
  function _arrayWithHoles(arr) {
    if (Array.isArray(arr)) return arr;
  }
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.description.js
  var es_symbol_description = __webpack_require__("e01a");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js
  var es_object_to_string = __webpack_require__("d3b7");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.iterator.js
  var es_symbol_iterator = __webpack_require__("d28b");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js
  var es_array_iterator = __webpack_require__("e260");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
  var es_string_iterator = __webpack_require__("3ca3");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js
  var web_dom_collections_iterator = __webpack_require__("ddb0");
  
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
  
  
  
  
  
  
  
  function _iterableToArrayLimit(arr, i) {
    var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
  
    if (_i == null) return;
    var _arr = [];
    var _n = true;
    var _d = false;
  
    var _s, _e;
  
    try {
      for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
        _arr.push(_s.value);
  
        if (i && _arr.length === i) break;
      }
    } catch (err) {
      _d = true;
      _e = err;
    } finally {
      try {
        if (!_n && _i["return"] != null) _i["return"]();
      } finally {
        if (_d) throw _e;
      }
    }
  
    return _arr;
  }
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.slice.js
  var es_array_slice = __webpack_require__("fb6a");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js
  var es_function_name = __webpack_require__("b0c0");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.from.js
  var es_array_from = __webpack_require__("a630");
  
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
  function _arrayLikeToArray(arr, len) {
    if (len == null || len > arr.length) len = arr.length;
  
    for (var i = 0, arr2 = new Array(len); i < len; i++) {
      arr2[i] = arr[i];
    }
  
    return arr2;
  }
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
  
  
  
  
  
  
  function _unsupportedIterableToArray(o, minLen) {
    if (!o) return;
    if (typeof o === "string") return _arrayLikeToArray(o, minLen);
    var n = Object.prototype.toString.call(o).slice(8, -1);
    if (n === "Object" && o.constructor) n = o.constructor.name;
    if (n === "Map" || n === "Set") return Array.from(o);
    if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
  }
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
  function _nonIterableRest() {
    throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
  
  
  
  
  function _slicedToArray(arr, i) {
    return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
  }
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.number.constructor.js
  var es_number_constructor = __webpack_require__("a9e3");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js
  var es_array_includes = __webpack_require__("caad");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.includes.js
  var es_string_includes = __webpack_require__("2532");
  
  // EXTERNAL MODULE: ./node_modules/interactjs/dist/interact.min.js
  var interact_min = __webpack_require__("5014");
  var interact_min_default = /*#__PURE__*/__webpack_require__.n(interact_min);
  
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
  function _classCallCheck(instance, Constructor) {
    if (!(instance instanceof Constructor)) {
      throw new TypeError("Cannot call a class as a function");
    }
  }
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
  function _defineProperties(target, props) {
    for (var i = 0; i < props.length; i++) {
      var descriptor = props[i];
      descriptor.enumerable = descriptor.enumerable || false;
      descriptor.configurable = true;
      if ("value" in descriptor) descriptor.writable = true;
      Object.defineProperty(target, descriptor.key, descriptor);
    }
  }
  
  function _createClass(Constructor, protoProps, staticProps) {
    if (protoProps) _defineProperties(Constructor.prototype, protoProps);
    if (staticProps) _defineProperties(Constructor, staticProps);
    return Constructor;
  }
  // EXTERNAL MODULE: ./node_modules/ste-simple-events/dist/index.js
  var dist = __webpack_require__("eeef");
  
  // CONCATENATED MODULE: ./src/components/DashItem.model.ts
  
  
  
  
  var DashItem_model_DashItem = /*#__PURE__*/function () {
    function DashItem(_ref) {
      var id = _ref.id,
          x = _ref.x,
          y = _ref.y,
          width = _ref.width,
          height = _ref.height,
          minWidth = _ref.minWidth,
          maxWidth = _ref.maxWidth,
          minHeight = _ref.minHeight,
          maxHeight = _ref.maxHeight,
          colWidth = _ref.colWidth,
          rowHeight = _ref.rowHeight,
          margin = _ref.margin,
          draggable = _ref.draggable,
          resizable = _ref.resizable,
          resizeEdges = _ref.resizeEdges,
          resizeHandleSize = _ref.resizeHandleSize,
          moveHold = _ref.moveHold,
          resizeHold = _ref.resizeHold,
          locked = _ref.locked;
  
      _classCallCheck(this, DashItem);
  
      _defineProperty(this, "_id", void 0);
  
      _defineProperty(this, "_x", void 0);
  
      _defineProperty(this, "_y", void 0);
  
      _defineProperty(this, "_colWidth", void 0);
  
      _defineProperty(this, "_rowHeight", void 0);
  
      _defineProperty(this, "_margin", void 0);
  
      _defineProperty(this, "_left", void 0);
  
      _defineProperty(this, "_top", void 0);
  
      _defineProperty(this, "_width", void 0);
  
      _defineProperty(this, "_height", void 0);
  
      _defineProperty(this, "_minWidth", void 0);
  
      _defineProperty(this, "_maxWidth", void 0);
  
      _defineProperty(this, "_minHeight", void 0);
  
      _defineProperty(this, "_maxHeight", void 0);
  
      _defineProperty(this, "_widthPx", void 0);
  
      _defineProperty(this, "_heightPx", void 0);
  
      _defineProperty(this, "_draggable", void 0);
  
      _defineProperty(this, "_resizable", void 0);
  
      _defineProperty(this, "_resizeEdges", void 0);
  
      _defineProperty(this, "_resizeHandleSize", void 0);
  
      _defineProperty(this, "_moved", false);
  
      _defineProperty(this, "_hover", false);
  
      _defineProperty(this, "_resizeHold", void 0);
  
      _defineProperty(this, "_moveHold", void 0);
  
      _defineProperty(this, "_locked", void 0);
  
      _defineProperty(this, "_moving", false);
  
      _defineProperty(this, "_resizing", false);
  
      _defineProperty(this, "_onMoveStartEventDispatcher", new dist["SimpleEventDispatcher"]());
  
      _defineProperty(this, "_onMoveEventDispatcher", new dist["SimpleEventDispatcher"]());
  
      _defineProperty(this, "_onMoveEndEventDispatcher", new dist["SimpleEventDispatcher"]());
  
      _defineProperty(this, "_onResizeStartEventDispatcher", new dist["SimpleEventDispatcher"]());
  
      _defineProperty(this, "_onResizeEventDispatcher", new dist["SimpleEventDispatcher"]());
  
      _defineProperty(this, "_onResizeEndEventDispatcher", new dist["SimpleEventDispatcher"]());
  
      this._id = id;
  
      if (typeof colWidth !== "undefined") {
        this._colWidth = colWidth;
      } else {
        this._colWidth = 1;
      }
  
      if (typeof rowHeight !== "undefined") {
        this._rowHeight = rowHeight;
      } else {
        this._rowHeight = 1;
      }
  
      if (typeof margin !== "undefined") {
        this._margin = margin;
      } else {
        this._margin = {
          x: 1,
          y: 1
        };
      }
  
      if (typeof x !== "undefined") {
        this._x = x;
      } else {
        this._x = DashItem.defaults.x;
      }
  
      this._left = DashItem.getLeftFromX(this._x, this._colWidth, this._margin);
  
      if (typeof y !== "undefined") {
        this._y = y;
      } else {
        this._y = DashItem.defaults.y;
      }
  
      this._top = DashItem.getTopFromY(this._y, this._rowHeight, this._margin);
  
      if (typeof minWidth !== "undefined") {
        this._minWidth = minWidth;
      } else {
        this._minWidth = DashItem.defaults.minWidth;
      }
  
      if (typeof maxWidth !== "undefined") {
        this._maxWidth = maxWidth;
      } else {
        this._maxWidth = DashItem.defaults.maxWidth;
      }
  
      if (typeof width !== "undefined") {
        this._width = width;
      } else {
        this._width = DashItem.defaults.width;
      }
  
      if (typeof minHeight !== "undefined") {
        this._minHeight = minHeight;
      } else {
        this._minHeight = DashItem.defaults.minHeight;
      }
  
      if (typeof maxHeight !== "undefined") {
        this._maxHeight = maxHeight;
      } else {
        this._maxHeight = DashItem.defaults.maxHeight;
      }
  
      if (typeof height !== "undefined") {
        this._height = height;
      } else {
        this._height = DashItem.defaults.height;
      }
  
      this._widthPx = DashItem.getWidthInPx(this._width, this._colWidth, this._margin);
      this._heightPx = DashItem.getHeightInPx(this._height, this._rowHeight, this._margin);
  
      if (typeof draggable !== "undefined") {
        this._draggable = draggable;
      } else {
        this._draggable = DashItem.defaults.draggable;
      }
  
      if (typeof resizable !== "undefined") {
        this._resizable = resizable;
      } else {
        this._resizable = DashItem.defaults.resizable;
      }
  
      if (typeof resizeEdges !== "undefined") {
        this._resizeEdges = resizeEdges;
      } else {
        this._resizeEdges = "top bottom left right";
      }
  
      if (typeof resizeHandleSize !== "undefined") {
        this._resizeHandleSize = resizeHandleSize;
      } else {
        this._resizeHandleSize = 8;
      }
  
      if (typeof moveHold !== "undefined") {
        this._moveHold = moveHold;
      } else {
        this._moveHold = 0;
      }
  
      if (typeof resizeHold !== "undefined") {
        this._resizeHold = resizeHold;
      } else {
        this._resizeHold = 0;
      }
  
      if (typeof locked !== "undefined") {
        this._locked = locked;
      } else {
        this._locked = DashItem.defaults.locked;
      }
    }
  
    _createClass(DashItem, [{
      key: "id",
      get: function get() {
        return this._id;
      }
    }, {
      key: "x",
      get: function get() {
        return this._x;
      },
      set: function set(x) {
        this._x = x;
        this.updatePositionAndSize();
      }
    }, {
      key: "y",
      get: function get() {
        return this._y;
      },
      set: function set(y) {
        this._y = y;
        this.updatePositionAndSize();
      }
    }, {
      key: "colWidth",
      get: function get() {
        return this._colWidth;
      },
      set: function set(c) {
        this._colWidth = c;
        this.updatePositionAndSize();
      }
    }, {
      key: "rowHeight",
      get: function get() {
        return this._rowHeight;
      },
      set: function set(r) {
        this._rowHeight = r;
        this.updatePositionAndSize();
      }
    }, {
      key: "margin",
      get: function get() {
        return this._margin;
      },
      set: function set(m) {
        this._margin = m;
        this.updatePositionAndSize();
      }
    }, {
      key: "left",
      get: function get() {
        return this._left;
      },
      set: function set(l) {
        if (!this._moving && !this._resizing) {
          this._left = l;
        }
      }
    }, {
      key: "top",
      get: function get() {
        return this._top;
      },
      set: function set(t) {
        if (!this._moving && !this._resizing) {
          this._top = t;
        }
      }
    }, {
      key: "minWidth",
      get: function get() {
        return this._minWidth;
      },
      set: function set(mW) {
        this._minWidth = mW;
      }
    }, {
      key: "maxWidth",
      get: function get() {
        return this._maxWidth;
      },
      set: function set(mW) {
        this._maxWidth = mW;
      }
    }, {
      key: "width",
      get: function get() {
        return this._width;
      },
      set: function set(w) {
        this._width = w;
        this.checkSizeLimits();
        this.updatePositionAndSize();
      }
    }, {
      key: "minHeight",
      get: function get() {
        return this._minHeight;
      },
      set: function set(mW) {
        this._minHeight = mW;
      }
    }, {
      key: "maxHeight",
      get: function get() {
        return this._maxHeight;
      },
      set: function set(mW) {
        this._maxHeight = mW;
      }
    }, {
      key: "height",
      get: function get() {
        return this._height;
      },
      set: function set(h) {
        this._height = h;
        this.checkSizeLimits();
        this.updatePositionAndSize();
      }
    }, {
      key: "widthPx",
      get: function get() {
        return this._widthPx;
      },
      set: function set(w) {
        if (!this._resizing) {
          this._widthPx = w;
        }
      }
    }, {
      key: "heightPx",
      get: function get() {
        return this._heightPx;
      },
      set: function set(h) {
        if (!this._resizing) {
          this._heightPx = h;
        }
      }
    }, {
      key: "hover",
      get: function get() {
        return this._hover;
      },
      set: function set(h) {
        this._hover = h;
      }
    }, {
      key: "moveHold",
      get: function get() {
        return this._moveHold;
      },
      set: function set(dh) {
        this._moveHold = dh;
      }
    }, {
      key: "resizeHold",
      get: function get() {
        return this._resizeHold;
      },
      set: function set(rh) {
        this._resizeHold = rh;
      }
    }, {
      key: "moving",
      get: function get() {
        return this._moving;
      }
    }, {
      key: "resizing",
      get: function get() {
        return this._resizing;
      }
    }, {
      key: "checkSizeLimits",
      value: function checkSizeLimits() {
        if (typeof this.maxWidth == "number") {
          if (this.width > this.maxWidth) {
            this.width = this.maxWidth;
          }
        }
  
        if (typeof this.minWidth == "number") {
          if (this.width < this.minWidth) {
            this.width = this.minWidth;
          }
        }
  
        if (typeof this.maxHeight == "number") {
          if (this.height > this.maxHeight) {
            this.height = this.maxHeight;
          }
        }
  
        if (typeof this.minHeight == "number") {
          if (this.height < this.minHeight) {
            this.height = this.minHeight;
          }
        }
      }
    }, {
      key: "updatePositionAndSize",
      value: function updatePositionAndSize() {
        this.left = DashItem.getLeftFromX(this.x, this.colWidth, this.margin);
        this.top = DashItem.getTopFromY(this.y, this.rowHeight, this.margin);
        this.widthPx = DashItem.getWidthInPx(this.width, this.colWidth, this.margin);
        this.heightPx = DashItem.getHeightInPx(this.height, this.rowHeight, this.margin);
      }
    }, {
      key: "draggable",
      get: function get() {
        return this._draggable;
      },
      set: function set(d) {
        this._draggable = d;
      }
    }, {
      key: "resizable",
      get: function get() {
        return this._resizable;
      },
      set: function set(r) {
        this._resizable = r;
      }
    }, {
      key: "resizeEdges",
      get: function get() {
        return this._resizeEdges;
      },
      set: function set(e) {
        this._resizeEdges = e;
      }
    }, {
      key: "resizeHandleSize",
      get: function get() {
        return this._resizeHandleSize;
      },
      set: function set(rhs) {
        this._resizeHandleSize = rhs;
      }
    }, {
      key: "moved",
      get: function get() {
        return this._moved;
      },
      set: function set(m) {
        this._moved = m;
      }
    }, {
      key: "locked",
      get: function get() {
        return this._locked;
      },
      set: function set(l) {
        this._locked = l;
      }
    }, {
      key: "toItem",
      value: function toItem() {
        return {
          id: this.id,
          x: this.x,
          y: this.y,
          top: this.top,
          left: this.left,
          width: this.width,
          maxWidth: this.maxWidth,
          minWidth: this.minWidth,
          widthPx: this.widthPx,
          height: this.height,
          maxHeight: this.maxHeight,
          minHeight: this.minHeight,
          heightPx: this.heightPx,
          draggable: this.draggable,
          resizable: this.resizable,
          locked: this.locked
        };
      }
    }, {
      key: "fromItem",
      value: function fromItem(item) {
        this._x = item.x;
        this._y = item.y;
        this._width = item.width;
        this._height = item.height;
        this.updatePositionAndSize();
      } //Drag Event Management
  
    }, {
      key: "_onMoveStart",
      value: function _onMoveStart() {
        this._moving = true;
  
        this._onMoveStartEventDispatcher.dispatch(this.toItem());
      }
    }, {
      key: "_onMove",
      value: function _onMove(left, top) {
        this._left += left;
        this._top += top;
  
        this._onMoveEventDispatcher.dispatch(this.toItem());
      }
    }, {
      key: "_onMoveEnd",
      value: function _onMoveEnd() {
        this._moving = false;
  
        this._onMoveEndEventDispatcher.dispatch(this.toItem());
      }
    }, {
      key: "onMoveStart",
      get: function get() {
        return this._onMoveStartEventDispatcher.asEvent();
      }
    }, {
      key: "onMove",
      get: function get() {
        return this._onMoveEventDispatcher.asEvent();
      }
    }, {
      key: "onMoveEnd",
      get: function get() {
        return this._onMoveEndEventDispatcher.asEvent();
      } //ResizeEventManagement
  
    }, {
      key: "_onResizeStart",
      value: function _onResizeStart() {
        this._resizing = true;
  
        this._onResizeStartEventDispatcher.dispatch(this.toItem());
      }
    }, {
      key: "_onResize",
      value: function _onResize(event) {
        this._left += event.deltaRect.left;
        this._top += event.deltaRect.top;
        this._widthPx = event.rect.width;
        this._heightPx = event.rect.height;
  
        this._onResizeEventDispatcher.dispatch(this.toItem());
      }
    }, {
      key: "_onResizeEnd",
      value: function _onResizeEnd() {
        this._resizing = false;
  
        this._onResizeEndEventDispatcher.dispatch(this.toItem());
      }
    }, {
      key: "onResizeStart",
      get: function get() {
        return this._onResizeStartEventDispatcher.asEvent();
      }
    }, {
      key: "onResize",
      get: function get() {
        return this._onResizeEventDispatcher.asEvent();
      }
    }, {
      key: "onResizeEnd",
      get: function get() {
        return this._onResizeEndEventDispatcher.asEvent();
      } //Static Methods
  
    }], [{
      key: "getLeftFromX",
      value: function getLeftFromX(x, colWidth, margin) {
        return Math.round(colWidth * x + (x + 1) * margin.x);
      }
    }, {
      key: "getXFromLeft",
      value: function getXFromLeft(l, colWidth, margin) {
        return Math.round((l - margin.x) / (colWidth + margin.x));
      }
    }, {
      key: "getTopFromY",
      value: function getTopFromY(y, rowHeight, margin) {
        return Math.round(rowHeight * y + (y + 1) * margin.y);
      }
    }, {
      key: "getYFromTop",
      value: function getYFromTop(t, rowHeight, margin) {
        return Math.round((t - margin.y) / (rowHeight + margin.y));
      }
    }, {
      key: "getWidthInPx",
      value: function getWidthInPx(w, colWidth, margin) {
        return Math.round(colWidth * w + Math.max(0, w - 1) * margin.x);
      }
    }, {
      key: "getWidthFromPx",
      value: function getWidthFromPx(widthPx, colWidth, margin) {
        return Math.round((widthPx + margin.x) / (colWidth + margin.x));
      }
    }, {
      key: "getHeightInPx",
      value: function getHeightInPx(h, rowHeight, margin) {
        return Math.round(rowHeight * h + Math.max(0, h - 1) * margin.y);
      }
    }, {
      key: "getHeightFromPx",
      value: function getHeightFromPx(heightPx, rowHeight, margin) {
        return Math.round((heightPx + margin.y) / (rowHeight + margin.y));
      }
    }, {
      key: "defaults",
      get: function get() {
        var defaults = {
          id: "",
          x: 0,
          y: 0,
          width: 1,
          height: 1,
          minWidth: 1,
          maxWidth: false,
          minHeight: 1,
          maxHeight: false,
          draggable: true,
          resizable: true,
          locked: false
        };
        return defaults;
      }
    }, {
      key: "cssTransform",
      value: function cssTransform(top, left, widthPx, heightPx) {
        var translate = "translate3d(" + left + "px," + top + "px, 0)";
        return {
          transform: translate,
          WebkitTransform: translate,
          MozTransform: translate,
          msTransform: translate,
          OTransform: translate,
          width: widthPx + "px",
          height: heightPx + "px"
        };
      }
    }, {
      key: "cssTopLeft",
      value: function cssTopLeft(top, left, widthPx, heightPx) {
        return {
          top: top + "px",
          left: left + "px",
          width: widthPx + "px",
          height: heightPx + "px"
        };
      }
    }]);
  
    return DashItem;
  }();
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js
  
  
  
  
  
  
  
  
  function _createForOfIteratorHelper(o, allowArrayLike) {
    var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
  
    if (!it) {
      if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
        if (it) o = it;
        var i = 0;
  
        var F = function F() {};
  
        return {
          s: F,
          n: function n() {
            if (i >= o.length) return {
              done: true
            };
            return {
              done: false,
              value: o[i++]
            };
          },
          e: function e(_e) {
            throw _e;
          },
          f: F
        };
      }
  
      throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
    }
  
    var normalCompletion = true,
        didErr = false,
        err;
    return {
      s: function s() {
        it = it.call(o);
      },
      n: function n() {
        var step = it.next();
        normalCompletion = step.done;
        return step;
      },
      e: function e(_e2) {
        didErr = true;
        err = _e2;
      },
      f: function f() {
        try {
          if (!normalCompletion && it["return"] != null) it["return"]();
        } finally {
          if (didErr) throw err;
        }
      }
    };
  }
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js
  var es_array_map = __webpack_require__("d81d");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.find-index.js
  var es_array_find_index = __webpack_require__("c740");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.splice.js
  var es_array_splice = __webpack_require__("a434");
  
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.sort.js
  var es_array_sort = __webpack_require__("4e82");
  
  // CONCATENATED MODULE: ./src/components/Layout.model.ts
  
  
  
  
  
  
  
  
  
  
  
  
   // noinspection InfiniteRecursionJS
  
  var Layout_model_Layout = /*#__PURE__*/function () {
    function Layout(_ref) {
      var breakpoint = _ref.breakpoint,
          numberOfCols = _ref.numberOfCols,
          breakpointWidth = _ref.breakpointWidth,
          margin = _ref.margin,
          autoHeight = _ref.autoHeight,
          useCssTransforms = _ref.useCssTransforms,
          width = _ref.width,
          height = _ref.height,
          rowHeight = _ref.rowHeight,
          minRowHeight = _ref.minRowHeight,
          maxRowHeight = _ref.maxRowHeight,
          colWidth = _ref.colWidth,
          minColWidth = _ref.minColWidth,
          maxColWidth = _ref.maxColWidth,
          compact = _ref.compact,
          initialItems = _ref.initialItems,
          debug = _ref.debug;
  
      _classCallCheck(this, Layout);
  
      _defineProperty(this, "_breakpoint", void 0);
  
      _defineProperty(this, "_breakpointWidth", void 0);
  
      _defineProperty(this, "_debug", void 0);
  
      _defineProperty(this, "_margin", void 0);
  
      _defineProperty(this, "_width", void 0);
  
      _defineProperty(this, "_height", void 0);
  
      _defineProperty(this, "_numberOfCols", void 0);
  
      _defineProperty(this, "_autoHeight", void 0);
  
      _defineProperty(this, "_rowHeight", void 0);
  
      _defineProperty(this, "_minRowHeight", void 0);
  
      _defineProperty(this, "_maxRowHeight", void 0);
  
      _defineProperty(this, "_colWidth", void 0);
  
      _defineProperty(this, "_minColWidth", void 0);
  
      _defineProperty(this, "_maxColWidth", void 0);
  
      _defineProperty(this, "_compact", void 0);
  
      _defineProperty(this, "_useCssTransforms", void 0);
  
      _defineProperty(this, "_itemBeingDragged", false);
  
      _defineProperty(this, "_itemBeingResized", false);
  
      _defineProperty(this, "_initialItemIds", []);
  
      _defineProperty(this, "_dashItems", []);
  
      _defineProperty(this, "_dragStartListeners", []);
  
      _defineProperty(this, "_dragListeners", []);
  
      _defineProperty(this, "_dragEndListeners", []);
  
      _defineProperty(this, "_resizeStartListeners", []);
  
      _defineProperty(this, "_resizeListeners", []);
  
      _defineProperty(this, "_resizeEndListeners", []);
  
      this._debug = debug !== null && debug !== void 0 ? debug : false;
      this._breakpoint = breakpoint;
      this._numberOfCols = numberOfCols;
  
      if (typeof breakpointWidth !== "undefined") {
        this._breakpointWidth = breakpointWidth;
      } else {
        this._breakpointWidth = Layout.defaults.breakpointWidth;
      }
  
      if (typeof margin !== "undefined") {
        this._margin = margin;
      } else {
        this._margin = Layout.defaults.margin;
      }
  
      if (typeof autoHeight !== "undefined") {
        this._autoHeight = autoHeight;
      } else {
        this._autoHeight = Layout.defaults.autoHeight;
      }
  
      if (typeof useCssTransforms !== "undefined") {
        this._useCssTransforms = useCssTransforms;
      } else {
        this._useCssTransforms = Layout.defaults.useCssTransforms;
      }
  
      if (typeof width !== "undefined") {
        this._width = width;
      } else {
        this._width = Layout.defaults.width;
      }
  
      if (typeof height !== "undefined") {
        this._height = height;
      } else {
        this._height = Layout.defaults.height;
      }
  
      if (typeof rowHeight !== "undefined") {
        this._rowHeight = rowHeight;
      } else {
        this._rowHeight = Layout.defaults.rowHeight;
      }
  
      if (typeof minRowHeight !== "undefined") {
        this._minRowHeight = minRowHeight;
      } else {
        this._minRowHeight = Layout.defaults.minRowHeight;
      }
  
      if (typeof maxRowHeight !== "undefined") {
        this._maxRowHeight = maxRowHeight;
      } else {
        this._maxRowHeight = Layout.defaults.maxRowHeight;
      }
  
      if (typeof colWidth !== "undefined") {
        this._colWidth = colWidth;
      } else {
        this._colWidth = Layout.defaults.colWidth;
      }
  
      if (typeof minColWidth !== "undefined") {
        this._minColWidth = minColWidth;
      } else {
        this._minColWidth = Layout.defaults.minColWidth;
      }
  
      if (typeof maxColWidth !== "undefined") {
        this._maxColWidth = maxColWidth;
      } else {
        this._maxColWidth = Layout.defaults.maxColWidth;
      }
  
      if (typeof compact !== "undefined") {
        this._compact = compact;
      } else {
        this._compact = Layout.defaults.compact;
      }
  
      if (typeof initialItems !== "undefined") {
        this._initialItemIds = initialItems.map(function (item) {
          return item.id;
        });
      }
    }
  
    _createClass(Layout, [{
      key: "debug",
      get: function get() {
        return this._debug;
      },
      set: function set(d) {
        this._debug = d;
      }
    }, {
      key: "breakpoint",
      get: function get() {
        return this._breakpoint;
      },
      set: function set(b) {
        this._breakpoint = b;
      }
    }, {
      key: "breakpointWidth",
      get: function get() {
        return this._breakpointWidth;
      },
      set: function set(bw) {
        this._breakpointWidth = bw;
      }
    }, {
      key: "margin",
      get: function get() {
        return this._margin;
      },
      set: function set(m) {
        this._margin = m;
      }
    }, {
      key: "width",
      get: function get() {
        return this.calculateWidth();
      },
      set: function set(w) {
        this._width = w;
        this.updateDashItems();
      }
    }, {
      key: "height",
      get: function get() {
        if (this.autoHeight) {
          return this.calculateHeight();
        }
  
        return this._height;
      },
      set: function set(h) {
        this._height = h;
      }
    }, {
      key: "numberOfCols",
      get: function get() {
        return this._numberOfCols;
      },
      set: function set(n) {
        this._numberOfCols = n;
        this.updateDashItems();
      }
    }, {
      key: "autoHeight",
      get: function get() {
        return this._autoHeight;
      },
      set: function set(ah) {
        this._autoHeight = ah;
      }
    }, {
      key: "maxRowHeight",
      get: function get() {
        return this._maxRowHeight;
      },
      set: function set(mrh) {
        this._maxRowHeight = mrh;
        this.updateDashItems();
      }
    }, {
      key: "minRowHeight",
      get: function get() {
        return this._minRowHeight;
      },
      set: function set(mrh) {
        this._minRowHeight = mrh;
        this.updateDashItems();
      }
    }, {
      key: "rowHeight",
      get: function get() {
        var rH;
  
        if (typeof this._rowHeight == "number") {
          rH = this._rowHeight;
        } else {
          rH = this.colWidth;
        }
  
        if (typeof this.maxRowHeight == "number") {
          if (rH > this.maxRowHeight) {
            rH = this.maxRowHeight;
          }
        }
  
        if (typeof this.minRowHeight == "number") {
          if (rH < this.minRowHeight) {
            rH = this.minRowHeight;
          }
        }
  
        return rH;
      },
      set: function set(rh) {
        this._rowHeight = rh || 0;
        this.updateDashItems();
      }
    }, {
      key: "maxColWidth",
      get: function get() {
        return this._maxColWidth;
      },
      set: function set(mcw) {
        this._maxColWidth = mcw;
        this.updateDashItems();
      }
    }, {
      key: "minColWidth",
      get: function get() {
        return this._minColWidth;
      },
      set: function set(mcw) {
        this._minColWidth = mcw;
        this.updateDashItems();
      }
    }, {
      key: "colWidth",
      get: function get() {
        var colWidthCalc;
  
        if (typeof this._colWidth == "number") {
          colWidthCalc = this._colWidth;
        } else {
          colWidthCalc = (this.width - this.margin.x * (this.numberOfCols + 1)) / this.numberOfCols;
        }
  
        if (typeof this.maxColWidth == "number") {
          if (colWidthCalc > this.maxColWidth) {
            colWidthCalc = this.maxColWidth;
          }
        }
  
        if (typeof this.minColWidth == "number") {
          if (colWidthCalc < this.minColWidth) {
            colWidthCalc = this.minColWidth;
          }
        }
  
        return colWidthCalc;
      } //Item Methods
      ,
      set: function set(cw) {
        this._colWidth = cw;
      }
    }, {
      key: "itemBeingDragged",
      get: function get() {
        return this._itemBeingDragged;
      },
      set: function set(ibd) {
        this._itemBeingDragged = ibd;
      }
    }, {
      key: "itemBeingResized",
      get: function get() {
        return this._itemBeingResized;
      },
      set: function set(ibr) {
        this._itemBeingResized = ibr;
      }
    }, {
      key: "placeholder",
      get: function get() {
        return this.getDashItemById("-1Placeholder");
      },
      set: function set(p) {
        this.placeholder = p;
      }
    }, {
      key: "compact",
      get: function get() {
        return this._compact;
      },
      set: function set(c) {
        this._compact = c;
      }
    }, {
      key: "useCssTransforms",
      get: function get() {
        return this._useCssTransforms;
      },
      set: function set(uct) {
        this._useCssTransforms = uct;
      } //used when colWidth is defined (i.e. not looking or caring about width of window )
  
    }, {
      key: "calculateWidth",
      value: function calculateWidth() {
        if (typeof this._colWidth == "number" && typeof this.colWidth == "number") {
          return this.numberOfCols * (this.colWidth + this.margin.x) + this.margin.x;
        }
  
        return this._width;
      } //Reactive Methods
  
    }, {
      key: "calculateHeight",
      value: function calculateHeight() {
        var maxY = 0;
        var bottomY = 0;
  
        var _iterator = _createForOfIteratorHelper(this._dashItems),
            _step;
  
        try {
          for (_iterator.s(); !(_step = _iterator.n()).done;) {
            var item = _step.value;
            bottomY = item.y + item.height;
  
            if (bottomY > maxY) {
              maxY = bottomY;
            }
          }
        } catch (err) {
          _iterator.e(err);
        } finally {
          _iterator.f();
        }
  
        return maxY * ((this.rowHeight ? this.rowHeight : 0) + this.margin.y) + this.margin.y;
      } //DashItem Methods
  
    }, {
      key: "addDashItem",
      value: function addDashItem(d) {
        var _this = this;
  
        this._dashItems.push(d);
  
        this.updateDashItems(); //Drag Subscriptions
  
        var unDragStart = d.onMoveStart.subscribe(function (item) {
          _this.itemDragging(item);
        });
  
        this._dragStartListeners.push({
          id: d.id,
          unsubscribe: unDragStart
        });
  
        var unDrag = d.onMove.subscribe(function (item) {
          _this.itemDragging(item);
        });
  
        this._dragListeners.push({
          id: d.id,
          unsubscribe: unDrag
        });
  
        var unDragEnd = d.onMoveEnd.subscribe(function (item) {
          _this.itemDraggingComplete(item);
        });
  
        this._dragEndListeners.push({
          id: d.id,
          unsubscribe: unDragEnd
        }); //Resize Subscriptions
  
  
        var unResizeStart = d.onResizeStart.subscribe(function (item) {
          _this.itemResizing(item);
        });
  
        this._resizeStartListeners.push({
          id: d.id,
          unsubscribe: unResizeStart
        });
  
        var unResize = d.onResize.subscribe(function (item) {
          _this.itemResizing(item);
        });
  
        this._resizeListeners.push({
          id: d.id,
          unsubscribe: unResize
        });
  
        var unResizeEnd = d.onResizeEnd.subscribe(function (item) {
          _this.itemResizingComplete(item);
        });
  
        this._resizeEndListeners.push({
          id: d.id,
          unsubscribe: unResizeEnd
        }); //Check that the added item has not caused a collision and if so move the others.
        //Only do this on items added after initialisation
  
  
        if (!this._initialItemIds.includes(d.id)) {
          var items = this.compactLayout(this.items);
          this.syncItems(items);
        }
      }
    }, {
      key: "removeDashItem",
      value: function removeDashItem(d) {
        var index = this._dashItems.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._dashItems.splice(index, 1);
        } //Remove Event Listeners
  
  
        index = this._dragStartListeners.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._dragStartListeners[index].unsubscribe();
  
          this._dragStartListeners.splice(index, 1);
        }
  
        index = this._dragListeners.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._dragListeners[index].unsubscribe();
  
          this._dragListeners.splice(index, 1);
        }
  
        index = this._dragEndListeners.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._dragEndListeners[index].unsubscribe();
  
          this._dragEndListeners.splice(index, 1);
        } //Remove Drag Listeners
  
  
        index = this._resizeStartListeners.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._resizeStartListeners[index].unsubscribe();
  
          this._resizeStartListeners.splice(index, 1);
        }
  
        index = this._resizeListeners.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._resizeListeners[index].unsubscribe();
  
          this._resizeListeners.splice(index, 1);
        }
  
        index = this._resizeEndListeners.findIndex(function (item) {
          return item.id === d.id;
        });
  
        if (index >= 0) {
          this._resizeEndListeners[index].unsubscribe();
  
          this._resizeEndListeners.splice(index, 1);
        } //Remove from initial Item Id check if it existed. This way the item can be added again and compacted
  
  
        var doesIndexMatch = function doesIndexMatch(id) {
          return id === d.id;
        };
  
        var initialItemIdIndex = this._initialItemIds.findIndex(doesIndexMatch);
  
        if (initialItemIdIndex > -1) {
          this._initialItemIds.splice(initialItemIdIndex, 1);
        } //Compact layout after removal
  
  
        var items = this.compactLayout(this.items);
        this.syncItems(items);
      }
    }, {
      key: "getDashItemById",
      value: function getDashItemById(id) {
        var index = this._dashItems.findIndex(function (item) {
          return item.id === id;
        });
  
        if (index >= 0) {
          return this._dashItems[index];
        }
  
        return null;
      }
    }, {
      key: "updateDashItems",
      value: function updateDashItems() {
        var _this2 = this;
  
        this._dashItems.forEach(function (item) {
          item.colWidth = _this2.colWidth;
          item.rowHeight = _this2.rowHeight;
          item.margin = _this2.margin;
        });
      } //Item Methods
  
    }, {
      key: "items",
      get: function get() {
        var items = [];
  
        this._dashItems.forEach(function (dashItem) {
          items.push(dashItem.toItem());
        });
  
        return items;
      }
    }, {
      key: "itemDragging",
      value: function itemDragging(item) {
        if (!this.itemBeingDragged) {
          this.placeholder.x = item.x;
          this.placeholder.y = item.y;
          this.placeholder.width = item.width;
          this.placeholder.height = item.height;
          this.itemBeingDragged = true;
        }
  
        this.itemCopyAndReplaceWithPlaceholder(item);
      }
    }, {
      key: "itemCopyAndReplaceWithPlaceholder",
      value: function itemCopyAndReplaceWithPlaceholder(item) {
        var _this3 = this;
  
        //Take a copy of items
        var itemsCopy = JSON.parse(JSON.stringify(this.items)); //Remove the item being dragged as the placeholder takes its place. Otherwise the item will snap while being dragged.
  
        var items = itemsCopy.filter(function (i) {
          return i.id !== item.id;
        });
        var placeholderIndex = items.findIndex(function (i) {
          return i.id === _this3.placeholder.id;
        }); //items = this.correctBounds(items);
  
        items = this.moveItem(items, items[placeholderIndex], DashItem_model_DashItem.getXFromLeft(item.left, this.colWidth, this.margin), DashItem_model_DashItem.getYFromTop(item.top, this.rowHeight, this.margin), true);
        items = this.compactLayout(items);
        this.syncItems(items);
      }
    }, {
      key: "itemDraggingComplete",
      value: function itemDraggingComplete(item) {
        this.itemBeingDragged = false;
        var dashItem = this.getDashItemById(item.id);
  
        if (dashItem) {
          dashItem.x = this.placeholder.x;
          dashItem.y = this.placeholder.y;
        }
  
        this.placeholder.x = 0;
        this.placeholder.y = 0;
        this.placeholder.width = 0;
        this.placeholder.height = 0;
      }
    }, {
      key: "itemResizing",
      value: function itemResizing(item) {
        this.itemBeingResized = true;
        this.placeholder.minWidth = item.minWidth;
        this.placeholder.maxWidth = item.maxWidth;
        this.placeholder.minHeight = item.minHeight;
        this.placeholder.maxHeight = item.maxHeight;
        this.placeholder.x = DashItem_model_DashItem.getXFromLeft(item.left, this.colWidth, this.margin);
        this.placeholder.y = DashItem_model_DashItem.getYFromTop(item.top, this.rowHeight, this.margin);
        this.placeholder.width = DashItem_model_DashItem.getWidthFromPx(item.widthPx, this.colWidth, this.margin);
        this.placeholder.height = DashItem_model_DashItem.getHeightFromPx(item.heightPx, this.rowHeight, this.margin);
        this.itemCopyAndReplaceWithPlaceholder(item);
      }
    }, {
      key: "itemResizingComplete",
      value: function itemResizingComplete(item) {
        this.itemBeingResized = false;
        var dashItem = this.getDashItemById(item.id);
  
        if (dashItem) {
          dashItem.x = this.placeholder.x;
          dashItem.y = this.placeholder.y;
          dashItem.width = this.placeholder.width;
          dashItem.height = this.placeholder.height;
        }
  
        this.placeholder.x = 0;
        this.placeholder.y = 0;
        this.placeholder.width = 0;
        this.placeholder.height = 0;
      } //Collision Utils
  
    }, {
      key: "checkForCollision",
      value: function checkForCollision(d1, d2) {
        if (d1.id === d2.id) {
          return false;
        } else if (d1.x + d1.width <= d2.x) {
          return false;
        } else if (d1.x >= d2.x + d2.width) {
          return false;
        } else if (d1.y + d1.height <= d2.y) {
          return false;
        } else if (d1.y >= d2.y + d2.height) {
          return false;
        }
  
        return true;
      }
    }, {
      key: "getFirstCollision",
      value: function getFirstCollision(items, d) {
        var _iterator2 = _createForOfIteratorHelper(items),
            _step2;
  
        try {
          for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
            var i = _step2.value;
  
            if (this.checkForCollision(d, i)) {
              return i;
            }
          }
        } catch (err) {
          _iterator2.e(err);
        } finally {
          _iterator2.f();
        }
  
        return null;
      }
    }, {
      key: "getAllCollisions",
      value: function getAllCollisions(items, d) {
        var _this4 = this;
  
        return items.filter(function (item) {
          return _this4.checkForCollision(item, d);
        });
      } //Layout and Item Moving Methods
  
    }, {
      key: "correctItemBounds",
      value: function correctItemBounds(item) {
        if (item.x + item.width > this.numberOfCols) {
          item.x = this.numberOfCols - item.width;
        }
  
        if (item.x < 0) {
          item.x = 0;
        }
  
        if (item.y < 0) {
          item.y = 0;
        }
  
        if (item.width > this.numberOfCols) {
          item.x = 0;
          item.width = this.numberOfCols;
        }
  
        return item;
      }
    }, {
      key: "correctBounds",
      value: function correctBounds(items) {
        for (var i = 0; i < items.length; i++) {
          items[i] = this.correctItemBounds(items[i]);
        }
  
        return items;
      }
    }, {
      key: "getLockedItems",
      value: function getLockedItems(items) {
        return items.filter(function (item) {
          return item.locked;
        });
      }
    }, {
      key: "compactLayout",
      value: function compactLayout(items) {
        var _this5 = this;
  
        var sorted = this.sortItems(items);
        var compareWith = this.getLockedItems(items);
        var out = Array(items.length);
  
        var _loop = function _loop(i) {
          var l = sorted[i];
  
          if (!l.locked) {
            l = _this5.compactItem(compareWith, l); // Add to comparison array. We only collide with items before this one.
  
            compareWith.push(l);
          } // Add to output array to make sure they still come out in the right order.
  
  
          var index = items.findIndex(function (item) {
            return item.id === l.id;
          });
          out[index] = l; // Clear moved flag, if it exists.
  
          l.moved = false;
        };
  
        for (var i = 0; i < sorted.length; i++) {
          _loop(i);
        }
  
        return out;
      }
    }, {
      key: "compactItem",
      value: function compactItem(items, d) {
        if (this.compact) {
          while (d.y > 0 && !this.getFirstCollision(items, d)) {
            d.y--;
          }
        }
  
        var collides;
  
        while (collides = this.getFirstCollision(items, d)) {
          d.y = collides.y + collides.height;
        }
  
        return d;
      }
    }, {
      key: "sortItems",
      value: function sortItems(items, reverse) {
        var i = JSON.parse(JSON.stringify(items));
        i.sort(function (a, b) {
          if (a.y > b.y || a.y === b.y && a.x > b.x) {
            return 1;
          }
  
          return -1;
        });
  
        if (reverse) {
          i.reverse();
        }
  
        return i;
      }
    }, {
      key: "moveItem",
      value: function moveItem(items, d, x, y, isUserAction) {
        var _this6 = this;
  
        if (d.locked) {
          return items;
        }
  
        var movingUp = d.y > y;
        d.x = x;
        d.y = y;
        d.moved = true;
        d = this.correctItemBounds(d);
        var sorted = this.sortItems(items, movingUp);
        var collisions = this.getAllCollisions(sorted, d);
  
        var _iterator3 = _createForOfIteratorHelper(collisions),
            _step3;
  
        try {
          var _loop2 = function _loop2() {
            var collision = _step3.value;
  
            if (collision.moved) {
              return "continue";
            } // This makes it feel a bit more precise by waiting to swap for just a bit when moving up.
  
  
            if (d.y > collision.y && d.y - collision.y > collision.height / 4) {
              return "continue";
            }
  
            var collisionIndex = items.findIndex(function (item) {
              return item.id === collision.id;
            });
  
            if (collision.locked) {
              items = _this6.moveItemFromCollision(items, items[collisionIndex], d, isUserAction);
            } else {
              items = _this6.moveItemFromCollision(items, d, items[collisionIndex], isUserAction);
            }
          };
  
          for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
            var _ret = _loop2();
  
            if (_ret === "continue") continue;
          }
        } catch (err) {
          _iterator3.e(err);
        } finally {
          _iterator3.f();
        }
  
        return items;
      }
    }, {
      key: "moveItemFromCollision",
      value: function moveItemFromCollision(items, collidesWith, itemToMove, isUserAction) {
        if (isUserAction) {
          var fakeItem = {
            id: "-1fakeItem",
            x: itemToMove.x,
            y: itemToMove.y,
            width: itemToMove.width,
            maxWidth: itemToMove.maxWidth,
            minWidth: itemToMove.minWidth,
            height: itemToMove.height,
            maxHeight: itemToMove.maxHeight,
            minHeight: itemToMove.minHeight
          };
          fakeItem.y = Math.max(collidesWith.y - itemToMove.height, 0);
  
          if (!this.getFirstCollision(items, fakeItem)) {
            return this.moveItem(items, itemToMove, itemToMove.x, fakeItem.y);
          }
        }
  
        return this.moveItem(items, itemToMove, itemToMove.x, itemToMove.y + 1);
      }
    }, {
      key: "syncItems",
      value: function syncItems(items) {
        var _this7 = this;
  
        items.forEach(function (i) {
          var dashItem = _this7.getDashItemById(i.id);
  
          dashItem.fromItem(i);
        });
      }
    }], [{
      key: "defaults",
      get: function get() {
        return {
          numberOfCols: 12,
          breakpointWidth: undefined,
          margin: {
            x: 10,
            y: 10
          },
          autoHeight: true,
          keepSquare: true,
          useCssTransforms: false,
          width: 400,
          height: 400,
          rowHeight: false,
          maxRowHeight: false,
          minRowHeight: false,
          colWidth: false,
          maxColWidth: false,
          minColWidth: false,
          compact: true
        };
      }
    }]);
  
    return Layout;
  }();
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--14-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/ts-loader??ref--14-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/DashItem.vue?vue&type=script&lang=ts
  
  
  
  
  
  
  
  
  
  /* harmony default export */ var DashItemvue_type_script_lang_ts = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({
    name: "DashItem",
    inheritAttrs: false,
    props: {
      id: {
        type: [Number, String],
        required: true
      },
      x: {
        type: Number,
        default: DashItem_model_DashItem.defaults.x
      },
      y: {
        type: Number,
        default: DashItem_model_DashItem.defaults.y
      },
      width: {
        type: Number,
        default: DashItem_model_DashItem.defaults.width
      },
      maxWidth: {
        type: [Number, Boolean],
        default: DashItem_model_DashItem.defaults.maxWidth
      },
      minWidth: {
        type: [Number, Boolean],
        default: DashItem_model_DashItem.defaults.minWidth
      },
      height: {
        type: Number,
        default: DashItem_model_DashItem.defaults.height
      },
      maxHeight: {
        type: [Number, Boolean],
        default: DashItem_model_DashItem.defaults.maxHeight
      },
      minHeight: {
        type: [Number, Boolean],
        default: DashItem_model_DashItem.defaults.minHeight
      },
      draggable: {
        type: Boolean,
        default: DashItem_model_DashItem.defaults.draggable
      },
      resizable: {
        type: Boolean,
        default: DashItem_model_DashItem.defaults.resizable
      },
      resizeEdges: {
        type: String,
        default: "bottom right"
      },
      resizeHandleSize: {
        type: Number,
        default: 8
      },
      draggableZIndex: {
        type: Number,
        default: 1
      },
      resizableZIndex: {
        type: Number,
        default: 1
      },
      moveHold: {
        type: Number,
        default: 0
      },
      resizeHold: {
        type: Number,
        default: 0
      },
      dragAllowFrom: {
        type: String,
        default: null
      },
      dragIgnoreFrom: {
        type: String,
        default: null
      },
      locked: {
        type: Boolean,
        default: DashItem_model_DashItem.defaults.locked
      }
    },
    setup: function setup(props, _ref) {
      var emit = _ref.emit;
      var itemElement = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(); //This is the template ref we use for the element
  
      var item = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])(new DashItem_model_DashItem(props));
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["provide"])("$item", item);
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(props, function (newPropValue) {
        item.x = newPropValue.x;
        item.y = newPropValue.y;
        item.width = newPropValue.width;
        item.minWidth = newPropValue.minWidth;
        item.maxWidth = newPropValue.maxWidth;
        item.height = newPropValue.height;
        item.minHeight = newPropValue.minHeight;
        item.maxHeight = newPropValue.maxHeight;
        item.draggable = newPropValue.draggable;
        item.resizeEdges = newPropValue.resizeEdges;
        item.resizeHandleSize = newPropValue.resizeHandleSize;
        item.moveHold = newPropValue.moveHold;
        item.resizeHold = newPropValue.resizeHold;
        item.locked = newPropValue.locked;
      });
      var layout = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["inject"])("$layout");
      var interactInstance;
  
      var addWatchersToLayout = function addWatchersToLayout() {
        //Check if layout exists and if not then start a watcher
        if (layout) {
          layout.addDashItem(item);
          createDashItemWatchers();
        } else {
          var unWatch = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(layout, function (newValue) {
            if (newValue) {
              newValue.addDashItem(item);
              createDashItemWatchers();
              unWatch();
            }
          });
        }
      };
  
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onMounted"])(function () {
        interactInstance = interact_min_default()(itemElement.value);
        setDraggable();
        setResizable();
        addWatchersToLayout();
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onBeforeUnmount"])(function () {
        if (interactInstance) {
          interactInstance.unset();
        }
  
        if (layout) {
          layout.removeDashItem(item);
        }
      });
  
      var createDashItemWatchers = function createDashItemWatchers() {
        Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])([function () {
          return item.x;
        }, function () {
          return item.y;
        }, function () {
          return item.width;
        }, function () {
          return item.height;
        }], function (_ref2) {
          var _ref3 = _slicedToArray(_ref2, 4),
              newItemXValue = _ref3[0],
              newItemYValue = _ref3[1],
              newItemWidthValue = _ref3[2],
              newItemHeightValue = _ref3[3];
  
          if (newItemXValue !== props.x) {
            emit("update:x", newItemXValue);
          }
  
          if (newItemYValue !== props.y) {
            emit("update:y", newItemYValue);
          }
  
          if (newItemWidthValue !== props.width) {
            emit("update:width", newItemWidthValue);
          }
  
          if (newItemHeightValue !== props.height) {
            emit("update:height", newItemHeightValue);
          }
        });
      };
  
      var dragging = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(false);
  
      var setDraggable = function setDraggable() {
        if (!interactInstance) {
          return;
        }
  
        if (props.draggable && !props.locked) {
          interactInstance.draggable({
            enabled: true,
            hold: props.moveHold,
            allowFrom: props.dragAllowFrom,
            ignoreFrom: props.dragIgnoreFrom,
            listeners: {
              start: function start() {
                dragging.value = true;
  
                item._onMoveStart();
  
                emit("moveStart", _objectSpread2({}, item.toItem()));
              },
              move: function move(event) {
                if (dragging) {
                  item._onMove(event.dx, event.dy);
  
                  emit("moving", _objectSpread2({}, item.toItem()));
                }
              },
              end: function end() {
                item._onMoveEnd();
  
                dragging.value = false;
                emit("moveEnd", _objectSpread2({}, item.toItem()));
              }
            }
          });
        } else {
          interactInstance.draggable(false);
        }
      };
  
      var resizing = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(false);
  
      var setResizable = function setResizable() {
        if (!interactInstance) {
          return;
        }
  
        if (props.resizable && !props.locked) {
          interactInstance.resizable({
            enabled: true,
            hold: props.resizeHold,
            edges: {
              top: ".resize-top",
              left: ".resize-left",
              bottom: ".resize-bottom",
              right: ".resize-right"
            },
            listeners: {
              start: function start() {
                resizing.value = true;
  
                item._onResizeStart();
  
                emit("resizeStart", _objectSpread2({}, item.toItem()));
              },
              move: function move(event) {
                if (resizing) {
                  item._onResize(event);
  
                  emit("resizing", _objectSpread2({}, item.toItem()));
                }
              },
              end: function end() {
                item._onResizeEnd();
  
                resizing.value = false;
                emit("resizeEnd", _objectSpread2({}, item.toItem()));
              }
            }
          });
        } else {
          interactInstance.resizable(false);
        }
      };
  
      var hover = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(false);
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(hover, function (newValue) {
        item.hover = newValue;
  
        if (newValue) {
          emit("hoverStart", item);
        } else {
          emit("hoverEnd", item);
        }
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])([function () {
        return props.draggable;
      }, function () {
        return props.moveHold;
      }, function () {
        return props.dragIgnoreFrom;
      }, function () {
        return props.dragAllowFrom;
      }], function () {
        return setDraggable();
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])([function () {
        return props.resizable;
      }, function () {
        return props.resizeHold;
      }], function () {
        return setResizable();
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(function () {
        return props.locked;
      }, function () {
        setDraggable();
        setResizable();
      });
      var resizingOrDragging = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return (resizing.value || dragging.value) && !props.locked;
      });
      var useCssTransforms = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        if (layout) {
          return layout.useCssTransforms;
        }
  
        return Layout_model_Layout.defaults.useCssTransforms;
      });
      var classObj = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return {
          dragging: resizingOrDragging.value,
          cssTransforms: useCssTransforms.value
        };
      });
      var left = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return item ? item.left : 0;
      });
      var top = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return item ? item.top : 0;
      });
      var widthPx = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return item ? item.widthPx : 0;
      });
      var heightPx = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return item ? item.heightPx : 0;
      });
      var cssStyle = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        if (useCssTransforms.value) {
          return DashItem_model_DashItem.cssTransform(top.value, left.value, widthPx.value, heightPx.value);
        }
  
        return DashItem_model_DashItem.cssTopLeft(top.value, left.value, widthPx.value, heightPx.value);
      });
      var resizeTop = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && props.resizable && props.resizeEdges.includes("top");
      });
      var resizeBottom = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && props.resizable && props.resizeEdges.includes("bottom");
      });
      var resizeLeft = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && props.resizable && props.resizeEdges.includes("left");
      });
      var resizeRight = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && props.resizable && props.resizeEdges.includes("right");
      });
      var resizeTopLeft = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && resizeTop.value && resizeLeft.value;
      });
      var resizeBottomLeft = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && resizeBottom.value && resizeLeft.value;
      });
      var resizeTopRight = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && resizeTop.value && resizeRight.value;
      });
      var resizeBottomRight = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return !props.locked && resizeBottom.value && resizeRight.value;
      });
      return {
        itemElement: itemElement,
        hover: hover,
        classObj: classObj,
        left: left,
        top: top,
        widthPx: widthPx,
        heightPx: heightPx,
        cssStyle: cssStyle,
        resizeTop: resizeTop,
        resizeBottom: resizeBottom,
        resizeLeft: resizeLeft,
        resizeRight: resizeRight,
        resizeTopLeft: resizeTopLeft,
        resizeBottomLeft: resizeBottomLeft,
        resizeTopRight: resizeTopRight,
        resizeBottomRight: resizeBottomRight
      };
    }
  }));
  // CONCATENATED MODULE: ./src/components/DashItem.vue?vue&type=script&lang=ts
   
  // EXTERNAL MODULE: ./src/components/DashItem.vue?vue&type=style&index=0&id=70e2b960&scoped=true&lang=css
  var DashItemvue_type_style_index_0_id_70e2b960_scoped_true_lang_css = __webpack_require__("b2ff");
  
  // CONCATENATED MODULE: ./src/components/DashItem.vue
  
  
  
  
  
  DashItemvue_type_script_lang_ts.render = render
  DashItemvue_type_script_lang_ts.__scopeId = "data-v-70e2b960"
  
  /* harmony default export */ var components_DashItem = (DashItemvue_type_script_lang_ts);
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/vue-loader-v16/dist/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/DashLayout.vue?vue&type=template&id=09f23364&scoped=true
  
  
  var DashLayoutvue_type_template_id_09f23364_scoped_true_withId = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withScopeId"])("data-v-09f23364");
  
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["pushScopeId"])("data-v-09f23364");
  
  var _hoisted_1 = {
    key: 0
  };
  
  var _hoisted_2 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("div", {
    class: "placeholder"
  }, null, -1);
  
  var _hoisted_3 = {
    key: 0
  };
  
  var _hoisted_4 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("br", null, null, -1);
  
  var _hoisted_5 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("br", null, null, -1);
  
  var _hoisted_6 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("br", null, null, -1);
  
  var _hoisted_7 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("br", null, null, -1);
  
  var _hoisted_8 = /*#__PURE__*/Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("br", null, null, -1);
  
  Object(external_commonjs_vue_commonjs2_vue_root_Vue_["popScopeId"])();
  
  var DashLayoutvue_type_template_id_09f23364_scoped_true_render = /*#__PURE__*/DashLayoutvue_type_template_id_09f23364_scoped_true_withId(function (_ctx, _cache, $props, $setup, $data, $options) {
    var _component_DashItem = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["resolveComponent"])("DashItem");
  
    return _ctx.currentBreakpoint === _ctx.breakpoint ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", _hoisted_1, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])("div", {
      style: {
        position: 'relative',
        height: _ctx.height,
        width: _ctx.width
      }
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "default", {}, undefined, true), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["withDirectives"])(Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createVNode"])(_component_DashItem, {
      id: _ctx.placeholderId,
      draggable: false,
      resizable: false,
      y: _ctx.placeholderY,
      height: _ctx.placeholderHeight,
      maxWidth: _ctx.placeholderMaxWidth
    }, {
      default: DashLayoutvue_type_template_id_09f23364_scoped_true_withId(function () {
        return [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "placeholder", {}, function () {
          return [_hoisted_2];
        }, {}, true)];
      }),
      _: 3
    }, 8, ["id", "y", "height", "maxWidth"]), [[external_commonjs_vue_commonjs2_vue_root_Vue_["vShow"], _ctx.dragging || _ctx.resizing]])], 4), _ctx.debug ? (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", _hoisted_3, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" Layout Breakpoint: " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.breakpoint) + " ", 1), _hoisted_4, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" Layout Number of Cols: " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.numberOfCols) + " ", 1), _hoisted_5, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" placeholder: " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(JSON.stringify(_ctx.placeholder)) + " ", 1), _hoisted_6, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" Items: " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(JSON.stringify(_ctx.itemsFromLayout)) + " ", 1), _hoisted_7, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" Height: " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.height) + " ", 1), _hoisted_8, Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createTextVNode"])(" Attrs: " + Object(external_commonjs_vue_commonjs2_vue_root_Vue_["toDisplayString"])(_ctx.attrs), 1)])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true)])) : Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createCommentVNode"])("", true);
  });
  // CONCATENATED MODULE: ./src/components/DashLayout.vue?vue&type=template&id=09f23364&scoped=true
  
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--14-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/ts-loader??ref--14-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/DashLayout.vue?vue&type=script&lang=ts
  
  
  
  
  /* harmony default export */ var DashLayoutvue_type_script_lang_ts = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({
    name: "DashLayout",
    inheritAttrs: false,
    props: {
      breakpoint: {
        type: String,
        required: true
      },
      breakpointWidth: {
        type: Number,
        default: Layout_model_Layout.defaults.breakpointWidth
      },
      numberOfCols: {
        type: Number,
        default: Layout_model_Layout.defaults.numberOfCols
      },
      useCssTransforms: {
        type: Boolean,
        default: Layout_model_Layout.defaults.useCssTransforms
      },
      compact: {
        type: Boolean,
        default: Layout_model_Layout.defaults.compact
      },
      debug: {
        type: Boolean,
        default: false
      },
      margin: {
        type: Object,
        default: Layout_model_Layout.defaults.margin
      },
      rowHeight: {
        type: [Boolean, Number],
        default: Layout_model_Layout.defaults.rowHeight
      },
      maxRowHeight: {
        type: [Boolean, Number],
        default: Layout_model_Layout.defaults.maxRowHeight
      },
      minRowHeight: {
        type: [Boolean, Number],
        default: Layout_model_Layout.defaults.minRowHeight
      },
      colWidth: {
        type: [Boolean, Number],
        default: Layout_model_Layout.defaults.colWidth
      },
      maxColWidth: {
        type: [Boolean, Number],
        default: Layout_model_Layout.defaults.maxColWidth
      },
      minColWidth: {
        type: [Boolean, Number],
        default: Layout_model_Layout.defaults.minColWidth
      }
    },
    components: {
      DashItem: components_DashItem
    },
    setup: function setup(props, _ref) {
      var attrs = _ref.attrs;
      var layout = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])(new Layout_model_Layout(props));
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["provide"])("$layout", layout);
      var dashboard = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["inject"])("$dashboard");
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onMounted"])(function () {
        //Check if dashboard exists and if not then start a watcher
        if (dashboard) {
          dashboard.addLayoutInstance(layout);
        } else {
          var unWatch = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(dashboard, function (newValue) {
            if (newValue) {
              newValue.addLayoutInstance(layout);
              unWatch();
            }
          });
        }
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onBeforeUnmount"])(function () {
        if (dashboard) {
          dashboard.removeLayoutInstance(layout);
        }
      });
      var currentBreakpoint = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return dashboard ? dashboard.currentBreakpoint : "";
      });
      var dragging = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return layout ? layout.itemBeingDragged : false;
      });
      var resizing = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return layout ? layout.itemBeingResized : false;
      });
      var placeholder = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        var _layout$placeholder;
  
        return layout !== null && layout !== void 0 && layout.placeholder ? layout === null || layout === void 0 ? void 0 : (_layout$placeholder = layout.placeholder) === null || _layout$placeholder === void 0 ? void 0 : _layout$placeholder.toItem() : "";
      });
      var itemsFromLayout = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return layout ? layout.items : [];
      });
      var height = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return layout ? layout.height + "px" : "0px";
      });
      var width = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["computed"])(function () {
        return layout ? layout.width + "px" : "0px";
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(props, function (newPropValue) {
        layout.breakpoint = newPropValue.breakpoint;
        layout.breakpointWidth = newPropValue.breakpointWidth;
        layout.numberOfCols = newPropValue.numberOfCols;
        layout.useCssTransforms = newPropValue.useCssTransforms;
        layout.compact = newPropValue.compact;
        layout.debug = newPropValue.debug;
        layout.margin = newPropValue.margin;
        layout.rowHeight = newPropValue.rowHeight;
        layout.maxRowHeight = newPropValue.maxRowHeight;
        layout.minRowHeight = newPropValue.minRowHeight;
        layout.colWidth = newPropValue.colWidth;
        layout.maxColWidth = newPropValue.maxColWidth;
        layout.minColWidth = newPropValue.minColWidth;
      });
      var placeholderId = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])("-1Placeholder");
      var placeholderY = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(0);
      var placeholderHeight = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(0);
      var placeholderMaxWidth = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])(false);
      return {
        currentBreakpoint: currentBreakpoint,
        dragging: dragging,
        resizing: resizing,
        height: height,
        width: width,
        placeholder: placeholder,
        itemsFromLayout: itemsFromLayout,
        attrs: attrs,
        placeholderId: placeholderId,
        placeholderY: placeholderY,
        placeholderHeight: placeholderHeight,
        placeholderMaxWidth: placeholderMaxWidth
      };
    }
  }));
  // CONCATENATED MODULE: ./src/components/DashLayout.vue?vue&type=script&lang=ts
   
  // EXTERNAL MODULE: ./src/components/DashLayout.vue?vue&type=style&index=0&id=09f23364&scoped=true&lang=css
  var DashLayoutvue_type_style_index_0_id_09f23364_scoped_true_lang_css = __webpack_require__("25ea");
  
  // CONCATENATED MODULE: ./src/components/DashLayout.vue
  
  
  
  
  
  DashLayoutvue_type_script_lang_ts.render = DashLayoutvue_type_template_id_09f23364_scoped_true_render
  DashLayoutvue_type_script_lang_ts.__scopeId = "data-v-09f23364"
  
  /* harmony default export */ var DashLayout = (DashLayoutvue_type_script_lang_ts);
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/vue-loader-v16/dist/templateLoader.js??ref--6!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/Dashboard.vue?vue&type=template&id=f22b13c6
  
  function Dashboardvue_type_template_id_f22b13c6_render(_ctx, _cache, $props, $setup, $data, $options) {
    return Object(external_commonjs_vue_commonjs2_vue_root_Vue_["openBlock"])(), Object(external_commonjs_vue_commonjs2_vue_root_Vue_["createBlock"])("div", {
      id: _ctx.id,
      ref: "resizeRef"
    }, [Object(external_commonjs_vue_commonjs2_vue_root_Vue_["renderSlot"])(_ctx.$slots, "default")], 8, ["id"]);
  }
  // CONCATENATED MODULE: ./src/components/Dashboard.vue?vue&type=template&id=f22b13c6
  
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
  
  
  
  
  
  
  
  function _typeof(obj) {
    "@babel/helpers - typeof";
  
    if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
      _typeof = function _typeof(obj) {
        return typeof obj;
      };
    } else {
      _typeof = function _typeof(obj) {
        return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
      };
    }
  
    return _typeof(obj);
  }
  // CONCATENATED MODULE: ./src/components/Dashboard.model.ts
  
  
  
  
  
  
  
  
  
  
  var Dashboard_model_Dashboard = /*#__PURE__*/function () {
    function Dashboard(_ref) {
      var id = _ref.id,
          autoHeight = _ref.autoHeight,
          width = _ref.width;
  
      _classCallCheck(this, Dashboard);
  
      _defineProperty(this, "_id", void 0);
  
      _defineProperty(this, "_layouts", void 0);
  
      _defineProperty(this, "_autoHeight", void 0);
  
      _defineProperty(this, "_width", void 0);
  
      this._id = id;
      this._layouts = [];
  
      if (typeof autoHeight !== "undefined") {
        this._autoHeight = autoHeight;
      } else {
        this._autoHeight = Dashboard.defaults.autoHeight;
      }
  
      if (typeof width !== "undefined") {
        this._width = width;
      } else {
        this._width = Dashboard.defaults.width;
      }
    }
  
    _createClass(Dashboard, [{
      key: "id",
      get: function get() {
        return this._id;
      }
    }, {
      key: "breakpoints",
      get: function get() {
        var bp = [];
  
        var _iterator = _createForOfIteratorHelper(this._layouts),
            _step;
  
        try {
          for (_iterator.s(); !(_step = _iterator.n()).done;) {
            var layout = _step.value;
            bp.push({
              name: layout.breakpoint,
              numberOfCols: layout.numberOfCols,
              setPoint: layout.breakpointWidth
            });
          }
        } catch (err) {
          _iterator.e(err);
        } finally {
          _iterator.f();
        }
  
        bp.sort(function (a, b) {
          if (typeof a.setPoint !== "undefined" && typeof b.setPoint !== "undefined") {
            return +a.setPoint - +b.setPoint;
          }
  
          if (typeof a.setPoint == "undefined") {
            return 1;
          }
  
          return -1;
        });
        return bp;
      }
    }, {
      key: "currentBreakpoint",
      get: function get() {
        return this.updateCurrentBreakpoint();
      }
    }, {
      key: "layouts",
      get: function get() {
        return this._layouts;
      },
      set: function set(l) {
        this._layouts = l;
      }
    }, {
      key: "autoHeight",
      get: function get() {
        return this._autoHeight;
      },
      set: function set(ah) {
        this._autoHeight = ah;
      }
    }, {
      key: "width",
      get: function get() {
        return this._width;
      },
      set: function set(w) {
        this._width = w;
        this.updateCurrentBreakpoint();
        this.updateLayouts();
      }
    }, {
      key: "updateCurrentBreakpoint",
      value: function updateCurrentBreakpoint() {
        //TODO check if we are right on the edge of a breakpoint (i.e. dont allow a change if a scroll bar is added)
        if (this.breakpoints.length == 0) {
          return "";
        } //let previousBreakpoint = this.currentBreakpoint;
  
  
        var matching = this.breakpoints[0].name;
  
        for (var i = 1; i < this.breakpoints.length; i++) {
          if (_typeof(this.breakpoints[i].setPoint) !== undefined) {
            if (this.width > this.breakpoints[i].setPoint) {
              matching = this.breakpoints[i].name;
            }
          }
        }
  
        return matching;
      }
    }, {
      key: "sortBreakpoints",
      value: function sortBreakpoints() {
        this.breakpoints.sort(function (a, b) {
          if (typeof a.setPoint !== "undefined" && typeof b.setPoint !== "undefined") {
            return +a.setPoint - +b.setPoint;
          }
  
          if (typeof a.setPoint == "undefined") {
            return 1;
          }
  
          return -1;
        });
      }
    }, {
      key: "addLayoutInstance",
      value: function addLayoutInstance(l) {
        this._layouts.push(l);
      }
    }, {
      key: "updateLayouts",
      value: function updateLayouts() {
        var _this = this;
  
        this._layouts.forEach(function (layout) {
          layout.width = _this.width;
        });
      }
    }, {
      key: "removeLayoutInstance",
      value: function removeLayoutInstance(l) {
        var index = this.layouts.findIndex(function (layout) {
          return l.breakpoint === layout.breakpoint;
        });
  
        if (index >= 0) {
          this._layouts.splice(index, 1);
        }
      }
    }], [{
      key: "defaults",
      get: function get() {
        return {
          autoHeight: true,
          width: 400
        };
      }
    }]);
  
    return Dashboard;
  }();
  // CONCATENATED MODULE: ./src/use/resizeObserver.ts
  
  
  var resizeObserver_useResizeObserver = function useResizeObserver() {
    // create a new ref,
    // which needs to be attached to an element in a template
    var resizeRef = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["ref"])();
    var resizeState = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])({
      dimensions: {
        bottom: undefined,
        height: undefined,
        left: undefined,
        right: undefined,
        top: undefined,
        width: undefined,
        x: undefined,
        y: undefined
      }
    });
    var observer = new ResizeObserver(function (entries) {
      // called initially and on resize
      entries.forEach(function (entry) {
        resizeState.dimensions = entry.contentRect;
      });
    });
    Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onMounted"])(function () {
      var _resizeRef$value;
  
      // set initial dimensions right before observing: Element.getBoundingClientRect()
      resizeState.dimensions = (_resizeRef$value = resizeRef.value) === null || _resizeRef$value === void 0 ? void 0 : _resizeRef$value.getBoundingClientRect();
      observer.observe(resizeRef.value);
    });
    Object(external_commonjs_vue_commonjs2_vue_root_Vue_["onBeforeUnmount"])(function () {
      observer.unobserve(resizeRef.value);
    }); // return to make them available to whoever consumes this hook
  
    return {
      resizeState: resizeState,
      resizeRef: resizeRef
    };
  };
  /* harmony default export */ var resizeObserver = (resizeObserver_useResizeObserver);
  // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--14-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/ts-loader??ref--14-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/Dashboard.vue?vue&type=script&lang=ts
  
  
  
  
  /* harmony default export */ var Dashboardvue_type_script_lang_ts = (Object(external_commonjs_vue_commonjs2_vue_root_Vue_["defineComponent"])({
    name: "Dashboard",
    inheritAttrs: false,
    props: {
      id: {
        type: [Number, String],
        required: true
      },
      autoHeight: {
        type: Boolean,
        default: Dashboard_model_Dashboard.defaults.autoHeight
      }
    },
    setup: function setup(props, _ref) {
      var emit = _ref.emit;
      var dashboard = Object(external_commonjs_vue_commonjs2_vue_root_Vue_["reactive"])(new Dashboard_model_Dashboard(props));
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["provide"])("$dashboard", dashboard);
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(function () {
        return props.autoHeight;
      }, function (newAutoHeightValue) {
        dashboard.autoHeight = newAutoHeightValue;
      });
  
      var _useResizeObserver = resizeObserver(),
          resizeRef = _useResizeObserver.resizeRef,
          resizeState = _useResizeObserver.resizeState;
  
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(resizeState, function (newDimensions) {
        var _newDimensions$dimens, _newDimensions$dimens2;
  
        dashboard.width = (_newDimensions$dimens = (_newDimensions$dimens2 = newDimensions.dimensions) === null || _newDimensions$dimens2 === void 0 ? void 0 : _newDimensions$dimens2.width) !== null && _newDimensions$dimens !== void 0 ? _newDimensions$dimens : 0;
      }, {
        immediate: true
      });
      Object(external_commonjs_vue_commonjs2_vue_root_Vue_["watch"])(function () {
        return dashboard.currentBreakpoint;
      }, function (newBreakpoint) {
        emit("currentBreakpointUpdated", newBreakpoint);
      }, {
        immediate: true
      });
      return {
        resizeRef: resizeRef
      };
    }
  }));
  // CONCATENATED MODULE: ./src/components/Dashboard.vue?vue&type=script&lang=ts
   
  // CONCATENATED MODULE: ./src/components/Dashboard.vue
  
  
  
  Dashboardvue_type_script_lang_ts.render = Dashboardvue_type_template_id_f22b13c6_render
  
  /* harmony default export */ var components_Dashboard = (Dashboardvue_type_script_lang_ts);
  // CONCATENATED MODULE: ./src/components/index.js
  
  
  
  
  
  var VueResponsiveDash = {
    DashItem: components_DashItem,
    DashLayout: DashLayout,
    Dashboard: components_Dashboard
  }; // Declare install function executed by createApp()
  
  function install(appInstance) {
    if (install.installed) return;
    install.installed = true;
    Object.keys(VueResponsiveDash).forEach(function (name) {
      appInstance.component(name, VueResponsiveDash[name]);
    });
  }
  /* harmony default export */ var components = (VueResponsiveDash);
  
  // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
  
  
  /* harmony default export */ var entry_lib = __webpack_exports__["default"] = (components);
  
  
  
  /***/ }),
  
  /***/ "fb6a":
  /***/ (function(module, exports, __webpack_require__) {
  
  "use strict";
  
  var $ = __webpack_require__("23e7");
  var isObject = __webpack_require__("861d");
  var isArray = __webpack_require__("e8b5");
  var toAbsoluteIndex = __webpack_require__("23cb");
  var toLength = __webpack_require__("50c4");
  var toIndexedObject = __webpack_require__("fc6a");
  var createProperty = __webpack_require__("8418");
  var wellKnownSymbol = __webpack_require__("b622");
  var arrayMethodHasSpeciesSupport = __webpack_require__("1dde");
  
  var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');
  
  var SPECIES = wellKnownSymbol('species');
  var nativeSlice = [].slice;
  var max = Math.max;
  
  // `Array.prototype.slice` method
  // https://tc39.es/ecma262/#sec-array.prototype.slice
  // fallback for not array-like ES3 strings and DOM objects
  $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
    slice: function slice(start, end) {
      var O = toIndexedObject(this);
      var length = toLength(O.length);
      var k = toAbsoluteIndex(start, length);
      var fin = toAbsoluteIndex(end === undefined ? length : end, length);
      // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible
      var Constructor, result, n;
      if (isArray(O)) {
        Constructor = O.constructor;
        // cross-realm fallback
        if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {
          Constructor = undefined;
        } else if (isObject(Constructor)) {
          Constructor = Constructor[SPECIES];
          if (Constructor === null) Constructor = undefined;
        }
        if (Constructor === Array || Constructor === undefined) {
          return nativeSlice.call(O, k, fin);
        }
      }
      result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));
      for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
      result.length = n;
      return result;
    }
  });
  
  
  /***/ }),
  
  /***/ "fc6a":
  /***/ (function(module, exports, __webpack_require__) {
  
  // toObject with fallback for non-array-like ES3 strings
  var IndexedObject = __webpack_require__("44ad");
  var requireObjectCoercible = __webpack_require__("1d80");
  
  module.exports = function (it) {
    return IndexedObject(requireObjectCoercible(it));
  };
  
  
  /***/ }),
  
  /***/ "fc76":
  /***/ (function(module, exports, __webpack_require__) {
  
  // Imports
  var ___CSS_LOADER_API_IMPORT___ = __webpack_require__("24fb");
  exports = ___CSS_LOADER_API_IMPORT___(false);
  // Module
  exports.push([module.i, ".item[data-v-70e2b960]{-webkit-box-sizing:border-box;box-sizing:border-box;position:absolute;display:inline-block;-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-transition-property:left,top,right;transition-property:left,top,right;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.item.dragging[data-v-70e2b960]{-webkit-transition:none;transition:none;z-index:3}.resize[data-v-70e2b960]{-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.item.cssTransforms[data-v-70e2b960]{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;left:0;right:auto}", ""]);
  // Exports
  module.exports = exports;
  
  
  /***/ }),
  
  /***/ "fdbc":
  /***/ (function(module, exports) {
  
  // iterable DOM collections
  // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods
  module.exports = {
    CSSRuleList: 0,
    CSSStyleDeclaration: 0,
    CSSValueList: 0,
    ClientRectList: 0,
    DOMRectList: 0,
    DOMStringList: 0,
    DOMTokenList: 1,
    DataTransferItemList: 0,
    FileList: 0,
    HTMLAllCollection: 0,
    HTMLCollection: 0,
    HTMLFormElement: 0,
    HTMLSelectElement: 0,
    MediaList: 0,
    MimeTypeArray: 0,
    NamedNodeMap: 0,
    NodeList: 1,
    PaintRequestList: 0,
    Plugin: 0,
    PluginArray: 0,
    SVGLengthList: 0,
    SVGNumberList: 0,
    SVGPathSegList: 0,
    SVGPointList: 0,
    SVGStringList: 0,
    SVGTransformList: 0,
    SourceBufferList: 0,
    StyleSheetList: 0,
    TextTrackCueList: 0,
    TextTrackList: 0,
    TouchList: 0
  };
  
  
  /***/ }),
  
  /***/ "fdbf":
  /***/ (function(module, exports, __webpack_require__) {
  
  /* eslint-disable es/no-symbol -- required for testing */
  var NATIVE_SYMBOL = __webpack_require__("4930");
  
  module.exports = NATIVE_SYMBOL
    && !Symbol.sham
    && typeof Symbol.iterator == 'symbol';
  
  
  /***/ })
  
  /******/ });
  });
  //# sourceMappingURL=vue-responsive-dash.umd.js.map