Events/NightOfScientists/20/GOLEM, termojaderná fúze - Noc vědců_files/base.js

/******/ (function(modules) { // webpackBootstrap
/******/ 	// install a JSONP callback for chunk loading
/******/ 	function webpackJsonpCallback(data) {
/******/ 		var chunkIds = data[0];
/******/ 		var moreModules = data[1];
/******/ 		var executeModules = data[2];
/******/
/******/ 		// add "moreModules" to the modules object,
/******/ 		// then flag all "chunkIds" as loaded and fire callback
/******/ 		var moduleId, chunkId, i = 0, resolves = [];
/******/ 		for(;i < chunkIds.length; i++) {
/******/ 			chunkId = chunkIds[i];
/******/ 			if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
/******/ 				resolves.push(installedChunks[chunkId][0]);
/******/ 			}
/******/ 			installedChunks[chunkId] = 0;
/******/ 		}
/******/ 		for(moduleId in moreModules) {
/******/ 			if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
/******/ 				modules[moduleId] = moreModules[moduleId];
/******/ 			}
/******/ 		}
/******/ 		if(parentJsonpFunction) parentJsonpFunction(data);
/******/
/******/ 		while(resolves.length) {
/******/ 			resolves.shift()();
/******/ 		}
/******/
/******/ 		// add entry modules from loaded chunk to deferred list
/******/ 		deferredModules.push.apply(deferredModules, executeModules || []);
/******/
/******/ 		// run deferred modules when all chunks ready
/******/ 		return checkDeferredModules();
/******/ 	};
/******/ 	function checkDeferredModules() {
/******/ 		var result;
/******/ 		for(var i = 0; i < deferredModules.length; i++) {
/******/ 			var deferredModule = deferredModules[i];
/******/ 			var fulfilled = true;
/******/ 			for(var j = 1; j < deferredModule.length; j++) {
/******/ 				var depId = deferredModule[j];
/******/ 				if(installedChunks[depId] !== 0) fulfilled = false;
/******/ 			}
/******/ 			if(fulfilled) {
/******/ 				deferredModules.splice(i--, 1);
/******/ 				result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
/******/ 			}
/******/ 		}
/******/
/******/ 		return result;
/******/ 	}
/******/
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// object to store loaded and loading chunks
/******/ 	// undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ 	// Promise = chunk loading, 0 = chunk loaded
/******/ 	var installedChunks = {
/******/ 		5: 0,
/******/ 		2: 0,
/******/ 		8: 0
/******/ 	};
/******/
/******/ 	var deferredModules = [];
/******/
/******/ 	// 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 = "";
/******/
/******/ 	var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || [];
/******/ 	var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
/******/ 	jsonpArray.push = webpackJsonpCallback;
/******/ 	jsonpArray = jsonpArray.slice();
/******/ 	for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
/******/ 	var parentJsonpFunction = oldJsonpFunction;
/******/
/******/
/******/ 	// add entry module to deferred list
/******/ 	deferredModules.push([80,0,1,6]);
/******/ 	// run deferred modules when ready
/******/ 	return checkDeferredModules();
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ (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))
  }
}


/***/ }),
/* 1 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var bind = __webpack_require__(11);
/*global toString:true*/
// utils is a library of generic helper functions non-specific to axios


var toString = Object.prototype.toString;
/**
 * Determine if a value is an Array
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an Array, otherwise false
 */

function isArray(val) {
  return toString.call(val) === '[object Array]';
}
/**
 * Determine if a value is undefined
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if the value is undefined, otherwise false
 */


function isUndefined(val) {
  return typeof val === 'undefined';
}
/**
 * Determine if a value is a Buffer
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Buffer, otherwise false
 */


function isBuffer(val) {
  return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);
}
/**
 * Determine if a value is an ArrayBuffer
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an ArrayBuffer, otherwise false
 */


function isArrayBuffer(val) {
  return toString.call(val) === '[object ArrayBuffer]';
}
/**
 * Determine if a value is a FormData
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an FormData, otherwise false
 */


function isFormData(val) {
  return typeof FormData !== 'undefined' && val instanceof FormData;
}
/**
 * Determine if a value is a view on an ArrayBuffer
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
 */


function isArrayBufferView(val) {
  var result;

  if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {
    result = ArrayBuffer.isView(val);
  } else {
    result = val && val.buffer && val.buffer instanceof ArrayBuffer;
  }

  return result;
}
/**
 * Determine if a value is a String
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a String, otherwise false
 */


function isString(val) {
  return typeof val === 'string';
}
/**
 * Determine if a value is a Number
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Number, otherwise false
 */


function isNumber(val) {
  return typeof val === 'number';
}
/**
 * Determine if a value is an Object
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an Object, otherwise false
 */


function isObject(val) {
  return val !== null && typeof val === 'object';
}
/**
 * Determine if a value is a plain Object
 *
 * @param {Object} val The value to test
 * @return {boolean} True if value is a plain Object, otherwise false
 */


function isPlainObject(val) {
  if (toString.call(val) !== '[object Object]') {
    return false;
  }

  var prototype = Object.getPrototypeOf(val);
  return prototype === null || prototype === Object.prototype;
}
/**
 * Determine if a value is a Date
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Date, otherwise false
 */


function isDate(val) {
  return toString.call(val) === '[object Date]';
}
/**
 * Determine if a value is a File
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a File, otherwise false
 */


function isFile(val) {
  return toString.call(val) === '[object File]';
}
/**
 * Determine if a value is a Blob
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Blob, otherwise false
 */


function isBlob(val) {
  return toString.call(val) === '[object Blob]';
}
/**
 * Determine if a value is a Function
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Function, otherwise false
 */


function isFunction(val) {
  return toString.call(val) === '[object Function]';
}
/**
 * Determine if a value is a Stream
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Stream, otherwise false
 */


function isStream(val) {
  return isObject(val) && isFunction(val.pipe);
}
/**
 * Determine if a value is a URLSearchParams object
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a URLSearchParams object, otherwise false
 */


function isURLSearchParams(val) {
  return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;
}
/**
 * Trim excess whitespace off the beginning and end of a string
 *
 * @param {String} str The String to trim
 * @returns {String} The String freed of excess whitespace
 */


function trim(str) {
  return str.replace(/^\s*/, '').replace(/\s*$/, '');
}
/**
 * Determine if we're running in a standard browser environment
 *
 * This allows axios to run in a web worker, and react-native.
 * Both environments support XMLHttpRequest, but not fully standard globals.
 *
 * web workers:
 *  typeof window -> undefined
 *  typeof document -> undefined
 *
 * react-native:
 *  navigator.product -> 'ReactNative'
 * nativescript
 *  navigator.product -> 'NativeScript' or 'NS'
 */


function isStandardBrowserEnv() {
  if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) {
    return false;
  }

  return typeof window !== 'undefined' && typeof document !== 'undefined';
}
/**
 * Iterate over an Array or an Object invoking a function for each item.
 *
 * If `obj` is an Array callback will be called passing
 * the value, index, and complete array for each item.
 *
 * If 'obj' is an Object callback will be called passing
 * the value, key, and complete object for each property.
 *
 * @param {Object|Array} obj The object to iterate
 * @param {Function} fn The callback to invoke for each item
 */


function forEach(obj, fn) {
  // Don't bother if no value provided
  if (obj === null || typeof obj === 'undefined') {
    return;
  } // Force an array if not already something iterable


  if (typeof obj !== 'object') {
    /*eslint no-param-reassign:0*/
    obj = [obj];
  }

  if (isArray(obj)) {
    // Iterate over array values
    for (var i = 0, l = obj.length; i < l; i++) {
      fn.call(null, obj[i], i, obj);
    }
  } else {
    // Iterate over object keys
    for (var key in obj) {
      if (Object.prototype.hasOwnProperty.call(obj, key)) {
        fn.call(null, obj[key], key, obj);
      }
    }
  }
}
/**
 * Accepts varargs expecting each argument to be an object, then
 * immutably merges the properties of each object and returns result.
 *
 * When multiple objects contain the same key the later object in
 * the arguments list will take precedence.
 *
 * Example:
 *
 * ```js
 * var result = merge({foo: 123}, {foo: 456});
 * console.log(result.foo); // outputs 456
 * ```
 *
 * @param {Object} obj1 Object to merge
 * @returns {Object} Result of all merge properties
 */


function merge()
/* obj1, obj2, obj3, ... */
{
  var result = {};

  function assignValue(val, key) {
    if (isPlainObject(result[key]) && isPlainObject(val)) {
      result[key] = merge(result[key], val);
    } else if (isPlainObject(val)) {
      result[key] = merge({}, val);
    } else if (isArray(val)) {
      result[key] = val.slice();
    } else {
      result[key] = val;
    }
  }

  for (var i = 0, l = arguments.length; i < l; i++) {
    forEach(arguments[i], assignValue);
  }

  return result;
}
/**
 * Extends object a by mutably adding to it the properties of object b.
 *
 * @param {Object} a The object to be extended
 * @param {Object} b The object to copy properties from
 * @param {Object} thisArg The object to bind function to
 * @return {Object} The resulting value of object a
 */


function extend(a, b, thisArg) {
  forEach(b, function assignValue(val, key) {
    if (thisArg && typeof val === 'function') {
      a[key] = bind(val, thisArg);
    } else {
      a[key] = val;
    }
  });
  return a;
}
/**
 * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
 *
 * @param {string} content with BOM
 * @return {string} content value without BOM
 */


function stripBOM(content) {
  if (content.charCodeAt(0) === 0xFEFF) {
    content = content.slice(1);
  }

  return content;
}

module.exports = {
  isArray: isArray,
  isArrayBuffer: isArrayBuffer,
  isBuffer: isBuffer,
  isFormData: isFormData,
  isArrayBufferView: isArrayBufferView,
  isString: isString,
  isNumber: isNumber,
  isObject: isObject,
  isPlainObject: isPlainObject,
  isUndefined: isUndefined,
  isDate: isDate,
  isFile: isFile,
  isBlob: isBlob,
  isFunction: isFunction,
  isStream: isStream,
  isURLSearchParams: isURLSearchParams,
  isStandardBrowserEnv: isStandardBrowserEnv,
  forEach: forEach,
  merge: merge,
  extend: extend,
  trim: trim,
  stripBOM: stripBOM
};

/***/ }),
/* 2 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */

// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.

function normalizeComponent (
  scriptExports,
  render,
  staticRenderFns,
  functionalTemplate,
  injectStyles,
  scopeId,
  moduleIdentifier, /* server only */
  shadowMode /* vue-cli only */
) {
  // Vue.extend constructor export interop
  var options = typeof scriptExports === 'function'
    ? scriptExports.options
    : scriptExports

  // render functions
  if (render) {
    options.render = render
    options.staticRenderFns = staticRenderFns
    options._compiled = true
  }

  // functional template
  if (functionalTemplate) {
    options.functional = true
  }

  // scopedId
  if (scopeId) {
    options._scopeId = 'data-v-' + scopeId
  }

  var hook
  if (moduleIdentifier) { // server build
    hook = function (context) {
      // 2.3 injection
      context =
        context || // cached call
        (this.$vnode && this.$vnode.ssrContext) || // stateful
        (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
      // 2.2 with runInNewContext: true
      if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
        context = __VUE_SSR_CONTEXT__
      }
      // inject component styles
      if (injectStyles) {
        injectStyles.call(this, context)
      }
      // register component module identifier for async chunk inferrence
      if (context && context._registeredComponents) {
        context._registeredComponents.add(moduleIdentifier)
      }
    }
    // used by ssr in case component is cached and beforeCreate
    // never gets called
    options._ssrRegister = hook
  } else if (injectStyles) {
    hook = shadowMode
      ? function () {
        injectStyles.call(
          this,
          (options.functional ? this.parent : this).$root.$options.shadowRoot
        )
      }
      : injectStyles
  }

  if (hook) {
    if (options.functional) {
      // for template-only hot-reload because in that case the render fn doesn't
      // go through the normalizer
      options._injectStyles = hook
      // register for functional component in vue file
      var originalRender = options.render
      options.render = function renderWithStyleInjection (h, context) {
        hook.call(context)
        return originalRender(h, context)
      }
    } else {
      // inject component registration as beforeCreate hook
      var existing = options.beforeCreate
      options.beforeCreate = existing
        ? [].concat(existing, hook)
        : [hook]
    }
  }

  return {
    exports: scriptExports,
    options: options
  }
}


