@cloudcare/rum-uniapp 2.1.18 → 2.1.20

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.
Files changed (105) hide show
  1. package/README.md +42 -34
  2. package/cjs/boot/buildEnv.js +3 -4
  3. package/cjs/boot/rum.entry.js +11 -36
  4. package/cjs/boot/rum.js +2 -25
  5. package/cjs/core/baseInfo.js +6 -25
  6. package/cjs/core/boundedBuffer.js +1 -7
  7. package/cjs/core/configuration.js +15 -27
  8. package/cjs/core/contextManager.js +5 -17
  9. package/cjs/core/dataMap.js +5 -10
  10. package/cjs/core/downloadProxy.js +4 -26
  11. package/cjs/core/errorCollection.js +5 -35
  12. package/cjs/core/errorFilter.js +0 -8
  13. package/cjs/core/errorTools.js +2 -10
  14. package/cjs/core/heavyCustomerDataWarning.js +3 -9
  15. package/cjs/core/lifeCycle.js +8 -18
  16. package/cjs/core/observable.js +7 -13
  17. package/cjs/core/sdk.js +4 -13
  18. package/cjs/core/sessionManagement.js +8 -17
  19. package/cjs/core/transport.js +6 -53
  20. package/cjs/core/user.js +2 -7
  21. package/cjs/core/xhrProxy.js +4 -26
  22. package/cjs/helper/byteUtils.js +6 -12
  23. package/cjs/helper/commonContext.js +2 -3
  24. package/cjs/helper/enums.js +17 -28
  25. package/cjs/helper/jsonStringify.js +5 -12
  26. package/cjs/helper/limitModification.js +3 -21
  27. package/cjs/helper/tracekit.js +33 -145
  28. package/cjs/helper/utils.js +92 -306
  29. package/cjs/index.js +0 -1
  30. package/cjs/rumEventsCollection/action/actionCollection.js +0 -9
  31. package/cjs/rumEventsCollection/action/trackActions.js +6 -28
  32. package/cjs/rumEventsCollection/app/appCollection.js +0 -6
  33. package/cjs/rumEventsCollection/app/index.js +14 -26
  34. package/cjs/rumEventsCollection/assembly.js +0 -14
  35. package/cjs/rumEventsCollection/error/errorCollection.js +1 -16
  36. package/cjs/rumEventsCollection/internalContext.js +0 -2
  37. package/cjs/rumEventsCollection/page/index.js +5 -43
  38. package/cjs/rumEventsCollection/page/viewCollection.js +0 -8
  39. package/cjs/rumEventsCollection/parentContexts.js +3 -20
  40. package/cjs/rumEventsCollection/performanceCollection.js +0 -4
  41. package/cjs/rumEventsCollection/requestCollection.js +1 -14
  42. package/cjs/rumEventsCollection/resource/resourceCollection.js +0 -11
  43. package/cjs/rumEventsCollection/resource/resourceUtils.js +50 -46
  44. package/cjs/rumEventsCollection/setDataCollection.js +0 -16
  45. package/cjs/rumEventsCollection/tracing/ddtraceTracer.js +0 -6
  46. package/cjs/rumEventsCollection/tracing/jaegerTracer.js +3 -9
  47. package/cjs/rumEventsCollection/tracing/skywalkingTracer.js +3 -10
  48. package/cjs/rumEventsCollection/tracing/tracer.js +1 -25
  49. package/cjs/rumEventsCollection/tracing/w3cTraceParentTracer.js +1 -6
  50. package/cjs/rumEventsCollection/tracing/zipkinMultiTracer.js +3 -10
  51. package/cjs/rumEventsCollection/tracing/zipkinSingleTracer.js +1 -6
  52. package/cjs/rumEventsCollection/trackEventCounts.js +0 -8
  53. package/cjs/rumEventsCollection/trackPageActiveites.js +10 -33
  54. package/cjs/rumEventsCollection/transport/batch.js +0 -9
  55. package/esm/boot/buildEnv.js +1 -1
  56. package/esm/boot/rum.entry.js +8 -20
  57. package/esm/boot/rum.js +0 -4
  58. package/esm/core/baseInfo.js +0 -11
  59. package/esm/core/boundedBuffer.js +0 -3
  60. package/esm/core/configuration.js +13 -21
  61. package/esm/core/contextManager.js +3 -8
  62. package/esm/core/dataMap.js +2 -2
  63. package/esm/core/downloadProxy.js +2 -17
  64. package/esm/core/errorCollection.js +2 -15
  65. package/esm/core/errorFilter.js +0 -5
  66. package/esm/core/errorTools.js +0 -3
  67. package/esm/core/heavyCustomerDataWarning.js +3 -3
  68. package/esm/core/lifeCycle.js +0 -5
  69. package/esm/core/observable.js +0 -3
  70. package/esm/core/sdk.js +1 -6
  71. package/esm/core/sessionManagement.js +0 -3
  72. package/esm/core/transport.js +4 -38
  73. package/esm/core/user.js +2 -4
  74. package/esm/core/xhrProxy.js +2 -17
  75. package/esm/helper/byteUtils.js +4 -7
  76. package/esm/helper/commonContext.js +2 -2
  77. package/esm/helper/jsonStringify.js +4 -7
  78. package/esm/helper/limitModification.js +1 -11
  79. package/esm/helper/tracekit.js +30 -130
  80. package/esm/helper/utils.js +27 -125
  81. package/esm/rumEventsCollection/action/actionCollection.js +0 -4
  82. package/esm/rumEventsCollection/action/trackActions.js +6 -20
  83. package/esm/rumEventsCollection/app/appCollection.js +0 -1
  84. package/esm/rumEventsCollection/app/index.js +12 -18
  85. package/esm/rumEventsCollection/assembly.js +0 -6
  86. package/esm/rumEventsCollection/error/errorCollection.js +0 -7
  87. package/esm/rumEventsCollection/internalContext.js +0 -1
  88. package/esm/rumEventsCollection/page/index.js +5 -37
  89. package/esm/rumEventsCollection/page/viewCollection.js +0 -3
  90. package/esm/rumEventsCollection/parentContexts.js +0 -10
  91. package/esm/rumEventsCollection/requestCollection.js +0 -4
  92. package/esm/rumEventsCollection/resource/resourceCollection.js +0 -5
  93. package/esm/rumEventsCollection/resource/resourceUtils.js +48 -39
  94. package/esm/rumEventsCollection/setDataCollection.js +0 -13
  95. package/esm/rumEventsCollection/tracing/ddtraceTracer.js +0 -4
  96. package/esm/rumEventsCollection/tracing/jaegerTracer.js +3 -7
  97. package/esm/rumEventsCollection/tracing/skywalkingTracer.js +5 -9
  98. package/esm/rumEventsCollection/tracing/tracer.js +0 -14
  99. package/esm/rumEventsCollection/tracing/w3cTraceParentTracer.js +1 -4
  100. package/esm/rumEventsCollection/tracing/zipkinMultiTracer.js +3 -8
  101. package/esm/rumEventsCollection/tracing/zipkinSingleTracer.js +1 -4
  102. package/esm/rumEventsCollection/trackEventCounts.js +0 -4
  103. package/esm/rumEventsCollection/trackPageActiveites.js +9 -22
  104. package/esm/rumEventsCollection/transport/batch.js +0 -5
  105. package/package.json +6 -3
