PageSourceSearch

https://www.illumina.com/etc.clientlibs/illumina-designs/illumina-…ib_acdl.06814ff06d69f5a8a8975811c86f73f3.js

js illumina.com collected 2026-09-24 15:15:59 UTC 92,619 bytes, 2,210 lines download raw bytes

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.