/***/ }),
/* 3 */,
/* 4 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.deleteAccount = exports.changePassword = exports.CHANGE_PASSWORD_RESPONSE_CANNOT_CHANGE = exports.CHANGE_PASSWORD_RESPONSE_PASSWORD_MISMATCH = exports.CHANGE_PASSWORD_RESPONSE_PASSWORD_CHANGED = void 0;
__webpack_require__(8);
__webpack_require__(58);
const axios_1 = __importDefault(__webpack_require__(7));
const ChangePasswordWebApiResponses_1 = __webpack_require__(60);
const vue_1 = __importDefault(__webpack_require__(3));
const packageJson = __webpack_require__(21);
exports.CHANGE_PASSWORD_RESPONSE_PASSWORD_CHANGED = 1;
exports.CHANGE_PASSWORD_RESPONSE_PASSWORD_MISMATCH = -3;
exports.CHANGE_PASSWORD_RESPONSE_CANNOT_CHANGE = -2;
//delete button
vue_1.default.component("delete-button", __webpack_require__(65).default);
//delete button
vue_1.default.component("change-password-button", __webpack_require__(66).default);
function changePassword(oldPassword, newPassword) {
    var _a, _b;
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const response = yield axios_1.default({
                method: "POST",
                url: "/api/change-password",
                data: { old: oldPassword, new: newPassword },
                headers: { Authorization: "WebApiKey 6f136834-1d13-43c2-93c0-408683dec170" }
            });
            if (response.data.code === ChangePasswordWebApiResponses_1.ChangePasswordWebApiResponses.SUCCESS.PASSWORD_CHANGED.code) {
                return exports.CHANGE_PASSWORD_RESPONSE_PASSWORD_CHANGED;
            }
        }
        catch (error) {
            if (error.response.status === 401 &&
                ((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code) === ChangePasswordWebApiResponses_1.ChangePasswordWebApiResponses.ERROR.INVALID_CURRENT_PASSWORD.code) {
                return exports.CHANGE_PASSWORD_RESPONSE_PASSWORD_MISMATCH;
            }
            else {
                return exports.CHANGE_PASSWORD_RESPONSE_CANNOT_CHANGE;
            }
        }
    });
}
exports.changePassword = changePassword;
function deleteAccount(username) {
    return __awaiter(this, void 0, void 0, function* () {
        yield axios_1.default({
            method: "DELETE",
            url: "/api/delete-user",
            data: { username },
            headers: {
                Authorization: "WebApiKey 6f136834-1d13-43c2-93c0-408683dec170",
                "Client-Type": "web",
                "Client-Version": packageJson.version
            }
        });
    });
}
exports.deleteAccount = deleteAccount;


/***/ }),
/* 5 */,
/* 6 */
/***/ (function(module, exports, __webpack_require__) {

!function (t, e) {
   true ? module.exports = e() : undefined;
}(window, function () {
  return i = {}, o.m = n = [function (t, e, n) {
    var i = n(7);
    "string" == typeof i && (i = [[t.i, i, ""]]), i.locals && (t.exports = i.locals);
    (0, n(4).default)("d763679c", i, !1, {});
  }, function (t, e, n) {
    var i = n(10);
    "string" == typeof i && (i = [[t.i, i, ""]]), i.locals && (t.exports = i.locals);
    (0, n(4).default)("6b9cc0e0", i, !1, {});
  }, function (t, e, n) {
    var i = n(12);
    "string" == typeof i && (i = [[t.i, i, ""]]), i.locals && (t.exports = i.locals);
    (0, n(4).default)("663c004e", i, !1, {});
  }, function (t, e) {
    t.exports = function (n) {
      var a = [];
      return a.toString = function () {
        return this.map(function (t) {
          var e = function (t, e) {
            var n = t[1] || "",
                i = t[3];
            if (!i) return n;

            if (e && "function" == typeof btoa) {
              var o = function (t) {
                return "/*# sourceMappingURL=data:application/json;charset=utf-8;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(t)))) + " */";
              }(i),
                  r = i.sources.map(function (t) {
                return "/*# sourceURL=" + i.sourceRoot + t + " */";
              });

              return [n].concat(r).concat([o]).join("\n");
            }

            return [n].join("\n");
          }(t, n);

          return t[2] ? "@media " + t[2] + "{" + e + "}" : e;
        }).join("");
      }, a.i = function (t, e) {
        "string" == typeof t && (t = [[null, t, ""]]);

        for (var n = {}, i = 0; i < this.length; i++) {
          var o = this[i][0];
          "number" == typeof o && (n[o] = !0);
        }

        for (i = 0; i < t.length; i++) {
          var r = t[i];
          "number" == typeof r[0] && n[r[0]] || (e && !r[2] ? r[2] = e : e && (r[2] = "(" + r[2] + ") and (" + e + ")"), a.push(r));
        }
      }, a;
    };
  }, function (t, e, n) {
    "use strict";

    function l(t, e) {
      for (var n = [], i = {}, o = 0; o < e.length; o++) {
        var r = e[o],
            a = r[0],
            s = {
          id: t + ":" + o,
          css: r[1],
          media: r[2],
          sourceMap: r[3]
        };
        i[a] ? i[a].parts.push(s) : n.push(i[a] = {
          id: a,
          parts: [s]
        });
      }

      return n;
    }

    n.r(e), n.d(e, "default", function () {
      return p;
    });
    var i = "undefined" != typeof document;
    if ("undefined" != typeof DEBUG && DEBUG && !i) 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.");

    var u = {},
        o = i && (document.head || document.getElementsByTagName("head")[0]),
        r = null,
        a = 0,
        c = !1,
        s = function () {},
        d = null,
        h = "data-vue-ssr-id",
        f = "undefined" != typeof navigator && /msie [6-9]\b/.test(navigator.userAgent.toLowerCase());

    function p(a, t, e, n) {
      c = e, d = n || {};
      var s = l(a, t);
      return v(s), function (t) {
        for (var e = [], n = 0; n < s.length; n++) {
          var i = s[n];
          (o = u[i.id]).refs--, e.push(o);
        }

        t ? v(s = l(a, t)) : s = [];

        for (n = 0; n < e.length; n++) {
          var o;

          if (0 === (o = e[n]).refs) {
            for (var r = 0; r < o.parts.length; r++) o.parts[r]();

            delete u[o.id];
          }
        }
      };
    }

    function v(t) {
      for (var e = 0; e < t.length; e++) {
        var n = t[e],
            i = u[n.id];

        if (i) {
          i.refs++;

          for (var o = 0; o < i.parts.length; o++) i.parts[o](n.parts[o]);

          for (; o < n.parts.length; o++) i.parts.push(b(n.parts[o]));

          i.parts.length > n.parts.length && (i.parts.length = n.parts.length);
        } else {
          var r = [];

          for (o = 0; o < n.parts.length; o++) r.push(b(n.parts[o]));

          u[n.id] = {
            id: n.id,
            refs: 1,
            parts: r
          };
        }
      }
    }

    function m() {
      var t = document.createElement("style");
      return t.type = "text/css", o.appendChild(t), t;
    }

    function b(e) {
      var n,
          i,
          t = document.querySelector("style[" + h + '~="' + e.id + '"]');

      if (t) {
        if (c) return s;
        t.parentNode.removeChild(t);
      }

      if (f) {
        var o = a++;
        t = r = r || m(), n = w.bind(null, t, o, !1), i = w.bind(null, t, o, !0);
      } else t = m(), n = function (t, e) {
        var n = e.css,
            i = e.media,
            o = e.sourceMap;
        i && t.setAttribute("media", i);
        d.ssrId && t.setAttribute(h, e.id);
        o && (n += "\n/*# sourceURL=" + o.sources[0] + " */", n += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(o)))) + " */");
        if (t.styleSheet) t.styleSheet.cssText = n;else {
          for (; t.firstChild;) t.removeChild(t.firstChild);

          t.appendChild(document.createTextNode(n));
        }
      }.bind(null, t), i = function () {
        t.parentNode.removeChild(t);
      };

      return n(e), function (t) {
        if (t) {
          if (t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap) return;
          n(e = t);
        } else i();
      };
    }

    var y,
        g = (y = [], function (t, e) {
      return y[t] = e, y.filter(Boolean).join("\n");
    });

    function w(t, e, n, i) {
      var o = n ? "" : i.css;
      if (t.styleSheet) t.styleSheet.cssText = g(e, o);else {
        var r = document.createTextNode(o),
            a = t.childNodes;
        a[e] && t.removeChild(a[e]), a.length ? t.insertBefore(r, a[e]) : t.appendChild(r);
      }
    }
  }, function (t, M, e) {
    "use strict";

    (function (t) {
      var i = function () {
        if ("undefined" != typeof Map) return Map;

        function i(t, n) {
          var i = -1;
          return t.some(function (t, e) {
            return t[0] === n && (i = e, !0);
          }), i;
        }

        return Object.defineProperty(t.prototype, "size", {
          get: function () {
            return this.__entries__.length;
          },
          enumerable: !0,
          configurable: !0
        }), t.prototype.get = function (t) {
          var e = i(this.__entries__, t),
              n = this.__entries__[e];
          return n && n[1];
        }, t.prototype.set = function (t, e) {
          var n = i(this.__entries__, t);
          ~n ? this.__entries__[n][1] = e : this.__entries__.push([t, e]);
        }, t.prototype.delete = function (t) {
          var e = this.__entries__,
              n = i(e, t);
          ~n && e.splice(n, 1);
        }, t.prototype.has = function (t) {
          return !!~i(this.__entries__, t);
        }, t.prototype.clear = function () {
          this.__entries__.splice(0);
        }, t.prototype.forEach = function (t, e) {
          void 0 === e && (e = null);

          for (var n = 0, i = this.__entries__; n < i.length; n++) {
            var o = i[n];
            t.call(e, o[1], o[0]);
          }
        }, t;

        function t() {
          this.__entries__ = [];
        }
      }(),
          n = "undefined" != typeof window && "undefined" != typeof document && window.document === document,
          e = void 0 !== t && t.Math === Math ? t : "undefined" != typeof self && self.Math === Math ? self : "undefined" != typeof window && window.Math === Math ? window : Function("return this")(),
          l = "function" == typeof requestAnimationFrame ? requestAnimationFrame.bind(e) : function (t) {
        return setTimeout(function () {
          return t(Date.now());
        }, 1e3 / 60);
      },
          u = 2;

      var o = ["top", "right", "bottom", "left", "width", "height", "size", "weight"],
          r = "undefined" != typeof MutationObserver,
          a = (s.prototype.addObserver = function (t) {
        ~this.observers_.indexOf(t) || this.observers_.push(t), this.connected_ || this.connect_();
      }, s.prototype.removeObserver = function (t) {
        var e = this.observers_,
            n = e.indexOf(t);
        ~n && e.splice(n, 1), !e.length && this.connected_ && this.disconnect_();
      }, s.prototype.refresh = function () {
        this.updateObservers_() && this.refresh();
      }, s.prototype.updateObservers_ = function () {
        var t = this.observers_.filter(function (t) {
          return t.gatherActive(), t.hasActive();
        });
        return t.forEach(function (t) {
          return t.broadcastActive();
        }), 0 < t.length;
      }, s.prototype.connect_ = function () {
        n && !this.connected_ && (document.addEventListener("transitionend", this.onTransitionEnd_), window.addEventListener("resize", this.refresh), r ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {
          attributes: !0,
          childList: !0,
          characterData: !0,
          subtree: !0
        })) : (document.addEventListener("DOMSubtreeModified", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0);
      }, s.prototype.disconnect_ = function () {
        n && this.connected_ && (document.removeEventListener("transitionend", this.onTransitionEnd_), window.removeEventListener("resize", this.refresh), this.mutationsObserver_ && this.mutationsObserver_.disconnect(), this.mutationEventsAdded_ && document.removeEventListener("DOMSubtreeModified", this.refresh), this.mutationsObserver_ = null, this.mutationEventsAdded_ = !1, this.connected_ = !1);
      }, s.prototype.onTransitionEnd_ = function (t) {
        var e = t.propertyName,
            n = void 0 === e ? "" : e;
        o.some(function (t) {
          return !!~n.indexOf(t);
        }) && this.refresh();
      }, s.getInstance = function () {
        return this.instance_ || (this.instance_ = new s()), this.instance_;
      }, s.instance_ = null, s);

      function s() {
        function t() {
          r && (r = !1, i()), a && n();
        }

        function e() {
          l(t);
        }

        function n() {
          var t = Date.now();

          if (r) {
            if (t - s < u) return;
            a = !0;
          } else a = !(r = !0), setTimeout(e, o);

          s = t;
        }

        var i, o, r, a, s;
        this.connected_ = !1, this.mutationEventsAdded_ = !1, this.mutationsObserver_ = null, this.observers_ = [], this.onTransitionEnd_ = this.onTransitionEnd_.bind(this), this.refresh = (i = this.refresh.bind(this), a = r = !(o = 20), s = 0, n);
      }

      var c = function (t, e) {
        for (var n = 0, i = Object.keys(e); n < i.length; n++) {
          var o = i[n];
          Object.defineProperty(t, o, {
            value: e[o],
            enumerable: !1,
            writable: !1,
            configurable: !0
          });
        }

        return t;
      },
          h = function (t) {
        return t && t.ownerDocument && t.ownerDocument.defaultView || e;
      },
          f = y(0, 0, 0, 0);

      function p(t) {
        return parseFloat(t) || 0;
      }

      function v(n) {
        for (var t = [], e = 1; e < arguments.length; e++) t[e - 1] = arguments[e];

        return t.reduce(function (t, e) {
          return t + p(n["border-" + e + "-width"]);
        }, 0);
      }

      function d(t) {
        var e = t.clientWidth,
            n = t.clientHeight;
        if (!e && !n) return f;

        var i,
            o = h(t).getComputedStyle(t),
            r = function (t) {
          for (var e = {}, n = 0, i = ["top", "right", "bottom", "left"]; n < i.length; n++) {
            var o = i[n],
                r = t["padding-" + o];
            e[o] = p(r);
          }

          return e;
        }(o),
            a = r.left + r.right,
            s = r.top + r.bottom,
            l = p(o.width),
            u = p(o.height);

        if ("border-box" === o.boxSizing && (Math.round(l + a) !== e && (l -= v(o, "left", "right") + a), Math.round(u + s) !== n && (u -= v(o, "top", "bottom") + s)), (i = t) !== h(i).document.documentElement) {
          var c = Math.round(l + a) - e,
              d = Math.round(u + s) - n;
          1 !== Math.abs(c) && (l -= c), 1 !== Math.abs(d) && (u -= d);
        }

        return y(r.left, r.top, l, u);
      }

      var m = "undefined" != typeof SVGGraphicsElement ? function (t) {
        return t instanceof h(t).SVGGraphicsElement;
      } : function (t) {
        return t instanceof h(t).SVGElement && "function" == typeof t.getBBox;
      };

      function b(t) {
        return n ? m(t) ? y(0, 0, (e = t.getBBox()).width, e.height) : d(t) : f;
        var e;
      }

      function y(t, e, n, i) {
        return {
          x: t,
          y: e,
          width: n,
          height: i
        };
      }

      var g = (w.prototype.isActive = function () {
        var t = b(this.target);
        return (this.contentRect_ = t).width !== this.broadcastWidth || t.height !== this.broadcastHeight;
      }, w.prototype.broadcastRect = function () {
        var t = this.contentRect_;
        return this.broadcastWidth = t.width, this.broadcastHeight = t.height, t;
      }, w);

      function w(t) {
        this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = y(0, 0, 0, 0), this.target = t;
      }

      var _ = function (t, e) {
        var n,
            i,
            o,
            r,
            a,
            s,
            l,
            u = (i = (n = e).x, o = n.y, r = n.width, a = n.height, s = "undefined" != typeof DOMRectReadOnly ? DOMRectReadOnly : Object, l = Object.create(s.prototype), c(l, {
          x: i,
          y: o,
          width: r,
          height: a,
          top: o,
          right: i + r,
          bottom: a + o,
          left: i
        }), l);
        c(this, {
          target: t,
          contentRect: u
        });
      },
          E = (x.prototype.observe = function (t) {
        if (!arguments.length) throw new TypeError("1 argument required, but only 0 present.");

        if ("undefined" != typeof Element && Element instanceof Object) {
          if (!(t instanceof h(t).Element)) throw new TypeError('parameter 1 is not of type "Element".');
          var e = this.observations_;
          e.has(t) || (e.set(t, new g(t)), this.controller_.addObserver(this), this.controller_.refresh());
        }
      }, x.prototype.unobserve = function (t) {
        if (!arguments.length) throw new TypeError("1 argument required, but only 0 present.");

        if ("undefined" != typeof Element && Element instanceof Object) {
          if (!(t instanceof h(t).Element)) throw new TypeError('parameter 1 is not of type "Element".');
          var e = this.observations_;
          e.has(t) && (e.delete(t), e.size || this.controller_.removeObserver(this));
        }
      }, x.prototype.disconnect = function () {
        this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this);
      }, x.prototype.gatherActive = function () {
        var e = this;
        this.clearActive(), this.observations_.forEach(function (t) {
          t.isActive() && e.activeObservations_.push(t);
        });
      }, x.prototype.broadcastActive = function () {
        if (this.hasActive()) {
          var t = this.callbackCtx_,
              e = this.activeObservations_.map(function (t) {
            return new _(t.target, t.broadcastRect());
          });
          this.callback_.call(t, e, t), this.clearActive();
        }
      }, x.prototype.clearActive = function () {
        this.activeObservations_.splice(0);
      }, x.prototype.hasActive = function () {
        return 0 < this.activeObservations_.length;
      }, x);

      function x(t, e, n) {
        if (this.activeObservations_ = [], this.observations_ = new i(), "function" != typeof t) throw new TypeError("The callback provided as parameter 1 is not a function.");
        this.callback_ = t, this.controller_ = e, this.callbackCtx_ = n;
      }

      var T = new ("undefined" != typeof WeakMap ? WeakMap : i)(),
          O = function t(e) {
        if (!(this instanceof t)) throw new TypeError("Cannot call a class as a function.");
        if (!arguments.length) throw new TypeError("1 argument required, but only 0 present.");
        var n = a.getInstance(),
            i = new E(e, n, this);
        T.set(this, i);
      };

      ["observe", "unobserve", "disconnect"].forEach(function (e) {
        O.prototype[e] = function () {
          var t;
          return (t = T.get(this))[e].apply(t, arguments);
        };
      });
      var S = void 0 !== e.ResizeObserver ? e.ResizeObserver : O;
      M.a = S;
    }).call(this, e(8));
  }, function (t, e, n) {
    "use strict";

    var i = n(0);
    n.n(i).a;
  }, function (t, e, n) {
    (t.exports = n(3)(!1)).push([t.i, "\n.vue-modal-resizer {\n  display: block;\n  overflow: hidden;\n  position: absolute;\n  width: 12px;\n  height: 12px;\n  right: 0;\n  bottom: 0;\n  z-index: 9999999;\n  background: transparent;\n  cursor: se-resize;\n}\n.vue-modal-resizer::after {\n  display: block;\n  position: absolute;\n  content: '';\n  background: transparent;\n  left: 0;\n  top: 0;\n  width: 0;\n  height: 0;\n  border-bottom: 10px solid #ddd;\n  border-left: 10px solid transparent;\n}\n.vue-modal-resizer.clicked::after {\n  border-bottom: 10px solid #369be9;\n}\n", ""]);
  }, function (t, e) {
    var n;

    n = function () {
      return this;
    }();

    try {
      n = n || new Function("return this")();
    } catch (t) {
      "object" == typeof window && (n = window);
    }

    t.exports = n;
  }, function (t, e, n) {
    "use strict";

    var i = n(1);
    n.n(i).a;
  }, function (t, e, n) {
    (t.exports = n(3)(!1)).push([t.i, "\n.vm--block-scroll {\n  overflow: hidden;\n  width: 100vw;\n}\n.vm--container {\n  position: fixed;\n  box-sizing: border-box;\n  left: 0;\n  top: 0;\n  width: 100%;\n  height: 100vh;\n  z-index: 999;\n}\n.vm--overlay {\n  position: fixed;\n  box-sizing: border-box;\n  left: 0;\n  top: 0;\n  width: 100%;\n  height: 100vh;\n  background: rgba(0, 0, 0, 0.2);\n  /* z-index: 999; */\n  opacity: 1;\n}\n.vm--container.scrollable {\n  height: 100%;\n  min-height: 100vh;\n  overflow-y: auto;\n  -webkit-overflow-scrolling: touch;\n}\n.vm--modal {\n  position: relative;\n  overflow: hidden;\n  box-sizing: border-box;\n\n  background-color: white;\n  border-radius: 3px;\n  box-shadow: 0 20px 60px -2px rgba(27, 33, 58, 0.4);\n}\n.vm--container.scrollable .vm--modal {\n  margin-bottom: 2px;\n}\n.vm--top-right-slot {\n  display: block;\n  position: absolute;\n  right: 0;\n  top: 0;\n}\n.vm-transition--overlay-enter-active,\n.vm-transition--overlay-leave-active {\n  transition: all 50ms;\n}\n.vm-transition--overlay-enter,\n.vm-transition--overlay-leave-active {\n  opacity: 0;\n}\n.vm-transition--modal-enter-active,\n.vm-transition--modal-leave-active {\n  transition: all 400ms;\n}\n.vm-transition--modal-enter,\n.vm-transition--modal-leave-active {\n  opacity: 0;\n  transform: translateY(-20px);\n}\n.vm-transition--default-enter-active,\n.vm-transition--default-leave-active {\n  transition: all 2ms;\n}\n.vm-transition--default-enter,\n.vm-transition--default-leave-active {\n  opacity: 0;\n}\n", ""]);
  }, function (t, e, n) {
    "use strict";

    var i = n(2);
    n.n(i).a;
  }, function (t, e, n) {
    (t.exports = n(3)(!1)).push([t.i, "\n.vue-dialog {\n  font-size: 14px;\n}\n.vue-dialog div {\n  box-sizing: border-box;\n}\n.vue-dialog-content {\n  flex: 1 0 auto;\n  width: 100%;\n  padding: 14px;\n}\n.vue-dialog-content-title {\n  font-weight: 600;\n  padding-bottom: 14px;\n}\n.vue-dialog-buttons {\n  display: flex;\n  flex: 0 1 auto;\n  width: 100%;\n  border-top: 1px solid #eee;\n}\n.vue-dialog-buttons-none {\n  width: 100%;\n  padding-bottom: 14px;\n}\n.vue-dialog-button {\n  font-size: inherit;\n  background: transparent;\n  padding: 0;\n  margin: 0;\n  border: 0;\n  cursor: pointer;\n  box-sizing: border-box;\n  line-height: 40px;\n  height: 40px;\n  color: inherit;\n  font: inherit;\n  outline: none;\n}\n.vue-dialog-button:hover {\n  background: #f9f9f9;\n}\n.vue-dialog-button:active {\n  background: #f3f3f3;\n}\n.vue-dialog-button:not(:first-of-type) {\n  border-left: 1px solid #eee;\n}\n", ""]);
  }, function (t, e, n) {
    "use strict";

    n.r(e), n.d(e, "Modal", function () {
      return W;
    }), n.d(e, "Dialog", function () {
      return U;
    }), n.d(e, "version", function () {
      return J;
    });

    function i() {
      var e = this,
          t = e.$createElement,
          n = e._self._c || t;
      return e.visible ? n("div", {
        class: e.containerClass
      }, [n("transition", {
        attrs: {
          name: e.guaranteedOverlayTransition
        },
        on: {
          "before-enter": e.beforeOverlayTransitionEnter,
          "after-enter": e.afterOverlayTransitionEnter,
          "before-leave": e.beforeOverlayTransitionLeave,
          "after-leave": e.afterOverlayTransitionLeave
        }
      }, [e.visibility.overlay ? n("div", {
        staticClass: "vm--overlay",
        attrs: {
          "data-modal": e.name,
          "aria-expanded": e.visibility.overlay.toString()
        },
        on: {
          click: function (t) {
            return t.target !== t.currentTarget ? null : (t.stopPropagation(), e.onOverlayClick(t));
          }
        }
      }, [n("div", {
        staticClass: "vm--top-right-slot"
      }, [e._t("top-right")], 2)]) : e._e()]), e._v(" "), n("transition", {
        attrs: {
          name: e.guaranteedModalTransition
        },
        on: {
          "before-enter": e.beforeModalTransitionEnter,
          "after-enter": e.afterModalTransitionEnter,
          "before-leave": e.beforeModalTransitionLeave,
          "after-leave": e.afterModalTransitionLeave
        }
      }, [e.visibility.modal ? n("div", {
        ref: "modal",
        class: e.modalClass,
        style: e.modalStyle,
        attrs: {
          "aria-expanded": e.visibility.modal.toString(),
          role: "dialog",
          "aria-modal": "true"
        }
      }, [e._t("default"), e._v(" "), e.resizable && !e.isAutoHeight ? n("resizer", {
        attrs: {
          "min-width": e.minWidth,
          "min-height": e.minHeight,
          "max-width": e.maxWidth,
          "max-height": e.maxHeight
        },
        on: {
          resize: e.onModalResize
        }
      }) : e._e()], 2) : e._e()])], 1) : e._e();
    }

    function o() {
      var t = this.$createElement;
      return (this._self._c || t)("div", {
        class: this.className
      });
    }

    o._withStripped = i._withStripped = !0;

    function h(t, e, n) {
      return n < t ? t : e < n ? e : n;
    }

    function r(t, e, n) {
      return e in t ? Object.defineProperty(t, e, {
        value: n,
        enumerable: !0,
        configurable: !0,
        writable: !0
      }) : t[e] = n, t;
    }

    function a(t, e) {
      return function (t) {
        if (Array.isArray(t)) return t;
      }(t) || function (t, e) {
        var n = [],
            i = !0,
            o = !1,
            r = void 0;

        try {
          for (var a, s = t[Symbol.iterator](); !(i = (a = s.next()).done) && (n.push(a.value), !e || n.length !== e); i = !0);
        } catch (t) {
          o = !0, r = t;
        } finally {
          try {
            i || null == s.return || s.return();
          } finally {
            if (o) throw r;
          }
        }

        return n;
      }(t, e) || function () {
        throw new TypeError("Invalid attempt to destructure non-iterable instance");
      }();
    }

    function s() {
      var t = window.innerWidth,
          e = document.documentElement.clientWidth;
      return t && e ? Math.min(t, e) : e || t;
    }

    function l(t) {
      return t.split(";").map(function (t) {
        return t.trim();
      }).filter(Boolean).map(function (t) {
        return t.split(":");
      }).reduce(function (t, e) {
        var n = a(e, 2);
        return function (e) {
          for (var t = 1; t < arguments.length; t++) {
            var n = null != arguments[t] ? arguments[t] : {},
                i = Object.keys(n);
            "function" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {
              return Object.getOwnPropertyDescriptor(n, t).enumerable;
            }))), i.forEach(function (t) {
              r(e, t, n[t]);
            });
          }

          return e;
        }({}, t, r({}, n[0], n[1]));
      }, {});
    }

    function f(t) {
      return t.touches && 0 < t.touches.length ? t.touches[0] : t;
    }

    var p = ["INPUT", "TEXTAREA", "SELECT"],
        c = function (t) {
      var e = 0 < arguments.length && void 0 !== t ? t : 0;
      return function () {
        return (e++).toString();
      };
    }(),
        u = {
      name: "VueJsModalResizer",
      props: {
        minHeight: {
          type: Number,
          default: 0
        },
        minWidth: {
          type: Number,
          default: 0
        },
        maxWidth: {
          type: Number,
          default: Number.MAX_SAFE_INTEGER
        },
        maxHeight: {
          type: Number,
          default: Number.MAX_SAFE_INTEGER
        }
      },
      data: function () {
        return {
          clicked: !1,
          size: {}
        };
      },
      mounted: function () {
        this.$el.addEventListener("mousedown", this.start, !1);
      },
      computed: {
        className: function () {
          return ["vue-modal-resizer", {
            clicked: this.clicked
          }];
        }
      },
      methods: {
        start: function (t) {
          this.clicked = !0, window.addEventListener("mousemove", this.mousemove, !1), window.addEventListener("mouseup", this.stop, !1), t.stopPropagation(), t.preventDefault();
        },
        stop: function () {
          this.clicked = !1, window.removeEventListener("mousemove", this.mousemove, !1), window.removeEventListener("mouseup", this.stop, !1), this.$emit("resize-stop", {
            element: this.$el.parentElement,
            size: this.size
          });
        },
        mousemove: function (t) {
          this.resize(t);
        },
        resize: function (t) {
          var e = this.$el.parentElement;

          if (e) {
            var n = t.clientX - e.offsetLeft,
                i = t.clientY - e.offsetTop,
                o = Math.min(s(), this.maxWidth),
                r = Math.min(window.innerHeight, this.maxHeight);
            n = h(this.minWidth, o, n), i = h(this.minHeight, r, i), this.size = {
              width: n,
              height: i
            }, e.style.width = n + "px", e.style.height = i + "px", this.$emit("resize", {
              element: e,
              size: this.size
            });
          }
        }
      }
    };

    n(6);

    function d(t, e, n, i, o, r, a, s) {
      var l,
          u = "function" == typeof t ? t.options : t;
      if (e && (u.render = e, u.staticRenderFns = n, u._compiled = !0), i && (u.functional = !0), r && (u._scopeId = "data-v-" + r), a ? (l = function (t) {
        (t = t || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) || "undefined" == typeof __VUE_SSR_CONTEXT__ || (t = __VUE_SSR_CONTEXT__), o && o.call(this, t), t && t._registeredComponents && t._registeredComponents.add(a);
      }, u._ssrRegister = l) : o && (l = s ? function () {
        o.call(this, this.$root.$options.shadowRoot);
      } : o), l) if (u.functional) {
        u._injectStyles = l;
        var c = u.render;

        u.render = function (t, e) {
          return l.call(e), c(t, e);
        };
      } else {
        var d = u.beforeCreate;
        u.beforeCreate = d ? [].concat(d, l) : [l];
      }
      return {
        exports: t,
        options: u
      };
    }

    var v = d(u, o, [], !1, null, null, null);
    v.options.__file = "src/components/Resizer.vue";
    var m = v.exports;

    function b(t) {
      return (b = "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 y(t) {
      switch (b(t)) {
        case "number":
          return {
            type: "px",
            value: t
          };

        case "string":
          return function (e) {
            if ("auto" === e) return {
              type: e,
              value: 0
            };

            var t = _.find(function (t) {
              return t.regexp.test(e);
            });

            return t ? {
              type: t.name,
              value: parseFloat(e)
            } : {
              type: "",
              value: e
            };
          }(t);

        default:
          return {
            type: "",
            value: t
          };
      }
    }

    function g(t) {
      if ("string" != typeof t) return 0 <= t;
      var e = y(t);
      return ("%" === e.type || "px" === e.type) && 0 < e.value;
    }

    var w = "[-+]?[0-9]*.?[0-9]+",
        _ = [{
      name: "px",
      regexp: new RegExp("^".concat(w, "px$"))
    }, {
      name: "%",
      regexp: new RegExp("^".concat(w, "%$"))
    }, {
      name: "px",
      regexp: new RegExp("^".concat(w, "$"))
    }],
        E = n(5),
        x = "undefined" != typeof window && window.ResizeObserver ? ResizeObserver : E.a;

    function T(t, e) {
      for (var n = 0; n < e.length; n++) {
        var i = e[n];
        i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(t, i.key, i);
      }
    }

    function O(t) {
      return function (t) {
        if (Array.isArray(t)) {
          for (var e = 0, n = new Array(t.length); e < t.length; e++) n[e] = t[e];

          return n;
        }
      }(t) || function (t) {
        if (Symbol.iterator in Object(t) || "[object Arguments]" === Object.prototype.toString.call(t)) return Array.from(t);
      }(t) || function () {
        throw new TypeError("Invalid attempt to spread non-iterable instance");
      }();
    }

    function S(t) {
      return e = 'button:not([disabled]), select:not([disabled]), a[href]:not([disabled]), area[href]:not([disabled]), [contentEditable=""]:not([disabled]), [contentEditable="true"]:not([disabled]), [contentEditable="TRUE"]:not([disabled]), textarea:not([disabled]), iframe:not([disabled]), input:not([disabled]), summary:not([disabled]), [tabindex]:not([tabindex="-1"])', O(t.querySelectorAll(e) || []);
      var e;
    }

    function M(t) {
      return t == document.activeElement;
    }

    var k = function () {
      function t() {
        !function (t, e) {
          if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
        }(this, t), this.root = null, this.elements = [], this.onKeyDown = this.onKeyDown.bind(this), this.enable = this.enable.bind(this), this.disable = this.disable.bind(this), this.firstElement = this.firstElement.bind(this), this.lastElement = this.lastElement.bind(this);
      }

      var e, n, i;
      return e = t, (n = [{
        key: "lastElement",
        value: function () {
          return this.elements[this.elements.length - 1] || null;
        }
      }, {
        key: "firstElement",
        value: function () {
          return this.elements[0] || null;
        }
      }, {
        key: "onKeyDown",
        value: function (t) {
          var e;
          if ("Tab" === (e = t).key || 9 === e.keyCode) return t.shiftKey && M(this.firstElement()) ? (this.lastElement().focus(), void t.preventDefault()) : !document.activeElement || M(this.lastElement()) ? (this.firstElement().focus(), void t.preventDefault()) : void 0;
        }
      }, {
        key: "enabled",
        value: function () {
          return !!this.root;
        }
      }, {
        key: "enable",
        value: function (t) {
          if (t) {
            this.root = t, this.elements = S(this.root);
            var e = this.firstElement();
            e && e.focus(), this.root.addEventListener("keydown", this.onKeyDown);
          }
        }
      }, {
        key: "disable",
        value: function () {
          this.root.removeEventListener("keydown", this.onKeyDown), this.root = null;
        }
      }]) && T(e.prototype, n), i && T(e, i), t;
    }();

    function L(t, e, n) {
      return e in t ? Object.defineProperty(t, e, {
        value: n,
        enumerable: !0,
        configurable: !0,
        writable: !0
      }) : t[e] = n, t;
    }

    function z(t, e) {
      return function (t) {
        if (Array.isArray(t)) return t;
      }(t) || function (t, e) {
        var n = [],
            i = !0,
            o = !1,
            r = void 0;

        try {
          for (var a, s = t[Symbol.iterator](); !(i = (a = s.next()).done) && (n.push(a.value), !e || n.length !== e); i = !0);
        } catch (t) {
          o = !0, r = t;
        } finally {
          try {
            i || null == s.return || s.return();
          } finally {
            if (o) throw r;
          }
        }

        return n;
      }(t, e) || function () {
        throw new TypeError("Invalid attempt to destructure non-iterable instance");
      }();
    }

    var $ = "vm-transition--default",
        A = "enter",
        C = "entering",
        j = "leave",
        R = "leavng",
        H = {
      name: "VueJsModal",
      props: {
        name: {
          required: !0,
          type: String
        },
        resizable: {
          type: Boolean,
          default: !1
        },
        adaptive: {
          type: Boolean,
          default: !1
        },
        draggable: {
          type: [Boolean, String],
          default: !1
        },
        scrollable: {
          type: Boolean,
          default: !1
        },
        focusTrap: {
          type: Boolean,
          default: !1
        },
        reset: {
          type: Boolean,
          default: !1
        },
        overlayTransition: {
          type: String,
          default: "vm-transition--overlay"
        },
        transition: {
          type: String,
          default: "vm-transition--modal"
        },
        clickToClose: {
          type: Boolean,
          default: !0
        },
        classes: {
          type: [String, Array],
          default: function () {
            return [];
          }
        },
        styles: {
          type: [String, Array, Object]
        },
        minWidth: {
          type: Number,
          default: 0,
          validator: function (t) {
            return 0 <= t;
          }
        },
        minHeight: {
          type: Number,
          default: 0,
          validator: function (t) {
            return 0 <= t;
          }
        },
        maxWidth: {
          type: Number,
          default: Number.MAX_SAFE_INTEGER
        },
        maxHeight: {
          type: Number,
          default: Number.MAX_SAFE_INTEGER
        },
        width: {
          type: [Number, String],
          default: 600,
          validator: g
        },
        height: {
          type: [Number, String],
          default: 300,
          validator: function (t) {
            return "auto" === t || g(t);
          }
        },
        shiftX: {
          type: Number,
          default: .5,
          validator: function (t) {
            return 0 <= t && t <= 1;
          }
        },
        shiftY: {
          type: Number,
          default: .5,
          validator: function (t) {
            return 0 <= t && t <= 1;
          }
        }
      },
      components: {
        Resizer: m
      },
      data: function () {
        return {
          visible: !1,
          visibility: {
            modal: !1,
            overlay: !1
          },
          overlayTransitionState: null,
          modalTransitionState: null,
          shiftLeft: 0,
          shiftTop: 0,
          modal: {
            width: 0,
            widthType: "px",
            height: 0,
            heightType: "px",
            renderedHeight: 0
          },
          viewportHeight: 0,
          viewportWidth: 0
        };
      },
      created: function () {
        this.setInitialSize();
      },
      beforeMount: function () {
        this.$modal.subscription.$on("toggle", this.onToggle), window.addEventListener("resize", this.onWindowResize), window.addEventListener("orientationchange", this.onWindowResize), this.onWindowResize(), this.scrollable && !this.isAutoHeight && console.warn('Modal "'.concat(this.name, '" has scrollable flag set to true ') + 'but height is not "auto" ('.concat(this.height, ")")), this.clickToClose && window.addEventListener("keyup", this.onEscapeKeyUp);
      },
      mounted: function () {
        var n = this;
        this.resizeObserver = new x(function (t) {
          if (0 < t.length) {
            var e = z(t, 1)[0];
            n.modal.renderedHeight = e.contentRect.height;
          }
        }), this.$focusTrap = new k();
      },
      beforeDestroy: function () {
        this.$modal.subscription.$off("toggle", this.onToggle), window.removeEventListener("resize", this.onWindowResize), window.removeEventListener("orientationchange", this.onWindowResize), this.clickToClose && window.removeEventListener("keyup", this.onEscapeKeyUp), document.body.classList.remove("vm--block-scroll");
      },
      computed: {
        guaranteedOverlayTransition: function () {
          return this.overlayTransition || $;
        },
        guaranteedModalTransition: function () {
          return this.transition || $;
        },
        isAutoHeight: function () {
          return "auto" === this.modal.heightType;
        },
        position: function () {
          var t = this.viewportHeight,
              e = this.viewportWidth,
              n = this.shiftLeft,
              i = this.shiftTop,
              o = this.shiftX,
              r = this.shiftY,
              a = this.trueModalWidth,
              s = this.trueModalHeight,
              l = e - a,
              u = Math.max(t - s, 0),
              c = i + r * u;
          return {
            left: parseInt(h(0, l, n + o * l)),
            top: !s && this.isAutoHeight ? void 0 : parseInt(h(0, u, c))
          };
        },
        trueModalWidth: function () {
          var t = this.viewportWidth,
              e = this.modal,
              n = this.adaptive,
              i = this.minWidth,
              o = this.maxWidth,
              r = "%" === e.widthType ? t / 100 * e.width : e.width;

          if (n) {
            var a = Math.max(i, Math.min(t, o));
            return h(i, a, r);
          }

          return r;
        },
        trueModalHeight: function () {
          var t = this.viewportHeight,
              e = this.modal,
              n = this.isAutoHeight,
              i = this.adaptive,
              o = this.minHeight,
              r = this.maxHeight,
              a = "%" === e.heightType ? t / 100 * e.height : e.height;
          if (n) return this.modal.renderedHeight;

          if (i) {
            var s = Math.max(o, Math.min(t, r));
            return h(o, s, a);
          }

          return a;
        },
        autoHeight: function () {
          return this.adaptive && this.modal.renderedHeight >= this.viewportHeight ? Math.max(this.minHeight, this.viewportHeight) + "px" : "auto";
        },
        containerClass: function () {
          return ["vm--container", this.scrollable && this.isAutoHeight && "scrollable"];
        },
        modalClass: function () {
          return ["vm--modal", this.classes];
        },
        stylesProp: function () {
          return "string" == typeof this.styles ? l(this.styles) : this.styles;
        },
        modalStyle: function () {
          return [this.stylesProp, {
            top: this.position.top + "px",
            left: this.position.left + "px",
            width: this.trueModalWidth + "px",
            height: this.isAutoHeight ? this.autoHeight : this.trueModalHeight + "px"
          }];
        },
        isComponentReadyToBeDestroyed: function () {
          return this.overlayTransitionState === j && this.modalTransitionState === j;
        }
      },
      watch: {
        isComponentReadyToBeDestroyed: function (t) {
          t && (this.visible = !1);
        }
      },
      methods: {
        startTransitionEnter: function () {
          this.visibility.overlay = !0, this.visibility.modal = !0;
        },
        startTransitionLeave: function () {
          this.visibility.overlay = !1, this.visibility.modal = !1;
        },
        beforeOverlayTransitionEnter: function () {
          this.overlayTransitionState = C;
        },
        afterOverlayTransitionEnter: function () {
          this.overlayTransitionState = A;
        },
        beforeOverlayTransitionLeave: function () {
          this.overlayTransitionState = R;
        },
        afterOverlayTransitionLeave: function () {
          this.overlayTransitionState = j;
        },
        beforeModalTransitionEnter: function () {
          var t = this;
          this.modalTransitionState = C, this.$nextTick(function () {
            t.resizeObserver.observe(t.$refs.modal);
          });
        },
        afterModalTransitionEnter: function () {
          this.modalTransitionState = A, this.draggable && this.addDraggableListeners(), this.focusTrap && this.$focusTrap.enable(this.$refs.modal);
          var t = this.createModalEvent({
            state: "opened"
          });
          this.$emit("opened", t);
        },
        beforeModalTransitionLeave: function () {
          this.modalTransitionState = R, this.resizeObserver.unobserve(this.$refs.modal), this.$focusTrap.enabled() && this.$focusTrap.disable();
        },
        afterModalTransitionLeave: function () {
          this.modalTransitionState = j;
          var t = this.createModalEvent({
            state: "closed"
          });
          this.$emit("closed", t);
        },
        onToggle: function (t, e, n) {
          if (this.name === t) {
            var i = void 0 === e ? !this.visible : e;
            this.toggle(i, n);
          }
        },
        setInitialSize: function () {
          var t = y(this.width),
              e = y(this.height);
          this.modal.width = t.value, this.modal.widthType = t.type, this.modal.height = e.value, this.modal.heightType = e.type;
        },
        onEscapeKeyUp: function (t) {
          27 === t.which && this.visible && this.$modal.hide(this.name);
        },
        onWindowResize: function () {
          this.viewportWidth = s(), this.viewportHeight = window.innerHeight, this.ensureShiftInWindowBounds();
        },
        createModalEvent: function (t) {
          var e = 0 < arguments.length && void 0 !== t ? t : {};
          return function (e) {
            for (var t = 1; t < arguments.length; t++) {
              var n = null != arguments[t] ? arguments[t] : {},
                  i = Object.keys(n);
              "function" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {
                return Object.getOwnPropertyDescriptor(n, t).enumerable;
              }))), i.forEach(function (t) {
                L(e, t, n[t]);
              });
            }

            return e;
          }({
            name: this.name,
            ref: this.$refs.modal || null
          }, e);
        },
        onModalResize: function (t) {
          this.modal.widthType = "px", this.modal.width = t.size.width, this.modal.heightType = "px", this.modal.height = t.size.height;
          var e = this.modal.size;
          this.$emit("resize", this.createModalEvent({
            size: e
          }));
        },
        open: function (t) {
          var e = this;
          this.reset && (this.setInitialSize(), this.shiftLeft = 0, this.shiftTop = 0), this.scrollable && document.body.classList.add("vm--block-scroll");
          var n = !1,
              i = this.createModalEvent({
            cancel: function () {
              n = !0;
            },
            state: "before-open",
            params: t
          });
          this.$emit("before-open", i), n ? this.scrollable && document.body.classList.remove("vm--block-scroll") : ("undefined" != typeof document && document.activeElement && "BODY" !== document.activeElement.tagName && document.activeElement.blur && document.activeElement.blur(), this.visible = !0, this.$nextTick(function () {
            e.startTransitionEnter();
          }));
        },
        close: function (t) {
          this.scrollable && document.body.classList.remove("vm--block-scroll");
          var e = !1,
              n = this.createModalEvent({
            cancel: function () {
              e = !0;
            },
            state: "before-close",
            params: t
          });
          this.$emit("before-close", n), e || this.startTransitionLeave();
        },
        toggle: function (t, e) {
          this.visible !== t && (t ? this.open(e) : this.close(e));
        },
        getDraggableElement: function () {
          return !0 === this.draggable ? this.$refs.modal : "string" == typeof this.draggable ? this.$refs.modal.querySelector(this.draggable) : null;
        },
        onOverlayClick: function () {
          this.clickToClose && this.toggle(!1);
        },
        addDraggableListeners: function () {
          var a = this,
              t = this.getDraggableElement();

          if (t) {
            var s = 0,
                l = 0,
                u = 0,
                c = 0,
                e = function (t) {
              var e = t.target;

              if (!(n = e) || -1 === p.indexOf(n.nodeName)) {
                var n,
                    i = f(t),
                    o = i.clientX,
                    r = i.clientY;
                document.addEventListener("mousemove", d), document.addEventListener("touchmove", d), document.addEventListener("mouseup", h), document.addEventListener("touchend", h), s = o, l = r, u = a.shiftLeft, c = a.shiftTop;
              }
            },
                d = function (t) {
              var e = f(t),
                  n = e.clientX,
                  i = e.clientY;
              a.shiftLeft = u + n - s, a.shiftTop = c + i - l, t.preventDefault();
            },
                h = function t(e) {
              a.ensureShiftInWindowBounds(), document.removeEventListener("mousemove", d), document.removeEventListener("touchmove", d), document.removeEventListener("mouseup", t), document.removeEventListener("touchend", t), e.preventDefault();
            };

            t.addEventListener("mousedown", e), t.addEventListener("touchstart", e);
          }
        },
        ensureShiftInWindowBounds: function () {
          var t = this.viewportHeight,
              e = this.viewportWidth,
              n = this.shiftLeft,
              i = this.shiftTop,
              o = this.shiftX,
              r = this.shiftY,
              a = this.trueModalWidth,
              s = this.trueModalHeight,
              l = e - a,
              u = Math.max(t - s, 0),
              c = n + o * l,
              d = i + r * u;
          this.shiftLeft -= c - h(0, l, c), this.shiftTop -= d - h(0, u, d);
        }
      }
    },
        N = (n(9), d(H, i, [], !1, null, null, null));
    N.options.__file = "src/components/Modal.vue";

    function D() {
      var n = this,
          t = n.$createElement,
          i = n._self._c || t;
      return i(n.$modal.context.componentName, {
        tag: "component",
        attrs: {
          name: "dialog",
          height: "auto",
          classes: ["vue-dialog", this.params.class],
          width: n.width,
          "shift-y": .3,
          adaptive: !0,
          "focus-trap": !0,
          clickToClose: n.clickToClose,
          transition: n.transition
        },
        on: {
          "before-open": n.beforeOpened,
          "before-close": n.beforeClosed,
          opened: function (t) {
            return n.$emit("opened", t);
          },
          closed: function (t) {
            return n.$emit("closed", t);
          }
        }
      }, [i("div", {
        staticClass: "vue-dialog-content"
      }, [n.params.title ? i("div", {
        staticClass: "vue-dialog-content-title",
        domProps: {
          innerHTML: n._s(n.params.title || "")
        }
      }) : n._e(), n._v(" "), n.params.component ? i(n.params.component, n._b({
        tag: "component"
      }, "component", n.params.props, !1)) : i("div", {
        domProps: {
          innerHTML: n._s(n.params.text || "")
        }
      })], 1), n._v(" "), n.buttons ? i("div", {
        staticClass: "vue-dialog-buttons"
      }, n._l(n.buttons, function (t, e) {
        return i("button", {
          key: e,
          class: t.class || "vue-dialog-button",
          style: n.buttonStyle,
          attrs: {
            type: "button",
            tabindex: "0"
          },
          domProps: {
            innerHTML: n._s(t.title)
          },
          on: {
            click: function (t) {
              return t.stopPropagation(), n.click(e, t);
            }
          }
        }, [n._v(n._s(t.title))]);
      }), 0) : i("div", {
        staticClass: "vue-dialog-buttons-none"
      })]);
    }

    var W = N.exports;
    D._withStripped = !0;
    var P = {
      name: "VueJsDialog",
      props: {
        width: {
          type: [Number, String],
          default: 400
        },
        clickToClose: {
          type: Boolean,
          default: !0
        },
        transition: {
          type: String
        }
      },
      data: function () {
        return {
          params: {}
        };
      },
      computed: {
        buttons: function () {
          return this.params.buttons || [];
        },
        buttonStyle: function () {
          return {
            flex: "1 1 ".concat(100 / this.buttons.length, "%")
          };
        }
      },
      methods: {
        beforeOpened: function (t) {
          this.params = t.params || {}, this.$emit("before-opened", t);
        },
        beforeClosed: function (t) {
          this.params = {}, this.$emit("before-closed", t);
        },
        click: function (t, e, n) {
          var i = 2 < arguments.length && void 0 !== n ? n : "click",
              o = this.buttons[t],
              r = null == o ? void 0 : o.handler;
          "function" == typeof r && r(t, e, {
            source: i
          });
        }
      }
    },
        B = (n(11), d(P, D, [], !1, null, null, null));
    B.options.__file = "src/components/Dialog.vue";

    function I() {
      var n = this,
          t = n.$createElement,
          i = n._self._c || t;
      return i("div", {
        attrs: {
          id: "modals-container"
        }
      }, n._l(n.modals, function (e) {
        return i("modal", n._g(n._b({
          key: e.id,
          on: {
            closed: function (t) {
              return n.remove(e.id);
            }
          }
        }, "modal", e.modalAttrs, !1), e.modalListeners), [i(e.component, n._g(n._b({
          tag: "component",
          on: {
            close: function (t) {
              return n.$modal.hide(e.modalAttrs.name, t);
            }
          }
        }, "component", e.componentAttrs, !1), n.$listeners))], 1);
      }), 1);
    }

    var U = B.exports;

    function X(t, e, n) {
      return e in t ? Object.defineProperty(t, e, {
        value: n,
        enumerable: !0,
        configurable: !0,
        writable: !0
      }) : t[e] = n, t;
    }

    I._withStripped = !0;
    var F = d({
      data: function () {
        return {
          modals: []
        };
      },
      created: function () {
        this.$root.__modalContainer = this;
      },
      mounted: function () {
        var t = this;
        this.$modal.subscription.$on("hide-all", function () {
          t.modals = [];
        });
      },
      methods: {
        add: function (t, e, n, i) {
          var o = this,
              r = 1 < arguments.length && void 0 !== e ? e : {},
              a = 2 < arguments.length && void 0 !== n ? n : {},
              s = 3 < arguments.length && void 0 !== i ? i : {},
              l = c(),
              u = a.name || "dynamic_modal_" + l;
          this.modals.push({
            id: l,
            modalAttrs: function (e) {
              for (var t = 1; t < arguments.length; t++) {
                var n = null != arguments[t] ? arguments[t] : {},
                    i = Object.keys(n);
                "function" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {
                  return Object.getOwnPropertyDescriptor(n, t).enumerable;
                }))), i.forEach(function (t) {
                  X(e, t, n[t]);
                });
              }

              return e;
            }({}, a, {
              name: u
            }),
            modalListeners: s,
            component: t,
            componentAttrs: r
          }), this.$nextTick(function () {
            o.$modal.show(u);
          });
        },
        remove: function (e) {
          var t = this.modals.findIndex(function (t) {
            return t.id === e;
          });
          -1 !== t && this.modals.splice(t, 1);
        }
      }
    }, I, [], !1, null, null, null);
    F.options.__file = "src/components/ModalsContainer.vue";
    var G = F.exports;

    function V(t) {
      return (V = "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 q(t, e, n) {
      return e in t ? Object.defineProperty(t, e, {
        value: n,
        enumerable: !0,
        configurable: !0,
        writable: !0
      }) : t[e] = n, t;
    }

    var K = function (i, t) {
      function o(t, e, n, i) {
        var o,
            r = 2 < arguments.length && void 0 !== n ? n : {},
            a = 3 < arguments.length ? i : void 0,
            s = null === (o = c.root) || void 0 === o ? void 0 : o.__modalContainer,
            l = u.dynamicDefaults || {};
        null != s && s.add(t, e, function (e) {
          for (var t = 1; t < arguments.length; t++) {
            var n = null != arguments[t] ? arguments[t] : {},
                i = Object.keys(n);
            "function" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {
              return Object.getOwnPropertyDescriptor(n, t).enumerable;
            }))), i.forEach(function (t) {
              q(e, t, n[t]);
            });
          }

          return e;
        }({}, l, r), a);
      }

      var u = 1 < arguments.length && void 0 !== t ? t : {},
          r = new i(),
          c = {
        root: null,
        componentName: u.componentName || "Modal"
      };
      return {
        context: c,
        subscription: r,
        show: function () {
          for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++) e[n] = arguments[n];

          var i = e[0];

          switch (V(i)) {
            case "string":
              (function (t, e) {
                r.$emit("toggle", t, !0, e);
              }).apply(void 0, e);
              break;

            case "object":
            case "function":
              o.apply(void 0, e);
              break;

            default:
              console.warn("[vue-js-modal] $modal() received an unsupported argument as a first argument.", i);
          }
        },
        hide: function (t, e) {
          r.$emit("toggle", t, !1, e);
        },
        hideAll: function () {
          r.$emit("hide-all");
        },
        toggle: function (t, e) {
          r.$emit("toggle", t, void 0, e);
        },
        setDynamicModalContainer: function (t) {
          c.root = t;
          var e,
              n = (e = document.createElement("div"), document.body.appendChild(e), e);
          new i({
            parent: t,
            render: function (t) {
              return t(G);
            }
          }).$mount(n);
        }
      };
    },
        Y = {
      install: function (e, t) {
        var n = 1 < arguments.length && void 0 !== t ? t : {};

        if (!e.prototype.$modal) {
          var i = new K(e, n);
          Object.defineProperty(e.prototype, "$modal", {
            get: function () {
              if (this instanceof e) {
                var t = this.$root;
                i.context.root || i.setDynamicModalContainer(t);
              }

              return i;
            }
          }), e.component(i.context.componentName, W), n.dialog && e.component("VDialog", U);
        }
      }
    },
        J = "__VERSION__";

    e.default = Y;
  }], o.c = i, o.d = function (t, e, n) {
    o.o(t, e) || Object.defineProperty(t, e, {
      enumerable: !0,
      get: n
    });
  }, o.r = function (t) {
    "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {
      value: "Module"
    }), Object.defineProperty(t, "__esModule", {
      value: !0
    });
  }, o.t = function (e, t) {
    if (1 & t && (e = o(e)), 8 & t) return e;
    if (4 & t && "object" == typeof e && e && e.__esModule) return e;
    var n = Object.create(null);
    if (o.r(n), Object.defineProperty(n, "default", {
      enumerable: !0,
      value: e
    }), 2 & t && "string" != typeof e) for (var i in e) o.d(n, i, function (t) {
      return e[t];
    }.bind(null, i));
    return n;
  }, o.n = function (t) {
    var e = t && t.__esModule ? function () {
      return t.default;
    } : function () {
      return t;
    };
    return o.d(e, "a", e), e;
  }, o.o = function (t, e) {
    return Object.prototype.hasOwnProperty.call(t, e);
  }, o.p = "/dist/", o(o.s = 13);

  function o(t) {
    if (i[t]) return i[t].exports;
    var e = i[t] = {
      i: t,
      l: !1,
      exports: {}
    };
    return n[t].call(e.exports, e, e.exports, o), e.l = !0, e.exports;
  }

  var n, i;
});