@@ -14,7 +14,6 @@ export var isArguments = function isArguments(obj) {
14
14
  };
15
15
  export var each = function each(obj, iterator, context) {
16
16
  if (obj === null) return false;
17
-
18
17
  if (nativeForEach && obj.forEach === nativeForEach) {
19
18
  obj.forEach(iterator, context);
20
19
  } else if (obj.length === +obj.length) {
@@ -35,11 +34,9 @@ export var each = function each(obj, iterator, context) {
35
34
  };
36
35
  export var values = function values(obj) {
37
36
  var results = [];
38
-
39
37
  if (obj === null) {
40
38
  return results;
41
39
  }
42
-
43
40
  each(obj, function (value) {
44
41
  results[results.length] = value;
45
42
  });
@@ -47,11 +44,9 @@ export var values = function values(obj) {
47
44
  };
48
45
  export var keys = function keys(obj) {
49
46
  var results = [];
50
-
51
47
  if (obj === null) {
52
48
  return results;
53
49
  }
54
-
55
50
  each(obj, function (value, key) {
56
51
  results[results.length] = key;
57
52
  });
@@ -59,7 +54,6 @@ export var keys = function keys(obj) {
59
54
  };
60
55
  export var indexOf = function indexOf(arr, target) {
61
56
  var indexOf = arr.indexOf;
62
-
63
57
  if (indexOf) {
64
58
  return indexOf.call(arr, target);
65
59
  } else {
@@ -68,7 +62,6 @@ export var indexOf = function indexOf(arr, target) {
68
62
  return i;
69
63
  }
70
64
  }
71
-
72
65
  return -1;
73
66
  }
74
67
  };
@@ -79,14 +72,12 @@ export function toServerDuration(duration) {
79
72
  if (!isNumber(duration)) {
80
73
  return duration;
81
74
  }
82
-
83
75
  return round(duration * 1e6, 0);
84
76
  }
85
77
  export function msToNs(duration) {
86
78
  if (typeof duration !== 'number') {
87
79
  return duration;
88
80
  }
89
-
90
81
  return round(duration * 1e6, 0);
91
82
  }
92
83
  export var isUndefined = function isUndefined(obj) {
@@ -108,7 +99,6 @@ export var isFunction = function isFunction(f) {
108
99
  if (!f) {
109
100
  return false;
110
101
  }
111
-
112
102
  try {
113
103
  return /^\s*\bfunction\b/.test(f);
114
104
  } catch (err) {
@@ -120,55 +110,47 @@ export var isArray = nativeIsArray || function (obj) {
120
110
  };
121
111
  export var toArray = function toArray(iterable) {
122
112
  if (!iterable) return [];
123
-
124
113
  if (iterable.toArray) {
125
114
  return iterable.toArray();
126
115
  }
127
-
128
116
  if (Array.isArray(iterable)) {
129
117
  return slice.call(iterable);
130
118
  }
131
-
132
119
  if (isArguments(iterable)) {
133
120
  return slice.call(iterable);
134
121
  }
135
-
136
122
  return values(iterable);
137
123
  };
138
124
  export var areInOrder = function areInOrder() {
139
125
  var numbers = toArray(arguments);
140
-
141
126
  for (var i = 1; i < numbers.length; i += 1) {
142
127
  if (numbers[i - 1] > numbers[i]) {
143
128
  return false;
144
129
  }
145
130
  }
146
-
147
131
  return true;
148
132
  };
149
133
  /**
150
134
  * UUID v4
151
135
  * from https://gist.github.com/jed/982883
152
136
  */
153
-
154
137
  export function UUID(placeholder) {
155
- return placeholder ? // tslint:disable-next-line no-bitwise
138
+ return placeholder ?
139
+ // tslint:disable-next-line no-bitwise
156
140
  (parseInt(placeholder, 10) ^ Math.random() * 16 >> parseInt(placeholder, 10) / 4).toString(16) : "".concat(1e7, "-", 1e3, "-", 4e3, "-", 8e3, "-", 1e11).replace(/[018]/g, UUID);
157
141
  }
158
142
  export var utf8Encode = function utf8Encode(string) {
159
143
  string = (string + '').replace(/\r\n/g, '\n').replace(/\r/g, '\n');
160
144
  var utftext = '',
161
- start,
162
- end;
145
+ start,
146
+ end;
163
147
  var stringl = 0,
164
- n;
148
+ n;
165
149
  start = end = 0;
166
150
  stringl = string.length;
167
-
168
151
  for (n = 0; n < stringl; n++) {
169
152
  var c1 = string.charCodeAt(n);
170
153
  var enc = null;
171
-
172
154
  if (c1 < 128) {
173
155
  end++;
174
156
  } else if (c1 > 127 && c1 < 2048) {
@@ -176,45 +158,38 @@ export var utf8Encode = function utf8Encode(string) {
176
158
  } else {
177
159
  enc = String.fromCharCode(c1 >> 12 | 224, c1 >> 6 & 63 | 128, c1 & 63 | 128);
178
160
  }
179
-
180
161
  if (enc !== null) {
181
162
  if (end > start) {
182
163
  utftext += string.substring(start, end);
183
164
  }
184
-
185
165
  utftext += enc;
186
166
  start = end = n + 1;
187
167
  }
188
168
  }
189
-
190
169
  if (end > start) {
191
170
  utftext += string.substring(start, string.length);
192
171
  }
193
-
194
172
  return utftext;
195
173
  };
196
174
  export var base64Encode = function base64Encode(data) {
197
175
  data = String(data);
198
176
  var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
199
177
  var o1,
200
- o2,
201
- o3,
202
- h1,
203
- h2,
204
- h3,
205
- h4,
206
- bits,
207
- i = 0,
208
- ac = 0,
209
- enc = '',
210
- tmp_arr = [];
211
-
178
+ o2,
179
+ o3,
180
+ h1,
181
+ h2,
182
+ h3,
183
+ h4,
184
+ bits,
185
+ i = 0,
186
+ ac = 0,
187
+ enc = '',
188
+ tmp_arr = [];
212
189
  if (!data) {
213
190
  return data;
214
191
  }
215
-
216
192
  data = utf8Encode(data);
217
-
218
193
  do {
219
194
  o1 = data.charCodeAt(i++);
220
195
  o2 = data.charCodeAt(i++);
@@ -226,41 +201,33 @@ export var base64Encode = function base64Encode(data) {
226
201
  h4 = bits & 0x3f;
227
202
  tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
228
203
  } while (i < data.length);
229
-
230
204
  enc = tmp_arr.join('');
231
-
232
205
  switch (data.length % 3) {
233
206
  case 1:
234
207
  enc = enc.slice(0, -2) + '==';
235
208
  break;
236
-
237
209
  case 2:
238
210
  enc = enc.slice(0, -1) + '=';
239
211
  break;
240
212
  }
241
-
242
213
  return enc;
243
214
  };
244
-
245
215
  function hasToJSON(value) {
246
216
  return typeof value === 'object' && value !== null && value.hasOwnProperty('toJSON');
247
217
  }
248
-
249
218
  export function elapsed(start, end) {
250
219
  return end - start;
251
220
  }
252
221
  export function getMethods(obj) {
253
222
  var funcs = [];
254
-
255
223
  for (var key in obj) {
256
224
  if (typeof obj[key] === 'function' && !MpHook[key]) {
257
225
  funcs.push(key);
258
226
  }
259
227
  }
260
-
261
228
  return funcs;
262
- } // 替换url包含数字的路由
263
-
229
+ }
230
+ // 替换url包含数字的路由
264
231
  export function replaceNumberCharByPath(path) {
265
232
  if (path) {
266
233
  return path.replace(/\/([^\/]*)\d([^\/]*)/g, '/?');
@@ -276,24 +243,19 @@ export var getQueryParamsFromUrl = function getQueryParamsFromUrl(url) {
276
243
  var result = {};
277
244
  var arr = url.split('?');
278
245
  var queryString = arr[1] || '';
279
-
280
246
  if (queryString) {
281
247
  result = getURLSearchParams('?' + queryString);
282
248
  }
283
-
284
249
  return result;
285
250
  };
286
251
  export var getURLSearchParams = function getURLSearchParams(queryString) {
287
252
  queryString = queryString || '';
288
-
289
253
  var decodeParam = function decodeParam(str) {
290
254
  return decodeURIComponent(str);
291
255
  };
292
-
293
256
  var args = {};
294
257
  var query = queryString.substring(1);
295
258
  var pairs = query.split('&');
296
-
297
259
  for (var i = 0; i < pairs.length; i++) {
298
260
  var pos = pairs[i].indexOf('=');
299
261
  if (pos === -1) continue;
@@ -303,7 +265,6 @@ export var getURLSearchParams = function getURLSearchParams(queryString) {
303
265
  value = decodeParam(value);
304
266
  args[name] = value;
305
267
  }
306
-
307
268
  return args;
308
269
  };
309
270
  export function isPercentage(value) {
@@ -347,7 +308,6 @@ export var isEmptyObject = function isEmptyObject(obj) {
347
308
  return false;
348
309
  }
349
310
  }
350
-
351
311
  return true;
352
312
  } else {
353
313
  return false;
@@ -359,18 +319,15 @@ export var isJSONString = function isJSONString(str) {
359
319
  } catch (e) {
360
320
  return false;
361
321
  }
362
-
363
322
  return true;
364
323
  };
365
324
  export var safeJSONParse = function safeJSONParse(str) {
366
325
  var val = null;
367
-
368
326
  try {
369
327
  val = JSON.parse(str);
370
328
  } catch (e) {
371
329
  return false;
372
330
  }
373
-
374
331
  return val;
375
332
  };
376
333
  export var now = Date.now || function () {
@@ -389,19 +346,16 @@ export var throttle = function throttle(fn, wait, options) {
389
346
  pendingExecutionWithParameters = arguments;
390
347
  return;
391
348
  }
392
-
393
349
  if (needLeadingExecution) {
394
350
  fn.apply(context, arguments);
395
351
  } else {
396
352
  pendingExecutionWithParameters = arguments;
397
353
  }
398
-
399
354
  inWaitPeriod = true;
400
355
  pendingTimeoutId = setTimeout(function () {
401
356
  if (needTrailingExecution && pendingExecutionWithParameters) {
402
357
  fn.apply(context, pendingExecutionWithParameters);
403
358
  }
404
-
405
359
  inWaitPeriod = false;
406
360
  pendingExecutionWithParameters = undefined;
407
361
  }, wait);
@@ -418,23 +372,19 @@ export function noop() {}
418
372
  * Return true if the draw is successful
419
373
  * @param threshold between 0 and 100
420
374
  */
421
-
422
375
  export function performDraw(threshold) {
423
376
  return threshold !== 0 && Math.random() * 100 <= threshold;
424
377
  }
425
378
  export function findByPath(source, path) {
426
379
  var pathArr = path.split('.');
427
-
428
380
  while (pathArr.length) {
429
381
  var key = pathArr.shift();
430
-
431
382
  if (source && key in source && hasOwnProperty.call(source, key)) {
432
383
  source = source[key];
433
384
  } else {
434
385
  return undefined;
435
386
  }
436
387
  }
437
-
438
388
  return source;
439
389
  }
440
390
  export function withSnakeCaseKeys(candidate) {
@@ -448,11 +398,9 @@ export function deepSnakeCase(candidate) {
448
398
  if (Array.isArray(candidate)) {
449
399
  return candidate.map(value => deepSnakeCase(value));
450
400
  }
451
-
452
401
  if (typeof candidate === 'object' && candidate !== null) {
453
402
  return withSnakeCaseKeys(candidate);
454
403
  }
455
-
456
404
  return candidate;
457
405
  }
458
406
  export function toSnakeCase(word) {
@@ -466,7 +414,6 @@ export function escapeRowData(str) {
466
414
  } else if (!isString(str)) {
467
415
  return str;
468
416
  }
469
-
470
417
  var reg = /[\s=,"]/g;
471
418
  return String(str).replace(reg, function (word) {
472
419
  return '\\' + word;
@@ -507,29 +454,23 @@ export var urlParse = function urlParse(para) {
507
454
  this._values = {};
508
455
  this._regex = null;
509
456
  this._regex = /^((\w+):\/\/)?((\w+):?(\w+)?@)?([^\/\?:]+):?(\d+)?(\/?[^\?#]+)?\??([^#]+)?#?(\w*)/;
510
-
511
457
  if (typeof a != 'undefined') {
512
458
  this._parse(a);
513
459
  }
514
460
  };
515
-
516
461
  URLParser.prototype.setUrl = function (a) {
517
462
  this._parse(a);
518
463
  };
519
-
520
464
  URLParser.prototype._initValues = function () {
521
465
  for (var a in this._fields) {
522
466
  this._values[a] = '';
523
467
  }
524
468
  };
525
-
526
469
  URLParser.prototype.addQueryString = function (queryObj) {
527
470
  if (typeof queryObj !== 'object') {
528
471
  return false;
529
472
  }
530
-
531
473
  var query = this._values.QueryString || '';
532
-
533
474
  for (var i in queryObj) {
534
475
  if (new RegExp(i + '[^&]+').test(query)) {
535
476
  query = query.replace(new RegExp(i + '[^&]+'), i + '=' + queryObj[i]);
@@ -545,60 +486,47 @@ export var urlParse = function urlParse(para) {
545
486
  }
546
487
  }
547
488
  }
548
-
549
489
  this._values.QueryString = query;
550
490
  };
551
-
552
491
  URLParser.prototype.getParse = function () {
553
492
  return this._values;
554
493
  };
555
-
556
494
  URLParser.prototype.getUrl = function () {
557
495
  var url = '';
558
- url += this._values.Origin; // url += this._values.Port ? ':' + this._values.Port : ''
559
-
496
+ url += this._values.Origin;
497
+ // url += this._values.Port ? ':' + this._values.Port : ''
560
498
  url += this._values.Path;
561
499
  url += this._values.QueryString ? '?' + this._values.QueryString : '';
562
500
  return url;
563
501
  };
564
-
565
502
  URLParser.prototype._parse = function (a) {
566
503
  this._initValues();
567
-
568
504
  var b = this._regex.exec(a);
569
-
570
505
  if (!b) {
571
506
  throw 'DPURLParser::_parse -> Invalid URL';
572
507
  }
573
-
574
508
  for (var c in this._fields) {
575
509
  if (typeof b[this._fields[c]] != 'undefined') {
576
510
  this._values[c] = b[this._fields[c]];
577
511
  }
578
512
  }
579
-
580
513
  this._values['Path'] = this._values['Path'] || '/';
581
514
  this._values['Hostname'] = this._values['Host'].replace(/:\d+$/, '');
582
515
  this._values['Origin'] = this._values['Protocol'] + '://' + this._values['Hostname'] + (this._values.Port ? ':' + this._values.Port : '');
583
516
  };
584
-
585
517
  return new URLParser(para);
586
518
  };
587
519
  export var getOwnObjectKeys = function getOwnObjectKeys(obj, isEnumerable) {
588
520
  var keys = Object.keys(obj);
589
-
590
521
  if (Object.getOwnPropertySymbols) {
591
522
  var symbols = Object.getOwnPropertySymbols(obj);
592
-
593
523
  if (isEnumerable) {
594
524
  symbols = symbols.filter(function (t) {
595
525
  return Object.getOwnPropertyDescriptor(obj, t).enumerable;
596
526
  });
597
527
  }
598
-
599
528
  keys.push.apply(keys, symbols);
600
529
  }
601
-
602
530
  return keys;
603
531
  };
604
532
  export var defineObject = function defineObject(obj, key, value) {
@@ -612,13 +540,11 @@ export var defineObject = function defineObject(obj, key, value) {
612
540
  } else {
613
541
  obj[key] = value;
614
542
  }
615
-
616
543
  return obj;
617
544
  };
618
545
  export var deepMixObject = function deepMixObject(targetObj) {
619
546
  for (var t = 1; t < arguments.length; t++) {
620
547
  var target = arguments[t] != null ? arguments[t] : {};
621
-
622
548
  if (t % 2) {
623
549
  getOwnObjectKeys(Object(target), true).forEach(function (t) {
624
550
  defineObject(targetObj, t, target[t]);
@@ -633,7 +559,6 @@ export var deepMixObject = function deepMixObject(targetObj) {
633
559
  }
634
560
  }
635
561
  }
636
-
637
562
  return targetObj;
638
563
  };
639
564
  export function getOrigin(url) {
@@ -641,43 +566,35 @@ export function getOrigin(url) {
641
566
  }
642
567
  export function getActivePage() {
643
568
  var curPages = typeof getCurrentPages === 'function' ? getCurrentPages() : [];
644
-
645
569
  if (curPages.length) {
646
570
  return curPages[curPages.length - 1];
647
571
  }
648
-
649
572
  return {};
650
573
  }
651
574
  export function findCommaSeparatedValue(rawString, name) {
652
575
  var matches = rawString.match('(?:^|;)\\s*' + name + '\\s*=\\s*([^;]+)');
653
576
  return matches ? matches[1] : undefined;
654
577
  }
655
-
656
578
  function createCircularReferenceChecker() {
657
579
  if (typeof WeakSet !== 'undefined') {
658
580
  var set = new WeakSet();
659
581
  return {
660
582
  hasAlreadyBeenSeen: function hasAlreadyBeenSeen(value) {
661
583
  var has = set.has(value);
662
-
663
584
  if (!has) {
664
585
  set.add(value);
665
586
  }
666
-
667
587
  return has;
668
588
  }
669
589
  };
670
590
  }
671
-
672
591
  var array = [];
673
592
  return {
674
593
  hasAlreadyBeenSeen: function hasAlreadyBeenSeen(value) {
675
594
  var has = array.indexOf(value) >= 0;
676
-
677
595
  if (!has) {
678
596
  array.push(value);
679
597
  }
680
-
681
598
  return has;
682
599
  }
683
600
  };
@@ -685,75 +602,63 @@ function createCircularReferenceChecker() {
685
602
  /**
686
603
  * Similar to `typeof`, but distinguish plain objects from `null` and arrays
687
604
  */
688
-
689
-
690
605
  export function getType(value) {
691
606
  if (value === null) {
692
607
  return 'null';
693
608
  }
694
-
695
609
  if (Array.isArray(value)) {
696
610
  return 'array';
697
611
  }
698
-
699
612
  return typeof value;
700
613
  }
701
614
  /**
702
615
  * Iterate over source and affect its sub values into destination, recursively.
703
616
  * If the source and destination can't be merged, return source.
704
617
  */
705
-
706
618
  export function mergeInto(destination, source, circularReferenceChecker) {
707
619
  // ignore the source if it is undefined
708
620
  if (typeof circularReferenceChecker === 'undefined') {
709
621
  circularReferenceChecker = createCircularReferenceChecker();
710
622
  }
711
-
712
623
  if (source === undefined) {
713
624
  return destination;
714
625
  }
715
-
716
626
  if (typeof source !== 'object' || source === null) {
717
627
  // primitive values - just return source
718
628
  return source;
719
629
  } else if (source instanceof Date) {
720
630
  return new Date(source.getTime());
721
631
  } else if (source instanceof RegExp) {
722
- var flags = source.flags || // old browsers compatibility
632
+ var flags = source.flags ||
633
+ // old browsers compatibility
723
634
  [source.global ? 'g' : '', source.ignoreCase ? 'i' : '', source.multiline ? 'm' : '', source.sticky ? 'y' : '', source.unicode ? 'u' : ''].join('');
724
635
  return new RegExp(source.source, flags);
725
636
  }
726
-
727
637
  if (circularReferenceChecker.hasAlreadyBeenSeen(source)) {
728
638
  // remove circular references
729
639
  return undefined;
730
640
  } else if (Array.isArray(source)) {
731
641
  var merged = Array.isArray(destination) ? destination : [];
732
-
733
642
  for (var i = 0; i < source.length; ++i) {
734
643
  merged[i] = mergeInto(merged[i], source[i], circularReferenceChecker);
735
644
  }
736
-
737
645
  return merged;
738
646
  }
739
-
740
647
  var merged = getType(destination) === 'object' ? destination : {};
741
-
742
648
  for (var key in source) {
743
649
  if (Object.prototype.hasOwnProperty.call(source, key)) {
744
650
  merged[key] = mergeInto(merged[key], source[key], circularReferenceChecker);
745
651
  }
746
652
  }
747
-
748
653
  return merged;
749
654
  }
655
+
750
656
  /**
751
657
  * A simplistic implementation of a deep clone algorithm.
752
658
  * Caveats:
753
659
  * - It doesn't maintain prototype chains - don't use with instances of custom classes.
754
660
  * - It doesn't handle Map and Set
755
661
  */
756
-
757
662
  export function deepClone(value) {
758
663
  return mergeInto(undefined, value);
759
664
  }
@@ -767,18 +672,16 @@ export function getGlobalObject() {
767
672
  if (typeof globalThis === 'object') {
768
673
  return globalThis;
769
674
  }
770
-
771
675
  Object.defineProperty(Object.prototype, '_dd_temp_', {
772
676
  get: function get() {
773
677
  return this;
774
678
  },
775
679
  configurable: true
776
- }); // @ts-ignore
777
-
778
- var globalObject = _dd_temp_; // @ts-ignore
779
-
680
+ });
681
+ // @ts-ignore
682
+ var globalObject = _dd_temp_;
683
+ // @ts-ignore
780
684
  delete Object.prototype._dd_temp_;
781
-
782
685
  if (typeof globalObject !== 'object') {
783
686
  // on safari _dd_temp_ is available on window but not globally
784
687
  // fallback on other browser globals check
@@ -790,6 +693,5 @@ export function getGlobalObject() {
790
693
  globalObject = {};
791
694
  }
792
695
  }
793
-
794
696
  return globalObject;
795
697
  }
@@ -6,11 +6,9 @@ export function startActionCollection(lifeCycle, configuration, Vue) {
6
6
  lifeCycle.subscribe(LifeCycleEventType.AUTO_ACTION_COMPLETED, function (action) {
7
7
  lifeCycle.notify(LifeCycleEventType.RAW_RUM_EVENT_COLLECTED, processAction(action));
8
8
  });
9
-
10
9
  if (configuration.trackInteractions) {
11
10
  trackActions(lifeCycle, Vue);
12
11
  }
13
-
14
12
  return {
15
13
  addAction: function addAction(action, savedCommonContext) {
16
14
  lifeCycle.notify(LifeCycleEventType.RAW_RUM_EVENT_COLLECTED, extend2Lev({
@@ -19,7 +17,6 @@ export function startActionCollection(lifeCycle, configuration, Vue) {
19
17
  }
20
18
  };
21
19
  }
22
-
23
20
  function processAction(action) {
24
21
  var autoActionProperties = isAutoAction(action) ? {
25
22
  action: {
@@ -57,7 +54,6 @@ function processAction(action) {
57
54
  startTime: action.startClocks
58
55
  };
59
56
  }
60
-
61
57
  function isAutoAction(action) {
62
58
  return action.type !== ActionType.custom;
63
59
  }