vendor: 3,631 bytes, lines 1-89
1var main = 2/******/ (function(modules) { // webpackBootstrap 3/******/ // The module cache 4/******/ var installedModules = {}; 5/******/ 6/******/ // The require function 7/******/ function __webpack_require__(moduleId) { 8/******/ 9/******/ // Check if module is in cache 10/******/ if(installedModules[moduleId]) { 11/******/ return installedModules[moduleId].exports; 12/******/ } 13/******/ // Create a new module (and put it into the cache) 14/******/ var module = installedModules[moduleId] = { 15/******/ i: moduleId, 16/******/ l: false, 17/******/ exports: {} 18/******/ }; 19/******/ 20/******/ // Execute the module function 21/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); 22/******/ 23/******/ // Flag the module as loaded 24/******/ module.l = true; 25/******/ 26/******/ // Return the exports of the module 27/******/ return module.exports; 28/******/ } 29/******/ 30/******/ 31/******/ // expose the modules object (__webpack_modules__) 32/******/ __webpack_require__.m = modules; 33/******/ 34/******/ // expose the module cache 35/******/ __webpack_require__.c = installedModules; 36/******/ 37/******/ // define getter function for harmony exports 38/******/ __webpack_require__.d = function(exports, name, getter) { 39/******/ if(!__webpack_require__.o(exports, name)) { 40/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); 41/******/ } 42/******/ }; 43/******/ 44/******/ // define __esModule on exports 45/******/ __webpack_require__.r = function(exports) { 46/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { 47/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); 48/******/ } 49/******/ Object.defineProperty(exports, '__esModule', { value: true }); 50/******/ }; 51/******/ 52/******/ // create a fake namespace object 53/******/ // mode & 1: value is a module id, require it 54/******/ // mode & 2: merge all properties of value into the ns 55/******/ // mode & 4: return value when already ns object 56/******/ // mode & 8|1: behave like require 57/******/ __webpack_require__.t = function(value, mode) { 58/******/ if(mode & 1) value = __webpack_require__(value); 59/******/ if(mode & 8) return value; 60/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; 61/******/ var ns = Object.create(null); 62/******/ __webpack_require__.r(ns); 63/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); 64/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); 65/******/ return ns; 66/******/ }; 67/******/ 68/******/ // getDefaultExport function for compatibility with non-harmony modules 69/******/ __webpack_require__.n = function(module) { 70/******/ var getter = module && module.__esModule ? 71/******/ function getDefault() { return module['default']; } : 72/******/ function getModuleExports() { return module; }; 73/******/ __webpack_require__.d(getter, 'a', getter); 74/******/ return getter; 75/******/ }; 76/******/ 77/******/ // Object.prototype.hasOwnProperty.call 78/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; 79/******/ 80/******/ // __webpack_public_path__ 81/******/ __webpack_require__.p = ""; 82/******/ 83/******/ 84/******/ // Load entry module and return exports 85/******/ return __webpack_require__(__webpack_require__.s = "./src/datalayer-events.ts"); 86/******/ }) 87/************************************************************************/ 88/******/ ({ 89
90/***/ "./src/datalayer-events.ts": 91/*!*********************************!*\ 92 !*** ./src/datalayer-events.ts ***! 93 \*********************************/ 94/*! no static exports found */ 95/***/ (function(module, exports, __webpack_require__) { 96 97"use strict"; 98eval("\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar ga4_nav_click_1 = __webpack_require__(/*! ./ga4-nav-click */ \"./src/ga4-nav-click.ts\");\nexports.GA4NavClick = ga4_nav_click_1.GA4NavClick;\nvar ga4_template_download_1 = __webpack_require__(/*! ./ga4-template-download */ \"./src/ga4-template-download.ts\");\nexports.Ga4TemplateDownload = ga4_template_download_1.Ga4TemplateDownload;\nvar ga4_related_products_1 = __webpack_require__(/*! ./ga4-related-products */ \"./src/ga4-related-products.ts\");\nexports.Ga4RelatedProducts = ga4_related_products_1.Ga4RelatedProducts;\nvar ga4_password_reveal_1 = __webpack_require__(/*! ./ga4-password-reveal */ \"./src/ga4-password-reveal.ts\");\nexports.Ga4PasswordReveal = ga4_password_reveal_1.Ga4PasswordReveal;\nvar kinesis_metric_1 = __webpack_require__(/*! ./kinesis-metric */ \"./src/kine
98sis-metric.ts\");\nexports.KinesisMetric = kinesis_metric_1.KinesisMetric;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/datalayer-events.ts?"); 99 100/***/ }), 101
102/***/ "./src/ga4-nav-click.ts": 103/*!******************************!*\ 104 !*** ./src/ga4-nav-click.ts ***! 105 \******************************/ 106/*! no static exports found */ 107/***/ (function(module, exports, __webpack_require__) { 108 109"use strict"; 110eval("\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar datalayer_service_1 = __webpack_require__(/*! ./services/datalayer.service */ \"./src/services/datalayer.service.ts\");\nvar GA4NavClick = /** @class */ (function () {\n function GA4NavClick() {\n this.mainNavText = '';\n this.lastElType = '';\n this.disableNavTextDefaultMobile = false;\n this.navTogglerEnabled = false;\n this.headerClass = 'header';\n this.previousNavTitle = '';\n this.ignoreHoverClass = '';\n this.config = {\n class: '',\n header_class: 'header',\n left_nav_class: 'left-nav',\n ignore_hover_class: '',\n };\n this.DatalayerService = new datalayer_service_1.DatalayerService();\n }\n GA4NavClick.prototype.initialize = function (config) {\n var _this = this;\n this.mainNavText = config.mainNavText ? config.mainNavText : this.mainNavText;\n this.disableNavTextDefaultMobile = config.disableNavTextDefaultMobile ?\n config.disableNavTextDefaultMobile : this.disableNavTextDefaultMobile;\n this.navTogglerEnabled = config.navTogglerEnabled ? config.navTogglerEnabled : this.navTogglerEnabled;\n this.headerClass = config.header_class ? config.header_class : this.config.header_class;\n this.ignoreHoverClass = config.ignore_hover_class ? config.ignore_hover_class : this.config.ignore_hover_class;\n var leftNavClass = config.left_nav_class ? config.left_nav_class : this.config.left_nav_class;\n var navs = document.querySelectorAll('.ga4-nav-click' + (config.class ? config.class : this.config.class));\n var optionsForLeftNav = {\n navigations: 'Left Nav',\n section: 'left_nav',\n nav_group: 'left_nav',\n };\n var optionsForTopNav = {\n navigations: 'Top Nav',\n section: 'header',\n nav_group: 'top_nav',\n };\n Object.keys(navs).forEach(function (key) {\n if (navs[key].classList.contains(_this.headerClass)) {\n _this.attachHeaderEvents(navs[key], optionsForTopNav);\n }\n else if (navs[key].classList.contains(leftNavClass)) {\n _this.attachHeaderEvents(navs[key], optionsForLeftNav);\n }\n });\n };\n GA4NavClick.prototype.attachHeaderEvents = function (event, options) {\n var hoverTimeout = null;\n var mouseLeaveTimeout = null;\n var navLevelValues = [];\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var self = this;\n event.addEventListener('mouseover', function (e) {\n var isDesktop = window.innerWidth >= 992 ? true : false;\n if (isDesktop && !e.target.classList.contains('ignore-hover')) {\n if (hoverTimeout) {\n clearTimeout(hoverTimeout);\n }\n hoverTimeout = setTimeout(function () {\n var action = 'view';\n var parent = e.target.closest('[data-nav-level]');\n var navTitle = '';\n var navLevel = 0;\n var currentNavTitle = '';\n if (parent) {\n if (parent.getAttribute('data-nav-title')) {\n navTitle = parent.getAttribute('data-nav-title').trim();\n }\n else if (e.target.getAttribute('data-nav-title')) {\n navTitle = e.target.getAttribute('data-nav-title').trim();\n }\n navLevel = parseInt(parent.getAttribute('data-nav-level'));\n currentNavTitle = navTitle + '-' + navLevel;\n }\n else {\n this.previousNavTitle = '';\n }\n var targetDataHasChildren = e.target.getAttribute('data-has-children');\n var ignoreHover = (this.previousNavTitle == currentNavTitle) ||\n (self.ignoreHoverClass &&\n parent.classList.contains(self.ignoreHoverClass)) ? true : false;\n if (((parent && parent.getAttribute('data-has-children')) == '1' || targetDataHasChildren == '1') &&\n !ignoreHover) {\n self.lastElType = 'text_link';
110\n navLevelValues[navLevel] = navTitle;\n this.previousNavTitle = navTitle + '-' + navLevel;\n if (navLevelValues.length > navLevel + 1) {\n navLevelValues.splice(navLevel + 1);\n }\n self.sendDatalayerEvent(navLevelValues, action, options);\n }\n }, 300);\n }\n });\n event.addEventListener('mouseleave', function () {\n var isDesktop = window.innerWidth >= 992 ? true : false;\n if (isDesktop) {\n if (mouseLeaveTimeout) {\n clearTimeout(mouseLeaveTimeout);\n }\n mouseLeaveTimeout = setTimeout(function () {\n this.previousNavTitle = '';\n }, 300);\n }\n });\n event.addEventListener('click', function (e) {\n self.prepareClickEventData(e, navLevelValues, options);\n });\n event.addEventListener('auxclick', function (e) {\n if (e.button == 1) {\n // middle button mousewheel-click\n self.prepareClickEventData(e, navLevelValues, options);\n }\n });\n };\n GA4NavClick.prototype.prepareClickEventData = function (e, navLevelValues, options) {\n var parent = e.target.closest('[data-nav-level]');\n var hasChildren = parent ? parent.getAttribute('data-has-children') : null;\n if (!hasChildren) {\n hasChildren = e.target.getAttribute('data-has-children');\n }\n var mobileForceClick = parent ? parent.getAttribute('data-mobile-force-click') ? true : false : null;\n var isTabletAndBelow = window.innerWidth < 992 ? true : false;\n var isHeaderNav = e.target.closest('.ga4-nav-click').classList.contains(this.headerClass);\n var action = 'click';\n if (((!mobileForceClick && isTabletAndBelow) &&\n (hasChildren == '1' || (hasChildren === null && e.target.closest('.has-children')))) ||\n (this.navTogglerEnabled && hasChildren == '1') && isHeaderNav) {\n action = 'view';\n }\n // featured product image is clicked\n if (e.target.closest('[data-el-type]')) {\n var parentTarget = e.target.closest('[data-parent-title]');\n var navLevel = (this.lastElType == 'featured_product') ? navLevelValues.length - 1 : navLevelValues.length;\n navLevel = parentTarget ? parseInt(parentTarget.getAttribute('data-nav-level')) : navLevel;\n action = 'featured_product';\n navLevelValues[navLevel] = parent.getAttribute('data-nav-title');\n if (parentTarget) {\n navLevelValues[navLevel - 1] = parentTarget.getAttribute('data-parent-title');\n }\n this.sendDatalayerEvent(navLevelValues, action, options);\n this.lastElType = 'featured_product';\n return;\n }\n if (parent) {\n var navLevel = parseInt(parent.getAttribute('data-nav-level'));\n var navTitle = '';\n if (parent.getAttribute('data-nav-title')) {\n navTitle = parent.getAttribute('data-nav-title');\n }\n else if (e.target.getAttribute('data-nav-title')) {\n navTitle = e.target.getAttribute('data-nav-title');\n }\n var mobileParentTitle = parent.getAttribute('data-mobile-parent-title');\n var mobileNavLevel = parent.getAttribute('data-mobile-nav-level');\n var overrideParent = parent.getAttribute('data-override-parent');\n var parentTitle = parent.getAttribute('data-parent-title');\n this.lastElType = 'text_link';\n if (mobileParentTitle && mobileNavLevel && isTabletAndBelow) {\n parentTitle = mobileParentTitle.trim();\n navLevel = parseInt(mobileNavLevel);\n }\n if (isTabletAndBelow &&\n !parentTitle &&\
110n !this.disableNavTextDefaultMobile &&\n !overrideParent) {\n navLevelValues[0] = this.mainNavText;\n }\n navLevelValues[navLevel] = navTitle;\n if (parentTitle) {\n navLevelValues[navLevel - 1] = parentTitle;\n }\n if (navLevelValues.length > navLevel + 1) {\n navLevelValues.splice(navLevel + 1);\n }\n this.sendDatalayerEvent(navLevelValues, action, options);\n }\n };\n GA4NavClick.prototype.sendDatalayerEvent = function (navLevelValues, action, options) {\n var logData = {\n event: 'nav_click',\n el_type: action == 'featured_product' ? action : 'text_link',\n action: 'click',\n };\n logData = __assign({}, logData, options);\n if (action === 'view') {\n logData.event = 'nav_view';\n logData.action = 'view';\n }\n navLevelValues.forEach(function (value, index) {\n logData['nav_level' + (index + 1)] = value;\n });\n this.DatalayerService.logDataLayerEvent(logData);\n };\n return GA4NavClick;\n}());\nexports.GA4NavClick = GA4NavClick;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/ga4-nav-click.ts?"); 111 112/***/ }), 113
114/***/ "./src/ga4-password-reveal.ts": 115/*!************************************!*\ 116 !*** ./src/ga4-password-reveal.ts ***! 117 \************************************/ 118/*! no static exports found */ 119/***/ (function(module, exports, __webpack_require__) { 120 121"use strict"; 122eval("\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar datalayer_service_1 = __webpack_require__(/*! ./services/datalayer.service */ \"./src/services/datalayer.service.ts\");\nvar Ga4PasswordReveal = /** @class */ (function () {\n function Ga4PasswordReveal() {\n this.DatalayerService = new datalayer_service_1.DatalayerService();\n }\n Ga4PasswordReveal.prototype.sendDatalayerEvent = function (data) {\n var logData = __assign({ event: 'password_reveal_click' }, data);\n this.DatalayerService.logDataLayerEvent(logData);\n };\n return Ga4PasswordReveal;\n}());\nexports.Ga4PasswordReveal = Ga4PasswordReveal;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/ga4-password-reveal.ts?"); 123 124/***/ }), 125
126/***/ "./src/ga4-related-products.ts": 127/*!*************************************!*\ 128 !*** ./src/ga4-related-products.ts ***! 129 \*************************************/ 130/*! no static exports found */ 131/***/ (function(module, exports, __webpack_require__) { 132 133"use strict"; 134eval("\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar datalayer_service_1 = __webpack_require__(/*! ./services/datalayer.service */ \"./src/services/datalayer.service.ts\");\nvar Ga4RelatedProducts = /** @class */ (function () {\n function Ga4RelatedProducts() {\n this.DatalayerService = new datalayer_service_1.DatalayerService();\n }\n Ga4RelatedProducts.prototype.attachEvents = function (className, productName) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var self = this;\n document.querySelectorAll(className).forEach(function (dom) {\n dom.addEventListener('click', function () {\n self.sendDatalayerEvent({\n 'product_being_viewed': this.textContent.trim(),\n 'item_clicked': productName ? productName : '',\n });\n });\n dom.addEventListener('auxclick', function () {\n self.sendDatalayerEvent({\n 'product_being_viewed': this.textContent.trim(),\n 'item_clicked': productName ? productName : '',\n });\n });\n });\n };\n Ga4RelatedProducts.prototype.sendDatalayerEvent = function (data) {\
134n var logData = __assign({ event: 'related_products_click' }, data);\n this.DatalayerService.logDataLayerEvent(logData);\n };\n return Ga4RelatedProducts;\n}());\nexports.Ga4RelatedProducts = Ga4RelatedProducts;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/ga4-related-products.ts?"); 135 136/***/ }), 137
138/***/ "./src/ga4-template-download.ts": 139/*!**************************************!*\ 140 !*** ./src/ga4-template-download.ts ***! 141 \**************************************/ 142/*! no static exports found */ 143/***/ (function(module, exports, __webpack_require__) { 144 145"use strict"; 146eval("\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar datalayer_service_1 = __webpack_require__(/*! ./services/datalayer.service */ \"./src/services/datalayer.service.ts\");\nvar auth_service_1 = __webpack_require__(/*! ./services/auth.service */ \"./src/services/auth.service.ts\");\nvar Ga4TemplateDownload = /** @class */ (function () {\n function Ga4TemplateDownload() {\n this.DatalayerService = new datalayer_service_1.DatalayerService();\n }\n Ga4TemplateDownload.prototype.attachEventsWithCustomerId = function (className, customerId) {\n this.attachClickEvent(className, customerId);\n };\n Ga4TemplateDownload.prototype.attachEvents = function (className) {\n this.AuthService = new auth_service_1.AuthService();\n var accessTokenData = this.AuthService.parseAccessTokenData();\n var customerInfo = accessTokenData.data;\n var customerId = '';\n if (customerInfo) {\n customerId = customerInfo['customer_id'];\n }\n this.attachClickEvent(className, customerId);\n };\n Ga4TemplateDownload.prototype.attachClickEvent = function (className, customerId) {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var self = this;\n document.querySelectorAll(className).forEach(function (dom) {\n dom.addEventListener('click', function () {\n var filePath = this.getAttribute('href');\n self.sendFileData(filePath, customerId);\n });\n });\n };\n Ga4TemplateDownload.prototype.sendFileData = function (filename, customerId) {\n var fileName = filename.replace(/^.*[\\\\\\/]/, '').split('?');\n this.sendDatalayerEvent({\n 'customer_id': customerId !== null ? customerId : '',\n 'generic_variable': fileName[0],\n });\n };\n Ga4TemplateDownload.prototype.sendDatalayerEvent = function (data) {\
146n var logData = __assign({ event: 'template_download' }, data);\n this.DatalayerService.logDataLayerEvent(logData);\n };\n return Ga4TemplateDownload;\n}());\nexports.Ga4TemplateDownload = Ga4TemplateDownload;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/ga4-template-download.ts?"); 147 148/***/ }), 149
150/***/ "./src/kinesis-metric.ts": 151/*!*******************************!*\ 152 !*** ./src/kinesis-metric.ts ***! 153 \*******************************/ 154/*! no static exports found */ 155/***/ (function(module, exports, __webpack_require__) { 156 157"use strict"; 158eval("\nvar __assign = (this && this.__assign) || Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar KinesisMetric = /** @class */ (function () {\n function KinesisMetric() {\n var _this = this;\n this.flush = function () {\n if (_this.queue.length === 0)\n return;\n var now = Date.now();\n if (now - _this.lastFlush < 2000) {\n setTimeout(_this.flush, 2000);\n return;\n }\n _this.lastFlush = now;\n var http = new XMLHttpRequest();\n http.open('POST', '.', true);\n http.setRequestHeader('x-digitalroom-action', 'metrics');\n http.send(JSON.stringify(_this.queue));\n http.onerror = function (e) {\n console.error('Unable to send metrics', e);\n };\n _this.queue = [];\n };\n this.lastFlush = 0;\n this.queue = [];\n if (window.attachEvent) {\n // IE versions < 9\n window.attachEvent('onbeforeunload', this.flush.bind(this));\n }\n else if (window.addEventListener) {\n // IE 9, Chrome, FF, Safari, Opera\n window.addEventListener('beforeunload', this.flush.bind(this), false);\n }\n }\n KinesisMetric.prototype.prepareAndPushCartEvent = function (cartData, cartItems, config, queryStringParameters, path) {\n var cartDataFormatted = __assign({}, cartData);\n if (cartDataFormatted.hasOwnProperty('items')) {\n delete cartDataFormatted.items;\n }\n var formatPayload = {\n domain: config.domain,\n path: path,\n queryStringParameters: queryStringParameters,\n event: config.event,\n customerID: cartData.customer_id,\n eventContext: config.event_context,\n sourceApp: config.source_app,\n payloadVersion: config.payload_version,\n payload: {\n cart: cartDataFormatted,\n cartItems: {\n item: cartItems,\n },\n },\n };\n this.log(formatPayload);\n };\n KinesisMetric.prototype.prepareAndPushBrowseEvent = function (customerId, config, relatedProducts, urlData, pdpData) {\n var formatPayload = {\n domain: config.domain,\n path: urlData.pathName,\n queryStringParameters: urlData.queryParams,\n event: config.event,\n customerID: customerId,\n eventContext: config.eventContext,\n sourceApp: config.source_app,\n payloadVersion: config.payload_version,\n payload: {\n pageId: pdpData.pageId,\n productId: pdpData.pageProductId,\n pdpUrl: urlData.siteUrl + urlData.pathName,\n pdpImageUrl: pdpData.pdpImageUrl,\n pdpRelatedProducts: relatedProducts,\n },\n };\n this.log(formatPayload);\n };\n KinesisMetric.prototype.log = function (params) {\n var sessionID = '';\n var visitorID = '';\n for (var _i = 0, _a = document.cookie.split(';'); _i < _a.length;
158 _i++) {\n var cookie = _a[_i];\n var _b = cookie.split('='), name_1 = _b[0], value = _b[1];\n switch (name_1.trim()) {\n case '__uptracker':\n visitorID = value;\n break;\n case '__session_id':\n sessionID = value;\n break;\n }\n }\n var timestamp = Date.now() / 1000;\n var formatPayload = {\n domain: params.domain,\n path: params.path,\n queryStringParameters: params.queryStringParameters,\n sessionID: sessionID,\n visitorID: visitorID,\n event: params.event,\n customerID: params.customerID,\n eventContext: params.eventContext,\n sourceApp: params.sourceApp,\n payloadVersion: params.payloadVersion,\n payload: params.payload,\n timestamp: timestamp,\n };\n this.queue.push(formatPayload);\n setTimeout(this.flush, 2000);\n };\n return KinesisMetric;\n}());\nexports.KinesisMetric = KinesisMetric;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/kinesis-metric.ts?"); 159 160/***/ }), 161
162/***/ "./src/services/auth.service.ts": 163/*!**************************************!*\ 164 !*** ./src/services/auth.service.ts ***! 165 \**************************************/ 166/*! no static exports found */ 167/***/ (function(module, exports, __webpack_require__) { 168 169"use strict"; 170eval("\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// eslint-disable-next-line camelcase\nwindow.website_config = window.website_config || [];\nvar AuthService = /** @class */ (function () {\n function AuthService() {\n }\n AuthService.prototype.parseAccessTokenData = function () {\n var readCookie = function (cookieName) {\n var name = cookieName + '=';\n var cookieData = document.cookie.split(';');\n for (var index = 0; index < cookieData.length; index++) {\n var cookie = cookieData[index];\n while (cookie.charAt(0) == ' ')\n cookie = cookie.substring(1);\n if (cookie.indexOf(name) == 0)\n return cookie.substring(name.length, cookie.length);\n }\n return '';\n };\n // eslint-disable-next-line camelcase\n var accessToken = readCookie(window.website_config.auth.act_field);\n if (!accessToken) {\n return false;\n }\n var accessTokenData = accessToken.split('.');\n if (!accessTokenData[1]) {\n return false;\n }\n try {\n // try parsing header part of token to make sure it is not tampered\n JSON.parse(atob(accessTokenData[0]));\n var data = JSON.parse(atob(accessTokenData[1]));\n var currentTimestamp = Math.round((new Date()).getTime() / 1000);\n // check if token is expired\n if (currentTimestamp >= parseInt(data.exp)) {\n return false;\n }\n return JSON.parse(atob(accessTokenData[1]));\n }\n catch (e) {\n return false;\n }\n };\n return AuthService;\n}());\nexports.AuthService = AuthService;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/services/auth.service.ts?"); 171 172/***/ }), 173
174/***/ "./src/services/datalayer.service.ts": 175/*!*******************************************!*\ 176 !*** ./src/services/datalayer.service.ts ***! 177 \*******************************************/ 178/*! no static exports found */ 179/***/ (function(module, exports, __webpack_require__) { 180 181"use strict"; 182eval("\nObject.defineProperty(exports, \"__esModule\", { value: true });\nwindow.dataLayer = window.dataLayer || [];\nvar DatalayerService = /** @class */ (function () {\n function DatalayerService() {\n }\n DatalayerService.prototype.logDataLayerEvent = function (logData) {\n if (typeof window.dataLayer != 'undefined' && logData) {\n window.dataLayer.push(logData);\n }\n };\n return DatalayerService;\n}());\nexports.DatalayerService = DatalayerService;\n\n\n//# sourceURL=webpack://%5Bname%5D/./src/services/datalayer.service.ts?"
vendor: 26 bytes, lines 182-186
182); 183 184/***/ }) 185 186/******/ });
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.