/***/ }),
/* 7 */
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__(23);

/***/ }),
/* 8 */
/***/ (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__(9);
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__(0).default
var update = add("5f2c79cf", content, true, {});

/***/ }),
/* 9 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 10 */
/***/ (function(module, exports) {

// shim for using process in browser
var process = module.exports = {}; // cached from whatever global is present so that test runners that stub it
// don't break things.  But we need to wrap it in a try catch in case it is
// wrapped in strict mode code which doesn't define any globals.  It's inside a
// function because try/catches deoptimize in certain engines.

var cachedSetTimeout;
var cachedClearTimeout;

function defaultSetTimout() {
  throw new Error('setTimeout has not been defined');
}

function defaultClearTimeout() {
  throw new Error('clearTimeout has not been defined');
}

(function () {
  try {
    if (typeof setTimeout === 'function') {
      cachedSetTimeout = setTimeout;
    } else {
      cachedSetTimeout = defaultSetTimout;
    }
  } catch (e) {
    cachedSetTimeout = defaultSetTimout;
  }

  try {
    if (typeof clearTimeout === 'function') {
      cachedClearTimeout = clearTimeout;
    } else {
      cachedClearTimeout = defaultClearTimeout;
    }
  } catch (e) {
    cachedClearTimeout = defaultClearTimeout;
  }
})();

function runTimeout(fun) {
  if (cachedSetTimeout === setTimeout) {
    //normal enviroments in sane situations
    return setTimeout(fun, 0);
  } // if setTimeout wasn't available but was latter defined


  if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
    cachedSetTimeout = setTimeout;
    return setTimeout(fun, 0);
  }

  try {
    // when when somebody has screwed with setTimeout but no I.E. maddness
    return cachedSetTimeout(fun, 0);
  } catch (e) {
    try {
      // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
      return cachedSetTimeout.call(null, fun, 0);
    } catch (e) {
      // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
      return cachedSetTimeout.call(this, fun, 0);
    }
  }
}

function runClearTimeout(marker) {
  if (cachedClearTimeout === clearTimeout) {
    //normal enviroments in sane situations
    return clearTimeout(marker);
  } // if clearTimeout wasn't available but was latter defined


  if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
    cachedClearTimeout = clearTimeout;
    return clearTimeout(marker);
  }

  try {
    // when when somebody has screwed with setTimeout but no I.E. maddness
    return cachedClearTimeout(marker);
  } catch (e) {
    try {
      // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
      return cachedClearTimeout.call(null, marker);
    } catch (e) {
      // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
      // Some versions of I.E. have different rules for clearTimeout vs setTimeout
      return cachedClearTimeout.call(this, marker);
    }
  }
}

var queue = [];
var draining = false;
var currentQueue;
var queueIndex = -1;

function cleanUpNextTick() {
  if (!draining || !currentQueue) {
    return;
  }

  draining = false;

  if (currentQueue.length) {
    queue = currentQueue.concat(queue);
  } else {
    queueIndex = -1;
  }

  if (queue.length) {
    drainQueue();
  }
}

function drainQueue() {
  if (draining) {
    return;
  }

  var timeout = runTimeout(cleanUpNextTick);
  draining = true;
  var len = queue.length;

  while (len) {
    currentQueue = queue;
    queue = [];

    while (++queueIndex < len) {
      if (currentQueue) {
        currentQueue[queueIndex].run();
      }
    }

    queueIndex = -1;
    len = queue.length;
  }

  currentQueue = null;
  draining = false;
  runClearTimeout(timeout);
}

process.nextTick = function (fun) {
  var args = new Array(arguments.length - 1);

  if (arguments.length > 1) {
    for (var i = 1; i < arguments.length; i++) {
      args[i - 1] = arguments[i];
    }
  }

  queue.push(new Item(fun, args));

  if (queue.length === 1 && !draining) {
    runTimeout(drainQueue);
  }
}; // v8 likes predictible objects


function Item(fun, array) {
  this.fun = fun;
  this.array = array;
}

Item.prototype.run = function () {
  this.fun.apply(null, this.array);
};

process.title = 'browser';
process.browser = true;
process.env = {};
process.argv = [];
process.version = ''; // empty string to avoid regexp issues

process.versions = {};

function noop() {}

process.on = noop;
process.addListener = noop;
process.once = noop;
process.off = noop;
process.removeListener = noop;
process.removeAllListeners = noop;
process.emit = noop;
process.prependListener = noop;
process.prependOnceListener = noop;

process.listeners = function (name) {
  return [];
};

process.binding = function (name) {
  throw new Error('process.binding is not supported');
};

process.cwd = function () {
  return '/';
};

process.chdir = function (dir) {
  throw new Error('process.chdir is not supported');
};

process.umask = function () {
  return 0;
};

/***/ }),
/* 11 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function bind(fn, thisArg) {
  return function wrap() {
    var args = new Array(arguments.length);

    for (var i = 0; i < args.length; i++) {
      args[i] = arguments[i];
    }

    return fn.apply(thisArg, args);
  };
};

/***/ }),
/* 12 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

function encode(val) {
  return encodeURIComponent(val).replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');
}
/**
 * Build a URL by appending params to the end
 *
 * @param {string} url The base of the url (e.g., http://www.google.com)
 * @param {object} [params] The params to be appended
 * @returns {string} The formatted url
 */


module.exports = function buildURL(url, params, paramsSerializer) {
  /*eslint no-param-reassign:0*/
  if (!params) {
    return url;
  }

  var serializedParams;

  if (paramsSerializer) {
    serializedParams = paramsSerializer(params);
  } else if (utils.isURLSearchParams(params)) {
    serializedParams = params.toString();
  } else {
    var parts = [];
    utils.forEach(params, function serialize(val, key) {
      if (val === null || typeof val === 'undefined') {
        return;
      }

      if (utils.isArray(val)) {
        key = key + '[]';
      } else {
        val = [val];
      }

      utils.forEach(val, function parseValue(v) {
        if (utils.isDate(v)) {
          v = v.toISOString();
        } else if (utils.isObject(v)) {
          v = JSON.stringify(v);
        }

        parts.push(encode(key) + '=' + encode(v));
      });
    });
    serializedParams = parts.join('&');
  }

  if (serializedParams) {
    var hashmarkIndex = url.indexOf('#');

    if (hashmarkIndex !== -1) {
      url = url.slice(0, hashmarkIndex);
    }

    url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
  }

  return url;
};

/***/ }),
/* 13 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function isCancel(value) {
  return !!(value && value.__CANCEL__);
};

/***/ }),
/* 14 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(process) {

var utils = __webpack_require__(1);

var normalizeHeaderName = __webpack_require__(28);

var DEFAULT_CONTENT_TYPE = {
  'Content-Type': 'application/x-www-form-urlencoded'
};

function setContentTypeIfUnset(headers, value) {
  if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {
    headers['Content-Type'] = value;
  }
}

function getDefaultAdapter() {
  var adapter;

  if (typeof XMLHttpRequest !== 'undefined') {
    // For browsers use XHR adapter
    adapter = __webpack_require__(15);
  } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {
    // For node use HTTP adapter
    adapter = __webpack_require__(15);
  }

  return adapter;
}

var defaults = {
  adapter: getDefaultAdapter(),
  transformRequest: [function transformRequest(data, headers) {
    normalizeHeaderName(headers, 'Accept');
    normalizeHeaderName(headers, 'Content-Type');

    if (utils.isFormData(data) || utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data)) {
      return data;
    }

    if (utils.isArrayBufferView(data)) {
      return data.buffer;
    }

    if (utils.isURLSearchParams(data)) {
      setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
      return data.toString();
    }

    if (utils.isObject(data)) {
      setContentTypeIfUnset(headers, 'application/json;charset=utf-8');
      return JSON.stringify(data);
    }

    return data;
  }],
  transformResponse: [function transformResponse(data) {
    /*eslint no-param-reassign:0*/
    if (typeof data === 'string') {
      try {
        data = JSON.parse(data);
      } catch (e) {
        /* Ignore */
      }
    }

    return data;
  }],

  /**
   * A timeout in milliseconds to abort a request. If set to 0 (default) a
   * timeout is not created.
   */
  timeout: 0,
  xsrfCookieName: 'XSRF-TOKEN',
  xsrfHeaderName: 'X-XSRF-TOKEN',
  maxContentLength: -1,
  maxBodyLength: -1,
  validateStatus: function validateStatus(status) {
    return status >= 200 && status < 300;
  }
};
defaults.headers = {
  common: {
    'Accept': 'application/json, text/plain, */*'
  }
};
utils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {
  defaults.headers[method] = {};
});
utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
  defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);
});
module.exports = defaults;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(10)))

/***/ }),
/* 15 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

var settle = __webpack_require__(29);

var cookies = __webpack_require__(31);

var buildURL = __webpack_require__(12);

var buildFullPath = __webpack_require__(32);

var parseHeaders = __webpack_require__(35);

var isURLSameOrigin = __webpack_require__(36);

var createError = __webpack_require__(16);

module.exports = function xhrAdapter(config) {
  return new Promise(function dispatchXhrRequest(resolve, reject) {
    var requestData = config.data;
    var requestHeaders = config.headers;

    if (utils.isFormData(requestData)) {
      delete requestHeaders['Content-Type']; // Let the browser set it
    }

    var request = new XMLHttpRequest(); // HTTP basic authentication

    if (config.auth) {
      var username = config.auth.username || '';
      var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';
      requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
    }

    var fullPath = buildFullPath(config.baseURL, config.url);
    request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true); // Set the request timeout in MS

    request.timeout = config.timeout; // Listen for ready state

    request.onreadystatechange = function handleLoad() {
      if (!request || request.readyState !== 4) {
        return;
      } // The request errored out and we didn't get a response, this will be
      // handled by onerror instead
      // With one exception: request that using file: protocol, most browsers
      // will return status as 0 even though it's a successful request


      if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
        return;
      } // Prepare the response


      var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
      var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
      var response = {
        data: responseData,
        status: request.status,
        statusText: request.statusText,
        headers: responseHeaders,
        config: config,
        request: request
      };
      settle(resolve, reject, response); // Clean up request

      request = null;
    }; // Handle browser request cancellation (as opposed to a manual cancellation)


    request.onabort = function handleAbort() {
      if (!request) {
        return;
      }

      reject(createError('Request aborted', config, 'ECONNABORTED', request)); // Clean up request

      request = null;
    }; // Handle low level network errors


    request.onerror = function handleError() {
      // Real errors are hidden from us by the browser
      // onerror should only fire if it's a network error
      reject(createError('Network Error', config, null, request)); // Clean up request

      request = null;
    }; // Handle timeout


    request.ontimeout = function handleTimeout() {
      var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';

      if (config.timeoutErrorMessage) {
        timeoutErrorMessage = config.timeoutErrorMessage;
      }

      reject(createError(timeoutErrorMessage, config, 'ECONNABORTED', request)); // Clean up request

      request = null;
    }; // Add xsrf header
    // This is only done if running in a standard browser environment.
    // Specifically not if we're in a web worker, or react-native.


    if (utils.isStandardBrowserEnv()) {
      // Add xsrf header
      var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined;

      if (xsrfValue) {
        requestHeaders[config.xsrfHeaderName] = xsrfValue;
      }
    } // Add headers to the request


    if ('setRequestHeader' in request) {
      utils.forEach(requestHeaders, function setRequestHeader(val, key) {
        if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
          // Remove Content-Type if data is undefined
          delete requestHeaders[key];
        } else {
          // Otherwise add header to the request
          request.setRequestHeader(key, val);
        }
      });
    } // Add withCredentials to request if needed


    if (!utils.isUndefined(config.withCredentials)) {
      request.withCredentials = !!config.withCredentials;
    } // Add responseType to request if needed


    if (config.responseType) {
      try {
        request.responseType = config.responseType;
      } catch (e) {
        // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.
        // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.
        if (config.responseType !== 'json') {
          throw e;
        }
      }
    } // Handle progress if needed


    if (typeof config.onDownloadProgress === 'function') {
      request.addEventListener('progress', config.onDownloadProgress);
    } // Not all browsers support upload events


    if (typeof config.onUploadProgress === 'function' && request.upload) {
      request.upload.addEventListener('progress', config.onUploadProgress);
    }

    if (config.cancelToken) {
      // Handle cancellation
      config.cancelToken.promise.then(function onCanceled(cancel) {
        if (!request) {
          return;
        }

        request.abort();
        reject(cancel); // Clean up request

        request = null;
      });
    }

    if (!requestData) {
      requestData = null;
    } // Send the request


    request.send(requestData);
  });
};

/***/ }),
/* 16 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var enhanceError = __webpack_require__(30);
/**
 * Create an Error with the specified message, config, error code, request and response.
 *
 * @param {string} message The error message.
 * @param {Object} config The config.
 * @param {string} [code] The error code (for example, 'ECONNABORTED').
 * @param {Object} [request] The request.
 * @param {Object} [response] The response.
 * @returns {Error} The created error.
 */


module.exports = function createError(message, config, code, request, response) {
  var error = new Error(message);
  return enhanceError(error, config, code, request, response);
};

/***/ }),
/* 17 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);
/**
 * Config-specific merge-function which creates a new config-object
 * by merging two configuration objects together.
 *
 * @param {Object} config1
 * @param {Object} config2
 * @returns {Object} New object resulting from merging config2 to config1
 */


module.exports = function mergeConfig(config1, config2) {
  // eslint-disable-next-line no-param-reassign
  config2 = config2 || {};
  var config = {};
  var valueFromConfig2Keys = ['url', 'method', 'data'];
  var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];
  var defaultToConfig2Keys = ['baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer', 'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName', 'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress', 'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent', 'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'];
  var directMergeKeys = ['validateStatus'];

  function getMergedValue(target, source) {
    if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
      return utils.merge(target, source);
    } else if (utils.isPlainObject(source)) {
      return utils.merge({}, source);
    } else if (utils.isArray(source)) {
      return source.slice();
    }

    return source;
  }

  function mergeDeepProperties(prop) {
    if (!utils.isUndefined(config2[prop])) {
      config[prop] = getMergedValue(config1[prop], config2[prop]);
    } else if (!utils.isUndefined(config1[prop])) {
      config[prop] = getMergedValue(undefined, config1[prop]);
    }
  }

  utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {
    if (!utils.isUndefined(config2[prop])) {
      config[prop] = getMergedValue(undefined, config2[prop]);
    }
  });
  utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);
  utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {
    if (!utils.isUndefined(config2[prop])) {
      config[prop] = getMergedValue(undefined, config2[prop]);
    } else if (!utils.isUndefined(config1[prop])) {
      config[prop] = getMergedValue(undefined, config1[prop]);
    }
  });
  utils.forEach(directMergeKeys, function merge(prop) {
    if (prop in config2) {
      config[prop] = getMergedValue(config1[prop], config2[prop]);
    } else if (prop in config1) {
      config[prop] = getMergedValue(undefined, config1[prop]);
    }
  });
  var axiosKeys = valueFromConfig2Keys.concat(mergeDeepPropertiesKeys).concat(defaultToConfig2Keys).concat(directMergeKeys);
  var otherKeys = Object.keys(config1).concat(Object.keys(config2)).filter(function filterAxiosKeys(key) {
    return axiosKeys.indexOf(key) === -1;
  });
  utils.forEach(otherKeys, mergeDeepProperties);
  return config;
};

/***/ }),
/* 18 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

/**
 * A `Cancel` is an object that is thrown when an operation is canceled.
 *
 * @class
 * @param {string=} message The message.
 */

function Cancel(message) {
  this.message = message;
}

Cancel.prototype.toString = function toString() {
  return 'Cancel' + (this.message ? ': ' + this.message : '');
};

Cancel.prototype.__CANCEL__ = true;
module.exports = Cancel;

/***/ }),
/* 19 */
/***/ (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;

/***/ }),
/* 20 */
/***/ (function(module, exports, __webpack_require__) {

/*!
 * vue-simple-spinner v1.2.10 (https://github.com/dzwillia/vue-simple-spinner)
 * (c) 2018 David Z. Williams
 * Released under the MIT License.
 */
(function webpackUniversalModuleDefinition(root, factory) {
  if (true) module.exports = factory();else {}
})(this, function () {
  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, {
            /******/
            configurable: false,

            /******/
            enumerable: true,

            /******/
            get: getter
            /******/

          });
          /******/
        }
        /******/

      };
      /******/

      /******/
      // 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 = 0);
      /******/
    }(
    /************************************************************************/

    /******/
    [
    /* 0 */

    /***/
    function (module, exports, __webpack_require__) {
      "use strict";

      Object.defineProperty(exports, "__esModule", {
        value: true
      });
      exports.VueSimpleSpinner = undefined;

      var _Spinner = __webpack_require__(1);

      var _Spinner2 = _interopRequireDefault(_Spinner);

      function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
          default: obj
        };
      }

      if (typeof window !== 'undefined' && window.Vue) {
        Vue.component('vue-simple-spinner', _Spinner2.default);
      }

      exports.VueSimpleSpinner = _Spinner2.default;
      exports.default = _Spinner2.default;
      /***/
    },
    /* 1 */

    /***/
    function (module, exports, __webpack_require__) {
      /* styles */
      __webpack_require__(2);

      var Component = __webpack_require__(7)(
      /* script */
      __webpack_require__(8),
      /* template */
      __webpack_require__(9),
      /* scopeId */
      null,
      /* cssModules */
      null);

      module.exports = Component.exports;
      /***/
    },
    /* 2 */

    /***/
    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__(3);

      if (typeof content === 'string') content = [[module.i, content, '']];
      if (content.locals) module.exports = content.locals; // add the styles to the DOM

      var update = __webpack_require__(5)("d89557e4", content, true);
      /***/

    },
    /* 3 */

    /***/
    function (module, exports, __webpack_require__) {
      exports = module.exports = __webpack_require__(4)(); // imports
      // module

      exports.push([module.i, ".vue-simple-spinner{transition:all .3s linear}@keyframes vue-simple-spinner-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}", ""]); // exports

      /***/
    },
    /* 4 */

    /***/
    function (module, exports) {
      /*
      	MIT License http://www.opensource.org/licenses/mit-license.php
      	Author Tobias Koppers @sokra
      */
      // css base code, injected by the css-loader
      module.exports = function () {
        var list = []; // return the list of modules as css string

        list.toString = function toString() {
          var result = [];

          for (var i = 0; i < this.length; i++) {
            var item = this[i];

            if (item[2]) {
              result.push("@media " + item[2] + "{" + item[1] + "}");
            } else {
              result.push(item[1]);
            }
          }

          return result.join("");
        }; // import a list of modules into the list


        list.i = function (modules, mediaQuery) {
          if (typeof modules === "string") modules = [[null, modules, ""]];
          var alreadyImportedModules = {};

          for (var i = 0; i < this.length; i++) {
            var id = this[i][0];
            if (typeof id === "number") alreadyImportedModules[id] = true;
          }

          for (i = 0; i < modules.length; i++) {
            var item = modules[i]; // skip already imported module
            // this implementation is not 100% perfect for weird media query combinations
            //  when a module is imported multiple times with different media queries.
            //  I hope this will never occur (Hey this way we have smaller bundles)

            if (typeof item[0] !== "number" || !alreadyImportedModules[item[0]]) {
              if (mediaQuery && !item[2]) {
                item[2] = mediaQuery;
              } else if (mediaQuery) {
                item[2] = "(" + item[2] + ") and (" + mediaQuery + ")";
              }

              list.push(item);
            }
          }
        };

        return list;
      };
      /***/

    },
    /* 5 */

    /***/
    function (module, exports, __webpack_require__) {
      /*
        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.");
        }
      }

      var listToStyles = __webpack_require__(6);
      /*
      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 () {}; // 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());

      module.exports = function (parentId, list, _isProduction) {
        isProduction = _isProduction;
        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[data-vue-ssr-id~="' + 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 (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));
        }
      }
      /***/

    },
    /* 6 */

    /***/
    function (module, exports) {
      /**
       * Translates the list format produced by css-loader into something
       * easier to manipulate.
       */
      module.exports = 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;
      };
      /***/

    },
    /* 7 */

    /***/
    function (module, exports) {
      // this module is a runtime utility for cleaner component module output and will
      // be included in the final webpack user bundle
      module.exports = function normalizeComponent(rawScriptExports, compiledTemplate, scopeId, cssModules) {
        var esModule;
        var scriptExports = rawScriptExports = rawScriptExports || {}; // ES6 modules interop

        var type = typeof rawScriptExports.default;

        if (type === 'object' || type === 'function') {
          esModule = rawScriptExports;
          scriptExports = rawScriptExports.default;
        } // Vue.extend constructor export interop


        var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports; // render functions

        if (compiledTemplate) {
          options.render = compiledTemplate.render;
          options.staticRenderFns = compiledTemplate.staticRenderFns;
        } // scopedId


        if (scopeId) {
          options._scopeId = scopeId;
        } // inject cssModules


        if (cssModules) {
          var computed = Object.create(options.computed || null);
          Object.keys(cssModules).forEach(function (key) {
            var module = cssModules[key];

            computed[key] = function () {
              return module;
            };
          });
          options.computed = computed;
        }

        return {
          esModule: esModule,
          exports: scriptExports,
          options: options
        };
      };
      /***/

    },
    /* 8 */

    /***/
    function (module, exports, __webpack_require__) {
      "use strict";

      Object.defineProperty(exports, "__esModule", {
        value: true
      });

      var isNumber = function isNumber(n) {
        return !isNaN(parseFloat(n)) && isFinite(n);
      };

      exports.default = {
        props: {
          'size': {
            default: 32
          },
          'line-size': {
            type: Number,
            default: 3
          },
          'line-bg-color': {
            type: String,
            default: '#eee'
          },
          'line-fg-color': {
            type: String,
            default: '#2196f3'
          },
          'speed': {
            type: Number,
            default: 0.8
          },
          'spacing': {
            type: Number,
            default: 4
          },
          'message': {
            type: String,
            default: ''
          },
          'font-size': {
            type: Number,
            default: 13
          },
          'text-fg-color': {
            type: String,
            default: '#555'
          }
        },
        computed: {
          size_px: function size_px() {
            switch (this.size) {
              case 'tiny':
                return 12;

              case 'small':
                return 16;

              case 'medium':
                return 32;

              case 'large':
                return 48;

              case 'big':
                return 64;

              case 'huge':
                return 96;

              case 'massive':
                return 128;
            }

            return isNumber(this.size) ? this.size : 32;
          },
          line_size_px: function line_size_px() {
            switch (this.size) {
              case 'tiny':
                return 1;

              case 'small':
                return 2;

              case 'medium':
                return 3;

              case 'large':
                return 3;

              case 'big':
                return 4;

              case 'huge':
                return 4;

              case 'massive':
                return 5;
            }

            return isNumber(this.lineSize) ? this.lineSize : 4;
          },
          text_margin_top: function text_margin_top() {
            switch (this.size) {
              case 'tiny':
              case 'small':
              case 'medium':
              case 'large':
              case 'big':
              case 'huge':
              case 'massive':
                return Math.min(Math.max(Math.ceil(this.size_px / 8), 3), 12);
            }

            return isNumber(this.spacing) ? this.spacing : 4;
          },
          text_font_size: function text_font_size() {
            switch (this.size) {
              case 'tiny':
              case 'small':
              case 'medium':
              case 'large':
              case 'big':
              case 'huge':
              case 'massive':
                return Math.min(Math.max(Math.ceil(this.size_px * 0.4), 11), 32);
            }

            return isNumber(this.fontSize) ? this.fontSize : 13;
          },
          spinner_style: function spinner_style() {
            return {
              'margin': '0 auto',
              'border-radius': '100%',
              'border': this.line_size_px + 'px solid ' + this.lineBgColor,
              'border-top': this.line_size_px + 'px solid ' + this.lineFgColor,
              'width': this.size_px + 'px',
              'height': this.size_px + 'px',
              'animation': 'vue-simple-spinner-spin ' + this.speed + 's linear infinite'
            };
          },
          text_style: function text_style() {
            return {
              'margin-top': this.text_margin_top + 'px',
              'color': this.textFgColor,
              'font-size': this.text_font_size + 'px',
              'text-align': 'center'
            };
          }
        }
      };
      /***/
    },
    /* 9 */

    /***/
    function (module, exports) {
      module.exports = {
        render: function () {
          var _vm = this;

          var _h = _vm.$createElement;

          var _c = _vm._self._c || _h;

          return _c('div', [_c('div', {
            staticClass: "vue-simple-spinner",
            style: _vm.spinner_style
          }), _vm._v(" "), _vm.message.length > 0 ? _c('div', {
            staticClass: "vue-simple-spinner-text",
            style: _vm.text_style
          }, [_vm._v(_vm._s(_vm.message))]) : _vm._e()]);
        },
        staticRenderFns: []
      };
      /***/
    }
    /******/
    ])["default"]
  );
});

/***/ }),
/* 21 */
/***/ (function(module) {

module.exports = JSON.parse("{\"name\":\"web\",\"version\":\"1.28.2\",\"description\":\"\",\"main\":\"src/main.js\",\"scripts\":{\"install-deps\":\"npm i && cd ../core && npm run install-deps\",\"build-dev-backend\":\"tsc\",\"build-dev-frontend\":\"NODE_OPTIONS=--max_old_space_size=2048 webpack -d --mode development --progress --colors --bail\",\"build-dev\":\"npm run build-dev-backend && npm run build-dev-frontend\",\"start-dev\":\"node --inspect=9230 src/main.js\",\"start-dev-watch\":\"nodemon --inspect=9230\",\"start-dev-nocvedcu\":\"./scripts/run-with-env.sh\",\"build-production-backend\":\"tsc\",\"build-production-frontend\":\"NODE_OPTIONS=--max_old_space_size=2048 webpack -p --mode production --progress --colors --bail\",\"build-production\":\"npm run build-production-backend && npm run build-production-frontend\",\"start-production\":\"pm2-runtime start pm2.docker.config.js\",\"lint\":\"eslint . --ext .ts,.vue\",\"reformat\":\"npx pretty-quick\"},\"browserslist\":[\"defaults\"],\"author\":\"\",\"license\":\"ISC\",\"dependencies\":{\"@babel/core\":\"^7.12.3\",\"@babel/preset-env\":\"^7.12.1\",\"@fancyapps/fancybox\":\"^3.5.7\",\"@koa/cors\":\"^3.1.0\",\"@koa/router\":\"^10.0.0\",\"@popperjs/core\":\"^2.5.4\",\"@splidejs/splide\":\"^2.4.14\",\"@types/fs-extra\":\"^9.0.3\",\"@types/joi\":\"^14.3.4\",\"@types/koa\":\"^2.11.6\",\"@types/koa-router\":\"^7.4.1\",\"@types/leaflet\":\"^1.5.19\",\"@types/lodash\":\"^4.14.164\",\"@types/node\":\"^12.12.54\",\"@types/pdfjs-dist\":\"^2.1.6\",\"@types/superagent\":\"^4.1.10\",\"animated-number-vue\":\"^1.0.0\",\"autoprefixer\":\"^10.0.1\",\"axios\":\"^0.21.0\",\"babel-loader\":\"^8.1.0\",\"bootstrap\":\"^4.5.3\",\"bootstrap-vue\":\"^2.18.1\",\"class-transformer\":\"^0.3.1\",\"content-security-policy-builder\":\"^2.1.0\",\"copy-webpack-plugin\":\"^6.3.0\",\"core\":\"file:../core\",\"cron\":\"^1.8.2\",\"css-loader\":\"^5.0.1\",\"css-minimizer-webpack-plugin\":\"^1.1.5\",\"ellipsize\":\"^0.1.0\",\"express\":\"^4.17.1\",\"file-loader\":\"^6.2.0\",\"file-type\":\"^16.0.1\",\"fs-extra\":\"^9.0.1\",\"gelf-pro\":\"^1.3.4\",\"hard-source-webpack-plugin\":\"^0.13.1\",\"inversify\":\"^5.0.1\",\"joi\":\"^17.3.0\",\"jquery\":\"^3.5.1\",\"koa\":\"^2.13.0\",\"koa-bodyparser\":\"^4.3.0\",\"koa-favicon\":\"^2.1.0\",\"koa-helmet\":\"^6.0.0\",\"koa-morgan\":\"^1.0.1\",\"koa-mount\":\"^4.0.0\",\"koa-passport\":\"^4.1.3\",\"koa-pug\":\"^4.0.4\",\"koa-router\":\"^10.0.0\",\"koa-session\":\"^6.1.0\",\"koa-static\":\"^5.0.0\",\"leaflet\":\"^1.7.1\",\"lodash\":\"^4.17.20\",\"memorystream\":\"^0.3.1\",\"mime-types\":\"^2.1.27\",\"mini-css-extract-plugin\":\"^1.2.1\",\"moment\":\"^2.29.1\",\"moment-timezone\":\"^0.5.31\",\"morgan\":\"^1.10.0\",\"normalize-url\":\"^5.3.0\",\"passport-local\":\"^1.0.0\",\"path\":\"^0.12.7\",\"pdfjs-dist\":\"^2.5.207\",\"plyr\":\"^3.6.2\",\"postcss\":\"^8.1.4\",\"postcss-clean\":\"^1.1.0\",\"postcss-custom-properties\":\"^10.0.0\",\"postcss-import\":\"^13.0.0\",\"postcss-inherit\":\"^4.1.0\",\"postcss-loader\":\"^4.0.4\",\"postcss-nested\":\"^5.0.1\",\"postcss-preset-env\":\"^6.7.0\",\"postcss-url\":\"^10.1.0\",\"pretty-error\":\"^2.1.2\",\"random-string\":\"^0.2.0\",\"reflect-metadata\":\"^0.1.13\",\"resolve-url-loader\":\"^2.3.2\",\"serialize-error\":\"^7.0.1\",\"signale\":\"^1.4.0\",\"slug\":\"^4.0.2\",\"ts-loader\":\"^8.0.9\",\"typescript\":\"^4.0.5\",\"url\":\"^0.11.0\",\"url-join\":\"^4.0.1\",\"uuid\":\"^8.3.1\",\"vue\":\"^2.6.12\",\"vue-js-modal\":\"^2.0.0-rc.6\",\"vue-loader\":\"^15.9.5\",\"vue-simple-spinner\":\"^1.2.10\",\"vue-style-loader\":\"^4.1.2\",\"vue-template-compiler\":\"^2.6.12\",\"vuex\":\"^3.5.1\",\"vuex-persistedstate\":\"^3.1.0\",\"webpack\":\"^4.44.1\",\"webpack-cli\":\"^3.3.12\"},\"devDependencies\":{\"@prettier/plugin-pug\":\"^1.10.1\",\"@typescript-eslint/eslint-plugin\":\"^4.6.1\",\"@typescript-eslint/parser\":\"^4.6.1\",\"eslint\":\"^7.12.1\",\"eslint-config-prettier\":\"^6.15.0\",\"eslint-plugin-prettier\":\"^3.1.4\",\"eslint-plugin-vue\":\"^7.1.0\",\"nodemon\":\"^2.0.6\",\"npm\":\"^6.14.8\",\"vue-eslint-parser\":\"^7.1.1\"}}");

/***/ }),
/* 22 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseResponse = void 0;
class BaseResponse {
    constructor(code, message, statusCode = 200) {
        this.code = code;
        this.message = message;
        this.statusCode = statusCode;
    }
}
exports.BaseResponse = BaseResponse;


/***/ }),
/* 23 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

var bind = __webpack_require__(11);

var Axios = __webpack_require__(24);

var mergeConfig = __webpack_require__(17);

var defaults = __webpack_require__(14);
/**
 * Create an instance of Axios
 *
 * @param {Object} defaultConfig The default config for the instance
 * @return {Axios} A new instance of Axios
 */


function createInstance(defaultConfig) {
  var context = new Axios(defaultConfig);
  var instance = bind(Axios.prototype.request, context); // Copy axios.prototype to instance

  utils.extend(instance, Axios.prototype, context); // Copy context to instance

  utils.extend(instance, context);
  return instance;
} // Create the default instance to be exported


var axios = createInstance(defaults); // Expose Axios class to allow class inheritance

axios.Axios = Axios; // Factory for creating new instances

axios.create = function create(instanceConfig) {
  return createInstance(mergeConfig(axios.defaults, instanceConfig));
}; // Expose Cancel & CancelToken


axios.Cancel = __webpack_require__(18);
axios.CancelToken = __webpack_require__(37);
axios.isCancel = __webpack_require__(13); // Expose all/spread

axios.all = function all(promises) {
  return Promise.all(promises);
};

axios.spread = __webpack_require__(38);
module.exports = axios; // Allow use of default import syntax in TypeScript

module.exports.default = axios;

/***/ }),
/* 24 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

var buildURL = __webpack_require__(12);

var InterceptorManager = __webpack_require__(25);

var dispatchRequest = __webpack_require__(26);

var mergeConfig = __webpack_require__(17);
/**
 * Create a new instance of Axios
 *
 * @param {Object} instanceConfig The default config for the instance
 */


function Axios(instanceConfig) {
  this.defaults = instanceConfig;
  this.interceptors = {
    request: new InterceptorManager(),
    response: new InterceptorManager()
  };
}
/**
 * Dispatch a request
 *
 * @param {Object} config The config specific for this request (merged with this.defaults)
 */


