clarity-visualize 0.6.34 → 0.6.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- /*! *****************************************************************************
5
+ /******************************************************************************
6
6
  Copyright (c) Microsoft Corporation.
7
7
 
8
8
  Permission to use, copy, modify, and/or distribute this software for any
@@ -86,24 +86,24 @@ var DataHelper = /** @class */ (function () {
86
86
  else {
87
87
  _this.metrics[m] += event.data[m];
88
88
  }
89
- _this.lean = key === 1 /* Playback */ && event.data[m] === 0 ? true : _this.lean;
89
+ _this.lean = key === 1 /* Data.Metric.Playback */ && event.data[m] === 0 ? true : _this.lean;
90
90
  }
91
91
  }
92
92
  for (var entry in _this.metrics) {
93
93
  if (entry in DataHelper.METRIC_MAP) {
94
94
  var m = _this.metrics[entry];
95
95
  var map = DataHelper.METRIC_MAP[entry];
96
- var unit = "unit" in map ? map.unit : "" /* Empty */;
97
- metricMarkup.push("<li><h2>" + _this.value(m, unit) + "<span>" + _this.key(unit) + "</span></h2>" + map.name + "</li>");
96
+ var unit = "unit" in map ? map.unit : "" /* Data.Constant.Empty */;
97
+ metricMarkup.push("<li><h2>".concat(_this.value(m, unit), "<span>").concat(_this.key(unit), "</span></h2>").concat(map.name, "</li>"));
98
98
  }
99
99
  }
100
100
  // Append region information to metadata
101
101
  for (var name_1 in _this.regions) {
102
102
  var r = _this.regions[name_1];
103
- var className = (r.visibility === 10 /* Visible */ ? "visible" : (r.interaction === 20 /* Clicked */ ? "clicked" : "" /* Empty */));
104
- regionMarkup.push("<span class=\"" + className + "\">" + name_1 + "</span>");
103
+ var className = (r.visibility === 10 /* Layout.RegionVisibility.Visible */ ? "visible" : (r.interaction === 20 /* Layout.Interaction.Clicked */ ? "clicked" : "" /* Data.Constant.Empty */));
104
+ regionMarkup.push("<span class=\"".concat(className, "\">").concat(name_1, "</span>"));
105
105
  }
106
- _this.state.options.metadata.innerHTML = "<ul>" + metricMarkup.join("" /* Empty */) + "</ul><div>" + regionMarkup.join("" /* Empty */) + "</div>";
106
+ _this.state.options.metadata.innerHTML = "<ul>".concat(metricMarkup.join("" /* Data.Constant.Empty */), "</ul><div>").concat(regionMarkup.join("" /* Data.Constant.Empty */), "</div>");
107
107
  }
108
108
  };
109
109
  this.key = function (unit) {
@@ -111,7 +111,7 @@ var DataHelper = /** @class */ (function () {
111
111
  case "html-price":
112
112
  case "ld-price":
113
113
  case "cls":
114
- return "" /* Empty */;
114
+ return "" /* Data.Constant.Empty */;
115
115
  default: return unit;
116
116
  }
117
117
  };
@@ -137,15 +137,15 @@ var DataHelper = /** @class */ (function () {
137
137
  }
138
138
  };
139
139
  DataHelper.METRIC_MAP = (_a$1 = {},
140
- _a$1[2 /* TotalBytes */] = { name: "Total Bytes", unit: "KB" },
141
- _a$1[4 /* TotalCost */] = { name: "Total Cost", unit: "ms" },
142
- _a$1[3 /* LayoutCost */] = { name: "Layout Cost", unit: "ms" },
143
- _a$1[8 /* LargestPaint */] = { name: "LCP", unit: "s" },
144
- _a$1[9 /* CumulativeLayoutShift */] = { name: "CLS", unit: "cls" },
145
- _a$1[7 /* LongTaskCount */] = { name: "Long Tasks" },
146
- _a$1[24 /* CartTotal */] = { name: "Cart Total", unit: "html-price" },
147
- _a$1[13 /* ProductPrice */] = { name: "Product Price", unit: "ld-price" },
148
- _a$1[6 /* ThreadBlockedTime */] = { name: "Thread Blocked", unit: "ms" },
140
+ _a$1[2 /* Data.Metric.TotalBytes */] = { name: "Total Bytes", unit: "KB" },
141
+ _a$1[4 /* Data.Metric.TotalCost */] = { name: "Total Cost", unit: "ms" },
142
+ _a$1[3 /* Data.Metric.LayoutCost */] = { name: "Layout Cost", unit: "ms" },
143
+ _a$1[8 /* Data.Metric.LargestPaint */] = { name: "LCP", unit: "s" },
144
+ _a$1[9 /* Data.Metric.CumulativeLayoutShift */] = { name: "CLS", unit: "cls" },
145
+ _a$1[7 /* Data.Metric.LongTaskCount */] = { name: "Long Tasks" },
146
+ _a$1[24 /* Data.Metric.CartTotal */] = { name: "Cart Total", unit: "html-price" },
147
+ _a$1[13 /* Data.Metric.ProductPrice */] = { name: "Product Price", unit: "ld-price" },
148
+ _a$1[6 /* Data.Metric.ThreadBlockedTime */] = { name: "Thread Blocked", unit: "ms" },
149
149
  _a$1);
150
150
  return DataHelper;
151
151
  }());
@@ -174,45 +174,45 @@ var TAGS = ["DIV", "TR", "P", "LI", "UL", "A", "BUTTON"];
174
174
  function selector (input, beta) {
175
175
  if (beta === void 0) { beta = false; }
176
176
  var a = input.attributes;
177
- var prefix = input.prefix ? input.prefix[beta ? 1 /* Beta */ : 0 /* Stable */] : null;
178
- var suffix = beta || ((a && !("class" /* Class */ in a)) || TAGS.indexOf(input.tag) >= 0) ? ":nth-of-type(" + input.position + ")" : "" /* Empty */;
177
+ var prefix = input.prefix ? input.prefix[beta ? 1 /* Selector.Beta */ : 0 /* Selector.Stable */] : null;
178
+ var suffix = beta || ((a && !("class" /* Constant.Class */ in a)) || TAGS.indexOf(input.tag) >= 0) ? ":nth-of-type(".concat(input.position, ")") : "" /* Constant.Empty */;
179
179
  switch (input.tag) {
180
180
  case "STYLE":
181
181
  case "TITLE":
182
182
  case "LINK":
183
183
  case "META":
184
- case "*T" /* TextTag */:
185
- case "*D" /* DocumentTag */:
186
- return "" /* Empty */;
184
+ case "*T" /* Constant.TextTag */:
185
+ case "*D" /* Constant.DocumentTag */:
186
+ return "" /* Constant.Empty */;
187
187
  case "HTML":
188
- return "HTML" /* HTML */;
188
+ return "HTML" /* Constant.HTML */;
189
189
  default:
190
190
  if (prefix === null) {
191
- return "" /* Empty */;
191
+ return "" /* Constant.Empty */;
192
192
  }
193
- prefix = prefix + ">";
194
- input.tag = input.tag.indexOf("svg:" /* SvgPrefix */) === 0 ? input.tag.substr("svg:" /* SvgPrefix */.length) : input.tag;
195
- var selector = "" + prefix + input.tag + suffix;
196
- var classes = "class" /* Class */ in a && a["class" /* Class */].length > 0 ? a["class" /* Class */].trim().split(/\s+/) : null;
193
+ prefix = "".concat(prefix, ">");
194
+ input.tag = input.tag.indexOf("svg:" /* Constant.SvgPrefix */) === 0 ? input.tag.substr("svg:" /* Constant.SvgPrefix */.length) : input.tag;
195
+ var selector = "".concat(prefix).concat(input.tag).concat(suffix);
196
+ var classes = "class" /* Constant.Class */ in a && a["class" /* Constant.Class */].length > 0 ? a["class" /* Constant.Class */].trim().split(/\s+/) : null;
197
197
  if (beta) {
198
198
  // In beta mode, update selector to use "id" field when available. There are two exceptions:
199
199
  // (1) if "id" appears to be an auto generated string token, e.g. guid or a random id containing digits
200
200
  // (2) if "id" appears inside a shadow DOM, in which case we continue to prefix up to shadow DOM to prevent conflicts
201
- var id = "id" /* Id */ in a && a["id" /* Id */].length > 0 ? a["id" /* Id */] : null;
202
- classes = input.tag !== "BODY" /* BodyTag */ && classes ? classes.filter(function (c) { return !hasDigits(c); }) : [];
203
- selector = classes.length > 0 ? "" + prefix + input.tag + "." + classes.join(".") + suffix : selector;
204
- selector = id && hasDigits(id) === false ? getDomPrefix(prefix) + "#" + id : selector;
201
+ var id = "id" /* Constant.Id */ in a && a["id" /* Constant.Id */].length > 0 ? a["id" /* Constant.Id */] : null;
202
+ classes = input.tag !== "BODY" /* Constant.BodyTag */ && classes ? classes.filter(function (c) { return !hasDigits(c); }) : [];
203
+ selector = classes.length > 0 ? "".concat(prefix).concat(input.tag, ".").concat(classes.join(".")).concat(suffix) : selector;
204
+ selector = id && hasDigits(id) === false ? "".concat(getDomPrefix(prefix), "#").concat(id) : selector;
205
205
  }
206
206
  else {
207
207
  // Otherwise, fallback to stable mode, where we include class names as part of the selector
208
- selector = classes ? "" + prefix + input.tag + "." + classes.join(".") + suffix : selector;
208
+ selector = classes ? "".concat(prefix).concat(input.tag, ".").concat(classes.join(".")).concat(suffix) : selector;
209
209
  }
210
210
  return selector;
211
211
  }
212
212
  }
