/* * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development"). * This devtool is not neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ /******/ (() => { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ "./node_modules/axios/index.js": /*!*************************************!*\ !*** ./node_modules/axios/index.js ***! \*************************************/ /*! dynamic exports */ /*! exports [maybe provided (runtime-defined)] [no usage info] -> ./node_modules/axios/lib/axios.js */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("module.exports = __webpack_require__(/*! ./lib/axios */ \"./node_modules/axios/lib/axios.js\");\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/index.js?"); /***/ }), /***/ "./node_modules/axios/lib/adapters/xhr.js": /*!************************************************!*\ !*** ./node_modules/axios/lib/adapters/xhr.js ***! \************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nvar settle = __webpack_require__(/*! ./../core/settle */ \"./node_modules/axios/lib/core/settle.js\");\n\nvar cookies = __webpack_require__(/*! ./../helpers/cookies */ \"./node_modules/axios/lib/helpers/cookies.js\");\n\nvar buildURL = __webpack_require__(/*! ./../helpers/buildURL */ \"./node_modules/axios/lib/helpers/buildURL.js\");\n\nvar buildFullPath = __webpack_require__(/*! ../core/buildFullPath */ \"./node_modules/axios/lib/core/buildFullPath.js\");\n\nvar parseHeaders = __webpack_require__(/*! ./../helpers/parseHeaders */ \"./node_modules/axios/lib/helpers/parseHeaders.js\");\n\nvar isURLSameOrigin = __webpack_require__(/*! ./../helpers/isURLSameOrigin */ \"./node_modules/axios/lib/helpers/isURLSameOrigin.js\");\n\nvar createError = __webpack_require__(/*! ../core/createError */ \"./node_modules/axios/lib/core/createError.js\");\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest(); // HTTP basic authentication\n\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true); // Set the request timeout in MS\n\n request.timeout = config.timeout; // Listen for ready state\n\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n } // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n\n\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n } // Prepare the response\n\n\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n settle(resolve, reject, response); // Clean up request\n\n request = null;\n }; // Handle browser request cancellation (as opposed to a manual cancellation)\n\n\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request)); // Clean up request\n\n request = null;\n }; // Handle low level network errors\n\n\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request)); // Clean up request\n\n request = null;\n }; // Handle timeout\n\n\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n\n reject(createError(timeoutErrorMessage, config, 'ECONNABORTED', request)); // Clean up request\n\n request = null;\n }; // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ? cookies.read(config.xsrfCookieName) : undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n } // Add headers to the request\n\n\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n } // Add withCredentials to request if needed\n\n\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n } // Add responseType to request if needed\n\n\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n } // Handle progress if needed\n\n\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n } // Not all browsers support upload events\n\n\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel); // Clean up request\n\n request = null;\n });\n }\n\n if (!requestData) {\n requestData = null;\n } // Send the request\n\n\n request.send(requestData);\n });\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/adapters/xhr.js?"); /***/ }), /***/ "./node_modules/axios/lib/axios.js": /*!*****************************************!*\ !*** ./node_modules/axios/lib/axios.js ***! \*****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/axios/lib/utils.js\");\n\nvar bind = __webpack_require__(/*! ./helpers/bind */ \"./node_modules/axios/lib/helpers/bind.js\");\n\nvar Axios = __webpack_require__(/*! ./core/Axios */ \"./node_modules/axios/lib/core/Axios.js\");\n\nvar mergeConfig = __webpack_require__(/*! ./core/mergeConfig */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n\nvar defaults = __webpack_require__(/*! ./defaults */ \"./node_modules/axios/lib/defaults.js\");\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\n\n\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context); // Copy axios.prototype to instance\n\n utils.extend(instance, Axios.prototype, context); // Copy context to instance\n\n utils.extend(instance, context);\n return instance;\n} // Create the default instance to be exported\n\n\nvar axios = createInstance(defaults); // Expose Axios class to allow class inheritance\n\naxios.Axios = Axios; // Factory for creating new instances\n\naxios.create = function create(instanceConfig) {\n return createInstance(mergeConfig(axios.defaults, instanceConfig));\n}; // Expose Cancel & CancelToken\n\n\naxios.Cancel = __webpack_require__(/*! ./cancel/Cancel */ \"./node_modules/axios/lib/cancel/Cancel.js\");\naxios.CancelToken = __webpack_require__(/*! ./cancel/CancelToken */ \"./node_modules/axios/lib/cancel/CancelToken.js\");\naxios.isCancel = __webpack_require__(/*! ./cancel/isCancel */ \"./node_modules/axios/lib/cancel/isCancel.js\"); // Expose all/spread\n\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = __webpack_require__(/*! ./helpers/spread */ \"./node_modules/axios/lib/helpers/spread.js\");\nmodule.exports = axios; // Allow use of default import syntax in TypeScript\n\nmodule.exports.default = axios;\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/axios.js?"); /***/ }), /***/ "./node_modules/axios/lib/cancel/Cancel.js": /*!*************************************************!*\ !*** ./node_modules/axios/lib/cancel/Cancel.js ***! \*************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\n\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\nmodule.exports = Cancel;\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/cancel/Cancel.js?"); /***/ }), /***/ "./node_modules/axios/lib/cancel/CancelToken.js": /*!******************************************************!*\ !*** ./node_modules/axios/lib/cancel/CancelToken.js ***! \******************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar Cancel = __webpack_require__(/*! ./Cancel */ \"./node_modules/axios/lib/cancel/Cancel.js\");\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\n\n\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\n\n\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n\n\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/cancel/CancelToken.js?"); /***/ }), /***/ "./node_modules/axios/lib/cancel/isCancel.js": /*!***************************************************!*\ !*** ./node_modules/axios/lib/cancel/isCancel.js ***! \***************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/cancel/isCancel.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/Axios.js": /*!**********************************************!*\ !*** ./node_modules/axios/lib/core/Axios.js ***! \**********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nvar buildURL = __webpack_require__(/*! ../helpers/buildURL */ \"./node_modules/axios/lib/helpers/buildURL.js\");\n\nvar InterceptorManager = __webpack_require__(/*! ./InterceptorManager */ \"./node_modules/axios/lib/core/InterceptorManager.js\");\n\nvar dispatchRequest = __webpack_require__(/*! ./dispatchRequest */ \"./node_modules/axios/lib/core/dispatchRequest.js\");\n\nvar mergeConfig = __webpack_require__(/*! ./mergeConfig */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\n\n\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\n\n\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config); // Set config.method\n\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n } // Hook up interceptors middleware\n\n\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n}; // Provide aliases for supported request methods\n\n\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function (url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function (url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\nmodule.exports = Axios;\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/Axios.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/InterceptorManager.js": /*!***********************************************************!*\ !*** ./node_modules/axios/lib/core/InterceptorManager.js ***! \***********************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n\n\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\n\n\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\n\n\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/InterceptorManager.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/buildFullPath.js": /*!******************************************************!*\ !*** ./node_modules/axios/lib/core/buildFullPath.js ***! \******************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar isAbsoluteURL = __webpack_require__(/*! ../helpers/isAbsoluteURL */ \"./node_modules/axios/lib/helpers/isAbsoluteURL.js\");\n\nvar combineURLs = __webpack_require__(/*! ../helpers/combineURLs */ \"./node_modules/axios/lib/helpers/combineURLs.js\");\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\n\n\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n\n return requestedURL;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/buildFullPath.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/createError.js": /*!****************************************************!*\ !*** ./node_modules/axios/lib/core/createError.js ***! \****************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar enhanceError = __webpack_require__(/*! ./enhanceError */ \"./node_modules/axios/lib/core/enhanceError.js\");\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\n\n\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/createError.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/dispatchRequest.js": /*!********************************************************!*\ !*** ./node_modules/axios/lib/core/dispatchRequest.js ***! \********************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nvar transformData = __webpack_require__(/*! ./transformData */ \"./node_modules/axios/lib/core/transformData.js\");\n\nvar isCancel = __webpack_require__(/*! ../cancel/isCancel */ \"./node_modules/axios/lib/cancel/isCancel.js\");\n\nvar defaults = __webpack_require__(/*! ../defaults */ \"./node_modules/axios/lib/defaults.js\");\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\n\n\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\n\n\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config); // Ensure headers exist\n\n config.headers = config.headers || {}; // Transform request data\n\n config.data = transformData(config.data, config.headers, config.transformRequest); // Flatten headers\n\n config.headers = utils.merge(config.headers.common || {}, config.headers[config.method] || {}, config.headers);\n utils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch', 'common'], function cleanHeaderConfig(method) {\n delete config.headers[method];\n });\n var adapter = config.adapter || defaults.adapter;\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config); // Transform response data\n\n response.data = transformData(response.data, response.headers, config.transformResponse);\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config); // Transform response data\n\n if (reason && reason.response) {\n reason.response.data = transformData(reason.response.data, reason.response.headers, config.transformResponse);\n }\n }\n\n return Promise.reject(reason);\n });\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/dispatchRequest.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/enhanceError.js": /*!*****************************************************!*\ !*** ./node_modules/axios/lib/core/enhanceError.js ***! \*****************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\n\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code\n };\n };\n\n return error;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/enhanceError.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/mergeConfig.js": /*!****************************************************!*\ !*** ./node_modules/axios/lib/core/mergeConfig.js ***! \****************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ../utils */ \"./node_modules/axios/lib/utils.js\");\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\n\n\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n var valueFromConfig2Keys = ['url', 'method', 'data'];\n var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n 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'];\n var directMergeKeys = ['validateStatus'];\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n\n return source;\n }\n\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n }\n\n utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n }\n });\n utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n config[prop] = getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n utils.forEach(directMergeKeys, function merge(prop) {\n if (prop in config2) {\n config[prop] = getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n config[prop] = getMergedValue(undefined, config1[prop]);\n }\n });\n var axiosKeys = valueFromConfig2Keys.concat(mergeDeepPropertiesKeys).concat(defaultToConfig2Keys).concat(directMergeKeys);\n var otherKeys = Object.keys(config1).concat(Object.keys(config2)).filter(function filterAxiosKeys(key) {\n return axiosKeys.indexOf(key) === -1;\n });\n utils.forEach(otherKeys, mergeDeepProperties);\n return config;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/mergeConfig.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/settle.js": /*!***********************************************!*\ !*** ./node_modules/axios/lib/core/settle.js ***! \***********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar createError = __webpack_require__(/*! ./createError */ \"./node_modules/axios/lib/core/createError.js\");\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\n\n\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError('Request failed with status code ' + response.status, response.config, null, response.request, response));\n }\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/settle.js?"); /***/ }), /***/ "./node_modules/axios/lib/core/transformData.js": /*!******************************************************!*\ !*** ./node_modules/axios/lib/core/transformData.js ***! \******************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\n\n\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n return data;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/core/transformData.js?"); /***/ }), /***/ "./node_modules/axios/lib/defaults.js": /*!********************************************!*\ !*** ./node_modules/axios/lib/defaults.js ***! \********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/axios/lib/utils.js\");\n\nvar normalizeHeaderName = __webpack_require__(/*! ./helpers/normalizeHeaderName */ \"./node_modules/axios/lib/helpers/normalizeHeaderName.js\");\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = __webpack_require__(/*! ./adapters/xhr */ \"./node_modules/axios/lib/adapters/xhr.js\");\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = __webpack_require__(/*! ./adapters/http */ \"./node_modules/axios/lib/adapters/xhr.js\");\n }\n\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) || utils.isArrayBuffer(data) || utils.isBuffer(data) || utils.isStream(data) || utils.isFile(data) || utils.isBlob(data)) {\n return data;\n }\n\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n\n return data;\n }],\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) {\n /* Ignore */\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n maxContentLength: -1,\n maxBodyLength: -1,\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\nmodule.exports = defaults;\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/defaults.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/bind.js": /*!************************************************!*\ !*** ./node_modules/axios/lib/helpers/bind.js ***! \************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n\n return fn.apply(thisArg, args);\n };\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/bind.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/buildURL.js": /*!****************************************************!*\ !*** ./node_modules/axios/lib/helpers/buildURL.js ***! \****************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');\n}\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\n\n\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/buildURL.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/combineURLs.js": /*!*******************************************************!*\ !*** ./node_modules/axios/lib/helpers/combineURLs.js ***! \*******************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\n\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '') : baseURL;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/combineURLs.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/cookies.js": /*!***************************************************!*\ !*** ./node_modules/axios/lib/helpers/cookies.js ***! \***************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = utils.isStandardBrowserEnv() ? // Standard browser envs support document.cookie\nfunction standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return match ? decodeURIComponent(match[3]) : null;\n },\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n}() : // Non standard browser env (web workers, react-native) lack needed support.\nfunction nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() {\n return null;\n },\n remove: function remove() {}\n };\n}();\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/cookies.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js": /*!*********************************************************!*\ !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***! \*********************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\n\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/isAbsoluteURL.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js": /*!***********************************************************!*\ !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***! \***********************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = utils.isStandardBrowserEnv() ? // Standard browser envs have full support of the APIs needed to test\n// whether the request URL is of the same origin as current location.\nfunction standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href); // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: urlParsingNode.pathname.charAt(0) === '/' ? urlParsingNode.pathname : '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n\n return function isURLSameOrigin(requestURL) {\n var parsed = utils.isString(requestURL) ? resolveURL(requestURL) : requestURL;\n return parsed.protocol === originURL.protocol && parsed.host === originURL.host;\n };\n}() : // Non standard browser envs (web workers, react-native) lack needed support.\nfunction nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n}();\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/isURLSameOrigin.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/normalizeHeaderName.js": /*!***************************************************************!*\ !*** ./node_modules/axios/lib/helpers/normalizeHeaderName.js ***! \***************************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ../utils */ \"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/normalizeHeaderName.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/parseHeaders.js": /*!********************************************************!*\ !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***! \********************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\"); // Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\n\n\nvar 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'];\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\n\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) {\n return parsed;\n }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n return parsed;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/parseHeaders.js?"); /***/ }), /***/ "./node_modules/axios/lib/helpers/spread.js": /*!**************************************************!*\ !*** ./node_modules/axios/lib/helpers/spread.js ***! \**************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\n\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/helpers/spread.js?"); /***/ }), /***/ "./node_modules/axios/lib/utils.js": /*!*****************************************!*\ !*** ./node_modules/axios/lib/utils.js ***! \*****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { "use strict"; eval("\n\nvar bind = __webpack_require__(/*! ./helpers/bind */ \"./node_modules/axios/lib/helpers/bind.js\");\n/*global toString:true*/\n// utils is a library of generic helper functions non-specific to axios\n\n\nvar toString = Object.prototype.toString;\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\n\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\n\n\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\n\n\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor) && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\n\n\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\n\n\nfunction isFormData(val) {\n return typeof FormData !== 'undefined' && val instanceof FormData;\n}\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\n\n\nfunction isArrayBufferView(val) {\n var result;\n\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n result = ArrayBuffer.isView(val);\n } else {\n result = val && val.buffer && val.buffer instanceof ArrayBuffer;\n }\n\n return result;\n}\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\n\n\nfunction isString(val) {\n return typeof val === 'string';\n}\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\n\n\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\n\n\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\n\n\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\n\n\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\n\n\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\n\n\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\n\n\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\n\n\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\n\n\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\n\n\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\n\n\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' || navigator.product === 'NativeScript' || navigator.product === 'NS')) {\n return false;\n }\n\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\n\n\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n } // Force an array if not already something iterable\n\n\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\n\n\nfunction merge()\n/* obj1, obj2, obj3, ... */\n{\n var result = {};\n\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n\n return result;\n}\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\n\n\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\n\n\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/axios/lib/utils.js?"); /***/ }), /***/ "./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js": /*!*****************************************************************!*\ !*** ./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js ***! \*****************************************************************/ /*! namespace exports */ /*! export clearAllBodyScrollLocks [provided] [no usage info] [missing usage info prevents renaming] */ /*! export disableBodyScroll [provided] [no usage info] [missing usage info prevents renaming] */ /*! export enableBodyScroll [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_require__.r, __webpack_exports__, __webpack_require__.d, __webpack_require__.* */ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"disableBodyScroll\": () => /* binding */ disableBodyScroll,\n/* harmony export */ \"clearAllBodyScrollLocks\": () => /* binding */ clearAllBodyScrollLocks,\n/* harmony export */ \"enableBodyScroll\": () => /* binding */ enableBodyScroll\n/* harmony export */ });\nfunction _toConsumableArray(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n } else {\n return Array.from(arr);\n }\n} // Older browsers don't support event options, feature detect it.\n// Adopted and modified solution from Bohdan Didukh (2017)\n// https://stackoverflow.com/questions/41594997/ios-10-safari-prevent-scrolling-behind-a-fixed-overlay-and-maintain-scroll-posi\n\n\nvar hasPassiveEvents = false;\n\nif (typeof window !== 'undefined') {\n var passiveTestOptions = {\n get passive() {\n hasPassiveEvents = true;\n return undefined;\n }\n\n };\n window.addEventListener('testPassive', null, passiveTestOptions);\n window.removeEventListener('testPassive', null, passiveTestOptions);\n}\n\nvar isIosDevice = typeof window !== 'undefined' && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || window.navigator.platform === 'MacIntel' && window.navigator.maxTouchPoints > 1);\nvar locks = [];\nvar documentListenerAdded = false;\nvar initialClientY = -1;\nvar previousBodyOverflowSetting = void 0;\nvar previousBodyPaddingRight = void 0; // returns true if `el` should be allowed to receive touchmove events.\n\nvar allowTouchMove = function allowTouchMove(el) {\n return locks.some(function (lock) {\n if (lock.options.allowTouchMove && lock.options.allowTouchMove(el)) {\n return true;\n }\n\n return false;\n });\n};\n\nvar preventDefault = function preventDefault(rawEvent) {\n var e = rawEvent || window.event; // For the case whereby consumers adds a touchmove event listener to document.\n // Recall that we do document.addEventListener('touchmove', preventDefault, { passive: false })\n // in disableBodyScroll - so if we provide this opportunity to allowTouchMove, then\n // the touchmove event on document will break.\n\n if (allowTouchMove(e.target)) {\n return true;\n } // Do not prevent if the event has more than one touch (usually meaning this is a multi touch gesture like pinch to zoom).\n\n\n if (e.touches.length > 1) return true;\n if (e.preventDefault) e.preventDefault();\n return false;\n};\n\nvar setOverflowHidden = function setOverflowHidden(options) {\n // If previousBodyPaddingRight is already set, don't set it again.\n if (previousBodyPaddingRight === undefined) {\n var _reserveScrollBarGap = !!options && options.reserveScrollBarGap === true;\n\n var scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n\n if (_reserveScrollBarGap && scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = scrollBarGap + 'px';\n }\n } // If previousBodyOverflowSetting is already set, don't set it again.\n\n\n if (previousBodyOverflowSetting === undefined) {\n previousBodyOverflowSetting = document.body.style.overflow;\n document.body.style.overflow = 'hidden';\n }\n};\n\nvar restoreOverflowSetting = function restoreOverflowSetting() {\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight; // Restore previousBodyPaddingRight to undefined so setOverflowHidden knows it\n // can be set again.\n\n previousBodyPaddingRight = undefined;\n }\n\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting; // Restore previousBodyOverflowSetting to undefined\n // so setOverflowHidden knows it can be set again.\n\n previousBodyOverflowSetting = undefined;\n }\n}; // https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions\n\n\nvar isTargetElementTotallyScrolled = function isTargetElementTotallyScrolled(targetElement) {\n return targetElement ? targetElement.scrollHeight - targetElement.scrollTop <= targetElement.clientHeight : false;\n};\n\nvar handleScroll = function handleScroll(event, targetElement) {\n var clientY = event.targetTouches[0].clientY - initialClientY;\n\n if (allowTouchMove(event.target)) {\n return false;\n }\n\n if (targetElement && targetElement.scrollTop === 0 && clientY > 0) {\n // element is at the top of its scroll.\n return preventDefault(event);\n }\n\n if (isTargetElementTotallyScrolled(targetElement) && clientY < 0) {\n // element is at the bottom of its scroll.\n return preventDefault(event);\n }\n\n event.stopPropagation();\n return true;\n};\n\nvar disableBodyScroll = function disableBodyScroll(targetElement, options) {\n // targetElement must be provided\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.');\n return;\n } // disableBodyScroll must not have been called on this targetElement before\n\n\n if (locks.some(function (lock) {\n return lock.targetElement === targetElement;\n })) {\n return;\n }\n\n var lock = {\n targetElement: targetElement,\n options: options || {}\n };\n locks = [].concat(_toConsumableArray(locks), [lock]);\n\n if (isIosDevice) {\n targetElement.ontouchstart = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n initialClientY = event.targetTouches[0].clientY;\n }\n };\n\n targetElement.ontouchmove = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n handleScroll(event, targetElement);\n }\n };\n\n if (!documentListenerAdded) {\n document.addEventListener('touchmove', preventDefault, hasPassiveEvents ? {\n passive: false\n } : undefined);\n documentListenerAdded = true;\n }\n } else {\n setOverflowHidden(options);\n }\n};\nvar clearAllBodyScrollLocks = function clearAllBodyScrollLocks() {\n if (isIosDevice) {\n // Clear all locks ontouchstart/ontouchmove handlers, and the references.\n locks.forEach(function (lock) {\n lock.targetElement.ontouchstart = null;\n lock.targetElement.ontouchmove = null;\n });\n\n if (documentListenerAdded) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? {\n passive: false\n } : undefined);\n documentListenerAdded = false;\n } // Reset initial clientY.\n\n\n initialClientY = -1;\n } else {\n restoreOverflowSetting();\n }\n\n locks = [];\n};\nvar enableBodyScroll = function enableBodyScroll(targetElement) {\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.');\n return;\n }\n\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n\n if (isIosDevice) {\n targetElement.ontouchstart = null;\n targetElement.ontouchmove = null;\n\n if (documentListenerAdded && locks.length === 0) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? {\n passive: false\n } : undefined);\n documentListenerAdded = false;\n }\n } else if (!locks.length) {\n restoreOverflowSetting();\n }\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js?"); /***/ }), /***/ "./node_modules/check-password-strength/index.js": /*!*******************************************************!*\ !*** ./node_modules/check-password-strength/index.js ***! \*******************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { eval("module.exports = password => {\n if (!password) {\n throw new Error(\"Password is empty.\");\n }\n\n const lowerCaseRegex = \"(?=.*[a-z])\";\n const upperCaseRegex = \"(?=.*[A-Z])\";\n const symbolsRegex = \"(?=.*[!@#$%^&*])\";\n const numericRegex = \"(?=.*[0-9])\";\n let strength = {\n id: null,\n value: null,\n length: null,\n contains: []\n }; // Default\n\n let passwordContains = [];\n\n if (new RegExp(`^${lowerCaseRegex}`).test(password)) {\n passwordContains = [...passwordContains, {\n message: \"lowercase\"\n }];\n }\n\n if (new RegExp(`^${upperCaseRegex}`).test(password)) {\n passwordContains = [...passwordContains, {\n message: \"uppercase\"\n }];\n }\n\n if (new RegExp(`^${symbolsRegex}`).test(password)) {\n passwordContains = [...passwordContains, {\n message: \"symbol\"\n }];\n }\n\n if (new RegExp(`^${numericRegex}`).test(password)) {\n passwordContains = [...passwordContains, {\n message: \"number\"\n }];\n }\n\n const strongRegex = new RegExp(`^${lowerCaseRegex}${upperCaseRegex}${numericRegex}${symbolsRegex}(?=.{8,})`);\n const mediumRegex = new RegExp(`^((${lowerCaseRegex}${upperCaseRegex})|(${lowerCaseRegex}${numericRegex})|(${upperCaseRegex}${numericRegex})|(${upperCaseRegex}${symbolsRegex})|(${lowerCaseRegex}${symbolsRegex})|(${numericRegex}${symbolsRegex}))(?=.{6,})`);\n\n if (strongRegex.test(password)) {\n strength = {\n id: 2,\n value: \"Strong\"\n };\n } else if (mediumRegex.test(password)) {\n strength = {\n id: 1,\n value: \"Medium\"\n };\n } else {\n strength = {\n id: 0,\n value: \"Weak\"\n };\n }\n\n strength.length = password.length;\n strength.contains = passwordContains;\n return strength;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/check-password-strength/index.js?"); /***/ }), /***/ "./node_modules/deepmerge/dist/cjs.js": /*!********************************************!*\ !*** ./node_modules/deepmerge/dist/cjs.js ***! \********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n\nvar isMergeableObject = function isMergeableObject(value) {\n return isNonNullObject(value) && !isSpecial(value);\n};\n\nfunction isNonNullObject(value) {\n return !!value && typeof value === 'object';\n}\n\nfunction isSpecial(value) {\n var stringValue = Object.prototype.toString.call(value);\n return stringValue === '[object RegExp]' || stringValue === '[object Date]' || isReactElement(value);\n} // see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\n\n\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n return value.$$typeof === REACT_ELEMENT_TYPE;\n}\n\nfunction emptyTarget(val) {\n return Array.isArray(val) ? [] : {};\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n return options.clone !== false && options.isMergeableObject(value) ? deepmerge(emptyTarget(value), value, options) : value;\n}\n\nfunction defaultArrayMerge(target, source, options) {\n return target.concat(source).map(function (element) {\n return cloneUnlessOtherwiseSpecified(element, options);\n });\n}\n\nfunction getMergeFunction(key, options) {\n if (!options.customMerge) {\n return deepmerge;\n }\n\n var customMerge = options.customMerge(key);\n return typeof customMerge === 'function' ? customMerge : deepmerge;\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n return Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(target).filter(function (symbol) {\n return target.propertyIsEnumerable(symbol);\n }) : [];\n}\n\nfunction getKeys(target) {\n return Object.keys(target).concat(getEnumerableOwnPropertySymbols(target));\n}\n\nfunction propertyIsOnObject(object, property) {\n try {\n return property in object;\n } catch (_) {\n return false;\n }\n} // Protects from prototype poisoning and unexpected merging up the prototype chain.\n\n\nfunction propertyIsUnsafe(target, key) {\n return propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n && !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n && Object.propertyIsEnumerable.call(target, key)); // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n var destination = {};\n\n if (options.isMergeableObject(target)) {\n getKeys(target).forEach(function (key) {\n destination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n });\n }\n\n getKeys(source).forEach(function (key) {\n if (propertyIsUnsafe(target, key)) {\n return;\n }\n\n if (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n destination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n } else {\n destination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n }\n });\n return destination;\n}\n\nfunction deepmerge(target, source, options) {\n options = options || {};\n options.arrayMerge = options.arrayMerge || defaultArrayMerge;\n options.isMergeableObject = options.isMergeableObject || isMergeableObject; // cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n // implementations can use it. The caller may not replace it.\n\n options.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n var sourceIsArray = Array.isArray(source);\n var targetIsArray = Array.isArray(target);\n var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n if (!sourceAndTargetTypesMatch) {\n return cloneUnlessOtherwiseSpecified(source, options);\n } else if (sourceIsArray) {\n return options.arrayMerge(target, source, options);\n } else {\n return mergeObject(target, source, options);\n }\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n if (!Array.isArray(array)) {\n throw new Error('first argument should be an array');\n }\n\n return array.reduce(function (prev, next) {\n return deepmerge(prev, next, options);\n }, {});\n};\n\nvar deepmerge_1 = deepmerge;\nmodule.exports = deepmerge_1;\n\n//# sourceURL=webpack://materio.com/./node_modules/deepmerge/dist/cjs.js?"); /***/ }), /***/ "./node_modules/graphql-tag/src/index.js": /*!***********************************************!*\ !*** ./node_modules/graphql-tag/src/index.js ***! \***********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var parser = __webpack_require__(/*! graphql/language/parser */ \"./node_modules/graphql/language/parser.js\");\n\nvar parse = parser.parse; // Strip insignificant whitespace\n// Note that this could do a lot more, such as reorder fields etc.\n\nfunction normalize(string) {\n return string.replace(/[\\s,]+/g, ' ').trim();\n} // A map docString -> graphql document\n\n\nvar docCache = {}; // A map fragmentName -> [normalized source]\n\nvar fragmentSourceMap = {};\n\nfunction cacheKeyFromLoc(loc) {\n return normalize(loc.source.body.substring(loc.start, loc.end));\n} // For testing.\n\n\nfunction resetCaches() {\n docCache = {};\n fragmentSourceMap = {};\n} // Take a unstripped parsed document (query/mutation or even fragment), and\n// check all fragment definitions, checking for name->source uniqueness.\n// We also want to make sure only unique fragments exist in the document.\n\n\nvar printFragmentWarnings = true;\n\nfunction processFragments(ast) {\n var astFragmentMap = {};\n var definitions = [];\n\n for (var i = 0; i < ast.definitions.length; i++) {\n var fragmentDefinition = ast.definitions[i];\n\n if (fragmentDefinition.kind === 'FragmentDefinition') {\n var fragmentName = fragmentDefinition.name.value;\n var sourceKey = cacheKeyFromLoc(fragmentDefinition.loc); // We know something about this fragment\n\n if (fragmentSourceMap.hasOwnProperty(fragmentName) && !fragmentSourceMap[fragmentName][sourceKey]) {\n // this is a problem because the app developer is trying to register another fragment with\n // the same name as one previously registered. So, we tell them about it.\n if (printFragmentWarnings) {\n console.warn(\"Warning: fragment with name \" + fragmentName + \" already exists.\\n\" + \"graphql-tag enforces all fragment names across your application to be unique; read more about\\n\" + \"this in the docs: http://dev.apollodata.com/core/fragments.html#unique-names\");\n }\n\n fragmentSourceMap[fragmentName][sourceKey] = true;\n } else if (!fragmentSourceMap.hasOwnProperty(fragmentName)) {\n fragmentSourceMap[fragmentName] = {};\n fragmentSourceMap[fragmentName][sourceKey] = true;\n }\n\n if (!astFragmentMap[sourceKey]) {\n astFragmentMap[sourceKey] = true;\n definitions.push(fragmentDefinition);\n }\n } else {\n definitions.push(fragmentDefinition);\n }\n }\n\n ast.definitions = definitions;\n return ast;\n}\n\nfunction disableFragmentWarnings() {\n printFragmentWarnings = false;\n}\n\nfunction stripLoc(doc, removeLocAtThisLevel) {\n var docType = Object.prototype.toString.call(doc);\n\n if (docType === '[object Array]') {\n return doc.map(function (d) {\n return stripLoc(d, removeLocAtThisLevel);\n });\n }\n\n if (docType !== '[object Object]') {\n throw new Error('Unexpected input.');\n } // We don't want to remove the root loc field so we can use it\n // for fragment substitution (see below)\n\n\n if (removeLocAtThisLevel && doc.loc) {\n delete doc.loc;\n } // https://github.com/apollographql/graphql-tag/issues/40\n\n\n if (doc.loc) {\n delete doc.loc.startToken;\n delete doc.loc.endToken;\n }\n\n var keys = Object.keys(doc);\n var key;\n var value;\n var valueType;\n\n for (key in keys) {\n if (keys.hasOwnProperty(key)) {\n value = doc[keys[key]];\n valueType = Object.prototype.toString.call(value);\n\n if (valueType === '[object Object]' || valueType === '[object Array]') {\n doc[keys[key]] = stripLoc(value, true);\n }\n }\n }\n\n return doc;\n}\n\nvar experimentalFragmentVariables = false;\n\nfunction parseDocument(doc) {\n var cacheKey = normalize(doc);\n\n if (docCache[cacheKey]) {\n return docCache[cacheKey];\n }\n\n var parsed = parse(doc, {\n experimentalFragmentVariables: experimentalFragmentVariables\n });\n\n if (!parsed || parsed.kind !== 'Document') {\n throw new Error('Not a valid GraphQL document.');\n } // check that all \"new\" fragments inside the documents are consistent with\n // existing fragments of the same name\n\n\n parsed = processFragments(parsed);\n parsed = stripLoc(parsed, false);\n docCache[cacheKey] = parsed;\n return parsed;\n}\n\nfunction enableExperimentalFragmentVariables() {\n experimentalFragmentVariables = true;\n}\n\nfunction disableExperimentalFragmentVariables() {\n experimentalFragmentVariables = false;\n} // XXX This should eventually disallow arbitrary string interpolation, like Relay does\n\n\nfunction gql()\n/* arguments */\n{\n var args = Array.prototype.slice.call(arguments);\n var literals = args[0]; // We always get literals[0] and then matching post literals for each arg given\n\n var result = typeof literals === \"string\" ? literals : literals[0];\n\n for (var i = 1; i < args.length; i++) {\n if (args[i] && args[i].kind && args[i].kind === 'Document') {\n result += args[i].loc.source.body;\n } else {\n result += args[i];\n }\n\n result += literals[i];\n }\n\n return parseDocument(result);\n} // Support typescript, which isn't as nice as Babel about default exports\n\n\ngql.default = gql;\ngql.resetCaches = resetCaches;\ngql.disableFragmentWarnings = disableFragmentWarnings;\ngql.enableExperimentalFragmentVariables = enableExperimentalFragmentVariables;\ngql.disableExperimentalFragmentVariables = disableExperimentalFragmentVariables;\nmodule.exports = gql;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql-tag/src/index.js?"); /***/ }), /***/ "./node_modules/graphql/error/GraphQLError.js": /*!****************************************************!*\ !*** ./node_modules/graphql/error/GraphQLError.js ***! \****************************************************/ /*! flagged exports */ /*! export GraphQLError [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export printError [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.printError = printError;\nexports.GraphQLError = void 0;\n\nvar _isObjectLike = _interopRequireDefault(__webpack_require__(/*! ../jsutils/isObjectLike.js */ \"./node_modules/graphql/jsutils/isObjectLike.js\"));\n\nvar _symbols = __webpack_require__(/*! ../polyfills/symbols.js */ \"./node_modules/graphql/polyfills/symbols.js\");\n\nvar _location = __webpack_require__(/*! ../language/location.js */ \"./node_modules/graphql/language/location.js\");\n\nvar _printLocation = __webpack_require__(/*! ../language/printLocation.js */ \"./node_modules/graphql/language/printLocation.js\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\nfunction _construct(Parent, args, Class) {\n if (_isNativeReflectConstruct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n/**\n * A GraphQLError describes an Error found during the parse, validate, or\n * execute phases of performing a GraphQL operation. In addition to a message\n * and stack trace, it also includes information about the locations in a\n * GraphQL document and/or execution result that correspond to the Error.\n */\n\n\nvar GraphQLError = /*#__PURE__*/function (_Error) {\n _inherits(GraphQLError, _Error);\n\n var _super = _createSuper(GraphQLError);\n /**\n * A message describing the Error for debugging purposes.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n *\n * Note: should be treated as readonly, despite invariant usage.\n */\n\n /**\n * An array of { line, column } locations within the source GraphQL document\n * which correspond to this error.\n *\n * Errors during validation often contain multiple locations, for example to\n * point out two things with the same name. Errors during execution include a\n * single location, the field which produced the error.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n */\n\n /**\n * An array describing the JSON-path into the execution response which\n * corresponds to this error. Only included for errors during execution.\n *\n * Enumerable, and appears in the result of JSON.stringify().\n */\n\n /**\n * An array of GraphQL AST Nodes corresponding to this error.\n */\n\n /**\n * The source GraphQL document for the first location of this error.\n *\n * Note that if this Error represents more than one node, the source may not\n * represent nodes after the first node.\n */\n\n /**\n * An array of character offsets within the source GraphQL document\n * which correspond to this error.\n */\n\n /**\n * The original error thrown from a field resolver during execution.\n */\n\n /**\n * Extension fields to add to the formatted error.\n */\n\n\n function GraphQLError(message, nodes, source, positions, path, originalError, extensions) {\n var _locations2, _source2, _positions2, _extensions2;\n\n var _this;\n\n _classCallCheck(this, GraphQLError);\n\n _this = _super.call(this, message); // Compute list of blame nodes.\n\n var _nodes = Array.isArray(nodes) ? nodes.length !== 0 ? nodes : undefined : nodes ? [nodes] : undefined; // Compute locations in the source for the given nodes/positions.\n\n\n var _source = source;\n\n if (!_source && _nodes) {\n var _nodes$0$loc;\n\n _source = (_nodes$0$loc = _nodes[0].loc) === null || _nodes$0$loc === void 0 ? void 0 : _nodes$0$loc.source;\n }\n\n var _positions = positions;\n\n if (!_positions && _nodes) {\n _positions = _nodes.reduce(function (list, node) {\n if (node.loc) {\n list.push(node.loc.start);\n }\n\n return list;\n }, []);\n }\n\n if (_positions && _positions.length === 0) {\n _positions = undefined;\n }\n\n var _locations;\n\n if (positions && source) {\n _locations = positions.map(function (pos) {\n return (0, _location.getLocation)(source, pos);\n });\n } else if (_nodes) {\n _locations = _nodes.reduce(function (list, node) {\n if (node.loc) {\n list.push((0, _location.getLocation)(node.loc.source, node.loc.start));\n }\n\n return list;\n }, []);\n }\n\n var _extensions = extensions;\n\n if (_extensions == null && originalError != null) {\n var originalExtensions = originalError.extensions;\n\n if ((0, _isObjectLike.default)(originalExtensions)) {\n _extensions = originalExtensions;\n }\n }\n\n Object.defineProperties(_assertThisInitialized(_this), {\n name: {\n value: 'GraphQLError'\n },\n message: {\n value: message,\n // By being enumerable, JSON.stringify will include `message` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: true,\n writable: true\n },\n locations: {\n // Coercing falsy values to undefined ensures they will not be included\n // in JSON.stringify() when not provided.\n value: (_locations2 = _locations) !== null && _locations2 !== void 0 ? _locations2 : undefined,\n // By being enumerable, JSON.stringify will include `locations` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: _locations != null\n },\n path: {\n // Coercing falsy values to undefined ensures they will not be included\n // in JSON.stringify() when not provided.\n value: path !== null && path !== void 0 ? path : undefined,\n // By being enumerable, JSON.stringify will include `path` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: path != null\n },\n nodes: {\n value: _nodes !== null && _nodes !== void 0 ? _nodes : undefined\n },\n source: {\n value: (_source2 = _source) !== null && _source2 !== void 0 ? _source2 : undefined\n },\n positions: {\n value: (_positions2 = _positions) !== null && _positions2 !== void 0 ? _positions2 : undefined\n },\n originalError: {\n value: originalError\n },\n extensions: {\n // Coercing falsy values to undefined ensures they will not be included\n // in JSON.stringify() when not provided.\n value: (_extensions2 = _extensions) !== null && _extensions2 !== void 0 ? _extensions2 : undefined,\n // By being enumerable, JSON.stringify will include `path` in the\n // resulting output. This ensures that the simplest possible GraphQL\n // service adheres to the spec.\n enumerable: _extensions != null\n }\n }); // Include (non-enumerable) stack trace.\n\n if (originalError === null || originalError === void 0 ? void 0 : originalError.stack) {\n Object.defineProperty(_assertThisInitialized(_this), 'stack', {\n value: originalError.stack,\n writable: true,\n configurable: true\n });\n return _possibleConstructorReturn(_this);\n } // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(_assertThisInitialized(_this), GraphQLError);\n } else {\n Object.defineProperty(_assertThisInitialized(_this), 'stack', {\n value: Error().stack,\n writable: true,\n configurable: true\n });\n }\n\n return _this;\n }\n\n _createClass(GraphQLError, [{\n key: \"toString\",\n value: function toString() {\n return printError(this);\n } // FIXME: workaround to not break chai comparisons, should be remove in v16\n // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n\n }, {\n key: _symbols.SYMBOL_TO_STRING_TAG,\n get: function get() {\n return 'Object';\n }\n }]);\n\n return GraphQLError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n/**\n * Prints a GraphQLError to a string, representing useful location information\n * about the error's position in the source.\n */\n\n\nexports.GraphQLError = GraphQLError;\n\nfunction printError(error) {\n var output = error.message;\n\n if (error.nodes) {\n for (var _i2 = 0, _error$nodes2 = error.nodes; _i2 < _error$nodes2.length; _i2++) {\n var node = _error$nodes2[_i2];\n\n if (node.loc) {\n output += '\\n\\n' + (0, _printLocation.printLocation)(node.loc);\n }\n }\n } else if (error.source && error.locations) {\n for (var _i4 = 0, _error$locations2 = error.locations; _i4 < _error$locations2.length; _i4++) {\n var location = _error$locations2[_i4];\n output += '\\n\\n' + (0, _printLocation.printSourceLocation)(error.source, location);\n }\n }\n\n return output;\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/error/GraphQLError.js?"); /***/ }), /***/ "./node_modules/graphql/error/syntaxError.js": /*!***************************************************!*\ !*** ./node_modules/graphql/error/syntaxError.js ***! \***************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export syntaxError [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.syntaxError = syntaxError;\n\nvar _GraphQLError = __webpack_require__(/*! ./GraphQLError.js */ \"./node_modules/graphql/error/GraphQLError.js\");\n/**\n * Produces a GraphQLError representing a syntax error, containing useful\n * descriptive information about the syntax error's position in the source.\n */\n\n\nfunction syntaxError(source, position, description) {\n return new _GraphQLError.GraphQLError(\"Syntax Error: \".concat(description), undefined, source, [position]);\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/error/syntaxError.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/defineInspect.js": /*!*******************************************************!*\ !*** ./node_modules/graphql/jsutils/defineInspect.js ***! \*******************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = defineInspect;\n\nvar _invariant = _interopRequireDefault(__webpack_require__(/*! ./invariant.js */ \"./node_modules/graphql/jsutils/invariant.js\"));\n\nvar _nodejsCustomInspectSymbol = _interopRequireDefault(__webpack_require__(/*! ./nodejsCustomInspectSymbol.js */ \"./node_modules/graphql/jsutils/nodejsCustomInspectSymbol.js\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n/**\n * The `defineInspect()` function defines `inspect()` prototype method as alias of `toJSON`\n */\n\n\nfunction defineInspect(classObject) {\n var fn = classObject.prototype.toJSON;\n typeof fn === 'function' || (0, _invariant.default)(0);\n classObject.prototype.inspect = fn; // istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\n if (_nodejsCustomInspectSymbol.default) {\n classObject.prototype[_nodejsCustomInspectSymbol.default] = fn;\n }\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/defineInspect.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/devAssert.js": /*!***************************************************!*\ !*** ./node_modules/graphql/jsutils/devAssert.js ***! \***************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = devAssert;\n\nfunction devAssert(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n\n if (!booleanCondition) {\n throw new Error(message);\n }\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/devAssert.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/inspect.js": /*!*************************************************!*\ !*** ./node_modules/graphql/jsutils/inspect.js ***! \*************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = inspect;\n\nvar _nodejsCustomInspectSymbol = _interopRequireDefault(__webpack_require__(/*! ./nodejsCustomInspectSymbol.js */ \"./node_modules/graphql/jsutils/nodejsCustomInspectSymbol.js\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar MAX_ARRAY_LENGTH = 10;\nvar MAX_RECURSIVE_DEPTH = 2;\n/**\n * Used to print values in error messages.\n */\n\nfunction inspect(value) {\n return formatValue(value, []);\n}\n\nfunction formatValue(value, seenValues) {\n switch (_typeof(value)) {\n case 'string':\n return JSON.stringify(value);\n\n case 'function':\n return value.name ? \"[function \".concat(value.name, \"]\") : '[function]';\n\n case 'object':\n if (value === null) {\n return 'null';\n }\n\n return formatObjectValue(value, seenValues);\n\n default:\n return String(value);\n }\n}\n\nfunction formatObjectValue(value, previouslySeenValues) {\n if (previouslySeenValues.indexOf(value) !== -1) {\n return '[Circular]';\n }\n\n var seenValues = [].concat(previouslySeenValues, [value]);\n var customInspectFn = getCustomFn(value);\n\n if (customInspectFn !== undefined) {\n var customValue = customInspectFn.call(value); // check for infinite recursion\n\n if (customValue !== value) {\n return typeof customValue === 'string' ? customValue : formatValue(customValue, seenValues);\n }\n } else if (Array.isArray(value)) {\n return formatArray(value, seenValues);\n }\n\n return formatObject(value, seenValues);\n}\n\nfunction formatObject(object, seenValues) {\n var keys = Object.keys(object);\n\n if (keys.length === 0) {\n return '{}';\n }\n\n if (seenValues.length > MAX_RECURSIVE_DEPTH) {\n return '[' + getObjectTag(object) + ']';\n }\n\n var properties = keys.map(function (key) {\n var value = formatValue(object[key], seenValues);\n return key + ': ' + value;\n });\n return '{ ' + properties.join(', ') + ' }';\n}\n\nfunction formatArray(array, seenValues) {\n if (array.length === 0) {\n return '[]';\n }\n\n if (seenValues.length > MAX_RECURSIVE_DEPTH) {\n return '[Array]';\n }\n\n var len = Math.min(MAX_ARRAY_LENGTH, array.length);\n var remaining = array.length - len;\n var items = [];\n\n for (var i = 0; i < len; ++i) {\n items.push(formatValue(array[i], seenValues));\n }\n\n if (remaining === 1) {\n items.push('... 1 more item');\n } else if (remaining > 1) {\n items.push(\"... \".concat(remaining, \" more items\"));\n }\n\n return '[' + items.join(', ') + ']';\n}\n\nfunction getCustomFn(object) {\n var customInspectFn = object[String(_nodejsCustomInspectSymbol.default)];\n\n if (typeof customInspectFn === 'function') {\n return customInspectFn;\n }\n\n if (typeof object.inspect === 'function') {\n return object.inspect;\n }\n}\n\nfunction getObjectTag(object) {\n var tag = Object.prototype.toString.call(object).replace(/^\\[object /, '').replace(/]$/, '');\n\n if (tag === 'Object' && typeof object.constructor === 'function') {\n var name = object.constructor.name;\n\n if (typeof name === 'string' && name !== '') {\n return name;\n }\n }\n\n return tag;\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/inspect.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/instanceOf.js": /*!****************************************************!*\ !*** ./node_modules/graphql/jsutils/instanceOf.js ***! \****************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n/**\n * A replacement for instanceof which includes an error warning when multi-realm\n * constructors are detected.\n */\n// See: https://expressjs.com/en/advanced/best-practice-performance.html#set-node_env-to-production\n// See: https://webpack.js.org/guides/production/\n\nvar _default = false ? // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n// eslint-disable-next-line no-shadow\n0 : // eslint-disable-next-line no-shadow\nfunction instanceOf(value, constructor) {\n if (value instanceof constructor) {\n return true;\n }\n\n if (value) {\n var valueClass = value.constructor;\n var className = constructor.name;\n\n if (className && valueClass && valueClass.name === className) {\n throw new Error(\"Cannot use \".concat(className, \" \\\"\").concat(value, \"\\\" from another module or realm.\\n\\nEnsure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory. If different versions of \\\"graphql\\\" are the dependencies of other\\nrelied on modules, use \\\"resolutions\\\" to ensure only one version is installed.\\n\\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\\n\\nDuplicate \\\"graphql\\\" modules cannot be used at the same time since different\\nversions may have different capabilities and behavior. The data from one\\nversion used in the function from another could produce confusing and\\nspurious results.\"));\n }\n }\n\n return false;\n};\n\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/instanceOf.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/invariant.js": /*!***************************************************!*\ !*** ./node_modules/graphql/jsutils/invariant.js ***! \***************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = invariant;\n\nfunction invariant(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n\n if (!booleanCondition) {\n throw new Error(message != null ? message : 'Unexpected invariant triggered.');\n }\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/invariant.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/isObjectLike.js": /*!******************************************************!*\ !*** ./node_modules/graphql/jsutils/isObjectLike.js ***! \******************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = isObjectLike;\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n/**\n * Return true if `value` is object-like. A value is object-like if it's not\n * `null` and has a `typeof` result of \"object\".\n */\n\n\nfunction isObjectLike(value) {\n return _typeof(value) == 'object' && value !== null;\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/isObjectLike.js?"); /***/ }), /***/ "./node_modules/graphql/jsutils/nodejsCustomInspectSymbol.js": /*!*******************************************************************!*\ !*** ./node_modules/graphql/jsutils/nodejsCustomInspectSymbol.js ***! \*******************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0; // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nvar nodejsCustomInspectSymbol = typeof Symbol === 'function' && typeof Symbol.for === 'function' ? Symbol.for('nodejs.util.inspect.custom') : undefined;\nvar _default = nodejsCustomInspectSymbol;\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/jsutils/nodejsCustomInspectSymbol.js?"); /***/ }), /***/ "./node_modules/graphql/language/ast.js": /*!**********************************************!*\ !*** ./node_modules/graphql/language/ast.js ***! \**********************************************/ /*! flagged exports */ /*! export Location [provided] [no usage info] [missing usage info prevents renaming] */ /*! export Token [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export isNode [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.isNode = isNode;\nexports.Token = exports.Location = void 0;\n\nvar _defineInspect = _interopRequireDefault(__webpack_require__(/*! ../jsutils/defineInspect.js */ \"./node_modules/graphql/jsutils/defineInspect.js\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n/**\n * Contains a range of UTF-8 character offsets and token references that\n * identify the region of the source from which the AST derived.\n */\n\n\nvar Location = /*#__PURE__*/function () {\n /**\n * The character offset at which this Node begins.\n */\n\n /**\n * The character offset at which this Node ends.\n */\n\n /**\n * The Token at which this Node begins.\n */\n\n /**\n * The Token at which this Node ends.\n */\n\n /**\n * The Source document the AST represents.\n */\n function Location(startToken, endToken, source) {\n this.start = startToken.start;\n this.end = endToken.end;\n this.startToken = startToken;\n this.endToken = endToken;\n this.source = source;\n }\n\n var _proto = Location.prototype;\n\n _proto.toJSON = function toJSON() {\n return {\n start: this.start,\n end: this.end\n };\n };\n\n return Location;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n\n\nexports.Location = Location;\n(0, _defineInspect.default)(Location);\n/**\n * Represents a range of characters represented by a lexical token\n * within a Source.\n */\n\nvar Token = /*#__PURE__*/function () {\n /**\n * The kind of Token.\n */\n\n /**\n * The character offset at which this Node begins.\n */\n\n /**\n * The character offset at which this Node ends.\n */\n\n /**\n * The 1-indexed line number on which this Token appears.\n */\n\n /**\n * The 1-indexed column number at which this Token begins.\n */\n\n /**\n * For non-punctuation tokens, represents the interpreted value of the token.\n */\n\n /**\n * Tokens exist as nodes in a double-linked-list amongst all tokens\n * including ignored tokens. is always the first node and \n * the last.\n */\n function Token(kind, start, end, line, column, prev, value) {\n this.kind = kind;\n this.start = start;\n this.end = end;\n this.line = line;\n this.column = column;\n this.value = value;\n this.prev = prev;\n this.next = null;\n }\n\n var _proto2 = Token.prototype;\n\n _proto2.toJSON = function toJSON() {\n return {\n kind: this.kind,\n value: this.value,\n line: this.line,\n column: this.column\n };\n };\n\n return Token;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n\n\nexports.Token = Token;\n(0, _defineInspect.default)(Token);\n/**\n * @internal\n */\n\nfunction isNode(maybeNode) {\n return maybeNode != null && typeof maybeNode.kind === 'string';\n}\n/**\n * The list of all possible AST node types.\n */\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/ast.js?"); /***/ }), /***/ "./node_modules/graphql/language/blockString.js": /*!******************************************************!*\ !*** ./node_modules/graphql/language/blockString.js ***! \******************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export dedentBlockStringValue [provided] [no usage info] [missing usage info prevents renaming] */ /*! export getBlockStringIndentation [provided] [no usage info] [missing usage info prevents renaming] */ /*! export printBlockString [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.dedentBlockStringValue = dedentBlockStringValue;\nexports.getBlockStringIndentation = getBlockStringIndentation;\nexports.printBlockString = printBlockString;\n/**\n * Produces the value of a block string from its parsed raw value, similar to\n * CoffeeScript's block string, Python's docstring trim or Ruby's strip_heredoc.\n *\n * This implements the GraphQL spec's BlockStringValue() static algorithm.\n *\n * @internal\n */\n\nfunction dedentBlockStringValue(rawString) {\n // Expand a block string's raw value into independent lines.\n var lines = rawString.split(/\\r\\n|[\\n\\r]/g); // Remove common indentation from all lines but first.\n\n var commonIndent = getBlockStringIndentation(rawString);\n\n if (commonIndent !== 0) {\n for (var i = 1; i < lines.length; i++) {\n lines[i] = lines[i].slice(commonIndent);\n }\n } // Remove leading and trailing blank lines.\n\n\n var startLine = 0;\n\n while (startLine < lines.length && isBlank(lines[startLine])) {\n ++startLine;\n }\n\n var endLine = lines.length;\n\n while (endLine > startLine && isBlank(lines[endLine - 1])) {\n --endLine;\n } // Return a string of the lines joined with U+000A.\n\n\n return lines.slice(startLine, endLine).join('\\n');\n}\n\nfunction isBlank(str) {\n for (var i = 0; i < str.length; ++i) {\n if (str[i] !== ' ' && str[i] !== '\\t') {\n return false;\n }\n }\n\n return true;\n}\n/**\n * @internal\n */\n\n\nfunction getBlockStringIndentation(value) {\n var _commonIndent;\n\n var isFirstLine = true;\n var isEmptyLine = true;\n var indent = 0;\n var commonIndent = null;\n\n for (var i = 0; i < value.length; ++i) {\n switch (value.charCodeAt(i)) {\n case 13:\n // \\r\n if (value.charCodeAt(i + 1) === 10) {\n ++i; // skip \\r\\n as one symbol\n }\n\n // falls through\n\n case 10:\n // \\n\n isFirstLine = false;\n isEmptyLine = true;\n indent = 0;\n break;\n\n case 9: // \\t\n\n case 32:\n // \n ++indent;\n break;\n\n default:\n if (isEmptyLine && !isFirstLine && (commonIndent === null || indent < commonIndent)) {\n commonIndent = indent;\n }\n\n isEmptyLine = false;\n }\n }\n\n return (_commonIndent = commonIndent) !== null && _commonIndent !== void 0 ? _commonIndent : 0;\n}\n/**\n * Print a block string in the indented block form by adding a leading and\n * trailing blank line. However, if a block string starts with whitespace and is\n * a single-line, adding a leading blank line would strip that whitespace.\n *\n * @internal\n */\n\n\nfunction printBlockString(value) {\n var indentation = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var preferMultipleLines = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var isSingleLine = value.indexOf('\\n') === -1;\n var hasLeadingSpace = value[0] === ' ' || value[0] === '\\t';\n var hasTrailingQuote = value[value.length - 1] === '\"';\n var hasTrailingSlash = value[value.length - 1] === '\\\\';\n var printAsMultipleLines = !isSingleLine || hasTrailingQuote || hasTrailingSlash || preferMultipleLines;\n var result = ''; // Format a multi-line block quote to account for leading space.\n\n if (printAsMultipleLines && !(isSingleLine && hasLeadingSpace)) {\n result += '\\n' + indentation;\n }\n\n result += indentation ? value.replace(/\\n/g, '\\n' + indentation) : value;\n\n if (printAsMultipleLines) {\n result += '\\n';\n }\n\n return '\"\"\"' + result.replace(/\"\"\"/g, '\\\\\"\"\"') + '\"\"\"';\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/blockString.js?"); /***/ }), /***/ "./node_modules/graphql/language/directiveLocation.js": /*!************************************************************!*\ !*** ./node_modules/graphql/language/directiveLocation.js ***! \************************************************************/ /*! flagged exports */ /*! export DirectiveLocation [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.DirectiveLocation = void 0;\n/**\n * The set of allowed directive location values.\n */\n\nvar DirectiveLocation = Object.freeze({\n // Request Definitions\n QUERY: 'QUERY',\n MUTATION: 'MUTATION',\n SUBSCRIPTION: 'SUBSCRIPTION',\n FIELD: 'FIELD',\n FRAGMENT_DEFINITION: 'FRAGMENT_DEFINITION',\n FRAGMENT_SPREAD: 'FRAGMENT_SPREAD',\n INLINE_FRAGMENT: 'INLINE_FRAGMENT',\n VARIABLE_DEFINITION: 'VARIABLE_DEFINITION',\n // Type System Definitions\n SCHEMA: 'SCHEMA',\n SCALAR: 'SCALAR',\n OBJECT: 'OBJECT',\n FIELD_DEFINITION: 'FIELD_DEFINITION',\n ARGUMENT_DEFINITION: 'ARGUMENT_DEFINITION',\n INTERFACE: 'INTERFACE',\n UNION: 'UNION',\n ENUM: 'ENUM',\n ENUM_VALUE: 'ENUM_VALUE',\n INPUT_OBJECT: 'INPUT_OBJECT',\n INPUT_FIELD_DEFINITION: 'INPUT_FIELD_DEFINITION'\n});\n/**\n * The enum type representing the directive location values.\n */\n\nexports.DirectiveLocation = DirectiveLocation;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/directiveLocation.js?"); /***/ }), /***/ "./node_modules/graphql/language/kinds.js": /*!************************************************!*\ !*** ./node_modules/graphql/language/kinds.js ***! \************************************************/ /*! flagged exports */ /*! export Kind [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.Kind = void 0;\n/**\n * The set of allowed kind values for AST nodes.\n */\n\nvar Kind = Object.freeze({\n // Name\n NAME: 'Name',\n // Document\n DOCUMENT: 'Document',\n OPERATION_DEFINITION: 'OperationDefinition',\n VARIABLE_DEFINITION: 'VariableDefinition',\n SELECTION_SET: 'SelectionSet',\n FIELD: 'Field',\n ARGUMENT: 'Argument',\n // Fragments\n FRAGMENT_SPREAD: 'FragmentSpread',\n INLINE_FRAGMENT: 'InlineFragment',\n FRAGMENT_DEFINITION: 'FragmentDefinition',\n // Values\n VARIABLE: 'Variable',\n INT: 'IntValue',\n FLOAT: 'FloatValue',\n STRING: 'StringValue',\n BOOLEAN: 'BooleanValue',\n NULL: 'NullValue',\n ENUM: 'EnumValue',\n LIST: 'ListValue',\n OBJECT: 'ObjectValue',\n OBJECT_FIELD: 'ObjectField',\n // Directives\n DIRECTIVE: 'Directive',\n // Types\n NAMED_TYPE: 'NamedType',\n LIST_TYPE: 'ListType',\n NON_NULL_TYPE: 'NonNullType',\n // Type System Definitions\n SCHEMA_DEFINITION: 'SchemaDefinition',\n OPERATION_TYPE_DEFINITION: 'OperationTypeDefinition',\n // Type Definitions\n SCALAR_TYPE_DEFINITION: 'ScalarTypeDefinition',\n OBJECT_TYPE_DEFINITION: 'ObjectTypeDefinition',\n FIELD_DEFINITION: 'FieldDefinition',\n INPUT_VALUE_DEFINITION: 'InputValueDefinition',\n INTERFACE_TYPE_DEFINITION: 'InterfaceTypeDefinition',\n UNION_TYPE_DEFINITION: 'UnionTypeDefinition',\n ENUM_TYPE_DEFINITION: 'EnumTypeDefinition',\n ENUM_VALUE_DEFINITION: 'EnumValueDefinition',\n INPUT_OBJECT_TYPE_DEFINITION: 'InputObjectTypeDefinition',\n // Directive Definitions\n DIRECTIVE_DEFINITION: 'DirectiveDefinition',\n // Type System Extensions\n SCHEMA_EXTENSION: 'SchemaExtension',\n // Type Extensions\n SCALAR_TYPE_EXTENSION: 'ScalarTypeExtension',\n OBJECT_TYPE_EXTENSION: 'ObjectTypeExtension',\n INTERFACE_TYPE_EXTENSION: 'InterfaceTypeExtension',\n UNION_TYPE_EXTENSION: 'UnionTypeExtension',\n ENUM_TYPE_EXTENSION: 'EnumTypeExtension',\n INPUT_OBJECT_TYPE_EXTENSION: 'InputObjectTypeExtension'\n});\n/**\n * The enum type representing the possible kind values of AST nodes.\n */\n\nexports.Kind = Kind;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/kinds.js?"); /***/ }), /***/ "./node_modules/graphql/language/lexer.js": /*!************************************************!*\ !*** ./node_modules/graphql/language/lexer.js ***! \************************************************/ /*! flagged exports */ /*! export Lexer [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export isPunctuatorTokenKind [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.isPunctuatorTokenKind = isPunctuatorTokenKind;\nexports.Lexer = void 0;\n\nvar _syntaxError = __webpack_require__(/*! ../error/syntaxError.js */ \"./node_modules/graphql/error/syntaxError.js\");\n\nvar _ast = __webpack_require__(/*! ./ast.js */ \"./node_modules/graphql/language/ast.js\");\n\nvar _tokenKind = __webpack_require__(/*! ./tokenKind.js */ \"./node_modules/graphql/language/tokenKind.js\");\n\nvar _blockString = __webpack_require__(/*! ./blockString.js */ \"./node_modules/graphql/language/blockString.js\");\n/**\n * Given a Source object, creates a Lexer for that source.\n * A Lexer is a stateful stream generator in that every time\n * it is advanced, it returns the next token in the Source. Assuming the\n * source lexes, the final Token emitted by the lexer will be of kind\n * EOF, after which the lexer will repeatedly return the same EOF token\n * whenever called.\n */\n\n\nvar Lexer = /*#__PURE__*/function () {\n /**\n * The previously focused non-ignored token.\n */\n\n /**\n * The currently focused non-ignored token.\n */\n\n /**\n * The (1-indexed) line containing the current token.\n */\n\n /**\n * The character offset at which the current line begins.\n */\n function Lexer(source) {\n var startOfFileToken = new _ast.Token(_tokenKind.TokenKind.SOF, 0, 0, 0, 0, null);\n this.source = source;\n this.lastToken = startOfFileToken;\n this.token = startOfFileToken;\n this.line = 1;\n this.lineStart = 0;\n }\n /**\n * Advances the token stream to the next non-ignored token.\n */\n\n\n var _proto = Lexer.prototype;\n\n _proto.advance = function advance() {\n this.lastToken = this.token;\n var token = this.token = this.lookahead();\n return token;\n }\n /**\n * Looks ahead and returns the next non-ignored token, but does not change\n * the state of Lexer.\n */\n ;\n\n _proto.lookahead = function lookahead() {\n var token = this.token;\n\n if (token.kind !== _tokenKind.TokenKind.EOF) {\n do {\n var _token$next; // Note: next is only mutable during parsing, so we cast to allow this.\n\n\n token = (_token$next = token.next) !== null && _token$next !== void 0 ? _token$next : token.next = readToken(this, token);\n } while (token.kind === _tokenKind.TokenKind.COMMENT);\n }\n\n return token;\n };\n\n return Lexer;\n}();\n/**\n * @internal\n */\n\n\nexports.Lexer = Lexer;\n\nfunction isPunctuatorTokenKind(kind) {\n return kind === _tokenKind.TokenKind.BANG || kind === _tokenKind.TokenKind.DOLLAR || kind === _tokenKind.TokenKind.AMP || kind === _tokenKind.TokenKind.PAREN_L || kind === _tokenKind.TokenKind.PAREN_R || kind === _tokenKind.TokenKind.SPREAD || kind === _tokenKind.TokenKind.COLON || kind === _tokenKind.TokenKind.EQUALS || kind === _tokenKind.TokenKind.AT || kind === _tokenKind.TokenKind.BRACKET_L || kind === _tokenKind.TokenKind.BRACKET_R || kind === _tokenKind.TokenKind.BRACE_L || kind === _tokenKind.TokenKind.PIPE || kind === _tokenKind.TokenKind.BRACE_R;\n}\n\nfunction printCharCode(code) {\n return (// NaN/undefined represents access beyond the end of the file.\n isNaN(code) ? _tokenKind.TokenKind.EOF : // Trust JSON for ASCII.\n code < 0x007f ? JSON.stringify(String.fromCharCode(code)) : // Otherwise print the escaped form.\n \"\\\"\\\\u\".concat(('00' + code.toString(16).toUpperCase()).slice(-4), \"\\\"\")\n );\n}\n/**\n * Gets the next token from the source starting at the given position.\n *\n * This skips over whitespace until it finds the next lexable token, then lexes\n * punctuators immediately or calls the appropriate helper function for more\n * complicated tokens.\n */\n\n\nfunction readToken(lexer, prev) {\n var source = lexer.source;\n var body = source.body;\n var bodyLength = body.length;\n var pos = prev.end;\n\n while (pos < bodyLength) {\n var code = body.charCodeAt(pos);\n var _line = lexer.line;\n\n var _col = 1 + pos - lexer.lineStart; // SourceCharacter\n\n\n switch (code) {\n case 0xfeff: // \n\n case 9: // \\t\n\n case 32: // \n\n case 44:\n // ,\n ++pos;\n continue;\n\n case 10:\n // \\n\n ++pos;\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n\n case 13:\n // \\r\n if (body.charCodeAt(pos + 1) === 10) {\n pos += 2;\n } else {\n ++pos;\n }\n\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n\n case 33:\n // !\n return new _ast.Token(_tokenKind.TokenKind.BANG, pos, pos + 1, _line, _col, prev);\n\n case 35:\n // #\n return readComment(source, pos, _line, _col, prev);\n\n case 36:\n // $\n return new _ast.Token(_tokenKind.TokenKind.DOLLAR, pos, pos + 1, _line, _col, prev);\n\n case 38:\n // &\n return new _ast.Token(_tokenKind.TokenKind.AMP, pos, pos + 1, _line, _col, prev);\n\n case 40:\n // (\n return new _ast.Token(_tokenKind.TokenKind.PAREN_L, pos, pos + 1, _line, _col, prev);\n\n case 41:\n // )\n return new _ast.Token(_tokenKind.TokenKind.PAREN_R, pos, pos + 1, _line, _col, prev);\n\n case 46:\n // .\n if (body.charCodeAt(pos + 1) === 46 && body.charCodeAt(pos + 2) === 46) {\n return new _ast.Token(_tokenKind.TokenKind.SPREAD, pos, pos + 3, _line, _col, prev);\n }\n\n break;\n\n case 58:\n // :\n return new _ast.Token(_tokenKind.TokenKind.COLON, pos, pos + 1, _line, _col, prev);\n\n case 61:\n // =\n return new _ast.Token(_tokenKind.TokenKind.EQUALS, pos, pos + 1, _line, _col, prev);\n\n case 64:\n // @\n return new _ast.Token(_tokenKind.TokenKind.AT, pos, pos + 1, _line, _col, prev);\n\n case 91:\n // [\n return new _ast.Token(_tokenKind.TokenKind.BRACKET_L, pos, pos + 1, _line, _col, prev);\n\n case 93:\n // ]\n return new _ast.Token(_tokenKind.TokenKind.BRACKET_R, pos, pos + 1, _line, _col, prev);\n\n case 123:\n // {\n return new _ast.Token(_tokenKind.TokenKind.BRACE_L, pos, pos + 1, _line, _col, prev);\n\n case 124:\n // |\n return new _ast.Token(_tokenKind.TokenKind.PIPE, pos, pos + 1, _line, _col, prev);\n\n case 125:\n // }\n return new _ast.Token(_tokenKind.TokenKind.BRACE_R, pos, pos + 1, _line, _col, prev);\n\n case 34:\n // \"\n if (body.charCodeAt(pos + 1) === 34 && body.charCodeAt(pos + 2) === 34) {\n return readBlockString(source, pos, _line, _col, prev, lexer);\n }\n\n return readString(source, pos, _line, _col, prev);\n\n case 45: // -\n\n case 48: // 0\n\n case 49: // 1\n\n case 50: // 2\n\n case 51: // 3\n\n case 52: // 4\n\n case 53: // 5\n\n case 54: // 6\n\n case 55: // 7\n\n case 56: // 8\n\n case 57:\n // 9\n return readNumber(source, pos, code, _line, _col, prev);\n\n case 65: // A\n\n case 66: // B\n\n case 67: // C\n\n case 68: // D\n\n case 69: // E\n\n case 70: // F\n\n case 71: // G\n\n case 72: // H\n\n case 73: // I\n\n case 74: // J\n\n case 75: // K\n\n case 76: // L\n\n case 77: // M\n\n case 78: // N\n\n case 79: // O\n\n case 80: // P\n\n case 81: // Q\n\n case 82: // R\n\n case 83: // S\n\n case 84: // T\n\n case 85: // U\n\n case 86: // V\n\n case 87: // W\n\n case 88: // X\n\n case 89: // Y\n\n case 90: // Z\n\n case 95: // _\n\n case 97: // a\n\n case 98: // b\n\n case 99: // c\n\n case 100: // d\n\n case 101: // e\n\n case 102: // f\n\n case 103: // g\n\n case 104: // h\n\n case 105: // i\n\n case 106: // j\n\n case 107: // k\n\n case 108: // l\n\n case 109: // m\n\n case 110: // n\n\n case 111: // o\n\n case 112: // p\n\n case 113: // q\n\n case 114: // r\n\n case 115: // s\n\n case 116: // t\n\n case 117: // u\n\n case 118: // v\n\n case 119: // w\n\n case 120: // x\n\n case 121: // y\n\n case 122:\n // z\n return readName(source, pos, _line, _col, prev);\n }\n\n throw (0, _syntaxError.syntaxError)(source, pos, unexpectedCharacterMessage(code));\n }\n\n var line = lexer.line;\n var col = 1 + pos - lexer.lineStart;\n return new _ast.Token(_tokenKind.TokenKind.EOF, bodyLength, bodyLength, line, col, prev);\n}\n/**\n * Report a message that an unexpected character was encountered.\n */\n\n\nfunction unexpectedCharacterMessage(code) {\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) {\n return \"Cannot contain the invalid character \".concat(printCharCode(code), \".\");\n }\n\n if (code === 39) {\n // '\n return 'Unexpected single quote character (\\'), did you mean to use a double quote (\")?';\n }\n\n return \"Cannot parse the unexpected character \".concat(printCharCode(code), \".\");\n}\n/**\n * Reads a comment token from the source file.\n *\n * #[\\u0009\\u0020-\\uFFFF]*\n */\n\n\nfunction readComment(source, start, line, col, prev) {\n var body = source.body;\n var code;\n var position = start;\n\n do {\n code = body.charCodeAt(++position);\n } while (!isNaN(code) && ( // SourceCharacter but not LineTerminator\n code > 0x001f || code === 0x0009));\n\n return new _ast.Token(_tokenKind.TokenKind.COMMENT, start, position, line, col, prev, body.slice(start + 1, position));\n}\n/**\n * Reads a number token from the source file, either a float\n * or an int depending on whether a decimal point appears.\n *\n * Int: -?(0|[1-9][0-9]*)\n * Float: -?(0|[1-9][0-9]*)(\\.[0-9]+)?((E|e)(+|-)?[0-9]+)?\n */\n\n\nfunction readNumber(source, start, firstCode, line, col, prev) {\n var body = source.body;\n var code = firstCode;\n var position = start;\n var isFloat = false;\n\n if (code === 45) {\n // -\n code = body.charCodeAt(++position);\n }\n\n if (code === 48) {\n // 0\n code = body.charCodeAt(++position);\n\n if (code >= 48 && code <= 57) {\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid number, unexpected digit after 0: \".concat(printCharCode(code), \".\"));\n }\n } else {\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n\n if (code === 46) {\n // .\n isFloat = true;\n code = body.charCodeAt(++position);\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n\n if (code === 69 || code === 101) {\n // E e\n isFloat = true;\n code = body.charCodeAt(++position);\n\n if (code === 43 || code === 45) {\n // + -\n code = body.charCodeAt(++position);\n }\n\n position = readDigits(source, position, code);\n code = body.charCodeAt(position);\n } // Numbers cannot be followed by . or NameStart\n\n\n if (code === 46 || isNameStart(code)) {\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid number, expected digit but got: \".concat(printCharCode(code), \".\"));\n }\n\n return new _ast.Token(isFloat ? _tokenKind.TokenKind.FLOAT : _tokenKind.TokenKind.INT, start, position, line, col, prev, body.slice(start, position));\n}\n/**\n * Returns the new position in the source after reading digits.\n */\n\n\nfunction readDigits(source, start, firstCode) {\n var body = source.body;\n var position = start;\n var code = firstCode;\n\n if (code >= 48 && code <= 57) {\n // 0 - 9\n do {\n code = body.charCodeAt(++position);\n } while (code >= 48 && code <= 57); // 0 - 9\n\n\n return position;\n }\n\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid number, expected digit but got: \".concat(printCharCode(code), \".\"));\n}\n/**\n * Reads a string token from the source file.\n *\n * \"([^\"\\\\\\u000A\\u000D]|(\\\\(u[0-9a-fA-F]{4}|[\"\\\\/bfnrt])))*\"\n */\n\n\nfunction readString(source, start, line, col, prev) {\n var body = source.body;\n var position = start + 1;\n var chunkStart = position;\n var code = 0;\n var value = '';\n\n while (position < body.length && !isNaN(code = body.charCodeAt(position)) && // not LineTerminator\n code !== 0x000a && code !== 0x000d) {\n // Closing Quote (\")\n if (code === 34) {\n value += body.slice(chunkStart, position);\n return new _ast.Token(_tokenKind.TokenKind.STRING, start, position + 1, line, col, prev, value);\n } // SourceCharacter\n\n\n if (code < 0x0020 && code !== 0x0009) {\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid character within String: \".concat(printCharCode(code), \".\"));\n }\n\n ++position;\n\n if (code === 92) {\n // \\\n value += body.slice(chunkStart, position - 1);\n code = body.charCodeAt(position);\n\n switch (code) {\n case 34:\n value += '\"';\n break;\n\n case 47:\n value += '/';\n break;\n\n case 92:\n value += '\\\\';\n break;\n\n case 98:\n value += '\\b';\n break;\n\n case 102:\n value += '\\f';\n break;\n\n case 110:\n value += '\\n';\n break;\n\n case 114:\n value += '\\r';\n break;\n\n case 116:\n value += '\\t';\n break;\n\n case 117:\n {\n // uXXXX\n var charCode = uniCharCode(body.charCodeAt(position + 1), body.charCodeAt(position + 2), body.charCodeAt(position + 3), body.charCodeAt(position + 4));\n\n if (charCode < 0) {\n var invalidSequence = body.slice(position + 1, position + 5);\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid character escape sequence: \\\\u\".concat(invalidSequence, \".\"));\n }\n\n value += String.fromCharCode(charCode);\n position += 4;\n break;\n }\n\n default:\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid character escape sequence: \\\\\".concat(String.fromCharCode(code), \".\"));\n }\n\n ++position;\n chunkStart = position;\n }\n }\n\n throw (0, _syntaxError.syntaxError)(source, position, 'Unterminated string.');\n}\n/**\n * Reads a block string token from the source file.\n *\n * \"\"\"(\"?\"?(\\\\\"\"\"|\\\\(?!=\"\"\")|[^\"\\\\]))*\"\"\"\n */\n\n\nfunction readBlockString(source, start, line, col, prev, lexer) {\n var body = source.body;\n var position = start + 3;\n var chunkStart = position;\n var code = 0;\n var rawValue = '';\n\n while (position < body.length && !isNaN(code = body.charCodeAt(position))) {\n // Closing Triple-Quote (\"\"\")\n if (code === 34 && body.charCodeAt(position + 1) === 34 && body.charCodeAt(position + 2) === 34) {\n rawValue += body.slice(chunkStart, position);\n return new _ast.Token(_tokenKind.TokenKind.BLOCK_STRING, start, position + 3, line, col, prev, (0, _blockString.dedentBlockStringValue)(rawValue));\n } // SourceCharacter\n\n\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) {\n throw (0, _syntaxError.syntaxError)(source, position, \"Invalid character within String: \".concat(printCharCode(code), \".\"));\n }\n\n if (code === 10) {\n // new line\n ++position;\n ++lexer.line;\n lexer.lineStart = position;\n } else if (code === 13) {\n // carriage return\n if (body.charCodeAt(position + 1) === 10) {\n position += 2;\n } else {\n ++position;\n }\n\n ++lexer.line;\n lexer.lineStart = position;\n } else if ( // Escape Triple-Quote (\\\"\"\")\n code === 92 && body.charCodeAt(position + 1) === 34 && body.charCodeAt(position + 2) === 34 && body.charCodeAt(position + 3) === 34) {\n rawValue += body.slice(chunkStart, position) + '\"\"\"';\n position += 4;\n chunkStart = position;\n } else {\n ++position;\n }\n }\n\n throw (0, _syntaxError.syntaxError)(source, position, 'Unterminated string.');\n}\n/**\n * Converts four hexadecimal chars to the integer that the\n * string represents. For example, uniCharCode('0','0','0','f')\n * will return 15, and uniCharCode('0','0','f','f') returns 255.\n *\n * Returns a negative number on error, if a char was invalid.\n *\n * This is implemented by noting that char2hex() returns -1 on error,\n * which means the result of ORing the char2hex() will also be negative.\n */\n\n\nfunction uniCharCode(a, b, c, d) {\n return char2hex(a) << 12 | char2hex(b) << 8 | char2hex(c) << 4 | char2hex(d);\n}\n/**\n * Converts a hex character to its integer value.\n * '0' becomes 0, '9' becomes 9\n * 'A' becomes 10, 'F' becomes 15\n * 'a' becomes 10, 'f' becomes 15\n *\n * Returns -1 on error.\n */\n\n\nfunction char2hex(a) {\n return a >= 48 && a <= 57 ? a - 48 // 0-9\n : a >= 65 && a <= 70 ? a - 55 // A-F\n : a >= 97 && a <= 102 ? a - 87 // a-f\n : -1;\n}\n/**\n * Reads an alphanumeric + underscore name from the source.\n *\n * [_A-Za-z][_0-9A-Za-z]*\n */\n\n\nfunction readName(source, start, line, col, prev) {\n var body = source.body;\n var bodyLength = body.length;\n var position = start + 1;\n var code = 0;\n\n while (position !== bodyLength && !isNaN(code = body.charCodeAt(position)) && (code === 95 || // _\n code >= 48 && code <= 57 || // 0-9\n code >= 65 && code <= 90 || // A-Z\n code >= 97 && code <= 122) // a-z\n ) {\n ++position;\n }\n\n return new _ast.Token(_tokenKind.TokenKind.NAME, start, position, line, col, prev, body.slice(start, position));\n} // _ A-Z a-z\n\n\nfunction isNameStart(code) {\n return code === 95 || code >= 65 && code <= 90 || code >= 97 && code <= 122;\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/lexer.js?"); /***/ }), /***/ "./node_modules/graphql/language/location.js": /*!***************************************************!*\ !*** ./node_modules/graphql/language/location.js ***! \***************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export getLocation [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.getLocation = getLocation;\n/**\n * Represents a location in a Source.\n */\n\n/**\n * Takes a Source and a UTF-8 character offset, and returns the corresponding\n * line and column as a SourceLocation.\n */\n\nfunction getLocation(source, position) {\n var lineRegexp = /\\r\\n|[\\n\\r]/g;\n var line = 1;\n var column = position + 1;\n var match;\n\n while ((match = lineRegexp.exec(source.body)) && match.index < position) {\n line += 1;\n column = position + 1 - (match.index + match[0].length);\n }\n\n return {\n line: line,\n column: column\n };\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/location.js?"); /***/ }), /***/ "./node_modules/graphql/language/parser.js": /*!*************************************************!*\ !*** ./node_modules/graphql/language/parser.js ***! \*************************************************/ /*! flagged exports */ /*! export Parser [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export parse [provided] [no usage info] [missing usage info prevents renaming] */ /*! export parseType [provided] [no usage info] [missing usage info prevents renaming] */ /*! export parseValue [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.parse = parse;\nexports.parseValue = parseValue;\nexports.parseType = parseType;\nexports.Parser = void 0;\n\nvar _syntaxError = __webpack_require__(/*! ../error/syntaxError.js */ \"./node_modules/graphql/error/syntaxError.js\");\n\nvar _kinds = __webpack_require__(/*! ./kinds.js */ \"./node_modules/graphql/language/kinds.js\");\n\nvar _ast = __webpack_require__(/*! ./ast.js */ \"./node_modules/graphql/language/ast.js\");\n\nvar _tokenKind = __webpack_require__(/*! ./tokenKind.js */ \"./node_modules/graphql/language/tokenKind.js\");\n\nvar _source = __webpack_require__(/*! ./source.js */ \"./node_modules/graphql/language/source.js\");\n\nvar _directiveLocation = __webpack_require__(/*! ./directiveLocation.js */ \"./node_modules/graphql/language/directiveLocation.js\");\n\nvar _lexer = __webpack_require__(/*! ./lexer.js */ \"./node_modules/graphql/language/lexer.js\");\n/**\n * Given a GraphQL source, parses it into a Document.\n * Throws GraphQLError if a syntax error is encountered.\n */\n\n\nfunction parse(source, options) {\n var parser = new Parser(source, options);\n return parser.parseDocument();\n}\n/**\n * Given a string containing a GraphQL value (ex. `[42]`), parse the AST for\n * that value.\n * Throws GraphQLError if a syntax error is encountered.\n *\n * This is useful within tools that operate upon GraphQL Values directly and\n * in isolation of complete GraphQL documents.\n *\n * Consider providing the results to the utility function: valueFromAST().\n */\n\n\nfunction parseValue(source, options) {\n var parser = new Parser(source, options);\n parser.expectToken(_tokenKind.TokenKind.SOF);\n var value = parser.parseValueLiteral(false);\n parser.expectToken(_tokenKind.TokenKind.EOF);\n return value;\n}\n/**\n * Given a string containing a GraphQL Type (ex. `[Int!]`), parse the AST for\n * that type.\n * Throws GraphQLError if a syntax error is encountered.\n *\n * This is useful within tools that operate upon GraphQL Types directly and\n * in isolation of complete GraphQL documents.\n *\n * Consider providing the results to the utility function: typeFromAST().\n */\n\n\nfunction parseType(source, options) {\n var parser = new Parser(source, options);\n parser.expectToken(_tokenKind.TokenKind.SOF);\n var type = parser.parseTypeReference();\n parser.expectToken(_tokenKind.TokenKind.EOF);\n return type;\n}\n/**\n * This class is exported only to assist people in implementing their own parsers\n * without duplicating too much code and should be used only as last resort for cases\n * such as experimental syntax or if certain features could not be contributed upstream.\n *\n * It is still part of the internal API and is versioned, so any changes to it are never\n * considered breaking changes. If you still need to support multiple versions of the\n * library, please use the `versionInfo` variable for version detection.\n *\n * @internal\n */\n\n\nvar Parser = /*#__PURE__*/function () {\n function Parser(source, options) {\n var sourceObj = (0, _source.isSource)(source) ? source : new _source.Source(source);\n this._lexer = new _lexer.Lexer(sourceObj);\n this._options = options;\n }\n /**\n * Converts a name lex token into a name parse node.\n */\n\n\n var _proto = Parser.prototype;\n\n _proto.parseName = function parseName() {\n var token = this.expectToken(_tokenKind.TokenKind.NAME);\n return {\n kind: _kinds.Kind.NAME,\n value: token.value,\n loc: this.loc(token)\n };\n } // Implements the parsing rules in the Document section.\n\n /**\n * Document : Definition+\n */\n ;\n\n _proto.parseDocument = function parseDocument() {\n var start = this._lexer.token;\n return {\n kind: _kinds.Kind.DOCUMENT,\n definitions: this.many(_tokenKind.TokenKind.SOF, this.parseDefinition, _tokenKind.TokenKind.EOF),\n loc: this.loc(start)\n };\n }\n /**\n * Definition :\n * - ExecutableDefinition\n * - TypeSystemDefinition\n * - TypeSystemExtension\n *\n * ExecutableDefinition :\n * - OperationDefinition\n * - FragmentDefinition\n */\n ;\n\n _proto.parseDefinition = function parseDefinition() {\n if (this.peek(_tokenKind.TokenKind.NAME)) {\n switch (this._lexer.token.value) {\n case 'query':\n case 'mutation':\n case 'subscription':\n return this.parseOperationDefinition();\n\n case 'fragment':\n return this.parseFragmentDefinition();\n\n case 'schema':\n case 'scalar':\n case 'type':\n case 'interface':\n case 'union':\n case 'enum':\n case 'input':\n case 'directive':\n return this.parseTypeSystemDefinition();\n\n case 'extend':\n return this.parseTypeSystemExtension();\n }\n } else if (this.peek(_tokenKind.TokenKind.BRACE_L)) {\n return this.parseOperationDefinition();\n } else if (this.peekDescription()) {\n return this.parseTypeSystemDefinition();\n }\n\n throw this.unexpected();\n } // Implements the parsing rules in the Operations section.\n\n /**\n * OperationDefinition :\n * - SelectionSet\n * - OperationType Name? VariableDefinitions? Directives? SelectionSet\n */\n ;\n\n _proto.parseOperationDefinition = function parseOperationDefinition() {\n var start = this._lexer.token;\n\n if (this.peek(_tokenKind.TokenKind.BRACE_L)) {\n return {\n kind: _kinds.Kind.OPERATION_DEFINITION,\n operation: 'query',\n name: undefined,\n variableDefinitions: [],\n directives: [],\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n\n var operation = this.parseOperationType();\n var name;\n\n if (this.peek(_tokenKind.TokenKind.NAME)) {\n name = this.parseName();\n }\n\n return {\n kind: _kinds.Kind.OPERATION_DEFINITION,\n operation: operation,\n name: name,\n variableDefinitions: this.parseVariableDefinitions(),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * OperationType : one of query mutation subscription\n */\n ;\n\n _proto.parseOperationType = function parseOperationType() {\n var operationToken = this.expectToken(_tokenKind.TokenKind.NAME);\n\n switch (operationToken.value) {\n case 'query':\n return 'query';\n\n case 'mutation':\n return 'mutation';\n\n case 'subscription':\n return 'subscription';\n }\n\n throw this.unexpected(operationToken);\n }\n /**\n * VariableDefinitions : ( VariableDefinition+ )\n */\n ;\n\n _proto.parseVariableDefinitions = function parseVariableDefinitions() {\n return this.optionalMany(_tokenKind.TokenKind.PAREN_L, this.parseVariableDefinition, _tokenKind.TokenKind.PAREN_R);\n }\n /**\n * VariableDefinition : Variable : Type DefaultValue? Directives[Const]?\n */\n ;\n\n _proto.parseVariableDefinition = function parseVariableDefinition() {\n var start = this._lexer.token;\n return {\n kind: _kinds.Kind.VARIABLE_DEFINITION,\n variable: this.parseVariable(),\n type: (this.expectToken(_tokenKind.TokenKind.COLON), this.parseTypeReference()),\n defaultValue: this.expectOptionalToken(_tokenKind.TokenKind.EQUALS) ? this.parseValueLiteral(true) : undefined,\n directives: this.parseDirectives(true),\n loc: this.loc(start)\n };\n }\n /**\n * Variable : $ Name\n */\n ;\n\n _proto.parseVariable = function parseVariable() {\n var start = this._lexer.token;\n this.expectToken(_tokenKind.TokenKind.DOLLAR);\n return {\n kind: _kinds.Kind.VARIABLE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n }\n /**\n * SelectionSet : { Selection+ }\n */\n ;\n\n _proto.parseSelectionSet = function parseSelectionSet() {\n var start = this._lexer.token;\n return {\n kind: _kinds.Kind.SELECTION_SET,\n selections: this.many(_tokenKind.TokenKind.BRACE_L, this.parseSelection, _tokenKind.TokenKind.BRACE_R),\n loc: this.loc(start)\n };\n }\n /**\n * Selection :\n * - Field\n * - FragmentSpread\n * - InlineFragment\n */\n ;\n\n _proto.parseSelection = function parseSelection() {\n return this.peek(_tokenKind.TokenKind.SPREAD) ? this.parseFragment() : this.parseField();\n }\n /**\n * Field : Alias? Name Arguments? Directives? SelectionSet?\n *\n * Alias : Name :\n */\n ;\n\n _proto.parseField = function parseField() {\n var start = this._lexer.token;\n var nameOrAlias = this.parseName();\n var alias;\n var name;\n\n if (this.expectOptionalToken(_tokenKind.TokenKind.COLON)) {\n alias = nameOrAlias;\n name = this.parseName();\n } else {\n name = nameOrAlias;\n }\n\n return {\n kind: _kinds.Kind.FIELD,\n alias: alias,\n name: name,\n arguments: this.parseArguments(false),\n directives: this.parseDirectives(false),\n selectionSet: this.peek(_tokenKind.TokenKind.BRACE_L) ? this.parseSelectionSet() : undefined,\n loc: this.loc(start)\n };\n }\n /**\n * Arguments[Const] : ( Argument[?Const]+ )\n */\n ;\n\n _proto.parseArguments = function parseArguments(isConst) {\n var item = isConst ? this.parseConstArgument : this.parseArgument;\n return this.optionalMany(_tokenKind.TokenKind.PAREN_L, item, _tokenKind.TokenKind.PAREN_R);\n }\n /**\n * Argument[Const] : Name : Value[?Const]\n */\n ;\n\n _proto.parseArgument = function parseArgument() {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken(_tokenKind.TokenKind.COLON);\n return {\n kind: _kinds.Kind.ARGUMENT,\n name: name,\n value: this.parseValueLiteral(false),\n loc: this.loc(start)\n };\n };\n\n _proto.parseConstArgument = function parseConstArgument() {\n var start = this._lexer.token;\n return {\n kind: _kinds.Kind.ARGUMENT,\n name: this.parseName(),\n value: (this.expectToken(_tokenKind.TokenKind.COLON), this.parseValueLiteral(true)),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Fragments section.\n\n /**\n * Corresponds to both FragmentSpread and InlineFragment in the spec.\n *\n * FragmentSpread : ... FragmentName Directives?\n *\n * InlineFragment : ... TypeCondition? Directives? SelectionSet\n */\n ;\n\n _proto.parseFragment = function parseFragment() {\n var start = this._lexer.token;\n this.expectToken(_tokenKind.TokenKind.SPREAD);\n var hasTypeCondition = this.expectOptionalKeyword('on');\n\n if (!hasTypeCondition && this.peek(_tokenKind.TokenKind.NAME)) {\n return {\n kind: _kinds.Kind.FRAGMENT_SPREAD,\n name: this.parseFragmentName(),\n directives: this.parseDirectives(false),\n loc: this.loc(start)\n };\n }\n\n return {\n kind: _kinds.Kind.INLINE_FRAGMENT,\n typeCondition: hasTypeCondition ? this.parseNamedType() : undefined,\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * FragmentDefinition :\n * - fragment FragmentName on TypeCondition Directives? SelectionSet\n *\n * TypeCondition : NamedType\n */\n ;\n\n _proto.parseFragmentDefinition = function parseFragmentDefinition() {\n var _this$_options;\n\n var start = this._lexer.token;\n this.expectKeyword('fragment'); // Experimental support for defining variables within fragments changes\n // the grammar of FragmentDefinition:\n // - fragment FragmentName VariableDefinitions? on TypeCondition Directives? SelectionSet\n\n if (((_this$_options = this._options) === null || _this$_options === void 0 ? void 0 : _this$_options.experimentalFragmentVariables) === true) {\n return {\n kind: _kinds.Kind.FRAGMENT_DEFINITION,\n name: this.parseFragmentName(),\n variableDefinitions: this.parseVariableDefinitions(),\n typeCondition: (this.expectKeyword('on'), this.parseNamedType()),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n\n return {\n kind: _kinds.Kind.FRAGMENT_DEFINITION,\n name: this.parseFragmentName(),\n typeCondition: (this.expectKeyword('on'), this.parseNamedType()),\n directives: this.parseDirectives(false),\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n }\n /**\n * FragmentName : Name but not `on`\n */\n ;\n\n _proto.parseFragmentName = function parseFragmentName() {\n if (this._lexer.token.value === 'on') {\n throw this.unexpected();\n }\n\n return this.parseName();\n } // Implements the parsing rules in the Values section.\n\n /**\n * Value[Const] :\n * - [~Const] Variable\n * - IntValue\n * - FloatValue\n * - StringValue\n * - BooleanValue\n * - NullValue\n * - EnumValue\n * - ListValue[?Const]\n * - ObjectValue[?Const]\n *\n * BooleanValue : one of `true` `false`\n *\n * NullValue : `null`\n *\n * EnumValue : Name but not `true`, `false` or `null`\n */\n ;\n\n _proto.parseValueLiteral = function parseValueLiteral(isConst) {\n var token = this._lexer.token;\n\n switch (token.kind) {\n case _tokenKind.TokenKind.BRACKET_L:\n return this.parseList(isConst);\n\n case _tokenKind.TokenKind.BRACE_L:\n return this.parseObject(isConst);\n\n case _tokenKind.TokenKind.INT:\n this._lexer.advance();\n\n return {\n kind: _kinds.Kind.INT,\n value: token.value,\n loc: this.loc(token)\n };\n\n case _tokenKind.TokenKind.FLOAT:\n this._lexer.advance();\n\n return {\n kind: _kinds.Kind.FLOAT,\n value: token.value,\n loc: this.loc(token)\n };\n\n case _tokenKind.TokenKind.STRING:\n case _tokenKind.TokenKind.BLOCK_STRING:\n return this.parseStringLiteral();\n\n case _tokenKind.TokenKind.NAME:\n this._lexer.advance();\n\n switch (token.value) {\n case 'true':\n return {\n kind: _kinds.Kind.BOOLEAN,\n value: true,\n loc: this.loc(token)\n };\n\n case 'false':\n return {\n kind: _kinds.Kind.BOOLEAN,\n value: false,\n loc: this.loc(token)\n };\n\n case 'null':\n return {\n kind: _kinds.Kind.NULL,\n loc: this.loc(token)\n };\n\n default:\n return {\n kind: _kinds.Kind.ENUM,\n value: token.value,\n loc: this.loc(token)\n };\n }\n\n case _tokenKind.TokenKind.DOLLAR:\n if (!isConst) {\n return this.parseVariable();\n }\n\n break;\n }\n\n throw this.unexpected();\n };\n\n _proto.parseStringLiteral = function parseStringLiteral() {\n var token = this._lexer.token;\n\n this._lexer.advance();\n\n return {\n kind: _kinds.Kind.STRING,\n value: token.value,\n block: token.kind === _tokenKind.TokenKind.BLOCK_STRING,\n loc: this.loc(token)\n };\n }\n /**\n * ListValue[Const] :\n * - [ ]\n * - [ Value[?Const]+ ]\n */\n ;\n\n _proto.parseList = function parseList(isConst) {\n var _this = this;\n\n var start = this._lexer.token;\n\n var item = function item() {\n return _this.parseValueLiteral(isConst);\n };\n\n return {\n kind: _kinds.Kind.LIST,\n values: this.any(_tokenKind.TokenKind.BRACKET_L, item, _tokenKind.TokenKind.BRACKET_R),\n loc: this.loc(start)\n };\n }\n /**\n * ObjectValue[Const] :\n * - { }\n * - { ObjectField[?Const]+ }\n */\n ;\n\n _proto.parseObject = function parseObject(isConst) {\n var _this2 = this;\n\n var start = this._lexer.token;\n\n var item = function item() {\n return _this2.parseObjectField(isConst);\n };\n\n return {\n kind: _kinds.Kind.OBJECT,\n fields: this.any(_tokenKind.TokenKind.BRACE_L, item, _tokenKind.TokenKind.BRACE_R),\n loc: this.loc(start)\n };\n }\n /**\n * ObjectField[Const] : Name : Value[?Const]\n */\n ;\n\n _proto.parseObjectField = function parseObjectField(isConst) {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken(_tokenKind.TokenKind.COLON);\n return {\n kind: _kinds.Kind.OBJECT_FIELD,\n name: name,\n value: this.parseValueLiteral(isConst),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Directives section.\n\n /**\n * Directives[Const] : Directive[?Const]+\n */\n ;\n\n _proto.parseDirectives = function parseDirectives(isConst) {\n var directives = [];\n\n while (this.peek(_tokenKind.TokenKind.AT)) {\n directives.push(this.parseDirective(isConst));\n }\n\n return directives;\n }\n /**\n * Directive[Const] : @ Name Arguments[?Const]?\n */\n ;\n\n _proto.parseDirective = function parseDirective(isConst) {\n var start = this._lexer.token;\n this.expectToken(_tokenKind.TokenKind.AT);\n return {\n kind: _kinds.Kind.DIRECTIVE,\n name: this.parseName(),\n arguments: this.parseArguments(isConst),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Types section.\n\n /**\n * Type :\n * - NamedType\n * - ListType\n * - NonNullType\n */\n ;\n\n _proto.parseTypeReference = function parseTypeReference() {\n var start = this._lexer.token;\n var type;\n\n if (this.expectOptionalToken(_tokenKind.TokenKind.BRACKET_L)) {\n type = this.parseTypeReference();\n this.expectToken(_tokenKind.TokenKind.BRACKET_R);\n type = {\n kind: _kinds.Kind.LIST_TYPE,\n type: type,\n loc: this.loc(start)\n };\n } else {\n type = this.parseNamedType();\n }\n\n if (this.expectOptionalToken(_tokenKind.TokenKind.BANG)) {\n return {\n kind: _kinds.Kind.NON_NULL_TYPE,\n type: type,\n loc: this.loc(start)\n };\n }\n\n return type;\n }\n /**\n * NamedType : Name\n */\n ;\n\n _proto.parseNamedType = function parseNamedType() {\n var start = this._lexer.token;\n return {\n kind: _kinds.Kind.NAMED_TYPE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Type Definition section.\n\n /**\n * TypeSystemDefinition :\n * - SchemaDefinition\n * - TypeDefinition\n * - DirectiveDefinition\n *\n * TypeDefinition :\n * - ScalarTypeDefinition\n * - ObjectTypeDefinition\n * - InterfaceTypeDefinition\n * - UnionTypeDefinition\n * - EnumTypeDefinition\n * - InputObjectTypeDefinition\n */\n ;\n\n _proto.parseTypeSystemDefinition = function parseTypeSystemDefinition() {\n // Many definitions begin with a description and require a lookahead.\n var keywordToken = this.peekDescription() ? this._lexer.lookahead() : this._lexer.token;\n\n if (keywordToken.kind === _tokenKind.TokenKind.NAME) {\n switch (keywordToken.value) {\n case 'schema':\n return this.parseSchemaDefinition();\n\n case 'scalar':\n return this.parseScalarTypeDefinition();\n\n case 'type':\n return this.parseObjectTypeDefinition();\n\n case 'interface':\n return this.parseInterfaceTypeDefinition();\n\n case 'union':\n return this.parseUnionTypeDefinition();\n\n case 'enum':\n return this.parseEnumTypeDefinition();\n\n case 'input':\n return this.parseInputObjectTypeDefinition();\n\n case 'directive':\n return this.parseDirectiveDefinition();\n }\n }\n\n throw this.unexpected(keywordToken);\n };\n\n _proto.peekDescription = function peekDescription() {\n return this.peek(_tokenKind.TokenKind.STRING) || this.peek(_tokenKind.TokenKind.BLOCK_STRING);\n }\n /**\n * Description : StringValue\n */\n ;\n\n _proto.parseDescription = function parseDescription() {\n if (this.peekDescription()) {\n return this.parseStringLiteral();\n }\n }\n /**\n * SchemaDefinition : Description? schema Directives[Const]? { OperationTypeDefinition+ }\n */\n ;\n\n _proto.parseSchemaDefinition = function parseSchemaDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('schema');\n var directives = this.parseDirectives(true);\n var operationTypes = this.many(_tokenKind.TokenKind.BRACE_L, this.parseOperationTypeDefinition, _tokenKind.TokenKind.BRACE_R);\n return {\n kind: _kinds.Kind.SCHEMA_DEFINITION,\n description: description,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n }\n /**\n * OperationTypeDefinition : OperationType : NamedType\n */\n ;\n\n _proto.parseOperationTypeDefinition = function parseOperationTypeDefinition() {\n var start = this._lexer.token;\n var operation = this.parseOperationType();\n this.expectToken(_tokenKind.TokenKind.COLON);\n var type = this.parseNamedType();\n return {\n kind: _kinds.Kind.OPERATION_TYPE_DEFINITION,\n operation: operation,\n type: type,\n loc: this.loc(start)\n };\n }\n /**\n * ScalarTypeDefinition : Description? scalar Name Directives[Const]?\n */\n ;\n\n _proto.parseScalarTypeDefinition = function parseScalarTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('scalar');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n return {\n kind: _kinds.Kind.SCALAR_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ObjectTypeDefinition :\n * Description?\n * type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition?\n */\n ;\n\n _proto.parseObjectTypeDefinition = function parseObjectTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('type');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n return {\n kind: _kinds.Kind.OBJECT_TYPE_DEFINITION,\n description: description,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * ImplementsInterfaces :\n * - implements `&`? NamedType\n * - ImplementsInterfaces & NamedType\n */\n ;\n\n _proto.parseImplementsInterfaces = function parseImplementsInterfaces() {\n var _this$_options2;\n\n if (!this.expectOptionalKeyword('implements')) {\n return [];\n }\n\n if (((_this$_options2 = this._options) === null || _this$_options2 === void 0 ? void 0 : _this$_options2.allowLegacySDLImplementsInterfaces) === true) {\n var types = []; // Optional leading ampersand\n\n this.expectOptionalToken(_tokenKind.TokenKind.AMP);\n\n do {\n types.push(this.parseNamedType());\n } while (this.expectOptionalToken(_tokenKind.TokenKind.AMP) || this.peek(_tokenKind.TokenKind.NAME));\n\n return types;\n }\n\n return this.delimitedMany(_tokenKind.TokenKind.AMP, this.parseNamedType);\n }\n /**\n * FieldsDefinition : { FieldDefinition+ }\n */\n ;\n\n _proto.parseFieldsDefinition = function parseFieldsDefinition() {\n var _this$_options3; // Legacy support for the SDL?\n\n\n if (((_this$_options3 = this._options) === null || _this$_options3 === void 0 ? void 0 : _this$_options3.allowLegacySDLEmptyFields) === true && this.peek(_tokenKind.TokenKind.BRACE_L) && this._lexer.lookahead().kind === _tokenKind.TokenKind.BRACE_R) {\n this._lexer.advance();\n\n this._lexer.advance();\n\n return [];\n }\n\n return this.optionalMany(_tokenKind.TokenKind.BRACE_L, this.parseFieldDefinition, _tokenKind.TokenKind.BRACE_R);\n }\n /**\n * FieldDefinition :\n * - Description? Name ArgumentsDefinition? : Type Directives[Const]?\n */\n ;\n\n _proto.parseFieldDefinition = function parseFieldDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n var args = this.parseArgumentDefs();\n this.expectToken(_tokenKind.TokenKind.COLON);\n var type = this.parseTypeReference();\n var directives = this.parseDirectives(true);\n return {\n kind: _kinds.Kind.FIELD_DEFINITION,\n description: description,\n name: name,\n arguments: args,\n type: type,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ArgumentsDefinition : ( InputValueDefinition+ )\n */\n ;\n\n _proto.parseArgumentDefs = function parseArgumentDefs() {\n return this.optionalMany(_tokenKind.TokenKind.PAREN_L, this.parseInputValueDef, _tokenKind.TokenKind.PAREN_R);\n }\n /**\n * InputValueDefinition :\n * - Description? Name : Type DefaultValue? Directives[Const]?\n */\n ;\n\n _proto.parseInputValueDef = function parseInputValueDef() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n this.expectToken(_tokenKind.TokenKind.COLON);\n var type = this.parseTypeReference();\n var defaultValue;\n\n if (this.expectOptionalToken(_tokenKind.TokenKind.EQUALS)) {\n defaultValue = this.parseValueLiteral(true);\n }\n\n var directives = this.parseDirectives(true);\n return {\n kind: _kinds.Kind.INPUT_VALUE_DEFINITION,\n description: description,\n name: name,\n type: type,\n defaultValue: defaultValue,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * InterfaceTypeDefinition :\n * - Description? interface Name Directives[Const]? FieldsDefinition?\n */\n ;\n\n _proto.parseInterfaceTypeDefinition = function parseInterfaceTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('interface');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n return {\n kind: _kinds.Kind.INTERFACE_TYPE_DEFINITION,\n description: description,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * UnionTypeDefinition :\n * - Description? union Name Directives[Const]? UnionMemberTypes?\n */\n ;\n\n _proto.parseUnionTypeDefinition = function parseUnionTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('union');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var types = this.parseUnionMemberTypes();\n return {\n kind: _kinds.Kind.UNION_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n }\n /**\n * UnionMemberTypes :\n * - = `|`? NamedType\n * - UnionMemberTypes | NamedType\n */\n ;\n\n _proto.parseUnionMemberTypes = function parseUnionMemberTypes() {\n return this.expectOptionalToken(_tokenKind.TokenKind.EQUALS) ? this.delimitedMany(_tokenKind.TokenKind.PIPE, this.parseNamedType) : [];\n }\n /**\n * EnumTypeDefinition :\n * - Description? enum Name Directives[Const]? EnumValuesDefinition?\n */\n ;\n\n _proto.parseEnumTypeDefinition = function parseEnumTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('enum');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var values = this.parseEnumValuesDefinition();\n return {\n kind: _kinds.Kind.ENUM_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n }\n /**\n * EnumValuesDefinition : { EnumValueDefinition+ }\n */\n ;\n\n _proto.parseEnumValuesDefinition = function parseEnumValuesDefinition() {\n return this.optionalMany(_tokenKind.TokenKind.BRACE_L, this.parseEnumValueDefinition, _tokenKind.TokenKind.BRACE_R);\n }\n /**\n * EnumValueDefinition : Description? EnumValue Directives[Const]?\n *\n * EnumValue : Name\n */\n ;\n\n _proto.parseEnumValueDefinition = function parseEnumValueDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n return {\n kind: _kinds.Kind.ENUM_VALUE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * InputObjectTypeDefinition :\n * - Description? input Name Directives[Const]? InputFieldsDefinition?\n */\n ;\n\n _proto.parseInputObjectTypeDefinition = function parseInputObjectTypeDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('input');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var fields = this.parseInputFieldsDefinition();\n return {\n kind: _kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * InputFieldsDefinition : { InputValueDefinition+ }\n */\n ;\n\n _proto.parseInputFieldsDefinition = function parseInputFieldsDefinition() {\n return this.optionalMany(_tokenKind.TokenKind.BRACE_L, this.parseInputValueDef, _tokenKind.TokenKind.BRACE_R);\n }\n /**\n * TypeSystemExtension :\n * - SchemaExtension\n * - TypeExtension\n *\n * TypeExtension :\n * - ScalarTypeExtension\n * - ObjectTypeExtension\n * - InterfaceTypeExtension\n * - UnionTypeExtension\n * - EnumTypeExtension\n * - InputObjectTypeDefinition\n */\n ;\n\n _proto.parseTypeSystemExtension = function parseTypeSystemExtension() {\n var keywordToken = this._lexer.lookahead();\n\n if (keywordToken.kind === _tokenKind.TokenKind.NAME) {\n switch (keywordToken.value) {\n case 'schema':\n return this.parseSchemaExtension();\n\n case 'scalar':\n return this.parseScalarTypeExtension();\n\n case 'type':\n return this.parseObjectTypeExtension();\n\n case 'interface':\n return this.parseInterfaceTypeExtension();\n\n case 'union':\n return this.parseUnionTypeExtension();\n\n case 'enum':\n return this.parseEnumTypeExtension();\n\n case 'input':\n return this.parseInputObjectTypeExtension();\n }\n }\n\n throw this.unexpected(keywordToken);\n }\n /**\n * SchemaExtension :\n * - extend schema Directives[Const]? { OperationTypeDefinition+ }\n * - extend schema Directives[Const]\n */\n ;\n\n _proto.parseSchemaExtension = function parseSchemaExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('schema');\n var directives = this.parseDirectives(true);\n var operationTypes = this.optionalMany(_tokenKind.TokenKind.BRACE_L, this.parseOperationTypeDefinition, _tokenKind.TokenKind.BRACE_R);\n\n if (directives.length === 0 && operationTypes.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.SCHEMA_EXTENSION,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n }\n /**\n * ScalarTypeExtension :\n * - extend scalar Name Directives[Const]\n */\n ;\n\n _proto.parseScalarTypeExtension = function parseScalarTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('scalar');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n\n if (directives.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.SCALAR_TYPE_EXTENSION,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n }\n /**\n * ObjectTypeExtension :\n * - extend type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition\n * - extend type Name ImplementsInterfaces? Directives[Const]\n * - extend type Name ImplementsInterfaces\n */\n ;\n\n _proto.parseObjectTypeExtension = function parseObjectTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('type');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n\n if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.OBJECT_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * InterfaceTypeExtension :\n * - extend interface Name ImplementsInterfaces? Directives[Const]? FieldsDefinition\n * - extend interface Name ImplementsInterfaces? Directives[Const]\n * - extend interface Name ImplementsInterfaces\n */\n ;\n\n _proto.parseInterfaceTypeExtension = function parseInterfaceTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('interface');\n var name = this.parseName();\n var interfaces = this.parseImplementsInterfaces();\n var directives = this.parseDirectives(true);\n var fields = this.parseFieldsDefinition();\n\n if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.INTERFACE_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * UnionTypeExtension :\n * - extend union Name Directives[Const]? UnionMemberTypes\n * - extend union Name Directives[Const]\n */\n ;\n\n _proto.parseUnionTypeExtension = function parseUnionTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('union');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var types = this.parseUnionMemberTypes();\n\n if (directives.length === 0 && types.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.UNION_TYPE_EXTENSION,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n }\n /**\n * EnumTypeExtension :\n * - extend enum Name Directives[Const]? EnumValuesDefinition\n * - extend enum Name Directives[Const]\n */\n ;\n\n _proto.parseEnumTypeExtension = function parseEnumTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('enum');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var values = this.parseEnumValuesDefinition();\n\n if (directives.length === 0 && values.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.ENUM_TYPE_EXTENSION,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n }\n /**\n * InputObjectTypeExtension :\n * - extend input Name Directives[Const]? InputFieldsDefinition\n * - extend input Name Directives[Const]\n */\n ;\n\n _proto.parseInputObjectTypeExtension = function parseInputObjectTypeExtension() {\n var start = this._lexer.token;\n this.expectKeyword('extend');\n this.expectKeyword('input');\n var name = this.parseName();\n var directives = this.parseDirectives(true);\n var fields = this.parseInputFieldsDefinition();\n\n if (directives.length === 0 && fields.length === 0) {\n throw this.unexpected();\n }\n\n return {\n kind: _kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n }\n /**\n * DirectiveDefinition :\n * - Description? directive @ Name ArgumentsDefinition? `repeatable`? on DirectiveLocations\n */\n ;\n\n _proto.parseDirectiveDefinition = function parseDirectiveDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword('directive');\n this.expectToken(_tokenKind.TokenKind.AT);\n var name = this.parseName();\n var args = this.parseArgumentDefs();\n var repeatable = this.expectOptionalKeyword('repeatable');\n this.expectKeyword('on');\n var locations = this.parseDirectiveLocations();\n return {\n kind: _kinds.Kind.DIRECTIVE_DEFINITION,\n description: description,\n name: name,\n arguments: args,\n repeatable: repeatable,\n locations: locations,\n loc: this.loc(start)\n };\n }\n /**\n * DirectiveLocations :\n * - `|`? DirectiveLocation\n * - DirectiveLocations | DirectiveLocation\n */\n ;\n\n _proto.parseDirectiveLocations = function parseDirectiveLocations() {\n return this.delimitedMany(_tokenKind.TokenKind.PIPE, this.parseDirectiveLocation);\n }\n /*\n * DirectiveLocation :\n * - ExecutableDirectiveLocation\n * - TypeSystemDirectiveLocation\n *\n * ExecutableDirectiveLocation : one of\n * `QUERY`\n * `MUTATION`\n * `SUBSCRIPTION`\n * `FIELD`\n * `FRAGMENT_DEFINITION`\n * `FRAGMENT_SPREAD`\n * `INLINE_FRAGMENT`\n *\n * TypeSystemDirectiveLocation : one of\n * `SCHEMA`\n * `SCALAR`\n * `OBJECT`\n * `FIELD_DEFINITION`\n * `ARGUMENT_DEFINITION`\n * `INTERFACE`\n * `UNION`\n * `ENUM`\n * `ENUM_VALUE`\n * `INPUT_OBJECT`\n * `INPUT_FIELD_DEFINITION`\n */\n ;\n\n _proto.parseDirectiveLocation = function parseDirectiveLocation() {\n var start = this._lexer.token;\n var name = this.parseName();\n\n if (_directiveLocation.DirectiveLocation[name.value] !== undefined) {\n return name;\n }\n\n throw this.unexpected(start);\n } // Core parsing utility functions\n\n /**\n * Returns a location object, used to identify the place in the source that created a given parsed object.\n */\n ;\n\n _proto.loc = function loc(startToken) {\n var _this$_options4;\n\n if (((_this$_options4 = this._options) === null || _this$_options4 === void 0 ? void 0 : _this$_options4.noLocation) !== true) {\n return new _ast.Location(startToken, this._lexer.lastToken, this._lexer.source);\n }\n }\n /**\n * Determines if the next token is of a given kind\n */\n ;\n\n _proto.peek = function peek(kind) {\n return this._lexer.token.kind === kind;\n }\n /**\n * If the next token is of the given kind, return that token after advancing the lexer.\n * Otherwise, do not change the parser state and throw an error.\n */\n ;\n\n _proto.expectToken = function expectToken(kind) {\n var token = this._lexer.token;\n\n if (token.kind === kind) {\n this._lexer.advance();\n\n return token;\n }\n\n throw (0, _syntaxError.syntaxError)(this._lexer.source, token.start, \"Expected \".concat(getTokenKindDesc(kind), \", found \").concat(getTokenDesc(token), \".\"));\n }\n /**\n * If the next token is of the given kind, return that token after advancing the lexer.\n * Otherwise, do not change the parser state and return undefined.\n */\n ;\n\n _proto.expectOptionalToken = function expectOptionalToken(kind) {\n var token = this._lexer.token;\n\n if (token.kind === kind) {\n this._lexer.advance();\n\n return token;\n }\n\n return undefined;\n }\n /**\n * If the next token is a given keyword, advance the lexer.\n * Otherwise, do not change the parser state and throw an error.\n */\n ;\n\n _proto.expectKeyword = function expectKeyword(value) {\n var token = this._lexer.token;\n\n if (token.kind === _tokenKind.TokenKind.NAME && token.value === value) {\n this._lexer.advance();\n } else {\n throw (0, _syntaxError.syntaxError)(this._lexer.source, token.start, \"Expected \\\"\".concat(value, \"\\\", found \").concat(getTokenDesc(token), \".\"));\n }\n }\n /**\n * If the next token is a given keyword, return \"true\" after advancing the lexer.\n * Otherwise, do not change the parser state and return \"false\".\n */\n ;\n\n _proto.expectOptionalKeyword = function expectOptionalKeyword(value) {\n var token = this._lexer.token;\n\n if (token.kind === _tokenKind.TokenKind.NAME && token.value === value) {\n this._lexer.advance();\n\n return true;\n }\n\n return false;\n }\n /**\n * Helper function for creating an error when an unexpected lexed token is encountered.\n */\n ;\n\n _proto.unexpected = function unexpected(atToken) {\n var token = atToken !== null && atToken !== void 0 ? atToken : this._lexer.token;\n return (0, _syntaxError.syntaxError)(this._lexer.source, token.start, \"Unexpected \".concat(getTokenDesc(token), \".\"));\n }\n /**\n * Returns a possibly empty list of parse nodes, determined by the parseFn.\n * This list begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.any = function any(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n\n while (!this.expectOptionalToken(closeKind)) {\n nodes.push(parseFn.call(this));\n }\n\n return nodes;\n }\n /**\n * Returns a list of parse nodes, determined by the parseFn.\n * It can be empty only if open token is missing otherwise it will always return non-empty list\n * that begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.optionalMany = function optionalMany(openKind, parseFn, closeKind) {\n if (this.expectOptionalToken(openKind)) {\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (!this.expectOptionalToken(closeKind));\n\n return nodes;\n }\n\n return [];\n }\n /**\n * Returns a non-empty list of parse nodes, determined by the parseFn.\n * This list begins with a lex token of openKind and ends with a lex token of closeKind.\n * Advances the parser to the next lex token after the closing token.\n */\n ;\n\n _proto.many = function many(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (!this.expectOptionalToken(closeKind));\n\n return nodes;\n }\n /**\n * Returns a non-empty list of parse nodes, determined by the parseFn.\n * This list may begin with a lex token of delimiterKind followed by items separated by lex tokens of tokenKind.\n * Advances the parser to the next lex token after last item in the list.\n */\n ;\n\n _proto.delimitedMany = function delimitedMany(delimiterKind, parseFn) {\n this.expectOptionalToken(delimiterKind);\n var nodes = [];\n\n do {\n nodes.push(parseFn.call(this));\n } while (this.expectOptionalToken(delimiterKind));\n\n return nodes;\n };\n\n return Parser;\n}();\n/**\n * A helper function to describe a token as a string for debugging.\n */\n\n\nexports.Parser = Parser;\n\nfunction getTokenDesc(token) {\n var value = token.value;\n return getTokenKindDesc(token.kind) + (value != null ? \" \\\"\".concat(value, \"\\\"\") : '');\n}\n/**\n * A helper function to describe a token kind as a string for debugging.\n */\n\n\nfunction getTokenKindDesc(kind) {\n return (0, _lexer.isPunctuatorTokenKind)(kind) ? \"\\\"\".concat(kind, \"\\\"\") : kind;\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/parser.js?"); /***/ }), /***/ "./node_modules/graphql/language/printLocation.js": /*!********************************************************!*\ !*** ./node_modules/graphql/language/printLocation.js ***! \********************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export printLocation [provided] [no usage info] [missing usage info prevents renaming] */ /*! export printSourceLocation [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.printLocation = printLocation;\nexports.printSourceLocation = printSourceLocation;\n\nvar _location = __webpack_require__(/*! ./location.js */ \"./node_modules/graphql/language/location.js\");\n/**\n * Render a helpful description of the location in the GraphQL Source document.\n */\n\n\nfunction printLocation(location) {\n return printSourceLocation(location.source, (0, _location.getLocation)(location.source, location.start));\n}\n/**\n * Render a helpful description of the location in the GraphQL Source document.\n */\n\n\nfunction printSourceLocation(source, sourceLocation) {\n var firstLineColumnOffset = source.locationOffset.column - 1;\n var body = whitespace(firstLineColumnOffset) + source.body;\n var lineIndex = sourceLocation.line - 1;\n var lineOffset = source.locationOffset.line - 1;\n var lineNum = sourceLocation.line + lineOffset;\n var columnOffset = sourceLocation.line === 1 ? firstLineColumnOffset : 0;\n var columnNum = sourceLocation.column + columnOffset;\n var locationStr = \"\".concat(source.name, \":\").concat(lineNum, \":\").concat(columnNum, \"\\n\");\n var lines = body.split(/\\r\\n|[\\n\\r]/g);\n var locationLine = lines[lineIndex]; // Special case for minified documents\n\n if (locationLine.length > 120) {\n var subLineIndex = Math.floor(columnNum / 80);\n var subLineColumnNum = columnNum % 80;\n var subLines = [];\n\n for (var i = 0; i < locationLine.length; i += 80) {\n subLines.push(locationLine.slice(i, i + 80));\n }\n\n return locationStr + printPrefixedLines([[\"\".concat(lineNum), subLines[0]]].concat(subLines.slice(1, subLineIndex + 1).map(function (subLine) {\n return ['', subLine];\n }), [[' ', whitespace(subLineColumnNum - 1) + '^'], ['', subLines[subLineIndex + 1]]]));\n }\n\n return locationStr + printPrefixedLines([// Lines specified like this: [\"prefix\", \"string\"],\n [\"\".concat(lineNum - 1), lines[lineIndex - 1]], [\"\".concat(lineNum), locationLine], ['', whitespace(columnNum - 1) + '^'], [\"\".concat(lineNum + 1), lines[lineIndex + 1]]]);\n}\n\nfunction printPrefixedLines(lines) {\n var existingLines = lines.filter(function (_ref) {\n var _ = _ref[0],\n line = _ref[1];\n return line !== undefined;\n });\n var padLen = Math.max.apply(Math, existingLines.map(function (_ref2) {\n var prefix = _ref2[0];\n return prefix.length;\n }));\n return existingLines.map(function (_ref3) {\n var prefix = _ref3[0],\n line = _ref3[1];\n return leftPad(padLen, prefix) + (line ? ' | ' + line : ' |');\n }).join('\\n');\n}\n\nfunction whitespace(len) {\n return Array(len + 1).join(' ');\n}\n\nfunction leftPad(len, str) {\n return whitespace(len - str.length) + str;\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/printLocation.js?"); /***/ }), /***/ "./node_modules/graphql/language/printer.js": /*!**************************************************!*\ !*** ./node_modules/graphql/language/printer.js ***! \**************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export print [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.print = print;\n\nvar _visitor = __webpack_require__(/*! ./visitor.js */ \"./node_modules/graphql/language/visitor.js\");\n\nvar _blockString = __webpack_require__(/*! ./blockString.js */ \"./node_modules/graphql/language/blockString.js\");\n/**\n * Converts an AST into a string, using one set of reasonable\n * formatting rules.\n */\n\n\nfunction print(ast) {\n return (0, _visitor.visit)(ast, {\n leave: printDocASTReducer\n });\n}\n\nvar MAX_LINE_LENGTH = 80; // TODO: provide better type coverage in future\n\nvar printDocASTReducer = {\n Name: function Name(node) {\n return node.value;\n },\n Variable: function Variable(node) {\n return '$' + node.name;\n },\n // Document\n Document: function Document(node) {\n return join(node.definitions, '\\n\\n') + '\\n';\n },\n OperationDefinition: function OperationDefinition(node) {\n var op = node.operation;\n var name = node.name;\n var varDefs = wrap('(', join(node.variableDefinitions, ', '), ')');\n var directives = join(node.directives, ' ');\n var selectionSet = node.selectionSet; // Anonymous queries with no directives or variable definitions can use\n // the query short form.\n\n return !name && !directives && !varDefs && op === 'query' ? selectionSet : join([op, join([name, varDefs]), directives, selectionSet], ' ');\n },\n VariableDefinition: function VariableDefinition(_ref) {\n var variable = _ref.variable,\n type = _ref.type,\n defaultValue = _ref.defaultValue,\n directives = _ref.directives;\n return variable + ': ' + type + wrap(' = ', defaultValue) + wrap(' ', join(directives, ' '));\n },\n SelectionSet: function SelectionSet(_ref2) {\n var selections = _ref2.selections;\n return block(selections);\n },\n Field: function Field(_ref3) {\n var alias = _ref3.alias,\n name = _ref3.name,\n args = _ref3.arguments,\n directives = _ref3.directives,\n selectionSet = _ref3.selectionSet;\n var prefix = wrap('', alias, ': ') + name;\n var argsLine = prefix + wrap('(', join(args, ', '), ')');\n\n if (argsLine.length > MAX_LINE_LENGTH) {\n argsLine = prefix + wrap('(\\n', indent(join(args, '\\n')), '\\n)');\n }\n\n return join([argsLine, join(directives, ' '), selectionSet], ' ');\n },\n Argument: function Argument(_ref4) {\n var name = _ref4.name,\n value = _ref4.value;\n return name + ': ' + value;\n },\n // Fragments\n FragmentSpread: function FragmentSpread(_ref5) {\n var name = _ref5.name,\n directives = _ref5.directives;\n return '...' + name + wrap(' ', join(directives, ' '));\n },\n InlineFragment: function InlineFragment(_ref6) {\n var typeCondition = _ref6.typeCondition,\n directives = _ref6.directives,\n selectionSet = _ref6.selectionSet;\n return join(['...', wrap('on ', typeCondition), join(directives, ' '), selectionSet], ' ');\n },\n FragmentDefinition: function FragmentDefinition(_ref7) {\n var name = _ref7.name,\n typeCondition = _ref7.typeCondition,\n variableDefinitions = _ref7.variableDefinitions,\n directives = _ref7.directives,\n selectionSet = _ref7.selectionSet;\n return (// Note: fragment variable definitions are experimental and may be changed\n // or removed in the future.\n \"fragment \".concat(name).concat(wrap('(', join(variableDefinitions, ', '), ')'), \" \") + \"on \".concat(typeCondition, \" \").concat(wrap('', join(directives, ' '), ' ')) + selectionSet\n );\n },\n // Value\n IntValue: function IntValue(_ref8) {\n var value = _ref8.value;\n return value;\n },\n FloatValue: function FloatValue(_ref9) {\n var value = _ref9.value;\n return value;\n },\n StringValue: function StringValue(_ref10, key) {\n var value = _ref10.value,\n isBlockString = _ref10.block;\n return isBlockString ? (0, _blockString.printBlockString)(value, key === 'description' ? '' : ' ') : JSON.stringify(value);\n },\n BooleanValue: function BooleanValue(_ref11) {\n var value = _ref11.value;\n return value ? 'true' : 'false';\n },\n NullValue: function NullValue() {\n return 'null';\n },\n EnumValue: function EnumValue(_ref12) {\n var value = _ref12.value;\n return value;\n },\n ListValue: function ListValue(_ref13) {\n var values = _ref13.values;\n return '[' + join(values, ', ') + ']';\n },\n ObjectValue: function ObjectValue(_ref14) {\n var fields = _ref14.fields;\n return '{' + join(fields, ', ') + '}';\n },\n ObjectField: function ObjectField(_ref15) {\n var name = _ref15.name,\n value = _ref15.value;\n return name + ': ' + value;\n },\n // Directive\n Directive: function Directive(_ref16) {\n var name = _ref16.name,\n args = _ref16.arguments;\n return '@' + name + wrap('(', join(args, ', '), ')');\n },\n // Type\n NamedType: function NamedType(_ref17) {\n var name = _ref17.name;\n return name;\n },\n ListType: function ListType(_ref18) {\n var type = _ref18.type;\n return '[' + type + ']';\n },\n NonNullType: function NonNullType(_ref19) {\n var type = _ref19.type;\n return type + '!';\n },\n // Type System Definitions\n SchemaDefinition: addDescription(function (_ref20) {\n var directives = _ref20.directives,\n operationTypes = _ref20.operationTypes;\n return join(['schema', join(directives, ' '), block(operationTypes)], ' ');\n }),\n OperationTypeDefinition: function OperationTypeDefinition(_ref21) {\n var operation = _ref21.operation,\n type = _ref21.type;\n return operation + ': ' + type;\n },\n ScalarTypeDefinition: addDescription(function (_ref22) {\n var name = _ref22.name,\n directives = _ref22.directives;\n return join(['scalar', name, join(directives, ' ')], ' ');\n }),\n ObjectTypeDefinition: addDescription(function (_ref23) {\n var name = _ref23.name,\n interfaces = _ref23.interfaces,\n directives = _ref23.directives,\n fields = _ref23.fields;\n return join(['type', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n }),\n FieldDefinition: addDescription(function (_ref24) {\n var name = _ref24.name,\n args = _ref24.arguments,\n type = _ref24.type,\n directives = _ref24.directives;\n return name + (hasMultilineItems(args) ? wrap('(\\n', indent(join(args, '\\n')), '\\n)') : wrap('(', join(args, ', '), ')')) + ': ' + type + wrap(' ', join(directives, ' '));\n }),\n InputValueDefinition: addDescription(function (_ref25) {\n var name = _ref25.name,\n type = _ref25.type,\n defaultValue = _ref25.defaultValue,\n directives = _ref25.directives;\n return join([name + ': ' + type, wrap('= ', defaultValue), join(directives, ' ')], ' ');\n }),\n InterfaceTypeDefinition: addDescription(function (_ref26) {\n var name = _ref26.name,\n interfaces = _ref26.interfaces,\n directives = _ref26.directives,\n fields = _ref26.fields;\n return join(['interface', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n }),\n UnionTypeDefinition: addDescription(function (_ref27) {\n var name = _ref27.name,\n directives = _ref27.directives,\n types = _ref27.types;\n return join(['union', name, join(directives, ' '), types && types.length !== 0 ? '= ' + join(types, ' | ') : ''], ' ');\n }),\n EnumTypeDefinition: addDescription(function (_ref28) {\n var name = _ref28.name,\n directives = _ref28.directives,\n values = _ref28.values;\n return join(['enum', name, join(directives, ' '), block(values)], ' ');\n }),\n EnumValueDefinition: addDescription(function (_ref29) {\n var name = _ref29.name,\n directives = _ref29.directives;\n return join([name, join(directives, ' ')], ' ');\n }),\n InputObjectTypeDefinition: addDescription(function (_ref30) {\n var name = _ref30.name,\n directives = _ref30.directives,\n fields = _ref30.fields;\n return join(['input', name, join(directives, ' '), block(fields)], ' ');\n }),\n DirectiveDefinition: addDescription(function (_ref31) {\n var name = _ref31.name,\n args = _ref31.arguments,\n repeatable = _ref31.repeatable,\n locations = _ref31.locations;\n return 'directive @' + name + (hasMultilineItems(args) ? wrap('(\\n', indent(join(args, '\\n')), '\\n)') : wrap('(', join(args, ', '), ')')) + (repeatable ? ' repeatable' : '') + ' on ' + join(locations, ' | ');\n }),\n SchemaExtension: function SchemaExtension(_ref32) {\n var directives = _ref32.directives,\n operationTypes = _ref32.operationTypes;\n return join(['extend schema', join(directives, ' '), block(operationTypes)], ' ');\n },\n ScalarTypeExtension: function ScalarTypeExtension(_ref33) {\n var name = _ref33.name,\n directives = _ref33.directives;\n return join(['extend scalar', name, join(directives, ' ')], ' ');\n },\n ObjectTypeExtension: function ObjectTypeExtension(_ref34) {\n var name = _ref34.name,\n interfaces = _ref34.interfaces,\n directives = _ref34.directives,\n fields = _ref34.fields;\n return join(['extend type', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n },\n InterfaceTypeExtension: function InterfaceTypeExtension(_ref35) {\n var name = _ref35.name,\n interfaces = _ref35.interfaces,\n directives = _ref35.directives,\n fields = _ref35.fields;\n return join(['extend interface', name, wrap('implements ', join(interfaces, ' & ')), join(directives, ' '), block(fields)], ' ');\n },\n UnionTypeExtension: function UnionTypeExtension(_ref36) {\n var name = _ref36.name,\n directives = _ref36.directives,\n types = _ref36.types;\n return join(['extend union', name, join(directives, ' '), types && types.length !== 0 ? '= ' + join(types, ' | ') : ''], ' ');\n },\n EnumTypeExtension: function EnumTypeExtension(_ref37) {\n var name = _ref37.name,\n directives = _ref37.directives,\n values = _ref37.values;\n return join(['extend enum', name, join(directives, ' '), block(values)], ' ');\n },\n InputObjectTypeExtension: function InputObjectTypeExtension(_ref38) {\n var name = _ref38.name,\n directives = _ref38.directives,\n fields = _ref38.fields;\n return join(['extend input', name, join(directives, ' '), block(fields)], ' ');\n }\n};\n\nfunction addDescription(cb) {\n return function (node) {\n return join([node.description, cb(node)], '\\n');\n };\n}\n/**\n * Given maybeArray, print an empty string if it is null or empty, otherwise\n * print all items together separated by separator if provided\n */\n\n\nfunction join(maybeArray) {\n var _maybeArray$filter$jo;\n\n var separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n return (_maybeArray$filter$jo = maybeArray === null || maybeArray === void 0 ? void 0 : maybeArray.filter(function (x) {\n return x;\n }).join(separator)) !== null && _maybeArray$filter$jo !== void 0 ? _maybeArray$filter$jo : '';\n}\n/**\n * Given array, print each item on its own line, wrapped in an\n * indented \"{ }\" block.\n */\n\n\nfunction block(array) {\n return wrap('{\\n', indent(join(array, '\\n')), '\\n}');\n}\n/**\n * If maybeString is not null or empty, then wrap with start and end, otherwise print an empty string.\n */\n\n\nfunction wrap(start, maybeString) {\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n return maybeString != null && maybeString !== '' ? start + maybeString + end : '';\n}\n\nfunction indent(str) {\n return wrap(' ', str.replace(/\\n/g, '\\n '));\n}\n\nfunction isMultiline(str) {\n return str.indexOf('\\n') !== -1;\n}\n\nfunction hasMultilineItems(maybeArray) {\n return maybeArray != null && maybeArray.some(isMultiline);\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/printer.js?"); /***/ }), /***/ "./node_modules/graphql/language/source.js": /*!*************************************************!*\ !*** ./node_modules/graphql/language/source.js ***! \*************************************************/ /*! flagged exports */ /*! export Source [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export isSource [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.isSource = isSource;\nexports.Source = void 0;\n\nvar _symbols = __webpack_require__(/*! ../polyfills/symbols.js */ \"./node_modules/graphql/polyfills/symbols.js\");\n\nvar _inspect = _interopRequireDefault(__webpack_require__(/*! ../jsutils/inspect.js */ \"./node_modules/graphql/jsutils/inspect.js\"));\n\nvar _devAssert = _interopRequireDefault(__webpack_require__(/*! ../jsutils/devAssert.js */ \"./node_modules/graphql/jsutils/devAssert.js\"));\n\nvar _instanceOf = _interopRequireDefault(__webpack_require__(/*! ../jsutils/instanceOf.js */ \"./node_modules/graphql/jsutils/instanceOf.js\"));\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n/**\n * A representation of source input to GraphQL. The `name` and `locationOffset` parameters are\n * optional, but they are useful for clients who store GraphQL documents in source files.\n * For example, if the GraphQL input starts at line 40 in a file named `Foo.graphql`, it might\n * be useful for `name` to be `\"Foo.graphql\"` and location to be `{ line: 40, column: 1 }`.\n * The `line` and `column` properties in `locationOffset` are 1-indexed.\n */\n\n\nvar Source = /*#__PURE__*/function () {\n function Source(body) {\n var name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'GraphQL request';\n var locationOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n line: 1,\n column: 1\n };\n typeof body === 'string' || (0, _devAssert.default)(0, \"Body must be a string. Received: \".concat((0, _inspect.default)(body), \".\"));\n this.body = body;\n this.name = name;\n this.locationOffset = locationOffset;\n this.locationOffset.line > 0 || (0, _devAssert.default)(0, 'line in locationOffset is 1-indexed and must be positive.');\n this.locationOffset.column > 0 || (0, _devAssert.default)(0, 'column in locationOffset is 1-indexed and must be positive.');\n } // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n\n\n _createClass(Source, [{\n key: _symbols.SYMBOL_TO_STRING_TAG,\n get: function get() {\n return 'Source';\n }\n }]);\n\n return Source;\n}();\n/**\n * Test if the given value is a Source object.\n *\n * @internal\n */\n\n\nexports.Source = Source; // eslint-disable-next-line no-redeclare\n\nfunction isSource(source) {\n return (0, _instanceOf.default)(source, Source);\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/source.js?"); /***/ }), /***/ "./node_modules/graphql/language/tokenKind.js": /*!****************************************************!*\ !*** ./node_modules/graphql/language/tokenKind.js ***! \****************************************************/ /*! flagged exports */ /*! export TokenKind [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.TokenKind = void 0;\n/**\n * An exported enum describing the different kinds of tokens that the\n * lexer emits.\n */\n\nvar TokenKind = Object.freeze({\n SOF: '',\n EOF: '',\n BANG: '!',\n DOLLAR: '$',\n AMP: '&',\n PAREN_L: '(',\n PAREN_R: ')',\n SPREAD: '...',\n COLON: ':',\n EQUALS: '=',\n AT: '@',\n BRACKET_L: '[',\n BRACKET_R: ']',\n BRACE_L: '{',\n PIPE: '|',\n BRACE_R: '}',\n NAME: 'Name',\n INT: 'Int',\n FLOAT: 'Float',\n STRING: 'String',\n BLOCK_STRING: 'BlockString',\n COMMENT: 'Comment'\n});\n/**\n * The enum type representing the token kinds values.\n */\n\nexports.TokenKind = TokenKind;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/tokenKind.js?"); /***/ }), /***/ "./node_modules/graphql/language/visitor.js": /*!**************************************************!*\ !*** ./node_modules/graphql/language/visitor.js ***! \**************************************************/ /*! flagged exports */ /*! export BREAK [provided] [no usage info] [missing usage info prevents renaming] */ /*! export QueryDocumentKeys [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export getVisitFn [provided] [no usage info] [missing usage info prevents renaming] */ /*! export visit [provided] [no usage info] [missing usage info prevents renaming] */ /*! export visitInParallel [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.visit = visit;\nexports.visitInParallel = visitInParallel;\nexports.getVisitFn = getVisitFn;\nexports.BREAK = exports.QueryDocumentKeys = void 0;\n\nvar _inspect = _interopRequireDefault(__webpack_require__(/*! ../jsutils/inspect.js */ \"./node_modules/graphql/jsutils/inspect.js\"));\n\nvar _ast = __webpack_require__(/*! ./ast.js */ \"./node_modules/graphql/language/ast.js\");\n\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n\nvar QueryDocumentKeys = {\n Name: [],\n Document: ['definitions'],\n OperationDefinition: ['name', 'variableDefinitions', 'directives', 'selectionSet'],\n VariableDefinition: ['variable', 'type', 'defaultValue', 'directives'],\n Variable: ['name'],\n SelectionSet: ['selections'],\n Field: ['alias', 'name', 'arguments', 'directives', 'selectionSet'],\n Argument: ['name', 'value'],\n FragmentSpread: ['name', 'directives'],\n InlineFragment: ['typeCondition', 'directives', 'selectionSet'],\n FragmentDefinition: ['name', // Note: fragment variable definitions are experimental and may be changed\n // or removed in the future.\n 'variableDefinitions', 'typeCondition', 'directives', 'selectionSet'],\n IntValue: [],\n FloatValue: [],\n StringValue: [],\n BooleanValue: [],\n NullValue: [],\n EnumValue: [],\n ListValue: ['values'],\n ObjectValue: ['fields'],\n ObjectField: ['name', 'value'],\n Directive: ['name', 'arguments'],\n NamedType: ['name'],\n ListType: ['type'],\n NonNullType: ['type'],\n SchemaDefinition: ['description', 'directives', 'operationTypes'],\n OperationTypeDefinition: ['type'],\n ScalarTypeDefinition: ['description', 'name', 'directives'],\n ObjectTypeDefinition: ['description', 'name', 'interfaces', 'directives', 'fields'],\n FieldDefinition: ['description', 'name', 'arguments', 'type', 'directives'],\n InputValueDefinition: ['description', 'name', 'type', 'defaultValue', 'directives'],\n InterfaceTypeDefinition: ['description', 'name', 'interfaces', 'directives', 'fields'],\n UnionTypeDefinition: ['description', 'name', 'directives', 'types'],\n EnumTypeDefinition: ['description', 'name', 'directives', 'values'],\n EnumValueDefinition: ['description', 'name', 'directives'],\n InputObjectTypeDefinition: ['description', 'name', 'directives', 'fields'],\n DirectiveDefinition: ['description', 'name', 'arguments', 'locations'],\n SchemaExtension: ['directives', 'operationTypes'],\n ScalarTypeExtension: ['name', 'directives'],\n ObjectTypeExtension: ['name', 'interfaces', 'directives', 'fields'],\n InterfaceTypeExtension: ['name', 'interfaces', 'directives', 'fields'],\n UnionTypeExtension: ['name', 'directives', 'types'],\n EnumTypeExtension: ['name', 'directives', 'values'],\n InputObjectTypeExtension: ['name', 'directives', 'fields']\n};\nexports.QueryDocumentKeys = QueryDocumentKeys;\nvar BREAK = Object.freeze({});\n/**\n * visit() will walk through an AST using a depth-first traversal, calling\n * the visitor's enter function at each node in the traversal, and calling the\n * leave function after visiting that node and all of its child nodes.\n *\n * By returning different values from the enter and leave functions, the\n * behavior of the visitor can be altered, including skipping over a sub-tree of\n * the AST (by returning false), editing the AST by returning a value or null\n * to remove the value, or to stop the whole traversal by returning BREAK.\n *\n * When using visit() to edit an AST, the original AST will not be modified, and\n * a new version of the AST with the changes applied will be returned from the\n * visit function.\n *\n * const editedAST = visit(ast, {\n * enter(node, key, parent, path, ancestors) {\n * // @return\n * // undefined: no action\n * // false: skip visiting this node\n * // visitor.BREAK: stop visiting altogether\n * // null: delete this node\n * // any value: replace this node with the returned value\n * },\n * leave(node, key, parent, path, ancestors) {\n * // @return\n * // undefined: no action\n * // false: no action\n * // visitor.BREAK: stop visiting altogether\n * // null: delete this node\n * // any value: replace this node with the returned value\n * }\n * });\n *\n * Alternatively to providing enter() and leave() functions, a visitor can\n * instead provide functions named the same as the kinds of AST nodes, or\n * enter/leave visitors at a named key, leading to four permutations of the\n * visitor API:\n *\n * 1) Named visitors triggered when entering a node of a specific kind.\n *\n * visit(ast, {\n * Kind(node) {\n * // enter the \"Kind\" node\n * }\n * })\n *\n * 2) Named visitors that trigger upon entering and leaving a node of\n * a specific kind.\n *\n * visit(ast, {\n * Kind: {\n * enter(node) {\n * // enter the \"Kind\" node\n * }\n * leave(node) {\n * // leave the \"Kind\" node\n * }\n * }\n * })\n *\n * 3) Generic visitors that trigger upon entering and leaving any node.\n *\n * visit(ast, {\n * enter(node) {\n * // enter any node\n * },\n * leave(node) {\n * // leave any node\n * }\n * })\n *\n * 4) Parallel visitors for entering and leaving nodes of a specific kind.\n *\n * visit(ast, {\n * enter: {\n * Kind(node) {\n * // enter the \"Kind\" node\n * }\n * },\n * leave: {\n * Kind(node) {\n * // leave the \"Kind\" node\n * }\n * }\n * })\n */\n\nexports.BREAK = BREAK;\n\nfunction visit(root, visitor) {\n var visitorKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : QueryDocumentKeys;\n /* eslint-disable no-undef-init */\n\n var stack = undefined;\n var inArray = Array.isArray(root);\n var keys = [root];\n var index = -1;\n var edits = [];\n var node = undefined;\n var key = undefined;\n var parent = undefined;\n var path = [];\n var ancestors = [];\n var newRoot = root;\n /* eslint-enable no-undef-init */\n\n do {\n index++;\n var isLeaving = index === keys.length;\n var isEdited = isLeaving && edits.length !== 0;\n\n if (isLeaving) {\n key = ancestors.length === 0 ? undefined : path[path.length - 1];\n node = parent;\n parent = ancestors.pop();\n\n if (isEdited) {\n if (inArray) {\n node = node.slice();\n } else {\n var clone = {};\n\n for (var _i2 = 0, _Object$keys2 = Object.keys(node); _i2 < _Object$keys2.length; _i2++) {\n var k = _Object$keys2[_i2];\n clone[k] = node[k];\n }\n\n node = clone;\n }\n\n var editOffset = 0;\n\n for (var ii = 0; ii < edits.length; ii++) {\n var editKey = edits[ii][0];\n var editValue = edits[ii][1];\n\n if (inArray) {\n editKey -= editOffset;\n }\n\n if (inArray && editValue === null) {\n node.splice(editKey, 1);\n editOffset++;\n } else {\n node[editKey] = editValue;\n }\n }\n }\n\n index = stack.index;\n keys = stack.keys;\n edits = stack.edits;\n inArray = stack.inArray;\n stack = stack.prev;\n } else {\n key = parent ? inArray ? index : keys[index] : undefined;\n node = parent ? parent[key] : newRoot;\n\n if (node === null || node === undefined) {\n continue;\n }\n\n if (parent) {\n path.push(key);\n }\n }\n\n var result = void 0;\n\n if (!Array.isArray(node)) {\n if (!(0, _ast.isNode)(node)) {\n throw new Error(\"Invalid AST Node: \".concat((0, _inspect.default)(node), \".\"));\n }\n\n var visitFn = getVisitFn(visitor, node.kind, isLeaving);\n\n if (visitFn) {\n result = visitFn.call(visitor, node, key, parent, path, ancestors);\n\n if (result === BREAK) {\n break;\n }\n\n if (result === false) {\n if (!isLeaving) {\n path.pop();\n continue;\n }\n } else if (result !== undefined) {\n edits.push([key, result]);\n\n if (!isLeaving) {\n if ((0, _ast.isNode)(result)) {\n node = result;\n } else {\n path.pop();\n continue;\n }\n }\n }\n }\n }\n\n if (result === undefined && isEdited) {\n edits.push([key, node]);\n }\n\n if (isLeaving) {\n path.pop();\n } else {\n var _visitorKeys$node$kin;\n\n stack = {\n inArray: inArray,\n index: index,\n keys: keys,\n edits: edits,\n prev: stack\n };\n inArray = Array.isArray(node);\n keys = inArray ? node : (_visitorKeys$node$kin = visitorKeys[node.kind]) !== null && _visitorKeys$node$kin !== void 0 ? _visitorKeys$node$kin : [];\n index = -1;\n edits = [];\n\n if (parent) {\n ancestors.push(parent);\n }\n\n parent = node;\n }\n } while (stack !== undefined);\n\n if (edits.length !== 0) {\n newRoot = edits[edits.length - 1][1];\n }\n\n return newRoot;\n}\n/**\n * Creates a new visitor instance which delegates to many visitors to run in\n * parallel. Each visitor will be visited for each node before moving on.\n *\n * If a prior visitor edits a node, no following visitors will see that node.\n */\n\n\nfunction visitInParallel(visitors) {\n var skipping = new Array(visitors.length);\n return {\n enter: function enter(node) {\n for (var i = 0; i < visitors.length; i++) {\n if (skipping[i] == null) {\n var fn = getVisitFn(visitors[i], node.kind,\n /* isLeaving */\n false);\n\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n\n if (result === false) {\n skipping[i] = node;\n } else if (result === BREAK) {\n skipping[i] = BREAK;\n } else if (result !== undefined) {\n return result;\n }\n }\n }\n }\n },\n leave: function leave(node) {\n for (var i = 0; i < visitors.length; i++) {\n if (skipping[i] == null) {\n var fn = getVisitFn(visitors[i], node.kind,\n /* isLeaving */\n true);\n\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n\n if (result === BREAK) {\n skipping[i] = BREAK;\n } else if (result !== undefined && result !== false) {\n return result;\n }\n }\n } else if (skipping[i] === node) {\n skipping[i] = null;\n }\n }\n }\n };\n}\n/**\n * Given a visitor instance, if it is leaving or not, and a node kind, return\n * the function the visitor runtime should call.\n */\n\n\nfunction getVisitFn(visitor, kind, isLeaving) {\n var kindVisitor = visitor[kind];\n\n if (kindVisitor) {\n if (!isLeaving && typeof kindVisitor === 'function') {\n // { Kind() {} }\n return kindVisitor;\n }\n\n var kindSpecificVisitor = isLeaving ? kindVisitor.leave : kindVisitor.enter;\n\n if (typeof kindSpecificVisitor === 'function') {\n // { Kind: { enter() {}, leave() {} } }\n return kindSpecificVisitor;\n }\n } else {\n var specificVisitor = isLeaving ? visitor.leave : visitor.enter;\n\n if (specificVisitor) {\n if (typeof specificVisitor === 'function') {\n // { enter() {}, leave() {} }\n return specificVisitor;\n }\n\n var specificKindVisitor = specificVisitor[kind];\n\n if (typeof specificKindVisitor === 'function') {\n // { enter: { Kind() {} }, leave: { Kind() {} } }\n return specificKindVisitor;\n }\n }\n }\n}\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/language/visitor.js?"); /***/ }), /***/ "./node_modules/graphql/polyfills/symbols.js": /*!***************************************************!*\ !*** ./node_modules/graphql/polyfills/symbols.js ***! \***************************************************/ /*! flagged exports */ /*! export SYMBOL_ASYNC_ITERATOR [provided] [no usage info] [missing usage info prevents renaming] */ /*! export SYMBOL_ITERATOR [provided] [no usage info] [missing usage info prevents renaming] */ /*! export SYMBOL_TO_STRING_TAG [provided] [no usage info] [missing usage info prevents renaming] */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.SYMBOL_TO_STRING_TAG = exports.SYMBOL_ASYNC_ITERATOR = exports.SYMBOL_ITERATOR = void 0; // In ES2015 (or a polyfilled) environment, this will be Symbol.iterator\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nvar SYMBOL_ITERATOR = typeof Symbol === 'function' && Symbol.iterator != null ? Symbol.iterator : '@@iterator'; // In ES2017 (or a polyfilled) environment, this will be Symbol.asyncIterator\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nexports.SYMBOL_ITERATOR = SYMBOL_ITERATOR;\nvar SYMBOL_ASYNC_ITERATOR = typeof Symbol === 'function' && Symbol.asyncIterator != null ? Symbol.asyncIterator : '@@asyncIterator'; // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n\nexports.SYMBOL_ASYNC_ITERATOR = SYMBOL_ASYNC_ITERATOR;\nvar SYMBOL_TO_STRING_TAG = typeof Symbol === 'function' && Symbol.toStringTag != null ? Symbol.toStringTag : '@@toStringTag';\nexports.SYMBOL_TO_STRING_TAG = SYMBOL_TO_STRING_TAG;\n\n//# sourceURL=webpack://materio.com/./node_modules/graphql/polyfills/symbols.js?"); /***/ }), /***/ "./node_modules/lodash/_Symbol.js": /*!****************************************!*\ !*** ./node_modules/lodash/_Symbol.js ***! \****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n/** Built-in value references. */\n\n\nvar Symbol = root.Symbol;\nmodule.exports = Symbol;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/_Symbol.js?"); /***/ }), /***/ "./node_modules/lodash/_baseGetTag.js": /*!********************************************!*\ !*** ./node_modules/lodash/_baseGetTag.js ***! \********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var Symbol = __webpack_require__(/*! ./_Symbol */ \"./node_modules/lodash/_Symbol.js\"),\n getRawTag = __webpack_require__(/*! ./_getRawTag */ \"./node_modules/lodash/_getRawTag.js\"),\n objectToString = __webpack_require__(/*! ./_objectToString */ \"./node_modules/lodash/_objectToString.js\");\n/** `Object#toString` result references. */\n\n\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n/** Built-in value references. */\n\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n\n return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/_baseGetTag.js?"); /***/ }), /***/ "./node_modules/lodash/_freeGlobal.js": /*!********************************************!*\ !*** ./node_modules/lodash/_freeGlobal.js ***! \********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__.g, __webpack_require__.* */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof __webpack_require__.g == 'object' && __webpack_require__.g && __webpack_require__.g.Object === Object && __webpack_require__.g;\nmodule.exports = freeGlobal;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/_freeGlobal.js?"); /***/ }), /***/ "./node_modules/lodash/_getRawTag.js": /*!*******************************************!*\ !*** ./node_modules/lodash/_getRawTag.js ***! \*******************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var Symbol = __webpack_require__(/*! ./_Symbol */ \"./node_modules/lodash/_Symbol.js\");\n/** Used for built-in method references. */\n\n\nvar objectProto = Object.prototype;\n/** Used to check objects for own properties. */\n\nvar hasOwnProperty = objectProto.hasOwnProperty;\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n\nvar nativeObjectToString = objectProto.toString;\n/** Built-in value references. */\n\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n\n return result;\n}\n\nmodule.exports = getRawTag;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/_getRawTag.js?"); /***/ }), /***/ "./node_modules/lodash/_objectToString.js": /*!************************************************!*\ !*** ./node_modules/lodash/_objectToString.js ***! \************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { eval("/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n\nvar nativeObjectToString = objectProto.toString;\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/_objectToString.js?"); /***/ }), /***/ "./node_modules/lodash/_root.js": /*!**************************************!*\ !*** ./node_modules/lodash/_root.js ***! \**************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ \"./node_modules/lodash/_freeGlobal.js\");\n/** Detect free variable `self`. */\n\n\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n/** Used as a reference to the global object. */\n\nvar root = freeGlobal || freeSelf || Function('return this')();\nmodule.exports = root;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/_root.js?"); /***/ }), /***/ "./node_modules/lodash/debounce.js": /*!*****************************************!*\ !*** ./node_modules/lodash/debounce.js ***! \*****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\"),\n now = __webpack_require__(/*! ./now */ \"./node_modules/lodash/now.js\"),\n toNumber = __webpack_require__(/*! ./toNumber */ \"./node_modules/lodash/toNumber.js\");\n/** Error message constants. */\n\n\nvar FUNC_ERROR_TEXT = 'Expected a function';\n/* Built-in method references for those with the same name as other `lodash` methods. */\n\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n\n wait = toNumber(wait) || 0;\n\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time; // Start the timer for the trailing edge.\n\n timerId = setTimeout(timerExpired, wait); // Invoke the leading edge.\n\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime; // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n\n return lastCallTime === undefined || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;\n }\n\n function timerExpired() {\n var time = now();\n\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n } // Restart the timer.\n\n\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined; // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n\n return result;\n }\n\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/debounce.js?"); /***/ }), /***/ "./node_modules/lodash/isObject.js": /*!*****************************************!*\ !*** ./node_modules/lodash/isObject.js ***! \*****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { eval("/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/isObject.js?"); /***/ }), /***/ "./node_modules/lodash/isObjectLike.js": /*!*********************************************!*\ !*** ./node_modules/lodash/isObjectLike.js ***! \*********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { eval("/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/isObjectLike.js?"); /***/ }), /***/ "./node_modules/lodash/isSymbol.js": /*!*****************************************!*\ !*** ./node_modules/lodash/isSymbol.js ***! \*****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ \"./node_modules/lodash/_baseGetTag.js\"),\n isObjectLike = __webpack_require__(/*! ./isObjectLike */ \"./node_modules/lodash/isObjectLike.js\");\n/** `Object#toString` result references. */\n\n\nvar symbolTag = '[object Symbol]';\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n\nfunction isSymbol(value) {\n return typeof value == 'symbol' || isObjectLike(value) && baseGetTag(value) == symbolTag;\n}\n\nmodule.exports = isSymbol;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/isSymbol.js?"); /***/ }), /***/ "./node_modules/lodash/now.js": /*!************************************!*\ !*** ./node_modules/lodash/now.js ***! \************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var root = __webpack_require__(/*! ./_root */ \"./node_modules/lodash/_root.js\");\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n\n\nvar now = function () {\n return root.Date.now();\n};\n\nmodule.exports = now;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/now.js?"); /***/ }), /***/ "./node_modules/lodash/toNumber.js": /*!*****************************************!*\ !*** ./node_modules/lodash/toNumber.js ***! \*****************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, __webpack_require__ */ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { eval("var isObject = __webpack_require__(/*! ./isObject */ \"./node_modules/lodash/isObject.js\"),\n isSymbol = __webpack_require__(/*! ./isSymbol */ \"./node_modules/lodash/isSymbol.js\");\n/** Used as references for various `Number` constants. */\n\n\nvar NAN = 0 / 0;\n/** Used to match leading and trailing whitespace. */\n\nvar reTrim = /^\\s+|\\s+$/g;\n/** Used to detect bad signed hexadecimal string values. */\n\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n/** Used to detect binary string values. */\n\nvar reIsBinary = /^0b[01]+$/i;\n/** Used to detect octal string values. */\n\nvar reIsOctal = /^0o[0-7]+$/i;\n/** Built-in method references without a dependency on `root`. */\n\nvar freeParseInt = parseInt;\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n\n if (isSymbol(value)) {\n return NAN;\n }\n\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? other + '' : other;\n }\n\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;\n}\n\nmodule.exports = toNumber;\n\n//# sourceURL=webpack://materio.com/./node_modules/lodash/toNumber.js?"); /***/ }), /***/ "./node_modules/pretty-bytes/index.js": /*!********************************************!*\ !*** ./node_modules/pretty-bytes/index.js ***! \********************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("\n\nconst BYTE_UNITS = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\nconst BIBYTE_UNITS = ['B', 'kiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'];\nconst BIT_UNITS = ['b', 'kbit', 'Mbit', 'Gbit', 'Tbit', 'Pbit', 'Ebit', 'Zbit', 'Ybit'];\nconst BIBIT_UNITS = ['b', 'kibit', 'Mibit', 'Gibit', 'Tibit', 'Pibit', 'Eibit', 'Zibit', 'Yibit'];\n/*\nFormats the given number using `Number#toLocaleString`.\n- If locale is a string, the value is expected to be a locale-key (for example: `de`).\n- If locale is true, the system default locale is used for translation.\n- If no value for locale is specified, the number is returned unmodified.\n*/\n\nconst toLocaleString = (number, locale) => {\n let result = number;\n\n if (typeof locale === 'string' || Array.isArray(locale)) {\n result = number.toLocaleString(locale);\n } else if (locale === true) {\n result = number.toLocaleString();\n }\n\n return result;\n};\n\nmodule.exports = (number, options) => {\n if (!Number.isFinite(number)) {\n throw new TypeError(`Expected a finite number, got ${typeof number}: ${number}`);\n }\n\n options = Object.assign({\n bits: false,\n binary: false\n }, options);\n const UNITS = options.bits ? options.binary ? BIBIT_UNITS : BIT_UNITS : options.binary ? BIBYTE_UNITS : BYTE_UNITS;\n\n if (options.signed && number === 0) {\n return ` 0 ${UNITS[0]}`;\n }\n\n const isNegative = number < 0;\n const prefix = isNegative ? '-' : options.signed ? '+' : '';\n\n if (isNegative) {\n number = -number;\n }\n\n if (number < 1) {\n const numberString = toLocaleString(number, options.locale);\n return prefix + numberString + ' ' + UNITS[0];\n }\n\n const exponent = Math.min(Math.floor(options.binary ? Math.log(number) / Math.log(1024) : Math.log10(number) / 3), UNITS.length - 1); // eslint-disable-next-line unicorn/prefer-exponentiation-operator\n\n number = Number((number / Math.pow(options.binary ? 1024 : 1000, exponent)).toPrecision(3));\n const numberString = toLocaleString(number, options.locale);\n const unit = UNITS[exponent];\n return prefix + numberString + ' ' + unit;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/pretty-bytes/index.js?"); /***/ }), /***/ "./node_modules/querystring-es3/decode.js": /*!************************************************!*\ !*** ./node_modules/querystring-es3/decode.js ***! \************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n // If obj.hasOwnProperty has been overridden, then calling\n// obj.hasOwnProperty(prop) will break.\n// See: https://github.com/joyent/node/issues/1707\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nmodule.exports = function (qs, sep, eq, options) {\n sep = sep || '&';\n eq = eq || '=';\n var obj = {};\n\n if (typeof qs !== 'string' || qs.length === 0) {\n return obj;\n }\n\n var regexp = /\\+/g;\n qs = qs.split(sep);\n var maxKeys = 1000;\n\n if (options && typeof options.maxKeys === 'number') {\n maxKeys = options.maxKeys;\n }\n\n var len = qs.length; // maxKeys <= 0 means that we should not limit keys count\n\n if (maxKeys > 0 && len > maxKeys) {\n len = maxKeys;\n }\n\n for (var i = 0; i < len; ++i) {\n var x = qs[i].replace(regexp, '%20'),\n idx = x.indexOf(eq),\n kstr,\n vstr,\n k,\n v;\n\n if (idx >= 0) {\n kstr = x.substr(0, idx);\n vstr = x.substr(idx + 1);\n } else {\n kstr = x;\n vstr = '';\n }\n\n k = decodeURIComponent(kstr);\n v = decodeURIComponent(vstr);\n\n if (!hasOwnProperty(obj, k)) {\n obj[k] = v;\n } else if (isArray(obj[k])) {\n obj[k].push(v);\n } else {\n obj[k] = [obj[k], v];\n }\n }\n\n return obj;\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/querystring-es3/decode.js?"); /***/ }), /***/ "./node_modules/querystring-es3/encode.js": /*!************************************************!*\ !*** ./node_modules/querystring-es3/encode.js ***! \************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { "use strict"; eval("// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\nvar stringifyPrimitive = function (v) {\n switch (typeof v) {\n case 'string':\n return v;\n\n case 'boolean':\n return v ? 'true' : 'false';\n\n case 'number':\n return isFinite(v) ? v : '';\n\n default:\n return '';\n }\n};\n\nmodule.exports = function (obj, sep, eq, name) {\n sep = sep || '&';\n eq = eq || '=';\n\n if (obj === null) {\n obj = undefined;\n }\n\n if (typeof obj === 'object') {\n return map(objectKeys(obj), function (k) {\n var ks = encodeURIComponent(stringifyPrimitive(k)) + eq;\n\n if (isArray(obj[k])) {\n return map(obj[k], function (v) {\n return ks + encodeURIComponent(stringifyPrimitive(v));\n }).join(sep);\n } else {\n return ks + encodeURIComponent(stringifyPrimitive(obj[k]));\n }\n }).join(sep);\n }\n\n if (!name) return '';\n return encodeURIComponent(stringifyPrimitive(name)) + eq + encodeURIComponent(stringifyPrimitive(obj));\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n\nfunction map(xs, f) {\n if (xs.map) return xs.map(f);\n var res = [];\n\n for (var i = 0; i < xs.length; i++) {\n res.push(f(xs[i], i));\n }\n\n return res;\n}\n\nvar objectKeys = Object.keys || function (obj) {\n var res = [];\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) res.push(key);\n }\n\n return res;\n};\n\n//# sourceURL=webpack://materio.com/./node_modules/querystring-es3/encode.js?"); /***/ }), /***/ "./node_modules/querystring-es3/index.js": /*!***********************************************!*\ !*** ./node_modules/querystring-es3/index.js ***! \***********************************************/ /*! default exports */ /*! export decode [provided] [no usage info] [missing usage info prevents renaming] */ /*! export encode [provided] [no usage info] [missing usage info prevents renaming] */ /*! export parse [provided] [no usage info] [provision prevents renaming (no use info)] -> ./node_modules/querystring-es3/decode.js */ /*! exports [maybe provided (runtime-defined)] [no usage info] */ /*! export stringify [provided] [no usage info] [provision prevents renaming (no use info)] -> ./node_modules/querystring-es3/encode.js */ /*! exports [maybe provided (runtime-defined)] [no usage info] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nexports.decode = exports.parse = __webpack_require__(/*! ./decode */ \"./node_modules/querystring-es3/decode.js\");\nexports.encode = exports.stringify = __webpack_require__(/*! ./encode */ \"./node_modules/querystring-es3/encode.js\");\n\n//# sourceURL=webpack://materio.com/./node_modules/querystring-es3/index.js?"); /***/ }), /***/ "./node_modules/vue-cool-lightbox/dist/vue-cool-lightbox.esm.js": /*!**********************************************************************!*\ !*** ./node_modules/vue-cool-lightbox/dist/vue-cool-lightbox.esm.js ***! \**********************************************************************/ /*! namespace exports */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_require__, __webpack_exports__, __webpack_require__.r, __webpack_require__.g, __webpack_require__.d, __webpack_require__.* */ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => __WEBPACK_DEFAULT_EXPORT__\n/* harmony export */ });\n/* harmony import */ var body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! body-scroll-lock */ \"./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js\");\n\nvar LazyLoadDirective = {\n inserted: function (el) {\n function loadImage() {\n var imageElement = Array.from(el.children).find(function (el) {\n return el.nodeName === \"IMG\";\n });\n\n if (imageElement) {\n imageElement.addEventListener(\"load\", function () {\n setTimeout(function () {\n return el.classList.add(\"loaded\");\n }, 100);\n });\n imageElement.addEventListener(\"error\", function () {\n return console.log(\"error\");\n });\n imageElement.src = imageElement.dataset.url;\n }\n }\n\n function handleIntersect(entries, observer) {\n entries.forEach(function (entry) {\n if (entry.isIntersecting) {\n loadImage();\n observer.unobserve(el);\n }\n });\n }\n\n function createObserver() {\n var options = {\n root: null,\n threshold: \"0\"\n };\n var observer = new IntersectionObserver(handleIntersect, options);\n observer.observe(el);\n }\n\n if (window[\"IntersectionObserver\"]) {\n createObserver();\n } else {\n loadImage();\n }\n }\n};\nvar AutoplayObserver = {\n inserted: function (el) {\n // getYoutube ID\n function isYoutubeVideo(url) {\n // youtube data\n var youtubeRegex = /^(?:https?:\\/\\/)?(?:www\\.)?(?:youtu\\.be\\/|youtube\\.com\\/(?:embed\\/|v\\/|watch\\?v=|watch\\?.+&v=))((\\w|-){11})(?:\\S+)?$/;\n var ytId = url.match(youtubeRegex) ? RegExp.$1 : false;\n\n if (ytId) {\n return true;\n }\n\n return false;\n }\n\n function autoplayVideo() {\n var tagName = el.tagName;\n var autoplay = el.dataset.autoplay;\n\n if (autoplay) {\n if (tagName === 'VIDEO') {\n el.muted = true;\n el.autoplay = true;\n return;\n }\n\n if (tagName === 'IFRAME') {\n var url = new URL(el.src);\n var muted = 'muted';\n\n if (isYoutubeVideo(el.src)) {\n muted = 'mute';\n } // append autoplay\n\n\n url.searchParams.append(muted, 1);\n url.searchParams.append('autoplay', 1);\n el.src = url.href;\n }\n }\n }\n\n function handleIntersect(entries, observer) {\n entries.forEach(function (entry) {\n if (entry.isIntersecting) {\n autoplayVideo();\n observer.unobserve(el);\n }\n });\n }\n\n function createObserver() {\n var options = {\n root: null,\n threshold: \"0\"\n };\n var observer = new IntersectionObserver(handleIntersect, options);\n observer.observe(el);\n }\n\n if (window[\"IntersectionObserver\"]) {\n createObserver();\n } else {\n loadImage();\n }\n }\n}; //\n\nvar script = {\n directives: {\n lazyload: LazyLoadDirective,\n autoplayObserver: AutoplayObserver\n },\n data: function data() {\n return {\n // swipe data\n initialMouseX: 0,\n initialMouseY: 0,\n endMouseX: 0,\n endMouseY: 0,\n swipeType: null,\n IsSwipping: false,\n isDraggingSwipe: false,\n // use for mouse wheel\n prevTime: 0,\n // swipe effect\n xSwipeWrapper: 0,\n ySwipeWrapper: 0,\n swipeAnimation: null,\n swipeInterval: null,\n lightboxInnerWidth: null,\n // styles data\n imgIndex: this.index,\n isVisible: false,\n paddingBottom: false,\n imageLoading: false,\n showThumbs: false,\n isFullScreenMode: false,\n // aspect ratio videos\n aspectRatioVideo: {\n width: 'auto',\n height: 'auto'\n },\n // props to bind styles\n buttonsVisible: true,\n scale: 1,\n top: 0,\n left: 0,\n lastX: 0,\n lastY: 0,\n isDraging: false,\n canZoom: true,\n isZooming: false,\n transition: 'all .3s ease',\n zoomBar: 0,\n // slideshow playing data\n isPlayingSlideShow: false,\n intervalProgress: null,\n loopData: false,\n stylesInterval: {\n 'display': 'block'\n }\n };\n },\n props: {\n index: {\n required: true\n },\n effect: {\n type: String,\n default: 'swipe'\n },\n items: {\n type: Array,\n required: true\n },\n loop: {\n type: Boolean,\n default: true\n },\n slideshow: {\n type: Boolean,\n default: true\n },\n slideshowColorBar: {\n type: String,\n default: '#fa4242'\n },\n slideshowDuration: {\n type: Number,\n default: 3000\n },\n useZoomBar: {\n type: Boolean,\n default: false\n },\n closeOnClickOutsideMobile: {\n type: Boolean,\n default: false\n },\n srcName: {\n type: String,\n default: 'src'\n },\n srcThumb: {\n type: String,\n default: 'thumb'\n },\n srcMediaType: {\n type: String,\n default: 'mediaType'\n },\n overlayColor: {\n type: String,\n default: 'rgba(30, 30, 30, .9)'\n },\n zIndex: {\n type: Number,\n default: 9999\n },\n gallery: {\n type: Boolean,\n default: true\n },\n fullScreen: {\n type: Boolean,\n default: false\n },\n thumbsPosition: {\n type: String,\n default: 'right'\n },\n youtubeCookies: {\n type: Boolean,\n default: true\n },\n enableWheelEvent: {\n type: Boolean,\n default: false\n },\n showCloseButton: {\n type: Boolean,\n default: true\n },\n disableZoom: {\n type: Boolean,\n default: false\n },\n dir: {\n type: String,\n default: 'ltr'\n },\n enableScrollLock: {\n type: Boolean,\n default: true\n }\n },\n watch: {\n zoomBar: function zoomBar(newVal, prevVal) {\n var item;\n\n if (this.isZooming) {\n if (this.effect == 'swipe') {\n item = this.$refs.items[this.imgIndex].childNodes[0];\n } else {\n item = this.$refs.items.childNodes[0];\n }\n\n var newZoom = 1.6 + newVal / 10;\n item.style.transform = 'translate3d(calc(-50% + ' + this.left + 'px), calc(-50% + ' + this.top + 'px), 0px) scale3d(' + newZoom + ', ' + newZoom + ', ' + newZoom + ')';\n }\n },\n showThumbs: function showThumbs(prev, val) {\n var widthGalleryBlock = 212;\n var swipeAnimation = 'all .3s ease';\n\n if (window.innerWidth < 767) {\n widthGalleryBlock = 102;\n swipeAnimation = null;\n }\n\n var self = this;\n this.swipeAnimation = swipeAnimation;\n\n if (prev) {\n if (this.dir === 'rtl') {\n this.xSwipeWrapper = this.imgIndex * (window.innerWidth - widthGalleryBlock) + 30 * this.imgIndex;\n } else {\n this.xSwipeWrapper = -this.imgIndex * (window.innerWidth - widthGalleryBlock) - 30 * this.imgIndex;\n }\n } else {\n if (this.dir === 'rtl') {\n this.xSwipeWrapper = this.imgIndex * window.innerWidth + 30 * this.imgIndex;\n } else {\n this.xSwipeWrapper = -this.imgIndex * window.innerWidth - 30 * this.imgIndex;\n }\n }\n\n setTimeout(function () {\n self.swipeAnimation = null;\n }, 300);\n },\n index: function index(prev, val) {\n var self = this; // body scroll lock\n\n var $body = document.querySelector('body');\n\n if (prev !== null) {\n // swipe type\n this.swipeType = null;\n this.initialMouseY = 0;\n this.ySwipeWrapper = 0; // set loop from data\n\n this.loopData = this.loop; // swipe effect case remove loop\n\n if (this.effect === 'swipe') {\n this.loopData = false;\n window.addEventListener('resize', this.xPositionOnResize);\n } // add img index\n\n\n this.imgIndex = prev;\n this.isVisible = true; // add events listener\n\n window.addEventListener('keydown', this.eventListener); // add wheel event\n\n if (this.enableWheelEvent) {\n window.addEventListener('wheel', this.wheelEvent);\n } // only in mobile\n\n\n if (window.innerWidth < 700) {\n // add click event\n setTimeout(function () {\n window.addEventListener('click', self.showButtons);\n }, 200);\n }\n\n if (this.enableScrollLock) {\n setTimeout(function () {\n self.setCompensateForScrollbar();\n (0,body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__.disableBodyScroll)(self.$refs.coolLightbox);\n }, 50);\n }\n } else {\n // hide and stop slideshow\n this.isVisible = false;\n this.stopSlideShow(); // set starts X to 0\n\n this.startsX = 0;\n this.initialMouseY = 0;\n this.swipeType = null; // clear interval\n\n clearInterval(this.swipeInterval);\n this.swipeAnimation = null; // finish swipe\n\n this.isDraggingSwipe = false;\n this.isZooming = true; // remove events listener\n\n window.removeEventListener('keydown', this.eventListener);\n\n if (this.enableScrollLock) {\n self.removeCompensateForScrollbar();\n (0,body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__.enableBodyScroll)(self.$refs.coolLightbox);\n } // remove click event\n\n\n window.removeEventListener('click', this.showButtons); // remove resize event\n\n window.removeEventListener('resize', this.xPositionOnResize); // remove wheel event\n\n if (this.enableWheelEvent) {\n window.removeEventListener('wheel', this.wheelEvent);\n }\n }\n },\n imgIndex: function imgIndex(prev, val) {\n var this$1 = this; // when animation is loaded\n\n this.$nextTick(function () {\n if (this$1.effect === 'swipe') {\n this$1.setLightboxInnerWidth();\n this$1.setXPosition(prev);\n }\n\n if (prev !== null & val === null) {\n this$1.$emit(\"on-open\", prev);\n }\n\n if (prev !== null) {\n if (prev !== val) {\n if (!this$1.getYoutubeUrl(this$1.getItemSrc(prev)) && !this$1.getVimeoUrl(this$1.getItemSrc(prev))) {\n this$1.stopVideos();\n }\n } // if is an image change imageLoading to true\n\n\n if (!this$1.getVideoUrl(this$1.getItemSrc(prev))) {\n if (!this$1.is_cached(this$1.getItemSrc(prev))) {\n this$1.imageLoading = true;\n }\n } // add caption padding to Lightbox wrapper\n\n\n this$1.addCaptionPadding(); // setAspectRatioVideo when is swipe\n\n if (this$1.effect === 'swipe') {\n this$1.setAspectRatioVideo();\n } else {\n if (this$1.getVideoUrl(this$1.getItemSrc(prev))) {\n this$1.setAspectRatioVideo();\n }\n }\n } // reset zoom\n\n\n this$1.resetZoom(); // reset swipe type\n\n this$1.swipeType = null;\n this$1.ySwipeWrapper = 0;\n });\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (this.enableScrollLock) {\n this.removeCompensateForScrollbar();\n\n if (this.$refs.coolLightbox) {\n (0,body_scroll_lock__WEBPACK_IMPORTED_MODULE_0__.enableBodyScroll)(this.$refs.coolLightbox);\n }\n }\n },\n methods: {\n stopVideos: function stopVideos() {\n var videos = document.getElementsByClassName(\"cool-lightbox-video\");\n\n var isVideoPlaying = function (video) {\n return !!(video.currentTime > 0 && !video.paused && !video.ended && video.readyState > 2);\n };\n\n if (videos.length > 0) {\n Array.prototype.forEach.call(videos, function (video) {\n var type = video.tagName;\n\n if (type === 'IFRAME') {\n var iframeSrc = video.src;\n return video.src = iframeSrc;\n }\n\n if (isVideoPlaying(video)) {\n return video.pause();\n }\n });\n }\n },\n removeCompensateForScrollbar: function removeCompensateForScrollbar() {\n document.body.classList.remove(\"compensate-for-scrollbar\");\n var noscrollStyle = document.getElementById(\"coollightbox-style-noscroll\");\n\n if (noscrollStyle !== null) {\n document.getElementById(\"coollightbox-style-noscroll\").remove();\n }\n },\n setCompensateForScrollbar: function setCompensateForScrollbar() {\n var isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\n\n if (!isMobile && document.body.scrollHeight > window.innerHeight) {\n document.getElementsByTagName('head')[0].insertAdjacentHTML('beforeend', '\");\n document.body.classList.add(\"compensate-for-scrollbar\");\n }\n },\n setAutoplay: function setAutoplay(itemIndex) {\n if (this.checkIfIsObject(itemIndex) && this.items[itemIndex].hasOwnProperty('autoplay') && this.items[itemIndex].autoplay) {\n return true;\n }\n\n return false;\n },\n toggleFullScreenMode: function toggleFullScreenMode() {\n if (this.isFullScreenMode) {\n this.closeFullscreen();\n } else {\n this.fullScreenMode();\n }\n\n this.isFullScreenMode = !this.isFullScreenMode;\n },\n closeFullscreen: function closeFullscreen() {\n if (document.exitFullscreen) {\n document.exitFullscreen();\n } else if (document.mozCancelFullScreen) {\n /* Firefox */\n document.mozCancelFullScreen();\n } else if (document.webkitExitFullscreen) {\n /* Chrome, Safari and Opera */\n document.webkitExitFullscreen();\n } else if (document.msExitFullscreen) {\n /* IE/Edge */\n document.msExitFullscreen();\n }\n },\n fullScreenMode: function fullScreenMode() {\n /* Get the documentElement () to display the page in fullscreen */\n var elem = document.documentElement;\n\n if (elem.requestFullscreen) {\n elem.requestFullscreen();\n } else if (elem.mozRequestFullScreen) {\n /* Firefox */\n elem.mozRequestFullScreen();\n } else if (elem.webkitRequestFullscreen) {\n /* Chrome, Safari and Opera */\n elem.webkitRequestFullscreen();\n } else if (elem.msRequestFullscreen) {\n /* IE/Edge */\n elem.msRequestFullscreen();\n }\n },\n // check if event is arrow button or toolbar button\n checkIfIsButton: function checkIfIsButton(eventEmit) {\n var elements = '.cool-lightbox-button, .cool-lightbox-button *, .cool-lightbox-toolbar__btn, .cool-lightbox-toolbar__btn *, .cool-lightbox-caption h6, .cool-lightbox-caption p, .cool-lightbox-caption a';\n\n if (event.target.matches(elements)) {\n return true;\n }\n\n return false;\n },\n // start swipe event\n startSwipe: function startSwipe(event) {\n if (this.isZooming) {\n return false;\n } // check if is some button\n\n\n if (this.checkIfIsButton(event)) {\n return false;\n } // clear interval\n\n\n clearInterval(this.swipeInterval);\n this.swipeAnimation = null; // starts swipe\n\n this.isDraggingSwipe = true;\n this.initialMouseX = this.getMouseXPosFromEvent(event);\n this.initialMouseY = this.getMouseYPosFromEvent(event);\n },\n // continue swipe event\n continueSwipe: function continueSwipe(event) {\n if (this.isDraggingSwipe) {\n this.IsSwipping = true;\n var currentPosX = this.getMouseXPosFromEvent(event);\n var currentPosY = this.getMouseYPosFromEvent(event);\n var windowWidth = this.lightboxInnerWidth; // diffs\n\n var diffX = Math.abs(currentPosX - this.initialMouseX);\n var diffY = Math.abs(currentPosY - this.initialMouseY); // swipe type\n\n if (this.swipeType == null) {\n if (diffY > 5 || diffX > 5) {\n if (diffY > diffX) {\n this.swipeType = 'v';\n } else {\n this.swipeType = 'h';\n }\n }\n } // swipe\n\n\n if (this.swipeType == 'h') {\n // swipe wrapper\n if (this.dir === 'rtl') {\n this.xSwipeWrapper = windowWidth * this.imgIndex + currentPosX - this.initialMouseX + 30 * this.imgIndex;\n } else {\n this.xSwipeWrapper = -(windowWidth * this.imgIndex) + currentPosX - this.initialMouseX - 30 * this.imgIndex;\n }\n } else {\n this.ySwipeWrapper = currentPosY - this.initialMouseY;\n } // mobile caseS\n\n\n if (event.type === 'touchmove') {\n this.endMouseX = this.getMouseXPosFromEvent(event);\n this.endMouseY = this.getMouseYPosFromEvent(event);\n }\n }\n },\n // end swipe event\n endSwipe: function endSwipe(event) {\n if (this.checkIfIsButton(event) && this.initialMouseX === 0) {\n return false;\n } // event check is dragging and swipe\n\n\n var self = this;\n var swipeType = this.swipeType;\n this.isDraggingSwipe = false; // horizontal swipe type\n\n if (this.initialMouseX === 0 && swipeType == 'h') {\n return false;\n } // touch end fixes\n\n\n if (event.type !== 'touchend') {\n this.endMouseX = this.getMouseXPosFromEvent(event);\n this.endMouseY = this.getMouseYPosFromEvent(event);\n } else {\n if (this.endMouseX === 0) {\n return;\n }\n } // check if is dragged \n\n\n if (this.endMouseX - this.initialMouseX === 0 && swipeType == 'h' || this.isZooming || this.endMouseY - this.initialMouseY === 0 && swipeType == 'v') {\n return;\n } // set swipe animation\n\n\n this.setSwipeAnimation(); // reset swipe data\n\n setTimeout(function () {\n self.IsSwipping = false;\n self.initialMouseX = 0;\n self.endMouseX = 0;\n }, 10); // type of swipe\n\n if (this.swipeType === 'h') {\n // if the swipe is to the right\n if (this.endMouseX - this.initialMouseX < -40) {\n if (this.dir === 'rtl') {\n return this.swipeToLeft();\n }\n\n return this.swipeToRight();\n } // if the swipe is to the left\n\n\n if (this.endMouseX - this.initialMouseX > 40) {\n if (this.dir === 'rtl') {\n return this.swipeToRight();\n }\n\n return this.swipeToLeft();\n }\n }\n\n if (this.swipeType === 'v') {\n var diffY = Math.abs(this.endMouseY - this.initialMouseY); // diff Y\n\n if (diffY >= 90) {\n this.close();\n } else {\n this.ySwipeWrapper = 0;\n }\n }\n\n this.swipeType = null;\n var windowWidth = this.lightboxInnerWidth;\n\n if (this.dir === 'rtl') {\n this.xSwipeWrapper = this.imgIndex * windowWidth + 30 * this.imgIndex;\n return;\n }\n\n this.xSwipeWrapper = -this.imgIndex * windowWidth - 30 * this.imgIndex;\n },\n // swipe to left effect\n swipeToLeft: function swipeToLeft() {\n if (!this.hasPrevious && this.effect === 'swipe') {\n if (this.dir === 'rtl') {\n return this.xSwipeWrapper = this.imgIndex * this.lightboxInnerWidth + 30 * this.imgIndex;\n }\n\n return this.xSwipeWrapper = -this.imgIndex * this.lightboxInnerWidth - 30 * this.imgIndex;\n }\n\n this.changeIndexToPrev();\n },\n // swipe to right effect\n swipeToRight: function swipeToRight() {\n if (!this.hasNext && this.effect === 'swipe') {\n if (this.dir === 'rtl') {\n return this.xSwipeWrapper = this.imgIndex * this.lightboxInnerWidth + 30 * this.imgIndex;\n }\n\n return this.xSwipeWrapper = -this.imgIndex * this.lightboxInnerWidth - 30 * this.imgIndex;\n }\n\n this.changeIndexToNext();\n },\n // function that return x position from event\n getMouseXPosFromEvent: function getMouseXPosFromEvent(event) {\n if (event.type.indexOf('mouse') !== -1) {\n return event.clientX;\n }\n\n return event.touches[0].clientX;\n },\n // function that return Y position from event\n getMouseYPosFromEvent: function getMouseYPosFromEvent(event) {\n if (event.type.indexOf('mouse') !== -1) {\n return event.clientY;\n }\n\n return event.touches[0].clientY;\n },\n // check if the image is cached\n is_cached: function is_cached(src) {\n var image = new Image();\n image.src = src;\n return image.complete;\n },\n // image loaded event\n imageLoaded: function imageLoaded() {\n this.imageLoading = false;\n },\n // get video url\n itemThumb: function itemThumb(itemUrl, itemIndex) {\n var thumb = this.getItemThumb(itemIndex);\n\n if (thumb) {\n return thumb;\n }\n\n var youtubeID = this.getYoutubeID(itemUrl);\n\n if (youtubeID) {\n return 'https://img.youtube.com/vi/' + youtubeID + '/mqdefault.jpg';\n }\n\n var vimeoID = this.getVimeoID(itemUrl);\n\n if (vimeoID) {\n return false;\n }\n\n return itemUrl;\n },\n // get item src\n getItemSrc: function getItemSrc(imgIndex) {\n if (imgIndex === null) {\n return false;\n }\n\n var item = this.items[imgIndex];\n\n if (this.checkIfIsObject(imgIndex)) {\n return item[this.srcName];\n }\n\n return item;\n },\n getItemAlt: function getItemAlt(imgIndex) {\n if (imgIndex === null) {\n return false;\n }\n\n var item = this.items[imgIndex];\n\n if (this.checkIfIsObject(imgIndex)) {\n return item.alt;\n }\n\n return null;\n },\n getItemThumb: function getItemThumb(imgIndex) {\n if (imgIndex === null) {\n return false;\n }\n\n var item = this.items[imgIndex];\n\n if (this.checkIfIsObject(imgIndex)) {\n return item[this.srcThumb];\n }\n\n if (this.getVideoUrl(item)) {\n return false;\n }\n\n return item;\n },\n // get item media type\n getMediaType: function getMediaType(imgIndex) {\n if (imgIndex === null) {\n return false;\n }\n\n if (this.checkIfIsObject(imgIndex)) {\n var item$1 = this.items[imgIndex]; //item type is specified, so return it\n\n if (item$1[this.srcMediaType]) {\n return item$1[this.srcMediaType];\n }\n }\n\n if (this.getVideoUrl(this.getItemSrc(imgIndex))) {\n return 'video';\n } else if (this.getPDFurl(this.getItemSrc(imgIndex))) {\n return 'iframe';\n } else {\n return 'image';\n }\n },\n // toggle play slideshow event\n togglePlaySlideshow: function togglePlaySlideshow() {\n if (!this.slideshow) {\n return false;\n }\n\n if (!this.hasNext && !this.loopData) {\n return false;\n }\n\n this.isPlayingSlideShow = !this.isPlayingSlideShow; // if is playing move if not stop it\n\n if (this.isPlayingSlideShow) {\n this.move();\n } else {\n this.stopSlideShow();\n }\n },\n // stop slideshow\n stopSlideShow: function stopSlideShow() {\n this.isPlayingSlideShow = false;\n clearInterval(this.intervalProgress);\n this.stylesInterval = {\n 'transform': 'scaleX(0)',\n 'transition': 'none'\n };\n },\n // move event in zoom\n move: function move() {\n var self = this;\n this.progressWidth = 100;\n this.intervalProgress = setInterval(frame, this.slideshowDuration + 90);\n self.stylesInterval = {\n 'transform': 'scaleX(1)',\n 'background': this.slideshowColorBar,\n 'transition-duration': this.slideshowDuration + 'ms'\n };\n\n function frame() {\n self.stylesInterval = {\n 'transform': 'scaleX(0)',\n 'transition': 'none'\n };\n\n if (self.dir === 'rtl') {\n self.onPrevClick(true);\n } else {\n self.onNextClick(true);\n }\n\n if (!self.hasNext && !self.loopData) {\n self.stopSlideShow();\n } else {\n setTimeout(function () {\n self.stylesInterval = {\n 'transform': 'scaleX(1)',\n 'background': self.slideshowColorBar,\n 'transition-duration': self.slideshowDuration + 'ms'\n };\n }, 50);\n }\n }\n },\n // show buttons event\n showButtons: function showButtons(event) {\n if (!this.checkIfIsButton(event)) {\n var self = this;\n setTimeout(function () {\n self.buttonsVisible = !self.buttonsVisible;\n }, 100);\n }\n },\n // check if is allowed to drag\n checkMouseEventPropButton: function checkMouseEventPropButton(button) {\n if (!this.isZooming) {\n return false;\n } // mouse left btn click\n\n\n return button === 0;\n },\n // handle mouse down event\n handleMouseDown: function handleMouseDown(e) {\n if (!this.checkMouseEventPropButton(e.button)) {\n return;\n }\n\n this.lastX = e.clientX;\n this.lastY = e.clientY;\n this.isDraging = true;\n e.stopPropagation();\n },\n // handle mouse up event\n handleMouseUp: function handleMouseUp(e) {\n if (!this.checkMouseEventPropButton(e.button)) {\n return;\n }\n\n this.isDraging = false;\n this.lastX = this.lastY = 0; // Fix drag zoom out\n\n var thisContext = this;\n setTimeout(function () {\n thisContext.canZoom = true;\n }, 100);\n },\n // handle mouse move event\n handleMouseMove: function handleMouseMove(e) {\n if (!this.checkMouseEventPropButton(e.button)) {\n return;\n }\n\n if (this.isDraging) {\n this.top = this.top - this.lastY + e.clientY;\n this.left = this.left - this.lastX + e.clientX;\n this.lastX = e.clientX;\n this.lastY = e.clientY;\n this.canZoom = false;\n var item = e.target.parentNode;\n var newZoom = 1.6 + this.zoomBar / 10;\n item.style.transform = 'translate3d(calc(-50% + ' + this.left + 'px), calc(-50% + ' + this.top + 'px), 0px) scale3d(' + newZoom + ', ' + newZoom + ', ' + newZoom + ')';\n }\n\n e.stopPropagation();\n },\n // zoom image event\n zoomImage: function zoomImage(indexImage) {\n if (this.disableZoom) {\n return false;\n }\n\n if (window.innerWidth < 700) {\n return false;\n }\n\n if (!this.canZoom) {\n return false;\n }\n\n if (this.IsSwipping) {\n return false;\n } // item zoom\n\n\n var item;\n\n if (this.effect == 'swipe') {\n item = this.$refs.items[this.imgIndex].childNodes[0];\n } else {\n item = this.$refs.items.childNodes[0];\n } // zoom variables\n\n\n var isZooming = this.isZooming;\n var thisContext = this; // Is zooming check\n\n if (isZooming) {\n if (!this.isDraging) {\n this.isZooming = false;\n this.zoomBar = 0;\n }\n } else {\n this.isZooming = true;\n } // check if is zooming\n\n\n if (this.isZooming) {\n this.stopSlideShow(); // add scale\n\n item.style.transform = 'translate3d(calc(-50%), calc(-50%), 0px) scale3d(1.6, 1.6, 1.6)'; // hide buttons\n\n this.buttonsVisible = false; // fix drag transition problems\n\n setTimeout(function () {\n thisContext.transition = 'all .0s ease';\n }, 100);\n } else {\n // show buttons \n this.buttonsVisible = true;\n this.resetZoom();\n }\n },\n // Reset zoom data\n resetZoom: function resetZoom() {\n this.scale = 1;\n this.left = 0;\n this.top = 0;\n this.zoomBar = 0;\n this.isZooming = false;\n this.swipeType = null;\n this.transition = 'all .3s ease'; // only if index is not null\n\n if (this.imgIndex != null) {\n var item;\n\n if (this.effect == 'swipe') {\n item = this.$refs.items[this.imgIndex].childNodes[0];\n } else {\n item = this.$refs.items.childNodes[0];\n } // reset styles\n\n\n if (this.disableZoom) {\n item.style.transform = 'translate3d(calc(-50% + ' + this.left + 'px), calc(-50% + ' + this.top + 'px), 0px)';\n } else {\n item.style.transform = 'translate3d(calc(-50% + ' + this.left + 'px), calc(-50% + ' + this.top + 'px), 0px) scale3d(1, 1, 1)';\n }\n\n this.initialMouseX = 0;\n\n if (window.innerWidth >= 700) {\n this.buttonsVisible = true;\n }\n }\n },\n // Aspect Ratio responsive video\n setAspectRatioVideo: function setAspectRatioVideo() {\n var thisContext = this;\n var el = document.getElementsByClassName('cool-lightbox__inner');\n el = el[0];\n var computedStyle = getComputedStyle(el);\n\n if (window.innerWidth < 700) {\n var width = el.clientWidth;\n var height = Math.round(width / 16 * 9);\n this.aspectRatioVideo.height = height + 'px';\n this.aspectRatioVideo.width = width + 'px';\n } else {\n setTimeout(function () {\n var height = el.clientHeight;\n height -= parseFloat(computedStyle.paddingTop) + parseFloat(computedStyle.paddingBottom);\n var width = height / 9 * 16;\n thisContext.aspectRatioVideo.height = height + 'px';\n thisContext.aspectRatioVideo.width = width + 'px';\n }, 150);\n }\n },\n // close event\n close: function close() {\n this.stopSlideShow();\n this.swipeType = null;\n this.$emit(\"close\", this.imgIndex);\n this.showThumbs = false;\n this.imgIndex = null;\n },\n wheelEvent: function wheelEvent(event) {\n var delay = 350;\n var currentTime = new Date().getTime();\n var direction = event.deltaY > 0 ? 'top' : 'down';\n\n if (currentTime - this.prevTime < delay) {\n return;\n }\n\n this.prevTime = currentTime;\n\n switch (direction) {\n case 'top':\n return this.changeIndexToPrev();\n\n case 'down':\n return this.changeIndexToNext();\n }\n },\n // close event click outside\n closeModal: function closeModal(event) {\n if (!this.closeOnClickOutsideMobile) {\n if (window.innerWidth < 700) {\n return false;\n }\n }\n\n if (this.IsSwipping) {\n return false;\n }\n\n var elements = '.cool-lightbox-zoom, .cool-lightbox-zoom *, .cool-lightbox-thumbs, svg, path, rect, .cool-lightbox-thumbs *, .cool-lightbox-button, .cool-lightbox-toolbar__btn, .cool-lightbox-toolbar__btn *, .cool-lightbox-button *, .cool-lightbox__slide__img *, .cool-lightbox-video, .cool-lightbox-caption h6, .cool-lightbox-caption p, .cool-lightbox-caption a';\n\n if (!event.target.matches(elements)) {\n this.close();\n }\n },\n // set swipe animation\n setSwipeAnimation: function setSwipeAnimation() {\n var self = this;\n clearInterval(this.swipeInterval);\n this.swipeAnimation = null; // animation swipe\n\n this.swipeAnimation = 'all .3s ease';\n this.swipeInterval = setInterval(interval, 330);\n\n function interval() {\n self.swipeAnimation = null;\n }\n },\n // next slide event\n onNextClick: function onNextClick(isFromSlideshow) {\n if (isFromSlideshow === void 0) isFromSlideshow = false;\n\n if (this.isZooming) {\n return false;\n }\n\n if (!isFromSlideshow) {\n this.stopSlideShow();\n }\n\n this.setSwipeAnimation();\n\n if (this.dir === 'rtl') {\n return this.changeIndexToPrev();\n }\n\n this.changeIndexToNext();\n },\n // prev slide event\n onPrevClick: function onPrevClick(isFromSlideshow) {\n if (isFromSlideshow === void 0) isFromSlideshow = false;\n\n if (this.isZooming) {\n return false;\n }\n\n if (!isFromSlideshow) {\n this.stopSlideShow();\n }\n\n this.setSwipeAnimation();\n\n if (this.dir === 'rtl') {\n return this.changeIndexToNext();\n }\n\n this.changeIndexToPrev();\n },\n // change to next index\n changeIndexToNext: function changeIndexToNext() {\n if (this.hasNext) {\n this.onIndexChange(this.imgIndex + 1);\n } else {\n // only if has loop prop\n if (this.loopData) {\n this.onIndexChange(0);\n }\n }\n },\n // change to prev index\n changeIndexToPrev: function changeIndexToPrev() {\n if (this.hasPrevious) {\n this.onIndexChange(this.imgIndex - 1);\n } else {\n // only if has loop prop\n if (this.loopData) {\n this.onIndexChange(this.items.length - 1);\n }\n }\n },\n // set lightbox inner width\n setLightboxInnerWidth: function setLightboxInnerWidth() {\n var el = document.getElementsByClassName('cool-lightbox__inner');\n var width = el[0].clientWidth;\n this.lightboxInnerWidth = width;\n },\n // x position on resize event\n xPositionOnResize: function xPositionOnResize() {\n this.setLightboxInnerWidth();\n var index = this.imgIndex;\n\n if (this.dir === 'rtl') {\n this.xSwipeWrapper = index * this.lightboxInnerWidth + 30 * index;\n return;\n } // set x position\n\n\n this.xSwipeWrapper = -index * this.lightboxInnerWidth - 30 * index;\n },\n // set x position by img index\n setXPosition: function setXPosition(index) {\n if (this.dir === 'rtl') {\n this.xSwipeWrapper = index * this.lightboxInnerWidth + 30 * index;\n return;\n } // set x position\n\n\n this.xSwipeWrapper = -index * this.lightboxInnerWidth - 30 * index;\n return;\n },\n // index change\n onIndexChange: function onIndexChange(index) {\n this.imgIndex = index;\n this.$emit('on-change', index);\n },\n // caption size \n addCaptionPadding: function addCaptionPadding() {\n if (this.checkIfIsObject(this.imgIndex) && (this.items[this.imgIndex].title || this.items[this.imgIndex].descripcion)) {\n var el = document.getElementsByClassName('cool-lightbox-caption');\n\n if (el.length > 0) {\n this.paddingBottom = el[0].offsetHeight;\n }\n } else {\n this.paddingBottom = 60;\n }\n },\n getPDFurl: function getPDFurl(url) {\n if (this.imgIndex === null) {\n return false;\n }\n\n var str = new String(url);\n\n if (str.endsWith('.pdf')) {\n return url;\n }\n\n return false;\n },\n // check if is video\n getVideoUrl: function getVideoUrl(itemSrc) {\n var youtubeUrl = this.getYoutubeUrl(itemSrc);\n var vimeoUrl = this.getVimeoUrl(itemSrc);\n var mp4Url = this.checkIsMp4(itemSrc);\n\n if (youtubeUrl) {\n return youtubeUrl;\n }\n\n if (vimeoUrl) {\n return vimeoUrl;\n }\n\n if (mp4Url) {\n return mp4Url;\n }\n\n return false;\n },\n // getYoutube ID\n getYoutubeID: function getYoutubeID(url) {\n // youtube data\n var youtubeRegex = /^(?:https?:\\/\\/)?(?:www\\.)?(?:youtu\\.be\\/|youtube\\.com\\/(?:embed\\/|v\\/|watch\\?v=|watch\\?.+&v=))((\\w|-){11})(?:\\S+)?$/;\n var ytId = url.match(youtubeRegex) ? RegExp.$1 : false;\n\n if (ytId) {\n return ytId;\n }\n\n return false;\n },\n // get youtube url\n getYoutubeUrl: function getYoutubeUrl(url) {\n // youtube data\n var ytId = this.getYoutubeID(url); // if is youtube video\n\n if (ytId) {\n // check if allows youtube cookies\n if (this.youtubeCookies) {\n return 'https://www.youtube.com/embed/' + ytId;\n }\n\n return 'https://www.youtube-nocookie.com/embed/' + ytId;\n }\n\n return false;\n },\n // vimeo ID\n getVimeoID: function getVimeoID(url) {\n // if is vimeo video\n var result = url.match(/(?:www\\.|player\\.)?vimeo.com\\/(?:channels\\/(?:\\w+\\/)?|groups\\/(?:[^\\/]*)\\/videos\\/|album\\/(?:\\d+)\\/video\\/|video\\/|)(\\d+)(?:[a-zA-Z0-9_\\-]+)?/i);\n\n if (result !== null) {\n return result[1];\n }\n\n return false;\n },\n // get vimeo url\n getVimeoUrl: function getVimeoUrl(url) {\n // if is vimeo video\n var result = url.match(/(?:www\\.|player\\.)?vimeo.com\\/(?:channels\\/(?:\\w+\\/)?|groups\\/(?:[^\\/]*)\\/videos\\/|album\\/(?:\\d+)\\/video\\/|video\\/|)(\\d+)(?:[a-zA-Z0-9_\\-]+)?/i);\n\n if (result !== null) {\n return '//player.vimeo.com/video/' + result[1] + '?hd=1&show_title=1&show_byline=1&show_portrait=0&fullscreen=1';\n }\n\n return false;\n },\n // check if video is mp4\n checkIsMp4: function checkIsMp4(url) {\n if (this.imgIndex === null) {\n return false;\n }\n\n var str = new String(url);\n\n if (str.indexOf('.mp4') !== -1 || str.indexOf('.mov') !== -1 || str.indexOf('.webm') !== -1 || str.indexOf('.ogg') !== -1 || str.indexOf('.avi') !== -1) {\n return url;\n }\n\n return false;\n },\n // if is video get extension\n getVideoExt: function getVideoExt(url) {\n if (this.imgIndex === null) {\n return false;\n }\n\n var str = new String(url);\n\n if (str.indexOf('.mp4') !== -1 || str.indexOf('.mov') !== -1) {\n return 'mp4';\n }\n\n if (str.indexOf('.webm') !== -1) {\n return 'webm';\n }\n\n if (str.indexOf('.ogg') !== -1) {\n return 'ogg';\n }\n\n if (str.indexOf('.avi') !== -1) {\n return 'avi';\n }\n\n return false;\n },\n // check if item is object\n checkIfIsObject: function checkIfIsObject(itemIndex) {\n var item = this.items[itemIndex];\n\n if (typeof item === 'object' && item !== null) {\n return true;\n }\n\n return false;\n },\n // arrows and escape events\n eventListener: function eventListener(e) {\n switch (e.keyCode) {\n case 39:\n return this.onNextClick();\n\n case 37:\n return this.onPrevClick();\n\n case 38:\n case 40:\n case ' ':\n return e.preventDefault();\n\n case 27:\n return this.close();\n }\n }\n },\n computed: {\n // Images wrapper styles to use drag and zoom\n imgWrapperStyle: function imgWrapperStyle() {\n return {\n top: \"50%\",\n left: \"50%\",\n transition: this.transition\n };\n },\n // lightbox styles\n lightboxStyles: function lightboxStyles() {\n return {\n 'z-index': this.zIndex,\n 'background-color': this.overlayColor\n };\n },\n innerStyles: function innerStyles() {\n return {\n 'padding-bottom': this.paddingBottom + 'px'\n };\n },\n // get item src\n itemSrc: function itemSrc() {\n if (this.imgIndex === null) {\n return false;\n }\n\n var item = this.items[this.imgIndex];\n\n if (this.checkIfIsObject(this.imgIndex)) {\n return item[this.srcName];\n }\n\n return item;\n },\n // Lightbox classes\n lightboxClasses: function lightboxClasses() {\n var classesReturn = [{\n 'cool-lightbox--can-zoom': this.canZoom && !this.disableZoom\n }, {\n 'cool-lightbox--zoom-disabled': this.disableZoom\n }, {\n 'cool-lightbox--is-zooming': this.isZooming\n }, {\n 'cool-lightbox--show-thumbs': this.showThumbs\n }, {\n 'cool-lightbox--is-swipping': this.isDraggingSwipe\n }];\n var classString = 'cool-lightbox--thumbs-' + this.thumbsPosition;\n classesReturn.push(classString);\n return classesReturn;\n },\n // Buttons classes\n buttonsClasses: function buttonsClasses() {\n return {\n 'hidden': !this.buttonsVisible\n };\n },\n // check if the slide has next element\n hasNextButton: function hasNextButton() {\n if (this.dir === 'rtl') {\n return this.imgIndex - 1 >= 0;\n }\n\n return this.imgIndex + 1 < this.items.length;\n },\n // check if the slide has previous element \n hasPreviousButton: function hasPreviousButton() {\n if (this.dir === 'rtl') {\n return this.imgIndex + 1 < this.items.length;\n }\n\n return this.imgIndex - 1 >= 0;\n },\n // check if the slide has next element\n hasNext: function hasNext() {\n return this.imgIndex + 1 < this.items.length;\n },\n // check if the slide has previous element \n hasPrevious: function hasPrevious() {\n return this.imgIndex - 1 >= 0;\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function () {\n style.call(this, createInjectorShadow(this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\nvar normalizeComponent_1 = normalizeComponent;\n/* script */\n\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function () {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-modal\"\n }\n }, [_vm.isVisible ? _c('div', {\n ref: \"coolLightbox\",\n staticClass: \"cool-lightbox\",\n class: _vm.lightboxClasses,\n style: _vm.lightboxStyles,\n on: {\n \"click\": _vm.closeModal\n }\n }, [_vm.gallery ? _c('div', {\n staticClass: \"cool-lightbox-thumbs\"\n }, [_c('div', {\n staticClass: \"cool-lightbox-thumbs__list\"\n }, _vm._l(_vm.items, function (item, itemIndex) {\n return _c('button', {\n key: itemIndex,\n staticClass: \"cool-lightbox__thumb\",\n class: {\n active: itemIndex === _vm.imgIndex,\n 'is-video': _vm.getMediaType(itemIndex) === 'video'\n },\n attrs: {\n \"type\": \"button\"\n },\n on: {\n \"click\": function ($event) {\n _vm.imgIndex = itemIndex;\n }\n }\n }, [_vm.getMediaType(itemIndex) === 'video' ? _c('svg', {\n staticClass: \"cool-lightbox__thumb__icon\",\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 24 24\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M6.5 5.4v13.2l11-6.6z\"\n }\n })]) : _vm._e(), _vm._v(\" \"), _c('img', {\n attrs: {\n \"src\": _vm.itemThumb(_vm.getItemSrc(itemIndex), itemIndex),\n \"alt\": \"\"\n }\n })]);\n }), 0)]) : _vm._e(), _vm._v(\" \"), _c('div', {\n staticClass: \"cool-lightbox__inner\",\n style: _vm.innerStyles,\n on: {\n \"mousedown\": _vm.startSwipe,\n \"mousemove\": _vm.continueSwipe,\n \"mouseup\": _vm.endSwipe,\n \"touchstart\": _vm.startSwipe,\n \"touchmove\": _vm.continueSwipe,\n \"touchend\": _vm.endSwipe\n }\n }, [_c('div', {\n staticClass: \"cool-lightbox__progressbar\",\n style: _vm.stylesInterval\n }), _vm._v(\" \"), _c('div', {\n staticClass: \"cool-lightbox__navigation\"\n }, [_c('button', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: (_vm.hasPreviousButton || _vm.loopData) && _vm.items.length > 1,\n expression: \"(hasPreviousButton || loopData) && items.length > 1\"\n }],\n staticClass: \"cool-lightbox-button cool-lightbox-button--prev\",\n class: _vm.buttonsClasses,\n attrs: {\n \"type\": \"button\",\n \"title\": \"Previous\"\n },\n on: {\n \"click\": _vm.onPrevClick\n }\n }, [_vm._t(\"icon-previous\", [_c('div', {\n staticClass: \"cool-lightbox-button__icon\"\n }, [_c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 24 24\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M11.28 15.7l-1.34 1.37L5 12l4.94-5.07 1.34 1.38-2.68 2.72H19v1.94H8.6z\"\n }\n })])])])], 2), _vm._v(\" \"), _c('button', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: (_vm.hasNextButton || _vm.loopData) && _vm.items.length > 1,\n expression: \"(hasNextButton || loopData) && items.length > 1\"\n }],\n staticClass: \"cool-lightbox-button cool-lightbox-button--next\",\n class: _vm.buttonsClasses,\n attrs: {\n \"type\": \"button\",\n \"title\": \"Next\"\n },\n on: {\n \"click\": function ($event) {\n return _vm.onNextClick(false);\n }\n }\n }, [_vm._t(\"icon-next\", [_c('div', {\n staticClass: \"cool-lightbox-button__icon\"\n }, [_c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 24 24\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M15.4 12.97l-2.68 2.72 1.34 1.38L19 12l-4.94-5.07-1.34 1.38 2.68 2.72H5v1.94z\"\n }\n })])])])], 2)]), _vm._v(\" \"), _vm.effect === 'swipe' ? _c('div', {\n staticClass: \"cool-lightbox__wrapper cool-lightbox__wrapper--swipe\",\n style: {\n transform: 'translate3d(' + _vm.xSwipeWrapper + 'px, ' + _vm.ySwipeWrapper + 'px, 0)',\n transition: _vm.swipeAnimation\n }\n }, _vm._l(_vm.items, function (item, itemIndex) {\n return _c('div', {\n key: itemIndex,\n ref: \"items\",\n refInFor: true,\n staticClass: \"cool-lightbox__slide\",\n class: {\n 'cool-lightbox__slide--current': itemIndex === _vm.imgIndex\n }\n }, [_vm.getMediaType(itemIndex) === 'image' ? _c('div', {\n directives: [{\n name: \"lazyload\",\n rawName: \"v-lazyload\"\n }],\n key: \"image\",\n staticClass: \"cool-lightbox__slide__img\",\n style: _vm.imgWrapperStyle\n }, [_c('img', {\n key: itemIndex,\n attrs: {\n \"data-url\": _vm.getItemSrc(itemIndex),\n \"draggable\": \"false\",\n \"alt\": _vm.getItemAlt(itemIndex)\n },\n on: {\n \"load\": _vm.imageLoaded,\n \"click\": function ($event) {\n return _vm.zoomImage(itemIndex);\n },\n \"mousedown\": function ($event) {\n return _vm.handleMouseDown($event);\n },\n \"mouseup\": function ($event) {\n return _vm.handleMouseUp($event);\n },\n \"mousemove\": function ($event) {\n return _vm.handleMouseMove($event);\n },\n \"touchstart\": function ($event) {\n return _vm.handleMouseDown($event);\n },\n \"touchmove\": function ($event) {\n return _vm.handleMouseMove($event);\n },\n \"touchend\": function ($event) {\n return _vm.handleMouseUp($event);\n }\n }\n }), _vm._v(\" \"), _c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.imageLoading,\n expression: \"imageLoading\"\n }],\n staticClass: \"cool-lightbox-loading-wrapper\"\n }, [_vm._t(\"loading\", [_c('div', {\n staticClass: \"cool-lightbox-loading\"\n })])], 2)]) : _c('div', {\n key: \"video\",\n staticClass: \"cool-lightbox__iframe\"\n }, [!_vm.checkIsMp4(_vm.getItemSrc(itemIndex)) && _vm.getMediaType(itemIndex) === 'video' ? _c('iframe', {\n directives: [{\n name: \"autoplayObserver\",\n rawName: \"v-autoplayObserver\"\n }],\n key: itemIndex,\n staticClass: \"cool-lightbox-video\",\n style: _vm.aspectRatioVideo,\n attrs: {\n \"data-autoplay\": _vm.setAutoplay(itemIndex),\n \"src\": _vm.getVideoUrl(_vm.getItemSrc(itemIndex)),\n \"frameborder\": \"0\",\n \"allow\": \"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\",\n \"allowfullscreen\": \"\"\n }\n }) : _vm._e(), _vm._v(\" \"), _vm.getMediaType(itemIndex) === 'iframe' || _vm.getPDFurl(_vm.getItemSrc(itemIndex)) ? _c('iframe', {\n key: itemIndex,\n staticClass: \"cool-lightbox-pdf\",\n attrs: {\n \"src\": _vm.getItemSrc(itemIndex),\n \"frameborder\": \"0\",\n \"allowfullscreen\": \"\"\n }\n }) : _vm._e(), _vm._v(\" \"), _vm.checkIsMp4(_vm.getItemSrc(itemIndex)) && _vm.getMediaType(itemIndex) === 'video' ? _c('video', {\n directives: [{\n name: \"autoplayObserver\",\n rawName: \"v-autoplayObserver\"\n }],\n key: _vm.checkIsMp4(_vm.getItemSrc(itemIndex)),\n staticClass: \"cool-lightbox-video\",\n style: _vm.aspectRatioVideo,\n attrs: {\n \"data-autoplay\": _vm.setAutoplay(itemIndex),\n \"controls\": \"\",\n \"controlslist\": \"nodownload\",\n \"l\": \"\",\n \"poster\": \"\"\n }\n }, [_c('source', {\n attrs: {\n \"src\": _vm.checkIsMp4(_vm.getItemSrc(itemIndex)),\n \"type\": 'video/' + _vm.getVideoExt(_vm.getItemSrc(itemIndex))\n }\n }), _vm._v(\"\\n Sorry, your browser doesn't support embedded videos\\n \")]) : _vm._e()])]);\n }), 0) : _vm._e(), _vm._v(\" \"), _vm.effect === 'fade' ? _c('div', {\n staticClass: \"cool-lightbox__wrapper\"\n }, [_c('div', {\n ref: \"items\",\n staticClass: \"cool-lightbox__slide cool-lightbox__slide--current\"\n }, [_c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-slide-change\",\n \"mode\": \"out-in\"\n }\n }, [_vm.getMediaType(_vm.imgIndex) === 'image' ? _c('div', {\n key: \"image\",\n staticClass: \"cool-lightbox__slide__img\",\n style: _vm.imgWrapperStyle\n }, [_c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-slide-change\",\n \"mode\": \"out-in\"\n }\n }, [_c('img', {\n key: _vm.imgIndex,\n attrs: {\n \"src\": _vm.getItemSrc(_vm.imgIndex),\n \"draggable\": \"false\",\n \"alt\": _vm.getItemAlt(_vm.imgIndex)\n },\n on: {\n \"load\": _vm.imageLoaded,\n \"click\": _vm.zoomImage,\n \"mousedown\": function ($event) {\n return _vm.handleMouseDown($event);\n },\n \"mouseup\": function ($event) {\n return _vm.handleMouseUp($event);\n },\n \"mousemove\": function ($event) {\n return _vm.handleMouseMove($event);\n }\n }\n })]), _vm._v(\" \"), _c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.imageLoading,\n expression: \"imageLoading\"\n }],\n staticClass: \"cool-lightbox-loading-wrapper\"\n }, [_vm._t(\"loading\", [_c('div', {\n staticClass: \"cool-lightbox-loading\"\n })])], 2)], 1) : _c('div', {\n key: \"video\",\n staticClass: \"cool-lightbox__iframe\"\n }, [_c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-slide-change\",\n \"mode\": \"out-in\"\n }\n }, [!_vm.checkIsMp4(_vm.getItemSrc(_vm.imgIndex)) && _vm.getMediaType(_vm.imgIndex) === 'video' ? _c('iframe', {\n directives: [{\n name: \"autoplayObserver\",\n rawName: \"v-autoplayObserver\"\n }],\n key: _vm.getVideoUrl(_vm.getItemSrc(_vm.imgIndex)),\n staticClass: \"cool-lightbox-video\",\n style: _vm.aspectRatioVideo,\n attrs: {\n \"data-autoplay\": _vm.setAutoplay(_vm.imgIndex),\n \"src\": _vm.getVideoUrl(_vm.getItemSrc(_vm.imgIndex)),\n \"frameborder\": \"0\",\n \"allow\": \"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\",\n \"allowfullscreen\": \"\"\n }\n }) : _vm._e(), _vm._v(\" \"), _vm.getMediaType(_vm.imgIndex) === 'iframe' || _vm.getPDFurl(_vm.getItemSrc(_vm.imgIndex)) ? _c('iframe', {\n key: _vm.imgIndex,\n staticClass: \"cool-lightbox-pdf\",\n attrs: {\n \"src\": _vm.getItemSrc(_vm.imgIndex),\n \"frameborder\": \"0\",\n \"allowfullscreen\": \"\"\n }\n }) : _vm._e(), _vm._v(\" \"), _vm.checkIsMp4(_vm.getItemSrc(_vm.imgIndex)) && _vm.getMediaType(_vm.imgIndex) === 'video' ? _c('video', {\n directives: [{\n name: \"autoplayObserver\",\n rawName: \"v-autoplayObserver\"\n }],\n key: _vm.checkIsMp4(_vm.getItemSrc(_vm.imgIndex)),\n staticClass: \"cool-lightbox-video\",\n style: _vm.aspectRatioVideo,\n attrs: {\n \"data-autoplay\": _vm.setAutoplay(_vm.imgIndex),\n \"controls\": \"\",\n \"controlslist\": \"nodownload\",\n \"poster\": \"\"\n }\n }, [_c('source', {\n attrs: {\n \"src\": _vm.checkIsMp4(_vm.getItemSrc(_vm.imgIndex)),\n \"type\": 'video/' + _vm.getVideoExt(_vm.getItemSrc(_vm.imgIndex))\n }\n }), _vm._v(\"\\n Sorry, your browser doesn't support embedded videos\\n \")]) : _vm._e()])], 1)])], 1)]) : _vm._e(), _vm._v(\" \"), _c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-modal\"\n }\n }, [_c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.checkIfIsObject(_vm.imgIndex) && (_vm.items[_vm.imgIndex].title || _vm.items[_vm.imgIndex].description),\n expression: \"checkIfIsObject(imgIndex) && (items[imgIndex].title || items[imgIndex].description)\"\n }],\n key: \"caption-block\",\n staticClass: \"cool-lightbox-caption\"\n }, [_c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-slide-change\",\n \"mode\": \"out-in\"\n }\n }, [_vm.checkIfIsObject(_vm.imgIndex) && _vm.items[_vm.imgIndex].title ? _c('h6', {\n key: \"title\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.items[_vm.imgIndex].title)\n }\n }) : _vm._e()]), _vm._v(\" \"), _c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-slide-change\",\n \"mode\": \"out-in\"\n }\n }, [_vm.checkIfIsObject(_vm.imgIndex) && _vm.items[_vm.imgIndex].description ? _c('p', {\n key: \"description\",\n domProps: {\n \"innerHTML\": _vm._s(_vm.items[_vm.imgIndex].description)\n }\n }) : _vm._e()])], 1)]), _vm._v(\" \"), _c('div', {\n staticClass: \"cool-lightbox-toolbar\",\n class: _vm.buttonsClasses\n }, [this.slideshow && _vm.items.length > 1 ? _c('button', {\n staticClass: \"cool-lightbox-toolbar__btn\",\n attrs: {\n \"type\": \"button\",\n \"title\": \"Play slideshow\"\n },\n on: {\n \"click\": _vm.togglePlaySlideshow\n }\n }, [!_vm.isPlayingSlideShow ? _c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 24 24\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M6.5 5.4v13.2l11-6.6z\"\n }\n })]) : _c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }\n }, [_c('g', [_c('rect', {\n attrs: {\n \"id\": \"svg_4\",\n \"height\": \"11.97529\",\n \"width\": \"11.728392\",\n \"y\": \"6.030873\",\n \"x\": \"6.259265\",\n \"stroke-width\": \"1.5\",\n \"stroke\": \"#000\",\n \"fill\": \"#000000\"\n }\n })])])]) : _vm._e(), _vm._v(\" \"), _vm.items.length > 1 && _vm.gallery ? _c('button', {\n staticClass: \"cool-lightbox-toolbar__btn\",\n attrs: {\n \"type\": \"button\",\n \"title\": \"Show thumbnails\"\n },\n on: {\n \"click\": function ($event) {\n _vm.showThumbs = !_vm.showThumbs;\n }\n }\n }, [_c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 24 24\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M14.59 14.59h3.76v3.76h-3.76v-3.76zm-4.47 \\n 0h3.76v3.76h-3.76v-3.76zm-4.47 0h3.76v3.76H5.65v-3.76zm8.94-4.47h3.76v3.76h-3.76v-3.76zm-4.47 \\n 0h3.76v3.76h-3.76v-3.76zm-4.47 0h3.76v3.76H5.65v-3.76zm8.94-4.47h3.76v3.76h-3.76V5.65zm-4.47 \\n 0h3.76v3.76h-3.76V5.65zm-4.47 0h3.76v3.76H5.65V5.65z\"\n }\n })])]) : _vm._e(), _vm._v(\" \"), _vm.fullScreen ? _c('button', {\n staticClass: \"cool-lightbox-toolbar__btn\",\n attrs: {\n \"type\": \"button\",\n \"title\": \"Fullscreen\"\n },\n on: {\n \"click\": _vm.toggleFullScreenMode\n }\n }, [_c('svg', {\n attrs: {\n \"width\": \"20px\",\n \"height\": \"20px\",\n \"viewBox\": \"0 0 18 18\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M4.5 11H3v4h4v-1.5H4.5V11zM3 7h1.5V4.5H7V3H3v4zm10.5 6.5H11V15h4v-4h-1.5v2.5zM11 3v1.5h2.5V7H15V3h-4z\"\n }\n })])]) : _vm._e(), _vm._v(\" \"), _vm.showCloseButton ? _c('button', {\n staticClass: \"cool-lightbox-toolbar__btn\",\n attrs: {\n \"type\": \"button\",\n \"title\": \"Close\"\n },\n on: {\n \"click\": _vm.close\n }\n }, [_vm._t(\"close\", [_c('svg', {\n attrs: {\n \"xmlns\": \"http://www.w3.org/2000/svg\",\n \"viewBox\": \"0 0 24 24\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"M12 10.6L6.6 5.2 5.2 6.6l5.4 5.4-5.4 5.4 1.4 1.4 5.4-5.4 5.4 5.4 1.4-1.4-5.4-5.4 5.4-5.4-1.4-1.4-5.4 5.4z\"\n }\n })])])], 2) : _vm._e()])], 1), _vm._v(\" \"), _c('transition', {\n attrs: {\n \"name\": \"cool-lightbox-modal\"\n }\n }, [_vm.isZooming && _vm.useZoomBar ? _c('div', {\n staticClass: \"cool-lightbox-zoom\"\n }, [_c('svg', {\n staticClass: \"cool-lightbox-zoom__icon\",\n attrs: {\n \"height\": \"469pt\",\n \"viewBox\": \"0 -192 469.33333 469\",\n \"width\": \"469pt\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"m437.332031.167969h-405.332031c-17.664062 \\n 0-32 14.335937-32 32v21.332031c0 17.664062 14.335938 32 32 32h405.332031c17.664063 0 32-14.335938 \\n 32-32v-21.332031c0-17.664063-14.335937-32-32-32zm0 0\"\n }\n })]), _vm._v(\" \"), _c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.zoomBar,\n expression: \"zoomBar\"\n }],\n attrs: {\n \"type\": \"range\",\n \"name\": \"points\",\n \"min\": \"0\",\n \"max\": \"50\"\n },\n domProps: {\n \"value\": _vm.zoomBar\n },\n on: {\n \"__r\": function ($event) {\n _vm.zoomBar = $event.target.value;\n }\n }\n }), _vm._v(\" \"), _c('svg', {\n staticClass: \"cool-lightbox-zoom__icon\",\n attrs: {\n \"height\": \"426.66667pt\",\n \"viewBox\": \"0 0 426.66667 426.66667\",\n \"width\": \"426.66667pt\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }\n }, [_c('path', {\n attrs: {\n \"d\": \"m405.332031 192h-170.664062v-170.667969c0-11.773437-9.558594-21.332031-21.335938-21.332031-11.773437 0-21.332031 \\n 9.558594-21.332031 21.332031v170.667969h-170.667969c-11.773437 0-21.332031 9.558594-21.332031 21.332031 0 \\n 11.777344 9.558594 21.335938 21.332031 21.335938h170.667969v170.664062c0 11.777344 9.558594 21.335938 21.332031 \\n 21.335938 11.777344 0 21.335938-9.558594 21.335938-21.335938v-170.664062h170.664062c11.777344 0 21.335938-9.558594 \\n 21.335938-21.335938 0-11.773437-9.558594-21.332031-21.335938-21.332031zm0 0\"\n }\n })])]) : _vm._e()])], 1) : _vm._e()]);\n};\n\nvar __vue_staticRenderFns__ = [];\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\nvar CoolLightBox = normalizeComponent_1({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, undefined, undefined);\n\nfunction install(Vue) {\n if (install.installed) {\n return;\n }\n\n install.installed = true;\n Vue.component(\"CoolLightBox\", CoolLightBox);\n}\n\nvar plugin = {\n install: install\n};\nvar GlobalVue = null;\n\nif (typeof window !== \"undefined\") {\n GlobalVue = window.Vue;\n} else if (typeof __webpack_require__.g !== \"undefined\") {\n GlobalVue = __webpack_require__.g.vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nCoolLightBox.install = install;\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CoolLightBox);\n\n//# sourceURL=webpack://materio.com/./node_modules/vue-cool-lightbox/dist/vue-cool-lightbox.esm.js?"); /***/ }), /***/ "./node_modules/vue-i18n/dist/vue-i18n.esm.js": /*!****************************************************!*\ !*** ./node_modules/vue-i18n/dist/vue-i18n.esm.js ***! \****************************************************/ /*! namespace exports */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__.r, __webpack_require__.d, __webpack_require__.* */ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => __WEBPACK_DEFAULT_EXPORT__\n/* harmony export */ });\n/*!\n * vue-i18n v8.22.2 \n * (c) 2020 kazuya kawaguchi\n * Released under the MIT License.\n */\n\n/* */\n\n/**\n * constants\n */\nvar numberFormatKeys = ['compactDisplay', 'currency', 'currencyDisplay', 'currencySign', 'localeMatcher', 'notation', 'numberingSystem', 'signDisplay', 'style', 'unit', 'unitDisplay', 'useGrouping', 'minimumIntegerDigits', 'minimumFractionDigits', 'maximumFractionDigits', 'minimumSignificantDigits', 'maximumSignificantDigits'];\n/**\n * utilities\n */\n\nfunction warn(msg, err) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n\n if (err) {\n console.warn(err.stack);\n }\n }\n}\n\nfunction error(msg, err) {\n if (typeof console !== 'undefined') {\n console.error('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n\n if (err) {\n console.error(err.stack);\n }\n }\n}\n\nvar isArray = Array.isArray;\n\nfunction isObject(obj) {\n return obj !== null && typeof obj === 'object';\n}\n\nfunction isBoolean(val) {\n return typeof val === 'boolean';\n}\n\nfunction isString(val) {\n return typeof val === 'string';\n}\n\nvar toString = Object.prototype.toString;\nvar OBJECT_STRING = '[object Object]';\n\nfunction isPlainObject(obj) {\n return toString.call(obj) === OBJECT_STRING;\n}\n\nfunction isNull(val) {\n return val === null || val === undefined;\n}\n\nfunction isFunction(val) {\n return typeof val === 'function';\n}\n\nfunction parseArgs() {\n var args = [],\n len = arguments.length;\n\n while (len--) args[len] = arguments[len];\n\n var locale = null;\n var params = null;\n\n if (args.length === 1) {\n if (isObject(args[0]) || isArray(args[0])) {\n params = args[0];\n } else if (typeof args[0] === 'string') {\n locale = args[0];\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n locale = args[0];\n }\n /* istanbul ignore if */\n\n\n if (isObject(args[1]) || isArray(args[1])) {\n params = args[1];\n }\n }\n\n return {\n locale: locale,\n params: params\n };\n}\n\nfunction looseClone(obj) {\n return JSON.parse(JSON.stringify(obj));\n}\n\nfunction remove(arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n\n if (index > -1) {\n return arr.splice(index, 1);\n }\n }\n}\n\nfunction includes(arr, item) {\n return !!~arr.indexOf(item);\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction hasOwn(obj, key) {\n return hasOwnProperty.call(obj, key);\n}\n\nfunction merge(target) {\n var arguments$1 = arguments;\n var output = Object(target);\n\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments$1[i];\n\n if (source !== undefined && source !== null) {\n var key = void 0;\n\n for (key in source) {\n if (hasOwn(source, key)) {\n if (isObject(source[key])) {\n output[key] = merge(output[key], source[key]);\n } else {\n output[key] = source[key];\n }\n }\n }\n }\n }\n\n return output;\n}\n\nfunction looseEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = isArray(a);\n var isArrayB = isArray(b);\n\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i]);\n });\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key]);\n });\n } else {\n /* istanbul ignore next */\n return false;\n }\n } catch (e) {\n /* istanbul ignore next */\n return false;\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b);\n } else {\n return false;\n }\n}\n/**\n * Sanitizes html special characters from input strings. For mitigating risk of XSS attacks.\n * @param rawText The raw input from the user that should be escaped.\n */\n\n\nfunction escapeHtml(rawText) {\n return rawText.replace(//g, '>').replace(/\"/g, '"').replace(/'/g, ''');\n}\n/**\n * Escapes html tags and special symbols from all provided params which were returned from parseArgs().params.\n * This method performs an in-place operation on the params object.\n *\n * @param {any} params Parameters as provided from `parseArgs().params`.\n * May be either an array of strings or a string->any map.\n *\n * @returns The manipulated `params` object.\n */\n\n\nfunction escapeParams(params) {\n if (params != null) {\n Object.keys(params).forEach(function (key) {\n if (typeof params[key] == 'string') {\n params[key] = escapeHtml(params[key]);\n }\n });\n }\n\n return params;\n}\n/* */\n\n\nfunction extend(Vue) {\n if (!Vue.prototype.hasOwnProperty('$i18n')) {\n // $FlowFixMe\n Object.defineProperty(Vue.prototype, '$i18n', {\n get: function get() {\n return this._i18n;\n }\n });\n }\n\n Vue.prototype.$t = function (key) {\n var values = [],\n len = arguments.length - 1;\n\n while (len-- > 0) values[len] = arguments[len + 1];\n\n var i18n = this.$i18n;\n return i18n._t.apply(i18n, [key, i18n.locale, i18n._getMessages(), this].concat(values));\n };\n\n Vue.prototype.$tc = function (key, choice) {\n var values = [],\n len = arguments.length - 2;\n\n while (len-- > 0) values[len] = arguments[len + 2];\n\n var i18n = this.$i18n;\n return i18n._tc.apply(i18n, [key, i18n.locale, i18n._getMessages(), this, choice].concat(values));\n };\n\n Vue.prototype.$te = function (key, locale) {\n var i18n = this.$i18n;\n return i18n._te(key, i18n.locale, i18n._getMessages(), locale);\n };\n\n Vue.prototype.$d = function (value) {\n var ref;\n var args = [],\n len = arguments.length - 1;\n\n while (len-- > 0) args[len] = arguments[len + 1];\n\n return (ref = this.$i18n).d.apply(ref, [value].concat(args));\n };\n\n Vue.prototype.$n = function (value) {\n var ref;\n var args = [],\n len = arguments.length - 1;\n\n while (len-- > 0) args[len] = arguments[len + 1];\n\n return (ref = this.$i18n).n.apply(ref, [value].concat(args));\n };\n}\n/* */\n\n\nvar mixin = {\n beforeCreate: function beforeCreate() {\n var options = this.$options;\n options.i18n = options.i18n || (options.__i18n ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n if (options.__i18n) {\n try {\n var localeMessages = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n\n options.__i18n.forEach(function (resource) {\n localeMessages = merge(localeMessages, JSON.parse(resource));\n });\n\n Object.keys(localeMessages).forEach(function (locale) {\n options.i18n.mergeLocaleMessage(locale, localeMessages[locale]);\n });\n } catch (e) {\n if (true) {\n error(\"Cannot parse locale messages via custom blocks.\", e);\n }\n }\n }\n\n this._i18n = options.i18n;\n this._i18nWatcher = this._i18n.watchI18nData();\n } else if (isPlainObject(options.i18n)) {\n var rootI18n = this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n ? this.$root.$i18n : null; // component local i18n\n\n if (rootI18n) {\n options.i18n.root = this.$root;\n options.i18n.formatter = rootI18n.formatter;\n options.i18n.fallbackLocale = rootI18n.fallbackLocale;\n options.i18n.formatFallbackMessages = rootI18n.formatFallbackMessages;\n options.i18n.silentTranslationWarn = rootI18n.silentTranslationWarn;\n options.i18n.silentFallbackWarn = rootI18n.silentFallbackWarn;\n options.i18n.pluralizationRules = rootI18n.pluralizationRules;\n options.i18n.preserveDirectiveContent = rootI18n.preserveDirectiveContent;\n } // init locale messages via custom blocks\n\n\n if (options.__i18n) {\n try {\n var localeMessages$1 = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n\n options.__i18n.forEach(function (resource) {\n localeMessages$1 = merge(localeMessages$1, JSON.parse(resource));\n });\n\n options.i18n.messages = localeMessages$1;\n } catch (e) {\n if (true) {\n warn(\"Cannot parse locale messages via custom blocks.\", e);\n }\n }\n }\n\n var ref = options.i18n;\n var sharedMessages = ref.sharedMessages;\n\n if (sharedMessages && isPlainObject(sharedMessages)) {\n options.i18n.messages = merge(options.i18n.messages, sharedMessages);\n }\n\n this._i18n = new VueI18n(options.i18n);\n this._i18nWatcher = this._i18n.watchI18nData();\n\n if (options.i18n.sync === undefined || !!options.i18n.sync) {\n this._localeWatcher = this.$i18n.watchLocale();\n }\n\n if (rootI18n) {\n rootI18n.onComponentInstanceCreated(this._i18n);\n }\n } else {\n if (true) {\n warn(\"Cannot be interpreted 'i18n' option.\");\n }\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n // root i18n\n this._i18n = this.$root.$i18n;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n // parent i18n\n this._i18n = options.parent.$i18n;\n }\n },\n beforeMount: function beforeMount() {\n var options = this.$options;\n options.i18n = options.i18n || (options.__i18n ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n this._i18n.subscribeDataChanging(this);\n\n this._subscribing = true;\n } else if (isPlainObject(options.i18n)) {\n this._i18n.subscribeDataChanging(this);\n\n this._subscribing = true;\n } else {\n if (true) {\n warn(\"Cannot be interpreted 'i18n' option.\");\n }\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n\n this._subscribing = true;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n\n this._subscribing = true;\n }\n },\n beforeDestroy: function beforeDestroy() {\n if (!this._i18n) {\n return;\n }\n\n var self = this;\n this.$nextTick(function () {\n if (self._subscribing) {\n self._i18n.unsubscribeDataChanging(self);\n\n delete self._subscribing;\n }\n\n if (self._i18nWatcher) {\n self._i18nWatcher();\n\n self._i18n.destroyVM();\n\n delete self._i18nWatcher;\n }\n\n if (self._localeWatcher) {\n self._localeWatcher();\n\n delete self._localeWatcher;\n }\n });\n }\n};\n/* */\n\nvar interpolationComponent = {\n name: 'i18n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n path: {\n type: String,\n required: true\n },\n locale: {\n type: String\n },\n places: {\n type: [Array, Object]\n }\n },\n render: function render(h, ref) {\n var data = ref.data;\n var parent = ref.parent;\n var props = ref.props;\n var slots = ref.slots;\n var $i18n = parent.$i18n;\n\n if (!$i18n) {\n if (true) {\n warn('Cannot find VueI18n instance!');\n }\n\n return;\n }\n\n var path = props.path;\n var locale = props.locale;\n var places = props.places;\n var params = slots();\n var children = $i18n.i(path, locale, onlyHasDefaultPlace(params) || places ? useLegacyPlaces(params.default, places) : params);\n var tag = !!props.tag && props.tag !== true || props.tag === false ? props.tag : 'span';\n return tag ? h(tag, data, children) : children;\n }\n};\n\nfunction onlyHasDefaultPlace(params) {\n var prop;\n\n for (prop in params) {\n if (prop !== 'default') {\n return false;\n }\n }\n\n return Boolean(prop);\n}\n\nfunction useLegacyPlaces(children, places) {\n var params = places ? createParamsFromPlaces(places) : {};\n\n if (!children) {\n return params;\n } // Filter empty text nodes\n\n\n children = children.filter(function (child) {\n return child.tag || child.text.trim() !== '';\n });\n var everyPlace = children.every(vnodeHasPlaceAttribute);\n\n if ( true && everyPlace) {\n warn('`place` attribute is deprecated in next major version. Please switch to Vue slots.');\n }\n\n return children.reduce(everyPlace ? assignChildPlace : assignChildIndex, params);\n}\n\nfunction createParamsFromPlaces(places) {\n if (true) {\n warn('`places` prop is deprecated in next major version. Please switch to Vue slots.');\n }\n\n return Array.isArray(places) ? places.reduce(assignChildIndex, {}) : Object.assign({}, places);\n}\n\nfunction assignChildPlace(params, child) {\n if (child.data && child.data.attrs && child.data.attrs.place) {\n params[child.data.attrs.place] = child;\n }\n\n return params;\n}\n\nfunction assignChildIndex(params, child, index) {\n params[index] = child;\n return params;\n}\n\nfunction vnodeHasPlaceAttribute(vnode) {\n return Boolean(vnode.data && vnode.data.attrs && vnode.data.attrs.place);\n}\n/* */\n\n\nvar numberComponent = {\n name: 'i18n-n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n value: {\n type: Number,\n required: true\n },\n format: {\n type: [String, Object]\n },\n locale: {\n type: String\n }\n },\n render: function render(h, ref) {\n var props = ref.props;\n var parent = ref.parent;\n var data = ref.data;\n var i18n = parent.$i18n;\n\n if (!i18n) {\n if (true) {\n warn('Cannot find VueI18n instance!');\n }\n\n return null;\n }\n\n var key = null;\n var options = null;\n\n if (isString(props.format)) {\n key = props.format;\n } else if (isObject(props.format)) {\n if (props.format.key) {\n key = props.format.key;\n } // Filter out number format options only\n\n\n options = Object.keys(props.format).reduce(function (acc, prop) {\n var obj;\n\n if (includes(numberFormatKeys, prop)) {\n return Object.assign({}, acc, (obj = {}, obj[prop] = props.format[prop], obj));\n }\n\n return acc;\n }, null);\n }\n\n var locale = props.locale || i18n.locale;\n\n var parts = i18n._ntp(props.value, locale, key, options);\n\n var values = parts.map(function (part, index) {\n var obj;\n var slot = data.scopedSlots && data.scopedSlots[part.type];\n return slot ? slot((obj = {}, obj[part.type] = part.value, obj.index = index, obj.parts = parts, obj)) : part.value;\n });\n var tag = !!props.tag && props.tag !== true || props.tag === false ? props.tag : 'span';\n return tag ? h(tag, {\n attrs: data.attrs,\n 'class': data['class'],\n staticClass: data.staticClass\n }, values) : values;\n }\n};\n/* */\n\nfunction bind(el, binding, vnode) {\n if (!assert(el, vnode)) {\n return;\n }\n\n t(el, binding, vnode);\n}\n\nfunction update(el, binding, vnode, oldVNode) {\n if (!assert(el, vnode)) {\n return;\n }\n\n var i18n = vnode.context.$i18n;\n\n if (localeEqual(el, vnode) && looseEqual(binding.value, binding.oldValue) && looseEqual(el._localeMessage, i18n.getLocaleMessage(i18n.locale))) {\n return;\n }\n\n t(el, binding, vnode);\n}\n\nfunction unbind(el, binding, vnode, oldVNode) {\n var vm = vnode.context;\n\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return;\n }\n\n var i18n = vnode.context.$i18n || {};\n\n if (!binding.modifiers.preserve && !i18n.preserveDirectiveContent) {\n el.textContent = '';\n }\n\n el._vt = undefined;\n delete el['_vt'];\n el._locale = undefined;\n delete el['_locale'];\n el._localeMessage = undefined;\n delete el['_localeMessage'];\n}\n\nfunction assert(el, vnode) {\n var vm = vnode.context;\n\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return false;\n }\n\n if (!vm.$i18n) {\n warn('VueI18n instance does not exists in Vue instance');\n return false;\n }\n\n return true;\n}\n\nfunction localeEqual(el, vnode) {\n var vm = vnode.context;\n return el._locale === vm.$i18n.locale;\n}\n\nfunction t(el, binding, vnode) {\n var ref$1, ref$2;\n var value = binding.value;\n var ref = parseValue(value);\n var path = ref.path;\n var locale = ref.locale;\n var args = ref.args;\n var choice = ref.choice;\n\n if (!path && !locale && !args) {\n warn('value type not supported');\n return;\n }\n\n if (!path) {\n warn('`path` is required in v-t directive');\n return;\n }\n\n var vm = vnode.context;\n\n if (choice != null) {\n el._vt = el.textContent = (ref$1 = vm.$i18n).tc.apply(ref$1, [path, choice].concat(makeParams(locale, args)));\n } else {\n el._vt = el.textContent = (ref$2 = vm.$i18n).t.apply(ref$2, [path].concat(makeParams(locale, args)));\n }\n\n el._locale = vm.$i18n.locale;\n el._localeMessage = vm.$i18n.getLocaleMessage(vm.$i18n.locale);\n}\n\nfunction parseValue(value) {\n var path;\n var locale;\n var args;\n var choice;\n\n if (isString(value)) {\n path = value;\n } else if (isPlainObject(value)) {\n path = value.path;\n locale = value.locale;\n args = value.args;\n choice = value.choice;\n }\n\n return {\n path: path,\n locale: locale,\n args: args,\n choice: choice\n };\n}\n\nfunction makeParams(locale, args) {\n var params = [];\n locale && params.push(locale);\n\n if (args && (Array.isArray(args) || isPlainObject(args))) {\n params.push(args);\n }\n\n return params;\n}\n\nvar Vue;\n\nfunction install(_Vue) {\n /* istanbul ignore if */\n if ( true && install.installed && _Vue === Vue) {\n warn('already installed.');\n return;\n }\n\n install.installed = true;\n Vue = _Vue;\n var version = Vue.version && Number(Vue.version.split('.')[0]) || -1;\n /* istanbul ignore if */\n\n if ( true && version < 2) {\n warn(\"vue-i18n (\" + install.version + \") need to use Vue 2.0 or later (Vue: \" + Vue.version + \").\");\n return;\n }\n\n extend(Vue);\n Vue.mixin(mixin);\n Vue.directive('t', {\n bind: bind,\n update: update,\n unbind: unbind\n });\n Vue.component(interpolationComponent.name, interpolationComponent);\n Vue.component(numberComponent.name, numberComponent); // use simple mergeStrategies to prevent i18n instance lose '__proto__'\n\n var strats = Vue.config.optionMergeStrategies;\n\n strats.i18n = function (parentVal, childVal) {\n return childVal === undefined ? parentVal : childVal;\n };\n}\n/* */\n\n\nvar BaseFormatter = function BaseFormatter() {\n this._caches = Object.create(null);\n};\n\nBaseFormatter.prototype.interpolate = function interpolate(message, values) {\n if (!values) {\n return [message];\n }\n\n var tokens = this._caches[message];\n\n if (!tokens) {\n tokens = parse(message);\n this._caches[message] = tokens;\n }\n\n return compile(tokens, values);\n};\n\nvar RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nvar RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\n\nfunction parse(format) {\n var tokens = [];\n var position = 0;\n var text = '';\n\n while (position < format.length) {\n var char = format[position++];\n\n if (char === '{') {\n if (text) {\n tokens.push({\n type: 'text',\n value: text\n });\n }\n\n text = '';\n var sub = '';\n char = format[position++];\n\n while (char !== undefined && char !== '}') {\n sub += char;\n char = format[position++];\n }\n\n var isClosed = char === '}';\n var type = RE_TOKEN_LIST_VALUE.test(sub) ? 'list' : isClosed && RE_TOKEN_NAMED_VALUE.test(sub) ? 'named' : 'unknown';\n tokens.push({\n value: sub,\n type: type\n });\n } else if (char === '%') {\n // when found rails i18n syntax, skip text capture\n if (format[position] !== '{') {\n text += char;\n }\n } else {\n text += char;\n }\n }\n\n text && tokens.push({\n type: 'text',\n value: text\n });\n return tokens;\n}\n\nfunction compile(tokens, values) {\n var compiled = [];\n var index = 0;\n var mode = Array.isArray(values) ? 'list' : isObject(values) ? 'named' : 'unknown';\n\n if (mode === 'unknown') {\n return compiled;\n }\n\n while (index < tokens.length) {\n var token = tokens[index];\n\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break;\n\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break;\n\n case 'named':\n if (mode === 'named') {\n compiled.push(values[token.value]);\n } else {\n if (true) {\n warn(\"Type of token '\" + token.type + \"' and format of value '\" + mode + \"' don't match!\");\n }\n }\n\n break;\n\n case 'unknown':\n if (true) {\n warn(\"Detect 'unknown' type of token!\");\n }\n\n break;\n }\n\n index++;\n }\n\n return compiled;\n}\n/* */\n\n/**\n * Path parser\n * - Inspired:\n * Vue.js Path parser\n */\n// actions\n\n\nvar APPEND = 0;\nvar PUSH = 1;\nvar INC_SUB_PATH_DEPTH = 2;\nvar PUSH_SUB_PATH = 3; // states\n\nvar BEFORE_PATH = 0;\nvar IN_PATH = 1;\nvar BEFORE_IDENT = 2;\nvar IN_IDENT = 3;\nvar IN_SUB_PATH = 4;\nvar IN_SINGLE_QUOTE = 5;\nvar IN_DOUBLE_QUOTE = 6;\nvar AFTER_PATH = 7;\nvar ERROR = 8;\nvar pathStateMachine = [];\npathStateMachine[BEFORE_PATH] = {\n 'ws': [BEFORE_PATH],\n 'ident': [IN_IDENT, APPEND],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\npathStateMachine[IN_PATH] = {\n 'ws': [IN_PATH],\n '.': [BEFORE_IDENT],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\npathStateMachine[BEFORE_IDENT] = {\n 'ws': [BEFORE_IDENT],\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND]\n};\npathStateMachine[IN_IDENT] = {\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND],\n 'ws': [IN_PATH, PUSH],\n '.': [BEFORE_IDENT, PUSH],\n '[': [IN_SUB_PATH, PUSH],\n 'eof': [AFTER_PATH, PUSH]\n};\npathStateMachine[IN_SUB_PATH] = {\n \"'\": [IN_SINGLE_QUOTE, APPEND],\n '\"': [IN_DOUBLE_QUOTE, APPEND],\n '[': [IN_SUB_PATH, INC_SUB_PATH_DEPTH],\n ']': [IN_PATH, PUSH_SUB_PATH],\n 'eof': ERROR,\n 'else': [IN_SUB_PATH, APPEND]\n};\npathStateMachine[IN_SINGLE_QUOTE] = {\n \"'\": [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_SINGLE_QUOTE, APPEND]\n};\npathStateMachine[IN_DOUBLE_QUOTE] = {\n '\"': [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_DOUBLE_QUOTE, APPEND]\n};\n/**\n * Check if an expression is a literal value.\n */\n\nvar literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\n\nfunction isLiteral(exp) {\n return literalValueRE.test(exp);\n}\n/**\n * Strip quotes from a string\n */\n\n\nfunction stripQuotes(str) {\n var a = str.charCodeAt(0);\n var b = str.charCodeAt(str.length - 1);\n return a === b && (a === 0x22 || a === 0x27) ? str.slice(1, -1) : str;\n}\n/**\n * Determine the type of a character in a keypath.\n */\n\n\nfunction getPathCharType(ch) {\n if (ch === undefined || ch === null) {\n return 'eof';\n }\n\n var code = ch.charCodeAt(0);\n\n switch (code) {\n case 0x5B: // [\n\n case 0x5D: // ]\n\n case 0x2E: // .\n\n case 0x22: // \"\n\n case 0x27:\n // '\n return ch;\n\n case 0x5F: // _\n\n case 0x24: // $\n\n case 0x2D:\n // -\n return 'ident';\n\n case 0x09: // Tab\n\n case 0x0A: // Newline\n\n case 0x0D: // Return\n\n case 0xA0: // No-break space\n\n case 0xFEFF: // Byte Order Mark\n\n case 0x2028: // Line Separator\n\n case 0x2029:\n // Paragraph Separator\n return 'ws';\n }\n\n return 'ident';\n}\n/**\n * Format a subPath, return its plain form if it is\n * a literal string or number. Otherwise prepend the\n * dynamic indicator (*).\n */\n\n\nfunction formatSubPath(path) {\n var trimmed = path.trim(); // invalid leading 0\n\n if (path.charAt(0) === '0' && isNaN(path)) {\n return false;\n }\n\n return isLiteral(trimmed) ? stripQuotes(trimmed) : '*' + trimmed;\n}\n/**\n * Parse a string path into an array of segments\n */\n\n\nfunction parse$1(path) {\n var keys = [];\n var index = -1;\n var mode = BEFORE_PATH;\n var subPathDepth = 0;\n var c;\n var key;\n var newChar;\n var type;\n var transition;\n var action;\n var typeMap;\n var actions = [];\n\n actions[PUSH] = function () {\n if (key !== undefined) {\n keys.push(key);\n key = undefined;\n }\n };\n\n actions[APPEND] = function () {\n if (key === undefined) {\n key = newChar;\n } else {\n key += newChar;\n }\n };\n\n actions[INC_SUB_PATH_DEPTH] = function () {\n actions[APPEND]();\n subPathDepth++;\n };\n\n actions[PUSH_SUB_PATH] = function () {\n if (subPathDepth > 0) {\n subPathDepth--;\n mode = IN_SUB_PATH;\n actions[APPEND]();\n } else {\n subPathDepth = 0;\n\n if (key === undefined) {\n return false;\n }\n\n key = formatSubPath(key);\n\n if (key === false) {\n return false;\n } else {\n actions[PUSH]();\n }\n }\n };\n\n function maybeUnescapeQuote() {\n var nextChar = path[index + 1];\n\n if (mode === IN_SINGLE_QUOTE && nextChar === \"'\" || mode === IN_DOUBLE_QUOTE && nextChar === '\"') {\n index++;\n newChar = '\\\\' + nextChar;\n actions[APPEND]();\n return true;\n }\n }\n\n while (mode !== null) {\n index++;\n c = path[index];\n\n if (c === '\\\\' && maybeUnescapeQuote()) {\n continue;\n }\n\n type = getPathCharType(c);\n typeMap = pathStateMachine[mode];\n transition = typeMap[type] || typeMap['else'] || ERROR;\n\n if (transition === ERROR) {\n return; // parse error\n }\n\n mode = transition[0];\n action = actions[transition[1]];\n\n if (action) {\n newChar = transition[2];\n newChar = newChar === undefined ? c : newChar;\n\n if (action() === false) {\n return;\n }\n }\n\n if (mode === AFTER_PATH) {\n return keys;\n }\n }\n}\n\nvar I18nPath = function I18nPath() {\n this._cache = Object.create(null);\n};\n/**\n * External parse that check for a cache hit first\n */\n\n\nI18nPath.prototype.parsePath = function parsePath(path) {\n var hit = this._cache[path];\n\n if (!hit) {\n hit = parse$1(path);\n\n if (hit) {\n this._cache[path] = hit;\n }\n }\n\n return hit || [];\n};\n/**\n * Get path value from path string\n */\n\n\nI18nPath.prototype.getPathValue = function getPathValue(obj, path) {\n if (!isObject(obj)) {\n return null;\n }\n\n var paths = this.parsePath(path);\n\n if (paths.length === 0) {\n return null;\n } else {\n var length = paths.length;\n var last = obj;\n var i = 0;\n\n while (i < length) {\n var value = last[paths[i]];\n\n if (value === undefined) {\n return null;\n }\n\n last = value;\n i++;\n }\n\n return last;\n }\n};\n/* */\n\n\nvar htmlTagMatcher = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\nvar linkKeyMatcher = /(?:@(?:\\.[a-z]+)?:(?:[\\w\\-_|.]+|\\([\\w\\-_|.]+\\)))/g;\nvar linkKeyPrefixMatcher = /^@(?:\\.([a-z]+))?:/;\nvar bracketsMatcher = /[()]/g;\nvar defaultModifiers = {\n 'upper': function (str) {\n return str.toLocaleUpperCase();\n },\n 'lower': function (str) {\n return str.toLocaleLowerCase();\n },\n 'capitalize': function (str) {\n return \"\" + str.charAt(0).toLocaleUpperCase() + str.substr(1);\n }\n};\nvar defaultFormatter = new BaseFormatter();\n\nvar VueI18n = function VueI18n(options) {\n var this$1 = this;\n if (options === void 0) options = {}; // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #290\n\n /* istanbul ignore if */\n\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n var locale = options.locale || 'en-US';\n var fallbackLocale = options.fallbackLocale === false ? false : options.fallbackLocale || 'en-US';\n var messages = options.messages || {};\n var dateTimeFormats = options.dateTimeFormats || {};\n var numberFormats = options.numberFormats || {};\n this._vm = null;\n this._formatter = options.formatter || defaultFormatter;\n this._modifiers = options.modifiers || {};\n this._missing = options.missing || null;\n this._root = options.root || null;\n this._sync = options.sync === undefined ? true : !!options.sync;\n this._fallbackRoot = options.fallbackRoot === undefined ? true : !!options.fallbackRoot;\n this._formatFallbackMessages = options.formatFallbackMessages === undefined ? false : !!options.formatFallbackMessages;\n this._silentTranslationWarn = options.silentTranslationWarn === undefined ? false : options.silentTranslationWarn;\n this._silentFallbackWarn = options.silentFallbackWarn === undefined ? false : !!options.silentFallbackWarn;\n this._dateTimeFormatters = {};\n this._numberFormatters = {};\n this._path = new I18nPath();\n this._dataListeners = [];\n this._componentInstanceCreatedListener = options.componentInstanceCreatedListener || null;\n this._preserveDirectiveContent = options.preserveDirectiveContent === undefined ? false : !!options.preserveDirectiveContent;\n this.pluralizationRules = options.pluralizationRules || {};\n this._warnHtmlInMessage = options.warnHtmlInMessage || 'off';\n this._postTranslation = options.postTranslation || null;\n this._escapeParameterHtml = options.escapeParameterHtml || false;\n /**\n * @param choice {number} a choice index given by the input to $tc: `$tc('path.to.rule', choiceIndex)`\n * @param choicesLength {number} an overall amount of available choices\n * @returns a final choice index\n */\n\n this.getChoiceIndex = function (choice, choicesLength) {\n var thisPrototype = Object.getPrototypeOf(this$1);\n\n if (thisPrototype && thisPrototype.getChoiceIndex) {\n var prototypeGetChoiceIndex = thisPrototype.getChoiceIndex;\n return prototypeGetChoiceIndex.call(this$1, choice, choicesLength);\n } // Default (old) getChoiceIndex implementation - english-compatible\n\n\n var defaultImpl = function (_choice, _choicesLength) {\n _choice = Math.abs(_choice);\n\n if (_choicesLength === 2) {\n return _choice ? _choice > 1 ? 1 : 0 : 1;\n }\n\n return _choice ? Math.min(_choice, 2) : 0;\n };\n\n if (this$1.locale in this$1.pluralizationRules) {\n return this$1.pluralizationRules[this$1.locale].apply(this$1, [choice, choicesLength]);\n } else {\n return defaultImpl(choice, choicesLength);\n }\n };\n\n this._exist = function (message, key) {\n if (!message || !key) {\n return false;\n }\n\n if (!isNull(this$1._path.getPathValue(message, key))) {\n return true;\n } // fallback for flat key\n\n\n if (message[key]) {\n return true;\n }\n\n return false;\n };\n\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n\n this._initVM({\n locale: locale,\n fallbackLocale: fallbackLocale,\n messages: messages,\n dateTimeFormats: dateTimeFormats,\n numberFormats: numberFormats\n });\n};\n\nvar prototypeAccessors = {\n vm: {\n configurable: true\n },\n messages: {\n configurable: true\n },\n dateTimeFormats: {\n configurable: true\n },\n numberFormats: {\n configurable: true\n },\n availableLocales: {\n configurable: true\n },\n locale: {\n configurable: true\n },\n fallbackLocale: {\n configurable: true\n },\n formatFallbackMessages: {\n configurable: true\n },\n missing: {\n configurable: true\n },\n formatter: {\n configurable: true\n },\n silentTranslationWarn: {\n configurable: true\n },\n silentFallbackWarn: {\n configurable: true\n },\n preserveDirectiveContent: {\n configurable: true\n },\n warnHtmlInMessage: {\n configurable: true\n },\n postTranslation: {\n configurable: true\n }\n};\n\nVueI18n.prototype._checkLocaleMessage = function _checkLocaleMessage(locale, level, message) {\n var paths = [];\n\n var fn = function (level, locale, message, paths) {\n if (isPlainObject(message)) {\n Object.keys(message).forEach(function (key) {\n var val = message[key];\n\n if (isPlainObject(val)) {\n paths.push(key);\n paths.push('.');\n fn(level, locale, val, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push(key);\n fn(level, locale, val, paths);\n paths.pop();\n }\n });\n } else if (isArray(message)) {\n message.forEach(function (item, index) {\n if (isPlainObject(item)) {\n paths.push(\"[\" + index + \"]\");\n paths.push('.');\n fn(level, locale, item, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push(\"[\" + index + \"]\");\n fn(level, locale, item, paths);\n paths.pop();\n }\n });\n } else if (isString(message)) {\n var ret = htmlTagMatcher.test(message);\n\n if (ret) {\n var msg = \"Detected HTML in message '\" + message + \"' of keypath '\" + paths.join('') + \"' at '\" + locale + \"'. Consider component interpolation with '' to avoid XSS. See https://bit.ly/2ZqJzkp\";\n\n if (level === 'warn') {\n warn(msg);\n } else if (level === 'error') {\n error(msg);\n }\n }\n }\n };\n\n fn(level, locale, message, paths);\n};\n\nVueI18n.prototype._initVM = function _initVM(data) {\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n this._vm = new Vue({\n data: data\n });\n Vue.config.silent = silent;\n};\n\nVueI18n.prototype.destroyVM = function destroyVM() {\n this._vm.$destroy();\n};\n\nVueI18n.prototype.subscribeDataChanging = function subscribeDataChanging(vm) {\n this._dataListeners.push(vm);\n};\n\nVueI18n.prototype.unsubscribeDataChanging = function unsubscribeDataChanging(vm) {\n remove(this._dataListeners, vm);\n};\n\nVueI18n.prototype.watchI18nData = function watchI18nData() {\n var self = this;\n return this._vm.$watch('$data', function () {\n var i = self._dataListeners.length;\n\n while (i--) {\n Vue.nextTick(function () {\n self._dataListeners[i] && self._dataListeners[i].$forceUpdate();\n });\n }\n }, {\n deep: true\n });\n};\n\nVueI18n.prototype.watchLocale = function watchLocale() {\n /* istanbul ignore if */\n if (!this._sync || !this._root) {\n return null;\n }\n\n var target = this._vm;\n return this._root.$i18n.vm.$watch('locale', function (val) {\n target.$set(target, 'locale', val);\n target.$forceUpdate();\n }, {\n immediate: true\n });\n};\n\nVueI18n.prototype.onComponentInstanceCreated = function onComponentInstanceCreated(newI18n) {\n if (this._componentInstanceCreatedListener) {\n this._componentInstanceCreatedListener(newI18n, this);\n }\n};\n\nprototypeAccessors.vm.get = function () {\n return this._vm;\n};\n\nprototypeAccessors.messages.get = function () {\n return looseClone(this._getMessages());\n};\n\nprototypeAccessors.dateTimeFormats.get = function () {\n return looseClone(this._getDateTimeFormats());\n};\n\nprototypeAccessors.numberFormats.get = function () {\n return looseClone(this._getNumberFormats());\n};\n\nprototypeAccessors.availableLocales.get = function () {\n return Object.keys(this.messages).sort();\n};\n\nprototypeAccessors.locale.get = function () {\n return this._vm.locale;\n};\n\nprototypeAccessors.locale.set = function (locale) {\n this._vm.$set(this._vm, 'locale', locale);\n};\n\nprototypeAccessors.fallbackLocale.get = function () {\n return this._vm.fallbackLocale;\n};\n\nprototypeAccessors.fallbackLocale.set = function (locale) {\n this._localeChainCache = {};\n\n this._vm.$set(this._vm, 'fallbackLocale', locale);\n};\n\nprototypeAccessors.formatFallbackMessages.get = function () {\n return this._formatFallbackMessages;\n};\n\nprototypeAccessors.formatFallbackMessages.set = function (fallback) {\n this._formatFallbackMessages = fallback;\n};\n\nprototypeAccessors.missing.get = function () {\n return this._missing;\n};\n\nprototypeAccessors.missing.set = function (handler) {\n this._missing = handler;\n};\n\nprototypeAccessors.formatter.get = function () {\n return this._formatter;\n};\n\nprototypeAccessors.formatter.set = function (formatter) {\n this._formatter = formatter;\n};\n\nprototypeAccessors.silentTranslationWarn.get = function () {\n return this._silentTranslationWarn;\n};\n\nprototypeAccessors.silentTranslationWarn.set = function (silent) {\n this._silentTranslationWarn = silent;\n};\n\nprototypeAccessors.silentFallbackWarn.get = function () {\n return this._silentFallbackWarn;\n};\n\nprototypeAccessors.silentFallbackWarn.set = function (silent) {\n this._silentFallbackWarn = silent;\n};\n\nprototypeAccessors.preserveDirectiveContent.get = function () {\n return this._preserveDirectiveContent;\n};\n\nprototypeAccessors.preserveDirectiveContent.set = function (preserve) {\n this._preserveDirectiveContent = preserve;\n};\n\nprototypeAccessors.warnHtmlInMessage.get = function () {\n return this._warnHtmlInMessage;\n};\n\nprototypeAccessors.warnHtmlInMessage.set = function (level) {\n var this$1 = this;\n var orgLevel = this._warnHtmlInMessage;\n this._warnHtmlInMessage = level;\n\n if (orgLevel !== level && (level === 'warn' || level === 'error')) {\n var messages = this._getMessages();\n\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n};\n\nprototypeAccessors.postTranslation.get = function () {\n return this._postTranslation;\n};\n\nprototypeAccessors.postTranslation.set = function (handler) {\n this._postTranslation = handler;\n};\n\nVueI18n.prototype._getMessages = function _getMessages() {\n return this._vm.messages;\n};\n\nVueI18n.prototype._getDateTimeFormats = function _getDateTimeFormats() {\n return this._vm.dateTimeFormats;\n};\n\nVueI18n.prototype._getNumberFormats = function _getNumberFormats() {\n return this._vm.numberFormats;\n};\n\nVueI18n.prototype._warnDefault = function _warnDefault(locale, key, result, vm, values, interpolateMode) {\n if (!isNull(result)) {\n return result;\n }\n\n if (this._missing) {\n var missingRet = this._missing.apply(null, [locale, key, vm, values]);\n\n if (isString(missingRet)) {\n return missingRet;\n }\n } else {\n if ( true && !this._isSilentTranslationWarn(key)) {\n warn(\"Cannot translate the value of keypath '\" + key + \"'. \" + 'Use the value of keypath as default.');\n }\n }\n\n if (this._formatFallbackMessages) {\n var parsedArgs = parseArgs.apply(void 0, values);\n return this._render(key, interpolateMode, parsedArgs.params, key);\n } else {\n return key;\n }\n};\n\nVueI18n.prototype._isFallbackRoot = function _isFallbackRoot(val) {\n return !val && !isNull(this._root) && this._fallbackRoot;\n};\n\nVueI18n.prototype._isSilentFallbackWarn = function _isSilentFallbackWarn(key) {\n return this._silentFallbackWarn instanceof RegExp ? this._silentFallbackWarn.test(key) : this._silentFallbackWarn;\n};\n\nVueI18n.prototype._isSilentFallback = function _isSilentFallback(locale, key) {\n return this._isSilentFallbackWarn(key) && (this._isFallbackRoot() || locale !== this.fallbackLocale);\n};\n\nVueI18n.prototype._isSilentTranslationWarn = function _isSilentTranslationWarn(key) {\n return this._silentTranslationWarn instanceof RegExp ? this._silentTranslationWarn.test(key) : this._silentTranslationWarn;\n};\n\nVueI18n.prototype._interpolate = function _interpolate(locale, message, key, host, interpolateMode, values, visitedLinkStack) {\n if (!message) {\n return null;\n }\n\n var pathRet = this._path.getPathValue(message, key);\n\n if (isArray(pathRet) || isPlainObject(pathRet)) {\n return pathRet;\n }\n\n var ret;\n\n if (isNull(pathRet)) {\n /* istanbul ignore else */\n if (isPlainObject(message)) {\n ret = message[key];\n\n if (!(isString(ret) || isFunction(ret))) {\n if ( true && !this._isSilentTranslationWarn(key) && !this._isSilentFallback(locale, key)) {\n warn(\"Value of key '\" + key + \"' is not a string or function !\");\n }\n\n return null;\n }\n } else {\n return null;\n }\n } else {\n /* istanbul ignore else */\n if (isString(pathRet) || isFunction(pathRet)) {\n ret = pathRet;\n } else {\n if ( true && !this._isSilentTranslationWarn(key) && !this._isSilentFallback(locale, key)) {\n warn(\"Value of key '\" + key + \"' is not a string or function!\");\n }\n\n return null;\n }\n } // Check for the existence of links within the translated string\n\n\n if (isString(ret) && (ret.indexOf('@:') >= 0 || ret.indexOf('@.') >= 0)) {\n ret = this._link(locale, message, ret, host, 'raw', values, visitedLinkStack);\n }\n\n return this._render(ret, interpolateMode, values, key);\n};\n\nVueI18n.prototype._link = function _link(locale, message, str, host, interpolateMode, values, visitedLinkStack) {\n var ret = str; // Match all the links within the local\n // We are going to replace each of\n // them with its translation\n\n var matches = ret.match(linkKeyMatcher);\n\n for (var idx in matches) {\n // ie compatible: filter custom array\n // prototype method\n if (!matches.hasOwnProperty(idx)) {\n continue;\n }\n\n var link = matches[idx];\n var linkKeyPrefixMatches = link.match(linkKeyPrefixMatcher);\n var linkPrefix = linkKeyPrefixMatches[0];\n var formatterName = linkKeyPrefixMatches[1]; // Remove the leading @:, @.case: and the brackets\n\n var linkPlaceholder = link.replace(linkPrefix, '').replace(bracketsMatcher, '');\n\n if (includes(visitedLinkStack, linkPlaceholder)) {\n if (true) {\n warn(\"Circular reference found. \\\"\" + link + \"\\\" is already visited in the chain of \" + visitedLinkStack.reverse().join(' <- '));\n }\n\n return ret;\n }\n\n visitedLinkStack.push(linkPlaceholder); // Translate the link\n\n var translated = this._interpolate(locale, message, linkPlaceholder, host, interpolateMode === 'raw' ? 'string' : interpolateMode, interpolateMode === 'raw' ? undefined : values, visitedLinkStack);\n\n if (this._isFallbackRoot(translated)) {\n if ( true && !this._isSilentTranslationWarn(linkPlaceholder)) {\n warn(\"Fall back to translate the link placeholder '\" + linkPlaceholder + \"' with root locale.\");\n }\n /* istanbul ignore if */\n\n\n if (!this._root) {\n throw Error('unexpected error');\n }\n\n var root = this._root.$i18n;\n translated = root._translate(root._getMessages(), root.locale, root.fallbackLocale, linkPlaceholder, host, interpolateMode, values);\n }\n\n translated = this._warnDefault(locale, linkPlaceholder, translated, host, isArray(values) ? values : [values], interpolateMode);\n\n if (this._modifiers.hasOwnProperty(formatterName)) {\n translated = this._modifiers[formatterName](translated);\n } else if (defaultModifiers.hasOwnProperty(formatterName)) {\n translated = defaultModifiers[formatterName](translated);\n }\n\n visitedLinkStack.pop(); // Replace the link with the translated\n\n ret = !translated ? ret : ret.replace(link, translated);\n }\n\n return ret;\n};\n\nVueI18n.prototype._createMessageContext = function _createMessageContext(values) {\n var _list = isArray(values) ? values : [];\n\n var _named = isObject(values) ? values : {};\n\n var list = function (index) {\n return _list[index];\n };\n\n var named = function (key) {\n return _named[key];\n };\n\n return {\n list: list,\n named: named\n };\n};\n\nVueI18n.prototype._render = function _render(message, interpolateMode, values, path) {\n if (isFunction(message)) {\n return message(this._createMessageContext(values));\n }\n\n var ret = this._formatter.interpolate(message, values, path); // If the custom formatter refuses to work - apply the default one\n\n\n if (!ret) {\n ret = defaultFormatter.interpolate(message, values, path);\n } // if interpolateMode is **not** 'string' ('row'),\n // return the compiled data (e.g. ['foo', VNode, 'bar']) with formatter\n\n\n return interpolateMode === 'string' && !isString(ret) ? ret.join('') : ret;\n};\n\nVueI18n.prototype._appendItemToChain = function _appendItemToChain(chain, item, blocks) {\n var follow = false;\n\n if (!includes(chain, item)) {\n follow = true;\n\n if (item) {\n follow = item[item.length - 1] !== '!';\n item = item.replace(/!/g, '');\n chain.push(item);\n\n if (blocks && blocks[item]) {\n follow = blocks[item];\n }\n }\n }\n\n return follow;\n};\n\nVueI18n.prototype._appendLocaleToChain = function _appendLocaleToChain(chain, locale, blocks) {\n var follow;\n var tokens = locale.split('-');\n\n do {\n var item = tokens.join('-');\n follow = this._appendItemToChain(chain, item, blocks);\n tokens.splice(-1, 1);\n } while (tokens.length && follow === true);\n\n return follow;\n};\n\nVueI18n.prototype._appendBlockToChain = function _appendBlockToChain(chain, block, blocks) {\n var follow = true;\n\n for (var i = 0; i < block.length && isBoolean(follow); i++) {\n var locale = block[i];\n\n if (isString(locale)) {\n follow = this._appendLocaleToChain(chain, locale, blocks);\n }\n }\n\n return follow;\n};\n\nVueI18n.prototype._getLocaleChain = function _getLocaleChain(start, fallbackLocale) {\n if (start === '') {\n return [];\n }\n\n if (!this._localeChainCache) {\n this._localeChainCache = {};\n }\n\n var chain = this._localeChainCache[start];\n\n if (!chain) {\n if (!fallbackLocale) {\n fallbackLocale = this.fallbackLocale;\n }\n\n chain = []; // first block defined by start\n\n var block = [start]; // while any intervening block found\n\n while (isArray(block)) {\n block = this._appendBlockToChain(chain, block, fallbackLocale);\n } // last block defined by default\n\n\n var defaults;\n\n if (isArray(fallbackLocale)) {\n defaults = fallbackLocale;\n } else if (isObject(fallbackLocale)) {\n /* $FlowFixMe */\n if (fallbackLocale['default']) {\n defaults = fallbackLocale['default'];\n } else {\n defaults = null;\n }\n } else {\n defaults = fallbackLocale;\n } // convert defaults to array\n\n\n if (isString(defaults)) {\n block = [defaults];\n } else {\n block = defaults;\n }\n\n if (block) {\n this._appendBlockToChain(chain, block, null);\n }\n\n this._localeChainCache[start] = chain;\n }\n\n return chain;\n};\n\nVueI18n.prototype._translate = function _translate(messages, locale, fallback, key, host, interpolateMode, args) {\n var chain = this._getLocaleChain(locale, fallback);\n\n var res;\n\n for (var i = 0; i < chain.length; i++) {\n var step = chain[i];\n res = this._interpolate(step, messages[step], key, host, interpolateMode, args, [key]);\n\n if (!isNull(res)) {\n if (step !== locale && \"development\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn(\"Fall back to translate the keypath '\" + key + \"' with '\" + step + \"' locale.\");\n }\n\n return res;\n }\n }\n\n return null;\n};\n\nVueI18n.prototype._t = function _t(key, _locale, messages, host) {\n var ref;\n var values = [],\n len = arguments.length - 4;\n\n while (len-- > 0) values[len] = arguments[len + 4];\n\n if (!key) {\n return '';\n }\n\n var parsedArgs = parseArgs.apply(void 0, values);\n\n if (this._escapeParameterHtml) {\n parsedArgs.params = escapeParams(parsedArgs.params);\n }\n\n var locale = parsedArgs.locale || _locale;\n\n var ret = this._translate(messages, locale, this.fallbackLocale, key, host, 'string', parsedArgs.params);\n\n if (this._isFallbackRoot(ret)) {\n if ( true && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn(\"Fall back to translate the keypath '\" + key + \"' with root locale.\");\n }\n /* istanbul ignore if */\n\n\n if (!this._root) {\n throw Error('unexpected error');\n }\n\n return (ref = this._root).$t.apply(ref, [key].concat(values));\n } else {\n ret = this._warnDefault(locale, key, ret, host, values, 'string');\n\n if (this._postTranslation && ret !== null && ret !== undefined) {\n ret = this._postTranslation(ret, key);\n }\n\n return ret;\n }\n};\n\nVueI18n.prototype.t = function t(key) {\n var ref;\n var values = [],\n len = arguments.length - 1;\n\n while (len-- > 0) values[len] = arguments[len + 1];\n\n return (ref = this)._t.apply(ref, [key, this.locale, this._getMessages(), null].concat(values));\n};\n\nVueI18n.prototype._i = function _i(key, locale, messages, host, values) {\n var ret = this._translate(messages, locale, this.fallbackLocale, key, host, 'raw', values);\n\n if (this._isFallbackRoot(ret)) {\n if ( true && !this._isSilentTranslationWarn(key)) {\n warn(\"Fall back to interpolate the keypath '\" + key + \"' with root locale.\");\n }\n\n if (!this._root) {\n throw Error('unexpected error');\n }\n\n return this._root.$i18n.i(key, locale, values);\n } else {\n return this._warnDefault(locale, key, ret, host, [values], 'raw');\n }\n};\n\nVueI18n.prototype.i = function i(key, locale, values) {\n /* istanbul ignore if */\n if (!key) {\n return '';\n }\n\n if (!isString(locale)) {\n locale = this.locale;\n }\n\n return this._i(key, locale, this._getMessages(), null, values);\n};\n\nVueI18n.prototype._tc = function _tc(key, _locale, messages, host, choice) {\n var ref;\n var values = [],\n len = arguments.length - 5;\n\n while (len-- > 0) values[len] = arguments[len + 5];\n\n if (!key) {\n return '';\n }\n\n if (choice === undefined) {\n choice = 1;\n }\n\n var predefined = {\n 'count': choice,\n 'n': choice\n };\n var parsedArgs = parseArgs.apply(void 0, values);\n parsedArgs.params = Object.assign(predefined, parsedArgs.params);\n values = parsedArgs.locale === null ? [parsedArgs.params] : [parsedArgs.locale, parsedArgs.params];\n return this.fetchChoice((ref = this)._t.apply(ref, [key, _locale, messages, host].concat(values)), choice);\n};\n\nVueI18n.prototype.fetchChoice = function fetchChoice(message, choice) {\n /* istanbul ignore if */\n if (!message || !isString(message)) {\n return null;\n }\n\n var choices = message.split('|');\n choice = this.getChoiceIndex(choice, choices.length);\n\n if (!choices[choice]) {\n return message;\n }\n\n return choices[choice].trim();\n};\n\nVueI18n.prototype.tc = function tc(key, choice) {\n var ref;\n var values = [],\n len = arguments.length - 2;\n\n while (len-- > 0) values[len] = arguments[len + 2];\n\n return (ref = this)._tc.apply(ref, [key, this.locale, this._getMessages(), null, choice].concat(values));\n};\n\nVueI18n.prototype._te = function _te(key, locale, messages) {\n var args = [],\n len = arguments.length - 3;\n\n while (len-- > 0) args[len] = arguments[len + 3];\n\n var _locale = parseArgs.apply(void 0, args).locale || locale;\n\n return this._exist(messages[_locale], key);\n};\n\nVueI18n.prototype.te = function te(key, locale) {\n return this._te(key, this.locale, this._getMessages(), locale);\n};\n\nVueI18n.prototype.getLocaleMessage = function getLocaleMessage(locale) {\n return looseClone(this._vm.messages[locale] || {});\n};\n\nVueI18n.prototype.setLocaleMessage = function setLocaleMessage(locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n\n this._vm.$set(this._vm.messages, locale, message);\n};\n\nVueI18n.prototype.mergeLocaleMessage = function mergeLocaleMessage(locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n\n this._vm.$set(this._vm.messages, locale, merge({}, this._vm.messages[locale] || {}, message));\n};\n\nVueI18n.prototype.getDateTimeFormat = function getDateTimeFormat(locale) {\n return looseClone(this._vm.dateTimeFormats[locale] || {});\n};\n\nVueI18n.prototype.setDateTimeFormat = function setDateTimeFormat(locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, format);\n\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype.mergeDateTimeFormat = function mergeDateTimeFormat(locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, merge(this._vm.dateTimeFormats[locale] || {}, format));\n\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype._clearDateTimeFormat = function _clearDateTimeFormat(locale, format) {\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._dateTimeFormatters.hasOwnProperty(id)) {\n continue;\n }\n\n delete this._dateTimeFormatters[id];\n }\n};\n\nVueI18n.prototype._localizeDateTime = function _localizeDateTime(value, locale, fallback, dateTimeFormats, key) {\n var _locale = locale;\n var formats = dateTimeFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = dateTimeFormats[step];\n _locale = step; // fallback locale\n\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && \"development\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn(\"Fall back to '\" + step + \"' datetime formats from '\" + current + \"' datetime formats.\");\n }\n } else {\n break;\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null;\n } else {\n var format = formats[key];\n var id = _locale + \"__\" + key;\n var formatter = this._dateTimeFormatters[id];\n\n if (!formatter) {\n formatter = this._dateTimeFormatters[id] = new Intl.DateTimeFormat(_locale, format);\n }\n\n return formatter.format(value);\n }\n};\n\nVueI18n.prototype._d = function _d(value, locale, key) {\n /* istanbul ignore if */\n if ( true && !VueI18n.availabilities.dateTimeFormat) {\n warn('Cannot format a Date value due to not supported Intl.DateTimeFormat.');\n return '';\n }\n\n if (!key) {\n return new Intl.DateTimeFormat(locale).format(value);\n }\n\n var ret = this._localizeDateTime(value, locale, this.fallbackLocale, this._getDateTimeFormats(), key);\n\n if (this._isFallbackRoot(ret)) {\n if ( true && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn(\"Fall back to datetime localization of root: key '\" + key + \"'.\");\n }\n /* istanbul ignore if */\n\n\n if (!this._root) {\n throw Error('unexpected error');\n }\n\n return this._root.$i18n.d(value, key, locale);\n } else {\n return ret || '';\n }\n};\n\nVueI18n.prototype.d = function d(value) {\n var args = [],\n len = arguments.length - 1;\n\n while (len-- > 0) args[len] = arguments[len + 1];\n\n var locale = this.locale;\n var key = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n\n if (args[0].key) {\n key = args[0].key;\n }\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._d(value, locale, key);\n};\n\nVueI18n.prototype.getNumberFormat = function getNumberFormat(locale) {\n return looseClone(this._vm.numberFormats[locale] || {});\n};\n\nVueI18n.prototype.setNumberFormat = function setNumberFormat(locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, format);\n\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype.mergeNumberFormat = function mergeNumberFormat(locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, merge(this._vm.numberFormats[locale] || {}, format));\n\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype._clearNumberFormat = function _clearNumberFormat(locale, format) {\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._numberFormatters.hasOwnProperty(id)) {\n continue;\n }\n\n delete this._numberFormatters[id];\n }\n};\n\nVueI18n.prototype._getNumberFormatter = function _getNumberFormatter(value, locale, fallback, numberFormats, key, options) {\n var _locale = locale;\n var formats = numberFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = numberFormats[step];\n _locale = step; // fallback locale\n\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && \"development\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn(\"Fall back to '\" + step + \"' number formats from '\" + current + \"' number formats.\");\n }\n } else {\n break;\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null;\n } else {\n var format = formats[key];\n var formatter;\n\n if (options) {\n // If options specified - create one time number formatter\n formatter = new Intl.NumberFormat(_locale, Object.assign({}, format, options));\n } else {\n var id = _locale + \"__\" + key;\n formatter = this._numberFormatters[id];\n\n if (!formatter) {\n formatter = this._numberFormatters[id] = new Intl.NumberFormat(_locale, format);\n }\n }\n\n return formatter;\n }\n};\n\nVueI18n.prototype._n = function _n(value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (true) {\n warn('Cannot format a Number value due to not supported Intl.NumberFormat.');\n }\n\n return '';\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.format(value);\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n\n var ret = formatter && formatter.format(value);\n\n if (this._isFallbackRoot(ret)) {\n if ( true && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn(\"Fall back to number localization of root: key '\" + key + \"'.\");\n }\n /* istanbul ignore if */\n\n\n if (!this._root) {\n throw Error('unexpected error');\n }\n\n return this._root.$i18n.n(value, Object.assign({}, {\n key: key,\n locale: locale\n }, options));\n } else {\n return ret || '';\n }\n};\n\nVueI18n.prototype.n = function n(value) {\n var args = [],\n len = arguments.length - 1;\n\n while (len-- > 0) args[len] = arguments[len + 1];\n\n var locale = this.locale;\n var key = null;\n var options = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n\n if (args[0].key) {\n key = args[0].key;\n } // Filter out number format options only\n\n\n options = Object.keys(args[0]).reduce(function (acc, key) {\n var obj;\n\n if (includes(numberFormatKeys, key)) {\n return Object.assign({}, acc, (obj = {}, obj[key] = args[0][key], obj));\n }\n\n return acc;\n }, null);\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._n(value, locale, key, options);\n};\n\nVueI18n.prototype._ntp = function _ntp(value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (true) {\n warn('Cannot format to parts a Number value due to not supported Intl.NumberFormat.');\n }\n\n return [];\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.formatToParts(value);\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n\n var ret = formatter && formatter.formatToParts(value);\n\n if (this._isFallbackRoot(ret)) {\n if ( true && !this._isSilentTranslationWarn(key)) {\n warn(\"Fall back to format number to parts of root: key '\" + key + \"' .\");\n }\n /* istanbul ignore if */\n\n\n if (!this._root) {\n throw Error('unexpected error');\n }\n\n return this._root.$i18n._ntp(value, locale, key, options);\n } else {\n return ret || [];\n }\n};\n\nObject.defineProperties(VueI18n.prototype, prototypeAccessors);\nvar availabilities; // $FlowFixMe\n\nObject.defineProperty(VueI18n, 'availabilities', {\n get: function get() {\n if (!availabilities) {\n var intlDefined = typeof Intl !== 'undefined';\n availabilities = {\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\n };\n }\n\n return availabilities;\n }\n});\nVueI18n.install = install;\nVueI18n.version = '8.22.2';\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VueI18n);\n\n//# sourceURL=webpack://materio.com/./node_modules/vue-i18n/dist/vue-i18n.esm.js?"); /***/ }), /***/ "./node_modules/vue-infinite-loading/dist/vue-infinite-loading.js": /*!************************************************************************!*\ !*** ./node_modules/vue-infinite-loading/dist/vue-infinite-loading.js ***! \************************************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module, top-level-this-exports */ /***/ (function(module) { eval("/*!\n * vue-infinite-loading v2.4.5\n * (c) 2016-2020 PeachScript\n * MIT License\n */\n!function (t, e) {\n true ? module.exports = e() : 0;\n}(this, function () {\n return function (t) {\n var e = {};\n\n function n(i) {\n if (e[i]) return e[i].exports;\n var a = e[i] = {\n i: i,\n l: !1,\n exports: {}\n };\n return t[i].call(a.exports, a, a.exports, n), a.l = !0, a.exports;\n }\n\n return n.m = t, n.c = e, n.d = function (t, e, i) {\n n.o(t, e) || Object.defineProperty(t, e, {\n enumerable: !0,\n get: i\n });\n }, n.r = function (t) {\n \"undefined\" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {\n value: \"Module\"\n }), Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n }, n.t = function (t, e) {\n if (1 & e && (t = n(t)), 8 & e) return t;\n if (4 & e && \"object\" == typeof t && t && t.__esModule) return t;\n var i = Object.create(null);\n if (n.r(i), Object.defineProperty(i, \"default\", {\n enumerable: !0,\n value: t\n }), 2 & e && \"string\" != typeof t) for (var a in t) n.d(i, a, function (e) {\n return t[e];\n }.bind(null, a));\n return i;\n }, n.n = function (t) {\n var e = t && t.__esModule ? function () {\n return t.default;\n } : function () {\n return t;\n };\n return n.d(e, \"a\", e), e;\n }, n.o = function (t, e) {\n return Object.prototype.hasOwnProperty.call(t, e);\n }, n.p = \"\", n(n.s = 9);\n }([function (t, e, n) {\n var i = n(6);\n \"string\" == typeof i && (i = [[t.i, i, \"\"]]), i.locals && (t.exports = i.locals);\n (0, n(3).default)(\"6223ff68\", i, !0, {});\n }, function (t, e, n) {\n var i = n(8);\n \"string\" == typeof i && (i = [[t.i, i, \"\"]]), i.locals && (t.exports = i.locals);\n (0, n(3).default)(\"27f0e51f\", i, !0, {});\n }, function (t, e) {\n t.exports = function (t) {\n var e = [];\n return e.toString = function () {\n return this.map(function (e) {\n var n = function (t, e) {\n var n = t[1] || \"\",\n i = t[3];\n if (!i) return n;\n\n if (e && \"function\" == typeof btoa) {\n var a = (o = i, \"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(o)))) + \" */\"),\n r = i.sources.map(function (t) {\n return \"/*# sourceURL=\" + i.sourceRoot + t + \" */\";\n });\n return [n].concat(r).concat([a]).join(\"\\n\");\n }\n\n var o;\n return [n].join(\"\\n\");\n }(e, t);\n\n return e[2] ? \"@media \" + e[2] + \"{\" + n + \"}\" : n;\n }).join(\"\");\n }, e.i = function (t, n) {\n \"string\" == typeof t && (t = [[null, t, \"\"]]);\n\n for (var i = {}, a = 0; a < this.length; a++) {\n var r = this[a][0];\n \"number\" == typeof r && (i[r] = !0);\n }\n\n for (a = 0; a < t.length; a++) {\n var o = t[a];\n \"number\" == typeof o[0] && i[o[0]] || (n && !o[2] ? o[2] = n : n && (o[2] = \"(\" + o[2] + \") and (\" + n + \")\"), e.push(o));\n }\n }, e;\n };\n }, function (t, e, n) {\n \"use strict\";\n\n function i(t, e) {\n for (var n = [], i = {}, a = 0; a < e.length; a++) {\n var r = e[a],\n o = r[0],\n s = {\n id: t + \":\" + a,\n css: r[1],\n media: r[2],\n sourceMap: r[3]\n };\n i[o] ? i[o].parts.push(s) : n.push(i[o] = {\n id: o,\n parts: [s]\n });\n }\n\n return n;\n }\n\n n.r(e), n.d(e, \"default\", function () {\n return f;\n });\n var a = \"undefined\" != typeof document;\n if (\"undefined\" != typeof DEBUG && DEBUG && !a) 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.\");\n\n var r = {},\n o = a && (document.head || document.getElementsByTagName(\"head\")[0]),\n s = null,\n l = 0,\n d = !1,\n c = function () {},\n u = null,\n p = \"undefined\" != typeof navigator && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());\n\n function f(t, e, n, a) {\n d = n, u = a || {};\n var o = i(t, e);\n return b(o), function (e) {\n for (var n = [], a = 0; a < o.length; a++) {\n var s = o[a];\n (l = r[s.id]).refs--, n.push(l);\n }\n\n e ? b(o = i(t, e)) : o = [];\n\n for (a = 0; a < n.length; a++) {\n var l;\n\n if (0 === (l = n[a]).refs) {\n for (var d = 0; d < l.parts.length; d++) l.parts[d]();\n\n delete r[l.id];\n }\n }\n };\n }\n\n function b(t) {\n for (var e = 0; e < t.length; e++) {\n var n = t[e],\n i = r[n.id];\n\n if (i) {\n i.refs++;\n\n for (var a = 0; a < i.parts.length; a++) i.parts[a](n.parts[a]);\n\n for (; a < n.parts.length; a++) i.parts.push(m(n.parts[a]));\n\n i.parts.length > n.parts.length && (i.parts.length = n.parts.length);\n } else {\n var o = [];\n\n for (a = 0; a < n.parts.length; a++) o.push(m(n.parts[a]));\n\n r[n.id] = {\n id: n.id,\n refs: 1,\n parts: o\n };\n }\n }\n }\n\n function h() {\n var t = document.createElement(\"style\");\n return t.type = \"text/css\", o.appendChild(t), t;\n }\n\n function m(t) {\n var e,\n n,\n i = document.querySelector('style[data-vue-ssr-id~=\"' + t.id + '\"]');\n\n if (i) {\n if (d) return c;\n i.parentNode.removeChild(i);\n }\n\n if (p) {\n var a = l++;\n i = s || (s = h()), e = w.bind(null, i, a, !1), n = w.bind(null, i, a, !0);\n } else i = h(), e = y.bind(null, i), n = function () {\n i.parentNode.removeChild(i);\n };\n\n return e(t), function (i) {\n if (i) {\n if (i.css === t.css && i.media === t.media && i.sourceMap === t.sourceMap) return;\n e(t = i);\n } else n();\n };\n }\n\n var g,\n v = (g = [], function (t, e) {\n return g[t] = e, g.filter(Boolean).join(\"\\n\");\n });\n\n function w(t, e, n, i) {\n var a = n ? \"\" : i.css;\n if (t.styleSheet) t.styleSheet.cssText = v(e, a);else {\n var r = document.createTextNode(a),\n o = t.childNodes;\n o[e] && t.removeChild(o[e]), o.length ? t.insertBefore(r, o[e]) : t.appendChild(r);\n }\n }\n\n function y(t, e) {\n var n = e.css,\n i = e.media,\n a = e.sourceMap;\n if (i && t.setAttribute(\"media\", i), u.ssrId && t.setAttribute(\"data-vue-ssr-id\", e.id), a && (n += \"\\n/*# sourceURL=\" + a.sources[0] + \" */\", n += \"\\n/*# sourceMappingURL=data:application/json;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(a)))) + \" */\"), t.styleSheet) t.styleSheet.cssText = n;else {\n for (; t.firstChild;) t.removeChild(t.firstChild);\n\n t.appendChild(document.createTextNode(n));\n }\n }\n }, function (t, e) {\n function n(e) {\n return \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? t.exports = n = function (t) {\n return typeof t;\n } : t.exports = n = function (t) {\n return t && \"function\" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? \"symbol\" : typeof t;\n }, n(e);\n }\n\n t.exports = n;\n }, function (t, e, n) {\n \"use strict\";\n\n n.r(e);\n var i = n(0),\n a = n.n(i);\n\n for (var r in i) \"default\" !== r && function (t) {\n n.d(e, t, function () {\n return i[t];\n });\n }(r);\n\n e.default = a.a;\n }, function (t, e, n) {\n (t.exports = n(2)(!1)).push([t.i, '.loading-wave-dots[data-v-46b20d22]{position:relative}.loading-wave-dots[data-v-46b20d22] .wave-item{position:absolute;top:50%;left:50%;display:inline-block;margin-top:-4px;width:8px;height:8px;border-radius:50%;-webkit-animation:loading-wave-dots-data-v-46b20d22 linear 2.8s infinite;animation:loading-wave-dots-data-v-46b20d22 linear 2.8s infinite}.loading-wave-dots[data-v-46b20d22] .wave-item:first-child{margin-left:-36px}.loading-wave-dots[data-v-46b20d22] .wave-item:nth-child(2){margin-left:-20px;-webkit-animation-delay:.14s;animation-delay:.14s}.loading-wave-dots[data-v-46b20d22] .wave-item:nth-child(3){margin-left:-4px;-webkit-animation-delay:.28s;animation-delay:.28s}.loading-wave-dots[data-v-46b20d22] .wave-item:nth-child(4){margin-left:12px;-webkit-animation-delay:.42s;animation-delay:.42s}.loading-wave-dots[data-v-46b20d22] .wave-item:last-child{margin-left:28px;-webkit-animation-delay:.56s;animation-delay:.56s}@-webkit-keyframes loading-wave-dots-data-v-46b20d22{0%{-webkit-transform:translateY(0);transform:translateY(0);background:#bbb}10%{-webkit-transform:translateY(-6px);transform:translateY(-6px);background:#999}20%{-webkit-transform:translateY(0);transform:translateY(0);background:#bbb}to{-webkit-transform:translateY(0);transform:translateY(0);background:#bbb}}@keyframes loading-wave-dots-data-v-46b20d22{0%{-webkit-transform:translateY(0);transform:translateY(0);background:#bbb}10%{-webkit-transform:translateY(-6px);transform:translateY(-6px);background:#999}20%{-webkit-transform:translateY(0);transform:translateY(0);background:#bbb}to{-webkit-transform:translateY(0);transform:translateY(0);background:#bbb}}.loading-circles[data-v-46b20d22] .circle-item{width:5px;height:5px;-webkit-animation:loading-circles-data-v-46b20d22 linear .75s infinite;animation:loading-circles-data-v-46b20d22 linear .75s infinite}.loading-circles[data-v-46b20d22] .circle-item:first-child{margin-top:-14.5px;margin-left:-2.5px}.loading-circles[data-v-46b20d22] .circle-item:nth-child(2){margin-top:-11.26px;margin-left:6.26px}.loading-circles[data-v-46b20d22] .circle-item:nth-child(3){margin-top:-2.5px;margin-left:9.5px}.loading-circles[data-v-46b20d22] .circle-item:nth-child(4){margin-top:6.26px;margin-left:6.26px}.loading-circles[data-v-46b20d22] .circle-item:nth-child(5){margin-top:9.5px;margin-left:-2.5px}.loading-circles[data-v-46b20d22] .circle-item:nth-child(6){margin-top:6.26px;margin-left:-11.26px}.loading-circles[data-v-46b20d22] .circle-item:nth-child(7){margin-top:-2.5px;margin-left:-14.5px}.loading-circles[data-v-46b20d22] .circle-item:last-child{margin-top:-11.26px;margin-left:-11.26px}@-webkit-keyframes loading-circles-data-v-46b20d22{0%{background:#dfdfdf}90%{background:#505050}to{background:#dfdfdf}}@keyframes loading-circles-data-v-46b20d22{0%{background:#dfdfdf}90%{background:#505050}to{background:#dfdfdf}}.loading-bubbles[data-v-46b20d22] .bubble-item{background:#666;-webkit-animation:loading-bubbles-data-v-46b20d22 linear .75s infinite;animation:loading-bubbles-data-v-46b20d22 linear .75s infinite}.loading-bubbles[data-v-46b20d22] .bubble-item:first-child{margin-top:-12.5px;margin-left:-.5px}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(2){margin-top:-9.26px;margin-left:8.26px}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(3){margin-top:-.5px;margin-left:11.5px}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(4){margin-top:8.26px;margin-left:8.26px}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(5){margin-top:11.5px;margin-left:-.5px}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(6){margin-top:8.26px;margin-left:-9.26px}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(7){margin-top:-.5px;margin-left:-12.5px}.loading-bubbles[data-v-46b20d22] .bubble-item:last-child{margin-top:-9.26px;margin-left:-9.26px}@-webkit-keyframes loading-bubbles-data-v-46b20d22{0%{width:1px;height:1px;box-shadow:0 0 0 3px #666}90%{width:1px;height:1px;box-shadow:0 0 0 0 #666}to{width:1px;height:1px;box-shadow:0 0 0 3px #666}}@keyframes loading-bubbles-data-v-46b20d22{0%{width:1px;height:1px;box-shadow:0 0 0 3px #666}90%{width:1px;height:1px;box-shadow:0 0 0 0 #666}to{width:1px;height:1px;box-shadow:0 0 0 3px #666}}.loading-default[data-v-46b20d22]{position:relative;border:1px solid #999;-webkit-animation:loading-rotating-data-v-46b20d22 ease 1.5s infinite;animation:loading-rotating-data-v-46b20d22 ease 1.5s infinite}.loading-default[data-v-46b20d22]:before{content:\"\";position:absolute;display:block;top:0;left:50%;margin-top:-3px;margin-left:-3px;width:6px;height:6px;background-color:#999;border-radius:50%}.loading-spiral[data-v-46b20d22]{border:2px solid #777;border-right-color:transparent;-webkit-animation:loading-rotating-data-v-46b20d22 linear .85s infinite;animation:loading-rotating-data-v-46b20d22 linear .85s infinite}@-webkit-keyframes loading-rotating-data-v-46b20d22{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes loading-rotating-data-v-46b20d22{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.loading-bubbles[data-v-46b20d22],.loading-circles[data-v-46b20d22]{position:relative}.loading-bubbles[data-v-46b20d22] .bubble-item,.loading-circles[data-v-46b20d22] .circle-item{position:absolute;top:50%;left:50%;display:inline-block;border-radius:50%}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(2),.loading-circles[data-v-46b20d22] .circle-item:nth-child(2){-webkit-animation-delay:93ms;animation-delay:93ms}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(3),.loading-circles[data-v-46b20d22] .circle-item:nth-child(3){-webkit-animation-delay:.186s;animation-delay:.186s}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(4),.loading-circles[data-v-46b20d22] .circle-item:nth-child(4){-webkit-animation-delay:.279s;animation-delay:.279s}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(5),.loading-circles[data-v-46b20d22] .circle-item:nth-child(5){-webkit-animation-delay:.372s;animation-delay:.372s}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(6),.loading-circles[data-v-46b20d22] .circle-item:nth-child(6){-webkit-animation-delay:.465s;animation-delay:.465s}.loading-bubbles[data-v-46b20d22] .bubble-item:nth-child(7),.loading-circles[data-v-46b20d22] .circle-item:nth-child(7){-webkit-animation-delay:.558s;animation-delay:.558s}.loading-bubbles[data-v-46b20d22] .bubble-item:last-child,.loading-circles[data-v-46b20d22] .circle-item:last-child{-webkit-animation-delay:.651s;animation-delay:.651s}', \"\"]);\n }, function (t, e, n) {\n \"use strict\";\n\n n.r(e);\n var i = n(1),\n a = n.n(i);\n\n for (var r in i) \"default\" !== r && function (t) {\n n.d(e, t, function () {\n return i[t];\n });\n }(r);\n\n e.default = a.a;\n }, function (t, e, n) {\n (t.exports = n(2)(!1)).push([t.i, \".infinite-loading-container[data-v-644ea9c9]{clear:both;text-align:center}.infinite-loading-container[data-v-644ea9c9] [class^=loading-]{display:inline-block;margin:5px 0;width:28px;height:28px;font-size:28px;line-height:28px;border-radius:50%}.btn-try-infinite[data-v-644ea9c9]{margin-top:5px;padding:5px 10px;color:#999;font-size:14px;line-height:1;background:transparent;border:1px solid #ccc;border-radius:3px;outline:none;cursor:pointer}.btn-try-infinite[data-v-644ea9c9]:not(:active):hover{opacity:.8}\", \"\"]);\n }, function (t, e, n) {\n \"use strict\";\n\n n.r(e);\n\n var i = {\n throttleLimit: 50,\n loopCheckTimeout: 1e3,\n loopCheckMaxCalls: 10\n },\n a = function () {\n var t = !1;\n\n try {\n var e = Object.defineProperty({}, \"passive\", {\n get: function () {\n return t = {\n passive: !0\n }, !0;\n }\n });\n window.addEventListener(\"testpassive\", e, e), window.remove(\"testpassive\", e, e);\n } catch (t) {}\n\n return t;\n }(),\n r = {\n STATE_CHANGER: [\"emit `loaded` and `complete` event through component instance of `$refs` may cause error, so it will be deprecated soon, please use the `$state` argument instead (`$state` just the special `$event` variable):\", \"\\ntemplate:\", '', \"\\nscript:\\n...\\ninfiniteHandler($state) {\\n ajax('https://www.example.com/api/news')\\n .then((res) => {\\n if (res.data.length) {\\n $state.loaded();\\n } else {\\n $state.complete();\\n }\\n });\\n}\\n...\", \"\", \"more details: https://github.com/PeachScript/vue-infinite-loading/issues/57#issuecomment-324370549\"].join(\"\\n\"),\n INFINITE_EVENT: \"`:on-infinite` property will be deprecated soon, please use `@infinite` event instead.\",\n IDENTIFIER: \"the `reset` event will be deprecated soon, please reset this component by change the `identifier` property.\"\n },\n o = {\n INFINITE_LOOP: [\"executed the callback function more than \".concat(i.loopCheckMaxCalls, \" times for a short time, it looks like searched a wrong scroll wrapper that doest not has fixed height or maximum height, please check it. If you want to force to set a element as scroll wrapper ranther than automatic searching, you can do this:\"), '\\n\\x3c!-- add a special attribute for the real scroll wrapper --\\x3e\\n
\\n ...\\n \\x3c!-- set force-use-infinite-wrapper --\\x3e\\n \\n
\\nor\\n
\\n ...\\n \\x3c!-- set force-use-infinite-wrapper as css selector of the real scroll wrapper --\\x3e\\n \\n
\\n ', \"more details: https://github.com/PeachScript/vue-infinite-loading/issues/55#issuecomment-316934169\"].join(\"\\n\")\n },\n s = {\n READY: 0,\n LOADING: 1,\n COMPLETE: 2,\n ERROR: 3\n },\n l = {\n color: \"#666\",\n fontSize: \"14px\",\n padding: \"10px 0\"\n },\n d = {\n mode: \"development\",\n props: {\n spinner: \"default\",\n distance: 100,\n forceUseInfiniteWrapper: !1\n },\n system: i,\n slots: {\n noResults: \"No results :(\",\n noMore: \"No more data :)\",\n error: \"Opps, something went wrong :(\",\n errorBtnText: \"Retry\",\n spinner: \"\"\n },\n WARNINGS: r,\n ERRORS: o,\n STATUS: s\n },\n c = n(4),\n u = n.n(c),\n p = {\n BUBBLES: {\n render: function (t) {\n return t(\"span\", {\n attrs: {\n class: \"loading-bubbles\"\n }\n }, Array.apply(Array, Array(8)).map(function () {\n return t(\"span\", {\n attrs: {\n class: \"bubble-item\"\n }\n });\n }));\n }\n },\n CIRCLES: {\n render: function (t) {\n return t(\"span\", {\n attrs: {\n class: \"loading-circles\"\n }\n }, Array.apply(Array, Array(8)).map(function () {\n return t(\"span\", {\n attrs: {\n class: \"circle-item\"\n }\n });\n }));\n }\n },\n DEFAULT: {\n render: function (t) {\n return t(\"i\", {\n attrs: {\n class: \"loading-default\"\n }\n });\n }\n },\n SPIRAL: {\n render: function (t) {\n return t(\"i\", {\n attrs: {\n class: \"loading-spiral\"\n }\n });\n }\n },\n WAVEDOTS: {\n render: function (t) {\n return t(\"span\", {\n attrs: {\n class: \"loading-wave-dots\"\n }\n }, Array.apply(Array, Array(5)).map(function () {\n return t(\"span\", {\n attrs: {\n class: \"wave-item\"\n }\n });\n }));\n }\n }\n };\n\n function f(t, e, n, i, a, r, o, s) {\n var l,\n d = \"function\" == typeof t ? t.options : t;\n if (e && (d.render = e, d.staticRenderFns = n, d._compiled = !0), i && (d.functional = !0), r && (d._scopeId = \"data-v-\" + r), o ? (l = function (t) {\n (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__), a && a.call(this, t), t && t._registeredComponents && t._registeredComponents.add(o);\n }, d._ssrRegister = l) : a && (l = s ? function () {\n a.call(this, this.$root.$options.shadowRoot);\n } : a), l) if (d.functional) {\n d._injectStyles = l;\n var c = d.render;\n\n d.render = function (t, e) {\n return l.call(e), c(t, e);\n };\n } else {\n var u = d.beforeCreate;\n d.beforeCreate = u ? [].concat(u, l) : [l];\n }\n return {\n exports: t,\n options: d\n };\n }\n\n var b = f({\n name: \"Spinner\",\n computed: {\n spinnerView: function () {\n return p[(this.$attrs.spinner || \"\").toUpperCase()] || this.spinnerInConfig;\n },\n spinnerInConfig: function () {\n return d.slots.spinner && \"string\" == typeof d.slots.spinner ? {\n render: function () {\n return this._v(d.slots.spinner);\n }\n } : \"object\" === u()(d.slots.spinner) ? d.slots.spinner : p[d.props.spinner.toUpperCase()] || p.DEFAULT;\n }\n }\n }, function () {\n var t = this.$createElement;\n return (this._self._c || t)(this.spinnerView, {\n tag: \"component\"\n });\n }, [], !1, function (t) {\n var e = n(5);\n e.__inject__ && e.__inject__(t);\n }, \"46b20d22\", null).exports;\n\n function h(t) {\n \"production\" !== d.mode && console.warn(\"[Vue-infinite-loading warn]: \".concat(t));\n }\n\n function m(t) {\n console.error(\"[Vue-infinite-loading error]: \".concat(t));\n }\n\n var g = {\n timers: [],\n caches: [],\n throttle: function (t) {\n var e = this;\n -1 === this.caches.indexOf(t) && (this.caches.push(t), this.timers.push(setTimeout(function () {\n t(), e.caches.splice(e.caches.indexOf(t), 1), e.timers.shift();\n }, d.system.throttleLimit)));\n },\n reset: function () {\n this.timers.forEach(function (t) {\n clearTimeout(t);\n }), this.timers.length = 0, this.caches = [];\n }\n },\n v = {\n isChecked: !1,\n timer: null,\n times: 0,\n track: function () {\n var t = this;\n this.times += 1, clearTimeout(this.timer), this.timer = setTimeout(function () {\n t.isChecked = !0;\n }, d.system.loopCheckTimeout), this.times > d.system.loopCheckMaxCalls && (m(o.INFINITE_LOOP), this.isChecked = !0);\n }\n },\n w = {\n key: \"_infiniteScrollHeight\",\n getScrollElm: function (t) {\n return t === window ? document.documentElement : t;\n },\n save: function (t) {\n var e = this.getScrollElm(t);\n e[this.key] = e.scrollHeight;\n },\n restore: function (t) {\n var e = this.getScrollElm(t);\n \"number\" == typeof e[this.key] && (e.scrollTop = e.scrollHeight - e[this.key] + e.scrollTop), this.remove(e);\n },\n remove: function (t) {\n void 0 !== t[this.key] && delete t[this.key];\n }\n };\n\n function y(t) {\n return t.replace(/[A-Z]/g, function (t) {\n return \"-\".concat(t.toLowerCase());\n });\n }\n\n function x(t) {\n return t.offsetWidth + t.offsetHeight > 0;\n }\n\n var k = f({\n name: \"InfiniteLoading\",\n data: function () {\n return {\n scrollParent: null,\n scrollHandler: null,\n isFirstLoad: !0,\n status: s.READY,\n slots: d.slots\n };\n },\n components: {\n Spinner: b\n },\n computed: {\n isShowSpinner: function () {\n return this.status === s.LOADING;\n },\n isShowError: function () {\n return this.status === s.ERROR;\n },\n isShowNoResults: function () {\n return this.status === s.COMPLETE && this.isFirstLoad;\n },\n isShowNoMore: function () {\n return this.status === s.COMPLETE && !this.isFirstLoad;\n },\n slotStyles: function () {\n var t = this,\n e = {};\n return Object.keys(d.slots).forEach(function (n) {\n var i = y(n);\n (!t.$slots[i] && !d.slots[n].render || t.$slots[i] && !t.$slots[i][0].tag) && (e[n] = l);\n }), e;\n }\n },\n props: {\n distance: {\n type: Number,\n default: d.props.distance\n },\n spinner: String,\n direction: {\n type: String,\n default: \"bottom\"\n },\n forceUseInfiniteWrapper: {\n type: [Boolean, String],\n default: d.props.forceUseInfiniteWrapper\n },\n identifier: {\n default: +new Date()\n },\n onInfinite: Function\n },\n watch: {\n identifier: function () {\n this.stateChanger.reset();\n }\n },\n mounted: function () {\n var t = this;\n this.$watch(\"forceUseInfiniteWrapper\", function () {\n t.scrollParent = t.getScrollParent();\n }, {\n immediate: !0\n }), this.scrollHandler = function (e) {\n t.status === s.READY && (e && e.constructor === Event && x(t.$el) ? g.throttle(t.attemptLoad) : t.attemptLoad());\n }, setTimeout(function () {\n t.scrollHandler(), t.scrollParent.addEventListener(\"scroll\", t.scrollHandler, a);\n }, 1), this.$on(\"$InfiniteLoading:loaded\", function (e) {\n t.isFirstLoad = !1, \"top\" === t.direction && t.$nextTick(function () {\n w.restore(t.scrollParent);\n }), t.status === s.LOADING && t.$nextTick(t.attemptLoad.bind(null, !0)), e && e.target === t || h(r.STATE_CHANGER);\n }), this.$on(\"$InfiniteLoading:complete\", function (e) {\n t.status = s.COMPLETE, t.$nextTick(function () {\n t.$forceUpdate();\n }), t.scrollParent.removeEventListener(\"scroll\", t.scrollHandler, a), e && e.target === t || h(r.STATE_CHANGER);\n }), this.$on(\"$InfiniteLoading:reset\", function (e) {\n t.status = s.READY, t.isFirstLoad = !0, w.remove(t.scrollParent), t.scrollParent.addEventListener(\"scroll\", t.scrollHandler, a), setTimeout(function () {\n g.reset(), t.scrollHandler();\n }, 1), e && e.target === t || h(r.IDENTIFIER);\n }), this.stateChanger = {\n loaded: function () {\n t.$emit(\"$InfiniteLoading:loaded\", {\n target: t\n });\n },\n complete: function () {\n t.$emit(\"$InfiniteLoading:complete\", {\n target: t\n });\n },\n reset: function () {\n t.$emit(\"$InfiniteLoading:reset\", {\n target: t\n });\n },\n error: function () {\n t.status = s.ERROR, g.reset();\n }\n }, this.onInfinite && h(r.INFINITE_EVENT);\n },\n deactivated: function () {\n this.status === s.LOADING && (this.status = s.READY), this.scrollParent.removeEventListener(\"scroll\", this.scrollHandler, a);\n },\n activated: function () {\n this.scrollParent.addEventListener(\"scroll\", this.scrollHandler, a);\n },\n methods: {\n attemptLoad: function (t) {\n var e = this;\n this.status !== s.COMPLETE && x(this.$el) && this.getCurrentDistance() <= this.distance ? (this.status = s.LOADING, \"top\" === this.direction && this.$nextTick(function () {\n w.save(e.scrollParent);\n }), \"function\" == typeof this.onInfinite ? this.onInfinite.call(null, this.stateChanger) : this.$emit(\"infinite\", this.stateChanger), !t || this.forceUseInfiniteWrapper || v.isChecked || v.track()) : this.status === s.LOADING && (this.status = s.READY);\n },\n getCurrentDistance: function () {\n var t;\n \"top\" === this.direction ? t = \"number\" == typeof this.scrollParent.scrollTop ? this.scrollParent.scrollTop : this.scrollParent.pageYOffset : t = this.$el.getBoundingClientRect().top - (this.scrollParent === window ? window.innerHeight : this.scrollParent.getBoundingClientRect().bottom);\n return t;\n },\n getScrollParent: function () {\n var t,\n e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : this.$el;\n return \"string\" == typeof this.forceUseInfiniteWrapper && (t = document.querySelector(this.forceUseInfiniteWrapper)), t || (\"BODY\" === e.tagName ? t = window : !this.forceUseInfiniteWrapper && [\"scroll\", \"auto\"].indexOf(getComputedStyle(e).overflowY) > -1 ? t = e : (e.hasAttribute(\"infinite-wrapper\") || e.hasAttribute(\"data-infinite-wrapper\")) && (t = e)), t || this.getScrollParent(e.parentNode);\n }\n },\n destroyed: function () {\n !this.status !== s.COMPLETE && (g.reset(), w.remove(this.scrollParent), this.scrollParent.removeEventListener(\"scroll\", this.scrollHandler, a));\n }\n }, function () {\n var t = this,\n e = t.$createElement,\n n = t._self._c || e;\n return n(\"div\", {\n staticClass: \"infinite-loading-container\"\n }, [n(\"div\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: t.isShowSpinner,\n expression: \"isShowSpinner\"\n }],\n staticClass: \"infinite-status-prompt\",\n style: t.slotStyles.spinner\n }, [t._t(\"spinner\", [n(\"spinner\", {\n attrs: {\n spinner: t.spinner\n }\n })])], 2), t._v(\" \"), n(\"div\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: t.isShowNoResults,\n expression: \"isShowNoResults\"\n }],\n staticClass: \"infinite-status-prompt\",\n style: t.slotStyles.noResults\n }, [t._t(\"no-results\", [t.slots.noResults.render ? n(t.slots.noResults, {\n tag: \"component\"\n }) : [t._v(t._s(t.slots.noResults))]])], 2), t._v(\" \"), n(\"div\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: t.isShowNoMore,\n expression: \"isShowNoMore\"\n }],\n staticClass: \"infinite-status-prompt\",\n style: t.slotStyles.noMore\n }, [t._t(\"no-more\", [t.slots.noMore.render ? n(t.slots.noMore, {\n tag: \"component\"\n }) : [t._v(t._s(t.slots.noMore))]])], 2), t._v(\" \"), n(\"div\", {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: t.isShowError,\n expression: \"isShowError\"\n }],\n staticClass: \"infinite-status-prompt\",\n style: t.slotStyles.error\n }, [t._t(\"error\", [t.slots.error.render ? n(t.slots.error, {\n tag: \"component\",\n attrs: {\n trigger: t.attemptLoad\n }\n }) : [t._v(\"\\n \" + t._s(t.slots.error) + \"\\n \"), n(\"br\"), t._v(\" \"), n(\"button\", {\n staticClass: \"btn-try-infinite\",\n domProps: {\n textContent: t._s(t.slots.errorBtnText)\n },\n on: {\n click: t.attemptLoad\n }\n })]], {\n trigger: t.attemptLoad\n })], 2)]);\n }, [], !1, function (t) {\n var e = n(7);\n e.__inject__ && e.__inject__(t);\n }, \"644ea9c9\", null).exports;\n\n function E(t) {\n d.mode = t.config.productionTip ? \"development\" : \"production\";\n }\n\n Object.defineProperty(k, \"install\", {\n configurable: !1,\n enumerable: !1,\n value: function (t, e) {\n Object.assign(d.props, e && e.props), Object.assign(d.slots, e && e.slots), Object.assign(d.system, e && e.system), t.component(\"infinite-loading\", k), E(t);\n }\n }), \"undefined\" != typeof window && window.Vue && (window.Vue.component(\"infinite-loading\", k), E(window.Vue));\n e.default = k;\n }]);\n});\n\n//# sourceURL=webpack://materio.com/./node_modules/vue-infinite-loading/dist/vue-infinite-loading.js?"); /***/ }), /***/ "./node_modules/vue-js-modal/dist/index.js": /*!*************************************************!*\ !*** ./node_modules/vue-js-modal/dist/index.js ***! \*************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { eval("!function (t, e) {\n true ? module.exports = e() : 0;\n}(window, function () {\n return i = {}, o.m = n = [function (t, e, n) {\n var i = n(7);\n \"string\" == typeof i && (i = [[t.i, i, \"\"]]), i.locals && (t.exports = i.locals);\n (0, n(4).default)(\"d763679c\", i, !1, {});\n }, function (t, e, n) {\n var i = n(10);\n \"string\" == typeof i && (i = [[t.i, i, \"\"]]), i.locals && (t.exports = i.locals);\n (0, n(4).default)(\"6b9cc0e0\", i, !1, {});\n }, function (t, e, n) {\n var i = n(12);\n \"string\" == typeof i && (i = [[t.i, i, \"\"]]), i.locals && (t.exports = i.locals);\n (0, n(4).default)(\"663c004e\", i, !1, {});\n }, function (t, e) {\n t.exports = function (n) {\n var a = [];\n return a.toString = function () {\n return this.map(function (t) {\n var e = function (t, e) {\n var n = t[1] || \"\",\n i = t[3];\n if (!i) return n;\n\n if (e && \"function\" == typeof btoa) {\n var o = function (t) {\n return \"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(t)))) + \" */\";\n }(i),\n r = i.sources.map(function (t) {\n return \"/*# sourceURL=\" + i.sourceRoot + t + \" */\";\n });\n\n return [n].concat(r).concat([o]).join(\"\\n\");\n }\n\n return [n].join(\"\\n\");\n }(t, n);\n\n return t[2] ? \"@media \" + t[2] + \"{\" + e + \"}\" : e;\n }).join(\"\");\n }, a.i = function (t, e) {\n \"string\" == typeof t && (t = [[null, t, \"\"]]);\n\n for (var n = {}, i = 0; i < this.length; i++) {\n var o = this[i][0];\n \"number\" == typeof o && (n[o] = !0);\n }\n\n for (i = 0; i < t.length; i++) {\n var r = t[i];\n \"number\" == typeof r[0] && n[r[0]] || (e && !r[2] ? r[2] = e : e && (r[2] = \"(\" + r[2] + \") and (\" + e + \")\"), a.push(r));\n }\n }, a;\n };\n }, function (t, e, n) {\n \"use strict\";\n\n function l(t, e) {\n for (var n = [], i = {}, o = 0; o < e.length; o++) {\n var r = e[o],\n a = r[0],\n s = {\n id: t + \":\" + o,\n css: r[1],\n media: r[2],\n sourceMap: r[3]\n };\n i[a] ? i[a].parts.push(s) : n.push(i[a] = {\n id: a,\n parts: [s]\n });\n }\n\n return n;\n }\n\n n.r(e), n.d(e, \"default\", function () {\n return p;\n });\n var i = \"undefined\" != typeof document;\n 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.\");\n\n var u = {},\n o = i && (document.head || document.getElementsByTagName(\"head\")[0]),\n r = null,\n a = 0,\n c = !1,\n s = function () {},\n d = null,\n h = \"data-vue-ssr-id\",\n f = \"undefined\" != typeof navigator && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());\n\n function p(a, t, e, n) {\n c = e, d = n || {};\n var s = l(a, t);\n return v(s), function (t) {\n for (var e = [], n = 0; n < s.length; n++) {\n var i = s[n];\n (o = u[i.id]).refs--, e.push(o);\n }\n\n t ? v(s = l(a, t)) : s = [];\n\n for (n = 0; n < e.length; n++) {\n var o;\n\n if (0 === (o = e[n]).refs) {\n for (var r = 0; r < o.parts.length; r++) o.parts[r]();\n\n delete u[o.id];\n }\n }\n };\n }\n\n function v(t) {\n for (var e = 0; e < t.length; e++) {\n var n = t[e],\n i = u[n.id];\n\n if (i) {\n i.refs++;\n\n for (var o = 0; o < i.parts.length; o++) i.parts[o](n.parts[o]);\n\n for (; o < n.parts.length; o++) i.parts.push(b(n.parts[o]));\n\n i.parts.length > n.parts.length && (i.parts.length = n.parts.length);\n } else {\n var r = [];\n\n for (o = 0; o < n.parts.length; o++) r.push(b(n.parts[o]));\n\n u[n.id] = {\n id: n.id,\n refs: 1,\n parts: r\n };\n }\n }\n }\n\n function m() {\n var t = document.createElement(\"style\");\n return t.type = \"text/css\", o.appendChild(t), t;\n }\n\n function b(e) {\n var n,\n i,\n t = document.querySelector(\"style[\" + h + '~=\"' + e.id + '\"]');\n\n if (t) {\n if (c) return s;\n t.parentNode.removeChild(t);\n }\n\n if (f) {\n var o = a++;\n t = r = r || m(), n = w.bind(null, t, o, !1), i = w.bind(null, t, o, !0);\n } else t = m(), n = function (t, e) {\n var n = e.css,\n i = e.media,\n o = e.sourceMap;\n i && t.setAttribute(\"media\", i);\n d.ssrId && t.setAttribute(h, e.id);\n o && (n += \"\\n/*# sourceURL=\" + o.sources[0] + \" */\", n += \"\\n/*# sourceMappingURL=data:application/json;base64,\" + btoa(unescape(encodeURIComponent(JSON.stringify(o)))) + \" */\");\n if (t.styleSheet) t.styleSheet.cssText = n;else {\n for (; t.firstChild;) t.removeChild(t.firstChild);\n\n t.appendChild(document.createTextNode(n));\n }\n }.bind(null, t), i = function () {\n t.parentNode.removeChild(t);\n };\n\n return n(e), function (t) {\n if (t) {\n if (t.css === e.css && t.media === e.media && t.sourceMap === e.sourceMap) return;\n n(e = t);\n } else i();\n };\n }\n\n var y,\n g = (y = [], function (t, e) {\n return y[t] = e, y.filter(Boolean).join(\"\\n\");\n });\n\n function w(t, e, n, i) {\n var o = n ? \"\" : i.css;\n if (t.styleSheet) t.styleSheet.cssText = g(e, o);else {\n var r = document.createTextNode(o),\n a = t.childNodes;\n a[e] && t.removeChild(a[e]), a.length ? t.insertBefore(r, a[e]) : t.appendChild(r);\n }\n }\n }, function (t, M, e) {\n \"use strict\";\n\n (function (t) {\n var i = function () {\n if (\"undefined\" != typeof Map) return Map;\n\n function i(t, n) {\n var i = -1;\n return t.some(function (t, e) {\n return t[0] === n && (i = e, !0);\n }), i;\n }\n\n return Object.defineProperty(t.prototype, \"size\", {\n get: function () {\n return this.__entries__.length;\n },\n enumerable: !0,\n configurable: !0\n }), t.prototype.get = function (t) {\n var e = i(this.__entries__, t),\n n = this.__entries__[e];\n return n && n[1];\n }, t.prototype.set = function (t, e) {\n var n = i(this.__entries__, t);\n ~n ? this.__entries__[n][1] = e : this.__entries__.push([t, e]);\n }, t.prototype.delete = function (t) {\n var e = this.__entries__,\n n = i(e, t);\n ~n && e.splice(n, 1);\n }, t.prototype.has = function (t) {\n return !!~i(this.__entries__, t);\n }, t.prototype.clear = function () {\n this.__entries__.splice(0);\n }, t.prototype.forEach = function (t, e) {\n void 0 === e && (e = null);\n\n for (var n = 0, i = this.__entries__; n < i.length; n++) {\n var o = i[n];\n t.call(e, o[1], o[0]);\n }\n }, t;\n\n function t() {\n this.__entries__ = [];\n }\n }(),\n n = \"undefined\" != typeof window && \"undefined\" != typeof document && window.document === document,\n 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\")(),\n l = \"function\" == typeof requestAnimationFrame ? requestAnimationFrame.bind(e) : function (t) {\n return setTimeout(function () {\n return t(Date.now());\n }, 1e3 / 60);\n },\n u = 2;\n\n var o = [\"top\", \"right\", \"bottom\", \"left\", \"width\", \"height\", \"size\", \"weight\"],\n r = \"undefined\" != typeof MutationObserver,\n a = (s.prototype.addObserver = function (t) {\n ~this.observers_.indexOf(t) || this.observers_.push(t), this.connected_ || this.connect_();\n }, s.prototype.removeObserver = function (t) {\n var e = this.observers_,\n n = e.indexOf(t);\n ~n && e.splice(n, 1), !e.length && this.connected_ && this.disconnect_();\n }, s.prototype.refresh = function () {\n this.updateObservers_() && this.refresh();\n }, s.prototype.updateObservers_ = function () {\n var t = this.observers_.filter(function (t) {\n return t.gatherActive(), t.hasActive();\n });\n return t.forEach(function (t) {\n return t.broadcastActive();\n }), 0 < t.length;\n }, s.prototype.connect_ = function () {\n n && !this.connected_ && (document.addEventListener(\"transitionend\", this.onTransitionEnd_), window.addEventListener(\"resize\", this.refresh), r ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {\n attributes: !0,\n childList: !0,\n characterData: !0,\n subtree: !0\n })) : (document.addEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0);\n }, s.prototype.disconnect_ = function () {\n 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);\n }, s.prototype.onTransitionEnd_ = function (t) {\n var e = t.propertyName,\n n = void 0 === e ? \"\" : e;\n o.some(function (t) {\n return !!~n.indexOf(t);\n }) && this.refresh();\n }, s.getInstance = function () {\n return this.instance_ || (this.instance_ = new s()), this.instance_;\n }, s.instance_ = null, s);\n\n function s() {\n function t() {\n r && (r = !1, i()), a && n();\n }\n\n function e() {\n l(t);\n }\n\n function n() {\n var t = Date.now();\n\n if (r) {\n if (t - s < u) return;\n a = !0;\n } else a = !(r = !0), setTimeout(e, o);\n\n s = t;\n }\n\n var i, o, r, a, s;\n 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);\n }\n\n var c = function (t, e) {\n for (var n = 0, i = Object.keys(e); n < i.length; n++) {\n var o = i[n];\n Object.defineProperty(t, o, {\n value: e[o],\n enumerable: !1,\n writable: !1,\n configurable: !0\n });\n }\n\n return t;\n },\n h = function (t) {\n return t && t.ownerDocument && t.ownerDocument.defaultView || e;\n },\n f = y(0, 0, 0, 0);\n\n function p(t) {\n return parseFloat(t) || 0;\n }\n\n function v(n) {\n for (var t = [], e = 1; e < arguments.length; e++) t[e - 1] = arguments[e];\n\n return t.reduce(function (t, e) {\n return t + p(n[\"border-\" + e + \"-width\"]);\n }, 0);\n }\n\n function d(t) {\n var e = t.clientWidth,\n n = t.clientHeight;\n if (!e && !n) return f;\n\n var i,\n o = h(t).getComputedStyle(t),\n r = function (t) {\n for (var e = {}, n = 0, i = [\"top\", \"right\", \"bottom\", \"left\"]; n < i.length; n++) {\n var o = i[n],\n r = t[\"padding-\" + o];\n e[o] = p(r);\n }\n\n return e;\n }(o),\n a = r.left + r.right,\n s = r.top + r.bottom,\n l = p(o.width),\n u = p(o.height);\n\n 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) {\n var c = Math.round(l + a) - e,\n d = Math.round(u + s) - n;\n 1 !== Math.abs(c) && (l -= c), 1 !== Math.abs(d) && (u -= d);\n }\n\n return y(r.left, r.top, l, u);\n }\n\n var m = \"undefined\" != typeof SVGGraphicsElement ? function (t) {\n return t instanceof h(t).SVGGraphicsElement;\n } : function (t) {\n return t instanceof h(t).SVGElement && \"function\" == typeof t.getBBox;\n };\n\n function b(t) {\n return n ? m(t) ? y(0, 0, (e = t.getBBox()).width, e.height) : d(t) : f;\n var e;\n }\n\n function y(t, e, n, i) {\n return {\n x: t,\n y: e,\n width: n,\n height: i\n };\n }\n\n var g = (w.prototype.isActive = function () {\n var t = b(this.target);\n return (this.contentRect_ = t).width !== this.broadcastWidth || t.height !== this.broadcastHeight;\n }, w.prototype.broadcastRect = function () {\n var t = this.contentRect_;\n return this.broadcastWidth = t.width, this.broadcastHeight = t.height, t;\n }, w);\n\n function w(t) {\n this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = y(0, 0, 0, 0), this.target = t;\n }\n\n var _ = function (t, e) {\n var n,\n i,\n o,\n r,\n a,\n s,\n l,\n 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, {\n x: i,\n y: o,\n width: r,\n height: a,\n top: o,\n right: i + r,\n bottom: a + o,\n left: i\n }), l);\n c(this, {\n target: t,\n contentRect: u\n });\n },\n E = (x.prototype.observe = function (t) {\n if (!arguments.length) throw new TypeError(\"1 argument required, but only 0 present.\");\n\n if (\"undefined\" != typeof Element && Element instanceof Object) {\n if (!(t instanceof h(t).Element)) throw new TypeError('parameter 1 is not of type \"Element\".');\n var e = this.observations_;\n e.has(t) || (e.set(t, new g(t)), this.controller_.addObserver(this), this.controller_.refresh());\n }\n }, x.prototype.unobserve = function (t) {\n if (!arguments.length) throw new TypeError(\"1 argument required, but only 0 present.\");\n\n if (\"undefined\" != typeof Element && Element instanceof Object) {\n if (!(t instanceof h(t).Element)) throw new TypeError('parameter 1 is not of type \"Element\".');\n var e = this.observations_;\n e.has(t) && (e.delete(t), e.size || this.controller_.removeObserver(this));\n }\n }, x.prototype.disconnect = function () {\n this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this);\n }, x.prototype.gatherActive = function () {\n var e = this;\n this.clearActive(), this.observations_.forEach(function (t) {\n t.isActive() && e.activeObservations_.push(t);\n });\n }, x.prototype.broadcastActive = function () {\n if (this.hasActive()) {\n var t = this.callbackCtx_,\n e = this.activeObservations_.map(function (t) {\n return new _(t.target, t.broadcastRect());\n });\n this.callback_.call(t, e, t), this.clearActive();\n }\n }, x.prototype.clearActive = function () {\n this.activeObservations_.splice(0);\n }, x.prototype.hasActive = function () {\n return 0 < this.activeObservations_.length;\n }, x);\n\n function x(t, e, n) {\n if (this.activeObservations_ = [], this.observations_ = new i(), \"function\" != typeof t) throw new TypeError(\"The callback provided as parameter 1 is not a function.\");\n this.callback_ = t, this.controller_ = e, this.callbackCtx_ = n;\n }\n\n var T = new (\"undefined\" != typeof WeakMap ? WeakMap : i)(),\n O = function t(e) {\n if (!(this instanceof t)) throw new TypeError(\"Cannot call a class as a function.\");\n if (!arguments.length) throw new TypeError(\"1 argument required, but only 0 present.\");\n var n = a.getInstance(),\n i = new E(e, n, this);\n T.set(this, i);\n };\n\n [\"observe\", \"unobserve\", \"disconnect\"].forEach(function (e) {\n O.prototype[e] = function () {\n var t;\n return (t = T.get(this))[e].apply(t, arguments);\n };\n });\n var S = void 0 !== e.ResizeObserver ? e.ResizeObserver : O;\n M.a = S;\n }).call(this, e(8));\n }, function (t, e, n) {\n \"use strict\";\n\n var i = n(0);\n n.n(i).a;\n }, function (t, e, n) {\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\", \"\"]);\n }, function (t, e) {\n var n;\n\n n = function () {\n return this;\n }();\n\n try {\n n = n || new Function(\"return this\")();\n } catch (t) {\n \"object\" == typeof window && (n = window);\n }\n\n t.exports = n;\n }, function (t, e, n) {\n \"use strict\";\n\n var i = n(1);\n n.n(i).a;\n }, function (t, e, n) {\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\", \"\"]);\n }, function (t, e, n) {\n \"use strict\";\n\n var i = n(2);\n n.n(i).a;\n }, function (t, e, n) {\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\", \"\"]);\n }, function (t, e, n) {\n \"use strict\";\n\n n.r(e), n.d(e, \"Modal\", function () {\n return W;\n }), n.d(e, \"Dialog\", function () {\n return U;\n }), n.d(e, \"version\", function () {\n return J;\n });\n\n function i() {\n var e = this,\n t = e.$createElement,\n n = e._self._c || t;\n return e.visible ? n(\"div\", {\n class: e.containerClass\n }, [n(\"transition\", {\n attrs: {\n name: e.guaranteedOverlayTransition\n },\n on: {\n \"before-enter\": e.beforeOverlayTransitionEnter,\n \"after-enter\": e.afterOverlayTransitionEnter,\n \"before-leave\": e.beforeOverlayTransitionLeave,\n \"after-leave\": e.afterOverlayTransitionLeave\n }\n }, [e.visibility.overlay ? n(\"div\", {\n staticClass: \"vm--overlay\",\n attrs: {\n \"data-modal\": e.name,\n \"aria-expanded\": e.visibility.overlay.toString()\n },\n on: {\n click: function (t) {\n return t.target !== t.currentTarget ? null : (t.stopPropagation(), e.onOverlayClick(t));\n }\n }\n }, [n(\"div\", {\n staticClass: \"vm--top-right-slot\"\n }, [e._t(\"top-right\")], 2)]) : e._e()]), e._v(\" \"), n(\"transition\", {\n attrs: {\n name: e.guaranteedModalTransition\n },\n on: {\n \"before-enter\": e.beforeModalTransitionEnter,\n \"after-enter\": e.afterModalTransitionEnter,\n \"before-leave\": e.beforeModalTransitionLeave,\n \"after-leave\": e.afterModalTransitionLeave\n }\n }, [e.visibility.modal ? n(\"div\", {\n ref: \"modal\",\n class: e.modalClass,\n style: e.modalStyle,\n attrs: {\n \"aria-expanded\": e.visibility.modal.toString(),\n role: \"dialog\",\n \"aria-modal\": \"true\"\n }\n }, [e._t(\"default\"), e._v(\" \"), e.resizable && !e.isAutoHeight ? n(\"resizer\", {\n attrs: {\n \"min-width\": e.minWidth,\n \"min-height\": e.minHeight,\n \"max-width\": e.maxWidth,\n \"max-height\": e.maxHeight\n },\n on: {\n resize: e.onModalResize\n }\n }) : e._e()], 2) : e._e()])], 1) : e._e();\n }\n\n function o() {\n var t = this.$createElement;\n return (this._self._c || t)(\"div\", {\n class: this.className\n });\n }\n\n o._withStripped = i._withStripped = !0;\n\n function h(t, e, n) {\n return n < t ? t : e < n ? e : n;\n }\n\n function r(t, e, n) {\n return e in t ? Object.defineProperty(t, e, {\n value: n,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : t[e] = n, t;\n }\n\n function a(t, e) {\n return function (t) {\n if (Array.isArray(t)) return t;\n }(t) || function (t, e) {\n var n = [],\n i = !0,\n o = !1,\n r = void 0;\n\n try {\n for (var a, s = t[Symbol.iterator](); !(i = (a = s.next()).done) && (n.push(a.value), !e || n.length !== e); i = !0);\n } catch (t) {\n o = !0, r = t;\n } finally {\n try {\n i || null == s.return || s.return();\n } finally {\n if (o) throw r;\n }\n }\n\n return n;\n }(t, e) || function () {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }();\n }\n\n function s() {\n var t = window.innerWidth,\n e = document.documentElement.clientWidth;\n return t && e ? Math.min(t, e) : e || t;\n }\n\n function l(t) {\n return t.split(\";\").map(function (t) {\n return t.trim();\n }).filter(Boolean).map(function (t) {\n return t.split(\":\");\n }).reduce(function (t, e) {\n var n = a(e, 2);\n return function (e) {\n for (var t = 1; t < arguments.length; t++) {\n var n = null != arguments[t] ? arguments[t] : {},\n i = Object.keys(n);\n \"function\" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {\n return Object.getOwnPropertyDescriptor(n, t).enumerable;\n }))), i.forEach(function (t) {\n r(e, t, n[t]);\n });\n }\n\n return e;\n }({}, t, r({}, n[0], n[1]));\n }, {});\n }\n\n function f(t) {\n return t.touches && 0 < t.touches.length ? t.touches[0] : t;\n }\n\n var p = [\"INPUT\", \"TEXTAREA\", \"SELECT\"],\n c = function (t) {\n var e = 0 < arguments.length && void 0 !== t ? t : 0;\n return function () {\n return (e++).toString();\n };\n }(),\n u = {\n name: \"VueJsModalResizer\",\n props: {\n minHeight: {\n type: Number,\n default: 0\n },\n minWidth: {\n type: Number,\n default: 0\n },\n maxWidth: {\n type: Number,\n default: Number.MAX_SAFE_INTEGER\n },\n maxHeight: {\n type: Number,\n default: Number.MAX_SAFE_INTEGER\n }\n },\n data: function () {\n return {\n clicked: !1,\n size: {}\n };\n },\n mounted: function () {\n this.$el.addEventListener(\"mousedown\", this.start, !1);\n },\n computed: {\n className: function () {\n return [\"vue-modal-resizer\", {\n clicked: this.clicked\n }];\n }\n },\n methods: {\n start: function (t) {\n this.clicked = !0, window.addEventListener(\"mousemove\", this.mousemove, !1), window.addEventListener(\"mouseup\", this.stop, !1), t.stopPropagation(), t.preventDefault();\n },\n stop: function () {\n this.clicked = !1, window.removeEventListener(\"mousemove\", this.mousemove, !1), window.removeEventListener(\"mouseup\", this.stop, !1), this.$emit(\"resize-stop\", {\n element: this.$el.parentElement,\n size: this.size\n });\n },\n mousemove: function (t) {\n this.resize(t);\n },\n resize: function (t) {\n var e = this.$el.parentElement;\n\n if (e) {\n var n = t.clientX - e.offsetLeft,\n i = t.clientY - e.offsetTop,\n o = Math.min(s(), this.maxWidth),\n r = Math.min(window.innerHeight, this.maxHeight);\n n = h(this.minWidth, o, n), i = h(this.minHeight, r, i), this.size = {\n width: n,\n height: i\n }, e.style.width = n + \"px\", e.style.height = i + \"px\", this.$emit(\"resize\", {\n element: e,\n size: this.size\n });\n }\n }\n }\n };\n\n n(6);\n\n function d(t, e, n, i, o, r, a, s) {\n var l,\n u = \"function\" == typeof t ? t.options : t;\n 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) {\n (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);\n }, u._ssrRegister = l) : o && (l = s ? function () {\n o.call(this, this.$root.$options.shadowRoot);\n } : o), l) if (u.functional) {\n u._injectStyles = l;\n var c = u.render;\n\n u.render = function (t, e) {\n return l.call(e), c(t, e);\n };\n } else {\n var d = u.beforeCreate;\n u.beforeCreate = d ? [].concat(d, l) : [l];\n }\n return {\n exports: t,\n options: u\n };\n }\n\n var v = d(u, o, [], !1, null, null, null);\n v.options.__file = \"src/components/Resizer.vue\";\n var m = v.exports;\n\n function b(t) {\n return (b = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (t) {\n return typeof t;\n } : function (t) {\n return t && \"function\" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? \"symbol\" : typeof t;\n })(t);\n }\n\n function y(t) {\n switch (b(t)) {\n case \"number\":\n return {\n type: \"px\",\n value: t\n };\n\n case \"string\":\n return function (e) {\n if (\"auto\" === e) return {\n type: e,\n value: 0\n };\n\n var t = _.find(function (t) {\n return t.regexp.test(e);\n });\n\n return t ? {\n type: t.name,\n value: parseFloat(e)\n } : {\n type: \"\",\n value: e\n };\n }(t);\n\n default:\n return {\n type: \"\",\n value: t\n };\n }\n }\n\n function g(t) {\n if (\"string\" != typeof t) return 0 <= t;\n var e = y(t);\n return (\"%\" === e.type || \"px\" === e.type) && 0 < e.value;\n }\n\n var w = \"[-+]?[0-9]*.?[0-9]+\",\n _ = [{\n name: \"px\",\n regexp: new RegExp(\"^\".concat(w, \"px$\"))\n }, {\n name: \"%\",\n regexp: new RegExp(\"^\".concat(w, \"%$\"))\n }, {\n name: \"px\",\n regexp: new RegExp(\"^\".concat(w, \"$\"))\n }],\n E = n(5),\n x = \"undefined\" != typeof window && window.ResizeObserver ? ResizeObserver : E.a;\n\n function T(t, e) {\n for (var n = 0; n < e.length; n++) {\n var i = e[n];\n i.enumerable = i.enumerable || !1, i.configurable = !0, \"value\" in i && (i.writable = !0), Object.defineProperty(t, i.key, i);\n }\n }\n\n function O(t) {\n return function (t) {\n if (Array.isArray(t)) {\n for (var e = 0, n = new Array(t.length); e < t.length; e++) n[e] = t[e];\n\n return n;\n }\n }(t) || function (t) {\n if (Symbol.iterator in Object(t) || \"[object Arguments]\" === Object.prototype.toString.call(t)) return Array.from(t);\n }(t) || function () {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n }();\n }\n\n function S(t) {\n 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) || []);\n var e;\n }\n\n function M(t) {\n return t == document.activeElement;\n }\n\n var k = function () {\n function t() {\n !function (t, e) {\n if (!(t instanceof e)) throw new TypeError(\"Cannot call a class as a function\");\n }(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);\n }\n\n var e, n, i;\n return e = t, (n = [{\n key: \"lastElement\",\n value: function () {\n return this.elements[this.elements.length - 1] || null;\n }\n }, {\n key: \"firstElement\",\n value: function () {\n return this.elements[0] || null;\n }\n }, {\n key: \"onKeyDown\",\n value: function (t) {\n var e;\n 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;\n }\n }, {\n key: \"enabled\",\n value: function () {\n return !!this.root;\n }\n }, {\n key: \"enable\",\n value: function (t) {\n if (t) {\n this.root = t, this.elements = S(this.root);\n var e = this.firstElement();\n e && e.focus(), this.root.addEventListener(\"keydown\", this.onKeyDown);\n }\n }\n }, {\n key: \"disable\",\n value: function () {\n this.root.removeEventListener(\"keydown\", this.onKeyDown), this.root = null;\n }\n }]) && T(e.prototype, n), i && T(e, i), t;\n }();\n\n function L(t, e, n) {\n return e in t ? Object.defineProperty(t, e, {\n value: n,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : t[e] = n, t;\n }\n\n function z(t, e) {\n return function (t) {\n if (Array.isArray(t)) return t;\n }(t) || function (t, e) {\n var n = [],\n i = !0,\n o = !1,\n r = void 0;\n\n try {\n for (var a, s = t[Symbol.iterator](); !(i = (a = s.next()).done) && (n.push(a.value), !e || n.length !== e); i = !0);\n } catch (t) {\n o = !0, r = t;\n } finally {\n try {\n i || null == s.return || s.return();\n } finally {\n if (o) throw r;\n }\n }\n\n return n;\n }(t, e) || function () {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }();\n }\n\n var $ = \"vm-transition--default\",\n A = \"enter\",\n C = \"entering\",\n j = \"leave\",\n R = \"leavng\",\n H = {\n name: \"VueJsModal\",\n props: {\n name: {\n required: !0,\n type: String\n },\n resizable: {\n type: Boolean,\n default: !1\n },\n adaptive: {\n type: Boolean,\n default: !1\n },\n draggable: {\n type: [Boolean, String],\n default: !1\n },\n scrollable: {\n type: Boolean,\n default: !1\n },\n focusTrap: {\n type: Boolean,\n default: !1\n },\n reset: {\n type: Boolean,\n default: !1\n },\n overlayTransition: {\n type: String,\n default: \"vm-transition--overlay\"\n },\n transition: {\n type: String,\n default: \"vm-transition--modal\"\n },\n clickToClose: {\n type: Boolean,\n default: !0\n },\n classes: {\n type: [String, Array],\n default: function () {\n return [];\n }\n },\n styles: {\n type: [String, Array, Object]\n },\n minWidth: {\n type: Number,\n default: 0,\n validator: function (t) {\n return 0 <= t;\n }\n },\n minHeight: {\n type: Number,\n default: 0,\n validator: function (t) {\n return 0 <= t;\n }\n },\n maxWidth: {\n type: Number,\n default: Number.MAX_SAFE_INTEGER\n },\n maxHeight: {\n type: Number,\n default: Number.MAX_SAFE_INTEGER\n },\n width: {\n type: [Number, String],\n default: 600,\n validator: g\n },\n height: {\n type: [Number, String],\n default: 300,\n validator: function (t) {\n return \"auto\" === t || g(t);\n }\n },\n shiftX: {\n type: Number,\n default: .5,\n validator: function (t) {\n return 0 <= t && t <= 1;\n }\n },\n shiftY: {\n type: Number,\n default: .5,\n validator: function (t) {\n return 0 <= t && t <= 1;\n }\n }\n },\n components: {\n Resizer: m\n },\n data: function () {\n return {\n visible: !1,\n visibility: {\n modal: !1,\n overlay: !1\n },\n overlayTransitionState: null,\n modalTransitionState: null,\n shiftLeft: 0,\n shiftTop: 0,\n modal: {\n width: 0,\n widthType: \"px\",\n height: 0,\n heightType: \"px\",\n renderedHeight: 0\n },\n viewportHeight: 0,\n viewportWidth: 0\n };\n },\n created: function () {\n this.setInitialSize();\n },\n beforeMount: function () {\n 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);\n },\n mounted: function () {\n var n = this;\n this.resizeObserver = new x(function (t) {\n if (0 < t.length) {\n var e = z(t, 1)[0];\n n.modal.renderedHeight = e.contentRect.height;\n }\n }), this.$focusTrap = new k();\n },\n beforeDestroy: function () {\n 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\");\n },\n computed: {\n guaranteedOverlayTransition: function () {\n return this.overlayTransition || $;\n },\n guaranteedModalTransition: function () {\n return this.transition || $;\n },\n isAutoHeight: function () {\n return \"auto\" === this.modal.heightType;\n },\n position: function () {\n var t = this.viewportHeight,\n e = this.viewportWidth,\n n = this.shiftLeft,\n i = this.shiftTop,\n o = this.shiftX,\n r = this.shiftY,\n a = this.trueModalWidth,\n s = this.trueModalHeight,\n l = e - a,\n u = Math.max(t - s, 0),\n c = i + r * u;\n return {\n left: parseInt(h(0, l, n + o * l)),\n top: !s && this.isAutoHeight ? void 0 : parseInt(h(0, u, c))\n };\n },\n trueModalWidth: function () {\n var t = this.viewportWidth,\n e = this.modal,\n n = this.adaptive,\n i = this.minWidth,\n o = this.maxWidth,\n r = \"%\" === e.widthType ? t / 100 * e.width : e.width;\n\n if (n) {\n var a = Math.max(i, Math.min(t, o));\n return h(i, a, r);\n }\n\n return r;\n },\n trueModalHeight: function () {\n var t = this.viewportHeight,\n e = this.modal,\n n = this.isAutoHeight,\n i = this.adaptive,\n o = this.minHeight,\n r = this.maxHeight,\n a = \"%\" === e.heightType ? t / 100 * e.height : e.height;\n if (n) return this.modal.renderedHeight;\n\n if (i) {\n var s = Math.max(o, Math.min(t, r));\n return h(o, s, a);\n }\n\n return a;\n },\n autoHeight: function () {\n return this.adaptive && this.modal.renderedHeight >= this.viewportHeight ? Math.max(this.minHeight, this.viewportHeight) + \"px\" : \"auto\";\n },\n containerClass: function () {\n return [\"vm--container\", this.scrollable && this.isAutoHeight && \"scrollable\"];\n },\n modalClass: function () {\n return [\"vm--modal\", this.classes];\n },\n stylesProp: function () {\n return \"string\" == typeof this.styles ? l(this.styles) : this.styles;\n },\n modalStyle: function () {\n return [this.stylesProp, {\n top: this.position.top + \"px\",\n left: this.position.left + \"px\",\n width: this.trueModalWidth + \"px\",\n height: this.isAutoHeight ? this.autoHeight : this.trueModalHeight + \"px\"\n }];\n },\n isComponentReadyToBeDestroyed: function () {\n return this.overlayTransitionState === j && this.modalTransitionState === j;\n }\n },\n watch: {\n isComponentReadyToBeDestroyed: function (t) {\n t && (this.visible = !1);\n }\n },\n methods: {\n startTransitionEnter: function () {\n this.visibility.overlay = !0, this.visibility.modal = !0;\n },\n startTransitionLeave: function () {\n this.visibility.overlay = !1, this.visibility.modal = !1;\n },\n beforeOverlayTransitionEnter: function () {\n this.overlayTransitionState = C;\n },\n afterOverlayTransitionEnter: function () {\n this.overlayTransitionState = A;\n },\n beforeOverlayTransitionLeave: function () {\n this.overlayTransitionState = R;\n },\n afterOverlayTransitionLeave: function () {\n this.overlayTransitionState = j;\n },\n beforeModalTransitionEnter: function () {\n var t = this;\n this.modalTransitionState = C, this.$nextTick(function () {\n t.resizeObserver.observe(t.$refs.modal);\n });\n },\n afterModalTransitionEnter: function () {\n this.modalTransitionState = A, this.draggable && this.addDraggableListeners(), this.focusTrap && this.$focusTrap.enable(this.$refs.modal);\n var t = this.createModalEvent({\n state: \"opened\"\n });\n this.$emit(\"opened\", t);\n },\n beforeModalTransitionLeave: function () {\n this.modalTransitionState = R, this.resizeObserver.unobserve(this.$refs.modal), this.$focusTrap.enabled() && this.$focusTrap.disable();\n },\n afterModalTransitionLeave: function () {\n this.modalTransitionState = j;\n var t = this.createModalEvent({\n state: \"closed\"\n });\n this.$emit(\"closed\", t);\n },\n onToggle: function (t, e, n) {\n if (this.name === t) {\n var i = void 0 === e ? !this.visible : e;\n this.toggle(i, n);\n }\n },\n setInitialSize: function () {\n var t = y(this.width),\n e = y(this.height);\n this.modal.width = t.value, this.modal.widthType = t.type, this.modal.height = e.value, this.modal.heightType = e.type;\n },\n onEscapeKeyUp: function (t) {\n 27 === t.which && this.visible && this.$modal.hide(this.name);\n },\n onWindowResize: function () {\n this.viewportWidth = s(), this.viewportHeight = window.innerHeight, this.ensureShiftInWindowBounds();\n },\n createModalEvent: function (t) {\n var e = 0 < arguments.length && void 0 !== t ? t : {};\n return function (e) {\n for (var t = 1; t < arguments.length; t++) {\n var n = null != arguments[t] ? arguments[t] : {},\n i = Object.keys(n);\n \"function\" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {\n return Object.getOwnPropertyDescriptor(n, t).enumerable;\n }))), i.forEach(function (t) {\n L(e, t, n[t]);\n });\n }\n\n return e;\n }({\n name: this.name,\n ref: this.$refs.modal || null\n }, e);\n },\n onModalResize: function (t) {\n this.modal.widthType = \"px\", this.modal.width = t.size.width, this.modal.heightType = \"px\", this.modal.height = t.size.height;\n var e = this.modal.size;\n this.$emit(\"resize\", this.createModalEvent({\n size: e\n }));\n },\n open: function (t) {\n var e = this;\n this.reset && (this.setInitialSize(), this.shiftLeft = 0, this.shiftTop = 0), this.scrollable && document.body.classList.add(\"vm--block-scroll\");\n var n = !1,\n i = this.createModalEvent({\n cancel: function () {\n n = !0;\n },\n state: \"before-open\",\n params: t\n });\n 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 () {\n e.startTransitionEnter();\n }));\n },\n close: function (t) {\n this.scrollable && document.body.classList.remove(\"vm--block-scroll\");\n var e = !1,\n n = this.createModalEvent({\n cancel: function () {\n e = !0;\n },\n state: \"before-close\",\n params: t\n });\n this.$emit(\"before-close\", n), e || this.startTransitionLeave();\n },\n toggle: function (t, e) {\n this.visible !== t && (t ? this.open(e) : this.close(e));\n },\n getDraggableElement: function () {\n return !0 === this.draggable ? this.$refs.modal : \"string\" == typeof this.draggable ? this.$refs.modal.querySelector(this.draggable) : null;\n },\n onOverlayClick: function () {\n this.clickToClose && this.toggle(!1);\n },\n addDraggableListeners: function () {\n var a = this,\n t = this.getDraggableElement();\n\n if (t) {\n var s = 0,\n l = 0,\n u = 0,\n c = 0,\n e = function (t) {\n var e = t.target;\n\n if (!(n = e) || -1 === p.indexOf(n.nodeName)) {\n var n,\n i = f(t),\n o = i.clientX,\n r = i.clientY;\n 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;\n }\n },\n d = function (t) {\n var e = f(t),\n n = e.clientX,\n i = e.clientY;\n a.shiftLeft = u + n - s, a.shiftTop = c + i - l, t.preventDefault();\n },\n h = function t(e) {\n a.ensureShiftInWindowBounds(), document.removeEventListener(\"mousemove\", d), document.removeEventListener(\"touchmove\", d), document.removeEventListener(\"mouseup\", t), document.removeEventListener(\"touchend\", t), e.preventDefault();\n };\n\n t.addEventListener(\"mousedown\", e), t.addEventListener(\"touchstart\", e);\n }\n },\n ensureShiftInWindowBounds: function () {\n var t = this.viewportHeight,\n e = this.viewportWidth,\n n = this.shiftLeft,\n i = this.shiftTop,\n o = this.shiftX,\n r = this.shiftY,\n a = this.trueModalWidth,\n s = this.trueModalHeight,\n l = e - a,\n u = Math.max(t - s, 0),\n c = n + o * l,\n d = i + r * u;\n this.shiftLeft -= c - h(0, l, c), this.shiftTop -= d - h(0, u, d);\n }\n }\n },\n N = (n(9), d(H, i, [], !1, null, null, null));\n N.options.__file = \"src/components/Modal.vue\";\n\n function D() {\n var n = this,\n t = n.$createElement,\n i = n._self._c || t;\n return i(n.$modal.context.componentName, {\n tag: \"component\",\n attrs: {\n name: \"dialog\",\n height: \"auto\",\n classes: [\"vue-dialog\", this.params.class],\n width: n.width,\n \"shift-y\": .3,\n adaptive: !0,\n \"focus-trap\": !0,\n clickToClose: n.clickToClose,\n transition: n.transition\n },\n on: {\n \"before-open\": n.beforeOpened,\n \"before-close\": n.beforeClosed,\n opened: function (t) {\n return n.$emit(\"opened\", t);\n },\n closed: function (t) {\n return n.$emit(\"closed\", t);\n }\n }\n }, [i(\"div\", {\n staticClass: \"vue-dialog-content\"\n }, [n.params.title ? i(\"div\", {\n staticClass: \"vue-dialog-content-title\",\n domProps: {\n innerHTML: n._s(n.params.title || \"\")\n }\n }) : n._e(), n._v(\" \"), n.params.component ? i(n.params.component, n._b({\n tag: \"component\"\n }, \"component\", n.params.props, !1)) : i(\"div\", {\n domProps: {\n innerHTML: n._s(n.params.text || \"\")\n }\n })], 1), n._v(\" \"), n.buttons ? i(\"div\", {\n staticClass: \"vue-dialog-buttons\"\n }, n._l(n.buttons, function (t, e) {\n return i(\"button\", {\n key: e,\n class: t.class || \"vue-dialog-button\",\n style: n.buttonStyle,\n attrs: {\n type: \"button\",\n tabindex: \"0\"\n },\n domProps: {\n innerHTML: n._s(t.title)\n },\n on: {\n click: function (t) {\n return t.stopPropagation(), n.click(e, t);\n }\n }\n }, [n._v(n._s(t.title))]);\n }), 0) : i(\"div\", {\n staticClass: \"vue-dialog-buttons-none\"\n })]);\n }\n\n var W = N.exports;\n D._withStripped = !0;\n var P = {\n name: \"VueJsDialog\",\n props: {\n width: {\n type: [Number, String],\n default: 400\n },\n clickToClose: {\n type: Boolean,\n default: !0\n },\n transition: {\n type: String\n }\n },\n data: function () {\n return {\n params: {}\n };\n },\n computed: {\n buttons: function () {\n return this.params.buttons || [];\n },\n buttonStyle: function () {\n return {\n flex: \"1 1 \".concat(100 / this.buttons.length, \"%\")\n };\n }\n },\n methods: {\n beforeOpened: function (t) {\n this.params = t.params || {}, this.$emit(\"before-opened\", t);\n },\n beforeClosed: function (t) {\n this.params = {}, this.$emit(\"before-closed\", t);\n },\n click: function (t, e, n) {\n var i = 2 < arguments.length && void 0 !== n ? n : \"click\",\n o = this.buttons[t],\n r = null == o ? void 0 : o.handler;\n \"function\" == typeof r && r(t, e, {\n source: i\n });\n }\n }\n },\n B = (n(11), d(P, D, [], !1, null, null, null));\n B.options.__file = \"src/components/Dialog.vue\";\n\n function I() {\n var n = this,\n t = n.$createElement,\n i = n._self._c || t;\n return i(\"div\", {\n attrs: {\n id: \"modals-container\"\n }\n }, n._l(n.modals, function (e) {\n return i(\"modal\", n._g(n._b({\n key: e.id,\n on: {\n closed: function (t) {\n return n.remove(e.id);\n }\n }\n }, \"modal\", e.modalAttrs, !1), e.modalListeners), [i(e.component, n._g(n._b({\n tag: \"component\",\n on: {\n close: function (t) {\n return n.$modal.hide(e.modalAttrs.name, t);\n }\n }\n }, \"component\", e.componentAttrs, !1), n.$listeners))], 1);\n }), 1);\n }\n\n var U = B.exports;\n\n function X(t, e, n) {\n return e in t ? Object.defineProperty(t, e, {\n value: n,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : t[e] = n, t;\n }\n\n I._withStripped = !0;\n var F = d({\n data: function () {\n return {\n modals: []\n };\n },\n created: function () {\n this.$root.__modalContainer = this;\n },\n mounted: function () {\n var t = this;\n this.$modal.subscription.$on(\"hide-all\", function () {\n t.modals = [];\n });\n },\n methods: {\n add: function (t, e, n, i) {\n var o = this,\n r = 1 < arguments.length && void 0 !== e ? e : {},\n a = 2 < arguments.length && void 0 !== n ? n : {},\n s = 3 < arguments.length && void 0 !== i ? i : {},\n l = c(),\n u = a.name || \"dynamic_modal_\" + l;\n this.modals.push({\n id: l,\n modalAttrs: function (e) {\n for (var t = 1; t < arguments.length; t++) {\n var n = null != arguments[t] ? arguments[t] : {},\n i = Object.keys(n);\n \"function\" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {\n return Object.getOwnPropertyDescriptor(n, t).enumerable;\n }))), i.forEach(function (t) {\n X(e, t, n[t]);\n });\n }\n\n return e;\n }({}, a, {\n name: u\n }),\n modalListeners: s,\n component: t,\n componentAttrs: r\n }), this.$nextTick(function () {\n o.$modal.show(u);\n });\n },\n remove: function (e) {\n var t = this.modals.findIndex(function (t) {\n return t.id === e;\n });\n -1 !== t && this.modals.splice(t, 1);\n }\n }\n }, I, [], !1, null, null, null);\n F.options.__file = \"src/components/ModalsContainer.vue\";\n var G = F.exports;\n\n function V(t) {\n return (V = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (t) {\n return typeof t;\n } : function (t) {\n return t && \"function\" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? \"symbol\" : typeof t;\n })(t);\n }\n\n function q(t, e, n) {\n return e in t ? Object.defineProperty(t, e, {\n value: n,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : t[e] = n, t;\n }\n\n var K = function (i, t) {\n function o(t, e, n, i) {\n var o,\n r = 2 < arguments.length && void 0 !== n ? n : {},\n a = 3 < arguments.length ? i : void 0,\n s = null === (o = c.root) || void 0 === o ? void 0 : o.__modalContainer,\n l = u.dynamicDefaults || {};\n null != s && s.add(t, e, function (e) {\n for (var t = 1; t < arguments.length; t++) {\n var n = null != arguments[t] ? arguments[t] : {},\n i = Object.keys(n);\n \"function\" == typeof Object.getOwnPropertySymbols && (i = i.concat(Object.getOwnPropertySymbols(n).filter(function (t) {\n return Object.getOwnPropertyDescriptor(n, t).enumerable;\n }))), i.forEach(function (t) {\n q(e, t, n[t]);\n });\n }\n\n return e;\n }({}, l, r), a);\n }\n\n var u = 1 < arguments.length && void 0 !== t ? t : {},\n r = new i(),\n c = {\n root: null,\n componentName: u.componentName || \"Modal\"\n };\n return {\n context: c,\n subscription: r,\n show: function () {\n for (var t = arguments.length, e = new Array(t), n = 0; n < t; n++) e[n] = arguments[n];\n\n var i = e[0];\n\n switch (V(i)) {\n case \"string\":\n (function (t, e) {\n r.$emit(\"toggle\", t, !0, e);\n }).apply(void 0, e);\n break;\n\n case \"object\":\n case \"function\":\n o.apply(void 0, e);\n break;\n\n default:\n console.warn(\"[vue-js-modal] $modal() received an unsupported argument as a first argument.\", i);\n }\n },\n hide: function (t, e) {\n r.$emit(\"toggle\", t, !1, e);\n },\n hideAll: function () {\n r.$emit(\"hide-all\");\n },\n toggle: function (t, e) {\n r.$emit(\"toggle\", t, void 0, e);\n },\n setDynamicModalContainer: function (t) {\n c.root = t;\n var e,\n n = (e = document.createElement(\"div\"), document.body.appendChild(e), e);\n new i({\n parent: t,\n render: function (t) {\n return t(G);\n }\n }).$mount(n);\n }\n };\n },\n Y = {\n install: function (e, t) {\n var n = 1 < arguments.length && void 0 !== t ? t : {};\n\n if (!e.prototype.$modal) {\n var i = new K(e, n);\n Object.defineProperty(e.prototype, \"$modal\", {\n get: function () {\n if (this instanceof e) {\n var t = this.$root;\n i.context.root || i.setDynamicModalContainer(t);\n }\n\n return i;\n }\n }), e.component(i.context.componentName, W), n.dialog && e.component(\"VDialog\", U);\n }\n }\n },\n J = \"__VERSION__\";\n\n e.default = Y;\n }], o.c = i, o.d = function (t, e, n) {\n o.o(t, e) || Object.defineProperty(t, e, {\n enumerable: !0,\n get: n\n });\n }, o.r = function (t) {\n \"undefined\" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {\n value: \"Module\"\n }), Object.defineProperty(t, \"__esModule\", {\n value: !0\n });\n }, o.t = function (e, t) {\n if (1 & t && (e = o(e)), 8 & t) return e;\n if (4 & t && \"object\" == typeof e && e && e.__esModule) return e;\n var n = Object.create(null);\n if (o.r(n), Object.defineProperty(n, \"default\", {\n enumerable: !0,\n value: e\n }), 2 & t && \"string\" != typeof e) for (var i in e) o.d(n, i, function (t) {\n return e[t];\n }.bind(null, i));\n return n;\n }, o.n = function (t) {\n var e = t && t.__esModule ? function () {\n return t.default;\n } : function () {\n return t;\n };\n return o.d(e, \"a\", e), e;\n }, o.o = function (t, e) {\n return Object.prototype.hasOwnProperty.call(t, e);\n }, o.p = \"/dist/\", o(o.s = 13);\n\n function o(t) {\n if (i[t]) return i[t].exports;\n var e = i[t] = {\n i: t,\n l: !1,\n exports: {}\n };\n return n[t].call(e.exports, e, e.exports, o), e.l = !0, e.exports;\n }\n\n var n, i;\n});\n\n//# sourceURL=webpack://materio.com/./node_modules/vue-js-modal/dist/index.js?"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Block/LoginBlock.vue?vue&type=script&lang=js&": /*!***********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Block/LoginBlock.vue?vue&type=script&lang=js& ***! \***********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"LoginBlock\",\n router: _route.default,\n props: ['title', 'block'],\n data: function data() {\n return {\n template: null,\n mail: '',\n password: ''\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n loginMessage: function loginMessage(state) {\n return state.User.loginMessage;\n }\n })),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n userLogin: 'User/userLogin'\n })), {}, {\n login: function login() {\n var _this = this;\n\n this.userLogin({\n mail: this.mail,\n pass: this.password\n }).then(function () {\n console.log(\"LoginBlock user logged-in\");\n\n _this.$router.push({\n name: 'base'\n });\n });\n }\n }),\n beforeMount: function beforeMount() {\n var _this2 = this;\n\n // console.log('LoginBlock beforeMount', this._props.block);\n if (this._props.block) {\n // console.log('LoginBlock beforeMount if this._props.block ok');\n this.template = _vue.default.compile(this._props.block);\n this.$options.staticRenderFns = [];\n this._staticTrees = [];\n this.template.staticRenderFns.map(function (fn) {\n return _this2.$options.staticRenderFns.push(fn);\n });\n }\n },\n mounted: function mounted() {\n // console.log('LoginBlock mounted');\n Drupal.attachBehaviors(this.$el);\n },\n render: function render(h) {\n // console.log('LoginBlock render');\n if (!this.template) {\n // console.log('LoginBlock render NAN');\n return h('span', 'Loading ...');\n } else {\n // console.log('LoginBlock render template');\n return this.template.render.call(this);\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Block/LoginBlock.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Block/SearchBlock.vue?vue&type=script&lang=js&": /*!************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Block/SearchBlock.vue?vue&type=script&lang=js& ***! \************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _SearchForm = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Form/SearchForm */ \"./web/themes/custom/materiotheme/vuejs/components/Form/SearchForm.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n props: ['blockid', 'formhtml'],\n data: function data() {\n return {\n form: null\n };\n },\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)({\n canSearch: function canSearch(state) {\n return state.User.canSearch;\n }\n })), {}, {\n displayform: function displayform() {\n // console.log('computed displayform');\n return this.canSearch && this.form;\n }\n }),\n beforeMount: function beforeMount() {\n // console.log('SearchBlock beforeMount');\n this.form = this.formhtml;\n },\n watch: {\n canSearch: function canSearch(new_value, old_value) {\n // console.log('canSearch changed, old: '+old_value+\", new: \"+new_value);\n if (new_value && !this.form) {\n this.getSearchForm();\n }\n\n if (!new_value && this.form) {\n this.form = null;\n }\n }\n },\n methods: {\n getSearchForm: function getSearchForm() {\n var _this = this;\n\n _maAxios.MA.get(\"/materio_sapi/search_form\").then(function (_ref) {\n var data = _ref.data;\n // console.log(\"getSearchForm\");\n _this.form = data.rendered;\n }).catch(function (error) {\n console.warn('Issue with get searchform', error);\n });\n }\n },\n components: {\n SearchForm: _SearchForm.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Block/SearchBlock.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Block/UserBlock.vue?vue&type=script&lang=js&": /*!**********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Block/UserBlock.vue?vue&type=script&lang=js& ***! \**********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _LoginBlock = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Block/LoginBlock */ \"./web/themes/custom/materiotheme/vuejs/components/Block/LoginBlock.vue\"));\n\nvar _UserTools = _interopRequireDefault(__webpack_require__(/*! vuejs/components/User/UserTools */ \"./web/themes/custom/materiotheme/vuejs/components/User/UserTools.vue\"));\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n props: ['title', 'loginblock'],\n data: function data() {\n return {\n block: null\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n isloggedin: function isloggedin(state) {\n return state.User.isloggedin;\n }\n })),\n beforeMount: function beforeMount() {\n console.log('UserBlock beforeMount');\n\n if (this.loginblock) {\n this.block = this.loginblock;\n } else {\n this.getLoginBlock();\n }\n },\n methods: {\n getLoginBlock: function getLoginBlock() {\n var _this = this;\n\n _maAxios.MA.get(\"/materio_user/login_block\").then(function (_ref) {\n var data = _ref.data;\n // console.log(\"getLoginBlock data\", data);\n _this.block = data.rendered;\n }).catch(function (error) {\n console.warn('Issue with getLoginBlock', error);\n });\n }\n },\n components: {\n LoginBlock: _LoginBlock.default,\n UserTools: _UserTools.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Block/UserBlock.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/ArticleCard.vue?vue&type=script&lang=js&": /*!**************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/ArticleCard.vue?vue&type=script&lang=js& ***! \**************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n// import { JSONAPI } from 'vuejs/api/json-axios'\nvar basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix;\nvar _default = {\n name: \"ArticleCard\",\n router: _route.default,\n props: ['item'],\n data: function data() {\n return {\n alias: this.item.view_node.replace(/^.*\\/blabla\\//g, '')\n };\n },\n methods: {\n onclick: function onclick() {\n console.log('clicked on article', this.alias);\n this.$router.push({\n name: \"article\",\n params: {\n alias: this.alias\n } // query: { nid: this.item.nid }\n // meta: { uuid:this.item.uuid },\n\n });\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/ArticleCard.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Card.vue?vue&type=script&lang=js&": /*!*******************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Card.vue?vue&type=script&lang=js& ***! \*******************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _cardMixins = _interopRequireDefault(__webpack_require__(/*! vuejs/components/cardMixins */ \"./web/themes/custom/materiotheme/vuejs/components/cardMixins.js\"));\n\nvar _ModalCard = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/ModalCard */ \"./web/themes/custom/materiotheme/vuejs/components/Content/ModalCard.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Card\",\n props: ['item'],\n mixins: [_cardMixins.default],\n components: {\n ModalCard: _ModalCard.default\n },\n data: function data() {\n return {\n blanksrc: \"\".concat(drupalSettings.path.themePath, \"/assets/img/blank.gif\"),\n loadingFlag: false // lightbox_index: null\n\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n flagcolls: function flagcolls(state) {\n return state.User.flagcolls;\n },\n isloggedin: function isloggedin(state) {\n return state.User.isloggedin;\n }\n })),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n flagUnflag: 'User/flagUnflag'\n })), {}, {\n flagIsActive: function flagIsActive(collid) {\n // console.log(\"Card flagIsActive\",\n // this.item.id,\n // this.flagcolls[collid].items,\n // this.flagcolls[collid].items.indexOf(this.item.id)\n // );\n // console.log(this.flagcolls[collid].items_uuids);\n // return this.flagcolls[collid].items_uuids.indexOf(this.item.uuid) !== -1;\n return this.flagcolls[collid].items.indexOf(this.item.id) !== -1;\n },\n flagIsLoading: function flagIsLoading(collid) {\n // console.log(this.item.uuid);\n // console.log(this.flagcolls[collid].items_uuids);\n return collid === this.loadingFlag;\n },\n onFlagActionCard: function onFlagActionCard(e) {\n var _this = this;\n\n console.log(\"Card onFlagActionCard\", e, this.item);\n\n if (!this.loadingFlag) {\n var collid = e.target.getAttribute('collid');\n var isActive = this.flagIsActive(collid);\n var action = isActive ? 'unflag' : 'flag'; // console.log('collid', collid);\n // console.log(\"this.item\", this.item);\n\n this.loadingFlag = collid;\n this.flagUnflag({\n action: action,\n id: this.item.id,\n collid: collid\n }).then(function (data) {\n console.log(\"onFlagActionCard then\", data);\n _this.loadingFlag = false;\n });\n }\n },\n // onClickImg (e, index) {\n // this.lightbox_index = index\n // },\n openModalCard: function openModalCard(e) {\n console.log('openModalCard', this.isLoggedin);\n\n if (this.isloggedin) {\n this.$modal.show(_ModalCard.default, {\n item: this.item\n }, {\n name: \"modal-\".concat(this.item.id),\n draggable: true,\n width: '850px',\n height: '610px'\n });\n }\n }\n })\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/Card.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/CardThematique.vue?vue&type=script&lang=js&": /*!*****************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/CardThematique.vue?vue&type=script&lang=js& ***! \*****************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _cardMixins = _interopRequireDefault(__webpack_require__(/*! vuejs/components/cardMixins */ \"./web/themes/custom/materiotheme/vuejs/components/cardMixins.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n// import ModalCard from 'vuejs/components/Content/ModalCard'\nvar _default = {\n name: \"Card\",\n props: ['item'],\n mixins: [_cardMixins.default],\n // components: {\n // ModalCard\n // },\n data: function data() {\n return {\n blanksrc: \"\".concat(drupalSettings.path.themePath, \"/assets/img/blank.gif\"),\n // loadingFlag: false,\n lightbox_index: null,\n alias: this.item.path.replace(/^.?\\/thematique\\//g, '')\n };\n },\n // computed: {\n // ...mapState({\n // flagcolls: state => state.User.flagcolls\n // })\n // },\n methods: {\n // ...mapActions({\n // flagUnflag: 'User/flagUnflag'\n // }),\n // flagIsActive(collid) {\n // // console.log(\"Card flagIsActive\",\n // // this.item.id,\n // // this.flagcolls[collid].items,\n // // this.flagcolls[collid].items.indexOf(this.item.id)\n // // );\n // // console.log(this.flagcolls[collid].items_uuids);\n // // return this.flagcolls[collid].items_uuids.indexOf(this.item.uuid) !== -1;\n // return this.flagcolls[collid].items.indexOf(this.item.id) !== -1;\n // },\n // flagIsLoading(collid) {\n // // console.log(this.item.uuid);\n // // console.log(this.flagcolls[collid].items_uuids);\n // return collid === this.loadingFlag;\n // },\n // onFlagActionCard (e) {\n // console.log(\"Card onFlagActionCard\", e, this.item);\n // if (!this.loadingFlag) {\n // let collid = e.target.getAttribute('collid');\n // let isActive = this.flagIsActive(collid);\n // let action = isActive ? 'unflag' : 'flag';\n // // console.log('collid', collid);\n // // console.log(\"this.item\", this.item);\n // this.loadingFlag = collid;\n // this.flagUnflag({ action: action, id: this.item.id, collid: collid})\n // .then(data => {\n // console.log(\"onFlagActionCard then\", data);\n // this.loadingFlag = false;\n // })\n // }\n // },\n openThematique: function openThematique(e) {\n console.log('openThematique', e);\n this.$router.push({\n name: \"thematique\",\n params: {\n alias: this.alias\n } // query: { nid: this.item.nid }\n // meta: { uuid:this.item.uuid },\n\n });\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/CardThematique.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/LeftContent.vue?vue&type=script&lang=js&": /*!**************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/LeftContent.vue?vue&type=script&lang=js& ***! \**************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nvar _FlagCollection = _interopRequireDefault(__webpack_require__(/*! vuejs/components/User/FlagCollection */ \"./web/themes/custom/materiotheme/vuejs/components/User/FlagCollection.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n router: _route.default,\n props: ['id'],\n data: function data() {\n return {// isOpened: false\n };\n },\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)({\n flagcolls: function flagcolls(state) {\n return state.User.flagcolls;\n },\n openedCollid: function openedCollid(state) {\n return state.User.openedCollid;\n }\n })), {}, {\n isopened: function isopened() {\n return this.openedCollid;\n }\n }),\n beforeMount: function beforeMount() {},\n methods: {},\n components: {\n FlagCollection: _FlagCollection.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/LeftContent.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/LinkedMaterialCard.vue?vue&type=script&lang=js&": /*!*********************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/LinkedMaterialCard.vue?vue&type=script&lang=js& ***! \*********************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _cardMixins = _interopRequireDefault(__webpack_require__(/*! vuejs/components/cardMixins */ \"./web/themes/custom/materiotheme/vuejs/components/cardMixins.js\"));\n\nvar _ModalCard = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/ModalCard */ \"./web/themes/custom/materiotheme/vuejs/components/Content/ModalCard.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"LinkedMaterialCard\",\n props: ['item'],\n mixins: [_cardMixins.default],\n // components: {\n // ModalCard\n // },\n data: function data() {\n return {\n blanksrc: \"\".concat(drupalSettings.path.themePath, \"/assets/img/blank.gif\"),\n loadingItem: false\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n isloggedin: function isloggedin(state) {\n return state.User.isloggedin;\n }\n })),\n methods: {\n itemIsLoading: function itemIsLoading(id) {\n return this.loadingItem;\n },\n openModalCard: function openModalCard(e) {\n console.log('openModalCard', this.isLoggedin);\n\n if (this.isloggedin) {\n this.$modal.show(_ModalCard.default, {\n item: this.item\n }, {\n name: \"modal-\".concat(this.item.id),\n draggable: false,\n width: '850px',\n height: '610px'\n });\n }\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/LinkedMaterialCard.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/MainContent.vue?vue&type=script&lang=js&": /*!**************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/MainContent.vue?vue&type=script&lang=js& ***! \**************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n router: _route.default,\n props: ['id', 'html', 'isfront'],\n data: function data() {\n return {\n home_template_src: null\n };\n },\n beforeMount: function beforeMount() {\n // console.log('MainContent beforeMount this.html', this.html);\n if (!this.home_template_src) {\n // console.log('no home_template_src');\n if (this.html && this.isfront) {\n // if html prop is available and we are landing on home then record it has data\n this.home_template_src = this.html;\n } else {\n // else get it from ajax (e.g. if we didn't load the page from home)\n this.getHomeHtml();\n }\n }\n },\n methods: {\n getHomeHtml: function getHomeHtml() {\n var _this = this;\n\n _maAxios.MA.get('materio_home/ajax/gethome').then(function (_ref) {\n var data = _ref.data;\n // console.log('Home getHomeHtml data', data);\n _this.home_template_src = data.rendered; // record the html src into data\n }).catch(function (error) {\n console.warn('Issue with getHomeHtml', error);\n });\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/MainContent.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/MiniCard.vue?vue&type=script&lang=js&": /*!***********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/MiniCard.vue?vue&type=script&lang=js& ***! \***********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _cardMixins = _interopRequireDefault(__webpack_require__(/*! vuejs/components/cardMixins */ \"./web/themes/custom/materiotheme/vuejs/components/cardMixins.js\"));\n\nvar _ModalCard = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/ModalCard */ \"./web/themes/custom/materiotheme/vuejs/components/Content/ModalCard.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"MiniCard\",\n props: ['item', 'collid'],\n mixins: [_cardMixins.default],\n components: {\n ModalCard: _ModalCard.default\n },\n data: function data() {\n return {\n blanksrc: \"\".concat(drupalSettings.path.themePath, \"/assets/img/blank.gif\"),\n loadingItem: false\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n isloggedin: function isloggedin(state) {\n return state.User.isloggedin;\n }\n })),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n flagUnflag: 'User/flagUnflag'\n })), {}, {\n itemIsLoading: function itemIsLoading(id) {\n return this.loadingItem;\n },\n onUnFlagCard: function onUnFlagCard(e) {\n var _this = this;\n\n console.log(\"Card onFlagActionCard\", e, this.item);\n\n if (!this.loadingItem) {\n this.loadingItem = true;\n this.flagUnflag({\n action: 'unflag',\n id: this.item.id,\n collid: this.collid\n }).then(function (data) {\n console.log(\"onUnFlagCard then\", data);\n _this.loadingItem = false;\n });\n }\n },\n openModalCard: function openModalCard(e) {\n console.log('openModalCard', this.isLoggedin);\n\n if (this.isloggedin) {\n this.$modal.show(_ModalCard.default, {\n item: this.item\n }, {\n name: \"modal-\".concat(this.item.id),\n draggable: true,\n width: '850px',\n height: '610px'\n });\n }\n }\n })\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/MiniCard.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/ModalCard.vue?vue&type=script&lang=js&": /*!************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/ModalCard.vue?vue&type=script&lang=js& ***! \************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _LinkedMaterialCard = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/LinkedMaterialCard */ \"./web/themes/custom/materiotheme/vuejs/components/Content/LinkedMaterialCard.vue\"));\n\nvar _cardMixins = _interopRequireDefault(__webpack_require__(/*! vuejs/components/cardMixins */ \"./web/themes/custom/materiotheme/vuejs/components/cardMixins.js\"));\n\nvar _restAxios = __webpack_require__(/*! vuejs/api/rest-axios */ \"./web/themes/custom/materiotheme/vuejs/api/rest-axios.js\");\n\nvar _graphqlAxios = __webpack_require__(/*! vuejs/api/graphql-axios */ \"./web/themes/custom/materiotheme/vuejs/api/graphql-axios.js\");\n\nvar _printer = __webpack_require__(/*! graphql/language/printer */ \"./node_modules/graphql/language/printer.js\");\n\nvar _graphqlTag = _interopRequireDefault(__webpack_require__(/*! graphql-tag */ \"./node_modules/graphql-tag/src/index.js\"));\n\nvar _materiaumodalFragment = _interopRequireDefault(__webpack_require__(/*! vuejs/api/gql/materiaumodal.fragment.gql */ \"./web/themes/custom/materiotheme/vuejs/api/gql/materiaumodal.fragment.gql\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _templateObject() {\n var data = _taggedTemplateLiteral([\"{\\n materiau(id: \", \", lang: \\\"\", \"\\\") {\\n ...MateriauFields\\n }\\n }\\n \", \"\\n \"]);\n\n _templateObject = function _templateObject() {\n return data;\n };\n\n return data;\n}\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar prettyBytes = __webpack_require__(/*! pretty-bytes */ \"./node_modules/pretty-bytes/index.js\");\n\nvar _debounce = __webpack_require__(/*! lodash/debounce */ \"./node_modules/lodash/debounce.js\");\n\nvar _default = {\n name: \"ModalCard\",\n props: ['item'],\n mixins: [_cardMixins.default],\n components: {\n LinkedMaterialCard: _LinkedMaterialCard.default\n },\n data: function data() {\n return {\n material: null,\n loading: false,\n blanksrc: \"\".concat(drupalSettings.path.themePath, \"/assets/img/blank.gif\"),\n loadingFlag: false,\n lightbox_index: null,\n note: \"\",\n note_nid: null\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n csrf_token: function csrf_token(state) {\n return state.User.csrf_token;\n },\n flagcolls: function flagcolls(state) {\n return state.User.flagcolls;\n },\n showrooms: function showrooms(state) {\n return state.Showrooms.showrooms_by_tid;\n }\n })),\n created: function created() {\n console.log('modale item', this.item);\n this.loadMaterial();\n this.debouncedSaveNote = _debounce(this.saveNote, 500);\n },\n watch: {\n // whenever question changes, this function will run\n note: function note(n, o) {\n console.log(\"note watcher: note\", n);\n this.debouncedSaveNote();\n }\n },\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n flagUnflag: 'User/flagUnflag'\n })), {}, {\n loadMaterial: function loadMaterial() {\n var _this = this;\n\n console.log('loadMaterial', this.item.id);\n this.loading = true;\n var ast = (0, _graphqlTag.default)(_templateObject(), this.item.id, drupalDecoupled.lang_code, _materiaumodalFragment.default);\n\n _graphqlAxios.MGQ.post('', {\n query: (0, _printer.print)(ast)\n }).then(function (_ref) {\n var materiau = _ref.data.data.materiau;\n console.log('loadMaterial material loaded', materiau);\n _this.material = materiau;\n _this.loading = false;\n\n if (materiau.note && materiau.note.id) {\n _this.note_id = materiau.note.id;\n _this.note = materiau.note.contenu;\n } // delay the lazyload to let the card the time to update dom\n // maybe not the best method\n\n\n setTimeout(function () {\n this.activateLazyLoad();\n }.bind(_this), 5);\n }).catch(function (error) {\n console.warn('Issue with loadMaterial', error);\n Promise.reject(error);\n });\n },\n flagIsActive: function flagIsActive(collid) {\n // console.log(this.item.uuid);\n // console.log(this.flagcolls[collid].items_uuids);\n // return this.flagcolls[collid].items_uuids.indexOf(this.item.uuid) !== -1;\n return this.flagcolls[collid].items.indexOf(this.item.id) !== -1;\n },\n flagIsLoading: function flagIsLoading(collid) {\n // console.log(this.item.uuid);\n // console.log(this.flagcolls[collid].items_uuids);\n return collid === this.loadingFlag;\n },\n onFlagActionCard: function onFlagActionCard(e) {\n var _this2 = this;\n\n console.log(\"Card onFlagActionCard\", e);\n\n if (!this.loadingFlag) {\n var collid = e.target.getAttribute('collid');\n var isActive = this.flagIsActive(collid);\n var action = isActive ? 'unflag' : 'flag'; // console.log('collid', collid);\n // console.log(\"this.item\", this.item);\n\n this.loadingFlag = collid;\n this.flagUnflag({\n action: action,\n id: this.item.id,\n collid: collid\n }).then(function (data) {\n console.log(\"onFlagActionCard then\", data);\n _this2.loadingFlag = false;\n });\n }\n },\n onCloseModalCard: function onCloseModalCard(e) {\n // this.$modal.hideAll()\n this.$modal.hide(\"modal-\".concat(this.item.id));\n },\n prettyFileSize: function prettyFileSize(bytes) {\n return prettyBytes(parseInt(bytes));\n },\n shortUrl: function shortUrl(url) {\n return url.replace(/^http:\\/\\//, '').replace(/^www\\./, '');\n },\n saveNote: function saveNote() {\n console.log(\"saveNote\", this.note);\n\n if (this.note_nid) {\n this.updateNote();\n } else {\n this.createNote();\n }\n },\n updateNote: function updateNote() {\n var params = {\n type: [{\n target_id: 'note'\n }],\n field_contenu: this.note\n };\n var config = {\n headers: {\n \"X-CSRF-Token\": this.csrf_token\n }\n };\n\n _restAxios.REST.patch(\"/node/\".concat(this.note_nid, \"?_format=json\"), params, config).then(function (_ref2) {\n var data = _ref2.data;\n console.log('updateNote REST data', data);\n }).catch(function (error) {\n console.warn('Issue with updateNote', error);\n });\n },\n createNote: function createNote() {\n var _this3 = this;\n\n var params = {\n type: [{\n target_id: 'note'\n }],\n title: [{\n value: \"note\"\n }],\n field_contenu: this.note,\n field_target: this.item.id\n };\n var config = {\n headers: {\n \"X-CSRF-Token\": this.csrf_token\n }\n };\n\n _restAxios.REST.post('/node?_format=json', params, config).then(function (_ref3) {\n var data = _ref3.data;\n console.log('createNote REST data', data);\n _this3.note_nid = data.nid[0].value;\n }).catch(function (error) {\n console.warn('Issue with createNote', error);\n });\n }\n })\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/ModalCard.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js&": /*!**********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js& ***! \**********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _restAxios = __webpack_require__(/*! vuejs/api/rest-axios */ \"./web/themes/custom/materiotheme/vuejs/api/rest-axios.js\");\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _Modal = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Helper/Modal */ \"./web/themes/custom/materiotheme/vuejs/components/Helper/Modal.vue\"));\n\nvar _LoginRegister = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Helper/LoginRegister */ \"./web/themes/custom/materiotheme/vuejs/components/Helper/LoginRegister.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix;\nvar _default = {\n name: \"Product\",\n router: _route.default,\n props: ['product'],\n data: function data() {\n return {\n quantity: 1,\n showLoginModal: false\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n isloggedin: function isloggedin(state) {\n return state.User.isloggedin;\n },\n isAdherent: function isAdherent(state) {\n return state.User.isAdherent;\n },\n csrftoken: function csrftoken(state) {\n return state.User.csrftoken;\n }\n })),\n methods: {\n // ...mapActions({\n // userLogin: 'User/userLogin'\n // }),\n closeModal: function closeModal() {\n this.showLoginModal = false;\n },\n checkaddtocart: function checkaddtocart(e, variation_id) {\n console.log('checkaddtocart');\n\n if (!this.isloggedin) {\n // show popup for login or register\n // login or register event will be catched by onLogedin or onRegistered\n this.showLoginModal = variation_id;\n } else {\n // if already logedin directly goes to cart operations\n this.addtocart(variation_id);\n }\n },\n // event bubbled from modal login form\n onLogedIn: function onLogedIn(variation_id) {\n console.log('Product: onLogedIn. variation_id', variation_id);\n this.addtocart(variation_id);\n },\n // event bubbled from modal register form\n onRegistered: function onRegistered(variation_id) {\n console.log('Product: onRegistered. variation_id', variation_id);\n this.addtocart(variation_id);\n },\n getCarts: function getCarts() {\n // this is bugging on stage\n return _restAxios.REST.get(\"/cart?_format=json\", {}, {\n 'X-CSRF-Token': this.csrftoken\n }) // .then(({ data }) => {\n // console.log('current user carts: data', data)\n // })\n .catch(function (error) {\n console.warn('Issue with get cart', error);\n Promise.reject(error);\n });\n },\n deleteCart: function deleteCart(order_id) {\n console.log('deleting cart ', order_id);\n return _restAxios.REST.delete(\"/cart/\".concat(order_id, \"/items?_format=json\")).then(function (_ref) {\n var data = _ref.data;\n console.log(\"product cart \".concat(order_id, \" deleted: data\"), data);\n }).catch(function (error) {\n console.warn(\"Issue with cart \".concat(order_id, \" deleting\"), error);\n Promise.reject(error);\n });\n },\n clearCarts: function clearCarts(data) {\n var promises = []; // clear each cart as a promise\n\n for (var i = 0; i < data.length; i++) {\n promises.push(this.deleteCart(data[i].order_id));\n } // return all the promises as one\n\n\n return Promise.all(promises);\n },\n addtocart: function addtocart(variation_id) {\n var _this = this;\n\n console.log(\"addtocart\");\n this.getCarts().then(function (_ref2) {\n var data = _ref2.data;\n console.log('current user carts: data', data);\n\n _this.clearCarts(data).then(function () {\n console.log('all carts cleared'); // fill the cart with new product\n\n _restAxios.REST.post(\"/cart/add?_format=json\", [{\n \"purchased_entity_type\": \"commerce_product_variation\",\n \"purchased_entity_id\": variation_id,\n \"quantity\": _this.quantity\n }]).then(function (_ref3) {\n var data = _ref3.data;\n console.log('product added to cart: data', data);\n\n _this.closeModal(); // redirect to /cart\n // window.location.href = \"/cart\"\n // TODO: redirect to checkout instead of cart\n\n\n window.location.href = \"/checkout/\".concat(data[0].order_id, \"/order_information\");\n }).catch(function (error) {\n console.warn('Issue with product add to cart', error);\n Promise.reject(error);\n });\n });\n });\n }\n },\n components: {\n Modal: _Modal.default,\n LoginRegister: _LoginRegister.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?vue&type=script&lang=js&": /*!***********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?vue&type=script&lang=js& ***! \***********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n// import { JSONAPI } from 'vuejs/api/json-axios'\nvar basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix;\nvar _default = {\n name: \"Showroom\",\n router: _route.default,\n props: ['item'] // data(){\n // return {\n // alias: this.item.view_node.replace(/^.?\\/showroom\\//g, '')\n // }\n // },\n // methods:{}\n\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Form/LoginForm.vue?vue&type=script&lang=js&": /*!*********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Form/LoginForm.vue?vue&type=script&lang=js& ***! \*********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"LoginForm\",\n data: function data() {\n return {\n form: null,\n mail: null,\n password: null\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n loginMessage: function loginMessage(state) {\n return state.User.loginMessage;\n }\n })),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n userLogin: 'User/userLogin'\n })), {}, {\n getLoginForm: function getLoginForm() {\n var _this = this;\n\n // Form through ajax is provided by materio_user drupal custom module\n // vuejs attributes a inserted by form alter in same module\n _maAxios.MA.get(\"/materio_user/login_form\").then(function (_ref) {\n var data = _ref.data;\n console.log(\"getLoginForm data\");\n _this.form = _vue.default.compile(data.rendered);\n _this.$options.staticRenderFns = [];\n _this._staticTrees = [];\n\n _this.form.staticRenderFns.map(function (fn) {\n return _this.$options.staticRenderFns.push(fn);\n });\n }).catch(function (error) {\n console.warn('Issue with getLoginForm', error);\n });\n },\n login: function login() {\n var _this2 = this;\n\n this.userLogin({\n mail: this.mail,\n pass: this.password\n }).then(function () {\n console.log('logedin from login component');\n\n _this2.$emit('onLogedIn');\n }).catch(function (error) {\n console.warn('Issue with login from login component', error);\n Promise.reject(error);\n });\n }\n }),\n beforeMount: function beforeMount() {\n if (!this.form) {\n this.getLoginForm();\n }\n },\n mounted: function mounted() {\n // console.log('LoginBlock mounted');\n Drupal.attachBehaviors(this.$el);\n },\n render: function render(h) {\n // console.log('LoginBlock render');\n if (!this.form) {\n // console.log('LoginBlock render NAN');\n return h('span', 'Loading ...');\n } else {\n // console.log('LoginBlock render template');\n return this.form.render.call(this);\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Form/LoginForm.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Form/RegisterForm.vue?vue&type=script&lang=js&": /*!************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Form/RegisterForm.vue?vue&type=script&lang=js& ***! \************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nvar _checkPasswordStrength = _interopRequireDefault(__webpack_require__(/*! check-password-strength */ \"./node_modules/check-password-strength/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"RegisterForm\",\n data: function data() {\n return {\n form: null,\n mail: null,\n pass1: null,\n pass2: null,\n ps: \"\"\n };\n },\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)({\n registerMessage: function registerMessage(state) {\n return state.User.registerMessage;\n }\n })), {}, {\n psswd_class: function psswd_class() {\n return this.ps.toLowerCase();\n },\n can_register: function can_register() {\n if (this.ps === \"Strong\") {\n return 'can-register';\n }\n\n return '';\n }\n }),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n userRegister: 'User/userRegister'\n })), {}, {\n getRegisterForm: function getRegisterForm() {\n var _this = this;\n\n // Form through ajax is provided by materio_user drupal custom module\n // vuejs attributes a inserted by form alter in same module\n _maAxios.MA.get(\"/materio_user/register_form\").then(function (_ref) {\n var data = _ref.data;\n console.log(\"getRegisterForm data\", data);\n _this.form = _vue.default.compile(data.rendered);\n _this.$options.staticRenderFns = [];\n _this._staticTrees = [];\n\n _this.form.staticRenderFns.map(function (fn) {\n return _this.$options.staticRenderFns.push(fn);\n });\n }).catch(function (error) {\n console.warn('Issue with getRegisterForm', error);\n });\n },\n checkSubmitEnabled: function checkSubmitEnabled() {\n if (this.ps === 'Strong') {\n this.$refs.register.disabled = false;\n } else {\n this.$refs.register.disabled = true;\n }\n },\n register: function register() {\n var _this2 = this;\n\n console.log('register', this.mail, this.pass1, this.pass2); // TODO: check for identical password\n // TODO: check for valide email\n // TODO: check for unique email\n\n if (this.pass1 === this.pass2) {\n this.userRegister({\n name: this.mail,\n mail: this.mail,\n pass: this.pass1\n }).then(function () {\n console.log('registered from register component');\n\n _this2.$emit('onRegistered');\n }).catch(function (error) {\n console.warn('Issue with register from registerform component', error);\n Promise.reject(error);\n });\n }\n }\n }),\n beforeMount: function beforeMount() {\n if (!this.form) {\n this.getRegisterForm();\n }\n },\n mounted: function mounted() {\n // console.log('LoginBlock mounted');\n Drupal.attachBehaviors(this.$el);\n this.checkSubmitEnabled();\n },\n render: function render(h) {\n // console.log('LoginBlock render');\n if (!this.form) {\n // console.log('LoginBlock render NAN');\n return h('span', 'Loading ...');\n } else {\n // console.log('LoginBlock render template');\n return this.form.render.call(this);\n }\n },\n watch: {\n pass1: function pass1(n, o) {\n if (n) {\n this.ps = (0, _checkPasswordStrength.default)(n).value;\n console.log('watch pass1 n', n, 'ps :', this.ps);\n this.checkSubmitEnabled();\n }\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Form/RegisterForm.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Form/SearchForm.vue?vue&type=script&lang=js&": /*!**********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Form/SearchForm.vue?vue&type=script&lang=js& ***! \**********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n router: _route.default,\n props: ['form'],\n data: function data() {\n return {\n template: null,\n typed: null,\n autocomplete: null // basePath: drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix\n\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n keys: function keys(state) {\n return state.Search.keys;\n },\n term: function term(state) {\n return state.Search.term;\n }\n })),\n methods: {\n submit: function submit() {\n console.log(\"search clicked\", this.typed, this.autocomplete); // New search is triggered by Base.vue with router (which will also fill the store)\n\n this.$router.push({\n name: 'base',\n query: {\n keys: this.typed,\n term: this.autocomplete\n }\n }); // this.$router.push({\n // path:`${this.basePath}/base`,\n // query:{keys:this.typed,term:this.autocomplete}\n // })\n },\n onAutoCompleteSelect: function onAutoCompleteSelect(event, ui) {\n event.preventDefault(); // console.log('autoCompleteSelect', event, ui);\n\n this.typed = ui.item.label;\n this.autocomplete = ui.item.value;\n }\n },\n directives: {\n focus: {\n // directive definition\n inserted: function inserted(el) {\n el.focus();\n }\n }\n },\n beforeMount: function beforeMount() {\n var _this = this;\n\n // console.log('SearchForm beforeMount');\n if (this._props.form) {\n // console.log('SearchForm beforeMount if this._props.form ok');\n this.template = _vue.default.compile(this._props.form); // https://github.com/vuejs/vue/issues/9911\n\n this.$options.staticRenderFns = [];\n this._staticTrees = [];\n this.template.staticRenderFns.map(function (fn) {\n return _this.$options.staticRenderFns.push(fn);\n });\n }\n },\n watch: {\n keys: function keys(n, o) {\n console.log('keys changed', n, o);\n this.typed = n;\n },\n term: function term(n, o) {\n console.log('autocomplete changed', n, o);\n this.autocomplete = n;\n }\n },\n created: function created() {\n this.typed = this.keys;\n this.autocomplete = this.term;\n },\n mounted: function mounted() {\n // console.log('SearchForm mounted');\n Drupal.attachBehaviors(this.$el); // get the search input\n\n var $input = this.$el.querySelector('#edit-search'); // // focus on input\n // $input.focus()\n // Catch the jquery ui events for autocmplete widget\n\n jQuery($input).on('autocompleteselect', this.onAutoCompleteSelect);\n },\n render: function render(h) {\n // console.log('searchForm render');\n if (!this.template) {\n return h('span', 'Loading ...');\n } else {\n return this.template.render.call(this);\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Form/SearchForm.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Helper/LoginRegister.vue?vue&type=script&lang=js&": /*!***************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Helper/LoginRegister.vue?vue&type=script&lang=js& ***! \***************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _LoginForm = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Form/LoginForm */ \"./web/themes/custom/materiotheme/vuejs/components/Form/LoginForm.vue\"));\n\nvar _RegisterForm = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Form/RegisterForm */ \"./web/themes/custom/materiotheme/vuejs/components/Form/RegisterForm.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"LoginRegister\",\n data: function data() {\n return {\n loginEmail: null,\n password: null,\n registerEmail: null\n };\n },\n props: ['callbackargs'],\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n userLogin: 'User/userLogin',\n userRegister: 'User/userRegister'\n })), {}, {\n onLogedIn: function onLogedIn() {\n this.$emit('onLogedIn', this.callbackargs);\n },\n onRegistered: function onRegistered() {\n this.$emit('onRegistered', this.callbackargs);\n }\n }),\n components: {\n LoginForm: _LoginForm.default,\n RegisterForm: _RegisterForm.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Helper/LoginRegister.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Helper/Modal.vue?vue&type=script&lang=js&": /*!*******************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Helper/Modal.vue?vue&type=script&lang=js& ***! \*******************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__ */ /***/ ((__unused_webpack_module, exports) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default2 = {\n name: \"\",\n props: {\n styles: {\n default: function _default() {\n return {\n width: '500px',\n height: '350px'\n };\n },\n type: Object\n }\n },\n data: function data() {\n return {};\n },\n methods: {\n close: function close() {\n console.log('click close');\n this.$emit('close');\n }\n }\n};\nexports.default = _default2;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Helper/Modal.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Article.vue?vue&type=script&lang=js&": /*!********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Article.vue?vue&type=script&lang=js& ***! \********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nvar _store = _interopRequireDefault(__webpack_require__(/*! vuejs/store */ \"./web/themes/custom/materiotheme/vuejs/store/index.js\"));\n\nvar _restAxios = __webpack_require__(/*! vuejs/api/rest-axios */ \"./web/themes/custom/materiotheme/vuejs/api/rest-axios.js\");\n\nvar _graphqlAxios = __webpack_require__(/*! vuejs/api/graphql-axios */ \"./web/themes/custom/materiotheme/vuejs/api/graphql-axios.js\");\n\nvar _printer = __webpack_require__(/*! graphql/language/printer */ \"./node_modules/graphql/language/printer.js\");\n\nvar _graphqlTag = _interopRequireDefault(__webpack_require__(/*! graphql-tag */ \"./node_modules/graphql-tag/src/index.js\"));\n\nvar _articleFragment = _interopRequireDefault(__webpack_require__(/*! vuejs/api/gql/article.fragment.gql */ \"./web/themes/custom/materiotheme/vuejs/api/gql/article.fragment.gql\"));\n\nvar _Card = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/Card */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Card.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _wrapRegExp(re, groups) { _wrapRegExp = function _wrapRegExp(re, groups) { return new BabelRegExp(re, undefined, groups); }; var _RegExp = _wrapNativeSuper(RegExp); var _super = RegExp.prototype; var _groups = new WeakMap(); function BabelRegExp(re, flags, groups) { var _this = _RegExp.call(this, re, flags); _groups.set(_this, groups || _groups.get(re)); return _this; } _inherits(BabelRegExp, _RegExp); BabelRegExp.prototype.exec = function (str) { var result = _super.exec.call(this, str); if (result) result.groups = buildGroups(result, this); return result; }; BabelRegExp.prototype[Symbol.replace] = function (str, substitution) { if (typeof substitution === \"string\") { var groups = _groups.get(this); return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) { return \"$\" + groups[name]; })); } else if (typeof substitution === \"function\") { var _this = this; return _super[Symbol.replace].call(this, str, function () { var args = []; args.push.apply(args, arguments); if (_typeof(args[args.length - 1]) !== \"object\") { args.push(buildGroups(args, _this)); } return substitution.apply(this, args); }); } else { return _super[Symbol.replace].call(this, str, substitution); } }; function buildGroups(result, re) { var g = _groups.get(re); return Object.keys(g).reduce(function (groups, name) { groups[name] = result[g[name]]; return groups; }, Object.create(null)); } return _wrapRegExp.apply(this, arguments); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _templateObject() {\n var data = _taggedTemplateLiteral([\"{\\n route(path: \\\"\", \"\\\", lang: \\\"\", \"\\\") {\\n ...ArticleFields\\n }\\n }\\n \", \"\\n \"]);\n\n _templateObject = function _templateObject() {\n return data;\n };\n\n return data;\n}\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Article\",\n router: _route.default,\n store: _store.default,\n props: ['item'],\n data: function data() {\n return {\n index: -1,\n prevnext: {},\n nid: null,\n path: null,\n article: {},\n image_accroche: null,\n lightbox_items: null,\n loading: true,\n lightbox_index: null\n };\n },\n metaInfo: function metaInfo() {\n return {\n title: this.article.title\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n items: function items(state) {\n return state.Blabla.items;\n }\n })),\n created: function created() {\n this.getArticle();\n },\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n getItems: 'Blabla/getItems',\n getItemIndex: 'Blabla/getItemIndex',\n getPrevNextItems: 'Blabla/getPrevNextItems'\n })), {}, {\n getArticle: function getArticle() {\n console.log(this.$route); // get the article uuid\n // if(this.$route.query.nid){\n // // we come from internal link with vuejs\n // // directly record uuid\n // this.nid = this.$route.query.nid\n //\n // }else if(drupalDecoupled.entity_type == 'node' && drupalDecoupled.entity_bundle == 'article'){\n // // we landed in an internal page\n // // get the uuid from drupalDeclouped, provided by materio_decoupled.module\n // this.nid = drupalDecoupled.entity_id\n // }\n\n if (this.$route.path) {\n // we come from internal link with vuejs\n this.path = this.$route.path;\n } else {\n // we landed in an internal page\n this.path = window.location.pathname;\n }\n\n if (this.path) {\n this.loadArticle();\n } else {\n // if for any reason we dont have the uuid\n // redirect to home\n this.$route.replace('home');\n }\n },\n getIndex: function getIndex() {\n var _this = this;\n\n console.log(\"Article getIndex article.id:\", this.article.id);\n this.getItemIndex(this.article.id).then(function (index) {\n _this.index = index;\n console.log('article index', index, _this);\n\n _this.getPrevNextItems(index).then(function (pn) {\n _this.prevnext = pn;\n });\n });\n },\n loadArticle: function loadArticle() {\n var _this2 = this;\n\n console.log('loadArticle');\n this.loading = true;\n var ast = (0, _graphqlTag.default)(_templateObject(), this.path, drupalDecoupled.lang_code, _articleFragment.default);\n\n _graphqlAxios.MGQ.post('', {\n query: (0, _printer.print)(ast)\n }).then(function (_ref) {\n var route = _ref.data.data.route;\n console.log('loadArticle', route);\n\n _this2.parseDataGQL(route);\n }).catch(function (error) {\n console.warn('Issue with loadArticle', error);\n Promise.reject(error);\n });\n },\n parseDataGQL: function parseDataGQL(article) {\n var _this3 = this;\n\n console.log('parseDataGQL article', article);\n this.article = article; // get the prev next items\n\n if (!this.items.length) {\n // if items list not yet loaded preload them\n this.getItems().then(function () {\n // then get the index\n _this3.getIndex();\n });\n } else {\n // or directly get the index\n this.getIndex();\n }\n\n this.image_accroche = article.images[0];\n this.lightbox_items = []; // fill the lightbox\n\n for (var i = 0; i < article.images.length; i++) {\n article.images[i].thumb = article.images[i].style_articlecardmedium.url;\n this.lightbox_items.push(article.images[i]);\n } // parse embeded videos pushing it in lightbox\n\n\n for (var i = 0; i < article.videos.length; i++) {\n var videoUrl = article.videos[i].url;\n\n var provider_regex = /*#__PURE__*/_wrapRegExp(/https:\\/\\/(www\\.)?(youtube|vimeo)\\.com\\/.+/, {\n provider: 2\n });\n\n var match = provider_regex.exec(videoUrl); // console.log('provider', match.groups.provider);\n\n var video_id = null;\n var video_thumb = null;\n\n switch (match.groups.provider) {\n case 'vimeo':\n var vimeo_regex = /*#__PURE__*/_wrapRegExp(/https:\\/\\/vimeo\\.com\\/([0-9]+)/, {\n id: 1\n });\n\n video_id = vimeo_regex.exec(videoUrl).groups.id || null; // TODO: get the vimeo thumb https://coderwall.com/p/fdrdmg/get-a-thumbnail-from-a-vimeo-video\n\n video_thumb = \"http://blogpeda.ac-poitiers.fr/ent-lyc/files/2015/06/Vimeo_icon_block.png\";\n break;\n\n case 'youtube':\n var youtube_regex = /*#__PURE__*/_wrapRegExp(/https:\\/\\/(www\\.)?youtube\\.com\\/watch\\?v=(.+)/, {\n id: 2\n });\n\n video_id = youtube_regex.exec(videoUrl).groups.id || null;\n video_thumb = \"http://img.youtube.com/vi/\" + video_id + \"/0.jpg\";\n break;\n } // console.log('video_id', video_id);\n\n\n this.lightbox_items.push({\n url: videoUrl,\n title: \"\",\n description: \"\",\n thumb: video_thumb\n });\n } // console.log('this.content.lightbox_items', this.lightbox_items);\n // update main page title\n\n\n this.$store.commit('Common/setPagetitle', article.title);\n this.loading = false;\n },\n onPrevNext: function onPrevNext(a) {\n console.log('clicked on prev/next; a', a);\n var alias = a.replace(/^\\/\\D{2,3}\\/blabla\\//g, '');\n console.log('alias', alias);\n this.$router.push({\n name: \"article\",\n params: {\n alias: alias\n }\n });\n },\n setLightboxIndex: function setLightboxIndex(index) {\n this.lightbox_index = index;\n }\n }),\n components: {\n Card: _Card.default\n },\n watch: {\n '$route': function $route(to, from) {\n console.log('route change');\n this.getArticle();\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Article.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Base.vue?vue&type=script&lang=js&": /*!*****************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Base.vue?vue&type=script&lang=js& ***! \*****************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _Card = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/Card */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Card.vue\"));\n\nvar _CardThematique = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/CardThematique */ \"./web/themes/custom/materiotheme/vuejs/components/Content/CardThematique.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Base\",\n data: function data() {\n return {\n pagetitle: \"Base\" // searchinfos: null\n\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n items: function items(state) {\n return state.Search.items;\n },\n searchinfos: function searchinfos(state) {\n return state.Search.infos;\n },\n count: function count(state) {\n return state.Search.count;\n },\n noresults: function noresults(state) {\n return state.Search.noresults;\n },\n limit: function limit(state) {\n return state.Search.limit;\n }\n })),\n methods: _objectSpread({}, (0, _vuex.mapActions)({\n newSearch: 'Search/newSearch',\n nextPage: 'Search/nextPage'\n })),\n created: function created() {\n // at first page load or first route entering launch a search if params exists in url query\n console.log('Base created() location', window.location);\n var params = new URLSearchParams(window.location.search);\n\n if (params.has('keys') || params.has('term')) {\n this.$store.commit('Search/setKeys', params.get('keys'));\n this.$store.commit('Search/setTerm', params.get('term'));\n this.pagetitle = params.get('keys');\n this.newSearch();\n } else {\n // load default base page\n this.$store.commit('Search/setKeys', '');\n this.$store.commit('Search/setTerm', '');\n this.pagetitle = 'Base';\n this.newSearch();\n }\n },\n beforeRouteUpdate: function beforeRouteUpdate(to, from, next) {\n // when query change launch a new search\n console.log('Base beforeRouteUpdate', to, from, next);\n this.$store.commit('Search/setKeys', to.query.keys);\n this.$store.commit('Search/setTerm', to.query.term);\n this.pagetitle = to.query.keys;\n this.newSearch();\n next();\n },\n components: {\n Card: _Card.default,\n CardThematique: _CardThematique.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Base.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Blabla.vue?vue&type=script&lang=js&": /*!*******************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Blabla.vue?vue&type=script&lang=js& ***! \*******************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _ArticleCard = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/ArticleCard */ \"./web/themes/custom/materiotheme/vuejs/components/Content/ArticleCard.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Blabla\",\n // data() {\n // return {\n // items:[],\n // page:0\n // }\n // },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n items: function items(state) {\n return state.Blabla.items;\n }\n })),\n created: function created() {\n if (!this.items.length) this.getItems();\n },\n methods: _objectSpread({}, (0, _vuex.mapActions)({\n getItems: 'Blabla/getItems',\n nextPage: 'Blabla/nextPage'\n })),\n components: {\n ArticleCard: _ArticleCard.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Blabla.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue?vue&type=script&lang=js&": /*!*****************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue?vue&type=script&lang=js& ***! \*****************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _default = {\n props: ['html'],\n // get the html from parent with props\n data: function data() {\n return {\n template: null,\n // compiled template from html used in render\n showrooms: [],\n showroomsOdd: [],\n showroomsEven: [],\n showroomMode: 1,\n showroomInterval: 0,\n showroomI: 0,\n showroomJ: 0\n };\n },\n beforeMount: function beforeMount() {\n // console.log('Home beforeMount');\n // compile the html src (coming from parent with props or from ajax call)\n if (this.html) {\n // console.log('html', this.html);\n this.compileTemplate();\n }\n },\n render: function render(h) {\n if (!this.template) {\n return h('span', 'Loading ...');\n } else {\n return this.template.render.call(this);\n }\n },\n mounted: function mounted() {// this.initShowroomCarroussel()\n },\n methods: {\n compileTemplate: function compileTemplate() {\n var _this = this;\n\n this.template = _vue.default.compile(this.html);\n this.$options.staticRenderFns = [];\n this._staticTrees = [];\n this.template.staticRenderFns.map(function (fn) {\n return _this.$options.staticRenderFns.push(fn);\n });\n setTimeout(this.initShowroomCarroussel.bind(this), 250);\n },\n initShowroomCarroussel: function initShowroomCarroussel() {\n console.log(\"startShowroomCarroussel\");\n this.showrooms = document.querySelectorAll('.field--name-computed-showrooms-reference > .field__item');\n console.log('showrooms', this.showrooms);\n\n for (var i = 0; i < this.showrooms.length; i++) {\n if (i % 2 === 0) {\n this.showroomsOdd.push(this.showrooms[i]);\n } else {\n this.showroomsEven.push(this.showrooms[i]);\n }\n }\n\n console.log('Odd', this.showroomsOdd);\n console.log('Even', this.showroomsEven); // TODO: share media query and variables between scss and js\n\n var column_width = 205;\n var column_goutiere = 13;\n var bp = (column_width + column_goutiere) * 7 + 1;\n var mediaQuery = window.matchMedia(\"(min-width: \".concat(bp, \"px)\")); // Register event listener\n\n mediaQuery.addListener(this.checkShowroomMode);\n this.checkShowroomMode(mediaQuery); // this.showroomInterval = setInterval(this.switchShowroomCarroussel.bind(this), 5000);\n // console.log('this.showroomInterval', this.showroomInterval);\n // this.switchShowroomCarroussel()\n },\n checkShowroomMode: function checkShowroomMode(mq) {\n // default mode 1\n var newmode = 1;\n\n if (mq.matches) {\n // if mediaquery match switch to mode 2\n newmode = 2;\n }\n\n if (newmode !== this.showroomMode) {\n // if new mode different from old mode\n // reset sowrooms classes\n for (var i = 0; i < this.showrooms.length; i++) {\n this.showrooms[i].classList.remove('active');\n } // record new mode\n\n\n this.showroomMode = newmode; // clear interval\n // if (this.showroomInterval) {\n\n clearInterval(this.showroomInterval);\n this.showroomInterval = 0; // }\n // reset indexes\n\n this.showroomI = 0;\n this.showroomJ = 0;\n } // in any case (re)launch the animation\n\n\n this.showroomInterval = setInterval(this.switchShowroomCarroussel.bind(this), 15000);\n console.log('this.showroomInterval', this.showroomInterval);\n this.switchShowroomCarroussel();\n },\n switchShowroomCarroussel: function switchShowroomCarroussel() {\n // console.log('switchShowroomCarroussel i', $elmts, i);\n if (this.showroomMode === 1) {\n this.showrooms[this.showroomI].classList.add('active');\n this.showrooms[this.showroomI - 1 < 0 ? this.showrooms.length - 1 : this.showroomI - 1].classList.remove('active');\n this.showroomI = this.showroomI + 1 >= this.showrooms.length ? 0 : this.showroomI + 1;\n } else {\n this.showroomsOdd[this.showroomI].classList.add('active');\n this.showroomsOdd[this.showroomI - 1 < 0 ? this.showroomsOdd.length - 1 : this.showroomI - 1].classList.remove('active');\n this.showroomI = this.showroomI + 1 >= this.showroomsOdd.length ? 0 : this.showroomI + 1;\n this.showroomsEven[this.showroomJ].classList.add('active');\n this.showroomsEven[this.showroomJ - 1 < 0 ? this.showroomsEven.length - 1 : this.showroomJ - 1].classList.remove('active');\n this.showroomJ = this.showroomJ + 1 >= this.showroomsEven.length ? 0 : this.showroomJ + 1;\n }\n },\n onClickLink: function onClickLink(e) {\n console.log(\"onClickLink\", e, this.$router, this.$route);\n var path = null; // find existing router route compared with link href\n\n for (var i = 0; i < this.$router.options.routes.length; i++) {\n if (this.$router.options.routes[i].path == e.originalTarget.pathname) {\n if (e.originalTarget.pathname !== this.$route.path) {\n path = e.originalTarget.pathname;\n }\n\n break;\n }\n }\n\n if (path) {\n this.$router.push({\n path: path\n });\n }\n },\n onClickFieldLabel: function onClickFieldLabel(e) {\n console.log(\"onClickFieldLabel\", e, this.$router, this.$route);\n }\n },\n watch: {\n html: function html(val) {\n console.log('html prop changed', val);\n this.compileTemplate();\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js&": /*!********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js& ***! \********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _Product = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/Product */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Pricing\",\n // data() {\n // return {\n // items:[],\n // page:0\n // }\n // },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n products: function products(state) {\n return state.Pages.products;\n }\n })),\n created: function created() {\n if (!this.products.length) this.getProducts();\n },\n methods: _objectSpread({}, (0, _vuex.mapActions)({\n getProducts: 'Pages/getProducts'\n })),\n components: {\n Product: _Product.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?vue&type=script&lang=js&": /*!**********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?vue&type=script&lang=js& ***! \**********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _Showroom = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/Showroom */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Showrooms\",\n // data() {\n // return {\n // items:[],\n // page:0\n // }\n // },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n items: function items(state) {\n return state.Showrooms.items;\n }\n })),\n created: function created() {\n if (!this.items.length) this.getItems();\n },\n methods: _objectSpread({}, (0, _vuex.mapActions)({\n getItems: 'Showrooms/getItems'\n })),\n components: {\n Showroom: _Showroom.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Thematique.vue?vue&type=script&lang=js&": /*!***********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Thematique.vue?vue&type=script&lang=js& ***! \***********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nvar _store = _interopRequireDefault(__webpack_require__(/*! vuejs/store */ \"./web/themes/custom/materiotheme/vuejs/store/index.js\"));\n\nvar _restAxios = __webpack_require__(/*! vuejs/api/rest-axios */ \"./web/themes/custom/materiotheme/vuejs/api/rest-axios.js\");\n\nvar _graphqlAxios = __webpack_require__(/*! vuejs/api/graphql-axios */ \"./web/themes/custom/materiotheme/vuejs/api/graphql-axios.js\");\n\nvar _printer = __webpack_require__(/*! graphql/language/printer */ \"./node_modules/graphql/language/printer.js\");\n\nvar _graphqlTag = _interopRequireDefault(__webpack_require__(/*! graphql-tag */ \"./node_modules/graphql-tag/src/index.js\"));\n\nvar _thematiqueFragment = _interopRequireDefault(__webpack_require__(/*! vuejs/api/gql/thematique.fragment.gql */ \"./web/themes/custom/materiotheme/vuejs/api/gql/thematique.fragment.gql\"));\n\nvar _Card = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/Card */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Card.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _templateObject() {\n var data = _taggedTemplateLiteral([\"{\\n route(path: \\\"\", \"\\\") {\\n ...ThematiqueFields\\n }\\n }\\n \", \"\\n \"]);\n\n _templateObject = function _templateObject() {\n return data;\n };\n\n return data;\n}\n\nfunction _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }\n\nvar _default = {\n name: \"Thematique\",\n router: _route.default,\n store: _store.default,\n data: function data() {\n return {\n nid: null,\n path: null,\n thematique: {},\n image_accroche: null,\n loading: true\n };\n },\n metaInfo: function metaInfo() {\n return {\n title: this.thematique.title\n };\n },\n // computed: {\n // ...mapState({\n // items: state => state.Blabla.items\n // })\n // },\n created: function created() {\n this.getThematique();\n },\n methods: {\n // ...mapActions({\n // getItems: 'Blabla/getItems',\n // getItemIndex: 'Blabla/getItemIndex',\n // getPrevNextItems: 'Blabla/getPrevNextItems'\n // }),\n getThematique: function getThematique() {\n console.log('getThematique', this.$route); // get the article uuid\n // if(this.$route.query.nid){\n // // we come from internal link with vuejs\n // // directly record uuid\n // this.nid = this.$route.query.nid\n //\n // }else if(drupalDecoupled.entity_type == 'node' && drupalDecoupled.entity_bundle == 'article'){\n // // we landed in an internal page\n // // get the uuid from drupalDeclouped, provided by materio_decoupled.module\n // this.nid = drupalDecoupled.entity_id\n // }\n\n if (this.$route.path) {\n // we come from internal link with vuejs\n this.path = this.$route.path;\n } else {\n // we landed in an internal page\n this.path = window.location.pathname;\n }\n\n if (this.path) {\n this.loadThematique();\n } else {\n // if for any reason we dont have the uuid\n // redirect to home\n this.$route.replace('home');\n }\n },\n loadThematique: function loadThematique() {\n var _this = this;\n\n console.log('loadThematique');\n this.loading = true;\n var ast = (0, _graphqlTag.default)(_templateObject(), this.path, _thematiqueFragment.default);\n\n _graphqlAxios.MGQ.post('', {\n query: (0, _printer.print)(ast)\n }).then(function (_ref) {\n var route = _ref.data.data.route;\n console.log('loaded Thematique', route);\n\n _this.parseDataGQL(route);\n }).catch(function (error) {\n console.warn('Issue with loadThematique', error);\n Promise.reject(error);\n });\n },\n parseDataGQL: function parseDataGQL(thematique) {\n console.log('parseDataGQL thematique', thematique);\n this.thematique = thematique;\n this.image_accroche = thematique.images[0]; // update main page title\n\n this.$store.commit('Common/setPagetitle', thematique.title);\n this.loading = false;\n }\n },\n components: {\n Card: _Card.default\n },\n watch: {\n '$route': function $route(to, from) {\n console.log('route change');\n this.getThematique();\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/Pages/Thematique.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/User/FlagCollection.vue?vue&type=script&lang=js&": /*!**************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/User/FlagCollection.vue?vue&type=script&lang=js& ***! \**************************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _MiniCard = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/MiniCard */ \"./web/themes/custom/materiotheme/vuejs/components/Content/MiniCard.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"FlagCollection\",\n props: ['collection'],\n data: function data() {\n return {\n loadedItems: false\n };\n },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n flagcolls: function flagcolls(state) {\n return state.User.flagcolls;\n },\n flagcollsLoadedItems: function flagcollsLoadedItems(state) {\n return state.User.flagcollsLoadedItems;\n },\n openedCollid: function openedCollid(state) {\n return state.User.openedCollid;\n }\n })),\n // watch: {\n // flagcolls (newv, oldv) {\n // console.log('watching flagcolls');\n // if( typeof this.flagcolls[this.collection.id].loadedItems !== 'undefined' ) {\n // this.loadedItems = this.flagcolls[this.collection.id].loadedItems\n // }\n // }\n // },\n created: function created() {\n var _this = this;\n\n if (typeof this.flagcollsLoadedItems[this.openedCollid] !== 'undefined') {\n // if loadedItems are alredy loaded,\n // the mutation occurs before this subscription\n // so we first check if they are already available\n this.loadedItems = this.flagcollsLoadedItems[this.openedCollid];\n }\n\n this.unsubscribe = this.$store.subscribe(function (mutation, state) {\n if (mutation.type === 'User/setLoadedCollItems') {\n console.log(\"mutation setLoadedCollItems collid\", _this.openedCollid); // mutation is triggered before the component update\n // so this.collection.id is not good\n\n _this.loadedItems = state.User.flagcollsLoadedItems[_this.openedCollid];\n }\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.unsubscribe();\n },\n // beforeMount () {\n // if (typeof this.flagcolls[collection.id].loadedItems === 'undefined') {\n // this.\n // }\n // },\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n closeFlagColl: 'User/closeFlagColl'\n })), {}, {\n onCloseFlagColl: function onCloseFlagColl(e) {\n this.closeFlagColl();\n }\n }),\n components: {\n MiniCard: _MiniCard.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/User/FlagCollection.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/User/UserFlags.vue?vue&type=script&lang=js&": /*!*********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/User/UserFlags.vue?vue&type=script&lang=js& ***! \*********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"userFlags\",\n data: function data() {\n return {\n new_folder_name: \"\",\n is_creating_folder: false,\n is_deleting_folder: false\n };\n },\n computed: _objectSpread(_objectSpread({}, (0, _vuex.mapState)({\n flagcolls: function flagcolls(state) {\n return state.User.flagcolls;\n }\n })), {}, {\n collsLength: function collsLength() {\n return Object.keys(this.flagcolls).length;\n },\n addFlagBtnClassObj: function addFlagBtnClassObj() {\n return {\n 'mdi-plus-circle-outline': !this.is_creating_folder,\n 'mdi-loading': this.is_creating_folder,\n active: this.new_folder_name.length > 4 && !this.is_creating_folder,\n loading: this.is_creating_folder\n };\n },\n flagDeletingClassObj: function flagDeletingClassObj() {\n return {\n 'mdi-trash-can-outline': !this.is_deleting_folder,\n 'mdi-loading': this.is_deleting_folder,\n 'loading': this.is_deleting_folder\n };\n }\n }),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n createFlagColl: 'User/createFlagColl',\n deleteFlagColl: 'User/deleteFlagColl',\n openFlagColl: 'User/openFlagColl'\n })), {}, {\n onCreateFlagColl: function onCreateFlagColl() {\n var _this = this;\n\n console.log(\"UserFlags onCreateFlagColl\", this.new_folder_name);\n this.is_creating_folder = true;\n this.createFlagColl(this.new_folder_name).then(function (data) {\n console.log(\"onCreateFlagColl then\", data);\n _this.new_folder_name = \"\";\n _this.is_creating_folder = false;\n });\n },\n onDeleteFlagColl: function onDeleteFlagColl(e) {\n var _this2 = this;\n\n var flagcollid = e.target.getAttribute('flagcollid');\n console.log(\"UserFlags onDeleteFlagColl\", flagcollid);\n this.is_deleting_folder = flagcollid;\n this.deleteFlagColl(flagcollid).then(function () {\n // console.log(\"onDeleteFlagColl then\", data);\n _this2.is_deleting_folder = false;\n });\n },\n onOpenFlagColl: function onOpenFlagColl(e) {\n var flagcollid = e.target.getAttribute('flagcollid');\n console.log(\"UserFlags onOpenFlagColl\", flagcollid);\n this.openFlagColl(flagcollid).then(function () {// console.log(\"onDeleteFlagColl then\", data);\n });\n }\n })\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/User/UserFlags.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/User/UserTools.vue?vue&type=script&lang=js&": /*!*********************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/User/UserTools.vue?vue&type=script&lang=js& ***! \*********************************************************************************************************************************************************************************************************/ /*! flagged exports */ /*! export __esModule [provided] [no usage info] [missing usage info prevents renaming] */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__ */ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nexports.default = void 0;\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.common.js\");\n\nvar _UserFlags = _interopRequireDefault(__webpack_require__(/*! vuejs/components/User/UserFlags */ \"./web/themes/custom/materiotheme/vuejs/components/User/UserFlags.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n components: {\n UserFlags: _UserFlags.default\n },\n // data () {\n // return {\n // mail: \"Hello User!\"\n // }\n // },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n mail: function mail(state) {\n return state.User.mail;\n },\n isAdmin: function isAdmin(state) {\n return state.User.isAdmin;\n },\n flags: function flags(state) {\n return state.User.flags;\n }\n })),\n methods: _objectSpread(_objectSpread({}, (0, _vuex.mapActions)({\n userLogout: 'User/userLogout'\n })), {}, {\n onLogout: function onLogout() {\n console.log(\"UserTools onLogout\");\n this.userLogout();\n }\n })\n};\nexports.default = _default;\n\n//# sourceURL=webpack://materio.com/./web/themes/custom/materiotheme/vuejs/components/User/UserTools.vue?./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options"); /***/ }), /***/ "./node_modules/vue-meta/dist/vue-meta.esm.js": /*!****************************************************!*\ !*** ./node_modules/vue-meta/dist/vue-meta.esm.js ***! \****************************************************/ /*! namespace exports */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_require__, __webpack_require__.n, __webpack_exports__, __webpack_require__.r, __webpack_require__.g, __webpack_require__.d, __webpack_require__.* */ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => __WEBPACK_DEFAULT_EXPORT__\n/* harmony export */ });\n/* harmony import */ var deepmerge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! deepmerge */ \"./node_modules/deepmerge/dist/cjs.js\");\n/* harmony import */ var deepmerge__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(deepmerge__WEBPACK_IMPORTED_MODULE_0__);\n/**\n * vue-meta v2.4.0\n * (c) 2020\n * - Declan de Wet\n * - Sébastien Chopin (@Atinux)\n * - Pim (@pimlie)\n * - All the amazing contributors\n * @license MIT\n */\n\nvar version = \"2.4.0\";\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function () {};\n\n return {\n s: F,\n n: function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function (e) {\n throw e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function () {\n it = o[Symbol.iterator]();\n },\n n: function () {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function (e) {\n didErr = true;\n err = e;\n },\n f: function () {\n try {\n if (!normalCompletion && it.return != null) it.return();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}\n/**\n * checks if passed argument is an array\n * @param {any} arg - the object to check\n * @return {Boolean} - true if `arg` is an array\n */\n\n\nfunction isArray(arg) {\n return Array.isArray(arg);\n}\n\nfunction isUndefined(arg) {\n return typeof arg === 'undefined';\n}\n\nfunction isObject(arg) {\n return _typeof(arg) === 'object';\n}\n\nfunction isPureObject(arg) {\n return _typeof(arg) === 'object' && arg !== null;\n}\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\n\nfunction hasGlobalWindowFn() {\n try {\n return !isUndefined(window);\n } catch (e) {\n return false;\n }\n}\n\nvar hasGlobalWindow = hasGlobalWindowFn();\n\nvar _global = hasGlobalWindow ? window : __webpack_require__.g;\n\nvar console = _global.console || {};\n\nfunction warn(str) {\n /* istanbul ignore next */\n if (!console || !console.warn) {\n return;\n }\n\n console.warn(str);\n}\n\nvar showWarningNotSupported = function showWarningNotSupported() {\n return warn('This vue app/component has no vue-meta configuration');\n};\n/**\n * These are constant variables used throughout the application.\n */\n// set some sane defaults\n\n\nvar defaultInfo = {\n title: undefined,\n titleChunk: '',\n titleTemplate: '%s',\n htmlAttrs: {},\n bodyAttrs: {},\n headAttrs: {},\n base: [],\n link: [],\n meta: [],\n style: [],\n script: [],\n noscript: [],\n __dangerouslyDisableSanitizers: [],\n __dangerouslyDisableSanitizersByTagID: {}\n};\nvar rootConfigKey = '_vueMeta'; // This is the name of the component option that contains all the information that\n// gets converted to the various meta tags & attributes for the page.\n\nvar keyName = 'metaInfo'; // This is the attribute vue-meta arguments on elements to know which it should\n// manage and which it should ignore.\n\nvar attribute = 'data-vue-meta'; // This is the attribute that goes on the `html` tag to inform `vue-meta`\n// that the server has already generated the meta tags for the initial render.\n\nvar ssrAttribute = 'data-vue-meta-server-rendered'; // This is the property that tells vue-meta to overwrite (instead of append)\n// an item in a tag list. For example, if you have two `meta` tag list items\n// that both have `vmid` of \"description\", then vue-meta will overwrite the\n// shallowest one with the deepest one.\n\nvar tagIDKeyName = 'vmid'; // This is the key name for possible meta templates\n\nvar metaTemplateKeyName = 'template'; // This is the key name for the content-holding property\n\nvar contentKeyName = 'content'; // The id used for the ssr app\n\nvar ssrAppId = 'ssr'; // How long meta update\n\nvar debounceWait = 10; // How long meta update\n\nvar waitOnDestroyed = true;\nvar defaultOptions = {\n keyName: keyName,\n attribute: attribute,\n ssrAttribute: ssrAttribute,\n tagIDKeyName: tagIDKeyName,\n contentKeyName: contentKeyName,\n metaTemplateKeyName: metaTemplateKeyName,\n waitOnDestroyed: waitOnDestroyed,\n debounceWait: debounceWait,\n ssrAppId: ssrAppId\n}; // might be a bit ugly, but minimizes the browser bundles a bit\n\nvar defaultInfoKeys = Object.keys(defaultInfo); // The metaInfo property keys which are used to disable escaping\n\nvar disableOptionKeys = [defaultInfoKeys[12], defaultInfoKeys[13]]; // List of metaInfo property keys which are configuration options (and dont generate html)\n\nvar metaInfoOptionKeys = [defaultInfoKeys[1], defaultInfoKeys[2], 'changed'].concat(disableOptionKeys); // List of metaInfo property keys which only generates attributes and no tags\n\nvar metaInfoAttributeKeys = [defaultInfoKeys[3], defaultInfoKeys[4], defaultInfoKeys[5]]; // HTML elements which support the onload event\n\nvar tagsSupportingOnload = ['link', 'style', 'script']; // HTML elements which dont have a head tag (shortened to our needs)\n// see: https://www.w3.org/TR/html52/document-metadata.html\n\nvar tagsWithoutEndTag = ['base', 'meta', 'link']; // HTML elements which can have inner content (shortened to our needs)\n\nvar tagsWithInnerContent = ['noscript', 'script', 'style']; // Attributes which are inserted as childNodes instead of HTMLAttribute\n\nvar tagAttributeAsInnerContent = ['innerHTML', 'cssText', 'json'];\nvar tagProperties = ['once', 'skip', 'template']; // Attributes which should be added with data- prefix\n\nvar commonDataAttributes = ['body', 'pbody']; // from: https://github.com/kangax/html-minifier/blob/gh-pages/src/htmlminifier.js#L202\n\nvar booleanHtmlAttributes = ['allowfullscreen', 'amp', 'amp-boilerplate', 'async', 'autofocus', 'autoplay', 'checked', 'compact', 'controls', 'declare', 'default', 'defaultchecked', 'defaultmuted', 'defaultselected', 'defer', 'disabled', 'enabled', 'formnovalidate', 'hidden', 'indeterminate', 'inert', 'ismap', 'itemscope', 'loop', 'multiple', 'muted', 'nohref', 'noresize', 'noshade', 'novalidate', 'nowrap', 'open', 'pauseonexit', 'readonly', 'required', 'reversed', 'scoped', 'seamless', 'selected', 'sortable', 'truespeed', 'typemustmatch', 'visible'];\nvar batchId = null;\n\nfunction triggerUpdate(_ref, rootVm, hookName) {\n var debounceWait = _ref.debounceWait; // if an update was triggered during initialization or when an update was triggered by the\n // metaInfo watcher, set initialized to null\n // then we keep falsy value but know we need to run a triggerUpdate after initialization\n\n if (!rootVm[rootConfigKey].initialized && (rootVm[rootConfigKey].initializing || hookName === 'watcher')) {\n rootVm[rootConfigKey].initialized = null;\n }\n\n if (rootVm[rootConfigKey].initialized && !rootVm[rootConfigKey].pausing) {\n // batch potential DOM updates to prevent extraneous re-rendering\n // eslint-disable-next-line no-void\n batchUpdate(function () {\n return void rootVm.$meta().refresh();\n }, debounceWait);\n }\n}\n/**\n * Performs a batched update.\n *\n * @param {(null|Number)} id - the ID of this update\n * @param {Function} callback - the update to perform\n * @return {Number} id - a new ID\n */\n\n\nfunction batchUpdate(callback, timeout) {\n timeout = timeout === undefined ? 10 : timeout;\n\n if (!timeout) {\n callback();\n return;\n }\n\n clearTimeout(batchId);\n batchId = setTimeout(function () {\n callback();\n }, timeout);\n return batchId;\n}\n/*\n * To reduce build size, this file provides simple polyfills without\n * overly excessive type checking and without modifying\n * the global Array.prototype\n * The polyfills are automatically removed in the commonjs build\n * Also, only files in client/ & shared/ should use these functions\n * files in server/ still use normal js function\n */\n\n\nfunction find(array, predicate, thisArg) {\n if (!Array.prototype.find) {\n // idx needs to be a Number, for..in returns string\n for (var idx = 0; idx < array.length; idx++) {\n if (predicate.call(thisArg, array[idx], idx, array)) {\n return array[idx];\n }\n }\n\n return;\n }\n\n return array.find(predicate, thisArg);\n}\n\nfunction findIndex(array, predicate, thisArg) {\n if (!Array.prototype.findIndex) {\n // idx needs to be a Number, for..in returns string\n for (var idx = 0; idx < array.length; idx++) {\n if (predicate.call(thisArg, array[idx], idx, array)) {\n return idx;\n }\n }\n\n return -1;\n }\n\n return array.findIndex(predicate, thisArg);\n}\n\nfunction toArray(arg) {\n if (!Array.from) {\n return Array.prototype.slice.call(arg);\n }\n\n return Array.from(arg);\n}\n\nfunction includes(array, value) {\n if (!Array.prototype.includes) {\n for (var idx in array) {\n if (array[idx] === value) {\n return true;\n }\n }\n\n return false;\n }\n\n return array.includes(value);\n}\n\nvar querySelector = function querySelector(arg, el) {\n return (el || document).querySelectorAll(arg);\n};\n\nfunction getTag(tags, tag) {\n if (!tags[tag]) {\n tags[tag] = document.getElementsByTagName(tag)[0];\n }\n\n return tags[tag];\n}\n\nfunction getElementsKey(_ref) {\n var body = _ref.body,\n pbody = _ref.pbody;\n return body ? 'body' : pbody ? 'pbody' : 'head';\n}\n\nfunction queryElements(parentNode, _ref2, attributes) {\n var appId = _ref2.appId,\n attribute = _ref2.attribute,\n type = _ref2.type,\n tagIDKeyName = _ref2.tagIDKeyName;\n attributes = attributes || {};\n var queries = [\"\".concat(type, \"[\").concat(attribute, \"=\\\"\").concat(appId, \"\\\"]\"), \"\".concat(type, \"[data-\").concat(tagIDKeyName, \"]\")].map(function (query) {\n for (var key in attributes) {\n var val = attributes[key];\n var attributeValue = val && val !== true ? \"=\\\"\".concat(val, \"\\\"\") : '';\n query += \"[data-\".concat(key).concat(attributeValue, \"]\");\n }\n\n return query;\n });\n return toArray(querySelector(queries.join(', '), parentNode));\n}\n\nfunction removeElementsByAppId(_ref3, appId) {\n var attribute = _ref3.attribute;\n toArray(querySelector(\"[\".concat(attribute, \"=\\\"\").concat(appId, \"\\\"]\"))).map(function (el) {\n return el.remove();\n });\n}\n\nfunction removeAttribute(el, attributeName) {\n el.removeAttribute(attributeName);\n}\n\nfunction hasMetaInfo(vm) {\n vm = vm || this;\n return vm && (vm[rootConfigKey] === true || isObject(vm[rootConfigKey]));\n} // a component is in a metaInfo branch when itself has meta info or one of its (grand-)children has\n\n\nfunction inMetaInfoBranch(vm) {\n vm = vm || this;\n return vm && !isUndefined(vm[rootConfigKey]);\n}\n\nfunction pause(rootVm, refresh) {\n rootVm[rootConfigKey].pausing = true;\n return function () {\n return resume(rootVm, refresh);\n };\n}\n\nfunction resume(rootVm, refresh) {\n rootVm[rootConfigKey].pausing = false;\n\n if (refresh || refresh === undefined) {\n return rootVm.$meta().refresh();\n }\n}\n\nfunction addNavGuards(rootVm) {\n var router = rootVm.$router; // return when nav guards already added or no router exists\n\n if (rootVm[rootConfigKey].navGuards || !router) {\n /* istanbul ignore next */\n return;\n }\n\n rootVm[rootConfigKey].navGuards = true;\n router.beforeEach(function (to, from, next) {\n pause(rootVm);\n next();\n });\n router.afterEach(function () {\n rootVm.$nextTick(function () {\n var _resume = resume(rootVm),\n metaInfo = _resume.metaInfo;\n\n if (metaInfo && isFunction(metaInfo.afterNavigation)) {\n metaInfo.afterNavigation(metaInfo);\n }\n });\n });\n}\n\nvar appId = 1;\n\nfunction createMixin(Vue, options) {\n // for which Vue lifecycle hooks should the metaInfo be refreshed\n var updateOnLifecycleHook = ['activated', 'deactivated', 'beforeMount'];\n var wasServerRendered = false; // watch for client side component updates\n\n return {\n beforeCreate: function beforeCreate() {\n var _this2 = this;\n\n var rootKey = '$root';\n var $root = this[rootKey];\n var $options = this.$options;\n var devtoolsEnabled = Vue.config.devtools;\n Object.defineProperty(this, '_hasMetaInfo', {\n configurable: true,\n get: function get() {\n // Show deprecation warning once when devtools enabled\n if (devtoolsEnabled && !$root[rootConfigKey].deprecationWarningShown) {\n warn('VueMeta DeprecationWarning: _hasMetaInfo has been deprecated and will be removed in a future version. Please use hasMetaInfo(vm) instead');\n $root[rootConfigKey].deprecationWarningShown = true;\n }\n\n return hasMetaInfo(this);\n }\n });\n\n if (this === $root) {\n $root.$once('hook:beforeMount', function () {\n wasServerRendered = this.$el && this.$el.nodeType === 1 && this.$el.hasAttribute('data-server-rendered'); // In most cases when you have a SSR app it will be the first app thats gonna be\n // initiated, if we cant detect the data-server-rendered attribute from Vue but we\n // do see our own ssrAttribute then _assume_ the Vue app with appId 1 is the ssr app\n // attempted fix for #404 & #562, but we rly need to refactor how we pass appIds from\n // ssr to the client\n\n if (!wasServerRendered && $root[rootConfigKey] && $root[rootConfigKey].appId === 1) {\n var htmlTag = getTag({}, 'html');\n wasServerRendered = htmlTag && htmlTag.hasAttribute(options.ssrAttribute);\n }\n });\n } // Add a marker to know if it uses metaInfo\n // _vnode is used to know that it's attached to a real component\n // useful if we use some mixin to add some meta tags (like nuxt-i18n)\n\n\n if (isUndefined($options[options.keyName]) || $options[options.keyName] === null) {\n return;\n }\n\n if (!$root[rootConfigKey]) {\n $root[rootConfigKey] = {\n appId: appId\n };\n appId++;\n\n if (devtoolsEnabled && $root.$options[options.keyName]) {\n // use nextTick so the children should be added to $root\n this.$nextTick(function () {\n // find the first child that lists fnOptions\n var child = find($root.$children, function (c) {\n return c.$vnode && c.$vnode.fnOptions;\n });\n\n if (child && child.$vnode.fnOptions[options.keyName]) {\n warn(\"VueMeta has detected a possible global mixin which adds a \".concat(options.keyName, \" property to all Vue components on the page. This could cause severe performance issues. If possible, use $meta().addApp to add meta information instead\"));\n }\n });\n }\n } // to speed up updates we keep track of branches which have a component with vue-meta info defined\n // if _vueMeta = true it has info, if _vueMeta = false a child has info\n\n\n if (!this[rootConfigKey]) {\n this[rootConfigKey] = true;\n var parent = this.$parent;\n\n while (parent && parent !== $root) {\n if (isUndefined(parent[rootConfigKey])) {\n parent[rootConfigKey] = false;\n }\n\n parent = parent.$parent;\n }\n } // coerce function-style metaInfo to a computed prop so we can observe\n // it on creation\n\n\n if (isFunction($options[options.keyName])) {\n $options.computed = $options.computed || {};\n $options.computed.$metaInfo = $options[options.keyName];\n\n if (!this.$isServer) {\n // if computed $metaInfo exists, watch it for updates & trigger a refresh\n // when it changes (i.e. automatically handle async actions that affect metaInfo)\n // credit for this suggestion goes to [Sébastien Chopin](https://github.com/Atinux)\n this.$on('hook:created', function () {\n this.$watch('$metaInfo', function () {\n triggerUpdate(options, this[rootKey], 'watcher');\n });\n });\n }\n } // force an initial refresh on page load and prevent other lifecycleHooks\n // to triggerUpdate until this initial refresh is finished\n // this is to make sure that when a page is opened in an inactive tab which\n // has throttled rAF/timers we still immediately set the page title\n\n\n if (isUndefined($root[rootConfigKey].initialized)) {\n $root[rootConfigKey].initialized = this.$isServer;\n\n if (!$root[rootConfigKey].initialized) {\n if (!$root[rootConfigKey].initializedSsr) {\n $root[rootConfigKey].initializedSsr = true;\n this.$on('hook:beforeMount', function () {\n var $root = this[rootKey]; // if this Vue-app was server rendered, set the appId to 'ssr'\n // only one SSR app per page is supported\n\n if (wasServerRendered) {\n $root[rootConfigKey].appId = options.ssrAppId;\n }\n });\n } // we use the mounted hook here as on page load\n\n\n this.$on('hook:mounted', function () {\n var $root = this[rootKey];\n\n if ($root[rootConfigKey].initialized) {\n return;\n } // used in triggerUpdate to check if a change was triggered\n // during initialization\n\n\n $root[rootConfigKey].initializing = true; // refresh meta in nextTick so all child components have loaded\n\n this.$nextTick(function () {\n var _$root$$meta$refresh = $root.$meta().refresh(),\n tags = _$root$$meta$refresh.tags,\n metaInfo = _$root$$meta$refresh.metaInfo; // After ssr hydration (identifier by tags === false) check\n // if initialized was set to null in triggerUpdate. That'd mean\n // that during initilazation changes where triggered which need\n // to be applied OR a metaInfo watcher was triggered before the\n // current hook was called\n // (during initialization all changes are blocked)\n\n\n if (tags === false && $root[rootConfigKey].initialized === null) {\n this.$nextTick(function () {\n return triggerUpdate(options, $root, 'init');\n });\n }\n\n $root[rootConfigKey].initialized = true;\n delete $root[rootConfigKey].initializing; // add the navigation guards if they havent been added yet\n // they are needed for the afterNavigation callback\n\n if (!options.refreshOnceOnNavigation && metaInfo.afterNavigation) {\n addNavGuards($root);\n }\n });\n }); // add the navigation guards if requested\n\n if (options.refreshOnceOnNavigation) {\n addNavGuards($root);\n }\n }\n }\n\n this.$on('hook:destroyed', function () {\n var _this = this; // do not trigger refresh:\n // - when user configured to not wait for transitions on destroyed\n // - when the component doesnt have a parent\n // - doesnt have metaInfo defined\n\n\n if (!this.$parent || !hasMetaInfo(this)) {\n return;\n }\n\n delete this._hasMetaInfo;\n this.$nextTick(function () {\n if (!options.waitOnDestroyed || !_this.$el || !_this.$el.offsetParent) {\n triggerUpdate(options, _this.$root, 'destroyed');\n return;\n } // Wait that element is hidden before refreshing meta tags (to support animations)\n\n\n var interval = setInterval(function () {\n if (_this.$el && _this.$el.offsetParent !== null) {\n /* istanbul ignore next line */\n return;\n }\n\n clearInterval(interval);\n triggerUpdate(options, _this.$root, 'destroyed');\n }, 50);\n });\n }); // do not trigger refresh on the server side\n\n if (this.$isServer) {\n /* istanbul ignore next */\n return;\n } // no need to add this hooks on server side\n\n\n updateOnLifecycleHook.forEach(function (lifecycleHook) {\n _this2.$on(\"hook:\".concat(lifecycleHook), function () {\n triggerUpdate(options, this[rootKey], lifecycleHook);\n });\n });\n }\n };\n}\n\nfunction setOptions(options) {\n // combine options\n options = isObject(options) ? options : {}; // The options are set like this so they can\n // be minified by terser while keeping the\n // user api intact\n // terser --mangle-properties keep_quoted=strict\n\n /* eslint-disable dot-notation */\n\n return {\n keyName: options['keyName'] || defaultOptions.keyName,\n attribute: options['attribute'] || defaultOptions.attribute,\n ssrAttribute: options['ssrAttribute'] || defaultOptions.ssrAttribute,\n tagIDKeyName: options['tagIDKeyName'] || defaultOptions.tagIDKeyName,\n contentKeyName: options['contentKeyName'] || defaultOptions.contentKeyName,\n metaTemplateKeyName: options['metaTemplateKeyName'] || defaultOptions.metaTemplateKeyName,\n debounceWait: isUndefined(options['debounceWait']) ? defaultOptions.debounceWait : options['debounceWait'],\n waitOnDestroyed: isUndefined(options['waitOnDestroyed']) ? defaultOptions.waitOnDestroyed : options['waitOnDestroyed'],\n ssrAppId: options['ssrAppId'] || defaultOptions.ssrAppId,\n refreshOnceOnNavigation: !!options['refreshOnceOnNavigation']\n };\n /* eslint-enable dot-notation */\n}\n\nfunction getOptions(options) {\n var optionsCopy = {};\n\n for (var key in options) {\n optionsCopy[key] = options[key];\n }\n\n return optionsCopy;\n}\n\nfunction ensureIsArray(arg, key) {\n if (!key || !isObject(arg)) {\n return isArray(arg) ? arg : [];\n }\n\n if (!isArray(arg[key])) {\n arg[key] = [];\n }\n\n return arg;\n}\n\nvar serverSequences = [[/&/g, '&'], [//g, '>'], [/\"/g, '"'], [/'/g, ''']];\nvar clientSequences = [[/&/g, \"&\"], [//g, \">\"], [/\"/g, \"\\\"\"], [/'/g, \"'\"]]; // sanitizes potentially dangerous characters\n\nfunction escape(info, options, escapeOptions, escapeKeys) {\n var tagIDKeyName = options.tagIDKeyName;\n var _escapeOptions$doEsca = escapeOptions.doEscape,\n doEscape = _escapeOptions$doEsca === void 0 ? function (v) {\n return v;\n } : _escapeOptions$doEsca;\n var escaped = {};\n\n for (var key in info) {\n var value = info[key]; // no need to escape configuration options\n\n if (includes(metaInfoOptionKeys, key)) {\n escaped[key] = value;\n continue;\n } // do not use destructuring for disableOptionKeys, it increases transpiled size\n // due to var checks while we are guaranteed the structure of the cb\n\n\n var disableKey = disableOptionKeys[0];\n\n if (escapeOptions[disableKey] && includes(escapeOptions[disableKey], key)) {\n // this info[key] doesnt need to escaped if the option is listed in __dangerouslyDisableSanitizers\n escaped[key] = value;\n continue;\n }\n\n var tagId = info[tagIDKeyName];\n\n if (tagId) {\n disableKey = disableOptionKeys[1]; // keys which are listed in __dangerouslyDisableSanitizersByTagID for the current vmid do not need to be escaped\n\n if (escapeOptions[disableKey] && escapeOptions[disableKey][tagId] && includes(escapeOptions[disableKey][tagId], key)) {\n escaped[key] = value;\n continue;\n }\n }\n\n if (isString(value)) {\n escaped[key] = doEscape(value);\n } else if (isArray(value)) {\n escaped[key] = value.map(function (v) {\n if (isPureObject(v)) {\n return escape(v, options, escapeOptions, true);\n }\n\n return doEscape(v);\n });\n } else if (isPureObject(value)) {\n escaped[key] = escape(value, options, escapeOptions, true);\n } else {\n escaped[key] = value;\n }\n\n if (escapeKeys) {\n var escapedKey = doEscape(key);\n\n if (key !== escapedKey) {\n escaped[escapedKey] = escaped[key];\n delete escaped[key];\n }\n }\n }\n\n return escaped;\n}\n\nfunction escapeMetaInfo(options, info, escapeSequences) {\n escapeSequences = escapeSequences || []; // do not use destructuring for seq, it increases transpiled size\n // due to var checks while we are guaranteed the structure of the cb\n\n var escapeOptions = {\n doEscape: function doEscape(value) {\n return escapeSequences.reduce(function (val, seq) {\n return val.replace(seq[0], seq[1]);\n }, value);\n }\n };\n disableOptionKeys.forEach(function (disableKey, index) {\n if (index === 0) {\n ensureIsArray(info, disableKey);\n } else if (index === 1) {\n for (var key in info[disableKey]) {\n ensureIsArray(info[disableKey], key);\n }\n }\n\n escapeOptions[disableKey] = info[disableKey];\n }); // begin sanitization\n\n return escape(info, options, escapeOptions);\n}\n\nfunction applyTemplate(_ref, headObject, template, chunk) {\n var component = _ref.component,\n metaTemplateKeyName = _ref.metaTemplateKeyName,\n contentKeyName = _ref.contentKeyName;\n\n if (template === true || headObject[metaTemplateKeyName] === true) {\n // abort, template was already applied\n return false;\n }\n\n if (isUndefined(template) && headObject[metaTemplateKeyName]) {\n template = headObject[metaTemplateKeyName];\n headObject[metaTemplateKeyName] = true;\n } // return early if no template defined\n\n\n if (!template) {\n // cleanup faulty template properties\n delete headObject[metaTemplateKeyName];\n return false;\n }\n\n if (isUndefined(chunk)) {\n chunk = headObject[contentKeyName];\n }\n\n headObject[contentKeyName] = isFunction(template) ? template.call(component, chunk) : template.replace(/%s/g, chunk);\n return true;\n}\n\nfunction _arrayMerge(_ref, target, source) {\n var component = _ref.component,\n tagIDKeyName = _ref.tagIDKeyName,\n metaTemplateKeyName = _ref.metaTemplateKeyName,\n contentKeyName = _ref.contentKeyName; // we concat the arrays without merging objects contained in,\n // but we check for a `vmid` property on each object in the array\n // using an O(1) lookup associative array exploit\n\n var destination = [];\n\n if (!target.length && !source.length) {\n return destination;\n }\n\n target.forEach(function (targetItem, targetIndex) {\n // no tagID so no need to check for duplicity\n if (!targetItem[tagIDKeyName]) {\n destination.push(targetItem);\n return;\n }\n\n var sourceIndex = findIndex(source, function (item) {\n return item[tagIDKeyName] === targetItem[tagIDKeyName];\n });\n var sourceItem = source[sourceIndex]; // source doesnt contain any duplicate vmid's, we can keep targetItem\n\n if (sourceIndex === -1) {\n destination.push(targetItem);\n return;\n } // when sourceItem explictly defines contentKeyName or innerHTML as undefined, its\n // an indication that we need to skip the default behaviour or child has preference over parent\n // which means we keep the targetItem and ignore/remove the sourceItem\n\n\n if (contentKeyName in sourceItem && sourceItem[contentKeyName] === undefined || 'innerHTML' in sourceItem && sourceItem.innerHTML === undefined) {\n destination.push(targetItem); // remove current index from source array so its not concatenated to destination below\n\n source.splice(sourceIndex, 1);\n return;\n } // we now know that targetItem is a duplicate and we should ignore it in favor of sourceItem\n // if source specifies null as content then ignore both the target as the source\n\n\n if (sourceItem[contentKeyName] === null || sourceItem.innerHTML === null) {\n // remove current index from source array so its not concatenated to destination below\n source.splice(sourceIndex, 1);\n return;\n } // now we only need to check if the target has a template to combine it with the source\n\n\n var targetTemplate = targetItem[metaTemplateKeyName];\n\n if (!targetTemplate) {\n return;\n }\n\n var sourceTemplate = sourceItem[metaTemplateKeyName];\n\n if (!sourceTemplate) {\n // use parent template and child content\n applyTemplate({\n component: component,\n metaTemplateKeyName: metaTemplateKeyName,\n contentKeyName: contentKeyName\n }, sourceItem, targetTemplate); // set template to true to indicate template was already applied\n\n sourceItem.template = true;\n return;\n }\n\n if (!sourceItem[contentKeyName]) {\n // use parent content and child template\n applyTemplate({\n component: component,\n metaTemplateKeyName: metaTemplateKeyName,\n contentKeyName: contentKeyName\n }, sourceItem, undefined, targetItem[contentKeyName]);\n }\n });\n return destination.concat(source);\n}\n\nvar warningShown = false;\n\nfunction merge(target, source, options) {\n options = options || {}; // remove properties explicitly set to false so child components can\n // optionally _not_ overwrite the parents content\n // (for array properties this is checked in arrayMerge)\n\n if (source.title === undefined) {\n delete source.title;\n }\n\n metaInfoAttributeKeys.forEach(function (attrKey) {\n if (!source[attrKey]) {\n return;\n }\n\n for (var key in source[attrKey]) {\n if (key in source[attrKey] && source[attrKey][key] === undefined) {\n if (includes(booleanHtmlAttributes, key) && !warningShown) {\n warn('VueMeta: Please note that since v2 the value undefined is not used to indicate boolean attributes anymore, see migration guide for details');\n warningShown = true;\n }\n\n delete source[attrKey][key];\n }\n }\n });\n return deepmerge__WEBPACK_IMPORTED_MODULE_0___default()(target, source, {\n arrayMerge: function arrayMerge(t, s) {\n return _arrayMerge(options, t, s);\n }\n });\n}\n\nfunction getComponentMetaInfo(options, component) {\n return getComponentOption(options || {}, component, defaultInfo);\n}\n/**\n * Returns the `opts.option` $option value of the given `opts.component`.\n * If methods are encountered, they will be bound to the component context.\n * If `opts.deep` is true, will recursively merge all child component\n * `opts.option` $option values into the returned result.\n *\n * @param {Object} opts - options\n * @param {Object} opts.component - Vue component to fetch option data from\n * @param {Boolean} opts.deep - look for data in child components as well?\n * @param {Function} opts.arrayMerge - how should arrays be merged?\n * @param {String} opts.keyName - the name of the option to look for\n * @param {Object} [result={}] - result so far\n * @return {Object} result - final aggregated result\n */\n\n\nfunction getComponentOption(options, component, result) {\n result = result || {};\n\n if (component._inactive) {\n return result;\n }\n\n options = options || {};\n var _options = options,\n keyName = _options.keyName;\n var $metaInfo = component.$metaInfo,\n $options = component.$options,\n $children = component.$children; // only collect option data if it exists\n\n if ($options[keyName]) {\n // if $metaInfo exists then [keyName] was defined as a function\n // and set to the computed prop $metaInfo in the mixin\n // using the computed prop should be a small performance increase\n // because Vue caches those internally\n var data = $metaInfo || $options[keyName]; // only merge data with result when its an object\n // eg it could be a function when metaInfo() returns undefined\n // dueo to the or statement above\n\n if (isObject(data)) {\n result = merge(result, data, options);\n }\n } // collect & aggregate child options if deep = true\n\n\n if ($children.length) {\n $children.forEach(function (childComponent) {\n // check if the childComponent is in a branch\n // return otherwise so we dont walk all component branches unnecessarily\n if (!inMetaInfoBranch(childComponent)) {\n return;\n }\n\n result = getComponentOption(options, childComponent, result);\n });\n }\n\n return result;\n}\n\nvar callbacks = [];\n\nfunction isDOMComplete(d) {\n return (d || document).readyState === 'complete';\n}\n\nfunction addCallback(query, callback) {\n if (arguments.length === 1) {\n callback = query;\n query = '';\n }\n\n callbacks.push([query, callback]);\n}\n\nfunction addCallbacks(_ref, type, tags, autoAddListeners) {\n var tagIDKeyName = _ref.tagIDKeyName;\n var hasAsyncCallback = false;\n tags.forEach(function (tag) {\n if (!tag[tagIDKeyName] || !tag.callback) {\n return;\n }\n\n hasAsyncCallback = true;\n addCallback(\"\".concat(type, \"[data-\").concat(tagIDKeyName, \"=\\\"\").concat(tag[tagIDKeyName], \"\\\"]\"), tag.callback);\n });\n\n if (!autoAddListeners || !hasAsyncCallback) {\n return hasAsyncCallback;\n }\n\n return addListeners();\n}\n\nfunction addListeners() {\n if (isDOMComplete()) {\n applyCallbacks();\n return;\n } // Instead of using a MutationObserver, we just apply\n\n /* istanbul ignore next */\n\n\n document.onreadystatechange = function () {\n applyCallbacks();\n };\n}\n\nfunction applyCallbacks(matchElement) {\n callbacks.forEach(function (args) {\n // do not use destructuring for args, it increases transpiled size\n // due to var checks while we are guaranteed the structure of the cb\n var query = args[0];\n var callback = args[1];\n var selector = \"\".concat(query, \"[onload=\\\"this.__vm_l=1\\\"]\");\n var elements = [];\n\n if (!matchElement) {\n elements = toArray(querySelector(selector));\n }\n\n if (matchElement && matchElement.matches(selector)) {\n elements = [matchElement];\n }\n\n elements.forEach(function (element) {\n /* __vm_cb: whether the load callback has been called\n * __vm_l: set by onload attribute, whether the element was loaded\n * __vm_ev: whether the event listener was added or not\n */\n if (element.__vm_cb) {\n return;\n }\n\n var onload = function onload() {\n /* Mark that the callback for this element has already been called,\n * this prevents the callback to run twice in some (rare) conditions\n */\n element.__vm_cb = true;\n /* onload needs to be removed because we only need the\n * attribute after ssr and if we dont remove it the node\n * will fail isEqualNode on the client\n */\n\n removeAttribute(element, 'onload');\n callback(element);\n };\n /* IE9 doesnt seem to load scripts synchronously,\n * causing a script sometimes/often already to be loaded\n * when we add the event listener below (thus adding an onload event\n * listener has no use because it will never be triggered).\n * Therefore we add the onload attribute during ssr, and\n * check here if it was already loaded or not\n */\n\n\n if (element.__vm_l) {\n onload();\n return;\n }\n\n if (!element.__vm_ev) {\n element.__vm_ev = true;\n element.addEventListener('load', onload);\n }\n });\n });\n} // instead of adding it to the html\n\n\nvar attributeMap = {};\n/**\n * Updates the document's html tag attributes\n *\n * @param {Object} attrs - the new document html attributes\n * @param {HTMLElement} tag - the HTMLElement tag to update with new attrs\n */\n\nfunction updateAttribute(appId, options, type, attrs, tag) {\n var _ref = options || {},\n attribute = _ref.attribute;\n\n var vueMetaAttrString = tag.getAttribute(attribute);\n\n if (vueMetaAttrString) {\n attributeMap[type] = JSON.parse(decodeURI(vueMetaAttrString));\n removeAttribute(tag, attribute);\n }\n\n var data = attributeMap[type] || {};\n var toUpdate = []; // remove attributes from the map\n // which have been removed for this appId\n\n for (var attr in data) {\n if (data[attr] !== undefined && appId in data[attr]) {\n toUpdate.push(attr);\n\n if (!attrs[attr]) {\n delete data[attr][appId];\n }\n }\n }\n\n for (var _attr in attrs) {\n var attrData = data[_attr];\n\n if (!attrData || attrData[appId] !== attrs[_attr]) {\n toUpdate.push(_attr);\n\n if (attrs[_attr] !== undefined) {\n data[_attr] = data[_attr] || {};\n data[_attr][appId] = attrs[_attr];\n }\n }\n }\n\n for (var _i = 0, _toUpdate = toUpdate; _i < _toUpdate.length; _i++) {\n var _attr2 = _toUpdate[_i];\n var _attrData = data[_attr2];\n var attrValues = [];\n\n for (var _appId in _attrData) {\n Array.prototype.push.apply(attrValues, [].concat(_attrData[_appId]));\n }\n\n if (attrValues.length) {\n var attrValue = includes(booleanHtmlAttributes, _attr2) && attrValues.some(Boolean) ? '' : attrValues.filter(function (v) {\n return v !== undefined;\n }).join(' ');\n tag.setAttribute(_attr2, attrValue);\n } else {\n removeAttribute(tag, _attr2);\n }\n }\n\n attributeMap[type] = data;\n}\n/**\n * Updates the document title\n *\n * @param {String} title - the new title of the document\n */\n\n\nfunction updateTitle(title) {\n if (!title && title !== '') {\n return;\n }\n\n document.title = title;\n}\n/**\n * Updates meta tags inside and on the client. Borrowed from `react-helmet`:\n * https://github.com/nfl/react-helmet/blob/004d448f8de5f823d10f838b02317521180f34da/src/Helmet.js#L195-L245\n *\n * @param {('meta'|'base'|'link'|'style'|'script'|'noscript')} type - the name of the tag\n * @param {(Array|Object)} tags - an array of tag objects or a single object in case of base\n * @return {Object} - a representation of what tags changed\n */\n\n\nfunction updateTag(appId, options, type, tags, head, body) {\n var _ref = options || {},\n attribute = _ref.attribute,\n tagIDKeyName = _ref.tagIDKeyName;\n\n var dataAttributes = commonDataAttributes.slice();\n dataAttributes.push(tagIDKeyName);\n var newElements = [];\n var queryOptions = {\n appId: appId,\n attribute: attribute,\n type: type,\n tagIDKeyName: tagIDKeyName\n };\n var currentElements = {\n head: queryElements(head, queryOptions),\n pbody: queryElements(body, queryOptions, {\n pbody: true\n }),\n body: queryElements(body, queryOptions, {\n body: true\n })\n };\n\n if (tags.length > 1) {\n // remove duplicates that could have been found by merging tags\n // which include a mixin with metaInfo and that mixin is used\n // by multiple components on the same page\n var found = [];\n tags = tags.filter(function (x) {\n var k = JSON.stringify(x);\n var res = !includes(found, k);\n found.push(k);\n return res;\n });\n }\n\n tags.forEach(function (tag) {\n if (tag.skip) {\n return;\n }\n\n var newElement = document.createElement(type);\n\n if (!tag.once) {\n newElement.setAttribute(attribute, appId);\n }\n\n Object.keys(tag).forEach(function (attr) {\n /* istanbul ignore next */\n if (includes(tagProperties, attr)) {\n return;\n }\n\n if (attr === 'innerHTML') {\n newElement.innerHTML = tag.innerHTML;\n return;\n }\n\n if (attr === 'json') {\n newElement.innerHTML = JSON.stringify(tag.json);\n return;\n }\n\n if (attr === 'cssText') {\n if (newElement.styleSheet) {\n /* istanbul ignore next */\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n\n return;\n }\n\n if (attr === 'callback') {\n newElement.onload = function () {\n return tag[attr](newElement);\n };\n\n return;\n }\n\n var _attr = includes(dataAttributes, attr) ? \"data-\".concat(attr) : attr;\n\n var isBooleanAttribute = includes(booleanHtmlAttributes, attr);\n\n if (isBooleanAttribute && !tag[attr]) {\n return;\n }\n\n var value = isBooleanAttribute ? '' : tag[attr];\n newElement.setAttribute(_attr, value);\n });\n var oldElements = currentElements[getElementsKey(tag)]; // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n\n var indexToDelete;\n var hasEqualElement = oldElements.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n });\n\n if (hasEqualElement && (indexToDelete || indexToDelete === 0)) {\n oldElements.splice(indexToDelete, 1);\n } else {\n newElements.push(newElement);\n }\n });\n var oldElements = [];\n\n for (var _type in currentElements) {\n Array.prototype.push.apply(oldElements, currentElements[_type]);\n } // remove old elements\n\n\n oldElements.forEach(function (element) {\n element.parentNode.removeChild(element);\n }); // insert new elements\n\n newElements.forEach(function (element) {\n if (element.hasAttribute('data-body')) {\n body.appendChild(element);\n return;\n }\n\n if (element.hasAttribute('data-pbody')) {\n body.insertBefore(element, body.firstChild);\n return;\n }\n\n head.appendChild(element);\n });\n return {\n oldTags: oldElements,\n newTags: newElements\n };\n}\n/**\n * Performs client-side updates when new meta info is received\n *\n * @param {Object} newInfo - the meta info to update to\n */\n\n\nfunction updateClientMetaInfo(appId, options, newInfo) {\n options = options || {};\n var _options = options,\n ssrAttribute = _options.ssrAttribute,\n ssrAppId = _options.ssrAppId; // only cache tags for current update\n\n var tags = {};\n var htmlTag = getTag(tags, 'html'); // if this is a server render, then dont update\n\n if (appId === ssrAppId && htmlTag.hasAttribute(ssrAttribute)) {\n // remove the server render attribute so we can update on (next) changes\n removeAttribute(htmlTag, ssrAttribute); // add load callbacks if the\n\n var addLoadListeners = false;\n tagsSupportingOnload.forEach(function (type) {\n if (newInfo[type] && addCallbacks(options, type, newInfo[type])) {\n addLoadListeners = true;\n }\n });\n\n if (addLoadListeners) {\n addListeners();\n }\n\n return false;\n } // initialize tracked changes\n\n\n var tagsAdded = {};\n var tagsRemoved = {};\n\n for (var type in newInfo) {\n // ignore these\n if (includes(metaInfoOptionKeys, type)) {\n continue;\n }\n\n if (type === 'title') {\n // update the title\n updateTitle(newInfo.title);\n continue;\n }\n\n if (includes(metaInfoAttributeKeys, type)) {\n var tagName = type.substr(0, 4);\n updateAttribute(appId, options, type, newInfo[type], getTag(tags, tagName));\n continue;\n } // tags should always be an array, ignore if it isnt\n\n\n if (!isArray(newInfo[type])) {\n continue;\n }\n\n var _updateTag = updateTag(appId, options, type, newInfo[type], getTag(tags, 'head'), getTag(tags, 'body')),\n oldTags = _updateTag.oldTags,\n newTags = _updateTag.newTags;\n\n if (newTags.length) {\n tagsAdded[type] = newTags;\n tagsRemoved[type] = oldTags;\n }\n }\n\n return {\n tagsAdded: tagsAdded,\n tagsRemoved: tagsRemoved\n };\n}\n\nvar appsMetaInfo;\n\nfunction addApp(rootVm, appId, options) {\n return {\n set: function set(metaInfo) {\n return setMetaInfo(rootVm, appId, options, metaInfo);\n },\n remove: function remove() {\n return removeMetaInfo(rootVm, appId, options);\n }\n };\n}\n\nfunction setMetaInfo(rootVm, appId, options, metaInfo) {\n // if a vm exists _and_ its mounted then immediately update\n if (rootVm && rootVm.$el) {\n return updateClientMetaInfo(appId, options, metaInfo);\n } // store for later, the info\n // will be set on the first refresh\n\n\n appsMetaInfo = appsMetaInfo || {};\n appsMetaInfo[appId] = metaInfo;\n}\n\nfunction removeMetaInfo(rootVm, appId, options) {\n if (rootVm && rootVm.$el) {\n var tags = {};\n\n var _iterator = _createForOfIteratorHelper(metaInfoAttributeKeys),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var type = _step.value;\n var tagName = type.substr(0, 4);\n updateAttribute(appId, options, type, {}, getTag(tags, tagName));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return removeElementsByAppId(options, appId);\n }\n\n if (appsMetaInfo[appId]) {\n delete appsMetaInfo[appId];\n clearAppsMetaInfo();\n }\n}\n\nfunction getAppsMetaInfo() {\n return appsMetaInfo;\n}\n\nfunction clearAppsMetaInfo(force) {\n if (force || !Object.keys(appsMetaInfo).length) {\n appsMetaInfo = undefined;\n }\n}\n/**\n * Returns the correct meta info for the given component\n * (child components will overwrite parent meta info)\n *\n * @param {Object} component - the Vue instance to get meta info from\n * @return {Object} - returned meta info\n */\n\n\nfunction getMetaInfo(options, info, escapeSequences, component) {\n options = options || {};\n escapeSequences = escapeSequences || [];\n var _options = options,\n tagIDKeyName = _options.tagIDKeyName; // Remove all \"template\" tags from meta\n // backup the title chunk in case user wants access to it\n\n if (info.title) {\n info.titleChunk = info.title;\n } // replace title with populated template\n\n\n if (info.titleTemplate && info.titleTemplate !== '%s') {\n applyTemplate({\n component: component,\n contentKeyName: 'title'\n }, info, info.titleTemplate, info.titleChunk || '');\n } // convert base tag to an array so it can be handled the same way\n // as the other tags\n\n\n if (info.base) {\n info.base = Object.keys(info.base).length ? [info.base] : [];\n }\n\n if (info.meta) {\n // remove meta items with duplicate vmid's\n info.meta = info.meta.filter(function (metaItem, index, arr) {\n var hasVmid = !!metaItem[tagIDKeyName];\n\n if (!hasVmid) {\n return true;\n }\n\n var isFirstItemForVmid = index === findIndex(arr, function (item) {\n return item[tagIDKeyName] === metaItem[tagIDKeyName];\n });\n return isFirstItemForVmid;\n }); // apply templates if needed\n\n info.meta.forEach(function (metaObject) {\n return applyTemplate(options, metaObject);\n });\n }\n\n return escapeMetaInfo(options, info, escapeSequences);\n}\n/**\n * When called, will update the current meta info with new meta info.\n * Useful when updating meta info as the result of an asynchronous\n * action that resolves after the initial render takes place.\n *\n * Credit to [Sébastien Chopin](https://github.com/Atinux) for the suggestion\n * to implement this method.\n *\n * @return {Object} - new meta info\n */\n\n\nfunction refresh(rootVm, options) {\n options = options || {}; // make sure vue-meta was initiated\n\n if (!rootVm[rootConfigKey]) {\n showWarningNotSupported();\n return {};\n } // collect & aggregate all metaInfo $options\n\n\n var rawInfo = getComponentMetaInfo(options, rootVm);\n var metaInfo = getMetaInfo(options, rawInfo, clientSequences, rootVm);\n var appId = rootVm[rootConfigKey].appId;\n var tags = updateClientMetaInfo(appId, options, metaInfo); // emit \"event\" with new info\n\n if (tags && isFunction(metaInfo.changed)) {\n metaInfo.changed(metaInfo, tags.tagsAdded, tags.tagsRemoved);\n tags = {\n addedTags: tags.tagsAdded,\n removedTags: tags.tagsRemoved\n };\n }\n\n var appsMetaInfo = getAppsMetaInfo();\n\n if (appsMetaInfo) {\n for (var additionalAppId in appsMetaInfo) {\n updateClientMetaInfo(additionalAppId, options, appsMetaInfo[additionalAppId]);\n delete appsMetaInfo[additionalAppId];\n }\n\n clearAppsMetaInfo(true);\n }\n\n return {\n vm: rootVm,\n metaInfo: metaInfo,\n // eslint-disable-line object-shorthand\n tags: tags\n };\n}\n/**\n * Generates tag attributes for use on the server.\n *\n * @param {('bodyAttrs'|'htmlAttrs'|'headAttrs')} type - the type of attributes to generate\n * @param {Object} data - the attributes to generate\n * @return {Object} - the attribute generator\n */\n\n\nfunction attributeGenerator(options, type, data, _ref) {\n var addSsrAttribute = _ref.addSsrAttribute;\n\n var _ref2 = options || {},\n attribute = _ref2.attribute,\n ssrAttribute = _ref2.ssrAttribute;\n\n var attributeStr = '';\n\n for (var attr in data) {\n var attrData = data[attr];\n var attrValues = [];\n\n for (var appId in attrData) {\n attrValues.push.apply(attrValues, _toConsumableArray([].concat(attrData[appId])));\n }\n\n if (attrValues.length) {\n attributeStr += booleanHtmlAttributes.includes(attr) && attrValues.some(Boolean) ? \"\".concat(attr) : \"\".concat(attr, \"=\\\"\").concat(attrValues.join(' '), \"\\\"\");\n attributeStr += ' ';\n }\n }\n\n if (attributeStr) {\n attributeStr += \"\".concat(attribute, \"=\\\"\").concat(encodeURI(JSON.stringify(data)), \"\\\"\");\n }\n\n if (type === 'htmlAttrs' && addSsrAttribute) {\n return \"\".concat(ssrAttribute).concat(attributeStr ? ' ' : '').concat(attributeStr);\n }\n\n return attributeStr;\n}\n/**\n * Generates title output for the server\n *\n * @param {'title'} type - the string \"title\"\n * @param {String} data - the title text\n * @return {Object} - the title generator\n */\n\n\nfunction titleGenerator(options, type, data, generatorOptions) {\n var _ref = generatorOptions || {},\n ln = _ref.ln;\n\n if (!data) {\n return '';\n }\n\n return \"<\".concat(type, \">\").concat(data, \"\").concat(ln ? '\\n' : '');\n}\n/**\n * Generates meta, base, link, style, script, noscript tags for use on the server\n *\n * @param {('meta'|'base'|'link'|'style'|'script'|'noscript')} the name of the tag\n * @param {(Array|Object)} tags - an array of tag objects or a single object in case of base\n * @return {Object} - the tag generator\n */\n\n\nfunction tagGenerator(options, type, tags, generatorOptions) {\n var _ref = options || {},\n ssrAppId = _ref.ssrAppId,\n attribute = _ref.attribute,\n tagIDKeyName = _ref.tagIDKeyName;\n\n var _ref2 = generatorOptions || {},\n appId = _ref2.appId,\n _ref2$isSSR = _ref2.isSSR,\n isSSR = _ref2$isSSR === void 0 ? true : _ref2$isSSR,\n _ref2$body = _ref2.body,\n body = _ref2$body === void 0 ? false : _ref2$body,\n _ref2$pbody = _ref2.pbody,\n pbody = _ref2$pbody === void 0 ? false : _ref2$pbody,\n _ref2$ln = _ref2.ln,\n ln = _ref2$ln === void 0 ? false : _ref2$ln;\n\n var dataAttributes = [tagIDKeyName].concat(_toConsumableArray(commonDataAttributes));\n\n if (!tags || !tags.length) {\n return '';\n } // build a string containing all tags of this type\n\n\n return tags.reduce(function (tagsStr, tag) {\n if (tag.skip) {\n return tagsStr;\n }\n\n var tagKeys = Object.keys(tag);\n\n if (tagKeys.length === 0) {\n return tagsStr; // Bail on empty tag object\n }\n\n if (Boolean(tag.body) !== body || Boolean(tag.pbody) !== pbody) {\n return tagsStr;\n }\n\n var attrs = tag.once ? '' : \" \".concat(attribute, \"=\\\"\").concat(appId || (isSSR === false ? '1' : ssrAppId), \"\\\"\"); // build a string containing all attributes of this tag\n\n for (var attr in tag) {\n // these attributes are treated as children on the tag\n if (tagAttributeAsInnerContent.includes(attr) || tagProperties.includes(attr)) {\n continue;\n }\n\n if (attr === 'callback') {\n attrs += ' onload=\"this.__vm_l=1\"';\n continue;\n } // these form the attribute list for this tag\n\n\n var prefix = '';\n\n if (dataAttributes.includes(attr)) {\n prefix = 'data-';\n }\n\n var isBooleanAttr = !prefix && booleanHtmlAttributes.includes(attr);\n\n if (isBooleanAttr && !tag[attr]) {\n continue;\n }\n\n attrs += \" \".concat(prefix).concat(attr) + (isBooleanAttr ? '' : \"=\\\"\".concat(tag[attr], \"\\\"\"));\n }\n\n var json = '';\n\n if (tag.json) {\n json = JSON.stringify(tag.json);\n } // grab child content from one of these attributes, if possible\n\n\n var content = tag.innerHTML || tag.cssText || json; // generate tag exactly without any other redundant attribute\n // these tags have no end tag\n\n var hasEndTag = !tagsWithoutEndTag.includes(type); // these tag types will have content inserted\n\n var hasContent = hasEndTag && tagsWithInnerContent.includes(type); // the final string for this specific tag\n\n return \"\".concat(tagsStr, \"<\").concat(type).concat(attrs).concat(!hasContent && hasEndTag ? '/' : '', \">\") + (hasContent ? \"\".concat(content, \"\") : '') + (ln ? '\\n' : '');\n }, '');\n}\n/**\n * Converts a meta info property to one that can be stringified on the server\n *\n * @param {String} type - the type of data to convert\n * @param {(String|Object|Array)} data - the data value\n * @return {Object} - the new injector\n */\n\n\nfunction generateServerInjector(options, metaInfo, globalInjectOptions) {\n var serverInjector = {\n data: metaInfo,\n extraData: undefined,\n addInfo: function addInfo(appId, metaInfo) {\n this.extraData = this.extraData || {};\n this.extraData[appId] = metaInfo;\n },\n callInjectors: function callInjectors(opts) {\n var m = this.injectors; // only call title for the head\n\n return (opts.body || opts.pbody ? '' : m.title.text(opts)) + m.meta.text(opts) + m.base.text(opts) + m.link.text(opts) + m.style.text(opts) + m.script.text(opts) + m.noscript.text(opts);\n },\n injectors: {\n head: function head(ln) {\n return serverInjector.callInjectors(_objectSpread2(_objectSpread2({}, globalInjectOptions), {}, {\n ln: ln\n }));\n },\n bodyPrepend: function bodyPrepend(ln) {\n return serverInjector.callInjectors(_objectSpread2(_objectSpread2({}, globalInjectOptions), {}, {\n ln: ln,\n pbody: true\n }));\n },\n bodyAppend: function bodyAppend(ln) {\n return serverInjector.callInjectors(_objectSpread2(_objectSpread2({}, globalInjectOptions), {}, {\n ln: ln,\n body: true\n }));\n }\n }\n };\n\n var _loop = function _loop(type) {\n if (metaInfoOptionKeys.includes(type)) {\n return \"continue\";\n }\n\n serverInjector.injectors[type] = {\n text: function text(injectOptions) {\n var addSsrAttribute = injectOptions === true;\n injectOptions = _objectSpread2(_objectSpread2({\n addSsrAttribute: addSsrAttribute\n }, globalInjectOptions), injectOptions);\n\n if (type === 'title') {\n return titleGenerator(options, type, serverInjector.data[type], injectOptions);\n }\n\n if (metaInfoAttributeKeys.includes(type)) {\n var attributeData = {};\n var data = serverInjector.data[type];\n\n if (data) {\n var appId = injectOptions.isSSR === false ? '1' : options.ssrAppId;\n\n for (var attr in data) {\n attributeData[attr] = _defineProperty({}, appId, data[attr]);\n }\n }\n\n if (serverInjector.extraData) {\n for (var _appId in serverInjector.extraData) {\n var _data = serverInjector.extraData[_appId][type];\n\n if (_data) {\n for (var _attr in _data) {\n attributeData[_attr] = _objectSpread2(_objectSpread2({}, attributeData[_attr]), {}, _defineProperty({}, _appId, _data[_attr]));\n }\n }\n }\n }\n\n return attributeGenerator(options, type, attributeData, injectOptions);\n }\n\n var str = tagGenerator(options, type, serverInjector.data[type], injectOptions);\n\n if (serverInjector.extraData) {\n for (var _appId2 in serverInjector.extraData) {\n var _data2 = serverInjector.extraData[_appId2][type];\n var extraStr = tagGenerator(options, type, _data2, _objectSpread2({\n appId: _appId2\n }, injectOptions));\n str = \"\".concat(str).concat(extraStr);\n }\n }\n\n return str;\n }\n };\n };\n\n for (var type in defaultInfo) {\n var _ret = _loop(type);\n\n if (_ret === \"continue\") continue;\n }\n\n return serverInjector;\n}\n/**\n * Converts the state of the meta info object such that each item\n * can be compiled to a tag string on the server\n *\n * @vm {Object} - Vue instance - ideally the root component\n * @return {Object} - server meta info with `toString` methods\n */\n\n\nfunction inject(rootVm, options, injectOptions) {\n // make sure vue-meta was initiated\n if (!rootVm[rootConfigKey]) {\n showWarningNotSupported();\n return {};\n } // collect & aggregate all metaInfo $options\n\n\n var rawInfo = getComponentMetaInfo(options, rootVm);\n var metaInfo = getMetaInfo(options, rawInfo, serverSequences, rootVm); // generate server injector\n\n var serverInjector = generateServerInjector(options, metaInfo, injectOptions); // add meta info from additional apps\n\n var appsMetaInfo = getAppsMetaInfo();\n\n if (appsMetaInfo) {\n for (var additionalAppId in appsMetaInfo) {\n serverInjector.addInfo(additionalAppId, appsMetaInfo[additionalAppId]);\n delete appsMetaInfo[additionalAppId];\n }\n\n clearAppsMetaInfo(true);\n }\n\n return serverInjector.injectors;\n}\n\nfunction $meta(options) {\n options = options || {};\n /**\n * Returns an injector for server-side rendering.\n * @this {Object} - the Vue instance (a root component)\n * @return {Object} - injector\n */\n\n var $root = this.$root;\n return {\n getOptions: function getOptions$1() {\n return getOptions(options);\n },\n setOptions: function setOptions(newOptions) {\n var refreshNavKey = 'refreshOnceOnNavigation';\n\n if (newOptions && newOptions[refreshNavKey]) {\n options.refreshOnceOnNavigation = !!newOptions[refreshNavKey];\n addNavGuards($root);\n }\n\n var debounceWaitKey = 'debounceWait';\n\n if (newOptions && debounceWaitKey in newOptions) {\n var debounceWait = parseInt(newOptions[debounceWaitKey]);\n\n if (!isNaN(debounceWait)) {\n options.debounceWait = debounceWait;\n }\n }\n\n var waitOnDestroyedKey = 'waitOnDestroyed';\n\n if (newOptions && waitOnDestroyedKey in newOptions) {\n options.waitOnDestroyed = !!newOptions[waitOnDestroyedKey];\n }\n },\n refresh: function refresh$1() {\n return refresh($root, options);\n },\n inject: function inject$1(injectOptions) {\n return inject($root, options, injectOptions);\n },\n pause: function pause$1() {\n return pause($root);\n },\n resume: function resume$1() {\n return resume($root);\n },\n addApp: function addApp$1(appId) {\n return addApp($root, appId, options);\n }\n };\n}\n\nfunction generate(rawInfo, options) {\n options = setOptions(options);\n var metaInfo = getMetaInfo(options, rawInfo, serverSequences);\n var serverInjector = generateServerInjector(options, metaInfo);\n return serverInjector.injectors;\n}\n/**\n * Plugin install function.\n * @param {Function} Vue - the Vue constructor.\n */\n\n\nfunction install(Vue, options) {\n if (Vue.__vuemeta_installed) {\n return;\n }\n\n Vue.__vuemeta_installed = true;\n options = setOptions(options);\n\n Vue.prototype.$meta = function () {\n return $meta.call(this, options);\n };\n\n Vue.mixin(createMixin(Vue, options));\n}\n\nvar index = {\n version: version,\n install: install,\n generate: function generate$1(metaInfo, options) {\n return generate(metaInfo, options);\n },\n hasMetaInfo: hasMetaInfo\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (index);\n\n//# sourceURL=webpack://materio.com/./node_modules/vue-meta/dist/vue-meta.esm.js?"); /***/ }), /***/ "./node_modules/vue-router/dist/vue-router.esm.js": /*!********************************************************!*\ !*** ./node_modules/vue-router/dist/vue-router.esm.js ***! \********************************************************/ /*! namespace exports */ /*! export default [provided] [no usage info] [missing usage info prevents renaming] */ /*! other exports [not provided] [no usage info] */ /*! runtime requirements: __webpack_exports__, __webpack_require__.r, __webpack_require__.d, __webpack_require__.* */ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => __WEBPACK_DEFAULT_EXPORT__\n/* harmony export */ });\n/*!\n * vue-router v3.4.9\n * (c) 2020 Evan You\n * @license MIT\n */\n\n/* */\nfunction assert(condition, message) {\n if (!condition) {\n throw new Error(\"[vue-router] \" + message);\n }\n}\n\nfunction warn(condition, message) {\n if ( true && !condition) {\n typeof console !== 'undefined' && console.warn(\"[vue-router] \" + message);\n }\n}\n\nfunction extend(a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n\n return a;\n}\n/* */\n\n\nvar encodeReserveRE = /[!'()*]/g;\n\nvar encodeReserveReplacer = function (c) {\n return '%' + c.charCodeAt(0).toString(16);\n};\n\nvar commaRE = /%2C/g; // fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\n\nvar encode = function (str) {\n return encodeURIComponent(str).replace(encodeReserveRE, encodeReserveReplacer).replace(commaRE, ',');\n};\n\nfunction decode(str) {\n try {\n return decodeURIComponent(str);\n } catch (err) {\n if (true) {\n warn(false, \"Error decoding \\\"\" + str + \"\\\". Leaving it intact.\");\n }\n }\n\n return str;\n}\n\nfunction resolveQuery(query, extraQuery, _parseQuery) {\n if (extraQuery === void 0) extraQuery = {};\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n true && warn(false, e.message);\n parsedQuery = {};\n }\n\n for (var key in extraQuery) {\n var value = extraQuery[key];\n parsedQuery[key] = Array.isArray(value) ? value.map(castQueryParamValue) : castQueryParamValue(value);\n }\n\n return parsedQuery;\n}\n\nvar castQueryParamValue = function (value) {\n return value == null || typeof value === 'object' ? value : String(value);\n};\n\nfunction parseQuery(query) {\n var res = {};\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res;\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0 ? decode(parts.join('=')) : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n return res;\n}\n\nfunction stringifyQuery(obj) {\n var res = obj ? Object.keys(obj).map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return '';\n }\n\n if (val === null) {\n return encode(key);\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return;\n }\n\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&');\n }\n\n return encode(key) + '=' + encode(val);\n }).filter(function (x) {\n return x.length > 0;\n }).join('&') : null;\n return res ? \"?\" + res : '';\n}\n/* */\n\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute(record, location, redirectedFrom, router) {\n var stringifyQuery = router && router.options.stringifyQuery;\n var query = location.query || {};\n\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || record && record.name,\n meta: record && record.meta || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery),\n matched: record ? formatMatch(record) : []\n };\n\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery);\n }\n\n return Object.freeze(route);\n}\n\nfunction clone(value) {\n if (Array.isArray(value)) {\n return value.map(clone);\n } else if (value && typeof value === 'object') {\n var res = {};\n\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n\n return res;\n } else {\n return value;\n }\n} // the starting route that represents the initial state\n\n\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch(record) {\n var res = [];\n\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n\n return res;\n}\n\nfunction getFullPath(ref, _stringifyQuery) {\n var path = ref.path;\n var query = ref.query;\n if (query === void 0) query = {};\n var hash = ref.hash;\n if (hash === void 0) hash = '';\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash;\n}\n\nfunction isSameRoute(a, b) {\n if (b === START) {\n return a === b;\n } else if (!b) {\n return false;\n } else if (a.path && b.path) {\n return a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') && a.hash === b.hash && isObjectEqual(a.query, b.query);\n } else if (a.name && b.name) {\n return a.name === b.name && a.hash === b.hash && isObjectEqual(a.query, b.query) && isObjectEqual(a.params, b.params);\n } else {\n return false;\n }\n}\n\nfunction isObjectEqual(a, b) {\n if (a === void 0) a = {};\n if (b === void 0) b = {}; // handle null value #1566\n\n if (!a || !b) {\n return a === b;\n }\n\n var aKeys = Object.keys(a).sort();\n var bKeys = Object.keys(b).sort();\n\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n\n return aKeys.every(function (key, i) {\n var aVal = a[key];\n var bKey = bKeys[i];\n\n if (bKey !== key) {\n return false;\n }\n\n var bVal = b[key]; // query values can be null and undefined\n\n if (aVal == null || bVal == null) {\n return aVal === bVal;\n } // check nested equality\n\n\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal);\n }\n\n return String(aVal) === String(bVal);\n });\n}\n\nfunction isIncludedRoute(current, target) {\n return current.path.replace(trailingSlashRE, '/').indexOf(target.path.replace(trailingSlashRE, '/')) === 0 && (!target.hash || current.hash === target.hash) && queryIncludes(current.query, target.query);\n}\n\nfunction queryIncludes(current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction handleRouteEntered(route) {\n for (var i = 0; i < route.matched.length; i++) {\n var record = route.matched[i];\n\n for (var name in record.instances) {\n var instance = record.instances[name];\n var cbs = record.enteredCbs[name];\n\n if (!instance || !cbs) {\n continue;\n }\n\n delete record.enteredCbs[name];\n\n for (var i$1 = 0; i$1 < cbs.length; i$1++) {\n if (!instance._isBeingDestroyed) {\n cbs[i$1](instance);\n }\n }\n }\n }\n}\n\nvar View = {\n name: 'RouterView',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render(_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data; // used by devtools to display a router-view badge\n\n data.routerView = true; // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {}); // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n\n var depth = 0;\n var inactive = false;\n\n while (parent && parent._routerRoot !== parent) {\n var vnodeData = parent.$vnode ? parent.$vnode.data : {};\n\n if (vnodeData.routerView) {\n depth++;\n }\n\n if (vnodeData.keepAlive && parent._directInactive && parent._inactive) {\n inactive = true;\n }\n\n parent = parent.$parent;\n }\n\n data.routerViewDepth = depth; // render previous view if the tree is inactive and kept-alive\n\n if (inactive) {\n var cachedData = cache[name];\n var cachedComponent = cachedData && cachedData.component;\n\n if (cachedComponent) {\n // #2301\n // pass props\n if (cachedData.configProps) {\n fillPropsinData(cachedComponent, data, cachedData.route, cachedData.configProps);\n }\n\n return h(cachedComponent, data, children);\n } else {\n // render previous empty view\n return h();\n }\n }\n\n var matched = route.matched[depth];\n var component = matched && matched.components[name]; // render empty node if no matched route or no config component\n\n if (!matched || !component) {\n cache[name] = null;\n return h();\n } // cache component\n\n\n cache[name] = {\n component: component\n }; // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n\n if (val && current !== vm || !val && current === vm) {\n matched.instances[name] = val;\n }\n } // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;\n\n (data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n }; // register instance in init hook\n // in case kept-alive component be actived when routes changed\n\n\n data.hook.init = function (vnode) {\n if (vnode.data.keepAlive && vnode.componentInstance && vnode.componentInstance !== matched.instances[name]) {\n matched.instances[name] = vnode.componentInstance;\n } // if the route transition has already been confirmed then we weren't\n // able to call the cbs during confirmation as the component was not\n // registered yet, so we call it here.\n\n\n handleRouteEntered(route);\n };\n\n var configProps = matched.props && matched.props[name]; // save route and configProps in cache\n\n if (configProps) {\n extend(cache[name], {\n route: route,\n configProps: configProps\n });\n fillPropsinData(component, data, route, configProps);\n }\n\n return h(component, data, children);\n }\n};\n\nfunction fillPropsinData(component, data, route, configProps) {\n // resolve props\n var propsToPass = data.props = resolveProps(route, configProps);\n\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass); // pass non-declared props as attrs\n\n var attrs = data.attrs = data.attrs || {};\n\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n}\n\nfunction resolveProps(route, config) {\n switch (typeof config) {\n case 'undefined':\n return;\n\n case 'object':\n return config;\n\n case 'function':\n return config(route);\n\n case 'boolean':\n return config ? route.params : undefined;\n\n default:\n if (true) {\n warn(false, \"props in \\\"\" + route.path + \"\\\" is a \" + typeof config + \", \" + \"expecting an object, function or boolean.\");\n }\n\n }\n}\n/* */\n\n\nfunction resolvePath(relative, base, append) {\n var firstChar = relative.charAt(0);\n\n if (firstChar === '/') {\n return relative;\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative;\n }\n\n var stack = base.split('/'); // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n } // resolve relative path\n\n\n var segments = relative.replace(/^\\//, '').split('/');\n\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n } // ensure leading slash\n\n\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/');\n}\n\nfunction parsePath(path) {\n var hash = '';\n var query = '';\n var hashIndex = path.indexOf('#');\n\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n };\n}\n\nfunction cleanPath(path) {\n return path.replace(/\\/\\//g, '/');\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n/**\n * Expose `pathToRegexp`.\n */\n\n\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\n\nvar PATH_REGEXP = new RegExp([// Match escaped characters that would otherwise appear in future matches.\n// This allows the user to escape special characters that won't transform.\n'(\\\\\\\\.)', // Match Express-style parameters and un-named parameters with a prefix\n// and optional suffixes. Matches appear as:\n//\n// \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n// \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n// \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n'([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'].join('|'), 'g');\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\n\nfunction parse(str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length; // Ignore already escaped sequences.\n\n if (escaped) {\n path += escaped[1];\n continue;\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7]; // Push the current path onto the tokens.\n\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?'\n });\n } // Match any characters still remaining.\n\n\n if (index < str.length) {\n path += str.substr(index);\n } // If the path exists, push it onto the end.\n\n\n if (path) {\n tokens.push(path);\n }\n\n return tokens;\n}\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\n\n\nfunction compile(str, options) {\n return tokensToFunction(parse(str, options), options);\n}\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\n\n\nfunction encodeURIComponentPretty(str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\n\n\nfunction encodeAsterisk(str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n/**\n * Expose a method for transforming tokens into the path function.\n */\n\n\nfunction tokensToFunction(tokens, options) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length); // Compile all the patterns before compilation.\n\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options));\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n continue;\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue;\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined');\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`');\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue;\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty');\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`');\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue;\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"');\n }\n\n path += token.prefix + segment;\n }\n\n return path;\n };\n}\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\n\n\nfunction escapeString(str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1');\n}\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\n\n\nfunction escapeGroup(group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1');\n}\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\n\n\nfunction attachKeys(re, keys) {\n re.keys = keys;\n return re;\n}\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\n\n\nfunction flags(options) {\n return options && options.sensitive ? '' : 'i';\n}\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\n\n\nfunction regexpToRegexp(path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys);\n}\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\n\n\nfunction arrayToRegexp(path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n return attachKeys(regexp, keys);\n}\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\n\n\nfunction stringToRegexp(path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options);\n}\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\n\n\nfunction tokensToRegExp(tokens, keys, options) {\n if (!isarray(keys)) {\n options =\n /** @type {!Object} */\n keys || options;\n keys = [];\n }\n\n options = options || {};\n var strict = options.strict;\n var end = options.end !== false;\n var route = ''; // Iterate over the tokens and create our regexp string.\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter; // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys);\n}\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\n\n\nfunction pathToRegexp(path, keys, options) {\n if (!isarray(keys)) {\n options =\n /** @type {!Object} */\n keys || options;\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path,\n /** @type {!Array} */\n keys);\n }\n\n if (isarray(path)) {\n return arrayToRegexp(\n /** @type {!Array} */\n path,\n /** @type {!Array} */\n keys, options);\n }\n\n return stringToRegexp(\n /** @type {string} */\n path,\n /** @type {!Array} */\n keys, options);\n}\n\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n/* */\n// $flow-disable-line\n\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams(path, params, routeMsg) {\n params = params || {};\n\n try {\n var filler = regexpCompileCache[path] || (regexpCompileCache[path] = pathToRegexp_1.compile(path)); // Fix #2505 resolving asterisk routes { name: 'not-found', params: { pathMatch: '/not-found' }}\n // and fix #3106 so that you can work with location descriptor object having params.pathMatch equal to empty string\n\n if (typeof params.pathMatch === 'string') {\n params[0] = params.pathMatch;\n }\n\n return filler(params, {\n pretty: true\n });\n } catch (e) {\n if (true) {\n // Fix #3072 no warn if `pathMatch` is string\n warn(typeof params.pathMatch === 'string', \"missing param for \" + routeMsg + \": \" + e.message);\n }\n\n return '';\n } finally {\n // delete the 0 if it was added\n delete params[0];\n }\n}\n/* */\n\n\nfunction normalizeLocation(raw, current, append, router) {\n var next = typeof raw === 'string' ? {\n path: raw\n } : raw; // named target\n\n if (next._normalized) {\n return next;\n } else if (next.name) {\n next = extend({}, raw);\n var params = next.params;\n\n if (params && typeof params === 'object') {\n next.params = extend({}, params);\n }\n\n return next;\n } // relative params\n\n\n if (!next.path && next.params && current) {\n next = extend({}, next);\n next._normalized = true;\n var params$1 = extend(extend({}, current.params), next.params);\n\n if (current.name) {\n next.name = current.name;\n next.params = params$1;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params$1, \"path \" + current.path);\n } else if (true) {\n warn(false, \"relative params navigation requires a current route.\");\n }\n\n return next;\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = current && current.path || '/';\n var path = parsedPath.path ? resolvePath(parsedPath.path, basePath, append || next.append) : basePath;\n var query = resolveQuery(parsedPath.query, next.query, router && router.options.parseQuery);\n var hash = next.hash || parsedPath.hash;\n\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n };\n}\n/* */\n// work around weird flow bug\n\n\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar noop = function () {};\n\nvar Link = {\n name: 'RouterLink',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n exact: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n ariaCurrentValue: {\n type: String,\n default: 'page'\n },\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render(h) {\n var this$1 = this;\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(this.to, current, this.append);\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass; // Support global empty active class\n\n var activeClassFallback = globalActiveClass == null ? 'router-link-active' : globalActiveClass;\n var exactActiveClassFallback = globalExactActiveClass == null ? 'router-link-exact-active' : globalExactActiveClass;\n var activeClass = this.activeClass == null ? activeClassFallback : this.activeClass;\n var exactActiveClass = this.exactActiveClass == null ? exactActiveClassFallback : this.exactActiveClass;\n var compareTarget = route.redirectedFrom ? createRoute(null, normalizeLocation(route.redirectedFrom), null, router) : route;\n classes[exactActiveClass] = isSameRoute(current, compareTarget);\n classes[activeClass] = this.exact ? classes[exactActiveClass] : isIncludedRoute(current, compareTarget);\n var ariaCurrentValue = classes[exactActiveClass] ? this.ariaCurrentValue : null;\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1.replace) {\n router.replace(location, noop);\n } else {\n router.push(location, noop);\n }\n }\n };\n\n var on = {\n click: guardEvent\n };\n\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) {\n on[e] = handler;\n });\n } else {\n on[this.event] = handler;\n }\n\n var data = {\n class: classes\n };\n var scopedSlot = !this.$scopedSlots.$hasNormal && this.$scopedSlots.default && this.$scopedSlots.default({\n href: href,\n route: route,\n navigate: handler,\n isActive: classes[activeClass],\n isExactActive: classes[exactActiveClass]\n });\n\n if (scopedSlot) {\n if (scopedSlot.length === 1) {\n return scopedSlot[0];\n } else if (scopedSlot.length > 1 || !scopedSlot.length) {\n if (true) {\n warn(false, \"RouterLink with to=\\\"\" + this.to + \"\\\" is trying to use a scoped slot but it didn't provide exactly one child. Wrapping the content with a span element.\");\n }\n\n return scopedSlot.length === 0 ? h() : h('span', {}, scopedSlot);\n }\n }\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = {\n href: href,\n 'aria-current': ariaCurrentValue\n };\n } else {\n // find the first child and apply listener and href\n var a = findAnchor(this.$slots.default);\n\n if (a) {\n // in case the is a static node\n a.isStatic = false;\n var aData = a.data = extend({}, a.data);\n aData.on = aData.on || {}; // transform existing events in both objects into arrays so we can push later\n\n for (var event in aData.on) {\n var handler$1 = aData.on[event];\n\n if (event in on) {\n aData.on[event] = Array.isArray(handler$1) ? handler$1 : [handler$1];\n }\n } // append new listeners for router-link\n\n\n for (var event$1 in on) {\n if (event$1 in aData.on) {\n // on[event] is always a function\n aData.on[event$1].push(on[event$1]);\n } else {\n aData.on[event$1] = handler;\n }\n }\n\n var aAttrs = a.data.attrs = extend({}, a.data.attrs);\n aAttrs.href = href;\n aAttrs['aria-current'] = ariaCurrentValue;\n } else {\n // doesn't have child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default);\n }\n};\n\nfunction guardEvent(e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) {\n return;\n } // don't redirect when preventDefault called\n\n\n if (e.defaultPrevented) {\n return;\n } // don't redirect on right click\n\n\n if (e.button !== undefined && e.button !== 0) {\n return;\n } // don't redirect if `target=\"_blank\"`\n\n\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n\n if (/\\b_blank\\b/i.test(target)) {\n return;\n }\n } // this may be a Weex event which doesn't have this method\n\n\n if (e.preventDefault) {\n e.preventDefault();\n }\n\n return true;\n}\n\nfunction findAnchor(children) {\n if (children) {\n var child;\n\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n\n if (child.tag === 'a') {\n return child;\n }\n\n if (child.children && (child = findAnchor(child.children))) {\n return child;\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install(Vue) {\n if (install.installed && _Vue === Vue) {\n return;\n }\n\n install.installed = true;\n _Vue = Vue;\n\n var isDef = function (v) {\n return v !== undefined;\n };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate() {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n\n this._router.init(this);\n\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = this.$parent && this.$parent._routerRoot || this;\n }\n\n registerInstance(this, this);\n },\n destroyed: function destroyed() {\n registerInstance(this);\n }\n });\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get() {\n return this._routerRoot._router;\n }\n });\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get() {\n return this._routerRoot._route;\n }\n });\n Vue.component('RouterView', View);\n Vue.component('RouterLink', Link);\n var strats = Vue.config.optionMergeStrategies; // use the same hook merging strategy for route hooks\n\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n/* */\n\n\nvar inBrowser = typeof window !== 'undefined';\n/* */\n\nfunction createRouteMap(routes, oldPathList, oldPathMap, oldNameMap) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || []; // $flow-disable-line\n\n var pathMap = oldPathMap || Object.create(null); // $flow-disable-line\n\n var nameMap = oldNameMap || Object.create(null);\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route);\n }); // ensure wildcard routes are always at the end\n\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n if (true) {\n // warn if routes do not include leading slashes\n var found = pathList // check for missing leading slash\n .filter(function (path) {\n return path && path.charAt(0) !== '*' && path.charAt(0) !== '/';\n });\n\n if (found.length > 0) {\n var pathNames = found.map(function (path) {\n return \"- \" + path;\n }).join('\\n');\n warn(false, \"Non-nested routes must include a leading slash character. Fix the following routes: \\n\" + pathNames);\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n };\n}\n\nfunction addRouteRecord(pathList, pathMap, nameMap, route, parent, matchAs) {\n var path = route.path;\n var name = route.name;\n\n if (true) {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(typeof route.component !== 'string', \"route config \\\"component\\\" for path: \" + String(path || name) + \" cannot be a \" + \"string id. Use an actual component instead.\");\n warn( // eslint-disable-next-line no-control-regex\n !/[^\\u0000-\\u007F]+/.test(path), \"Route with path \\\"\" + path + \"\\\" contains unencoded characters, make sure \" + \"your path is correctly encoded before passing it to the router. Use \" + \"encodeURI to encode static segments of your path.\");\n }\n\n var pathToRegexpOptions = route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(path, parent, pathToRegexpOptions.strict);\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || {\n default: route.component\n },\n instances: {},\n enteredCbs: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props: route.props == null ? {} : route.components ? route.props : {\n default: route.props\n }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (true) {\n if (route.name && !route.redirect && route.children.some(function (child) {\n return /^\\/?$/.test(child.path);\n })) {\n warn(false, \"Named Route '\" + route.name + \"' has a default child route. \" + \"When navigating to this named route (:to=\\\"{name: '\" + route.name + \"'\\\"), \" + \"the default child route will not be rendered. Remove the name from \" + \"this route and use the name of the default child route for named \" + \"links instead.\");\n }\n }\n\n route.children.forEach(function (child) {\n var childMatchAs = matchAs ? cleanPath(matchAs + \"/\" + child.path) : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias) ? route.alias : [route.alias];\n\n for (var i = 0; i < aliases.length; ++i) {\n var alias = aliases[i];\n\n if ( true && alias === path) {\n warn(false, \"Found an alias with the same value as the path: \\\"\" + path + \"\\\". You have to remove that alias. It will be ignored in development.\"); // skip in dev to make it work\n\n continue;\n }\n\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(pathList, pathMap, nameMap, aliasRoute, parent, record.path || '/' // matchAs\n );\n }\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if ( true && !matchAs) {\n warn(false, \"Duplicate named routes definition: \" + \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + record.path + \"\\\" }\");\n }\n }\n}\n\nfunction compileRouteRegex(path, pathToRegexpOptions) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n\n if (true) {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(!keys[key.name], \"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\");\n keys[key.name] = true;\n });\n }\n\n return regex;\n}\n\nfunction normalizePath(path, parent, strict) {\n if (!strict) {\n path = path.replace(/\\/$/, '');\n }\n\n if (path[0] === '/') {\n return path;\n }\n\n if (parent == null) {\n return path;\n }\n\n return cleanPath(parent.path + \"/\" + path);\n}\n/* */\n\n\nfunction createMatcher(routes, router) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes(routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function match(raw, currentRoute, redirectedFrom) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n\n if (true) {\n warn(record, \"Route with name '\" + name + \"' does not exist\");\n }\n\n if (!record) {\n return _createRoute(null, location);\n }\n\n var paramNames = record.regex.keys.filter(function (key) {\n return !key.optional;\n }).map(function (key) {\n return key.name;\n });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n location.path = fillParams(record.path, location.params, \"named route \\\"\" + name + \"\\\"\");\n return _createRoute(record, location, redirectedFrom);\n } else if (location.path) {\n location.params = {};\n\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom);\n }\n }\n } // no match\n\n\n return _createRoute(null, location);\n }\n\n function redirect(record, location) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function' ? originalRedirect(createRoute(record, location, null, router)) : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = {\n path: redirect\n };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (true) {\n warn(false, \"invalid redirect option: \" + JSON.stringify(redirect));\n }\n\n return _createRoute(null, location);\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n\n if (true) {\n assert(targetRecord, \"redirect failed: named route \\\"\" + name + \"\\\" not found.\");\n }\n\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location);\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record); // 2. resolve params\n\n var resolvedPath = fillParams(rawPath, params, \"redirect route with path \\\"\" + rawPath + \"\\\"\"); // 3. rematch with existing query and hash\n\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location);\n } else {\n if (true) {\n warn(false, \"invalid redirect option: \" + JSON.stringify(redirect));\n }\n\n return _createRoute(null, location);\n }\n }\n\n function alias(record, location, matchAs) {\n var aliasedPath = fillParams(matchAs, location.params, \"aliased route with path \\\"\" + matchAs + \"\\\"\");\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location);\n }\n\n return _createRoute(null, location);\n }\n\n function _createRoute(record, location, redirectedFrom) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location);\n }\n\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs);\n }\n\n return createRoute(record, location, redirectedFrom, router);\n }\n\n return {\n match: match,\n addRoutes: addRoutes\n };\n}\n\nfunction matchRoute(regex, path, params) {\n var m = path.match(regex);\n\n if (!m) {\n return false;\n } else if (!params) {\n return true;\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n\n if (key) {\n // Fix #1994: using * with props: true generates a param named 0\n params[key.name || 'pathMatch'] = typeof m[i] === 'string' ? decode(m[i]) : m[i];\n }\n }\n\n return true;\n}\n\nfunction resolveRecordPath(path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true);\n}\n/* */\n// use User Timing api (if present) for more accurate key precision\n\n\nvar Time = inBrowser && window.performance && window.performance.now ? window.performance : Date;\n\nfunction genStateKey() {\n return Time.now().toFixed(3);\n}\n\nvar _key = genStateKey();\n\nfunction getStateKey() {\n return _key;\n}\n\nfunction setStateKey(key) {\n return _key = key;\n}\n/* */\n\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll() {\n // Prevent browser scroll behavior on History popstate\n if ('scrollRestoration' in window.history) {\n window.history.scrollRestoration = 'manual';\n } // Fix for #1585 for Firefox\n // Fix for #2195 Add optional third attribute to workaround a bug in safari https://bugs.webkit.org/show_bug.cgi?id=182678\n // Fix for #2774 Support for apps loaded from Windows file shares not mapped to network drives: replaced location.origin with\n // window.location.protocol + '//' + window.location.host\n // location.host contains the port and location.hostname doesn't\n\n\n var protocolAndPath = window.location.protocol + '//' + window.location.host;\n var absolutePath = window.location.href.replace(protocolAndPath, ''); // preserve existing history state as it could be overriden by the user\n\n var stateCopy = extend({}, window.history.state);\n stateCopy.key = getStateKey();\n window.history.replaceState(stateCopy, '', absolutePath);\n window.addEventListener('popstate', handlePopState);\n return function () {\n window.removeEventListener('popstate', handlePopState);\n };\n}\n\nfunction handleScroll(router, to, from, isPop) {\n if (!router.app) {\n return;\n }\n\n var behavior = router.options.scrollBehavior;\n\n if (!behavior) {\n return;\n }\n\n if (true) {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n } // wait until re-render finishes before scrolling\n\n\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior.call(router, to, from, isPop ? position : null);\n\n if (!shouldScroll) {\n return;\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll.then(function (shouldScroll) {\n scrollToPosition(shouldScroll, position);\n }).catch(function (err) {\n if (true) {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition() {\n var key = getStateKey();\n\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction handlePopState(e) {\n saveScrollPosition();\n\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n}\n\nfunction getScrollPosition() {\n var key = getStateKey();\n\n if (key) {\n return positionStore[key];\n }\n}\n\nfunction getElementPosition(el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n };\n}\n\nfunction isValidPosition(obj) {\n return isNumber(obj.x) || isNumber(obj.y);\n}\n\nfunction normalizePosition(obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n };\n}\n\nfunction normalizeOffset(obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n };\n}\n\nfunction isNumber(v) {\n return typeof v === 'number';\n}\n\nvar hashStartsWithNumberRE = /^#\\d/;\n\nfunction scrollToPosition(shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n\n if (isObject && typeof shouldScroll.selector === 'string') {\n // getElementById would still fail if the selector contains a more complicated query like #main[data-attr]\n // but at the same time, it doesn't make much sense to select an element with an id and an extra selector\n var el = hashStartsWithNumberRE.test(shouldScroll.selector) // $flow-disable-line\n ? document.getElementById(shouldScroll.selector.slice(1)) // $flow-disable-line\n : document.querySelector(shouldScroll.selector);\n\n if (el) {\n var offset = shouldScroll.offset && typeof shouldScroll.offset === 'object' ? shouldScroll.offset : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n // $flow-disable-line\n if ('scrollBehavior' in document.documentElement.style) {\n window.scrollTo({\n left: position.x,\n top: position.y,\n // $flow-disable-line\n behavior: shouldScroll.behavior\n });\n } else {\n window.scrollTo(position.x, position.y);\n }\n }\n}\n/* */\n\n\nvar supportsPushState = inBrowser && function () {\n var ua = window.navigator.userAgent;\n\n if ((ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) && ua.indexOf('Mobile Safari') !== -1 && ua.indexOf('Chrome') === -1 && ua.indexOf('Windows Phone') === -1) {\n return false;\n }\n\n return window.history && typeof window.history.pushState === 'function';\n}();\n\nfunction pushState(url, replace) {\n saveScrollPosition(); // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n\n var history = window.history;\n\n try {\n if (replace) {\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, history.state);\n stateCopy.key = getStateKey();\n history.replaceState(stateCopy, '', url);\n } else {\n history.pushState({\n key: setStateKey(genStateKey())\n }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState(url) {\n pushState(url, true);\n}\n/* */\n\n\nfunction runQueue(queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n\n step(0);\n} // When changing thing, also edit router.d.ts\n\n\nvar NavigationFailureType = {\n redirected: 2,\n aborted: 4,\n cancelled: 8,\n duplicated: 16\n};\n\nfunction createNavigationRedirectedError(from, to) {\n return createRouterError(from, to, NavigationFailureType.redirected, \"Redirected when going from \\\"\" + from.fullPath + \"\\\" to \\\"\" + stringifyRoute(to) + \"\\\" via a navigation guard.\");\n}\n\nfunction createNavigationDuplicatedError(from, to) {\n var error = createRouterError(from, to, NavigationFailureType.duplicated, \"Avoided redundant navigation to current location: \\\"\" + from.fullPath + \"\\\".\"); // backwards compatible with the first introduction of Errors\n\n error.name = 'NavigationDuplicated';\n return error;\n}\n\nfunction createNavigationCancelledError(from, to) {\n return createRouterError(from, to, NavigationFailureType.cancelled, \"Navigation cancelled from \\\"\" + from.fullPath + \"\\\" to \\\"\" + to.fullPath + \"\\\" with a new navigation.\");\n}\n\nfunction createNavigationAbortedError(from, to) {\n return createRouterError(from, to, NavigationFailureType.aborted, \"Navigation aborted from \\\"\" + from.fullPath + \"\\\" to \\\"\" + to.fullPath + \"\\\" via a navigation guard.\");\n}\n\nfunction createRouterError(from, to, type, message) {\n var error = new Error(message);\n error._isRouter = true;\n error.from = from;\n error.to = to;\n error.type = type;\n return error;\n}\n\nvar propertiesToLog = ['params', 'query', 'hash'];\n\nfunction stringifyRoute(to) {\n if (typeof to === 'string') {\n return to;\n }\n\n if ('path' in to) {\n return to.path;\n }\n\n var location = {};\n propertiesToLog.forEach(function (key) {\n if (key in to) {\n location[key] = to[key];\n }\n });\n return JSON.stringify(location, null, 2);\n}\n\nfunction isError(err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1;\n}\n\nfunction isNavigationFailure(err, errorType) {\n return isError(err) && err._isRouter && (errorType == null || err.type === errorType);\n}\n/* */\n\n\nfunction resolveAsyncComponents(matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n } // save resolved on async factory in case it's used elsewhere\n\n\n def.resolved = typeof resolvedDef === 'function' ? resolvedDef : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n\n if (pending <= 0) {\n next();\n }\n });\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n true && warn(false, msg);\n\n if (!error) {\n error = isError(reason) ? reason : new Error(msg);\n next(error);\n }\n });\n var res;\n\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) {\n next();\n }\n };\n}\n\nfunction flatMapComponents(matched, fn) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return fn(m.components[key], m.instances[key], m, key);\n });\n }));\n}\n\nfunction flatten(arr) {\n return Array.prototype.concat.apply([], arr);\n}\n\nvar hasSymbol = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule(obj) {\n return obj.__esModule || hasSymbol && obj[Symbol.toStringTag] === 'Module';\n} // in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\n\n\nfunction once(fn) {\n var called = false;\n return function () {\n var args = [],\n len = arguments.length;\n\n while (len--) args[len] = arguments[len];\n\n if (called) {\n return;\n }\n\n called = true;\n return fn.apply(this, args);\n };\n}\n/* */\n\n\nvar History = function History(router, base) {\n this.router = router;\n this.base = normalizeBase(base); // start with a route object that stands for \"nowhere\"\n\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n this.listeners = [];\n};\n\nHistory.prototype.listen = function listen(cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady(cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError(errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo(location, onComplete, onAbort) {\n var this$1 = this;\n var route; // catch redirect option https://github.com/vuejs/vue-router/issues/3201\n\n try {\n route = this.router.match(location, this.current);\n } catch (e) {\n this.errorCbs.forEach(function (cb) {\n cb(e);\n }); // Exception should still be thrown\n\n throw e;\n }\n\n var prev = this.current;\n this.confirmTransition(route, function () {\n this$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1.ensureURL();\n this$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n }); // fire ready cbs once\n\n if (!this$1.ready) {\n this$1.ready = true;\n this$1.readyCbs.forEach(function (cb) {\n cb(route);\n });\n }\n }, function (err) {\n if (onAbort) {\n onAbort(err);\n }\n\n if (err && !this$1.ready) {\n // Initial redirection should not mark the history as ready yet\n // because it's triggered by the redirection instead\n // https://github.com/vuejs/vue-router/issues/3225\n // https://github.com/vuejs/vue-router/issues/3331\n if (!isNavigationFailure(err, NavigationFailureType.redirected) || prev !== START) {\n this$1.ready = true;\n this$1.readyErrorCbs.forEach(function (cb) {\n cb(err);\n });\n }\n }\n });\n};\n\nHistory.prototype.confirmTransition = function confirmTransition(route, onComplete, onAbort) {\n var this$1 = this;\n var current = this.current;\n this.pending = route;\n\n var abort = function (err) {\n // changed after adding errors with\n // https://github.com/vuejs/vue-router/pull/3047 before that change,\n // redirect and aborted navigation would produce an err == null\n if (!isNavigationFailure(err) && isError(err)) {\n if (this$1.errorCbs.length) {\n this$1.errorCbs.forEach(function (cb) {\n cb(err);\n });\n } else {\n warn(false, 'uncaught error during route navigation:');\n console.error(err);\n }\n }\n\n onAbort && onAbort(err);\n };\n\n var lastRouteIndex = route.matched.length - 1;\n var lastCurrentIndex = current.matched.length - 1;\n\n if (isSameRoute(route, current) && // in the case the route map has been dynamically appended to\n lastRouteIndex === lastCurrentIndex && route.matched[lastRouteIndex] === current.matched[lastCurrentIndex]) {\n this.ensureURL();\n return abort(createNavigationDuplicatedError(current, route));\n }\n\n var ref = resolveQueue(this.current.matched, route.matched);\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n var queue = [].concat( // in-component leave guards\n extractLeaveGuards(deactivated), // global before hooks\n this.router.beforeHooks, // in-component update hooks\n extractUpdateHooks(updated), // in-config enter guards\n activated.map(function (m) {\n return m.beforeEnter;\n }), // async components\n resolveAsyncComponents(activated));\n\n var iterator = function (hook, next) {\n if (this$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route));\n }\n\n try {\n hook(route, current, function (to) {\n if (to === false) {\n // next(false) -> abort navigation, ensure current URL\n this$1.ensureURL(true);\n abort(createNavigationAbortedError(current, route));\n } else if (isError(to)) {\n this$1.ensureURL(true);\n abort(to);\n } else if (typeof to === 'string' || typeof to === 'object' && (typeof to.path === 'string' || typeof to.name === 'string')) {\n // next('/') or next({ path: '/' }) -> redirect\n abort(createNavigationRedirectedError(current, route));\n\n if (typeof to === 'object' && to.replace) {\n this$1.replace(to);\n } else {\n this$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated);\n var queue = enterGuards.concat(this$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route));\n }\n\n this$1.pending = null;\n onComplete(route);\n\n if (this$1.router.app) {\n this$1.router.app.$nextTick(function () {\n handleRouteEntered(route);\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute(route) {\n this.current = route;\n this.cb && this.cb(route);\n};\n\nHistory.prototype.setupListeners = function setupListeners() {// Default implementation is empty\n};\n\nHistory.prototype.teardown = function teardown() {\n // clean up event listeners\n // https://github.com/vuejs/vue-router/issues/2341\n this.listeners.forEach(function (cleanupListener) {\n cleanupListener();\n });\n this.listeners = []; // reset current history route\n // https://github.com/vuejs/vue-router/issues/3294\n\n this.current = START;\n this.pending = null;\n};\n\nfunction normalizeBase(base) {\n if (!base) {\n if (inBrowser) {\n // respect tag\n var baseEl = document.querySelector('base');\n base = baseEl && baseEl.getAttribute('href') || '/'; // strip full URL origin\n\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n } // make sure there's the starting slash\n\n\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n } // remove trailing slash\n\n\n return base.replace(/\\/$/, '');\n}\n\nfunction resolveQueue(current, next) {\n var i;\n var max = Math.max(current.length, next.length);\n\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break;\n }\n }\n\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n };\n}\n\nfunction extractGuards(records, name, bind, reverse) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n\n if (guard) {\n return Array.isArray(guard) ? guard.map(function (guard) {\n return bind(guard, instance, match, key);\n }) : bind(guard, instance, match, key);\n }\n });\n return flatten(reverse ? guards.reverse() : guards);\n}\n\nfunction extractGuard(def, key) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n\n return def.options[key];\n}\n\nfunction extractLeaveGuards(deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true);\n}\n\nfunction extractUpdateHooks(updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard);\n}\n\nfunction bindGuard(guard, instance) {\n if (instance) {\n return function boundRouteGuard() {\n return guard.apply(instance, arguments);\n };\n }\n}\n\nfunction extractEnterGuards(activated) {\n return extractGuards(activated, 'beforeRouteEnter', function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key);\n });\n}\n\nfunction bindEnterGuard(guard, match, key) {\n return function routeEnterGuard(to, from, next) {\n return guard(to, from, function (cb) {\n if (typeof cb === 'function') {\n if (!match.enteredCbs[key]) {\n match.enteredCbs[key] = [];\n }\n\n match.enteredCbs[key].push(cb);\n }\n\n next(cb);\n });\n };\n}\n/* */\n\n\nvar HTML5History = /*@__PURE__*/function (History) {\n function HTML5History(router, base) {\n History.call(this, router, base);\n this._startLocation = getLocation(this.base);\n }\n\n if (History) HTML5History.__proto__ = History;\n HTML5History.prototype = Object.create(History && History.prototype);\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.setupListeners = function setupListeners() {\n var this$1 = this;\n\n if (this.listeners.length > 0) {\n return;\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1.current; // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n\n var location = getLocation(this$1.base);\n\n if (this$1.current === START && location === this$1._startLocation) {\n return;\n }\n\n this$1.transitionTo(location, function (route) {\n if (supportsScroll) {\n handleScroll(router, route, current, true);\n }\n });\n };\n\n window.addEventListener('popstate', handleRoutingEvent);\n this.listeners.push(function () {\n window.removeEventListener('popstate', handleRoutingEvent);\n });\n };\n\n HTML5History.prototype.go = function go(n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push(location, onComplete, onAbort) {\n var this$1 = this;\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace(location, onComplete, onAbort) {\n var this$1 = this;\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL(push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation() {\n return getLocation(this.base);\n };\n\n return HTML5History;\n}(History);\n\nfunction getLocation(base) {\n var path = window.location.pathname;\n\n if (base && path.toLowerCase().indexOf(base.toLowerCase()) === 0) {\n path = path.slice(base.length);\n }\n\n return (path || '/') + window.location.search + window.location.hash;\n}\n/* */\n\n\nvar HashHistory = /*@__PURE__*/function (History) {\n function HashHistory(router, base, fallback) {\n History.call(this, router, base); // check history fallback deeplinking\n\n if (fallback && checkFallback(this.base)) {\n return;\n }\n\n ensureSlash();\n }\n\n if (History) HashHistory.__proto__ = History;\n HashHistory.prototype = Object.create(History && History.prototype);\n HashHistory.prototype.constructor = HashHistory; // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n\n HashHistory.prototype.setupListeners = function setupListeners() {\n var this$1 = this;\n\n if (this.listeners.length > 0) {\n return;\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1.current;\n\n if (!ensureSlash()) {\n return;\n }\n\n this$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1.router, route, current, true);\n }\n\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n };\n\n var eventType = supportsPushState ? 'popstate' : 'hashchange';\n window.addEventListener(eventType, handleRoutingEvent);\n this.listeners.push(function () {\n window.removeEventListener(eventType, handleRoutingEvent);\n });\n };\n\n HashHistory.prototype.push = function push(location, onComplete, onAbort) {\n var this$1 = this;\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HashHistory.prototype.replace = function replace(location, onComplete, onAbort) {\n var this$1 = this;\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HashHistory.prototype.go = function go(n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL(push) {\n var current = this.current.fullPath;\n\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation() {\n return getHash();\n };\n\n return HashHistory;\n}(History);\n\nfunction checkFallback(base) {\n var location = getLocation(base);\n\n if (!/^\\/#/.test(location)) {\n window.location.replace(cleanPath(base + '/#' + location));\n return true;\n }\n}\n\nfunction ensureSlash() {\n var path = getHash();\n\n if (path.charAt(0) === '/') {\n return true;\n }\n\n replaceHash('/' + path);\n return false;\n}\n\nfunction getHash() {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#'); // empty path\n\n if (index < 0) {\n return '';\n }\n\n href = href.slice(index + 1);\n return href;\n}\n\nfunction getUrl(path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return base + \"#\" + path;\n}\n\nfunction pushHash(path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash(path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n/* */\n\n\nvar AbstractHistory = /*@__PURE__*/function (History) {\n function AbstractHistory(router, base) {\n History.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if (History) AbstractHistory.__proto__ = History;\n AbstractHistory.prototype = Object.create(History && History.prototype);\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push(location, onComplete, onAbort) {\n var this$1 = this;\n this.transitionTo(location, function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index + 1).concat(route);\n this$1.index++;\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n AbstractHistory.prototype.replace = function replace(location, onComplete, onAbort) {\n var this$1 = this;\n this.transitionTo(location, function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index).concat(route);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n AbstractHistory.prototype.go = function go(n) {\n var this$1 = this;\n var targetIndex = this.index + n;\n\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return;\n }\n\n var route = this.stack[targetIndex];\n this.confirmTransition(route, function () {\n var prev = this$1.current;\n this$1.index = targetIndex;\n this$1.updateRoute(route);\n this$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n }, function (err) {\n if (isNavigationFailure(err, NavigationFailureType.duplicated)) {\n this$1.index = targetIndex;\n }\n });\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation() {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/';\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL() {// noop\n };\n\n return AbstractHistory;\n}(History);\n/* */\n\n\nvar VueRouter = function VueRouter(options) {\n if (options === void 0) options = {};\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n var mode = options.mode || 'hash';\n this.fallback = mode === 'history' && !supportsPushState && options.fallback !== false;\n\n if (this.fallback) {\n mode = 'hash';\n }\n\n if (!inBrowser) {\n mode = 'abstract';\n }\n\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break;\n\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break;\n\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break;\n\n default:\n if (true) {\n assert(false, \"invalid mode: \" + mode);\n }\n\n }\n};\n\nvar prototypeAccessors = {\n currentRoute: {\n configurable: true\n }\n};\n\nVueRouter.prototype.match = function match(raw, current, redirectedFrom) {\n return this.matcher.match(raw, current, redirectedFrom);\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current;\n};\n\nVueRouter.prototype.init = function init(app\n/* Vue component instance */\n) {\n var this$1 = this;\n true && assert(install.installed, \"not installed. Make sure to call `Vue.use(VueRouter)` \" + \"before creating root instance.\");\n this.apps.push(app); // set up app destroyed handler\n // https://github.com/vuejs/vue-router/issues/2639\n\n app.$once('hook:destroyed', function () {\n // clean out app from this.apps array once destroyed\n var index = this$1.apps.indexOf(app);\n\n if (index > -1) {\n this$1.apps.splice(index, 1);\n } // ensure we still have a main app or null if no apps\n // we do not release the router so it can be reused\n\n\n if (this$1.app === app) {\n this$1.app = this$1.apps[0] || null;\n }\n\n if (!this$1.app) {\n this$1.history.teardown();\n }\n }); // main app previously initialized\n // return as we don't need to set up new history listener\n\n if (this.app) {\n return;\n }\n\n this.app = app;\n var history = this.history;\n\n if (history instanceof HTML5History || history instanceof HashHistory) {\n var handleInitialScroll = function (routeOrError) {\n var from = history.current;\n var expectScroll = this$1.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll && 'fullPath' in routeOrError) {\n handleScroll(this$1, routeOrError, from, false);\n }\n };\n\n var setupListeners = function (routeOrError) {\n history.setupListeners();\n handleInitialScroll(routeOrError);\n };\n\n history.transitionTo(history.getCurrentLocation(), setupListeners, setupListeners);\n }\n\n history.listen(function (route) {\n this$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach(fn) {\n return registerHook(this.beforeHooks, fn);\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve(fn) {\n return registerHook(this.resolveHooks, fn);\n};\n\nVueRouter.prototype.afterEach = function afterEach(fn) {\n return registerHook(this.afterHooks, fn);\n};\n\nVueRouter.prototype.onReady = function onReady(cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError(errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push(location, onComplete, onAbort) {\n var this$1 = this; // $flow-disable-line\n\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1.history.push(location, resolve, reject);\n });\n } else {\n this.history.push(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.replace = function replace(location, onComplete, onAbort) {\n var this$1 = this; // $flow-disable-line\n\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1.history.replace(location, resolve, reject);\n });\n } else {\n this.history.replace(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.go = function go(n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back() {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward() {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents(to) {\n var route = to ? to.matched ? to : this.resolve(to).route : this.currentRoute;\n\n if (!route) {\n return [];\n }\n\n return [].concat.apply([], route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key];\n });\n }));\n};\n\nVueRouter.prototype.resolve = function resolve(to, current, append) {\n current = current || this.history.current;\n var location = normalizeLocation(to, current, append, this);\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n };\n};\n\nVueRouter.prototype.addRoutes = function addRoutes(routes) {\n this.matcher.addRoutes(routes);\n\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties(VueRouter.prototype, prototypeAccessors);\n\nfunction registerHook(list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n\n if (i > -1) {\n list.splice(i, 1);\n }\n };\n}\n\nfunction createHref(base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path;\n}\n\nVueRouter.install = install;\nVueRouter.version = '3.4.9';\nVueRouter.isNavigationFailure = isNavigationFailure;\nVueRouter.NavigationFailureType = NavigationFailureType;\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VueRouter);\n\n//# sourceURL=webpack://materio.com/./node_modules/vue-router/dist/vue-router.esm.js?"); /***/ }), /***/ "./node_modules/vue-simple-accordion/dist/vue-simple-accordion.common.js": /*!*******************************************************************************!*\ !*** ./node_modules/vue-simple-accordion/dist/vue-simple-accordion.common.js ***! \*******************************************************************************/ /*! unknown exports (runtime-defined) */ /*! runtime requirements: module */ /***/ ((module) => { eval("module.exports =\n/******/\nfunction (modules) {\n // webpackBootstrap\n\n /******/\n // The module cache\n\n /******/\n var installedModules = {};\n /******/\n\n /******/\n // The require function\n\n /******/\n\n function __nested_webpack_require_208__(moduleId) {\n /******/\n\n /******/\n // Check if module is in cache\n\n /******/\n if (installedModules[moduleId]) {\n /******/\n return installedModules[moduleId].exports;\n /******/\n }\n /******/\n // Create a new module (and put it into the cache)\n\n /******/\n\n\n var module = installedModules[moduleId] = {\n /******/\n i: moduleId,\n\n /******/\n l: false,\n\n /******/\n exports: {}\n /******/\n\n };\n /******/\n\n /******/\n // Execute the module function\n\n /******/\n\n modules[moduleId].call(module.exports, module, module.exports, __nested_webpack_require_208__);\n /******/\n\n /******/\n // Flag the module as loaded\n\n /******/\n\n module.l = true;\n /******/\n\n /******/\n // Return the exports of the module\n\n /******/\n\n return module.exports;\n /******/\n }\n /******/\n\n /******/\n\n /******/\n // expose the modules object (__webpack_modules__)\n\n /******/\n\n\n __nested_webpack_require_208__.m = modules;\n /******/\n\n /******/\n // expose the module cache\n\n /******/\n\n __nested_webpack_require_208__.c = installedModules;\n /******/\n\n /******/\n // define getter function for harmony exports\n\n /******/\n\n __nested_webpack_require_208__.d = function (exports, name, getter) {\n /******/\n if (!__nested_webpack_require_208__.o(exports, name)) {\n /******/\n Object.defineProperty(exports, name, {\n enumerable: true,\n get: getter\n });\n /******/\n }\n /******/\n\n };\n /******/\n\n /******/\n // define __esModule on exports\n\n /******/\n\n\n __nested_webpack_require_208__.r = function (exports) {\n /******/\n if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n /******/\n Object.defineProperty(exports, Symbol.toStringTag, {\n value: 'Module'\n });\n /******/\n }\n /******/\n\n\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n /******/\n };\n /******/\n\n /******/\n // create a fake namespace object\n\n /******/\n // mode & 1: value is a module id, require it\n\n /******/\n // mode & 2: merge all properties of value into the ns\n\n /******/\n // mode & 4: return value when already ns object\n\n /******/\n // mode & 8|1: behave like require\n\n /******/\n\n\n __nested_webpack_require_208__.t = function (value, mode) {\n /******/\n if (mode & 1) value = __nested_webpack_require_208__(value);\n /******/\n\n if (mode & 8) return value;\n /******/\n\n if (mode & 4 && typeof value === 'object' && value && value.__esModule) return value;\n /******/\n\n var ns = Object.create(null);\n /******/\n\n __nested_webpack_require_208__.r(ns);\n /******/\n\n\n Object.defineProperty(ns, 'default', {\n enumerable: true,\n value: value\n });\n /******/\n\n if (mode & 2 && typeof value != 'string') for (var key in value) __nested_webpack_require_208__.d(ns, key, function (key) {\n return value[key];\n }.bind(null, key));\n /******/\n\n return ns;\n /******/\n };\n /******/\n\n /******/\n // getDefaultExport function for compatibility with non-harmony modules\n\n /******/\n\n\n __nested_webpack_require_208__.n = function (module) {\n /******/\n var getter = module && module.__esModule ?\n /******/\n function getDefault() {\n return module['default'];\n } :\n /******/\n function getModuleExports() {\n return module;\n };\n /******/\n\n __nested_webpack_require_208__.d(getter, 'a', getter);\n /******/\n\n\n return getter;\n /******/\n };\n /******/\n\n /******/\n // Object.prototype.hasOwnProperty.call\n\n /******/\n\n\n __nested_webpack_require_208__.o = function (object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n };\n /******/\n\n /******/\n // __webpack_public_path__\n\n /******/\n\n\n __nested_webpack_require_208__.p = \"\";\n /******/\n\n /******/\n\n /******/\n // Load entry module and return exports\n\n /******/\n\n return __nested_webpack_require_208__(__nested_webpack_require_208__.s = \"fb15\");\n /******/\n}(\n/************************************************************************/\n\n/******/\n{\n /***/\n \"00ee\":\n /***/\n function (module, exports, __nested_webpack_require_4242__) {\n var wellKnownSymbol = __nested_webpack_require_4242__(\"b622\");\n\n var TO_STRING_TAG = wellKnownSymbol('toStringTag');\n var test = {};\n test[TO_STRING_TAG] = 'z';\n module.exports = String(test) === '[object z]';\n /***/\n },\n\n /***/\n \"0366\":\n /***/\n function (module, exports, __nested_webpack_require_4550__) {\n var aFunction = __nested_webpack_require_4550__(\"1c0b\"); // optional / simple context binding\n\n\n module.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n\n switch (length) {\n case 0:\n return function () {\n return fn.call(that);\n };\n\n case 1:\n return function (a) {\n return fn.call(that, a);\n };\n\n case 2:\n return function (a, b) {\n return fn.call(that, a, b);\n };\n\n case 3:\n return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n\n return function ()\n /* ...args */\n {\n return fn.apply(that, arguments);\n };\n };\n /***/\n\n },\n\n /***/\n \"057f\":\n /***/\n function (module, exports, __nested_webpack_require_5400__) {\n var toIndexedObject = __nested_webpack_require_5400__(\"fc6a\");\n\n var nativeGetOwnPropertyNames = __nested_webpack_require_5400__(\"241c\").f;\n\n var toString = {}.toString;\n var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [];\n\n var getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n }; // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\n\n\n module.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : nativeGetOwnPropertyNames(toIndexedObject(it));\n };\n /***/\n\n },\n\n /***/\n \"06cf\":\n /***/\n function (module, exports, __nested_webpack_require_6239__) {\n var DESCRIPTORS = __nested_webpack_require_6239__(\"83ab\");\n\n var propertyIsEnumerableModule = __nested_webpack_require_6239__(\"d1e7\");\n\n var createPropertyDescriptor = __nested_webpack_require_6239__(\"5c6c\");\n\n var toIndexedObject = __nested_webpack_require_6239__(\"fc6a\");\n\n var toPrimitive = __nested_webpack_require_6239__(\"c04e\");\n\n var has = __nested_webpack_require_6239__(\"5135\");\n\n var IE8_DOM_DEFINE = __nested_webpack_require_6239__(\"0cfb\");\n\n var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\n\n exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) {\n /* empty */\n }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n };\n /***/\n },\n\n /***/\n \"0cfb\":\n /***/\n function (module, exports, __nested_webpack_require_7331__) {\n var DESCRIPTORS = __nested_webpack_require_7331__(\"83ab\");\n\n var fails = __nested_webpack_require_7331__(\"d039\");\n\n var createElement = __nested_webpack_require_7331__(\"cc12\"); // Thank's IE8 for his funny defineProperty\n\n\n module.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () {\n return 7;\n }\n }).a != 7;\n });\n /***/\n },\n\n /***/\n \"0d03\":\n /***/\n function (module, exports, __nested_webpack_require_7826__) {\n var redefine = __nested_webpack_require_7826__(\"6eeb\");\n\n var DatePrototype = Date.prototype;\n var INVALID_DATE = 'Invalid Date';\n var TO_STRING = 'toString';\n var nativeDateToString = DatePrototype[TO_STRING];\n var getTime = DatePrototype.getTime; // `Date.prototype.toString` method\n // https://tc39.github.io/ecma262/#sec-date.prototype.tostring\n\n if (new Date(NaN) + '' != INVALID_DATE) {\n redefine(DatePrototype, TO_STRING, function toString() {\n var value = getTime.call(this); // eslint-disable-next-line no-self-compare\n\n return value === value ? nativeDateToString.call(this) : INVALID_DATE;\n });\n }\n /***/\n\n },\n\n /***/\n \"0df6\":\n /***/\n function (module, exports, __nested_webpack_require_8570__) {// extracted by mini-css-extract-plugin\n\n /***/\n },\n\n /***/\n \"159b\":\n /***/\n function (module, exports, __nested_webpack_require_8704__) {\n var global = __nested_webpack_require_8704__(\"da84\");\n\n var DOMIterables = __nested_webpack_require_8704__(\"fdbc\");\n\n var forEach = __nested_webpack_require_8704__(\"17c2\");\n\n var createNonEnumerableProperty = __nested_webpack_require_8704__(\"9112\");\n\n for (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype; // some Chrome versions have non-configurable methods on DOMTokenList\n\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n }\n /***/\n\n },\n\n /***/\n \"17c2\":\n /***/\n function (module, exports, __nested_webpack_require_9493__) {\n \"use strict\";\n\n var $forEach = __nested_webpack_require_9493__(\"b727\").forEach;\n\n var arrayMethodIsStrict = __nested_webpack_require_9493__(\"a640\");\n\n var arrayMethodUsesToLength = __nested_webpack_require_9493__(\"ae40\");\n\n var STRICT_METHOD = arrayMethodIsStrict('forEach');\n var USES_TO_LENGTH = arrayMethodUsesToLength('forEach'); // `Array.prototype.forEach` method implementation\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n\n module.exports = !STRICT_METHOD || !USES_TO_LENGTH ? function forEach(callbackfn\n /* , thisArg */\n ) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n } : [].forEach;\n /***/\n },\n\n /***/\n \"1be4\":\n /***/\n function (module, exports, __nested_webpack_require_10246__) {\n var getBuiltIn = __nested_webpack_require_10246__(\"d066\");\n\n module.exports = getBuiltIn('document', 'documentElement');\n /***/\n },\n\n /***/\n \"1c0b\":\n /***/\n function (module, exports) {\n module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n }\n\n return it;\n };\n /***/\n\n },\n\n /***/\n \"1c6c\":\n /***/\n function (module, exports, __nested_webpack_require_10696__) {// extracted by mini-css-extract-plugin\n\n /***/\n },\n\n /***/\n \"1c7e\":\n /***/\n function (module, exports, __nested_webpack_require_10830__) {\n var wellKnownSymbol = __nested_webpack_require_10830__(\"b622\");\n\n var ITERATOR = wellKnownSymbol('iterator');\n var SAFE_CLOSING = false;\n\n try {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return {\n done: !!called++\n };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n }; // eslint-disable-next-line no-throw-literal\n\n\n Array.from(iteratorWithReturn, function () {\n throw 2;\n });\n } catch (error) {\n /* empty */\n }\n\n module.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n\n try {\n var object = {};\n\n object[ITERATOR] = function () {\n return {\n next: function () {\n return {\n done: ITERATION_SUPPORT = true\n };\n }\n };\n };\n\n exec(object);\n } catch (error) {\n /* empty */\n }\n\n return ITERATION_SUPPORT;\n };\n /***/\n\n },\n\n /***/\n \"1d1c\":\n /***/\n function (module, exports, __nested_webpack_require_12078__) {\n var $ = __nested_webpack_require_12078__(\"23e7\");\n\n var DESCRIPTORS = __nested_webpack_require_12078__(\"83ab\");\n\n var defineProperties = __nested_webpack_require_12078__(\"37e8\"); // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n\n\n $({\n target: 'Object',\n stat: true,\n forced: !DESCRIPTORS,\n sham: !DESCRIPTORS\n }, {\n defineProperties: defineProperties\n });\n /***/\n },\n\n /***/\n \"1d80\":\n /***/\n function (module, exports) {\n // `RequireObjectCoercible` abstract operation\n // https://tc39.github.io/ecma262/#sec-requireobjectcoercible\n module.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n };\n /***/\n\n },\n\n /***/\n \"1dde\":\n /***/\n function (module, exports, __nested_webpack_require_12914__) {\n var fails = __nested_webpack_require_12914__(\"d039\");\n\n var wellKnownSymbol = __nested_webpack_require_12914__(\"b622\");\n\n var V8_VERSION = __nested_webpack_require_12914__(\"2d00\");\n\n var SPECIES = wellKnownSymbol('species');\n\n module.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n\n constructor[SPECIES] = function () {\n return {\n foo: 1\n };\n };\n\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n };\n /***/\n\n },\n\n /***/\n \"23cb\":\n /***/\n function (module, exports, __nested_webpack_require_13746__) {\n var toInteger = __nested_webpack_require_13746__(\"a691\");\n\n var max = Math.max;\n var min = Math.min; // Helper for a popular repeating case of the spec:\n // Let integer be ? ToInteger(index).\n // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\n\n module.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n };\n /***/\n\n },\n\n /***/\n \"23e7\":\n /***/\n function (module, exports, __nested_webpack_require_14309__) {\n var global = __nested_webpack_require_14309__(\"da84\");\n\n var getOwnPropertyDescriptor = __nested_webpack_require_14309__(\"06cf\").f;\n\n var createNonEnumerableProperty = __nested_webpack_require_14309__(\"9112\");\n\n var redefine = __nested_webpack_require_14309__(\"6eeb\");\n\n var setGlobal = __nested_webpack_require_14309__(\"ce4e\");\n\n var copyConstructorProperties = __nested_webpack_require_14309__(\"e893\");\n\n var isForced = __nested_webpack_require_14309__(\"94ca\");\n /*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n */\n\n\n module.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n\n if (target) for (key in source) {\n sourceProperty = source[key];\n\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); // contained in target\n\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n } // add a flag to not completely full polyfills\n\n\n if (options.sham || targetProperty && targetProperty.sham) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n } // extend global\n\n\n redefine(target, key, sourceProperty, options);\n }\n };\n /***/\n\n },\n\n /***/\n \"241c\":\n /***/\n function (module, exports, __nested_webpack_require_17022__) {\n var internalObjectKeys = __nested_webpack_require_17022__(\"ca84\");\n\n var enumBugKeys = __nested_webpack_require_17022__(\"7839\");\n\n var hiddenKeys = enumBugKeys.concat('length', 'prototype'); // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n\n exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n };\n /***/\n\n },\n\n /***/\n \"25f0\":\n /***/\n function (module, exports, __nested_webpack_require_17537__) {\n \"use strict\";\n\n var redefine = __nested_webpack_require_17537__(\"6eeb\");\n\n var anObject = __nested_webpack_require_17537__(\"825a\");\n\n var fails = __nested_webpack_require_17537__(\"d039\");\n\n var flags = __nested_webpack_require_17537__(\"ad6d\");\n\n var TO_STRING = 'toString';\n var RegExpPrototype = RegExp.prototype;\n var nativeToString = RegExpPrototype[TO_STRING];\n var NOT_GENERIC = fails(function () {\n return nativeToString.call({\n source: 'a',\n flags: 'b'\n }) != '/a/b';\n }); // FF44- RegExp#toString has a wrong name\n\n var INCORRECT_NAME = nativeToString.name != TO_STRING; // `RegExp.prototype.toString` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\n\n if (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, {\n unsafe: true\n });\n }\n /***/\n\n },\n\n /***/\n \"277d\":\n /***/\n function (module, exports, __nested_webpack_require_18725__) {\n var $ = __nested_webpack_require_18725__(\"23e7\");\n\n var isArray = __nested_webpack_require_18725__(\"e8b5\"); // `Array.isArray` method\n // https://tc39.github.io/ecma262/#sec-array.isarray\n\n\n $({\n target: 'Array',\n stat: true\n }, {\n isArray: isArray\n });\n /***/\n },\n\n /***/\n \"2d00\":\n /***/\n function (module, exports, __nested_webpack_require_19081__) {\n var global = __nested_webpack_require_19081__(\"da84\");\n\n var userAgent = __nested_webpack_require_19081__(\"342f\");\n\n var process = global.process;\n var versions = process && process.versions;\n var v8 = versions && versions.v8;\n var match, version;\n\n if (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n } else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n }\n\n module.exports = version && +version;\n /***/\n },\n\n /***/\n \"342f\":\n /***/\n function (module, exports, __nested_webpack_require_19756__) {\n var getBuiltIn = __nested_webpack_require_19756__(\"d066\");\n\n module.exports = getBuiltIn('navigator', 'userAgent') || '';\n /***/\n },\n\n /***/\n \"35a1\":\n /***/\n function (module, exports, __nested_webpack_require_19966__) {\n var classof = __nested_webpack_require_19966__(\"f5df\");\n\n var Iterators = __nested_webpack_require_19966__(\"3f8c\");\n\n var wellKnownSymbol = __nested_webpack_require_19966__(\"b622\");\n\n var ITERATOR = wellKnownSymbol('iterator');\n\n module.exports = function (it) {\n if (it != undefined) return it[ITERATOR] || it['@@iterator'] || Iterators[classof(it)];\n };\n /***/\n\n },\n\n /***/\n \"37e8\":\n /***/\n function (module, exports, __nested_webpack_require_20402__) {\n var DESCRIPTORS = __nested_webpack_require_20402__(\"83ab\");\n\n var definePropertyModule = __nested_webpack_require_20402__(\"9bf2\");\n\n var anObject = __nested_webpack_require_20402__(\"825a\");\n\n var objectKeys = __nested_webpack_require_20402__(\"df75\"); // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n\n\n module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n\n return O;\n };\n /***/\n },\n\n /***/\n \"3bbe\":\n /***/\n function (module, exports, __nested_webpack_require_21164__) {\n var isObject = __nested_webpack_require_21164__(\"861d\");\n\n module.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n }\n\n return it;\n };\n /***/\n\n },\n\n /***/\n \"3ca3\":\n /***/\n function (module, exports, __nested_webpack_require_21492__) {\n \"use strict\";\n\n var charAt = __nested_webpack_require_21492__(\"6547\").charAt;\n\n var InternalStateModule = __nested_webpack_require_21492__(\"69f3\");\n\n var defineIterator = __nested_webpack_require_21492__(\"7dd0\");\n\n var STRING_ITERATOR = 'String Iterator';\n var setInternalState = InternalStateModule.set;\n var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); // `String.prototype[@@iterator]` method\n // https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\n\n defineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n }); // `%StringIteratorPrototype%.next` method\n // https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n }, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return {\n value: undefined,\n done: true\n };\n point = charAt(string, index);\n state.index += point.length;\n return {\n value: point,\n done: false\n };\n });\n /***/\n },\n\n /***/\n \"3d02\":\n /***/\n function (module, exports, __nested_webpack_require_22751__) {// extracted by mini-css-extract-plugin\n\n /***/\n },\n\n /***/\n \"3f8c\":\n /***/\n function (module, exports) {\n module.exports = {};\n /***/\n },\n\n /***/\n \"4160\":\n /***/\n function (module, exports, __nested_webpack_require_22983__) {\n \"use strict\";\n\n var $ = __nested_webpack_require_22983__(\"23e7\");\n\n var forEach = __nested_webpack_require_22983__(\"17c2\"); // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n\n\n $({\n target: 'Array',\n proto: true,\n forced: [].forEach != forEach\n }, {\n forEach: forEach\n });\n /***/\n },\n\n /***/\n \"428f\":\n /***/\n function (module, exports, __nested_webpack_require_23416__) {\n var global = __nested_webpack_require_23416__(\"da84\");\n\n module.exports = global;\n /***/\n },\n\n /***/\n \"44ad\":\n /***/\n function (module, exports, __nested_webpack_require_23586__) {\n var fails = __nested_webpack_require_23586__(\"d039\");\n\n var classof = __nested_webpack_require_23586__(\"c6b6\");\n\n var split = ''.split; // fallback for non-array-like ES3 and non-enumerable old V8 strings\n\n module.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n }) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n } : Object;\n /***/\n },\n\n /***/\n \"44d2\":\n /***/\n function (module, exports, __nested_webpack_require_24214__) {\n var wellKnownSymbol = __nested_webpack_require_24214__(\"b622\");\n\n var create = __nested_webpack_require_24214__(\"7c73\");\n\n var definePropertyModule = __nested_webpack_require_24214__(\"9bf2\");\n\n var UNSCOPABLES = wellKnownSymbol('unscopables');\n var ArrayPrototype = Array.prototype; // Array.prototype[@@unscopables]\n // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\n\n if (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n } // add a key to Array.prototype[@@unscopables]\n\n\n module.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n };\n /***/\n\n },\n\n /***/\n \"4930\":\n /***/\n function (module, exports, __nested_webpack_require_25002__) {\n var fails = __nested_webpack_require_25002__(\"d039\");\n\n module.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n });\n /***/\n },\n\n /***/\n \"49b2\":\n /***/\n function (module, exports, __nested_webpack_require_25361__) {// extracted by mini-css-extract-plugin\n\n /***/\n },\n\n /***/\n \"4d64\":\n /***/\n function (module, exports, __nested_webpack_require_25495__) {\n var toIndexedObject = __nested_webpack_require_25495__(\"fc6a\");\n\n var toLength = __nested_webpack_require_25495__(\"50c4\");\n\n var toAbsoluteIndex = __nested_webpack_require_25495__(\"23cb\"); // `Array.prototype.{ indexOf, includes }` methods implementation\n\n\n var createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value; // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++]; // eslint-disable-next-line no-self-compare\n\n if (value != value) return true; // Array#indexOf ignores holes, Array#includes - not\n } else for (; length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n }\n return !IS_INCLUDES && -1;\n };\n };\n\n module.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n };\n /***/\n },\n\n /***/\n \"4de4\":\n /***/\n function (module, exports, __nested_webpack_require_26942__) {\n \"use strict\";\n\n var $ = __nested_webpack_require_26942__(\"23e7\");\n\n var $filter = __nested_webpack_require_26942__(\"b727\").filter;\n\n var arrayMethodHasSpeciesSupport = __nested_webpack_require_26942__(\"1dde\");\n\n var arrayMethodUsesToLength = __nested_webpack_require_26942__(\"ae40\");\n\n var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter'); // Edge 14- issue\n\n var USES_TO_LENGTH = arrayMethodUsesToLength('filter'); // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n // with adding support of @@species\n\n $({\n target: 'Array',\n proto: true,\n forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH\n }, {\n filter: function filter(callbackfn\n /* , thisArg */\n ) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n });\n /***/\n },\n\n /***/\n \"4df4\":\n /***/\n function (module, exports, __nested_webpack_require_27869__) {\n \"use strict\";\n\n var bind = __nested_webpack_require_27869__(\"0366\");\n\n var toObject = __nested_webpack_require_27869__(\"7b0b\");\n\n var callWithSafeIterationClosing = __nested_webpack_require_27869__(\"9bdd\");\n\n var isArrayIteratorMethod = __nested_webpack_require_27869__(\"e95a\");\n\n var toLength = __nested_webpack_require_27869__(\"50c4\");\n\n var createProperty = __nested_webpack_require_27869__(\"8418\");\n\n var getIteratorMethod = __nested_webpack_require_27869__(\"35a1\"); // `Array.from` method implementation\n // https://tc39.github.io/ecma262/#sec-array.from\n\n\n module.exports = function from(arrayLike\n /* , mapfn = undefined, thisArg = undefined */\n ) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2); // if the target is not iterable or it's an array with the default iterator - use a simple case\n\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n\n for (; !(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n\n for (; length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n\n result.length = index;\n return result;\n };\n /***/\n\n },\n\n /***/\n \"4e6f\":\n /***/\n function (module, exports, __nested_webpack_require_29872__) {// extracted by mini-css-extract-plugin\n\n /***/\n },\n\n /***/\n \"4fad\":\n /***/\n function (module, exports, __nested_webpack_require_30006__) {\n var $ = __nested_webpack_require_30006__(\"23e7\");\n\n var $entries = __nested_webpack_require_30006__(\"6f53\").entries; // `Object.entries` method\n // https://tc39.github.io/ecma262/#sec-object.entries\n\n\n $({\n target: 'Object',\n stat: true\n }, {\n entries: function entries(O) {\n return $entries(O);\n }\n });\n /***/\n },\n\n /***/\n \"50c4\":\n /***/\n function (module, exports, __nested_webpack_require_30424__) {\n var toInteger = __nested_webpack_require_30424__(\"a691\");\n\n var min = Math.min; // `ToLength` abstract operation\n // https://tc39.github.io/ecma262/#sec-tolength\n\n module.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n };\n /***/\n\n },\n\n /***/\n \"5135\":\n /***/\n function (module, exports) {\n var hasOwnProperty = {}.hasOwnProperty;\n\n module.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n };\n /***/\n\n },\n\n /***/\n \"5692\":\n /***/\n function (module, exports, __nested_webpack_require_31051__) {\n var IS_PURE = __nested_webpack_require_31051__(\"c430\");\n\n var store = __nested_webpack_require_31051__(\"c6cd\");\n\n (module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n })('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n });\n /***/\n },\n\n /***/\n \"56ef\":\n /***/\n function (module, exports, __nested_webpack_require_31520__) {\n var getBuiltIn = __nested_webpack_require_31520__(\"d066\");\n\n var getOwnPropertyNamesModule = __nested_webpack_require_31520__(\"241c\");\n\n var getOwnPropertySymbolsModule = __nested_webpack_require_31520__(\"7418\");\n\n var anObject = __nested_webpack_require_31520__(\"825a\"); // all object keys, includes non-enumerable and symbols\n\n\n module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n };\n /***/\n\n },\n\n /***/\n \"5899\":\n /***/\n function (module, exports) {\n // a string of all valid unicode whitespaces\n // eslint-disable-next-line max-len\n module.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n /***/\n },\n\n /***/\n \"58a8\":\n /***/\n function (module, exports, __nested_webpack_require_32539__) {\n var requireObjectCoercible = __nested_webpack_require_32539__(\"1d80\");\n\n var whitespaces = __nested_webpack_require_32539__(\"5899\");\n\n var whitespace = '[' + whitespaces + ']';\n var ltrim = RegExp('^' + whitespace + whitespace + '*');\n var rtrim = RegExp(whitespace + whitespace + '*$'); // `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\n\n var createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n };\n\n module.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n };\n /***/\n },\n\n /***/\n \"5c6c\":\n /***/\n function (module, exports) {\n module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n };\n /***/\n\n },\n\n /***/\n \"62e4\":\n /***/\n function (module, exports) {\n module.exports = function (module) {\n if (!module.webpackPolyfill) {\n module.deprecate = function () {};\n\n module.paths = []; // module.parent = undefined by default\n\n if (!module.children) module.children = [];\n Object.defineProperty(module, \"loaded\", {\n enumerable: true,\n get: function () {\n return module.l;\n }\n });\n Object.defineProperty(module, \"id\", {\n enumerable: true,\n get: function () {\n return module.i;\n }\n });\n module.webpackPolyfill = 1;\n }\n\n return module;\n };\n /***/\n\n },\n\n /***/\n \"64c0\":\n /***/\n function (module, exports, __nested_webpack_require_34764__) {// extracted by mini-css-extract-plugin\n\n /***/\n },\n\n /***/\n \"6547\":\n /***/\n function (module, exports, __nested_webpack_require_34898__) {\n var toInteger = __nested_webpack_require_34898__(\"a691\");\n\n var requireObjectCoercible = __nested_webpack_require_34898__(\"1d80\"); // `String.prototype.{ codePointAt, at }` methods implementation\n\n\n var createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF ? CONVERT_TO_STRING ? S.charAt(position) : first : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n };\n\n module.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n };\n /***/\n },\n\n /***/\n \"65f0\":\n /***/\n function (module, exports, __nested_webpack_require_36178__) {\n var isObject = __nested_webpack_require_36178__(\"861d\");\n\n var isArray = __nested_webpack_require_36178__(\"e8b5\");\n\n var wellKnownSymbol = __nested_webpack_require_36178__(\"b622\");\n\n var SPECIES = wellKnownSymbol('species'); // `ArraySpeciesCreate` abstract operation\n // https://tc39.github.io/ecma262/#sec-arrayspeciescreate\n\n module.exports = function (originalArray, length) {\n var C;\n\n if (isArray(originalArray)) {\n C = originalArray.constructor; // cross-realm fallback\n\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n }\n\n return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n };\n /***/\n\n },\n\n /***/\n \"69f3\":\n /***/\n function (module, exports, __nested_webpack_require_37031__) {\n var NATIVE_WEAK_MAP = __nested_webpack_require_37031__(\"7f9a\");\n\n var global = __nested_webpack_require_37031__(\"da84\");\n\n var isObject = __nested_webpack_require_37031__(\"861d\");\n\n var createNonEnumerableProperty = __nested_webpack_require_37031__(\"9112\");\n\n var objectHas = __nested_webpack_require_37031__(\"5135\");\n\n var sharedKey = __nested_webpack_require_37031__(\"f772\");\n\n var hiddenKeys = __nested_webpack_require_37031__(\"d012\");\n\n var WeakMap = global.WeakMap;\n var set, get, has;\n\n var enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n };\n\n var getterFor = function (TYPE) {\n return function (it) {\n var state;\n\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n }\n\n return state;\n };\n };\n\n if (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n\n has = function (it) {\n return wmhas.call(store, it);\n };\n } else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n\n has = function (it) {\n return objectHas(it, STATE);\n };\n }\n\n module.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n };\n /***/\n },\n\n /***/\n \"6eeb\":\n /***/\n function (module, exports, __nested_webpack_require_38854__) {\n var global = __nested_webpack_require_38854__(\"da84\");\n\n var createNonEnumerableProperty = __nested_webpack_require_38854__(\"9112\");\n\n var has = __nested_webpack_require_38854__(\"5135\");\n\n var setGlobal = __nested_webpack_require_38854__(\"ce4e\");\n\n var inspectSource = __nested_webpack_require_38854__(\"8925\");\n\n var InternalStateModule = __nested_webpack_require_38854__(\"69f3\");\n\n var getInternalState = InternalStateModule.get;\n var enforceInternalState = InternalStateModule.enforce;\n var TEMPLATE = String(String).split('String');\n (module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n\n if (O === global) {\n if (simple) O[key] = value;else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n\n if (simple) O[key] = value;else createNonEnumerableProperty(O, key, value); // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n })(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n });\n /***/\n },\n\n /***/\n \"6f53\":\n /***/\n function (module, exports, __nested_webpack_require_40514__) {\n var DESCRIPTORS = __nested_webpack_require_40514__(\"83ab\");\n\n var objectKeys = __nested_webpack_require_40514__(\"df75\");\n\n var toIndexedObject = __nested_webpack_require_40514__(\"fc6a\");\n\n var propertyIsEnumerable = __nested_webpack_require_40514__(\"d1e7\").f; // `Object.{ entries, values }` methods implementation\n\n\n var createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n\n while (length > i) {\n key = keys[i++];\n\n if (!DESCRIPTORS || propertyIsEnumerable.call(O, key)) {\n result.push(TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n\n return result;\n };\n };\n\n module.exports = {\n // `Object.entries` method\n // https://tc39.github.io/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.github.io/ecma262/#sec-object.values\n values: createMethod(false)\n };\n /***/\n },\n\n /***/\n \"7156\":\n /***/\n function (module, exports, __nested_webpack_require_41661__) {\n var isObject = __nested_webpack_require_41661__(\"861d\");\n\n var setPrototypeOf = __nested_webpack_require_41661__(\"d2bb\"); // makes subclassing work correct for wrapped built-ins\n\n\n module.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if ( // it can work only with native `setPrototypeOf`\n setPrototypeOf && // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n typeof (NewTarget = dummy.constructor) == 'function' && NewTarget !== Wrapper && isObject(NewTargetPrototype = NewTarget.prototype) && NewTargetPrototype !== Wrapper.prototype) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n };\n /***/\n\n },\n\n /***/\n \"7418\":\n /***/\n function (module, exports) {\n exports.f = Object.getOwnPropertySymbols;\n /***/\n },\n\n /***/\n \"746f\":\n /***/\n function (module, exports, __nested_webpack_require_42553__) {\n var path = __nested_webpack_require_42553__(\"428f\");\n\n var has = __nested_webpack_require_42553__(\"5135\");\n\n var wrappedWellKnownSymbolModule = __nested_webpack_require_42553__(\"e538\");\n\n var defineProperty = __nested_webpack_require_42553__(\"9bf2\").f;\n\n module.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n };\n /***/\n\n },\n\n /***/\n \"7839\":\n /***/\n function (module, exports) {\n // IE8- don't enum bug keys\n module.exports = ['constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf'];\n /***/\n },\n\n /***/\n \"7a82\":\n /***/\n function (module, exports, __nested_webpack_require_43329__) {\n var $ = __nested_webpack_require_43329__(\"23e7\");\n\n var DESCRIPTORS = __nested_webpack_require_43329__(\"83ab\");\n\n var objectDefinePropertyModile = __nested_webpack_require_43329__(\"9bf2\"); // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n\n\n $({\n target: 'Object',\n stat: true,\n forced: !DESCRIPTORS,\n sham: !DESCRIPTORS\n }, {\n defineProperty: objectDefinePropertyModile.f\n });\n /***/\n },\n\n /***/\n \"7b0b\":\n /***/\n function (module, exports, __nested_webpack_require_43855__) {\n var requireObjectCoercible = __nested_webpack_require_43855__(\"1d80\"); // `ToObject` abstract operation\n // https://tc39.github.io/ecma262/#sec-toobject\n\n\n module.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n };\n /***/\n\n },\n\n /***/\n \"7c73\":\n /***/\n function (module, exports, __nested_webpack_require_44204__) {\n var anObject = __nested_webpack_require_44204__(\"825a\");\n\n var defineProperties = __nested_webpack_require_44204__(\"37e8\");\n\n var enumBugKeys = __nested_webpack_require_44204__(\"7839\");\n\n var hiddenKeys = __nested_webpack_require_44204__(\"d012\");\n\n var html = __nested_webpack_require_44204__(\"1be4\");\n\n var documentCreateElement = __nested_webpack_require_44204__(\"cc12\");\n\n var sharedKey = __nested_webpack_require_44204__(\"f772\");\n\n var GT = '>';\n var LT = '<';\n var PROTOTYPE = 'prototype';\n var SCRIPT = 'script';\n var IE_PROTO = sharedKey('IE_PROTO');\n\n var EmptyConstructor = function () {\n /* empty */\n };\n\n var scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n }; // Create object with fake `null` prototype: use ActiveX Object with cleared prototype\n\n\n var NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n\n return temp;\n }; // Create object with fake `null` prototype: use iframe Object with cleared prototype\n\n\n var NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe); // https://github.com/zloirock/core-js/issues/475\n\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n }; // Check for document.domain and active x support\n // No need to use active x approach when document.domain is not set\n // see https://github.com/es-shims/es5-shim/issues/150\n // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n // avoid IE GC bug\n\n\n var activeXDocument;\n\n var NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) {\n /* ignore */\n }\n\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n\n return NullProtoObject();\n };\n\n hiddenKeys[IE_PROTO] = true; // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n\n module.exports = Object.create || function create(O, Properties) {\n var result;\n\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null; // add \"__proto__\" for Object.getPrototypeOf polyfill\n\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n\n return Properties === undefined ? result : defineProperties(result, Properties);\n };\n /***/\n\n },\n\n /***/\n \"7db0\":\n /***/\n function (module, exports, __nested_webpack_require_47400__) {\n \"use strict\";\n\n var $ = __nested_webpack_require_47400__(\"23e7\");\n\n var $find = __nested_webpack_require_47400__(\"b727\").find;\n\n var addToUnscopables = __nested_webpack_require_47400__(\"44d2\");\n\n var arrayMethodUsesToLength = __nested_webpack_require_47400__(\"ae40\");\n\n var FIND = 'find';\n var SKIPS_HOLES = true;\n var USES_TO_LENGTH = arrayMethodUsesToLength(FIND); // Shouldn't skip holes\n\n if (FIND in []) Array(1)[FIND](function () {\n SKIPS_HOLES = false;\n }); // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n\n $({\n target: 'Array',\n proto: true,\n forced: SKIPS_HOLES || !USES_TO_LENGTH\n }, {\n find: function find(callbackfn\n /* , that = undefined */\n ) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n }); // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\n\n addToUnscopables(FIND);\n /***/\n },\n\n /***/\n \"7dd0\":\n /***/\n function (module, exports, __nested_webpack_require_48426__) {\n \"use strict\";\n\n var $ = __nested_webpack_require_48426__(\"23e7\");\n\n var createIteratorConstructor = __nested_webpack_require_48426__(\"9ed3\");\n\n var getPrototypeOf = __nested_webpack_require_48426__(\"e163\");\n\n var setPrototypeOf = __nested_webpack_require_48426__(\"d2bb\");\n\n var setToStringTag = __nested_webpack_require_48426__(\"d44e\");\n\n var createNonEnumerableProperty = __nested_webpack_require_48426__(\"9112\");\n\n var redefine = __nested_webpack_require_48426__(\"6eeb\");\n\n var wellKnownSymbol = __nested_webpack_require_48426__(\"b622\");\n\n var IS_PURE = __nested_webpack_require_48426__(\"c430\");\n\n var Iterators = __nested_webpack_require_48426__(\"3f8c\");\n\n var IteratorsCore = __nested_webpack_require_48426__(\"ae93\");\n\n var IteratorPrototype = IteratorsCore.IteratorPrototype;\n var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\n var ITERATOR = wellKnownSymbol('iterator');\n var KEYS = 'keys';\n var VALUES = 'values';\n var ENTRIES = 'entries';\n\n var returnThis = function () {\n return this;\n };\n\n module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS:\n return function keys() {\n return new IteratorConstructor(this, KIND);\n };\n\n case VALUES:\n return function values() {\n return new IteratorConstructor(this, KIND);\n };\n\n case ENTRIES:\n return function entries() {\n return new IteratorConstructor(this, KIND);\n };\n }\n\n return function () {\n return new IteratorConstructor(this);\n };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR] || IterablePrototype['@@iterator'] || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY; // fix native\n\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n } // Set @@toStringTag to native iterators\n\n\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n } // fix Array#{values, @@iterator}.name in V8 / FF\n\n\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n\n defaultIterator = function values() {\n return nativeIterator.call(this);\n };\n } // define iterator\n\n\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n\n Iterators[NAME] = defaultIterator; // export additional methods\n\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({\n target: NAME,\n proto: true,\n forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME\n }, methods);\n }\n\n return methods;\n };\n /***/\n\n },\n\n /***/\n \"7f9a\":\n /***/\n function (module, exports, __nested_webpack_require_52913__) {\n var global = __nested_webpack_require_52913__(\"da84\");\n\n var inspectSource = __nested_webpack_require_52913__(\"8925\");\n\n var WeakMap = global.WeakMap;\n module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n /***/\n },\n\n /***/\n \"825a\":\n /***/\n function (module, exports, __nested_webpack_require_53240__) {\n var isObject = __nested_webpack_require_53240__(\"861d\");\n\n module.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n }\n\n return it;\n };\n /***/\n\n },\n\n /***/\n \"83ab\":\n /***/\n function (module, exports, __nested_webpack_require_53540__) {\n var fails = __nested_webpack_require_53540__(\"d039\"); // Thank's IE8 for his funny defineProperty\n\n\n module.exports = !fails(function () {\n return Object.defineProperty({}, 1, {\n get: function () {\n return 7;\n }\n })[1] != 7;\n });\n /***/\n },\n\n /***/\n \"8418\":\n /***/\n function (module, exports, __nested_webpack_require_53894__) {\n \"use strict\";\n\n var toPrimitive = __nested_webpack_require_53894__(\"c04e\");\n\n var definePropertyModule = __nested_webpack_require_53894__(\"9bf2\");\n\n var createPropertyDescriptor = __nested_webpack_require_53894__(\"5c6c\");\n\n module.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));else object[propertyKey] = value;\n };\n /***/\n\n },\n\n /***/\n \"861d\":\n /***/\n function (module, exports) {\n module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n };\n /***/\n\n },\n\n /***/\n \"8875\":\n /***/\n function (module, exports, __nested_webpack_require_54631__) {\n var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__; // addapted from the document.currentScript polyfill by Adam Miller\n // MIT license\n // source: https://github.com/amiller-gh/currentScript-polyfill\n // added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505\n\n\n (function (root, factory) {\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = factory, __WEBPACK_AMD_DEFINE_RESULT__ = typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? __WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__) : __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n })(typeof self !== 'undefined' ? self : this, function () {\n function getCurrentScript() {\n var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript'); // for chrome\n\n if (!descriptor && 'currentScript' in document && document.currentScript) {\n return document.currentScript;\n } // for other browsers with native support for currentScript\n\n\n if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {\n return document.currentScript;\n } // IE 8-10 support script readyState\n // IE 11+ & Firefox support stack trace\n\n\n try {\n throw new Error();\n } catch (err) {\n // Find the second match for the \"at\" string to get file src url from stack.\n var ieStackRegExp = /.*at [^(]*\\((.*):(.+):(.+)\\)$/ig,\n ffStackRegExp = /@([^@]*):(\\d+):(\\d+)\\s*$/ig,\n stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),\n scriptLocation = stackDetails && stackDetails[1] || false,\n line = stackDetails && stackDetails[2] || false,\n currentLocation = document.location.href.replace(document.location.hash, ''),\n pageSource,\n inlineScriptSourceRegExp,\n inlineScriptSource,\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n\n if (scriptLocation === currentLocation) {\n pageSource = document.documentElement.outerHTML;\n inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*