Axios.prototype.request = function request(config) {
  /*eslint no-param-reassign:0*/
  // Allow for axios('example/url'[, config]) a la fetch API
  if (typeof config === 'string') {
    config = arguments[1] || {};
    config.url = arguments[0];
  } else {
    config = config || {};
  }

  config = mergeConfig(this.defaults, config); // Set config.method

  if (config.method) {
    config.method = config.method.toLowerCase();
  } else if (this.defaults.method) {
    config.method = this.defaults.method.toLowerCase();
  } else {
    config.method = 'get';
  } // Hook up interceptors middleware


  var chain = [dispatchRequest, undefined];
  var promise = Promise.resolve(config);
  this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
    chain.unshift(interceptor.fulfilled, interceptor.rejected);
  });
  this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
    chain.push(interceptor.fulfilled, interceptor.rejected);
  });

  while (chain.length) {
    promise = promise.then(chain.shift(), chain.shift());
  }

  return promise;
};

Axios.prototype.getUri = function getUri(config) {
  config = mergeConfig(this.defaults, config);
  return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\?/, '');
}; // Provide aliases for supported request methods


utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {
  /*eslint func-names:0*/
  Axios.prototype[method] = function (url, config) {
    return this.request(mergeConfig(config || {}, {
      method: method,
      url: url,
      data: (config || {}).data
    }));
  };
});
utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
  /*eslint func-names:0*/
  Axios.prototype[method] = function (url, data, config) {
    return this.request(mergeConfig(config || {}, {
      method: method,
      url: url,
      data: data
    }));
  };
});
module.exports = Axios;

/***/ }),
/* 25 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

function InterceptorManager() {
  this.handlers = [];
}
/**
 * Add a new interceptor to the stack
 *
 * @param {Function} fulfilled The function to handle `then` for a `Promise`
 * @param {Function} rejected The function to handle `reject` for a `Promise`
 *
 * @return {Number} An ID used to remove interceptor later
 */


InterceptorManager.prototype.use = function use(fulfilled, rejected) {
  this.handlers.push({
    fulfilled: fulfilled,
    rejected: rejected
  });
  return this.handlers.length - 1;
};
/**
 * Remove an interceptor from the stack
 *
 * @param {Number} id The ID that was returned by `use`
 */


InterceptorManager.prototype.eject = function eject(id) {
  if (this.handlers[id]) {
    this.handlers[id] = null;
  }
};
/**
 * Iterate over all the registered interceptors
 *
 * This method is particularly useful for skipping over any
 * interceptors that may have become `null` calling `eject`.
 *
 * @param {Function} fn The function to call for each interceptor
 */


InterceptorManager.prototype.forEach = function forEach(fn) {
  utils.forEach(this.handlers, function forEachHandler(h) {
    if (h !== null) {
      fn(h);
    }
  });
};

module.exports = InterceptorManager;

/***/ }),
/* 26 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

var transformData = __webpack_require__(27);

var isCancel = __webpack_require__(13);

var defaults = __webpack_require__(14);
/**
 * Throws a `Cancel` if cancellation has been requested.
 */


function throwIfCancellationRequested(config) {
  if (config.cancelToken) {
    config.cancelToken.throwIfRequested();
  }
}
/**
 * Dispatch a request to the server using the configured adapter.
 *
 * @param {object} config The config that is to be used for the request
 * @returns {Promise} The Promise to be fulfilled
 */


module.exports = function dispatchRequest(config) {
  throwIfCancellationRequested(config); // Ensure headers exist

  config.headers = config.headers || {}; // Transform request data

  config.data = transformData(config.data, config.headers, config.transformRequest); // Flatten headers

  config.headers = utils.merge(config.headers.common || {}, config.headers[config.method] || {}, config.headers);
  utils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch', 'common'], function cleanHeaderConfig(method) {
    delete config.headers[method];
  });
  var adapter = config.adapter || defaults.adapter;
  return adapter(config).then(function onAdapterResolution(response) {
    throwIfCancellationRequested(config); // Transform response data

    response.data = transformData(response.data, response.headers, config.transformResponse);
    return response;
  }, function onAdapterRejection(reason) {
    if (!isCancel(reason)) {
      throwIfCancellationRequested(config); // Transform response data

      if (reason && reason.response) {
        reason.response.data = transformData(reason.response.data, reason.response.headers, config.transformResponse);
      }
    }

    return Promise.reject(reason);
  });
};

/***/ }),
/* 27 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);
/**
 * Transform the data for a request or a response
 *
 * @param {Object|String} data The data to be transformed
 * @param {Array} headers The headers for the request or response
 * @param {Array|Function} fns A single function or Array of functions
 * @returns {*} The resulting transformed data
 */


module.exports = function transformData(data, headers, fns) {
  /*eslint no-param-reassign:0*/
  utils.forEach(fns, function transform(fn) {
    data = fn(data, headers);
  });
  return data;
};

/***/ }),
/* 28 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

module.exports = function normalizeHeaderName(headers, normalizedName) {
  utils.forEach(headers, function processHeader(value, name) {
    if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {
      headers[normalizedName] = value;
      delete headers[name];
    }
  });
};

/***/ }),
/* 29 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var createError = __webpack_require__(16);
/**
 * Resolve or reject a Promise based on response status.
 *
 * @param {Function} resolve A function that resolves the promise.
 * @param {Function} reject A function that rejects the promise.
 * @param {object} response The response.
 */


module.exports = function settle(resolve, reject, response) {
  var validateStatus = response.config.validateStatus;

  if (!response.status || !validateStatus || validateStatus(response.status)) {
    resolve(response);
  } else {
    reject(createError('Request failed with status code ' + response.status, response.config, null, response.request, response));
  }
};

/***/ }),
/* 30 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

/**
 * Update an Error with the specified config, error code, and response.
 *
 * @param {Error} error The error to update.
 * @param {Object} config The config.
 * @param {string} [code] The error code (for example, 'ECONNABORTED').
 * @param {Object} [request] The request.
 * @param {Object} [response] The response.
 * @returns {Error} The error.
 */

module.exports = function enhanceError(error, config, code, request, response) {
  error.config = config;

  if (code) {
    error.code = code;
  }

  error.request = request;
  error.response = response;
  error.isAxiosError = true;

  error.toJSON = function toJSON() {
    return {
      // Standard
      message: this.message,
      name: this.name,
      // Microsoft
      description: this.description,
      number: this.number,
      // Mozilla
      fileName: this.fileName,
      lineNumber: this.lineNumber,
      columnNumber: this.columnNumber,
      stack: this.stack,
      // Axios
      config: this.config,
      code: this.code
    };
  };

  return error;
};

/***/ }),
/* 31 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

module.exports = utils.isStandardBrowserEnv() ? // Standard browser envs support document.cookie
function standardBrowserEnv() {
  return {
    write: function write(name, value, expires, path, domain, secure) {
      var cookie = [];
      cookie.push(name + '=' + encodeURIComponent(value));

      if (utils.isNumber(expires)) {
        cookie.push('expires=' + new Date(expires).toGMTString());
      }

      if (utils.isString(path)) {
        cookie.push('path=' + path);
      }

      if (utils.isString(domain)) {
        cookie.push('domain=' + domain);
      }

      if (secure === true) {
        cookie.push('secure');
      }

      document.cookie = cookie.join('; ');
    },
    read: function read(name) {
      var match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));
      return match ? decodeURIComponent(match[3]) : null;
    },
    remove: function remove(name) {
      this.write(name, '', Date.now() - 86400000);
    }
  };
}() : // Non standard browser env (web workers, react-native) lack needed support.
function nonStandardBrowserEnv() {
  return {
    write: function write() {},
    read: function read() {
      return null;
    },
    remove: function remove() {}
  };
}();

/***/ }),
/* 32 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var isAbsoluteURL = __webpack_require__(33);

var combineURLs = __webpack_require__(34);
/**
 * Creates a new URL by combining the baseURL with the requestedURL,
 * only when the requestedURL is not already an absolute URL.
 * If the requestURL is absolute, this function returns the requestedURL untouched.
 *
 * @param {string} baseURL The base URL
 * @param {string} requestedURL Absolute or relative URL to combine
 * @returns {string} The combined full path
 */


module.exports = function buildFullPath(baseURL, requestedURL) {
  if (baseURL && !isAbsoluteURL(requestedURL)) {
    return combineURLs(baseURL, requestedURL);
  }

  return requestedURL;
};

/***/ }),
/* 33 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

/**
 * Determines whether the specified URL is absolute
 *
 * @param {string} url The URL to test
 * @returns {boolean} True if the specified URL is absolute, otherwise false
 */

module.exports = function isAbsoluteURL(url) {
  // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
  // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
  // by any combination of letters, digits, plus, period, or hyphen.
  return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);
};

/***/ }),
/* 34 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

/**
 * Creates a new URL by combining the specified URLs
 *
 * @param {string} baseURL The base URL
 * @param {string} relativeURL The relative URL
 * @returns {string} The combined URL
 */

module.exports = function combineURLs(baseURL, relativeURL) {
  return relativeURL ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '') : baseURL;
};

/***/ }),
/* 35 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1); // Headers whose duplicates are ignored by node
// c.f. https://nodejs.org/api/http.html#http_message_headers


var ignoreDuplicateOf = ['age', 'authorization', 'content-length', 'content-type', 'etag', 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since', 'last-modified', 'location', 'max-forwards', 'proxy-authorization', 'referer', 'retry-after', 'user-agent'];
/**
 * Parse headers into an object
 *
 * ```
 * Date: Wed, 27 Aug 2014 08:58:49 GMT
 * Content-Type: application/json
 * Connection: keep-alive
 * Transfer-Encoding: chunked
 * ```
 *
 * @param {String} headers Headers needing to be parsed
 * @returns {Object} Headers parsed into an object
 */

module.exports = function parseHeaders(headers) {
  var parsed = {};
  var key;
  var val;
  var i;

  if (!headers) {
    return parsed;
  }

  utils.forEach(headers.split('\n'), function parser(line) {
    i = line.indexOf(':');
    key = utils.trim(line.substr(0, i)).toLowerCase();
    val = utils.trim(line.substr(i + 1));

    if (key) {
      if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {
        return;
      }

      if (key === 'set-cookie') {
        parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);
      } else {
        parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;
      }
    }
  });
  return parsed;
};

/***/ }),
/* 36 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(1);

module.exports = utils.isStandardBrowserEnv() ? // Standard browser envs have full support of the APIs needed to test
// whether the request URL is of the same origin as current location.
function standardBrowserEnv() {
  var msie = /(msie|trident)/i.test(navigator.userAgent);
  var urlParsingNode = document.createElement('a');
  var originURL;
  /**
  * Parse a URL to discover it's components
  *
  * @param {String} url The URL to be parsed
  * @returns {Object}
  */

  function resolveURL(url) {
    var href = url;

    if (msie) {
      // IE needs attribute set twice to normalize properties
      urlParsingNode.setAttribute('href', href);
      href = urlParsingNode.href;
    }

    urlParsingNode.setAttribute('href', href); // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils

    return {
      href: urlParsingNode.href,
      protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
      host: urlParsingNode.host,
      search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
      hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
      hostname: urlParsingNode.hostname,
      port: urlParsingNode.port,
      pathname: urlParsingNode.pathname.charAt(0) === '/' ? urlParsingNode.pathname : '/' + urlParsingNode.pathname
    };
  }

  originURL = resolveURL(window.location.href);
  /**
  * Determine if a URL shares the same origin as the current location
  *
  * @param {String} requestURL The URL to test
  * @returns {boolean} True if URL shares the same origin, otherwise false
  */

  return function isURLSameOrigin(requestURL) {
    var parsed = utils.isString(requestURL) ? resolveURL(requestURL) : requestURL;
    return parsed.protocol === originURL.protocol && parsed.host === originURL.host;
  };
}() : // Non standard browser envs (web workers, react-native) lack needed support.
function nonStandardBrowserEnv() {
  return function isURLSameOrigin() {
    return true;
  };
}();

/***/ }),
/* 37 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Cancel = __webpack_require__(18);
/**
 * A `CancelToken` is an object that can be used to request cancellation of an operation.
 *
 * @class
 * @param {Function} executor The executor function.
 */


function CancelToken(executor) {
  if (typeof executor !== 'function') {
    throw new TypeError('executor must be a function.');
  }

  var resolvePromise;
  this.promise = new Promise(function promiseExecutor(resolve) {
    resolvePromise = resolve;
  });
  var token = this;
  executor(function cancel(message) {
    if (token.reason) {
      // Cancellation has already been requested
      return;
    }

    token.reason = new Cancel(message);
    resolvePromise(token.reason);
  });
}
/**
 * Throws a `Cancel` if cancellation has been requested.
 */


CancelToken.prototype.throwIfRequested = function throwIfRequested() {
  if (this.reason) {
    throw this.reason;
  }
};
/**
 * Returns an object that contains a new `CancelToken` and a function that, when called,
 * cancels the `CancelToken`.
 */


CancelToken.source = function source() {
  var cancel;
  var token = new CancelToken(function executor(c) {
    cancel = c;
  });
  return {
    token: token,
    cancel: cancel
  };
};

module.exports = CancelToken;

/***/ }),
/* 38 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

/**
 * Syntactic sugar for invoking a function and expanding an array for arguments.
 *
 * Common use case would be to use `Function.prototype.apply`.
 *
 *  ```js
 *  function f(x, y, z) {}
 *  var args = [1, 2, 3];
 *  f.apply(null, args);
 *  ```
 *
 * With `spread` this example can be re-written.
 *
 *  ```js
 *  spread(function(x, y, z) {})([1, 2, 3]);
 *  ```
 *
 * @param {Function} callback
 * @returns {Function}
 */

module.exports = function spread(callback) {
  return function wrap(arr) {
    return callback.apply(null, arr);
  };
};

/***/ }),
/* 39 */,
/* 40 */,
/* 41 */,
/* 42 */,
/* 43 */,
/* 44 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.ErrorResponse = void 0;
const BaseResponse_1 = __webpack_require__(22);
class ErrorResponse extends BaseResponse_1.BaseResponse {
    constructor(code, message, statusCode = 403) {
        super(code, message, statusCode);
        this.errorMessage = undefined;
        this.isError = true;
    }
    setValidation(result) {
        var _a, _b;
        this.errorMessage = (_b = (_a = result.error) === null || _a === void 0 ? void 0 : _a.details[0]) === null || _b === void 0 ? void 0 : _b.message;
        return this;
    }
    setMessage(message) {
        this.errorMessage = message;
        return this;
    }
    setError(error) {
        this.errorMessage = error === null || error === void 0 ? void 0 : error.message;
        return this;
    }
    setQuery(query) {
        this.errorMessage = query === null || query === void 0 ? void 0 : query.getErrorsSummary();
        return this;
    }
}
exports.ErrorResponse = ErrorResponse;


/***/ }),
/* 45 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.login = exports.LOGIN_RESPONSE_INVALID_BODY = exports.LOGIN_RESPONSE_CANT_LOGIN = exports.LOGIN_RESPONSE_INVALID_CREDENTIALS = exports.LOGIN_RESPONSE_REQUESTED_LOGIN = void 0;
const axios_1 = __importDefault(__webpack_require__(7));
const LoginUserWebApiResponses_1 = __webpack_require__(96);
exports.LOGIN_RESPONSE_REQUESTED_LOGIN = 1;
exports.LOGIN_RESPONSE_INVALID_CREDENTIALS = -2;
exports.LOGIN_RESPONSE_CANT_LOGIN = -3;
exports.LOGIN_RESPONSE_INVALID_BODY = -4;
function login(username, password) {
    var _a, _b, _c, _d;
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const response = yield axios_1.default({
                method: "POST",
                url: "/api/request-login",
                data: { username, password },
                headers: { Authorization: "WebApiKey 6f136834-1d13-43c2-93c0-408683dec170" }
            });
            if (response.data.code === LoginUserWebApiResponses_1.LoginUserWebApiResponses.SUCCESS.REQUESTED_LOGIN.code) {
                return { code: exports.LOGIN_RESPONSE_REQUESTED_LOGIN, authToken: response.data.data.authToken };
            }
        }
        catch (error) {
            if (((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code) === LoginUserWebApiResponses_1.LoginUserWebApiResponses.ERROR.INVALID_CREDENTIALS.code) {
                return { code: exports.LOGIN_RESPONSE_INVALID_CREDENTIALS };
            }
            else if (((_d = (_c = error.response) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.code) === LoginUserWebApiResponses_1.LoginUserWebApiResponses.ERROR.INVALID_BODY.code) {
                return { code: exports.LOGIN_RESPONSE_INVALID_BODY };
            }
            else {
                return { code: exports.LOGIN_RESPONSE_CANT_LOGIN };
            }
        }
    });
}
exports.login = login;


/***/ }),
/* 46 */
/***/ (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__(62);
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__(0).default
var update = add("36bf3540", content, true, {});

/***/ }),
/* 47 */
/***/ (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__(64);
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__(0).default
var update = add("4e3f6238", content, true, {});

/***/ }),
/* 48 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.lostPassword = exports.RESEND_PASSWORD_UNKNOWN_ERROR = exports.RESEND_PASSWORD_USERNAME_NOT_FOUND = exports.RESEND_PASSWORD_INVALID_BODY = exports.RESEND_PASSWORD_CODE_SENT = void 0;
const axios_1 = __importDefault(__webpack_require__(7));
const LostPasswordApiResponses_1 = __webpack_require__(73);
const jquery_1 = __importDefault(__webpack_require__(5));
const packageJson = __webpack_require__(21);
exports.RESEND_PASSWORD_CODE_SENT = 1;
exports.RESEND_PASSWORD_INVALID_BODY = -1;
exports.RESEND_PASSWORD_USERNAME_NOT_FOUND = -2;
exports.RESEND_PASSWORD_UNKNOWN_ERROR = -3;
function lostPassword(username, apiUrl, apiKey) {
    var _a, _b, _c, _d;
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const pageDataElem = jquery_1.default("#page-data");
            const lang = pageDataElem.data("lang");
            const headers = {
                "Client-Type": "web",
                "Client-Version": packageJson.version,
                "Accept-Language": lang,
                Authorization: "ApiKey " + apiKey
            };
            const response = yield axios_1.default({ method: "POST", url: apiUrl, headers, data: { username } });
            if (response.data.code === LostPasswordApiResponses_1.LostPasswordApiResponses.REQUEST.SUCCESS.CODE_SENT.code) {
                return exports.RESEND_PASSWORD_CODE_SENT;
            }
        }
        catch (error) {
            if (((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code) === LostPasswordApiResponses_1.LostPasswordApiResponses.REQUEST.ERROR.USERNAME_NOT_FOUND) {
                return exports.RESEND_PASSWORD_USERNAME_NOT_FOUND;
            }
            else if (((_d = (_c = error.response) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.code) === LostPasswordApiResponses_1.LostPasswordApiResponses.REQUEST.ERROR.INVALID_BODY) {
                return exports.RESEND_PASSWORD_INVALID_BODY;
            }
            else {
                return exports.RESEND_PASSWORD_UNKNOWN_ERROR;
            }
        }
    });
}
exports.lostPassword = lostPassword;


/***/ }),
/* 49 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createAccount = exports.REGISTER_RESPONSE_CANNOT_REGISTER = exports.REGISTER_RESPONSE_USERNAME_EXISTS = exports.REGISTER_RESPONSE_USER_REGISTERED = void 0;
const axios_1 = __importDefault(__webpack_require__(7));
const jquery_1 = __importDefault(__webpack_require__(5));
const RegisterUserWebApiResponses_1 = __webpack_require__(95);
exports.REGISTER_RESPONSE_USER_REGISTERED = 1;
exports.REGISTER_RESPONSE_USERNAME_EXISTS = -2;
exports.REGISTER_RESPONSE_CANNOT_REGISTER = -3;
function createAccount(username, password) {
    var _a, _b;
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const pageDataElem = jquery_1.default("#page-data");
            const lang = pageDataElem.data("lang");
            const response = yield axios_1.default({
                method: "POST",
                url: "/api/register-user",
                data: { username, password },
                headers: {
                    Authorization: "WebApiKey 6f136834-1d13-43c2-93c0-408683dec170",
                    "Accept-Language": lang
                }
            });
            console.log("1:" + response.data.code);
            if (response.data.code === RegisterUserWebApiResponses_1.RegisterUserWebApiResponses.SUCCESS.USER_REGISTERED.code) {
                return { code: exports.REGISTER_RESPONSE_USER_REGISTERED, authToken: response.data.data.authToken };
            }
        }
        catch (error) {
            if (((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.code) === RegisterUserWebApiResponses_1.RegisterUserWebApiResponses.ERROR.USERNAME_EXISTS.code) {
                return { code: exports.REGISTER_RESPONSE_USERNAME_EXISTS };
            }
            else {
                return { code: exports.REGISTER_RESPONSE_CANNOT_REGISTER };
            }
        }
    });
}
exports.createAccount = createAccount;


/***/ }),
/* 50 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.sendEmail = void 0;
__webpack_require__(56);
const axios_1 = __importDefault(__webpack_require__(7));
const packageJson = __webpack_require__(21);
function sendEmail(type, email, name, phoneNumber, content, apiUrl, apiKey) {
    return __awaiter(this, void 0, void 0, function* () {
        const headers = {
            "Client-Type": "web",
            "Client-Version": packageJson.version,
            Authorization: "ApiKey " + apiKey
        };
        try {
            const response = yield axios_1.default({
                method: "POST",
                url: apiUrl,
                headers,
                data: {
                    type: type,
                    email: email,
                    name: name,
                    phone: phoneNumber,
                    content: content
                }
            });
            return response.status === 200 && response.data != undefined && response.data.code == 1;
        }
        catch (e) {
            return false;
        }
    });
}
exports.sendEmail = sendEmail;


/***/ }),
/* 51 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_5_0_ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(52);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_5_0_ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_5_0_ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_5_0_ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_5_0_ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
 /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_ts_loader_index_js_ref_5_0_ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); 

/***/ }),
/* 52 */
/***/ (function(module, exports) {

module.exports = {
  data() {
    return {
      message: "Hello Amish!" !== null && "Hello Amish!" !== void 0 ? "Hello Amish!" : "X"
    };
  },

  methods: {
    reverseMessage: function () {
      this.message = this.message.split("").reverse().join("");
    }
  }
};

/***/ }),
/* 53 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/email_form/EmailForm.vue?vue&type=template&id=77e7befe&lang=html&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{"click-to-close":_vm.isClosable,"name":"modalDialog","width":"800","adaptive":"","height":"auto"},on:{"closed":_vm.sendCloseToParent}},[(_vm.visibleContent)?_c('div',{staticClass:"container",attrs:{"id":"emailForm"}},[_c('form',{staticClass:"needs-validation emailForm",attrs:{"novalidate":""}},[_c('h3',{staticClass:"center"},[_vm._v(_vm._s(_vm.header))]),_vm._v(" "),_c('div',{staticClass:"form-group row"},[_c('label',{staticClass:"col-sm-3 col-form-label",attrs:{"for":"e-mail"}},[_vm._v(_vm._s(_vm.text.email))]),_vm._v(" "),_c('div',{staticClass:"col-sm-9"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.email),expression:"email"}],staticClass:"form-control",class:_vm.emailClasses(),attrs:{"id":"e-mail","type":"email","placeholder":_vm.text.emailPlaceHolder,"required":""},domProps:{"value":(_vm.email)},on:{"input":function($event){if($event.target.composing){ return; }_vm.email=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.emailNonValid)+"\n          ")])])]),_vm._v(" "),_c('div',{staticClass:"form-group row"},[_c('label',{staticClass:"col-sm-3 col-form-label",attrs:{"for":"name"}},[_vm._v(_vm._s(_vm.text.name))]),_vm._v(" "),_c('div',{staticClass:"col-sm-9"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.name),expression:"name"}],staticClass:"form-control",class:_vm.nameClasses(),attrs:{"id":"name","type":"text","placeholder":_vm.text.namePlaceHolder,"required":""},domProps:{"value":(_vm.name)},on:{"input":function($event){if($event.target.composing){ return; }_vm.name=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.nameNonValid)+"\n          ")])])]),_vm._v(" "),_c('div',{staticClass:"form-group row"},[_c('label',{staticClass:"col-sm-3 col-form-label",attrs:{"for":"phoneNumber"}},[_vm._v(_vm._s(_vm.text.phoneNumber))]),_vm._v(" "),_c('div',{staticClass:"col-sm-9"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.phoneNumber),expression:"phoneNumber"}],staticClass:"form-control",class:_vm.phoneNumberClasses(),attrs:{"id":"phoneNumber","type":"text","placeholder":_vm.text.phoneNumberPlaceHolder,"required":""},domProps:{"value":(_vm.phoneNumber)},on:{"input":function($event){if($event.target.composing){ return; }_vm.phoneNumber=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.phoneNumberNonValid)+"\n          ")])])]),_vm._v(" "),_c('div',{staticClass:"form-group row"},[_c('label',{staticClass:"col-sm-3 col-form-label",attrs:{"for":"content"}},[_vm._v(_vm._s(_vm.text.messageContent))]),_vm._v(" "),_c('div',{staticClass:"col-sm-9"},[_c('textarea',{directives:[{name:"model",rawName:"v-model",value:(_vm.content),expression:"content"}],staticClass:"form-control",class:_vm.contentClasses(),attrs:{"id":"content","type":"text","name":"content","rows":"4","cols":"50","placeholder":_vm.text.messageContentPlaceHolder,"required":""},domProps:{"value":(_vm.content)},on:{"input":function($event){if($event.target.composing){ return; }_vm.content=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.messageContentNonValid)+"\n          ")])])]),_vm._v(" "),_c('div',{staticClass:"form-group row"},[_c('div',{staticClass:"col-sm-9"},[_c('div',{staticClass:"terms-of-conditions"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.checked),expression:"checked"}],attrs:{"id":"trigger","type":"checkbox"},domProps:{"checked":Array.isArray(_vm.checked)?_vm._i(_vm.checked,null)>-1:(_vm.checked)},on:{"change":function($event){var $$a=_vm.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.checked=$$a.concat([$$v]))}else{$$i>-1&&(_vm.checked=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.checked=$$c}}}}),_vm._v(" "),_c('label',{staticClass:"checker",attrs:{"for":"trigger"}}),_vm._v(" "),_c('span',{staticClass:"terms-of-conditions-text"},[_vm._v("\n              "+_vm._s(_vm.text.iAgreeWith)+" "),_c('a',{attrs:{"href":_vm.urls.privacyUrl}},[_vm._v(_vm._s(_vm.text.privacyPolicy))]),_vm._v(" "+_vm._s(_vm.text.and)+"\n              "),_c('a',{attrs:{"href":_vm.urls.cookiesUrl}},[_vm._v(_vm._s(_vm.text.cookiesPolicy))])])]),_vm._v(" "),(_vm.invalidCheck)?_c('div',{staticClass:"email-not-checked"},[_vm._v("\n            "+_vm._s(_vm.text.notChecked)+"\n          ")]):_vm._e()])]),_vm._v(" "),_c('div',{staticClass:"center"},[_c('a',{staticClass:"btn-main",attrs:{"href":"","type":"submit"},on:{"click":_vm.sendData}},[_vm._v(_vm._s(_vm.text.sendButton))]),_vm._v(" "),_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.closeDialog}},[_vm._v(_vm._s(_vm.text.closeButton))])])])]):_vm._e(),_vm._v(" "),(!_vm.visibleContent)?_c('div',{staticClass:"sent center",attrs:{"id":"sent"}},[(!_vm.sentMessage)?_c('spinner',{attrs:{"size":"large","line-fg-color":"#fdbd0f"}}):_vm._e(),_vm._v(" "),(_vm.sentMessage)?_c('span',[_vm._v(_vm._s(_vm.sentMessage))]):_vm._e(),_vm._v(" "),(_vm.sentMessageInfo)?_c('span',[_vm._v(_vm._s(_vm.sentMessageInfo))]):_vm._e(),_vm._v(" "),(_vm.sentMessage)?_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.closeDialog}},[_vm._v(_vm._s(_vm.text.closeButton))]):_vm._e()],1):_vm._e()])}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/email_form/EmailForm.vue?vue&type=template&id=77e7befe&lang=html&

// EXTERNAL MODULE: ./node_modules/vue-simple-spinner/dist/vue-simple-spinner.js
var vue_simple_spinner = __webpack_require__(20);

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.min.js
var vue_min = __webpack_require__(3);
var vue_min_default = /*#__PURE__*/__webpack_require__.n(vue_min);

// EXTERNAL MODULE: ./src/ui/controllers/pages/contacts/view/contacts.script.ts
var contacts_script = __webpack_require__(50);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/email_form/EmailForm.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//



vue_min_default.a.component("spinner", vue_simple_spinner);
const EmailForm = {
  name: "EmailForm",
  props: {
    header: {
      type: String,
      default: ""
    },
    type: {
      type: Number,
      default: ""
    },
    text: {
      type: Object,
      default: {}
    },
    urls: {
      type: Object,
      default: {}
    },
    apiUrl: {
      type: String,
      default: ""
    },
    apiKey: {
      type: String,
      default: ""
    }
  },

  data() {
    return {
      visibleContent: true,
      email: "",
      name: "",
      phoneNumber: "",
      content: "",
      invalidEmail: false,
      invalidName: false,
      invalidContent: false,
      invalidPhoneNumber: false,
      sentMessage: "",
      sentMessageInfo: "",
      sentMessageStatus: false,
      invalidCheck: false,
      checked: false
    };
  },

  computed: {
    isClosable: function () {
      return false;
    }
  },

  mounted() {
    this.$modal.show("modalDialog");
  },

  methods: {
    emailClasses: function () {
      return {
        "is-invalid": this.invalidEmail
      };
    },
    nameClasses: function () {
      return {
        "is-invalid": this.invalidName
      };
    },
    phoneNumberClasses: function () {
      return {
        "is-invalid": this.invalidPhoneNumber
      };
    },
    contentClasses: function () {
      return {
        "is-invalid": this.invalidContent
      };
    },
    notChecked: function () {
      return {
        "email-not-checked": this.invalidCheck
      };
    },
    validate: function () {
      this.invalidEmail = !/\S+@\S+\.\S+/.test(this.email);
      this.invalidName = !this.name;
      this.invalidContent = !this.content;
      this.invalidPhoneNumber = !/([+]?\d{1,3}[. \s]?)?(\d{9}?)/.test(this.phoneNumber);
      this.invalidCheck = !this.checked;
      return !(this.invalidContent || this.invalidName || this.invalidEmail || this.invalidPhoneNumber || this.invalidCheck);
    },
    sendData: async function (e) {
      e.preventDefault();

      if (this.validate()) {
        this.visibleContent = false;
        this.sentMessageStatus = await Object(contacts_script["sendEmail"])(this.$props.type, this.email, this.name, this.phoneNumber, this.content, this.apiUrl, this.apiKey);
        this.handleMessageStatus(this.sentMessageStatus);
      }
    },
    closeDialog: function (e) {
      e.preventDefault();
      this.$modal.hide("modalDialog");
    },
    handleMessageStatus: function (sent) {
      if (sent) {
        this.sentMessage = this.text.messageSuccessfullySent;
        this.sentMessageInfo = this.text.messageSuccessfullySentInfo;
      } else {
        this.sentMessage = this.text.messageNotSent;
      }
    },
    sendCloseToParent: function () {
      this.$emit("dialog-closed");
    }
  }
};
/* harmony default export */ var EmailFormvue_type_script_lang_js_ = (EmailForm);
// CONCATENATED MODULE: ./src/ui/components/email_form/EmailForm.vue?vue&type=script&lang=js&
 /* harmony default export */ var email_form_EmailFormvue_type_script_lang_js_ = (EmailFormvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/email_form/EmailForm.vue?vue&type=style&index=0&lang=css&
var EmailFormvue_type_style_index_0_lang_css_ = __webpack_require__(88);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/email_form/EmailForm.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  email_form_EmailFormvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var email_form_EmailForm = __webpack_exports__["a"] = (component.exports);

/***/ }),
/* 54 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.confirmLostPassword = exports.CONFIRM_LOST_PASSWORD_UNKNOWN_ERROR = exports.CONFIRM_LOST_PASSWORD_INVALID_RECOVERY_CODE = exports.CONFIRM_LOST_PASSWORD_INVALID_BODY = exports.CONFIRM_LOST_PASSWORD_PASSWORD_CHANGED = void 0;
const axios_1 = __importDefault(__webpack_require__(7));
const LostPasswordApiResponses_1 = __webpack_require__(73);
const packageJson = __webpack_require__(21);
exports.CONFIRM_LOST_PASSWORD_PASSWORD_CHANGED = 1;
exports.CONFIRM_LOST_PASSWORD_INVALID_BODY = -1;
exports.CONFIRM_LOST_PASSWORD_INVALID_RECOVERY_CODE = -2;
exports.CONFIRM_LOST_PASSWORD_UNKNOWN_ERROR = -3;
function confirmLostPassword(recoveryCode, username, newPassword, apiUrl, apiKey) {
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const headers = {
                "Client-Type": "web",
                "Client-Version": packageJson.version,
                Authorization: "ApiKey " + apiKey
            };
            const response = yield axios_1.default({
                method: "POST",
                url: apiUrl,
                headers,
                data: { username, recoveryCode, newPassword }
            });
            if (response.data.code === LostPasswordApiResponses_1.LostPasswordApiResponses.CONFIRM.SUCCESS.PASSWORD_CHANGED.code) {
                return exports.CONFIRM_LOST_PASSWORD_PASSWORD_CHANGED;
            }
        }
        catch (error) {
            if (error.response.data.code == exports.CONFIRM_LOST_PASSWORD_INVALID_RECOVERY_CODE) {
                return exports.CONFIRM_LOST_PASSWORD_INVALID_RECOVERY_CODE;
            }
            else if (error.response.data.code == exports.CONFIRM_LOST_PASSWORD_INVALID_BODY) {
                return exports.CONFIRM_LOST_PASSWORD_INVALID_BODY;
            }
            else {
                return exports.CONFIRM_LOST_PASSWORD_UNKNOWN_ERROR;
            }
        }
    });
}
exports.confirmLostPassword = confirmLostPassword;


/***/ }),
/* 55 */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(global, process) {(function (global, undefined) {
  "use strict";

  if (global.setImmediate) {
    return;
  }

  var nextHandle = 1; // Spec says greater than zero

  var tasksByHandle = {};
  var currentlyRunningATask = false;
  var doc = global.document;
  var registerImmediate;

  function setImmediate(callback) {
    // Callback can either be a function or a string
    if (typeof callback !== "function") {
      callback = new Function("" + callback);
    } // Copy function arguments


    var args = new Array(arguments.length - 1);

    for (var i = 0; i < args.length; i++) {
      args[i] = arguments[i + 1];
    } // Store and register the task


    var task = {
      callback: callback,
      args: args
    };
    tasksByHandle[nextHandle] = task;
    registerImmediate(nextHandle);
    return nextHandle++;
  }

  function clearImmediate(handle) {
    delete tasksByHandle[handle];
  }

  function run(task) {
    var callback = task.callback;
    var args = task.args;

    switch (args.length) {
      case 0:
        callback();
        break;

      case 1:
        callback(args[0]);
        break;

      case 2:
        callback(args[0], args[1]);
        break;

      case 3:
        callback(args[0], args[1], args[2]);
        break;

      default:
        callback.apply(undefined, args);
        break;
    }
  }

  function runIfPresent(handle) {
    // From the spec: "Wait until any invocations of this algorithm started before this one have completed."
    // So if we're currently running a task, we'll need to delay this invocation.
    if (currentlyRunningATask) {
      // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a
      // "too much recursion" error.
      setTimeout(runIfPresent, 0, handle);
    } else {
      var task = tasksByHandle[handle];

      if (task) {
        currentlyRunningATask = true;

        try {
          run(task);
        } finally {
          clearImmediate(handle);
          currentlyRunningATask = false;
        }
      }
    }
  }

  function installNextTickImplementation() {
    registerImmediate = function (handle) {
      process.nextTick(function () {
        runIfPresent(handle);
      });
    };
  }

  function canUsePostMessage() {
    // The test against `importScripts` prevents this implementation from being installed inside a web worker,
    // where `global.postMessage` means something completely different and can't be used for this purpose.
    if (global.postMessage && !global.importScripts) {
      var postMessageIsAsynchronous = true;
      var oldOnMessage = global.onmessage;

      global.onmessage = function () {
        postMessageIsAsynchronous = false;
      };

      global.postMessage("", "*");
      global.onmessage = oldOnMessage;
      return postMessageIsAsynchronous;
    }
  }

  function installPostMessageImplementation() {
    // Installs an event handler on `global` for the `message` event: see
    // * https://developer.mozilla.org/en/DOM/window.postMessage
    // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages
    var messagePrefix = "setImmediate$" + Math.random() + "$";

    var onGlobalMessage = function (event) {
      if (event.source === global && typeof event.data === "string" && event.data.indexOf(messagePrefix) === 0) {
        runIfPresent(+event.data.slice(messagePrefix.length));
      }
    };

    if (global.addEventListener) {
      global.addEventListener("message", onGlobalMessage, false);
    } else {
      global.attachEvent("onmessage", onGlobalMessage);
    }

    registerImmediate = function (handle) {
      global.postMessage(messagePrefix + handle, "*");
    };
  }

  function installMessageChannelImplementation() {
    var channel = new MessageChannel();

    channel.port1.onmessage = function (event) {
      var handle = event.data;
      runIfPresent(handle);
    };

    registerImmediate = function (handle) {
      channel.port2.postMessage(handle);
    };
  }

  function installReadyStateChangeImplementation() {
    var html = doc.documentElement;

    registerImmediate = function (handle) {
      // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted
      // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.
      var script = doc.createElement("script");

      script.onreadystatechange = function () {
        runIfPresent(handle);
        script.onreadystatechange = null;
        html.removeChild(script);
        script = null;
      };

      html.appendChild(script);
    };
  }

  function installSetTimeoutImplementation() {
    registerImmediate = function (handle) {
      setTimeout(runIfPresent, 0, handle);
    };
  } // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.


  var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);
  attachTo = attachTo && attachTo.setTimeout ? attachTo : global; // Don't get fooled by e.g. browserify environments.

  if ({}.toString.call(global.process) === "[object process]") {
    // For Node.js before 0.9
    installNextTickImplementation();
  } else if (canUsePostMessage()) {
    // For non-IE10 modern browsers
    installPostMessageImplementation();
  } else if (global.MessageChannel) {
    // For web workers, where supported
    installMessageChannelImplementation();
  } else if (doc && "onreadystatechange" in doc.createElement("script")) {
    // For IE 6–8
    installReadyStateChangeImplementation();
  } else {
    // For older browsers
    installSetTimeoutImplementation();
  }

  attachTo.setImmediate = setImmediate;
  attachTo.clearImmediate = clearImmediate;
})(typeof self === "undefined" ? typeof global === "undefined" ? this : global : self);
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(19), __webpack_require__(10)))

