vendor: 4,262 bytes, lines 1-110
1(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){ 2function _OverloadYield(e, d) { 3 this.v = e, this.k = d; 4} 5module.exports = _OverloadYield, module.exports.__esModule = true, module.exports["default"] = module.exports; 6},{}],2:[function(require,module,exports){ 7function asyncGeneratorStep(n, t, e, r, o, a, c) { 8 try { 9 var i = n[a](c), 10 u = i.value; 11 } catch (n) { 12 return void e(n); 13 } 14 i.done ? t(u) : Promise.resolve(u).then(r, o); 15} 16function _asyncToGenerator(n) { 17 return function () { 18 var t = this, 19 e = arguments; 20 return new Promise(function (r, o) { 21 var a = n.apply(t, e); 22 function _next(n) { 23 asyncGeneratorStep(a, r, o, _next, _throw, "next", n); 24 } 25 function _throw(n) { 26 asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); 27 } 28 _next(void 0); 29 }); 30 }; 31} 32module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports; 33},{}],3:[function(require,module,exports){ 34function _interopRequireDefault(e) { 35 return e && e.__esModule ? e : { 36 "default": e 37 }; 38} 39module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports; 40},{}],4:[function(require,module,exports){ 41var regeneratorDefine = require("./regeneratorDefine.js"); 42function _regenerator() { 43 /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ 44 var e, 45 t, 46 r = "function" == typeof Symbol ? Symbol : {}, 47 n = r.iterator || "@@iterator", 48 o = r.toStringTag || "@@toStringTag"; 49 function i(r, n, o, i) { 50 var c = n && n.prototype instanceof Generator ? n : Generator, 51 u = Object.create(c.prototype); 52 return regeneratorDefine(u, "_invoke", function (r, n, o) { 53 var i, 54 c, 55 u, 56 f = 0, 57 p = o || [], 58 y = !1, 59 G = { 60 p: 0, 61 n: 0, 62 v: e, 63 a: d, 64 f: d.bind(e, 4), 65 d: function d(t, r) { 66 return i = t, c = 0, u = e, G.n = r, a; 67 } 68 }; 69 function d(r, n) { 70 for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { 71 var o, 72 i = p[t], 73 d = G.p, 74 l = i[2]; 75 r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); 76 } 77 if (o || r > 1) return a; 78 throw y = !0, n; 79 } 80 return function (o, p, l) { 81 if (f > 1) throw TypeError("Generator is already running"); 82 for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { 83 i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); 84 try { 85 if (f = 2, i) { 86 if (c || (o = "next"), t = i[o]) { 87 if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); 88 if (!t.done) return t; 89 u = t.value, c < 2 && (c = 0); 90 } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); 91 i = e; 92 } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; 93 } catch (t) { 94 i = e, c = 1, u = t; 95 } finally { 96 f = 1; 97 } 98 } 99 return { 100 value: t, 101 done: y 102 }; 103 }; 104 }(r, o, i), !0), u; 105 } 106 var a = {}; 107 function Generator() {} 108 function GeneratorFunction() {} 109 function GeneratorFunctionPrototype() {} 110 t = Object.getPrototypeOf;
vendor: 5,586 bytes, lines 111-244
111 var c = [][n] ? t(t([][n]())) : (regeneratorDefine(t = {}, n, function () { 112 return this; 113 }), t), 114 u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); 115 function f(e) { 116 return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, regeneratorDefine(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; 117 } 118 return GeneratorFunction.prototype = GeneratorFunctionPrototype, regeneratorDefine(u, "constructor", GeneratorFunctionPrototype), regeneratorDefine(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", regeneratorDefine(GeneratorFunctionPrototype, o, "GeneratorFunction"), regeneratorDefine(u), regeneratorDefine(u, o, "Generator"), regeneratorDefine(u, n, function () { 119 return this; 120 }), regeneratorDefine(u, "toString", function () { 121 return "[object Generator]"; 122 }), (module.exports = _regenerator = function _regenerator() { 123 return { 124 w: i, 125 m: f 126 }; 127 }, module.exports.__esModule = true, module.exports["default"] = module.exports)(); 128} 129module.exports = _regenerator, module.exports.__esModule = true, module.exports["default"] = module.exports; 130},{"./regeneratorDefine.js":8}],5:[function(require,module,exports){ 131var regeneratorAsyncGen = require("./regeneratorAsyncGen.js"); 132function _regeneratorAsync(n, e, r, t, o) { 133 var a = regeneratorAsyncGen(n, e, r, t, o); 134 return a.next().then(function (n) { 135 return n.done ? n.value : a.next(); 136 }); 137} 138module.exports = _regeneratorAsync, module.exports.__esModule = true, module.exports["default"] = module.exports; 139},{"./regeneratorAsyncGen.js":6}],6:[function(require,module,exports){ 140var regenerator = require("./regenerator.js"); 141var regeneratorAsyncIterator = require("./regeneratorAsyncIterator.js"); 142function _regeneratorAsyncGen(r, e, t, o, n) { 143 return new regeneratorAsyncIterator(regenerator().w(r, e, t, o), n || Promise); 144} 145module.exports = _regeneratorAsyncGen, module.exports.__esModule = true, module.exports["default"] = module.exports; 146},{"./regenerator.js":4,"./regeneratorAsyncIterator.js":7}],7:[function(require,module,exports){ 147var OverloadYield = require("./OverloadYield.js"); 148var regeneratorDefine = require("./regeneratorDefine.js"); 149function AsyncIterator(t, e) { 150 function n(r, o, i, f) { 151 try { 152 var c = t[r](o), 153 u = c.value; 154 return u instanceof OverloadYield ? e.resolve(u.v).then(function (t) { 155 n("next", t, i, f); 156 }, function (t) { 157 n("throw", t, i, f); 158 }) : e.resolve(u).then(function (t) { 159 c.value = t, i(c); 160 }, function (t) { 161 return n("throw", t, i, f); 162 }); 163 } catch (t) { 164 f(t); 165 } 166 } 167 var r; 168 this.next || (regeneratorDefine(AsyncIterator.prototype), regeneratorDefine(AsyncIterator.prototype, "function" == typeof Symbol && Symbol.asyncIterator || "@asyncIterator", function () { 169 return this; 170 })), regeneratorDefine(this, "_invoke", function (t, o, i) { 171 function f() { 172 return new e(function (e, r) { 173 n(t, i, e, r); 174 }); 175 } 176 return r = r ? r.then(f, f) : f(); 177 }, !0); 178} 179module.exports = AsyncIterator, module.exports.__esModule = true, module.exports["default"] = module.exports; 180},{"./OverloadYield.js":1,"./regeneratorDefine.js":8}],8:[function(require,module,exports){ 181function _regeneratorDefine(e, r, n, t) { 182 var i = Object.defineProperty; 183 try { 184 i({}, "", {}); 185 } catch (e) { 186 i = 0; 187 } 188 module.exports = _regeneratorDefine = function regeneratorDefine(e, r, n, t) { 189 function o(r, n) { 190 _regeneratorDefine(e, r, function (e) { 191 return this._invoke(r, n, e); 192 }); 193 } 194 r ? i ? i(e, r, { 195 value: n, 196 enumerable: !t, 197 configurable: !t, 198 writable: !t 199 }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); 200 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _regeneratorDefine(e, r, n, t); 201} 202module.exports = _regeneratorDefine, module.exports.__esModule = true, module.exports["default"] = module.exports; 203},{}],9:[function(require,module,exports){ 204function _regeneratorKeys(e) { 205 var n = Object(e), 206 r = []; 207 for (var t in n) r.unshift(t); 208 return function e() { 209 for (; r.length;) if ((t = r.pop()) in n) return e.value = t, e.done = !1, e; 210 return e.done = !0, e; 211 }; 212} 213module.exports = _regeneratorKeys, module.exports.__esModule = true, module.exports["default"] = module.exports; 214},{}],10:[function(require,module,exports){ 215var OverloadYield = require("./OverloadYield.js"); 216var regenerator = require("./regenerator.js"); 217var regeneratorAsync = require("./regeneratorAsync.js"); 218var regeneratorAsyncGen = require("./regeneratorAsyncGen.js"); 219var regeneratorAsyncIterator = require("./regeneratorAsyncIterator.js"); 220var regeneratorKeys = require("./regeneratorKeys.js"); 221var regeneratorValues = require("./regeneratorValues.js"); 222function _regeneratorRuntime() { 223 "use strict"; 224 225 var r = regenerator(), 226 e = r.m(_regeneratorRuntime), 227 t = (Object.getPrototypeOf ? Object.getPrototypeOf(e) : e.__proto__).constructor; 228 function n(r) { 229 var e = "function" == typeof r && r.constructor; 230 return !!e && (e === t || "GeneratorFunction" === (e.displayName || e.name)); 231 } 232 var o = { 233 "throw": 1, 234 "return": 2, 235 "break": 3, 236 "continue": 3 237 }; 238 function a(r) { 239 var e, t; 240 return function (n) { 241 e || (e = { 242 stop: function stop() { 243 return t(n.a, 2); 244 },
245 "catch": function _catch() { 246 return n.v; 247 }, 248 abrupt: function abrupt(r, e) { 249 return t(n.a, o[r], e); 250 }, 251 delegateYield: function delegateYield(r, o, a) { 252 return e.resultName = o, t(n.d, regeneratorValues(r), a); 253 }, 254 finish: function finish(r) { 255 return t(n.f, r); 256 } 257 }, t = function t(r, _t, o) { 258 n.p = e.prev, n.n = e.next; 259 try { 260 return r(_t, o); 261 } finally { 262 e.next = n.n; 263 } 264 }), e.resultName && (e[e.resultName] = n.v, e.resultName = void 0), e.sent = n.v, e.next = n.n; 265 try { 266 return r.call(this, e); 267 } finally { 268 n.p = e.prev, n.n = e.next; 269 } 270 }; 271 } 272 return (module.exports = _regeneratorRuntime = function _regeneratorRuntime() { 273 return { 274 wrap: function wrap(e, t, n, o) { 275 return r.w(a(e), t, n, o && o.reverse()); 276 }, 277 isGeneratorFunction: n, 278 mark: r.m, 279 awrap: function awrap(r, e) { 280 return new OverloadYield(r, e); 281 }, 282 AsyncIterator: regeneratorAsyncIterator, 283 async: function async(r, e, t, o, u) { 284 return (n(e) ? regeneratorAsyncGen : regeneratorAsync)(a(r), e, t, o, u); 285 }, 286 keys: regeneratorKeys, 287 values: regeneratorValues 288 }; 289 }, module.exports.__esModule = true, module.exports["default"] = module.exports)(); 290} 291module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports; 292},{"./OverloadYield.js":1,"./regenerator.js":4,"./regeneratorAsync.js":5,"./regeneratorAsyncGen.js":6,"./regeneratorAsyncIterator.js":7,"./regeneratorKeys.js":9,"./regeneratorValues.js":11}],11:[function(require,module,exports){ 293var _typeof = require("./typeof.js")["default"]; 294function _regeneratorValues(e) { 295 if (null != e) { 296 var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"], 297 r = 0; 298 if (t) return t.call(e); 299 if ("function" == typeof e.next) return e; 300 if (!isNaN(e.length)) return { 301 next: function next() { 302 return e && r >= e.length && (e = void 0), { 303 value: e && e[r++], 304 done: !e 305 }; 306 } 307 }; 308 } 309 throw new TypeError(_typeof(e) + " is not iterable"); 310} 311module.exports = _regeneratorValues, module.exports.__esModule = true, module.exports["default"] = module.exports; 312},{"./typeof.js":12}],12:[function(require,module,exports){ 313function _typeof(o) { 314 "@babel/helpers - typeof"; 315 316 return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { 317 return typeof o; 318 } : function (o) { 319 return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; 320 }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o); 321} 322module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports; 323},{}],13:[function(require,module,exports){ 324// TODO(Babel 8): Remove this file. 325 326var runtime = require("../helpers/regeneratorRuntime")(); 327module.exports = runtime; 328 329// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736= 330try { 331 regeneratorRuntime = runtime; 332} catch (accidentalStrictMode) { 333 if (typeof globalThis === "object") { 334 globalThis.regeneratorRuntime = runtime; 335 } else { 336 Function("r", "regeneratorRuntime = r")(runtime); 337 } 338} 339 340},{"../helpers/regeneratorRuntime":10}],14:[function(require,module,exports){ 341/** 342 * @category Cookies 343 * @summary Get the cookie value based on name. 344 * @tutorial 03_Usage 345 * 346 * @description 347 * This Method will return a string value matching the name of the cookie store 348 * @memberOf ILMN 349 * @module getCookie 350 * @exports getCookie 351 * @param {string} name - the name of the cookie 352 * @returns {string} Cookie value 353 * @example 354 * // given that you have a cookie called 'ILMN_PrefSegement' with the value of 'cancer_research' 355 * getCookie('ILMN_PrefSegment') 356 * // => 'cancer_research' 357 */ 358 359function getCookie(cname) { 360 var name = cname + "="; 361 var ca = document.cookie.split(';'); 362 for (var i = 0; i < ca.length; i++) { 363 var c = ca[i]; 364 while (c.charAt(0) == ' ') { 365 c = c.substring(1); 366 } 367 if (c.indexOf(name) == 0) {
368 try { 369 return decodeURIComponent(c.substring(name.length, c.length)); 370 } catch(e) { 371 return c.substring(name.length, c.length); 372 } 373 } 374 } 375 return ""; 376} 377 378module.exports = getCookie; 379},{}],15:[function(require,module,exports){ 380"use strict"; 381 382Object.defineProperty(exports, "__esModule", { 383 value: true 384}); 385exports.debounce = debounce; 386exports.getScrollBarWidth = getScrollBarWidth; 387exports.isMobileDevice = isMobileDevice; 388exports.mediaQueryLg = mediaQueryLg; 389exports.mediaQuerySm = mediaQuerySm; 390exports.round10 = round10; 391exports.safeJsonParse = safeJsonParse; 392exports.smoothScroll = smoothScroll; 393exports.throttle = throttle; 394function isMobileDevice() { 395 return window.matchMedia('only screen and (max-width: 768px)').matches; 396} // TODO: Comment-we should revisit this function to determine whether max-width should 767px or 768px 397 398function mediaQuerySm() { 399 return window.matchMedia('only screen and (max-width: 767px)').matches; 400} 401function mediaQueryLg() { 402 return window.matchMedia('only screen and (max-width: 1023px)').matches; 403} 404function debounce(func, delay) { 405 var timer; 406 return function () { 407 var _this = this; 408 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { 409 args[_key] = arguments[_key]; 410 } 411 clearTimeout(timer); 412 timer = setTimeout(function () { 413 func.apply(_this, args); 414 }, delay); 415 }; 416} 417function throttle(func, delay) { 418 var timerFlag = null; 419 return function () { 420 if (timerFlag === null) { 421 func.apply(void 0, arguments); 422 timerFlag = setTimeout(function () { 423 timerFlag = null; 424 }, delay); 425 } 426 }; 427} 428function round10(x) { 429 return x % 10 >= 5 ? Math.trunc(x / 10) * 10 + 10 : Math.trunc(x / 10) * 10; 430} 431function safeJsonParse(jsonString) { 432 var parsedData = null; 433 try { 434 parsedData = JSON.parse(jsonString); 435 } catch (_unused) { 436 console.log('Unable to parse JSON string'); 437 } 438 return parsedData || {}; 439} 440 441// src: adapted from a couple SO posts, which were based on a blog post. Bootstrap 4 uses the same general approach 442function getScrollBarWidth() { 443 var inner = document.createElement('p'); 444 var outer = document.createElement('div'); 445 inner.cssText = "\n width: 100%;\n height: 100%;\n "; 446 outer.cssText = "\n position: absolute;\n top: 0px;\n left: 0px;\n visibility: hidden;\n width: 100px;\n height: 100px;\n overflow: hidden;\n "; 447 outer.appendChild(inner); 448 document.body.appendChild(outer); 449 var fullWidth = inner.offsetWidth; 450 outer.style.overflow = 'scroll'; 451 var scrollWidth = inner.offsetWidth; 452 if (fullWidth === scrollWidth) { 453 scrollWidth = outer.clientWidth; 454 } 455 document.body.removeChild(outer); 456 return "".concat(fullWidth - scrollWidth, "px"); 457} 458function smoothScroll(element, offset, callback) { 459 if (!element) { 460 return; 461 } 462 var scrollOffset = offset ? parseInt(offset, 10) : 0; 463 var scrollCallback = typeof callback === 'function' ? callback : null; 464 var debounceFn; 465 var elementPosition = Math.floor(element.getBoundingClientRect().top + window.scrollY - scrollOffset); 466 var lowestScrollPosition = document.body.scrollHeight - window.innerHeight; 467 var scrollDestination = elementPosition <= lowestScrollPosition ? elementPosition : lowestScrollPosition; 468 var onScroll = function onScroll() { 469 var scrollTop = window.scrollY || window.pageYOffset; 470 if (scrollTop >= scrollDestination) { 471 if (scrollCallback) { 472 scrollCallback(); 473 } 474 window.removeEventListener('scroll', debounceFn); 475 } 476 }; 477 debounceFn = debounce(onScroll, 250); 478 window.addEventListener('scroll', debounceFn); 479 window.scrollTo({ 480 top: scrollDestination, 481 behavior: 'smooth' 482 }); 483} 484 485},{}],16:[function(require,module,exports){ 486"use strict"; 487 488Object.defineProperty(exports, "__esModule", { 489 value: true 490}); 491exports.handleFilterClick = handleFilterClick; 492exports.isSearchIncludedElement = isSearchIncludedElement; 493exports.searchAnalytics = searchAnalytics; 494var _commonUtils = require("../../../acdl/js/handlers/commonUtils.js"); 495var _linkData = require("../../../acdl/js/dataObject/linkData"); 496var _searchActionEvent = require("../../../acdl/js/pageAction/searchActionEvent"); 497var _searchUtils = require("../../../acdl/js/handlers/searchUtils.js");
498function searchAnalytics() { 499 var filterArea = document.querySelector('.radio-list'); 500 if (filterArea) { 501 filterArea.addEventListener('click', handleFilterClick); 502 } 503} 504function handleFilterClick(event) { 505 var targetNode = event.target; 506 if (targetNode.nodeName.toLowerCase() === 'input' && isSearchIncludedElement(targetNode)) { 507 var filterLabel = (0, _commonUtils.getLowerCase)(targetNode.parentElement.innerText.trim()); 508 var linkContent = (0, _linkData.setLinkData)(filterLabel, "other", "search_results", null); 509 var searchDetails = (0, _searchUtils.getSearchDataParams)("click"); 510 var dataLayerJson = (0, _searchActionEvent.searchSubmitActionEvent)(linkContent, searchDetails, 'click'); 511 (0, _searchUtils.pushToDataLayerAfterSearchCompletion)(dataLayerJson); 512 } 513} 514function isSearchIncludedElement(target) { 515 if (target.closest('.ilmn-global-search__input-group') && target.classList.contains('btn-primary')) { 516 return true; 517 } else if (target.closest('.facet-list') && target.closest('.search-facet')) { 518 return true; 519 } else if (((0, _commonUtils.getLowerCase)(target.nodeName) === 'b' || (0, _commonUtils.getLowerCase)(target.nodeName) === 'a') && target.closest('.tt-topresults')) { 520 return true; 521 } else if (target.classList.contains('pagin')) { 522 return true; 523 } else if (((0, _commonUtils.getLowerCase)(target.nodeName) === 'b' || (0, _commonUtils.getLowerCase)(target.nodeName) === 'a') && target.closest('.results-title')) { 524 return true; 525 } 526 return false; // Return false if none of the conditions match 527} 528 529},{"../../../acdl/js/dataObject/linkData":22,"../../../acdl/js/handlers/commonUtils.js":29,"../../../acdl/js/handlers/searchUtils.js":38,"../../../acdl/js/pageAction/searchActionEvent":41}],17:[function(require,module,exports){ 530"use strict"; 531 532Object.defineProperty(exports, "__esModule", { 533 value: true 534}); 535exports.getProductSubmitDataLayerObject = getProductSubmitDataLayerObject; 536exports.productSearchAnalytics = productSearchAnalytics; 537var _commonUtils = require("../../../acdl/js/handlers/commonUtils"); 538var _linkData = require("../../../acdl/js/dataObject/linkData"); 539var _searchActionEvent = require("../../../acdl/js/pageAction/searchActionEvent"); 540var _searchUtils = require("../../../acdl/js/handlers/searchUtils"); 541function productSearchAnalytics() { 542 var searchSubmitElement = document.querySelector("#search-products-form"); 543 if (searchSubmitElement) { 544 searchSubmitElement.addEventListener("click", function (event) { 545 if ((0, _commonUtils.isClickable)(event)) { 546 getProductSubmitDataLayerObject(event); 547 } 548 }, false); 549 } 550} 551function getProductSubmitDataLayerObject() { 552 var linkData = (0, _linkData.setLinkData)("search", "other", "search", null); 553 var searchDetails = (0, _searchUtils.getSearchDataParams)("submit"); 554 if (window.sessionStorage.getItem('fromProductPage') !== 'true') { 555 window.sessionStorage.setItem('fromProductPage', 'true'); 556 } else if (window.sessionStorage.getItem('fromProductPage') === 'true') { 557 window.sessionStorage.setItem('fromProductPage', 'false'); 558 } 559 var domEventType = "submit"; 560 var dataLayerJson = (0, _searchActionEvent.searchSubmitActionEvent)(linkData, searchDetails, domEventType); 561 return dataLayerJson; 562} 563 564},{"../../../acdl/js/dataObject/linkData":22,"../../../acdl/js/handlers/commonUtils":29,"../../../acdl/js/handlers/searchUtils":38,"../../../acdl/js/pageAction/searchActionEvent":41}],18:[function(require,module,exports){ 565"use strict"; 566 567Object.defineProperty(exports, "__esModule", { 568 value: true 569}); 570exports.addSearchResultForClick = void 0; 571exports.pushSearchSubmitDataLayerObject = pushSearchSubmitDataLayerObject; 572exports.searchSubmitAnalytics = searchSubmitAnalytics; 573var _searchUtils = require("../../../acdl/js/handlers/searchUtils"); 574var _commonUtils = require("../../../acdl/js/handlers/commonUtils"); 575var _linkUtils = require("../../../acdl/js/handlers/linkUtils"); 576var _searchActionEvent = require("../../../acdl/js/pageAction/searchActionEvent"); 577var _pushToDataLayer = require("../../../acdl/js/handlers/pushToDataLayer"); 578// Constants 579var EVENT_CLICK = 'click'; 580var EVENT_SUBMIT = 'submit'; 581var SEARCH = "search"; 582function searchSubmitAnalytics() { 583 var searchElementBtn = document.querySelector(".ilmn-global-search__input-group"); 584 var searchResultElement = document.querySelector(".site-search-results"); 585 var searchResultPagination = document.querySelector(".pagination"); 586 if (searchElementBtn) { 587 (0, _searchUtils.setClickEvent)(searchElementBtn); 588 searchElementBtn.addEventListener("keydown", handleSearchKeydown, false); 589 } 590 if (searchResultElement) { 591 (0, _searchUtils.setClickEvent)(searchResultElement); 592 } 593 if (searchResultPagination) { 594 (0, _searchUtils.setClickEvent)(searchResultPagination); 595 } 596} 597function handleSearchKeydown(event) { 598 if ((0, _commonUtils.getLowerCase)(event.key) === "enter") { 599 pushSearchSubmitDataLayerObject(event); 600 } 601} 602function pushSearchSubmitDataLayerObject(event) { 603 var searchDetails = (0, _searchUtils.getSearchDataParams)(EVENT_SUBMIT); 604 searchDetails.searchFormName = 'site search'; 605 searchDetails.searchKeywordSuggested = null; 606 var linkData = setSearchDetailsSubmitType(searchDetails, event); 607 var getSearchKeywordSuggested = window.sessionStorage.getItem('searchKeywordSuggested'); 608 if (getSearchKeywordSuggested !== null) { 609 searchDetails.searchKeywordSuggested = getSearchKeywordSuggested; 610 searchDetails.searchSubmitType = EVENT_CLICK; 611 if (searchDetails.searchKeyword === null) { 612 searchDetails.searchKeyword = getSearchKeywordSuggested; 613 } 614 window.sessionStorage.removeItem(getSearchKeywordSuggested); 615 } 616 var domEventType = EVENT_CLICK; 617 if (event.type === 'keydown') { 618 domEventType = EVENT_SUBMIT; 619 } 620 setSearchDetailsQuickLinks(event, searchDetails, domEventType, linkData); 621 var dataLayerJson = (0, _searchActionEvent.searchSubmitActionEvent)(linkData, searchDetails, domEventType); 622 if (event.target.closest('.results-title')) { 623 dataLayerJson.event = 'searchResultLinkAction'; 624 if (event.target.closest('.site-search-results') && event.target.closest('.result')) { 625 dataLayerJson.searchDetails.searchResultNumber = (Array.prototype.indexOf.call(event.target.closest('.site-search-results').children, event.target.closest('.result')) + 1).toString(); 626 } 627 } 628 if (event.target.classList.contains('pagin')) { 629 dataLayerJson.event = 'searchResultLinkAction'; 630 searchDetails.searchSubmitType = EVENT_CLICK; 631 } 632 if (dataLayerJson.searchDetails.searchResultNumber) { 633 addSearchResultForClick(dataLayerJson); 634 (0, _pushToDataLayer.pushToDataLayer)(dataLayerJson); 635 } else { 636 (0, _searchUtils.pushToDataLayerAfterSearchCompletion)(dataLayerJson); 637 } 638} 639function setSearchDetailsSubmitType(searchDetails, event) { 640 var target = event.target, 641 type = event.type, 642 key = event.key; 643 var elementName = target.nodeName.toLowerCase(); 644 var isParentLink = target.parentElement.nodeName === "A"; 645 var linkData = null; 646 if (isParentLink && elementName !== "a") { 647 linkData = (0, _linkUtils.createLinkData)(target.parentElement, SEARCH); 648 searchDetails.searchSubmitType = EVENT_CLICK; 649 return linkData; 650 } else if (elementName === "a") { 651 var closestPagination = target.closest('.pagination'); 652 linkData = closestPagination ? (0, _linkUtils.createLinkDataForPagination)(target, SEARCH) : (0, _linkUtils.createLinkData)(target, SEARCH); 653 searchDetails.searchSubmitType = EVENT_CLICK; 654 return linkData; 655 } else { 656 linkData = (0, _linkUtils.createLinkDataForButton)(target, SEARCH); 657 searchDetails.searchSubmitType = type === EVENT_CLICK ? EVENT_CLICK : key.toLowerCase() === "enter" ? "enter" : ""; 658 return linkData; 659 } 660} 661function setSearchDetailsQuickLinks(event, searchDetails, domEventType, linkData) { 662 if (event.target.closest('.tt-topresults')) { 663 searchDetails.searchFormName = 'quick links'; 664 var parentListItem = event.target.parentElement; 665 if (parentListItem && parentListItem.parentElement) { 666 searchDetails.searchResultNumber = (Array.prototype.indexOf.call(parentListItem.parentElement.children, parentListItem) + 1).toString(); 667 } 668 searchDetails.searchResultTitle = linkData.linkContent || null; 669 if (searchDetails.searchKeyword === null) { 670 searchDetails.searchKeyword = document.querySelectorAll('.ilmn-global-search__input')[1].value; 671 } 672 } 673} 674var addSearchResultForClick = exports.addSearchResultForClick = function addSearchResultForClick(dataLayerJson) { 675 if (window.sessionStorage.getItem("searchNumberOfResults") !== undefined) { 676 dataLayerJson.searchDetails.searchNumberOfResults = window.sessionStorage.getItem("searchNumberOfResults"); 677 } 678 (0, _searchUtils.setSearchPagination)(dataLayerJson); 679 return dataLayerJson; 680}; 681 682},{"../../../acdl/js/handlers/commonUtils":29,"../../../acdl/js/handlers/linkUtils":34,"../../../acdl/js/handlers/pushToDataLayer":37,"../../../acdl/js/handlers/searchUtils":38,"../../../acdl/js/pageAction/searchActionEvent":41}],19:[function(require,module,exports){ 683"use strict"; 684 685Object.defineProperty(exports, "__esModule", { 686 value: true 687});
688exports.getSupportSubmitDataLayerObject = getSupportSubmitDataLayerObject; 689exports.supportSearchAnalytics = supportSearchAnalytics; 690var _commonUtils = require("../../../acdl/js/handlers/commonUtils"); 691var _linkData = require("../../../acdl/js/dataObject/linkData"); 692var _searchActionEvent = require("../../../acdl/js/pageAction/searchActionEvent"); 693var _searchUtils = require("../../../acdl/js/handlers/searchUtils"); 694function supportSearchAnalytics() { 695 var searchSubmitElement = document.querySelector("#search-support-form"); 696 if (searchSubmitElement) { 697 searchSubmitElement.addEventListener("click", function (event) { 698 if ((0, _commonUtils.isClickable)(event)) { 699 getSupportSubmitDataLayerObject(event); 700 } 701 }, false); 702 } 703} 704function getSupportSubmitDataLayerObject() { 705 var linkData = (0, _linkData.setLinkData)("search", "other", "search", null); 706 var searchDetails = (0, _searchUtils.getSearchDataParams)('submit'); 707 var domEventType = "submit"; 708 var dataLayerJson = (0, _searchActionEvent.searchSubmitActionEvent)(linkData, searchDetails, domEventType); 709 return dataLayerJson; 710} 711 712},{"../../../acdl/js/dataObject/linkData":22,"../../../acdl/js/handlers/commonUtils":29,"../../../acdl/js/handlers/searchUtils":38,"../../../acdl/js/pageAction/searchActionEvent":41}],20:[function(require,module,exports){ 713module.exports={ 714 "us": "uscan", "ca": "uscan", "um": "uscan", 715 "cn": "china", "hk": "china", "mo": "china", "tw": "china", 716 "au": "apac", "cx": "apac", "cc": "apac", "ck": "apac", "fj": "apac", "pf": "apac", "hm": "apac", 717 "ki": "apac", "nr": "apac", "nc": "apac", "nz": "apac", "nu": "apac", "nf": "apac", "ws": "apac", 718 "tk": "apac", "to": "apac", "tv": "apac", "vu": "apac", "wf": "apac", "jp": "apac", "bd": "apac", 719 "bt": "apac", "bn": "apac", "kh": "apac", "in": "apac", "id": "apac", "la": "apac", "my": "apac", 720 "mv": "apac", "mh": "apac", "fm": "apac", "mn": "apac", "mm": "apac", "np": "apac", "kp": "apac", 721 "mp": "apac", "pw": "apac", "pg": "apac", "ph": "apac", "sg": "apac", "sb": "apac", "kr": "apac", 722 "lk": "apac", "th": "apac", "tl": "apac", "vn": "apac", 723 "al": "emeala", "at": "emeala", "ba": "emeala", "bg": "emeala", "cz": "emeala", "ee": "emeala", 724 "ge": "emeala", "hu": "emeala", "xk": "emeala", "lv": "emeala", "li": "emeala", "lt": "emeala", 725 "mk": "emeala", "md": "emeala", "me": "emeala", "pl": "emeala", "ro": "emeala", "rs": "emeala", 726 "sk": "emeala", "ch": "emeala", "ua": "emeala", "fr": "emeala", "gf": "emeala", "tf": "emeala", 727 "gp": "emeala", "mq": "emeala", "yt": "emeala", "mc": "emeala", "re": "emeala", "pm": "emeala", 728 "de": "emeala", "ad": "emeala", "ag": "emeala", "ar": "emeala", "aw": "emeala", "bs": "emeala", 729 "bb": "emeala", "bz": "emeala", "bo": "emeala", "br": "emeala", "ic": "emeala", "ky": "emeala", 730 "cl": "emeala", "co": "emeala", "cr": "emeala", "hr": "emeala", "cu": "emeala", "cy": "emeala", 731 "dm": "emeala", "do": "emeala", "ec": "emeala", "sv": "emeala", "gr": "emeala", "gd": "emeala", 732 "gt": "emeala", "gy": "emeala", "ht": "emeala", "hn": "emeala", "il": "emeala", "it": "emeala", 733 "jm": "emeala", "mt": "emeala", "mx": "emeala", "ni": "emeala", "ps": "emeala", "pa": "emeala", 734 "py": "emeala", "pe": "emeala", "pt": "emeala", "kn": "emeala", "sm": "emeala", "si": "emeala", 735 "es": "emeala", "lc": "emeala", "vc": "emeala", "sr": "emeala", "tt": "emeala", "tc": "emeala", 736 "uy": "emeala", "va": "emeala", "ve": "emeala", "af": "emeala", "dz": "emeala", "ao": "emeala", 737 "am": "emeala", "az": "emeala", "bh": "emeala", "by": "emeala", "bj": "emeala", "bw": "emeala", 738 "bf": "emeala", "bi": "emeala", "cm": "emeala", "cv": "emeala", "cf": "emeala", "td": "emeala", 739 "km": "emeala", "ci": "emeala", "cd": "emeala", "dj": "emeala", "eg": "emeala", "gq": "emeala", 740 "er": "emeala", "et": "emeala", "ga": "emeala", "gm": "emeala", "gh": "emeala", "gn": "emeala", 741 "gw": "emeala", "ir": "emeala", "iq": "emeala", "jo": "emeala", "kz": "emeala", "ke": "emeala", 742 "kw": "emeala", "kg": "emeala", "lb": "emeala", "ls": "emeala", "lr": "emeala", "ly": "emeala", 743 "mg": "emeala", "mw": "emeala", "ml": "emeala", "mr": "emeala", "mu": "emeala", "ma": "emeala", 744 "mz": "emeala", "na": "emeala", "ne": "emeala", "ng": "emeala", "om": "emeala", "pk": "emeala", 745 "qa": "emeala", "cg": "emeala", "ru": "emeala", "rw": "emeala", "sh": "emeala", "st": "emeala", 746 "sa": "emeala", "sn": "emeala", "sc": "emeala", "sl": "emeala", "so": "emeala", "za": "emeala", 747 "ss": "emeala", "sd": "emeala", "sz": "emeala", "sy": "emeala", "tr": "emeala", "tj": "emeala", 748 "tz": "emeala", "tg": "emeala", "tn": "emeala", "tm": "emeala", "ug": "emeala", "ae": "emeala", 749 "uz": "emeala", "eh": "emeala", "ye": "emeala", "zm": "emeala", "zw": "emeala", "aq": "emeala", 750 "im": "emeala", "be": "emeala", "bq": "emeala", "bv": "emeala", "cw": "emeala", "dk": "emeala", 751 "fo": "emeala", "fi": "emeala", "gl": "emeala", "is": "emeala", "lu": "emeala", "nl": "emeala", 752 "no": "emeala", "sx": "emeala", "mf": "emeala", "sj": "emeala", "se": "emeala", "ai": "emeala", 753 "bm": "emeala", "vg": "emeala", "fk": "emeala", "gi": "emeala", "gg": "emeala", "ie": "emeala", 754 "je": "emeala", "ms": "emeala", "pn": "emeala", "gs": "emeala", "gb": "emeala" 755} 756},{}],21:[function(require,module,exports){ 757"use strict"; 758 759var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 760Object.defineProperty(exports, "__esModule", { 761 value: true 762}); 763exports.default = void 0; 764var _commonUtils = require("../handlers/commonUtils"); 765var _getCookie = _interopRequireDefault(require("ilmn/getCookie")); 766var campaignDataObj = function campaignDataObj() { 767 var campaignObject = {}; 768 var queryParams = (0, _commonUtils.getQueryParameters)(); 769 var catt = queryParams.catt === null ? (0, _getCookie.default)('ILMNSessionCampaign') ? JSON.parse((0, _getCookie.default)('ILMNSessionCampaign')).catt : null : queryParams.catt; 770 var media = queryParams.media === null ? (0, _getCookie.default)('ILMNSessionCampaign') ? JSON.parse((0, _getCookie.default)('ILMNSessionCampaign')).media : null : queryParams.media; 771 if (catt) { 772 campaignObject.catt = (0, _commonUtils.getLowerCase)(catt); 773 } 774 if (media) { 775 campaignObject.media = (0, _commonUtils.getLowerCase)(media); 776 } 777 return campaignObject; 778}; 779var _default = exports.default = campaignDataObj; 780 781},{"../handlers/commonUtils":29,"@babel/runtime/helpers/interopRequireDefault":3,"ilmn/getCookie":14}],22:[function(require,module,exports){ 782"use strict"; 783 784Object.defineProperty(exports, "__esModule", { 785 value: true 786}); 787exports.getLinkType = getLinkType; 788exports.setLinkData = setLinkData; 789var _commonUtils = require("../handlers/commonUtils"); 790function setLinkData(linkContent, linkType, linkRegion, linkURL, gatedContent) { 791 var linkDataObj = { 792 'linkContent': (0, _commonUtils.getLowerCase)(linkContent) || null, 793 'linkType': linkType || null, 794 'linkRegion': linkRegion || null, 795 'linkURL': linkURL || null, 796 'gatedContent': gatedContent || null 797 }; 798 return linkDataObj; 799} 800function getLinkType(linkURL) { 801 var regex = /\.(exe|zip|wav|mp3|mp4|mov|mpg|avi|wmv|pdf|doc|docx|xl
801s|xlsx|ppt|pptx|bam|fastq|csv|txt|msi|rpm|bed|tar|gz|bz2|xml|egt|ics)$/i; 802 var internalDomain = ['illumina.com', 'illumina.webex.com', 'understandyourgenome.com', 'eventregistration.illumina.com', '/content/illumina-marketing/', '/content/illumina-support/', '/content/dam/illumina-marketing/', '/content/dam/illumina-support/']; 803 if (regex.exec(linkURL)) { 804 return 'download'; 805 } else if (internalDomain.some(function (x) { 806 return linkURL.includes(x); 807 }) || linkURL.startsWith('/') || linkURL.startsWith('#')) { 808 return 'other'; 809 } else { 810 return 'exit'; 811 } 812} 813 814},{"../handlers/commonUtils":29}],23:[function(require,module,exports){ 815"use strict"; 816 817Object.defineProperty(exports, "__esModule", { 818 value: true 819}); 820exports.default = void 0; 821var _commonUtils = require("../handlers/commonUtils"); 822// eslint-disable-next-line complexity 823var pageObject = function pageObject() { 824 var pageObj = {}; 825 var regionTag = document.querySelector('meta[name="region"]'); 826 var localeTag = document.querySelector('meta[name="locale"]'); 827 var entityIdTag = document.querySelector('meta[name="entityId"]'); 828 var pageTemplateTag = document.querySelector('meta[name="pageTemplate"]'); 829 var siteBreadCrumbTag = document.querySelector('meta[name="siteBreadCrumb"]'); 830 var pageTypeTag = document.querySelector('meta[name="pageType"]'); 831 var siteIdTag = document.querySelector('meta[name="siteId"]'); 832 var siteSectionTag = document.querySelector('meta[name="siteSection"]'); 833 var siteRegion = regionTag ? regionTag.content : null; 834 var locale = localeTag ? localeTag.content : null; 835 var entityId = entityIdTag ? entityIdTag.content : null; 836 var pageTemplate = pageTemplateTag ? pageTemplateTag.content : null; 837 var breadCrumb = siteBreadCrumbTag ? siteBreadCrumbTag.content : null; 838 var pageType = pageTypeTag ? pageTypeTag.content : null; 839 var siteId = siteIdTag ? siteIdTag.content : null; 840 var siteSection = siteSectionTag ? siteSectionTag.content : null; 841 var siteLanguage = locale || null; 842 if (window.location.hostname === 'emea.support.illumina.com') { 843 siteRegion = 'emea'; 844 siteLanguage = 'en_GB'; 845 } else if (window.location.hostname === 'sapac.support.illumina.com') { 846 siteRegion = 'spac'; 847 siteLanguage = 'en_AU'; 848 } 849 pageObj = { 850 "pageName": (0, _commonUtils.getLowerCase)(document.title), 851 "pageType": pageType, 852 "pageTemplate": pageTemplate, 853 "siteRegion": siteRegion, 854 "siteLanguage": siteLanguage, 855 "siteBreadCrumb": breadCrumb, 856 "entityId": entityId, 857 "siteID": siteId, 858 "siteSection": siteSection 859 }; 860 return pageObj; 861}; 862var _default = exports.default = pageObject; 863 864},{"../handlers/commonUtils":29}],24:[function(require,module,exports){ 865"use strict"; 866 867Object.defineProperty(exports, "__esModule", { 868 value: true 869}); 870exports.setProductData = setProductData; 871function setProductData(productSKU, productL04) { 872 var productDataObj = { 873 "productID": null, 874 "productSKU": productSKU, 875 "productL04": productL04, 876 "productName": null, 877 "productBundle": null 878 }; 879 return productDataObj; 880} 881 882},{}],25:[function(require,module,exports){ 883"use strict"; 884 885Object.defineProperty(exports, "__esModule", { 886 value: true 887}); 888exports.setPromoData = setPromoData; 889function setPromoData(promoName, promoLocation, batchDate, userSegment) { 890 var promoDataObj = { 891 "promoID": null, 892 "promoName": promoName, 893 "promoLocation": promoLocation, 894 "batchDate": batchDate, 895 "userSegment": userSegment 896 }; 897 return promoDataObj; 898} 899 900},{}],26:[function(require,module,exports){ 901"use strict"; 902 903Object.defineProperty(exports, "__esModule", { 904 value: true 905}); 906exports.promoPageData = promoPageData; 907var _componentUtils = require("../handlers/componentUtils"); 908var _promoUtils = require("../handlers/promoUtils"); 909function promoPageData() { 910 var pagePromosList = (0, _componentUtils.getComponentObjectListByType)('promos'); 911 return (0, _promoUtils.getLegacyContentPromosOnPageLoad)(pagePromosList); 912} 913 914},{"../handlers/componentUtils":30,"../handlers/promoUtils":36}],27:[function(require,module,exports){ 915"use strict"; 916 917Object.defineProperty(exports, "__esModule", { 918 value: true 919}); 920exports.searchData = searchData; 921var _commonUtils = require("../handlers/commonUtils"); 922function searchData(keyword, numberOfResults, pageNumber, filterCategory, filterValue, submitType) { 923 var searchKeyword = keyword || null; 924 var searchNumberOfResults = numberOfResults || null; 925 var searchPagination = pageNumber || null; 926 var searchFilterCategory = filterCategory || null; 927 var searchFilterValue = filterValue || null; 928 var searchSubmitType = submitType || 'submit'; 929 var searchDataObj = { 930 "searchKeyword": (0, _commonUtils.getLowerCase)(searchKeyword), 931 "searchNumberOfResults": searchNumberOfResults, 932 "searchPagination": searchPagination, 933 "searchFilters": [{ 934 "searchFilterCategory": searchFilterCategory, 935 "searchFilterValue": (0, _commonUtils.getLowerCase)(searchFilterValue) 936 }], 937 "searchSubmitType": searchSubmitType 938 }; 939 return searchDataObj; 940} 941 942},{"../handlers/commonUtils":29}],28:[function(require,module,exports){ 943"use strict"; 944 945Object.defineProperty(exports, "__esModule", { 946 value: true 947}); 948exports.default = userData; 949var _userUtils = require("../handlers/userUtils"); 950// eslint-disable-next-line @typescript-eslint/no-var-requires 951var getCookie = require('ilmn/getCookie'); 952function localStorageHasItem(key) { 953 return window.localStorage.getItem(key) && window.localStorage.getItem(key) !== null && window.localStorage.getItem(key) !== 'null';
954} 955 956// eslint-disable-next-line complexity 957function userData() { 958 var _window$ecommerce; 959 var cookieSegment = getCookie('ILMN_PrefSegment') ? getCookie('ILMN_PrefSegment') : null; 960 // const analyticsSegments = localStorageHasItem('kxilluminadmp_segs') ? window.localStorage.getItem('kxilluminadmp_segs') : null; 961 var loginStatus = (_window$ecommerce = window.ecommerce) !== null && _window$ecommerce !== void 0 && _window$ecommerce.isLoggedIn ? 'logged-in' : 'logged-out'; 962 var myIlluminaUserType = localStorageHasItem('myIlluminaUserType') && loginStatus === 'logged-in' ? JSON.parse(window.localStorage.getItem('myIlluminaUserType')) : null; 963 var myIlluminaID = localStorageHasItem('myIlluminaID') && loginStatus === 'logged-in' ? window.localStorage.getItem('myIlluminaID') : null; 964 var prospectId = (0, _userUtils.getSessionProspectId)(); 965 // const segArr = []; 966 // if (analyticsSegments) { 967 // const segValues = analyticsSegments.split(','); 968 // segValues.map((element) => { 969 // const ks = 'ks:'; 970 // const variable = ks.concat(element); 971 // segArr.push(variable); 972 // return segArr; 973 // }); 974 // } 975 976 var dataLayerJson = { 977 'myIlluminaID': myIlluminaID, 978 'myIlluminaUserType': myIlluminaUserType, 979 'cookieSegment': cookieSegment, 980 // 'personaID': segArr, TODO: Might need to pass an empty array here based on Daniel's QC 981 'loginStatus': loginStatus, 982 'prospectId': prospectId 983 }; 984 if (loginStatus === 'logged-out' || !loginStatus) { 985 delete dataLayerJson['myIlluminaID']; 986 window.localStorage.removeItem('myIlluminaUserType'); 987 window.localStorage.removeItem('myIlluminaID'); 988 } 989 return dataLayerJson; 990} 991 992},{"../handlers/userUtils":39,"ilmn/getCookie":14}],29:[function(require,module,exports){ 993"use strict"; 994 995Object.defineProperty(exports, "__esModule", { 996 value: true 997}); 998exports.getClickableElement = getClickableElement; 999exports.getLowerCase = getLowerCase; 1000exports.getQueryParameters = getQueryParameters; 1001exports.getScrollTop = getScrollTop; 1002exports.getValueFromDataLayerAttribute = getValueFromDataLayerAttribute; 1003exports.isClickable = isClickable; 1004exports.isInView = isInView; 1005exports.isPromo = isPromo; 1006exports.isVisible = isVisible; 1007function getLowerCase(text) { 1008 if (text) { 1009 return document.documentElement.lang === 'en' ? text.replace(/\s+/g, " ").toLowerCase() : text.toLowerCase(); 1010 } 1011 return null; 1012} 1013function isClickable(event) { 1014 var targetElement = event.target; 1015 var hrefElement = targetElement.closest('a'); 1016 var buttonElement = targetElement.closest('button'); 1017 return !!(hrefElement || buttonElement); 1018} 1019function getClickableElement(event) { 1020 var targetElement = event.target; 1021 if (targetElement.tagName === 'A' || targetElement.tagName === 'BUTTON') { 1022 return targetElement; 1023 } else if (targetElement.closest('a')) { 1024 return targetElement.closest('a'); 1025 } else if (targetElement.closest('button')) { 1026 return targetElement.closest('button'); 1027 } 1028 return null; 1029} 1030function getQueryParameters() { 1031 var params = new Proxy(new URLSearchParams(window.location.search), { 1032 get: function get(searchParams, prop) { 1033 return searchParams.get(prop); 1034 } 1035 }); 1036 return params; 1037} 1038function isPromo(event) { 1039 var componentModelData = event.target.closest('[data-ilmn-cmp-data-layer]'); 1040 if (componentModelData) { 1041 var promo = JSON.parse(componentModelData.dataset.ilmnCmpDataLayer).promos; 1042 if (promo) { 1043 return true; 1044 } 1045 } 1046 return false; 1047} 1048function getValueFromDataLayerAttribute(element, property) { 1049 var returnValue = null; 1050 if (element && element.hasAttribute('data-ilmn-cmp-data-layer')) { 1051 var dataLayerObj = JSON.parse(element.getAttribute('data-ilmn-cmp-data-layer')); 1052 if (dataLayerObj) { 1053 if (typeof property === 'undefined') { 1054 returnValue = dataLayerObj; 1055 } else if (Object.prototype.hasOwnProperty.call(dataLayerObj, property)) { 1056 returnValue = dataLayerObj[property]; 1057 } 1058 } 1059 } 1060 return returnValue; 1061} 1062function isVisible(element) { 1063 return element.offsetHeight > 0 && element.offsetWidth > 0; 1064} 1065function getScrollTop() { 1066 if (typeof window.pageYOffset !== 'undefined') { 1067 return window.pageYOffset; 1068 } else { 1069 var _document = document, 1070 body = _document.body; 1071 var _document2 = document, 1072 documentElement = _document2.documentElement; 1073 documentElement = documentElement.clientHeight ? documentElement : body; 1074 return documentElement.scrollTop; 1075 } 1076} 1077function isInView(object) { 1078 var windowTop = getScrollTop(); 1079 var windowBottom = windowTop + window.innerHeight; 1080 var objectTop = object.getBoundingClientRect().top + document.documentElement.scrollTop; 1081 var objectBottom = objectTop + object.offsetHeight; 1082 var offset = 0; 1083 if (objectTop <= windowBottom + offset && objectBottom >= windowTop) { 1084 return true; 1085 } 1086 return false;
1087} 1088 1089},{}],30:[function(require,module,exports){ 1090"use strict"; 1091 1092Object.defineProperty(exports, "__esModule", { 1093 value: true 1094}); 1095exports.getComponentObjectListByType = getComponentObjectListByType; 1096function getComponentObjectListByType(cmpType) { 1097 var dataObjects = document.querySelectorAll('[data-layer-object-type="' + cmpType + '"]'); 1098 var objectList = []; 1099 dataObjects.forEach(function (dataObject) { 1100 if (dataObject.dataset && dataObject.dataset.ilmnCmpDataLayer) { 1101 var object = JSON.parse(dataObject.dataset.ilmnCmpDataLayer)[cmpType]; 1102 if (object) { 1103 if (Array.isArray(object)) { 1104 object.forEach(function (obj) { 1105 objectList.push(obj); 1106 }); 1107 } else { 1108 objectList.push(object); 1109 } 1110 } 1111 } 1112 }); 1113 return objectList; 1114} 1115 1116},{}],31:[function(require,module,exports){ 1117"use strict"; 1118 1119Object.defineProperty(exports, "__esModule", { 1120 value: true 1121}); 1122exports.abstractPardotFormDataFromUrl = abstractPardotFormDataFromUrl; 1123exports.getGatedContentValue = getGatedContentValue; 1124exports.isPardotForm = isPardotForm; 1125var _commonUtils = require("./commonUtils"); 1126var _userUtils = require("./userUtils"); 1127function isPardotForm(srcUrl) { 1128 return srcUrl.includes('prdt.illumina.com'); 1129} 1130function abstractPardotFormDataFromUrl(prdtUrl) { 1131 var formUrl = prdtUrl ? new URL(prdtUrl) : null; 1132 var formUrlParams = prdtUrl ? new URLSearchParams(formUrl.search) : null; 1133 var formId = formUrl !== null && formUrl !== void 0 && formUrl.pathname ? formUrl.pathname.substring(formUrl.pathname.lastIndexOf('/') + 1) : null; 1134 var formName = null; 1135 var formHandler = formUrlParams.get('formhandler') ? formUrlParams.get('formhandler') : null; 1136 var formUserId = (0, _userUtils.getSessionProspectId)(); 1137 return { 1138 "formID": formId, 1139 "formName": formName, 1140 "formURL": formUrl.href, 1141 "formHandler": formHandler, 1142 "formUserId": formUserId 1143 }; 1144} 1145function getGatedContentValue(element) { 1146 var srcUrl = (element === null || element === void 0 ? void 0 : element.src) || null; 1147 if (srcUrl && (isPardotForm(srcUrl) || window.self !== window.top)) { 1148 element.addEventListener('click', function (event) { 1149 if ((0, _commonUtils.isClickable)(event)) { 1150 return 'gated'; 1151 } 1152 return null; 1153 }, false); 1154 } 1155 return 'normal'; 1156} 1157 1158},{"./commonUtils":29,"./userUtils":39}],32:[function(require,module,exports){ 1159"use strict"; 1160 1161var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 1162Object.defineProperty(exports, "__esModule", { 1163 value: true 1164}); 1165exports.appendGeoDataToDataLayer = appendGeoDataToDataLayer; 1166exports.getIpGeoLocation = getIpGeoLocation; 1167var _regionMapping = _interopRequireDefault(require("../../data/regionMapping.json")); 1168function parseGeoResponse(response) { 1169 var _response$country, _response$city, _response$postal; 1170 if (!response) return { 1171 city: 'unknown', 1172 zipcode: 'unknown', 1173 country: 'unknown', 1174 region: 'unknown' 1175 }; 1176 var isoCountry = ((response === null || response === void 0 || (_response$country = response.country) === null || _response$country === void 0 ? void 0 : _response$country.iso_code) || 'unknown').toLowerCase(); 1177 var macroRegion = isoCountry !== 'unknown' ? _regionMapping.default[isoCountry] || 'unknown' : 'unknown'; 1178 return { 1179 city: ((response === null || response === void 0 || (_response$city = response.city) === null || _response$city === void 0 || (_response$city = _response$city.names) === null || _response$city === void 0 ? void 0 : _response$city.en) || 'unknown').toLowerCase(), 1180 zipcode: ((response === null || response === void 0 || (_response$postal = response.postal) === null || _response$postal === void 0 ? void 0 : _response$postal.code) || 'unknown').toLowerCase(), 1181 country: isoCountry, 1182 region: macroRegion 1183 }; 1184} 1185function getIpGeoLocation() { 1186 var cacheKey = 'illumina_user_geo_mcp'; 1187 var rawCacheKey = 'illumina_user_geo_mcp_raw'; 1188 var cachedGeo = localStorage.getItem(cacheKey); 1189 if (cachedGeo) { 1190 try { 1191 return JSON.parse(cachedGeo); 1192 } catch (error) { 1193 console.error('Error parsing clean geo data cache:', error); 1194 } 1195 } 1196 var rawCachedGeo = localStorage.getItem(rawCacheKey); 1197 if (rawCachedGeo) { 1198 try { 1199 var rawData = JSON.parse(rawCachedGeo); 1200 var geoResult = parseGeoResponse(rawData); 1201 localStorage.setItem(cacheKey, JSON.stringify(geoResult)); 1202 return geoResult; 1203 } catch (error) { 1204 console.error('Error parsing raw geo data from localStorage:', error); 1205 return null; 1206 } 1207 } 1208 console.warn('Geo data not found in localStorage. Skipping geolocation assignment.'); 1209 return null; 1210} 1211function appendGeoDataToDataLayer(dataLayerJson, geoData) { 1212 if (!geoData) return; 1213 dataLayerJson.user = dataLayerJson.user || {}; 1214 dataLayerJson.user.ipCity = geoData.city; 1215 dataLayerJson.user.ipZipCode = geoData.zipcode; 1216 dataLayerJson.user.ipCountry = geoData.country; 1217 dataLayerJson.user.ipRegion = geoData.region; 1218} 1219 1220},{"../../data/regionMapping.json":20,"@babel/runtime/helpers/interopRequireDefault":3}],33:[function(require,module,exports){ 1221"use strict"; 1222 1223Object.defineProperty(exports, "__esModule", { 1224 value: true 1225}); 1226exports.getImageAltText = getImageAltText; 1227exports.getImageLink = getImageLink; 1228var _commonUtils = require("./commonUtils"); 1229function getImageAltText(element) { 1230 var imgElement = element.querySelector('img'); 1231 var imgAltText = imgElement.getAttribute('alt'); 1232 return imgAltText ? (0, _commonUtils.getLowerCase)(imgAltText) : 'image'; 1233} 1234function getImageLink(element) { 1235 var imageLink = element.closest('a') ? element.closest('a').getAttribute('href') : null; 1236 return imageLink; 1237} 1238 1239},{"./commonUtils":29}],34:[function(require,module,exports){ 1240"use strict"; 1241 1242Object.defineProperty(exports, "__esModule", { 1243 value: true 1244}); 1245exports.createLinkData = createLinkData; 1246exports.createLinkDataForButton = createLinkDataForButton;
1247exports.createLinkDataForImage = createLinkDataForImage; 1248exports.createLinkDataForPagination = createLinkDataForPagination; 1249exports.createLinkDataForPromo = createLinkDataForPromo; 1250exports.createLinkDataForToggle = createLinkDataForToggle; 1251exports.createLinkDataForTools = createLinkDataForTools; 1252exports.createLinkDataFromAttribute = createLinkDataFromAttribute; 1253exports.createLinkDataFromIframe = createLinkDataFromIframe; 1254exports.getLinkData = getLinkData; 1255var _linkData = require("../dataObject/linkData"); 1256var _commonUtils = require("./commonUtils"); 1257var _imageUtils = require("./imageUtils"); 1258var _formUtils = require("./formUtils"); 1259function createLinkDataForImage(element, componentName) { 1260 var linkUrl = element ? (0, _imageUtils.getImageLink)(element) : null; 1261 var linkType = linkUrl ? (0, _linkData.getLinkType)(linkUrl) : 'other'; 1262 var linkRegion = componentName || null; 1263 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1264 var linkContent = element.hasAttribute('alt') ? (0, _commonUtils.getLowerCase)(element.getAttribute('alt')) : 'image'; 1265 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1266} 1267function createLinkDataForButton(element, componentName) { 1268 var linkUrl = element.src || null; 1269 var linkType = 'other'; 1270 var linkRegion = componentName || null; 1271 var linkContent = element.innerText ? (0, _commonUtils.getLowerCase)(element.innerText).trim() : null; 1272 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1273 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1274} 1275function createLinkDataForTools(element, componentName) { 1276 var _anchorElement$queryS; 1277 var anchorElement = element.closest('a') ? element.closest('a') : null; 1278 var linkUrl = anchorElement.getAttribute('href') || null; 1279 var linkType = linkUrl ? (0, _linkData.getLinkType)(linkUrl) : 'other'; 1280 var linkRegion = componentName || null; 1281 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1282 var linkContent = (_anchorElement$queryS = anchorElement.querySelector('h5')) === null || _anchorElement$queryS === void 0 ? void 0 : _anchorElement$queryS.textContent; 1283 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1284} 1285function createLinkData(element, componentName) { 1286 var linkUrl = (element === null || element === void 0 ? void 0 : element.getAttribute('href')) || null; 1287 var linkType = linkUrl ? (0, _linkData.getLinkType)(linkUrl) : 'other'; 1288 var linkRegion = componentName || null; 1289 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1290 var linkContent = element !== null && element !== void 0 && element.textContent ? (0, _commonUtils.getLowerCase)(element.textContent.trim()) : null; 1291 if (element !== null && element !== void 0 && element.querySelectorAll('img').length) { 1292 linkContent = (0, _imageUtils.getImageAltText)(element); 1293 } 1294 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1295} 1296function getLinkData(element, componentName) { 1297 if (element.tagName.toLowerCase() === 'img') { 1298 return createLinkDataForImage(element, componentName); 1299 } else if (element.tagName.toLowerCase() === 'button') { 1300 return createLinkDataForButton(element, componentName); 1301 } else if (element.tagName.toLowerCase() !== 'a' && element.closest('a')) { 1302 return createLinkDataForTools(element, componentName); 1303 } 1304 return createLinkData(element, componentName); 1305} 1306function createLinkDataForPagination(element, componentName) { 1307 var linkUrl = element.getAttribute('href') || null; 1308 var linkType = linkUrl ? (0, _linkData.getLinkType)(linkUrl) : 'other'; 1309 var linkRegion = componentName || null; 1310 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1311 var linkContent = element.textContent ? (0, _commonUtils.getLowerCase)(element.textContent.trim()) : null; 1312 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1313} 1314function createLinkDataForToggle(element, componentName) { 1315 var linkUrl = element.src || null; 1316 var linkType = 'other'; 1317 var linkRegion = componentName || null; 1318 var linkContent = element.closest('.bottom-sheet__actions-toggle--expand') ? 'bottom-sheet toggle expand' : 'bottom-sheet toggle collapse'; 1319 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1320 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1321} 1322function createLinkDataForPromo(element) { 1323 var linkUrl = element.getAttribute('href') || null; 1324 var linkType = linkUrl ? (0, _linkData.getLinkType)(linkUrl) : 'other'; 1325 var linkRegion = element.hasAttribute('data-track-group') ? element.getAttribute('data-track-group') : null; 1326 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1327 var linkContent = element.textContent ? (0, _commonUtils.getLowerCase)(element.textContent.trim()) : null; 1328 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1329} 1330 1331// eslint-disable-next-line complexity 1332function createLinkDataFromAttribute(element, componentName) { 1333 var linkContent = null; 1334 var linkUrl = null; 1335 var linkRegion = null; 1336 var linkType = null; 1337 var gatedContent = (0, _formUtils.getGatedContentValue)(element) || null; 1338 var linkModelData = element.closest("[data-ilmn-cmp-data-layer]"); 1339 if (linkModelData) { 1340 var _JSON$parse = JSON.parse(linkModelData.dataset.ilmnCmpDataLayer), 1341 link = _JSON$parse.link; 1342 if (link) { 1343 linkContent = link.linkContent ? (0, _commonUtils.getLowerCase)(link.linkContent) : linkContent; 1344 linkUrl = link.linkURL ? (0, _commonUtils.getLowerCase)(link.linkURL) : 'other'; 1345 linkRegion = componentName || null; 1346 linkType = link.linkType ? (0, _commonUtils.getLowerCase)(link.linkType) : linkType; 1347 gatedContent = link.gatedContent ? link.gatedContent : gatedContent; 1348 } 1349 } 1350 return (0, _linkData.setLinkData)(linkContent, linkType, linkRegion, linkUrl, gatedContent); 1351} 1352function createLinkDataFromIframe(event) { 1353 var ilmnOrigin = window.parent.location.href.match('^.+illumina.co.+')[0]; 1354 var target = event.target; 1355 var formUrl = sessionStorage.getItem('formUrl') ? sessionStorage.getItem('formUrl') : null; 1356 var linkClick = { 1357 "status": 'linkClicked', 1358 "linkURL": target.href, 1359 "linkContent": target.innerText, 1360 "linkRegion": 'pardot form', 1361 "gatedContent": 'gated', 1362 "formUrl": formUrl 1363 }; 1364 window.parent.postMessage(linkClick, ilmnOrigin); 1365} 1366 1367},{"../dataObject/linkData":22,"./commonUtils":29,"./formUtils":31,"./imageUtils":33}],35:[function(require,module,exports){ 1368"use strict"; 1369 1370var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 1371Object.defineProperty(exports, "__esModule", { 1372 value: true 1373}); 1374exports.getPageLoadJson = getPageLoadJson; 1375exports.getPageTemplate = getPageTemplate; 1376exports.getProductSearchJson = getProductSearchJson;
1377exports.getSupportSearchJson = getSupportSearchJson; 1378exports.isProductDetailPage = isProductDetailPage; 1379exports.isSearchPage = isSearchPage; 1380var _pageLoad = _interopRequireDefault(require("../pageLoad/pageLoad")); 1381var _searchResultsPageLoad = require("../pageLoad/searchResultsPageLoad"); 1382var _productSearchSubmit = require("../../../acdl-static/js/search/productSearchSubmit"); 1383var _productDetailPageLoad = require("../pageLoad/productDetailPageLoad"); 1384var _supportSearchSubmit = require("../../../acdl-static/js/search/supportSearchSubmit"); 1385function getPageTemplate(pageLoadData) { 1386 var _pageLoadData$page; 1387 return pageLoadData === null || pageLoadData === void 0 || (_pageLoadData$page = pageLoadData.page) === null || _pageLoadData$page === void 0 ? void 0 : _pageLoadData$page.pageTemplate; 1388} 1389function isProductDetailPage(pageLoadData) { 1390 var thisPageTemplate = getPageTemplate(pageLoadData); 1391 var productPageTemplate = 'pdp-template'; 1392 return typeof thisPageTemplate === 'string' && thisPageTemplate.includes(productPageTemplate); 1393} 1394function isSearchPage() { 1395 var _document$querySelect; 1396 var siteSection = ((_document$querySelect = document.querySelector('meta[name="siteSection"]')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.content) || null; 1397 return siteSection === 'search'; 1398} 1399function getPageLoadJson() { 1400 var dataLayerJson = (0, _pageLoad.default)(); 1401 if (isSearchPage()) { 1402 dataLayerJson = (0, _searchResultsPageLoad.searchResultsPageLoad)(); 1403 } else if (isProductDetailPage(dataLayerJson)) { 1404 dataLayerJson = (0, _productDetailPageLoad.productDetailPageLoad)(); 1405 } 1406 return dataLayerJson; 1407} 1408function getProductSearchJson() { 1409 if (isSearchPage()) { 1410 var dataLayerJson = (0, _productSearchSubmit.getProductSubmitDataLayerObject)(); 1411 return dataLayerJson; 1412 } 1413 return null; 1414} 1415function getSupportSearchJson() { 1416 if (isSearchPage()) { 1417 var dataLayerJson = (0, _supportSearchSubmit.getSupportSubmitDataLayerObject)(); 1418 return dataLayerJson; 1419 } 1420 return null; 1421} 1422 1423},{"../../../acdl-static/js/search/productSearchSubmit":17,"../../../acdl-static/js/search/supportSearchSubmit":19,"../pageLoad/pageLoad":43,"../pageLoad/productDetailPageLoad":44,"../pageLoad/searchResultsPageLoad":45,"@babel/runtime/helpers/interopRequireDefault":3}],36:[function(require,module,exports){ 1424"use strict"; 1425 1426Object.defineProperty(exports, "__esModule", { 1427 value: true 1428}); 1429exports.getLegacyContentPromo = getLegacyContentPromo; 1430exports.getLegacyContentPromosOnPageLoad = getLegacyContentPromosOnPageLoad; 1431exports.getMerchandisingPromo = getMerchandisingPromo; 1432exports.isContentPromo = isContentPromo; 1433exports.isLegacyContentPromo = isLegacyContentPromo; 1434exports.isLegacyMerchandisingPromo = isLegacyMerchandisingPromo; 1435exports.isMerchandisingPromo = isMerchandisingPromo; 1436var _promoData = require("../dataObject/promoData"); 1437var _productData = require("../dataObject/productData"); 1438var _global = require("../../../../../components/utilities/global"); 1439function isExcludedLink(element) { 1440 return element === null || element === void 0 ? void 0 : element.classList.contains('modal__close'); 1441} 1442function isLegacyMerchandisingPromo(element) { 1443 return !isExcludedLink(element) && (element.hasAttribute('data-track-retail-skus') || element.hasAttribute('data-track-retail-l04')); 1444} 1445function isMerchandisingPromo(element) { 1446 var _dataObj$products; 1447 var dataObj = (0, _global.safeJsonParse)(element.getAttribute('data-ilmn-cmp-data-layer')); 1448 return !isExcludedLink(element) && ((_dataObj$products = dataObj.products) === null || _dataObj$products === void 0 ? void 0 : _dataObj$products.length); 1449} 1450function isLegacyContentPromo(element) { 1451 return !isExcludedLink(element) && element.closest('[data-tracktnt-experience]'); 1452} 1453function isContentPromo(element) { 1454 return !isExcludedLink(element) && element.closest('[data-layer-object-type="promos"]'); 1455} 1456function getLegacyContentPromo(element) { 1457 var contentPromos = []; 1458 var parentDiv = element.closest('[data-tracktnt-experience]'); 1459 var promoName = (parentDiv === null || parentDiv === void 0 ? void 0 : parentDiv.getAttribute('data-tracktnt-description')) || null; 1460 var promoLocation = (parentDiv === null || parentDiv === void 0 ? void 0 : parentDiv.getAttribute('data-tracktnt-position')) || null; 1461 var batchDateArr = (promoLocation === null || promoLocation === void 0 ? void 0 : promoLocation.split(":")) || []; 1462 var batchDate = ''; 1463 if (batchDateArr.length > 1) { 1464 batchDate = batchDateArr[1].trim(); 1465 } 1466 var userSegment = parentDiv.getAttribute('data-tracktnt-experience'); 1467 var contentPromo = (0, _promoData.setPromoData)(promoName, promoLocation, batchDate, userSegment); 1468 contentPromos.push(contentPromo); 1469 return contentPromos; 1470} 1471function getMerchandisingPromo(element) { 1472 var products = []; 1473 var skuVal = element.getAttribute('data-track-retail-skus'); 1474 var l04Val = element.getAttribute('data-track-retail-l04'); 1475 var skuArr = skuVal ? skuVal.split(',') : []; 1476 if (skuArr.length > 1) { 1477 skuArr.forEach(function (sku) { 1478 products.push((0, _productData.setProductData)(sku, l04Val)); 1479 }); 1480 } else { 1481 products.push((0, _productData.setProductData)(skuVal, l04Val)); 1482 } 1483 return products; 1484} 1485 1486// catches legacy promos using the [data-tracktnt-experience] attr with no [data-layer-object-type] or [data-ilmn-cmp-data-layer] attrs 1487function getLegacyContentPromosOnPageLoad(pagePromosList) { 1488 var contentPromoDivElements = document.querySelectorAll('[data-tracktnt-experience]');
1489 contentPromoDivElements.forEach(function (contentPromoDivElement) { 1490 if (!contentPromoDivElement.closest('[data-layer-object-type]') && !contentPromoDivElement.closest('[data-ilmn-cmp-data-layer]')) { 1491 var contentAnchorTag = contentPromoDivElement.querySelector('a'); 1492 if (contentAnchorTag && getLegacyContentPromo(contentAnchorTag)) { 1493 var catchAllPromos = getLegacyContentPromo(contentAnchorTag); 1494 catchAllPromos.forEach(function (promo) { 1495 pagePromosList.push(promo); 1496 }); 1497 } 1498 } 1499 }); 1500 return pagePromosList; 1501} 1502 1503},{"../../../../../components/utilities/global":15,"../dataObject/productData":24,"../dataObject/promoData":25}],37:[function(require,module,exports){ 1504"use strict"; 1505 1506Object.defineProperty(exports, "__esModule", { 1507 value: true 1508}); 1509exports.pushToDataLayer = pushToDataLayer; 1510// eslint-disable-next-line import/prefer-default-export 1511function pushToDataLayer(dataLayerJson) { 1512 try { 1513 window.adobeDataLayer = window.adobeDataLayer || []; 1514 // eslint-disable-next-line no-undef 1515 adobeDataLayer.push(dataLayerJson); 1516 } catch (err) { 1517 console.log(err); 1518 } 1519} 1520 1521},{}],38:[function(require,module,exports){ 1522"use strict"; 1523 1524var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 1525Object.defineProperty(exports, "__esModule", { 1526 value: true 1527}); 1528exports.getFilterVal = getFilterVal; 1529exports.getSearchDataParams = getSearchDataParams; 1530exports.handleUserSearchComplete = handleUserSearchComplete; 1531exports.pushToDataLayerAfterSearchCompletion = pushToDataLayerAfterSearchCompletion; 1532exports.setClickEvent = setClickEvent; 1533exports.setSearchPagination = setSearchPagination; 1534var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); 1535var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); 1536var _commonUtils = require("../../../acdl/js/handlers/commonUtils"); 1537var _searchSubmitAction = require("../../../acdl-static/js/search/searchSubmitAction"); 1538var _analytics = require("../../../acdl-static/js/search/analytics"); 1539var _searchData = require("../../../acdl/js/dataObject/searchData"); 1540var _pushToDataLayer = require("./pushToDataLayer"); 1541function getFilterVal(element) { 1542 var _element$parentElemen; 1543 var queryParams = (0, _commonUtils.getQueryParameters)(); 1544 element = document.querySelector(element) ? document.querySelector(element) : null; 1545 if (!element && window.sessionStorage.getItem('fromProductPage') === 'true') { 1546 return 'products'; 1547 } else if (!element && window.sessionStorage.getItem('fromSupportPage') === 'true') { 1548 return 'tech support'; 1549 } else if (!element && queryParams.filter) { 1550 if (queryParams.filter === 'support') { 1551 return 'tech support'; 1552 } else { 1553 return queryParams.filter; 1554 } 1555 } else if (!element) { 1556 return null; 1557 } 1558 var elementFilterValue = (0, _commonUtils.getLowerCase)((_element$parentElemen = element.parentElement) === null || _element$parentElemen === void 0 ? void 0 : _element$parentElemen.innerText) || null; 1559 return elementFilterValue; 1560} 1561function setClickEvent(element) { 1562 element.addEventListener("click", function (event) { 1563 if ((0, _commonUtils.isClickable)(event) && (0, _analytics.isSearchIncludedElement)(event.target)) { 1564 (0, _searchSubmitAction.pushSearchSubmitDataLayerObject)(event); 1565 } 1566 }, false); 1567} 1568function getSearchDataParams(actionEvent) { 1569 var queryParams = (0, _commonUtils.getQueryParameters)(); 1570 var searchKeyword = queryParams.q; 1571 var searchFilterCategory = 'category'; 1572 var searchPagination = queryParams.p; 1573 var filterValue = getFilterVal(".radio-list input:checked"); 1574 var searchDataObj = (0, _searchData.searchData)(searchKeyword, null, searchPagination, searchFilterCategory, filterValue, actionEvent); 1575 searchDataObj.searchFormName = "site search"; 1576 return searchDataObj; 1577} 1578function handleUserSearchComplete(_x) { 1579 return _handleUserSearchComplete.apply(this, arguments); 1580} 1581function _handleUserSearchComplete() { 1582 _handleUserSearchComplete = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(dataLayerJson) { 1583 return _regenerator.default.wrap(function (_context) { 1584 while (1) switch (_context.prev = _context.next) { 1585 case 0: 1586 return _context.abrupt("return", new Promise(function (resolve, reject) { 1587 var _addSearchResult = function addSearchResult(event) { 1588 var _dataLayerJson$search2; 1589 if ((dataLayerJson === null || dataLayerJson === void 0 || (_dataLayerJson$search2 = dataLayerJson.searchDetails) === null || _dataLayerJson$search2 === void 0 ? void 0 : _dataLayerJson$search2.searchNumberOfResults) !== undefined) { 1590 dataLayerJson.searchDetails.searchNumberOfResults = event.detail.numberOfResults; 1591 } 1592 setSearchPagination(dataLayerJson); 1593 document.removeEventListener('userSearchComplete', _addSearchResult); 1594 resolve(dataLayerJson); 1595 }; 1596 document.addEventListener('userSearchComplete', _addSearchResult); 1597 })); 1598 case 1: 1599 case "end": 1600 return _context.stop(); 1601 } 1602 }, _callee); 1603 })); 1604 return _handleUserSearchComplete.apply(this, arguments); 1605} 1606function setSearchPagination(dataLayerJson) { 1607 var _dataLayerJson$search; 1608 if ((dataLayerJson === null || dataLayerJson === void 0 || (_dataLayerJson$search = dataLayerJson.searchDetails) === null || _dataLayerJson$search === void 0 ? void 0 : _dataLayerJson$search.searchPagination) !== undefined && dataLayerJson.searchDetails.searchPagination == null) { 1609 var queryParams = (0, _commonUtils.getQueryParameters)(); 1610 var searchPagination = queryParams.p; 1611 dataLayerJson.searchDetails.searchPagination = searchPagination; 1612 } 1613} 1614function pushToDataLayerAfterSearchCompletion(_x2) { 1615 return _pushToDataLayerAfterSearchCompletion.apply(this, arguments); 1616} 1617function _pushToDataLayerAfterSearchCompletion() { 1618 _pushToDataLayerAfterSearchCompletion = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(d
1618ataLayerJson) { 1619 var modifiedDataLayerJson; 1620 return _regenerator.default.wrap(function (_context2) { 1621 while (1) switch (_context2.prev = _context2.next) { 1622 case 0: 1623 _context2.next = 1; 1624 return handleUserSearchComplete(dataLayerJson); 1625 case 1: 1626 modifiedDataLayerJson = _context2.sent; 1627 (0, _pushToDataLayer.pushToDataLayer)(modifiedDataLayerJson); 1628 case 2: 1629 case "end": 1630 return _context2.stop(); 1631 } 1632 }, _callee2); 1633 })); 1634 return _pushToDataLayerAfterSearchCompletion.apply(this, arguments); 1635} 1636 1637},{"../../../acdl-static/js/search/analytics":16,"../../../acdl-static/js/search/searchSubmitAction":18,"../../../acdl/js/dataObject/searchData":27,"../../../acdl/js/handlers/commonUtils":29,"./pushToDataLayer":37,"@babel/runtime/helpers/asyncToGenerator":2,"@babel/runtime/helpers/interopRequireDefault":3,"@babel/runtime/regenerator":13}],39:[function(require,module,exports){ 1638"use strict"; 1639 1640var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 1641Object.defineProperty(exports, "__esModule", { 1642 value: true 1643}); 1644exports.executeWithAdobeDataLayer = executeWithAdobeDataLayer; 1645exports.executeWithEcom = executeWithEcom; 1646exports.executeWithOneTrust = executeWithOneTrust; 1647exports.getProfileData = getProfileData; 1648exports.getSessionProspectId = getSessionProspectId; 1649exports.setMyIlluminaId = setMyIlluminaId; 1650exports.setMyIlluminaUserType = setMyIlluminaUserType; 1651exports.setSessionProspectId = setSessionProspectId; 1652exports.waitForLoggedInStatus = waitForLoggedInStatus; 1653var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); 1654var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); 1655var _getCookie = _interopRequireDefault(require("ilmn/getCookie")); 1656function executeWithEcom(callback) { 1657 var maxAttempts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10; 1658 var interval = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000; 1659 var attempts = 0; 1660 var _waitForEcom = function waitForEcom() { 1661 attempts += 1; 1662 if (window.ecommerce) { 1663 var _waitForEcomConfig = function waitForEcomConfig() { 1664 if (window.ecommerce.Config) { 1665 callback(window.ecommerce); 1666 } else if (attempts < maxAttempts) { 1667 setTimeout(_waitForEcomConfig, interval); 1668 } else { 1669 console.log('Could not retrieve ecommerce.config object'); 1670 } 1671 }; 1672 _waitForEcomConfig(); 1673 } else if (attempts < maxAttempts) { 1674 setTimeout(_waitForEcom, interval); 1675 } else { 1676 console.log('Could not retrieve ecommerce object'); 1677 } 1678 }; 1679 try { 1680 _waitForEcom(); 1681 } catch (error) { 1682 console.error(error); 1683 } 1684} 1685function executeWithAdobeDataLayer(callback) { 1686 var maxAttempts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10; 1687 var interval = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000; 1688 var attempts = 0; 1689 var _waitForAdobeDataLayer = function waitForAdobeDataLayer() { 1690 attempts += 1; 1691 if (window.adobeDataLayer) { 1692 callback(window.adobeDataLayer); 1693 } else if (attempts < maxAttempts) { 1694 setTimeout(_waitForAdobeDataLayer, interval); 1695 } else { 1696 console.log('Could not retrieve window.adobeDataLayer object'); 1697 } 1698 }; 1699 try { 1700 _waitForAdobeDataLayer(); 1701 } catch (error) { 1702 console.error(error); 1703 } 1704} 1705function executeWithOneTrust(callback) { 1706 var maxAttempts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10; 1707 var interval = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000; 1708 var attempts = 0; 1709 var _waitForOneTrust = function waitForOneTrust() { 1710 var _window$OnetrustActiv; 1711 attempts += 1; 1712 if (window.OnetrustActiveGroups && ((_window$OnetrustActiv = window.OnetrustActiveGroups) === null || _window$OnetrustActiv === void 0 ? void 0 : _window$OnetrustActiv.replace(/,/g, '')) !== '') { 1713 callback(); 1714 } else if (attempts < maxAttempts) { 1715 setTimeout(_waitForOneTrust, interval); 1716 } else { 1717 console.log('Could not retrieve window.OnetrustActiveGroups object'); 1718 } 1719 }; 1720 try { 1721 _waitForOneTrust(); 1722 } catch (error) { 1723 console.error(error); 1724 } 1725} 1726function waitForLoggedInStatus(callback) { 1727 var maxAttempts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10; 1728 var interval = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000; 1729 var attempts = 0; 1730 if (window.localStorage) { 1731 var checkLocalStorageValue = function checkLocalStorageValue() { 1732 attempts += 1; 1733 if (window.localStorage.getItem('loggedInStatus')) { 1734 window.localStorage.removeItem('loggedInStatus'); 1735 callback(); 1736 } else if (attempts < maxAttempts) { 1737 setTimeout(checkLocalStorageValue, interval); 1738 } else { 1739 console.log('Could not retrieve logged-in object'); 1740 callback(); 1741 } 1742 }; 1743 checkLocalStorageValue(); 1744 } else { 1745 console.log('Could not retrieve logged-in object'); 1746 callback(); 1747 } 1748} 1749function getPSToken() { 1750 var psToken = (0, _getCookie.default)('psToken') ? (0, _getCookie.default)('psToken') : null; 1751 return psToken; 1752} 1753function fetchData(_x) { 1754 return _fetchData.apply(this, arguments); 1755} 1756function _fetchData() { 1757 _fetchData = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(url) { 1758 var psToken, getResp, contentType, responseText, jsonResponse, _t; 1759 return _regenerator.default.wrap(function (_context) { 1760 while (1) switch (_context.prev = _context.next) { 1761 case 0: 1762 psToken = getPSToken(); 1763 getResp = null; 1764 if (!psToken) { 1765 _context.next = 8; 1766 break; 1767 } 1768 _context.prev = 1; 1769 _context.next = 2; 1770 return fetch(url, { 1771 headers: { 1772 "psToken": psToken 1773 } 1774 }); 1775 case 2: 1776 getResp = _context.sent; 1777 if (!getResp.ok) { 1778 console.log("Network response was not ok from ".concat(url)); 1779 } 1780 contentType = getResp.headers.get('content-type'); 1781 if (!(contentType && contentType.indexOf('application/json') !== -1)) { 1782 _context.next = 4; 1783 break; 1784 } 1785 _context.next = 3; 1786 return getResp.text(); 1787 case 3: 1788 responseText = _context.sent; 1789 jsonResponse = responseText.startsWith(')]}\'') ? JSON.parse(responseText.substring(6)) : JSON.parse(responseText); // Parse as JSON if magic prefix is not present 1790 return _context.abrupt("return", jsonResponse); 1791 case 4: 1792 console.log("Invalid response type from ".concat(url)); 1793 return _context.abrupt("return", null); 1794 case 5: 1795 _context.next = 7; 1796 break; 1797 case 6: 1798 _context.prev = 6; 1799 _t = _context["catch"](1); 1800 console.log(_t); 1801 return _context.abrupt("return", null); 1802 case 7: 1803 _context.next = 9; 1804 break; 1805 case 8: 1806 return _context.abrupt("return", null); 1807 case 9: 1808 case "end": 1809 return _context.stop(); 1810 } 1811 }, _callee, null, [[1, 6]]); 1812 })); 1813 return _fetchData.apply(this, arguments); 1814} 1815function getProfileData() { 1816 return _getProfileData.apply(this, arguments); 1817} 1818function _getProfileData() { 1819 _getProfileData = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() { 1820 var url, data, _t2; 1821 return _regenerator.default.wrap(function (_context2) { 1822 while (1) switch (_context2.prev = _context2.next) { 1823 case 0: 1824 _context2.prev = 0; 1825 url = null; 1826 executeWithEcom(function (ecom) { 1827 var _ref = ecom.config || null, 1828 commerceHttpsProtocolHost = _ref.commerceHttpsProtocolHost; 1829 if (commerceHttpsProtocolHost) { 1830 url = "".concat(commerceHttpsProtocolHost, "/public/profile"); 1831 } 1832 }); 1833 if (!url) { 1834 _context2.next = 2; 1835 break; 1836 } 1837 _context2.next = 1; 1838 return fetchData(url); 1839 case 1: 1840 data = _context2.sent; 1841 return _context2.abrupt("return", data); 1842 case 2: 1843 return _context2.abrupt("return", null); 1844 case 3: 1845 _context2.next = 5; 1846 break; 1847 case 4: 1848 _context2.prev = 4; 1849 _t2 = _context2["catch"](0); 1850 console.error(_t2); 1851 return _context2.abrupt("return", null); 1852 case 5: 1853 case "end": 1854 return _context2.stop(); 1855 } 1856 }, _callee2, null, [[0, 4]]); 1857 })); 1858 return _getProfileData.apply(this, arguments); 1859} 1860function updateDataLayerUserValue(updateFn) { 1861 executeWithAdobeDataLayer(function (adobeDataLayer) { 1862 adobeDataLayer.forEach(function (obj) { 1863 if ((obj === null || obj === void 0 ? void 0 : obj.user) !== undefined) { 1864 updateFn(obj); 1865 } 1866 }); 1867 }); 1868} 1869function getValueByPath(obj, path) { 1870 var keys = path.split('.'); 1871 return keys.reduce(function (value, key) { 1872 return value ? value[key] : null; 1873 }, obj); 1874} 1875function getProfileDataValue(_x2) { 1876 return _getProfileDataValue.apply(this, arguments); 1877} 1878function _getProfileDataValue() { 1879 _getProfileDataValue = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3(path) { 1880 var data; 1881 return _regenerator.default.wrap(function (_context3) { 1882 while (1) switch (_context3.prev = _context3.next) { 1883 case 0: 1884 _context3.next = 1; 1885 return getProfileData(); 1886 case 1: 1887 data = _context3.sent; 1888 return _context3.abrupt("return", getValueByPath(data, path)); 1889 case 2: 1890 case "end": 1891 return _context3.stop(); 1892 } 1893 }, _callee3); 1894 })); 1895 return _getProfileDataValue.apply(this, arguments); 1896} 1897function setMyIlluminaUserType() { 1898 return _setMyIlluminaUserType.apply(this, arguments); 1899} 1900function _setMyIlluminaUserType() { 1901 _setMyIlluminaUserType = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() { 1902 var profileDataValue, 1903 myIlluminaUserType, 1904 myIlluminaRoles, 1905 _args4 = arguments, 1906 _t3; 1907 return _regenerator.default.wrap(function (_context4) { 1908 while (1) switch (_context4.prev = _context4.next) { 1909 case 0: 1910 profileDataValue = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : null; 1911 _context4.prev = 1; 1912 myIlluminaUserType = profileDataValue; 1913 if (myIlluminaUserType) { 1914 _context4.next = 3; 1915 break; 1916 } 1917 _context4.next = 2; 1918 return getProfileDataValue('roles'); 1919 case 2: 1920 myIlluminaRoles = _context4.sent;
1921 myIlluminaUserType = myIlluminaRoles.map(function (myIlluminaRole) { 1922 return myIlluminaRole.toLowerCase(); 1923 }); 1924 case 3: 1925 if (myIlluminaUserType !== null) { 1926 window.localStorage.setItem('myIlluminaUserType', JSON.stringify(myIlluminaUserType)); 1927 } 1928 updateDataLayerUserValue(function (obj) { 1929 obj.user.myIlluminaUserType = myIlluminaUserType; 1930 }); 1931 _context4.next = 5; 1932 break; 1933 case 4: 1934 _context4.prev = 4; 1935 _t3 = _context4["catch"](1); 1936 console.error('Error setting My Illumina User Type:', _t3); 1937 case 5: 1938 case "end": 1939 return _context4.stop(); 1940 } 1941 }, _callee4, null, [[1, 4]]); 1942 })); 1943 return _setMyIlluminaUserType.apply(this, arguments); 1944} 1945function setMyIlluminaId() { 1946 return _setMyIlluminaId.apply(this, arguments); 1947} 1948function _setMyIlluminaId() { 1949 _setMyIlluminaId = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() { 1950 var profileDataValue, 1951 myIlluminaID, 1952 _args5 = arguments, 1953 _t4; 1954 return _regenerator.default.wrap(function (_context5) { 1955 while (1) switch (_context5.prev = _context5.next) { 1956 case 0: 1957 profileDataValue = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : null; 1958 _context5.prev = 1; 1959 myIlluminaID = profileDataValue; 1960 if (myIlluminaID) { 1961 _context5.next = 3; 1962 break; 1963 } 1964 _context5.next = 2; 1965 return getProfileDataValue('pGuid'); 1966 case 2: 1967 myIlluminaID = _context5.sent; 1968 case 3: 1969 if (myIlluminaID !== null) { 1970 window.localStorage.setItem('myIlluminaID', myIlluminaID); 1971 } 1972 updateDataLayerUserValue(function (obj) { 1973 obj.user.myIlluminaID = myIlluminaID; 1974 }); 1975 _context5.next = 5; 1976 break; 1977 case 4: 1978 _context5.prev = 4; 1979 _t4 = _context5["catch"](1); 1980 console.error('Error setting myIlluminaID:', _t4); 1981 case 5: 1982 case "end": 1983 return _context5.stop(); 1984 } 1985 }, _callee5, null, [[1, 4]]); 1986 })); 1987 return _setMyIlluminaId.apply(this, arguments); 1988} 1989function setSessionProspectId() { 1990 return _setSessionProspectId.apply(this, arguments); 1991} 1992function _setSessionProspectId() { 1993 _setSessionProspectId = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6() { 1994 var url, response, responseJson, prospectId, _t5; 1995 return _regenerator.default.wrap(function (_context6) { 1996 while (1) switch (_context6.prev = _context6.next) { 1997 case 0: 1998 url = '/bin/pardot/getprospectid'; 1999 _context6.prev = 1; 2000 _context6.next = 2; 2001 return fetch(url); 2002 case 2: 2003 response = _context6.sent; 2004 if (response.ok) { 2005 _context6.next = 3; 2006 break; 2007 } 2008 console.error("Response status: ".concat(response.status)); 2009 return _context6.abrupt("return"); 2010 case 3: 2011 _context6.next = 4; 2012 return response.json(); 2013 case 4: 2014 responseJson = _context6.sent; 2015 prospectId = (responseJson === null || responseJson === void 0 ? void 0 : responseJson.prospectId) || null; 2016 if (prospectId) { 2017 _context6.next = 5; 2018 break; 2019 } 2020 return _context6.abrupt("return"); 2021 case 5: 2022 window.sessionStorage.setItem('IlmnProspectId', prospectId); 2023 _context6.next = 7; 2024 break; 2025 case 6: 2026 _context6.prev = 6; 2027 _t5 = _context6["catch"](1); 2028 console.error(_t5.message); 2029 case 7: 2030 case "end": 2031 return _context6.stop(); 2032 } 2033 }, _callee6, null, [[1, 6]]); 2034 })); 2035 return _setSessionProspectId.apply(this, arguments); 2036} 2037function getSessionProspectId() { 2038 return window.sessionStorage.getItem('IlmnProspectId'); 2039} 2040 2041},{"@babel/runtime/helpers/asyncToGenerator":2,"@babel/runtime/helpers/interopRequireDefault":3,"@babel/runtime/regenerator":13,"ilmn/getCookie":14}],40:[function(require,module,exports){ 2042"use strict"; 2043 2044var _pushToDataLayer = require("./handlers/pushToDataLayer"); 2045var _pageUtils = require("./handlers/pageUtils"); 2046var _commonUtils = require("./handlers/commonUtils"); 2047var _searchUtils = require("./handlers/searchUtils"); 2048var _userUtils = require("./handlers/userUtils"); 2049var _geoUtils = require("./handlers/geoUtils"); 2050document.addEventListener('DOMContentLoaded', function (event) { 2051 (0, _userUtils.executeWithOneTrust)(function () { 2052 (0, _userUtils.waitForLoggedInStatus)(function () { 2053 (0, _userUtils.setSessionProspectId)().then(function () { 2054 var dataLayerJson = (0, _pageUtils.getPageLoadJson)(); 2055 var queryParams = (0, _commonUtils.getQueryParameters)(); 2056 var searchFilterValue = queryParams.filter; 2057 var geoData = (0, _geoUtils.getIpGeoLocation)(); 2058 (0, _geoUtils.appendGeoDataToDataLayer)(dataLayerJson, geoData); 2059 if (window.sessionStorage.getItem('fromProductPage') === 'true') { 2060 var _dataLayerJson = (0, _pageUtils.getProductSearchJson)(); 2061 (0, _searchUtils.pushToDataLayerAfterSearchCompletion)(_dataLayerJson); 2062 } 2063 if (searchFilterValue !== 'support' && window.sessionStorage.getItem('fromSupportPage') === 'true') { 2064 window.sessionStorage.setItem('fromSupportPage', 'false'); 2065 } 2066 if (searchFilterValue === 'support' && window.sessionStorage.getItem('fromSupportPage') !== 'true') { 2067 window.sessionStorage.setItem('fromSupportPage', 'true'); 2068 var _dataLayerJson2 = (0, _pageUtils.getSupportSearchJson)(); 2069 (0, _searchUtils.pushToDataLayerAfterSearchCompletion)(_dataLayerJson2); 2070 } 2071 if ((0, _pageUtils.isSearchPage)()) { 2072 (0, _searchUtils.pushToDataLayerAfterSearchCompletion)(dataLayerJson); 2073 } else { 2074 (0, _pushToDataLayer.pushToDataLayer)(dataLayerJson); 2075 } 2076 }); 2077 }); 2078 }); 2079}); 2080 2081},{"./handlers/commonUtils":29,"./handlers/geoUtils":32,"./handlers/pageUtils":35,"./handlers/pushToDataLayer":37,"./handlers/searchUtils":38,"./handlers/userUtils":39}],41:[function(require,module,exports){ 2082"use strict"; 2083 2084var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 2085Object.defineProperty(exports, "__esModule", { 2086 value: true 2087}); 2088exports.searchSubmitActionEvent = searchSubmitActionEvent; 2089var _pageObject = _interopRequireDefault(require("../dataObject/pageObject")); 2090var _userData = _interopRequireDefault(require("../dataObject/userData")); 2091function searchSubmitActionEvent(linkData, searchData, domEventType) { 2092 var pageObj = (0, _pageObject.default)(); 2093 var userDataObj = (0, _userData.default)(); 2094 var link = linkData || null; 2095 var searchDetails = searchData || null; 2096 var domEvent = domEventType || ''; 2097 var dataLayerJson = { 2098 "event": "searchSubmitAction", 2099 "page": pageObj, 2100 "user": userDataObj, 2101 "link": link, 2102 "searchDetails": searchDetails, 2103 "domEvent": domEvent 2104 }; 2105 return dataLayerJson; 2106} 2107 2108},{"../dataObject/pageObject":23,"../dataObject/userData":28,"@babel/runtime/helpers/interopRequireDefault":3}],42:[function(require,module,exports){ 2109"use strict"; 2110 2111var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 2112Object.defineProperty(exports, "__esModule", { 2113 value: true 2114}); 2115exports.searchLoadActionEvent = searchLoadActionEvent; 2116var _userData = _interopRequireDefault(require("../dataObject/userData")); 2117var _pageObject = _interopRequireDefault(require("../dataObject/pageObject")); 2118function searchLoadActionEvent(searchPageLoadObj, actionEventType) { 2119 var userDataObj = (0, _userData.default)() || {}; 2120 var pageDataObject = (0, _pageObject.default)() || {}; 2121 var dataLayerJson = { 2122 'page': pageDataObject, 2123 'user': userDataObj, 2124 'searchDetails': searchPageLoadObj, 2125 'event': actionEventType 2126 }; 2127 return dataLayerJson; 2128} 2129 2130},{"../dataObject/pageObject":23,"../dataObject/userData":28,"@babel/runtime/helpers/interopRequireDefault":3}],43:[function(require,module,exports){ 2131"use strict"; 2132 2133var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 2134Object.defineProperty(exports, "__esModule", { 2135 value: true 2136}); 2137exports.default = pageLoad; 2138var _pageObject = _interopRequireDefault(require("../dataObject/pageObject")); 2139var _userData = _interopRequireDefault(require("../dataObject/userData")); 2140var _promoPageData = require("../dataObject/promoPageData"); 2141var _campaignData = _interopRequireDefault(require("../dataObject/campaignData")); 2142function pageLoad() { 2143 var pageDataObject = (0, _pageObject.default)() || {}; 2144 var userDataObj = (0, _userData.default)() || {}; 2145 var campaignDataObject = (0, _campaignData.default)() || {}; 2146 var promoDataObj = (0, _promoPageData.promoPageData)() || {}; 2147 var actionEventType = 'pageLoad'; 2148 var dataLayerJson = { 2149 'page': pageDataObject, 2150 'user': userDataObj, 2151 'campaign': campaignDataObject, 2152 'promos': promoDataObj, 2153 'event': actionEventType 2154 }; 2155 return dataLayerJson; 2156} 2157 2158},{"../dataObject/campaignData":21,"../dataObject/pageObject":23,"../dataObject/promoPageData":26,"../dataObject/userData":28,"@babel/runtime/helpers/interopRequireDefault":3}],44:[function(require,module,exports){ 2159"use strict"; 2160 2161var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); 2162Object.defineProperty(exports, "__esModule", { 2163 value: true 2164}); 2165exports.productDetailPageLoad = productDetailPageLoad; 2166var _pageObject = _interopRequireDefault(require("../dataObject/pageObject")); 2167var _userData = _interopRequireDefault(require("../dataObject/userData")); 2168var _componentUtils = require("../handlers/componentUtils"); 2169function productDetailPageLoad() { 2170 var pageDataObject = (0, _pageObject.default)() || {}; 2171 var userDataObj = (0, _userData.default)() || {}; 2172 var productPageLoadObj = (0, _componentUtils.getComponentObjectListByType)('products') || {}; 2173 var actionEventType = 'productDetailPageLoad'; 2174 var findingMethod = 'addtocart'; 2175 var dataLayerJson = { 2176 'event': actionEventType, 2177 'page': pageDataObject, 2178 'user': userDataObj, 2179 'products': productPageLoadObj, 2180 'productFindingMethod': findingMethod 2181 }; 2182 return dataLayerJson; 2183} 2184 2185},{"../dataObject/pageObject":23,"../dataObject/userData":28,"../handlers/componentUtils":30,"@babel/runtime/helpers/interopRequireDefault":3}],45:[function(require,module,exports){ 2186"use strict"; 2187 2188Object.defineProperty(exports, "__esModule", { 2189 value: true 2190}); 2191exports.searchResultsPageLoad = searchResultsPageLoad; 2192var _searchData = require("../dataObject/searchData"); 2193var _searchLoadActionEvent = require("../pageAction/searchLoadActionEvent"); 2194var _searchUtils = require("../handlers/searchUtils"); 2195var _commonUtils = require("../handlers/commonUtils"); 2196function searchResultsPageLoad() { 2197 var queryParams = (0, _commonUtils.getQueryParameters)(); 2198 var searchKeyword = queryParams.q || null; 2199 var searchFilterCategory = 'category'; 2200 var searchPagination = queryParams.p || null; 2201 var filterValue = (0, _searchUtils.getFilterVal)(".radio-list input:checked"); 2202 var searchNumberOfResults = null; 2203 var searchSubmitType = "submit"; 2204 var searchPageLoadObj = (0, _searchData.searchData)(searchKeyword, searchNumberOfResults, searchPagination, searchFilterCategory, filterValue, searchSubmitType); 2205 var actionEventType = 'searchResultsPageLoad'; 2206 var dataLayerJson = (0, _searchLoadActionEvent.searchLoadActionEvent)(searchPageLoadObj, actionEventType); 2207 return dataLayerJson; 2208} 2209 2210},{"../dataObject/searchData":27,"../handlers/commonUtils":29,"../handlers/searchUtils":38,"../pageAction/searchLoadActionEvent":42}]},{},[40]);
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.