PageSourceSearch

https://shopcantymerch.com/themes-library/assets/f306fe3e-2a75-448…e8ffda282f94487fe0b02beb1581c97cd501118e.js

js shopcantymerch.com collected 2026-10-05 03:41:37 UTC 557,672 bytes, 1,435 lines download raw bytes

vendor: 641 bytes, lines 1-11
1/*
2 * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
3 * This devtool is neither made for production nor for readable output files.
4 * It uses "eval()" calls to create a separate source file in the browser devtools.
5 * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
6 * or disable the default devtool with "devtool: false".
7 * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
8 */
9/******/ (() => { // webpackBootstrap
10/******/ 	var __webpack_modules__ = ({
11
vendor: 429 bytes, lines 12-21
12/***/ "./node_modules/axios/index.js":
13/*!*************************************!*\
14  !*** ./node_modules/axios/index.js ***!
15  \*************************************/
16/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
17
18eval("module.exports = __webpack_require__(/*! ./lib/axios */ \"./node_modules/axios/lib/axios.js\");\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/index.js?");
19
20/***/ }),
21
vendor: 6,962 bytes, lines 22-32
22/***/ "./node_modules/axios/lib/adapters/xhr.js":
23/*!************************************************!*\
24  !*** ./node_modules/axios/lib/adapters/xhr.js ***!
25  \************************************************/
26/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
27
28"use strict";
29eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\nvar settle = __webpack_require__(/*! ./../core/settle */ \"./node_modules/axios/lib/core/settle.js\");\nvar cookies = __webpack_require__(/*! ./../helpers/cookies */ \"./node_modules/axios/lib/helpers/cookies.js\");\nvar buildURL = __webpack_require__(/*! ./../helpers/buildURL */ \"./node_modules/axios/lib/helpers/buildURL.js\");\nvar buildFullPath = __webpack_require__(/*! ../core/buildFullPath */ \"./node_modules/axios/lib/core/buildFullPath.js\");\nvar parseHeaders = __webpack_require__(/*! ./../helpers/parseHeaders */ \"./node_modules/axios/lib/helpers/parseHeaders.js\");\nvar isURLSameOrigin = __webpack_require__(/*! ./../helpers/isURLSameOrigin */ \"./node_modules/axios/lib/helpers/isURLSameOrigin.js\");\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();\n\n    // HTTP basic authentication\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);\n\n    // Set the request timeout in MS\n    request.timeout = config.timeout;\n\n    // Listen for ready state\n    request.onreadystatechange = function handleLoad() {\n      if (!request || request.readyState !== 4) {\n        return;\n      }\n\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      if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n        return;\n      }\n\n      // Prepare the response\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\n      settle(resolve, reject, response);\n\n      // Clean up request\n      request = null;\n    };\n\n    // Handle browser request cancellation (as opposed to a manual cancellation)\n    request.onabort = function handleAbort() {\n      if (!request) {\n        return;\n      }\n\n      reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n      // Clean up request\n      request = null;\n    };\n\n    // Handle low level network errors\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));\n\n      // Clean up request\n      request = null;\n    };\n\n    // Handle timeout\n    request.ontimeout = function handleTimeout() {\n      var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';\n      if (config.timeoutErrorMessage) {\n        timeoutErrorMessage = config.timeoutErrorMessage;\n      }\n      reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',\n        request));\n\n      // Clean up request\n      request = null;\n    };\n\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    if (utils.isStandardBrowserEnv()) {\n      // Add xsrf header\n      var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n        cookies.read(config.xsrfCookieName) :\n        undefined;\n\n      if (xsrfValue) {\n        requestHeaders[config.xsrfHeaderName] = xsrfValue;\n      }\n    }\n\n    // Add headers to the request\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    }\n\n    // Add withCredentials to request if needed\n    if (!utils.isUndefined(config.withCredentials)) {\n      request.withCredentials = !!config.withCredentials;\n    }\n\n    // Add responseType to request if needed\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    }\n\n    // Handle progress if needed\n    if (typeof config.onDownloadProgress === 'function') {\n      request.addEventListener('progress', config.onDownloadProgress);\n    }\n\n    // Not all browsers support upload events\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);\n        // Clean up request\n        request = null;\n      });\n    }\n\n    if (!requestData) {\n      requestData = null;\n    }\n\n    // Send the request\n    request.send(requestData);\n  });\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/adapters/xhr.js?");
30
31/***/ }),
32
vendor: 2,550 bytes, lines 33-43
33/***/ "./node_modules/axios/lib/axios.js":
34/*!*****************************************!*\
35  !*** ./node_modules/axios/lib/axios.js ***!
36  \*****************************************/
37/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
38
39"use strict";
40eval("\n\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/axios/lib/utils.js\");\nvar bind = __webpack_require__(/*! ./helpers/bind */ \"./node_modules/axios/lib/helpers/bind.js\");\nvar Axios = __webpack_require__(/*! ./core/Axios */ \"./node_modules/axios/lib/core/Axios.js\");\nvar mergeConfig = __webpack_require__(/*! ./core/mergeConfig */ \"./node_modules/axios/lib/core/mergeConfig.js\");\nvar defaults = __webpack_require__(/*! ./defaults */ \"./node_modules/axios/lib/defaults.js\");\n\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 */\nfunction createInstance(defaultConfig) {\n  var context = new Axios(defaultConfig);\n  var instance = bind(Axios.prototype.request, context);\n\n  // Copy axios.prototype to instance\n  utils.extend(instance, Axios.prototype, context);\n\n  // Copy context to instance\n  utils.extend(instance, context);\n\n  return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n  return createInstance(mergeConfig(axios.defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\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\");\n\n// Expose all/spread\naxios.all = function all(promises) {\n  return Promise.all(promises);\n};\naxios.spread = __webpack_require__(/*! ./helpers/spread */ \"./node_modules/axios/lib/helpers/spread.js\");\n\n// Expose isAxiosError\naxios.isAxiosError = __webpack_require__(/*! ./helpers/isAxiosError */ \"./node_modules/axios/lib/helpers/isAxiosError.js\");\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports[\"default\"] = axios;\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/axios.js?");
41
42/***/ }),
43
vendor: 752 bytes, lines 44-54
44/***/ "./node_modules/axios/lib/cancel/Cancel.js":
45/*!*************************************************!*\
46  !*** ./node_modules/axios/lib/cancel/Cancel.js ***!
47  \*************************************************/
48/***/ ((module) => {
49
50"use strict";
51eval("\n\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 */\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;\n\nmodule.exports = Cancel;\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/cancel/Cancel.js?");
52
53/***/ }),
54
vendor: 1,780 bytes, lines 55-65
55/***/ "./node_modules/axios/lib/cancel/CancelToken.js":
56/*!******************************************************!*\
57  !*** ./node_modules/axios/lib/cancel/CancelToken.js ***!
58  \******************************************************/
59/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
60
61"use strict";
62eval("\n\nvar Cancel = __webpack_require__(/*! ./Cancel */ \"./node_modules/axios/lib/cancel/Cancel.js\");\n\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 */\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\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/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n  if (this.reason) {\n    throw this.reason;\n  }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/cancel/CancelToken.js?");
63
64/***/ }),
65
vendor: 465 bytes, lines 66-76
66/***/ "./node_modules/axios/lib/cancel/isCancel.js":
67/*!***************************************************!*\
68  !*** ./node_modules/axios/lib/cancel/isCancel.js ***!
69  \***************************************************/
70/***/ ((module) => {
71
72"use strict";
73eval("\n\nmodule.exports = function isCancel(value) {\n  return !!(value && value.__CANCEL__);\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/cancel/isCancel.js?");
74
75/***/ }),
76
vendor: 3,454 bytes, lines 77-87
77/***/ "./node_modules/axios/lib/core/Axios.js":
78/*!**********************************************!*\
79  !*** ./node_modules/axios/lib/core/Axios.js ***!
80  \**********************************************/
81/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
82
83"use strict";
84eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\nvar buildURL = __webpack_require__(/*! ../helpers/buildURL */ \"./node_modules/axios/lib/helpers/buildURL.js\");\nvar InterceptorManager = __webpack_require__(/*! ./InterceptorManager */ \"./node_modules/axios/lib/core/InterceptorManager.js\");\nvar dispatchRequest = __webpack_require__(/*! ./dispatchRequest */ \"./node_modules/axios/lib/core/dispatchRequest.js\");\nvar mergeConfig = __webpack_require__(/*! ./mergeConfig */ \"./node_modules/axios/lib/core/mergeConfig.js\");\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n  this.defaults = instanceConfig;\n  this.interceptors = {\n    request: new InterceptorManager(),\n    response: new InterceptorManager()\n  };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\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);\n\n  // Set config.method\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  }\n\n  // Hook up interceptors middleware\n  var chain = [dispatchRequest, undefined];\n  var promise = Promise.resolve(config);\n\n  this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n    chain.unshift(interceptor.fulfilled, interceptor.rejected);\n  });\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};\n\n// Provide aliases for supported request methods\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});\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});\n\nmodule.exports = Axios;\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/Axios.js?");
85
86/***/ }),
87
vendor: 1,803 bytes, lines 88-98
88/***/ "./node_modules/axios/lib/core/InterceptorManager.js":
89/*!***********************************************************!*\
90  !*** ./node_modules/axios/lib/core/InterceptorManager.js ***!
91  \***********************************************************/
92/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
93
94"use strict";
95eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nfunction InterceptorManager() {\n  this.handlers = [];\n}\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 */\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/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n  if (this.handlers[id]) {\n    this.handlers[id] = null;\n  }\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 */\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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/InterceptorManager.js?");
96
97/***/ }),
98
vendor: 1,275 bytes, lines 99-109
99/***/ "./node_modules/axios/lib/core/buildFullPath.js":
100/*!******************************************************!*\
101  !*** ./node_modules/axios/lib/core/buildFullPath.js ***!
102  \******************************************************/
103/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
104
105"use strict";
106eval("\n\nvar isAbsoluteURL = __webpack_require__(/*! ../helpers/isAbsoluteURL */ \"./node_modules/axios/lib/helpers/isAbsoluteURL.js\");\nvar combineURLs = __webpack_require__(/*! ../helpers/combineURLs */ \"./node_modules/axios/lib/helpers/combineURLs.js\");\n\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 */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n  if (baseURL && !isAbsoluteURL(requestedURL)) {\n    return combineURLs(baseURL, requestedURL);\n  }\n  return requestedURL;\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/buildFullPath.js?");
107
108/***/ }),
109
vendor: 1,120 bytes, lines 110-120
110/***/ "./node_modules/axios/lib/core/createError.js":
111/*!****************************************************!*\
112  !*** ./node_modules/axios/lib/core/createError.js ***!
113  \****************************************************/
114/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
115
116"use strict";
117eval("\n\nvar enhanceError = __webpack_require__(/*! ./enhanceError */ \"./node_modules/axios/lib/core/enhanceError.js\");\n\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 */\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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/createError.js?");
118
119/***/ }),
120
vendor: 2,689 bytes, lines 121-131
121/***/ "./node_modules/axios/lib/core/dispatchRequest.js":
122/*!********************************************************!*\
123  !*** ./node_modules/axios/lib/core/dispatchRequest.js ***!
124  \********************************************************/
125/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
126
127"use strict";
128eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\nvar transformData = __webpack_require__(/*! ./transformData */ \"./node_modules/axios/lib/core/transformData.js\");\nvar isCancel = __webpack_require__(/*! ../cancel/isCancel */ \"./node_modules/axios/lib/cancel/isCancel.js\");\nvar defaults = __webpack_require__(/*! ../defaults */ \"./node_modules/axios/lib/defaults.js\");\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n  if (config.cancelToken) {\n    config.cancelToken.throwIfRequested();\n  }\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 */\nmodule.exports = function dispatchRequest(config) {\n  throwIfCancellationRequested(config);\n\n  // Ensure headers exist\n  config.headers = config.headers || {};\n\n  // Transform request data\n  config.data = transformData(\n    config.data,\n    config.headers,\n    config.transformRequest\n  );\n\n  // Flatten headers\n  config.headers = utils.merge(\n    config.headers.common || {},\n    config.headers[config.method] || {},\n    config.headers\n  );\n\n  utils.forEach(\n    ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n    function cleanHeaderConfig(method) {\n      delete config.headers[method];\n    }\n  );\n\n  var adapter = config.adapter || defaults.adapter;\n\n  return adapter(config).then(function onAdapterResolution(response) {\n    throwIfCancellationRequested(config);\n\n    // Transform response data\n    response.data = transformData(\n      response.data,\n      response.headers,\n      config.transformResponse\n    );\n\n    return response;\n  }, function onAdapterRejection(reason) {\n    if (!isCancel(reason)) {\n      throwIfCancellationRequested(config);\n\n      // Transform response data\n      if (reason && reason.response) {\n        reason.response.data = transformData(\n          reason.response.data,\n          reason.response.headers,\n          config.transformResponse\n        );\n      }\n    }\n\n    return Promise.reject(reason);\n  });\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/dispatchRequest.js?");
129
130/***/ }),
131
vendor: 1,459 bytes, lines 132-142
132/***/ "./node_modules/axios/lib/core/enhanceError.js":
133/*!*****************************************************!*\
134  !*** ./node_modules/axios/lib/core/enhanceError.js ***!
135  \*****************************************************/
136/***/ ((module) => {
137
138"use strict";
139eval("\n\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 */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n  error.config = config;\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  return error;\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/enhanceError.js?");
140
141/***/ }),
142
vendor: 3,447 bytes, lines 143-153
143/***/ "./node_modules/axios/lib/core/mergeConfig.js":
144/*!****************************************************!*\
145  !*** ./node_modules/axios/lib/core/mergeConfig.js ***!
146  \****************************************************/
147/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
148
149"use strict";
150eval("\n\nvar utils = __webpack_require__(/*! ../utils */ \"./node_modules/axios/lib/utils.js\");\n\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 */\nmodule.exports = function mergeConfig(config1, config2) {\n  // eslint-disable-next-line no-param-reassign\n  config2 = config2 || {};\n  var config = {};\n\n  var valueFromConfig2Keys = ['url', 'method', 'data'];\n  var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy', 'params'];\n  var defaultToConfig2Keys = [\n    'baseURL', 'transformRequest', 'transformResponse', 'paramsSerializer',\n    'timeout', 'timeoutMessage', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',\n    'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress', 'decompress',\n    'maxContentLength', 'maxBodyLength', 'maxRedirects', 'transport', 'httpAgent',\n    'httpsAgent', 'cancelToken', 'socketPath', 'responseEncoding'\n  ];\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    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\n  utils.forEach(mergeDeepPropertiesKeys, mergeDeepProperties);\n\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\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\n  var axiosKeys = valueFromConfig2Keys\n    .concat(mergeDeepPropertiesKeys)\n    .concat(defaultToConfig2Keys)\n    .concat(directMergeKeys);\n\n  var otherKeys = Object\n    .keys(config1)\n    .concat(Object.keys(config2))\n    .filter(function filterAxiosKeys(key) {\n      return axiosKeys.indexOf(key) === -1;\n    });\n\n  utils.forEach(otherKeys, mergeDeepProperties);\n\n  return config;\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/mergeConfig.js?");
151
152/***/ }),
153
vendor: 1,182 bytes, lines 154-164
154/***/ "./node_modules/axios/lib/core/settle.js":
155/*!***********************************************!*\
156  !*** ./node_modules/axios/lib/core/settle.js ***!
157  \***********************************************/
158/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
159
160"use strict";
161eval("\n\nvar createError = __webpack_require__(/*! ./createError */ \"./node_modules/axios/lib/core/createError.js\");\n\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 */\nmodule.exports = function settle(resolve, reject, response) {\n  var validateStatus = response.config.validateStatus;\n  if (!response.status || !validateStatus || validateStatus(response.status)) {\n    resolve(response);\n  } else {\n    reject(createError(\n      'Request failed with status code ' + response.status,\n      response.config,\n      null,\n      response.request,\n      response\n    ));\n  }\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/settle.js?");
162
163/***/ }),
164
vendor: 1,045 bytes, lines 165-175
165/***/ "./node_modules/axios/lib/core/transformData.js":
166/*!******************************************************!*\
167  !*** ./node_modules/axios/lib/core/transformData.js ***!
168  \******************************************************/
169/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
170
171"use strict";
172eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\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 */\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\n  return data;\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/core/transformData.js?");
173
174/***/ }),
175
vendor: 3,287 bytes, lines 176-186
176/***/ "./node_modules/axios/lib/defaults.js":
177/*!********************************************!*\
178  !*** ./node_modules/axios/lib/defaults.js ***!
179  \********************************************/
180/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
181
182"use strict";
183eval("\n\nvar utils = __webpack_require__(/*! ./utils */ \"./node_modules/axios/lib/utils.js\");\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  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  return adapter;\n}\n\nvar defaults = {\n  adapter: getDefaultAdapter(),\n\n  transformRequest: [function transformRequest(data, headers) {\n    normalizeHeaderName(headers, 'Accept');\n    normalizeHeaderName(headers, 'Content-Type');\n    if (utils.isFormData(data) ||\n      utils.isArrayBuffer(data) ||\n      utils.isBuffer(data) ||\n      utils.isStream(data) ||\n      utils.isFile(data) ||\n      utils.isBlob(data)\n    ) {\n      return data;\n    }\n    if (utils.isArrayBufferView(data)) {\n      return data.buffer;\n    }\n    if (utils.isURLSearchParams(data)) {\n      setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n      return data.toString();\n    }\n    if (utils.isObject(data)) {\n      setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n      return JSON.stringify(data);\n    }\n    return data;\n  }],\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) { /* Ignore */ }\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\n  xsrfCookieName: 'XSRF-TOKEN',\n  xsrfHeaderName: 'X-XSRF-TOKEN',\n\n  maxContentLength: -1,\n  maxBodyLength: -1,\n\n  validateStatus: function validateStatus(status) {\n    return status >= 200 && status < 300;\n  }\n};\n\ndefaults.headers = {\n  common: {\n    'Accept': 'application/json, text/plain, */*'\n  }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n  defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n  defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/defaults.js?");
184
185/***/ }),
186
vendor: 610 bytes, lines 187-197
187/***/ "./node_modules/axios/lib/helpers/bind.js":
188/*!************************************************!*\
189  !*** ./node_modules/axios/lib/helpers/bind.js ***!
190  \************************************************/
191/***/ ((module) => {
192
193"use strict";
194eval("\n\nmodule.exports = function bind(fn, thisArg) {\n  return function wrap() {\n    var args = new Array(arguments.length);\n    for (var i = 0; i < args.length; i++) {\n      args[i] = arguments[i];\n    }\n    return fn.apply(thisArg, args);\n  };\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/bind.js?");
195
196/***/ }),
197
vendor: 2,179 bytes, lines 198-208
198/***/ "./node_modules/axios/lib/helpers/buildURL.js":
199/*!****************************************************!*\
200  !*** ./node_modules/axios/lib/helpers/buildURL.js ***!
201  \****************************************************/
202/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
203
204"use strict";
205eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nfunction encode(val) {\n  return encodeURIComponent(val).\n    replace(/%3A/gi, ':').\n    replace(/%24/g, '$').\n    replace(/%2C/gi, ',').\n    replace(/%20/g, '+').\n    replace(/%5B/gi, '[').\n    replace(/%5D/gi, ']');\n}\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 */\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  if (paramsSerializer) {\n    serializedParams = paramsSerializer(params);\n  } else if (utils.isURLSearchParams(params)) {\n    serializedParams = params.toString();\n  } else {\n    var parts = [];\n\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        parts.push(encode(key) + '=' + encode(v));\n      });\n    });\n\n    serializedParams = parts.join('&');\n  }\n\n  if (serializedParams) {\n    var hashmarkIndex = url.indexOf('#');\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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/buildURL.js?");
206
207/***/ }),
208
vendor: 774 bytes, lines 209-219
209/***/ "./node_modules/axios/lib/helpers/combineURLs.js":
210/*!*******************************************************!*\
211  !*** ./node_modules/axios/lib/helpers/combineURLs.js ***!
212  \*******************************************************/
213/***/ ((module) => {
214
215"use strict";
216eval("\n\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 */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n  return relativeURL\n    ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n    : baseURL;\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/combineURLs.js?");
217
218/***/ }),
219
vendor: 1,950 bytes, lines 220-230
220/***/ "./node_modules/axios/lib/helpers/cookies.js":
221/*!***************************************************!*\
222  !*** ./node_modules/axios/lib/helpers/cookies.js ***!
223  \***************************************************/
224/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
225
226"use strict";
227eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = (\n  utils.isStandardBrowserEnv() ?\n\n  // Standard browser envs support document.cookie\n    (function 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\n        read: function read(name) {\n          var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n          return (match ? decodeURIComponent(match[3]) : null);\n        },\n\n        remove: function remove(name) {\n          this.write(name, '', Date.now() - 86400000);\n        }\n      };\n    })() :\n\n  // Non standard browser env (web workers, react-native) lack needed support.\n    (function nonStandardBrowserEnv() {\n      return {\n        write: function write() {},\n        read: function read() { return null; },\n        remove: function remove() {}\n      };\n    })()\n);\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/cookies.js?");
228
229/***/ }),
230
vendor: 975 bytes, lines 231-241
231/***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js":
232/*!*********************************************************!*\
233  !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***!
234  \*********************************************************/
235/***/ ((module) => {
236
237"use strict";
238eval("\n\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 */\nmodule.exports = function isAbsoluteURL(url) {\n  // A URL is considered absolute if it begins with \"<scheme>://\" 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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/isAbsoluteURL.js?");
239
240/***/ }),
241
vendor: 737 bytes, lines 242-252
242/***/ "./node_modules/axios/lib/helpers/isAxiosError.js":
243/*!********************************************************!*\
244  !*** ./node_modules/axios/lib/helpers/isAxiosError.js ***!
245  \********************************************************/
246/***/ ((module) => {
247
248"use strict";
249eval("\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n  return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/isAxiosError.js?");
250
251/***/ }),
252
vendor: 2,874 bytes, lines 253-263
253/***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js":
254/*!***********************************************************!*\
255  !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***!
256  \***********************************************************/
257/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
258
259"use strict";
260eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\nmodule.exports = (\n  utils.isStandardBrowserEnv() ?\n\n  // 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.\n    (function standardBrowserEnv() {\n      var msie = /(msie|trident)/i.test(navigator.userAgent);\n      var urlParsingNode = document.createElement('a');\n      var originURL;\n\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      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);\n\n        // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\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) === '/') ?\n            urlParsingNode.pathname :\n            '/' + urlParsingNode.pathname\n        };\n      }\n\n      originURL = resolveURL(window.location.href);\n\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      return function isURLSameOrigin(requestURL) {\n        var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n        return (parsed.protocol === originURL.protocol &&\n            parsed.host === originURL.host);\n      };\n    })() :\n\n  // Non standard browser envs (web workers, react-native) lack needed support.\n    (function nonStandardBrowserEnv() {\n      return function isURLSameOrigin() {\n        return true;\n      };\n    })()\n);\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/isURLSameOrigin.js?");
261
262/***/ }),
263
vendor: 889 bytes, lines 264-274
264/***/ "./node_modules/axios/lib/helpers/normalizeHeaderName.js":
265/*!***************************************************************!*\
266  !*** ./node_modules/axios/lib/helpers/normalizeHeaderName.js ***!
267  \***************************************************************/
268/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
269
270"use strict";
271eval("\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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/normalizeHeaderName.js?");
272
273/***/ }),
274
vendor: 1,932 bytes, lines 275-285
275/***/ "./node_modules/axios/lib/helpers/parseHeaders.js":
276/*!********************************************************!*\
277  !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***!
278  \********************************************************/
279/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
280
281"use strict";
282eval("\n\nvar utils = __webpack_require__(/*! ./../utils */ \"./node_modules/axios/lib/utils.js\");\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n  'age', 'authorization', 'content-length', 'content-type', 'etag',\n  'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n  'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n  'referer', 'retry-after', 'user-agent'\n];\n\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 */\nmodule.exports = function parseHeaders(headers) {\n  var parsed = {};\n  var key;\n  var val;\n  var i;\n\n  if (!headers) { return parsed; }\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      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\n  return parsed;\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/parseHeaders.js?");
283
284/***/ }),
285
vendor: 944 bytes, lines 286-296
286/***/ "./node_modules/axios/lib/helpers/spread.js":
287/*!**************************************************!*\
288  !*** ./node_modules/axios/lib/helpers/spread.js ***!
289  \**************************************************/
290/***/ ((module) => {
291
292"use strict";
293eval("\n\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 */\nmodule.exports = function spread(callback) {\n  return function wrap(arr) {\n    return callback.apply(null, arr);\n  };\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/helpers/spread.js?");
294
295/***/ }),
296
vendor: 9,717 bytes, lines 297-307
297/***/ "./node_modules/axios/lib/utils.js":
298/*!*****************************************!*\
299  !*** ./node_modules/axios/lib/utils.js ***!
300  \*****************************************/
301/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
302
303"use strict";
304eval("\n\nvar bind = __webpack_require__(/*! ./helpers/bind */ \"./node_modules/axios/lib/helpers/bind.js\");\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\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 */\nfunction isArray(val) {\n  return toString.call(val) === '[object Array]';\n}\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 */\nfunction isUndefined(val) {\n  return typeof val === 'undefined';\n}\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 */\nfunction isBuffer(val) {\n  return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n    && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\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 */\nfunction isArrayBuffer(val) {\n  return toString.call(val) === '[object ArrayBuffer]';\n}\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 */\nfunction isFormData(val) {\n  return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\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 */\nfunction isArrayBufferView(val) {\n  var result;\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  return result;\n}\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 */\nfunction isString(val) {\n  return typeof val === 'string';\n}\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 */\nfunction isNumber(val) {\n  return typeof val === 'number';\n}\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 */\nfunction isObject(val) {\n  return val !== null && typeof val === 'object';\n}\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 */\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/**\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 */\nfunction isDate(val) {\n  return toString.call(val) === '[object Date]';\n}\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 */\nfunction isFile(val) {\n  return toString.call(val) === '[object File]';\n}\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 */\nfunction isBlob(val) {\n  return toString.call(val) === '[object Blob]';\n}\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 */\nfunction isFunction(val) {\n  return toString.call(val) === '[object Function]';\n}\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 */\nfunction isStream(val) {\n  return isObject(val) && isFunction(val.pipe);\n}\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 */\nfunction isURLSearchParams(val) {\n  return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\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 */\nfunction trim(str) {\n  return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\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 */\nfunction isStandardBrowserEnv() {\n  if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n                                           navigator.product === 'NativeScript' ||\n                                           navigator.product === 'NS')) {\n    return false;\n  }\n  return (\n    typeof window !== 'undefined' &&\n    typeof document !== 'undefined'\n  );\n}\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 */\nfunction forEach(obj, fn) {\n  // Don't bother if no value provided\n  if (obj === null || typeof obj === 'undefined') {\n    return;\n  }\n\n  // Force an array if not already something iterable\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/**\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 */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n  var result = {};\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  return result;\n}\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 */\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/**\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 */\nfunction stripBOM(content) {\n  if (content.charCodeAt(0) === 0xFEFF) {\n    content = content.slice(1);\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\n//# sourceURL=webpack://digital-throwback/./node_modules/axios/lib/utils.js?");
305
306/***/ }),
307
308/***/ "./src/scripts/components/Carousel.js":
309/*!********************************************!*\
310  !*** ./src/scripts/components/Carousel.js ***!
311  \********************************************/
312/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
313
314"use strict";
315eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"Carousel\": () => (/* binding */ Carousel)\n/* harmony export */ });\n/* harmony import */ var tiny_slider_src_tiny_slider__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tiny-slider/src/tiny-slider */ \"./node_modules/tiny-slider/src/tiny-slider.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n/* harmony import */ var _product_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./product/constants */ \"./src/scripts/components/product/constants.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\n\n\nvar Carousel = /*#__PURE__*/function () {\n  function Carousel(_ref) {\n    var selectors = _ref.selectors,\n      _ref$config = _ref.config,\n      config = _ref$config === void 0 ? {} : _ref$config,\n      productContainer = _ref.productContainer;\n    _classCallCheck(this, Carousel);\n    this.productContainer = productContainer;\n    this.thumbnailsConfig = _product_constants__WEBPACK_IMPORTED_MODULE_2__.thumbnailsConfig;\n    this.sliderDOMElement = this.productContainer.querySelector(selectors.main);\n    if (!this.sliderDOMElement) {\n      console.error(\"DOM Element with selector :: \".concat(selectors.main, \" doesn't exist or it's value is equal null.\"));\n      return;\n    }\n    this.config = config;\n    this.selectors = selectors;\n    this.itemTemplate = this.setItemTemplate();\n    this.instance = (0,tiny_slider_src_tiny_slider__WEBPACK_IMPORTED_MODULE_0__.tns)(this.config);\n    this.rebuild = this.rebuildInstance.bind(this);\n    this.setConfig = this.setConfig.bind(this);\n  }\n  _createClass(Carousel, [{\n    key: \"setItemTemplate\",\n    value: function setItemTemplate() {\n      var el = this.productContainer.querySelector(this.selectors.item).cloneNode(true);\n      el.querySelector('img').setAttribute('src', '');\n      if (el.querySelector(this.selectors.imgHolder)) {\n        el.querySelector(this.selectors.imgHolder).dataset.zoomImage = '';\n        el.querySelector(this.selectors.imgHolder).dataset.zoomImageLoaded = '';\n      }\n      return el;\n    }\n  }, {\n    key: \"setConfig\",\n    value: function setConfig(config) {\n      this.config = config;\n    }\n  }, {\n    key: \"rebuildInstance\",\n    value: function rebuildInstance(images, config) {\n      this.instance.destroy();\n      if (!images) {\n        this.instance = (0,tiny_slider_src_tiny_slider__WEBPACK_IMPORTED_MODULE_0__.tns)(config == 'thumbnailsConfig' ? this.thumbnailsConfig(this.productC
315ontainer) : config == 'mainConfig' ? (0,_product_constants__WEBPACK_IMPORTED_MODULE_2__.mainConfig)(this.productContainer) : this.config);\n        return;\n      }\n      this.sliderDOMElement = this.productContainer.querySelector(this.selectors.main);\n      this.sliderDOMElement.classList.add(_utils__WEBPACK_IMPORTED_MODULE_1__.cssClasses.loading);\n      var tempContainer = document.createDocumentFragment();\n      for (var i = 0; i < images.length; i++) {\n        var slide = this.itemTemplate.cloneNode(true);\n        slide.querySelector('img').setAttribute('src', images[i]);\n        slide.dataset.galleryItemIndex = i;\n        var imgHolder = slide.querySelector(this.selectors.imgHolder);\n        if (imgHolder) {\n          imgHolder.dataset.zoomImage = images[i];\n        }\n        tempContainer.appendChild(slide);\n      }\n      this.sliderDOMElement.innerHTML = '';\n      this.sliderDOMElement.appendChild(tempContainer);\n      this.instance = (0,tiny_slider_src_tiny_slider__WEBPACK_IMPORTED_MODULE_0__.tns)(config == 'thumbnailsConfig' ? (0,_product_constants__WEBPACK_IMPORTED_MODULE_2__.thumbnailsConfig)(this.productContainer) : config == 'mainConfig' ? (0,_product_constants__WEBPACK_IMPORTED_MODULE_2__.mainConfig)(this.productContainer) : this.config);\n    }\n  }]);\n  return Carousel;\n}();\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/Carousel.js?");
316
317/***/ }),
318
319/***/ "./src/scripts/components/ImageZoom.js":
320/*!*********************************************!*\
321  !*** ./src/scripts/components/ImageZoom.js ***!
322  \*********************************************/
323/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
324
325"use strict";
326eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"ImageZoom\": () => (/* binding */ ImageZoom)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\nvar ImageZoom = /*#__PURE__*/function () {\n  function ImageZoom(_ref) {\n    var selector = _ref.selector,\n      _ref$config = _ref.config,\n      config = _ref$config === void 0 ? {} : _ref$config,\n      productContainer = _ref.productContainer;\n    _classCallCheck(this, ImageZoom);\n    this.selector = selector;\n    this.config = config;\n    this.productContainer = productContainer;\n    this.imgContainers = this.productContainer.querySelectorAll(this.selector);\n    this.rebuild = this.rebuild.bind(this);\n    this.destroy = this.destroy.bind(this);\n    this.onMouseMove = this.onMouseMove.bind(this);\n    this.onMouseOut = this.onMouseOut.bind(this);\n    this.onTouchMove = this.onTouchMove.bind(this);\n    if (this.imgContainers.length > 0) {\n      this.setup();\n    }\n  }\n  _createClass(ImageZoom, [{\n    key: \"setup\",\n    value: function setup() {\n      for (var i = 0; i < this.imgContainers.length; i++) {\n        if (!_utils__WEBPACK_IMPORTED_MODULE_0__.isMobile.any) {\n          this.imgContainers[i].addEventListener('mousemove', this.onMouseMove);\n          this.imgContainers[i].addEventListener('dragover', this.onMouseMove);\n          this.imgContainers[i].addEventListener('mouseout', this.onMouseOut);\n        } else {\n          this.imgContainers[i].addEventListener('touchmove', this.onTouchMove);\n        }\n      }\n    }\n  }, {\n    key: \"onMouseMove\",\n    value: function onMouseMove(e) {\n      var _this = this;\n      var imgContainer = e.currentTarget;\n      if (!imgContainer.dataset.zoomImageLoaded) {\n        var imageObj = new Image();\n        imageObj.src = imgContainer.dataset.zoomImage;\n        imageObj.onload = function (e) {\n          imgContainer.dataset.zoomImageLoaded = true;\n          if (imageObj.width > imgContainer.offsetWidth && imageObj.height > imgContainer.offsetHeight) {\n            imgContainer.style.backgroundImage = \"url(\\\"\".concat(imgContainer.dataset.zoomImage, \"\\\")\");\n            imgContainer.dataset.zoomEnabled = true;\n            _this.imageZoomIn(imgContainer, e);\n          }\n        };\n      } else if (imgContainer.dataset.zoomEnabled) {\n        this.imageZoomIn(imgContainer, e);\n      }\n    }\n  }, {\n    key: \"onMouseOut\",\n    value: function onMouseOut(e) {\n      this.imageZoomOut(e.currentTarget);\n    }\n  }, {\n    key: \"onTouchMove\",\n    value: function onTouchMove(e) {\n      var imgContainer = e.currentTarget;\n      if (!imgContainer.dataset.zoomImageLoaded) {\n        var img = imgContainer.querySelector('img');\n        var imageObj = new Image();\n        imageObj.src = imgContainer.dataset.zoomImage;\n        imageObj.onload = function () {\n          img.src = imgContainer.dataset.zoomImage;\n          imgContainer.dataset.zoomImageLoaded = true;\n        };\n      }\n    }\n  }, {\n    key: \"imageZoomIn\",\n    value: function imageZoomIn(imgContainer, e) {\n      var img = imgContainer.querySelector('img');\n      var offsetX = e.offsetX ? e.offsetX : 0;\n      var offsetY = e.offsetY ? e.offsetY : 0;\n      var x = offsetX / imgContainer.offsetWidth * 100;\n      var y = offsetY / imgContainer.offsetHeight * 100;\n      imgContainer.style.backgroundPosition = x + '% ' + y + '%';\n      img.style.opacity = 0;\n      imgContainer.style.display = 'block';\n    }\n  }, {\n    key: \"imageZoomOut\",\n    value: function imageZoomOut(imgContainer) {\n      var img = imgContainer.querySelector('img');\n      imgContainer.style.display = 'contents';\n      img.style.opacity = 1;\n    }\n  }, {\n    key: \"destroy\",\n    value: function destroy() {\n      for (var i = 0; i < this.imgContainers.length;
326 i++) {\n        if (!_utils__WEBPACK_IMPORTED_MODULE_0__.isMobile.any) {\n          this.imgContainers[i].removeEventListener('mousemove', this.onMouseMove);\n          this.imgContainers[i].removeEventListener('dragover', this.onMouseMove);\n          this.imgContainers[i].removeEventListener('mouseout', this.onMouseOut);\n        } else {\n          this.imgContainers[i].removeEventListener('touchmove', this.onTouchMove);\n        }\n      }\n    }\n  }, {\n    key: \"rebuild\",\n    value: function rebuild(productContainer) {\n      this.destroy();\n      this.imgContainers = productContainer.querySelectorAll(this.selector);\n      this.setup();\n    }\n  }]);\n  return ImageZoom;\n}();\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/ImageZoom.js?");
327
328/***/ }),
329
330/***/ "./src/scripts/components/accordion.js":
331/*!*********************************************!*\
332  !*** ./src/scripts/components/accordion.js ***!
333  \*********************************************/
334/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
335
336"use strict";
337eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"accordion\": () => (/* binding */ accordion)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar accordionTriggerSelector = '[data-accordion=\"trigger\"]';\nvar accordion = function accordion() {\n  var accordions = document.querySelectorAll(accordionTriggerSelector);\n  for (var i = 0; i < accordions.length; i++) {\n    accordions[i].addEventListener('click', function (e) {\n      e.currentTarget.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.active);\n      var content = e.currentTarget.nextElementSibling;\n      if (content) {\n        var classList = content.classList,\n          style = content.style,\n          scrollHeight = content.scrollHeight;\n        classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.active);\n        if (style.maxHeight) {\n          style.maxHeight = null;\n        } else {\n          style.maxHeight = scrollHeight + 'px';\n        }\n      }\n    });\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/accordion.js?");
338
339/***/ }),
340
341/***/ "./src/scripts/components/audioPlayer.js":
342/*!***********************************************!*\
343  !*** ./src/scripts/components/audioPlayer.js ***!
344  \***********************************************/
345/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
346
347"use strict";
348eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"audioPlayer\": () => (/* binding */ audioPlayer)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar selectors = {\n  main: '[data-player=\"main\"]',\n  player: '[data-player=\"player\"]',\n  currentTime: '[data-player=\"current-time\"]',\n  trackTime: '[data-player=\"track-time\"]',\n  progress: '[data-player=\"progress\"]',\n  playPause: '[data-player=\"play-pause\"]',\n  iconPlay: '[data-player-icon=\"play\"]',\n  iconPause: '[data-player-icon=\"pause\"]'\n};\nvar calculateTime = function calculateTime(secs) {\n  var minutes = Math.floor(secs / 60);\n  var seconds = Math.floor(secs % 60);\n  var returnedSeconds = seconds < 10 ? \"0\".concat(seconds) : \"\".concat(seconds);\n  return \"\".concat(minutes, \":\").concat(returnedSeconds);\n};\nvar setProgress = function setProgress(player, progress) {\n  var percentage = player.currentTime / player.duration * 100;\n  progress.style.width = \"\".concat(percentage, \"%\");\n};\nvar togglePlayPause = function togglePlayPause(player, iconPlay, iconPause) {\n  if (player.paused) {\n    player.play();\n    iconPlay.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    iconPause.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n  } else {\n    player.pause();\n    iconPlay.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    iconPause.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n  }\n};\nvar addPlayerControls = function addPlayerControls(playerContainer) {\n  var player = playerContainer.querySelector(selectors.player);\n  var trackTime = playerContainer.querySelector(selectors.trackTime);\n  var currentTime = playerContainer.querySelector(selectors.currentTime);\n  var progress = playerContainer.querySelector(selectors.progress);\n  var playPauseBtn = playerContainer.querySelector(selectors.playPause);\n  var iconPlay = playerContainer.querySelector(selectors.iconPlay);\n  var iconPause = playerContainer.querySelector(selectors.iconPause);\n  if (!player) {\n    console.error(\"DOM Element with player :: \".concat(selectors.player, \" doesn't exist or it's value is equal null.\"));\n    return;\n  }\n  var displayDuration = function displayDuration() {\n    trackTime.innerHTML = calculateTime(player.duration);\n  };\n  var displayCurrentTime = function displayCurrentTime() {\n    currentTime.innerHTML = calculateTime(player.currentTime);\n  };\n  var updateTimeDisplay = function updateTimeDisplay() {\n    displayDuration();\n    displayCurrentTime();\n  };\n  var updatePlayerTime = function updatePlayerTime() {\n    currentTime.innerHTML = calculateTime(player.currentTime);\n    var remainingTime = Math.ceil(player.duration - player.currentTime);\n    trackTime.innerHTML = \"-\".concat(calculateTime(remainingTime));\n    setProgress(player, progress);\n  };\n  var initializePlayer = function initializePlayer() {\n    if (player.readyState > 0) {\n      updateTimeDisplay();\n    } else {\n      player.addEventListener('loadedmetadata', updateTimeDisplay);\n    }\n    player.ontimeupdate = updatePlayerTime;\n    if (playPauseBtn) {\n      playPauseBtn.addEventListener('click', function () {\n        return togglePlayPause(player, iconPlay, iconPause);\n      });\n    }\n    player.addEventListener('ended', function () {\n      iconPlay.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n      iconPause.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    });\n  };\n  initializePlayer();\n};\nvar audioPlayer = function audioPlayer() {\n  var playerContainers = document.querySelectorAll(selectors.main);
348\n  playerContainers.forEach(addPlayerControls);\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/audioPlayer.js?");
349
350/***/ }),
351
352/***/ "./src/scripts/components/cart/CartContainer.js":
353/*!******************************************************!*\
354  !*** ./src/scripts/components/cart/CartContainer.js ***!
355  \******************************************************/
356/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
357
358"use strict";
359eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartContainer\": () => (/* binding */ CartContainer)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var preact_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! preact/hooks */ \"./node_modules/preact/hooks/dist/hooks.module.js\");\n/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! classnames */ \"./node_modules/classnames/index.js\");\n/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _utils_cartService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/cartService */ \"./src/scripts/utils/cartService.js\");\n/* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./index */ \"./src/scripts/components/cart/index.js\");\n/* harmony import */ var _CartHeader__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./CartHeader */ \"./src/scripts/components/cart/CartHeader.js\");\n/* harmony import */ var _CartItemsHeader__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./CartItemsHeader */ \"./src/scripts/components/cart/CartItemsHeader.js\");\n/* harmony import */ var _CartFooter__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./CartFooter */ \"./src/scripts/components/cart/CartFooter.js\");\n/* harmony import */ var _CartItem__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./CartItem */ \"./src/scripts/components/cart/CartItem.js\");\n/* harmony import */ var _CartModal__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./CartModal */ \"./src/scripts/components/cart/CartModal.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1;
359 try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/** @jsx h */\n\n\n\n\n\n\n\n\n\n\n\n\nvar Cart = function Cart(_ref) {\n  var modalContent = _ref.modalContent,\n    modalActive = _ref.modalActive,\n    setModalContent = _ref.setModalContent,\n    setModalActive = _ref.setModalActive,\n    currencyIso = _ref.currencyIso;\n  var errorRef = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n  var _useState = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(null),\n    _useState2 = _slicedToArray(_useState, 2),\n    cartError = _useState2[0],\n    setCartError = _useState2[1];\n  var _useState3 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(false),\n    _useState4 = _slicedToArray(_useState3, 2),\n    cartLoaded = _useState4[0],\n    setCartLoaded = _useState4[1];\n  var _useState5 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(false),\n    _useState6 = _slicedToArray(_useState5, 2),\n    cartErrorOnLoad = _useState6[0],\n    setCartErrorOnLoad = _useState6[1];\n  var _useState7 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(null),\n    _useState8 = _slicedToArray(_useState7, 2),\n    price = _useState8[0],\n    setTotalPrice = _useState8[1];\n  var _useState9 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(null),\n    _useState10 = _slicedToArray(_useState9, 2),\n    currency = _useState10[0],\n    setTotalCurrency = _useState10[1];\n  var _useState11 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(null),\n    _useState12 = _slicedToArray(_useState11, 2),\n    items = _useState12[0],\n    setItems = _useState12[1];\n  var _useState13 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(null),\n    _useState14 = _slicedToArray(_useState13, 2),\n    itemCount = _useState14[0],\n    setItemCount = _useState14[1];\n  var _useState15 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(false),\n    _useState16 = _slicedToArray(_useState15, 2),\n    cartLoading = _useState16[0],\n    setCartLoading = _useState16[1];\n  var handleCartErrorDisplay = function handleCartErrorDisplay(error) {\n    if (!error.response || !error.response.data || !error.response.data.message) {\n      setCartError(_utils__WEBPACK_IMPORTED_MODULE_10__.strings.generalError);\n      return;\n    }\n    setCartError(\"\".concat(error.response.data.message, \": \").concat(error.response.data.description));\n  };\n  (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n    _utils_cartService__WEBPACK_IMPORTED_MODULE_3__.cartService.getCart().then(function (response) {\n      setItems(response.data.items);\n      setItemCount(response.data.item_count);\n      (0,_utils__WEBPACK_IMPORTED_MODULE_10__.setCartWidgetQuantity)(response.data.item_count);\n      setTotalPrice(response.data.total_price);\n      setTotalCurrency(response.data.cart_currency);\n      setCartLoaded(true);\n    })[\"catch\"](function (error) {\n      setCartLoaded(true);\n      setCartErrorOnLoad(true);\n      handleCartErrorDisplay(error);\n    });\n  }, []);\n  (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n    if (cartError) {\n      scrollToError();\n    }\n  }, [cartError]);\n  var renderItem = function renderItem(_ref2) {\n    var id = _ref2.id,\n      images = _ref2.images,\n      product_title = _ref2.product_title,\n      variant_title = _ref2.variant_title,\n      price = _ref2.price,\n      quantity = _ref2.quantity,\n      url = _ref2.url;\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartItem__WEBPACK_IMPORTED_MODULE_8__.CartItem, {\n      id: id,\n      image: images[0] ? images[0].url : undefined,\n      productTitle: product_title,\n      variantTitle: variant_title,\n      price: (0,_utils__WEBPACK_IMPORTED_MODULE_10__.getPriceString)(price, currency),\n      quantity: quantity,\n      url: url,\n      onQuantityChange: handleOnQuantityChange\n    });\n  };\n  var handleOnQuantityChange = function handleOnQuantityChange(quantity, id, title) {\n    if (quantity === 0) {\n      setModalContent({\n        title: title,\n        callback: function callback(confirm) {\n          if (confirm) {\n            return updateQuantity(quantity, id);\n          }\n          setModalActive(false);\n        }\n      });\n      setModalActive(true);\n    } else {\n      updateQuantity(quantity, id);\n    }\n  };\n  var updateQuantity = function updateQuantity(quantity, id) {\n    setCartLoading(true);\n    setModalActive(false);\n    setCartError(null);\n    _utils_cartService__WEBPACK_IMPORTED_MODULE_3__.cartService.setItemQuantity(id, quantity).then(function (response) {\n      setTotalPrice(response.data.total_price);\n      setItems(response.data.items);\n      setItemCount(response.data.item_count);\n      (0,_utils__WEBPACK_IMPORTED_MODULE_10__.setCartWidgetQuantity)(response.data.item_count);\n      setCartLoading(false);\n    })[\"catch\"](function (error) {\n      setModalActive(false);\n      setCartLoading(false);\n      handleCartErrorDisplay(error);\n    });\n  };\n  var scrollToError = function scrollToError() {\n    (0,_utils__WEBPACK_IMPORTED_MODULE_10__.scrollToElement)({\n      element: errorRef.current,\n      offset: 100,\n      ifNeeded: true\n    });\n  };\n  if (!cartLoaded) {\n    return;\n  }\n  if (cartErrorOnLoad) {\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"cart cart--error-on-load\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      ref: errorRef,\n      className: \"cart__error\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"alert alert--error\"\n    }, cartError)));\n  }\n  if (items.length === 0) {\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"cart-empty\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"cart-empty__content\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"h1\", {\n      className: \"cart-empty__heading\"\n    }, _utils__WEBPACK_IMPORTED_MODULE_10__.strings.cart.emptyHeading), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"cart-empty__cta\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"a\", {\n      href: _utils__WEBPACK_IMPORTED_MODULE_10__.urls.allProductsCollection,\n      \"class\": \"button button--primary button--wide\"\n    }, _utils__WEBPACK_IMPORTED_MODULE_10__.strings.startShopping))));\n  }\n  var className = classnames__WEBPACK_IMPORTED_MODULE_2___default()('cart', _defineProperty({}
359, _utils__WEBPACK_IMPORTED_MODULE_10__.cssClasses.loading, cartLoading));\n  if (modalActive) {\n    (0,_utils__WEBPACK_IMPORTED_MODULE_10__.setBodyScroll)(false);\n  } else {\n    (0,_utils__WEBPACK_IMPORTED_MODULE_10__.setBodyScroll)(true);\n  }\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: className\n  }, modalActive && (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartModal__WEBPACK_IMPORTED_MODULE_9__.CartModal, {\n    title: modalContent.title,\n    callback: modalContent.callback\n  }), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart__header\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartHeader__WEBPACK_IMPORTED_MODULE_5__.CartHeader, {\n    itemCount: itemCount,\n    totalPrice: (0,_utils__WEBPACK_IMPORTED_MODULE_10__.getPriceString)(price, currency)\n  })), cartError && (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    ref: errorRef,\n    className: \"cart__error\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"alert alert--error\"\n  }, cartError)), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart__content\",\n    \"data-testid\": \"cart.content\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart__items-header\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartItemsHeader__WEBPACK_IMPORTED_MODULE_6__.CartItemsHeader, null)), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart__items\"\n  }, items.map(renderItem))), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart__footer\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartFooter__WEBPACK_IMPORTED_MODULE_7__.CartFooter, {\n    totalPrice: (0,_utils__WEBPACK_IMPORTED_MODULE_10__.getPriceString)(price, currency),\n    currencyIso: currencyIso\n  })));\n};\n\n// pass context values to Cart component and export Container not Cart itself\nvar CartContainer = function CartContainer() {\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_index__WEBPACK_IMPORTED_MODULE_4__.CartStore.Consumer, null, function (_ref3) {\n    var modal = _ref3.modal;\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(Cart, {\n      modalContent: modal.content,\n      modalActive: modal.active,\n      setModalActive: modal.setActive,\n      setModalContent: modal.setContent,\n      currencyIso: modal.currencyIso\n    });\n  });\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartContainer.js?");
360
361/***/ }),
362
363/***/ "./src/scripts/components/cart/CartFooter.js":
364/*!***************************************************!*\
365  !*** ./src/scripts/components/cart/CartFooter.js ***!
366  \***************************************************/
367/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
368
369"use strict";
370eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartFooter\": () => (/* binding */ CartFooter)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/** @jsx h */\n\n\n\nvar CartFooter = function CartFooter(_ref) {\n  var totalPrice = _ref.totalPrice,\n    currencyIso = _ref.currencyIso;\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-footer\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-footer__cta-container\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-footer__totals\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-totals\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-totals__item cart-totals__item--subtotal\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-totals__label\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"span\", {\n    className: \"cart-totals__subtotal\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.subtotal)), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-totals__amount cart-totals__amount--subtotal\"\n  }, currencyIso, \" \", totalPrice)))), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-footer__cta\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-footer__checkout\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"form\", {\n    action: _utils__WEBPACK_IMPORTED_MODULE_1__.urls.cart,\n    method: \"post\",\n    novalidate: true,\n    className: \"cart-footer__checkout-form\",\n    \"data-cart\": \"form\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"button\", {\n    type: \"submit\",\n    name: \"checkout\",\n    className: \"button button--primary button--expand\",\n    \"data-cart\": \"cta\",\n    \"data-testid\": \"cart.checkout.button\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.checkout))))), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-footer__continue\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"a\", {\n    href: _utils__WEBPACK_IMPORTED_MODULE_1__.urls.allProductsCollection,\n    \"class\": \"button button--outline button--expand\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.backToShopping)));\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartFooter.js?");
371
372/***/ }),
373
374/***/ "./src/scripts/components/cart/CartHeader.js":
375/*!***************************************************!*\
376  !*** ./src/scripts/components/cart/CartHeader.js ***!
377  \***************************************************/
378/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
379
380"use strict";
381eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartHeader\": () => (/* binding */ CartHeader)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/** @jsx h */\n\n\n\nvar CartHeader = function CartHeader(_ref) {\n  var itemCount = _ref.itemCount,\n    totalPrice = _ref.totalPrice;\n  var itemCountLabel = itemCount === 1 ? _utils__WEBPACK_IMPORTED_MODULE_1__.strings.item : _utils__WEBPACK_IMPORTED_MODULE_1__.strings.items;\n  var heading = _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.heading.replace('[item_count]', itemCount).replace('[item_count_label]', itemCountLabel).replace('[total]', totalPrice);\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-header\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"h1\", {\n    className: \"cart-header__heading\"\n  }, heading));\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartHeader.js?");
382
383/***/ }),
384
385/***/ "./src/scripts/components/cart/CartItem.js":
386/*!*************************************************!*\
387  !*** ./src/scripts/components/cart/CartItem.js ***!
388  \*************************************************/
389/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
390
391"use strict";
392eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartItem\": () => (/* binding */ CartItem)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var _CartQuantity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CartQuantity */ \"./src/scripts/components/cart/CartQuantity.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/** @jsx h */\n\n\n\n\nvar CartItem = function CartItem(_ref) {\n  var id = _ref.id,\n    image = _ref.image,\n    productTitle = _ref.productTitle,\n    variantTitle = _ref.variantTitle,\n    url = _ref.url,\n    quantity = _ref.quantity,\n    price = _ref.price,\n    onQuantityChange = _ref.onQuantityChange;\n  var handleRemoveItem = function handleRemoveItem() {\n    onQuantityChange(0, id, productTitle);\n  };\n  var decodeProductName = function decodeProductName(productName) {\n    var textarea = document.createElement(\"textarea\");\n    textarea.innerHTML = productName;\n    return textarea.value;\n  };\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item\",\n    \"data-testid\": \"cart.item\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item__image\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"a\", {\n    href: _utils__WEBPACK_IMPORTED_MODULE_2__.urls.cartItemLocalizedPrefix + url,\n    className: \"cart-item__image-link\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"image image--background-color\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"image__object\"\n  }, image && (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"img\", {\n    src: image,\n    alt: productTitle\n  }))))), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item__main\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item__description\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"a\", {\n    href: _utils__WEBPACK_IMPORTED_MODULE_2__.urls.cartItemLocalizedPrefix + url,\n    className: \"cart-item__title\"\n  }, decodeProductName(productTitle)), variantTitle && (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"p\", {\n    \"data-testid\": \"item.details\",\n    className: \"cart-item__variant-title\"\n  }, variantTitle)), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item__price\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"p\", {\n    className: \"cart-item__price-value\"\n  }, price)), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item__quantity\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartQuantity__WEBPACK_IMPORTED_MODULE_1__.CartQuantity, {\n    id: id,\n    value: quantity,\n    onChange: onQuantityChange\n  }))), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-item__remove\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"button\", {\n    className: \"cart-item__remove-button\",\n    onClick: handleRemoveItem\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"svg\", {\n    \"class\": \"svg-fill-current-color\",\n    width: \"14\",\n    height: \"14\",\n    viewBox: \"0 0 14 14\",\n    xmlns: \"http://www.w3.org/2000/svg\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"path\", {\n    d: \"M7 7L1.27 1.27 7 7l5.73-5.73L7 7zm0 0l5.73 5.73L7 7l-5.73 5.73L7 7z\",\n    stroke: \"currentColor\",\n    \"stroke-width\": \"2\",\n    fill: \"none\",\n    \"fill-rule\": \"evenodd\",\n    \"stroke-linecap\": \"square\"\n  })))));\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartItem.js?");
393
394/***/ }),
395
396/***/ "./src/scripts/components/cart/CartItemsHeader.js":
397/*!********************************************************!*\
398  !*** ./src/scripts/components/cart/CartItemsHeader.js ***!
399  \********************************************************/
400/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
401
402"use strict";
403eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartItemsHeader\": () => (/* binding */ CartItemsHeader)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/** @jsx h */\n\n\n\nvar CartItemsHeader = function CartItemsHeader() {\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-items-header\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-items-header__item\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.tableHeader.item), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-items-header__quantity\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.tableHeader.quantity), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-items-header__price\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.tableHeader.price), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"cart-items-header__remove\"\n  }));\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartItemsHeader.js?");
404
405/***/ }),
406
407/***/ "./src/scripts/components/cart/CartModal.js":
408/*!**************************************************!*\
409  !*** ./src/scripts/components/cart/CartModal.js ***!
410  \**************************************************/
411/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
412
413"use strict";
414eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartModal\": () => (/* binding */ CartModal)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/** @jsx h */\n\n\n\nvar CartModal = function CartModal(_ref) {\n  var title = _ref.title,\n    callback = _ref.callback;\n  var heading = _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.deleteModal.heading.replace('[title]', title);\n  var handleConfirmAction = function handleConfirmAction() {\n    callback(true);\n  };\n  var handleCancelAction = function handleCancelAction() {\n    callback(false);\n  };\n  return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"modal\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"modal__overlay\",\n    onClick: handleCancelAction\n  }), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"modal__content modal__content--shift-up\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"button\", {\n    className: \"modal__close\",\n    onClick: handleCancelAction\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"svg\", {\n    \"class\": \"svg-fill-current-color\",\n    width: \"14\",\n    height: \"14\",\n    viewBox: \"0 0 14 14\",\n    xmlns: \"http://www.w3.org/2000/svg\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"path\", {\n    d: \"M7 7L1.27 1.27 7 7l5.73-5.73L7 7zm0 0l5.73 5.73L7 7l-5.73 5.73L7 7z\",\n    stroke: \"currentColor\",\n    \"stroke-width\": \"2\",\n    fill: \"none\",\n    \"fill-rule\": \"evenodd\",\n    \"stroke-linecap\": \"square\"\n  }))), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"h5\", {\n    className: \"modal__heading modal__heading--center\"\n  }, heading), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n    className: \"modal__cta\"\n  }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"button\", {\n    onClick: handleCancelAction,\n    className: \"button button--outline button--small\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.deleteModal.cancel), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"button\", {\n    onClick: handleConfirmAction,\n    className: \"button button--primary button--small\"\n  }, _utils__WEBPACK_IMPORTED_MODULE_1__.strings.cart.deleteModal[\"delete\"]))));\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartModal.js?");
415
416/***/ }),
417
418/***/ "./src/scripts/components/cart/CartQuantity.js":
419/*!*****************************************************!*\
420  !*** ./src/scripts/components/cart/CartQuantity.js ***!
421  \*****************************************************/
422/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
423
424"use strict";
425eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartQuantity\": () => (/* binding */ CartQuantity)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var preact_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! preact/hooks */ \"./node_modules/preact/hooks/dist/hooks.module.js\");\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/** @jsx h */\n\n\n\nvar TEN_OR_MORE_VALUE = '10+';\nvar selectOptions = [1, 2, 3, 4, 5, 6, 7, 8, 9, TEN_OR_MORE_VALUE];\nvar CartQuantity = function CartQuantity(_ref) {\n  var _ref$value = _ref.value,\n    value = _ref$value === void 0 ? 0 : _ref$value,\n    id = _ref.id,\n    onChange = _ref.onChange;\n  var _useState = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(false),\n    _useState2 = _slicedToArray(_useState, 2),\n    input = _useState2[0],\n    forceInputField = _useState2[1];\n  var _useState3 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(value),\n    _useState4 = _slicedToArray(_useState3, 2),\n    currentValue = _useState4[0],\n    setCurrentValue = _useState4[1];\n  var inputRef = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n  var handleQuantityChange = function handleQuantityChange(e) {\n    if (onChange && e.target.value !== currentValue) {\n      setCurrentValue(e.target.value);\n      if (e.target.value === TEN_OR_MORE_VALUE) {\n        forceInputField(true);\n      } else {\n        forceInputField(false);\n        onChange(e.target.value, id);\n      }\n    }\n  };\n  (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {\n    if (input) {\n      inputRef.current.focus();\n    }\n  }, [input]);\n  var renderInput = function renderInput() {\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"input-field input-field--quantity input-field--transparent input-field--base input-field--cart-item\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"input\", {\n      className: \"input-field__input\",\n      value: value,\n      ref: inputRef,\n      onBlur: handleQuantityChange,\n      onKeyDown: function onKeyDown(e) {\n        return e.key === 'Enter' && inputRef.current.blur();\n      }\n    }));\n  };
425\n  var renderSelect = function renderSelect() {\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"select-field select-field--quantity select-field--transparent select-field--base select-field--cart-item\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"select\", {\n      className: \"select-field__select\",\n      value: value,\n      onChange: handleQuantityChange\n    }, selectOptions.map(function (item) {\n      return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"option\", {\n        key: item,\n        id: item,\n        value: item\n      }, item);\n    })), (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"div\", {\n      className: \"select-field__dropdown-icon\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"svg\", {\n      \"class\": \"svg-fill-current-color\",\n      xmlns: \"http://www.w3.org/2000/svg\",\n      width: \"24\",\n      height: \"24\",\n      viewBox: \"0 0 24 24\"\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(\"path\", {\n      d: \"M0 7.33l2.829-2.83 9.175 9.339 9.167-9.339 2.829 2.83-11.996 12.17z\"\n    }))));\n  };\n  if (value >= 10 || input) {\n    return renderInput();\n  }\n  return renderSelect();\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/CartQuantity.js?");
426
427/***/ }),
428
429/***/ "./src/scripts/components/cart/index.js":
430/*!**********************************************!*\
431  !*** ./src/scripts/components/cart/index.js ***!
432  \**********************************************/
433/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
434
435"use strict";
436eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartStore\": () => (/* binding */ CartStore),\n/* harmony export */   \"cart\": () => (/* binding */ cart)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\n/* harmony import */ var preact_hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! preact/hooks */ \"./node_modules/preact/hooks/dist/hooks.module.js\");\n/* harmony import */ var _CartContainer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CartContainer */ \"./src/scripts/components/cart/CartContainer.js\");\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/** @jsx h */\n\n\n\n\nvar cartComponentSelector = '#cart-component';\nvar CartStore = (0,preact__WEBPACK_IMPORTED_MODULE_0__.createContext)(false);\nvar cart = function cart() {\n  var cartComponent = document.querySelector(cartComponentSelector);\n  var currencyIso = cartComponent ? cartComponent.dataset.currency || '' : '';\n  if (!cartComponent) return;\n  var CartApp = function CartApp() {\n    var _useState = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)(false),\n      _useState2 = _slicedToArray(_useState, 2),\n      modalActive = _useState2[0],\n      setModalActive = _useState2[1];\n    var _useState3 = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_1__.useState)({\n        name: '',\n        callback: null\n      }),\n      _useState4 = _slicedToArray(_useState3, 2),\n      modalContent = _useState4[0],\n      setModalContent = _useState4[1];\n    var initialStore = {\n      modal: {\n        active: modalActive,\n        setActive: setModalActive,\n        content: modalContent,\n        setContent: setModalContent,\n        currencyIso: currencyIso\n      }\n    };\n    return (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(CartStore.Provider, {\n      value: initialStore\n    }, (0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(_CartContainer__WEBPACK_IMPORTED_MODULE_2__.CartContainer, null));\n  };\n  (0,preact__WEBPACK_IMPORTED_MODULE_0__.render)((0,preact__WEBPACK_IMPORTED_MODULE_0__.h)(CartApp, null), cartComponent);\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cart/index.js?");
437
438/***/ }),
439
440/***/ "./src/scripts/components/cartWidget.js":
441/*!**********************************************!*\
442  !*** ./src/scripts/components/cartWidget.js ***!
443  \**********************************************/
444/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
445
446"use strict";
447eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"cartWidget\": () => (/* binding */ cartWidget)\n/* harmony export */ });\n/* harmony import */ var _utils_cartService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/cartService */ \"./src/scripts/utils/cartService.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\n\nvar cartSelector = '[data-cart=\"cart\"]';\nvar cartWidget = function cartWidget() {\n  var cartDOMElement = document.querySelector(cartSelector);\n  if (!cartDOMElement) {\n    _utils_cartService__WEBPACK_IMPORTED_MODULE_0__.cartService.getCart().then(function (response) {\n      if (response.data !== undefined && response.data.item_count !== undefined) {\n        (0,_utils__WEBPACK_IMPORTED_MODULE_1__.setCartWidgetQuantity)(response.data.item_count);\n        return;\n      }\n      console.error(response);\n    })[\"catch\"](function (error) {\n      console.error(error);\n    });\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/cartWidget.js?");
448
449/***/ }),
450
451/***/ "./src/scripts/components/countdown/constants.js":
452/*!*******************************************************!*\
453  !*** ./src/scripts/components/countdown/constants.js ***!
454  \*******************************************************/
455/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
456
457"use strict";
458eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"dataPrefix\": () => (/* binding */ dataPrefix),\n/* harmony export */   \"selectors\": () => (/* binding */ selectors),\n/* harmony export */   \"state\": () => (/* binding */ state)\n/* harmony export */ });\nvar dataPrefix = 'data-countdown';\nvar selectors = {\n  countdown: \"[\".concat(dataPrefix, \"=\\\"countdown\\\"]\"),\n  config: \"[\".concat(dataPrefix, \"=\\\"json\\\"]\"),\n  live: \"[\".concat(dataPrefix, \"=\\\"live\\\"]\"),\n  ends: \"[\".concat(dataPrefix, \"=\\\"ends\\\"]\"),\n  label: \"[\".concat(dataPrefix, \"=\\\"label\\\"]\"),\n  prefixLabel: \"[\".concat(dataPrefix, \"=\\\"prefix\\\"]\"),\n  suffixLabel: \"[\".concat(dataPrefix, \"=\\\"suffix\\\"]\"),\n  days: \"[\".concat(dataPrefix, \"=\\\"days\\\"]\"),\n  hours: \"[\".concat(dataPrefix, \"=\\\"hours\\\"]\"),\n  minutes: \"[\".concat(dataPrefix, \"=\\\"minutes\\\"]\"),\n  seconds: \"[\".concat(dataPrefix, \"=\\\"seconds\\\"]\"),\n  initText: \"[\".concat(dataPrefix, \"=\\\"init-text\\\"]\")\n};\nvar state = {\n  pre: 'PRE',\n  active: 'ACTIVE',\n  end: 'END',\n  finished: 'FINISHED'\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/countdown/constants.js?");
459
460/***/ }),
461
462/***/ "./src/scripts/components/countdown/index.js":
463/*!***************************************************!*\
464  !*** ./src/scripts/components/countdown/index.js ***!
465  \***************************************************/
466/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
467
468"use strict";
469eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"countdown\": () => (/* binding */ countdown)\n/* harmony export */ });\n/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! dayjs */ \"./node_modules/dayjs/dayjs.min.js\");\n/* harmony import */ var dayjs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(dayjs__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var dayjs_plugin_utc__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! dayjs/plugin/utc */ \"./node_modules/dayjs/plugin/utc.js\");\n/* harmony import */ var dayjs_plugin_utc__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(dayjs_plugin_utc__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./src/scripts/components/countdown/constants.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\n\n\nvar Countdown = /*#__PURE__*/function () {\n  function Countdown(element) {\n    _classCallCheck(this, Countdown);\n    this.element = element;\n    this.config = this.getConfig();\n    if (!this.config) {\n      console.error('Countdown JSON does not exist.');\n      return;\n    }\n    dayjs__WEBPACK_IMPORTED_MODULE_0___default().extend((dayjs_plugin_utc__WEBPACK_IMPORTED_MODULE_1___default()));\n    this.countdownType = this.config.countdownType;\n    this.countdownState = this.config.countdownState;\n    this.startDateString = this.config.startDate;\n    this.endDateString = this.config.endDate;\n    this.live = this.config.live;\n    this.timezoneOffset = this.config.timezoneOffset;\n    this.timezoneAbbr = this.config.timezoneAbbr;\n    this.contentLabel = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.label);\n    this.contentLive = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.live);\n    this.contentEnds = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.ends);\n    this.prefixLabel = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.prefixLabel);\n    this.suffixLabel = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.suffixLabel);\n    this.initText = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.initText);\n    this.days = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.days);\n    this.hours = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.hours);\n    this.minutes = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.minutes);\n    this.seconds = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.seconds);\n    if (!this.startDateString) {\n      console.error('Countdown startDate is missing.');\n      return;\n    }\n    if (!this.endDateString) {\n      console.error('Countdown endDate is missing.');\n      return;\n    }\n    if (!this.timezoneOffset || !this.timezoneAbbr) {\n      console.error('Time zone details are missing.');\n      return;\n    }\n    if (!this.contentLive && this.countdownType != \"big-countdown\") {\n      console.error('DOM Element for Live content is missing.');\n      return;\n    }\n    this.utcOffset = parseInt(this.timezoneOffset.replace('00', ''));\n    this.startDate = dayjs__WEBPACK_IMPORTED_MODULE_0___default()(this.startDateString).utc().utcOffset(this.utcOffset);\n    this.endDate = dayjs__WEBPACK_IMPORTED_MODULE_0___default()(this.endDateString).utc().utcOffset(this.utcOffset);\n    this.render();\n  }\n  _createClass(Countdown, [{\n    key: \"getConfig\",\n    value: function getConfig() {\n      var countdownJSON = this.element.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.config);\n      if (countdownJSON) {\n        return JSON.parse(countdownJSON.innerHTML);\n      }\n      return false;\n    }\n  }, {\n    key: \"setConfig\",\n    value: function setConfig(newConfigParams) {\n      this.config = _objectSpread(_objectSpread({}, this.config), newConfigParams);\n    }\n  }, {\n    key: \"getFormattedStartDate\",\n    value: function getFormattedStartDate() {\n      return \"\".concat(this.startDate.format(this.config.dateFormat), \" \").concat(this.timezoneAbbr);\n    }\n  }, {\n    key: \"getFormattedEndDate\",\n    value: function getFormattedEndDate() {\n      return \"\".concat(this.endDate.format(this.config.dateFormat), \" \").concat(this.timezoneAbbr);\n    }\n  }, {\n    key: \"getTimer\",\n    value: function getTimer(remainSeconds) {\n      var remains = {\n        days: Math.floor(remainSeconds / (3600 * 24)),\n        hours: Math.floor(remainSeconds % (3600 * 24) / 3600),\n        minutes: Math.floor(remainSeconds % 3600 / 60),\n        seconds: Math.floor(remainSeconds % 60)\n      };\n      var units = {\n        days: remains.days === 1 ? 'day' : 'days',\n        hours: remains.hours === 1 ? 'hour' : 'hours',\n        minutes: remains.minutes === 1 ? 'min' : 'mins',\n        seconds: remains.seconds === 1 ? 'sec' : 'secs'\n      };\n      var content = '';\n      if (remains.days > 0) {\n        content = this.timeFormat(this.config.daysFormat, remains, units);\n      }\n      content += this.timeFormat(this.config.countdownFormat, remains, units);\n      if (remains.hours == 0 && remains.minutes == 0 && remains.seconds < 60) {\n        content = 'less than 1 minute';\n      }\n      if (this.countdownType == \"big-countdown\") {\n        var formatUnit = function formatUnit(unit) {\n          var padLength = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n          return unit.toString().padStart(padLength, '0');\n        };\n        content = {\n          days: remains.days > 0 ? formatUnit(remains.days, remains.days >= 100 ? 3 : 2) : '00',\n          hours: formatUnit(remains.hours),\n          minutes: formatUnit(remains.minutes),\n          seconds: formatUnit(remains.seconds)\n        };\n      }\n      return content;\n    }\n  }, {\n    key: \"timeFormat\",\n    value: function timeFormat(string, remains, units) {\n      var mapFormat = {\n        '%RD': remains.days,\n        '%RH': remains.hours,\n        '%RM': remains.minutes,\n        '%RS': remains.seconds,\n        '%UD': units.days,\n        '%UH': units.hours,\n        '%UM': units.minutes,\n        '%US': units.seconds\n      };
469\n      string = string.replace(/%RD|%RH|%RM|%RS|%UD|%UH|%UM|%US/gi, function (matched) {\n        return mapFormat[matched];\n      });\n      return string;\n    }\n  }, {\n    key: \"getCountdownState\",\n    value: function getCountdownState() {\n      if (typeof this.countdownState !== 'undefined' && this.countdownState == _constants__WEBPACK_IMPORTED_MODULE_2__.state.finished) {\n        return _constants__WEBPACK_IMPORTED_MODULE_2__.state.finished;\n      }\n      var startDateDifference = this.startDate.diff(dayjs__WEBPACK_IMPORTED_MODULE_0___default()().format(), 'seconds');\n      var endDateDifference = this.endDate.diff(dayjs__WEBPACK_IMPORTED_MODULE_0___default()().format(), 'seconds');\n      if (startDateDifference >= 0) {\n        return _constants__WEBPACK_IMPORTED_MODULE_2__.state.pre;\n      } else if (startDateDifference < 0 && endDateDifference >= 0) {\n        return _constants__WEBPACK_IMPORTED_MODULE_2__.state.active;\n      } else {\n        return _constants__WEBPACK_IMPORTED_MODULE_2__.state.end;\n      }\n    }\n  }, {\n    key: \"renderPreState\",\n    value: function renderPreState() {\n      if (this.countdownType == \"big-countdown\") {\n        if (this.contentLabel && this.config.label) this.contentLabel.innerHTML = \"\".concat(this.config.label);\n        if (this.days) this.days.innerHTML = '00';\n        if (this.hours) this.hours.innerHTML = '00';\n        if (this.minutes) this.minutes.innerHTML = '00';\n        if (this.seconds) this.seconds.innerHTML = '00';\n      } else {\n        if (this.contentLabel && this.config.label) this.contentLabel.innerHTML = this.config.label;\n        this.contentLive.innerHTML = \"\".concat(this.getFormattedStartDate());\n        if (this.contentEnds) this.contentEnds.innerHTML = '';\n        if (this.prefixLabel && this.config.prefixLabel) this.prefixLabel.innerHTML = this.config.prefixLabel;\n        if (this.suffixLabel && this.config.suffixLabel) this.suffixLabel.innerHTML = this.config.suffixLabel;\n      }\n    }\n  }, {\n    key: \"renderActiveState\",\n    value: function renderActiveState() {\n      var remainSeconds = this.endDate.diff(dayjs__WEBPACK_IMPORTED_MODULE_0___default()().format(), 'seconds');\n      var time = this.getTimer(remainSeconds);\n      if (this.countdownType == \"big-countdown\") {\n        if (this.contentLabel && this.config.label) this.contentLabel.innerHTML = \"\".concat(this.config.label);\n        if (this.days) this.days.innerHTML = time.days;\n        if (this.hours) this.hours.innerHTML = time.hours;\n        if (this.minutes) this.minutes.innerHTML = time.minutes;\n        if (this.seconds) this.seconds.innerHTML = time.seconds;\n      } else {\n        if (this.contentLabel && this.config.label) this.contentLabel.innerHTML = \"\".concat(this.config.label);\n        if (this.initText) this.initText.innerHTML = '';\n        this.contentLive.innerHTML = \"\".concat(time);\n        if (this.prefixLabel && this.config.prefixLabel) this.prefixLabel.innerHTML = this.config.prefixLabel;\n        if (this.suffixLabel && this.config.suffixLabel) this.suffixLabel.innerHTML = this.config.suffixLabel;\n      }\n    }\n  }, {\n    key: \"renderEndState\",\n    value: function renderEndState() {\n      if (this.countdownType == \"big-countdown\") {\n        if (this.contentLabel && this.config.label) this.contentLabel.innerHTML = \"\".concat(this.config.label);\n        if (this.days) this.days.innerHTML = '00';\n        if (this.hours) this.hours.innerHTML = '00';\n        if (this.minutes) this.minutes.innerHTML = '00';\n        if (this.seconds) this.seconds.innerHTML = '00';\n        if (window.location.pathname === '/password') {\n          setTimeout(function () {\n            window.location.href = '/';\n          }, 5000);\n        }\n      } else {\n        this.contentLabel.innerHTML = \"\".concat(this.config.label);\n        if (this.contentLive) this.contentLive.innerHTML = '';\n        if (this.contentEnds) this.contentEnds.innerHTML = \"Ended \".concat(this.getFormattedEndDate());\n        if (this.prefixLabel) this.prefixLabel.innerHTML = '';\n        if (this.suffixLabel) this.suffixLabel.innerHTML = '';\n      }\n\n      // Reset timer if needed\n      if (this.config.resetOnEnd) this.reset();\n    }\n  }, {\n    key: \"render\",\n    value: function render() {\n      var countdownState = this.getCountdownState();\n      switch (countdownState) {\n        case _constants__WEBPACK_IMPORTED_MODULE_2__.state.pre:\n          this.renderPreState();\n          break;\n        case _constants__WEBPACK_IMPORTED_MODULE_2__.state.active:\n          this.renderActiveState();\n          break;\n        case _constants__WEBPACK_IMPORTED_MODULE_2__.state.end:\n          this.renderEndState();\n          break;\n        case _constants__WEBPACK_IMPORTED_MODULE_2__.state.finished:\n          return;\n      }\n      setTimeout(this.render.bind(this), 1000);\n    }\n  }, {\n    key: \"reset\",\n    value: function reset() {\n      this.setConfig({\n        startDate: this.config.resetStartDate,\n        endDate: this.config.resetEndDate,\n        prefixLabel: this.config.resetPrefixLabel,\n        suffixLabel: this.config.resetSuffixLabel,\n        resetOnEnd: false\n      });\n      this.startDateString = this.config.startDate;\n      this.endDateString = this.config.endDate;\n      this.startDate = dayjs__WEBPACK_IMPORTED_MODULE_0___default()(this.startDateString).utc().utcOffset(this.utcOffset);\n      this.endDate = dayjs__WEBPACK_IMPORTED_MODULE_0___default()(this.endDateString).utc().utcOffset(this.utcOffset);\n      this.render();\n    }\n  }]);\n  return Countdown;\n}();\nvar countdown = function countdown() {\n  var elements = document.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.countdown);\n  for (var i = 0; i < elements.length;
469 i++) {\n    new Countdown(elements[i]);\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/countdown/index.js?");
470
471/***/ }),
472
473/***/ "./src/scripts/components/forms/donation/constants.js":
474/*!************************************************************!*\
475  !*** ./src/scripts/components/forms/donation/constants.js ***!
476  \************************************************************/
477/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
478
479"use strict";
480eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"selectors\": () => (/* binding */ selectors)\n/* harmony export */ });\nvar dataPrefixDonationForm = 'data-donation';\nvar dataPrefixForm = 'data-form';\nvar selectors = {\n  form: \"[\".concat(dataPrefixDonationForm, \"=\\\"form\\\"]\"),\n  formSubmitButton: \"[\".concat(dataPrefixDonationForm, \"=\\\"submit\\\"]\"),\n  amountRadio: \"[\".concat(dataPrefixDonationForm, \"=\\\"amount-radio\\\"]\"),\n  amountInputContainer: \"[\".concat(dataPrefixDonationForm, \"=\\\"amount-input-container\\\"]\"),\n  amountInput: \"[\".concat(dataPrefixDonationForm, \"=\\\"amount-input\\\"]\"),\n  amountFinalInput: \"[\".concat(dataPrefixDonationForm, \"=\\\"amount\\\"]\"),\n  inputError: \"\".concat(dataPrefixForm, \"-error\")\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/forms/donation/constants.js?");
481
482/***/ }),
483
484/***/ "./src/scripts/components/forms/donation/index.js":
485/*!********************************************************!*\
486  !*** ./src/scripts/components/forms/donation/index.js ***!
487  \********************************************************/
488/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
489
490"use strict";
491eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"donation\": () => (/* binding */ donation),\n/* harmony export */   \"setupDonationForm\": () => (/* binding */ setupDonationForm)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils */ \"./src/scripts/utils/index.js\");\n/* harmony import */ var _utils_validate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/validate */ \"./src/scripts/utils/validate.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./src/scripts/components/forms/donation/constants.js\");\n\n\n\nvar setupDonationForm = function setupDonationForm() {\n  var form = document.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.form);\n  var formSubmitButton = document.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.formSubmitButton);\n  var amountRadios = document.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.amountRadio);\n  var amountInput = document.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.amountInput);\n  var amountInputContainer = document.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.amountInputContainer);\n  var amountFinalInput = document.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.amountFinalInput);\n  if (!amountInputContainer || !amountInput || !amountRadios.length) {\n    console.error('DOM Elements for form amounts do not exist.');\n    return;\n  }\n  if (!formSubmitButton) {\n    console.error('DOM Element for form submit button does not exist.');\n    return;\n  }\n  var setFormLoading = function setFormLoading(loading) {\n    if (loading) {\n      formSubmitButton.disabled = true;\n      formSubmitButton.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading);\n    } else {\n      formSubmitButton.disabled = false;\n      formSubmitButton.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading);\n    }\n  };\n  var handleAmountRadioChange = function handleAmountRadioChange(e) {\n    if (e.currentTarget.checked) {\n      amountInput.value = '';\n      amountInput.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.filled);\n      amountInputContainer.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.selected);\n    }\n  };\n  var handleAmountInputFocus = function handleAmountInputFocus() {\n    amountInputContainer.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.selected);\n    for (var i = 0; i < amountRadios.length; i++) {\n      amountRadios[i].checked = false;\n    }\n  };\n  var handleAmountInputBlur = function handleAmountInputBlur() {\n    if (amountInput.value === '') {\n      amountInputContainer.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.selected);\n    } else {\n      amountInput.value = currencyData.currency === 'JPY' ? amountInput.value : parseFloat(amountInput.value).toFixed(2);\n    }\n  };\n  var displayErrors = function displayErrors(errors) {\n    for (var i = 0; i < errors.length; i++) {\n      var errorEl = document.querySelector(\"[\".concat(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.inputError, \"=\\\"\").concat(errors[i].field, \"\\\"]\"));\n      errorEl.innerHTML = errors[i].content;\n      errorEl.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n    }\n  };\n  var clearAllErrors = function clearAllErrors() {\n    var formErrors = document.querySelectorAll(\"[\".concat(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.inputError, \"]\"));\n    for (var i = 0; i < formErrors.length;
491 i++) {\n      formErrors[i].classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n    }\n  };\n  var getDonationAmount = function getDonationAmount() {\n    var amountRadioChecked = document.querySelector(\"\".concat(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.amountRadio, \":checked\"));\n    var donationAmount = amountRadioChecked ? amountRadioChecked.value : amountInput.value;\n    donationAmount = donationAmount.replace(',', '.');\n    if ((0,_utils_validate__WEBPACK_IMPORTED_MODULE_1__.isEmpty)(donationAmount)) {\n      return 0;\n    }\n    if (currencyData.currency === 'JPY') {\n      donationAmount = donationAmount.replace('.', '');\n    }\n    return parseFloat(donationAmount);\n  };\n  var getValidationErrors = function getValidationErrors() {\n    var errors = [];\n    var donationAmount = getDonationAmount();\n    if (donationAmount === 0) {\n      errors.push({\n        field: 'amount',\n        content: _utils__WEBPACK_IMPORTED_MODULE_0__.strings.donation.invalidAmountError\n      });\n    } else if (donationAmount < 0 || !(0,_utils_validate__WEBPACK_IMPORTED_MODULE_1__.isNumeric)(donationAmount)) {\n      errors.push({\n        field: 'amount',\n        content: _utils__WEBPACK_IMPORTED_MODULE_0__.strings.donation.missingAmountError\n      });\n    }\n    return errors;\n  };\n  var validateForm = function validateForm() {\n    var validationErrors = getValidationErrors();\n    clearAllErrors();\n    if (validationErrors.length > 0) {\n      displayErrors(validationErrors);\n      return false;\n    }\n    return true;\n  };\n  var initValidationOnChange = function initValidationOnChange() {\n    amountInput.addEventListener('blur', validateForm);\n  };\n  var handleFormSubmit = function handleFormSubmit(e) {\n    if (validateForm()) {\n      setFormLoading(true);\n      amountFinalInput.value = getDonationAmount();\n    } else {\n      initValidationOnChange();\n      e.preventDefault();\n    }\n  };\n  var setEvents = function setEvents() {\n    // Amount inputs\n    for (var i = 0; i < amountRadios.length; i++) {\n      amountRadios[i].addEventListener('change', handleAmountRadioChange);\n    }\n    amountInput.addEventListener('focus', handleAmountInputFocus);\n    amountInput.addEventListener('blur', handleAmountInputBlur);\n\n    // Form submit\n    form.addEventListener('submit', handleFormSubmit);\n  };\n  setEvents();\n};\nvar donation = function donation() {\n  if (document.querySelector(_constants__WEBPACK_IMPORTED_MODULE_2__.selectors.form)) {\n    setupDonationForm();\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/forms/donation/index.js?");
492
493/***/ }),
494
495/***/ "./src/scripts/components/forms/newsletter/constants.js":
496/*!**************************************************************!*\
497  !*** ./src/scripts/components/forms/newsletter/constants.js ***!
498  \**************************************************************/
499/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
500
501"use strict";
502eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"selectors\": () => (/* binding */ selectors)\n/* harmony export */ });\nvar dataPrefixNewsletterForm = 'data-newsletter';\nvar dataPrefixForm = 'data-form';\nvar selectors = {\n  formContainer: \"[\".concat(dataPrefixNewsletterForm, \"=\\\"form-container\\\"]\"),\n  formSubmitButton: \"[\".concat(dataPrefixNewsletterForm, \"=\\\"submit\\\"]\"),\n  emailInput: \"[\".concat(dataPrefixNewsletterForm, \"=\\\"email\\\"]\"),\n  marketingEmailsCheckbox: \"[\".concat(dataPrefixNewsletterForm, \"=\\\"marketing-emails\\\"]\"),\n  inputError: \"\".concat(dataPrefixForm, \"-error\"),\n  responseSuccess: \"[\".concat(dataPrefixForm, \"=\\\"response-success\\\"]\"),\n  responseError: \"[\".concat(dataPrefixForm, \"=\\\"response-error\\\"]\"),\n  responseErrorContent: \"[\".concat(dataPrefixForm, \"=\\\"response-error-content\\\"]\")\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/forms/newsletter/constants.js?");
503
504/***/ }),
505
506/***/ "./src/scripts/components/forms/newsletter/index.js":
507/*!**********************************************************!*\
508  !*** ./src/scripts/components/forms/newsletter/index.js ***!
509  \**********************************************************/
510/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
511
512"use strict";
513eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"newsletter\": () => (/* binding */ newsletter),\n/* harmony export */   \"setupNewsletterForm\": () => (/* binding */ setupNewsletterForm)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils */ \"./src/scripts/utils/index.js\");\n/* harmony import */ var _utils_validate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/validate */ \"./src/scripts/utils/validate.js\");\n/* harmony import */ var _utils_newsletterService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/newsletterService */ \"./src/scripts/utils/newsletterService.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./constants */ \"./src/scripts/components/forms/newsletter/constants.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context);
513 if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEac
513h(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, \"catch\": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\n\n\n\nvar setupNewsletterForm = function setupNewsletterForm(newsletterForm
513ContainerEl) {\n  var formContainer = newsletterFormContainerEl;\n  var form = formContainer.querySelector('form');\n  var emailInput = formContainer.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.emailInput);\n  var formSubmitButton = formContainer.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.formSubmitButton);\n  var responseSuccess = formContainer.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.responseSuccess);\n  var responseError = formContainer.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.responseError);\n  var responseErrorContent = formContainer.querySelector(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.responseErrorContent);\n  if (!form || !emailInput || !formSubmitButton) {\n    console.error('DOM Elements for newsletter components do not exist.');\n    return;\n  }\n  if (!responseSuccess || !responseError || !responseErrorContent) {\n    console.error('DOM Elements for form responses do not exist.');\n    return;\n  }\n  var setFormLoading = function setFormLoading(loading) {\n    if (loading) {\n      formSubmitButton.disabled = true;\n      formSubmitButton.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading);\n    } else {\n      formSubmitButton.disabled = false;\n      formSubmitButton.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading);\n    }\n  };\n  var clearAllErrors = function clearAllErrors() {\n    var formErrors = formContainer.querySelectorAll(\"[\".concat(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.inputError, \"]\"));\n    for (var i = 0; i < formErrors.length; i++) {\n      formErrors[i].classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n    }\n  };\n  var clearResponse = function clearResponse() {\n    responseSuccess.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n    responseError.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n  };\n  var displayErrors = function displayErrors(errors) {\n    for (var i = 0; i < errors.length; i++) {\n      var errorEl = formContainer.querySelector(\"[\".concat(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.inputError, \"=\\\"\").concat(errors[i].field, \"\\\"]\"));\n      errorEl.innerHTML = errors[i].content;\n      errorEl.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n    }\n  };\n  var setErrorResponseContent = function setErrorResponseContent(error) {\n    if (!error.response || !error.response.data) {\n      responseErrorContent.innerHTML = \"<li>\".concat(_utils__WEBPACK_IMPORTED_MODULE_0__.strings.generalError, \"</li>\");\n      return;\n    }\n    responseErrorContent.innerHTML = '';\n    for (var key in error.response.data) {\n      responseErrorContent.innerHTML += \"<li>\".concat(error.response.data[key], \"</li>\");\n    }\n  };\n  var displayErrorResponse = function displayErrorResponse(error) {\n    clearResponse();\n    setErrorResponseContent(error);\n    responseError.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n  };\n  var displaySuccessResponse = function displaySuccessResponse() {\n    clearResponse();\n    responseSuccess.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n  };\n  var getValidationErrors = function getValidationErrors() {\n    var errors = [];\n    if ((0,_utils_validate__WEBPACK_IMPORTED_MODULE_1__.isEmpty)(emailInput.value)) {\n      errors.push({\n        field: 'email',\n        content: _utils__WEBPACK_IMPORTED_MODULE_0__.strings.newsletter.missingEmailError\n      });\n    } else if (!(0,_utils_validate__WEBPACK_IMPORTED_MODULE_1__.isEmail)(emailInput.value)) {\n      errors.push({\n        field: 'email',\n        content: _utils__WEBPACK_IMPORTED_MODULE_0__.strings.newsletter.invalidEmailError\n      });\n    }\n    return errors;\n  };\n  var validateForm = function validateForm() {\n    var validationErrors = getValidationErrors();\n    clearAllErrors();\n    if (validationErrors.length > 0) {\n      displayErrors(validationErrors);\n      return false;\n    }\n    return true;\n  };\n  var initValidationOnChange = function initValidationOnChange() {\n    emailInput.addEventListener('blur', validateForm);\n  };\n  var handleFormSubmit = function handleFormSubmit(e) {\n    e.preventDefault();\n    if (!validateForm()) {\n      initValidationOnChange();\n      return;\n    }\n    clearResponse();\n    setFormLoading(true);\n    grecaptcha.enterprise.ready( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n      var token;\n      return _regeneratorRuntime().wrap(function _callee$(_context) {\n        while (1) switch (_context.prev = _context.next) {\n          case 0:\n            _context.next = 2;\n            return grecaptcha.enterprise.execute(window.recaptchaSiteKey, {\n              action: 'newsletterForm'\n            });\n          case 2:\n            token = _context.sent;\n            _utils_newsletterService__WEBPACK_IMPORTED_MODULE_2__.newsletterService.register({\n              email: emailInput.value\n            }, token).then(function (response) {\n              displaySuccessResponse();\n              setFormLoading(false);\n            })[\"catch\"](function (error) {\n              setFormLoading(false);\n              displayErrorResponse(error);\n            });\n          case 4:\n          case \"end\":\n            return _context.stop();\n        }\n      }, _callee);\n    }
513)));\n  };\n  var setEvents = function setEvents() {\n    form.addEventListener('submit', handleFormSubmit);\n  };\n  setEvents();\n};\nvar newsletter = function newsletter() {\n  var newsletterForms = document.querySelectorAll(_constants__WEBPACK_IMPORTED_MODULE_3__.selectors.formContainer);\n  for (var i = 0; i < newsletterForms.length; i++) {\n    setupNewsletterForm(newsletterForms[i]);\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/forms/newsletter/index.js?");
514
515/***/ }),
516
517/***/ "./src/scripts/components/input.js":
518/*!*****************************************!*\
519  !*** ./src/scripts/components/input.js ***!
520  \*****************************************/
521/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
522
523"use strict";
524eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"input\": () => (/* binding */ input),\n/* harmony export */   \"setInputFocus\": () => (/* binding */ setInputFocus)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar selectors = {\n  container: '[data-input=\"container\"]',\n  input: '[data-input=\"input\"]'\n};\nvar setInputFocus = function setInputFocus() {\n  var containers = document.querySelectorAll(selectors.container);\n  for (var i = 0; i < containers.length; i++) {\n    containers[i].addEventListener('click', function (e) {\n      if (e.currentTarget.dataset.input === 'container') {\n        e.currentTarget.querySelector(selectors.input).focus();\n      }\n    });\n  }\n};\nvar input = function input() {\n  var containers = document.querySelectorAll(selectors.container);\n  var _loop = function _loop() {\n    var input = containers[i].querySelector(selectors.input);\n    if (input.value !== '') {\n      input.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.filled);\n    } else {\n      input.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.filled);\n    }\n    input.addEventListener('blur', function () {\n      if (input.value !== '') {\n        input.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.filled);\n      } else {\n        input.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.filled);\n      }\n    });\n  };\n  for (var i = 0; i < containers.length; i++) {\n    _loop();\n  }\n  setInputFocus();\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/input.js?");
525
526/***/ }),
527
528/***/ "./src/scripts/components/product/Product.js":
529/*!***************************************************!*\
530  !*** ./src/scripts/components/product/Product.js ***!
531  \***************************************************/
532/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
533
534"use strict";
535eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"Product\": () => (/* binding */ Product),\n/* harmony export */   \"updateDrawerDetails\": () => (/* binding */ updateDrawerDetails)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/* harmony import */ var _toggleManager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../toggleManager */ \"./src/scripts/components/toggleManager.js\");\n/* harmony import */ var _Variants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Variants */ \"./src/scripts/components/product/Variants.js\");\n/* harmony import */ var _ProductGallery__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ProductGallery */ \"./src/scripts/components/product/ProductGallery.js\");\n/* harmony import */ var _utils_cartService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/cartService */ \"./src/scripts/utils/cartService.js\");\n/* harmony import */ var _utils_accountService__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/accountService */ \"./src/scripts/utils/accountService.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\n\n\n\n\n\nvar selectors = {\n  productJSON: '[data-product=\"json\"]',\n  quantity: '[data-product=\"quantity\"]',\n  addToCartButton: '[data-product=\"add\"]',\n  error: '[data-product=\"error\"]',\n  quantityError: '[data-product=\"quantity-error\"]',\n  drawerImageContainer: '[data-product-info=\"image-container\"]',\n  priceInfo: '[data-product-info=\"price\"]',\n  titleInfo: '[data-product-info=\"title\"]',\n  quantityInfo: '[data-product-info=\"quantity\"]',\n  quantityCartInfo: '[data-product-info=\"cart-quantity\"]',\n  priceCartInfo: '[data-product-info=\"cart-price\"]',\n  redeemForm: '[data-product=\"redeem\"]',\n  variantRedeem: '[data-product=\"variant-redeem\"]',\n  membersOnly: '[data-product=\"members-only\"]',\n  notLoggedIn: '[data-product=\"not-logged-in\"]',\n  nonMember: '[data-product=\"non-member\"]',\n  changeTierButton: '[data-product=\"change-tier\"]',\n  options: '[data-product=\"options\"]',\n  cta: '[data-product=\"cta\"]',\n  currencyIso: '[data-currency
535]',\n  readMore: '[data-read]',\n  textDescription: '[data-product=\"text\"]'\n};\nvar updateDrawerDetails = function updateDrawerDetails(data) {\n  var item = data.items[0];\n  var drawerImageContainer = document.querySelector(selectors.drawerImageContainer);\n  var titleInfo = document.querySelector(selectors.titleInfo);\n  var priceInfo = document.querySelector(selectors.priceInfo);\n  var quantityInfo = document.querySelector(selectors.quantityInfo);\n  var quantityCartInfo = document.querySelector(selectors.quantityCartInfo);\n  var priceCartInfo = document.querySelector(selectors.priceCartInfo);\n  var currencyIsoSelector = document.querySelector(selectors.currencyIso);\n  var currencyIso = currencyIsoSelector ? currencyIsoSelector.dataset.currency : '';\n  if (drawerImageContainer) {\n    if (item.image) {\n      drawerImageContainer.innerHTML = \"<img src=\\\"\".concat(item.image, \"\\\" alt>\");\n    } else {\n      drawerImageContainer.innerHTML = '';\n    }\n  }\n  if (titleInfo) {\n    titleInfo.innerHTML = item.title;\n  }\n  if (priceInfo) {\n    priceInfo.innerHTML = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(item.final_price, data.cart.cart_currency);\n  }\n  if (quantityInfo) {\n    quantityInfo.innerHTML = item.quantity;\n  }\n  if (quantityCartInfo) {\n    quantityCartInfo.innerHTML = \"\".concat(data.cart.item_count, \" \").concat(data.cart.item_count > 1 ? _utils__WEBPACK_IMPORTED_MODULE_0__.strings.items : _utils__WEBPACK_IMPORTED_MODULE_0__.strings.item);\n  }\n  if (priceCartInfo) {\n    priceCartInfo.innerHTML = \"\".concat(currencyIso, \" \").concat((0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(data.cart.items_subtotal_price, data.cart.cart_currency));\n  }\n};\nvar Product = /*#__PURE__*/function () {\n  function Product(productContainer) {\n    _classCallCheck(this, Product);\n    this.productContainer = productContainer;\n    this.productObject = this.getProduct();\n    if (!this.productObject) {\n      console.error('Product JSON does not exist.');\n      return;\n    }\n    if (this.productObject.images.length > 0) {\n      this.productGallery = new _ProductGallery__WEBPACK_IMPORTED_MODULE_3__.ProductGallery({\n        selectedVariant: this.productObject.selected_or_first_available_variant,\n        productContainer: this.productContainer\n      });\n    }\n    this.variants = new _Variants__WEBPACK_IMPORTED_MODULE_2__.Variants({\n      product: this.productObject,\n      onVariantChange: this.variantChangeCallback.bind(this),\n      productContainer: this.productContainer\n    });\n    this.handleAddToCartClick = this.handleAddToCartClick.bind(this);\n    this.handleRedeemFormSubmit = this.handleRedeemFormSubmit.bind(this);\n    this.onAddToCart = this.onAddToCart.bind(this);\n    this.onAddToCartError = this.onAddToCartError.bind(this);\n    this.initDescription();\n    this.initAddToCart();\n    this.initRedeemForm();\n    if (this.productObject.members_only === true && this.getProduct().available) {\n      this.verifyPermission();\n    }\n  }\n  _createClass(Product, [{\n    key: \"getProduct\",\n    value: function getProduct() {\n      var productJSON = this.productContainer.querySelector(selectors.productJSON);\n      if (productJSON) {\n        return JSON.parse(productJSON.innerHTML);\n      }\n      return false;\n    }\n  }, {\n    key: \"variantChangeCallback\",\n    value: function variantChangeCallback(variant) {\n      if (this.productGallery) {\n        this.productGallery.updateImagesByVariant(variant);\n      }\n    }\n  }, {\n    key: \"toggleMembersOnlyContent\",\n    value: function toggleMembersOnlyContent(display) {\n      var membersOnly = document.querySelector(selectors.membersOnly);\n      var options = document.querySelector(selectors.options);\n      var cta = document.querySelector(selectors.cta);\n      if (display) {\n        options && options.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n        cta && cta.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n        membersOnly && membersOnly.remove();\n      } else {\n        membersOnly && membersOnly.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasse
535s.hidden);\n        options && options.remove();\n        cta && cta.remove();\n      }\n    }\n  }, {\n    key: \"toggleNotLoggedInContent\",\n    value: function toggleNotLoggedInContent(display) {\n      var notLoggedInElements = document.querySelectorAll(selectors.notLoggedIn);\n      if (display === true) {\n        notLoggedInElements.forEach(function (el) {\n          el && el.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n        });\n      } else {\n        notLoggedInElements.forEach(function (el) {\n          el && el.remove();\n        });\n      }\n    }\n  }, {\n    key: \"toggleNonMemberContent\",\n    value: function toggleNonMemberContent(display) {\n      var nonMemberElements = document.querySelectorAll(selectors.nonMember);\n      if (display === true) {\n        nonMemberElements.forEach(function (el) {\n          el && el.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n        });\n      } else {\n        nonMemberElements.forEach(function (el) {\n          el && el.remove();\n        });\n      }\n    }\n  }, {\n    key: \"toggleChangeTierButton\",\n    value: function toggleChangeTierButton(display) {\n      var changeTierButton = document.querySelector(selectors.changeTierButton);\n      if (display) {\n        changeTierButton && changeTierButton.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n      } else {\n        changeTierButton && changeTierButton.remove();\n      }\n    }\n  }, {\n    key: \"onVerifyPermissionSuccess\",\n    value: function onVerifyPermissionSuccess(account) {\n      if (!account.subscription || account.subscription.type !== 'Active') {\n        this.toggleNonMemberContent(true);\n        this.toggleMembersOnlyContent(false);\n        return;\n      }\n      if (this.getProduct().available_for_all_tiers === true) {\n        this.toggleMembersOnlyContent(true);\n        return;\n      }\n      var isRequiredTier = this.getProduct().required_tiers.some(function (tier) {\n        return tier.id === account.subscription.tier.id;\n      });\n      if (isRequiredTier) {\n        this.toggleMembersOnlyContent(true);\n        return;\n      }\n      this.toggleChangeTierButton(true);\n      this.toggleMembersOnlyContent(false);\n    }\n  }, {\n    key: \"verifyPermission\",\n    value: function verifyPermission() {\n      var _this = this;\n      _utils_accountService__WEBPACK_IMPORTED_MODULE_5__.accountService.getAccount().then(function (response) {\n        _this.onVerifyPermissionSuccess(response.data);\n      })[\"catch\"](function () {\n        _this.toggleNonMemberContent(true);\n        _this.toggleNotLoggedInContent(true);\n        _this.toggleMembersOnlyContent(false);\n      });\n    }\n  }, {\n    key: \"initAddToCart\",\n    value: function initAddToCart() {\n      var addToCartButton = this.productContainer.querySelector(selectors.addToCartButton);\n      if (!addToCartButton) return;\n      addToCartButton.addEventListener('click', this.handleAddToCartClick);\n    }\n  }, {\n    key: \"handleAddToCartClick\",\n    value: function handleAddToCartClick(e) {\n      e.preventDefault();\n      if (this.variants.variantErrors()) return;\n      var selectedVariant = this.variants.getSelectedVariant();\n      var quantity = this.getQuantityFromInput();\n      if (!quantity || isNaN(quantity) || parseInt(quantity) <= 0) {\n        this.setError(_utils__WEBPACK_IMPORTED_MODULE_0__.strings.missingQuantityError);\n        return;\n      }\n      this.addToCart(selectedVariant.id, quantity);\n    }\n  }, {\n    key: \"addToCart\",\n    value: function addToCart(variantId, quantity) {\n      var _this2 = this;\n      this.setError(null);\n      this.setAddToCartButtonLoading(true);\n      _utils_cartService__WEBPACK_IMPORTED_MODULE_4__.cartService.addToCart([{\n        id: variantId,\n        quantity: parseInt(quantity)\n      }], window.location.search).then(this.onAddToCart)[\"catch\"](this.onAddToCartError).then(function () {\n        _this2.setAddToCartButtonLoading(false);\n      });\n    }\n  }, {\n    key: \"onAddToCart\",\n    value: function onAddToCart(response) {\n      updateDrawerDetails(response.data);\n      (0,_toggleManager__WEBPACK_IMPORTED_MODULE_1__.toggleTarget)('data-drawer', 'product');\n      (0,_utils__WEBPACK_IMPORTED_MODULE_0__.setCartWidgetQuantity)(response.data.cart.item_count);\n    }\n  }, {\n    key: \"onAddToCartError\",\n    value: function onAddToCartError(error) {\n      if (!error.response || !error.response.data || !error.response.data.message) {\n        this.setError(_utils__WEBPACK_IMPORTED_MODULE_0__.strings.generalError);\n        return;\n      }\n      this.setError(\"\".concat(error.response.data.message, \": \").concat(error.response.data.description));\n    }\n  }, {\n    key: \"getQuantityFromInput\",\n    value: function getQuantityFromInput() {\n      var quantityElem = this.productC
535ontainer.querySelector(selectors.quantity);\n      var quantity = quantityElem ? quantityElem.options[quantityElem.selectedIndex].value : 1;\n      if (quantity === 'more') {\n        var inputQuantity = this.productContainer.querySelector(\"[data-select-input=\\\"\".concat(quantityElem.dataset.triggerInput, \"\\\"] input\"));\n        quantity = inputQuantity.value;\n      }\n      return quantity;\n    }\n  }, {\n    key: \"setAddToCartButtonLoading\",\n    value: function setAddToCartButtonLoading(loading) {\n      var button = this.productContainer.querySelector(selectors.addToCartButton);\n      if (!button) return;\n      if (loading === true) {\n        if (!button.classList.contains(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading)) {\n          button.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading);\n        }\n        button.disabled = true;\n        return;\n      }\n      button.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.loading);\n      button.disabled = false;\n    }\n  }, {\n    key: \"setError\",\n    value: function setError(text) {\n      var errorElem = this.productContainer.querySelector(selectors.error);\n      if (!errorElem) return;\n      if (!text) {\n        errorElem.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n        errorElem.innerHTML = '';\n        return;\n      }\n      errorElem.innerHTML = text;\n      if (!errorElem.classList.contains(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible)) {\n        errorElem.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n      }\n    }\n  }, {\n    key: \"initRedeemForm\",\n    value: function initRedeemForm() {\n      var redeemForm = this.productContainer.querySelector(selectors.redeemForm);\n      if (!redeemForm) return;\n      redeemForm.addEventListener('submit', this.handleRedeemFormSubmit);\n    }\n  }, {\n    key: \"handleRedeemFormSubmit\",\n    value: function handleRedeemFormSubmit(e) {\n      e.preventDefault();\n      this.setError(null);\n      var variantRedeem = this.productContainer.querySelector(selectors.variantRedeem);\n      if (!variantRedeem) return;\n      if (this.variants.variantErrors()) return;\n      var selectedVariant = this.variants.getSelectedVariant();\n      variantRedeem.value = selectedVariant.id;\n      e.target.submit();\n    }\n  }, {\n    key: \"initDescription\",\n    value: function initDescription() {\n      var readMore = this.productContainer.querySelector(selectors.readMore);\n      if (!readMore) return;\n      var textDescription = this.productContainer.querySelector(selectors.textDescription);\n      var textDescriptionHeight = textDescription.parentNode.classList.contains('featured-product-info__description--small') ? 72 : 140;\n      var action = function action() {\n        if (textDescription.getBoundingClientRect().height > textDescriptionHeight) {\n          if (readMore.classList.contains('hidden')) readMore.classList.remove('hidden');\n          textDescription.parentNode.style.maskImage = 'linear-gradient(to top, rgba(0,0,0,0), #000 50%)';\n          textDescriptionHeight == 72 ? textDescription.parentNode.classList.add('featured-product-info__description--small') : textDescription.parentNode.classList.add('featured-product-info__description--large');\n        } else {\n          if (!readMore.classList.contains('hidden')) readMore.classList.add('hidden');\n          textDescription.parentNode.classList.remove('featured-product-info__description--small') || textDescription.parentNode.classList.remove('featured-product-info__description--large');\n          textDescription.parentNode.style.maskImage = '';\n        }\n      };\n      window.addEventListener('resize', action);\n      action();\n    }\n  }]);\n  return Product;\n}();\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/Product.js?");
536
537/***/ }),
538
539/***/ "./src/scripts/components/product/ProductGallery.js":
540/*!**********************************************************!*\
541  !*** ./src/scripts/components/product/ProductGallery.js ***!
542  \**********************************************************/
543/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
544
545"use strict";
546eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"ProductGallery\": () => (/* binding */ ProductGallery)\n/* harmony export */ });\n/* harmony import */ var _Carousel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Carousel */ \"./src/scripts/components/Carousel.js\");\n/* harmony import */ var _ImageZoom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../ImageZoom */ \"./src/scripts/components/ImageZoom.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./src/scripts/components/product/constants.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\n\n\nvar ProductGallery = /*#__PURE__*/function () {\n  function ProductGallery(config) {\n    _classCallCheck(this, ProductGallery);\n    this.productContainer = config.productContainer;\n    this.mainConfig = (0,_constants__WEBPACK_IMPORTED_MODULE_2__.mainConfig)(this.productContainer);\n    this.thumbnailsConfig = (0,_constants__WEBPACK_IMPORTED_MODULE_2__.thumbnailsConfig)(this.productContainer);\n    this.currentGalleryImages = config.selectedVariant.images;\n    this.thumbnailsGallery = new _Carousel__WEBPACK_IMPORTED_MODULE_0__.Carousel({\n      selectors: _constants__WEBPACK_IMPORTED_MODULE_2__.thumbnailsSelectors,\n      config: this.thumbnailsConfig,\n      productContainer: this.productContainer\n    });\n    this.productGallery = new _Carousel__WEBPACK_IMPORTED_MODULE_0__.Carousel({\n      selectors: _constants__WEBPACK_IMPORTED_MODULE_2__.mainSelectors,\n      config: this.mainConfig,\n      productContainer: this.productContainer\n    });\n    this.setCarouselIndexChangedCallback();\n    this.buildGalleryZoom();\n    this.addEventListeners();\n    this.updateImagesByVariant = this.updateImagesByVariantInstance.bind(this);\n  }\n  _createClass(ProductGallery, [{\n    key: \"isDesktopMode\",\n    value: function isDesktopMode() {\n      return window.matchMedia(_constants__WEBPACK_IMPORTED_MODULE_2__.desktopBreakpoint).matches;\n    }\n  }, {\n    key: \"addEventListeners\",\n    value: function addEventListeners() {\n      this.mql = window.matchMedia(_constants__WEBPACK_IMPORTED_MODULE_2__.desktopBreakpoint);
546\n      try {\n        this.mql.addEventListener('change', this.handleModeChange.bind(this));\n      } catch (error1) {\n        try {\n          this.mql.addListener(this.handleModeChange.bind(this));\n        } catch (error2) {\n          console.error(error2);\n        }\n      }\n    }\n  }, {\n    key: \"handleModeChange\",\n    value: function handleModeChange() {\n      this.thumbnailsGallery.setConfig(this.thumbnailsConfig);\n      this.thumbnailsGallery.rebuild(null, 'thumbnailsConfig');\n      this.productGallery.rebuild(null, 'mainConfig');\n      this.setCarouselIndexChangedCallback();\n      this.rebuildGalleryZoom();\n    }\n  }, {\n    key: \"updateImages\",\n    value: function updateImages(images) {\n      this.thumbnailsGallery.rebuild(images, 'thumbnailsConfig');\n      this.productGallery.rebuild(images, 'mainConfig');\n      this.setCarouselIndexChangedCallback();\n      this.rebuildGalleryZoom();\n    }\n  }, {\n    key: \"updateImagesByVariantInstance\",\n    value: function updateImagesByVariantInstance(variant) {\n      if (!variant.images || variant.images.length < 1) return;\n      if (this.currentGalleryImages !== undefined && variant.images !== undefined && variant.images.length === this.currentGalleryImages.length) {\n        var sameGallery = true;\n        for (var i = 0; i < variant.images.length; i++) {\n          if (variant.images[i].src !== this.currentGalleryImages[i].src) {\n            sameGallery = false;\n            break;\n          }\n        }\n        if (sameGallery) return;\n      }\n      this.currentGalleryImages = variant.images;\n      var newImages = [];\n      for (var _i = 0; _i < variant.images.length;
546 _i++) {\n        newImages.push(variant.images[_i].src);\n      }\n      this.updateImages(newImages);\n    }\n  }, {\n    key: \"setCarouselIndexChangedCallback\",\n    value: function setCarouselIndexChangedCallback() {\n      this.productGallery.instance.events.on('indexChanged', this.carouselIndexChangedCallback.bind(this));\n    }\n  }, {\n    key: \"carouselIndexChangedCallback\",\n    value: function carouselIndexChangedCallback() {\n      this.thumbnailsGallery.instance.goTo(this.productGallery.instance.getInfo().displayIndex - 2);\n    }\n  }, {\n    key: \"buildGalleryZoom\",\n    value: function buildGalleryZoom() {\n      this.imageZoom = new _ImageZoom__WEBPACK_IMPORTED_MODULE_1__.ImageZoom({\n        selector: _constants__WEBPACK_IMPORTED_MODULE_2__.mainSelectors.imgHolder,\n        productContainer: this.productContainer\n      });\n    }\n  }, {\n    key: \"rebuildGalleryZoom\",\n    value: function rebuildGalleryZoom() {\n      this.imageZoom.rebuild(this.productContainer);\n    }\n  }]);\n  return ProductGallery;\n}();\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/ProductGallery.js?");
547
548/***/ }),
549
550/***/ "./src/scripts/components/product/Variants.js":
551/*!****************************************************!*\
552  !*** ./src/scripts/components/product/Variants.js ***!
553  \****************************************************/
554/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
555
556"use strict";
557eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"Variants\": () => (/* binding */ Variants)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\nvar selectors = {\n  singleOption: '[data-product=\"single-option-selector\"]',\n  price: '[data-product=\"price\"]',\n  compareAtPrice: '[data-product=\"compare-at-price\"]',\n  ctaButton: '[data-cta=\"cta\"]',\n  ctaLabel: 'data-cta-label',\n  variantError: '[data-product=\"variant-error\"]',\n  variantErrorIndex: 'data-variant-error-index',\n  selectedOptionValueLabel: 'data-product-selected-option-value-label',\n  selectedCurrency: 'data-currency'\n};\nvar Variants = /*#__PURE__*/function () {\n  function Variants(config) {\n    _classCallCheck(this, Variants);\n    this.product = config.product;
557\n    this.productContainer = config.productContainer;\n    this.singleVariantProduct = this.product.variants.length === 1;\n    if (!this.singleVariantProduct) {\n      this.onVariantChangeCallback = config.onVariantChange;\n      this.initVariants();\n    }\n    this.getSelectedVariant = this.getSelectedVariantInstance.bind(this);\n    this.variantErrors = this.variantErrorsInstance.bind(this);\n  }\n  _createClass(Variants, [{\n    key: \"initVariants\",\n    value: function initVariants() {\n      var _this = this;\n      this.singleOptions = this.productContainer.querySelectorAll(selectors.singleOption);\n      for (var i = 0; i < this.singleOptions.length; i++) {\n        this.singleOptions[i].addEventListener('change', function (e) {\n          var selectedOption = {\n            index: e.currentTarget.dataset.index,\n            value: e.currentTarget.value\n          };\n          _this.onSelectChange(selectedOption);\n        });\n      }\n      this.currentGalleryImages = this.product.selected_or_first_available_variant.images;\n      this.productOptionsData = this.getProductOptionsData();\n\n      // Initially update secondary options\n      if (this.product.options.length > 1) {\n        this.updateVariantOptions();\n      }\n      this.syncVariantOptions();\n    }\n  }, {\n    key: \"getProductOptionsData\",\n    value: function getProductOptionsData() {\n      var optionsData = {};\n\n      // Build an object of all variant options\n      for (var i = 0; i < this.product.options_with_values.length; i++) {\n        var optionValues = this.product.options_with_values[i].values;\n        for (var j = 0; j < optionValues.length; j++) {\n          if (i === 0) {\n            // option1\n            optionsData[optionValues[j]] = {\n              available: 0\n            };\n            if (this.product.options.length > 1) {\n              optionsData[optionValues[j]].options = {};\n            }\n          } else if (i === 1) {\n            // option2\n            for (var key in optionsData) {\n              optionsData[key].options[optionValues[j]] = {\n                available: 0\n              };\n              if (this.product.options.length > 2) {\n                optionsData[key].options[optionValues[j]].options = {};\n              }\n            }\n          } else if (i === 2) {\n            // option3\n            for (var _key in optionsData) {\n              for (var key2 in optionsData[_key].options) {\n                optionsData[_key].options[key2].options[optionValues[j]] = {\n                  available: 0\n                };\n              }\n            }\n          }\n        }\n      }\n\n      // Fill out with the availability data\n      for (var _i = 0; _i < this.product.variants.length;
557 _i++) {\n        if (!this.product.variants[_i].available || !this.product.variants[_i]['option1']) continue;\n        optionsData[this.product.variants[_i]['option1']].available++;\n        if (this.product.options.length < 2) continue;\n        optionsData[this.product.variants[_i]['option1']].options[this.product.variants[_i]['option2']].available++;\n        if (this.product.options.length < 3) continue;\n        optionsData[this.product.variants[_i]['option1']].options[this.product.variants[_i]['option2']].options[this.product.variants[_i]['option3']].available++;\n      }\n\n      // Set the global object\n      return optionsData;\n    }\n  }, {\n    key: \"onSelectChange\",\n    value: function onSelectChange(selectedOption) {\n      this.selectedVariant = this.getVariantFromOptions();\n      if (this.product.options.length > 1) {\n        this.updateVariantOptions(selectedOption);\n      }\n      if (this.selectedVariant !== false) {\n        if (this.selectedVariant.available === false) {\n          this.variantOutOfStock();\n        } else {\n          this.variantAvailable();\n        }\n      } else {\n        // Variant does not exist at all\n        this.variantUnavailable();\n      }\n\n      // Set option selection label\n      this.updateOptionSelectionLabels();\n\n      // Set price\n      if (!this.product.gift) {\n        this.updatePrice();\n      }\n\n      // Clear selection errors\n      this.clearSelectedOptionErrors(selectedOption);\n\n      // Variant change callback\n      if (this.onVariantChangeCallback !== undefined) {\n        this.onVariantChangeCallback(this.selectedVariant);\n      }\n    }\n  }, {\n    key: \"getUnavailableOptions\",\n    value: function getUnavailableOptions(selectedOption) {\n      var unavailableOptions = {};\n      var selectedOptions = this.getSelectedOptions(selectedOption);\n      if (Object.keys(selectedOptions).length < 1) return unavailableOptions;\n\n      // Prepare object\n      for (var optionIndex = 1; optionIndex <= this.product.options.length; optionIndex++) {\n        unavailableOptions[\"option\".concat(optionIndex, \"_\").concat(this.product.id)] = [];\n      }\n\n      // Update option inputs\n\n      // option1\n      for (var key in this.productOptionsData) {\n        if (this.productOptionsData[key].available === 0) {\n          unavailableOptions[\"option1_\".concat(this.product.id)].push(key);\n        }\n      }\n\n      // option2\n      if (this.product.options.length > 1) {\n        var object = this.productOptionsData[selectedOptions[\"option1_\".concat(this.product.id)]].options;\n        for (var _key2 in object) {\n          if (object[_key2].available === 0) {\n            unavailableOptions[\"option2_\".concat(this.product.id)].push(_key2);\n          }\n        }\n      }\n\n      // option3\n      if (this.product.options.length > 2) {\n        var _object = this.productOptionsData[selectedOptions[\"option1_\".concat(this.product.id)]].options[selectedOptions[\"option2_\".concat(this.product.id)]].options;\n        for (var _key3 in _object) {\n          if (_object[_key3].available === 0) {\n            unavailableOptions[\"option3_\".concat(this.product.id)].push(_key3);\n          }\n        }\n      }\n      return unavailableOptions;\n    }\n  }, {\n    key: \"updateVariantOptions\",\n    value: function updateVariantOptions(selectedOption) {\n      // Clear previous unavailable\n      for (var optionIndex = 1; optionIndex <= this.product.options.length; optionIndex++) {\n        var optionInputs = this.productContainer.querySelectorAll(\"[data-index=\\\"option\".concat(optionIndex, \"_\").concat(this.product.id, \"\\\"]\"));\n        if (optionInputs) {\n          if (optionInputs[0].getAttribute('type') === 'radio') {\n            for (var i = 0; i < optionInputs.length; i++) {\n              optionInputs[i].classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.unavailable);\n              optionInputs[i].dataset.testid = \"product.size\";\n            }\n          } else {\n            var options = optionInputs[0].querySelectorAll('option');\n            for (var _i2 = 0; _i2 < options.length; _i2++) {\n              options[_i2].classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasse
557s.unavailable);\n              options[_i2].innerHTML = options[_i2].innerHTML.replace(_utils__WEBPACK_IMPORTED_MODULE_0__.strings.soldOutSuffix, '');\n            }\n          }\n        }\n      }\n\n      // Mark new unavailable\n      var unavailableOptions = this.getUnavailableOptions(selectedOption);\n      if (Object.keys(unavailableOptions).length < 1) return;\n\n      // Proceed\n      for (var key in unavailableOptions) {\n        for (var _i3 = 0; _i3 < unavailableOptions[key].length; _i3++) {\n          var optionInput = this.productContainer.querySelector(\"\".concat(selectors.singleOption, \"[data-index=\\\"\").concat(key, \"\\\"]\"));\n          if (optionInput.getAttribute('type') === 'radio') {\n            optionInput = this.productContainer.querySelector(\"input[data-index='\".concat(key, \"'][value=\\\"\").concat((0,_utils__WEBPACK_IMPORTED_MODULE_0__.cssEscape)(unavailableOptions[key][_i3]), \"\\\"]\"));\n            if (!optionInput) {\n              var inputValue = \"[value=\\\"\".concat(unavailableOptions[key][_i3], \"\\\"]\");\n              if (unavailableOptions[key][_i3].includes(\"\\\"\")) {\n                inputValue = \"[value='\".concat(unavailableOptions[key][_i3], \"']\");\n              }\n              optionInput = this.productContainer.querySelector(\"input[data-index='\".concat(key, \"']\").concat(inputValue));\n            }\n            if (optionInput) {\n              optionInput.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.unavailable);\n              optionInput.dataset.testid = \"product.size.unavailable\";\n            }\n          } else {\n            // Select - get the <option> with a specific value\n            var singleOption = optionInput.querySelector(\"[value=\\\"\".concat(unavailableOptions[key][_i3], \"\\\"]\"));\n            if (singleOption) {\n              singleOption.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.unavailable);\n              singleOption.innerHTML += _utils__WEBPACK_IMPORTED_MODULE_0__.strings.soldOutSuffix;\n            }\n          }\n        }\n      }\n    }\n  }, {\n    key: \"getVariantFromOptions\",\n    value: function getVariantFromOptions() {\n      var _this2 = this;\n      var selectedValues = this.getCurrentOptions();\n      var variants = this.product.variants;\n      var _loop = function _loop(i) {\n        var isEqual = selectedValues.every(function (values) {\n          var index = values.index.replace(\"_\".concat(_this2.product.id), '');\n          if (variants[i][index] === values.value) {\n            return true;\n          }\n        });\n        if (isEqual) {\n          return {\n            v: variants[i]\n          };\n        }\n      };\n      for (var i = 0; i < variants.length; i++) {\n        var _ret = _loop(i);\n        if (_typeof(_ret) === \"object\") return _ret.v;\n      }\n      return false;\n    }\n  }, {\n    key: \"getCurrentOptions\",\n    value: function getCurrentOptions() {\n      var currentOptions = [];\n      this.singleOptions.forEach(function (el) {\n        var type = el.getAttribute('type');\n        var option = {};\n        if (type === 'radio') {\n          if (el.checked) {\n            option.value = el.value;\n            option.index = el.dataset.index;\n            currentOptions.push(option);\n          }\n        } else if (el.value) {\n          option.value = el.value;\n          option.index = el.dataset.index;\n          currentOptions.push(option);\n        }\n      });\n      currentOptions.filter(Boolean);\n      return currentOptions;\n    }\n  }, {\n    key: \"getSelectedOptions\",\n    value: function getSelectedOptions(selectedOption) {\n      var selectedOptions = {};\n      for (var optionIndex = 1; optionIndex <= this.product.options.length; optionIndex++) {\n        if (selectedOption !== undefined && selectedOption.index === 'option' + optionIndex + '_' + this.product.id) {\n          selectedOptions['option' + optionIndex + '_' + this.product.id] = selectedOption.value;\n          continue;\n        }
557\n        var input = this.productContainer.querySelectorAll(\"[data-index=\\\"option\".concat(optionIndex, \"_\").concat(this.product.id, \"\\\"]\"));\n        if (input) {\n          if (input[0].getAttribute('type') === 'radio') {\n            input = this.productContainer.querySelector(\"[data-index=\\\"option\".concat(optionIndex, \"_\").concat(this.product.id, \"\\\"]:checked\"));\n            if (input) {\n              selectedOptions['option' + optionIndex + '_' + this.product.id] = input.value;\n            }\n          } else {\n            var _selectedOption = input[0].querySelector('option:checked');\n            if (_selectedOption) {\n              selectedOptions['option' + optionIndex + '_' + this.product.id] = _selectedOption.value;\n            }\n          }\n        }\n      }\n      return selectedOptions;\n    }\n  }, {\n    key: \"updateOptionSelectionLabels\",\n    value: function updateOptionSelectionLabels() {\n      var selectedOptions = this.getSelectedOptions();\n      for (var optionIndex = 1; optionIndex <= this.product.options.length; optionIndex++) {\n        var labelInput = this.productContainer.querySelector(\"[\".concat(selectors.selectedOptionValueLabel, \"=\\\"\").concat(optionIndex, \"\\\"]\"));\n        if (labelInput) {\n          labelInput.innerHTML = selectedOptions['option' + optionIndex + '_' + this.product.id];\n        }\n      }\n    }\n  }, {\n    key: \"getSelectedVariantInstance\",\n    value: function getSelectedVariantInstance() {\n      if (this.singleVariantProduct) {\n        return this.product.variants[0];\n      }\n      return this.getVariantFromOptions();\n    }\n  }, {\n    key: \"updatePrice\",\n    value: function updatePrice() {\n      var price = this.productContainer.querySelector(selectors.price);\n      var currencyIso = price.dataset.currency || '';\n      var compareAtPrice = document.querySelector(selectors.compareAtPrice);\n      if (this.selectedVariant === false) {\n        price.innerHTML = _utils__WEBPACK_IMPORTED_MODULE_0__.strings.unavailable;\n        if (compareAtPrice) {\n          compareAtPrice.innerHTML = \"\";\n        }\n      } else {\n        // Shopify legacy\n        if (this.selectedVariant.price.cents !== undefined) {\n          price.innerHTML = \"\".concat((0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(this.selectedVariant.price.cents, this.product.price.currency_iso), \" \").concat(currencyIso);\n          if (compareAtPrice) {\n            if (this.selectedVariant.compare_at_price !== null) {\n              compareAtPrice.innerHTML = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(this.selectedVariant.compare_at_price.cents, this.product.compare_at_price.currency_iso);\n              if (!compareAtPrice.classList.contains('product-info__price--offer')) compareAtPrice.classList.add('product-info__price--offer');\n            } else {\n              compareAtPrice.innerHTML = '';\n              compareAtPrice.classList.remove('product-info__price--offer');\n            }\n          }\n        } else {\n          price.innerHTML = \"\".concat((0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(this.selectedVariant.price, this.product.price.currency_iso), \" \").concat(currencyIso);\n          if (compareAtPrice) {\n            if (this.selectedVariant.compare_at_price !== null) {\n              compareAtPrice.innerHTML = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(this.selectedVariant.compare_at_price, this.product.compare_at_price.currency_iso);\n              if (!compareAtPrice.classList.contains('product-info__price--offer')) compareAtPrice.classList.add('product-info__price--offer');\n            } else {\n              compareAtPrice.innerHTML = '';\n              compareAtPrice.classList.remove('product-info__price--offer');\n            }\n          }\n        }\n      }\n    }\n  }, {\n    key: \"clearSelectedOptionErrors\",\n    value: function clearSelectedOptionErrors(selectedOption) {\n      var errorElems = this.productContainer.querySelector(\"\".concat(selectors.variantError, \"[\").concat(selectors.variantErrorIndex, \"=\\\"\").concat(selectedOption.index, \"\\\"]\"));\n      if (errorElems !== null) {\n        errorElems.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasse
557s.visible);\n      }\n    }\n  }, {\n    key: \"updateCtaButton\",\n    value: function updateCtaButton(enabled, label) {\n      var button = this.productContainer.querySelector(selectors.ctaButton);\n      if (!button) return;\n      if (label !== undefined) {\n        var buttonSpan = button.querySelector(\"[\".concat(selectors.ctaLabel, \"]\"));\n        buttonSpan.innerHTML = label;\n      }\n      if (enabled === false) {\n        button.setAttribute('disabled', 'disabled');\n      } else {\n        button.removeAttribute('disabled');\n      }\n    }\n  }, {\n    key: \"variantAvailable\",\n    value: function variantAvailable() {\n      var button = this.productContainer.querySelector(selectors.ctaButton);\n      if (!button) return;\n      var label = button.dataset.ctaLabel;\n      this.updateCtaButton(true, label);\n    }\n  }, {\n    key: \"variantUnavailable\",\n    value: function variantUnavailable() {\n      this.updateCtaButton(false, _utils__WEBPACK_IMPORTED_MODULE_0__.strings.unavailable);\n    }\n  }, {\n    key: \"variantOutOfStock\",\n    value: function variantOutOfStock() {\n      this.updateCtaButton(false, _utils__WEBPACK_IMPORTED_MODULE_0__.strings.outOfStock);\n    }\n  }, {\n    key: \"getVariantErrors\",\n    value: function getVariantErrors() {\n      var notSelectedOptions = [];\n      for (var j = 1; j <= this.product.options.length; j++) {\n        var options = this.productContainer.querySelectorAll(\"\".concat(selectors.singleOption, \"[data-index=\\\"option\").concat(j, \"_\").concat(this.product.id, \"\\\"]\"));\n        if (!options.length) continue;\n        if (options[0].tagName === 'SELECT') {\n          if (!options[0].value) {\n            notSelectedOptions.push('option' + j);\n          }\n        } else {\n          var selectedOption = this.productContainer.querySelector(\"\".concat(selectors.singleOption, \"[data-index=\\\"option\").concat(j, \"_\").concat(this.product.id, \"\\\"]:checked\"));\n          if (!selectedOption) {\n            notSelectedOptions.push('option' + j + '_' + this.product.id);\n          }\n        }\n      }\n      return notSelectedOptions;\n    }\n  }, {\n    key: \"clearVariantErrors\",\n    value: function clearVariantErrors() {\n      var errorElems = this.productContainer.querySelectorAll(selectors.variantError);\n      for (var i = 0; i < errorElems.length; i++) {\n        errorElems[i].classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n      }\n    }\n  }, {\n    key: \"showVariantErrors\",\n    value: function showVariantErrors(errors) {\n      for (var i = 0; i < errors.length; i++) {\n        var errorElem = this.productContainer.querySelector(\"\".concat(selectors.variantError, \"[\").concat(selectors.variantErrorIndex, \"=\\\"\").concat(errors[i], \"\\\"]\"));\n        if (errorElem !== null) {\n          errorElem.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n        }\n      }\n    }\n  }, {\n    key: \"variantErrorsInstance\",\n    value: function variantErrorsInstance() {\n      if (this.singleVariantProduct) {\n        return false;\n      }\n      this.clearVariantErrors();\n      var variantErrors = this.getVariantErrors();\n      if (variantErrors.length > 0) {\n        this.showVariantErrors(variantErrors);\n        return true;\n      }\n      return false;\n    }\n  }, {\n    key: \"syncVariantOptions\",\n    value: function syncVariantOptions() {\n      var _this3 = this;\n      var variantValue = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getURLVariantId)();\n      var variants = this.product.variants;\n      var _loop2 = function _loop2(i) {\n        if (variants[i].id === variantValue) {\n          var selectedOptions = [];\n          if (_this3.singleOptions) {\n            ['option1', 'option2', 'option3'].forEach(function (optionIndex) {\n              var optionElement = _toConsumableArray(_this3.singleOptions).find(function (option) {\n                return option.dataset.index === \"\".concat(optionIndex, \"_\").concat(_this3.product.id) && option.value === variants[i][optionIndex];\n              });\n              if (optionElement) {\n                optionElement.checked = true;\n                selectedOptions.push({\n                  index: optionElement.dataset.index,\n                  value: optionElement.value\
557n                });\n              }\n            });\n            if (selectedOptions.length > 0) {\n              selectedOptions.forEach(function (selectedOption) {\n                _this3.onSelectChange(selectedOption);\n              });\n            }\n          }\n        }\n      };\n      for (var i = 0; i < variants.length; i++) {\n        _loop2(i);\n      }\n    }\n  }]);\n  return Variants;\n}();\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/Variants.js?");
558
559/***/ }),
560
561/***/ "./src/scripts/components/product/cartProductRecommendations.js":
562/*!**********************************************************************!*\
563  !*** ./src/scripts/components/product/cartProductRecommendations.js ***!
564  \**********************************************************************/
565/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
566
567"use strict";
568eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"CartProductRecommendations\": () => (/* binding */ CartProductRecommendations)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context);
568 if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEac
568h(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, \"catch\": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\");
568 return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\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 } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\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); }\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } 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); }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nvar CartProductRecommendations = /*#__PURE__*/function (_HTMLElement) {\n  _inherits(CartProductRecommendations, _HTMLElement);\n  var _super = _createSuper(CartProductRecommendations);\n  function CartProductRecommendations() {\n    _classCallCheck(this, CartProductRecommendations);\n    return _super.call(this);\n  }\n  _createClass(CartProductRecommendations, [{\n    key: \"connectedCallback\",\n    value: function connectedCallback() {\n      this.fetchProducts();\n    }\n  }, {\n    key: \"fetchProducts\",\n    value: function () {\n      var _fetchProducts = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n        var response, data;\n        return _regeneratorRuntime().wrap(function _callee$(_context) {\n          while (1) switch (_context.prev = _context.next) {\n            case 0:\n              _context.prev = 0;\n              _context.next = 3;\n              return fetch(\"/api/recommendations?intent=complementary&currency=\".concat(currencyData.currency));\n            case 3:\n              response = _context.sent;\n              _context.next = 6;\n              return response.json();\n            case 6:\n              data = _context.sent;\n              if (data.products.length > 0) {\n                this.renderRecommendations(data.products);\n              }\n              _context.next = 13;\n              break;\n            case 10:\n              _context.prev = 10;\n              _context.t0 = _context[\"catch\"](0);
568\n              console.error('Error fetching products:', _context.t0);\n            case 13:\n            case \"end\":\n              return _context.stop();\n          }\n        }, _callee, this, [[0, 10]]);\n      }));\n      function fetchProducts() {\n        return _fetchProducts.apply(this, arguments);\n      }\n      return fetchProducts;\n    }()\n  }, {\n    key: \"renderRecommendations\",\n    value: function renderRecommendations(products) {\n      var _this = this;\n      var collectionWrapper = this.createRecommendationsWrapper();\n      products.forEach(function (product) {\n        var template = _this.createProductTemplate(product);\n        collectionWrapper.querySelector('.grid').appendChild(template);\n      });\n      this.appendChild(collectionWrapper);\n    }\n  }, {\n    key: \"createRecommendationsWrapper\",\n    value: function createRecommendationsWrapper() {\n      var wrapper = document.createElement('div');\n      wrapper.classList.add('collection');\n      wrapper.innerHTML = \"\\n      <div class=\\\"container wrapper\\\">\\n        <div class=\\\"collection__header\\\">\\n          <h2 class=\\\"collection__heading\\\">You may also like</h2>\\n        </div>\\n        <div class=\\\"collection__grid\\\">\\n          <div class=\\\"grid grid--waffle grid--center\\\"></div>\\n        </div>\\n      </div>\\n    \";\n      return wrapper;\n    }\n  }, {\n    key: \"getTemplate\",\n    value: function getTemplate() {\n      return document.getElementById('product-template').content.cloneNode(true);\n    }\n  }, {\n    key: \"createProductTemplate\",\n    value: function createProductTemplate(product) {\n      var template = this.getTemplate();\n      var tileItem = template.querySelector('.tile__item');\n      template.querySelector('.tile').href = \"\".concat(_utils__WEBPACK_IMPORTED_MODULE_0__.urls.productsUrlPrefix, \"/\").concat(product.handle, \"?rec_strat=\").concat(product.rec_strategy);\n      template.querySelector('.tile__heading').textContent = product.title;\n      template.querySelector('.tile__price--original').textContent = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(product.price, currencyData.currency);\n      if (product.compare_at_price) {\n        template.querySelector('.tile__price--offer').textContent = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(product.compare_at_price, currencyData.currency);\n      }\n      if (product.featured_image) {\n        tileItem.src = product.featured_image;\n        tileItem.alt = product.title;\n      } else {\n        tileItem.remove();\n      }\n      return template;\n    }\n  }]);\n  return CartProductRecommendations;\n}( /*#__PURE__*/_wrapNativeSuper(HTMLElement));\ncustomElements.define('cart-product-recommendations', CartProductRecommendations);\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/cartProductRecommendations.js?");
569
570/***/ }),
571
572/***/ "./src/scripts/components/product/constants.js":
573/*!*****************************************************!*\
574  !*** ./src/scripts/components/product/constants.js ***!
575  \*****************************************************/
576/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
577
578"use strict";
579eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"desktopBreakpoint\": () => (/* binding */ desktopBreakpoint),\n/* harmony export */   \"mainConfig\": () => (/* binding */ mainConfig),\n/* harmony export */   \"mainSelectors\": () => (/* binding */ mainSelectors),\n/* harmony export */   \"thumbnailsConfig\": () => (/* binding */ thumbnailsConfig),\n/* harmony export */   \"thumbnailsSelectors\": () => (/* binding */ thumbnailsSelectors)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n\nvar dataPrefix = 'data-gallery';\nvar swipeAngle = 40;\nvar mainSelectors = {\n  main: \"[\".concat(dataPrefix, \"=\\\"gallery\\\"]\"),\n  item: \"[\".concat(dataPrefix, \"=\\\"gallery-slide\\\"]\"),\n  navPrev: \"[\".concat(dataPrefix, \"=\\\"nav-prev\\\"]\"),\n  navNext: \"[\".concat(dataPrefix, \"=\\\"nav-next\\\"]\"),\n  imgHolder: \"[\".concat(dataPrefix, \"=\\\"gallery-img-holder\\\"]\")\n};\nvar thumbnailsSelectors = {\n  main: \"[\".concat(dataPrefix, \"=\\\"thumbnails\\\"]\"),\n  item: \"[\".concat(dataPrefix, \"=\\\"thumbnail\\\"]\"),\n  navPrev: \"[\".concat(dataPrefix, \"=\\\"thumbnails-nav-prev\\\"]\"),\n  navNext: \"[\".concat(dataPrefix, \"=\\\"thumbnails-nav-next\\\"]\")\n};\nvar mainConfig = function mainConfig(productContainer) {\n  return {\n    container: productContainer.querySelector(mainSelectors.main),\n    mode: _utils__WEBPACK_IMPORTED_MODULE_0__.isMobile.any ? 'carousel' : 'gallery',\n    items: 1,\n    slideBy: 1,\n    autoplay: false,\n    mouseDrag: _utils__WEBPACK_IMPORTED_MODULE_0__.isMobile.any ? true : false,\n    controls: true,\n    controlsContainer: false,\n    prevButton: productContainer.querySelector(mainSelectors.navPrev),\n    nextButton: productContainer.querySelector(mainSelectors.navNext),\n    nav: true,\n    loop: false,\n    navContainer: productContainer.querySelector(thumbnailsSelectors.main),\n    navAsThumbnails: true,\n    swipeAngle: swipeAngle,\n    preventScrollOnTouch: 'auto'\n  };\n};\nvar thumbnailsConfig = function thumbnailsConfig(productContainer) {\n  return {\n    container: productContainer.querySelector(thumbnailsSelectors.main),\n    items: 4,\n    gutter: 8,\n    axis: window.matchMedia(desktopBreakpoint).matches ? 'vertical' : 'horizontal',\n    responsive: {\n      1200: {\n        items: 5\n      }\n    },\n    slideBy: 1,\n    autoplay: false,\n    mouseDrag: _utils__WEBPACK_IMPORTED_MODULE_0__.isMobile.any ? true : false,\n    controls: true,\n    controlsContainer: false,\n    prevButton: productContainer.querySelector(thumbnailsSelectors.navPrev),\n    nextButton: productContainer.querySelector(thumbnailsSelectors.navNext),\n    nav: false,\n    loop: false,\n    swipeAngle: swipeAngle,\n    preventScrollOnTouch: 'auto'\n  };\n};\nvar desktopBreakpoint = '(min-width: 1024px)';\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/constants.js?");
580
581/***/ }),
582
583/***/ "./src/scripts/components/product/index.js":
584/*!*************************************************!*\
585  !*** ./src/scripts/components/product/index.js ***!
586  \*************************************************/
587/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
588
589"use strict";
590eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"product\": () => (/* binding */ product)\n/* harmony export */ });\n/* harmony import */ var _Product__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Product */ \"./src/scripts/components/product/Product.js\");\n/* harmony import */ var _productRecommendationsDrawer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./productRecommendationsDrawer */ \"./src/scripts/components/product/productRecommendationsDrawer.js\");\n/* harmony import */ var _cartProductRecommendations__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./cartProductRecommendations */ \"./src/scripts/components/product/cartProductRecommendations.js\");\n\n\n\nvar productSelector = '[data-product=\"product\"]';\nvar product = function product() {\n  var productDOMElements = document.querySelectorAll(productSelector);\n  for (var i = 0; i < productDOMElements.length; i++) {\n    var productInstance = new _Product__WEBPACK_IMPORTED_MODULE_0__.Product(productDOMElements[i]);\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/index.js?");
591
592/***/ }),
593
594/***/ "./src/scripts/components/product/productRecommendationsDrawer.js":
595/*!************************************************************************!*\
596  !*** ./src/scripts/components/product/productRecommendationsDrawer.js ***!
597  \************************************************************************/
598/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
599
600"use strict";
601eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils */ \"./src/scripts/utils/index.js\");\n/* harmony import */ var _utils_cartService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/cartService */ \"./src/scripts/utils/cartService.js\");\n/* harmony import */ var _Product__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Product */ \"./src/scripts/components/product/Product.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context);
601 if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEac
601h(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, \"catch\": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\");
601 return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\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 } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\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); }\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } 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); }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\nvar ProductRecommendationsDrawer = /*#__PURE__*/function (_HTMLElement) {\n  _inherits(ProductRecommendationsDrawer, _HTMLElement);\n  var _super = _createSuper(ProductRecommendationsDrawer);\n  function ProductRecommendationsDrawer() {\n    _classCallCheck(this, ProductRecommendationsDrawer);\n    return _super.apply(this, arguments);\n  }\n  _createClass(ProductRecommendationsDrawer, [{\n    key: \"connectedCallback\",\n    value: function connectedCallback() {\n      this.fetchProducts();\n    }\n  }, {\n    key: \"fetchProducts\",\n    value: function () {\n      var _fetchProducts = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n        var productId, response, data;\n        return _regeneratorRuntime().wrap(function _callee$(_context) {\n          while (1) switch (_context.prev = _context.next) {\n            case 0:\n              _context.prev = 0;\n              productId = this.getAttribute('product-id');\n              _context.next = 4;\n              return fetch(\"/api/recommendations?intent=complementary&currency=\".concat(currencyData.currency, \"&product_id=\").concat(productId));\n            case 4:\n              response = _context.sent;\n              _context.next = 7;\n              return response.json();\n            case 7:\n              data = _context.sent;\n              if (data.products.length !== 0) {\n                this.renderProducts(data.products);\n              }\n              _context.next = 14;\n              break;\n            case 11:\n              _context.prev = 11;\n              _context.t0 = _context[\"catch\"](0);\n              console.error('Error fetching recommended products:', _c
601ontext.t0);\n            case 14:\n            case \"end\":\n              return _context.stop();\n          }\n        }, _callee, this, [[0, 11]]);\n      }));\n      function fetchProducts() {\n        return _fetchProducts.apply(this, arguments);\n      }\n      return fetchProducts;\n    }()\n  }, {\n    key: \"renderProducts\",\n    value: function renderProducts(products) {\n      var productItems = products.map(function (product) {\n        return \"\\n      <li class=\\\"product-drawer__recommended-item\\\">\\n        <product-recommendation-item\\n          title=\\\"\".concat(product.title, \"\\\"\\n          url=\\\"\").concat(_utils__WEBPACK_IMPORTED_MODULE_0__.urls.productsUrlPrefix, \"/\").concat(product.handle, \"?rec_strat=\").concat(product.rec_strategy, \"\\\"\\n          price=\\\"\").concat(product.price, \"\\\"\\n          strategy=\\\"?rec_strat=\").concat(product.rec_strategy, \"\\\"\\n          \").concat(product.compare_at_price ? \"compare-price=\\\"\".concat(product.compare_at_price, \"\\\"\") : '', \"\\n          \").concat(product.featured_image ? \"image=\\\"\".concat(product.featured_image, \"\\\"\") : '', \"\\n          \").concat(product.variants.length === 1 ? \"variant=\\\"\".concat(product.variants[0].id, \"\\\"\") : '', \"\\n        ></product-recommendation-item>\\n      </li>\\n    \");\n      }).join('');\n      this.innerHTML = \"\\n      <div class=\\\"product-drawer__section\\\">\\n        <div class=\\\"product-drawer__recommended\\\">\\n          <h4 class=\\\"product-drawer__recommended-heading\\\">You may also like</h4>\\n          <ul class=\\\"product-drawer__recommended-items\\\">\".concat(productItems, \"</ul>\\n        </div>\\n      </div>\\n    \");\n    }\n  }], [{\n    key: \"observedAttributes\",\n    get: function get() {\n      return ['product-id'];\n    }\n  }]);\n  return ProductRecommendationsDrawer;\n}( /*#__PURE__*/_wrapNativeSuper(HTMLElement));\nvar ProductRecommendationItem = /*#__PURE__*/function (_HTMLElement2) {\n  _inherits(ProductRecommendationItem, _HTMLElement2);\n  var _super2 = _createSuper(ProductRecommendationItem);\n  function ProductRecommendationItem() {\n    var _this;\n    _classCallCheck(this, ProductRecommendationItem);\n    _this = _super2.call(this);\n    _this.error = false;\n    return _this;\n  }\n  _createClass(ProductRecommendationItem, [{\n    key: \"connectedCallback\",\n    value: function connectedCallback() {\n      this.render();\n      this.addEventListeners();\n    }\n  }, {\n    key: \"attributeChangedCallback\",\n    value: function attributeChangedCallback() {\n      this.render();\n      this.addEventListeners();\n    }\n  }, {\n    key: \"addEventListeners\",\n    value: function addEventListeners() {\n      var _this2 = this;\n      var button = this.querySelector('[data-product=\"recommended-add\"]');\n      if (button) {\n        button.addEventListener('click', function () {\n          return _this2.recommendedAddToCart();\n        });\n      }\n    }\n  }, {\n    key: \"recommendedAddToCart\",\n    value: function recommendedAddToCart() {\n      var _this3 = this;\n      var variant = this.getAttribute('variant');\n      var strategy = this.getAttribute('strategy');\n      var button = this.querySelector('[data-product=\"recommended-add\"]');\n      var successElem = this.querySelector('[data-product=\"recommended-success\"]');\n      button.disabled = true;\n      button.classList.add('loading');\n      _utils_cartService__WEBPACK_IMPORTED_MODULE_1__.cartService.addToCart([{\n        id: variant,\n        quantity: 1\n      }], strategy ? strategy : '').then(function (response) {\n        (0,_Product__WEBPACK_IMPORTED_MODULE_2__.updateDrawerDetails)(response.data);\n        (0,_utils__WEBPACK_IMPORTED_MODULE_0__.setCartWidgetQuantity)(response.data.cart.item_count);\n        successElem.classList.add('visible');\n        _this3.error = false;\n      })[\"catch\"](function (error) {\n        if (!error.response || !error.response.data || !error.response.data.message) {\n          _this3.error = _utils__WEBPACK_IMPORTED_MODULE_0__.strings.generalError;\n        } else {\n          _this3.error = \"\".concat(error.response.data.message, \": \").concat(error.response.data.description);\n        }\n        _this3.render();\n        _this3.addEventListeners();\n      })[\"finally\"](function () {\n        button.disabled = false;\n        button.classList.remove('loading');\n      });\n    }\n  }, {\n    key: \"render\",\n    value: function render() {\n      var title = this.getAttribute('title');\n      var url = this.getAttribute('url');\n      var price = this.getAttribute('price');\n      var image = this.getAttribute('image');\n      var variant = this.getAttribute('variant');\n      var comparePrice = this.getAttribute('compare-price');\n      this.innerHTML = \"\\n      <div class=\\\"inline-image\\\">\\n        <a href=\\\"\".concat(url, \"\\\" class=\\\"inline-image__image\\\">\\n          <div class=\\\"image image--background-color\\\">\\n            <div class=\\\"image__object\\\">\\n              \").concat(image ? \"<img src=\\\"\".concat(image, \"\\\" alt=\\\"\").concat(title, \"\\\">\") : '', \"\\n            </div>\\n          </div>\\n        </a>\\n        <div class=\\\"inline-image__content\\\">\\n          <a href=\\\"\").concat(url, \"\\\" class=\\\"inline-image__link\\\">\\n            <h5 class=\\\"inline-image__heading\\\">\\n              \").concat(title, \"\\n            </h5>\\n          </a>\\n\\n          <p class=\\\"inline-image__prices\\\">
601\\n            \").concat(comparePrice ? \"\\n              <span class=\\\"inline-image__price inline-image__price--offer\\\">\\n                \".concat((0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(comparePrice, currencyData.currency), \"\\n              </span>\") : '', \"\\n            <span class=\\\"inline-image__price inline-image__price--original\\\">\\n              \").concat((0,_utils__WEBPACK_IMPORTED_MODULE_0__.getPriceString)(price, currencyData.currency), \"\\n            </span>\\n          </p>\\n\\n          <div class=\\\"inline-image__cta\\\">\\n            \").concat(variant ? \"\\n              <button \\n                data-product=\\\"recommended-add\\\"\\n                data-recommended-quantity=\\\"1\\\"\\n                data-recommended-variant=\\\"\".concat(variant, \"\\\" \\n                class=\\\"button button--xsmall button--primary\\\"\\n              >\\n                Add to Cart\\n                <span class=\\\"button__spinner\\\">\\n                  <div class=\\\"spinner spinner--xsmall\\\"></div>\\n                </span>\\n              </button>\\n              <p \\n                data-product=\\\"recommended-success\\\"\\n                class=\\\"inline-image__cta-response inline-image__cta-response--success\\\"\\n              >\\n                <span class=\\\"inline-image__cta-response-icon\\\">\\n                  <svg class=\\\"svg-fill-current-color\\\" width=\\\"14\\\" height=\\\"14\\\" viewBox=\\\"0 0 23 20\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n                    <path d=\\\"M1 9.17l7.926 7.927L20.889 1\\\" vector-effect=\\\"non-scaling-stroke\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"2\\\" fill=\\\"none\\\" fill-rule=\\\"evenodd\\\"/>\\n                  </svg>\\n                </span>\\n                Added to cart\\n              </p>\\n              \").concat(this.error ? \"<p\\n                data-product=\\\"recommended-error\\\"\\n                class=\\\"inline-image__cta-response inline-image__cta-response--error visible\\\"\\n              >\".concat(this.error, \"</p>\") : '', \"\\n              \") : \"\\n              <a \\n                href=\\\"\".concat(url, \"\\\"\\n                class=\\\"button button--xsmall button--primary\\\"\\n              >\\n                View Product\\n              </a>\"), \"\\n          </div>\\n        </div>\\n      </div>\\n    \");\n    }\n  }], [{\n    key: \"observedAttributes\",\n    get: function get() {\n      return ['title', 'url', 'price', 'image', 'compare-price', 'variant'];\n    }\n  }]);\n  return ProductRecommendationItem;\n}( /*#__PURE__*/_wrapNativeSuper(HTMLElement));\ncustomElements.define('product-recommendation-item', ProductRecommendationItem);\ncustomElements.define('product-recommendations-drawer', ProductRecommendationsDrawer);\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/product/productRecommendationsDrawer.js?");
602
603/***/ }),
604
605/***/ "./src/scripts/components/recentPosts.js":
606/*!***********************************************!*\
607  !*** ./src/scripts/components/recentPosts.js ***!
608  \***********************************************/
609/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
610
611"use strict";
612eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"recentPosts\": () => (/* binding */ recentPosts)\n/* harmony export */ });\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _regeneratorRuntime() { \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = \"function\" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || \"@@iterator\", asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\", toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, \"\"); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, \"_invoke\", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: \"normal\", arg: fn.call(obj, arg) }; } catch (err) { return { type: \"throw\", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { [\"next\", \"throw\", \"return\"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if (\"throw\" !== record.type) { var result = record.arg, value = result.value; return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke(\"next\", value, resolve, reject); }, function (err) { invoke(\"throw\", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke(\"throw\", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, \"_invoke\", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = \"suspendedStart\"; return function (method, arg) { if (\"executing\" === state) throw new Error(\"Generator is already running\"); if (\"completed\" === state) { if (\"throw\" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) { if (\"suspendedStart\" === state) throw state = \"completed\", context.arg; context.dispatchException(context.arg); } else \"return\" === context.method && context.abrupt(\"return\", context.arg); state = \"executing\"; var record = tryCatch(innerFn, self, context);
612 if (\"normal\" === record.type) { if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = \"normal\", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: \"root\" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if (\"function\" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, \"constructor\", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) { var ctor = \"function\" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, \"toString\", function () { return \"[object Generator]\"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEac
612h(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if (\"throw\" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if (\"root\" === entry.tryLoc) return handle(\"end\"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, \"catchLoc\"), hasFinally = hasOwn.call(entry, \"finallyLoc\"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error(\"try statement without catch or finally\"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if (\"throw\" === record.type) throw record.arg; return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, \"catch\": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if (\"throw\" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error(\"illegal catch attempt\"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\nvar selectors = {\n  main: '.page__main',\n  recentPostsRef: '[recent-posts-ref]',\n  postTileHeight: '[data-post-tile-height]',\n  postTileContainerHeight: '[data-post-tile-container-height]',\n  postTileTextOverlay: '[data-post-tile-text-overlay]',\n  postTileVotesPercentage: '[data-votes-percentage]',\n  postTileSkeleton: '[data-post-tile-skeleton]',\n  pollTypePost: '[data-post-type=\"Poll\"]',\n  postNone: '[data-posts=\"none\"]'\n};\nvar sectionFetch = function sectionFetch(sectionKey, section) {\n  var domain = window.location.origin;\n  var headers = new Headers();\n  var url = domain + '/sections/' + sectionKey;\n  var options = {\n    method: 'GET',\n    headers: headers\n  };\n  return new Promise( /*#__PURE__*/function () {\n    var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(resolve, reject) {\n      return _regeneratorRuntime().wrap(function _callee$(_context) {\n        while (1) switch (_context.prev = _context.next) {\n          case 0:\n            _context.next = 2;\n            return fetch(url, options).then(function (response) {\n              if (!response.ok) throw new Error(\"Request failed\");\n              return response.text();\n            }
612).then(function (data) {\n              if (!data.includes(\"This website is coming soon\")) {\n                section.outerHTML = data;\n                resolve(true);\n              } else {\n                resolve(false);\n              }\n            })[\"catch\"](function (error) {\n              reject(error);\n            });\n          case 2:\n          case \"end\":\n            return _context.stop();\n        }\n      }, _callee);\n    }));\n    return function (_x, _x2) {\n      return _ref.apply(this, arguments);\n    };\n  }());\n};\nvar checkDesignMode = function checkDesignMode(index, request_design_mode) {\n  var recentPostsRef = document.querySelectorAll(selectors.recentPostsRef);\n  var postNone = recentPostsRef[index].querySelectorAll(selectors.postNone);\n  if (request_design_mode && postNone.length > 0) {\n    for (var i = 0; i < postNone.length; i++) {\n      postNone[i].classList.remove('hidden');\n    }\n  }\n};\nvar continueReading = function continueReading(index) {\n  var recentPostsRef = document.querySelectorAll(selectors.recentPostsRef);\n  var postTiles = recentPostsRef[index].querySelectorAll(selectors.postTileHeight);\n  if (postTiles) {\n    postTiles.forEach(function (elem) {\n      var postTileContainer = elem.querySelector(selectors.postTileContainerHeight);\n      if (postTileContainer) {\n        var postTileTextOverlay = postTileContainer.querySelector(selectors.postTileTextOverlay);\n        if (postTileTextOverlay && postTileContainer.clientHeight > elem.clientHeight) {\n          postTileTextOverlay.classList.remove(\"hidden\");\n        } else if (postTileTextOverlay) {\n          postTileTextOverlay.classList.add(\"hidden\");\n        }\n      }\n    });\n  }\n};\nvar votesPercentage = function votesPercentage(index) {\n  var recentPostsRef = document.querySelectorAll(selectors.recentPostsRef);\n  var pollTypePost = recentPostsRef[index].querySelectorAll(selectors.pollTypePost);\n  if (pollTypePost.length > 0) {\n    pollTypePost.forEach(function (poll) {\n      var votesPercentage = poll.querySelectorAll(selectors.postTileVotesPercentage);\n      var winningOption;\n      var winningBar;\n      var prevPercentage = 0;\n      if (votesPercentage.length > 0) {\n        votesPercentage.forEach(function (elem) {\n          var percentage = elem.dataset.votesPercentage;\n          var bar = elem.nextElementSibling;\n          if (percentage > prevPercentage) {\n            prevPercentage = percentage;\n            winningOption = elem.parentElement;\n            winningBar = bar;\n          }\n          bar.style.width = percentage + \"%\";\n        });\n        if (winningOption && winningBar) {\n          winningOption.classList.add(\"post-tile__option--winning\");\n          winningBar.classList.add(\"post-tile__option-bar--winning\");\n        }\n      }\n    });\n  }\n};\nvar removeSkeleton = function removeSkeleton(index) {\n  var recentPostsRef = document.querySelectorAll(selectors.recentPostsRef);\n  var postTileSkeleton = recentPostsRef[index].querySelectorAll(selectors.postTileSkeleton);\n  if (postTileSkeleton.length > 0) {\n    postTileSkeleton.forEach(function (elem) {\n      elem.remove();\n    });\n  }\n};\nvar recentPosts = function recentPosts() {\n  var main = document.querySelector(selectors.main);\n  if (!main) return;\n  var recentPostsRef = document.querySelectorAll(selectors.recentPostsRef);\n  var request_design_mode = typeof design_mode !== 'undefined' ? design_mode : null;\n  var _loop = function _loop(i) {\n    var section = recentPostsRef[i].parentElement;\n    var sectionKey = recentPostsRef[i].parentElement.id.replace(\"fw-section-\", \"\");\n    sectionFetch(sectionKey, section).then(function (state) {\n      if (state) {\n        removeSkeleton(i);\n        checkDesignMode(i, request_design_mode);\n        continueReading(i);\n        votesPercentage(i);\n        window.addEventListener(\"resize\", continueReading(i));\n      }\n    })[\"catch\"](function (error) {\n      console.error(\"Error: \", error);\n    });\n  };\n  for (var i = 0; i < recentPostsRef.length;
612 i++) {\n    _loop(i);\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/recentPosts.js?");
613
614/***/ }),
615
616/***/ "./src/scripts/components/select.js":
617/*!******************************************!*\
618  !*** ./src/scripts/components/select.js ***!
619  \******************************************/
620/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
621
622"use strict";
623eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"select\": () => (/* binding */ select)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar selectContainerSelector = '[data-select=\"container\"]';\nvar extendSelect = function extendSelect(selectContainer) {\n  var select = selectContainer.querySelector('select');\n  var inputContainer = document.querySelector(\"[data-select-input=\\\"\".concat(select.dataset.triggerInput, \"\\\"]\"));\n  var input = inputContainer.querySelector('input');\n  var onChange = function onChange(e) {\n    if (e.currentTarget.value === 'more') {\n      selectContainer.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n      inputContainer.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n      select.removeAttribute('name');\n      input.setAttribute('name', 'quantity');\n      input.focus();\n    }\n  };\n  select.addEventListener('change', onChange);\n};\nvar select = function select() {\n  var selectContainers = document.querySelectorAll(selectContainerSelector);\n  for (var i = 0; i < selectContainers.length; i++) {\n    extendSelect(selectContainers[i]);\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/select.js?");
624
625/***/ }),
626
627/***/ "./src/scripts/components/sizeChart.js":
628/*!*********************************************!*\
629  !*** ./src/scripts/components/sizeChart.js ***!
630  \*********************************************/
631/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
632
633"use strict";
634eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"sizeChart\": () => (/* binding */ sizeChart)\n/* harmony export */ });\nvar sizeGuideSelector = '[data-size=\"size-guide\"]';\nvar sizeChart = function sizeChart() {\n  var sizeGuides = document.querySelectorAll(sizeGuideSelector);\n  if (!sizeGuides) return;\n  sizeGuides.forEach(function (sizeGuide) {\n    var inchesButton = sizeGuide.querySelector('[data-size=\"inches-button\"]');\n    var cmButton = sizeGuide.querySelector('[data-size=\"cm-button\"]');\n    var rows = sizeGuide.querySelectorAll('[data-size-guide]');\n    var sizeGuideJSON = JSON.parse(sizeGuide.querySelector('[data-size-guide=\"json\"]').innerHTML);\n    var updateTable = function updateTable(unit) {\n      rows.forEach(function (row) {\n        var cells = row.querySelectorAll('[data-size-type]');\n        var label = row.querySelector('[data-size-label]');\n        cells.forEach(function (cell) {\n          var sizeType = cell.dataset.sizeType;\n          var sizeLabel = label.textContent.trim();\n          var sizeData = sizeGuideJSON.find(function (size) {\n            return size.label === sizeLabel;\n          });\n          if (sizeData && sizeData[sizeType]) {\n            var value = sizeData[sizeType][unit];\n            updateCell(cell, value, unit);\n          }\n        });\n      });\n    };\n    var updateCell = function updateCell(cell, value, unit) {\n      var numValue = parseFloat(value);\n      if (unit === 'in') {\n        var integerPart = Math.floor(numValue);\n        var decimalPart = numValue - integerPart;\n        if (decimalPart === 0.5) {\n          cell.innerHTML = \"<span class=\\\"size-chart__value-fraction\\\">\".concat(integerPart, \"&nbsp;<sup>1</sup><span class=\\\"size-chart__value-slash\\\">/</span><sub>2</sub></span>\");\n        } else {\n          cell.innerHTML = \"<span class=\\\"size-chart__value-integer\\\">\".concat(numValue % 1 === 0 ? numValue : numValue.toFixed(1), \"</span>\");\n        }\n      } else {\n        cell.innerHTML = \"<span class=\\\"size-chart__value-integer\\\">\".concat(Math.round(numValue), \"</span>\");\n      }\n    };\n    var switchUnit = function switchUnit(unit) {\n      var isActiveInches = unit === 'in';\n      updateTable(unit);\n      inchesButton.classList.toggle('active', isActiveInches);\n      cmButton.classList.toggle('active', !isActiveInches);\n    };\n    var handleUnitChange = function handleUnitChange(unit) {\n      return function () {\n        return switchUnit(unit);\n      };\n    };\n    inchesButton.addEventListener('click', handleUnitChange('in'));\n    cmButton.addEventListener('click', handleUnitChange('cm'));\n    switchUnit('in');\n  });\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/sizeChart.js?");
635
636/***/ }),
637
638/***/ "./src/scripts/components/tiers.js":
639/*!*****************************************!*\
640  !*** ./src/scripts/components/tiers.js ***!
641  \*****************************************/
642/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
643
644"use strict";
645eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"tiers\": () => (/* binding */ tiers)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar tiers = function tiers() {\n  var selectors = {\n    modalSelector: '[data-modal=\"tiers\"]',\n    modalTriggerSelector: '[data-modal-trigger=\"tiers\"]',\n    modalClose: '[data-modal-close=\"tiers\"]',\n    modalContent: '[data-modal-content=\"tiers\"]',\n    form: '[data-gift-tier=\"form\"]',\n    error: '[data-gift-tier=\"error\"]',\n    priceSpan: '[data-gift-tier=\"price-span\"]',\n    priceLabel: '[data-gift-tier=\"options\"]',\n    quantitySelectContainer: '[data-select=\"container\"]',\n    quantityInputContainer: '[data-select-input=\"more\"]',\n    inputPrices: '[data-gift-tier=\"price-input\"]',\n    totalPrice: '[data-gift-tier=\"total-price\"]',\n    quantity: '[data-gift-tier=\"quantity\"]',\n    tierNameSpan: '[data-gift-tier=\"name\"]'\n  };\n  var modalTriggers = document.querySelectorAll(selectors.modalTriggerSelector);\n  var cancelButtons = document.querySelectorAll(selectors.modalClose);\n  var tiersPriceInputs = document.querySelectorAll(selectors.inputPrices);\n  var quantitySelectors = document.querySelectorAll(selectors.quantity);\n  var priceSpan = document.querySelectorAll(selectors.priceSpan);\n  var totalPriceContainer = document.querySelector(selectors.totalPrice);\n  var form = document.querySelector(selectors.form);\n  var errorElem = document.querySelector(selectors.error);\n  var changeEvents = ['change', 'keyup'];\n  var modalEventsAssigned = false;\n  var autoTriggerHash = window.location.hash;\n  var assignModalEvents = function assignModalEvents() {\n    if (modalEventsAssigned) return;\n    for (var x = 0; x < cancelButtons.length; x++) {\n      cancelButtons[x].addEventListener('click', function (e) {\n        e.preventDefault();\n        var quantityInputContainer = document.querySelector(selectors.quantityInputContainer);\n        var input = quantityInputContainer.querySelector('input');\n        var quantitySelectContainer = document.querySelector(selectors.quantitySelectContainer);\n        var select = quantitySelectContainer.querySelector('select');\n        var errorElem = document.querySelector(selectors.error);\n        errorElem.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n        select.value = '1';\n        select.setAttribute('name', 'quantity');\n        input.removeAttribute('name');\n        quantitySelectContainer.classList.remove('hidden');\n        quantityInputContainer.classList.add('hidden');\n      });\n    }\n    for (var z = 0; z < 2; z++) {\n      if (tiersPriceInputs[z]) tiersPriceInputs[z].addEventListener('change', checkQuantity);\n      for (var y = 0; y < changeEvents.length; y++) {\n        if (quantitySelectors[z]) quantitySelectors[z].addEventListener(changeEvents[y], checkQuantity);\n      }\n    }\n    if (form) form.addEventListener('submit', function (e) {\n      if (errorElem.classList.contains(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible)) e.preventDefault();\n    });\n    modalEventsAssigned = true;\n  };\n  var checkQuantity = function checkQuantity() {\n    for (var i = 0; i < tiersPriceInputs.length; i++) {\n      if (tiersPriceInputs[i].checked) {\n        var price = tiersPriceInputs[i].dataset.monthlyPrice || tiersPriceInputs[i].dataset.annualPrice;\n        for (var z = 0; z < quantitySelectors.length; z++) {\n          if (quantitySelectors[z].hasAttribute('name')) {\n            if (quantitySelectors[z].value == '' || quantitySelectors[z].value == 0) {\n              totalPriceContainer.innerHTML = '';\n              errorElem.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasse
645s.visible);\n            } else {\n              var total = price * quantitySelectors[z].value;\n              totalPriceContainer.innerHTML = ' ($' + (total % 1 == 0 ? total : total.toFixed(2)) + ')';\n              if (errorElem.classList.contains(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible)) errorElem.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n            }\n          }\n        }\n      }\n    }\n  };\n  var updateModalDetails = function updateModalDetails(tierOfferData) {\n    var monthlyPriceSpan = Array.from(priceSpan).filter(function (span) {\n      return span.getAttribute('id') == 'monthly-price';\n    })[0];\n    var annualPriceSpan = Array.from(priceSpan).filter(function (span) {\n      return span.getAttribute('id') == 'annual-price';\n    })[0];\n    var monthlyPriceInput = Array.from(tiersPriceInputs).filter(function (input) {\n      return input.getAttribute('id') == 'monthly';\n    })[0];\n    var annualPriceInput = Array.from(tiersPriceInputs).filter(function (input) {\n      return input.getAttribute('id') == 'annual';\n    })[0];\n    var priceLabel = document.querySelector(selectors.priceLabel);\n    var tierNameSpan = document.querySelector(selectors.tierNameSpan);\n    var includePromotion = false;\n    if (tierNameSpan) tierNameSpan.innerHTML = tierOfferData.tierName;\n    if (tierOfferData.annualPrice != '0') {\n      if (tierOfferData.discountFirstMonthPrice != '' && tierOfferData.discountFirstMonthPrice != '0' && includePromotion) {\n        monthlyPriceSpan.innerHTML = \"<span class=\\\"tiers-modal__option-price--line-through\\\">$\".concat(tierOfferData.monthlyPrice, \"</span> $\").concat(tierOfferData.discountFirstMonthPrice, \" <span class=\\\"tiers-modal__option-price--description\\\">first month</span>\");\n        monthlyPriceInput.dataset.monthlyPrice = tierOfferData.discountFirstMonthPrice;\n      } else {\n        monthlyPriceSpan.innerHTML = '$' + tierOfferData.monthlyPrice;\n        monthlyPriceInput.dataset.monthlyPrice = tierOfferData.monthlyPrice;\n      }\n      monthlyPriceInput.setAttribute('value', tierOfferData.monthlyOfferId);\n      if (tierOfferData.discountFirstYearPrice != '' && tierOfferData.discountFirstYearPrice != '0' && includePromotion) {\n        annualPriceSpan.innerHTML = \"<span class=\\\"tiers-modal__option-price--line-through\\\">$\".concat(tierOfferData.annualPrice, \"</span> $\").concat(tierOfferData.discountFirstYearPrice, \" <span class=\\\"tiers-modal__option-price--description\\\">first year</span>\");\n        annualPriceInput.dataset.annualPrice = tierOfferData.discountFirstYearPrice;\n      } else {\n        annualPriceSpan.innerHTML = '$' + tierOfferData.annualPrice;\n        annualPriceInput.dataset.annualPrice = tierOfferData.annualPrice;\n      }\n      annualPriceInput.setAttribute('value', tierOfferData.annualOfferId);\n    } else {\n      priceLabel.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n      document.querySelector(selectors.modalContent).classList.add('modal__content--small');\n      document.querySelector('.tiers-modal__quantity-container').classList.add('tiers-modal__quantity-container--expand');\n      monthlyPriceInput.dataset.monthlyPrice = tierOfferData.monthlyPrice;\n      monthlyPriceInput.setAttribute('value', tierOfferData.monthlyOfferId);\n    }\n  };\n  for (var i = 0; i < modalTriggers.length; i++) {\n    modalTriggers[i].addEventListener('click', function (e) {\n      e.preventDefault();\n      if (tiersPriceInputs) tiersPriceInputs[0].checked = true;\n      var monthlyPrice = e.currentTarget.getAttribute('monthly-price');\n      var annualPrice = e.currentTarget.getAttribute('annual-price');\n      var monthlyOfferId = e.currentTarget.getAttribute('monthly-offer-id');\n      var annualOfferId = e.currentTarget.getAttribute('annual-offer-id');\n      var discountFirstMonthPrice = e.currentTarget.getAttribute('discount-first-month-price');\n      var discountFirstYearPrice = e.currentTarget.getAttribute('discount-first-year-price');\n      var tierName = e.currentTarget.getAttribute('tier-name');\n      updateModalDetails({\n        monthlyPrice: monthlyPrice,\n        annualPrice: annualPrice,\n        monthlyOfferId: monthlyOfferId,\n        annualOfferId: annualOfferId,\n        discountFirstMonthPrice: discountFirstMonthPrice,\n        discountFirstYearPrice: discountFirstYearPrice,\n        tierName: tierName\n      });\n      checkQuantity();\n      assignModalEvents();\n    });\n    if (modalTriggers[i].getAttribute('auto-trigger') == autoTriggerHash) modalTriggers[i].click();\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/tiers.js?");
646
647/***/ }),
648
649/***/ "./src/scripts/components/tile.js":
650/*!****************************************!*\
651  !*** ./src/scripts/components/tile.js ***!
652  \****************************************/
653/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
654
655"use strict";
656eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"initializeTile\": () => (/* binding */ initializeTile)\n/* harmony export */ });\nvar selectors = {\n  tileColor: 'data-tile-color',\n  primaryImage: '[data-preview=\"first\"]',\n  secondaryImage: '[data-preview=\"secondary\"]',\n  primaryImageSrc: 'src-first',\n  secondaryImageSrc: 'src-secondary',\n  availableTile: '[data-product-available]',\n  inputIndex: 'data-index'\n};\nvar loadedPrimaryImages = {};\nvar setImageChangeEvents = function setImageChangeEvents(availableTile) {\n  var colorSelectors = availableTile.querySelectorAll(\"[\".concat(selectors.tileColor, \"]\"));\n  if (colorSelectors.length === 0) return;\n  var primaryImg = availableTile.querySelector(selectors.primaryImage);\n  var secondaryImg = availableTile.querySelector(selectors.secondaryImage);\n  var currentCheckedInput = availableTile.querySelector(\"[\".concat(selectors.inputIndex, \"^=\\\"option\\\"]:checked\"));\n  var currentColorSelector = availableTile.querySelector(\"label[for=\\\"\".concat(currentCheckedInput.id, \"\\\"]\"));\n  colorSelectors.forEach(function (colorSelector) {\n    colorSelector.addEventListener('click', function () {\n      if (primaryImg) primaryImg.src = colorSelector.getAttribute(selectors.primaryImageSrc);\n      if (secondaryImg) secondaryImg.src = colorSelector.getAttribute(selectors.secondaryImageSrc);\n      currentColorSelector = colorSelector;\n      var primaryImgSrc = colorSelector.getAttribute(selectors.primaryImageSrc);\n      if (!loadedPrimaryImages[primaryImgSrc]) {\n        availableTile.querySelector('.tile').classList.add('loading');\n      }\n      if (primaryImg) {\n        primaryImg.onload = function () {\n          availableTile.querySelector('.tile').classList.remove('loading');\n          loadedPrimaryImages[primaryImgSrc] = true;\n        };\n        primaryImg.src = primaryImgSrc;\n      }\n    });\n    colorSelector.addEventListener('mouseenter', function () {\n      var primaryImgSrc = colorSelector.getAttribute(selectors.primaryImageSrc);\n      if (!loadedPrimaryImages[primaryImgSrc]) {\n        availableTile.querySelector('.tile').classList.add('loading');\n        primaryImg.src = '';\n      }\n      if (primaryImg) {\n        primaryImg.onload = function () {\n          availableTile.querySelector('.tile').classList.remove('loading');\n          loadedPrimaryImages[primaryImgSrc] = true;\n        };\n        primaryImg.src = primaryImgSrc;\n      }\n      if (secondaryImg) {\n        secondaryImg.src = colorSelector.getAttribute(selectors.secondaryImageSrc);\n      }\n    });\n    colorSelector.addEventListener('mouseleave', function () {\n      if (primaryImg) primaryImg.src = currentColorSelector.getAttribute(selectors.primaryImageSrc);\n      if (secondaryImg) secondaryImg.src = currentColorSelector.getAttribute(selectors.secondaryImageSrc);\n    });\n  });\n};\nvar initializeTile = function initializeTile() {\n  var availableTiles = document.querySelectorAll(selectors.availableTile);\n  availableTiles.forEach(function (availableTile) {\n    return setImageChangeEvents(availableTile);\n  });\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/tile.js?");
657
658/***/ }),
659
660/***/ "./src/scripts/components/toggleManager.js":
661/*!*************************************************!*\
662  !*** ./src/scripts/components/toggleManager.js ***!
663  \*************************************************/
664/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
665
666"use strict";
667eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"toggleManager\": () => (/* binding */ toggleManager),\n/* harmony export */   \"toggleTarget\": () => (/* binding */ toggleTarget)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar selectors = {\n  modal: 'data-modal',\n  modalTrigger: 'data-modal-trigger',\n  drawer: 'data-drawer',\n  primaryTrigger: 'data-drawer-trigger-primary',\n  secondaryTrigger: 'data-drawer-trigger-secondary'\n};\nvar toggleTarget = function toggleTarget(selector, targetName) {\n  var element = document.querySelector(\"[\".concat(selector, \"=\\\"\").concat(targetName, \"\\\"]\"));\n  element.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible);\n  if (element.classList.contains(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.visible)) {\n    (0,_utils__WEBPACK_IMPORTED_MODULE_0__.setBodyScroll)(false);\n  } else {\n    (0,_utils__WEBPACK_IMPORTED_MODULE_0__.setBodyScroll)(true);\n  }\n};\nvar targetSelector = function targetSelector(selector, triggerSelector, callback) {\n  var triggers = document.querySelectorAll(\"[\".concat(triggerSelector, \"]\"));\n  triggers.forEach(function (trigger) {\n    trigger.addEventListener('click', function (e) {\n      e.preventDefault();\n      var targetName = e.currentTarget.getAttribute(triggerSelector);\n      callback(targetName);\n    });\n  });\n};\nvar toggleManager = function toggleManager() {\n  targetSelector(selectors.modal, selectors.modalTrigger, function (targetName) {\n    toggleTarget(selectors.modal, targetName);\n  });\n  targetSelector(selectors.drawer, selectors.primaryTrigger, function (targetName) {\n    toggleTarget(selectors.drawer, targetName);\n  });\n  var secondaryTriggers = document.querySelectorAll(\"[\".concat(selectors.secondaryTrigger, \"]\"));\n  secondaryTriggers.forEach(function (trigger) {\n    trigger.addEventListener('click', function (e) {\n      e.target.classList.toggle('active');\n    });\n  });\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/toggleManager.js?");
668
669/***/ }),
670
671/***/ "./src/scripts/components/video.js":
672/*!*****************************************!*\
673  !*** ./src/scripts/components/video.js ***!
674  \*****************************************/
675/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
676
677"use strict";
678eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"addVideoControls\": () => (/* binding */ addVideoControls),\n/* harmony export */   \"video\": () => (/* binding */ video)\n/* harmony export */ });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./src/scripts/utils/index.js\");\n\nvar selectors = {\n  main: '[data-video=\"main\"]',\n  video: '[data-video=\"video\"]',\n  controls: '[data-video=\"controls\"]',\n  initPlay: '[data-video=\"init-play\"]',\n  playPause: '[data-video=\"play-pause\"]',\n  fullscreen: '[data-video=\"fullscreen\"]',\n  mute: '[data-video=\"mute\"]',\n  volume: '[data-video=\"volume\"]',\n  iconPlay: '[data-video-icon=\"play\"]',\n  iconPause: '[data-video-icon=\"pause\"]',\n  iconVolume: '[data-video-icon=\"volume\"]',\n  iconVolumeMute: '[data-video-icon=\"volume-mute\"]'\n};\nvar initVolume = 0.7;\nvar addVideoControls = function addVideoControls(videoContainer) {\n  var video = videoContainer.querySelector(selectors.video);\n  if (!video) {\n    console.error(\"DOM Element with video :: \".concat(selectors.video, \" doesn't exist or it's value is equal null.\"));\n    return;\n  }\n  var controls = videoContainer.querySelector(selectors.controls);\n  var initPlay = videoContainer.querySelector(selectors.initPlay);\n  var playPauseBtn = videoContainer.querySelector(selectors.playPause);\n  var fullscreenBtn = videoContainer.querySelector(selectors.fullscreen);\n  var muteBtn = videoContainer.querySelector(selectors.mute);\n  var volumeBtn = videoContainer.querySelector(selectors.volume);\n  var iconPlay = videoContainer.querySelector(selectors.iconPlay);\n  var iconPause = videoContainer.querySelector(selectors.iconPause);\n  var iconVolume = videoContainer.querySelector(selectors.iconVolume);\n  var iconVolumeMute = videoContainer.querySelector(selectors.iconVolumeMute);\n  video.controls = false;\n  setVolume(initVolume);\n  video.addEventListener('click', function () {\n    if (video.paused) {\n      play();\n    } else {\n      pause();\n    }\n  });\n  video.addEventListener('ended', function () {\n    pause();\n  });\n  if (initPlay) {\n    initPlay.addEventListener('click', function () {\n      play();\n      initPlay.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n      controls.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    });\n  }\n  if (playPauseBtn) {\n    playPauseBtn.addEventListener('click', function () {\n      if (video.paused) {\n        play();\n      } else {\n        pause();\n      }\n    });\n  }\n  if (muteBtn) {\n    muteBtn.addEventListener('click', function () {\n      if (video.muted) {\n        toggleMute(false);\n      } else {\n        toggleMute(true);\n      }\n    });\n  }\n  if (volumeBtn) {\n    volumeBtn.value = initVolume;\n    volumeBtn.addEventListener('input', function (e) {\n      setVolume(e.target.value);\n    });\n  }\n  if (fullscreenBtn) {\n    fullscreenBtn.addEventListener('click', function () {\n      if (video.requestFullscreen) {\n        video.requestFullscreen();\n      } else if (video.mozRequestFullScreen) {\n        video.mozRequestFullScreen();\n      } else if (video.webkitRequestFullscreen) {\n        video.webkitRequestFullscreen();\n      } else if (video.msRequestFullscreen) {\n        video.msRequestFullscreen();\n      }\n    });\n  }\n  function play() {\n    video.play();\n    iconPlay.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    iconPause.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    videoContainer.classList.remove(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.paused);\n  }\n  function pause() {\n    video.pause();\n    iconPlay.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasse
678s.hidden);\n    iconPause.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    videoContainer.classList.add(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.paused);\n  }\n  function toggleMute(mute) {\n    iconVolume.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    iconVolumeMute.classList.toggle(_utils__WEBPACK_IMPORTED_MODULE_0__.cssClasses.hidden);\n    if (mute) {\n      video.muted = true;\n      volumeBtn.value = 0;\n    } else {\n      video.muted = false;\n      volumeBtn.value = video.volume;\n      if (video.volume === 0) {\n        video.volume = initVolume;\n        volumeBtn.value = initVolume;\n      }\n    }\n  }\n  function setVolume(value) {\n    video.volume = value;\n    if (value === '0') {\n      toggleMute(true);\n    } else if (video.muted) {\n      toggleMute(false);\n    }\n  }\n};\nvar video = function video() {\n  var videoContainers = document.querySelectorAll(selectors.main);\n  for (var i = 0; i < videoContainers.length; i++) {\n    addVideoControls(videoContainers[i]);\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/components/video.js?");
679
680/***/ }),
681
682/***/ "./src/scripts/theme.js":
683/*!******************************!*\
684  !*** ./src/scripts/theme.js ***!
685  \******************************/
686/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
687
688"use strict";
689eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _components_countdown__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/countdown */ \"./src/scripts/components/countdown/index.js\");\n/* harmony import */ var _components_input__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./components/input */ \"./src/scripts/components/input.js\");\n/* harmony import */ var _components_select__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/select */ \"./src/scripts/components/select.js\");\n/* harmony import */ var _components_video__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/video */ \"./src/scripts/components/video.js\");\n/* harmony import */ var _components_audioPlayer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/audioPlayer */ \"./src/scripts/components/audioPlayer.js\");\n/* harmony import */ var _components_toggleManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/toggleManager */ \"./src/scripts/components/toggleManager.js\");\n/* harmony import */ var _components_product__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/product */ \"./src/scripts/components/product/index.js\");\n/* harmony import */ var _components_cart__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/cart */ \"./src/scripts/components/cart/index.js\");\n/* harmony import */ var _components_accordion__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/accordion */ \"./src/scripts/components/accordion.js\");\n/* harmony import */ var _components_forms_donation__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/forms/donation */ \"./src/scripts/components/forms/donation/index.js\");\n/* harmony import */ var _components_forms_newsletter__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./components/forms/newsletter */ \"./src/scripts/components/forms/newsletter/index.js\");\n/* harmony import */ var _components_cartWidget__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./components/cartWidget */ \"./src/scripts/components/cartWidget.js\");\n/* harmony import */ var _components_tiers__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./components/tiers */ \"./src/scripts/components/tiers.js\");\n/* harmony import */ var _components_recentPosts__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./components/recentPosts */ \"./src/scripts/components/recentPosts.js\");\n/* harmony import */ var _components_tile__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./components/tile */ \"./src/scripts/components/tile.js\");\n/* harmony import */ var _components_sizeChart__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./components/sizeChart */ \"./src/scripts/components/sizeChart.js\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n(0,_components_countdown__WEBPACK_IMPORTED_MODULE_0__.countdown)();\n(0,_components_input__WEBPACK_IMPORTED_MODULE_1__.input)();\n(0,_components_select__WEBPACK_IMPORTED_MODULE_2__.select)();\n(0,_components_video__WEBPACK_IMPORTED_MODULE_3__.video)();\n(0,_components_audioPlayer__WEBPACK_IMPORTED_MODULE_4__.audioPlayer)();\n(0,_components_toggleManager__WEBPACK_IMPORTED_MODULE_5__.toggleManager)();\n(0,_components_product__WEBPACK_IMPORTED_MODULE_6__.product)();\n(0,_components_cart__WEBPACK_IMPORTED_MODULE_7__.cart)();\n(0,_components_accordion__WEBPACK_IMPORTED_MODULE_8__.accordion)();\n(0,_components_forms_donation__WEBPACK_IMPORTED_MODULE_9__.donation)();\n(0,_components_forms_newsletter__WEBPACK_IMPORTED_MODULE_10__.newsletter)();\n(0,_components_cartWidget__WEBPACK_IMPORTED_MODULE_11__.cartWidget)();\n(0,_components_tiers__WEBPACK_IMPORTED_MODULE_12__.tiers)();\n(0,_components_recentPosts__WEBPACK_IMPORTED_MODULE_13__.recentPosts)();\n(0,_components_tile__WEBPACK_IMPORTED_MODULE_14__.initializeTile)();\n(0,_components_sizeChart__WEBPACK_IMPORTED_MODULE_15__.sizeChart)();\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/theme.js?");
690
691/***/ }),
692
693/***/ "./src/scripts/utils/accountService.js":
694/*!*********************************************!*\
695  !*** ./src/scripts/utils/accountService.js ***!
696  \*********************************************/
697/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
698
699"use strict";
700eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"accountService\": () => (/* binding */ accountService)\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ \"./node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);\n\nvar accountService = {\n  getAccount: function getAccount() {\n    return axios__WEBPACK_IMPORTED_MODULE_0___default().get('/supporters/api/v1/users/me.json');\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/utils/accountService.js?");
701
702/***/ }),
703
704/***/ "./src/scripts/utils/cartService.js":
705/*!******************************************!*\
706  !*** ./src/scripts/utils/cartService.js ***!
707  \******************************************/
708/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
709
710"use strict";
711eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"cartService\": () => (/* binding */ cartService)\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ \"./node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index */ \"./src/scripts/utils/index.js\");\n\n\nvar cartService = {\n  getCart: function getCart() {\n    return axios__WEBPACK_IMPORTED_MODULE_0___default().get(\"\".concat(_index__WEBPACK_IMPORTED_MODULE_1__.urls.cart, \".js\"));\n  },\n  setItemQuantity: function setItemQuantity(id, quantity) {\n    return axios__WEBPACK_IMPORTED_MODULE_0___default().post(\"\".concat(_index__WEBPACK_IMPORTED_MODULE_1__.urls.cartChangeUrl, \".js\"), {\n      id: id,\n      quantity: quantity\n    });\n  },\n  addToCart: function addToCart(items) {\n    var queryParams = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n    return axios__WEBPACK_IMPORTED_MODULE_0___default().post(\"\".concat(_index__WEBPACK_IMPORTED_MODULE_1__.urls.cartAddUrl, \".js\").concat(queryParams), {\n      items: items\n    });\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/utils/cartService.js?");
712
713/***/ }),
714
715/***/ "./src/scripts/utils/index.js":
716/*!************************************!*\
717  !*** ./src/scripts/utils/index.js ***!
718  \************************************/
719/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
720
721"use strict";
722eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"cssClasses\": () => (/* binding */ cssClasses),\n/* harmony export */   \"cssEscape\": () => (/* binding */ cssEscape),\n/* harmony export */   \"getPriceString\": () => (/* binding */ getPriceString),\n/* harmony export */   \"getQueryVariable\": () => (/* binding */ getQueryVariable),\n/* harmony export */   \"getURLVariantId\": () => (/* binding */ getURLVariantId),\n/* harmony export */   \"isElementTopInViewport\": () => (/* binding */ isElementTopInViewport),\n/* harmony export */   \"isMobile\": () => (/* binding */ isMobile),\n/* harmony export */   \"pluralize\": () => (/* binding */ pluralize),\n/* harmony export */   \"scrollToElement\": () => (/* binding */ scrollToElement),\n/* harmony export */   \"setBodyScroll\": () => (/* binding */ setBodyScroll),\n/* harmony export */   \"setCartWidgetQuantity\": () => (/* binding */ setCartWidgetQuantity),\n/* harmony export */   \"strings\": () => (/* binding */ strings),\n/* harmony export */   \"theme\": () => (/* binding */ theme),\n/* harmony export */   \"urls\": () => (/* binding */ urls)\n/* harmony export */ });\n/* harmony import */ var ismobilejs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ismobilejs */ \"./node_modules/ismobilejs/esm/index.js\");\n/* harmony import */ var smoothscroll_polyfill__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! smoothscroll-polyfill */ \"./node_modules/smoothscroll-polyfill/dist/smoothscroll.js\");\n/* harmony import */ var smoothscroll_polyfill__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(smoothscroll_polyfill__WEBPACK_IMPORTED_MODULE_1__);\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\nsmoothscroll_polyfill__WEBPACK_IMPORTED_MODULE_1___default().polyfill();\nvar isMobile = (0,ismobilejs__WEBPACK_IMPORTED_MODULE_0__[\"default\"])();\nfunction getQueryVariable(variable) {\n  var query = window.location.search.substring(1);\n  var vars = query.split('&');\n  for (var i = 0; i < vars.length; i++) {\n    var pair = vars[i].split('=');\n    if (pair[0] === variable) {\n      return pair[1];\n    }\n  }\n  return false;\n}\nfunction getPriceString(amount, currency) {\n  var price = currency === 'JPY' ? amount : amount / 100;\n  return new Intl.NumberFormat(currencyData.locale, {\n    style: 'currency',\n    currency: currency\n  }).format(price);\n}\nfunction pluralize(value, singular, plural) {\n  if (value === 1) {\n    return singular;\n  } else {\n    return plural;\n  }\n}\nfunction setCartWidgetQuantity(quantity) {\n  var dataPrefix = 'data-cart-widget';\n  var selectors = {\n    widget: \"[\".concat(dataPrefix, \"=\\\"widget\\\"]\"),\n    widgetQuantity: \"[\".concat(dataPrefix, \"=\\\"quantity\\\"]\")\n  };\n  var cartWidget = document.querySelectorAll(selectors.widget);\n  var cartWidgetQuantity = document.querySelectorAll(selectors.widgetQuantity);\n  for (var i = 0; i < cartWidgetQuantity.length;
722 i++) {\n    cartWidgetQuantity[i].innerHTML = quantity;\n  }\n  for (var _i = 0; _i < cartWidget.length; _i++) {\n    if (parseInt(quantity) === 0) {\n      cartWidget[_i].classList.add(cssClasses.empty);\n    } else {\n      cartWidget[_i].classList.remove(cssClasses.empty);\n    }\n  }\n}\nvar theme = fourthwallTheme;\nvar strings = theme.strings;\nvar urls = theme.urls;\nvar cssClasses = {\n  loading: 'loading',\n  hidden: 'hidden',\n  active: 'active',\n  visible: 'visible',\n  empty: 'empty',\n  unavailable: 'unavailable',\n  disabled: 'disabled',\n  paused: 'paused',\n  filled: 'filled',\n  selected: 'selected',\n  noScroll: 'no-scroll'\n};\nfunction setBodyScroll(set) {\n  var body = document.querySelector('body');\n  if (set === false && !body.classList.contains(cssClasses.noScroll)) {\n    body.classList.add(cssClasses.noScroll);\n  } else {\n    body.classList.remove(cssClasses.noScroll);\n  }\n}\nvar isElementTopInViewport = function isElementTopInViewport(_ref) {\n  var element = _ref.element,\n    offset = _ref.offset;\n  if (!offset) offset = 0;\n  if (element.getBoundingClientRect().top - offset >= 0) return true;\n  return false;\n};\nvar scrollToElement = function scrollToElement(_ref2) {\n  var element = _ref2.element,\n    offset = _ref2.offset,\n    behavior = _ref2.behavior,\n    ifNeeded = _ref2.ifNeeded;\n  if (ifNeeded === true && isElementTopInViewport({\n    element: element,\n    offset: offset\n  })) return;\n  if (!offset) offset = 0;\n  if (!behavior) behavior = 'smooth';\n  var viewportY = window.scrollY || window.pageYOffset;\n  var top = element.getBoundingClientRect().top + viewportY - offset;\n  window.scrollTo({\n    top: top,\n    left: 0,\n    behavior: behavior\n  });\n};\nvar cssEscape = window.CSS.escape || function (s) {\n  return s.replace(/([^\\x7F-\\uFFFF\\w-])/g, function (c) {\n    return '\\\\' + c.charCodeAt(0).toString(16) + ' ';\n  });\n};\nfunction getURLVariantId() {\n  var queryString = window.location.search.substring(1);\n  var queryParams = queryString.split('&');\n  var paramsObject = queryParams.reduce(function (params, currentParam) {\n    var _currentParam$split = currentParam.split('='),\n      _currentParam$split2 = _slicedToArray(_currentParam$split, 2),\n      key = _currentParam$split2[0],\n      value = _currentParam$split2[1];\n    params[key] = value;\n    return params;\n  }, {});\n  var variantValue = paramsObject['variant'];\n  return variantValue;\n}\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/utils/index.js?");
723
724/***/ }),
725
726/***/ "./src/scripts/utils/newsletterService.js":
727/*!************************************************!*\
728  !*** ./src/scripts/utils/newsletterService.js ***!
729  \************************************************/
730/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
731
732"use strict";
733eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"newsletterService\": () => (/* binding */ newsletterService)\n/* harmony export */ });\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ \"./node_modules/axios/index.js\");\n/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);\n\nvar apiUrl = '/api/mailing-list';\nvar newsletterService = {\n  register: function register(formData, token) {\n    return axios__WEBPACK_IMPORTED_MODULE_0___default().post(apiUrl, formData, {\n      headers: {\n        'x-recaptcha-token': token,\n        'x-retry-count': 3\n      }\n    });\n  }\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/utils/newsletterService.js?");
734
735/***/ }),
736
737/***/ "./src/scripts/utils/validate.js":
738/*!***************************************!*\
739  !*** ./src/scripts/utils/validate.js ***!
740  \***************************************/
741/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
742
743"use strict";
744eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"isEmail\": () => (/* binding */ isEmail),\n/* harmony export */   \"isEmpty\": () => (/* binding */ isEmpty),\n/* harmony export */   \"isNumeric\": () => (/* binding */ isNumeric)\n/* harmony export */ });\n/* harmony import */ var validator_lib_isEmail__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! validator/lib/isEmail */ \"./node_modules/validator/lib/isEmail.js\");\n/* harmony import */ var validator_lib_isEmail__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(validator_lib_isEmail__WEBPACK_IMPORTED_MODULE_0__);\n\nvar isEmpty = function isEmpty(string) {\n  if (string === '') {\n    return true;\n  }\n  return false;\n};\nvar isNumeric = function isNumeric(string) {\n  if (!isNaN(string)) {\n    return true;\n  }\n  return false;\n};\nvar isEmail = function isEmail(string) {\n  return validator_lib_isEmail__WEBPACK_IMPORTED_MODULE_0___default()(string);\n};\n\n//# sourceURL=webpack://digital-throwback/./src/scripts/utils/validate.js?");
745
746/***/ }),
747
vendor: 1,958 bytes, lines 748-757
748/***/ "./node_modules/classnames/index.js":
749/*!******************************************!*\
750  !*** ./node_modules/classnames/index.js ***!
751  \******************************************/
752/***/ ((module, exports) => {
753
754eval("var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!\n  Copyright (c) 2018 Jed Watson.\n  Licensed under the MIT License (MIT), see\n  http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif ( true && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (true) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\t!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {\n\t\t\treturn classNames;\n\t\t}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t} else {}\n}());\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/classnames/index.js?");
755
756/***/ }),
757
vendor: 6,784 bytes, lines 758-767
758/***/ "./node_modules/dayjs/dayjs.min.js":
759/*!*****************************************!*\
760  !*** ./node_modules/dayjs/dayjs.min.js ***!
761  \*****************************************/
762/***/ (function(module) {
763
764eval("!function(t,e){ true?module.exports=e():0}(this,function(){\"use strict\";var t=\"millisecond\",e=\"second\",n=\"minute\",r=\"hour\",i=\"day\",s=\"week\",u=\"month\",a=\"quarter\",o=\"year\",f=\"date\",h=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[^0-9]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,c=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,d={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\")},$=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},l={s:$,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+$(r,2,\"0\")+\":\"+$(i,2,\"0\")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,u),s=n-i<0,a=e.clone().add(r+(s?-1:1),u);return+(-(r+(n-i)/(s?i-a:a-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(h){return{M:u,y:o,w:s,d:i,D:f,h:r,m:n,s:e,ms:t,Q:a}[h]||String(h||\"\").toLowerCase().replace(/s$/,\"\")},u:function(t){return void 0===t}},y=\"en\",M={};M[y]=d;var m=function(t){return t instanceof S},D=function(t,e,n){var r;if(!t)return y;if(\"string\"==typeof t)M[t]&&(r=t),e&&(M[t]=e,r=t);else{var i=t.name;M[i]=t,r=i}return!n&&r&&(y=r),r||!n&&y},v=function(t,e){if(m(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new S(n)},g=l;g.l=D,g.i=m,g.w=function(t,e){return v(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var S=function(){function d(t){this.$L=D(t.locale,null,!0),this.parse(t)}var $=d.prototype;return $.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(g.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init()},$.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},$.$utils=function(){return g},$.isValid=function(){return!(\"Invalid Date\"===this.$d.toString())},$.isSame=function(t,e){var n=v(t);return this.startOf(e)<=n&&n<=this.endOf(e)},$.isAfter=function(t,e){return v(t)<this.startOf(e)},$.isBefore=function(t,e){return this.endOf(e)<v(t)},$.$g=function(t,e,n){return g.u(t)?this[e]:this.set(n,t)},$.unix=function(){return Math.floor(this.valueOf()/1e3)},$.valueOf=function(){return this.$d.getTime()},$.startOf=function(t,a){var h=this,c=!!g.u(a)||a,d=g.p(t),$=function(t,e){var n=g.w(h.$u?Date.UTC(h.$y,e,t):new Date(h.$y,e,t),h);return c?n:n.endOf(i)},l=function(t,e){return g.w(h.toDate()[t].apply(h.toDate(\"s\"),(c?[0,0,0,0]:[23,59,59,999]).slice(e)),h)},y=this.$W,M=this.$M,m=this.$D,D=\"set\"+(this.$u?\"UTC\":\"\");switch(d){case o:return c?$(1,0):$(31,11);case u:return c?$(1,M):$(0,M+1);case s:var v=this.$locale().weekStart||0,S=(y<v?y+7:y)-v;return $(c?m-S:m+(6-S),M);case i:case f:return l(D+\"Hours\",0);case r:return l(D+\"Minutes\",1);case n:return l(D+\"Seconds\",2);case e:return l(D+\"Milliseconds\",3);default:return this.clone()}},$.endOf=function(t){return this.startOf(t,!1)},$.$set=function(s,a){var h,c=g.p(s),d=\"set\"+(this.$u?\"UTC\":\"\"),$=(h={},h[i]=d+\"Date\",h[f]=d+\"Date\",h[u]=d+\"Month\",h[o]=d+\"FullYear\",h[r]=d+\"Hours\",h[n]=d+\"Minutes\",h[e]=d+\"Seconds\",h[t]=d+\"Milliseconds\",h)[c],l=c===i?this.$D+(a-this.$W):a;if(c===u||c===o){var y=this.clone().set(f,1);y.$d[$](l),y.init(),this.$d=y.set(f,Math.min(this.$D,y.daysInMonth())).$d}else $&&this.$d[$](l);return this.init(),this},$.set=function(t,e){return this.clone().$set(t,e)},$.get=function(t){return this[g.p(t)]()},$.add=function(t,a){var f,h=this;t=Number(t);var c=g.p(a),d=function(e){var n=v(h);return g.w(n.date(n.date()+Math.round(e*t)),h)};if(c===u)return this.set(u,this.$M+t);if(c===o)return this.set(o,this.$y+t);if(c===i)return d(1);if(c===s)return d(7);var $=(f={},f[n]=6e4,f[r]=36e5,f[e]=1e3,f)[c]||1,l=this.$d.getTime()+t*$;return g.w(l,this)},$.subtract=function(t,e){return this.add(-1*t,e)},$.format=function(t){var e=this;if(!this.isValid())return\"Invalid Date\";var n=t||\"YYYY-MM-DDTHH:mm:ssZ\",r=g.z(this),i=this.$locale(),s=this.$H,u=this.$m,a=this.$M,o=i.weekdays,f=i.months,h=function(t,r,i,s){return t&&(t[r]||t(e,n))||i[r].substr(0,s)},d=function(t){return g.s(s%12||12,t,\"0\")},$=i.meridiem||function(t,e,n){var r=t<12?\"AM\":\"PM\";return n?r.toLowerCase():r},l={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:g.s(a+1,2,\"0\"),MMM:h(i.monthsShort,a,f,3),MMMM:h(f,a),D:this.$D,DD:g.s(this.$D,2,\"0\"),d:String(this.$W),dd:h(i.weekdaysMin,this.$W,o,2),ddd:h(i.weekdaysShort,this.$W,o,3),dddd:o[this.$W],H:String(s),HH:g.s(s,2,\"0\"),h:d(1),hh:d(2),a:$(s,u,!0),A:$(s,u,!1),m:String(u),mm:g.s(u,2,\"0\"),s:String(this.$s),ss:g.s(this.$s,2,\"0\"),SSS:g.s(this.$ms,3,\"0\"),Z:r};return n.replace(c,function(t,e){return e||l[t]||r.replace(\":\",\"\")})},$.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},$.diff=function(t,f,h){var c,d=g.p(f),$=v(t),l=6e4*($.utcOffset()-this.utcOffset()),y=this-$,M=g.m(this,$);return M=(c={},c[o]=M/12,c[u]=M,c[a]=M/3,c[s]=(y-l)/6048e5,c[i]=(y-l)/864e5,c[r]=y/36e5,c[n]=y/6e4,c[e]=y/1e3,c)[d]||y,h?M:g.a(M)},$.daysInMonth=function(){return this.endOf(u).$D},$.$locale=function(){return M[this.$L]},$.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=D(t,e,!0);return r&&(n.$L=r),n},$.clone=function(){return g.w(this.$d,this)},$.toDate=function(){return new Date(this.valueOf())},$.toJSON=function(){return this.isValid()?this.toISOString():null},$.toISOString=function(){return this.$d.toISOString()},$.toString=function(){return this.$d.toUTCString()},d}(),p=S.prototype;return v.prototype=p,[[\"$ms\",t],[\"$s\",e],[\"$m\",n],[\"$H\",r],[\"$W\",i],[\"$M\",u],[\"$y\",o],[\"$D\",f]].forEach(function(t){p[t[1]]=function(e){return this.$g(e,t[0],t[1])}}),v.extend=function(t,e){return t.$i||(t(e,S,v),t.$i=!0),v},v.locale=D,v.isDayjs=m,v.unix=function(t){return v(1e3*t)},v.en=M[y],v.Ls=M,v.p={},v});\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/dayjs/dayjs.min.js?");
765
766/***/ }),
767
vendor: 2,161 bytes, lines 768-777
768/***/ "./node_modules/dayjs/plugin/utc.js":
769/*!******************************************!*\
770  !*** ./node_modules/dayjs/plugin/utc.js ***!
771  \******************************************/
772/***/ (function(module) {
773
774eval("!function(t,i){ true?module.exports=i():0}(this,function(){\"use strict\";return function(t,i,e){var s=i.prototype;e.utc=function(t){return new i({date:t,utc:!0,args:arguments})},s.utc=function(t){var i=e(this.toDate(),{locale:this.$L,utc:!0});return t?i.add(this.utcOffset(),\"minute\"):i},s.local=function(){return e(this.toDate(),{locale:this.$L,utc:!1})};var f=s.parse;s.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),f.call(this,t)};var n=s.init;s.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else n.call(this)};var u=s.utcOffset;s.utcOffset=function(t,i){var e=this.$utils().u;if(e(t))return this.$u?0:e(this.$offset)?u.call(this):this.$offset;var s=Math.abs(t)<=16?60*t:t,f=this;if(i)return f.$offset=s,f.$u=0===t,f;if(0!==t){var n=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(f=this.local().add(s+n,\"minute\")).$offset=s,f.$x.$localOffset=n}else f=this.utc();return f};var o=s.format;s.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return o.call(this,i)},s.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||(new Date).getTimezoneOffset());return this.$d.valueOf()-6e4*t},s.isUTC=function(){return!!this.$u},s.toISOString=function(){return this.toDate().toISOString()},s.toString=function(){return this.toDate().toUTCString()};var r=s.toDate;s.toDate=function(t){return\"s\"===t&&this.$offset?e(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():r.call(this)};var a=s.diff;s.diff=function(t,i,s){if(t&&this.$u===t.$u)return a.call(this,t,i,s);var f=this.local(),n=e(t).local();return a.call(f,n,i,s)}}});\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/dayjs/plugin/utc.js?");
775
776/***/ }),
777
vendor: 850 bytes, lines 778-788
778/***/ "./node_modules/ismobilejs/esm/index.js":
779/*!**********************************************!*\
780  !*** ./node_modules/ismobilejs/esm/index.js ***!
781  \**********************************************/
782/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
783
784"use strict";
785eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (/* reexport safe */ _isMobile__WEBPACK_IMPORTED_MODULE_0__[\"default\"])\n/* harmony export */ });\n/* harmony import */ var _isMobile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isMobile */ \"./node_modules/ismobilejs/esm/isMobile.js\");\n\n\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack://digital-throwback/./node_modules/ismobilejs/esm/index.js?");
786
787/***/ }),
788
vendor: 5,139 bytes, lines 789-799
789/***/ "./node_modules/ismobilejs/esm/isMobile.js":
790/*!*************************************************!*\
791  !*** ./node_modules/ismobilejs/esm/isMobile.js ***!
792  \*************************************************/
793/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
794
795"use strict";
796eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"default\": () => (/* binding */ isMobile)\n/* harmony export */ });\nvar appleIphone = /iPhone/i;\nvar appleIpod = /iPod/i;\nvar appleTablet = /iPad/i;\nvar appleUniversal = /\\biOS-universal(?:.+)Mac\\b/i;\nvar androidPhone = /\\bAndroid(?:.+)Mobile\\b/i;\nvar androidTablet = /Android/i;\nvar amazonPhone = /(?:SD4930UR|\\bSilk(?:.+)Mobile\\b)/i;\nvar amazonTablet = /Silk/i;\nvar windowsPhone = /Windows Phone/i;\nvar windowsTablet = /\\bWindows(?:.+)ARM\\b/i;\nvar otherBlackBerry = /BlackBerry/i;\nvar otherBlackBerry10 = /BB10/i;\nvar otherOpera = /Opera Mini/i;\nvar otherChrome = /\\b(CriOS|Chrome)(?:.+)Mobile/i;\nvar otherFirefox = /Mobile(?:.+)Firefox\\b/i;\nvar isAppleTabletOnIos13 = function (navigator) {\n    return (typeof navigator !== 'undefined' &&\n        navigator.platform === 'MacIntel' &&\n        typeof navigator.maxTouchPoints === 'number' &&\n        navigator.maxTouchPoints > 1 &&\n        typeof MSStream === 'undefined');\n};\nfunction createMatch(userAgent) {\n    return function (regex) { return regex.test(userAgent); };\n}\nfunction isMobile(param) {\n    var nav = {\n        userAgent: '',\n        platform: '',\n        maxTouchPoints: 0\n    };\n    if (!param && typeof navigator !== 'undefined') {\n        nav = {\n            userAgent: navigator.userAgent,\n            platform: navigator.platform,\n            maxTouchPoints: navigator.maxTouchPoints || 0\n        };\n    }\n    else if (typeof param === 'string') {\n        nav.userAgent = param;\n    }\n    else if (param && param.userAgent) {\n        nav = {\n            userAgent: param.userAgent,\n            platform: param.platform,\n            maxTouchPoints: param.maxTouchPoints || 0\n        };\n    }\n    var userAgent = nav.userAgent;\n    var tmp = userAgent.split('[FBAN');\n    if (typeof tmp[1] !== 'undefined') {\n        userAgent = tmp[0];\n    }\n    tmp = userAgent.split('Twitter');\n    if (typeof tmp[1] !== 'undefined') {\n        userAgent = tmp[0];\n    }\n    var match = createMatch(userAgent);\n    var result = {\n        apple: {\n            phone: match(appleIphone) && !match(windowsPhone),\n            ipod: match(appleIpod),\n            tablet: !match(appleIphone) &&\n                (match(appleTablet) || isAppleTabletOnIos13(nav)) &&\n                !match(windowsPhone),\n            universal: match(appleUniversal),\n            device: (match(appleIphone) ||\n                match(appleIpod) ||\n                match(appleTablet) ||\n                match(appleUniversal) ||\n                isAppleTabletOnIos13(nav)) &&\n                !match(windowsPhone)\n        },\n        amazon: {\n            phone: match(amazonPhone),\n            tablet: !match(amazonPhone) && match(amazonTablet),\n            device: match(amazonPhone) || match(amazonTablet)\n        },\n        android: {\n            phone: (!match(windowsPhone) && match(amazonPhone)) ||\n                (!match(windowsPhone) && match(androidPhone)),\n            tablet: !match(windowsPhone) &&\n                !match(amazonPhone) &&\n                !match(androidPhone) &&\n                (match(amazonTablet) || match(androidTablet)),\n            device: (!match(windowsPhone) &&\n                (match(amazonPhone) ||\n                    match(amazonTablet) ||\n                    match(androidPhone) ||\n                    match(androidTablet))) ||\n                match(/\\bokhttp\\b/i)\n        },\n        windows: {\n            phone: match(windowsPhone),\n            tablet: match(windowsTablet),\n            device: match(windowsPhone) || match(windowsTablet)\n        },\n        other: {\n            blackberry: match(otherBlackBerry),\n            blackberry10: match(otherBlackBerry10),\n            opera: match(otherOpera),\n            firefox: match(otherFirefox),\n            chrome: match(otherChrome),\n            device: match(otherBlackBerry) ||\n                match(otherBlackBerry10) ||\n                match(otherOpera) ||\n                match(otherFirefox) ||\n                match(otherChrome)\n        },\n        any: false,\n        phone: false,\n        tablet: false\n    };\n    result.any =\n        result.apple.device ||\n            result.android.device ||\n            result.windows.device ||\n            result.other.device;\n    result.phone =\n        result.apple.phone || result.android.phone || result.windows.phone;\n    result.tablet =\n        result.apple.tablet || result.android.tablet || result.windows.tablet;\n    return result;\n}\n//# sourceMappingURL=isMobile.js.map\n\n//# sourceURL=webpack://digital-throwback/./node_modules/ismobilejs/esm/isMobile.js?");
797
798/***/ }),
799
vendor: 11,376 bytes, lines 800-810
800/***/ "./node_modules/preact/dist/preact.module.js":
801/*!***************************************************!*\
802  !*** ./node_modules/preact/dist/preact.module.js ***!
803  \***************************************************/
804/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
805
806"use strict";
807eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"Component\": () => (/* binding */ p),\n/* harmony export */   \"Fragment\": () => (/* binding */ y),\n/* harmony export */   \"cloneElement\": () => (/* binding */ S),\n/* harmony export */   \"createContext\": () => (/* binding */ q),\n/* harmony export */   \"createElement\": () => (/* binding */ a),\n/* harmony export */   \"createRef\": () => (/* binding */ h),\n/* harmony export */   \"h\": () => (/* binding */ a),\n/* harmony export */   \"hydrate\": () => (/* binding */ O),\n/* harmony export */   \"isValidElement\": () => (/* binding */ l),\n/* harmony export */   \"options\": () => (/* binding */ n),\n/* harmony export */   \"render\": () => (/* binding */ N),\n/* harmony export */   \"toChildArray\": () => (/* binding */ w)\n/* harmony export */ });\nvar n,l,u,i,t,o,r={},f=[],e=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function c(n,l){for(var u in l)n[u]=l[u];return n}function s(n){var l=n.parentNode;l&&l.removeChild(n)}function a(n,l,u){var i,t,o,r=arguments,f={};for(o in l)\"key\"==o?i=l[o]:\"ref\"==o?t=l[o]:f[o]=l[o];if(arguments.length>3)for(u=[u],o=3;o<arguments.length;o++)u.push(r[o]);if(null!=u&&(f.children=u),\"function\"==typeof n&&null!=n.defaultProps)for(o in n.defaultProps)void 0===f[o]&&(f[o]=n.defaultProps[o]);return v(n,f,i,t,null)}function v(l,u,i,t,o){var r={type:l,props:u,key:i,ref:t,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==o?++n.__v:o};return null!=n.vnode&&n.vnode(r),r}function h(){return{current:null}}function y(n){return n.children}function p(n,l){this.props=n,this.context=l}function d(n,l){if(null==l)return n.__?d(n.__,n.__.__k.indexOf(n)+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return\"function\"==typeof n.type?d(n):null}function _(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return _(n)}}function k(l){(!l.__d&&(l.__d=!0)&&u.push(l)&&!b.__r++||t!==n.debounceRendering)&&((t=n.debounceRendering)||i)(b)}function b(){for(var n;b.__r=u.length;)n=u.sort(function(n,l){return n.__v.__b-l.__v.__b}),u=[],n.some(function(n){var l,u,i,t,o,r;n.__d&&(o=(t=(l=n).__v).__e,(r=l.__P)&&(u=[],(i=c({},t)).__v=t.__v+1,I(r,t,i,l.__n,void 0!==r.ownerSVGElement,null!=t.__h?[o]:null,u,null==o?d(t):o,t.__h),T(u,t),t.__e!=o&&_(t)))})}function m(n,l,u,i,t,o,e,c,s,a){var h,p,_,k,b,m,w,A=i&&i.__k||f,P=A.length;for(u.__k=[],h=0;h<l.length;h++)if(null!=(k=u.__k[h]=null==(k=l[h])||\"boolean\"==typeof k?null:\"string\"==typeof k||\"number\"==typeof k||\"bigint\"==typeof k?v(null,k,null,null,k):Array.isArray(k)?v(y,{children:k},null,null,null):k.__b>0?v(k.type,k.props,k.key,null,k.__v):k)){if(k.__=u,k.__b=u.__b+1,null===(_=A[h])||_&&k.key==_.key&&k.type===_.type)A[h]=void 0;else for(p=0;p<P;p++){if((_=A[p])&&k.key==_.key&&k.type===_.type){A[p]=void 0;break}_=null}I(n,k,_=_||r,t,o,e,c,s,a),b=k.__e,(p=k.ref)&&_.ref!=p&&(w||(w=[]),_.ref&&w.push(_.ref,null,k),w.push(p,k.__c||b,k)),null!=b?(null==m&&(m=b),\"function\"==typeof k.type&&null!=k.__k&&k.__k===_.__k?k.__d=s=g(k,s,n):s=x(n,k,_,A,b,s),a||\"option\"!==u.type?\"function\"==typeof u.type&&(u.__d=s):n.value=\"\"):s&&_.__e==s&&s.parentNode!=n&&(s=d(_))}for(u.__e=m,h=P;h--;)null!=A[h]&&(\"function\"==typeof u.type&&null!=A[h].__e&&A[h].__e==u.__d&&(u.__d=d(i,h+1)),L(A[h],A[h]));if(w)for(h=0;h<w.length;h++)z(w[h],w[++h],w[++h])}function g(n,l,u){var i,t;for(i=0;i<n.__k.length;i++)(t=n.__k[i])&&(t.__=n,l=\"function\"==typeof t.type?g(t,l,u):x(u,t,t,n.__k,t.__e,l));return l}function w(n,l){return l=l||[],null==n||\"boolean\"==typeof n||(Array.isArray(n)?n.some(function(n){w(n,l)}):l.push(n)),l}function x(n,l,u,i,t,o){var r,f,e;if(void 0!==l.__d)r=l.__d,l.__d=void 0;else if(null==u||t!=o||null==t.parentNode)n:if(null==o||o.parentNode!==n)n.appendChild(t),r=null;else{for(f=o,e=0;(f=f.nextSibling)&&e<i.length;e+=2)if(f==t)break n;n.insertBefore(t,o),r=o}return void 0!==r?r:t.nextSibling}function A(n,l,u,i,t){var o;for(o in u)\"children\"===o||\"key\"===o||o in l||C(n,o,null,u[o],i);for(o in l)t&&\"function\"!=typeof l[o]||\"children\"===o||\"key\"===o||\"value\"===o||\"checked\"===o||u[o]===l[o]||C(n,o,l[o],u[o],i)}function P(n,l,u){\"-\"===l[0]?n.setProperty(l,u):n[l]=null==u?\"\":\"number\"!=typeof u||e.test(l)?u:u+\"px\"}function C(n,l,u,i,t){var o;n:if(\"style\"===l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof i&&(n.style.cssText=i=\"\"),i)for(l in i)u&&l in u||P(n.style,l,\"\");if(u)for(l in u)i&&u[l]===i[l]||P(n.style,l,u[l])}else if(\"o\"===l[0]&&\"n\"===l[1])o=l!==(l=l.replace(/Capture$/,\"\")),l=l.toLowerCase()in n?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?i||n.addEventListener(l,o?H:$,o):n.removeEventListener(l,o?H:$,o);else if(\"dangerouslySetInnerHTML\"!==l){if(t)l=l.replace(/xlink[H:h]/,\"h\").replace(/sName$/,\"s\");else if(\"href\"!==l&&\"list\"!==l&&\"form\"!==l&&\"tabIndex\"!==l&&\"download\"!==l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null!=u&&(!1!==u||\"a\"===l[0]&&\"r\"===l[1])?n.setAttribute(l,u):n.removeAttribute(l))}}function $(l){this.l[l.type+!1](n.event?n.event(l):l)}function H(l){this.l[l.type+!0](n.event?n.event(l):l)}function I(l,u,i,t,o,r,f,e,s){var a,v,h,d,_,k,b,g,w,x,A,P=u.type;if(void 0!==u.constructor)return null;null!=i.__h&&(s=i.__h,e=u.__e=i.__e,u.__h=null,r=[e]),(a=n.__b)&&a(u);try{n:if(\"function\"==typeof P){if(g=u.props,w=(a=P.contextType)&&t[a.__c],x=a?w?w.props.value:a.__:t,i.__c?b=(v=u.__c=i.__c).__=v.__E:(\"prototype\"in P&&P.prototype.render?u.__c=v=new P(g,x):(u.__c=v=new p(g,x),v.constructor=P,v.render=M),w&&w.sub(v),v.props=g,v.state||(v.state={}),v.context=x,v.__n=t,h=v.__d=!0,v.__h=[]),null==v.__s&&(v.__s=v.state),null!=P.getDerivedStateFromProps&&(v.__s==v.state&&(v.__s=c({},v.__s)),c(v.__s,P.getDerivedStateFromProps(g,v.__s))),d=v.props,_=v.state,h)null==P.getDerivedStateFromProps&&null!=v.componentWillMount&&v.componentWillMount(),null!=v.componentDidMount&&v.__h.push(v.componentDidMount);else{if(null==P.getDerivedStateFromProps&&g!==d&&null!=v.componentWillReceiveProps&&v.componentWillReceiveProps(g,x),!v.__e&&null!=v.shouldComponentUpdate&&!1===v.shouldComponentUpdate(g,v.__s,x)||u.__v===i.__v){v.props=g,v.state=v.__s,u.__v!==i.__v&&(v.__d=!1),v.__v=u,u.__e=i.__e,u.__k=i.__k,u.__k.forEach(function(n){n&&(n.__=u)}),v.__h.length&&f.push(v);break n}null!=v.componentWillUpdate&&v.componentWillUpdate(g,v.__s,x),null!=v.componentDidUpdate&&v.__h.push(function(){v.componentDidUpdate(d,_,k)})}v.context=x,v.props=g,v.state=v.__s,(a=n.__r)&&a(u),v.__d=!1,v.__v=u,v.__P=l,a=v.render(v.props,v.state,v.context),v.state=v.__s,null!=v.getChildContext&&(t=c(c({},t),v.getChildContext())),h||null==v.getSnapshotBeforeUpdate||(k=v.getSnapshotBeforeUpdate(d,_)),A=null!=a&&a.type===y&&null==a.key?a.props.children:a,m(l,Array.isArray(A)?A:[A],u,i,t,o,r,f,e,s),v.base=u.__e,u.__h=null,v.__h.length&&f.push(v),b&&(v.__E=v.__=null),v.__e=!1}else null==r&&u.__v===i.__v?(u.__k=i.__k,u.__e=i.__e):u.__e=j(i.__e,u,i,t,o,r,f,s);(a=n.diffed)&&a(u)}catch(l){u.__v=null,(s||null!=r)&&(u.__e=e,u.__h=!!s,r[r.indexOf(e)]=null),n.__e(l,u,i)}}function T(l,u){n.__c&&n.__c(u,l),l.some(function(u){try{l=u.__h,u.__h=[],l.some(function(n){n.call(u)})}catch(l){n.__e(l,u.__v)}})}function j(n,l,u,i,t,o,e,c){var a,v,h,y,p=u.props,d=l.props,_=l.type,k=0;if(\"svg\"===_&&(t=!0),null!=o)for(;k<o.length;k++)if((a=o[k])&&(a===n||(_?a.localName==_:3==a.nodeType))){n=a,o[k]=null;break}if(null==n){if(null===_)return document.createTextNode(d);n=t?document.createElementNS(\"http://www.w3.org/2000/svg\",_):document.createElement(_,d.is&&d),o=null,c=!1}if(null===_)p===d||c&&n.data===d||(n.data=d);else{if(o=o&&f.slice.call(n.childNodes),v=(p=u.props||r).dangerouslySetInnerHTML,h=d.dangerouslySetInnerHTML,!c){if(null!=o)for(p={},y=0;y<n.attributes.length;y++)p[n.attributes[y].name]=n.attributes[y].value;(h||v)&&(h&&(v&&h.__html==v.__html||h.__html===n.innerHTML)||(n.innerHTML=h&&h.__html||\"\"))}if(A(n,d,p,t,c),h)l.__k=[];else if(k=l.props.children,m(n,Array.isArray(k)?k:[k],l,u,i,t&&\"foreignObject\"!==_,o,e,n.firstChild,c),null!=o)for(k=o.length;k--;)null!=o[k]&&s(o[k]);c||(\"value\"in d&&void 0!==(k=d.value)&&(k!==n.value||\"progress\"===_&&!k)&&C(n,\"value\",k,p.value,!1),\"checked\"in d&&void 0!==(k=d.checked)&&k!==n.checked&&C(n,\"checked\",k,p.checked,!1))}return n}function z(l,u,i){try{\"function\"==typeof l?l(u):l.current=u}catch(l){n.__e(l,i)}}function L(l,u,i){var t,o,r;if(n.unmount&&n.unmount(l),(t=l.ref)&&(t.current&&t.current!==l.__e||z(t,null,u)),i||\"function\"==typeof l.type||(i=null!=(o=l.__e)),l.__e=l.__d=void 0,null!=(t=l.__c)){if(t.componentWillUnmount)try{t.componentWillUnmount()}catch(l){n.__e(l,u)}t.base=t.__P=null}if(t=l.__k)for(r=0;r<t.length;r++)t[r]&&L(t[r],u,i);null!=o&&s(o)}function M(n,l,u){return this.constructor(n,u)}function N(l,u,i){var t,o,e;n.__&&n.__(l,u),o=(t=\"function\"==typeof i)?null:i&&i.__k||u.__k,e=[],I(u,l=(!t&&i||u).__k=a(y,null,[l]),o||r,r,void 0!==u.ownerSVGElement,!t&&i?[i]:o?null:u.firstChild?f.slice.call(u.childNodes):null,e,!t&&i?i:o?o.__e:u.firstChild,t),T(e,l)}function O(n,l){N(n,l,O)}function S(n,l,u){var i,t,o,r=arguments,f=c({},n.props);for(o in l)\"key\"==o?i=l[o]:\"ref\"==o?t=l[o]:f[o]=l[o];if(arguments.length>3)for(u=[u],o=3;o<arguments.length;o++)u.push(r[o]);return null!=u&&(f.children=u),v(n.type,f,i||n.key,t||n.ref,null)}function q(n,l){var u={__c:l=\"__cC\"+o++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,i;return this.getChildContext||(u=[],(i={})[l]=this,this.getChildContext=function(){return i},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(k)},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n={__e:function(n,l){for(var u,i,t;l=l.__;)if((u=l.__c)&&!u.__)try{if((i=u.constructor)&&null!=i.getDerivedStateFromError&&(u.setState(i.getDerivedStateFromError(n)),t=u.__d),null!=u.componentDidCatch&&(u.componentDidCatch(n),t=u.__d),t)return u.__E=u}catch(l){n=l}throw n},__v:0},l=function(n){return null!=n&&void 0===n.constructor},p.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=c({},this.state),\"function\"==typeof n&&(n=n(c({},u),this.props)),n&&c(u,n),null!=n&&this.__v&&(l&&this.__h.push(l),k(this))},p.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),k(this))},p.prototype.render=y,u=[],i=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,b.__r=0,o=0;\n//# sourceMappingURL=preact.module.js.map\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/preact/dist/preact.module.js?");
808
809/***/ }),
810
vendor: 4,771 bytes, lines 811-821
811/***/ "./node_modules/preact/hooks/dist/hooks.module.js":
812/*!********************************************************!*\
813  !*** ./node_modules/preact/hooks/dist/hooks.module.js ***!
814  \********************************************************/
815/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
816
817"use strict";
818eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"useCallback\": () => (/* binding */ A),\n/* harmony export */   \"useContext\": () => (/* binding */ F),\n/* harmony export */   \"useDebugValue\": () => (/* binding */ T),\n/* harmony export */   \"useEffect\": () => (/* binding */ y),\n/* harmony export */   \"useErrorBoundary\": () => (/* binding */ q),\n/* harmony export */   \"useImperativeHandle\": () => (/* binding */ _),\n/* harmony export */   \"useLayoutEffect\": () => (/* binding */ h),\n/* harmony export */   \"useMemo\": () => (/* binding */ d),\n/* harmony export */   \"useReducer\": () => (/* binding */ p),\n/* harmony export */   \"useRef\": () => (/* binding */ s),\n/* harmony export */   \"useState\": () => (/* binding */ l)\n/* harmony export */ });\n/* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! preact */ \"./node_modules/preact/dist/preact.module.js\");\nvar t,u,r,o=0,i=[],c=preact__WEBPACK_IMPORTED_MODULE_0__.options.__b,f=preact__WEBPACK_IMPORTED_MODULE_0__.options.__r,e=preact__WEBPACK_IMPORTED_MODULE_0__.options.diffed,a=preact__WEBPACK_IMPORTED_MODULE_0__.options.__c,v=preact__WEBPACK_IMPORTED_MODULE_0__.options.unmount;function m(t,r){preact__WEBPACK_IMPORTED_MODULE_0__.options.__h&&preact__WEBPACK_IMPORTED_MODULE_0__.options.__h(u,t,o||r),o=0;var i=u.__H||(u.__H={__:[],__h:[]});return t>=i.__.length&&i.__.push({}),i.__[t]}function l(n){return o=1,p(w,n)}function p(n,r,o){var i=m(t++,2);return i.t=n,i.__c||(i.__=[o?o(r):w(void 0,r),function(n){var t=i.t(i.__[0],n);i.__[0]!==t&&(i.__=[t,i.__[1]],i.__c.setState({}))}],i.__c=u),i.__}function y(r,o){var i=m(t++,3);!preact__WEBPACK_IMPORTED_MODULE_0__.options.__s&&k(i.__H,o)&&(i.__=r,i.__H=o,u.__H.__h.push(i))}function h(r,o){var i=m(t++,4);!preact__WEBPACK_IMPORTED_MODULE_0__.options.__s&&k(i.__H,o)&&(i.__=r,i.__H=o,u.__h.push(i))}function s(n){return o=5,d(function(){return{current:n}},[])}function _(n,t,u){o=6,h(function(){\"function\"==typeof n?n(t()):n&&(n.current=t())},null==u?u:u.concat(n))}function d(n,u){var r=m(t++,7);return k(r.__H,u)&&(r.__=n(),r.__H=u,r.__h=n),r.__}function A(n,t){return o=8,d(function(){return n},t)}function F(n){var r=u.context[n.__c],o=m(t++,9);return o.__c=n,r?(null==o.__&&(o.__=!0,r.sub(u)),r.props.value):n.__}function T(t,u){preact__WEBPACK_IMPORTED_MODULE_0__.options.useDebugValue&&preact__WEBPACK_IMPORTED_MODULE_0__.options.useDebugValue(u?u(t):t)}function q(n){var r=m(t++,10),o=l();return r.__=n,u.componentDidCatch||(u.componentDidCatch=function(n){r.__&&r.__(n),o[1](n)}),[o[0],function(){o[1](void 0)}]}function x(){i.forEach(function(t){if(t.__P)try{t.__H.__h.forEach(g),t.__H.__h.forEach(j),t.__H.__h=[]}catch(u){t.__H.__h=[],preact__WEBPACK_IMPORTED_MODULE_0__.options.__e(u,t.__v)}}),i=[]}preact__WEBPACK_IMPORTED_MODULE_0__.options.__b=function(n){u=null,c&&c(n)},preact__WEBPACK_IMPORTED_MODULE_0__.options.__r=function(n){f&&f(n),t=0;var r=(u=n.__c).__H;r&&(r.__h.forEach(g),r.__h.forEach(j),r.__h=[])},preact__WEBPACK_IMPORTED_MODULE_0__.options.diffed=function(t){e&&e(t);var o=t.__c;o&&o.__H&&o.__H.__h.length&&(1!==i.push(o)&&r===preact__WEBPACK_IMPORTED_MODULE_0__.options.requestAnimationFrame||((r=preact__WEBPACK_IMPORTED_MODULE_0__.options.requestAnimationFrame)||function(n){var t,u=function(){clearTimeout(r),b&&cancelAnimationFrame(t),setTimeout(n)},r=setTimeout(u,100);b&&(t=requestAnimationFrame(u))})(x)),u=void 0},preact__WEBPACK_IMPORTED_MODULE_0__.options.__c=function(t,u){u.some(function(t){try{t.__h.forEach(g),t.__h=t.__h.filter(function(n){return!n.__||j(n)})}catch(r){u.some(function(n){n.__h&&(n.__h=[])}),u=[],preact__WEBPACK_IMPORTED_MODULE_0__.options.__e(r,t.__v)}}),a&&a(t,u)},preact__WEBPACK_IMPORTED_MODULE_0__.options.unmount=function(t){v&&v(t);var u=t.__c;if(u&&u.__H)try{u.__H.__.forEach(g)}catch(t){preact__WEBPACK_IMPORTED_MODULE_0__.options.__e(t,u.__v)}};var b=\"function\"==typeof requestAnimationFrame;function g(n){var t=u;\"function\"==typeof n.__c&&n.__c(),u=t}function j(n){var t=u;n.__c=n.__(),u=t}function k(n,t){return!n||n.length!==t.length||t.some(function(t,u){return t!==n[u]})}function w(n,t){return\"function\"==typeof t?t(n):t}\n//# sourceMappingURL=hooks.module.js.map\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/preact/hooks/dist/hooks.module.js?");
819
820/***/ }),
821
vendor: 13,007 bytes, lines 822-831
822/***/ "./node_modules/smoothscroll-polyfill/dist/smoothscroll.js":
823/*!*****************************************************************!*\
824  !*** ./node_modules/smoothscroll-polyfill/dist/smoothscroll.js ***!
825  \*****************************************************************/
826/***/ ((module) => {
827
828eval("/* smoothscroll v0.4.4 - 2019 - Dustan Kasten, Jeremias Menichelli - MIT License */\n(function () {\n  'use strict';\n\n  // polyfill\n  function polyfill() {\n    // aliases\n    var w = window;\n    var d = document;\n\n    // return if scroll behavior is supported and polyfill is not forced\n    if (\n      'scrollBehavior' in d.documentElement.style &&\n      w.__forceSmoothScrollPolyfill__ !== true\n    ) {\n      return;\n    }\n\n    // globals\n    var Element = w.HTMLElement || w.Element;\n    var SCROLL_TIME = 468;\n\n    // object gathering original scroll methods\n    var original = {\n      scroll: w.scroll || w.scrollTo,\n      scrollBy: w.scrollBy,\n      elementScroll: Element.prototype.scroll || scrollElement,\n      scrollIntoView: Element.prototype.scrollIntoView\n    };\n\n    // define timing method\n    var now =\n      w.performance && w.performance.now\n        ? w.performance.now.bind(w.performance)\n        : Date.now;\n\n    /**\n     * indicates if a the current browser is made by Microsoft\n     * @method isMicrosoftBrowser\n     * @param {String} userAgent\n     * @returns {Boolean}\n     */\n    function isMicrosoftBrowser(userAgent) {\n      var userAgentPatterns = ['MSIE ', 'Trident/', 'Edge/'];\n\n      return new RegExp(userAgentPatterns.join('|')).test(userAgent);\n    }\n\n    /*\n     * IE has rounding bug rounding down clientHeight and clientWidth and\n     * rounding up scrollHeight and scrollWidth causing false positives\n     * on hasScrollableSpace\n     */\n    var ROUNDING_TOLERANCE = isMicrosoftBrowser(w.navigator.userAgent) ? 1 : 0;\n\n    /**\n     * changes scroll position inside an element\n     * @method scrollElement\n     * @param {Number} x\n     * @param {Number} y\n     * @returns {undefined}\n     */\n    function scrollElement(x, y) {\n      this.scrollLeft = x;\n      this.scrollTop = y;\n    }\n\n    /**\n     * returns result of applying ease math function to a number\n     * @method ease\n     * @param {Number} k\n     * @returns {Number}\n     */\n    function ease(k) {\n      return 0.5 * (1 - Math.cos(Math.PI * k));\n    }\n\n    /**\n     * indicates if a smooth behavior should be applied\n     * @method shouldBailOut\n     * @param {Number|Object} firstArg\n     * @returns {Boolean}\n     */\n    function shouldBailOut(firstArg) {\n      if (\n        firstArg === null ||\n        typeof firstArg !== 'object' ||\n        firstArg.behavior === undefined ||\n        firstArg.behavior === 'auto' ||\n        firstArg.behavior === 'instant'\n      ) {\n        // first argument is not an object/null\n        // or behavior is auto, instant or undefined\n        return true;\n      }\n\n      if (typeof firstArg === 'object' && firstArg.behavior === 'smooth') {\n        // first argument is an object and behavior is smooth\n        return false;\n      }\n\n      // throw error when behavior is not supported\n      throw new TypeError(\n        'behavior member of ScrollOptions ' +\n          firstArg.behavior +\n          ' is not a valid value for enumeration ScrollBehavior.'\n      );\n    }\n\n    /**\n     * indicates if an element has scrollable space in the provided axis\n     * @method hasScrollableSpace\n     * @param {Node} el\n     * @param {String} axis\n     * @returns {Boolean}\n     */\n    function hasScrollableSpace(el, axis) {\n      if (axis === 'Y') {\n        return el.clientHeight + ROUNDING_TOLERANCE < el.scrollHeight;\n      }\n\n      if (axis === 'X') {\n        return el.clientWidth + ROUNDING_TOLERANCE < el.scrollWidth;\n      }\n    }\n\n    /**\n     * indicates if an element has a scrollable overflow property in the axis\n     * @method canOverflow\n     * @param {Node} el\n     * @param {String} axis\n     * @returns {Boolean}\n     */\n    function canOverflow(el, axis) {\n      var overflowValue = w.getComputedStyle(el, null)['overflow' + axis];\n\n      return overflowValue === 'auto' || overflowValue === 'scroll';\n    }\n\n    /**\n     * indicates if an element can be scrolled in either axis\n     * @method isScrollable\n     * @param {Node} el\n     * @param {String} axis\n     * @returns {Boolean}\n     */\n    function isScrollable(el) {\n      var isScrollableY = hasScrollableSpace(el, 'Y') && canOverflow(el, 'Y');\n      var isScrollableX = hasScrollableSpace(el, 'X') && canOverflow(el, 'X');\n\n      return isScrollableY || isScrollableX;\n    }\n\n    /**\n     * finds scrollable parent of an element\n     * @method findScrollableParent\n     * @param {Node} el\n     * @returns {Node} el\n     */\n    function findScrollableParent(el) {\n      while (el !== d.body && isScrollable(el) === false) {\n        el = el.parentNode || el.host;\n      }\n\n      return el;\n    }\n\n    /**\n     * self invoked function that, given a context, steps through scrolling\n     * @method step\n     * @param {Object} context\n     * @returns {undefined}\n     */\n    function step(context) {\n      var time = now();\n      var value;\n      var currentX;\n      var currentY;\n      var elapsed = (time - context.startTime) / SCROLL_TIME;\n\n      // avoid elapsed times higher than one\n      elapsed = elapsed > 1 ? 1 : elapsed;\n\n      // apply easing to elapsed time\n      value = ease(elapsed);\n\n      currentX = context.startX + (context.x - context.startX) * value;\n      currentY = context.startY + (context.y - context.startY) * value;\n\n      context.method.call(context.scrollable, currentX, currentY);\n\n      // scroll more if we have not reached our destination\n      if (currentX !== context.x || currentY !== context.y) {\n        w.requestAnimationFrame(step.bind(w, context));\n      }\n    }\n\n    /**\n     * scrolls window or element with a smooth behavior\n     * @method smoothScroll\n     * @param {Object|Node} el\n     * @param {Number} x\n     * @param {Number} y\n     * @returns {undefined}\n     */\n    function smoothScroll(el, x, y) {\n      var scrollable;\n      var startX;\n      var startY;\n      var method;\n      var startTime = now();\n\n      // define scroll context\n      if (el === d.body) {\n        scrollable = w;\n        startX = w.scrollX || w.pageXOffset;\n        startY = w.scrollY || w.pageYOffset;\n        method = original.scroll;\n      } else {\n        scrollable = el;\n        startX = el.scrollLeft;\n        startY = el.scrollTop;\n        method = scrollElement;\n      }\n\n      // scroll looping over a frame\n      step({\n        scrollable: scrollable,\n        method: method,\n        startTime: startTime,\n        startX: startX,\n        startY: startY,\n        x: x,\n        y: y\n      });\n    }\n\n    // ORIGINAL METHODS OVERRIDES\n    // w.scroll and w.scrollTo\n    w.scroll = w.scrollTo = function() {\n      // avoid action when no arguments are passed\n      if (arguments[0] === undefined) {\n        return;\n      }\n\n      // avoid smooth behavior if not required\n      if (shouldBailOut(arguments[0]) === true) {\n        original.scroll.call(\n          w,\n          arguments[0].left !== undefined\n            ? arguments[0].left\n            : typeof arguments[0] !== 'object'\n              ? arguments[0]\n              : w.scrollX || w.pageXOffset,\n          // use top prop, second argument if present or fallback to scrollY\n          arguments[0].top !== undefined\n            ? arguments[0].top\n            : arguments[1] !== undefined\n              ? arguments[1]\n              : w.scrollY || w.pageYOffset\n        );\n\n        return;\n      }\n\n      // LET THE SMOOTHNESS BEGIN!\n      smoothScroll.call(\n        w,\n        d.body,\n        arguments[0].left !== undefined\n          ? ~~arguments[0].left\n          : w.scrollX || w.pageXOffset,\n        arguments[0].top !== undefined\n          ? ~~arguments[0].top\n          : w.scrollY || w.pageYOffset\n      );\n    };\n\n    // w.scrollBy\n    w.scrollBy = function() {\n      // avoid action when no arguments are passed\n      if (arguments[0] === undefined) {\n        return;\n      }\n\n      // avoid smooth behavior if not required\n      if (shouldBailOut(arguments[0])) {\n        original.scrollBy.call(\n          w,\n          arguments[0].left !== undefined\n            ? arguments[0].left\n            : typeof arguments[0] !== 'object' ? arguments[0] : 0,\n          arguments[0].top !== undefined\n            ? arguments[0].top\n            : arguments[1] !== undefined ? arguments[1] : 0\n        );\n\n        return;\n      }\n\n      // LET THE SMOOTHNESS BEGIN!\n      smoothScroll.call(\n        w,\n        d.body,\n        ~~arguments[0].left + (w.scrollX || w.pageXOffset),\n        ~~arguments[0].top + (w.scrollY || w.pageYOffset)\n      );\n    };\n\n    // Element.prototype.scroll and Element.prototype.scrollTo\n    Element.prototype.scroll = Element.prototype.scrollTo = function() {\n      // avoid action when no arguments are passed\n      if (arguments[0] === undefined) {\n        return;\n      }\n\n      // avoid smooth behavior if not required\n      if (shouldBailOut(arguments[0]) === true) {\n        // if one number is passed, throw error to match Firefox implementation\n        if (typeof arguments[0] === 'number' && arguments[1] === undefined) {\n          throw new SyntaxError('Value could not be converted');\n        }\n\n        original.elementScroll.call(\n          this,\n          // use left prop, first number argument or fallback to scrollLeft\n          arguments[0].left !== undefined\n            ? ~~arguments[0].left\n            : typeof arguments[0] !== 'object' ? ~~arguments[0] : this.scrollLeft,\n          // use top prop, second argument or fallback to scrollTop\n          arguments[0].top !== undefined\n            ? ~~arguments[0].top\n            : arguments[1] !== undefined ? ~~arguments[1] : this.scrollTop\n        );\n\n        return;\n      }\n\n      var left = arguments[0].left;\n      var top = arguments[0].top;\n\n      // LET THE SMOOTHNESS BEGIN!\n      smoothScroll.call(\n        this,\n        this,\n        typeof left === 'undefined' ? this.scrollLeft : ~~left,\n        typeof top === 'undefined' ? this.scrollTop : ~~top\n      );\n    };\n\n    // Element.prototype.scrollBy\n    Element.prototype.scrollBy = function() {\n      // avoid action when no arguments are passed\n      if (arguments[0] === undefined) {\n        return;\n      }\n\n      // avoid smooth behavior if not required\n      if (shouldBailOut(arguments[0]) === true) {\n        original.elementScroll.call(\n          this,\n          arguments[0].left !== undefined\n            ? ~~arguments[0].left + this.scrollLeft\n            : ~~arguments[0] + this.scrollLeft,\n          arguments[0].top !== undefined\n            ? ~~arguments[0].top + this.scrollTop\n            : ~~arguments[1] + this.scrollTop\n        );\n\n        return;\n      }\n\n      this.scroll({\n        left: ~~arguments[0].left + this.scrollLeft,\n        top: ~~arguments[0].top + this.scrollTop,\n        behavior: arguments[0].behavior\n      });\n    };\n\n    // Element.prototype.scrollIntoView\n    Element.prototype.scrollIntoView = function() {\n      // avoid smooth behavior if not required\n      if (shouldBailOut(arguments[0]) === true) {\n        original.scrollIntoView.call(\n          this,\n          arguments[0] === undefined ? true : arguments[0]\n        );\n\n        return;\n      }\n\n      // LET THE SMOOTHNESS BEGIN!\n      var scrollableParent = findScrollableParent(this);\n      var parentRects = scrollableParent.getBoundingClientRect();\n      var clientRects = this.getBoundingClientRect();\n\n      if (scrollableParent !== d.body) {\n        // reveal element inside parent\n        smoothScroll.call(\n          this,\n          scrollableParent,\n          scrollableParent.scrollLeft + clientRects.left - parentRects.left,\n          scrollableParent.scrollTop + clientRects.top - parentRects.top\n        );\n\n        // reveal parent in viewport unless is fixed\n        if (w.getComputedStyle(scrollableParent).position !== 'fixed') {\n          w.scrollBy({\n            left: parentRects.left,\n            top: parentRects.top,\n            behavior: 'smooth'\n          });\n        }\n      } else {\n        // reveal element in viewport\n        w.scrollBy({\n          left: clientRects.left,\n          top: clientRects.top,\n          behavior: 'smooth'\n        });\n      }\n    };\n  }\n\n  if (true) {\n    // commonjs\n    module.exports = { polyfill: polyfill };\n  } else {}\n\n}());\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/smoothscroll-polyfill/dist/smoothscroll.js?");
829
830/***/ }),
831
vendor: 1,108 bytes, lines 832-842
832/***/ "./node_modules/tiny-slider/src/helpers/addCSSRule.js":
833/*!************************************************************!*\
834  !*** ./node_modules/tiny-slider/src/helpers/addCSSRule.js ***!
835  \************************************************************/
836/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
837
838"use strict";
839eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"addCSSRule\": () => (/* binding */ addCSSRule)\n/* harmony export */ });\n/* harmony import */ var _raf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./raf.js */ \"./node_modules/tiny-slider/src/helpers/raf.js\");\n// cross browsers addRule method\n\nfunction addCSSRule(sheet, selector, rules, index) {\n  // return raf(function() {\n    'insertRule' in sheet ?\n      sheet.insertRule(selector + '{' + rules + '}', index) :\n      sheet.addRule(selector, rules, index);\n  // });\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/addCSSRule.js?");
840
841/***/ }),
842
vendor: 1,204 bytes, lines 843-853
843/***/ "./node_modules/tiny-slider/src/helpers/addClass.js":
844/*!**********************************************************!*\
845  !*** ./node_modules/tiny-slider/src/helpers/addClass.js ***!
846  \**********************************************************/
847/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
848
849"use strict";
850eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"addClass\": () => (/* binding */ addClass)\n/* harmony export */ });\n/* harmony import */ var _hasClass_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./hasClass.js */ \"./node_modules/tiny-slider/src/helpers/hasClass.js\");\n\nvar addClass = _hasClass_js__WEBPACK_IMPORTED_MODULE_0__.classListSupport ?\n    function (el, str) {\n      if (!(0,_hasClass_js__WEBPACK_IMPORTED_MODULE_0__.hasClass)(el,  str)) { el.classList.add(str); }\n    } :\n    function (el, str) {\n      if (!(0,_hasClass_js__WEBPACK_IMPORTED_MODULE_0__.hasClass)(el,  str)) { el.className += ' ' + str; }\n    };\n\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/addClass.js?");
851
852/***/ }),
853
vendor: 1,157 bytes, lines 854-864
854/***/ "./node_modules/tiny-slider/src/helpers/addEvents.js":
855/*!***********************************************************!*\
856  !*** ./node_modules/tiny-slider/src/helpers/addEvents.js ***!
857  \***********************************************************/
858/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
859
860"use strict";
861eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"addEvents\": () => (/* binding */ addEvents)\n/* harmony export */ });\n/* harmony import */ var _passiveOption_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./passiveOption.js */ \"./node_modules/tiny-slider/src/helpers/passiveOption.js\");\n\n\nfunction addEvents(el, obj, preventScrolling) {\n  for (var prop in obj) {\n    var option = ['touchstart', 'touchmove'].indexOf(prop) >= 0 && !preventScrolling ? _passiveOption_js__WEBPACK_IMPORTED_MODULE_0__.passiveOption : false;\n    el.addEventListener(prop, obj[prop], option);\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/addEvents.js?");
862
863/***/ }),
864
vendor: 878 bytes, lines 865-875
865/***/ "./node_modules/tiny-slider/src/helpers/arrayFromNodeList.js":
866/*!*******************************************************************!*\
867  !*** ./node_modules/tiny-slider/src/helpers/arrayFromNodeList.js ***!
868  \*******************************************************************/
869/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
870
871"use strict";
872eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"arrayFromNodeList\": () => (/* binding */ arrayFromNodeList)\n/* harmony export */ });\nfunction arrayFromNodeList (nl) {\n  var arr = [];\n  for (var i = 0, l = nl.length; i < l; i++) {\n    arr.push(nl[i]);\n  }\n  return arr;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/arrayFromNodeList.js?");
873
874/***/ }),
875
vendor: 769 bytes, lines 876-886
876/***/ "./node_modules/tiny-slider/src/helpers/caf.js":
877/*!*****************************************************!*\
878  !*** ./node_modules/tiny-slider/src/helpers/caf.js ***!
879  \*****************************************************/
880/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
881
882"use strict";
883eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"caf\": () => (/* binding */ caf)\n/* harmony export */ });\nvar win = window;\n\nvar caf = win.cancelAnimationFrame\n  || win.mozCancelAnimationFrame\n  || function(id){ clearTimeout(id); };\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/caf.js?");
884
885/***/ }),
886
vendor: 2,061 bytes, lines 887-897
887/***/ "./node_modules/tiny-slider/src/helpers/calc.js":
888/*!******************************************************!*\
889  !*** ./node_modules/tiny-slider/src/helpers/calc.js ***!
890  \******************************************************/
891/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
892
893"use strict";
894eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"calc\": () => (/* binding */ calc)\n/* harmony export */ });\n/* harmony import */ var _getBody_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBody.js */ \"./node_modules/tiny-slider/src/helpers/getBody.js\");\n/* harmony import */ var _setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/setFakeBody.js\");\n/* harmony import */ var _resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./resetFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/resetFakeBody.js\");\n// get css-calc \n// @return - false | calc | -webkit-calc | -moz-calc\n// @usage - var calc = getCalc(); \n\n\n\n\nfunction calc() {\n  var doc = document, \n      body = (0,_getBody_js__WEBPACK_IMPORTED_MODULE_0__.getBody)(),\n      docOverflow = (0,_setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__.setFakeBody)(body),\n      div = doc.createElement('div'), \n      result = false;\n\n  body.appendChild(div);\n  try {\n    var str = '(10px * 10)',\n        vals = ['calc' + str, '-moz-calc' + str, '-webkit-calc' + str],\n        val;\n    for (var i = 0; i < 3; i++) {\n      val = vals[i];\n      div.style.width = val;\n      if (div.offsetWidth === 100) { \n        result = val.replace(str, ''); \n        break;\n      }\n    }\n  } catch (e) {}\n  \n  body.fake ? (0,_resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__.resetFakeBody)(body, docOverflow) : div.remove();\n\n  return result;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/calc.js?");
895
896/***/ }),
897
vendor: 851 bytes, lines 898-908
898/***/ "./node_modules/tiny-slider/src/helpers/checkStorageValue.js":
899/*!*******************************************************************!*\
900  !*** ./node_modules/tiny-slider/src/helpers/checkStorageValue.js ***!
901  \*******************************************************************/
902/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
903
904"use strict";
905eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"checkStorageValue\": () => (/* binding */ checkStorageValue)\n/* harmony export */ });\nfunction checkStorageValue (value) {\n  return ['true', 'false'].indexOf(value) >= 0 ? JSON.parse(value) : value;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/checkStorageValue.js?");
906
907/***/ }),
908
vendor: 794 bytes, lines 909-919
909/***/ "./node_modules/tiny-slider/src/helpers/classListSupport.js":
910/*!******************************************************************!*\
911  !*** ./node_modules/tiny-slider/src/helpers/classListSupport.js ***!
912  \******************************************************************/
913/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
914
915"use strict";
916eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"classListSupport\": () => (/* binding */ classListSupport)\n/* harmony export */ });\nvar classListSupport = 'classList' in document.createElement('_');\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/classListSupport.js?");
917
918/***/ }),
919
vendor: 1,527 bytes, lines 920-930
920/***/ "./node_modules/tiny-slider/src/helpers/createStyleSheet.js":
921/*!******************************************************************!*\
922  !*** ./node_modules/tiny-slider/src/helpers/createStyleSheet.js ***!
923  \******************************************************************/
924/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
925
926"use strict";
927eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"createStyleSheet\": () => (/* binding */ createStyleSheet)\n/* harmony export */ });\n// create and append style sheet\nfunction createStyleSheet (media, nonce) {\n  // Create the <style> tag\n  var style = document.createElement(\"style\");\n  // style.setAttribute(\"type\", \"text/css\");\n\n  // Add a media (and/or media query) here if you'd like!\n  // style.setAttribute(\"media\", \"screen\")\n  // style.setAttribute(\"media\", \"only screen and (max-width : 1024px)\")\n  if (media) { style.setAttribute(\"media\", media); }\n\n  // Add nonce attribute for Content Security Policy\n  if (nonce) { style.setAttribute(\"nonce\", nonce); }\n\n  // WebKit hack :(\n  // style.appendChild(document.createTextNode(\"\"));\n\n  // Add the <style> element to the page\n  document.querySelector('head').appendChild(style);\n\n  return style.sheet ? style.sheet : style.styleSheet;\n};\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/createStyleSheet.js?");
928
929/***/ }),
930
vendor: 728 bytes, lines 931-941
931/***/ "./node_modules/tiny-slider/src/helpers/docElement.js":
932/*!************************************************************!*\
933  !*** ./node_modules/tiny-slider/src/helpers/docElement.js ***!
934  \************************************************************/
935/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
936
937"use strict";
938eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"docElement\": () => (/* binding */ docElement)\n/* harmony export */ });\nvar docElement = document.documentElement;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/docElement.js?");
939
940/***/ }),
941
vendor: 1,387 bytes, lines 942-952
942/***/ "./node_modules/tiny-slider/src/helpers/events.js":
943/*!********************************************************!*\
944  !*** ./node_modules/tiny-slider/src/helpers/events.js ***!
945  \********************************************************/
946/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
947
948"use strict";
949eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"Events\": () => (/* binding */ Events)\n/* harmony export */ });\nfunction Events() {\n  return {\n    topics: {},\n    on: function (eventName, fn) {\n      this.topics[eventName] = this.topics[eventName] || [];\n      this.topics[eventName].push(fn);\n    },\n    off: function(eventName, fn) {\n      if (this.topics[eventName]) {\n        for (var i = 0; i < this.topics[eventName].length; i++) {\n          if (this.topics[eventName][i] === fn) {\n            this.topics[eventName].splice(i, 1);\n            break;\n          }\n        }\n      }\n    },\n    emit: function (eventName, data) {\n      data.type = eventName;\n      if (this.topics[eventName]) {\n        this.topics[eventName].forEach(function(fn) {\n          fn(data, eventName);\n        });\n      }\n    }\n  };\n};\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/events.js?");
950
951/***/ }),
952
vendor: 1,094 bytes, lines 953-963
953/***/ "./node_modules/tiny-slider/src/helpers/extend.js":
954/*!********************************************************!*\
955  !*** ./node_modules/tiny-slider/src/helpers/extend.js ***!
956  \********************************************************/
957/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
958
959"use strict";
960eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"extend\": () => (/* binding */ extend)\n/* harmony export */ });\nfunction extend() {\n  var obj, name, copy,\n      target = arguments[0] || {},\n      i = 1,\n      length = arguments.length;\n\n  for (; i < length; i++) {\n    if ((obj = arguments[i]) !== null) {\n      for (name in obj) {\n        copy = obj[name];\n\n        if (target === copy) {\n          continue;\n        } else if (copy !== undefined) {\n          target[name] = copy;\n        }\n      }\n    }\n  }\n  return target;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/extend.js?");
961
962/***/ }),
963
vendor: 871 bytes, lines 964-974
964/***/ "./node_modules/tiny-slider/src/helpers/forEach.js":
965/*!*********************************************************!*\
966  !*** ./node_modules/tiny-slider/src/helpers/forEach.js ***!
967  \*********************************************************/
968/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
969
970"use strict";
971eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"forEach\": () => (/* binding */ forEach)\n/* harmony export */ });\n// https://toddmotto.com/ditch-the-array-foreach-call-nodelist-hack/\nfunction forEach (arr, callback, scope) {\n  for (var i = 0, l = arr.length; i < l; i++) {\n    callback.call(scope, arr[i], i);\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/forEach.js?");
972
973/***/ }),
974
vendor: 729 bytes, lines 975-985
975/***/ "./node_modules/tiny-slider/src/helpers/getAttr.js":
976/*!*********************************************************!*\
977  !*** ./node_modules/tiny-slider/src/helpers/getAttr.js ***!
978  \*********************************************************/
979/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
980
981"use strict";
982eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getAttr\": () => (/* binding */ getAttr)\n/* harmony export */ });\nfunction getAttr(el, attr) {\n  return el.getAttribute(attr);\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/getAttr.js?");
983
984/***/ }),
985
vendor: 839 bytes, lines 986-996
986/***/ "./node_modules/tiny-slider/src/helpers/getBody.js":
987/*!*********************************************************!*\
988  !*** ./node_modules/tiny-slider/src/helpers/getBody.js ***!
989  \*********************************************************/
990/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
991
992"use strict";
993eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getBody\": () => (/* binding */ getBody)\n/* harmony export */ });\nfunction getBody () {\n  var doc = document,\n      body = doc.body;\n\n  if (!body) {\n    body = doc.createElement('body');\n    body.fake = true;\n  }\n\n  return body;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/getBody.js?");
994
995/***/ }),
996
vendor: 866 bytes, lines 997-1007
997/***/ "./node_modules/tiny-slider/src/helpers/getCssRulesLength.js":
998/*!*******************************************************************!*\
999  !*** ./node_modules/tiny-slider/src/helpers/getCssRulesLength.js ***!
1000  \*******************************************************************/
1001/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1002
1003"use strict";
1004eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getCssRulesLength\": () => (/* binding */ getCssRulesLength)\n/* harmony export */ });\nfunction getCssRulesLength(sheet) {\n  var rule = ('insertRule' in sheet) ? sheet.cssRules : sheet.rules;\n  return rule.length;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/getCssRulesLength.js?");
1005
1006/***/ }),
1007
vendor: 1,246 bytes, lines 1008-1018
1008/***/ "./node_modules/tiny-slider/src/helpers/getEndProperty.js":
1009/*!****************************************************************!*\
1010  !*** ./node_modules/tiny-slider/src/helpers/getEndProperty.js ***!
1011  \****************************************************************/
1012/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1013
1014"use strict";
1015eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getEndProperty\": () => (/* binding */ getEndProperty)\n/* harmony export */ });\n// get transitionend, animationend based on transitionDuration\n// @propin: string\n// @propOut: string, first-letter uppercase\n// Usage: getEndProperty('WebkitTransitionDuration', 'Transition') => webkitTransitionEnd\nfunction getEndProperty(propIn, propOut) {\n  var endProp = false;\n  if (/^Webkit/.test(propIn)) {\n    endProp = 'webkit' + propOut + 'End';\n  } else if (/^O/.test(propIn)) {\n    endProp = 'o' + propOut + 'End';\n  } else if (propIn) {\n    endProp = propOut.toLowerCase() + 'end';\n  }\n  return endProp;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/getEndProperty.js?");
1016
1017/***/ }),
1018
vendor: 810 bytes, lines 1019-1029
1019/***/ "./node_modules/tiny-slider/src/helpers/getSlideId.js":
1020/*!************************************************************!*\
1021  !*** ./node_modules/tiny-slider/src/helpers/getSlideId.js ***!
1022  \************************************************************/
1023/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1024
1025"use strict";
1026eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getSlideId\": () => (/* binding */ getSlideId)\n/* harmony export */ });\nfunction getSlideId() {\n  var id = window.tnsId;\n  window.tnsId = !id ? 1 : id + 1;\n  \n  return 'tns' + window.tnsId;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/getSlideId.js?");
1027
1028/***/ }),
1029
vendor: 1,005 bytes, lines 1030-1040
1030/***/ "./node_modules/tiny-slider/src/helpers/getTouchDirection.js":
1031/*!*******************************************************************!*\
1032  !*** ./node_modules/tiny-slider/src/helpers/getTouchDirection.js ***!
1033  \*******************************************************************/
1034/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1035
1036"use strict";
1037eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"getTouchDirection\": () => (/* binding */ getTouchDirection)\n/* harmony export */ });\nfunction getTouchDirection(angle, range) {\n  var direction = false,\n      gap = Math.abs(90 - Math.abs(angle));\n      \n  if (gap >= 90 - range) {\n    direction = 'horizontal';\n  } else if (gap <= range) {\n    direction = 'vertical';\n  }\n\n  return direction;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/getTouchDirection.js?");
1038
1039/***/ }),
1040
vendor: 2,101 bytes, lines 1041-1051
1041/***/ "./node_modules/tiny-slider/src/helpers/has3DTransforms.js":
1042/*!*****************************************************************!*\
1043  !*** ./node_modules/tiny-slider/src/helpers/has3DTransforms.js ***!
1044  \*****************************************************************/
1045/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1046
1047"use strict";
1048eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"has3DTransforms\": () => (/* binding */ has3DTransforms)\n/* harmony export */ });\n/* harmony import */ var _getBody_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBody.js */ \"./node_modules/tiny-slider/src/helpers/getBody.js\");\n/* harmony import */ var _setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/setFakeBody.js\");\n/* harmony import */ var _resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./resetFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/resetFakeBody.js\");\n\n\n\n\nfunction has3DTransforms(tf){\n  if (!tf) { return false; }\n  if (!window.getComputedStyle) { return false; }\n  \n  var doc = document,\n      body = (0,_getBody_js__WEBPACK_IMPORTED_MODULE_0__.getBody)(),\n      docOverflow = (0,_setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__.setFakeBody)(body),\n      el = doc.createElement('p'),\n      has3d,\n      cssTF = tf.length > 9 ? '-' + tf.slice(0, -9).toLowerCase() + '-' : '';\n\n  cssTF += 'transform';\n\n  // Add it to the body to get the computed style\n  body.insertBefore(el, null);\n\n  el.style[tf] = 'translate3d(1px,1px,1px)';\n  has3d = window.getComputedStyle(el).getPropertyValue(cssTF);\n\n  body.fake ? (0,_resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__.resetFakeBody)(body, docOverflow) : el.remove();\n\n  return (has3d !== undefined && has3d.length > 0 && has3d !== \"none\");\n}\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/has3DTransforms.js?");
1049
1050/***/ }),
1051
vendor: 729 bytes, lines 1052-1062
1052/***/ "./node_modules/tiny-slider/src/helpers/hasAttr.js":
1053/*!*********************************************************!*\
1054  !*** ./node_modules/tiny-slider/src/helpers/hasAttr.js ***!
1055  \*********************************************************/
1056/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1057
1058"use strict";
1059eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"hasAttr\": () => (/* binding */ hasAttr)\n/* harmony export */ });\nfunction hasAttr(el, attr) {\n  return el.hasAttribute(attr);\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/hasAttr.js?");
1060
1061/***/ }),
1062
vendor: 1,230 bytes, lines 1063-1073
1063/***/ "./node_modules/tiny-slider/src/helpers/hasClass.js":
1064/*!**********************************************************!*\
1065  !*** ./node_modules/tiny-slider/src/helpers/hasClass.js ***!
1066  \**********************************************************/
1067/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1068
1069"use strict";
1070eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"classListSupport\": () => (/* reexport safe */ _classListSupport_js__WEBPACK_IMPORTED_MODULE_0__.classListSupport),\n/* harmony export */   \"hasClass\": () => (/* binding */ hasClass)\n/* harmony export */ });\n/* harmony import */ var _classListSupport_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./classListSupport.js */ \"./node_modules/tiny-slider/src/helpers/classListSupport.js\");\n\n\nvar hasClass = _classListSupport_js__WEBPACK_IMPORTED_MODULE_0__.classListSupport ?\n    function (el, str) { return el.classList.contains(str); } :\n    function (el, str) { return el.className.indexOf(str) >= 0; };\n\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/hasClass.js?");
1071
1072/***/ }),
1073
vendor: 800 bytes, lines 1074-1084
1074/***/ "./node_modules/tiny-slider/src/helpers/hideElement.js":
1075/*!*************************************************************!*\
1076  !*** ./node_modules/tiny-slider/src/helpers/hideElement.js ***!
1077  \*************************************************************/
1078/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1079
1080"use strict";
1081eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"hideElement\": () => (/* binding */ hideElement)\n/* harmony export */ });\nfunction hideElement(el, forceHide) {\n  if (el.style.display !== 'none') { el.style.display = 'none'; }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/hideElement.js?");
1082
1083/***/ }),
1084
vendor: 807 bytes, lines 1085-1095
1085/***/ "./node_modules/tiny-slider/src/helpers/isNodeList.js":
1086/*!************************************************************!*\
1087  !*** ./node_modules/tiny-slider/src/helpers/isNodeList.js ***!
1088  \************************************************************/
1089/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1090
1091"use strict";
1092eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"isNodeList\": () => (/* binding */ isNodeList)\n/* harmony export */ });\nfunction isNodeList(el) {\n  // Only NodeList has the \"item()\" function\n  return typeof el.item !== \"undefined\"; \n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/isNodeList.js?");
1093
1094/***/ }),
1095
vendor: 764 bytes, lines 1096-1106
1096/***/ "./node_modules/tiny-slider/src/helpers/isVisible.js":
1097/*!***********************************************************!*\
1098  !*** ./node_modules/tiny-slider/src/helpers/isVisible.js ***!
1099  \***********************************************************/
1100/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1101
1102"use strict";
1103eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"isVisible\": () => (/* binding */ isVisible)\n/* harmony export */ });\nfunction isVisible(el) {\n  return window.getComputedStyle(el).display !== 'none';\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/isVisible.js?");
1104
1105/***/ }),
1106
vendor: 1,351 bytes, lines 1107-1117
1107/***/ "./node_modules/tiny-slider/src/helpers/jsTransform.js":
1108/*!*************************************************************!*\
1109  !*** ./node_modules/tiny-slider/src/helpers/jsTransform.js ***!
1110  \*************************************************************/
1111/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1112
1113"use strict";
1114eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"jsTransform\": () => (/* binding */ jsTransform)\n/* harmony export */ });\nfunction jsTransform(element, attr, prefix, postfix, to, duration, callback) {\n  var tick = Math.min(duration, 10),\n      unit = (to.indexOf('%') >= 0) ? '%' : 'px',\n      to = to.replace(unit, ''),\n      from = Number(element.style[attr].replace(prefix, '').replace(postfix, '').replace(unit, '')),\n      positionTick = (to - from) / duration * tick,\n      running;\n\n  setTimeout(moveElement, tick);\n  function moveElement() {\n    duration -= tick;\n    from += positionTick;\n    element.style[attr] = prefix + from + unit + postfix;\n    if (duration > 0) { \n      setTimeout(moveElement, tick); \n    } else {\n      callback();\n    }\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/jsTransform.js?");
1115
1116/***/ }),
1117
vendor: 2,266 bytes, lines 1118-1128
1118/***/ "./node_modules/tiny-slider/src/helpers/mediaquerySupport.js":
1119/*!*******************************************************************!*\
1120  !*** ./node_modules/tiny-slider/src/helpers/mediaquerySupport.js ***!
1121  \*******************************************************************/
1122/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1123
1124"use strict";
1125eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"mediaquerySupport\": () => (/* binding */ mediaquerySupport)\n/* harmony export */ });\n/* harmony import */ var _getBody_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBody.js */ \"./node_modules/tiny-slider/src/helpers/getBody.js\");\n/* harmony import */ var _setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/setFakeBody.js\");\n/* harmony import */ var _resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./resetFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/resetFakeBody.js\");\n\n\n\n\nfunction mediaquerySupport () {\n  if (window.matchMedia || window.msMatchMedia) {\n    return true;\n  }\n  \n  var doc = document,\n      body = (0,_getBody_js__WEBPACK_IMPORTED_MODULE_0__.getBody)(),\n      docOverflow = (0,_setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__.setFakeBody)(body),\n      div = doc.createElement('div'),\n      style = doc.createElement('style'),\n      rule = '@media all and (min-width:1px){.tns-mq-test{position:absolute}}',\n      position;\n\n  style.type = 'text/css';\n  div.className = 'tns-mq-test';\n\n  body.appendChild(style);\n  body.appendChild(div);\n\n  if (style.styleSheet) {\n    style.styleSheet.cssText = rule;\n  } else {\n    style.appendChild(doc.createTextNode(rule));\n  }\n\n  position = window.getComputedStyle ? window.getComputedStyle(div).position : div.currentStyle['position'];\n\n  body.fake ? (0,_resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__.resetFakeBody)(body, docOverflow) : div.remove();\n\n  return position === \"absolute\";\n}\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/mediaquerySupport.js?");
1126
1127/***/ }),
1128
vendor: 1,082 bytes, lines 1129-1139
1129/***/ "./node_modules/tiny-slider/src/helpers/passiveOption.js":
1130/*!***************************************************************!*\
1131  !*** ./node_modules/tiny-slider/src/helpers/passiveOption.js ***!
1132  \***************************************************************/
1133/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1134
1135"use strict";
1136eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"passiveOption\": () => (/* binding */ passiveOption)\n/* harmony export */ });\n// Test via a getter in the options object to see if the passive property is accessed\nvar supportsPassive = false;\ntry {\n  var opts = Object.defineProperty({}, 'passive', {\n    get: function() {\n      supportsPassive = true;\n    }\n  });\n  window.addEventListener(\"test\", null, opts);\n} catch (e) {}\nvar passiveOption = supportsPassive ? { passive: true } : false;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/passiveOption.js?");
1137
1138/***/ }),
1139
vendor: 2,246 bytes, lines 1140-1150
1140/***/ "./node_modules/tiny-slider/src/helpers/percentageLayout.js":
1141/*!******************************************************************!*\
1142  !*** ./node_modules/tiny-slider/src/helpers/percentageLayout.js ***!
1143  \******************************************************************/
1144/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1145
1146"use strict";
1147eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"percentageLayout\": () => (/* binding */ percentageLayout)\n/* harmony export */ });\n/* harmony import */ var _getBody_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBody.js */ \"./node_modules/tiny-slider/src/helpers/getBody.js\");\n/* harmony import */ var _setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/setFakeBody.js\");\n/* harmony import */ var _resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./resetFakeBody.js */ \"./node_modules/tiny-slider/src/helpers/resetFakeBody.js\");\n// get subpixel support value\n// @return - boolean\n\n\n\n\nfunction percentageLayout() {\n  // check subpixel layout supporting\n  var doc = document,\n      body = (0,_getBody_js__WEBPACK_IMPORTED_MODULE_0__.getBody)(),\n      docOverflow = (0,_setFakeBody_js__WEBPACK_IMPORTED_MODULE_1__.setFakeBody)(body),\n      wrapper = doc.createElement('div'),\n      outer = doc.createElement('div'),\n      str = '',\n      count = 70,\n      perPage = 3,\n      supported = false;\n\n  wrapper.className = \"tns-t-subp2\";\n  outer.className = \"tns-t-ct\";\n\n  for (var i = 0; i < count; i++) {\n    str += '<div></div>';\n  }\n\n  outer.innerHTML = str;\n  wrapper.appendChild(outer);\n  body.appendChild(wrapper);\n\n  supported = Math.abs(wrapper.getBoundingClientRect().left - outer.children[count - perPage].getBoundingClientRect().left) < 2;\n\n  body.fake ? (0,_resetFakeBody_js__WEBPACK_IMPORTED_MODULE_2__.resetFakeBody)(body, docOverflow) : wrapper.remove();\n\n  return supported;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/percentageLayout.js?");
1148
1149/***/ }),
1150
vendor: 853 bytes, lines 1151-1161
1151/***/ "./node_modules/tiny-slider/src/helpers/raf.js":
1152/*!*****************************************************!*\
1153  !*** ./node_modules/tiny-slider/src/helpers/raf.js ***!
1154  \*****************************************************/
1155/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1156
1157"use strict";
1158eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"raf\": () => (/* binding */ raf)\n/* harmony export */ });\nvar win = window;\n\nvar raf = win.requestAnimationFrame\n  || win.webkitRequestAnimationFrame\n  || win.mozRequestAnimationFrame\n  || win.msRequestAnimationFrame\n  || function(cb) { return setTimeout(cb, 16); };\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/raf.js?");
1159
1160/***/ }),
1161
vendor: 1,240 bytes, lines 1162-1172
1162/***/ "./node_modules/tiny-slider/src/helpers/removeAttrs.js":
1163/*!*************************************************************!*\
1164  !*** ./node_modules/tiny-slider/src/helpers/removeAttrs.js ***!
1165  \*************************************************************/
1166/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1167
1168"use strict";
1169eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"removeAttrs\": () => (/* binding */ removeAttrs)\n/* harmony export */ });\n/* harmony import */ var _isNodeList_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isNodeList.js */ \"./node_modules/tiny-slider/src/helpers/isNodeList.js\");\n\n\nfunction removeAttrs(els, attrs) {\n  els = ((0,_isNodeList_js__WEBPACK_IMPORTED_MODULE_0__.isNodeList)(els) || els instanceof Array) ? els : [els];\n  attrs = (attrs instanceof Array) ? attrs : [attrs];\n\n  var attrLength = attrs.length;\n  for (var i = els.length; i--;) {\n    for (var j = attrLength; j--;) {\n      els[i].removeAttribute(attrs[j]);\n    }\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/removeAttrs.js?");
1170
1171/***/ }),
1172
vendor: 1,071 bytes, lines 1173-1183
1173/***/ "./node_modules/tiny-slider/src/helpers/removeCSSRule.js":
1174/*!***************************************************************!*\
1175  !*** ./node_modules/tiny-slider/src/helpers/removeCSSRule.js ***!
1176  \***************************************************************/
1177/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1178
1179"use strict";
1180eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"removeCSSRule\": () => (/* binding */ removeCSSRule)\n/* harmony export */ });\n/* harmony import */ var _raf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./raf.js */ \"./node_modules/tiny-slider/src/helpers/raf.js\");\n// cross browsers addRule method\n\nfunction removeCSSRule(sheet, index) {\n  // return raf(function() {\n    'deleteRule' in sheet ?\n      sheet.deleteRule(index) :\n      sheet.removeRule(index);\n  // });\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/removeCSSRule.js?");
1181
1182/***/ }),
1183
vendor: 1,247 bytes, lines 1184-1194
1184/***/ "./node_modules/tiny-slider/src/helpers/removeClass.js":
1185/*!*************************************************************!*\
1186  !*** ./node_modules/tiny-slider/src/helpers/removeClass.js ***!
1187  \*************************************************************/
1188/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1189
1190"use strict";
1191eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"removeClass\": () => (/* binding */ removeClass)\n/* harmony export */ });\n/* harmony import */ var _hasClass_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./hasClass.js */ \"./node_modules/tiny-slider/src/helpers/hasClass.js\");\n\nvar removeClass = _hasClass_js__WEBPACK_IMPORTED_MODULE_0__.classListSupport ?\n    function (el, str) {\n      if ((0,_hasClass_js__WEBPACK_IMPORTED_MODULE_0__.hasClass)(el,  str)) { el.classList.remove(str); }\n    } :\n    function (el, str) {\n      if ((0,_hasClass_js__WEBPACK_IMPORTED_MODULE_0__.hasClass)(el, str)) { el.className = el.className.replace(str, ''); }\n    };\n\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/removeClass.js?");
1192
1193/***/ }),
1194
vendor: 1,145 bytes, lines 1195-1205
1195/***/ "./node_modules/tiny-slider/src/helpers/removeEvents.js":
1196/*!**************************************************************!*\
1197  !*** ./node_modules/tiny-slider/src/helpers/removeEvents.js ***!
1198  \**************************************************************/
1199/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1200
1201"use strict";
1202eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"removeEvents\": () => (/* binding */ removeEvents)\n/* harmony export */ });\n/* harmony import */ var _passiveOption_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./passiveOption.js */ \"./node_modules/tiny-slider/src/helpers/passiveOption.js\");\n\n\nfunction removeEvents(el, obj) {\n  for (var prop in obj) {\n    var option = ['touchstart', 'touchmove'].indexOf(prop) >= 0 ? _passiveOption_js__WEBPACK_IMPORTED_MODULE_0__.passiveOption : false;\n    el.removeEventListener(prop, obj[prop], option);\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/removeEvents.js?");
1203
1204/***/ }),
1205
vendor: 1,242 bytes, lines 1206-1216
1206/***/ "./node_modules/tiny-slider/src/helpers/resetFakeBody.js":
1207/*!***************************************************************!*\
1208  !*** ./node_modules/tiny-slider/src/helpers/resetFakeBody.js ***!
1209  \***************************************************************/
1210/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1211
1212"use strict";
1213eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"resetFakeBody\": () => (/* binding */ resetFakeBody)\n/* harmony export */ });\n/* harmony import */ var _docElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./docElement.js */ \"./node_modules/tiny-slider/src/helpers/docElement.js\");\n\n\nfunction resetFakeBody (body, docOverflow) {\n  if (body.fake) {\n    body.remove();\n    _docElement_js__WEBPACK_IMPORTED_MODULE_0__.docElement.style.overflow = docOverflow;\n    // Trigger layout so kinetic scrolling isn't disabled in iOS6+\n    // eslint-disable-next-line\n    _docElement_js__WEBPACK_IMPORTED_MODULE_0__.docElement.offsetHeight;\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/resetFakeBody.js?");
1214
1215/***/ }),
1216
vendor: 1,202 bytes, lines 1217-1227
1217/***/ "./node_modules/tiny-slider/src/helpers/setAttrs.js":
1218/*!**********************************************************!*\
1219  !*** ./node_modules/tiny-slider/src/helpers/setAttrs.js ***!
1220  \**********************************************************/
1221/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1222
1223"use strict";
1224eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"setAttrs\": () => (/* binding */ setAttrs)\n/* harmony export */ });\n/* harmony import */ var _isNodeList_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isNodeList.js */ \"./node_modules/tiny-slider/src/helpers/isNodeList.js\");\n\n\nfunction setAttrs(els, attrs) {\n  els = ((0,_isNodeList_js__WEBPACK_IMPORTED_MODULE_0__.isNodeList)(els) || els instanceof Array) ? els : [els];\n  if (Object.prototype.toString.call(attrs) !== '[object Object]') { return; }\n\n  for (var i = els.length; i--;) {\n    for(var key in attrs) {\n      els[i].setAttribute(key, attrs[key]);\n    }\n  }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/setAttrs.js?");
1225
1226/***/ }),
1227
vendor: 1,445 bytes, lines 1228-1238
1228/***/ "./node_modules/tiny-slider/src/helpers/setFakeBody.js":
1229/*!*************************************************************!*\
1230  !*** ./node_modules/tiny-slider/src/helpers/setFakeBody.js ***!
1231  \*************************************************************/
1232/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1233
1234"use strict";
1235eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"setFakeBody\": () => (/* binding */ setFakeBody)\n/* harmony export */ });\n/* harmony import */ var _docElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./docElement.js */ \"./node_modules/tiny-slider/src/helpers/docElement.js\");\n\n\nfunction setFakeBody (body) {\n  var docOverflow = '';\n  if (body.fake) {\n    docOverflow = _docElement_js__WEBPACK_IMPORTED_MODULE_0__.docElement.style.overflow;\n    //avoid crashing IE8, if background image is used\n    body.style.background = '';\n    //Safari 5.13/5.1.4 OSX stops loading if ::-webkit-scrollbar is used and scrollbars are visible\n    body.style.overflow = _docElement_js__WEBPACK_IMPORTED_MODULE_0__.docElement.style.overflow = 'hidden';\n    _docElement_js__WEBPACK_IMPORTED_MODULE_0__.docElement.appendChild(body);\n  }\n\n  return docOverflow;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/setFakeBody.js?");
1236
1237/***/ }),
1238
vendor: 873 bytes, lines 1239-1249
1239/***/ "./node_modules/tiny-slider/src/helpers/setLocalStorage.js":
1240/*!*****************************************************************!*\
1241  !*** ./node_modules/tiny-slider/src/helpers/setLocalStorage.js ***!
1242  \*****************************************************************/
1243/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1244
1245"use strict";
1246eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"setLocalStorage\": () => (/* binding */ setLocalStorage)\n/* harmony export */ });\nfunction setLocalStorage(storage, key, value, access) {\n  if (access) {\n    try { storage.setItem(key, value); } catch (e) {}\n  }\n  return value;\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/setLocalStorage.js?");
1247
1248/***/ }),
1249
vendor: 796 bytes, lines 1250-1260
1250/***/ "./node_modules/tiny-slider/src/helpers/showElement.js":
1251/*!*************************************************************!*\
1252  !*** ./node_modules/tiny-slider/src/helpers/showElement.js ***!
1253  \*************************************************************/
1254/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1255
1256"use strict";
1257eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"showElement\": () => (/* binding */ showElement)\n/* harmony export */ });\nfunction showElement(el, forceHide) {\n  if (el.style.display === 'none') { el.style.display = ''; }\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/showElement.js?");
1258
1259/***/ }),
1260
vendor: 747 bytes, lines 1261-1271
1261/***/ "./node_modules/tiny-slider/src/helpers/toDegree.js":
1262/*!**********************************************************!*\
1263  !*** ./node_modules/tiny-slider/src/helpers/toDegree.js ***!
1264  \**********************************************************/
1265/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1266
1267"use strict";
1268eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"toDegree\": () => (/* binding */ toDegree)\n/* harmony export */ });\nfunction toDegree (y, x) {\n  return Math.atan2(y, x) * (180 / Math.PI);\n}\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/toDegree.js?");
1269
1270/***/ }),
1271
vendor: 1,351 bytes, lines 1272-1282
1272/***/ "./node_modules/tiny-slider/src/helpers/whichProperty.js":
1273/*!***************************************************************!*\
1274  !*** ./node_modules/tiny-slider/src/helpers/whichProperty.js ***!
1275  \***************************************************************/
1276/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1277
1278"use strict";
1279eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"whichProperty\": () => (/* binding */ whichProperty)\n/* harmony export */ });\nfunction whichProperty(props){\n  if (typeof props === 'string') {\n    var arr = [props],\n        Props = props.charAt(0).toUpperCase() + props.substr(1),\n        prefixes = ['Webkit', 'Moz', 'ms', 'O'];\n        \n    prefixes.forEach(function(prefix) {\n      if (prefix !== 'ms' || props === 'transform') {\n        arr.push(prefix + Props);\n      }\n    });\n\n    props = arr;\n  }\n\n  var el = document.createElement('fakeelement'),\n      len = props.length;\n  for(var i = 0; i < props.length; i++){\n    var prop = props[i];\n    if( el.style[prop] !== undefined ){ return prop; }\n  }\n\n  return false; // explicit for ie9-\n}\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/helpers/whichProperty.js?");
1280
1281/***/ }),
1282
vendor: 110,965 bytes, lines 1283-1293
1283/***/ "./node_modules/tiny-slider/src/tiny-slider.js":
1284/*!*****************************************************!*\
1285  !*** ./node_modules/tiny-slider/src/tiny-slider.js ***!
1286  \*****************************************************/
1287/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1288
1289"use strict";
1290eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */   \"tns\": () => (/* binding */ tns)\n/* harmony export */ });\n/* harmony import */ var _helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./helpers/raf.js */ \"./node_modules/tiny-slider/src/helpers/raf.js\");\n/* harmony import */ var _helpers_caf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./helpers/caf.js */ \"./node_modules/tiny-slider/src/helpers/caf.js\");\n/* harmony import */ var _helpers_extend_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./helpers/extend.js */ \"./node_modules/tiny-slider/src/helpers/extend.js\");\n/* harmony import */ var _helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./helpers/checkStorageValue.js */ \"./node_modules/tiny-slider/src/helpers/checkStorageValue.js\");\n/* harmony import */ var _helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./helpers/setLocalStorage.js */ \"./node_modules/tiny-slider/src/helpers/setLocalStorage.js\");\n/* harmony import */ var _helpers_getSlideId_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./helpers/getSlideId.js */ \"./node_modules/tiny-slider/src/helpers/getSlideId.js\");\n/* harmony import */ var _helpers_calc_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./helpers/calc.js */ \"./node_modules/tiny-slider/src/helpers/calc.js\");\n/* harmony import */ var _helpers_percentageLayout_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./helpers/percentageLayout.js */ \"./node_modules/tiny-slider/src/helpers/percentageLayout.js\");\n/* harmony import */ var _helpers_mediaquerySupport_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./helpers/mediaquerySupport.js */ \"./node_modules/tiny-slider/src/helpers/mediaquerySupport.js\");\n/* harmony import */ var _helpers_createStyleSheet_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./helpers/createStyleSheet.js */ \"./node_modules/tiny-slider/src/helpers/createStyleSheet.js\");\n/* harmony import */ var _helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./helpers/addCSSRule.js */ \"./node_modules/tiny-slider/src/helpers/addCSSRule.js\");\n/* harmony import */ var _helpers_removeCSSRule_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./helpers/removeCSSRule.js */ \"./node_modules/tiny-slider/src/helpers/removeCSSRule.js\");\n/* harmony import */ var _helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./helpers/getCssRulesLength.js */ \"./node_modules/tiny-slider/src/helpers/getCssRulesLength.js\");\n/* harmony import */ var _helpers_toDegree_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./helpers/toDegree.js */ \"./node_modules/tiny-slider/src/helpers/toDegree.js\");\n/* harmony import */ var _helpers_getTouchDirection_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./helpers/getTouchDirection.js */ \"./node_modules/tiny-slider/src/helpers/getTouchDirection.js\");\n/* harmony import */ var _helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./helpers/forEach.js */ \"./node_modules/tiny-slider/src/helpers/forEach.js\");\n/* harmony import */ var _helpers_hasClass_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./helpers/hasClass.js */ \"./node_modules/tiny-slider/src/helpers/hasClass.js\");\n/* harmony import */ var _helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./helpers/addClass.js */ \"./node_modules/tiny-slider/src/helpers/addClass.js\");\n/* harmony import */ var _helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./helpers/removeClass.js */ \"./node_modules/tiny-slider/src/helpers/removeClass.js\");\n/* harmony import */ var _helpers_hasAttr_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./helpers/hasAttr.js */ \"./node_modules/tiny-slider/src/helpers/hasAttr.js\");\n/* harmony import */ var _helpers_getAttr_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./helpers/getAttr.js */ \"./node_modules/tiny-slider/src/helpers/getAttr.js\");\n/* harmony import */ var _helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./helpers/setAttrs.js */ \"./node_modules/tiny-slider/src/helpers/setAttrs.js\");\n/* harmony import */ var _helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./helpers/removeAttrs.js */ \"./node_modules/tiny-slider/src/helpers/removeAttrs.js\");\n/* harmony import */ var _helpers_arrayFromNodeList_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./helpers/arrayFromNodeList.js */ \"./node_modules/tiny-slider/src/helpers/arrayFromNodeList.js\");\n/* harmony import */ var _helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./helpers/hideElement.js */ \"./node_modules/tiny-slider/src/helpers/hideElement.js\");\n/* harmony import */ var _helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./helpers/showElement.js */ \"./node_modules/tiny-slider/src/helpers/showElement.js\");\n/* harmony import */ var _helpers_isVisible_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./helpers/isVisible.js */ \"./node_modules/tiny-slider/src/helpers/isVisible.js\");\n/* harmony import */ var _helpers_whichProperty_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./helpers/whichProperty.js */ \"./node_modules/tiny-slider/src/helpers/whichProperty.js\");\n/* harmony import */ var _helpers_has3DTransforms_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./helpers/has3DTransforms.js */ \"./node_modules/tiny-slider/src/helpers/has3DTransforms.js\");\n/* harmony import */ var _helpers_getEndProperty_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./helpers/getEndProperty.js */ \"./node_modules/tiny-slider/src/helpers/getEndProperty.js\");\n/* harmony import */ var _helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./helpers/addEvents.js */ \"./node_modules/tiny-slider/src/helpers/addEvents.js\");\n/* harmony import */ var _helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./helpers/removeEvents.js */ \"./node_modules/tiny-slider/src/helpers/removeEvents.js\");\n/* harmony import */ var _helpers_events_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./helpers/events.js */ \"./node_modules/tiny-slider/src/helpers/events.js\");\n/* harmony import */ var _helpers_jsTransform_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./helpers/jsTransform.js */ \"./node_modules/tiny-slider/src/helpers/jsTransform.js\");\n// Object.keys\nif (!Object.keys) {\n  Object.keys = function(object) {\n    var keys = [];\n    for (var name in object) {\n      if (Object.prototype.hasOwnProperty.call(object, name)) {\n        keys.push(name);\n      }\n    }\n    return keys;\n  };\n}\n\n// ChildNode.remove\nif(!(\"remove\" in Element.prototype)){\n  Element.prototype.remove = function(){\n    if(this.parentNode) {\n      this.parentNode.removeChild(this);\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\nvar tns = function(options) {\n  options = (0,_helpers_extend_js__WEBPACK_IMPORTED_MODULE_2__.extend)({\n    container: '.slider',\n    mode: 'carousel',\n    axis: 'horizontal',\n    items: 1,\n    gutter: 0,\n    edgePadding: 0,\n    fixedWidth: false,\n    autoWidth: false,\n    viewportMax: false,\n    slideBy: 1,\n    center: false,\n    controls: true,\n    controlsPosition: 'top',\n    controlsText: ['prev', 'next'],\n    controlsContainer: false,\n    prevButton: false,\n    nextButton: false,\n    nav: true,\n    navPosition: 'top',\n    navContainer: false,\n    navAsThumbnails: false,\n    arrowKeys: false,\n    speed: 300,\n    autoplay: false,\n    autoplayPosition: 'top',\n    autoplayTimeout: 5000,\n    autoplayDirection: 'forward',\n    autoplayText: ['start', 'stop'],\n    autoplayHoverPause: false,\n    autoplayButton: false,\n    autoplayButtonOutput: true,\n    autoplayResetOnVisibility: true,\n    animateIn: 'tns-fadeIn',\n    animateOut: 'tns-fadeOut',\n    animateNormal: 'tns-normal',\n    animateDelay: false,\n    loop: true,\n    rewind: false,\n    autoHeight: false,\n    responsive: false,\n    lazyload: false,\n    lazyloadSelector: '.tns-lazy-img',\n    touch: true,\n    mouseDrag: false,\n    swipeAngle: 15,\n    nested: false,\n    preventActionWhenRunning: false,\n    preventScrollOnTouch: false,\n    freezable: true,\n    onInit: false,\n    useLocalStorage: true,\n    nonce: false\n  }, options || {});\n\n  var doc = document,\n      win = window,\n      KEYS = {\n        ENTER: 13,\n        SPACE: 32,\n        LEFT: 37,\n        RIGHT: 39\n      },\n      tnsStorage = {},\n      localStorageAccess = options.useLocalStorage;\n\n  if (localStorageAccess) {\n    // check browser version and local storage access\n    var browserInfo = navigator.userAgent;\n    var uid = new Date;\n\n    try {\n      tnsStorage = win.localStorage;\n      if (tnsStorage) {\n        tnsStorage.setItem(uid, uid);\n        localStorageAccess = tnsStorage.getItem(uid) == uid;\n        tnsStorage.removeItem(uid);\n      } else {\n        localStorageAccess = false;\n      }\n      if (!localStorageAccess) { tnsStorage = {}; }\n    } catch(e) {\n      localStorageAccess = false;\n    }\n\n    if (localStorageAccess) {\n      // remove storage when browser version changes\n      if (tnsStorage['tnsApp'] && tnsStorage['tnsApp'] !== browserInfo) {\n        ['tC', 'tPL', 'tMQ', 'tTf', 't3D', 'tTDu', 'tTDe', 'tADu', 'tADe', 'tTE', 'tAE'].forEach(function(item) { tnsStorage.removeItem(item); });\n      }\n      // update browserInfo\n      localStorage['tnsApp'] = browserInfo;\n    }\n  }\n\n  var CALC = tnsStorage['tC'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tC']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tC', (0,_helpers_calc_js__WEBPACK_IMPORTED_MODULE_6__.calc)(), localStorageAccess),\n      PERCENTAGELAYOUT = tnsStorage['tPL'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tPL']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tPL', (0,_helpers_percentageLayout_js__WEBPACK_IMPORTED_MODULE_7__.percentageLayout)(), localStorageAccess),\n      CSSMQ = tnsStorage['tMQ'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tMQ']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tMQ', (0,_helpers_mediaquerySupport_js__WEBPACK_IMPORTED_MODULE_8__.mediaquerySupport)(), localStorageAccess),\n      TRANSFORM = tnsStorage['tTf'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tTf']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tTf', (0,_helpers_whichProperty_js__WEBPACK_IMPORTED_MODULE_27__.whichProperty)('transform'), localStorageAccess),\n      HAS3DTRANSFORMS = tnsStorage['t3D'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['t3D']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 't3D', (0,_helpers_has3DTransforms_js__WEBPACK_IMPORTED_MODULE_28__.has3DTransforms)(TRANSFORM), localStorageAccess),\n      TRANSITIONDURATION = tnsStorage['tTDu'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tTDu']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tTDu', (0,_helpers_whichProperty_js__WEBPACK_IMPORTED_MODULE_27__.whichProperty)('transitionDuration'), localStorageAccess),\n      TRANSITIONDELAY = tnsStorage['tTDe'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tTDe']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tTDe', (0,_helpers_whichProperty_js__WEBPACK_IMPORTED_MODULE_27__.whichProperty)('transitionDelay'), localStorageAccess),\n      ANIMATIONDURATION = tnsStorage['tADu'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tADu']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tADu', (0,_helpers_whichProperty_js__WEBPACK_IMPORTED_MODULE_27__.whichProperty)('animationDuration'), localStorageAccess),\n      ANIMATIONDELAY = tnsStorage['tADe'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tADe']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tADe', (0,_helpers_whichProperty_js__WEBPACK_IMPORTED_MODULE_27__.whichProperty)('animationDelay'), localStorageAccess),\n      TRANSITIONEND = tnsStorage['tTE'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tTE']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tTE', (0,_helpers_getEndProperty_js__WEBPACK_IMPORTED_MODULE_29__.getEndProperty)(TRANSITIONDURATION, 'Transition'), localStorageAccess),\n      ANIMATIONEND = tnsStorage['tAE'] ? (0,_helpers_checkStorageValue_js__WEBPACK_IMPORTED_MODULE_3__.checkStorageValue)(tnsStorage['tAE']) : (0,_helpers_setLocalStorage_js__WEBPACK_IMPORTED_MODULE_4__.setLocalStorage)(tnsStorage, 'tAE', (0,_helpers_getEndProperty_js__WEBPACK_IMPORTED_MODULE_29__.getEndProperty)(ANIMATIONDURATION, 'Animation'), localStorageAccess);\n\n  // get element nodes from selectors\n  var supportConsoleWarn = win.console && typeof win.console.warn === \"function\",\n      tnsList = ['container', 'controlsContainer', 'prevButton', 'nextButton', 'navContainer', 'autoplayButton'],\n      optionsElements = {};\n\n  tnsList.forEach(function(item) {\n    if (typeof options[item] === 'string') {\n      var str = options[item],\n          el = doc.querySelector(str);\n      optionsElements[item] = str;\n\n      if (el && el.nodeName) {\n        options[item] = el;\n      } else {\n        if (supportConsoleWarn) { console.warn('Can\\'t find', options[item]); }\n        return;\n      }\n    }\n  });\n\n  // make sure at least 1 slide\n  if (options.container.children.length < 1) {\n    if (supportConsoleWarn) { console.warn('No slides found in', options.container); }\n    return;\n   }\n\n  // update options\n  var responsive = options.responsive,\n      nested = options.nested,\n      carousel = options.mode === 'carousel' ? true : false;\n\n  if (responsive) {\n    // apply responsive[0] to options and remove it\n    if (0 in responsive) {\n      options = (0,_helpers_extend_js__WEBPACK_IMPORTED_MODULE_2__.extend)(options, responsive[0]);\n      delete responsive[0];\n    }\n\n    var responsiveTem = {};\n    for (var key in responsive) {\n      var val = responsive[key];\n      // update responsive\n      // from: 300: 2\n      // to:\n      //   300: {\n      //     items: 2\n      //   }\n      val = typeof val === 'number' ? {items: val} : val;\n      responsiveTem[key] = val;\n    }\n    responsive = responsiveTem;\n    responsiveTem = null;\n  }\n\n  // update options\n  function updateOptions (obj) {\n    for (var key in obj) {\n      if (!carousel) {\n        if (key === 'slideBy') { obj[key] = 'page'; }\n        if (key === 'edgePadding') { obj[key] = false; }\n        if (key === 'autoHeight') { obj[key] = false; }\n      }\n\n      // update responsive options\n      if (key === 'responsive') { updateOptions(obj[key]); }\n    }\n  }\n  if (!carousel) { updateOptions(options); }\n\n\n  // === define and set variables ===\n  if (!carousel) {\n    options.axis = 'horizontal';\n    options.slideBy = 'page';\n    options.edgePadding = false;\n\n    var animateIn = options.animateIn,\n        animateOut = options.animateOut,\n        animateDelay = options.animateDelay,\n        animateNormal = options.animateNormal;\n  }\n\n  var horizontal = options.axis === 'horizontal' ? true : false,\n      outerWrapper = doc.createElement('div'),\n      innerWrapper = doc.createElement('div'),\n      middleWrapper,\n      container = options.container,\n      containerParent = container.parentNode,\n      containerHTML = container.outerHTML,\n      slideItems = container.children,\n      slideCount = slideItems.length,\n      breakpointZone,\n      windowWidth = getWindowWidth(),\n      isOn = false;\n  if (responsive) { setBreakpointZone(); }\n  if (carousel) { container.className += ' tns-vpfix'; }\n\n  // fixedWidth: viewport > rightBoundary > indexMax\n  var autoWidth = options.autoWidth,\n      fixedWidth = getOption('fixedWidth'),\n      edgePadding = getOption('edgePadding'),\n      gutter = getOption('gutter'),\n      viewport = getViewportWidth(),\n      center = getOption('center'),\n      items = !autoWidth ? Math.floor(getOption('items')) : 1,\n      slideBy = getOption('slideBy'),\n      viewportMax = options.viewportMax || options.fixedWidthViewportWidth,\n      arrowKeys = getOption('arrowKeys'),\n      speed = getOption('speed'),\n      rewind = options.rewind,\n      loop = rewind ? false : options.loop,\n      autoHeight = getOption('autoHeight'),\n      controls = getOption('controls'),\n      controlsText = getOption('controlsText'),\n      nav = getOption('nav'),\n      touch = getOption('touch'),\n      mouseDrag = getOption('mouseDrag'),\n      autoplay = getOption('autoplay'),\n      autoplayTimeout = getOption('autoplayTimeout'),\n      autoplayText = getOption('autoplayText'),\n      autoplayHoverPause = getOption('autoplayHoverPause'),\n      autoplayResetOnVisibility = getOption('autoplayResetOnVisibility'),\n      sheet = (0,_helpers_createStyleSheet_js__WEBPACK_IMPORTED_MODULE_9__.createStyleSheet)(null, getOption('nonce')),\n      lazyload = options.lazyload,\n      lazyloadSelector = options.lazyloadSelector,\n      slidePositions, // collection of slide positions\n      slideItemsOut = [],\n      cloneCount = loop ? getCloneCountForLoop() : 0,\n      slideCountNew = !carousel ? slideCount + cloneCount : slideCount + cloneCount * 2,\n      hasRightDeadZone = (fixedWidth || autoWidth) && !loop ? true : false,\n      rightBoundary = fixedWidth ? getRightBoundary() : null,\n      updateIndexBeforeTransform = (!carousel || !loop) ? true : false,\n      // transform\n      transformAttr = horizontal ? 'left' : 'top',\n      transformPrefix = '',\n      transformPostfix = '',\n      // index\n      getIndexMax = (function () {\n        if (fixedWidth) {\n          return function() { return center && !loop ? slideCount - 1 : Math.ceil(- rightBoundary / (fixedWidth + gutter)); };\n        } else if (autoWidth) {\n          return function() {\n            for (var i = 0; i < slideCountNew; i++) {\n              if (slidePositions[i] >= - rightBoundary) { return i; }\n            }\n          };\n        } else {\n          return function() {\n            if (center && carousel && !loop) {\n              return slideCount - 1;\n            } else {\n              return loop || carousel ? Math.max(0, slideCountNew - Math.ceil(items)) : slideCountNew - 1;\n            }\n          };\n        }\n      })(),\n      index = getStartIndex(getOption('startIndex')),\n      indexCached = index,\n      displayIndex = getCurrentSlide(),\n      indexMin = 0,\n      indexMax = !autoWidth ? getIndexMax() : null,\n      // resize\n      resizeTimer,\n      preventActionWhenRunning = options.preventActionWhenRunning,\n      swipeAngle = options.swipeAngle,\n      moveDirectionExpected = swipeAngle ? '?' : true,\n      running = false,\n      onInit = options.onInit,\n      events = new _helpers_events_js__WEBPACK_IMPORTED_MODULE_32__.Events(),\n      // id, class\n      newContainerClasses = ' tns-slider tns-' + options.mode,\n      slideId = container.id || (0,_helpers_getSlideId_js__WEBPACK_IMPORTED_MODULE_5__.getSlideId)(),\n      disable = getOption('disable'),\n      disabled = false,\n      freezable = options.freezable,\n      freeze = freezable && !autoWidth ? getFreeze() : false,\n      frozen = false,\n      controlsEvents = {\n        'click': onControlsClick,\n        'keydown': onControlsKeydown\n      },\n      navEvents = {\n        'click': onNavClick,\n        'keydown': onNavKeydown\n      },\n      hoverEvents = {\n        'mouseover': mouseoverPause,\n        'mouseout': mouseoutRestart\n      },\n      visibilityEvent = {'visibilitychange': onVisibilityChange},\n      docmentKeydownEvent = {'keydown': onDocumentKeydown},\n      touchEvents = {\n        'touchstart': onPanStart,\n        'touchmove': onPanMove,\n        'touchend': onPanEnd,\n        'touchcancel': onPanEnd\n      }, dragEvents = {\n        'mousedown': onPanStart,\n        'mousemove': onPanMove,\n        'mouseup': onPanEnd,\n        'mouseleave': onPanEnd\n      },\n      hasControls = hasOption('controls'),\n      hasNav = hasOption('nav'),\n      navAsThumbnails = autoWidth ? true : options.navAsThumbnails,\n      hasAutoplay = hasOption('autoplay'),\n      hasTouch = hasOption('touch'),\n      hasMouseDrag = hasOption('mouseDrag'),\n      slideActiveClass = 'tns-slide-active',\n      slideClonedClass = 'tns-slide-cloned',\n      imgCompleteClass = 'tns-complete',\n      imgEvents = {\n        'load': onImgLoaded,\n        'error': onImgFailed\n      },\n      imgsComplete,\n      liveregionCurrent,\n      preventScroll = options.preventScrollOnTouch === 'force' ? true : false;\n\n  // controls\n  if (hasControls) {\n    var controlsContainer = options.controlsContainer,\n        controlsContainerHTML = options.controlsContainer ? options.controlsContainer.outerHTML : '',\n        prevButton = options.prevButton,\n        nextButton = options.nextButton,\n        prevButtonHTML = options.prevButton ? options.prevButton.outerHTML : '',\n        nextButtonHTML = options.nextButton ? options.nextButton.outerHTML : '',\n        prevIsButton,\n        nextIsButton;\n  }\n\n  // nav\n  if (hasNav) {\n    var navContainer = options.navContainer,\n        navContainerHTML = options.navContainer ? options.navContainer.outerHTML : '',\n        navItems,\n        pages = autoWidth ? slideCount : getPages(),\n        pagesCached = 0,\n        navClicked = -1,\n        navCurrentIndex = getCurrentNavIndex(),\n        navCurrentIndexCached = navCurrentIndex,\n        navActiveClass = 'tns-nav-active',\n        navStr = 'Carousel Page ',\n        navStrCurrent = ' (Current Slide)';\n  }\n\n  // autoplay\n  if (hasAutoplay) {\n    var autoplayDirection = options.autoplayDirection === 'forward' ? 1 : -1,\n        autoplayButton = options.autoplayButton,\n        autoplayButtonHTML = options.autoplayButton ? options.autoplayButton.outerHTML : '',\n        autoplayHtmlStrings = ['<span class=\\'tns-visually-hidden\\'>', ' animation</span>'],\n        autoplayTimer,\n        animating,\n        autoplayHoverPaused,\n        autoplayUserPaused,\n        autoplayVisibilityPaused;\n  }\n\n  if (hasTouch || hasMouseDrag) {\n    var initPosition = {},\n        lastPosition = {},\n        translateInit,\n        disX,\n        disY,\n        panStart = false,\n        rafIndex,\n        getDist = horizontal ?\n          function(a, b) { return a.x - b.x; } :\n          function(a, b) { return a.y - b.y; };\n  }\n\n  // disable slider when slidecount <= items\n  if (!autoWidth) { resetVariblesWhenDisable(disable || freeze); }\n\n  if (TRANSFORM) {\n    transformAttr = TRANSFORM;\n    transformPrefix = 'translate';\n\n    if (HAS3DTRANSFORMS) {\n      transformPrefix += horizontal ? '3d(' : '3d(0px, ';\n      transformPostfix = horizontal ? ', 0px, 0px)' : ', 0px)';\n    } else {\n      transformPrefix += horizontal ? 'X(' : 'Y(';\n      transformPostfix = ')';\n    }\n\n  }\n\n  if (carousel) { container.className = container.className.replace('tns-vpfix', ''); }\n  initStructure();\n  initSheet();\n  initSliderTransform();\n\n  // === COMMON FUNCTIONS === //\n  function resetVariblesWhenDisable (condition) {\n    if (condition) {\n      controls = nav = touch = mouseDrag = arrowKeys = autoplay = autoplayHoverPause = autoplayResetOnVisibility = false;\n    }\n  }\n\n  function getCurrentSlide () {\n    var tem = carousel ? index - cloneCount : index;\n    while (tem < 0) { tem += slideCount; }\n    return tem%slideCount + 1;\n  }\n\n  function getStartIndex (ind) {\n    ind = ind ? Math.max(0, Math.min(loop ? slideCount - 1 : slideCount - items, ind)) : 0;\n    return carousel ? ind + cloneCount : ind;\n  }\n\n  function getAbsIndex (i) {\n    if (i == null) { i = index; }\n\n    if (carousel) { i -= cloneCount; }\n    while (i < 0) { i += slideCount; }\n\n    return Math.floor(i%slideCount);\n  }\n\n  function getCurrentNavIndex () {\n    var absIndex = getAbsIndex(),\n        result;\n\n    result = navAsThumbnails ? absIndex :\n      fixedWidth || autoWidth ? Math.ceil((absIndex + 1) * pages / slideCount - 1) :\n          Math.floor(absIndex / items);\n\n    // set active nav to the last one when reaches the right edge\n    if (!loop && carousel && index === indexMax) { result = pages - 1; }\n\n    return result;\n  }\n\n  function getItemsMax () {\n    // fixedWidth or autoWidth while viewportMax is not available\n    if (autoWidth || (fixedWidth && !viewportMax)) {\n      return slideCount - 1;\n    // most cases\n    } else {\n      var str = fixedWidth ? 'fixedWidth' : 'items',\n          arr = [];\n\n      if (fixedWidth || options[str] < slideCount) { arr.push(options[str]); }\n\n      if (responsive) {\n        for (var bp in responsive) {\n          var tem = responsive[bp][str];\n          if (tem && (fixedWidth || tem < slideCount)) { arr.push(tem); }\n        }\n      }\n\n      if (!arr.length) { arr.push(0); }\n\n      return Math.ceil(fixedWidth ? viewportMax / Math.min.apply(null, arr) : Math.max.apply(null, arr));\n    }\n  }\n\n  function getCloneCountForLoop () {\n    var itemsMax = getItemsMax(),\n        result = carousel ? Math.ceil((itemsMax * 5 - slideCount)/2) : (itemsMax * 4 - slideCount);\n    result = Math.max(itemsMax, result);\n\n    return hasOption('edgePadding') ? result + 1 : result;\n  }\n\n  function getWindowWidth () {\n    return win.innerWidth || doc.documentElement.clientWidth || doc.body.clientWidth;\n  }\n\n  function getInsertPosition (pos) {\n    return pos === 'top' ? 'afterbegin' : 'beforeend';\n  }\n\n  function getClientWidth (el) {\n    if (el == null) { return; }\n    var div = doc.createElement('div'), rect, width;\n    el.appendChild(div);\n    rect = div.getBoundingClientRect();\n    width = rect.right - rect.left;\n    div.remove();\n    return width || getClientWidth(el.parentNode);\n  }\n\n  function getViewportWidth () {\n    var gap = edgePadding ? edgePadding * 2 - gutter : 0;\n    return getClientWidth(containerParent) - gap;\n  }\n\n  function hasOption (item) {\n    if (options[item]) {\n      return true;\n    } else {\n      if (responsive) {\n        for (var bp in responsive) {\n          if (responsive[bp][item]) { return true; }\n        }\n      }\n      return false;\n    }\n  }\n\n  // get option:\n  // fixed width: viewport, fixedWidth, gutter => items\n  // others: window width => all variables\n  // all: items => slideBy\n  function getOption (item, ww) {\n    if (ww == null) { ww = windowWidth; }\n\n    if (item === 'items' && fixedWidth) {\n      return Math.floor((viewport + gutter) / (fixedWidth + gutter)) || 1;\n\n    } else {\n      var result = options[item];\n\n      if (responsive) {\n        for (var bp in responsive) {\n          // bp: convert string to number\n          if (ww >= parseInt(bp)) {\n            if (item in responsive[bp]) { result = responsive[bp][item]; }\n          }\n        }\n      }\n\n      if (item === 'slideBy' && result === 'page') { result = getOption('items'); }\n      if (!carousel && (item === 'slideBy' || item === 'items')) { result = Math.floor(result); }\n\n      return result;\n    }\n  }\n\n  function getSlideMarginLeft (i) {\n    return CALC ?\n      CALC + '(' + i * 100 + '% / ' + slideCountNew + ')' :\n      i * 100 / slideCountNew + '%';\n  }\n\n  function getInnerWrapperStyles (edgePaddingTem, gutterTem, fixedWidthTem, speedTem, autoHeightBP) {\n    var str = '';\n\n    if (edgePaddingTem !== undefined) {\n      var gap = edgePaddingTem;\n      if (gutterTem) { gap -= gutterTem; }\n      str = horizontal ?\n        'margin: 0 ' + gap + 'px 0 ' + edgePaddingTem + 'px;' :\n        'margin: ' + edgePaddingTem + 'px 0 ' + gap + 'px 0;';\n    } else if (gutterTem && !fixedWidthTem) {\n      var gutterTemUnit = '-' + gutterTem + 'px',\n          dir = horizontal ? gutterTemUnit + ' 0 0' : '0 ' + gutterTemUnit + ' 0';\n      str = 'margin: 0 ' + dir + ';'\n    }\n\n    if (!carousel && autoHeightBP && TRANSITIONDURATION && speedTem) { str += getTransitionDurationStyle(speedTem); }\n    return str;\n  }\n\n  function getContainerWidth (fixedWidthTem, gutterTem, itemsTem) {\n    if (fixedWidthTem) {\n      return (fixedWidthTem + gutterTem) * slideCountNew + 'px';\n    } else {\n      return CALC ?\n        CALC + '(' + slideCountNew * 100 + '% / ' + itemsTem + ')' :\n        slideCountNew * 100 / itemsTem + '%';\n    }\n  }\n\n  function getSlideWidthStyle (fixedWidthTem, gutterTem, itemsTem) {\n    var width;\n\n    if (fixedWidthTem) {\n      width = (fixedWidthTem + gutterTem) + 'px';\n    } else {\n      if (!carousel) { itemsTem = Math.floor(itemsTem); }\n      var dividend = carousel ? slideCountNew : itemsTem;\n      width = CALC ?\n        CALC + '(100% / ' + dividend + ')' :\n        100 / dividend + '%';\n    }\n\n    width = 'width:' + width;\n\n    // inner slider: overwrite outer slider styles\n    return nested !== 'inner' ? width + ';' : width + ' !important;';\n  }\n\n  function getSlideGutterStyle (gutterTem) {\n    var str = '';\n\n    // gutter maybe interger || 0\n    // so can't use 'if (gutter)'\n    if (gutterTem !== false) {\n      var prop = horizontal ? 'padding-' : 'margin-',\n          dir = horizontal ? 'right' : 'bottom';\n      str = prop +  dir + ': ' + gutterTem + 'px;';\n    }\n\n    return str;\n  }\n\n  function getCSSPrefix (name, num) {\n    var prefix = name.substring(0, name.length - num).toLowerCase();\n    if (prefix) { prefix = '-' + prefix + '-'; }\n\n    return prefix;\n  }\n\n  function getTransitionDurationStyle (speed) {\n    return getCSSPrefix(TRANSITIONDURATION, 18) + 'transition-duration:' + speed / 1000 + 's;';\n  }\n\n  function getAnimationDurationStyle (speed) {\n    return getCSSPrefix(ANIMATIONDURATION, 17) + 'animation-duration:' + speed / 1000 + 's;';\n  }\n\n  function initStructure () {\n    var classOuter = 'tns-outer',\n        classInner = 'tns-inner',\n        hasGutter = hasOption('gutter');\n\n    outerWrapper.className = classOuter;\n    innerWrapper.className = classInner;\n    outerWrapper.id = slideId + '-ow';\n    innerWrapper.id = slideId + '-iw';\n\n    // set container properties\n    if (container.id === '') { container.id = slideId; }\n    newContainerClasses += PERCENTAGELAYOUT || autoWidth ? ' tns-subpixel' : ' tns-no-subpixel';\n    newContainerClasses += CALC ? ' tns-calc' : ' tns-no-calc';\n    if (autoWidth) { newContainerClasses += ' tns-autowidth'; }\n    newContainerClasses += ' tns-' + options.axis;\n    container.className += newContainerClasses;\n\n    // add constrain layer for carousel\n    if (carousel) {\n      middleWrapper = doc.createElement('div');\n      middleWrapper.id = slideId + '-mw';\n      middleWrapper.className = 'tns-ovh';\n\n      outerWrapper.appendChild(middleWrapper);\n      middleWrapper.appendChild(innerWrapper);\n    } else {\n      outerWrapper.appendChild(innerWrapper);\n    }\n\n    if (autoHeight) {\n      var wp = middleWrapper ? middleWrapper : innerWrapper;\n      wp.className += ' tns-ah';\n    }\n\n    containerParent.insertBefore(outerWrapper, container);\n    innerWrapper.appendChild(container);\n\n    // add id, class, aria attributes\n    // before clone slides\n    (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(slideItems, function(item, i) {\n      (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, 'tns-item');\n      if (!item.id) { item.id = slideId + '-item' + i; }\n      if (!carousel && animateNormal) { (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, animateNormal); }\n      (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(item, {\n        'aria-hidden': 'true',\n        'tabindex': '-1'\n      });\n    });\n\n    // ## clone slides\n    // carousel: n + slides + n\n    // gallery:      slides + n\n    if (cloneCount) {\n      var fragmentBefore = doc.createDocumentFragment(),\n          fragmentAfter = doc.createDocumentFragment();\n\n      for (var j = cloneCount; j--;) {\n        var num = j%slideCount,\n            cloneFirst = slideItems[num].cloneNode(true);\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(cloneFirst, slideClonedClass);\n        (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(cloneFirst, 'id');\n        fragmentAfter.insertBefore(cloneFirst, fragmentAfter.firstChild);\n\n        if (carousel) {\n          var cloneLast = slideItems[slideCount - 1 - num].cloneNode(true);\n          (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(cloneLast, slideClonedClass);\n          (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(cloneLast, 'id');\n          fragmentBefore.appendChild(cloneLast);\n        }\n      }\n\n      container.insertBefore(fragmentBefore, container.firstChild);\n      container.appendChild(fragmentAfter);\n      slideItems = container.children;\n    }\n\n  }\n\n  function initSliderTransform () {\n    // ## images loaded/failed\n    if (hasOption('autoHeight') || autoWidth || !horizontal) {\n      var imgs = container.querySelectorAll('img');\n\n      // add img load event listener\n      (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(imgs, function(img) {\n        var src = img.src;\n\n        if (!lazyload) {\n          // not data img\n          if (src && src.indexOf('data:image') < 0) {\n            img.src = '';\n            (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(img, imgEvents);\n            (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(img, 'loading');\n\n            img.src = src;\n          // data img\n          } else {\n            imgLoaded(img);\n          }\n        }\n      });\n\n      // set imgsComplete\n      (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ imgsLoadedCheck((0,_helpers_arrayFromNodeList_js__WEBPACK_IMPORTED_MODULE_23__.arrayFromNodeList)(imgs), function() { imgsComplete = true; }); });\n\n      // reset imgs for auto height: check visible imgs only\n      if (hasOption('autoHeight')) { imgs = getImageArray(index, Math.min(index + items - 1, slideCountNew - 1)); }\n\n      lazyload ? initSliderTransformStyleCheck() : (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ imgsLoadedCheck((0,_helpers_arrayFromNodeList_js__WEBPACK_IMPORTED_MODULE_23__.arrayFromNodeList)(imgs), initSliderTransformStyleCheck); });\n\n    } else {\n      // set container transform property\n      if (carousel) { doContainerTransformSilent(); }\n\n      // update slider tools and events\n      initTools();\n      initEvents();\n    }\n  }\n\n  function initSliderTransformStyleCheck () {\n    if (autoWidth && slideCount > 1) {\n      // check styles application\n      var num = loop ? index : slideCount - 1;\n\n      (function stylesApplicationCheck() {\n        var left = slideItems[num].getBoundingClientRect().left;\n        var right = slideItems[num - 1].getBoundingClientRect().right;\n\n        (Math.abs(left - right) <= 1) ?\n          initSliderTransformCore() :\n          setTimeout(function(){ stylesApplicationCheck() }, 16);\n      })();\n\n    } else {\n      initSliderTransformCore();\n    }\n  }\n\n\n  function initSliderTransformCore () {\n    // run Fn()s which are rely on image loading\n    if (!horizontal || autoWidth) {\n      setSlidePositions();\n\n      if (autoWidth) {\n        rightBoundary = getRightBoundary();\n        if (freezable) { freeze = getFreeze(); }\n        indexMax = getIndexMax(); // <= slidePositions, rightBoundary <=\n        resetVariblesWhenDisable(disable || freeze);\n      } else {\n        updateContentWrapperHeight();\n      }\n    }\n\n    // set container transform property\n    if (carousel) { doContainerTransformSilent(); }\n\n    // update slider tools and events\n    initTools();\n    initEvents();\n  }\n\n  function initSheet () {\n    // gallery:\n    // set animation classes and left value for gallery slider\n    if (!carousel) {\n      for (var i = index, l = index + Math.min(slideCount, items); i < l; i++) {\n        var item = slideItems[i];\n        item.style.left = (i - index) * 100 / items + '%';\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, animateIn);\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateNormal);\n      }\n    }\n\n    // #### LAYOUT\n\n    // ## INLINE-BLOCK VS FLOAT\n\n    // ## PercentageLayout:\n    // slides: inline-block\n    // remove blank space between slides by set font-size: 0\n\n    // ## Non PercentageLayout:\n    // slides: float\n    //         margin-right: -100%\n    //         margin-left: ~\n\n    // Resource: https://docs.google.com/spreadsheets/d/147up245wwTXeQYve3BRSAD4oVcvQmuGsFteJOeA5xNQ/edit?usp=sharing\n    if (horizontal) {\n      if (PERCENTAGELAYOUT || autoWidth) {\n        (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId + ' > .tns-item', 'font-size:' + win.getComputedStyle(slideItems[0]).fontSize + ';', (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n        (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId, 'font-size:0;', (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n      } else if (carousel) {\n        (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(slideItems, function (slide, i) {\n          slide.style.marginLeft = getSlideMarginLeft(i);\n        });\n      }\n    }\n\n\n    // ## BASIC STYLES\n    if (CSSMQ) {\n      // middle wrapper style\n      if (TRANSITIONDURATION) {\n        var str = middleWrapper && options.autoHeight ? getTransitionDurationStyle(options.speed) : '';\n        (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId + '-mw', str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n      }\n\n      // inner wrapper styles\n      str = getInnerWrapperStyles(options.edgePadding, options.gutter, options.fixedWidth, options.speed, options.autoHeight);\n      (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId + '-iw', str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n\n      // container styles\n      if (carousel) {\n        str = horizontal && !autoWidth ? 'width:' + getContainerWidth(options.fixedWidth, options.gutter, options.items) + ';' : '';\n        if (TRANSITIONDURATION) { str += getTransitionDurationStyle(speed); }\n        (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId, str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n      }\n\n      // slide styles\n      str = horizontal && !autoWidth ? getSlideWidthStyle(options.fixedWidth, options.gutter, options.items) : '';\n      if (options.gutter) { str += getSlideGutterStyle(options.gutter); }\n      // set gallery items transition-duration\n      if (!carousel) {\n        if (TRANSITIONDURATION) { str += getTransitionDurationStyle(speed); }\n        if (ANIMATIONDURATION) { str += getAnimationDurationStyle(speed); }\n      }\n      if (str) { (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId + ' > .tns-item', str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet)); }\n\n    // non CSS mediaqueries: IE8\n    // ## update inner wrapper, container, slides if needed\n    // set inline styles for inner wrapper & container\n    // insert stylesheet (one line) for slides only (since slides are many)\n    } else {\n      // middle wrapper styles\n      update_carousel_transition_duration();\n\n      // inner wrapper styles\n      innerWrapper.style.cssText = getInnerWrapperStyles(edgePadding, gutter, fixedWidth, autoHeight);\n\n      // container styles\n      if (carousel && horizontal && !autoWidth) {\n        container.style.width = getContainerWidth(fixedWidth, gutter, items);\n      }\n\n      // slide styles\n      var str = horizontal && !autoWidth ? getSlideWidthStyle(fixedWidth, gutter, items) : '';\n      if (gutter) { str += getSlideGutterStyle(gutter); }\n\n      // append to the last line\n      if (str) { (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId + ' > .tns-item', str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet)); }\n    }\n\n    // ## MEDIAQUERIES\n    if (responsive && CSSMQ) {\n      for (var bp in responsive) {\n        // bp: convert string to number\n        bp = parseInt(bp);\n\n        var opts = responsive[bp],\n            str = '',\n            middleWrapperStr = '',\n            innerWrapperStr = '',\n            containerStr = '',\n            slideStr = '',\n            itemsBP = !autoWidth ? getOption('items', bp) : null,\n            fixedWidthBP = getOption('fixedWidth', bp),\n            speedBP = getOption('speed', bp),\n            edgePaddingBP = getOption('edgePadding', bp),\n            autoHeightBP = getOption('autoHeight', bp),\n            gutterBP = getOption('gutter', bp);\n\n        // middle wrapper string\n        if (TRANSITIONDURATION && middleWrapper && getOption('autoHeight', bp) && 'speed' in opts) {\n          middleWrapperStr = '#' + slideId + '-mw{' + getTransitionDurationStyle(speedBP) + '}';\n        }\n\n        // inner wrapper string\n        if ('edgePadding' in opts || 'gutter' in opts) {\n          innerWrapperStr = '#' + slideId + '-iw{' + getInnerWrapperStyles(edgePaddingBP, gutterBP, fixedWidthBP, speedBP, autoHeightBP) + '}';\n        }\n\n        // container string\n        if (carousel && horizontal && !autoWidth && ('fixedWidth' in opts || 'items' in opts || (fixedWidth && 'gutter' in opts))) {\n          containerStr = 'width:' + getContainerWidth(fixedWidthBP, gutterBP, itemsBP) + ';';\n        }\n        if (TRANSITIONDURATION && 'speed' in opts) {\n          containerStr += getTransitionDurationStyle(speedBP);\n        }\n        if (containerStr) {\n          containerStr = '#' + slideId + '{' + containerStr + '}';\n        }\n\n        // slide string\n        if ('fixedWidth' in opts || (fixedWidth && 'gutter' in opts) || !carousel && 'items' in opts) {\n          slideStr += getSlideWidthStyle(fixedWidthBP, gutterBP, itemsBP);\n        }\n        if ('gutter' in opts) {\n          slideStr += getSlideGutterStyle(gutterBP);\n        }\n        // set gallery items transition-duration\n        if (!carousel && 'speed' in opts) {\n          if (TRANSITIONDURATION) { slideStr += getTransitionDurationStyle(speedBP); }\n          if (ANIMATIONDURATION) { slideStr += getAnimationDurationStyle(speedBP); }\n        }\n        if (slideStr) { slideStr = '#' + slideId + ' > .tns-item{' + slideStr + '}'; }\n\n        // add up\n        str = middleWrapperStr + innerWrapperStr + containerStr + slideStr;\n\n        if (str) {\n          sheet.insertRule('@media (min-width: ' + bp / 16 + 'em) {' + str + '}', sheet.cssRules.length);\n        }\n      }\n    }\n  }\n\n  function initTools () {\n    // == slides ==\n    updateSlideStatus();\n\n    // == live region ==\n    outerWrapper.insertAdjacentHTML('afterbegin', '<div class=\"tns-liveregion tns-visually-hidden\" aria-live=\"polite\" aria-atomic=\"true\">slide <span class=\"current\">' + getLiveRegionStr() + '</span>  of ' + slideCount + '</div>');\n    liveregionCurrent = outerWrapper.querySelector('.tns-liveregion .current');\n\n    // == autoplayInit ==\n    if (hasAutoplay) {\n      var txt = autoplay ? 'stop' : 'start';\n      if (autoplayButton) {\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(autoplayButton, {'data-action': txt});\n      } else if (options.autoplayButtonOutput) {\n        outerWrapper.insertAdjacentHTML(getInsertPosition(options.autoplayPosition), '<button type=\"button\" data-action=\"' + txt + '\">' + autoplayHtmlStrings[0] + txt + autoplayHtmlStrings[1] + autoplayText[0] + '</button>');\n        autoplayButton = outerWrapper.querySelector('[data-action]');\n      }\n\n      // add event\n      if (autoplayButton) {\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(autoplayButton, {'click': toggleAutoplay});\n      }\n\n      if (autoplay) {\n        startAutoplay();\n        if (autoplayHoverPause) { (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, hoverEvents); }\n        if (autoplayResetOnVisibility) { (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, visibilityEvent); }\n      }\n    }\n\n    // == navInit ==\n    if (hasNav) {\n      var initIndex = !carousel ? 0 : cloneCount;\n      // customized nav\n      // will not hide the navs in case they're thumbnails\n      if (navContainer) {\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(navContainer, {'aria-label': 'Carousel Pagination'});\n        navItems = navContainer.children;\n        (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(navItems, function(item, i) {\n          (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(item, {\n            'data-nav': i,\n            'tabindex': '-1',\n            'aria-label': navStr + (i + 1),\n            'aria-controls': slideId,\n          });\n        });\n\n      // generated nav\n      } else {\n        var navHtml = '',\n            hiddenStr = navAsThumbnails ? '' : 'style=\"display:none\"';\n        for (var i = 0; i < slideCount; i++) {\n          // hide nav items by default\n          navHtml += '<button type=\"button\" data-nav=\"' + i +'\" tabindex=\"-1\" aria-controls=\"' + slideId + '\" ' + hiddenStr + ' aria-label=\"' + navStr + (i + 1) +'\"></button>';\n        }\n        navHtml = '<div class=\"tns-nav\" aria-label=\"Carousel Pagination\">' + navHtml + '</div>';\n        outerWrapper.insertAdjacentHTML(getInsertPosition(options.navPosition), navHtml);\n\n        navContainer = outerWrapper.querySelector('.tns-nav');\n        navItems = navContainer.children;\n      }\n\n      updateNavVisibility();\n\n      // add transition\n      if (TRANSITIONDURATION) {\n        var prefix = TRANSITIONDURATION.substring(0, TRANSITIONDURATION.length - 18).toLowerCase(),\n            str = 'transition: all ' + speed / 1000 + 's';\n\n        if (prefix) {\n          str = '-' + prefix + '-' + str;\n        }\n\n        (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '[aria-controls^=' + slideId + '-item]', str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n      }\n\n      (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(navItems[navCurrentIndex], {'aria-label': navStr + (navCurrentIndex + 1) + navStrCurrent});\n      (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(navItems[navCurrentIndex], 'tabindex');\n      (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(navItems[navCurrentIndex], navActiveClass);\n\n      // add events\n      (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(navContainer, navEvents);\n    }\n\n\n\n    // == controlsInit ==\n    if (hasControls) {\n      if (!controlsContainer && (!prevButton || !nextButton)) {\n        outerWrapper.insertAdjacentHTML(getInsertPosition(options.controlsPosition), '<div class=\"tns-controls\" aria-label=\"Carousel Navigation\" tabindex=\"0\"><button type=\"button\" data-controls=\"prev\" tabindex=\"-1\" aria-controls=\"' + slideId +'\">' + controlsText[0] + '</button><button type=\"button\" data-controls=\"next\" tabindex=\"-1\" aria-controls=\"' + slideId +'\">' + controlsText[1] + '</button></div>');\n\n        controlsContainer = outerWrapper.querySelector('.tns-controls');\n      }\n\n      if (!prevButton || !nextButton) {\n        prevButton = controlsContainer.children[0];\n        nextButton = controlsContainer.children[1];\n      }\n\n      if (options.controlsContainer) {\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(controlsContainer, {\n          'aria-label': 'Carousel Navigation',\n          'tabindex': '0'\n        });\n      }\n\n      if (options.controlsContainer || (options.prevButton && options.nextButton)) {\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)([prevButton, nextButton], {\n          'aria-controls': slideId,\n          'tabindex': '-1',\n        });\n      }\n\n      if (options.controlsContainer || (options.prevButton && options.nextButton)) {\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(prevButton, {'data-controls' : 'prev'});\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(nextButton, {'data-controls' : 'next'});\n      }\n\n      prevIsButton = isButton(prevButton);\n      nextIsButton = isButton(nextButton);\n\n      updateControlsStatus();\n\n      // add events\n      if (controlsContainer) {\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(controlsContainer, controlsEvents);\n      } else {\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(prevButton, controlsEvents);\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(nextButton, controlsEvents);\n      }\n    }\n\n    // hide tools if needed\n    disableUI();\n  }\n\n  function initEvents () {\n    // add events\n    if (carousel && TRANSITIONEND) {\n      var eve = {};\n      eve[TRANSITIONEND] = onTransitionEnd;\n      (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, eve);\n    }\n\n    if (touch) { (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, touchEvents, options.preventScrollOnTouch); }\n    if (mouseDrag) { (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, dragEvents); }\n    if (arrowKeys) { (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(doc, docmentKeydownEvent); }\n\n    if (nested === 'inner') {\n      events.on('outerResized', function () {\n        resizeTasks();\n        events.emit('innerLoaded', info());\n      });\n    } else if (responsive || fixedWidth || autoWidth || autoHeight || !horizontal) {\n      (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(win, {'resize': onResize});\n    }\n\n    if (autoHeight) {\n      if (nested === 'outer') {\n        events.on('innerLoaded', doAutoHeight);\n      } else if (!disable) { doAutoHeight(); }\n    }\n\n    doLazyLoad();\n    if (disable) { disableSlider(); } else if (freeze) { freezeSlider(); }\n\n    events.on('indexChanged', additionalUpdates);\n    if (nested === 'inner') { events.emit('innerLoaded', info()); }\n    if (typeof onInit === 'function') { onInit(info()); }\n    isOn = true;\n  }\n\n  function destroy () {\n    // sheet\n    sheet.disabled = true;\n    if (sheet.ownerNode) { sheet.ownerNode.remove(); }\n\n    // remove win event listeners\n    (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(win, {'resize': onResize});\n\n    // arrowKeys, controls, nav\n    if (arrowKeys) { (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(doc, docmentKeydownEvent); }\n    if (controlsContainer) { (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(controlsContainer, controlsEvents); }\n    if (navContainer) { (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(navContainer, navEvents); }\n\n    // autoplay\n    (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, hoverEvents);\n    (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, visibilityEvent);\n    if (autoplayButton) { (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(autoplayButton, {'click': toggleAutoplay}); }\n    if (autoplay) { clearInterval(autoplayTimer); }\n\n    // container\n    if (carousel && TRANSITIONEND) {\n      var eve = {};\n      eve[TRANSITIONEND] = onTransitionEnd;\n      (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, eve);\n    }\n    if (touch) { (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, touchEvents); }\n    if (mouseDrag) { (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, dragEvents); }\n\n    // cache Object values in options && reset HTML\n    var htmlList = [containerHTML, controlsContainerHTML, prevButtonHTML, nextButtonHTML, navContainerHTML, autoplayButtonHTML];\n\n    tnsList.forEach(function(item, i) {\n      var el = item === 'container' ? outerWrapper : options[item];\n\n      if (typeof el === 'object' && el) {\n        var prevEl = el.previousElementSibling ? el.previousElementSibling : false,\n            parentEl = el.parentNode;\n        el.outerHTML = htmlList[i];\n        options[item] = prevEl ? prevEl.nextElementSibling : parentEl.firstElementChild;\n      }\n    });\n\n\n    // reset variables\n    tnsList = animateIn = animateOut = animateDelay = animateNormal = horizontal = outerWrapper = innerWrapper = container = containerParent = containerHTML = slideItems = slideCount = breakpointZone = windowWidth = autoWidth = fixedWidth = edgePadding = gutter = viewport = items = slideBy = viewportMax = arrowKeys = speed = rewind = loop = autoHeight = sheet = lazyload = slidePositions = slideItemsOut = cloneCount = slideCountNew = hasRightDeadZone = rightBoundary = updateIndexBeforeTransform = transformAttr = transformPrefix = transformPostfix = getIndexMax = index = indexCached = indexMin = indexMax = resizeTimer = swipeAngle = moveDirectionExpected = running = onInit = events = newContainerClasses = slideId = disable = disabled = freezable = freeze = frozen = controlsEvents = navEvents = hoverEvents = visibilityEvent = docmentKeydownEvent = touchEvents = dragEvents = hasControls = hasNav = navAsThumbnails = hasAutoplay = hasTouch = hasMouseDrag = slideActiveClass = imgCompleteClass = imgEvents = imgsComplete = controls = controlsText = controlsContainer = controlsContainerHTML = prevButton = nextButton = prevIsButton = nextIsButton = nav = navContainer = navContainerHTML = navItems = pages = pagesCached = navClicked = navCurrentIndex = navCurrentIndexCached = navActiveClass = navStr = navStrCurrent = autoplay = autoplayTimeout = autoplayDirection = autoplayText = autoplayHoverPause = autoplayButton = autoplayButtonHTML = autoplayResetOnVisibility = autoplayHtmlStrings = autoplayTimer = animating = autoplayHoverPaused = autoplayUserPaused = autoplayVisibilityPaused = initPosition = lastPosition = translateInit = disX = disY = panStart = rafIndex = getDist = touch = mouseDrag = null;\n    // check variables\n    // [animateIn, animateOut, animateDelay, animateNormal, horizontal, outerWrapper, innerWrapper, container, containerParent, containerHTML, slideItems, slideCount, breakpointZone, windowWidth, autoWidth, fixedWidth, edgePadding, gutter, viewport, items, slideBy, viewportMax, arrowKeys, speed, rewind, loop, autoHeight, sheet, lazyload, slidePositions, slideItemsOut, cloneCount, slideCountNew, hasRightDeadZone, rightBoundary, updateIndexBeforeTransform, transformAttr, transformPrefix, transformPostfix, getIndexMax, index, indexCached, indexMin, indexMax, resizeTimer, swipeAngle, moveDirectionExpected, running, onInit, events, newContainerClasses, slideId, disable, disabled, freezable, freeze, frozen, controlsEvents, navEvents, hoverEvents, visibilityEvent, docmentKeydownEvent, touchEvents, dragEvents, hasControls, hasNav, navAsThumbnails, hasAutoplay, hasTouch, hasMouseDrag, slideActiveClass, imgCompleteClass, imgEvents, imgsComplete, controls, controlsText, controlsContainer, controlsContainerHTML, prevButton, nextButton, prevIsButton, nextIsButton, nav, navContainer, navContainerHTML, navItems, pages, pagesCached, navClicked, navCurrentIndex, navCurrentIndexCached, navActiveClass, navStr, navStrCurrent, autoplay, autoplayTimeout, autoplayDirection, autoplayText, autoplayHoverPause, autoplayButton, autoplayButtonHTML, autoplayResetOnVisibility, autoplayHtmlStrings, autoplayTimer, animating, autoplayHoverPaused, autoplayUserPaused, autoplayVisibilityPaused, initPosition, lastPosition, translateInit, disX, disY, panStart, rafIndex, getDist, touch, mouseDrag ].forEach(function(item) { if (item !== null) { console.log(item); } });\n\n    for (var a in this) {\n      if (a !== 'rebuild') { this[a] = null; }\n    }\n    isOn = false;\n  }\n\n// === ON RESIZE ===\n  // responsive || fixedWidth || autoWidth || !horizontal\n  function onResize (e) {\n    (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ resizeTasks(getEvent(e)); });\n  }\n\n  function resizeTasks (e) {\n    if (!isOn) { return; }\n    if (nested === 'outer') { events.emit('outerResized', info(e)); }\n    windowWidth = getWindowWidth();\n    var bpChanged,\n        breakpointZoneTem = breakpointZone,\n        needContainerTransform = false;\n\n    if (responsive) {\n      setBreakpointZone();\n      bpChanged = breakpointZoneTem !== breakpointZone;\n      // if (hasRightDeadZone) { needContainerTransform = true; } // *?\n      if (bpChanged) { events.emit('newBreakpointStart', info(e)); }\n    }\n\n    var indChanged,\n        itemsChanged,\n        itemsTem = items,\n        disableTem = disable,\n        freezeTem = freeze,\n        arrowKeysTem = arrowKeys,\n        controlsTem = controls,\n        navTem = nav,\n        touchTem = touch,\n        mouseDragTem = mouseDrag,\n        autoplayTem = autoplay,\n        autoplayHoverPauseTem = autoplayHoverPause,\n        autoplayResetOnVisibilityTem = autoplayResetOnVisibility,\n        indexTem = index;\n\n    if (bpChanged) {\n      var fixedWidthTem = fixedWidth,\n          autoHeightTem = autoHeight,\n          controlsTextTem = controlsText,\n          centerTem = center,\n          autoplayTextTem = autoplayText;\n\n      if (!CSSMQ) {\n        var gutterTem = gutter,\n            edgePaddingTem = edgePadding;\n      }\n    }\n\n    // get option:\n    // fixed width: viewport, fixedWidth, gutter => items\n    // others: window width => all variables\n    // all: items => slideBy\n    arrowKeys = getOption('arrowKeys');\n    controls = getOption('controls');\n    nav = getOption('nav');\n    touch = getOption('touch');\n    center = getOption('center');\n    mouseDrag = getOption('mouseDrag');\n    autoplay = getOption('autoplay');\n    autoplayHoverPause = getOption('autoplayHoverPause');\n    autoplayResetOnVisibility = getOption('autoplayResetOnVisibility');\n\n    if (bpChanged) {\n      disable = getOption('disable');\n      fixedWidth = getOption('fixedWidth');\n      speed = getOption('speed');\n      autoHeight = getOption('autoHeight');\n      controlsText = getOption('controlsText');\n      autoplayText = getOption('autoplayText');\n      autoplayTimeout = getOption('autoplayTimeout');\n\n      if (!CSSMQ) {\n        edgePadding = getOption('edgePadding');\n        gutter = getOption('gutter');\n      }\n    }\n    // update options\n    resetVariblesWhenDisable(disable);\n\n    viewport = getViewportWidth(); // <= edgePadding, gutter\n    if ((!horizontal || autoWidth) && !disable) {\n      setSlidePositions();\n      if (!horizontal) {\n        updateContentWrapperHeight(); // <= setSlidePositions\n        needContainerTransform = true;\n      }\n    }\n    if (fixedWidth || autoWidth) {\n      rightBoundary = getRightBoundary(); // autoWidth: <= viewport, slidePositions, gutter\n                                          // fixedWidth: <= viewport, fixedWidth, gutter\n      indexMax = getIndexMax(); // autoWidth: <= rightBoundary, slidePositions\n                                // fixedWidth: <= rightBoundary, fixedWidth, gutter\n    }\n\n    if (bpChanged || fixedWidth) {\n      items = getOption('items');\n      slideBy = getOption('slideBy');\n      itemsChanged = items !== itemsTem;\n\n      if (itemsChanged) {\n        if (!fixedWidth && !autoWidth) { indexMax = getIndexMax(); } // <= items\n        // check index before transform in case\n        // slider reach the right edge then items become bigger\n        updateIndex();\n      }\n    }\n\n    if (bpChanged) {\n      if (disable !== disableTem) {\n        if (disable) {\n          disableSlider();\n        } else {\n          enableSlider(); // <= slidePositions, rightBoundary, indexMax\n        }\n      }\n    }\n\n    if (freezable && (bpChanged || fixedWidth || autoWidth)) {\n      freeze = getFreeze(); // <= autoWidth: slidePositions, gutter, viewport, rightBoundary\n                            // <= fixedWidth: fixedWidth, gutter, rightBoundary\n                            // <= others: items\n\n      if (freeze !== freezeTem) {\n        if (freeze) {\n          doContainerTransform(getContainerTransformValue(getStartIndex(0)));\n          freezeSlider();\n        } else {\n          unfreezeSlider();\n          needContainerTransform = true;\n        }\n      }\n    }\n\n    resetVariblesWhenDisable(disable || freeze); // controls, nav, touch, mouseDrag, arrowKeys, autoplay, autoplayHoverPause, autoplayResetOnVisibility\n    if (!autoplay) { autoplayHoverPause = autoplayResetOnVisibility = false; }\n\n    if (arrowKeys !== arrowKeysTem) {\n      arrowKeys ?\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(doc, docmentKeydownEvent) :\n        (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(doc, docmentKeydownEvent);\n    }\n    if (controls !== controlsTem) {\n      if (controls) {\n        if (controlsContainer) {\n          (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(controlsContainer);\n        } else {\n          if (prevButton) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(prevButton); }\n          if (nextButton) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(nextButton); }\n        }\n      } else {\n        if (controlsContainer) {\n          (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(controlsContainer);\n        } else {\n          if (prevButton) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(prevButton); }\n          if (nextButton) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(nextButton); }\n        }\n      }\n    }\n    if (nav !== navTem) {\n      if (nav) {\n        (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(navContainer);\n        updateNavVisibility();\n      } else {\n        (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(navContainer)\n      }\n    }\n    if (touch !== touchTem) {\n      touch ?\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, touchEvents, options.preventScrollOnTouch) :\n        (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, touchEvents);\n    }\n    if (mouseDrag !== mouseDragTem) {\n      mouseDrag ?\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, dragEvents) :\n        (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, dragEvents);\n    }\n    if (autoplay !== autoplayTem) {\n      if (autoplay) {\n        if (autoplayButton) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(autoplayButton); }\n        if (!animating && !autoplayUserPaused) { startAutoplay(); }\n      } else {\n        if (autoplayButton) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(autoplayButton); }\n        if (animating) { stopAutoplay(); }\n      }\n    }\n    if (autoplayHoverPause !== autoplayHoverPauseTem) {\n      autoplayHoverPause ?\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(container, hoverEvents) :\n        (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(container, hoverEvents);\n    }\n    if (autoplayResetOnVisibility !== autoplayResetOnVisibilityTem) {\n      autoplayResetOnVisibility ?\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(doc, visibilityEvent) :\n        (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(doc, visibilityEvent);\n    }\n\n    if (bpChanged) {\n      if (fixedWidth !== fixedWidthTem || center !== centerTem) { needContainerTransform = true; }\n\n      if (autoHeight !== autoHeightTem) {\n        if (!autoHeight) { innerWrapper.style.height = ''; }\n      }\n\n      if (controls && controlsText !== controlsTextTem) {\n        prevButton.innerHTML = controlsText[0];\n        nextButton.innerHTML = controlsText[1];\n      }\n\n      if (autoplayButton && autoplayText !== autoplayTextTem) {\n        var i = autoplay ? 1 : 0,\n            html = autoplayButton.innerHTML,\n            len = html.length - autoplayTextTem[i].length;\n        if (html.substring(len) === autoplayTextTem[i]) {\n          autoplayButton.innerHTML = html.substring(0, len) + autoplayText[i];\n        }\n      }\n    } else {\n      if (center && (fixedWidth || autoWidth)) { needContainerTransform = true; }\n    }\n\n    if (itemsChanged || fixedWidth && !autoWidth) {\n      pages = getPages();\n      updateNavVisibility();\n    }\n\n    indChanged = index !== indexTem;\n    if (indChanged) {\n      events.emit('indexChanged', info());\n      needContainerTransform = true;\n    } else if (itemsChanged) {\n      if (!indChanged) { additionalUpdates(); }\n    } else if (fixedWidth || autoWidth) {\n      doLazyLoad();\n      updateSlideStatus();\n      updateLiveRegion();\n    }\n\n    if (itemsChanged && !carousel) { updateGallerySlidePositions(); }\n\n    if (!disable && !freeze) {\n      // non-mediaqueries: IE8\n      if (bpChanged && !CSSMQ) {\n        // middle wrapper styles\n\n        // inner wrapper styles\n        if (edgePadding !== edgePaddingTem || gutter !== gutterTem) {\n          innerWrapper.style.cssText = getInnerWrapperStyles(edgePadding, gutter, fixedWidth, speed, autoHeight);\n        }\n\n        if (horizontal) {\n          // container styles\n          if (carousel) {\n            container.style.width = getContainerWidth(fixedWidth, gutter, items);\n          }\n\n          // slide styles\n          var str = getSlideWidthStyle(fixedWidth, gutter, items) +\n                    getSlideGutterStyle(gutter);\n\n          // remove the last line and\n          // add new styles\n          (0,_helpers_removeCSSRule_js__WEBPACK_IMPORTED_MODULE_11__.removeCSSRule)(sheet, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet) - 1);\n          (0,_helpers_addCSSRule_js__WEBPACK_IMPORTED_MODULE_10__.addCSSRule)(sheet, '#' + slideId + ' > .tns-item', str, (0,_helpers_getCssRulesLength_js__WEBPACK_IMPORTED_MODULE_12__.getCssRulesLength)(sheet));\n        }\n      }\n\n      // auto height\n      if (autoHeight) { doAutoHeight(); }\n\n      if (needContainerTransform) {\n        doContainerTransformSilent();\n        indexCached = index;\n      }\n    }\n\n    if (bpChanged) { events.emit('newBreakpointEnd', info(e)); }\n  }\n\n\n\n\n\n  // === INITIALIZATION FUNCTIONS === //\n  function getFreeze () {\n    if (!fixedWidth && !autoWidth) {\n      var a = center ? items - (items - 1) / 2 : items;\n      return  slideCount <= a;\n    }\n\n    var width = fixedWidth ? (fixedWidth + gutter) * slideCount : slidePositions[slideCount],\n        vp = edgePadding ? viewport + edgePadding * 2 : viewport + gutter;\n\n    if (center) {\n      vp -= fixedWidth ? (viewport - fixedWidth) / 2 : (viewport - (slidePositions[index + 1] - slidePositions[index] - gutter)) / 2;\n    }\n\n    return width <= vp;\n  }\n\n  function setBreakpointZone () {\n    breakpointZone = 0;\n    for (var bp in responsive) {\n      bp = parseInt(bp); // convert string to number\n      if (windowWidth >= bp) { breakpointZone = bp; }\n    }\n  }\n\n  // (slideBy, indexMin, indexMax) => index\n  var updateIndex = (function () {\n    return loop ?\n      carousel ?\n        // loop + carousel\n        function () {\n          var leftEdge = indexMin,\n              rightEdge = indexMax;\n\n          leftEdge += slideBy;\n          rightEdge -= slideBy;\n\n          // adjust edges when has edge paddings\n          // or fixed-width slider with extra space on the right side\n          if (edgePadding) {\n            leftEdge += 1;\n            rightEdge -= 1;\n          } else if (fixedWidth) {\n            if ((viewport + gutter)%(fixedWidth + gutter)) { rightEdge -= 1; }\n          }\n\n          if (cloneCount) {\n            if (index > rightEdge) {\n              index -= slideCount;\n            } else if (index < leftEdge) {\n              index += slideCount;\n            }\n          }\n        } :\n        // loop + gallery\n        function() {\n          if (index > indexMax) {\n            while (index >= indexMin + slideCount) { index -= slideCount; }\n          } else if (index < indexMin) {\n            while (index <= indexMax - slideCount) { index += slideCount; }\n          }\n        } :\n      // non-loop\n      function() {\n        index = Math.max(indexMin, Math.min(indexMax, index));\n      };\n  })();\n\n  function disableUI () {\n    if (!autoplay && autoplayButton) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(autoplayButton); }\n    if (!nav && navContainer) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(navContainer); }\n    if (!controls) {\n      if (controlsContainer) {\n        (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(controlsContainer);\n      } else {\n        if (prevButton) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(prevButton); }\n        if (nextButton) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(nextButton); }\n      }\n    }\n  }\n\n  function enableUI () {\n    if (autoplay && autoplayButton) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(autoplayButton); }\n    if (nav && navContainer) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(navContainer); }\n    if (controls) {\n      if (controlsContainer) {\n        (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(controlsContainer);\n      } else {\n        if (prevButton) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(prevButton); }\n        if (nextButton) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(nextButton); }\n      }\n    }\n  }\n\n  function freezeSlider () {\n    if (frozen) { return; }\n\n    // remove edge padding from inner wrapper\n    if (edgePadding) { innerWrapper.style.margin = '0px'; }\n\n    // add class tns-transparent to cloned slides\n    if (cloneCount) {\n      var str = 'tns-transparent';\n      for (var i = cloneCount; i--;) {\n        if (carousel) { (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(slideItems[i], str); }\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(slideItems[slideCountNew - i - 1], str);\n      }\n    }\n\n    // update tools\n    disableUI();\n\n    frozen = true;\n  }\n\n  function unfreezeSlider () {\n    if (!frozen) { return; }\n\n    // restore edge padding for inner wrapper\n    // for mordern browsers\n    if (edgePadding && CSSMQ) { innerWrapper.style.margin = ''; }\n\n    // remove class tns-transparent to cloned slides\n    if (cloneCount) {\n      var str = 'tns-transparent';\n      for (var i = cloneCount; i--;) {\n        if (carousel) { (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(slideItems[i], str); }\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(slideItems[slideCountNew - i - 1], str);\n      }\n    }\n\n    // update tools\n    enableUI();\n\n    frozen = false;\n  }\n\n  function disableSlider () {\n    if (disabled) { return; }\n\n    sheet.disabled = true;\n    container.className = container.className.replace(newContainerClasses.substring(1), '');\n    (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(container, ['style']);\n    if (loop) {\n      for (var j = cloneCount; j--;) {\n        if (carousel) { (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(slideItems[j]); }\n        (0,_helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement)(slideItems[slideCountNew - j - 1]);\n      }\n    }\n\n    // vertical slider\n    if (!horizontal || !carousel) { (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(innerWrapper, ['style']); }\n\n    // gallery\n    if (!carousel) {\n      for (var i = index, l = index + slideCount; i < l; i++) {\n        var item = slideItems[i];\n        (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(item, ['style']);\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateIn);\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateNormal);\n      }\n    }\n\n    // update tools\n    disableUI();\n\n    disabled = true;\n  }\n\n  function enableSlider () {\n    if (!disabled) { return; }\n\n    sheet.disabled = false;\n    container.className += newContainerClasses;\n    doContainerTransformSilent();\n\n    if (loop) {\n      for (var j = cloneCount; j--;) {\n        if (carousel) { (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(slideItems[j]); }\n        (0,_helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement)(slideItems[slideCountNew - j - 1]);\n      }\n    }\n\n    // gallery\n    if (!carousel) {\n      for (var i = index, l = index + slideCount; i < l; i++) {\n        var item = slideItems[i],\n            classN = i < index + items ? animateIn : animateNormal;\n        item.style.left = (i - index) * 100 / items + '%';\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, classN);\n      }\n    }\n\n    // update tools\n    enableUI();\n\n    disabled = false;\n  }\n\n  function updateLiveRegion () {\n    var str = getLiveRegionStr();\n    if (liveregionCurrent.innerHTML !== str) { liveregionCurrent.innerHTML = str; }\n  }\n\n  function getLiveRegionStr () {\n    var arr = getVisibleSlideRange(),\n        start = arr[0] + 1,\n        end = arr[1] + 1;\n    return start === end ? start + '' : start + ' to ' + end;\n  }\n\n  function getVisibleSlideRange (val) {\n    if (val == null) { val = getContainerTransformValue(); }\n    var start = index, end, rangestart, rangeend;\n\n    // get range start, range end for autoWidth and fixedWidth\n    if (center || edgePadding) {\n      if (autoWidth || fixedWidth) {\n        rangestart = - (parseFloat(val) + edgePadding);\n        rangeend = rangestart + viewport + edgePadding * 2;\n      }\n    } else {\n      if (autoWidth) {\n        rangestart = slidePositions[index];\n        rangeend = rangestart + viewport;\n      }\n    }\n\n    // get start, end\n    // - check auto width\n    if (autoWidth) {\n      slidePositions.forEach(function(point, i) {\n        if (i < slideCountNew) {\n          if ((center || edgePadding) && point <= rangestart + 0.5) { start = i; }\n          if (rangeend - point >= 0.5) { end = i; }\n        }\n      });\n\n    // - check percentage width, fixed width\n    } else {\n\n      if (fixedWidth) {\n        var cell = fixedWidth + gutter;\n        if (center || edgePadding) {\n          start = Math.floor(rangestart/cell);\n          end = Math.ceil(rangeend/cell - 1);\n        } else {\n          end = start + Math.ceil(viewport/cell) - 1;\n        }\n\n      } else {\n        if (center || edgePadding) {\n          var a = items - 1;\n          if (center) {\n            start -= a / 2;\n            end = index + a / 2;\n          } else {\n            end = index + a;\n          }\n\n          if (edgePadding) {\n            var b = edgePadding * items / viewport;\n            start -= b;\n            end += b;\n          }\n\n          start = Math.floor(start);\n          end = Math.ceil(end);\n        } else {\n          end = start + items - 1;\n        }\n      }\n\n      start = Math.max(start, 0);\n      end = Math.min(end, slideCountNew - 1);\n    }\n\n    return [start, end];\n  }\n\n  function doLazyLoad () {\n    if (lazyload && !disable) {\n      var arg = getVisibleSlideRange();\n      arg.push(lazyloadSelector);\n\n      getImageArray.apply(null, arg).forEach(function (img) {\n        if (!(0,_helpers_hasClass_js__WEBPACK_IMPORTED_MODULE_16__.hasClass)(img, imgCompleteClass)) {\n          // stop propagation transitionend event to container\n          var eve = {};\n          eve[TRANSITIONEND] = function (e) { e.stopPropagation(); };\n          (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(img, eve);\n\n          (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(img, imgEvents);\n\n          // update src\n          img.src = (0,_helpers_getAttr_js__WEBPACK_IMPORTED_MODULE_20__.getAttr)(img, 'data-src');\n\n          // update srcset\n          var srcset = (0,_helpers_getAttr_js__WEBPACK_IMPORTED_MODULE_20__.getAttr)(img, 'data-srcset');\n          if (srcset) { img.srcset = srcset; }\n\n          (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(img, 'loading');\n        }\n      });\n    }\n  }\n\n  function onImgLoaded (e) {\n    imgLoaded(getTarget(e));\n  }\n\n  function onImgFailed (e) {\n    imgFailed(getTarget(e));\n  }\n\n  function imgLoaded (img) {\n    (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(img, 'loaded');\n    imgCompleted(img);\n  }\n\n  function imgFailed (img) {\n    (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(img, 'failed');\n    imgCompleted(img);\n  }\n\n  function imgCompleted (img) {\n    (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(img, imgCompleteClass);\n    (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(img, 'loading');\n    (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(img, imgEvents);\n  }\n\n  function getImageArray (start, end, imgSelector) {\n    var imgs = [];\n    if (!imgSelector) { imgSelector = 'img'; }\n\n    while (start <= end) {\n      (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(slideItems[start].querySelectorAll(imgSelector), function (img) { imgs.push(img); });\n      start++;\n    }\n\n    return imgs;\n  }\n\n  // check if all visible images are loaded\n  // and update container height if it's done\n  function doAutoHeight () {\n    var imgs = getImageArray.apply(null, getVisibleSlideRange());\n    (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ imgsLoadedCheck(imgs, updateInnerWrapperHeight); });\n  }\n\n  function imgsLoadedCheck (imgs, cb) {\n    // execute callback function if all images are complete\n    if (imgsComplete) { return cb(); }\n\n    // check image classes\n    imgs.forEach(function (img, index) {\n      if (!lazyload && img.complete) { imgCompleted(img); } // Check image.complete\n      if ((0,_helpers_hasClass_js__WEBPACK_IMPORTED_MODULE_16__.hasClass)(img, imgCompleteClass)) { imgs.splice(index, 1); }\n    });\n\n    // execute callback function if selected images are all complete\n    if (!imgs.length) { return cb(); }\n\n    // otherwise execute this functiona again\n    (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ imgsLoadedCheck(imgs, cb); });\n  }\n\n  function additionalUpdates () {\n    doLazyLoad();\n    updateSlideStatus();\n    updateLiveRegion();\n    updateControlsStatus();\n    updateNavStatus();\n  }\n\n\n  function update_carousel_transition_duration () {\n    if (carousel && autoHeight) {\n      middleWrapper.style[TRANSITIONDURATION] = speed / 1000 + 's';\n    }\n  }\n\n  function getMaxSlideHeight (slideStart, slideRange) {\n    var heights = [];\n    for (var i = slideStart, l = Math.min(slideStart + slideRange, slideCountNew); i < l; i++) {\n      heights.push(slideItems[i].offsetHeight);\n    }\n\n    return Math.max.apply(null, heights);\n  }\n\n  // update inner wrapper height\n  // 1. get the max-height of the visible slides\n  // 2. set transitionDuration to speed\n  // 3. update inner wrapper height to max-height\n  // 4. set transitionDuration to 0s after transition done\n  function updateInnerWrapperHeight () {\n    var maxHeight = autoHeight ? getMaxSlideHeight(index, items) : getMaxSlideHeight(cloneCount, slideCount),\n        wp = middleWrapper ? middleWrapper : innerWrapper;\n\n    if (wp.style.height !== maxHeight) { wp.style.height = maxHeight + 'px'; }\n  }\n\n  // get the distance from the top edge of the first slide to each slide\n  // (init) => slidePositions\n  function setSlidePositions () {\n    slidePositions = [0];\n    var attr = horizontal ? 'left' : 'top',\n        attr2 = horizontal ? 'right' : 'bottom',\n        base = slideItems[0].getBoundingClientRect()[attr];\n\n    (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(slideItems, function(item, i) {\n      // skip the first slide\n      if (i) { slidePositions.push(item.getBoundingClientRect()[attr] - base); }\n      // add the end edge\n      if (i === slideCountNew - 1) { slidePositions.push(item.getBoundingClientRect()[attr2] - base); }\n    });\n  }\n\n  // update slide\n  function updateSlideStatus () {\n    var range = getVisibleSlideRange(),\n        start = range[0],\n        end = range[1];\n\n    (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(slideItems, function(item, i) {\n      // show slides\n      if (i >= start && i <= end) {\n        if ((0,_helpers_hasAttr_js__WEBPACK_IMPORTED_MODULE_19__.hasAttr)(item, 'aria-hidden')) {\n          (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(item, ['aria-hidden', 'tabindex']);\n          (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, slideActiveClass);\n        }\n      // hide slides\n      } else {\n        if (!(0,_helpers_hasAttr_js__WEBPACK_IMPORTED_MODULE_19__.hasAttr)(item, 'aria-hidden')) {\n          (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(item, {\n            'aria-hidden': 'true',\n            'tabindex': '-1'\n          });\n          (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, slideActiveClass);\n        }\n      }\n    });\n  }\n\n  // gallery: update slide position\n  function updateGallerySlidePositions () {\n    var l = index + Math.min(slideCount, items);\n    for (var i = slideCountNew; i--;) {\n      var item = slideItems[i];\n\n      if (i >= index && i < l) {\n        // add transitions to visible slides when adjusting their positions\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, 'tns-moving');\n\n        item.style.left = (i - index) * 100 / items + '%';\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, animateIn);\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateNormal);\n      } else if (item.style.left) {\n        item.style.left = '';\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, animateNormal);\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateIn);\n      }\n\n      // remove outlet animation\n      (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateOut);\n    }\n\n    // removing '.tns-moving'\n    setTimeout(function() {\n      (0,_helpers_forEach_js__WEBPACK_IMPORTED_MODULE_15__.forEach)(slideItems, function(el) {\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(el, 'tns-moving');\n      });\n    }, 300);\n  }\n\n  // set tabindex on Nav\n  function updateNavStatus () {\n    // get current nav\n    if (nav) {\n      navCurrentIndex = navClicked >= 0 ? navClicked : getCurrentNavIndex();\n      navClicked = -1;\n\n      if (navCurrentIndex !== navCurrentIndexCached) {\n        var navPrev = navItems[navCurrentIndexCached],\n            navCurrent = navItems[navCurrentIndex];\n\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(navPrev, {\n          'tabindex': '-1',\n          'aria-label': navStr + (navCurrentIndexCached + 1)\n        });\n        (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(navPrev, navActiveClass);\n\n        (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(navCurrent, {'aria-label': navStr + (navCurrentIndex + 1) + navStrCurrent});\n        (0,_helpers_removeAttrs_js__WEBPACK_IMPORTED_MODULE_22__.removeAttrs)(navCurrent, 'tabindex');\n        (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(navCurrent, navActiveClass);\n\n        navCurrentIndexCached = navCurrentIndex;\n      }\n    }\n  }\n\n  function getLowerCaseNodeName (el) {\n    return el.nodeName.toLowerCase();\n  }\n\n  function isButton (el) {\n    return getLowerCaseNodeName(el) === 'button';\n  }\n\n  function isAriaDisabled (el) {\n    return el.getAttribute('aria-disabled') === 'true';\n  }\n\n  function disEnableElement (isButton, el, val) {\n    if (isButton) {\n      el.disabled = val;\n    } else {\n      el.setAttribute('aria-disabled', val.toString());\n    }\n  }\n\n  // set 'disabled' to true on controls when reach the edges\n  function updateControlsStatus () {\n    if (!controls || rewind || loop) { return; }\n\n    var prevDisabled = (prevIsButton) ? prevButton.disabled : isAriaDisabled(prevButton),\n        nextDisabled = (nextIsButton) ? nextButton.disabled : isAriaDisabled(nextButton),\n        disablePrev = (index <= indexMin) ? true : false,\n        disableNext = (!rewind && index >= indexMax) ? true : false;\n\n    if (disablePrev && !prevDisabled) {\n      disEnableElement(prevIsButton, prevButton, true);\n    }\n    if (!disablePrev && prevDisabled) {\n      disEnableElement(prevIsButton, prevButton, false);\n    }\n    if (disableNext && !nextDisabled) {\n      disEnableElement(nextIsButton, nextButton, true);\n    }\n    if (!disableNext && nextDisabled) {\n      disEnableElement(nextIsButton, nextButton, false);\n    }\n  }\n\n  // set duration\n  function resetDuration (el, str) {\n    if (TRANSITIONDURATION) { el.style[TRANSITIONDURATION] = str; }\n  }\n\n  function getSliderWidth () {\n    return fixedWidth ? (fixedWidth + gutter) * slideCountNew : slidePositions[slideCountNew];\n  }\n\n  function getCenterGap (num) {\n    if (num == null) { num = index; }\n\n    var gap = edgePadding ? gutter : 0;\n    return autoWidth ? ((viewport - gap) - (slidePositions[num + 1] - slidePositions[num] - gutter))/2 :\n      fixedWidth ? (viewport - fixedWidth) / 2 :\n        (items - 1) / 2;\n  }\n\n  function getRightBoundary () {\n    var gap = edgePadding ? gutter : 0,\n        result = (viewport + gap) - getSliderWidth();\n\n    if (center && !loop) {\n      result = fixedWidth ? - (fixedWidth + gutter) * (slideCountNew - 1) - getCenterGap() :\n        getCenterGap(slideCountNew - 1) - slidePositions[slideCountNew - 1];\n    }\n    if (result > 0) { result = 0; }\n\n    return result;\n  }\n\n  function getContainerTransformValue (num) {\n    if (num == null) { num = index; }\n\n    var val;\n    if (horizontal && !autoWidth) {\n      if (fixedWidth) {\n        val = - (fixedWidth + gutter) * num;\n        if (center) { val += getCenterGap(); }\n      } else {\n        var denominator = TRANSFORM ? slideCountNew : items;\n        if (center) { num -= getCenterGap(); }\n        val = - num * 100 / denominator;\n      }\n    } else {\n      val = - slidePositions[num];\n      if (center && autoWidth) {\n        val += getCenterGap();\n      }\n    }\n\n    if (hasRightDeadZone) { val = Math.max(val, rightBoundary); }\n\n    val += (horizontal && !autoWidth && !fixedWidth) ? '%' : 'px';\n\n    return val;\n  }\n\n  function doContainerTransformSilent (val) {\n    resetDuration(container, '0s');\n    doContainerTransform(val);\n  }\n\n  function doContainerTransform (val) {\n    if (val == null) { val = getContainerTransformValue(); }\n    container.style[transformAttr] = transformPrefix + val + transformPostfix;\n  }\n\n  function animateSlide (number, classOut, classIn, isOut) {\n    var l = number + items;\n    if (!loop) { l = Math.min(l, slideCountNew); }\n\n    for (var i = number; i < l; i++) {\n        var item = slideItems[i];\n\n      // set item positions\n      if (!isOut) { item.style.left = (i - index) * 100 / items + '%'; }\n\n      if (animateDelay && TRANSITIONDELAY) {\n        item.style[TRANSITIONDELAY] = item.style[ANIMATIONDELAY] = animateDelay * (i - number) / 1000 + 's';\n      }\n      (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, classOut);\n      (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, classIn);\n\n      if (isOut) { slideItemsOut.push(item); }\n    }\n  }\n\n  // make transfer after click/drag:\n  // 1. change 'transform' property for mordern browsers\n  // 2. change 'left' property for legacy browsers\n  var transformCore = (function () {\n    return carousel ?\n      function () {\n        resetDuration(container, '');\n        if (TRANSITIONDURATION || !speed) {\n          // for morden browsers with non-zero duration or\n          // zero duration for all browsers\n          doContainerTransform();\n          // run fallback function manually\n          // when duration is 0 / container is hidden\n          if (!speed || !(0,_helpers_isVisible_js__WEBPACK_IMPORTED_MODULE_26__.isVisible)(container)) { onTransitionEnd(); }\n\n        } else {\n          // for old browser with non-zero duration\n          (0,_helpers_jsTransform_js__WEBPACK_IMPORTED_MODULE_33__.jsTransform)(container, transformAttr, transformPrefix, transformPostfix, getContainerTransformValue(), speed, onTransitionEnd);\n        }\n\n        if (!horizontal) { updateContentWrapperHeight(); }\n      } :\n      function () {\n        slideItemsOut = [];\n\n        var eve = {};\n        eve[TRANSITIONEND] = eve[ANIMATIONEND] = onTransitionEnd;\n        (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(slideItems[indexCached], eve);\n        (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(slideItems[index], eve);\n\n        animateSlide(indexCached, animateIn, animateOut, true);\n        animateSlide(index, animateNormal, animateIn);\n\n        // run fallback function manually\n        // when transition or animation not supported / duration is 0\n        if (!TRANSITIONEND || !ANIMATIONEND || !speed || !(0,_helpers_isVisible_js__WEBPACK_IMPORTED_MODULE_26__.isVisible)(container)) { onTransitionEnd(); }\n      };\n  })();\n\n  function render (e, sliderMoved) {\n    if (updateIndexBeforeTransform) { updateIndex(); }\n\n    // render when slider was moved (touch or drag) even though index may not change\n    if (index !== indexCached || sliderMoved) {\n      // events\n      events.emit('indexChanged', info());\n      events.emit('transitionStart', info());\n      if (autoHeight) { doAutoHeight(); }\n\n      // pause autoplay when click or keydown from user\n      if (animating && e && ['click', 'keydown'].indexOf(e.type) >= 0) { stopAutoplay(); }\n\n      running = true;\n      transformCore();\n    }\n  }\n\n  /*\n   * Transfer prefixed properties to the same format\n   * CSS: -Webkit-Transform => webkittransform\n   * JS: WebkitTransform => webkittransform\n   * @param {string} str - property\n   *\n   */\n  function strTrans (str) {\n    return str.toLowerCase().replace(/-/g, '');\n  }\n\n  // AFTER TRANSFORM\n  // Things need to be done after a transfer:\n  // 1. check index\n  // 2. add classes to visible slide\n  // 3. disable controls buttons when reach the first/last slide in non-loop slider\n  // 4. update nav status\n  // 5. lazyload images\n  // 6. update container height\n  function onTransitionEnd (event) {\n    // check running on gallery mode\n    // make sure trantionend/animationend events run only once\n    if (carousel || running) {\n      events.emit('transitionEnd', info(event));\n\n      if (!carousel && slideItemsOut.length > 0) {\n        for (var i = 0; i < slideItemsOut.length; i++) {\n          var item = slideItemsOut[i];\n          // set item positions\n          item.style.left = '';\n\n          if (ANIMATIONDELAY && TRANSITIONDELAY) {\n            item.style[ANIMATIONDELAY] = '';\n            item.style[TRANSITIONDELAY] = '';\n          }\n          (0,_helpers_removeClass_js__WEBPACK_IMPORTED_MODULE_18__.removeClass)(item, animateOut);\n          (0,_helpers_addClass_js__WEBPACK_IMPORTED_MODULE_17__.addClass)(item, animateNormal);\n        }\n      }\n\n      /* update slides, nav, controls after checking ...\n       * => legacy browsers who don't support 'event'\n       *    have to check event first, otherwise event.target will cause an error\n       * => or 'gallery' mode:\n       *   + event target is slide item\n       * => or 'carousel' mode:\n       *   + event target is container,\n       *   + event.property is the same with transform attribute\n       */\n      if (!event ||\n          !carousel && event.target.parentNode === container ||\n          event.target === container && strTrans(event.propertyName) === strTrans(transformAttr)) {\n\n        if (!updateIndexBeforeTransform) {\n          var indexTem = index;\n          updateIndex();\n          if (index !== indexTem) {\n            events.emit('indexChanged', info());\n\n            doContainerTransformSilent();\n          }\n        }\n\n        if (nested === 'inner') { events.emit('innerLoaded', info()); }\n        running = false;\n        indexCached = index;\n      }\n    }\n\n  }\n\n  // # ACTIONS\n  function goTo (targetIndex, e) {\n    if (freeze) { return; }\n\n    // prev slideBy\n    if (targetIndex === 'prev') {\n      onControlsClick(e, -1);\n\n    // next slideBy\n    } else if (targetIndex === 'next') {\n      onControlsClick(e, 1);\n\n    // go to exact slide\n    } else {\n      if (running) {\n        if (preventActionWhenRunning) { return; } else { onTransitionEnd(); }\n      }\n\n      var absIndex = getAbsIndex(),\n          indexGap = 0;\n\n      if (targetIndex === 'first') {\n        indexGap = - absIndex;\n      } else if (targetIndex === 'last') {\n        indexGap = carousel ? slideCount - items - absIndex : slideCount - 1 - absIndex;\n      } else {\n        if (typeof targetIndex !== 'number') { targetIndex = parseInt(targetIndex); }\n\n        if (!isNaN(targetIndex)) {\n          // from directly called goTo function\n          if (!e) { targetIndex = Math.max(0, Math.min(slideCount - 1, targetIndex)); }\n\n          indexGap = targetIndex - absIndex;\n        }\n      }\n\n      // gallery: make sure new page won't overlap with current page\n      if (!carousel && indexGap && Math.abs(indexGap) < items) {\n        var factor = indexGap > 0 ? 1 : -1;\n        indexGap += (index + indexGap - slideCount) >= indexMin ? slideCount * factor : slideCount * 2 * factor * -1;\n      }\n\n      index += indexGap;\n\n      // make sure index is in range\n      if (carousel && loop) {\n        if (index < indexMin) { index += slideCount; }\n        if (index > indexMax) { index -= slideCount; }\n      }\n\n      // if index is changed, start rendering\n      if (getAbsIndex(index) !== getAbsIndex(indexCached)) {\n        render(e);\n      }\n\n    }\n  }\n\n  // on controls click\n  function onControlsClick (e, dir) {\n    if (running) {\n      if (preventActionWhenRunning) { return; } else { onTransitionEnd(); }\n    }\n    var passEventObject;\n\n    if (!dir) {\n      e = getEvent(e);\n      var target = getTarget(e);\n\n      while (target !== controlsContainer && [prevButton, nextButton].indexOf(target) < 0) { target = target.parentNode; }\n\n      var targetIn = [prevButton, nextButton].indexOf(target);\n      if (targetIn >= 0) {\n        passEventObject = true;\n        dir = targetIn === 0 ? -1 : 1;\n      }\n    }\n\n    if (rewind) {\n      if (index === indexMin && dir === -1) {\n        goTo('last', e);\n        return;\n      } else if (index === indexMax && dir === 1) {\n        goTo('first', e);\n        return;\n      }\n    }\n\n    if (dir) {\n      index += slideBy * dir;\n      if (autoWidth) { index = Math.floor(index); }\n      // pass e when click control buttons or keydown\n      render((passEventObject || (e && e.type === 'keydown')) ? e : null);\n    }\n  }\n\n  // on nav click\n  function onNavClick (e) {\n    if (running) {\n      if (preventActionWhenRunning) { return; } else { onTransitionEnd(); }\n    }\n\n    e = getEvent(e);\n    var target = getTarget(e), navIndex;\n\n    // find the clicked nav item\n    while (target !== navContainer && !(0,_helpers_hasAttr_js__WEBPACK_IMPORTED_MODULE_19__.hasAttr)(target, 'data-nav')) { target = target.parentNode; }\n    if ((0,_helpers_hasAttr_js__WEBPACK_IMPORTED_MODULE_19__.hasAttr)(target, 'data-nav')) {\n      var navIndex = navClicked = Number((0,_helpers_getAttr_js__WEBPACK_IMPORTED_MODULE_20__.getAttr)(target, 'data-nav')),\n          targetIndexBase = fixedWidth || autoWidth ? navIndex * slideCount / pages : navIndex * items,\n          targetIndex = navAsThumbnails ? navIndex : Math.min(Math.ceil(targetIndexBase), slideCount - 1);\n      goTo(targetIndex, e);\n\n      if (navCurrentIndex === navIndex) {\n        if (animating) { stopAutoplay(); }\n        navClicked = -1; // reset navClicked\n      }\n    }\n  }\n\n  // autoplay functions\n  function setAutoplayTimer () {\n    autoplayTimer = setInterval(function () {\n      onControlsClick(null, autoplayDirection);\n    }, autoplayTimeout);\n\n    animating = true;\n  }\n\n  function stopAutoplayTimer () {\n    clearInterval(autoplayTimer);\n    animating = false;\n  }\n\n  function updateAutoplayButton (action, txt) {\n    (0,_helpers_setAttrs_js__WEBPACK_IMPORTED_MODULE_21__.setAttrs)(autoplayButton, {'data-action': action});\n    autoplayButton.innerHTML = autoplayHtmlStrings[0] + action + autoplayHtmlStrings[1] + txt;\n  }\n\n  function startAutoplay () {\n    setAutoplayTimer();\n    if (autoplayButton) { updateAutoplayButton('stop', autoplayText[1]); }\n  }\n\n  function stopAutoplay () {\n    stopAutoplayTimer();\n    if (autoplayButton) { updateAutoplayButton('start', autoplayText[0]); }\n  }\n\n  // programaitcally play/pause the slider\n  function play () {\n    if (autoplay && !animating) {\n      startAutoplay();\n      autoplayUserPaused = false;\n    }\n  }\n  function pause () {\n    if (animating) {\n      stopAutoplay();\n      autoplayUserPaused = true;\n    }\n  }\n\n  function toggleAutoplay () {\n    if (animating) {\n      stopAutoplay();\n      autoplayUserPaused = true;\n    } else {\n      startAutoplay();\n      autoplayUserPaused = false;\n    }\n  }\n\n  function onVisibilityChange () {\n    if (doc.hidden) {\n      if (animating) {\n        stopAutoplayTimer();\n        autoplayVisibilityPaused = true;\n      }\n    } else if (autoplayVisibilityPaused) {\n      setAutoplayTimer();\n      autoplayVisibilityPaused = false;\n    }\n  }\n\n  function mouseoverPause () {\n    if (animating) {\n      stopAutoplayTimer();\n      autoplayHoverPaused = true;\n    }\n  }\n\n  function mouseoutRestart () {\n    if (autoplayHoverPaused) {\n      setAutoplayTimer();\n      autoplayHoverPaused = false;\n    }\n  }\n\n  // keydown events on document\n  function onDocumentKeydown (e) {\n    e = getEvent(e);\n    var keyIndex = [KEYS.LEFT, KEYS.RIGHT].indexOf(e.keyCode);\n\n    if (keyIndex >= 0) {\n      onControlsClick(e, keyIndex === 0 ? -1 : 1);\n    }\n  }\n\n  // on key control\n  function onControlsKeydown (e) {\n    e = getEvent(e);\n    var keyIndex = [KEYS.LEFT, KEYS.RIGHT].indexOf(e.keyCode);\n\n    if (keyIndex >= 0) {\n      if (keyIndex === 0) {\n        if (!prevButton.disabled) { onControlsClick(e, -1); }\n      } else if (!nextButton.disabled) {\n        onControlsClick(e, 1);\n      }\n    }\n  }\n\n  // set focus\n  function setFocus (el) {\n    el.focus();\n  }\n\n  // on key nav\n  function onNavKeydown (e) {\n    e = getEvent(e);\n    var curElement = doc.activeElement;\n    if (!(0,_helpers_hasAttr_js__WEBPACK_IMPORTED_MODULE_19__.hasAttr)(curElement, 'data-nav')) { return; }\n\n    // var code = e.keyCode,\n    var keyIndex = [KEYS.LEFT, KEYS.RIGHT, KEYS.ENTER, KEYS.SPACE].indexOf(e.keyCode),\n        navIndex = Number((0,_helpers_getAttr_js__WEBPACK_IMPORTED_MODULE_20__.getAttr)(curElement, 'data-nav'));\n\n    if (keyIndex >= 0) {\n      if (keyIndex === 0) {\n        if (navIndex > 0) { setFocus(navItems[navIndex - 1]); }\n      } else if (keyIndex === 1) {\n        if (navIndex < pages - 1) { setFocus(navItems[navIndex + 1]); }\n      } else {\n        navClicked = navIndex;\n        goTo(navIndex, e);\n      }\n    }\n  }\n\n  function getEvent (e) {\n    e = e || win.event;\n    return isTouchEvent(e) ? e.changedTouches[0] : e;\n  }\n  function getTarget (e) {\n    return e.target || win.event.srcElement;\n  }\n\n  function isTouchEvent (e) {\n    return e.type.indexOf('touch') >= 0;\n  }\n\n  function preventDefaultBehavior (e) {\n    e.preventDefault ? e.preventDefault() : e.returnValue = false;\n  }\n\n  function getMoveDirectionExpected () {\n    return (0,_helpers_getTouchDirection_js__WEBPACK_IMPORTED_MODULE_14__.getTouchDirection)((0,_helpers_toDegree_js__WEBPACK_IMPORTED_MODULE_13__.toDegree)(lastPosition.y - initPosition.y, lastPosition.x - initPosition.x), swipeAngle) === options.axis;\n  }\n\n  function onPanStart (e) {\n    if (running) {\n      if (preventActionWhenRunning) { return; } else { onTransitionEnd(); }\n    }\n\n    if (autoplay && animating) { stopAutoplayTimer(); }\n\n    panStart = true;\n    if (rafIndex) {\n      (0,_helpers_caf_js__WEBPACK_IMPORTED_MODULE_1__.caf)(rafIndex);\n      rafIndex = null;\n    }\n\n    var $ = getEvent(e);\n    events.emit(isTouchEvent(e) ? 'touchStart' : 'dragStart', info(e));\n\n    if (!isTouchEvent(e) && ['img', 'a'].indexOf(getLowerCaseNodeName(getTarget(e))) >= 0) {\n      preventDefaultBehavior(e);\n    }\n\n    lastPosition.x = initPosition.x = $.clientX;\n    lastPosition.y = initPosition.y = $.clientY;\n    if (carousel) {\n      translateInit = parseFloat(container.style[transformAttr].replace(transformPrefix, ''));\n      resetDuration(container, '0s');\n    }\n  }\n\n  function onPanMove (e) {\n    if (panStart) {\n      var $ = getEvent(e);\n      lastPosition.x = $.clientX;\n      lastPosition.y = $.clientY;\n\n      if (carousel) {\n        if (!rafIndex) { rafIndex = (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ panUpdate(e); }); }\n      } else {\n        if (moveDirectionExpected === '?') { moveDirectionExpected = getMoveDirectionExpected(); }\n        if (moveDirectionExpected) { preventScroll = true; }\n      }\n\n      if ((typeof e.cancelable !== 'boolean' || e.cancelable) && preventScroll) {\n        e.preventDefault();\n      }\n    }\n  }\n\n  function panUpdate (e) {\n    if (!moveDirectionExpected) {\n      panStart = false;\n      return;\n    }\n    (0,_helpers_caf_js__WEBPACK_IMPORTED_MODULE_1__.caf)(rafIndex);\n    if (panStart) { rafIndex = (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function(){ panUpdate(e); }); }\n\n    if (moveDirectionExpected === '?') { moveDirectionExpected = getMoveDirectionExpected(); }\n    if (moveDirectionExpected) {\n      if (!preventScroll && isTouchEvent(e)) { preventScroll = true; }\n\n      try {\n        if (e.type) { events.emit(isTouchEvent(e) ? 'touchMove' : 'dragMove', info(e)); }\n      } catch(err) {}\n\n      var x = translateInit,\n          dist = getDist(lastPosition, initPosition);\n      if (!horizontal || fixedWidth || autoWidth) {\n        x += dist;\n        x += 'px';\n      } else {\n        var percentageX = TRANSFORM ? dist * items * 100 / ((viewport + gutter) * slideCountNew): dist * 100 / (viewport + gutter);\n        x += percentageX;\n        x += '%';\n      }\n\n      container.style[transformAttr] = transformPrefix + x + transformPostfix;\n    }\n  }\n\n  function onPanEnd (e) {\n    if (panStart) {\n      if (rafIndex) {\n        (0,_helpers_caf_js__WEBPACK_IMPORTED_MODULE_1__.caf)(rafIndex);\n        rafIndex = null;\n      }\n      if (carousel) { resetDuration(container, ''); }\n      panStart = false;\n\n      var $ = getEvent(e);\n      lastPosition.x = $.clientX;\n      lastPosition.y = $.clientY;\n      var dist = getDist(lastPosition, initPosition);\n\n      if (Math.abs(dist)) {\n        // drag vs click\n        if (!isTouchEvent(e)) {\n          // prevent \"click\"\n          var target = getTarget(e);\n          (0,_helpers_addEvents_js__WEBPACK_IMPORTED_MODULE_30__.addEvents)(target, {'click': function preventClick (e) {\n            preventDefaultBehavior(e);\n            (0,_helpers_removeEvents_js__WEBPACK_IMPORTED_MODULE_31__.removeEvents)(target, {'click': preventClick});\n          }});\n        }\n\n        if (carousel) {\n          rafIndex = (0,_helpers_raf_js__WEBPACK_IMPORTED_MODULE_0__.raf)(function() {\n            if (horizontal && !autoWidth) {\n              var indexMoved = - dist * items / (viewport + gutter);\n              indexMoved = dist > 0 ? Math.floor(indexMoved) : Math.ceil(indexMoved);\n              index += indexMoved;\n            } else {\n              var moved = - (translateInit + dist);\n              if (moved <= 0) {\n                index = indexMin;\n              } else if (moved >= slidePositions[slideCountNew - 1]) {\n                index = indexMax;\n              } else {\n                var i = 0;\n                while (i < slideCountNew && moved >= slidePositions[i]) {\n                  index = i;\n                  if (moved > slidePositions[i] && dist < 0) { index += 1; }\n                  i++;\n                }\n              }\n            }\n\n            render(e, dist);\n            events.emit(isTouchEvent(e) ? 'touchEnd' : 'dragEnd', info(e));\n          });\n        } else {\n          if (moveDirectionExpected) {\n            onControlsClick(e, dist > 0 ? -1 : 1);\n          }\n        }\n      }\n    }\n\n    // reset\n    if (options.preventScrollOnTouch === 'auto') { preventScroll = false; }\n    if (swipeAngle) { moveDirectionExpected = '?'; }\n    if (autoplay && !animating) { setAutoplayTimer(); }\n  }\n\n  // === RESIZE FUNCTIONS === //\n  // (slidePositions, index, items) => vertical_conentWrapper.height\n  function updateContentWrapperHeight () {\n    var wp = middleWrapper ? middleWrapper : innerWrapper;\n    wp.style.height = slidePositions[index + items] - slidePositions[index] + 'px';\n  }\n\n  function getPages () {\n    var rough = fixedWidth ? (fixedWidth + gutter) * slideCount / viewport : slideCount / items;\n    return Math.min(Math.ceil(rough), slideCount);\n  }\n\n  /*\n   * 1. update visible nav items list\n   * 2. add \"hidden\" attributes to previous visible nav items\n   * 3. remove \"hidden\" attrubutes to new visible nav items\n   */\n  function updateNavVisibility () {\n    if (!nav || navAsThumbnails) { return; }\n\n    if (pages !== pagesCached) {\n      var min = pagesCached,\n          max = pages,\n          fn = _helpers_showElement_js__WEBPACK_IMPORTED_MODULE_25__.showElement;\n\n      if (pagesCached > pages) {\n        min = pages;\n        max = pagesCached;\n        fn = _helpers_hideElement_js__WEBPACK_IMPORTED_MODULE_24__.hideElement;\n      }\n\n      while (min < max) {\n        fn(navItems[min]);\n        min++;\n      }\n\n      // cache pages\n      pagesCached = pages;\n    }\n  }\n\n  function info (e) {\n    return {\n      container: container,\n      slideItems: slideItems,\n      navContainer: navContainer,\n      navItems: navItems,\n      controlsContainer: controlsContainer,\n      hasControls: hasControls,\n      prevButton: prevButton,\n      nextButton: nextButton,\n      items: items,\n      slideBy: slideBy,\n      cloneCount: cloneCount,\n      slideCount: slideCount,\n      slideCountNew: slideCountNew,\n      index: index,\n      indexCached: indexCached,\n      displayIndex: getCurrentSlide(),\n      navCurrentIndex: navCurrentIndex,\n      navCurrentIndexCached: navCurrentIndexCached,\n      pages: pages,\n      pagesCached: pagesCached,\n      sheet: sheet,\n      isOn: isOn,\n      event: e || {},\n    };\n  }\n\n  return {\n    version: '2.9.3',\n    getInfo: info,\n    events: events,\n    goTo: goTo,\n    play: play,\n    pause: pause,\n    isOn: isOn,\n    updateSliderHeight: updateInnerWrapperHeight,\n    refresh: initSliderTransform,\n    destroy: destroy,\n    rebuild: function() {\n      return tns((0,_helpers_extend_js__WEBPACK_IMPORTED_MODULE_2__.extend)(options, optionsElements));\n    }\n  };\n};\n\n\n//# sourceURL=webpack://digital-throwback/./node_modules/tiny-slider/src/tiny-slider.js?");
1291
1292/***/ }),
1293
vendor: 1,740 bytes, lines 1294-1304
1294/***/ "./node_modules/validator/lib/isByteLength.js":
1295/*!****************************************************!*\
1296  !*** ./node_modules/validator/lib/isByteLength.js ***!
1297  \****************************************************/
1298/***/ ((module, exports, __webpack_require__) => {
1299
1300"use strict";
1301eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n  value: true\n}));\nexports[\"default\"] = isByteLength;\n\nvar _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ \"./node_modules/validator/lib/util/assertString.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\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\n/* eslint-disable prefer-rest-params */\nfunction isByteLength(str, options) {\n  (0, _assertString.default)(str);\n  var min;\n  var max;\n\n  if (_typeof(options) === 'object') {\n    min = options.min || 0;\n    max = options.max;\n  } else {\n    // backwards compatibility: isByteLength(str, min [, max])\n    min = arguments[1];\n    max = arguments[2];\n  }\n\n  var len = encodeURI(str).split(/%..|./).length - 1;\n  return len >= min && (typeof max === 'undefined' || len <= max);\n}\n\nmodule.exports = exports.default;\nmodule.exports[\"default\"] = exports.default;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/validator/lib/isByteLength.js?");
1302
1303/***/ }),
1304
vendor: 7,068 bytes, lines 1305-1315
1305/***/ "./node_modules/validator/lib/isEmail.js":
1306/*!***********************************************!*\
1307  !*** ./node_modules/validator/lib/isEmail.js ***!
1308  \***********************************************/
1309/***/ ((module, exports, __webpack_require__) => {
1310
1311"use strict";
1312eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n  value: true\n}));\nexports[\"default\"] = isEmail;\n\nvar _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ \"./node_modules/validator/lib/util/assertString.js\"));\n\nvar _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ \"./node_modules/validator/lib/util/merge.js\"));\n\nvar _isByteLength = _interopRequireDefault(__webpack_require__(/*! ./isByteLength */ \"./node_modules/validator/lib/isByteLength.js\"));\n\nvar _isFQDN = _interopRequireDefault(__webpack_require__(/*! ./isFQDN */ \"./node_modules/validator/lib/isFQDN.js\"));\n\nvar _isIP = _interopRequireDefault(__webpack_require__(/*! ./isIP */ \"./node_modules/validator/lib/isIP.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar default_email_options = {\n  allow_display_name: false,\n  require_display_name: false,\n  allow_utf8_local_part: true,\n  require_tld: true,\n  blacklisted_chars: '',\n  ignore_max_length: false\n};\n/* eslint-disable max-len */\n\n/* eslint-disable no-control-regex */\n\nvar splitNameAddress = /^([^\\x00-\\x1F\\x7F-\\x9F\\cX]+)</i;\nvar emailUserPart = /^[a-z\\d!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]+$/i;\nvar gmailUserPart = /^[a-z\\d]+$/;\nvar quotedEmailUser = /^([\\s\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f\\x21\\x23-\\x5b\\x5d-\\x7e]|(\\\\[\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]))*$/i;\nvar emailUserUtf8Part = /^[a-z\\d!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+$/i;\nvar quotedEmailUserUtf8 = /^([\\s\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f\\x21\\x23-\\x5b\\x5d-\\x7e\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]|(\\\\[\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]))*$/i;\nvar defaultMaxEmailLength = 254;\n/* eslint-enable max-len */\n\n/* eslint-enable no-control-regex */\n\n/**\n * Validate display name according to the RFC2822: https://tools.ietf.org/html/rfc2822#appendix-A.1.2\n * @param {String} display_name\n */\n\nfunction validateDisplayName(display_name) {\n  var display_name_without_quotes = display_name.replace(/^\"(.+)\"$/, '$1'); // display name with only spaces is not valid\n\n  if (!display_name_without_quotes.trim()) {\n    return false;\n  } // check whether display name contains illegal character\n\n\n  var contains_illegal = /[\\.\";<>]/.test(display_name_without_quotes);\n\n  if (contains_illegal) {\n    // if contains illegal characters,\n    // must to be enclosed in double-quotes, otherwise it's not a valid display name\n    if (display_name_without_quotes === display_name) {\n      return false;\n    } // the quotes in display name must start with character symbol \\\n\n\n    var all_start_with_back_slash = display_name_without_quotes.split('\"').length === display_name_without_quotes.split('\\\\\"').length;\n\n    if (!all_start_with_back_slash) {\n      return false;\n    }\n  }\n\n  return true;\n}\n\nfunction isEmail(str, options) {\n  (0, _assertString.default)(str);\n  options = (0, _merge.default)(options, default_email_options);\n\n  if (options.require_display_name || options.allow_display_name) {\n    var display_email = str.match(splitNameAddress);\n\n    if (display_email) {\n      var display_name = display_email[1]; // Remove display name and angle brackets to get email address\n      // Can be done in the regex but will introduce a ReDOS (See  #1597 for more info)\n\n      str = str.replace(display_name, '').replace(/(^<|>$)/g, ''); // sometimes need to trim the last space to get the display name\n      // because there may be a space between display name and email address\n      // eg. myname <[email protected]>\n      // the display name is `myname` instead of `myname `, so need to trim the last space\n\n      if (display_name.endsWith(' ')) {\n        display_name = display_name.substr(0, display_name.length - 1);\n      }\n\n      if (!validateDisplayName(display_name)) {\n        return false;\n      }\n    } else if (options.require_display_name) {\n      return false;\n    }\n  }\n\n  if (!options.ignore_max_length && str.length > defaultMaxEmailLength) {\n    return false;\n  }\n\n  var parts = str.split('@');\n  var domain = parts.pop();\n  var user = parts.join('@');\n  var lower_domain = domain.toLowerCase();\n\n  if (options.domain_specific_validation && (lower_domain === 'gmail.com' || lower_domain === 'googlemail.com')) {\n    /*\n      Previously we removed dots for gmail addresses before validating.\n      This was removed because it allows `[email protected]`\n      to be reported as valid, but it is not.\n      Gmail only normalizes single dots, removing them from here is pointless,\n      should be done in normalizeEmail\n    */\n    user = user.toLowerCase(); // Removing sub-address from username before gmail validation\n\n    var username = user.split('+')[0]; // Dots are not included in gmail length restriction\n\n    if (!(0, _isByteLength.default)(username.replace('.', ''), {\n      min: 6,\n      max: 30\n    })) {\n      return false;\n    }\n\n    var _user_parts = username.split('.');\n\n    for (var i = 0; i < _user_parts.length; i++) {\n      if (!gmailUserPart.test(_user_parts[i])) {\n        return false;\n      }\n    }\n  }\n\n  if (options.ignore_max_length === false && (!(0, _isByteLength.default)(user, {\n    max: 64\n  }) || !(0, _isByteLength.default)(domain, {\n    max: 254\n  }))) {\n    return false;\n  }\n\n  if (!(0, _isFQDN.default)(domain, {\n    require_tld: options.require_tld\n  })) {\n    if (!options.allow_ip_domain) {\n      return false;\n    }\n\n    if (!(0, _isIP.default)(domain)) {\n      if (!domain.startsWith('[') || !domain.endsWith(']')) {\n        return false;\n      }\n\n      var noBracketdomain = domain.substr(1, domain.length - 2);\n\n      if (noBracketdomain.length === 0 || !(0, _isIP.default)(noBracketdomain)) {\n        return false;\n      }\n    }\n  }\n\n  if (user[0] === '\"') {\n    user = user.slice(1, user.length - 1);\n    return options.allow_utf8_local_part ? quotedEmailUserUtf8.test(user) : quotedEmailUser.test(user);\n  }\n\n  var pattern = options.allow_utf8_local_part ? emailUserUtf8Part : emailUserPart;\n  var user_parts = user.split('.');\n\n  for (var _i = 0; _i < user_parts.length; _i++) {\n    if (!pattern.test(user_parts[_i])) {\n      return false;\n    }\n  }\n\n  if (options.blacklisted_chars) {\n    if (user.search(new RegExp(\"[\".concat(options.blacklisted_chars, \"]+\"), 'g')) !== -1) return false;\n  }\n\n  return true;\n}\n\nmodule.exports = exports.default;\nmodule.exports[\"default\"] = exports.default;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/validator/lib/isEmail.js?");
1313
1314/***/ }),
1315
vendor: 2,515 bytes, lines 1316-1326
1316/***/ "./node_modules/validator/lib/isFQDN.js":
1317/*!**********************************************!*\
1318  !*** ./node_modules/validator/lib/isFQDN.js ***!
1319  \**********************************************/
1320/***/ ((module, exports, __webpack_require__) => {
1321
1322"use strict";
1323eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n  value: true\n}));\nexports[\"default\"] = isFQDN;\n\nvar _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ \"./node_modules/validator/lib/util/assertString.js\"));\n\nvar _merge = _interopRequireDefault(__webpack_require__(/*! ./util/merge */ \"./node_modules/validator/lib/util/merge.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar default_fqdn_options = {\n  require_tld: true,\n  allow_underscores: false,\n  allow_trailing_dot: false,\n  allow_numeric_tld: false\n};\n\nfunction isFQDN(str, options) {\n  (0, _assertString.default)(str);\n  options = (0, _merge.default)(options, default_fqdn_options);\n  /* Remove the optional trailing dot before checking validity */\n\n  if (options.allow_trailing_dot && str[str.length - 1] === '.') {\n    str = str.substring(0, str.length - 1);\n  }\n\n  var parts = str.split('.');\n  var tld = parts[parts.length - 1];\n\n  if (options.require_tld) {\n    // disallow fqdns without tld\n    if (parts.length < 2) {\n      return false;\n    }\n\n    if (!/^([a-z\\u00a1-\\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(tld)) {\n      return false;\n    } // disallow spaces && special characers\n\n\n    if (/[\\s\\u2002-\\u200B\\u202F\\u205F\\u3000\\uFEFF\\uDB40\\uDC20\\u00A9\\uFFFD]/.test(tld)) {\n      return false;\n    }\n  } // reject numeric TLDs\n\n\n  if (!options.allow_numeric_tld && /^\\d+$/.test(tld)) {\n    return false;\n  }\n\n  return parts.every(function (part) {\n    if (part.length > 63) {\n      return false;\n    }\n\n    if (!/^[a-z_\\u00a1-\\uffff0-9-]+$/i.test(part)) {\n      return false;\n    } // disallow full-width chars\n\n\n    if (/[\\uff01-\\uff5e]/.test(part)) {\n      return false;\n    } // disallow parts starting or ending with hyphen\n\n\n    if (/^-|-$/.test(part)) {\n      return false;\n    }\n\n    if (!options.allow_underscores && /_/.test(part)) {\n      return false;\n    }\n\n    return true;\n  });\n}\n\nmodule.exports = exports.default;\nmodule.exports[\"default\"] = exports.default;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/validator/lib/isFQDN.js?");
1324
1325/***/ }),
1326
vendor: 3,751 bytes, lines 1327-1337
1327/***/ "./node_modules/validator/lib/isIP.js":
1328/*!********************************************!*\
1329  !*** ./node_modules/validator/lib/isIP.js ***!
1330  \********************************************/
1331/***/ ((module, exports, __webpack_require__) => {
1332
1333"use strict";
1334eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n  value: true\n}));\nexports[\"default\"] = isIP;\n\nvar _assertString = _interopRequireDefault(__webpack_require__(/*! ./util/assertString */ \"./node_modules/validator/lib/util/assertString.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n/**\n11.3.  Examples\n\n   The following addresses\n\n             fe80::1234 (on the 1st link of the node)\n             ff02::5678 (on the 5th link of the node)\n             ff08::9abc (on the 10th organization of the node)\n\n   would be represented as follows:\n\n             fe80::1234%1\n             ff02::5678%5\n             ff08::9abc%10\n\n   (Here we assume a natural translation from a zone index to the\n   <zone_id> part, where the Nth zone of any scope is translated into\n   \"N\".)\n\n   If we use interface names as <zone_id>, those addresses could also be\n   represented as follows:\n\n            fe80::1234%ne0\n            ff02::5678%pvc1.3\n            ff08::9abc%interface10\n\n   where the interface \"ne0\" belongs to the 1st link, \"pvc1.3\" belongs\n   to the 5th link, and \"interface10\" belongs to the 10th organization.\n * * */\nvar IPv4SegmentFormat = '(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';\nvar IPv4AddressFormat = \"(\".concat(IPv4SegmentFormat, \"[.]){3}\").concat(IPv4SegmentFormat);\nvar IPv4AddressRegExp = new RegExp(\"^\".concat(IPv4AddressFormat, \"$\"));\nvar IPv6SegmentFormat = '(?:[0-9a-fA-F]{1,4})';\nvar IPv6AddressRegExp = new RegExp('^(' + \"(?:\".concat(IPv6SegmentFormat, \":){7}(?:\").concat(IPv6SegmentFormat, \"|:)|\") + \"(?:\".concat(IPv6SegmentFormat, \":){6}(?:\").concat(IPv4AddressFormat, \"|:\").concat(IPv6SegmentFormat, \"|:)|\") + \"(?:\".concat(IPv6SegmentFormat, \":){5}(?::\").concat(IPv4AddressFormat, \"|(:\").concat(IPv6SegmentFormat, \"){1,2}|:)|\") + \"(?:\".concat(IPv6SegmentFormat, \":){4}(?:(:\").concat(IPv6SegmentFormat, \"){0,1}:\").concat(IPv4AddressFormat, \"|(:\").concat(IPv6SegmentFormat, \"){1,3}|:)|\") + \"(?:\".concat(IPv6SegmentFormat, \":){3}(?:(:\").concat(IPv6SegmentFormat, \"){0,2}:\").concat(IPv4AddressFormat, \"|(:\").concat(IPv6SegmentFormat, \"){1,4}|:)|\") + \"(?:\".concat(IPv6SegmentFormat, \":){2}(?:(:\").concat(IPv6SegmentFormat, \"){0,3}:\").concat(IPv4AddressFormat, \"|(:\").concat(IPv6SegmentFormat, \"){1,5}|:)|\") + \"(?:\".concat(IPv6SegmentFormat, \":){1}(?:(:\").concat(IPv6SegmentFormat, \"){0,4}:\").concat(IPv4AddressFormat, \"|(:\").concat(IPv6SegmentFormat, \"){1,6}|:)|\") + \"(?::((?::\".concat(IPv6SegmentFormat, \"){0,5}:\").concat(IPv4AddressFormat, \"|(?::\").concat(IPv6SegmentFormat, \"){1,7}|:))\") + ')(%[0-9a-zA-Z-.:]{1,})?$');\n\nfunction isIP(str) {\n  var version = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n  (0, _assertString.default)(str);\n  version = String(version);\n\n  if (!version) {\n    return isIP(str, 4) || isIP(str, 6);\n  }\n\n  if (version === '4') {\n    if (!IPv4AddressRegExp.test(str)) {\n      return false;\n    }\n\n    var parts = str.split('.').sort(function (a, b) {\n      return a - b;\n    });\n    return parts[3] <= 255;\n  }\n\n  if (version === '6') {\n    return !!IPv6AddressRegExp.test(str);\n  }\n\n  return false;\n}\n\nmodule.exports = exports.default;\nmodule.exports[\"default\"] = exports.default;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/validator/lib/isIP.js?");
1335
1336/***/ }),
1337
vendor: 1,380 bytes, lines 1338-1348
1338/***/ "./node_modules/validator/lib/util/assertString.js":
1339/*!*********************************************************!*\
1340  !*** ./node_modules/validator/lib/util/assertString.js ***!
1341  \*********************************************************/
1342/***/ ((module, exports) => {
1343
1344"use strict";
1345eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n  value: true\n}));\nexports[\"default\"] = assertString;\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\nfunction assertString(input) {\n  var isString = typeof input === 'string' || input instanceof String;\n\n  if (!isString) {\n    var invalidType = _typeof(input);\n\n    if (input === null) invalidType = 'null';else if (invalidType === 'object') invalidType = input.constructor.name;\n    throw new TypeError(\"Expected a string but received a \".concat(invalidType));\n  }\n}\n\nmodule.exports = exports.default;\nmodule.exports[\"default\"] = exports.default;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/validator/lib/util/assertString.js?");
1346
1347/***/ }),
1348
vendor: 878 bytes, lines 1349-1358
1349/***/ "./node_modules/validator/lib/util/merge.js":
1350/*!**************************************************!*\
1351  !*** ./node_modules/validator/lib/util/merge.js ***!
1352  \**************************************************/
1353/***/ ((module, exports) => {
1354
1355"use strict";
1356eval("\n\nObject.defineProperty(exports, \"__esModule\", ({\n  value: true\n}));\nexports[\"default\"] = merge;\n\nfunction merge() {\n  var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n  var defaults = arguments.length > 1 ? arguments[1] : undefined;\n\n  for (var key in defaults) {\n    if (typeof obj[key] === 'undefined') {\n      obj[key] = defaults[key];\n    }\n  }\n\n  return obj;\n}\n\nmodule.exports = exports.default;\nmodule.exports[\"default\"] = exports.default;\n\n//# sourceURL=webpack://digital-throwback/./node_modules/validator/lib/util/merge.js?");
1357
1358/***/ })
vendor: 3,019 bytes, lines 1358-1435
1358
1359
1360/******/ 	});
1361/************************************************************************/
1362/******/ 	// The module cache
1363/******/ 	var __webpack_module_cache__ = {};
1364/******/ 	
1365/******/ 	// The require function
1366/******/ 	function __webpack_require__(moduleId) {
1367/******/ 		// Check if module is in cache
1368/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
1369/******/ 		if (cachedModule !== undefined) {
1370/******/ 			return cachedModule.exports;
1371/******/ 		}
1372/******/ 		// Create a new module (and put it into the cache)
1373/******/ 		var module = __webpack_module_cache__[moduleId] = {
1374/******/ 			// no module.id needed
1375/******/ 			// no module.loaded needed
1376/******/ 			exports: {}
1377/******/ 		};
1378/******/ 	
1379/******/ 		// Execute the module function
1380/******/ 		__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
1381/******/ 	
1382/******/ 		// Return the exports of the module
1383/******/ 		return module.exports;
1384/******/ 	}
1385/******/ 	
1386/************************************************************************/
1387/******/ 	/* webpack/runtime/compat get default export */
1388/******/ 	(() => {
1389/******/ 		// getDefaultExport function for compatibility with non-harmony modules
1390/******/ 		__webpack_require__.n = (module) => {
1391/******/ 			var getter = module && module.__esModule ?
1392/******/ 				() => (module['default']) :
1393/******/ 				() => (module);
1394/******/ 			__webpack_require__.d(getter, { a: getter });
1395/******/ 			return getter;
1396/******/ 		};
1397/******/ 	})();
1398/******/ 	
1399/******/ 	/* webpack/runtime/define property getters */
1400/******/ 	(() => {
1401/******/ 		// define getter functions for harmony exports
1402/******/ 		__webpack_require__.d = (exports, definition) => {
1403/******/ 			for(var key in definition) {
1404/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
1405/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
1406/******/ 				}
1407/******/ 			}
1408/******/ 		};
1409/******/ 	})();
1410/******/ 	
1411/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
1412/******/ 	(() => {
1413/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
1414/******/ 	})();
1415/******/ 	
1416/******/ 	/* webpack/runtime/make namespace object */
1417/******/ 	(() => {
1418/******/ 		// define __esModule on exports
1419/******/ 		__webpack_require__.r = (exports) => {
1420/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
1421/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1422/******/ 			}
1423/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
1424/******/ 		};
1425/******/ 	})();
1426/******/ 	
1427/************************************************************************/
1428/******/ 	
1429/******/ 	// startup
1430/******/ 	// Load entry module and return exports
1431/******/ 	// This entry module can't be inlined because the eval devtool is used.
1432/******/ 	var __webpack_exports__ = __webpack_require__("./src/scripts/theme.js");
1433/******/ 	
1434/******/ })()
1435;

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.