/***/ }),
/* 56 */
/***/ (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__(57);
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__(0).default
var update = add("390d6a21", content, true, {});

/***/ }),
/* 57 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 58 */
/***/ (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__(59);
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__(0).default
var update = add("300075d2", content, true, {});

/***/ }),
/* 59 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 60 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.ChangePasswordWebApiResponses = void 0;
const BaseResponse_1 = __webpack_require__(22);
const ErrorResponse_1 = __webpack_require__(44);
class ChangePasswordWebApiResponses {
}
exports.ChangePasswordWebApiResponses = ChangePasswordWebApiResponses;
ChangePasswordWebApiResponses.SUCCESS = {
    PASSWORD_CHANGED: new BaseResponse_1.BaseResponse(1, "Heslo bylo úspěšně změněno")
};
ChangePasswordWebApiResponses.ERROR = {
    INVALID_BODY: new ErrorResponse_1.ErrorResponse(-1, "Nesprávné tělo požadavku"),
    CANNOT_CHANGE_PASSWORD: new ErrorResponse_1.ErrorResponse(-2, "Nelze změnit heslo"),
    INVALID_CURRENT_PASSWORD: new ErrorResponse_1.ErrorResponse(-3, "Současné heslo není správné", 401)
};


/***/ }),
/* 61 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_DeleteDialog_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_DeleteDialog_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_DeleteDialog_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 62 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 63 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_ChangePasswordDialog_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_ChangePasswordDialog_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_ChangePasswordDialog_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 64 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 65 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/delete_account/delete_button/DeleteButton.vue?vue&type=template&id=ca4f506c&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.showDialog}},[_vm._v(_vm._s(_vm.text.deleteAccountButton))]),_vm._v(" "),(_vm.dialogVisible)?_c('delete-dialog',{attrs:{"loggedusername":"loggedusername","text":_vm.text},on:{"dialog-closed":_vm.onDialogClosed}}):_vm._e()],1)}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/delete_account/delete_button/DeleteButton.vue?vue&type=template&id=ca4f506c&

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.min.js
var vue_min = __webpack_require__(3);
var vue_min_default = /*#__PURE__*/__webpack_require__.n(vue_min);

// EXTERNAL MODULE: ./node_modules/vue-js-modal/dist/index.js
var dist = __webpack_require__(6);
var dist_default = /*#__PURE__*/__webpack_require__.n(dist);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/delete_account/delete_dialog/DeleteDialog.vue?vue&type=template&id=3920e627&lang=html&
var DeleteDialogvue_type_template_id_3920e627_lang_html_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.dialogVisible)?_c('modal',{attrs:{"click-to-close":_vm.isClosable,"name":"modalDialog","width":"540","adaptive":"","height":"auto"},on:{"closed":_vm.sendCloseToParent}},[_c('form',{attrs:{"action":"/api/delete-user","method":"POST"}},[_c('div',{staticClass:"container deleteDialog"},[_c('h3',{staticClass:"center"},[_vm._v(_vm._s(_vm.text.confirmQuestion))]),_vm._v(" "),_c('input',{attrs:{"value":"halfartomas@gmail.com","type":"hidden","name":"username"}}),_vm._v(" "),_c('div',{staticClass:"center"},[_c('button',{staticClass:"btn-main",attrs:{"href":"","type":"submit"}},[_vm._v(_vm._s(_vm.text.confirmButton))]),_vm._v(" "),_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.closeDialog}},[_vm._v(_vm._s(_vm.text.cancelButton))])])])])]):_vm._e()}
var DeleteDialogvue_type_template_id_3920e627_lang_html_staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/delete_account/delete_dialog/DeleteDialog.vue?vue&type=template&id=3920e627&lang=html&

// EXTERNAL MODULE: ./src/ui/controllers/pages/account/view/account.script.ts
var account_script = __webpack_require__(4);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/delete_account/delete_dialog/DeleteDialog.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

const DeleteDialog = {
  name: "DeleteDialog",
  props: {
    text: {
      type: Object,
      default: {}
    },
    loggedusername: {
      type: String,
      default: ""
    }
  },

  data() {
    return {
      dialogVisible: true
    };
  },

  computed: {
    isClosable: function () {
      return false;
    }
  },

  mounted() {
    this.$modal.show("modalDialog");
  },

  methods: {
    closeDialog: function (e) {
      e.preventDefault();
      this.$modal.hide("modalDialog");
    },
    sendCloseToParent: function () {
      this.$emit("dialog-closed");
    },
    sendData: async function (e) {
      e.preventDefault();
      await Object(account_script["deleteAccount"])(this.$props.loggedusername);
    }
  }
};
/* harmony default export */ var DeleteDialogvue_type_script_lang_js_ = (DeleteDialog);
// CONCATENATED MODULE: ./src/ui/components/delete_account/delete_dialog/DeleteDialog.vue?vue&type=script&lang=js&
 /* harmony default export */ var delete_dialog_DeleteDialogvue_type_script_lang_js_ = (DeleteDialogvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/delete_account/delete_dialog/DeleteDialog.vue?vue&type=style&index=0&lang=css&
var DeleteDialogvue_type_style_index_0_lang_css_ = __webpack_require__(61);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/delete_account/delete_dialog/DeleteDialog.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  delete_dialog_DeleteDialogvue_type_script_lang_js_,
  DeleteDialogvue_type_template_id_3920e627_lang_html_render,
  DeleteDialogvue_type_template_id_3920e627_lang_html_staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var delete_dialog_DeleteDialog = (component.exports);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/delete_account/delete_button/DeleteButton.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//



vue_min_default.a.use(dist_default.a);
vue_min_default.a.component("delete-dialog", delete_dialog_DeleteDialog);
const DeleteButton = {
  data() {
    return {
      dialogVisible: false
    };
  },

  props: {
    text: {
      type: Object,
      default: {}
    },
    loggedusername: {
      type: String,
      default: ""
    }
  },
  methods: {
    showDialog: function (e) {
      e.preventDefault();
      this.dialogVisible = true;
    },
    onDialogClosed: function () {
      this.dialogVisible = false;
    }
  }
};
/* harmony default export */ var DeleteButtonvue_type_script_lang_js_ = (DeleteButton);
// CONCATENATED MODULE: ./src/ui/components/delete_account/delete_button/DeleteButton.vue?vue&type=script&lang=js&
 /* harmony default export */ var delete_button_DeleteButtonvue_type_script_lang_js_ = (DeleteButtonvue_type_script_lang_js_); 
// CONCATENATED MODULE: ./src/ui/components/delete_account/delete_button/DeleteButton.vue





/* normalize component */

var DeleteButton_component = Object(componentNormalizer["a" /* default */])(
  delete_button_DeleteButtonvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var delete_button_DeleteButton = __webpack_exports__["default"] = (DeleteButton_component.exports);

/***/ }),
/* 66 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/change_password/change_password_button/ChangePasswordButton.vue?vue&type=template&id=db73b0f2&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.showDialog}},[_vm._v(_vm._s(_vm.text.changePasswordButton))]),_vm._v(" "),(_vm.dialogVisible)?_c('change-password-dialog',{attrs:{"text":_vm.text},on:{"dialog-closed":_vm.onDialogClosed}}):_vm._e()],1)}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/change_password/change_password_button/ChangePasswordButton.vue?vue&type=template&id=db73b0f2&

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.min.js
var vue_min = __webpack_require__(3);
var vue_min_default = /*#__PURE__*/__webpack_require__.n(vue_min);

// EXTERNAL MODULE: ./node_modules/vue-js-modal/dist/index.js
var dist = __webpack_require__(6);
var dist_default = /*#__PURE__*/__webpack_require__.n(dist);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/change_password/change_password_dialog/ChangePasswordDialog.vue?vue&type=template&id=11693e18&lang=html&
var ChangePasswordDialogvue_type_template_id_11693e18_lang_html_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.dialogVisible)?_c('modal',{attrs:{"click-to-close":_vm.isClosable,"name":"modalDialog","width":"540","adaptive":"","height":"auto"},on:{"closed":_vm.sendCloseToParent}},[_c('form',{ref:"form",staticClass:"needs-validation",attrs:{"method":"POST","novalidate":""}},[_c('div',{staticClass:"popup-overlay-container changePasswordForm"},[_c('span',{staticClass:"popup-overlay-container--close",on:{"click":_vm.closeDialog}}),_vm._v(" "),_c('div',{staticClass:"popup-overlay-container--content"},[_c('div',{staticClass:"popup-title"},[_c('span',[_vm._v(_vm._s(_vm.text.passwordChangeLabel))])]),_vm._v(" "),(_vm.passwordChangedLabel)?_c('div',{staticClass:"passwordChanged center"},[_c('span',[_vm._v(_vm._s(_vm.text.passwordChangedLabel))])]):_vm._e(),_vm._v(" "),(!_vm.passwordChangedLabel)?_c('div',{staticClass:"form-group"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.oldPassword),expression:"oldPassword"}],staticClass:"form-control",class:_vm.oldPasswordClasses(),attrs:{"type":"password","required":"","placeholder":_vm.text.actualPasswordLabel},domProps:{"value":(_vm.oldPassword)},on:{"input":function($event){if($event.target.composing){ return; }_vm.oldPassword=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.emailNonValid)+"\n          ")])]):_vm._e(),_vm._v(" "),(!_vm.passwordChangedLabel)?_c('div',{staticClass:"form-group"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.newPassword),expression:"newPassword"}],staticClass:"form-control",class:_vm.newPasswordClasses(),attrs:{"type":"password","required":"","placeholder":_vm.text.newPasswordLabel},domProps:{"value":(_vm.newPassword)},on:{"input":function($event){if($event.target.composing){ return; }_vm.newPassword=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.passwordNonValid)+"\n          ")])]):_vm._e(),_vm._v(" "),(!_vm.passwordChangedLabel)?_c('div',{staticClass:"form-group"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.passwordMatch),expression:"passwordMatch"}],staticClass:"form-control",class:_vm.passwordMatchClasses(),attrs:{"type":"password","required":"","placeholder":_vm.text.newPasswordMatchLabel},domProps:{"value":(_vm.passwordMatch)},on:{"input":function($event){if($event.target.composing){ return; }_vm.passwordMatch=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.passwordMismatch)+"\n          ")]),_vm._v(" "),(_vm.oldPasswordMismatchLabel)?_c('div',{staticClass:"changeFailed"},[_vm._v("\n            "+_vm._s(_vm.text.oldPasswordMismatchLabel)+"\n          ")]):_vm._e(),_vm._v(" "),(_vm.cannotChangePasswordLabel)?_c('div',{staticClass:"changeFailed"},[_vm._v("\n            "+_vm._s(_vm.text.cannotChangePasswordLabel)+"\n          ")]):_vm._e()]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"center"},[(!_vm.passwordChangedLabel)?_c('button',{staticClass:"btn-main",attrs:{"href":"#","type":"submit"},on:{"click":_vm.sendData}},[_vm._v("\n            "+_vm._s(_vm.text.changePasswordButton)+"\n          ")]):_vm._e(),_vm._v(" "),_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.closeDialog}},[_vm._v(_vm._s(_vm.text.closeButton))])])])])])]):_vm._e()}
var ChangePasswordDialogvue_type_template_id_11693e18_lang_html_staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/change_password/change_password_dialog/ChangePasswordDialog.vue?vue&type=template&id=11693e18&lang=html&

// EXTERNAL MODULE: ./node_modules/vue-simple-spinner/dist/vue-simple-spinner.js
var vue_simple_spinner = __webpack_require__(20);

// EXTERNAL MODULE: ./src/ui/controllers/pages/account/view/account.script.ts
var account_script = __webpack_require__(4);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/change_password/change_password_dialog/ChangePasswordDialog.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//



vue_min_default.a.component("spinner", vue_simple_spinner);
const ChangePasswordDialog = {
  name: "ChangePasswordDialog",
  props: {
    text: {
      type: Object,
      default: {}
    }
  },

  data() {
    return {
      oldPassword: "",
      newPassword: "",
      passwordMatch: "",
      invalidOldPassword: false,
      invalidNewPassword: false,
      passwordMismatch: false,
      cannotChangePasswordLabel: false,
      oldPasswordMismatchLabel: false,
      passwordChangedLabel: false,
      dialogVisible: true
    };
  },

  computed: {
    isClosable: function () {
      return false;
    }
  },

  mounted() {
    this.$modal.show("modalDialog");
  },

  methods: {
    closeDialog: function (e) {
      e.preventDefault();
      this.$modal.hide("modalDialog");
    },
    sendCloseToParent: function () {
      this.$emit("dialog-closed");
    },
    sendData: async function (e) {
      e.preventDefault();
      this.cannotChangePasswordLabel = false;
      this.oldPasswordMismatchLabel = false;
      this.passwordChangedLabel = false;

      if (this.validate()) {
        const response = await Object(account_script["changePassword"])(this.oldPassword, this.newPassword);

        if (response === account_script["CHANGE_PASSWORD_RESPONSE_PASSWORD_CHANGED"]) {
          this.passwordChangedLabel = true;
        } else if (response === account_script["CHANGE_PASSWORD_RESPONSE_PASSWORD_MISMATCH"]) {
          this.oldPasswordMismatchLabel = true;
        } else if (response === account_script["CHANGE_PASSWORD_RESPONSE_CANNOT_CHANGE"]) {
          this.cannotChangePasswordLabel = true;
        } else {
          this.cannotChangePasswordLabel = true;
        }
      }
    },
    validate: function () {
      this.invalidOldPassword = !this.oldPassword || this.oldPassword.length < 6;
      this.invalidNewPassword = !this.newPassword || this.newPassword.length < 6;
      this.passwordMismatch = this.passwordMatch !== this.newPassword;
      return !(this.invalidOldPassword || this.invalidNewPassword || this.passwordMismatch);
    },
    oldPasswordClasses: function () {
      return {
        "is-invalid": this.invalidOldPassword
      };
    },
    newPasswordClasses: function () {
      return {
        "is-invalid": this.invalidNewPassword
      };
    },
    passwordMatchClasses: function () {
      return {
        "is-invalid": this.passwordMismatch
      };
    }
  }
};
/* harmony default export */ var ChangePasswordDialogvue_type_script_lang_js_ = (ChangePasswordDialog);
// CONCATENATED MODULE: ./src/ui/components/change_password/change_password_dialog/ChangePasswordDialog.vue?vue&type=script&lang=js&
 /* harmony default export */ var change_password_dialog_ChangePasswordDialogvue_type_script_lang_js_ = (ChangePasswordDialogvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/change_password/change_password_dialog/ChangePasswordDialog.vue?vue&type=style&index=0&lang=css&
var ChangePasswordDialogvue_type_style_index_0_lang_css_ = __webpack_require__(63);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/change_password/change_password_dialog/ChangePasswordDialog.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  change_password_dialog_ChangePasswordDialogvue_type_script_lang_js_,
  ChangePasswordDialogvue_type_template_id_11693e18_lang_html_render,
  ChangePasswordDialogvue_type_template_id_11693e18_lang_html_staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var change_password_dialog_ChangePasswordDialog = (component.exports);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/change_password/change_password_button/ChangePasswordButton.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//



vue_min_default.a.use(dist_default.a);
vue_min_default.a.component("change-password-dialog", change_password_dialog_ChangePasswordDialog);
const ChangePasswordButton = {
  data() {
    return {
      dialogVisible: false
    };
  },

  props: {
    text: {
      type: Object,
      default: {}
    }
  },
  methods: {
    showDialog: function (e) {
      e.preventDefault();
      this.dialogVisible = true;
    },
    onDialogClosed: function () {
      this.dialogVisible = false;
    }
  }
};
/* harmony default export */ var ChangePasswordButtonvue_type_script_lang_js_ = (ChangePasswordButton);
// CONCATENATED MODULE: ./src/ui/components/change_password/change_password_button/ChangePasswordButton.vue?vue&type=script&lang=js&
 /* harmony default export */ var change_password_button_ChangePasswordButtonvue_type_script_lang_js_ = (ChangePasswordButtonvue_type_script_lang_js_); 
// CONCATENATED MODULE: ./src/ui/components/change_password/change_password_button/ChangePasswordButton.vue





/* normalize component */

var ChangePasswordButton_component = Object(componentNormalizer["a" /* default */])(
  change_password_button_ChangePasswordButtonvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var change_password_button_ChangePasswordButton = __webpack_exports__["default"] = (ChangePasswordButton_component.exports);

/***/ }),
/* 67 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* reexport */ render; });
__webpack_require__.d(__webpack_exports__, "b", function() { return /* reexport */ staticRenderFns; });

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/reverse_message/ReverseMessage.vue?vue&type=template&id=03523e79&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('p',[_vm._v(_vm._s(_vm.message))]),_vm._v(" "),_c('button',{staticClass:"btn btn-primary",on:{"click":_vm.reverseMessage}},[_vm._v("\n    Reverse message\n  ")])])}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/reverse_message/ReverseMessage.vue?vue&type=template&id=03523e79&


/***/ }),
/* 68 */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(global) {var scope = typeof global !== "undefined" && global || typeof self !== "undefined" && self || window;
var apply = Function.prototype.apply; // DOM APIs, for completeness

exports.setTimeout = function () {
  return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);
};

exports.setInterval = function () {
  return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);
};

exports.clearTimeout = exports.clearInterval = function (timeout) {
  if (timeout) {
    timeout.close();
  }
};

function Timeout(id, clearFn) {
  this._id = id;
  this._clearFn = clearFn;
}

Timeout.prototype.unref = Timeout.prototype.ref = function () {};

Timeout.prototype.close = function () {
  this._clearFn.call(scope, this._id);
}; // Does not start the time, just sets up the members needed.


exports.enroll = function (item, msecs) {
  clearTimeout(item._idleTimeoutId);
  item._idleTimeout = msecs;
};

exports.unenroll = function (item) {
  clearTimeout(item._idleTimeoutId);
  item._idleTimeout = -1;
};

exports._unrefActive = exports.active = function (item) {
  clearTimeout(item._idleTimeoutId);
  var msecs = item._idleTimeout;

  if (msecs >= 0) {
    item._idleTimeoutId = setTimeout(function onTimeout() {
      if (item._onTimeout) item._onTimeout();
    }, msecs);
  }
}; // setimmediate attaches itself to the global object


__webpack_require__(55); // On some exotic environments, it's not clear which object `setimmediate` was
// able to install onto.  Search each possibility in the same order as the
// `setimmediate` library.


exports.setImmediate = typeof self !== "undefined" && self.setImmediate || typeof global !== "undefined" && global.setImmediate || this && this.setImmediate;
exports.clearImmediate = typeof self !== "undefined" && self.clearImmediate || typeof global !== "undefined" && global.clearImmediate || this && this.clearImmediate;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(19)))

/***/ }),
/* 69 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Store", function() { return Store; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createLogger", function() { return createLogger; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createNamespacedHelpers", function() { return createNamespacedHelpers; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "install", function() { return install; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapActions", function() { return mapActions; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapGetters", function() { return mapGetters; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapMutations", function() { return mapMutations; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mapState", function() { return mapState; });
/*!
 * vuex v3.5.1
 * (c) 2020 Evan You
 * @license MIT
 */
function applyMixin(Vue) {
  var version = Number(Vue.version.split('.')[0]);

  if (version >= 2) {
    Vue.mixin({
      beforeCreate: vuexInit
    });
  } else {
    // override init and inject vuex init procedure
    // for 1.x backwards compatibility.
    var _init = Vue.prototype._init;

    Vue.prototype._init = function (options) {
      if (options === void 0) options = {};
      options.init = options.init ? [vuexInit].concat(options.init) : vuexInit;

      _init.call(this, options);
    };
  }
  /**
   * Vuex init hook, injected into each instances init hooks list.
   */


  function vuexInit() {
    var options = this.$options; // store injection

    if (options.store) {
      this.$store = typeof options.store === 'function' ? options.store() : options.store;
    } else if (options.parent && options.parent.$store) {
      this.$store = options.parent.$store;
    }
  }
}

var target = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : {};
var devtoolHook = target.__VUE_DEVTOOLS_GLOBAL_HOOK__;

function devtoolPlugin(store) {
  if (!devtoolHook) {
    return;
  }

  store._devtoolHook = devtoolHook;
  devtoolHook.emit('vuex:init', store);
  devtoolHook.on('vuex:travel-to-state', function (targetState) {
    store.replaceState(targetState);
  });
  store.subscribe(function (mutation, state) {
    devtoolHook.emit('vuex:mutation', mutation, state);
  }, {
    prepend: true
  });
  store.subscribeAction(function (action, state) {
    devtoolHook.emit('vuex:action', action, state);
  }, {
    prepend: true
  });
}
/**
 * Get the first item that pass the test
 * by second argument function
 *
 * @param {Array} list
 * @param {Function} f
 * @return {*}
 */


function find(list, f) {
  return list.filter(f)[0];
}
/**
 * Deep copy the given object considering circular structure.
 * This function caches all nested objects and its copies.
 * If it detects circular structure, use cached copy to avoid infinite loop.
 *
 * @param {*} obj
 * @param {Array<Object>} cache
 * @return {*}
 */


function deepCopy(obj, cache) {
  if (cache === void 0) cache = []; // just return if obj is immutable value

  if (obj === null || typeof obj !== 'object') {
    return obj;
  } // if obj is hit, it is in circular structure


  var hit = find(cache, function (c) {
    return c.original === obj;
  });

  if (hit) {
    return hit.copy;
  }

  var copy = Array.isArray(obj) ? [] : {}; // put the copy into cache at first
  // because we want to refer it in recursive deepCopy

  cache.push({
    original: obj,
    copy: copy
  });
  Object.keys(obj).forEach(function (key) {
    copy[key] = deepCopy(obj[key], cache);
  });
  return copy;
}
/**
 * forEach for object
 */


function forEachValue(obj, fn) {
  Object.keys(obj).forEach(function (key) {
    return fn(obj[key], key);
  });
}

function isObject(obj) {
  return obj !== null && typeof obj === 'object';
}

function isPromise(val) {
  return val && typeof val.then === 'function';
}

function assert(condition, msg) {
  if (!condition) {
    throw new Error("[vuex] " + msg);
  }
}

function partial(fn, arg) {
  return function () {
    return fn(arg);
  };
} // Base data struct for store's module, package with some attribute and method


var Module = function Module(rawModule, runtime) {
  this.runtime = runtime; // Store some children item

  this._children = Object.create(null); // Store the origin module object which passed by programmer

  this._rawModule = rawModule;
  var rawState = rawModule.state; // Store the origin module's state

  this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};
};

var prototypeAccessors = {
  namespaced: {
    configurable: true
  }
};

prototypeAccessors.namespaced.get = function () {
  return !!this._rawModule.namespaced;
};

Module.prototype.addChild = function addChild(key, module) {
  this._children[key] = module;
};

Module.prototype.removeChild = function removeChild(key) {
  delete this._children[key];
};

Module.prototype.getChild = function getChild(key) {
  return this._children[key];
};

Module.prototype.hasChild = function hasChild(key) {
  return key in this._children;
};

Module.prototype.update = function update(rawModule) {
  this._rawModule.namespaced = rawModule.namespaced;

  if (rawModule.actions) {
    this._rawModule.actions = rawModule.actions;
  }

  if (rawModule.mutations) {
    this._rawModule.mutations = rawModule.mutations;
  }

  if (rawModule.getters) {
    this._rawModule.getters = rawModule.getters;
  }
};

Module.prototype.forEachChild = function forEachChild(fn) {
  forEachValue(this._children, fn);
};

Module.prototype.forEachGetter = function forEachGetter(fn) {
  if (this._rawModule.getters) {
    forEachValue(this._rawModule.getters, fn);
  }
};

Module.prototype.forEachAction = function forEachAction(fn) {
  if (this._rawModule.actions) {
    forEachValue(this._rawModule.actions, fn);
  }
};

Module.prototype.forEachMutation = function forEachMutation(fn) {
  if (this._rawModule.mutations) {
    forEachValue(this._rawModule.mutations, fn);
  }
};

Object.defineProperties(Module.prototype, prototypeAccessors);

var ModuleCollection = function ModuleCollection(rawRootModule) {
  // register root module (Vuex.Store options)
  this.register([], rawRootModule, false);
};

ModuleCollection.prototype.get = function get(path) {
  return path.reduce(function (module, key) {
    return module.getChild(key);
  }, this.root);
};

ModuleCollection.prototype.getNamespace = function getNamespace(path) {
  var module = this.root;
  return path.reduce(function (namespace, key) {
    module = module.getChild(key);
    return namespace + (module.namespaced ? key + '/' : '');
  }, '');
};

ModuleCollection.prototype.update = function update$1(rawRootModule) {
  update([], this.root, rawRootModule);
};

ModuleCollection.prototype.register = function register(path, rawModule, runtime) {
  var this$1 = this;
  if (runtime === void 0) runtime = true;

  if (false) {}

  var newModule = new Module(rawModule, runtime);

  if (path.length === 0) {
    this.root = newModule;
  } else {
    var parent = this.get(path.slice(0, -1));
    parent.addChild(path[path.length - 1], newModule);
  } // register nested modules


  if (rawModule.modules) {
    forEachValue(rawModule.modules, function (rawChildModule, key) {
      this$1.register(path.concat(key), rawChildModule, runtime);
    });
  }
};

ModuleCollection.prototype.unregister = function unregister(path) {
  var parent = this.get(path.slice(0, -1));
  var key = path[path.length - 1];
  var child = parent.getChild(key);

  if (!child) {
    if (false) {}

    return;
  }

  if (!child.runtime) {
    return;
  }

  parent.removeChild(key);
};

ModuleCollection.prototype.isRegistered = function isRegistered(path) {
  var parent = this.get(path.slice(0, -1));
  var key = path[path.length - 1];
  return parent.hasChild(key);
};

function update(path, targetModule, newModule) {
  if (false) {} // update target module


  targetModule.update(newModule); // update nested modules

  if (newModule.modules) {
    for (var key in newModule.modules) {
      if (!targetModule.getChild(key)) {
        if (false) {}

        return;
      }

      update(path.concat(key), targetModule.getChild(key), newModule.modules[key]);
    }
  }
}

var functionAssert = {
  assert: function (value) {
    return typeof value === 'function';
  },
  expected: 'function'
};
var objectAssert = {
  assert: function (value) {
    return typeof value === 'function' || typeof value === 'object' && typeof value.handler === 'function';
  },
  expected: 'function or object with "handler" function'
};
var assertTypes = {
  getters: functionAssert,
  mutations: functionAssert,
  actions: objectAssert
};

function assertRawModule(path, rawModule) {
  Object.keys(assertTypes).forEach(function (key) {
    if (!rawModule[key]) {
      return;
    }

    var assertOptions = assertTypes[key];
    forEachValue(rawModule[key], function (value, type) {
      assert(assertOptions.assert(value), makeAssertionMessage(path, key, type, value, assertOptions.expected));
    });
  });
}

function makeAssertionMessage(path, key, type, value, expected) {
  var buf = key + " should be " + expected + " but \"" + key + "." + type + "\"";

  if (path.length > 0) {
    buf += " in module \"" + path.join('.') + "\"";
  }

  buf += " is " + JSON.stringify(value) + ".";
  return buf;
}

var Vue; // bind on install

var Store = function Store(options) {
  var this$1 = this;
  if (options === void 0) options = {}; // Auto install if it is not done yet and `window` has `Vue`.
  // To allow users to avoid auto-installation in some cases,
  // this code should be placed here. See #731

  if (!Vue && typeof window !== 'undefined' && window.Vue) {
    install(window.Vue);
  }

  if (false) {}

  var plugins = options.plugins;
  if (plugins === void 0) plugins = [];
  var strict = options.strict;
  if (strict === void 0) strict = false; // store internal state

  this._committing = false;
  this._actions = Object.create(null);
  this._actionSubscribers = [];
  this._mutations = Object.create(null);
  this._wrappedGetters = Object.create(null);
  this._modules = new ModuleCollection(options);
  this._modulesNamespaceMap = Object.create(null);
  this._subscribers = [];
  this._watcherVM = new Vue();
  this._makeLocalGettersCache = Object.create(null); // bind commit and dispatch to self

  var store = this;
  var ref = this;
  var dispatch = ref.dispatch;
  var commit = ref.commit;

  this.dispatch = function boundDispatch(type, payload) {
    return dispatch.call(store, type, payload);
  };

  this.commit = function boundCommit(type, payload, options) {
    return commit.call(store, type, payload, options);
  }; // strict mode


  this.strict = strict;
  var state = this._modules.root.state; // init root module.
  // this also recursively registers all sub-modules
  // and collects all module getters inside this._wrappedGetters

  installModule(this, state, [], this._modules.root); // initialize the store vm, which is responsible for the reactivity
  // (also registers _wrappedGetters as computed properties)

  resetStoreVM(this, state); // apply plugins

  plugins.forEach(function (plugin) {
    return plugin(this$1);
  });
  var useDevtools = options.devtools !== undefined ? options.devtools : Vue.config.devtools;

  if (useDevtools) {
    devtoolPlugin(this);
  }
};

var prototypeAccessors$1 = {
  state: {
    configurable: true
  }
};

prototypeAccessors$1.state.get = function () {
  return this._vm._data.$$state;
};

prototypeAccessors$1.state.set = function (v) {
  if (false) {}
};

