{"version":3,"file":"RefApp.foundation-layer.CM.js","mappings":"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","sources":["webpack://$/webpack/universalModuleDefinition","webpack://$/webpack/bootstrap","webpack://$/webpack/runtime/make namespace object","webpack://$/./src/Feature/GoogleAnalytics/code/Scripts/components/v1/productImpressions.js","webpack://$/./src/Feature/GoogleAnalytics/code/Scripts/components/v1/EventDataLayer.js","webpack://$/./src/Feature/GoogleAnalytics/code/Scripts/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"$\"] = factory();\n\telse\n\t\troot[\"$\"] = factory();\n})(self, function() {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","function inViewportAndVisible(node, options, callback) {\r\n return throttle(() => {\r\n if (\r\n (options.checkIsVisible && inViewport(node) && isVisible(node)) ||\r\n (!options.checkIsVisible && inViewport(node))\r\n ) {\r\n callback();\r\n }\r\n }, options.delay);\r\n}\r\n\r\nfunction intersectionObserverFallback(node, delay) {\r\n return new Promise((resolve) => {\r\n const scrollListener = inViewportAndVisible(node, delay, () => {\r\n window.removeEventListener(\"scroll\", scrollListener);\r\n window.removeEventListener(\"resize\", scrollListener);\r\n resolve();\r\n });\r\n window.addEventListener(\"scroll\", scrollListener, false);\r\n window.addEventListener(\"resize\", scrollListener, false);\r\n scrollListener();\r\n });\r\n}\r\n\r\nfunction intersectionViewportObserver(node, options = {}) {\r\n const { checkIsVisible = true, delay = 500, threshold = [0.006] } = options;\r\n\r\n /* istanbul ignore else */\r\n if (\"IntersectionObserver\" in window) {\r\n return new Promise((resolve) => {\r\n const observer = new IntersectionObserver(\r\n (changes) => {\r\n changes.forEach((change) => {\r\n if (change.intersectionRatio > 0) {\r\n resolve();\r\n observer.unobserve(node);\r\n }\r\n });\r\n },\r\n {\r\n threshold,\r\n }\r\n );\r\n observer.observe(node);\r\n });\r\n } else {\r\n return intersectionObserverFallback(node, { delay, checkIsVisible });\r\n }\r\n}\r\n\r\nfunction getTaggingData(node, taggingData) {\r\n const { selectorData, attrData, staticData } = taggingData;\r\n let newTaggingData = {};\r\n selectorData?.forEach((item) => {\r\n let nkey = Object.keys(item)?.[0];\r\n let val = node.querySelector(Object.values(item)?.[0])?.innerText;\r\n newTaggingData[nkey] = val;\r\n newTaggingData = {\r\n ...newTaggingData,\r\n left: parseInt(node.getBoundingClientRect().left),\r\n top: parseInt(node.getBoundingClientRect().top),\r\n };\r\n });\r\n attrData?.forEach((item) => {\r\n if (item.selectorVal && item.attrs) {\r\n const selectedTag = node.querySelector(item.selectorVal);\r\n if (selectedTag) {\r\n Object.keys(item.attrs).forEach((keyValue, index) => {\r\n newTaggingData[keyValue] = selectedTag.getAttribute(\r\n Object.values(item.attrs)[index]\r\n );\r\n });\r\n }\r\n }\r\n });\r\n if (staticData) newTaggingData = { ...newTaggingData, ...staticData };\r\n return newTaggingData;\r\n}\r\n\r\nexport function impressionTagging(selectorClassName, taggingData, eventData) {\r\n const productList = document.querySelectorAll(selectorClassName);\r\n if (productList && productList.length) {\r\n let pushedItemsCounter = 0;\r\n let impressionsList = [];\r\n productList.forEach((node) => {\r\n const newtaggingData = getTaggingData(node, taggingData);\r\n intersectionViewportObserver(node).then(() => {\r\n if (!node.getAttribute(\"impressionAdded\")) {\r\n node.setAttribute(\"impressionAdded\", true);\r\n pushedItemsCounter++;\r\n impressionsList.push(newtaggingData);\r\n if (pushedItemsCounter < 2) {\r\n setTimeout(() => {\r\n if (\r\n impressionsList.length == pushedItemsCounter &&\r\n impressionsList.length\r\n ) {\r\n impressionsList\r\n .sort((a, b) => a.top - b.top || a.left - b.left)\r\n .forEach((el) => {\r\n delete el.left;\r\n delete el.top;\r\n });\r\n window.dataLayer.push({\r\n ...eventData,\r\n ecommerce: {\r\n impressions: impressionsList,\r\n },\r\n });\r\n }\r\n impressionsList = [];\r\n pushedItemsCounter = 0;\r\n }, 500);\r\n }\r\n }\r\n });\r\n });\r\n }\r\n}\r\n","/**\r\n * @class EventDataLayer\r\n * @property {Object} wsf\r\n * @property {Array} globalLayer\r\n */\r\n\r\nimport { impressionTagging } from \"./productImpressions\";\r\nexport default class EventDataLayer {\r\n wsf;\r\n\r\n /**\r\n * Initial global variable declaration\r\n */\r\n static initialiseWsf(window) {\r\n window.wsf = {\r\n AnalyticsVariables: [],\r\n refappStoreFinder: {},\r\n };\r\n }\r\n static initialiseWsfOptions(window) {\r\n window.wsf.options = {};\r\n }\r\n\r\n /**\r\n * Some analytics variables are directly embedded on attributes on elements\r\n * in the DOM, so this method parses the DOM to get those values\r\n */\r\n getDomAnalyticsVariables(attributeIdentifier) {\r\n const analyticsElements = document.querySelectorAll(\r\n `[${attributeIdentifier}]`\r\n );\r\n const domAnalyticsVariables = [];\r\n\r\n for (const element of analyticsElements) {\r\n const values = JSON.parse(\r\n element.attributes[attributeIdentifier].nodeValue\r\n );\r\n domAnalyticsVariables.push(values);\r\n }\r\n return domAnalyticsVariables;\r\n }\r\n\r\n static defaultOptions = {\r\n disabled: false,\r\n blacklistedLocators: [],\r\n domAnalyticsIdentifier: null,\r\n };\r\n\r\n constructor(options = EventDataLayer.defaultOptions) {\r\n this.options = options;\r\n }\r\n\r\n static eventPropertiesReplacer(eventProperties, matchPatterns) {\r\n let eventPropertiesAsString = JSON.stringify(eventProperties);\r\n\r\n for (const [key, replaceValue] of Object.entries(matchPatterns)) {\r\n eventPropertiesAsString = eventPropertiesAsString.replaceAll(\r\n key,\r\n replaceValue\r\n );\r\n }\r\n return JSON.parse(eventPropertiesAsString);\r\n }\r\n\r\n getKeyByValue(object, value) {\r\n return Object.keys(object).find((key) => object[key] === value);\r\n }\r\n\r\n pushToDataLayer(eventProperties) {\r\n const { refappMoreinformation, refappStoreFinder, refappRR, ecommerce } =\r\n this.wsf;\r\n\r\n const matchPatterns = {\r\n \"[product name]\":\r\n refappMoreinformation?.productName?.toLocaleLowerCase() ?? \"\",\r\n \"[product id]\": refappMoreinformation?.productId ?? \"\",\r\n \"[page category]\": refappMoreinformation?.pageCategory ?? \"\",\r\n \"[retailer name]\":\r\n refappMoreinformation?.retailerName?.toLocaleLowerCase() ?? \"\",\r\n\r\n \"[zipcode or city]\":\r\n refappStoreFinder?.zipcodeOrCity?.toLocaleLowerCase() ?? \"\",\r\n \"[marker popup location]\": refappStoreFinder?.markerPopupLocation ?? \"\",\r\n \"[store name]\": refappStoreFinder?.storeName?.toLocaleLowerCase() ?? \"\",\r\n\r\n \"[write review button text]\":\r\n refappRR?.writeReviewButtonText?.toLocaleLowerCase() ?? \"\",\r\n \"[review list sort data]\":\r\n refappRR?.reviewListSortData?.toLocaleLowerCase() ?? \"\",\r\n \"[review list filter star]\": refappRR?.reviewListfilterStar ?? \"\",\r\n \"[review submit overall rating]\":\r\n refappRR?.reviewSubmitOverallRating ?? \"\",\r\n \"[url]\": window?.location?.href ?? \"\",\r\n \"::::\": \"::\",\r\n };\r\n\r\n if (this.getKeyByValue(eventProperties, \"[ecommerce]\") !== undefined) {\r\n eventProperties[this.getKeyByValue(eventProperties, \"[ecommerce]\")] =\r\n ecommerce ? ecommerce : \"\";\r\n }\r\n\r\n if (!window.dataLayer) return false;\r\n\r\n window.dataLayer.push(\r\n EventDataLayer.eventPropertiesReplacer(eventProperties, matchPatterns)\r\n );\r\n return true;\r\n }\r\n\r\n domCssSelector(item, target) {\r\n if (target.matches(item.locatorQuery)) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domClassName(item, className) {\r\n if (\r\n new RegExp(\r\n \"\\\\b\" + item.locatorQuery.toLocaleLowerCase().trim() + \"\\\\b\"\r\n ).test(className.toLocaleLowerCase().trim())\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domTextContent(item, textContent) {\r\n if (\r\n item.locatorQuery.toLocaleLowerCase().trim() ===\r\n textContent.toLocaleLowerCase()\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domTagName(item, tagName) {\r\n if (\r\n item.locatorQuery.toLocaleLowerCase().trim() ===\r\n tagName.toLocaleLowerCase()\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domOuterText(item, outerText) {\r\n if (\r\n item.locatorQuery.toLocaleLowerCase().trim() ===\r\n outerText.toLocaleLowerCase()\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domInnerText(item, innerText) {\r\n if (\r\n item.locatorQuery.toLocaleLowerCase().trim() ===\r\n innerText.toLocaleLowerCase()\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domInnerHTML(item, innerHTML) {\r\n if (\r\n item.locatorQuery.toLocaleLowerCase().trim() ===\r\n innerHTML.toLocaleLowerCase()\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domId(item, ids) {\r\n if (\r\n item.locatorQuery.toLocaleLowerCase().trim() === ids.toLocaleLowerCase()\r\n ) {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domScrollEvent(item) {\r\n if (this.wsf.options.countdown != \"done\") {\r\n this.wsf.options.countdown = \"done\";\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n }\r\n\r\n domFocusEvent() {\r\n this.pushToDataLayer(item.eventProperties);\r\n }\r\n\r\n registerClickEvents(analyticsVariables) {\r\n this.wsf.options.getLocatorQuery =\r\n this.wsf?.options?.getLocatorQuery ?? false;\r\n const elements = document.querySelector(\"body\");\r\n elements.addEventListener(\"click\", (e) => {\r\n let parentClasses = [];\r\n if (e.target.getAttribute(\"data-googletag\") != null) {\r\n if (!window.wsf) {\r\n window.wsf = { refappStoreFinder: {} };\r\n }\r\n delete window.wsf.refappStoreFinder;\r\n window.wsf.refappStoreFinder = {\r\n storeName: e.target.getAttribute(\"data-googletag\"),\r\n };\r\n }\r\n let path = [];\r\n if (e.path == undefined) {\r\n path = e.composedPath && e.composedPath();\r\n } else {\r\n path = e.path;\r\n }\r\n // const path = e.path || (e.composedPath && e.composedPath());\r\n for (const element of path) {\r\n parentClasses.push(element.className);\r\n }\r\n if (this.wsf.options.getLocatorQuery) {\r\n console.table({\r\n ClassName: e.srcElement.className.trim(),\r\n ClassList: parentClasses,\r\n textContent: e.srcElement.textContent.trim(),\r\n tagName: e.srcElement.tagName.trim(),\r\n outerText: e.srcElement.outerText.trim(),\r\n innerText: e.srcElement.innerText.trim(),\r\n innerHTML: e.srcElement.innerHTML.trim(),\r\n id: e.srcElement.id.trim(),\r\n });\r\n }\r\n analyticsVariables.filter((item) => {\r\n if (!item.triggerOnExternalApiResponse) {\r\n switch (item.locatorType) {\r\n case \"cssSelector\":\r\n this.domCssSelector(item, e.target);\r\n break;\r\n case \"className\":\r\n const parentNodeList = [item.locatorQuery].filter((element) =>\r\n parentClasses.includes(element)\r\n );\r\n if (\r\n e.srcElement.hasAttribute(\"class\") &&\r\n item.locatorQuery != parentNodeList[0]\r\n ) {\r\n this.domClassName(item, e.srcElement.className.trim());\r\n } else {\r\n if (item.locatorQuery === parentNodeList[0]) {\r\n this.domClassName(item, item.locatorQuery.trim());\r\n }\r\n }\r\n break;\r\n case \"textContent\":\r\n this.domTextContent(item, e.srcElement.textContent.trim());\r\n break;\r\n case \"tagName\":\r\n this.domTagName(item, e.srcElement.tagName.trim());\r\n break;\r\n case \"outerText\":\r\n this.domOuterText(item, e.srcElement.outerText.trim());\r\n break;\r\n case \"innerText\":\r\n this.domInnerText(item, e.srcElement.innerText.trim());\r\n break;\r\n case \"innerHTML\":\r\n this.domInnerHTML(item, e.srcElement.innerHTML.trim());\r\n break;\r\n case \"id\":\r\n this.domId(item, e.srcElement.id.trim());\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n calculateScrollPercentage(target, childElemHeight) {\r\n try {\r\n if (!target) throw \"scrolling element not found\";\r\n\r\n let bool = target === document;\r\n\r\n let scrollHeight = (() => {\r\n if (bool) return childElemHeight;\r\n return target.scrollHeight;\r\n })();\r\n\r\n if (!scrollHeight) throw \"child element not found\";\r\n\r\n let clientHeight = bool ? window.innerHeight : target.clientHeight;\r\n let scrollTop = bool ? window.scrollY : target.scrollTop;\r\n\r\n let gottaScroll = scrollHeight - clientHeight;\r\n let percentage = Math.ceil((scrollTop / gottaScroll) * 100);\r\n return percentage;\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n }\r\n\r\n countDownTime(eventProperties, self) {\r\n if (\r\n this.wsf.options.countDownSecound ===\r\n parseInt(eventProperties.timeduration) &&\r\n this.wsf.options.countdown != \"done\"\r\n ) {\r\n this.wsf.options.countdown = \"done\";\r\n self.domScrollEvent(eventProperties);\r\n window.clearInterval(this.wsf.options.countDownClearTime);\r\n }\r\n }\r\n\r\n countCalculation(eventProperties, self) {\r\n if (this.wsf.options.countdown != \"done\") {\r\n let counter = parseInt(eventProperties.timeduration);\r\n let newYearCountdown = setInterval(function () {\r\n counter--;\r\n if (counter === 0 && this.wsf.options.countdown != \"done\") {\r\n self.domScrollEvent(eventProperties);\r\n self.wsf.options.countdown = \"done\";\r\n clearInterval(newYearCountdown);\r\n }\r\n }, 1000);\r\n }\r\n }\r\n\r\n isScrollable(element) {\r\n if (\r\n (element.style.overflow !== undefined &&\r\n element.style.overflow !== \"\" &&\r\n (element.style.overflow == \"scroll\" ||\r\n element.style.overflow == \"auto\" ||\r\n element.style.overflowY == \"scroll\" ||\r\n element.style.overflowY == \"auto\")) ||\r\n (element.style.height !== undefined &&\r\n element.style.height !== \"\" &&\r\n element.style.height != \"none\") ||\r\n (element.style.maxHeight !== undefined &&\r\n element.style.maxHeight !== \"\" &&\r\n element.style.maxHeight != \"none\")\r\n ) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n registerScrollEvents(analyticsVariables) {\r\n this.wsf.options.countDownSecound = 0;\r\n this.wsf.options.countdown = \"no\";\r\n this.wsf.options.countDownClearTime = \"\";\r\n this.wsf.options.countdown = \"yes\";\r\n this.wsf.options.countdownSec = this.wsf?.options?.countdownSec ?? 30;\r\n this.wsf.options.pageScrollPercentage = this.wsf?.options?.Percentage ?? 75;\r\n analyticsVariables.filter((item) => {\r\n const elements = document.querySelector(item.locatorQuery);\r\n if (elements != null) {\r\n let childElement = document.querySelector(item.locatorQuery);\r\n if (childElement) {\r\n let childElemHeight = childElement.clientHeight;\r\n if (this.isScrollable(elements)) {\r\n elements.addEventListener(item.domEvent, (e) => {\r\n let scrollPercentage = this.calculateScrollPercentage(\r\n e.target,\r\n childElemHeight\r\n );\r\n this.countCalculation(item, this);\r\n if (\r\n scrollPercentage >=\r\n parseInt(\r\n item.scrollratio && item.scrollratio.length\r\n ? item.scrollratio\r\n : 75\r\n ) &&\r\n this.wsf.options.countdown != \"done\"\r\n ) {\r\n this.domScrollEvent(item);\r\n this.wsf.options.countdown = \"done\";\r\n window.clearInterval(this.wsf.options.countDownClearTime);\r\n }\r\n });\r\n } else {\r\n window.addEventListener(item.domEvent, (e) => {\r\n if (\r\n Math.floor(childElement.getBoundingClientRect().bottom) <=\r\n (document.documentElement.clientHeight ||\r\n window.innerHeight) &&\r\n Math.floor(childElement.getBoundingClientRect().right) <=\r\n (document.documentElement.clientWidth || window.innerWidth) &&\r\n this.wsf.options.countdown != \"done\"\r\n ) {\r\n this.domScrollEvent(item);\r\n this.wsf.options.countdown = \"done\";\r\n window.clearInterval(this.wsf.options.countDownClearTime);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n inViewportAndVisible(node, options, callback) {\r\n return throttle(() => {\r\n if (\r\n (options.checkIsVisible && inViewport(node) && isVisible(node)) ||\r\n (!options.checkIsVisible && inViewport(node))\r\n ) {\r\n callback();\r\n }\r\n }, options.delay);\r\n }\r\n\r\n registerEvents(analyticsVariables) {\r\n const clickAnalyticsVariables = [];\r\n const scrollAnalyticsVariables = [];\r\n const impressionAnalyticsVariables = [];\r\n analyticsVariables.filter((item) => {\r\n switch (item.domEvent) {\r\n case \"click\":\r\n clickAnalyticsVariables.push(item);\r\n break;\r\n case \"scroll\":\r\n scrollAnalyticsVariables.push(item);\r\n break;\r\n case \"focus\":\r\n clickAnalyticsVariables.push(item);\r\n break;\r\n case \"impression\":\r\n impressionAnalyticsVariables.push(item);\r\n window.addEventListener(\"load\", () => {\r\n var firstChild = document.querySelector(item.childSelector);\r\n var containerParent = document.querySelector(item.parentSelector);\r\n if (containerParent && firstChild) {\r\n var productRowsCount = Array.from(\r\n document.querySelectorAll(item.childSelector)\r\n ).length;\r\n impressionTagging(\r\n item.childSelector,\r\n item.taggingData,\r\n item.eventProperties\r\n );\r\n containerParent.addEventListener(\r\n \"DOMSubtreeModified\",\r\n (e) => {\r\n setTimeout(() => {\r\n if (\r\n productRowsCount !=\r\n Array.from(\r\n document.querySelectorAll(item.childSelector)\r\n ).length ||\r\n firstChild !=\r\n document.querySelectorAll(item.childSelector)[0]\r\n ) {\r\n productRowsCount = Array.from(\r\n document.querySelectorAll(item.childSelector)\r\n ).length;\r\n firstChild = document.querySelector(item.childSelector);\r\n impressionTagging(\r\n item.childSelector,\r\n item.taggingData,\r\n item.eventProperties\r\n );\r\n }\r\n }, 500);\r\n },\r\n false\r\n );\r\n }\r\n });\r\n }\r\n });\r\n this.registerClickEvents(clickAnalyticsVariables);\r\n this.registerScrollEvents(scrollAnalyticsVariables);\r\n }\r\n\r\n mount(window) {\r\n if (this.options.disabled) return;\r\n\r\n if (!window.wsf) {\r\n EventDataLayer.initialiseWsf(window);\r\n }\r\n\r\n if (!window.wsf.options) {\r\n EventDataLayer.initialiseWsfOptions(window);\r\n }\r\n\r\n this.wsf = window.wsf;\r\n const { AnalyticsVariables } = this.wsf;\r\n\r\n const domAnalyticsVariables = this.options.domAnalyticsIdentifier\r\n ? this.getDomAnalyticsVariables(this.options.domAnalyticsIdentifier)\r\n : [];\r\n\r\n if (domAnalyticsVariables.length != 0) {\r\n wsf.AnalyticsVariables.push(...domAnalyticsVariables);\r\n }\r\n\r\n const taggingVariables = [...AnalyticsVariables];\r\n\r\n if (taggingVariables.length <= 0) {\r\n return;\r\n }\r\n\r\n // To assign event\r\n window.addEventListener(\r\n \"refapp-ajax-event\",\r\n (evt) => {\r\n let locatorQuery = window.wsf.AnalyticsVariables.find(\r\n (o) => o.locatorQuery === evt.detail\r\n );\r\n if (locatorQuery) {\r\n this.domClassName(locatorQuery, evt.detail);\r\n }\r\n },\r\n false\r\n );\r\n\r\n this.registerEvents(AnalyticsVariables);\r\n }\r\n}\r\n","import EventDataLayer from \"./components/v1/EventDataLayer\";\r\n\r\nconst options = {\r\n disabled: false,\r\n domAnalyticsIdentifier: \"data-analytics\",\r\n domAnalyticsIdentifierClassname: \"class\",\r\n countDownSecound: 0,\r\n blacklistedLocators: [\r\n \"#markerclusterer#\",\r\n \".rfp-rr-most-ratings-list-unlike-datalayer-or\",\r\n \".rfp-rr-most-ratings-list-like-datalayer-or\",\r\n ],\r\n};\r\nconst edl = new EventDataLayer(options);\r\n\r\nedl.mount(window);\r\n"],"names":["root","factory","exports","module","define","amd","self","__webpack_require__","Symbol","toStringTag","Object","defineProperty","value","intersectionObserverFallback","node","delay","Promise","resolve","scrollListener","options","callback","throttle","checkIsVisible","inViewport","isVisible","inViewportAndVisible","window","removeEventListener","addEventListener","impressionTagging","selectorClassName","taggingData","eventData","productList","document","querySelectorAll","length","pushedItemsCounter","impressionsList","forEach","newtaggingData","selectorData","attrData","staticData","newTaggingData","item","nkey","keys","val","querySelector","values","innerText","left","parseInt","getBoundingClientRect","top","selectorVal","attrs","selectedTag","keyValue","index","getAttribute","getTaggingData","threshold","observer","IntersectionObserver","changes","change","intersectionRatio","unobserve","observe","intersectionViewportObserver","then","setAttribute","push","setTimeout","sort","a","b","el","dataLayer","ecommerce","impressions","EventDataLayer","defaultOptions","this","attributeIdentifier","domAnalyticsVariables","element","JSON","parse","attributes","nodeValue","object","find","key","eventProperties","wsf","refappMoreinformation","refappStoreFinder","refappRR","matchPatterns","productName","toLocaleLowerCase","productId","pageCategory","retailerName","zipcodeOrCity","markerPopupLocation","storeName","writeReviewButtonText","reviewListSortData","reviewListfilterStar","reviewSubmitOverallRating","location","href","undefined","getKeyByValue","eventPropertiesReplacer","target","matches","locatorQuery","pushToDataLayer","className","RegExp","trim","test","textContent","tagName","outerText","innerHTML","ids","countdown","analyticsVariables","getLocatorQuery","e","parentClasses","path","composedPath","console","table","ClassName","srcElement","ClassList","id","filter","triggerOnExternalApiResponse","locatorType","domCssSelector","parentNodeList","includes","hasAttribute","domClassName","domTextContent","domTagName","domOuterText","domInnerText","domInnerHTML","domId","childElemHeight","bool","scrollHeight","clientHeight","innerHeight","scrollTop","scrollY","gottaScroll","Math","ceil","err","error","countDownSecound","timeduration","domScrollEvent","clearInterval","countDownClearTime","counter","newYearCountdown","setInterval","style","overflow","overflowY","height","maxHeight","countdownSec","pageScrollPercentage","Percentage","elements","childElement","isScrollable","domEvent","scrollPercentage","calculateScrollPercentage","countCalculation","scrollratio","floor","bottom","documentElement","right","clientWidth","innerWidth","clickAnalyticsVariables","scrollAnalyticsVariables","impressionAnalyticsVariables","firstChild","childSelector","containerParent","parentSelector","productRowsCount","Array","from","registerClickEvents","registerScrollEvents","disabled","initialiseWsf","initialiseWsfOptions","AnalyticsVariables","domAnalyticsIdentifier","getDomAnalyticsVariables","evt","o","detail","registerEvents","eventPropertiesAsString","stringify","entries","replaceValue","replaceAll","blacklistedLocators","domAnalyticsIdentifierClassname","mount"],"sourceRoot":""}