213
213
  function getDomPrefix(prefix) {
214
- var shadowDomStart = prefix.lastIndexOf("*S" /* ShadowDomTag */);
215
- var iframeDomStart = prefix.lastIndexOf("" + "iframe:" /* IFramePrefix */ + "HTML" /* HTML */);
214
+ var shadowDomStart = prefix.lastIndexOf("*S" /* Constant.ShadowDomTag */);
215
+ var iframeDomStart = prefix.lastIndexOf("".concat("iframe:" /* Constant.IFramePrefix */).concat("HTML" /* Constant.HTML */));
216
216
  var domStart = Math.max(shadowDomStart, iframeDomStart);
217
217
  if (domStart < 0) {
218
218
  return "";
@@ -224,7 +224,7 @@ function getDomPrefix(prefix) {
224
224
  function hasDigits(value) {
225
225
  for (var i = 0; i < value.length; i++) {
226
226
  var c = value.charCodeAt(i);
227
- if (c >= 48 /* Zero */ && c <= 57 /* Nine */) {
227
+ if (c >= 48 /* Character.Zero */ && c <= 57 /* Character.Nine */) {
228
228
  return true;
229
229
  }
230
230
  }
@@ -370,14 +370,14 @@ var HeatmapHelper = /** @class */ (function () {
370
370
  this.clear = function () {
371
371
  var doc = _this.state.window.document;
372
372
  var win = _this.state.window;
373
- var canvas = doc.getElementById("clarity-heatmap-canvas" /* HeatmapCanvas */);
373
+ var canvas = doc.getElementById("clarity-heatmap-canvas" /* Constant.HeatmapCanvas */);
374
374
  var de = doc.documentElement;
375
375
  if (canvas) {
376
376
  canvas.width = de.clientWidth;
377
377
  canvas.height = de.clientHeight;
378
- canvas.style.left = win.pageXOffset + "px" /* Pixel */;
379
- canvas.style.top = win.pageYOffset + "px" /* Pixel */;
380
- canvas.getContext("2d" /* Context */).clearRect(0, 0, canvas.width, canvas.height);
378
+ canvas.style.left = win.pageXOffset + "px" /* Constant.Pixel */;
379
+ canvas.style.top = win.pageYOffset + "px" /* Constant.Pixel */;
380
+ canvas.getContext("2d" /* Constant.Context */).clearRect(0, 0, canvas.width, canvas.height);
381
381
  }
382
382
  _this.reset();
383
383
  };
@@ -386,13 +386,13 @@ var HeatmapHelper = /** @class */ (function () {
386
386
  _this.scrollAvgFold = avgFold != null ? avgFold : _this.scrollAvgFold;
387
387
  _this.addScrollMakers = addMarkers != null ? addMarkers : _this.addScrollMakers;
388
388
  var canvas = _this.overlay();
389
- var context = canvas.getContext("2d" /* Context */);
389
+ var context = canvas.getContext("2d" /* Constant.Context */);
390
390
  var doc = _this.state.window.document;
391
391
  var body = doc.body;
392
392
  var de = doc.documentElement;
393
393
  var height = Math.max(body.scrollHeight, body.offsetHeight, de.clientHeight, de.scrollHeight, de.offsetHeight);
394
- canvas.height = Math.min(height, 40000 /* ScrollCanvasMaxHeight */);
395
- canvas.style.top = 0 + "px" /* Pixel */;
394
+ canvas.height = Math.min(height, 40000 /* Setting.ScrollCanvasMaxHeight */);
395
+ canvas.style.top = 0 + "px" /* Constant.Pixel */;
396
396
  if (canvas.width > 0 && canvas.height > 0) {
397
397
  if (_this.scrollData) {
398
398
  var grd = context.createLinearGradient(0, 0, 0, canvas.height);
@@ -400,9 +400,9 @@ var HeatmapHelper = /** @class */ (function () {
400
400
  var currentCombination = _a[_i];
401
401
  var huePercentView = 1 - (currentCombination.cumulativeSum / _this.scrollData[0].cumulativeSum);
402
402
  var percentView = (currentCombination.scrollReachY / 100) * (height / canvas.height);
403
- var hue = huePercentView * 240 /* MaxHue */;
403
+ var hue = huePercentView * 240 /* Setting.MaxHue */;
404
404
  if (percentView <= 1) {
405
- grd.addColorStop(percentView, "hsla(" + hue + ", 100%, 50%, 0.6)");
405
+ grd.addColorStop(percentView, "hsla(".concat(hue, ", 100%, 50%, 0.6)"));
406
406
  }
407
407
  }
408
408
  // Fill with gradient
@@ -415,15 +415,15 @@ var HeatmapHelper = /** @class */ (function () {
415
415
  }
416
416
  };
417
417
  this.addInfoMarkers = function (context, scrollMapInfo, width, height, avgFold) {
418
- _this.addMarker(context, width, "Average Fold" /* AverageFold */, avgFold, 84 /* MarkerMediumWidth */);
418
+ _this.addMarker(context, width, "Average Fold" /* Constant.AverageFold */, avgFold, 84 /* Setting.MarkerMediumWidth */);
419
419
  var markers = [75, 50, 25];
420
420
  var _loop_1 = function (marker) {
421
421
  var closest = scrollMapInfo.reduce(function (prev, curr) {
422
422
  return ((Math.abs(curr.percUsers - marker)) < (Math.abs(prev.percUsers - marker)) ? curr : prev);
423
423
  });
424
- if (closest.percUsers >= marker - 2 /* MarkerRange */ && closest.percUsers <= marker + 2 /* MarkerRange */) {
424
+ if (closest.percUsers >= marker - 2 /* Setting.MarkerRange */ && closest.percUsers <= marker + 2 /* Setting.MarkerRange */) {
425
425
  var markerLine = (closest.scrollReachY / 100) * height;
426
- _this.addMarker(context, width, marker + "%", markerLine, 35 /* MarkerSmallWidth */);
426
+ _this.addMarker(context, width, "".concat(marker, "%"), markerLine, 35 /* Setting.MarkerSmallWidth */);
427
427
  }
428
428
  };
429
429
  for (var _i = 0, markers_1 = markers; _i < markers_1.length; _i++) {
@@ -436,20 +436,20 @@ var HeatmapHelper = /** @class */ (function () {
436
436
  context.moveTo(0, markerY);
437
437
  context.lineTo(heatmapWidth, markerY);
438
438
  context.setLineDash([2, 2]);
439
- context.lineWidth = 1 /* MarkerLineHeight */;
440
- context.strokeStyle = "white" /* MarkerColor */;
439
+ context.lineWidth = 1 /* Setting.MarkerLineHeight */;
440
+ context.strokeStyle = "white" /* Setting.MarkerColor */;
441
441
  context.stroke();
442
- context.fillStyle = "#323130" /* CanvasTextColor */;
443
- context.fillRect(0, (markerY - 32 /* MarkerHeight */ / 2), markerWidth, 32 /* MarkerHeight */);
444
- context.fillStyle = "white" /* MarkerColor */;
445
- context.font = "500 12px Segoe UI" /* CanvasTextFont */;
446
- context.fillText(label, 5 /* MarkerPadding */, markerY + 5 /* MarkerPadding */);
442
+ context.fillStyle = "#323130" /* Setting.CanvasTextColor */;
443
+ context.fillRect(0, (markerY - 32 /* Setting.MarkerHeight */ / 2), markerWidth, 32 /* Setting.MarkerHeight */);
444
+ context.fillStyle = "white" /* Setting.MarkerColor */;
445
+ context.font = "500 12px Segoe UI" /* Setting.CanvasTextFont */;
446
+ context.fillText(label, 5 /* Setting.MarkerPadding */, markerY + 5 /* Setting.MarkerPadding */);
447
447
  };
448
448
  this.click = function (activity) {
449
449
  _this.data = _this.data || activity;
450
450
  var heat = _this.transform();
451
451
  var canvas = _this.overlay();
452
- var ctx = canvas.getContext("2d" /* Context */);
452
+ var ctx = canvas.getContext("2d" /* Constant.Context */);
453
453
  if (canvas.width > 0 && canvas.height > 0) {
454
454
  // To speed up canvas rendering, we draw ring & gradient on an offscreen canvas, so we can use drawImage API
455
455
  // Canvas performance tips: https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Optimizing_canvas
@@ -460,7 +460,7 @@ var HeatmapHelper = /** @class */ (function () {
460
460
  for (var _i = 0, heat_1 = heat; _i < heat_1.length; _i++) {
461
461
  var entry = heat_1[_i];
462
462
  ctx.globalAlpha = entry.a;
463
- ctx.drawImage(ring, entry.x - 20 /* Radius */, entry.y - 20 /* Radius */);
463
+ ctx.drawImage(ring, entry.x - 20 /* Setting.Radius */, entry.y - 20 /* Setting.Radius */);
464
464
  }
465
465
  // Add color to the canvas based on alpha value of each pixel
466
466
  var pixels = ctx.getImageData(0, 0, canvas.width, canvas.height);
@@ -484,14 +484,14 @@ var HeatmapHelper = /** @class */ (function () {
484
484
  var doc = _this.state.window.document;
485
485
  var win = _this.state.window;
486
486
  var de = doc.documentElement;
487
- var canvas = doc.getElementById("clarity-heatmap-canvas" /* HeatmapCanvas */);
487
+ var canvas = doc.getElementById("clarity-heatmap-canvas" /* Constant.HeatmapCanvas */);
488
488
  if (canvas === null) {
489
- canvas = doc.createElement("CANVAS" /* Canvas */);
490
- canvas.id = "clarity-heatmap-canvas" /* HeatmapCanvas */;
489
+ canvas = doc.createElement("CANVAS" /* Constant.Canvas */);
490
+ canvas.id = "clarity-heatmap-canvas" /* Constant.HeatmapCanvas */;
491
491
  canvas.width = 0;
492
492
  canvas.height = 0;
493
- canvas.style.position = "absolute" /* Absolute */;
494
- canvas.style.zIndex = "" + 2147483647 /* ZIndex */;
493
+ canvas.style.position = "absolute" /* Constant.Absolute */;
494
+ canvas.style.zIndex = "".concat(2147483647 /* Setting.ZIndex */);
495
495
  de.appendChild(canvas);
496
496
  win.addEventListener("scroll", _this.redraw, true);
497
497
  win.addEventListener("resize", _this.redraw, true);
@@ -503,23 +503,23 @@ var HeatmapHelper = /** @class */ (function () {
503
503
  // Ensure canvas is positioned correctly
504
504
  canvas.width = de.clientWidth;
505
505
  canvas.height = de.clientHeight;
506
- canvas.style.left = win.pageXOffset + "px" /* Pixel */;
507
- canvas.style.top = win.pageYOffset + "px" /* Pixel */;
508
- canvas.getContext("2d" /* Context */).clearRect(0, 0, canvas.width, canvas.height);
506
+ canvas.style.left = win.pageXOffset + "px" /* Constant.Pixel */;
507
+ canvas.style.top = win.pageYOffset + "px" /* Constant.Pixel */;
508
+ canvas.getContext("2d" /* Constant.Context */).clearRect(0, 0, canvas.width, canvas.height);
509
509
  return canvas;
510
510
  };
511
511
  this.getRing = function () {
512
512
  if (_this.offscreenRing === null) {
513
513
  var doc = _this.state.window.document;
514
- _this.offscreenRing = doc.createElement("CANVAS" /* Canvas */);
515
- _this.offscreenRing.width = 20 /* Radius */ * 2;
516
- _this.offscreenRing.height = 20 /* Radius */ * 2;
517
- var ctx = _this.offscreenRing.getContext("2d" /* Context */);
518
- ctx.shadowOffsetX = 20 /* Radius */ * 2;
519
- ctx.shadowBlur = 20 /* Radius */ / 2;
520
- ctx.shadowColor = "black" /* Black */;
514
+ _this.offscreenRing = doc.createElement("CANVAS" /* Constant.Canvas */);
515
+ _this.offscreenRing.width = 20 /* Setting.Radius */ * 2;
516
+ _this.offscreenRing.height = 20 /* Setting.Radius */ * 2;
517
+ var ctx = _this.offscreenRing.getContext("2d" /* Constant.Context */);
518
+ ctx.shadowOffsetX = 20 /* Setting.Radius */ * 2;
519
+ ctx.shadowBlur = 20 /* Setting.Radius */ / 2;
520
+ ctx.shadowColor = "black" /* Constant.Black */;
521
521
  ctx.beginPath();
522
- ctx.arc(-20 /* Radius */, 20 /* Radius */, 20 /* Radius */ / 2, 0, Math.PI * 2, true);
522
+ ctx.arc(-20 /* Setting.Radius */, 20 /* Setting.Radius */, 20 /* Setting.Radius */ / 2, 0, Math.PI * 2, true);
523
523
  ctx.closePath();
524
524
  ctx.fill();
525
525
  }
@@ -528,18 +528,18 @@ var HeatmapHelper = /** @class */ (function () {
528
528
  this.getGradient = function () {
529
529
  if (_this.gradientPixels === null) {
530
530
  var doc = _this.state.window.document;
531
- var offscreenGradient = doc.createElement("CANVAS" /* Canvas */);
531
+ var offscreenGradient = doc.createElement("CANVAS" /* Constant.Canvas */);
532
532
  offscreenGradient.width = 1;
533
- offscreenGradient.height = 256 /* Colors */;
534
- var ctx = offscreenGradient.getContext("2d" /* Context */);
535
- var gradient = ctx.createLinearGradient(0, 0, 0, 256 /* Colors */);
533
+ offscreenGradient.height = 256 /* Setting.Colors */;
534
+ var ctx = offscreenGradient.getContext("2d" /* Constant.Context */);
535
+ var gradient = ctx.createLinearGradient(0, 0, 0, 256 /* Setting.Colors */);
536
536
  var step = 1 / HeatmapHelper.COLORS.length;
537
537
  for (var i = 0; i < HeatmapHelper.COLORS.length; i++) {
538
538
  gradient.addColorStop(step * (i + 1), HeatmapHelper.COLORS[i]);
539
539
  }
540
540
  ctx.fillStyle = gradient;
541
- ctx.fillRect(0, 0, 1, 256 /* Colors */);
542
- _this.gradientPixels = ctx.getImageData(0, 0, 1, 256 /* Colors */);
541
+ ctx.fillRect(0, 0, 1, 256 /* Setting.Colors */);
542
+ _this.gradientPixels = ctx.getImageData(0, 0, 1, 256 /* Setting.Colors */);
543
543
  }
544
544
  return _this.gradientPixels;
545
545
  };
@@ -548,14 +548,14 @@ var HeatmapHelper = /** @class */ (function () {
548
548
  if (_this.timeout) {
549
549
  clearTimeout(_this.timeout);
550
550
  }
551
- _this.timeout = setTimeout(_this.click, 30 /* Interval */);
551
+ _this.timeout = setTimeout(_this.click, 30 /* Setting.Interval */);
552
552
  }
553
553
  else if (_this.scrollData) {
554
554
  if (event.type != 'scroll') {
555
555
  if (_this.timeout) {
556
556
  clearTimeout(_this.timeout);
557
557
  }
558
- _this.timeout = setTimeout(_this.scroll, 30 /* Interval */);
558
+ _this.timeout = setTimeout(_this.scroll, 30 /* Setting.Interval */);
559
559
  }
560
560
  }
561
561
  };
@@ -573,9 +573,9 @@ var HeatmapHelper = /** @class */ (function () {
573
573
  // Process clicks for only visible elements
574
574
  if (_this.max === null || v) {
575
575
  for (var i = 0; i < element.points; i++) {
576
- var x = Math.round(r.left + (element.x[i] / 32767 /* ClickPrecision */) * r.width);
577
- var y = Math.round(r.top + (element.y[i] / 32767 /* ClickPrecision */) * r.height);
578
- var k = "" + x + "X" /* Separator */ + y + "X" /* Separator */ + (v ? 1 : 0);
576
+ var x = Math.round(r.left + (element.x[i] / 32767 /* Data.Setting.ClickPrecision */) * r.width);
577
+ var y = Math.round(r.top + (element.y[i] / 32767 /* Data.Setting.ClickPrecision */) * r.height);
578
+ var k = "".concat(x).concat("X" /* Constant.Separator */).concat(y).concat("X" /* Constant.Separator */).concat(v ? 1 : 0);
579
579
  points[k] = k in points ? points[k] + element.clicks[i] : element.clicks[i];
580
580
  localMax = Math.max(points[k], localMax);
581
581
  }
@@ -587,8 +587,8 @@ var HeatmapHelper = /** @class */ (function () {
587
587
  // Once all points are accounted for, convert everything into absolute (x, y)
588
588
  for (var _b = 0, _c = Object.keys(points); _b < _c.length; _b++) {
589
589
  var coordinates = _c[_b];
590
- var parts = coordinates.split("X" /* Separator */);
591
- var alpha = Math.min((points[coordinates] / _this.max) + 0.15 /* AlphaBoost */, 1);
590
+ var parts = coordinates.split("X" /* Constant.Separator */);
591
+ var alpha = Math.min((points[coordinates] / _this.max) + 0.15 /* Setting.AlphaBoost */, 1);
592
592
  if (parts[2] === "1") {
593
593
  output.push({ x: parseInt(parts[0], 10), y: parseInt(parts[1], 10), a: alpha });
594
594
  }
@@ -605,7 +605,7 @@ var HeatmapHelper = /** @class */ (function () {
605
605
  for (var _i = 0, elements_1 = elements; _i < elements_1.length; _i++) {
606
606
  var e = elements_1[_i];
607
607
  // Ignore if top element ends up being the canvas element we added for heatmap visualization
608
- if (e.tagName === "CANVAS" /* Canvas */ || (e.id && e.id.indexOf("clarity-" /* ClarityPrefix */) === 0)) {
608
+ if (e.tagName === "CANVAS" /* Constant.Canvas */ || (e.id && e.id.indexOf("clarity-" /* Constant.ClarityPrefix */) === 0)) {
609
609
  continue;
610
610
  }
611
611
  visibility = e === el;
@@ -656,8 +656,8 @@ var InteractionHelper = /** @class */ (function () {
656
656
  }
657
657
  var canvas = _this.overlay();
658
658
  if (canvas) {
659
- canvas.style.left = data.x + "px" /* Pixel */;
660
- canvas.style.top = data.y + "px" /* Pixel */;
659
+ canvas.style.left = data.x + "px" /* Constant.Pixel */;
660
+ canvas.style.top = data.y + "px" /* Constant.Pixel */;
661
661
  canvas.width = de.clientWidth;
662
662
  canvas.height = de.clientHeight;
663
663
  }
@@ -674,13 +674,13 @@ var InteractionHelper = /** @class */ (function () {
674
674
  };
675
675
  this.visibility = function (event) {
676
676
  var doc = _this.state.window.document;
677
- if (doc && doc.documentElement && event.data.visible !== "visible" /* Visible */) {
678
- doc.documentElement.style.backgroundColor = "black" /* Black */;
679
- doc.documentElement.style.opacity = "0.4" /* HiddenOpacity */;
677
+ if (doc && doc.documentElement && event.data.visible !== "visible" /* Constant.Visible */) {
678
+ doc.documentElement.style.backgroundColor = "black" /* Constant.Black */;
679
+ doc.documentElement.style.opacity = "0.4" /* Constant.HiddenOpacity */;
680
680
  }
681
681
  else {
682
- doc.documentElement.style.backgroundColor = "transparent" /* Transparent */;
683
- doc.documentElement.style.opacity = "1" /* VisibleOpacity */;
682
+ doc.documentElement.style.backgroundColor = "transparent" /* Constant.Transparent */;
683
+ doc.documentElement.style.opacity = "1" /* Constant.VisibleOpacity */;
684
684
  }
685
685
  };
686
686
  this.input = function (event) {
@@ -715,12 +715,12 @@ var InteractionHelper = /** @class */ (function () {
715
715
  var type = event.event;
716
716
  var doc = _this.state.window.document;
717
717
  var de = doc.documentElement;
718
- var p = doc.getElementById("clarity-pointer" /* PointerLayer */);
719
- var pointerWidth = 29 /* PointerWidth */;
720
- var pointerHeight = 38 /* PointerHeight */;
718
+ var p = doc.getElementById("clarity-pointer" /* Constant.PointerLayer */);
719
+ var pointerWidth = 29 /* Setting.PointerWidth */;
720
+ var pointerHeight = 38 /* Setting.PointerHeight */;
721
721
  if (p === null) {
722
722
  p = doc.createElement("DIV");
723
- p.id = "clarity-pointer" /* PointerLayer */;
723
+ p.id = "clarity-pointer" /* Constant.PointerLayer */;
724
724
  de.appendChild(p);
725
725
  // Add custom styles
726
726
  var style = doc.createElement("STYLE");
@@ -729,62 +729,62 @@ var InteractionHelper = /** @class */ (function () {
729
729
  "@keyframes pulsate-two { 0% { transform: scale(1, 1); opacity: 1; } 100% { transform: scale(5, 5); opacity: 0; } }" +
730
730
  "@keyframes pulsate-touch { 0% { transform: scale(1, 1); opacity: 1; } 100% { transform: scale(2, 2); opacity: 0; } }" +
731
731
  "@keyframes disappear { 90% { transform: scale(1, 1); opacity: 1; } 100% { transform: scale(1.3, 1.3); opacity: 0; } }" +
732
- ("#" + "clarity-interaction-canvas" /* InteractionCanvas */ + " { position: absolute; left: 0; top: 0; z-index: " + 2147483647 /* ZIndex */ + "; background: none; }") +
733
- ("#" + "clarity-pointer" /* PointerLayer */ + " { position: absolute; z-index: " + 2147483647 /* ZIndex */ + "; url(" + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAmCAYAAAA4LpBhAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAASDSURBVHgB7VdPTCNlFH8z0/+FFmRatnFNiDGR4O4mBk08smZvXjjIxRueNME9eHGNxoLxSNwr4WyigYToQRJLjXDzQtDNmnhR4kWWAJm20ymddtrx94bvI9NBWAptsod9ycvM92fe73vv/b73fUP0DIlCfRQ1AMTtjwcHB1+gPgOT67oK6+TkZBjNbxRF+X1gYCCDPpX6IKdGAaTu7++HuG9tbe1ONBr9GR7r+Xy+98DsIRuemJiIjI6OJgH+3e7urruzs+OOjIw8SiaTNwRwz8OtQWPpdHoYoKt///ar2/jxaw84k8k8gt5YWVnRqEfi90BrtVph0Uetx0V67d9fqFAo3G6324XZ2VldLK4noK4AVqvVaoh8YZTAxWLxdiwW20CoM70IdceWicfjSpCxfuBEIrGxsLCQZR7QNcQDwFaRRhRmcXCSL9S3kN8CtlP2Oqz2QoWt4Q4NDanHx8cy3HQBMIe6sLS0pF811B7I5uYmhUKh1nmAQWAOteM4xcXFxczMzEzXHp+u9PDwUBHvymWBmVzr6+t6t9tJhtPzEEYuFaoguebm5nTqJOXFoMxEVCO50tMFXBaYcwwbGwAfRagv5bEKthK2igdUr9epG/EDYw//xKGmzoLz/6BQd3t7m5i9dAUJsJoLSPZp5PIGp6amXHjsVSaEirqVALk8jy/axx2hwAcMTlcRH/Ad5LfA24kEZ4JzudbySSJzyqDnomq37pH14utH/iUrCA5HCeRwHYXc8dzNNs5jfXp6uoD+e/Pz8zzfDYIqq6urihg4NyTaK2/Rw8fNo0/euWvBWI3TwGAiHW2RnjY7LRVjX+7t7d3nSWL8FFSKIj46I0r2ZXr4R/PoQT5f1TTtU3Q5OAbbbAxtV4BwXx07wUI5raJdTaVS5vLysmYYhlyMDJBHJBoeHpbFwQ0CfmuP04P8V1VVVb9AVwXGy/xE6SyHw2FuW9Aa2jYAHVx1HAZh78bGxs44wYkm0zS9PPrC1QE4+8HcPwD8HONPYNzEkAU1UX+raFcYmPswzhu9ISLmShIdHBx0lFfVH2s+SyWR/IBofgYvnmCIPTQjkYiBk8mARwYWU4aW8F5uNpslXHkstBncxjcOeyqJ6vfUO9oQd2avlyeKJj3A9z/8yAOE7uHKUgGoiRQYMFZCdEq2bZfgpYFnmd9xzprlcrnCOdV13cbWaWKezGVnAUBOmVBpkOAlPH/AxuYJu/DoPQDcxfubeB/ncZCDL+IpaDKgiVwul8AzDo1BI3RC1HPLIg+mYPQmvPke+hdY+S68ehuevIHQvYpV5/i2KIxKg5pUUew1AaL6wM4cl4oPFJjxFMJ0H6BbIIgBwAbeLSzABLBVKpVszGvSCf27r5dCNE7h1tYWX1U0ECHUaDT+REhryKENrTFbwdLj+skRxIAeM+ka4rGV2QWv2vCIjVoAryC0Jk6MCk6fGvoY0OkFoF80UDsG8AG8j/BtD78YWRSMNNoJQbSe/1Zw0tmwBB6kE0ZG+wXI4v1ECYAIdbKzf/+povypEui6t/jnwvIf5FVJ1Cj/1+UAAAAASUVORK5CYII=" /* Pointer */ + ") no-repeat left center; width: " + pointerWidth + "px; height: " + pointerHeight + "px; }") +
734
- ("." + "clarity-click" /* ClickLayer */ + ", ." + "clarity-click-ring" /* ClickRing */ + ", ." + "clarity-touch" /* TouchLayer */ + ", ." + "clarity-touch-ring" /* TouchRing */ + " { position: absolute; z-index: " + 2147483647 /* ZIndex */ + "; border-radius: 50%; background: radial-gradient(rgba(0,90,158,0.8), transparent); width: " + 22 /* ClickRadius */ + "px; height: " + 22 /* ClickRadius */ + "px;}") +
735
- ("." + "clarity-click-ring" /* ClickRing */ + " { background: transparent; border: 1px solid rgba(0,90,158,0.8); }") +
736
- ("." + "clarity-touch" /* TouchLayer */ + " { background: radial-gradient(rgba(242,97,12,1), transparent); }") +
737
- ("." + "clarity-touch-ring" /* TouchRing */ + " { background: transparent; border: 1px solid rgba(242,97,12,0.8); }") +
738
- ("." + "clarity-pointer-click" /* PointerClickLayer */ + " { background-image: url(" + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAmCAYAAAA4LpBhAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAVoSURBVHgB7VdNTCRFGP2qe6aBGRhA5mfJ7kZcV0XQTQx68MYabl44yMWbetAY3IMX12gWMCZeSLwSEi/GiAHF1SjqMAhoshuTJbg/GkM0xMQIBMj8D/Nfvq+6enZmEtFdhsSDRT66q6qnXr33varqJvoPFUHHWIw6IK6/2tbWdg8dMzBJKQXHwMCAG9UPhBDXW1tbA2gz6BhKZVAAGTs7Oy5um5+fP9fU1LQExv6xsbHGAzNDHrivr88KhUJegH+0ubkp19fXZVdX1w2v13tCAzdcbhPR3N7e3gnQuY0ry3L7nRcUcCAQuIE4MTs7a1IDi9CgXuQxCNBPNq6uyF+HWuTO5IvVjEP6uSMXlk1qYCOVSnFOgYvRLUtmVmbp9HfvUSQSebS5uXkRwIFGSF2zZFpaWoTtWEHCcgvDclPm+4/p3qvvK2CPx7M4MTERZB/QEYoCxVJxBhHsYvwn0+2WKiyLslc+pfuufSjD4fAjyG+Y03AUVyupsDRkR0eHcXBwYMuNKQi3BaYIt5uYce6Hz8XZ63MMzFKHp6am/HcrtQJZWVkhl8tVIju/KqkmgBxAdQXr3LUv6exPl5XUxWIxMjk5GRgZGbljxpWZ7u3tCX3PPCuALDEYk2Ytij9+RQ9ufFEx18LCgv9Ol5PjXsUQg9hSsXubLA3IwC7JoVgjSjfD9PDm1xVzjY6O+qnWlIeDshOxGzkzVRNgeW2mdl6FfXVkxiQsKv/8LfX9sUScY4yxCPAQpP5XjA0GwFJRTLPZrG5mUFcln6Ytc+Uq0CdcLgAvyf4/lxUw1vA3LDVVpexQedfW1ojdW2m1N4cKM8PllqLKUMI0SRhCsuVKtyLUv7XsuJo3kOA/mUt1Dg4OsqRqZ4JUPJZtIttAaqMAMzQarH8NCzwqSzcjghlrcynGh63jGinwA5VP9efIaBr2vqgBnGeltH+nJonCjPts4HPIb5iXE2nP1IPyXssniZNTBhVq0RhC3p6QTd/oHxLpk4/t356yelQawijrecnek6fKOI/9w8PDYQw1ND4+zs/LelAxNzcndIdRLRwzs5kIYT7wJL17q7D/2tPn0+jIcDunRDMt6/SUmbQT6Htra2vrAj+k+yugFRT9I6qVEGxCZwCY3784dillmubr6CqWSqUyD4a61CDclsVKSGM7TaGe8vl8yenpaTMajTqTqeSUjUSdnZ3O5iCrYUXwDM1ke+ni2NspwzAuoTGBweN8xdYZd7vdXE8jMqjnAFjEq06RQZhdT08P1RdONCWTSaEFdeSyqQfvFzO5XnrupdHfAfgm+rcxeBJdaUQS+28K9QQDcxv6eaHntWLSMdHu7q6zxWorVGnNZ6nQVmVJmSEDovoGWGyjixkmLcuK4mSKglEUk4kjYriPFwqFGF550qgzeA6/KTJTx6jVTNXRBt3ZvSpP1OSlmYNeev7lVxQgYqtcLicAmkQKohgsBnViuVwuBpZRXON8j3M2GY/HE5xTv9+fw9Ip4DknlzXAnFM2VDtMcBrXz7Cw+YFNMHoWAOdx/wTue7kf5uAXcR/CWxee7u5uD64tiGaERbZR/3Zb5E4fBj0FNpcRv8GVz4DVU2DyOKR7CLPu5rdFPagzoOmE3uxNDWJUgYl6UFEFCswWH2S6ANBVGCQKwDzu05hAEsDpWCyWw3MFsu0v6S6LySlcXV3lVxUTRnDl8/lfIGkGOcwhMuxWuPQgax9BDKicSUcoyq3sLrAqgxEPmgZ4AtImcWIkcPpk0MaAxUYAVhcT1m4GeCvuu/htD58YQWwY7ah7tNEa/lnBSeeBHeA2sh3ZdFyAXNRHlAawqNadx/edqrc/wwE66lv8/4XLX3gjac6XP/Y1AAAAAElFTkSuQmCC" /* Click */ + "); }") +
739
- ("." + "clarity-pointer-none" /* PointerNone */ + " { background: none; }") +
740
- ("." + "clarity-pointer-move" /* PointerMove */ + " { background-image: url(" + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAmCAYAAAA4LpBhAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAASDSURBVHgB7VdPTCNlFH8z0/+FFmRatnFNiDGR4O4mBk08smZvXjjIxRueNME9eHGNxoLxSNwr4WyigYToQRJLjXDzQtDNmnhR4kWWAJm20ymddtrx94bvI9NBWAptsod9ycvM92fe73vv/b73fUP0DIlCfRQ1AMTtjwcHB1+gPgOT67oK6+TkZBjNbxRF+X1gYCCDPpX6IKdGAaTu7++HuG9tbe1ONBr9GR7r+Xy+98DsIRuemJiIjI6OJgH+3e7urruzs+OOjIw8SiaTNwRwz8OtQWPpdHoYoKt///ar2/jxaw84k8k8gt5YWVnRqEfi90BrtVph0Uetx0V67d9fqFAo3G6324XZ2VldLK4noK4AVqvVaoh8YZTAxWLxdiwW20CoM70IdceWicfjSpCxfuBEIrGxsLCQZR7QNcQDwFaRRhRmcXCSL9S3kN8CtlP2Oqz2QoWt4Q4NDanHx8cy3HQBMIe6sLS0pF811B7I5uYmhUKh1nmAQWAOteM4xcXFxczMzEzXHp+u9PDwUBHvymWBmVzr6+t6t9tJhtPzEEYuFaoguebm5nTqJOXFoMxEVCO50tMFXBaYcwwbGwAfRagv5bEKthK2igdUr9epG/EDYw//xKGmzoLz/6BQd3t7m5i9dAUJsJoLSPZp5PIGp6amXHjsVSaEirqVALk8jy/axx2hwAcMTlcRH/Ad5LfA24kEZ4JzudbySSJzyqDnomq37pH14utH/iUrCA5HCeRwHYXc8dzNNs5jfXp6uoD+e/Pz8zzfDYIqq6urihg4NyTaK2/Rw8fNo0/euWvBWI3TwGAiHW2RnjY7LRVjX+7t7d3nSWL8FFSKIj46I0r2ZXr4R/PoQT5f1TTtU3Q5OAbbbAxtV4BwXx07wUI5raJdTaVS5vLysmYYhlyMDJBHJBoeHpbFwQ0CfmuP04P8V1VVVb9AVwXGy/xE6SyHw2FuW9Aa2jYAHVx1HAZh78bGxs44wYkm0zS9PPrC1QE4+8HcPwD8HONPYNzEkAU1UX+raFcYmPswzhu9ISLmShIdHBx0lFfVH2s+SyWR/IBofgYvnmCIPTQjkYiBk8mARwYWU4aW8F5uNpslXHkstBncxjcOeyqJ6vfUO9oQd2avlyeKJj3A9z/8yAOE7uHKUgGoiRQYMFZCdEq2bZfgpYFnmd9xzprlcrnCOdV13cbWaWKezGVnAUBOmVBpkOAlPH/AxuYJu/DoPQDcxfubeB/ncZCDL+IpaDKgiVwul8AzDo1BI3RC1HPLIg+mYPQmvPke+hdY+S68ehuevIHQvYpV5/i2KIxKg5pUUew1AaL6wM4cl4oPFJjxFMJ0H6BbIIgBwAbeLSzABLBVKpVszGvSCf27r5dCNE7h1tYWX1U0ECHUaDT+REhryKENrTFbwdLj+skRxIAeM+ka4rGV2QWv2vCIjVoAryC0Jk6MCk6fGvoY0OkFoF80UDsG8AG8j/BtD78YWRSMNNoJQbSe/1Zw0tmwBB6kE0ZG+wXI4v1ECYAIdbKzf/+povypEui6t/jnwvIf5FVJ1Cj/1+UAAAAASUVORK5CYII=" /* Pointer */ + "); }");
732
+ "#".concat("clarity-interaction-canvas" /* Constant.InteractionCanvas */, " { position: absolute; left: 0; top: 0; z-index: ").concat(2147483647 /* Setting.ZIndex */, "; background: none; }") +
733
+ "#".concat("clarity-pointer" /* Constant.PointerLayer */, " { position: absolute; z-index: ").concat(2147483647 /* Setting.ZIndex */, "; url(").concat("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAmCAYAAAA4LpBhAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAASDSURBVHgB7VdPTCNlFH8z0/+FFmRatnFNiDGR4O4mBk08smZvXjjIxRueNME9eHGNxoLxSNwr4WyigYToQRJLjXDzQtDNmnhR4kWWAJm20ymddtrx94bvI9NBWAptsod9ycvM92fe73vv/b73fUP0DIlCfRQ1AMTtjwcHB1+gPgOT67oK6+TkZBjNbxRF+X1gYCCDPpX6IKdGAaTu7++HuG9tbe1ONBr9GR7r+Xy+98DsIRuemJiIjI6OJgH+3e7urruzs+OOjIw8SiaTNwRwz8OtQWPpdHoYoKt///ar2/jxaw84k8k8gt5YWVnRqEfi90BrtVph0Uetx0V67d9fqFAo3G6324XZ2VldLK4noK4AVqvVaoh8YZTAxWLxdiwW20CoM70IdceWicfjSpCxfuBEIrGxsLCQZR7QNcQDwFaRRhRmcXCSL9S3kN8CtlP2Oqz2QoWt4Q4NDanHx8cy3HQBMIe6sLS0pF811B7I5uYmhUKh1nmAQWAOteM4xcXFxczMzEzXHp+u9PDwUBHvymWBmVzr6+t6t9tJhtPzEEYuFaoguebm5nTqJOXFoMxEVCO50tMFXBaYcwwbGwAfRagv5bEKthK2igdUr9epG/EDYw//xKGmzoLz/6BQd3t7m5i9dAUJsJoLSPZp5PIGp6amXHjsVSaEirqVALk8jy/axx2hwAcMTlcRH/Ad5LfA24kEZ4JzudbySSJzyqDnomq37pH14utH/iUrCA5HCeRwHYXc8dzNNs5jfXp6uoD+e/Pz8zzfDYIqq6urihg4NyTaK2/Rw8fNo0/euWvBWI3TwGAiHW2RnjY7LRVjX+7t7d3nSWL8FFSKIj46I0r2ZXr4R/PoQT5f1TTtU3Q5OAbbbAxtV4BwXx07wUI5raJdTaVS5vLysmYYhlyMDJBHJBoeHpbFwQ0CfmuP04P8V1VVVb9AVwXGy/xE6SyHw2FuW9Aa2jYAHVx1HAZh78bGxs44wYkm0zS9PPrC1QE4+8HcPwD8HONPYNzEkAU1UX+raFcYmPswzhu9ISLmShIdHBx0lFfVH2s+SyWR/IBofgYvnmCIPTQjkYiBk8mARwYWU4aW8F5uNpslXHkstBncxjcOeyqJ6vfUO9oQd2avlyeKJj3A9z/8yAOE7uHKUgGoiRQYMFZCdEq2bZfgpYFnmd9xzprlcrnCOdV13cbWaWKezGVnAUBOmVBpkOAlPH/AxuYJu/DoPQDcxfubeB/ncZCDL+IpaDKgiVwul8AzDo1BI3RC1HPLIg+mYPQmvPke+hdY+S68ehuevIHQvYpV5/i2KIxKg5pUUew1AaL6wM4cl4oPFJjxFMJ0H6BbIIgBwAbeLSzABLBVKpVszGvSCf27r5dCNE7h1tYWX1U0ECHUaDT+REhryKENrTFbwdLj+skRxIAeM+ka4rGV2QWv2vCIjVoAryC0Jk6MCk6fGvoY0OkFoF80UDsG8AG8j/BtD78YWRSMNNoJQbSe/1Zw0tmwBB6kE0ZG+wXI4v1ECYAIdbKzf/+povypEui6t/jnwvIf5FVJ1Cj/1+UAAAAASUVORK5CYII=" /* Asset.Pointer */, ") no-repeat left center; width: ").concat(pointerWidth, "px; height: ").concat(pointerHeight, "px; }") +
734
+ ".".concat("clarity-click" /* Constant.ClickLayer */, ", .").concat("clarity-click-ring" /* Constant.ClickRing */, ", .").concat("clarity-touch" /* Constant.TouchLayer */, ", .").concat("clarity-touch-ring" /* Constant.TouchRing */, " { position: absolute; z-index: ").concat(2147483647 /* Setting.ZIndex */, "; border-radius: 50%; background: radial-gradient(rgba(0,90,158,0.8), transparent); width: ").concat(22 /* Setting.ClickRadius */, "px; height: ").concat(22 /* Setting.ClickRadius */, "px;}") +
735
+ ".".concat("clarity-click-ring" /* Constant.ClickRing */, " { background: transparent; border: 1px solid rgba(0,90,158,0.8); }") +
736
+ ".".concat("clarity-touch" /* Constant.TouchLayer */, " { background: radial-gradient(rgba(242,97,12,1), transparent); }") +
737
+ ".".concat("clarity-touch-ring" /* Constant.TouchRing */, " { background: transparent; border: 1px solid rgba(242,97,12,0.8); }") +
738
+ ".".concat("clarity-pointer-click" /* Constant.PointerClickLayer */, " { background-image: url(").concat("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAmCAYAAAA4LpBhAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAVoSURBVHgB7VdNTCRFGP2qe6aBGRhA5mfJ7kZcV0XQTQx68MYabl44yMWbetAY3IMX12gWMCZeSLwSEi/GiAHF1SjqMAhoshuTJbg/GkM0xMQIBMj8D/Nfvq+6enZmEtFdhsSDRT66q6qnXr33varqJvoPFUHHWIw6IK6/2tbWdg8dMzBJKQXHwMCAG9UPhBDXW1tbA2gz6BhKZVAAGTs7Oy5um5+fP9fU1LQExv6xsbHGAzNDHrivr88KhUJegH+0ubkp19fXZVdX1w2v13tCAzdcbhPR3N7e3gnQuY0ry3L7nRcUcCAQuIE4MTs7a1IDi9CgXuQxCNBPNq6uyF+HWuTO5IvVjEP6uSMXlk1qYCOVSnFOgYvRLUtmVmbp9HfvUSQSebS5uXkRwIFGSF2zZFpaWoTtWEHCcgvDclPm+4/p3qvvK2CPx7M4MTERZB/QEYoCxVJxBhHsYvwn0+2WKiyLslc+pfuufSjD4fAjyG+Y03AUVyupsDRkR0eHcXBwYMuNKQi3BaYIt5uYce6Hz8XZ63MMzFKHp6am/HcrtQJZWVkhl8tVIju/KqkmgBxAdQXr3LUv6exPl5XUxWIxMjk5GRgZGbljxpWZ7u3tCX3PPCuALDEYk2Ytij9+RQ9ufFEx18LCgv9Ol5PjXsUQg9hSsXubLA3IwC7JoVgjSjfD9PDm1xVzjY6O+qnWlIeDshOxGzkzVRNgeW2mdl6FfXVkxiQsKv/8LfX9sUScY4yxCPAQpP5XjA0GwFJRTLPZrG5mUFcln6Ytc+Uq0CdcLgAvyf4/lxUw1vA3LDVVpexQedfW1ojdW2m1N4cKM8PllqLKUMI0SRhCsuVKtyLUv7XsuJo3kOA/mUt1Dg4OsqRqZ4JUPJZtIttAaqMAMzQarH8NCzwqSzcjghlrcynGh63jGinwA5VP9efIaBr2vqgBnGeltH+nJonCjPts4HPIb5iXE2nP1IPyXssniZNTBhVq0RhC3p6QTd/oHxLpk4/t356yelQawijrecnek6fKOI/9w8PDYQw1ND4+zs/LelAxNzcndIdRLRwzs5kIYT7wJL17q7D/2tPn0+jIcDunRDMt6/SUmbQT6Htra2vrAj+k+yugFRT9I6qVEGxCZwCY3784dillmubr6CqWSqUyD4a61CDclsVKSGM7TaGe8vl8yenpaTMajTqTqeSUjUSdnZ3O5iCrYUXwDM1ke+ni2NspwzAuoTGBweN8xdYZd7vdXE8jMqjnAFjEq06RQZhdT08P1RdONCWTSaEFdeSyqQfvFzO5XnrupdHfAfgm+rcxeBJdaUQS+28K9QQDcxv6eaHntWLSMdHu7q6zxWorVGnNZ6nQVmVJmSEDovoGWGyjixkmLcuK4mSKglEUk4kjYriPFwqFGF550qgzeA6/KTJTx6jVTNXRBt3ZvSpP1OSlmYNeev7lVxQgYqtcLicAmkQKohgsBnViuVwuBpZRXON8j3M2GY/HE5xTv9+fw9Ip4DknlzXAnFM2VDtMcBrXz7Cw+YFNMHoWAOdx/wTue7kf5uAXcR/CWxee7u5uD64tiGaERbZR/3Zb5E4fBj0FNpcRv8GVz4DVU2DyOKR7CLPu5rdFPagzoOmE3uxNDWJUgYl6UFEFCswWH2S6ANBVGCQKwDzu05hAEsDpWCyWw3MFsu0v6S6LySlcXV3lVxUTRnDl8/lfIGkGOcwhMuxWuPQgax9BDKicSUcoyq3sLrAqgxEPmgZ4AtImcWIkcPpk0MaAxUYAVhcT1m4GeCvuu/htD58YQWwY7ah7tNEa/lnBSeeBHeA2sh3ZdFyAXNRHlAawqNadx/edqrc/wwE66lv8/4XLX3gjac6XP/Y1AAAAAElFTkSuQmCC" /* Asset.Click */, "); }") +
739
+ ".".concat("clarity-pointer-none" /* Constant.PointerNone */, " { background: none; }") +
740
+ ".".concat("clarity-pointer-move" /* Constant.PointerMove */, " { background-image: url(").concat("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAmCAYAAAA4LpBhAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAASDSURBVHgB7VdPTCNlFH8z0/+FFmRatnFNiDGR4O4mBk08smZvXjjIxRueNME9eHGNxoLxSNwr4WyigYToQRJLjXDzQtDNmnhR4kWWAJm20ymddtrx94bvI9NBWAptsod9ycvM92fe73vv/b73fUP0DIlCfRQ1AMTtjwcHB1+gPgOT67oK6+TkZBjNbxRF+X1gYCCDPpX6IKdGAaTu7++HuG9tbe1ONBr9GR7r+Xy+98DsIRuemJiIjI6OJgH+3e7urruzs+OOjIw8SiaTNwRwz8OtQWPpdHoYoKt///ar2/jxaw84k8k8gt5YWVnRqEfi90BrtVph0Uetx0V67d9fqFAo3G6324XZ2VldLK4noK4AVqvVaoh8YZTAxWLxdiwW20CoM70IdceWicfjSpCxfuBEIrGxsLCQZR7QNcQDwFaRRhRmcXCSL9S3kN8CtlP2Oqz2QoWt4Q4NDanHx8cy3HQBMIe6sLS0pF811B7I5uYmhUKh1nmAQWAOteM4xcXFxczMzEzXHp+u9PDwUBHvymWBmVzr6+t6t9tJhtPzEEYuFaoguebm5nTqJOXFoMxEVCO50tMFXBaYcwwbGwAfRagv5bEKthK2igdUr9epG/EDYw//xKGmzoLz/6BQd3t7m5i9dAUJsJoLSPZp5PIGp6amXHjsVSaEirqVALk8jy/axx2hwAcMTlcRH/Ad5LfA24kEZ4JzudbySSJzyqDnomq37pH14utH/iUrCA5HCeRwHYXc8dzNNs5jfXp6uoD+e/Pz8zzfDYIqq6urihg4NyTaK2/Rw8fNo0/euWvBWI3TwGAiHW2RnjY7LRVjX+7t7d3nSWL8FFSKIj46I0r2ZXr4R/PoQT5f1TTtU3Q5OAbbbAxtV4BwXx07wUI5raJdTaVS5vLysmYYhlyMDJBHJBoeHpbFwQ0CfmuP04P8V1VVVb9AVwXGy/xE6SyHw2FuW9Aa2jYAHVx1HAZh78bGxs44wYkm0zS9PPrC1QE4+8HcPwD8HONPYNzEkAU1UX+raFcYmPswzhu9ISLmShIdHBx0lFfVH2s+SyWR/IBofgYvnmCIPTQjkYiBk8mARwYWU4aW8F5uNpslXHkstBncxjcOeyqJ6vfUO9oQd2avlyeKJj3A9z/8yAOE7uHKUgGoiRQYMFZCdEq2bZfgpYFnmd9xzprlcrnCOdV13cbWaWKezGVnAUBOmVBpkOAlPH/AxuYJu/DoPQDcxfubeB/ncZCDL+IpaDKgiVwul8AzDo1BI3RC1HPLIg+mYPQmvPke+hdY+S68ehuevIHQvYpV5/i2KIxKg5pUUew1AaL6wM4cl4oPFJjxFMJ0H6BbIIgBwAbeLSzABLBVKpVszGvSCf27r5dCNE7h1tYWX1U0ECHUaDT+REhryKENrTFbwdLj+skRxIAeM+ka4rGV2QWv2vCIjVoAryC0Jk6MCk6fGvoY0OkFoF80UDsG8AG8j/BtD78YWRSMNNoJQbSe/1Zw0tmwBB6kE0ZG+wXI4v1ECYAIdbKzf/+povypEui6t/jnwvIf5FVJ1Cj/1+UAAAAASUVORK5CYII=" /* Asset.Pointer */, "); }");
741
741
  p.appendChild(style);
742
742
  }
743
- p.style.left = (data.x - 4 /* PointerOffset */) + "px" /* Pixel */;
744
- p.style.top = (data.y - 4 /* PointerOffset */) + "px" /* Pixel */;
743
+ p.style.left = (data.x - 4 /* Setting.PointerOffset */) + "px" /* Constant.Pixel */;
744
+ p.style.top = (data.y - 4 /* Setting.PointerOffset */) + "px" /* Constant.Pixel */;
745
745
  var title = "Pointer";
746
746
  switch (type) {
747
- case 9 /* Click */:
747
+ case 9 /* Data.Event.Click */:
748
748
  title = "Click";
749
749
  _this.drawClick(doc, data.x, data.y, title);
750
- p.className = "clarity-pointer-none" /* PointerNone */;
750
+ p.className = "clarity-pointer-none" /* Constant.PointerNone */;
751
751
  break;
752
- case 16 /* DoubleClick */:
752
+ case 16 /* Data.Event.DoubleClick */:
753
753
  title = "Click";
754
754
  _this.drawClick(doc, data.x, data.y, title);
755
- p.className = "clarity-pointer-none" /* PointerNone */;
755
+ p.className = "clarity-pointer-none" /* Constant.PointerNone */;
756
756
  break;
757
- case 17 /* TouchStart */:
758
- case 18 /* TouchEnd */:
759
- case 20 /* TouchCancel */:
757
+ case 17 /* Data.Event.TouchStart */:
758
+ case 18 /* Data.Event.TouchEnd */:
759
+ case 20 /* Data.Event.TouchCancel */:
760
760
  title = "Touch";
761
761
  _this.drawTouch(doc, data.x, data.y, title);
762
- p.className = "clarity-pointer-none" /* PointerNone */;
762
+ p.className = "clarity-pointer-none" /* Constant.PointerNone */;
763
763
  break;
764
- case 19 /* TouchMove */:
764
+ case 19 /* Data.Event.TouchMove */:
765
765
  title = "Touch Move";
766
- p.className = "clarity-pointer-none" /* PointerNone */;
766
+ p.className = "clarity-pointer-none" /* Constant.PointerNone */;
767
767
  break;
768
- case 12 /* MouseMove */:
768
+ case 12 /* Data.Event.MouseMove */:
769
769
  title = "Mouse Move";
770
- p.className = "clarity-pointer-move" /* PointerMove */;
770
+ p.className = "clarity-pointer-move" /* Constant.PointerMove */;
771
771
  _this.addPoint({ time: event.time, x: data.x, y: data.y });
772
772
  _this.targetId = data.target;
773
773
  break;
774
774
  default:
775
- p.className = "clarity-pointer-move" /* PointerMove */;
775
+ p.className = "clarity-pointer-move" /* Constant.PointerMove */;
776
776
  break;
777
777
  }
778
- p.setAttribute("title" /* Title */, title + " (" + data.x + "px" /* Pixel */ + ", " + data.y + "px" /* Pixel */ + ")");
778
+ p.setAttribute("title" /* Constant.Title */, "".concat(title, " (").concat(data.x).concat("px" /* Constant.Pixel */, ", ").concat(data.y).concat("px" /* Constant.Pixel */, ")"));
779
779
  };
780
780
  this.hover = function () {
781
781
  if (_this.targetId && _this.targetId !== _this.hoverId) {
782
782
  var depth = 0;
783
783
  // First, remove any previous hover class assignments
784
784
  var hoverNode = _this.hoverId ? _this.layout.element(_this.hoverId) : null;
785
- while (hoverNode && depth < 7 /* HoverDepth */) {
785
+ while (hoverNode && depth < 7 /* Setting.HoverDepth */) {
786
786
  if ("removeAttribute" in hoverNode) {
787
- hoverNode.removeAttribute("clarity-hover" /* HoverAttribute */);
787
+ hoverNode.removeAttribute("clarity-hover" /* Constant.HoverAttribute */);
788
788
  }
789
789
  hoverNode = hoverNode.parentElement;
790
790
  depth++;
@@ -792,9 +792,9 @@ var InteractionHelper = /** @class */ (function () {
792
792
  // Then, add hover class on elements that are below the pointer
793
793
  depth = 0;
794
794
  var targetNode = _this.targetId ? _this.layout.element(_this.targetId) : null;
795
- while (targetNode && depth < 7 /* HoverDepth */) {
795
+ while (targetNode && depth < 7 /* Setting.HoverDepth */) {
796
796
  if ("setAttribute" in targetNode) {
797
- targetNode.setAttribute("clarity-hover" /* HoverAttribute */, "" /* Empty */);
797
+ targetNode.setAttribute("clarity-hover" /* Constant.HoverAttribute */, "" /* Layout.Constant.Empty */);
798
798
  }
799
799
  targetNode = targetNode.parentElement;
800
800
  depth++;
@@ -815,18 +815,18 @@ var InteractionHelper = /** @class */ (function () {
815
815
  this.drawTouch = function (doc, x, y, title) {
816
816
  var de = doc.documentElement;
817
817
  var touch = doc.createElement("DIV");
818
- touch.className = "clarity-touch" /* TouchLayer */;
819
- touch.setAttribute("title" /* Title */, title + " (" + x + "px" /* Pixel */ + ", " + y + "px" /* Pixel */ + ")");
820
- touch.style.left = (x - 22 /* ClickRadius */ / 2) + "px" /* Pixel */;
821
- touch.style.top = (y - 22 /* ClickRadius */ / 2) + "px" /* Pixel */;
818
+ touch.className = "clarity-touch" /* Constant.TouchLayer */;
819
+ touch.setAttribute("title" /* Constant.Title */, "".concat(title, " (").concat(x).concat("px" /* Constant.Pixel */, ", ").concat(y).concat("px" /* Constant.Pixel */, ")"));
820
+ touch.style.left = (x - 22 /* Setting.ClickRadius */ / 2) + "px" /* Constant.Pixel */;
821
+ touch.style.top = (y - 22 /* Setting.ClickRadius */ / 2) + "px" /* Constant.Pixel */;
822
822
  touch.style.animation = "disappear 1 1s";
823
823
  touch.style.animationFillMode = "forwards";
824
824
  de.appendChild(touch);
825
825
  // First pulsating ring
826
826
  var ringOne = touch.cloneNode();
827
- ringOne.className = "clarity-touch-ring" /* TouchRing */;
828
- ringOne.style.left = "-0.5" + "px" /* Pixel */;
829
- ringOne.style.top = "-0.5" + "px" /* Pixel */;
827
+ ringOne.className = "clarity-touch-ring" /* Constant.TouchRing */;
828
+ ringOne.style.left = "-0.5" + "px" /* Constant.Pixel */;
829
+ ringOne.style.top = "-0.5" + "px" /* Constant.Pixel */;
830
830
  ringOne.style.animation = "pulsate-touch 1 1s";
831
831
  ringOne.style.animationFillMode = "forwards";
832
832
  touch.appendChild(ringOne);
@@ -834,16 +834,16 @@ var InteractionHelper = /** @class */ (function () {
834
834
  this.drawClick = function (doc, x, y, title) {
835
835
  var de = doc.documentElement;
836
836
  var click = doc.createElement("DIV");
837
- click.className = "clarity-click" /* ClickLayer */;
838
- click.setAttribute("title" /* Title */, title + " (" + x + "px" /* Pixel */ + ", " + y + "px" /* Pixel */ + ")");
839
- click.style.left = (x - 22 /* ClickRadius */ / 2) + "px" /* Pixel */;
840
- click.style.top = (y - 22 /* ClickRadius */ / 2) + "px" /* Pixel */;
837
+ click.className = "clarity-click" /* Constant.ClickLayer */;
838
+ click.setAttribute("title" /* Constant.Title */, "".concat(title, " (").concat(x).concat("px" /* Constant.Pixel */, ", ").concat(y).concat("px" /* Constant.Pixel */, ")"));
839
+ click.style.left = (x - 22 /* Setting.ClickRadius */ / 2) + "px" /* Constant.Pixel */;
840
+ click.style.top = (y - 22 /* Setting.ClickRadius */ / 2) + "px" /* Constant.Pixel */;
841
841
  de.appendChild(click);
842
842
  // First pulsating ring
843
843
  var ringOne = click.cloneNode();
844
- ringOne.className = "clarity-click-ring" /* ClickRing */;
845
- ringOne.style.left = "-0.5" + "px" /* Pixel */;
846
- ringOne.style.top = "-0.5" + "px" /* Pixel */;
844
+ ringOne.className = "clarity-click-ring" /* Constant.ClickRing */;
845
+ ringOne.style.left = "-0.5" + "px" /* Constant.Pixel */;
846
+ ringOne.style.top = "-0.5" + "px" /* Constant.Pixel */;
847
847
  ringOne.style.animation = "pulsate-one 1 1s";
848
848
  ringOne.style.animationFillMode = "forwards";
849
849
  click.appendChild(ringOne);
@@ -852,9 +852,9 @@ var InteractionHelper = /** @class */ (function () {
852
852
  ringTwo.style.animation = "pulsate-two 1 1s";
853
853
  click.appendChild(ringTwo);
854
854
  // Play sound
855
- if (typeof Audio !== "undefined" /* Undefined */) {
855
+ if (typeof Audio !== "undefined" /* Constant.Undefined */) {
856
856
  if (_this.clickAudio === null) {
857
- _this.clickAudio = new Audio("data:video/webm;base64,GkXfo59ChoEBQveBAULygQRC84EIQoKEd2VibUKHgQRChYECGFOAZwEAAAAAAA2GEU2bdKxNu4tTq4QVSalmU6yB5U27jFOrhBZUrmtTrIIBHE27jFOrhBJUw2dTrIIBg+wBAAAAAAAAqwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVJqWayKtexgw9CQE2AjUxhdmY1OC4zMy4xMDBXQY1MYXZmNTguMzMuMTAwRImIQHWwAAAAAAAWVK5r4q4BAAAAAAAAWdeBAXPFgQGcgQAitZyDdW5khoZBX09QVVNWqoNjLqBWu4QExLQAg4EC4QEAAAAAAAARn4EBtYhA53AAAAAAAGJkgRBjopNPcHVzSGVhZAEBOAGAuwAAAAAAElTDZ0E3c3MBAAAAAAAApWPAAQAAAAAAAABnyAEAAAAAAAAwRaOKRU5DT0RFRF9CWUSHoEFkb2JlIFByZW1pZXJlIFBybyAyMDIwLjAgKE1hY2luZ8gBAAAAAAAAFUWjjlRJTUVfUkVGRVJFTkNFRIeBMGfIAQAAAAAAABRFo4REQVRFRIeKMjAyMC0wNS0xMWfIAQAAAAAAABpFo4dFTkNPREVSRIeNTGF2ZjU4LjMzLjEwMHNzAQAAAAAAADpjwAEAAAAAAAAEY8WBAWfIAQAAAAAAACJFo4dFTkNPREVSRIeVTGF2YzU4LjU5LjEwMiBsaWJvcHVzc3MBAAAAAAAAOmPAAQAAAAAAAARjxYEBZ8gBAAAAAAAAIkWjiERVUkFUSU9ORIeUMDA6MDA6MDAuMzQ3MDAwMDAwAAAfQ7Z1SsDngQCjh4EAAID4//6jh4EAFYD4//6jh4EAKYD4//6jh4EAPYD4//6jQTOBAFGA+Hf8sxqASCSh2FJGBfsZEwDIBdS8inu5b213iY0Dnu9jbest8S64kJlnCuNakokZYO8i1Wus5IXXTjHRTe0n/H904+RQTH0PGdXj50tRWTzoHv5wwgjWEduG7UuDBZeB3bb6VuqWZ1rcPJlfa5Kmrg0trnCEMbbrqATFPr3h9IjSfa8Pu2OtrPUA+sXcPf0eC79cRi9UGNxkIKf8NaiHGOxrbPyvsewpDmWLKFAwmqC/tYu7kznCSvyONWH1jFENoGGEFPrDYmM6V99Yk/71TEDwhtFjj4g+aGac1DwRBa7uDakJl6HGXL/vIR8z4qanutC0xZ8XY+PUFuBFAKy0YKZWhUOIRLy2A/2E40Q3LDRlcrVanhIf3e4v84VjIRAKAhfbLYMCTQ8G3Mu+ErEHo0E5gQBlgPh+GaacPkSEqd6zm8k76Jk8Aw8Pf7sK8lqg1Blt7hwsIfI0kefrJGluVOvxYxMZNZSiQSIOJptbwNjufeojLnvzUzNrqIBrghz4nHEFT0cYc/ZA0vWSHRgQSQD8WkqvD/vRHFCCmRh+SI6bVempNdNFloc6Uni4M58ZoiuYnmRdkSYtxJDdNOc0RhdFehBG7dNqXiTkSo0zIvdCK7XAsuJHLVMQOke7SWyPo1kFyBKoQyuK06K4VG2IqwlH138PKee8g6Wxtu+DENjWxG7HtMJf3iIo1aXOWaNdIyJMKqSAv2rUwYdPpaPtYyFMTAqH372Ocq7A4ixxMAwAksL+QaYeyss6V37dQaqtF6Skb4SggL9v4uOj0IVE+r1e/7Ooj2KAL3RG4B5WzE6TNoMNwrg+HQR8rqNBK4EAeYD4fMsrpfE2dU5rAKM3te90/U91Gt8Bn80e5ri5WSnxJ+Y8HffdtHkOib+JNvmr2AXc3De0EiMC/ecOgekxFMOiPYSEJxQLUMcMl23RySvdXXs+XM5U5+dmsrCvoNppK4JkZYiIOPI975i0OdA8q+XZlbQ+1Mz/q9GxUsjVo4t1W/bYOfr0+7kFIG8Wad0KcLAOaQN5UZq5uz4XCOoBiqkhg60DQ7c7x0eApCrx4n+aoc/1nZvWHsmumI4GAhVcyBNYOisYkyogtfPYFgoKrqvZMFB54/Xtw5AVBfUduVktZqY0HuSaFLhclAYYpEx/gPl8NGZ2YacOgAK35EJ7HMSIMZtcjbhn05lJHifyTuO7WIApoP50VdFPLw1oiofLS+j/iG6UDRvuo0DDgQCNgPhhOmsgpW2AnFd6vOCxqTjHmKAhblr1wX1IIPu5/1ftPUmPXFP+NcdIVclcWKJCMlxOyd0+2kc/EtIy6X43uooxYrcCUwj8TZgX1ooV1ZIV03qDRQmXELmp6vDXPOg+MWF4mXhMnCUAsRBoQlb/giRAIZl6+GRetMoAAvEnAFTrl2kALzo2aNfN35ESALpqn87BaA+XZdl2Da/0BXNzE5YXwfcorOXeOHLK6QBlj+7w2Q/fKiuZbwWZ+sE67NeUo0E1gQChgPh/KZRcKyQ9fyIqiewLQu0jhqZkXwEEyS1JfYtVxvZ6rhEqjbzwRqfczQjpHLJR7WVtEKi/NHwXZOYYCzbXHXszeAc7yI+i0hfTKOtqNz69nwX5PZ0weNjP4w6QbWoW8OzWPA2f8ZXfptK1Z6PUW/bNj+hdnd46OZzGK6qLr0EZQeSDluLYFSAoeywY65FGKsH51y0g3cQAeCm0Hznu62i4scicJcYqtavuPi6CJTSy+32DeRbWPB+YZqKpFfoTj87ga5TPE0w5lSOF/slzVzQuchTYUMSWIaBUewA6TipFaEOzi43vUclCGINiKi9lGX15S2bFeBb7rldhrBkNUw6/r4weukw7Fle08ZaAFG1BFocao5MxZ3NhYFU7rvjrgh8hL790E2gMLfCwFNTaJ5kfo0E9gQC1gPh7RQVaT+xi+Tfqby3j6v+Ws0ncRr8n07Sye0xZsosiFldqDH0aJIuw8DjUxc7oxvCAGAKQXyc+ukXJ4dFdBG/uiYYUGLTXR9UfvK0Aa/aPSaA0xm15ulCJG+OgPSgi73bhK/DEoLSKw6wMX/daeL7AuuvZAC4Lm+82QqkWaKXi+UKET1uykU8LjPeCFcJOr8tmsu8Na9zgyhX7sk+O72ILT3Tq6wtu0P/kBrkuSRVLDljecUtPGPd81nDxthyri0GHn1dGCQO/ryf9UO/d20YclmvvGBMzrm+q7e9OTsHVS/EQiYVfdUR3tB2585J3FkDJQGnksPMytaB5oLJYgsJgTwGMztB4U7Px4tsx+nO3yTjNTr9po0qxhXggVDFmcrkE9VUMcDYcaqi/ygCf2RTVud/egmVznRWjQTCBAMmA+Hzk3SIwInlcM2PFuCLBsYPmx3rbcIXqk7OkMk+s8oaWDdn62v0ln085oXKkuFLC/HALb7ByiqCblKgO86J2B/n+xC4RTNIO+5QV8nXidUXkdFiltBuoUUAa2zLh90VncpZQC0tLDxfV32+Igrrj7FZOu3RvtRy8Yw9TvSjOwlYkAMqydxC9O9qbyOecB4onpr62eH7mXD4AicyRmXzRG88GvsB09N7QEEBWNNBGHyC7i0Gkmn9h/b7ypju8iBp7ZSghXzmNyBsp9cmOTxiCgiO94OPMLe35NzmIoM/Rbzdgi7DT1q4n4/06JtDxcwbibc5PWaaoehRpZ41p6bcpJ15QrlKTfklR0P+FDioJIQ4NvzZlUKrJtJ3FjfEmcAoWz18pFvCPLaK0TK/Mo0EygQDdgPh9vdOMNo75kIEdfCwlJUwcZsrSyfZcQTEMDsHY9ozsBLRDSLmLSYpqA3Mt0LPpmMYOckcGC/acmIP52RObp1DjpAfXGotFeXzyTIVFcD/mF8f2gteywXt++dRJm04SU7wF5fr+qsirERDjxStbtnuICHN4+jXw2zy6KQAADCrLZHgcqOYBrgcferGAAAAAAAAAAAAAAAAAAAAAIHTo9YXVkUJ3lE/QiyCmhh4KpBCGpc3sSM0hW/uUNFxO744xxgjWWy+LksHodcnYT1+1M13MXq0oMnNJWSgWqbjbOWzfYGDFITcGvrPupQH266TUDffTYAFX/qLkruQ7UwGx66GwkbjBGwdc8y5PqdohY0JXzta+r8KGdVitaFYALTmJUqFc9URJ1WLGn2/0TX5Xo0ETgQDxgPh/3ztwqxbXHlZsp/yXeBDstIY8ov3IYo9ekn89p0yxz4ziLbp2PgwxkiZTBrJbXu1j7rNqjdVJ29SbxVQ96tdWZbh9xBr+bpL9fM8UBP5oljtFFlCrDNz5X/X2kcHm2EswzFpHwF4RqqFJEtiMJ10iTbW4nUbtKN8o4GBuFHBQb2aAXEQE8Slkx+z2KedA1NoEkeHLyC3RVTr4NhqC8xhZnPFSwTZy3Woo+gQCOac0AIAJ7me5hJ6P+5HimuFWwE8719kEheeataVAEAE28VJhAEAHvqn9MYAQAe+mOv9MAHgAHlJhu9NgA8ADar/Tw1UQAG0ACqMNVEKXOQAKoAEzjdI4ACqAAAAB+Y2WeOijh4EBBYD4//6jh4EBGYD4//6jh4EBLYD4//6jh4EBQYD4//6gAQAAAAAAABChh4EBVQD4//51ooQA14fI" /* Sound */);
857
+ _this.clickAudio = new Audio("data:video/webm;base64,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" /* Asset.Sound */);
858
858
  }
859
859
  _this.clickAudio.play();
860
860
  }
@@ -863,10 +863,10 @@ var InteractionHelper = /** @class */ (function () {
863
863
  // Create canvas for visualizing interactions
864
864
  var doc = _this.state.window.document;
865
865
  var de = doc.documentElement;
866
- var canvas = doc.getElementById("clarity-interaction-canvas" /* InteractionCanvas */);
866
+ var canvas = doc.getElementById("clarity-interaction-canvas" /* Constant.InteractionCanvas */);
867
867
  if (canvas === null) {
868
868
  canvas = doc.createElement("canvas");
869
- canvas.id = "clarity-interaction-canvas" /* InteractionCanvas */;
869
+ canvas.id = "clarity-interaction-canvas" /* Constant.InteractionCanvas */;
870
870
  canvas.width = 0;
871
871
  canvas.height = 0;
872
872
  de.appendChild(canvas);
@@ -882,14 +882,14 @@ var InteractionHelper = /** @class */ (function () {
882
882
  for (var i = _this.points.length - 1; i > 0; i--) {
883
883
  // Each pixel in the trail has a pixel life of 3s. The only exception to this is if the user scrolled.
884
884
  // We reset the trail after every scroll event to avoid drawing weird looking trail.
885
- if (i >= _this.scrollPointIndex && time - _this.points[i].time < 3000 /* PixelLife */) {
885
+ if (i >= _this.scrollPointIndex && time - _this.points[i].time < 3000 /* Setting.PixelLife */) {
886
886
  p.push(_this.points[i]);
887
887
  }
888
888
  else {
889
889
  break;
890
890
  }
891
891
  }
892
- return p.slice(0, 75 /* MaxTrailPoints */);
892
+ return p.slice(0, 75 /* Setting.MaxTrailPoints */);
893
893
  };
894
894
  this.trail = function (now) {
895
895
  var canvas = _this.overlay();
@@ -918,9 +918,9 @@ var InteractionHelper = /** @class */ (function () {
918
918
  gradient.addColorStop(1, _this.color(currentFactor));
919
919
  gradient.addColorStop(0, _this.color(lastFactor));
920
920
  // Line width of the trail shrinks as the position of the point goes farther away.
921
- ctx.lineWidth = 6 /* TrailWidth */ * currentFactor;
922
- ctx.lineCap = "round" /* Round */;
923
- ctx.lineJoin = "round" /* Round */;
921
+ ctx.lineWidth = 6 /* Setting.TrailWidth */ * currentFactor;
922
+ ctx.lineCap = "round" /* Constant.Round */;
923
+ ctx.lineJoin = "round" /* Constant.Round */;
924
924
  ctx.strokeStyle = gradient;
925
925
  ctx.beginPath();
926
926
  // The coordinates need to be relative to where canvas is rendered.
@@ -946,7 +946,7 @@ var InteractionHelper = /** @class */ (function () {
946
946
  for (var i = 0; i < 3; i++) {
947
947
  c[i] = Math.round(e[i] + factor * (s[i] - e[i]));
948
948
  }
949
- return "rgba(" + c[0] + ", " + c[1] + ", " + c[2] + ", " + factor + ")";
949
+ return "rgba(".concat(c[0], ", ").concat(c[1], ", ").concat(c[2], ", ").concat(factor, ")");
950
950
  };
951
951
  // Reference: https://en.wikipedia.org/wiki/Cubic_Hermite_spline#Cardinal_spline
952
952
  this.curve = function (path) {
@@ -1021,24 +1021,16 @@ var LayoutHelper = /** @class */ (function () {
1021
1021
  }
1022
1022
  return null;
1023
1023
  };
1024
- this.box = function (event) {
1025
- var data = event.data;
1026
- for (var _i = 0, data_1 = data; _i < data_1.length; _i++) {
1027
- var b = data_1[_i];
1028
- var el = _this.element(b.id);
1029
- _this.resize(el, b.width, b.height);
1030
- }
1031
- };
1032
1024
  this.addToHashMap = function (data, parent) {
1033
1025
  // In case of selector collision, prefer the first inserted node
1034
1026
  _this.hashMap[data.hash] = _this.get(data.hash) || parent;
1035
1027
  _this.hashMapBeta[data.hashBeta] = _this.get(data.hashBeta) || parent;
1036
1028
  };
1037
1029
  this.resize = function (el, width, height) {
1038
- if (el && el.nodeType === 1 /* ELEMENT_NODE */ && width && height) {
1039
- el.style.width = width + "px" /* Pixel */;
1040
- el.style.height = height + "px" /* Pixel */;
1041
- el.style.boxSizing = "border-box" /* BorderBox */; // Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing
1030
+ if (el && el.nodeType === 1 /* NodeType.ELEMENT_NODE */ && width && height) {
1031
+ el.style.width = width + "px" /* Layout.Constant.Pixel */;
1032
+ el.style.height = height + "px" /* Layout.Constant.Pixel */;
1033
+ el.style.boxSizing = "border-box" /* Layout.Constant.BorderBox */; // Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing
1042
1034
  }
1043
1035
  };
1044
1036
  this.element = function (nodeId) {
@@ -1052,7 +1044,7 @@ var LayoutHelper = /** @class */ (function () {
1052
1044
  if (!event) return [3 /*break*/, 2];
1053
1045
  doc = this.state.window.document;
1054
1046
  if (!(doc && doc.documentElement)) return [3 /*break*/, 2];
1055
- doc.documentElement.style.visibility = "hidden" /* Hidden */;
1047
+ doc.documentElement.style.visibility = "hidden" /* Constant.Hidden */;
1056
1048
  // Render all DOM events to reconstruct the page
1057
1049
  this.markup(event);
1058
1050
  // Wait on all stylesheets to finish loading
@@ -1061,7 +1053,7 @@ var LayoutHelper = /** @class */ (function () {
1061
1053
  // Wait on all stylesheets to finish loading
1062
1054
  _a.sent();
1063
1055
  // Toggle back the visibility of target window
1064
- doc.documentElement.style.visibility = "visible" /* Visible */;
1056
+ doc.documentElement.style.visibility = "visible" /* Constant.Visible */;
1065
1057
  _a.label = 2;
1066
1058
  case 2: return [2 /*return*/];
1067
1059
  }
@@ -1086,13 +1078,13 @@ var LayoutHelper = /** @class */ (function () {
1086
1078
  var pivot = _this.element(node.previous);
1087
1079
  var insert = _this.insertAfter;
1088
1080
  var tag = node.tag;
1089
- if (tag && tag.indexOf("iframe:" /* IFramePrefix */) === 0) {
1090
- tag = node.tag.substr("iframe:" /* IFramePrefix */.length);
1081
+ if (tag && tag.indexOf("iframe:" /* Layout.Constant.IFramePrefix */) === 0) {
1082
+ tag = node.tag.substr("iframe:" /* Layout.Constant.IFramePrefix */.length);
1091
1083
  }
1092
1084
  switch (tag) {
1093
- case "*D" /* DocumentTag */:
1085
+ case "*D" /* Layout.Constant.DocumentTag */:
1094
1086
  var tagDoc = tag !== node.tag ? (parent_1 ? parent_1.contentDocument : null) : doc;
1095
- if (tagDoc && tagDoc === doc && type === 5 /* Discover */) {
1087
+ if (tagDoc && tagDoc === doc && type === 5 /* Data.Event.Discover */) {
1096
1088
  _this.reset();
1097
1089
  }
1098
1090
  if (typeof XMLSerializer !== "undefined" && tagDoc) {
@@ -1101,13 +1093,13 @@ var LayoutHelper = /** @class */ (function () {
1101
1093
  tagDoc.close();
1102
1094
  }
1103
1095
  break;
1104
- case "*P" /* PolyfillShadowDomTag */:
1096
+ case "*P" /* Layout.Constant.PolyfillShadowDomTag */:
1105
1097
  // In case of polyfill, map shadow dom to it's parent for rendering purposes
1106
1098
  // All its children should be inserted as regular children to the parent node.
1107
1099
  _this.nodes[node.id] = parent_1;
1108
1100
  _this.addToHashMap(node, parent_1);
1109
1101
  break;
1110
- case "*S" /* ShadowDomTag */:
1102
+ case "*S" /* Layout.Constant.ShadowDomTag */:
1111
1103
  if (parent_1) {
1112
1104
  var shadowRoot = _this.element(node.id);
1113
1105
  shadowRoot = shadowRoot ? shadowRoot : parent_1.attachShadow({ mode: "open" });
@@ -1116,10 +1108,10 @@ var LayoutHelper = /** @class */ (function () {
1116
1108
  // Support for adoptedStyleSheet is limited and not available in all browsers.
1117
1109
  // To ensure that we can replay session in any browser, we turn adoptedStyleSheets from recording
1118
1110
  // into classic style tags at the playback time.
1119
- if (shadowRoot.firstChild && shadowRoot.firstChild.id === "clarity-adopted-style" /* AdoptedStyleSheet */) {
1111
+ if (shadowRoot.firstChild && shadowRoot.firstChild.id === "clarity-adopted-style" /* Constant.AdoptedStyleSheet */) {
1120
1112
  shadowStyle = shadowRoot.firstChild;
1121
1113
  }
1122
- shadowStyle.id = "clarity-adopted-style" /* AdoptedStyleSheet */;
1114
+ shadowStyle.id = "clarity-adopted-style" /* Constant.AdoptedStyleSheet */;
1123
1115
  shadowStyle.textContent = node.attributes["style"];
1124
1116
  shadowRoot.appendChild(shadowStyle);
1125
1117
  }
@@ -1127,16 +1119,16 @@ var LayoutHelper = /** @class */ (function () {
1127
1119
  _this.addToHashMap(node, shadowRoot);
1128
1120
  }
1129
1121
  break;
1130
- case "*T" /* TextTag */:
1122
+ case "*T" /* Layout.Constant.TextTag */:
1131
1123
  var textElement = _this.element(node.id);
1132
1124
  textElement = textElement ? textElement : doc.createTextNode(null);
1133
1125
  textElement.nodeValue = node.value;
1134
1126
  insert(node, parent_1, textElement, pivot);
1135
1127
  break;
1136
- case "*M" /* SuspendMutationTag */:
1128
+ case "*M" /* Layout.Constant.SuspendMutationTag */:
1137
1129
  var suspendedElement = _this.element(node.id);
1138
1130
  if (suspendedElement && suspendedElement.nodeType === Node.ELEMENT_NODE) {
1139
- suspendedElement.setAttribute("data-clarity-suspend" /* Suspend */, "" /* Empty */);
1131
+ suspendedElement.setAttribute("data-clarity-suspend" /* Constant.Suspend */, "" /* Layout.Constant.Empty */);
1140
1132
  }
1141
1133
  break;
1142
1134
  case "HTML":
@@ -1144,7 +1136,7 @@ var LayoutHelper = /** @class */ (function () {
1144
1136
  if (htmlDoc !== null) {
1145
1137
  var docElement = _this.element(node.id);
1146
1138
  if (docElement === null) {
1147
- var newDoc = htmlDoc.implementation.createHTMLDocument("" /* Empty */);
1139
+ var newDoc = htmlDoc.implementation.createHTMLDocument("" /* Layout.Constant.Empty */);
1148
1140
  docElement = newDoc.documentElement;
1149
1141
  var p = htmlDoc.importNode(docElement, true);
1150
1142
  htmlDoc.replaceChild(p, htmlDoc.documentElement);
@@ -1157,8 +1149,8 @@ var LayoutHelper = /** @class */ (function () {
1157
1149
  }
1158
1150
  _this.setAttributes(htmlDoc.documentElement, node);
1159
1151
  // If we are still processing discover events, keep the markup hidden until we are done
1160
- if (type === 5 /* Discover */) {
1161
- htmlDoc.documentElement.style.visibility = "hidden" /* Hidden */;
1152
+ if (type === 5 /* Data.Event.Discover */ && !parent_1) {
1153
+ htmlDoc.documentElement.style.visibility = "hidden" /* Constant.Hidden */;
1162
1154
  }
1163
1155
  _this.nodes[node.id] = htmlDoc.documentElement;
1164
1156
  _this.addToHashMap(node, htmlDoc.documentElement);
@@ -1168,9 +1160,9 @@ var LayoutHelper = /** @class */ (function () {
1168
1160
  var headElement = _this.element(node.id);
1169
1161
  if (headElement === null) {
1170
1162
  headElement = doc.createElement(node.tag);
1171
- if (node.attributes && "*B" /* Base */ in node.attributes) {
1163
+ if (node.attributes && "*B" /* Layout.Constant.Base */ in node.attributes) {
1172
1164
  var base = doc.createElement("base");
1173
- base.href = node.attributes["*B" /* Base */];
1165
+ base.href = node.attributes["*B" /* Layout.Constant.Base */];
1174
1166
  headElement.appendChild(base);
1175
1167
  }
1176
1168
  // Add custom styles to assist with visualization
@@ -1226,8 +1218,8 @@ var LayoutHelper = /** @class */ (function () {
1226
1218
  _this.events[node.id] = node;
1227
1219
  }
1228
1220
  };
1229
- for (var _i = 0, data_2 = data; _i < data_2.length; _i++) {
1230
- var node = data_2[_i];
1221
+ for (var _i = 0, data_1 = data; _i < data_1.length; _i++) {
1222
+ var node = data_1[_i];
1231
1223
  _loop_1(node);
1232
1224
  }
1233
1225
  };
@@ -1238,8 +1230,8 @@ var LayoutHelper = /** @class */ (function () {
1238
1230
  var sheet = node.sheet;
1239
1231
  var cssRules = sheet ? sheet.cssRules : [];
1240
1232
  for (var i = 0; i < cssRules.length; i++) {
1241
- if (cssRules[i].cssText.indexOf(":hover" /* Hover */) >= 0) {
1242
- var css = cssRules[i].cssText.replace(/:hover/g, "[" + "clarity-hover" /* CustomHover */ + "]");
1233
+ if (cssRules[i].cssText.indexOf(":hover" /* Constant.Hover */) >= 0) {
1234
+ var css = cssRules[i].cssText.replace(/:hover/g, "[".concat("clarity-hover" /* Constant.CustomHover */, "]"));
1243
1235
  sheet.removeRule(i);
1244
1236
  sheet.insertRule(css, i);
1245
1237
  }
@@ -1251,16 +1243,16 @@ var LayoutHelper = /** @class */ (function () {
1251
1243
  }
1252
1244
  };
1253
1245
  this.createElement = function (doc, tag) {
1254
- if (tag && tag.indexOf("svg:" /* SvgPrefix */) === 0) {
1255
- return doc.createElementNS("http://www.w3.org/2000/svg" /* SvgNamespace */, tag.substr("svg:" /* SvgPrefix */.length));
1246
+ if (tag && tag.indexOf("svg:" /* Layout.Constant.SvgPrefix */) === 0) {
1247
+ return doc.createElementNS("http://www.w3.org/2000/svg" /* Layout.Constant.SvgNamespace */, tag.substr("svg:" /* Layout.Constant.SvgPrefix */.length));
1256
1248
  }
1257
1249
  try {
1258
1250
  return doc.createElement(tag);
1259
1251
  }
1260
1252
  catch (ex) {
1261
1253
  // We log the warning on non-standard markup but continue with the visualization
1262
- console.warn("Exception encountered while creating element " + tag + ": " + ex);
1263
- return doc.createElement("clarity-unknown" /* UnknownTag */);
1254
+ console.warn("Exception encountered while creating element ".concat(tag, ": ").concat(ex));
1255
+ return doc.createElement("clarity-unknown" /* Constant.UnknownTag */);
1264
1256
  }
1265
1257
  };
1266
1258
  this.insertAfter = function (data, parent, node, previous) {
@@ -1276,7 +1268,7 @@ var LayoutHelper = /** @class */ (function () {
1276
1268
  this.firstChild = function (node) {
1277
1269
  var child = node.firstChild;
1278
1270
  // BASE tag should always be the first child to ensure resources with relative URLs are loaded correctly
1279
- if (child && child.nodeType === 1 /* ELEMENT_NODE */ && child.tagName === "BASE" /* BaseTag */) {
1271
+ if (child && child.nodeType === 1 /* NodeType.ELEMENT_NODE */ && child.tagName === "BASE" /* Layout.Constant.BaseTag */) {
1280
1272
  return child.nextSibling;
1281
1273
  }
1282
1274
  return child;
@@ -1302,17 +1294,17 @@ var LayoutHelper = /** @class */ (function () {
1302
1294
  var attributes = data.attributes || {};
1303
1295
  var sameorigin = false;
1304
1296
  // Clarity attributes
1305
- attributes["data-clarity-id" /* Id */] = "" + data.id;
1306
- attributes["data-clarity-hash" /* Hash */] = "" + data.hash;
1307
- attributes["data-clarity-hashbeta" /* HashBeta */] = "" + data.hashBeta;
1308
- var tag = node.nodeType === 1 /* ELEMENT_NODE */ ? node.tagName.toLowerCase() : null;
1297
+ attributes["data-clarity-id" /* Constant.Id */] = "".concat(data.id);
1298
+ attributes["data-clarity-hash" /* Constant.Hash */] = "".concat(data.hash);
1299
+ attributes["data-clarity-hashbeta" /* Constant.HashBeta */] = "".concat(data.hashBeta);
1300
+ var tag = node.nodeType === 1 /* NodeType.ELEMENT_NODE */ ? node.tagName.toLowerCase() : null;
1309
1301
  // First remove all its existing attributes
1310
1302
  if (node.attributes) {
1311
1303
  var length_1 = node.attributes.length;
1312
1304
  while (node.attributes && length_1 > 0) {
1313
1305
  // Do not remove "clarity-hover" attribute and let it be managed by interaction module
1314
1306
  // This helps avoid flickers during visualization
1315
- if (node.attributes[0].name !== "clarity-hover" /* HoverAttribute */) {
1307
+ if (node.attributes[0].name !== "clarity-hover" /* Constant.HoverAttribute */) {
1316
1308
  node.removeAttribute(node.attributes[0].name);
1317
1309
  }
1318
1310
  length_1--;
@@ -1326,22 +1318,22 @@ var LayoutHelper = /** @class */ (function () {
1326
1318
  if (attribute.indexOf("xlink:") === 0) {
1327
1319
  node.setAttributeNS("http://www.w3.org/1999/xlink", attribute, v);
1328
1320
  }
1329
- else if (attribute.indexOf("*O" /* SameOrigin */) === 0) {
1321
+ else if (attribute.indexOf("*O" /* Layout.Constant.SameOrigin */) === 0) {
1330
1322
  sameorigin = true;
1331
1323
  }
1332
1324
  else if (attribute.indexOf("*") === 0) {
1333
1325
  // Do nothing if we encounter internal Clarity attributes
1334
1326
  }
1335
- else if (tag === "iframe" /* IFrameTag */ && (attribute.indexOf("src") === 0 || attribute.indexOf("allow") === 0) || attribute === "sandbox") {
1336
- node.setAttribute("data-clarity-" + attribute, v);
1327
+ else if (tag === "iframe" /* Constant.IFrameTag */ && (attribute.indexOf("src") === 0 || attribute.indexOf("allow") === 0) || attribute === "sandbox") {
1328
+ node.setAttribute("data-clarity-".concat(attribute), v);
1337
1329
  }
1338
- else if (tag === "img" /* ImageTag */ && attribute.indexOf("src") === 0 && (v === null || v.length === 0)) {
1339
- node.setAttribute(attribute, "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" /* Transparent */);
1340
- var size = "l" /* Large */;
1330
+ else if (tag === "img" /* Constant.ImageTag */ && attribute.indexOf("src") === 0 && (v === null || v.length === 0)) {
1331
+ node.setAttribute(attribute, "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" /* Asset.Transparent */);
1332
+ var size = "l" /* Constant.Large */;
1341
1333
  if (data.width) {
1342
- size = data.width <= 200 /* Medium */ ? "m" /* Medium */ : (data.width <= 75 /* Small */ ? "s" /* Small */ : size);
1334
+ size = data.width <= 200 /* Setting.Medium */ ? "m" /* Constant.Medium */ : (data.width <= 75 /* Setting.Small */ ? "s" /* Constant.Small */ : size);
1343
1335
  }
1344
- node.setAttribute("data-clarity-hide" /* Hide */, size);
1336
+ node.setAttribute("data-clarity-hide" /* Constant.Hide */, size);
1345
1337
  }
1346
1338
  else {
1347
1339
  node.setAttribute(attribute, v);
@@ -1353,29 +1345,29 @@ var LayoutHelper = /** @class */ (function () {
1353
1345
  }
1354
1346
  }
1355
1347
  }
1356
- if (sameorigin === false && tag === "iframe" /* IFrameTag */ && typeof node.setAttribute == "function" /* Function */) {
1357
- node.setAttribute("data-clarity-unavailable" /* Unavailable */, "" /* Empty */);
1348
+ if (sameorigin === false && tag === "iframe" /* Constant.IFrameTag */ && typeof node.setAttribute == "function" /* Constant.Function */) {
1349
+ node.setAttribute("data-clarity-unavailable" /* Constant.Unavailable */, "" /* Layout.Constant.Empty */);
1358
1350
  }
1359
1351
  // Add an empty ALT tag on all IMG elements
1360
- if (tag === "img" /* ImageTag */ && !node.hasAttribute("alt" /* AltAttribute */)) {
1361
- node.setAttribute("alt" /* AltAttribute */, "" /* Empty */);
1352
+ if (tag === "img" /* Constant.ImageTag */ && !node.hasAttribute("alt" /* Constant.AltAttribute */)) {
1353
+ node.setAttribute("alt" /* Constant.AltAttribute */, "" /* Constant.Empty */);
1362
1354
  }
1363
1355
  // During visualization This will prevent the browser from auto filling form fields with saved details of user who is seeing the visualization
1364
- if (tag === "form" /* FormTag */ || tag === "input" /* InputTag */) {
1365
- if (node.hasAttribute("autocomplete" /* AutoComplete */)) {
1366
- node.removeAttribute("autocomplete" /* AutoComplete */);
1356
+ if (tag === "form" /* Constant.FormTag */ || tag === "input" /* Constant.InputTag */) {
1357
+ if (node.hasAttribute("autocomplete" /* Constant.AutoComplete */)) {
1358
+ node.removeAttribute("autocomplete" /* Constant.AutoComplete */);
1367
1359
  }
1368
- node.setAttribute("autocomplete" /* AutoComplete */, "new-password" /* NewPassword */);
1360
+ node.setAttribute("autocomplete" /* Constant.AutoComplete */, "new-password" /* Constant.NewPassword */);
1369
1361
  }
1370
1362
  };
1371
1363
  this.getCustomStyle = function () {
1372
1364
  // tslint:disable-next-line: max-line-length
1373
- return "img" /* ImageTag */ + "[" + "data-clarity-hide" /* Hide */ + "] { background-color: #CCC; background-image: url(" + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAANvSURBVHgB7Ve9VhpREJ5dU6BNVqt0wS6dpEuX9QmiTyA+gfgE4BOgZSrJE4hlKvEJxDKVa2caoaSSfB87F4Z7dtmFhFTMOfcMe52Z+935u6PIhjb0dxTIihRFUQ2M6z0/dXuI9ay8PwTJklQaEADw0JMgCI4USFSkMx6Pe2BdrFtgS6QEFQICjirYGYDUc0AMcXCCvw8XAVVwHQD7IasAokfCMGzB0NmCA1o44N7T+wpwlwouT+80z2NbOWAaMHqDn7FuJcorapRATkej0bOvyz2s7zs7O2L0GbYXrCrscjUqlUoAuZ6vH3hAIr3diW4xHC3wW+w/KZhLgDmXEgRzbR6udvbBD/DdITB3UewfWm+FRpnIHwyYLo1A+Aq/vzkDWFdSni4krTjm1RnDOxgM9nFOS//OM++0YmeAFMydQw4gDSgeu7LVyprE3489je3u7t5waQFMifrQ6ehn7PZfX18v6BkFOwcq9MDQQKxeseRu0PXARJprBHxED2t7sPSol6p5YHs467OkXo8cqBA/rmXmmVO/atzZzk4G0Kond+DJJJLmStc3Sm+rpxLVbYcEoRu8xbWNp9U1B1rqyzzIRNQj5tAe84ZVKVmGZ6BoK5Vh2JADT1hjLny3rBL27nS/7RtUXZdDmb1H5Ug1rDgjrFMKrGGb2CzPt7e3C95gb2+vqeU/1Mor/UZpg21og50CsfYzATllsLY+E6TE60OTPoUqOV8EQNKKmuTTgifHAmO4GOokyDFah2BTTAOTNFcmIQFI3qyVoxurp+dIL3ZF72bYdzL1zKcDLb2P1n4rqUfcg/nB3Cre3t6uQeY3ZBOri72q87B7ULHY035CdmTs85H9BVlR23yWumVf+6YJo0/MK7qcI8al9RCqq9R4w4ICq9JDYZEwk44ly2TWFtGT+VKnF2PwB6cis8sUzkw+vSsrqNXQ0eUmxo+S5gEPfvQBSTpNLjU1rjzCLiKEYAAWMQRFA5m2GzdJxIUhW5H6yutFguhRToapcb8WQGwL5MwtDnt5cvQOZJuq0yHfkjUQWwHbAn5+AqgvKHGW/IsPRquR+ZdgcQIdrStkYh5tN1ocZYCpSto2Dqezl6yRMga/yQSpXToyYFzOrReQAcUhzp8E+E4eWzD/lTgxuPFGR5Wlm+Y/J3qL/7fJhja0RvoDR4Tn4Lo/zi8AAAAASUVORK5CYII=" /* Hide */ + "); background-repeat:no-repeat; background-position: center; }" +
1374
- ("img" /* ImageTag */ + "[" + "data-clarity-hide" /* Hide */ + "=" + "s" /* Small */ + "] { background-size: 18px 18px; }") +
1375
- ("img" /* ImageTag */ + "[" + "data-clarity-hide" /* Hide */ + "=" + "m" /* Medium */ + "] { background-size: 24px 24px; }") +
1376
- ("img" /* ImageTag */ + "[" + "data-clarity-hide" /* Hide */ + "=" + "l" /* Large */ + "] { background-size: 36px 36px; }") +
1377
- ("iframe" /* IFrameTag */ + "[" + "data-clarity-unavailable" /* Unavailable */ + "] { background: url(" + "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAiCAYAAAAge+tMAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAU6SURBVHgBzVg7TyNJEG6bh5AIjpOQeCXj7LL18pDIdpztRYuzy7CjCzG/ADu8CO8vwEQXrgkvws6QeNiEFzEk4GznIFnxvO/zVntrhx6/kLxb0mh6uqurvq6urqqehHklra+ve3d3dx8SiUT6+fk5ja4ZtGf4tjzoD9AXoBmiXUsmk+cnJyc18wpKmCFodXXVx8t/enraBCDPDEchniqeg9PT06oZkAYCTsCw2A6afjc+8IQCjGR3oBtxR/bHx8crR0dHgemD+gIugPfQ9OJ4BGwF72qj0ajrsTQI7rEFcDnTndoLeHh4KDebzdAMC5z+e39/T8B+Nz6AbcJtslAWdOMDfg8LONTuJf7vRVgDPEW40H6crLG4AVi58Pj4+Deav0WUFIjBfDt8NYD+HaBbpge1Wq1wbm5uH+DXjewe5IXQ85buxAMurJS9sbi46IG/jnlforKS0Q7f92dWVlYOAXLXgqMb4CmcnZ2l8E5YpVwIlGZ7basm8nIO50qXNzY29g6y8+hP0RCKPYexBne+K3Ay3N7eNoxyDViziicFwR+la8uOwULFQUBr8LB6XgOU/gDukcGittUY3bUBY25oGR0fX1tbSwPgoVFWxquoAFufv5DxgDvgAsZdu7m52WR7cnLyIC5SAMxnqw+6PRzqSzvmOg9coPX7ZAzoAN9vNWgSQKfVpzP2yq5dQGGZD61F+S5e6KnYNkD6eozWBwZav6m6K1hs2yBJB2hGiIwrQmDsjfp8MS6L2zMqa7INebvGTedKthcdtODN90Yi+I2kCO0owsq3e4U1EqOBq98FwNWnxgKCgd66a5znAe6RjYDfGsdJzmtfgqBPWFE+Jg2HSmFcNuS8QqSv5mLkwQewiumDBKcn87JJ5UuB8BDQJ8TxYnQyFnep2ukYMCXzvXUY57ddvIOGUeIUNw47UQWneEYsrwFVJiYmSjYqkAdx9bOMMR6n4pSTF7J+0ZHCRVKwfaA7SXUZ0g3xNJn+j4+Pm655L1L+8vLyrmRHS4FR6ZfJyUichyKGy5IZgvot2EA1GC8fDanOWgXgCwBPodqPqxCwjQKIljmUPiaSTJxVuoAuCui+CXhKqOGLne84xpgEQKqoSwMpwIIy/ZajUdBytspSVV6KblaT79AsaP0afM+yFtbP4bXT48LAWqYEtymbHrIgZy/SnYurAsV4O7ocRjvD21Nf9bgIYMbK9VgAq8f2rYYHbHp6OqjVau3DK+UCXcw1P9ethI2cO9YzqYFuQLIA3/TegTYxpbPqE+UdazM7o82suWn6AC8Rr2F10upjZgBiPX19fd3E83F+fr5mviakKQiad/FDWfHq6upftlFbM0N7AvwP1kHoY5Fmzwrr7wCyzx16vywsLBDwe9s31GU5ShKz30gOmLGWQZwv2fIBYfRZ2JnCf7Vz0V8xyvIsaV1nReeQ9oXGjIDoYlB6IZ811tx6PAo+Gvoswd0urFGS5icgLCSHV8e/GS5dJYemUQHXxZnnYugFXtzRzg1HApz1jC3iqFzqkxfUDTxcTc9pDhRVXkOICrSYb78RPQ5cfOivRqKNv7S0lMAi/lTRqziSw0mSqMADauufbLdfb45ir032rjsyi0ssnlJWfw/Ltlxxm4T+fyR2+7qfi+GckQEXMHWA9c3XRDRl5KcPXOE/JKrA8vEvwezsLH8a5YwqEWDtMqz9F9sjcxVL4jJM/RuRoVB+iZjob2qSgO7cpEYO3BJrfry2etU8XAx4XtyBfxhwki3aAGyT9b39HS3/KJsoGSr4rLuuh/8DlPszm7LNbUUAAAAASUVORK5CYII=" /* Unavailable */ + ") no-repeat center center, url('" + "data:image/svg+xml,<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"100%\" height=\"100%\"><rect width=\"100%\" height=\"100%\" style=\"fill:rgb(204,204,204)\"/><line stroke-dasharray=\"5, 5\" x1=\"0\" y1=\"100%\" x2=\"100%\" y2=\"0\" style=\"stroke:rgb(119,119,119);stroke-width:1\"/><line stroke-dasharray=\"5, 5\" x1=\"0\" y1=\"0\" x2=\"100%\" y2=\"100%\" style=\"stroke:rgb(119,119,119);stroke-width:1\"/><circle cx=\"50%\" cy=\"50%\" r=\"40\" fill=\"rgb(204,204,204)\"/></svg>" /* Cross */ + "'); }") +
1378
- ("*[" + "data-clarity-suspend" /* Suspend */ + "] { filter: grayscale(100%); }");
1365
+ return "".concat("img" /* Constant.ImageTag */, "[").concat("data-clarity-hide" /* Constant.Hide */, "] { background-color: #CCC; background-image: url(").concat("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAANvSURBVHgB7Ve9VhpREJ5dU6BNVqt0wS6dpEuX9QmiTyA+gfgE4BOgZSrJE4hlKvEJxDKVa2caoaSSfB87F4Z7dtmFhFTMOfcMe52Z+935u6PIhjb0dxTIihRFUQ2M6z0/dXuI9ay8PwTJklQaEADw0JMgCI4USFSkMx6Pe2BdrFtgS6QEFQICjirYGYDUc0AMcXCCvw8XAVVwHQD7IasAokfCMGzB0NmCA1o44N7T+wpwlwouT+80z2NbOWAaMHqDn7FuJcorapRATkej0bOvyz2s7zs7O2L0GbYXrCrscjUqlUoAuZ6vH3hAIr3diW4xHC3wW+w/KZhLgDmXEgRzbR6udvbBD/DdITB3UewfWm+FRpnIHwyYLo1A+Aq/vzkDWFdSni4krTjm1RnDOxgM9nFOS//OM++0YmeAFMydQw4gDSgeu7LVyprE3489je3u7t5waQFMifrQ6ehn7PZfX18v6BkFOwcq9MDQQKxeseRu0PXARJprBHxED2t7sPSol6p5YHs467OkXo8cqBA/rmXmmVO/atzZzk4G0Kond+DJJJLmStc3Sm+rpxLVbYcEoRu8xbWNp9U1B1rqyzzIRNQj5tAe84ZVKVmGZ6BoK5Vh2JADT1hjLny3rBL27nS/7RtUXZdDmb1H5Ug1rDgjrFMKrGGb2CzPt7e3C95gb2+vqeU/1Mor/UZpg21og50CsfYzATllsLY+E6TE60OTPoUqOV8EQNKKmuTTgifHAmO4GOokyDFah2BTTAOTNFcmIQFI3qyVoxurp+dIL3ZF72bYdzL1zKcDLb2P1n4rqUfcg/nB3Cre3t6uQeY3ZBOri72q87B7ULHY035CdmTs85H9BVlR23yWumVf+6YJo0/MK7qcI8al9RCqq9R4w4ICq9JDYZEwk44ly2TWFtGT+VKnF2PwB6cis8sUzkw+vSsrqNXQ0eUmxo+S5gEPfvQBSTpNLjU1rjzCLiKEYAAWMQRFA5m2GzdJxIUhW5H6yutFguhRToapcb8WQGwL5MwtDnt5cvQOZJuq0yHfkjUQWwHbAn5+AqgvKHGW/IsPRquR+ZdgcQIdrStkYh5tN1ocZYCpSto2Dqezl6yRMga/yQSpXToyYFzOrReQAcUhzp8E+E4eWzD/lTgxuPFGR5Wlm+Y/J3qL/7fJhja0RvoDR4Tn4Lo/zi8AAAAASUVORK5CYII=" /* Asset.Hide */, "); background-repeat:no-repeat; background-position: center; }") +
1366
+ "".concat("img" /* Constant.ImageTag */, "[").concat("data-clarity-hide" /* Constant.Hide */, "=").concat("s" /* Constant.Small */, "] { background-size: 18px 18px; }") +
1367
+ "".concat("img" /* Constant.ImageTag */, "[").concat("data-clarity-hide" /* Constant.Hide */, "=").concat("m" /* Constant.Medium */, "] { background-size: 24px 24px; }") +
1368
+ "".concat("img" /* Constant.ImageTag */, "[").concat("data-clarity-hide" /* Constant.Hide */, "=").concat("l" /* Constant.Large */, "] { background-size: 36px 36px; }") +
1369
+ "".concat("iframe" /* Constant.IFrameTag */, "[").concat("data-clarity-unavailable" /* Constant.Unavailable */, "] { background: url(").concat("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAiCAYAAAAge+tMAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAU6SURBVHgBzVg7TyNJEG6bh5AIjpOQeCXj7LL18pDIdpztRYuzy7CjCzG/ADu8CO8vwEQXrgkvws6QeNiEFzEk4GznIFnxvO/zVntrhx6/kLxb0mh6uqurvq6urqqehHklra+ve3d3dx8SiUT6+fk5ja4ZtGf4tjzoD9AXoBmiXUsmk+cnJyc18wpKmCFodXXVx8t/enraBCDPDEchniqeg9PT06oZkAYCTsCw2A6afjc+8IQCjGR3oBtxR/bHx8crR0dHgemD+gIugPfQ9OJ4BGwF72qj0ajrsTQI7rEFcDnTndoLeHh4KDebzdAMC5z+e39/T8B+Nz6AbcJtslAWdOMDfg8LONTuJf7vRVgDPEW40H6crLG4AVi58Pj4+Deav0WUFIjBfDt8NYD+HaBbpge1Wq1wbm5uH+DXjewe5IXQ85buxAMurJS9sbi46IG/jnlforKS0Q7f92dWVlYOAXLXgqMb4CmcnZ2l8E5YpVwIlGZ7basm8nIO50qXNzY29g6y8+hP0RCKPYexBne+K3Ay3N7eNoxyDViziicFwR+la8uOwULFQUBr8LB6XgOU/gDukcGittUY3bUBY25oGR0fX1tbSwPgoVFWxquoAFufv5DxgDvgAsZdu7m52WR7cnLyIC5SAMxnqw+6PRzqSzvmOg9coPX7ZAzoAN9vNWgSQKfVpzP2yq5dQGGZD61F+S5e6KnYNkD6eozWBwZav6m6K1hs2yBJB2hGiIwrQmDsjfp8MS6L2zMqa7INebvGTedKthcdtODN90Yi+I2kCO0owsq3e4U1EqOBq98FwNWnxgKCgd66a5znAe6RjYDfGsdJzmtfgqBPWFE+Jg2HSmFcNuS8QqSv5mLkwQewiumDBKcn87JJ5UuB8BDQJ8TxYnQyFnep2ukYMCXzvXUY57ddvIOGUeIUNw47UQWneEYsrwFVJiYmSjYqkAdx9bOMMR6n4pSTF7J+0ZHCRVKwfaA7SXUZ0g3xNJn+j4+Pm655L1L+8vLyrmRHS4FR6ZfJyUichyKGy5IZgvot2EA1GC8fDanOWgXgCwBPodqPqxCwjQKIljmUPiaSTJxVuoAuCui+CXhKqOGLne84xpgEQKqoSwMpwIIy/ZajUdBytspSVV6KblaT79AsaP0afM+yFtbP4bXT48LAWqYEtymbHrIgZy/SnYurAsV4O7ocRjvD21Nf9bgIYMbK9VgAq8f2rYYHbHp6OqjVau3DK+UCXcw1P9ethI2cO9YzqYFuQLIA3/TegTYxpbPqE+UdazM7o82suWn6AC8Rr2F10upjZgBiPX19fd3E83F+fr5mviakKQiad/FDWfHq6upftlFbM0N7AvwP1kHoY5Fmzwrr7wCyzx16vywsLBDwe9s31GU5ShKz30gOmLGWQZwv2fIBYfRZ2JnCf7Vz0V8xyvIsaV1nReeQ9oXGjIDoYlB6IZ811tx6PAo+Gvoswd0urFGS5icgLCSHV8e/GS5dJYemUQHXxZnnYugFXtzRzg1HApz1jC3iqFzqkxfUDTxcTc9pDhRVXkOICrSYb78RPQ5cfOivRqKNv7S0lMAi/lTRqziSw0mSqMADauufbLdfb45ir032rjsyi0ssnlJWfw/Ltlxxm4T+fyR2+7qfi+GckQEXMHWA9c3XRDRl5KcPXOE/JKrA8vEvwezsLH8a5YwqEWDtMqz9F9sjcxVL4jJM/RuRoVB+iZjob2qSgO7cpEYO3BJrfry2etU8XAx4XtyBfxhwki3aAGyT9b39HS3/KJsoGSr4rLuuh/8DlPszm7LNbUUAAAAASUVORK5CYII=" /* Asset.Unavailable */, ") no-repeat center center, url('").concat("data:image/svg+xml,<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"100%\" height=\"100%\"><rect width=\"100%\" height=\"100%\" style=\"fill:rgb(204,204,204)\"/><line stroke-dasharray=\"5, 5\" x1=\"0\" y1=\"100%\" x2=\"100%\" y2=\"0\" style=\"stroke:rgb(119,119,119);stroke-width:1\"/><line stroke-dasharray=\"5, 5\" x1=\"0\" y1=\"0\" x2=\"100%\" y2=\"100%\" style=\"stroke:rgb(119,119,119);stroke-width:1\"/><circle cx=\"50%\" cy=\"50%\" r=\"40\" fill=\"rgb(204,204,204)\"/></svg>" /* Asset.Cross */, "'); }") +
1370
+ "*[".concat("data-clarity-suspend" /* Constant.Suspend */, "] { filter: grayscale(100%); }");
1379
1371
  };
1380
1372
  this.state = state;
1381
1373
  }
@@ -1411,7 +1403,7 @@ var Visualizer = /** @class */ (function () {
1411
1403
  while (merged.events.length > 0 && _this.layout.exists(hash) === false) {
1412
1404
  var entry = merged.events.shift();
1413
1405
  switch (entry.event) {
1414
- case 6 /* Mutation */:
1406
+ case 6 /* Data.Event.Mutation */:
1415
1407
  var domEvent = entry;
1416
1408
  _this.renderTime = domEvent.time;
1417
1409
  if (time && _this.renderTime > time) {
@@ -1464,9 +1456,9 @@ var Visualizer = /** @class */ (function () {
1464
1456
  for (var _c = 0, p_1 = p; _c < p_1.length; _c++) {
1465
1457
  var entry = p_1[_c];
1466
1458
  switch (key) {
1467
- case "dom" /* Dom */:
1459
+ case "dom" /* Constant.Dom */:
1468
1460
  var dom = _this.enrich.selectors(entry);
1469
- if (entry.event === 5 /* Discover */) {
1461
+ if (entry.event === 5 /* Data.Event.Discover */) {
1470
1462
  merged.dom = dom;
1471
1463
  }
1472
1464
  else {
@@ -1512,43 +1504,40 @@ var Visualizer = /** @class */ (function () {
1512
1504
  var entry = events_1[_i];
1513
1505
  time = entry.time;
1514
1506
  switch (entry.event) {
1515
- case 0 /* Metric */:
1507
+ case 0 /* Data.Event.Metric */:
1516
1508
  _this.data.metric(entry);
1517
1509
  break;
1518
- case 7 /* Region */:
1510
+ case 7 /* Data.Event.Region */:
1519
1511
  _this.data.region(entry);
1520
1512
  break;
1521
- case 37 /* Box */:
1522
- _this.layout.box(entry);
1523
- break;
1524
- case 6 /* Mutation */:
1513
+ case 6 /* Data.Event.Mutation */:
1525
1514
  _this.layout.markup(entry);
1526
1515
  break;
1527
- case 13 /* MouseDown */:
1528
- case 14 /* MouseUp */:
1529
- case 12 /* MouseMove */:
1530
- case 15 /* MouseWheel */:
1531
- case 9 /* Click */:
1532
- case 16 /* DoubleClick */:
1533
- case 17 /* TouchStart */:
1534
- case 20 /* TouchCancel */:
1535
- case 18 /* TouchEnd */:
1536
- case 19 /* TouchMove */:
1516
+ case 13 /* Data.Event.MouseDown */:
1517
+ case 14 /* Data.Event.MouseUp */:
1518
+ case 12 /* Data.Event.MouseMove */:
1519
+ case 15 /* Data.Event.MouseWheel */:
1520
+ case 9 /* Data.Event.Click */:
1521
+ case 16 /* Data.Event.DoubleClick */:
1522
+ case 17 /* Data.Event.TouchStart */:
1523
+ case 20 /* Data.Event.TouchCancel */:
1524
+ case 18 /* Data.Event.TouchEnd */:
1525
+ case 19 /* Data.Event.TouchMove */:
1537
1526
  _this.interaction.pointer(entry);
1538
1527
  break;
1539
- case 28 /* Visibility */:
1528
+ case 28 /* Data.Event.Visibility */:
1540
1529
  _this.interaction.visibility(entry);
1541
1530
  break;
1542
- case 27 /* Input */:
1531
+ case 27 /* Data.Event.Input */:
1543
1532
  _this.interaction.input(entry);
1544
1533
  break;
1545
- case 21 /* Selection */:
1534
+ case 21 /* Data.Event.Selection */:
1546
1535
  _this.interaction.selection(entry);
1547
1536
  break;
1548
- case 11 /* Resize */:
1537
+ case 11 /* Data.Event.Resize */:
1549
1538
  _this.interaction.resize(entry);
1550
1539
  break;
1551
- case 10 /* Scroll */:
1540
+ case 10 /* Data.Event.Scroll */:
1552
1541
  _this.interaction.scroll(entry);
1553
1542
  break;
1554
1543
  }