Store.prototype.commit = function commit(_type, _payload, _options) {
  var this$1 = this; // check object-style commit

  var ref = unifyObjectStyle(_type, _payload, _options);
  var type = ref.type;
  var payload = ref.payload;
  var options = ref.options;
  var mutation = {
    type: type,
    payload: payload
  };
  var entry = this._mutations[type];

  if (!entry) {
    if (false) {}

    return;
  }

  this._withCommit(function () {
    entry.forEach(function commitIterator(handler) {
      handler(payload);
    });
  });

  this._subscribers.slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe
  .forEach(function (sub) {
    return sub(mutation, this$1.state);
  });

  if (false) {}
};

Store.prototype.dispatch = function dispatch(_type, _payload) {
  var this$1 = this; // check object-style dispatch

  var ref = unifyObjectStyle(_type, _payload);
  var type = ref.type;
  var payload = ref.payload;
  var action = {
    type: type,
    payload: payload
  };
  var entry = this._actions[type];

  if (!entry) {
    if (false) {}

    return;
  }

  try {
    this._actionSubscribers.slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe
    .filter(function (sub) {
      return sub.before;
    }).forEach(function (sub) {
      return sub.before(action, this$1.state);
    });
  } catch (e) {
    if (false) {}
  }

  var result = entry.length > 1 ? Promise.all(entry.map(function (handler) {
    return handler(payload);
  })) : entry[0](payload);
  return new Promise(function (resolve, reject) {
    result.then(function (res) {
      try {
        this$1._actionSubscribers.filter(function (sub) {
          return sub.after;
        }).forEach(function (sub) {
          return sub.after(action, this$1.state);
        });
      } catch (e) {
        if (false) {}
      }

      resolve(res);
    }, function (error) {
      try {
        this$1._actionSubscribers.filter(function (sub) {
          return sub.error;
        }).forEach(function (sub) {
          return sub.error(action, this$1.state, error);
        });
      } catch (e) {
        if (false) {}
      }

      reject(error);
    });
  });
};

Store.prototype.subscribe = function subscribe(fn, options) {
  return genericSubscribe(fn, this._subscribers, options);
};

Store.prototype.subscribeAction = function subscribeAction(fn, options) {
  var subs = typeof fn === 'function' ? {
    before: fn
  } : fn;
  return genericSubscribe(subs, this._actionSubscribers, options);
};

Store.prototype.watch = function watch(getter, cb, options) {
  var this$1 = this;

  if (false) {}

  return this._watcherVM.$watch(function () {
    return getter(this$1.state, this$1.getters);
  }, cb, options);
};

Store.prototype.replaceState = function replaceState(state) {
  var this$1 = this;

  this._withCommit(function () {
    this$1._vm._data.$$state = state;
  });
};

Store.prototype.registerModule = function registerModule(path, rawModule, options) {
  if (options === void 0) options = {};

  if (typeof path === 'string') {
    path = [path];
  }

  if (false) {}

  this._modules.register(path, rawModule);

  installModule(this, this.state, path, this._modules.get(path), options.preserveState); // reset store to update getters...

  resetStoreVM(this, this.state);
};

Store.prototype.unregisterModule = function unregisterModule(path) {
  var this$1 = this;

  if (typeof path === 'string') {
    path = [path];
  }

  if (false) {}

  this._modules.unregister(path);

  this._withCommit(function () {
    var parentState = getNestedState(this$1.state, path.slice(0, -1));
    Vue.delete(parentState, path[path.length - 1]);
  });

  resetStore(this);
};

Store.prototype.hasModule = function hasModule(path) {
  if (typeof path === 'string') {
    path = [path];
  }

  if (false) {}

  return this._modules.isRegistered(path);
};

Store.prototype.hotUpdate = function hotUpdate(newOptions) {
  this._modules.update(newOptions);

  resetStore(this, true);
};

Store.prototype._withCommit = function _withCommit(fn) {
  var committing = this._committing;
  this._committing = true;
  fn();
  this._committing = committing;
};

Object.defineProperties(Store.prototype, prototypeAccessors$1);

function genericSubscribe(fn, subs, options) {
  if (subs.indexOf(fn) < 0) {
    options && options.prepend ? subs.unshift(fn) : subs.push(fn);
  }

  return function () {
    var i = subs.indexOf(fn);

    if (i > -1) {
      subs.splice(i, 1);
    }
  };
}

function resetStore(store, hot) {
  store._actions = Object.create(null);
  store._mutations = Object.create(null);
  store._wrappedGetters = Object.create(null);
  store._modulesNamespaceMap = Object.create(null);
  var state = store.state; // init all modules

  installModule(store, state, [], store._modules.root, true); // reset vm

  resetStoreVM(store, state, hot);
}

function resetStoreVM(store, state, hot) {
  var oldVm = store._vm; // bind store public getters

  store.getters = {}; // reset local getters cache

  store._makeLocalGettersCache = Object.create(null);
  var wrappedGetters = store._wrappedGetters;
  var computed = {};
  forEachValue(wrappedGetters, function (fn, key) {
    // use computed to leverage its lazy-caching mechanism
    // direct inline function use will lead to closure preserving oldVm.
    // using partial to return function with only arguments preserved in closure environment.
    computed[key] = partial(fn, store);
    Object.defineProperty(store.getters, key, {
      get: function () {
        return store._vm[key];
      },
      enumerable: true // for local getters

    });
  }); // use a Vue instance to store the state tree
  // suppress warnings just in case the user has added
  // some funky global mixins

  var silent = Vue.config.silent;
  Vue.config.silent = true;
  store._vm = new Vue({
    data: {
      $$state: state
    },
    computed: computed
  });
  Vue.config.silent = silent; // enable strict mode for new vm

  if (store.strict) {
    enableStrictMode(store);
  }

  if (oldVm) {
    if (hot) {
      // dispatch changes in all subscribed watchers
      // to force getter re-evaluation for hot reloading.
      store._withCommit(function () {
        oldVm._data.$$state = null;
      });
    }

    Vue.nextTick(function () {
      return oldVm.$destroy();
    });
  }
}

function installModule(store, rootState, path, module, hot) {
  var isRoot = !path.length;

  var namespace = store._modules.getNamespace(path); // register in namespace map


  if (module.namespaced) {
    if (store._modulesNamespaceMap[namespace] && "production" !== 'production') {
      console.error("[vuex] duplicate namespace " + namespace + " for the namespaced module " + path.join('/'));
    }

    store._modulesNamespaceMap[namespace] = module;
  } // set state


  if (!isRoot && !hot) {
    var parentState = getNestedState(rootState, path.slice(0, -1));
    var moduleName = path[path.length - 1];

    store._withCommit(function () {
      if (false) {}

      Vue.set(parentState, moduleName, module.state);
    });
  }

  var local = module.context = makeLocalContext(store, namespace, path);
  module.forEachMutation(function (mutation, key) {
    var namespacedType = namespace + key;
    registerMutation(store, namespacedType, mutation, local);
  });
  module.forEachAction(function (action, key) {
    var type = action.root ? key : namespace + key;
    var handler = action.handler || action;
    registerAction(store, type, handler, local);
  });
  module.forEachGetter(function (getter, key) {
    var namespacedType = namespace + key;
    registerGetter(store, namespacedType, getter, local);
  });
  module.forEachChild(function (child, key) {
    installModule(store, rootState, path.concat(key), child, hot);
  });
}
/**
 * make localized dispatch, commit, getters and state
 * if there is no namespace, just use root ones
 */


function makeLocalContext(store, namespace, path) {
  var noNamespace = namespace === '';
  var local = {
    dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {
      var args = unifyObjectStyle(_type, _payload, _options);
      var payload = args.payload;
      var options = args.options;
      var type = args.type;

      if (!options || !options.root) {
        type = namespace + type;

        if (false) {}
      }

      return store.dispatch(type, payload);
    },
    commit: noNamespace ? store.commit : function (_type, _payload, _options) {
      var args = unifyObjectStyle(_type, _payload, _options);
      var payload = args.payload;
      var options = args.options;
      var type = args.type;

      if (!options || !options.root) {
        type = namespace + type;

        if (false) {}
      }

      store.commit(type, payload, options);
    }
  }; // getters and state object must be gotten lazily
  // because they will be changed by vm update

  Object.defineProperties(local, {
    getters: {
      get: noNamespace ? function () {
        return store.getters;
      } : function () {
        return makeLocalGetters(store, namespace);
      }
    },
    state: {
      get: function () {
        return getNestedState(store.state, path);
      }
    }
  });
  return local;
}

function makeLocalGetters(store, namespace) {
  if (!store._makeLocalGettersCache[namespace]) {
    var gettersProxy = {};
    var splitPos = namespace.length;
    Object.keys(store.getters).forEach(function (type) {
      // skip if the target getter is not match this namespace
      if (type.slice(0, splitPos) !== namespace) {
        return;
      } // extract local getter type


      var localType = type.slice(splitPos); // Add a port to the getters proxy.
      // Define as getter property because
      // we do not want to evaluate the getters in this time.

      Object.defineProperty(gettersProxy, localType, {
        get: function () {
          return store.getters[type];
        },
        enumerable: true
      });
    });
    store._makeLocalGettersCache[namespace] = gettersProxy;
  }

  return store._makeLocalGettersCache[namespace];
}

function registerMutation(store, type, handler, local) {
  var entry = store._mutations[type] || (store._mutations[type] = []);
  entry.push(function wrappedMutationHandler(payload) {
    handler.call(store, local.state, payload);
  });
}

function registerAction(store, type, handler, local) {
  var entry = store._actions[type] || (store._actions[type] = []);
  entry.push(function wrappedActionHandler(payload) {
    var res = handler.call(store, {
      dispatch: local.dispatch,
      commit: local.commit,
      getters: local.getters,
      state: local.state,
      rootGetters: store.getters,
      rootState: store.state
    }, payload);

    if (!isPromise(res)) {
      res = Promise.resolve(res);
    }

    if (store._devtoolHook) {
      return res.catch(function (err) {
        store._devtoolHook.emit('vuex:error', err);

        throw err;
      });
    } else {
      return res;
    }
  });
}

function registerGetter(store, type, rawGetter, local) {
  if (store._wrappedGetters[type]) {
    if (false) {}

    return;
  }

  store._wrappedGetters[type] = function wrappedGetter(store) {
    return rawGetter(local.state, // local state
    local.getters, // local getters
    store.state, // root state
    store.getters // root getters
    );
  };
}

function enableStrictMode(store) {
  store._vm.$watch(function () {
    return this._data.$$state;
  }, function () {
    if (false) {}
  }, {
    deep: true,
    sync: true
  });
}

function getNestedState(state, path) {
  return path.reduce(function (state, key) {
    return state[key];
  }, state);
}

function unifyObjectStyle(type, payload, options) {
  if (isObject(type) && type.type) {
    options = payload;
    payload = type;
    type = type.type;
  }

  if (false) {}

  return {
    type: type,
    payload: payload,
    options: options
  };
}

function install(_Vue) {
  if (Vue && _Vue === Vue) {
    if (false) {}

    return;
  }

  Vue = _Vue;
  applyMixin(Vue);
}
/**
 * Reduce the code which written in Vue.js for getting the state.
 * @param {String} [namespace] - Module's namespace
 * @param {Object|Array} states # Object's item can be a function which accept state and getters for param, you can do something for state and getters in it.
 * @param {Object}
 */


var mapState = normalizeNamespace(function (namespace, states) {
  var res = {};

  if (false) {}

  normalizeMap(states).forEach(function (ref) {
    var key = ref.key;
    var val = ref.val;

    res[key] = function mappedState() {
      var state = this.$store.state;
      var getters = this.$store.getters;

      if (namespace) {
        var module = getModuleByNamespace(this.$store, 'mapState', namespace);

        if (!module) {
          return;
        }

        state = module.context.state;
        getters = module.context.getters;
      }

      return typeof val === 'function' ? val.call(this, state, getters) : state[val];
    }; // mark vuex getter for devtools


    res[key].vuex = true;
  });
  return res;
});
/**
 * Reduce the code which written in Vue.js for committing the mutation
 * @param {String} [namespace] - Module's namespace
 * @param {Object|Array} mutations # Object's item can be a function which accept `commit` function as the first param, it can accept anthor params. You can commit mutation and do any other things in this function. specially, You need to pass anthor params from the mapped function.
 * @return {Object}
 */

var mapMutations = normalizeNamespace(function (namespace, mutations) {
  var res = {};

  if (false) {}

  normalizeMap(mutations).forEach(function (ref) {
    var key = ref.key;
    var val = ref.val;

    res[key] = function mappedMutation() {
      var args = [],
          len = arguments.length;

      while (len--) args[len] = arguments[len]; // Get the commit method from store


      var commit = this.$store.commit;

      if (namespace) {
        var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);

        if (!module) {
          return;
        }

        commit = module.context.commit;
      }

      return typeof val === 'function' ? val.apply(this, [commit].concat(args)) : commit.apply(this.$store, [val].concat(args));
    };
  });
  return res;
});
/**
 * Reduce the code which written in Vue.js for getting the getters
 * @param {String} [namespace] - Module's namespace
 * @param {Object|Array} getters
 * @return {Object}
 */

var mapGetters = normalizeNamespace(function (namespace, getters) {
  var res = {};

  if (false) {}

  normalizeMap(getters).forEach(function (ref) {
    var key = ref.key;
    var val = ref.val; // The namespace has been mutated by normalizeNamespace

    val = namespace + val;

    res[key] = function mappedGetter() {
      if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {
        return;
      }

      if (false) {}

      return this.$store.getters[val];
    }; // mark vuex getter for devtools


    res[key].vuex = true;
  });
  return res;
});
/**
 * Reduce the code which written in Vue.js for dispatch the action
 * @param {String} [namespace] - Module's namespace
 * @param {Object|Array} actions # Object's item can be a function which accept `dispatch` function as the first param, it can accept anthor params. You can dispatch action and do any other things in this function. specially, You need to pass anthor params from the mapped function.
 * @return {Object}
 */

var mapActions = normalizeNamespace(function (namespace, actions) {
  var res = {};

  if (false) {}

  normalizeMap(actions).forEach(function (ref) {
    var key = ref.key;
    var val = ref.val;

    res[key] = function mappedAction() {
      var args = [],
          len = arguments.length;

      while (len--) args[len] = arguments[len]; // get dispatch function from store


      var dispatch = this.$store.dispatch;

      if (namespace) {
        var module = getModuleByNamespace(this.$store, 'mapActions', namespace);

        if (!module) {
          return;
        }

        dispatch = module.context.dispatch;
      }

      return typeof val === 'function' ? val.apply(this, [dispatch].concat(args)) : dispatch.apply(this.$store, [val].concat(args));
    };
  });
  return res;
});
/**
 * Rebinding namespace param for mapXXX function in special scoped, and return them by simple object
 * @param {String} namespace
 * @return {Object}
 */

var createNamespacedHelpers = function (namespace) {
  return {
    mapState: mapState.bind(null, namespace),
    mapGetters: mapGetters.bind(null, namespace),
    mapMutations: mapMutations.bind(null, namespace),
    mapActions: mapActions.bind(null, namespace)
  };
};
/**
 * Normalize the map
 * normalizeMap([1, 2, 3]) => [ { key: 1, val: 1 }, { key: 2, val: 2 }, { key: 3, val: 3 } ]
 * normalizeMap({a: 1, b: 2, c: 3}) => [ { key: 'a', val: 1 }, { key: 'b', val: 2 }, { key: 'c', val: 3 } ]
 * @param {Array|Object} map
 * @return {Object}
 */


function normalizeMap(map) {
  if (!isValidMap(map)) {
    return [];
  }

  return Array.isArray(map) ? map.map(function (key) {
    return {
      key: key,
      val: key
    };
  }) : Object.keys(map).map(function (key) {
    return {
      key: key,
      val: map[key]
    };
  });
}
/**
 * Validate whether given map is valid or not
 * @param {*} map
 * @return {Boolean}
 */


function isValidMap(map) {
  return Array.isArray(map) || isObject(map);
}
/**
 * Return a function expect two param contains namespace and map. it will normalize the namespace and then the param's function will handle the new namespace and the map.
 * @param {Function} fn
 * @return {Function}
 */


function normalizeNamespace(fn) {
  return function (namespace, map) {
    if (typeof namespace !== 'string') {
      map = namespace;
      namespace = '';
    } else if (namespace.charAt(namespace.length - 1) !== '/') {
      namespace += '/';
    }

    return fn(namespace, map);
  };
}
/**
 * Search a special module from store by namespace. if module not exist, print error message.
 * @param {Object} store
 * @param {String} helper
 * @param {String} namespace
 * @return {Object}
 */


function getModuleByNamespace(store, helper, namespace) {
  var module = store._modulesNamespaceMap[namespace];

  if (false) {}

  return module;
} // Credits: borrowed code from fcomb/redux-logger


function createLogger(ref) {
  if (ref === void 0) ref = {};
  var collapsed = ref.collapsed;
  if (collapsed === void 0) collapsed = true;
  var filter = ref.filter;
  if (filter === void 0) filter = function (mutation, stateBefore, stateAfter) {
    return true;
  };
  var transformer = ref.transformer;
  if (transformer === void 0) transformer = function (state) {
    return state;
  };
  var mutationTransformer = ref.mutationTransformer;
  if (mutationTransformer === void 0) mutationTransformer = function (mut) {
    return mut;
  };
  var actionFilter = ref.actionFilter;
  if (actionFilter === void 0) actionFilter = function (action, state) {
    return true;
  };
  var actionTransformer = ref.actionTransformer;
  if (actionTransformer === void 0) actionTransformer = function (act) {
    return act;
  };
  var logMutations = ref.logMutations;
  if (logMutations === void 0) logMutations = true;
  var logActions = ref.logActions;
  if (logActions === void 0) logActions = true;
  var logger = ref.logger;
  if (logger === void 0) logger = console;
  return function (store) {
    var prevState = deepCopy(store.state);

    if (typeof logger === 'undefined') {
      return;
    }

    if (logMutations) {
      store.subscribe(function (mutation, state) {
        var nextState = deepCopy(state);

        if (filter(mutation, prevState, nextState)) {
          var formattedTime = getFormattedTime();
          var formattedMutation = mutationTransformer(mutation);
          var message = "mutation " + mutation.type + formattedTime;
          startMessage(logger, message, collapsed);
          logger.log('%c prev state', 'color: #9E9E9E; font-weight: bold', transformer(prevState));
          logger.log('%c mutation', 'color: #03A9F4; font-weight: bold', formattedMutation);
          logger.log('%c next state', 'color: #4CAF50; font-weight: bold', transformer(nextState));
          endMessage(logger);
        }

        prevState = nextState;
      });
    }

    if (logActions) {
      store.subscribeAction(function (action, state) {
        if (actionFilter(action, state)) {
          var formattedTime = getFormattedTime();
          var formattedAction = actionTransformer(action);
          var message = "action " + action.type + formattedTime;
          startMessage(logger, message, collapsed);
          logger.log('%c action', 'color: #03A9F4; font-weight: bold', formattedAction);
          endMessage(logger);
        }
      });
    }
  };
}

function startMessage(logger, message, collapsed) {
  var startMessage = collapsed ? logger.groupCollapsed : logger.group; // render

  try {
    startMessage.call(logger, message);
  } catch (e) {
    logger.log(message);
  }
}

function endMessage(logger) {
  try {
    logger.groupEnd();
  } catch (e) {
    logger.log('—— log end ——');
  }
}

function getFormattedTime() {
  var time = new Date();
  return " @ " + pad(time.getHours(), 2) + ":" + pad(time.getMinutes(), 2) + ":" + pad(time.getSeconds(), 2) + "." + pad(time.getMilliseconds(), 3);
}

function repeat(str, times) {
  return new Array(times + 1).join(str);
}

function pad(num, maxLength) {
  return repeat('0', maxLength - num.toString().length) + num;
}

var index = {
  Store: Store,
  install: install,
  version: '3.5.1',
  mapState: mapState,
  mapMutations: mapMutations,
  mapGetters: mapGetters,
  mapActions: mapActions,
  createNamespacedHelpers: createNamespacedHelpers,
  createLogger: createLogger
};
/* harmony default export */ __webpack_exports__["default"] = (index);

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(19)))

