PageSourceSearch

https://s1.48hourprint.com/assets/vendor/dri/marketing/dist/main.js

js 48hourprint.com collected 2026-10-03 22:11:22 UTC 29,687 bytes, 186 lines download raw bytes

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.