/***/ }),
/* 70 */
/***/ (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__(89);
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__(0).default
var update = add("7b48eb81", content, true, {});

/***/ }),
/* 71 */
/***/ (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__(91);
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__(0).default
var update = add("ad6db420", content, true, {});

/***/ }),
/* 72 */
/***/ (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__(94);
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__(0).default
var update = add("1aa7e687", content, true, {});

/***/ }),
/* 73 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.LostPasswordApiResponses = void 0;
const ErrorResponse_1 = __webpack_require__(44);
const BaseResponse_1 = __webpack_require__(22);
class LostPasswordApiResponses {
}
exports.LostPasswordApiResponses = LostPasswordApiResponses;
LostPasswordApiResponses.REQUEST = {
    SUCCESS: {
        CODE_SENT: new BaseResponse_1.BaseResponse(1, "Kód pro obnovení hesla zaslán")
    },
    ERROR: {
        INVALID_BODY: new ErrorResponse_1.ErrorResponse(-1, "Nesprávné tělo požadavku"),
        USERNAME_NOT_FOUND: new ErrorResponse_1.ErrorResponse(-2, "Uživatelské jméno neexistuje"),
        TOO_MANY_REQUESTS: new ErrorResponse_1.ErrorResponse(-3, "Příliš mnoho požadavků", 429)
    }
};
LostPasswordApiResponses.CONFIRM = {
    SUCCESS: {
        PASSWORD_CHANGED: new BaseResponse_1.BaseResponse(1, "Nastaveno nové heslo")
    },
    ERROR: {
        INVALID_BODY: new ErrorResponse_1.ErrorResponse(-1, "Nesprávné tělo požadavku"),
        INVALID_RECOVERY_CODE: new ErrorResponse_1.ErrorResponse(-2, "Nesprávný ověřovací kód"),
        TOO_MANY_REQUESTS: new ErrorResponse_1.ErrorResponse(-3, "Příliš mnoho požadavků", 429)
    }
};


/***/ }),
/* 74 */
/***/ (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__(98);
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__(0).default
var update = add("66800224", content, true, {});

/***/ }),
/* 75 */
/***/ (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__(100);
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__(0).default
var update = add("13532fda", content, true, {});

/***/ }),
/* 76 */
/***/ (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__(102);
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__(0).default
var update = add("5cad5a7c", content, true, {});

/***/ }),
/* 77 */
/***/ (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__(104);
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__(0).default
var update = add("c44b6b90", content, true, {});

/***/ }),
/* 78 */
/***/ (function(module, exports, __webpack_require__) {

(function (t, e) {
   true ? module.exports = e() : undefined;
})("undefined" !== typeof self ? self : this, function () {
  return function (t) {
    var e = {};

    function n(r) {
      if (e[r]) return e[r].exports;
      var o = e[r] = {
        i: r,
        l: !1,
        exports: {}
      };
      return t[r].call(o.exports, o, o.exports, n), o.l = !0, o.exports;
    }

    return n.m = t, n.c = e, n.d = function (t, e, r) {
      n.o(t, e) || Object.defineProperty(t, e, {
        configurable: !1,
        enumerable: !0,
        get: r
      });
    }, n.n = function (t) {
      var e = t && t.__esModule ? function () {
        return t["default"];
      } : function () {
        return t;
      };
      return n.d(e, "a", e), e;
    }, n.o = function (t, e) {
      return Object.prototype.hasOwnProperty.call(t, e);
    }, n.p = "./", n(n.s = 0);
  }({
    0: function (t, e, n) {
      t.exports = n("vgs7");
    },
    A5qe: function (t, e, n) {
      (function (n) {
        var r,
            o,
            a,
            i = {
          scope: {}
        };
        i.defineProperty = "function" == typeof Object.defineProperties ? Object.defineProperty : function (t, e, n) {
          if (n.get || n.set) throw new TypeError("ES3 does not support getters and setters.");
          t != Array.prototype && t != Object.prototype && (t[e] = n.value);
        }, i.getGlobal = function (t) {
          return "undefined" != typeof window && window === t ? t : "undefined" != typeof n && null != n ? n : t;
        }, i.global = i.getGlobal(this), i.SYMBOL_PREFIX = "jscomp_symbol_", i.initSymbol = function () {
          i.initSymbol = function () {}, i.global.Symbol || (i.global.Symbol = i.Symbol);
        }, i.symbolCounter_ = 0, i.Symbol = function (t) {
          return i.SYMBOL_PREFIX + (t || "") + i.symbolCounter_++;
        }, i.initSymbolIterator = function () {
          i.initSymbol();
          var t = i.global.Symbol.iterator;
          t || (t = i.global.Symbol.iterator = i.global.Symbol("iterator")), "function" != typeof Array.prototype[t] && i.defineProperty(Array.prototype, t, {
            configurable: !0,
            writable: !0,
            value: function () {
              return i.arrayIterator(this);
            }
          }), i.initSymbolIterator = function () {};
        }, i.arrayIterator = function (t) {
          var e = 0;
          return i.iteratorPrototype(function () {
            return e < t.length ? {
              done: !1,
              value: t[e++]
            } : {
              done: !0
            };
          });
        }, i.iteratorPrototype = function (t) {
          return i.initSymbolIterator(), t = {
            next: t
          }, t[i.global.Symbol.iterator] = function () {
            return this;
          }, t;
        }, i.array = i.array || {}, i.iteratorFromArray = function (t, e) {
          i.initSymbolIterator(), t instanceof String && (t += "");
          var n = 0,
              r = {
            next: function () {
              if (n < t.length) {
                var o = n++;
                return {
                  value: e(o, t[o]),
                  done: !1
                };
              }

              return r.next = function () {
                return {
                  done: !0,
                  value: void 0
                };
              }, r.next();
            }
          };
          return r[Symbol.iterator] = function () {
            return r;
          }, r;
        }, i.polyfill = function (t, e, n, r) {
          if (e) {
            for (n = i.global, t = t.split("."), r = 0; r < t.length - 1; r++) {
              var o = t[r];
              o in n || (n[o] = {}), n = n[o];
            }

            t = t[t.length - 1], r = n[t], e = e(r), e != r && null != e && i.defineProperty(n, t, {
              configurable: !0,
              writable: !0,
              value: e
            });
          }
        }, i.polyfill("Array.prototype.keys", function (t) {
          return t || function () {
            return i.iteratorFromArray(this, function (t) {
              return t;
            });
          };
        }, "es6-impl", "es3");
        var u = this;

        (function (n, i) {
          o = [], r = i, a = "function" === typeof r ? r.apply(e, o) : r, void 0 === a || (t.exports = a);
        })(0, function () {
          function t(t) {
            if (!L.col(t)) try {
              return document.querySelectorAll(t);
            } catch (t) {}
          }

          function e(t, e) {
            for (var n = t.length, r = 2 <= arguments.length ? arguments[1] : void 0, o = [], a = 0; a < n; a++) if (a in t) {
              var i = t[a];
              e.call(r, i, a, t) && o.push(i);
            }

            return o;
          }

          function n(t) {
            return t.reduce(function (t, e) {
              return t.concat(L.arr(e) ? n(e) : e);
            }, []);
          }

          function r(e) {
            return L.arr(e) ? e : (L.str(e) && (e = t(e) || e), e instanceof NodeList || e instanceof HTMLCollection ? [].slice.call(e) : [e]);
          }

          function o(t, e) {
            return t.some(function (t) {
              return t === e;
            });
          }

          function a(t) {
            var e,
                n = {};

            for (e in t) n[e] = t[e];

            return n;
          }

          function i(t, e) {
            var n,
                r = a(t);

            for (n in t) r[n] = e.hasOwnProperty(n) ? e[n] : t[n];

            return r;
          }

          function s(t, e) {
            var n,
                r = a(t);

            for (n in e) r[n] = L.und(t[n]) ? e[n] : t[n];

            return r;
          }

          function f(t) {
            t = t.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i, function (t, e, n, r) {
              return e + e + n + n + r + r;
            });
            var e = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);
            t = parseInt(e[1], 16);
            var n = parseInt(e[2], 16);
            e = parseInt(e[3], 16);
            return "rgba(" + t + "," + n + "," + e + ",1)";
          }

          function c(t) {
            function e(t, e, n) {
              return 0 > n && (n += 1), 1 < n && --n, n < 1 / 6 ? t + 6 * (e - t) * n : .5 > n ? e : n < 2 / 3 ? t + (e - t) * (2 / 3 - n) * 6 : t;
            }

            var n = /hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(t) || /hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(t);
            t = parseInt(n[1]) / 360;
            var r = parseInt(n[2]) / 100,
                o = parseInt(n[3]) / 100;
            n = n[4] || 1;
            if (0 == r) o = r = t = o;else {
              var a = .5 > o ? o * (1 + r) : o + r - o * r,
                  i = 2 * o - a;
              o = e(i, a, t + 1 / 3), r = e(i, a, t);
              t = e(i, a, t - 1 / 3);
            }
            return "rgba(" + 255 * o + "," + 255 * r + "," + 255 * t + "," + n + ")";
          }

          function l(t) {
            if (t = /([\+\-]?[0-9#\.]+)(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(t)) return t[2];
          }

          function d(t) {
            return -1 < t.indexOf("translate") || "perspective" === t ? "px" : -1 < t.indexOf("rotate") || -1 < t.indexOf("skew") ? "deg" : void 0;
          }

          function p(t, e) {
            return L.fnc(t) ? t(e.target, e.id, e.total) : t;
          }

          function m(t, e) {
            if (e in t.style) return getComputedStyle(t).getPropertyValue(e.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase()) || "0";
          }

          function y(t, e) {
            return L.dom(t) && o($, e) ? "transform" : L.dom(t) && (t.getAttribute(e) || L.svg(t) && t[e]) ? "attribute" : L.dom(t) && "transform" !== e && m(t, e) ? "css" : null != t[e] ? "object" : void 0;
          }

          function g(t, n) {
            var r = d(n);
            r = -1 < n.indexOf("scale") ? 1 : 0 + r;
            if (t = t.style.transform, !t) return r;

            for (var o = [], a = [], i = [], u = /(\w+)\((.+?)\)/g; o = u.exec(t);) a.push(o[1]), i.push(o[2]);

            return t = e(i, function (t, e) {
              return a[e] === n;
            }), t.length ? t[0] : r;
          }

          function h(t, e) {
            switch (y(t, e)) {
              case "transform":
                return g(t, e);

              case "css":
                return m(t, e);

              case "attribute":
                return t.getAttribute(e);
            }

            return t[e] || 0;
          }

          function v(t, e) {
            var n = /^(\*=|\+=|-=)/.exec(t);
            if (!n) return t;
            var r = l(t) || 0;

            switch (e = parseFloat(e), t = parseFloat(t.replace(n[0], "")), n[0][0]) {
              case "+":
                return e + t + r;

              case "-":
                return e - t + r;

              case "*":
                return e * t + r;
            }
          }

          function b(t, e) {
            return Math.sqrt(Math.pow(e.x - t.x, 2) + Math.pow(e.y - t.y, 2));
          }

          function x(t) {
            t = t.points;

            for (var e, n = 0, r = 0; r < t.numberOfItems; r++) {
              var o = t.getItem(r);
              0 < r && (n += b(e, o)), e = o;
            }

            return n;
          }

          function w(t) {
            if (t.getTotalLength) return t.getTotalLength();

            switch (t.tagName.toLowerCase()) {
              case "circle":
                return 2 * Math.PI * t.getAttribute("r");

              case "rect":
                return 2 * t.getAttribute("width") + 2 * t.getAttribute("height");

              case "line":
                return b({
                  x: t.getAttribute("x1"),
                  y: t.getAttribute("y1")
                }, {
                  x: t.getAttribute("x2"),
                  y: t.getAttribute("y2")
                });

              case "polyline":
                return x(t);

              case "polygon":
                var e = t.points;
                return x(t) + b(e.getItem(e.numberOfItems - 1), e.getItem(0));
            }
          }

          function S(t, e) {
            function n(n) {
              return n = void 0 === n ? 0 : n, t.el.getPointAtLength(1 <= e + n ? e + n : 0);
            }

            var r = n(),
                o = n(-1),
                a = n(1);

            switch (t.property) {
              case "x":
                return r.x;

              case "y":
                return r.y;

              case "angle":
                return 180 * Math.atan2(a.y - o.y, a.x - o.x) / Math.PI;
            }
          }

          function A(t, e) {
            var n,
                r = /-?\d*\.?\d+/g;
            if (n = L.pth(t) ? t.totalLength : t, L.col(n)) {
              if (L.rgb(n)) {
                var o = /rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(n);
                n = o ? "rgba(" + o[1] + ",1)" : n;
              } else n = L.hex(n) ? f(n) : L.hsl(n) ? c(n) : void 0;
            } else o = (o = l(n)) ? n.substr(0, n.length - o.length) : n, n = e && !/\s/g.test(n) ? o + e : o;
            return n += "", {
              original: n,
              numbers: n.match(r) ? n.match(r).map(Number) : [0],
              strings: L.str(t) || e ? n.split(r) : []
            };
          }

          function _(t) {
            return t = t ? n(L.arr(t) ? t.map(r) : r(t)) : [], e(t, function (t, e, n) {
              return n.indexOf(t) === e;
            });
          }

          function O(t) {
            var e = _(t);

            return e.map(function (t, n) {
              return {
                target: t,
                id: n,
                total: e.length
              };
            });
          }

          function M(t, e) {
            var n = a(e);

            if (L.arr(t)) {
              var o = t.length;
              2 !== o || L.obj(t[0]) ? L.fnc(e.duration) || (n.duration = e.duration / o) : t = {
                value: t
              };
            }

            return r(t).map(function (t, n) {
              return n = n ? 0 : e.delay, t = L.obj(t) && !L.pth(t) ? t : {
                value: t
              }, L.und(t.delay) && (t.delay = n), t;
            }).map(function (t) {
              return s(t, n);
            });
          }

          function P(t, e) {
            var n,
                r = {};

            for (n in t) {
              var o = p(t[n], e);
              L.arr(o) && (o = o.map(function (t) {
                return p(t, e);
              }), 1 === o.length && (o = o[0])), r[n] = o;
            }

            return r.duration = parseFloat(r.duration), r.delay = parseFloat(r.delay), r;
          }

          function I(t) {
            return L.arr(t) ? R.apply(this, t) : X[t];
          }

          function j(t, e) {
            var n;
            return t.tweens.map(function (r) {
              r = P(r, e);
              var o = r.value,
                  a = h(e.target, t.name),
                  i = n ? n.to.original : a,
                  u = (i = L.arr(o) ? o[0] : i, v(L.arr(o) ? o[1] : o, i));
              a = l(u) || l(i) || l(a);
              return r.from = A(i, a), r.to = A(u, a), r.start = n ? n.end : t.offset, r.end = r.start + r.delay + r.duration, r.easing = I(r.easing), r.elasticity = (1e3 - Math.min(Math.max(r.elasticity, 1), 999)) / 1e3, r.isPath = L.pth(o), r.isColor = L.col(r.from.original), r.isColor && (r.round = 1), n = r;
            });
          }

          function F(t, r) {
            return e(n(t.map(function (t) {
              return r.map(function (e) {
                var n = y(t.target, e.name);

                if (n) {
                  var r = j(e, t);
                  e = {
                    type: n,
                    property: e.name,
                    animatable: t,
                    tweens: r,
                    duration: r[r.length - 1].end,
                    delay: r[0].delay
                  };
                } else e = void 0;

                return e;
              });
            })), function (t) {
              return !L.und(t);
            });
          }

          function C(t, e, n, r) {
            var o = "delay" === t;
            return e.length ? (o ? Math.min : Math.max).apply(Math, e.map(function (e) {
              return e[t];
            })) : o ? r.delay : n.offset + r.delay + r.duration;
          }

          function k(t) {
            var e,
                n = i(N, t),
                r = i(V, t),
                o = O(t.targets),
                a = [],
                u = s(n, r);

            for (e in t) u.hasOwnProperty(e) || "targets" === e || a.push({
              name: e,
              offset: u.offset,
              tweens: M(t[e], r)
            });

            return t = F(o, a), s(n, {
              children: [],
              animatables: o,
              animations: t,
              duration: C("duration", t, n, r),
              delay: C("delay", t, n, r)
            });
          }

          function E(t) {
            function n() {
              return window.Promise && new Promise(function (t) {
                return l = t;
              });
            }

            function r(t) {
              return p.reversed ? p.duration - t : t;
            }

            function o(t) {
              for (var n = 0, r = {}, o = p.animations, a = o.length; n < a;) {
                var i = o[n],
                    u = i.animatable,
                    s = i.tweens,
                    f = s.length - 1,
                    c = s[f];
                f && (c = e(s, function (e) {
                  return t < e.end;
                })[0] || c);
                s = Math.min(Math.max(t - c.start - c.delay, 0), c.duration) / c.duration;

                for (var l = isNaN(s) ? 1 : c.easing(s, c.elasticity), d = (s = c.to.strings, c.round), y = (f = [], void 0), g = (y = c.to.numbers.length, 0); g < y; g++) {
                  var h = void 0,
                      v = (h = c.to.numbers[g], c.from.numbers[g]);
                  h = c.isPath ? S(c.value, l * h) : v + l * (h - v);
                  d && (c.isColor && 2 < g || (h = Math.round(h * d) / d)), f.push(h);
                }

                if (c = s.length) for (y = s[0], l = 0; l < c; l++) d = s[l + 1], g = f[l], isNaN(g) || (y = d ? y + (g + d) : y + (g + " "));else y = f[0];
                q[i.type](u.target, i.property, y, r, u.id), i.currentValue = y, n++;
              }

              if (n = Object.keys(r).length) for (o = 0; o < n; o++) T || (T = m(document.body, "transform") ? "transform" : "-webkit-transform"), p.animatables[o].target.style[T] = r[o].join(" ");
              p.currentTime = t, p.progress = t / p.duration * 100;
            }

            function a(t) {
              p[t] && p[t](p);
            }

            function i() {
              p.remaining && !0 !== p.remaining && p.remaining--;
            }

            function u(t) {
              var e = p.duration,
                  u = p.offset,
                  m = u + p.delay,
                  y = p.currentTime,
                  g = p.reversed,
                  h = r(t);

              if (p.children.length) {
                var v = p.children,
                    b = v.length;
                if (h >= p.currentTime) for (var x = 0; x < b; x++) v[x].seek(h);else for (; b--;) v[b].seek(h);
              }

              (h >= m || !e) && (p.began || (p.began = !0, a("begin")), a("run")), h > u && h < e ? o(h) : (h <= u && 0 !== y && (o(0), g && i()), (h >= e && y !== e || !e) && (o(e), g || i())), a("update"), t >= e && (p.remaining ? (f = s, "alternate" === p.direction && (p.reversed = !p.reversed)) : (p.pause(), p.completed || (p.completed = !0, a("complete"), "Promise" in window && (l(), d = n()))), c = 0);
            }

            t = void 0 === t ? {} : t;
            var s,
                f,
                c = 0,
                l = null,
                d = n(),
                p = k(t);
            return p.reset = function () {
              var t = p.direction,
                  e = p.loop;

              for (p.currentTime = 0, p.progress = 0, p.paused = !0, p.began = !1, p.completed = !1, p.reversed = "reverse" === t, p.remaining = "alternate" === t && 1 === e ? 2 : e, o(0), t = p.children.length; t--;) p.children[t].reset();
            }, p.tick = function (t) {
              s = t, f || (f = s), u((c + s - f) * E.speed);
            }, p.seek = function (t) {
              u(r(t));
            }, p.pause = function () {
              var t = Y.indexOf(p);
              -1 < t && Y.splice(t, 1), p.paused = !0;
            }, p.play = function () {
              p.paused && (p.paused = !1, f = 0, c = r(p.currentTime), Y.push(p), Z || B());
            }, p.reverse = function () {
              p.reversed = !p.reversed, f = 0, c = r(p.currentTime);
            }, p.restart = function () {
              p.pause(), p.reset(), p.play();
            }, p.finished = d, p.reset(), p.autoplay && p.play(), p;
          }

          var T,
              N = {
            update: void 0,
            begin: void 0,
            run: void 0,
            complete: void 0,
            loop: 1,
            direction: "normal",
            autoplay: !0,
            offset: 0
          },
              V = {
            duration: 1e3,
            delay: 0,
            easing: "easeOutElastic",
            elasticity: 500,
            round: 0
          },
              $ = "translateX translateY translateZ rotate rotateX rotateY rotateZ scale scaleX scaleY scaleZ skewX skewY perspective".split(" "),
              L = {
            arr: function (t) {
              return Array.isArray(t);
            },
            obj: function (t) {
              return -1 < Object.prototype.toString.call(t).indexOf("Object");
            },
            pth: function (t) {
              return L.obj(t) && t.hasOwnProperty("totalLength");
            },
            svg: function (t) {
              return t instanceof SVGElement;
            },
            dom: function (t) {
              return t.nodeType || L.svg(t);
            },
            str: function (t) {
              return "string" === typeof t;
            },
            fnc: function (t) {
              return "function" === typeof t;
            },
            und: function (t) {
              return "undefined" === typeof t;
            },
            hex: function (t) {
              return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);
            },
            rgb: function (t) {
              return /^rgb/.test(t);
            },
            hsl: function (t) {
              return /^hsl/.test(t);
            },
            col: function (t) {
              return L.hex(t) || L.rgb(t) || L.hsl(t);
            }
          },
              R = function () {
            function t(t, e, n) {
              return (((1 - 3 * n + 3 * e) * t + (3 * n - 6 * e)) * t + 3 * e) * t;
            }

            return function (e, n, r, o) {
              if (0 <= e && 1 >= e && 0 <= r && 1 >= r) {
                var a = new Float32Array(11);
                if (e !== n || r !== o) for (var i = 0; 11 > i; ++i) a[i] = t(.1 * i, e, r);
                return function (i) {
                  if (e === n && r === o) return i;
                  if (0 === i) return 0;
                  if (1 === i) return 1;

                  for (var u = 0, s = 1; 10 !== s && a[s] <= i; ++s) u += .1;

                  --s;
                  s = u + (i - a[s]) / (a[s + 1] - a[s]) * .1;
                  var f = 3 * (1 - 3 * r + 3 * e) * s * s + 2 * (3 * r - 6 * e) * s + 3 * e;

                  if (.001 <= f) {
                    for (u = 0; 4 > u; ++u) {
                      if (f = 3 * (1 - 3 * r + 3 * e) * s * s + 2 * (3 * r - 6 * e) * s + 3 * e, 0 === f) break;
                      var c = t(s, e, r) - i;
                      s = s - c / f;
                    }

                    i = s;
                  } else if (0 === f) i = s;else {
                    s = u, u = u + .1;
                    var l = 0;

                    do {
                      c = s + (u - s) / 2, f = t(c, e, r) - i, 0 < f ? u = c : s = c;
                    } while (1e-7 < Math.abs(f) && 10 > ++l);

                    i = c;
                  }

                  return t(i, n, o);
                };
              }
            };
          }(),
              X = function () {
            function t(t, e) {
              return 0 === t || 1 === t ? t : -Math.pow(2, 10 * (t - 1)) * Math.sin(2 * (t - 1 - e / (2 * Math.PI) * Math.asin(1)) * Math.PI / e);
            }

            var e,
                n = "Quad Cubic Quart Quint Sine Expo Circ Back Elastic".split(" "),
                r = {
              In: [[.55, .085, .68, .53], [.55, .055, .675, .19], [.895, .03, .685, .22], [.755, .05, .855, .06], [.47, 0, .745, .715], [.95, .05, .795, .035], [.6, .04, .98, .335], [.6, -.28, .735, .045], t],
              Out: [[.25, .46, .45, .94], [.215, .61, .355, 1], [.165, .84, .44, 1], [.23, 1, .32, 1], [.39, .575, .565, 1], [.19, 1, .22, 1], [.075, .82, .165, 1], [.175, .885, .32, 1.275], function (e, n) {
                return 1 - t(1 - e, n);
              }],
              InOut: [[.455, .03, .515, .955], [.645, .045, .355, 1], [.77, 0, .175, 1], [.86, 0, .07, 1], [.445, .05, .55, .95], [1, 0, 0, 1], [.785, .135, .15, .86], [.68, -.55, .265, 1.55], function (e, n) {
                return .5 > e ? t(2 * e, n) / 2 : 1 - t(-2 * e + 2, n) / 2;
              }]
            },
                o = {
              linear: R(.25, .25, .75, .75)
            },
                a = {};

            for (e in r) a.type = e, r[a.type].forEach(function (t) {
              return function (e, r) {
                o["ease" + t.type + n[r]] = L.fnc(e) ? e : R.apply(u, e);
              };
            }(a)), a = {
              type: a.type
            };

            return o;
          }(),
              q = {
            css: function (t, e, n) {
              return t.style[e] = n;
            },
            attribute: function (t, e, n) {
              return t.setAttribute(e, n);
            },
            object: function (t, e, n) {
              return t[e] = n;
            },
            transform: function (t, e, n, r, o) {
              r[o] || (r[o] = []), r[o].push(e + "(" + n + ")");
            }
          },
              Y = [],
              Z = 0,
              B = function () {
            function t() {
              Z = requestAnimationFrame(e);
            }

            function e(e) {
              var n = Y.length;

              if (n) {
                for (var r = 0; r < n;) Y[r] && Y[r].tick(e), r++;

                t();
              } else cancelAnimationFrame(Z), Z = 0;
            }

            return t;
          }();

          return E.version = "2.2.0", E.speed = 1, E.running = Y, E.remove = function (t) {
            t = _(t);

            for (var e = Y.length; e--;) for (var n = Y[e], r = n.animations, a = r.length; a--;) o(t, r[a].animatable.target) && (r.splice(a, 1), r.length || n.pause());
          }, E.getValue = h, E.path = function (e, n) {
            var r = L.str(e) ? t(e)[0] : e,
                o = n || 100;
            return function (t) {
              return {
                el: r,
                property: t,
                totalLength: w(r) * (o / 100)
              };
            };
          }, E.setDashoffset = function (t) {
            var e = w(t);
            return t.setAttribute("stroke-dasharray", e), e;
          }, E.bezier = R, E.easings = X, E.timeline = function (t) {
            var e = E(t);
            return e.pause(), e.duration = 0, e.add = function (n) {
              return e.children.forEach(function (t) {
                t.began = !0, t.completed = !0;
              }), r(n).forEach(function (n) {
                var r = s(n, i(V, t || {}));
                r.targets = r.targets || t.targets, n = e.duration;
                var o = r.offset;
                r.autoplay = !1, r.direction = e.direction, r.offset = L.und(o) ? n : v(o, n), e.began = !0, e.completed = !0, e.seek(r.offset), r = E(r), r.began = !0, r.completed = !0, r.duration > n && (e.duration = r.duration), e.children.push(r);
              }), e.seek(0), e.reset(), e.autoplay && e.restart(), e;
            }, e;
          }, E.random = function (t, e) {
            return Math.floor(Math.random() * (e - t + 1)) + t;
          }, E;
        });
      }).call(e, n("DuR2"));
    },
    DuR2: function (t, e) {
      var n;

      n = function () {
        return this;
      }();

      try {
        n = n || Function("return this")() || (0, eval)("this");
      } catch (t) {
        "object" === typeof window && (n = window);
      }

      t.exports = n;
    },
    vgs7: function (t, e, n) {
      "use strict";

      Object.defineProperty(e, "__esModule", {
        value: !0
      });

      var r = n("A5qe"),
          o = n.n(r),
          a = {
        props: {
          value: {
            type: [Number, String],
            default: "0",
            required: !0
          },
          formatValue: {
            type: Function,
            default: function (t) {
              return t;
            }
          },
          easing: {
            type: String,
            default: "linear"
          },
          duration: {
            type: Number,
            default: 1e3
          },
          update: Function,
          begin: Function,
          complete: Function,
          run: Function,
          delay: {
            type: Number,
            default: 0
          },
          round: {
            default: null
          }
        },
        data: function () {
          return {
            animatedValue: 0
          };
        },
        mounted: function () {
          this.animateValue(this.value);
        },
        watch: {
          value: function (t) {
            this.animateValue(t);
          }
        },
        methods: {
          animateValue: function (t) {
            var e = this.begin,
                n = this.easing,
                r = this.duration,
                a = this.complete,
                i = this.update,
                u = this.run,
                s = this.delay,
                f = this.round;
            o()({
              targets: this,
              animatedValue: t,
              duration: r,
              easing: n,
              update: i,
              begin: e,
              complete: a,
              run: u,
              delay: s,
              round: f
            });
          }
        }
      },
          i = function () {
        var t = this,
            e = t.$createElement,
            n = t._self._c || e;
        return n("span", {
          domProps: {
            innerHTML: t._s(t.formatValue(Number(t.animatedValue)))
          }
        });
      },
          u = [];

      function s(t, e, n, r, o, a, i, u) {
        t = t || {};
        var s = typeof t.default;
        "object" !== s && "function" !== s || (t = t.default);
        var f,
            c = "function" === typeof t ? t.options : t;
        if (e && (c.render = e, c.staticRenderFns = n, c._compiled = !0), r && (c.functional = !0), a && (c._scopeId = a), i ? (f = function (t) {
          t = t || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, t || "undefined" === typeof __VUE_SSR_CONTEXT__ || (t = __VUE_SSR_CONTEXT__), o && o.call(this, t), t && t._registeredComponents && t._registeredComponents.add(i);
        }, c._ssrRegister = f) : o && (f = u ? function () {
          o.call(this, this.$root.$options.shadowRoot);
        } : o), f) if (c.functional) {
          c._injectStyles = f;
          var l = c.render;

          c.render = function (t, e) {
            return f.call(e), l(t, e);
          };
        } else {
          var d = c.beforeCreate;
          c.beforeCreate = d ? [].concat(d, f) : [f];
        }
        return {
          exports: t,
          options: c
        };
      }

      var f = !1,
          c = null,
          l = null,
          d = null,
          p = s(a, i, u, f, c, l, d),
          m = p.exports;
      e["default"] = m;
    }
  })["default"];
});

/***/ }),
/* 79 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.FavouriteButton = void 0;
const axios_1 = __importDefault(__webpack_require__(7));
const FAVOURITE_EVENTS_ADDED_TO_FAVOURITE = 1;
const FAVOURITE_EVENTS_INVALID_BODY = -1;
const FAVOURITE_EVENTS_ERROR = -2;
function addToFavourite(eventId, state) {
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const response = yield axios_1.default({
                method: "POST",
                url: "/api/favourite-events",
                data: { eventId, state }
            });
            if (response.data.code === 1) {
                return FAVOURITE_EVENTS_ADDED_TO_FAVOURITE;
            }
        }
        catch (error) {
            //TODO code
            if (error.response.status === 409) {
                return 2;
            }
            else {
                return 3;
            }
        }
    });
}
const FavouriteButton = {
    name: "FavouriteButton",
    props: {
        label: {
            type: String,
            default: ""
        },
        isfavourite: {
            type: Boolean,
            default: false
        },
        eventid: {
            type: Number,
            default: undefined
        }
    },
    data() {
        return {
            isFavourite: this.$props.isfavourite
        };
    },
    methods: {
        addToFavourite: function () {
            return __awaiter(this, void 0, void 0, function* () {
                const response = yield addToFavourite(this.$props.eventid, !this.isFavourite);
                if (response === FAVOURITE_EVENTS_ADDED_TO_FAVOURITE) {
                    this.isFavourite = !this.isFavourite;
                    this.buttonClasses(this.isFavourite);
                }
                else {
                    this.openLoginDialog();
                }
            });
        },
        buttonClasses: function (state) {
            return {
                "main-program-detail--header-subtitle-favorite": !state,
                "main-program-detail--header-subtitle-favorite-filled": state
            };
        },
        openLoginDialog: function () {
            this.$store.commit("openLoginDialogByFavouriteButton");
        }
    }
};
exports.FavouriteButton = FavouriteButton;


/***/ }),
/* 80 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
__webpack_require__(81);
__webpack_require__(82);
__webpack_require__(83);
__webpack_require__(85);
const vue_1 = __importDefault(__webpack_require__(3));
const vuex_1 = __importDefault(__webpack_require__(69));
const vuex_script_1 = __webpack_require__(87);
vue_1.default.component("test", __webpack_require__(173).default);
vue_1.default.component("reverse", __webpack_require__(92).default);
// base
vue_1.default.component("login-button", __webpack_require__(172).default);
// index
vue_1.default.component("animated-number-root", __webpack_require__(174).default);
// contacts
vue_1.default.component("email-button", __webpack_require__(175).default);
// account
vue_1.default.component("account-page", __webpack_require__(176).default);
// password dialog
vue_1.default.component("password-form", __webpack_require__(177).default);
// favourite button
vue_1.default.component("favourite-button", __webpack_require__(178).default);
vue_1.default.use(vuex_1.default);
new vue_1.default({
    el: "#app",
    store: vuex_script_1.getStore(),
    data: {}
});


/***/ }),
/* 81 */,
/* 82 */,
/* 83 */
/***/ (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__(84);
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__(0).default
var update = add("7a47ab7b", content, true, {});

/***/ }),
/* 84 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 85 */
/***/ (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__(86);
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__(0).default
var update = add("c7c17a4a", content, true, {});

/***/ }),
/* 86 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 87 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getStore = void 0;
const vuex_1 = __importDefault(__webpack_require__(69));
function getStore() {
    return new vuex_1.default.Store({
        //plugins: [createPersistedState()],
        state: {
            count: 0,
            loginDialogOpened: false,
            passwordDialogOpened: false,
            loginDialogOpenedByFavouriteButton: false,
            username: ""
        },
        mutations: {
            increment(state) {
                state.count++;
            },
            openLoginDialog(state) {
                state.loginDialogOpened = true;
            },
            closeLoginDialog(state) {
                state.loginDialogOpened = false;
            },
            openLoginDialogByFavouriteButton(state) {
                state.loginDialogOpenedByFavouriteButton = true;
            },
            closeLoginDialogByFavouriteButton(state) {
                state.loginDialogOpenedByFavouriteButton = false;
            },
            openPasswordDialog(state) {
                state.passwordDialogOpened = true;
            },
            closePasswordDialog(state) {
                state.passwordDialogOpened = false;
            },
            setUsername(state, value) {
                state.username = value;
            }
        }
    });
}
exports.getStore = getStore;


/***/ }),
/* 88 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_EmailForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(70);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_EmailForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_EmailForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 89 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 90 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_Test_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_Test_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_Test_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 91 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 92 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _ReverseMessage_vue_vue_type_template_id_03523e79___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67);
/* harmony import */ var _ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(51);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _ReverseMessage_pcss_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(93);
/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2);






/* normalize component */

var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(
  _ReverseMessage_ts_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  _ReverseMessage_vue_vue_type_template_id_03523e79___WEBPACK_IMPORTED_MODULE_0__[/* render */ "a"],
  _ReverseMessage_vue_vue_type_template_id_03523e79___WEBPACK_IMPORTED_MODULE_0__[/* staticRenderFns */ "b"],
  false,
  null,
  null,
  null
  
)

/* harmony default export */ __webpack_exports__["default"] = (component.exports);

/***/ }),
/* 93 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_ReverseMessage_pcss_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_ReverseMessage_pcss_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_ReverseMessage_pcss_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 94 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 95 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.RegisterUserWebApiResponses = void 0;
const BaseResponse_1 = __webpack_require__(22);
const ErrorResponse_1 = __webpack_require__(44);
class RegisterUserWebApiResponses {
}
exports.RegisterUserWebApiResponses = RegisterUserWebApiResponses;
RegisterUserWebApiResponses.ERROR = {
    INVALID_BODY: new ErrorResponse_1.ErrorResponse(-1, "Nesprávné tělo požadavku"),
    USERNAME_EXISTS: new ErrorResponse_1.ErrorResponse(-2, "E-mail již existuje", 409),
    CANNOT_REGISTER: new ErrorResponse_1.ErrorResponse(-3, "Nelze registrovat uživatele")
};
RegisterUserWebApiResponses.SUCCESS = {
    USER_REGISTERED: new BaseResponse_1.BaseResponse(1, "Uživatel registrován")
};


/***/ }),
/* 96 */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.LoginUserWebApiResponses = void 0;
const BaseResponse_1 = __webpack_require__(22);
const ErrorResponse_1 = __webpack_require__(44);
class LoginUserWebApiResponses {
}
exports.LoginUserWebApiResponses = LoginUserWebApiResponses;
LoginUserWebApiResponses.SUCCESS = {
    REQUESTED_LOGIN: new BaseResponse_1.BaseResponse(1, "Žádost o přihlášení úspěšná.")
};
LoginUserWebApiResponses.ERROR = {
    INVALID_CREDENTIALS: new ErrorResponse_1.ErrorResponse(-1, "Uživatelské jméno a heslo nesouhlasí.", 401),
    CANT_LOGIN: new ErrorResponse_1.ErrorResponse(-2, "Nepodařilo se přihlásit"),
    INVALID_BODY: new ErrorResponse_1.ErrorResponse(-3, "Nesprávné tělo")
};


/***/ }),
/* 97 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(74);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_LoginForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 98 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 99 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_AccountPage_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_AccountPage_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_AccountPage_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 100 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 101 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(76);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_PasswordForm_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 102 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 103 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_FavouriteButton_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77);
/* harmony import */ var _node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_FavouriteButton_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_dist_cjs_js_ref_3_2_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_resolve_url_loader_index_js_ref_3_3_node_modules_postcss_loader_dist_cjs_js_ref_3_4_node_modules_vue_loader_lib_index_js_vue_loader_options_FavouriteButton_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
/* unused harmony reexport * */


/***/ }),
/* 104 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin


/***/ }),
/* 105 */,
/* 106 */,
/* 107 */,
/* 108 */,
/* 109 */,
/* 110 */,
/* 111 */,
/* 112 */,
/* 113 */,
/* 114 */,
/* 115 */,
/* 116 */,
/* 117 */,
/* 118 */,
/* 119 */,
/* 120 */,
/* 121 */,
/* 122 */,
/* 123 */,
/* 124 */,
/* 125 */,
/* 126 */,
/* 127 */,
/* 128 */,
/* 129 */,
/* 130 */,
/* 131 */,
/* 132 */,
/* 133 */,
/* 134 */,
/* 135 */,
/* 136 */,
/* 137 */,
/* 138 */,
/* 139 */,
/* 140 */,
/* 141 */,
/* 142 */,
/* 143 */,
/* 144 */,
/* 145 */,
/* 146 */,
/* 147 */,
/* 148 */,
/* 149 */,
/* 150 */,
/* 151 */,
/* 152 */,
/* 153 */,
/* 154 */,
/* 155 */,
/* 156 */,
/* 157 */,
/* 158 */,
/* 159 */,
/* 160 */,
/* 161 */,
/* 162 */,
/* 163 */,
/* 164 */,
/* 165 */,
/* 166 */,
/* 167 */,
/* 168 */,
/* 169 */,
/* 170 */,
/* 171 */,
/* 172 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/login_button/LoginButton.vue?vue&type=template&id=cdb9a9dc&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{attrs:{"href":"#"},on:{"click":_vm.openLoginDialog}},[_vm._v(_vm._s(_vm.label))])}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/login_button/LoginButton.vue?vue&type=template&id=cdb9a9dc&

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.min.js
var vue_min = __webpack_require__(3);
var vue_min_default = /*#__PURE__*/__webpack_require__.n(vue_min);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/login_dialog/LoginDialog.vue?vue&type=template&id=180593cd&scoped=true&
var LoginDialogvue_type_template_id_180593cd_scoped_true_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isVisible || _vm.isVisibleByFavouriteButton)?_c('login-form',{attrs:{"login-before-add-to-favourite-hint":_vm.isVisibleByFavouriteButton,"text":_vm.text,"urls":_vm.urls,"header":_vm.text.labelLogin,"lost-password-api-url":_vm.lostPasswordApiUrl,"lost-password-api-key":_vm.lostPasswordApiKey},on:{"dialog-closed":_vm.onDialogClosed}}):_vm._e()}
var LoginDialogvue_type_template_id_180593cd_scoped_true_staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/login_dialog/LoginDialog.vue?vue&type=template&id=180593cd&scoped=true&

// EXTERNAL MODULE: ./node_modules/vue-js-modal/dist/index.js
var dist = __webpack_require__(6);
var dist_default = /*#__PURE__*/__webpack_require__.n(dist);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/login_form/LoginForm.vue?vue&type=template&id=b75004a8&lang=html&
var LoginFormvue_type_template_id_b75004a8_lang_html_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('modal',{attrs:{"click-to-close":_vm.isClosable,"name":"loginModalDialog","width":"540","adaptive":"","height":"auto"},on:{"closed":_vm.sendCloseToParent}},[_c('form',{ref:"confirmForm",attrs:{"action":"/api/confirm-login","method":"POST"}},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.token),expression:"token"}],attrs:{"type":"hidden","name":"token"},domProps:{"value":(_vm.token)},on:{"input":function($event){if($event.target.composing){ return; }_vm.token=$event.target.value}}})]),_vm._v(" "),_c('form',{staticClass:"needs-validation",attrs:{"novalidate":""}},[(_vm.visibleContent)?_c('div',{staticClass:"popup-overlay-container"},[_c('span',{staticClass:"popup-overlay-container--close",on:{"click":_vm.closeDialog}}),_vm._v(" "),_c('div',{staticClass:"popup-overlay-container--content"},[_c('div',{staticClass:"popup-title"},[_c('span',[_vm._v(_vm._s(_vm.dialogHeader))])]),_vm._v(" "),(_vm.loginBeforeAddToFavouriteHint && !_vm.invalidResendPasswordBody && !_vm.resendPasswordFailed)?_c('div',{staticClass:"addToFavouriteHint"},[_c('span',[_vm._v(_vm._s(_vm.text.loginBeforeAddToFavouriteHint))])]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"form-group"},[(!_vm.emailSent)?_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.email),expression:"email"}],class:_vm.emailClasses(),attrs:{"name":"email","type":"text","placeholder":_vm.text.placeholderEmail},domProps:{"value":(_vm.email)},on:{"input":function($event){if($event.target.composing){ return; }_vm.email=$event.target.value}}}):_vm._e(),_vm._v(" "),(_vm.emailSent)?_c('span',[_vm._v(_vm._s(_vm.text.newPasswordResent))]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n              "+_vm._s(_vm.text.emailNonValid)+"\n            ")]),_vm._v(" "),(_vm.resendPasswordFailed)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.resendPasswordFailed)+"\n            ")]):_vm._e(),_vm._v(" "),(_vm.invalidResendPasswordBody)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.invalidBody)+"\n            ")]):_vm._e()]),_vm._v(" "),_c('div',{staticClass:"form-group"},[(_vm.register || _vm.login)?_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.password),expression:"password"}],class:_vm.passwordClasses(),attrs:{"name":"password","type":"password","placeholder":_vm.text.placeholderPassword},domProps:{"value":(_vm.password)},on:{"input":function($event){if($event.target.composing){ return; }_vm.password=$event.target.value}}}):_vm._e(),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n              "+_vm._s(_vm.text.passwordNonValid)+"\n            ")]),_vm._v(" "),(_vm.loginFailed)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.loginFailed)+"\n            ")]):_vm._e(),_vm._v(" "),(_vm.invalidBody)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.invalidBody)+"\n            ")]):_vm._e(),_vm._v(" "),(_vm.cannotLogin)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.cannotLogin)+"\n            ")]):_vm._e()]),_vm._v(" "),_c('div',{staticClass:"form-group"},[(_vm.register)?_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.passwordMatch),expression:"passwordMatch"}],class:_vm.passwordMatchClasses(),attrs:{"type":"password","placeholder":_vm.text.placeholderMatchPassword},domProps:{"value":(_vm.passwordMatch)},on:{"input":function($event){if($event.target.composing){ return; }_vm.passwordMatch=$event.target.value}}}):_vm._e(),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n              "+_vm._s(_vm.text.passwordMismatch)+"\n            ")]),_vm._v(" "),(_vm.registerFailed)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.registerFailed)+"\n            ")]):_vm._e(),_vm._v(" "),(_vm.invalidRegisterBody)?_c('div',{staticClass:"loginFailed"},[_vm._v("\n              "+_vm._s(_vm.text.invalidBody)+"\n            ")]):_vm._e()]),_vm._v(" "),(_vm.register)?_c('div',{staticClass:"terms-of-conditions"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.checked),expression:"checked"}],attrs:{"id":"trigger","type":"checkbox"},domProps:{"checked":Array.isArray(_vm.checked)?_vm._i(_vm.checked,null)>-1:(_vm.checked)},on:{"change":function($event){var $$a=_vm.checked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.checked=$$a.concat([$$v]))}else{$$i>-1&&(_vm.checked=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.checked=$$c}}}}),_vm._v(" "),_c('label',{staticClass:"checker",attrs:{"for":"trigger"}}),_vm._v(" "),_c('span',{staticClass:"terms-of-conditions-text"},[_vm._v("\n              "+_vm._s(_vm.text.iAgreeWith)+" "),_c('a',{attrs:{"href":_vm.urls.privacyUrl}},[_vm._v(_vm._s(_vm.text.privacyPolicy))]),_vm._v(" "+_vm._s(_vm.text.and)+"\n              "),_c('a',{attrs:{"href":_vm.urls.cookiesUrl}},[_vm._v(_vm._s(_vm.text.cookiesPolicy))])])]):_vm._e(),_vm._v(" "),(_vm.register && _vm.invalidCheck)?_c('div',{staticClass:"not-checked"},[_vm._v("\n            "+_vm._s(_vm.text.notChecked)+"\n          ")]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"popup-btns"},[_c('div',{staticClass:"small-btns"},[(!_vm.login)?_c('a',{staticClass:"popup-btn-cancel popup-open popup-pass-trigger",attrs:{"href":""},on:{"click":_vm.loginForm}},[_vm._v(_vm._s(_vm.text.labelButtonLogin))]):_vm._e(),_vm._v(" "),(!_vm.login)?_c('br'):_vm._e(),_vm._v(" "),(!_vm.register)?_c('a',{staticClass:"popup-btn-cancel popup-open popup-pass-trigger",attrs:{"href":""},on:{"click":_vm.registerUserForm}},[_vm._v("\n                "+_vm._s(_vm.text.labelButtonRegister))]):_vm._e(),_vm._v(" "),(!_vm.register)?_c('br'):_vm._e(),_vm._v(" "),(_vm.login)?_c('a',{staticClass:"popup-btn-cancel popup-open popup-pass-trigger",attrs:{"href":""},on:{"click":_vm.newPasswordForm}},[_vm._v(_vm._s(_vm.text.labelButtonNewPassword))]):_vm._e()]),_vm._v(" "),(!_vm.emailSent)?_c('button',{staticClass:"btn-main",attrs:{"type":"submit"},on:{"click":_vm.sendData}},[_vm._v("\n              "+_vm._s(_vm.text.labelButtonSend)+"\n            ")]):_vm._e()])])]):_vm._e(),_vm._v(" "),(!_vm.visibleContent)?_c('div',{staticClass:"spinner center"},[_c('spinner',{attrs:{"size":"large","line-fg-color":"#fdbd0f"}})],1):_vm._e()])])],1)}
var LoginFormvue_type_template_id_b75004a8_lang_html_staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/login_form/LoginForm.vue?vue&type=template&id=b75004a8&lang=html&

// EXTERNAL MODULE: ./node_modules/vue-simple-spinner/dist/vue-simple-spinner.js
var vue_simple_spinner = __webpack_require__(20);

// EXTERNAL MODULE: ./src/ui/scripts/lostPassword.script.ts
var lostPassword_script = __webpack_require__(48);

// EXTERNAL MODULE: ./src/ui/scripts/register.script.ts
var register_script = __webpack_require__(49);

// EXTERNAL MODULE: ./src/ui/scripts/login.script.ts
var login_script = __webpack_require__(45);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/login_form/LoginForm.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//





vue_min_default.a.component("spinner", vue_simple_spinner);
const DIALOG_NAME = "loginModalDialog";
const LoginForm = {
  name: "LoginForm",
  props: {
    text: {
      type: Object,
      default: {}
    },
    header: {
      type: String,
      default: ""
    },
    loginBeforeAddToFavouriteHint: {
      type: Boolean,
      default: false
    },
    urls: {
      type: Object,
      default: {}
    },
    lostPasswordApiUrl: {
      type: String,
      default: ""
    },
    lostPasswordApiKey: {
      type: String,
      default: ""
    }
  },

  data() {
    return {
      dialogHeader: this.$props.header,
      email: "",
      password: "",
      passwordMatch: "",
      token: "",
      invalidEmail: false,
      invalidPassword: false,
      passwordMismatch: false,
      login: true,
      register: false,
      resendPassword: false,
      loginFailed: false,
      registerFailed: false,
      cannotLogin: false,
      invalidBody: false,
      invalidRegisterBody: false,
      resendPasswordFailed: false,
      invalidCheck: false,
      invalidResendPasswordBody: false,
      emailSent: false,
      visibleContent: true,
      checked: false
    };
  },

  computed: {
    isClosable: function () {
      return false;
    },
    opened: function () {
      return this.$store.state.loginDialogOpened;
    }
  },
  watch: {
    opened: function () {
      this.openDialog();
    }
  },

  mounted() {
    this.$modal.show(DIALOG_NAME);
  },

  methods: {
    closeDialog: function (e) {
      if (e) e.preventDefault();
      this.$modal.hide(DIALOG_NAME);
    },
    onEmailSent: function () {
      this.$store.commit("openPasswordDialog");
      this.$store.commit("setUsername", this.email);
    },
    openDialog: function () {
      this.$modal.show(DIALOG_NAME);
    },
    sendCloseToParent: function () {
      this.$emit("dialog-closed");
    },
    sendData: async function (e) {
      e.preventDefault();

      if (this.validate()) {
        this.visibleContent = false;

        if (this.login) {
          await this.loginUser();
        } else if (this.register) {
          await this.createAccount();
        } else {
          await this.lostPassword();
        }
      }
    },
    loginUser: async function () {
      const response = await Object(login_script["login"])(this.email, this.password);

      if (response.code === login_script["LOGIN_RESPONSE_INVALID_CREDENTIALS"]) {
        this.loginFailed = true;
        this.visibleContent = true;
      } else if (response.code === login_script["LOGIN_RESPONSE_CANT_LOGIN"]) {
        this.cannotLogin = true;
        this.visibleContent = true;
      } else if (response.code === login_script["LOGIN_RESPONSE_INVALID_BODY"]) {
        this.invalidBody = true;
        this.visibleContent = true;
      } else if (response.code === login_script["LOGIN_RESPONSE_REQUESTED_LOGIN"]) {
        this.token = response.authToken;
        await this.$nextTick();
        this.$refs.confirmForm.submit();
      }
    },
    createAccount: async function () {
      const response = await Object(register_script["createAccount"])(this.email, this.password);

      if (response.code === register_script["REGISTER_RESPONSE_USER_REGISTERED"]) {
        this.token = response.authToken;
        await this.$nextTick();
        this.$refs.confirmForm.submit();
      } else if (response.code === register_script["REGISTER_RESPONSE_USERNAME_EXISTS"]) {
        this.registerFailed = true;
        this.visibleContent = true;
      } else if (response.code === register_script["REGISTER_RESPONSE_CANNOT_REGISTER"]) {
        this.invalidRegisterBody = true;
        this.visibleContent = true;
      }
    },
    lostPassword: async function () {
      const response = await Object(lostPassword_script["lostPassword"])(this.email, this.lostPasswordApiUrl, this.lostPasswordApiKey);

      if (response === lostPassword_script["RESEND_PASSWORD_CODE_SENT"]) {
        this.emailSent = true;
        this.onEmailSent();
        this.closeDialog();
      } else if (response === lostPassword_script["RESEND_PASSWORD_USERNAME_NOT_FOUND"]) {
        this.resendPasswordFailed = true;
        this.visibleContent = true;
      } else if (response === lostPassword_script["RESEND_PASSWORD_INVALID_BODY"]) {
        this.invalidResendPasswordBody = true;
        this.visibleContent = true;
      } else {
        console.log("Unknown error: " + response);
      }
    },
    registerUserForm: function (e) {
      e.preventDefault();
      this.login = false;
      this.register = true;
      this.resendPassword = false;
      this.invalidEmail = false;
      this.invalidPassword = false;
      this.passwordMismatch = false;
      this.loginFailed = false;
      this.invalidBody = false;
      this.registerFailed = false;
      this.invalidRegisterBody = false;
      this.resendPasswordFailed = false;
      this.invalidResendPasswordBody = false;
      this.emailSent = false;
      this.dialogHeader = this.$props.text.labelRegister;
    },
    newPasswordForm: function (e) {
      e.preventDefault();
      this.login = false;
      this.register = false;
      this.resendPassword = true;
      this.invalidEmail = false;
      this.invalidPassword = false;
      this.passwordMismatch = false;
      this.loginFailed = false;
      this.registerFailed = false;
      this.invalidRegisterBody = false;
      this.invalidBody = false;
      this.resendPasswordFailed = false;
      this.invalidResendPasswordBody = false;
      this.emailSent = false;
      this.dialogHeader = this.$props.text.labelResendPassword;
    },
    loginForm: function (e) {
      e.preventDefault();
      this.login = true;
      this.register = false;
      this.resendPassword = false;
      this.invalidEmail = false;
      this.invalidPassword = false;
      this.passwordMismatch = false;
      this.loginFailed = false;
      this.registerFailed = false;
      this.invalidRegisterBody = false;
      this.invalidBody = false;
      this.resendPasswordFailed = false;
      this.invalidResendPasswordBody = false;
      this.emailSent = false;
      this.dialogHeader = this.$props.text.labelLogin;
    },
    validate: function () {
      if (this.login) {
        this.invalidEmail = !/^[^\s@]+@[^\s@]+\.[^\s@]+/.test(this.email);
        this.invalidPassword = !this.password || this.password < 6;
        return !(this.invalidEmail || this.invalidPassword);
      } else if (this.register) {
        this.invalidEmail = !/^[^\s@]+@[^\s@]+\.[^\s@]+/.test(this.email);
        this.invalidPassword = !this.password || this.password < 6;
        this.passwordMismatch = !this.passwordMatch || this.password !== this.passwordMatch;
        this.invalidCheck = !this.checked;
        return !(this.invalidEmail || this.invalidPassword || this.passwordMismatch || this.invalidCheck);
      } else {
        this.invalidEmail = !/^[^\s@]+@[^\s@]+\.[^\s@]+/.test(this.email);
        return !this.invalidEmail;
      }
    },
    emailClasses: function () {
      return {
        "is-invalid": this.invalidEmail,
        "form-control": true
      };
    },
    passwordClasses: function () {
      return {
        "is-invalid": this.invalidPassword,
        "form-control": true
      };
    },
    passwordMatchClasses: function () {
      return {
        "is-invalid": this.passwordMismatch,
        "form-control": true
      };
    },
    notChecked: function () {
      return {
        "not-checked": this.invalidCheck
      };
    }
  }
};
/* harmony default export */ var LoginFormvue_type_script_lang_js_ = (LoginForm);
// CONCATENATED MODULE: ./src/ui/components/login_form/LoginForm.vue?vue&type=script&lang=js&
 /* harmony default export */ var login_form_LoginFormvue_type_script_lang_js_ = (LoginFormvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/login_form/LoginForm.vue?vue&type=style&index=0&lang=css&
var LoginFormvue_type_style_index_0_lang_css_ = __webpack_require__(97);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/login_form/LoginForm.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  login_form_LoginFormvue_type_script_lang_js_,
  LoginFormvue_type_template_id_b75004a8_lang_html_render,
  LoginFormvue_type_template_id_b75004a8_lang_html_staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var login_form_LoginForm = (component.exports);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/login_dialog/LoginDialog.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//



vue_min_default.a.use(dist_default.a);
vue_min_default.a.component("login-form", login_form_LoginForm);
const LoginDialog = {
  data() {
    return {};
  },

  props: {
    text: {
      type: Object,
      default: {}
    },
    urls: {
      type: Object,
      default: {}
    },
    lostPasswordApiUrl: {
      type: String,
      default: ""
    },
    lostPasswordApiKey: {
      type: String,
      default: ""
    }
  },
  computed: {
    isVisible() {
      return this.$store.state.loginDialogOpened;
    },

    isVisibleByFavouriteButton() {
      return this.$store.state.loginDialogOpenedByFavouriteButton;
    }

  },
  methods: {
    onDialogClosed: function () {
      this.$store.commit("closeLoginDialog");
      this.$store.commit("closeLoginDialogByFavouriteButton");
    }
  }
};
/* harmony default export */ var LoginDialogvue_type_script_lang_js_ = (LoginDialog);
// CONCATENATED MODULE: ./src/ui/components/login_dialog/LoginDialog.vue?vue&type=script&lang=js&
 /* harmony default export */ var login_dialog_LoginDialogvue_type_script_lang_js_ = (LoginDialogvue_type_script_lang_js_); 
// CONCATENATED MODULE: ./src/ui/components/login_dialog/LoginDialog.vue





/* normalize component */

var LoginDialog_component = Object(componentNormalizer["a" /* default */])(
  login_dialog_LoginDialogvue_type_script_lang_js_,
  LoginDialogvue_type_template_id_180593cd_scoped_true_render,
  LoginDialogvue_type_template_id_180593cd_scoped_true_staticRenderFns,
  false,
  null,
  "180593cd",
  null
  
)

/* harmony default export */ var login_dialog_LoginDialog = (LoginDialog_component.exports);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/login_button/LoginButton.vue?vue&type=script&lang=js&
//
//
//
//


vue_min_default.a.component("login-dialog", login_dialog_LoginDialog);
const LoginButton = {
  data() {
    return {};
  },

  props: {
    label: {
      type: String,
      default: ""
    }
  },
  methods: {
    openLoginDialog: function (e) {
      e.preventDefault();
      this.$store.commit("openLoginDialog");
    }
  }
};
/* harmony default export */ var LoginButtonvue_type_script_lang_js_ = (LoginButton);
// CONCATENATED MODULE: ./src/ui/components/login_button/LoginButton.vue?vue&type=script&lang=js&
 /* harmony default export */ var login_button_LoginButtonvue_type_script_lang_js_ = (LoginButtonvue_type_script_lang_js_); 
// CONCATENATED MODULE: ./src/ui/components/login_button/LoginButton.vue





/* normalize component */

var LoginButton_component = Object(componentNormalizer["a" /* default */])(
  login_button_LoginButtonvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var login_button_LoginButton = __webpack_exports__["default"] = (LoginButton_component.exports);

/***/ }),
/* 173 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/test/Test.vue?vue&type=template&id=970d5a56&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('button',{staticClass:"btn btn-primary",on:{"click":_vm.onTodo}},[_vm._v("Rock me "+_vm._s(_vm.foo)+" ("+_vm._s(_vm.count)+")")]),_vm._v(" "),_c('button',{staticClass:"btn btn-primary",on:{"click":_vm.showDialog}},[_vm._v("Join us to AmishSoft")]),_vm._v(" "),(_vm.dialogVisible)?_c('my-component'):_vm._e()],1)}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/test/Test.vue?vue&type=template&id=970d5a56&

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.min.js
var vue_min = __webpack_require__(3);
var vue_min_default = /*#__PURE__*/__webpack_require__.n(vue_min);

// EXTERNAL MODULE: ./node_modules/vue-js-modal/dist/index.js
var dist = __webpack_require__(6);
var dist_default = /*#__PURE__*/__webpack_require__.n(dist);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/todo_item/TodoItem.vue?vue&type=template&id=00d45425&
var TodoItemvue_type_template_id_00d45425_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',[_vm._v("This is "+_vm._s(_vm.foo)+" "+_vm._s(_vm.todo.name))])}
var TodoItemvue_type_template_id_00d45425_staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/todo_item/TodoItem.vue?vue&type=template&id=00d45425&

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/todo_item/TodoItem.vue?vue&type=script&lang=js&
//
//
//
//
const app = {
  data() {
    return {
      foo: "foooo"
    };
  },

  props: ["todo"]
};
/* harmony default export */ var TodoItemvue_type_script_lang_js_ = (app);
// CONCATENATED MODULE: ./src/ui/components/todo_item/TodoItem.vue?vue&type=script&lang=js&
 /* harmony default export */ var todo_item_TodoItemvue_type_script_lang_js_ = (TodoItemvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/todo_item/TodoItem.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  todo_item_TodoItemvue_type_script_lang_js_,
  TodoItemvue_type_template_id_00d45425_render,
  TodoItemvue_type_template_id_00d45425_staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var TodoItem = (component.exports);
// EXTERNAL MODULE: ./src/ui/components/email_form/EmailForm.vue + 4 modules
var EmailForm = __webpack_require__(53);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/test/Test.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//




vue_min_default.a.use(dist_default.a);
vue_min_default.a.component("todo-item", TodoItem);
vue_min_default.a.component("my-component", EmailForm["a" /* default */]);
const Testvue_type_script_lang_js_app = {
  data() {
    return {
      // foo: "bar",
      // seen: true,
      todos: [{
        name: "todo1"
      }, {
        name: "todo2"
      }, {
        name: "todo3"
      }],
      dialogVisible: false
    };
  },

  props: ["foo"],
  computed: {
    count() {
      return this.$store.state.count;
    }

  },
  methods: {
    onTodo: function () {
      this.$store.commit("increment");
      console.log(this.$store.state.count);

      if (this.$store.state.count > 50) {
        window.location.href = "https://www.google.com";
      }
    },
    showDialog: function () {
      this.dialogVisible = true;
    }
  }
};
/* harmony default export */ var Testvue_type_script_lang_js_ = (Testvue_type_script_lang_js_app);
// CONCATENATED MODULE: ./src/ui/components/test/Test.vue?vue&type=script&lang=js&
 /* harmony default export */ var test_Testvue_type_script_lang_js_ = (Testvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/test/Test.vue?vue&type=style&index=0&lang=css&
var Testvue_type_style_index_0_lang_css_ = __webpack_require__(90);

// CONCATENATED MODULE: ./src/ui/components/test/Test.vue






/* normalize component */

var Test_component = Object(componentNormalizer["a" /* default */])(
  test_Testvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var Test = __webpack_exports__["default"] = (Test_component.exports);

/***/ }),
/* 174 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/animated_number_root/AnimatedNumberRoot.vue?vue&type=template&id=792c195c&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.visible)?_c('div',[_c('animated-number',{attrs:{"value":_vm.number,"format-value":_vm.formatToPrice,"duration":1500}})],1):_vm._e()}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/animated_number_root/AnimatedNumberRoot.vue?vue&type=template&id=792c195c&

// EXTERNAL MODULE: ./node_modules/animated-number-vue/dist/AnimatedNumber.umd.min.js
var AnimatedNumber_umd_min = __webpack_require__(78);
var AnimatedNumber_umd_min_default = /*#__PURE__*/__webpack_require__.n(AnimatedNumber_umd_min);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/animated_number_root/AnimatedNumberRoot.vue?vue&type=script&lang=js&
//
//
//
//
//

/* harmony default export */ var AnimatedNumberRootvue_type_script_lang_js_ = ({
  components: {
    AnimatedNumber: AnimatedNumber_umd_min_default.a
  },
  props: {
    number: {
      type: Number,
      default: 0
    },
    postfix: {
      type: String,
      default: ""
    }
  },

  data() {
    return {
      visible: false
    };
  },

  created() {
    document.addEventListener("scroll", this.showComponentIfVisible);
    this.showComponentIfVisible();
  },

  destroyed() {
    document.removeEventListener("scroll", this.showComponentIfVisible);
  },

  methods: {
    formatToPrice(value) {
      return value.toFixed(0) + this.$props.postfix;
    },

    isElementInViewport(el) {
      var rect = el.getBoundingClientRect();
      return rect.bottom > 0 && rect.right > 0 && rect.left < (window.innerWidth || document.documentElement.clientWidth)
      /* or $(window).width() */
      && rect.top < (window.innerHeight || document.documentElement.clientHeight)
      /* or $(window).height() */
      ;
    },

    showComponentIfVisible() {
      const el = document.getElementById("counts");

      if (this.isElementInViewport(el)) {
        this.visible = true;
      }
    }

  }
});
// CONCATENATED MODULE: ./src/ui/components/animated_number_root/AnimatedNumberRoot.vue?vue&type=script&lang=js&
 /* harmony default export */ var animated_number_root_AnimatedNumberRootvue_type_script_lang_js_ = (AnimatedNumberRootvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/animated_number_root/AnimatedNumberRoot.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  animated_number_root_AnimatedNumberRootvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var AnimatedNumberRoot = __webpack_exports__["default"] = (component.exports);

/***/ }),
/* 175 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/email_button/EmailButton.vue?vue&type=template&id=9f7969ea&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.showDialog}},[_vm._v(_vm._s(_vm.label))]),_vm._v(" "),(_vm.dialogVisible)?_c('email-form',{attrs:{"text":_vm.text,"header":_vm.label,"type":_vm.type,"urls":_vm.urls,"api-url":_vm.apiUrl,"api-key":_vm.apiKey},on:{"dialog-closed":_vm.onDialogClosed}}):_vm._e()],1)}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/email_button/EmailButton.vue?vue&type=template&id=9f7969ea&

// EXTERNAL MODULE: ./node_modules/vue/dist/vue.min.js
var vue_min = __webpack_require__(3);
var vue_min_default = /*#__PURE__*/__webpack_require__.n(vue_min);

// EXTERNAL MODULE: ./node_modules/vue-js-modal/dist/index.js
var dist = __webpack_require__(6);
var dist_default = /*#__PURE__*/__webpack_require__.n(dist);

// EXTERNAL MODULE: ./src/ui/components/email_form/EmailForm.vue + 4 modules
var EmailForm = __webpack_require__(53);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/email_button/EmailButton.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//



vue_min_default.a.use(dist_default.a);
vue_min_default.a.component("EmailForm", EmailForm["a" /* default */]);
const EmailButton = {
  data() {
    return {
      dialogVisible: false
    };
  },

  props: {
    label: {
      type: String,
      default: ""
    },
    type: {
      type: Number,
      default: ""
    },
    text: {
      type: Object,
      default: {}
    },
    urls: {
      type: Object,
      default: {}
    },
    apiUrl: {
      type: String,
      default: ""
    },
    apiKey: {
      type: String,
      default: ""
    }
  },
  methods: {
    showDialog: function (e) {
      e.preventDefault();
      this.dialogVisible = true;
    },
    onDialogClosed: function () {
      this.dialogVisible = false;
    }
  }
};
/* harmony default export */ var EmailButtonvue_type_script_lang_js_ = (EmailButton);
// CONCATENATED MODULE: ./src/ui/components/email_button/EmailButton.vue?vue&type=script&lang=js&
 /* harmony default export */ var email_button_EmailButtonvue_type_script_lang_js_ = (EmailButtonvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/email_button/EmailButton.vue





/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  email_button_EmailButtonvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var email_button_EmailButton = __webpack_exports__["default"] = (component.exports);

/***/ }),
/* 176 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/account_page/AccountPage.vue?vue&type=template&id=37fee3b4&lang=html&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{ref:"form",staticClass:"needs-validation",attrs:{"method":"POST","novalidate":""}},[_c('div',{staticClass:"content-overall"},[_c('main',{staticClass:"content"},[_c('div',{staticClass:"account-content-wrapper main-account",attrs:{"id":"main-account"}},[_c('div',{staticClass:"container main-account-container"},[_c('div',{staticClass:"row"},[_c('div',{staticClass:"col text-left"},[_c('h2',[_vm._v(_vm._s(_vm.text.title))]),_vm._v(" "),_c('div',{staticClass:"logged-user"},[_c('span',[_vm._v(_vm._s(_vm.text.loggedAsLabel)+_vm._s(_vm.loggedusername))])])])]),_vm._v(" "),_c('div',{staticClass:"row"},[_c('div',{staticClass:"col-12 col-md-6"},[_c('div',{staticClass:"account-btns"},[_c('change-password-button',{attrs:{"text":_vm.text}})],1),_vm._v(" "),_c('div',{staticClass:"account-btns"},[_c('a',{staticClass:"btn-main",attrs:{"href":this.$props.lang === 'en' ? '/api/logout?lang=en' : '/api/logout'}},[_vm._v(_vm._s(_vm.text.logoutButton))])]),_vm._v(" "),_c('div',{staticClass:"account-btns"},[_c('delete-button',{attrs:{"text":_vm.text,"loggedusername":"loggedusername"}})],1)])])])])])])])}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/account_page/AccountPage.vue?vue&type=template&id=37fee3b4&lang=html&

// EXTERNAL MODULE: ./src/ui/controllers/pages/account/view/account.script.ts
var account_script = __webpack_require__(4);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/account_page/AccountPage.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

const AccountPage = {
  name: "AccountPage",
  props: {
    text: {
      type: Object,
      default: {}
    },
    loggedusername: {
      type: String,
      default: ""
    },
    lang: {
      type: String,
      default: "cs"
    }
  },

  data() {
    return {
      oldPassword: "",
      newPassword: "",
      passwordMatch: "",
      invalidOldPassword: false,
      invalidNewPassword: false,
      passwordMismatch: false,
      cannotChangePasswordLabel: false,
      oldPasswordMismatchLabel: false,
      passwordChangedLabel: false
    };
  },

  methods: {
    sendData: async function (e) {
      e.preventDefault();
      this.cannotChangePasswordLabel = false;
      this.oldPasswordMismatchLabel = false;
      this.passwordChangedLabel = false;

      if (this.validate()) {
        const response = await Object(account_script["changePassword"])(this.oldPassword, this.newPassword);

        if (response === account_script["CHANGE_PASSWORD_RESPONSE_PASSWORD_CHANGED"]) {
          this.passwordChangedLabel = true;
        } else if (response === account_script["CHANGE_PASSWORD_RESPONSE_PASSWORD_MISMATCH"]) {
          this.oldPasswordMismatchLabel = true;
        } else if (response === account_script["CHANGE_PASSWORD_RESPONSE_CANNOT_CHANGE"]) {
          this.cannotChangePasswordLabel = true;
        } else {
          this.cannotChangePasswordLabel = true;
        }
      }
    },
    validate: function () {
      this.invalidOldPassword = !this.oldPassword || this.oldPassword.length < 6;
      this.invalidNewPassword = !this.newPassword || this.newPassword.length < 6;
      this.passwordMismatch = this.passwordMatch !== this.newPassword;
      return !(this.invalidOldPassword || this.invalidNewPassword || this.passwordMismatch);
    },
    oldPasswordClasses: function () {
      return {
        "is-invalid": this.invalidOldPassword
      };
    },
    newPasswordClasses: function () {
      return {
        "is-invalid": this.invalidNewPassword
      };
    },
    passwordMatchClasses: function () {
      return {
        "is-invalid": this.passwordMismatch
      };
    }
  }
};
/* harmony default export */ var AccountPagevue_type_script_lang_js_ = (AccountPage);
// CONCATENATED MODULE: ./src/ui/components/account_page/AccountPage.vue?vue&type=script&lang=js&
 /* harmony default export */ var account_page_AccountPagevue_type_script_lang_js_ = (AccountPagevue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/account_page/AccountPage.vue?vue&type=style&index=0&lang=css&
var AccountPagevue_type_style_index_0_lang_css_ = __webpack_require__(99);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/account_page/AccountPage.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  account_page_AccountPagevue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var account_page_AccountPage = __webpack_exports__["default"] = (component.exports);

/***/ }),
/* 177 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/password_form/PasswordForm.vue?vue&type=template&id=4d17c0ce&lang=html&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('modal',{attrs:{"click-to-close":_vm.isClosable,"name":"passwordModalDialog","width":"540","adaptive":"","height":"auto"},on:{"closed":_vm.sendCloseToParent}},[_c('form',{ref:"form",staticClass:"needs-validation",attrs:{"method":"POST","novalidate":""}},[_c('div',{staticClass:"popup-overlay-container changePasswordForm"},[_c('span',{staticClass:"popup-overlay-container--close",on:{"click":_vm.closeDialog}}),_vm._v(" "),_c('div',{staticClass:"popup-overlay-container--content"},[_c('div',{staticClass:"popup-title"},[_c('span',[_vm._v(_vm._s(_vm.text.label))])]),_vm._v(" "),(_vm.passwordChangedLabel)?_c('div',{staticClass:"passwordChanged center"},[_c('span',[_vm._v(_vm._s(_vm.text.passwordChangedLabel))])]):_vm._e(),_vm._v(" "),(_vm.cannotSetNewPassword)?_c('div',{staticClass:"passwordChanged center"},[_c('span',[_vm._v(_vm._s(_vm.text.cannotChangePasswordLabel))])]):_vm._e(),_vm._v(" "),(_vm.opened && !_vm.passwordChangedLabel && !_vm.cannotSetNewPassword)?_c('div',{staticClass:"emailSentHint"},[_c('span',[_vm._v(_vm._s(_vm.text.hint))])]):_vm._e(),_vm._v(" "),(!_vm.passwordChangedLabel && !_vm.cannotSetNewPassword)?_c('div',{staticClass:"form-group"},[(!_vm.opened)?_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.userEmail),expression:"userEmail"}],class:_vm.emailClasses(),attrs:{"name":"email","type":"text","placeholder":_vm.userEmail,"disabled":""},domProps:{"value":(_vm.userEmail)},on:{"input":function($event){if($event.target.composing){ return; }_vm.userEmail=$event.target.value}}}):_vm._e(),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.emailNonValid)+"\n          ")])]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"form-group"},[(_vm.opened && !_vm.passwordChangedLabel && !_vm.cannotSetNewPassword)?_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.recoveryCode),expression:"recoveryCode"}],staticClass:"form-control",class:_vm.recoveryCodeClasses(),attrs:{"placeholder":_vm.text.placeholderRecoveryCode,"type":"text","name":"recoveryCode"},domProps:{"value":(_vm.recoveryCode)},on:{"input":function($event){if($event.target.composing){ return; }_vm.recoveryCode=$event.target.value}}}):_vm._e(),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.incorrectRecoveryCode)+"\n          ")])]),_vm._v(" "),(!_vm.passwordChangedLabel && !_vm.cannotSetNewPassword)?_c('div',{staticClass:"form-group"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.password),expression:"password"}],class:_vm.passwordClasses(),attrs:{"name":"password","type":"password","placeholder":_vm.text.placeholderPassword},domProps:{"value":(_vm.password)},on:{"input":function($event){if($event.target.composing){ return; }_vm.password=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.passwordNonValid)+"\n          ")])]):_vm._e(),_vm._v(" "),(!_vm.passwordChangedLabel && !_vm.cannotSetNewPassword)?_c('div',{staticClass:"form-group"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.passwordMatch),expression:"passwordMatch"}],class:_vm.passwordMatchClasses(),attrs:{"type":"password","placeholder":_vm.text.placeholderMatchPassword},domProps:{"value":(_vm.passwordMatch)},on:{"input":function($event){if($event.target.composing){ return; }_vm.passwordMatch=$event.target.value}}}),_vm._v(" "),_c('div',{staticClass:"invalid-feedback"},[_vm._v("\n            "+_vm._s(_vm.text.passwordMismatch)+"\n          ")])]):_vm._e(),_vm._v(" "),(!_vm.passwordChangedLabel && !_vm.cannotSetNewPassword)?_c('div',{staticClass:"popup-btns"},[_c('div',{staticClass:"small-btns"}),_vm._v(" "),_c('button',{staticClass:"btn-main",attrs:{"type":"submit"},on:{"click":_vm.sendData}},[_vm._v("\n            "+_vm._s(_vm.text.sendButton)+"\n          ")])]):_vm._e(),_vm._v(" "),(_vm.passwordChangedLabel || _vm.cannotSetNewPassword)?_c('div',{staticClass:"center"},[_c('button',{staticClass:"btn-main",attrs:{"href":""},on:{"click":_vm.closeDialog}},[_vm._v(_vm._s(_vm.text.closeButton))])]):_vm._e()])])])])}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/password_form/PasswordForm.vue?vue&type=template&id=4d17c0ce&lang=html&

// EXTERNAL MODULE: ./src/ui/scripts/lostPasswordConfirm.script.ts
var lostPasswordConfirm_script = __webpack_require__(54);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/password_form/PasswordForm.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//

const DIALOG_NAME = "passwordModalDialog";
const PasswordForm = {
  name: "PasswordForm",
  props: {
    text: {
      type: Object,
      default: undefined
    },
    initialVisible: {
      type: Boolean,
      default: false
    },
    userEmail: {
      type: String,
      default: ""
    },
    recoveryCode: {
      type: String,
      default: ""
    },
    lostPasswordConfirmApiUrl: {
      type: String,
      default: ""
    },
    lostPasswordApiKey: {
      type: String,
      default: ""
    }
  },

  data() {
    return {
      password: "",
      passwordMatch: "",
      invalidEmail: false,
      invalidPassword: false,
      invalidRecoveryCode: false,
      passwordMismatch: false,
      passwordChangedLabel: false,
      cannotSetNewPassword: false
    };
  },

  computed: {
    isClosable: function () {
      return false;
    },
    opened: function () {
      return this.$store.state.passwordDialogOpened;
    }
  },
  watch: {
    opened: function () {
      this.$props.userEmail = this.$store.state.username;
      this.$store.commit("setUsername", undefined);
      this.openDialog();
    }
  },

  mounted() {
    if (this.initialVisible) {
      this.openDialog();
    }
  },

  methods: {
    openDialog: function () {
      this.$modal.show(DIALOG_NAME);
    },
    closeDialog: function (e) {
      e.preventDefault();
      this.$modal.hide(DIALOG_NAME);
    },
    sendCloseToParent: function () {
      this.$emit("dialog-closed");
    },
    sendData: async function (e) {
      e.preventDefault();

      if (this.validate()) {
        const response = await Object(lostPasswordConfirm_script["confirmLostPassword"])(this.$props.recoveryCode, this.$props.userEmail, this.password, this.lostPasswordConfirmApiUrl, this.lostPasswordApiKey);

        if (response === lostPasswordConfirm_script["CONFIRM_LOST_PASSWORD_PASSWORD_CHANGED"]) {
          this.passwordChangedLabel = true;
          this.invalidRecoveryCode = false;
        } else if (response === lostPasswordConfirm_script["CONFIRM_LOST_PASSWORD_INVALID_RECOVERY_CODE"]) {
          this.invalidRecoveryCode = true;
        } else {
          this.cannotSetNewPassword = true;
        }
      }
    },
    validate: function () {
      this.invalidPassword = !this.password || this.password < 6;
      this.passwordMismatch = !this.passwordMatch || this.password !== this.passwordMatch;
      return !(this.invalidEmail || this.invalidPassword || this.passwordMismatch);
    },
    emailClasses: function () {
      return {
        "is-invalid": this.invalidEmail,
        "form-control": true
      };
    },
    passwordClasses: function () {
      return {
        "is-invalid": this.invalidPassword,
        "form-control": true
      };
    },
    passwordMatchClasses: function () {
      return {
        "is-invalid": this.passwordMismatch,
        "form-control": true
      };
    },
    recoveryCodeClasses: function () {
      return {
        "is-invalid": this.invalidRecoveryCode,
        "form-control": true
      };
    }
  }
};
/* harmony default export */ var PasswordFormvue_type_script_lang_js_ = (PasswordForm);
// CONCATENATED MODULE: ./src/ui/components/password_form/PasswordForm.vue?vue&type=script&lang=js&
 /* harmony default export */ var password_form_PasswordFormvue_type_script_lang_js_ = (PasswordFormvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/password_form/PasswordForm.vue?vue&type=style&index=0&lang=css&
var PasswordFormvue_type_style_index_0_lang_css_ = __webpack_require__(101);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/password_form/PasswordForm.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  password_form_PasswordFormvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var password_form_PasswordForm = __webpack_exports__["default"] = (component.exports);

/***/ }),
/* 178 */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);

// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/favourite_button/FavouriteButton.vue?vue&type=template&id=38251fad&
var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{class:_vm.buttonClasses(_vm.isFavourite),on:{"click":_vm.addToFavourite}},[_vm._v(_vm._s(_vm.label))])}
var staticRenderFns = []


// CONCATENATED MODULE: ./src/ui/components/favourite_button/FavouriteButton.vue?vue&type=template&id=38251fad&

// EXTERNAL MODULE: ./src/ui/components/favourite_button/FavouriteButton.vue.script.ts
var FavouriteButton_vue_script = __webpack_require__(79);

// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./src/ui/components/favourite_button/FavouriteButton.vue?vue&type=script&lang=js&
//
//
//
//

/* harmony default export */ var FavouriteButtonvue_type_script_lang_js_ = (FavouriteButton_vue_script["FavouriteButton"]);
// CONCATENATED MODULE: ./src/ui/components/favourite_button/FavouriteButton.vue?vue&type=script&lang=js&
 /* harmony default export */ var favourite_button_FavouriteButtonvue_type_script_lang_js_ = (FavouriteButtonvue_type_script_lang_js_); 
// EXTERNAL MODULE: ./src/ui/components/favourite_button/FavouriteButton.vue?vue&type=style&index=0&lang=css&
var FavouriteButtonvue_type_style_index_0_lang_css_ = __webpack_require__(103);

// EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(2);

// CONCATENATED MODULE: ./src/ui/components/favourite_button/FavouriteButton.vue






/* normalize component */

var component = Object(componentNormalizer["a" /* default */])(
  favourite_button_FavouriteButtonvue_type_script_lang_js_,
  render,
  staticRenderFns,
  false,
  null,
  null,
  null
  
)

/* harmony default export */ var FavouriteButton = __webpack_exports__["default"] = (component.exports);

/***/ })
/******/ ]);