@cloudcare/rum-uniapp 2.1.18 → 2.1.22

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 (107) 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 +11 -19
  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 +32 -145
  28. package/cjs/helper/utils.js +92 -306
  29. package/cjs/index.js +0 -1
  30. package/cjs/main.js +10 -0
  31. package/cjs/rumEventsCollection/action/actionCollection.js +0 -9
  32. package/cjs/rumEventsCollection/action/trackActions.js +46 -39
  33. package/cjs/rumEventsCollection/app/appCollection.js +0 -6
  34. package/cjs/rumEventsCollection/app/index.js +14 -25
  35. package/cjs/rumEventsCollection/assembly.js +0 -14
  36. package/cjs/rumEventsCollection/error/errorCollection.js +1 -16
  37. package/cjs/rumEventsCollection/internalContext.js +0 -2
  38. package/cjs/rumEventsCollection/page/index.js +19 -49
  39. package/cjs/rumEventsCollection/page/viewCollection.js +0 -8
  40. package/cjs/rumEventsCollection/parentContexts.js +3 -20
  41. package/cjs/rumEventsCollection/performanceCollection.js +0 -4
  42. package/cjs/rumEventsCollection/requestCollection.js +1 -14
  43. package/cjs/rumEventsCollection/resource/resourceCollection.js +0 -11
  44. package/cjs/rumEventsCollection/resource/resourceUtils.js +50 -46
  45. package/cjs/rumEventsCollection/setDataCollection.js +0 -16
  46. package/cjs/rumEventsCollection/tracing/ddtraceTracer.js +0 -6
  47. package/cjs/rumEventsCollection/tracing/jaegerTracer.js +3 -9
  48. package/cjs/rumEventsCollection/tracing/skywalkingTracer.js +3 -10
  49. package/cjs/rumEventsCollection/tracing/tracer.js +1 -25
  50. package/cjs/rumEventsCollection/tracing/w3cTraceParentTracer.js +1 -6
  51. package/cjs/rumEventsCollection/tracing/zipkinMultiTracer.js +3 -10
  52. package/cjs/rumEventsCollection/tracing/zipkinSingleTracer.js +1 -6
  53. package/cjs/rumEventsCollection/trackEventCounts.js +0 -8
  54. package/cjs/rumEventsCollection/trackPageActiveites.js +10 -33
  55. package/cjs/rumEventsCollection/transport/batch.js +0 -9
  56. package/esm/boot/buildEnv.js +1 -1
  57. package/esm/boot/rum.entry.js +8 -20
  58. package/esm/boot/rum.js +0 -4
  59. package/esm/core/baseInfo.js +0 -11
  60. package/esm/core/boundedBuffer.js +0 -3
  61. package/esm/core/configuration.js +13 -21
  62. package/esm/core/contextManager.js +3 -8
  63. package/esm/core/dataMap.js +2 -2
  64. package/esm/core/downloadProxy.js +2 -17
  65. package/esm/core/errorCollection.js +2 -15
  66. package/esm/core/errorFilter.js +0 -5
  67. package/esm/core/errorTools.js +0 -3
  68. package/esm/core/heavyCustomerDataWarning.js +3 -3
  69. package/esm/core/lifeCycle.js +0 -5
  70. package/esm/core/observable.js +0 -3
  71. package/esm/core/sdk.js +8 -12
  72. package/esm/core/sessionManagement.js +0 -3
  73. package/esm/core/transport.js +4 -38
  74. package/esm/core/user.js +2 -4
  75. package/esm/core/xhrProxy.js +2 -17
  76. package/esm/helper/byteUtils.js +4 -7
  77. package/esm/helper/commonContext.js +2 -2
  78. package/esm/helper/jsonStringify.js +4 -7
  79. package/esm/helper/limitModification.js +1 -11
  80. package/esm/helper/tracekit.js +29 -130
  81. package/esm/helper/utils.js +27 -125
  82. package/esm/main.js +4 -0
  83. package/esm/rumEventsCollection/action/actionCollection.js +0 -4
  84. package/esm/rumEventsCollection/action/trackActions.js +46 -31
  85. package/esm/rumEventsCollection/app/appCollection.js +0 -1
  86. package/esm/rumEventsCollection/app/index.js +12 -17
  87. package/esm/rumEventsCollection/assembly.js +0 -6
  88. package/esm/rumEventsCollection/error/errorCollection.js +0 -7
  89. package/esm/rumEventsCollection/internalContext.js +0 -1
  90. package/esm/rumEventsCollection/page/index.js +19 -43
  91. package/esm/rumEventsCollection/page/viewCollection.js +0 -3
  92. package/esm/rumEventsCollection/parentContexts.js +0 -10
  93. package/esm/rumEventsCollection/requestCollection.js +0 -4
  94. package/esm/rumEventsCollection/resource/resourceCollection.js +0 -5
  95. package/esm/rumEventsCollection/resource/resourceUtils.js +48 -39
  96. package/esm/rumEventsCollection/setDataCollection.js +0 -13
  97. package/esm/rumEventsCollection/tracing/ddtraceTracer.js +0 -4
  98. package/esm/rumEventsCollection/tracing/jaegerTracer.js +3 -7
  99. package/esm/rumEventsCollection/tracing/skywalkingTracer.js +5 -9
  100. package/esm/rumEventsCollection/tracing/tracer.js +0 -14
  101. package/esm/rumEventsCollection/tracing/w3cTraceParentTracer.js +1 -4
  102. package/esm/rumEventsCollection/tracing/zipkinMultiTracer.js +3 -8
  103. package/esm/rumEventsCollection/tracing/zipkinSingleTracer.js +1 -4
  104. package/esm/rumEventsCollection/trackEventCounts.js +0 -4
  105. package/esm/rumEventsCollection/trackPageActiveites.js +9 -22
  106. package/esm/rumEventsCollection/transport/batch.js +0 -5
  107. package/package.json +7 -4
@@ -3,41 +3,47 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.round = round;
7
- exports.toServerDuration = toServerDuration;
8
- exports.msToNs = msToNs;
6
+ exports.ONE_SECOND = exports.ONE_MINUTE = exports.ONE_HOUR = void 0;
9
7
  exports.UUID = UUID;
8
+ exports.base64Encode = exports.areInOrder = void 0;
9
+ exports.deepClone = deepClone;
10
+ exports.deepMixObject = void 0;
11
+ exports.deepSnakeCase = deepSnakeCase;
12
+ exports.defineGlobal = defineGlobal;
13
+ exports.each = exports.defineObject = void 0;
10
14
  exports.elapsed = elapsed;
15
+ exports.escapeFieldValueStr = escapeFieldValueStr;
16
+ exports.escapeJsonValue = escapeJsonValue;
17
+ exports.escapeRowData = escapeRowData;
18
+ exports.escapeRowField = escapeRowField;
19
+ exports.extend2Lev = exports.extend = void 0;
20
+ exports.findByPath = findByPath;
21
+ exports.findCommaSeparatedValue = findCommaSeparatedValue;
22
+ exports.getActivePage = getActivePage;
23
+ exports.getGlobalObject = getGlobalObject;
11
24
  exports.getMethods = getMethods;
12
- exports.replaceNumberCharByPath = replaceNumberCharByPath;
25
+ exports.getOrigin = getOrigin;
26
+ exports.getQueryParamsFromUrl = exports.getOwnObjectKeys = void 0;
13
27
  exports.getStatusGroup = getStatusGroup;
28
+ exports.getType = getType;
29
+ exports.isObject = exports.isNumber = exports.isJSONString = exports.isFunction = exports.isEmptyObject = exports.isDate = exports.isBoolean = exports.isArray = exports.isArguments = exports.indexOf = exports.getURLSearchParams = void 0;
14
30
  exports.isPercentage = isPercentage;
31
+ exports.keys = exports.isUndefined = exports.isString = void 0;
32
+ exports.mergeInto = mergeInto;
33
+ exports.msToNs = msToNs;
15
34
  exports.noop = noop;
35
+ exports.now = void 0;
16
36
  exports.performDraw = performDraw;
17
- exports.findByPath = findByPath;
18
- exports.withSnakeCaseKeys = withSnakeCaseKeys;
19
- exports.deepSnakeCase = deepSnakeCase;
37
+ exports.replaceNumberCharByPath = replaceNumberCharByPath;
38
+ exports.round = round;
39
+ exports.toArray = exports.throttle = exports.safeJSONParse = void 0;
40
+ exports.toServerDuration = toServerDuration;
20
41
  exports.toSnakeCase = toSnakeCase;
21
- exports.escapeRowData = escapeRowData;
22
- exports.escapeJsonValue = escapeJsonValue;
23
- exports.escapeFieldValueStr = escapeFieldValueStr;
24
- exports.escapeRowField = escapeRowField;
25
- exports.getOrigin = getOrigin;
26
- exports.getActivePage = getActivePage;
27
- exports.findCommaSeparatedValue = findCommaSeparatedValue;
28
- exports.getType = getType;
29
- exports.mergeInto = mergeInto;
30
- exports.deepClone = deepClone;
31
- exports.defineGlobal = defineGlobal;
32
- exports.getGlobalObject = getGlobalObject;
33
- exports.ONE_HOUR = exports.ONE_MINUTE = exports.ONE_SECOND = exports.deepMixObject = exports.defineObject = exports.getOwnObjectKeys = exports.urlParse = exports.throttle = exports.now = exports.safeJSONParse = exports.isJSONString = exports.isEmptyObject = exports.isObject = exports.trim = exports.extend2Lev = exports.extend = exports.getURLSearchParams = exports.getQueryParamsFromUrl = exports.base64Encode = exports.utf8Encode = exports.areInOrder = exports.toArray = exports.isArray = exports.isFunction = exports.isNumber = exports.isBoolean = exports.isDate = exports.isString = exports.isUndefined = exports.indexOf = exports.keys = exports.values = exports.each = exports.isArguments = void 0;
34
-
42
+ exports.values = exports.utf8Encode = exports.urlParse = exports.trim = void 0;
43
+ exports.withSnakeCaseKeys = withSnakeCaseKeys;
35
44
  var _enums = require("./enums");
36
-
37
45
  var _jsonStringify = require("../helper/jsonStringify");
38
-
39
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
40
-
46
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
41
47
  var ArrayProto = Array.prototype;
42
48
  var ObjProto = Object.prototype;
43
49
  var ObjProto = Object.prototype;
@@ -47,16 +53,11 @@ var toString = ObjProto.toString;
47
53
  var nativeForEach = ArrayProto.forEach;
48
54
  var nativeIsArray = Array.isArray;
49
55
  var breaker = false;
50
-
51
- var isArguments = function isArguments(obj) {
56
+ var isArguments = exports.isArguments = function isArguments(obj) {
52
57
  return !!(obj && hasOwnProperty.call(obj, 'callee'));
53
58
  };
54
-
55
- exports.isArguments = isArguments;
56
-
57
- var each = function each(obj, iterator, context) {
59
+ var each = exports.each = function each(obj, iterator, context) {
58
60
  if (obj === null) return false;
59
-
60
61
  if (nativeForEach && obj.forEach === nativeForEach) {
61
62
  obj.forEach(iterator, context);
62
63
  } else if (obj.length === +obj.length) {
@@ -75,42 +76,28 @@ var each = function each(obj, iterator, context) {
75
76
  }
76
77
  }
77
78
  };
78
-
79
- exports.each = each;
80
-
81
- var values = function values(obj) {
79
+ var values = exports.values = function values(obj) {
82
80
  var results = [];
83
-
84
81
  if (obj === null) {
85
82
  return results;
86
83
  }
87
-
88
84
  each(obj, function (value) {
89
85
  results[results.length] = value;
90
86
  });
91
87
  return results;
92
88
  };
93
-
94
- exports.values = values;
95
-
96
- var keys = function keys(obj) {
89
+ var keys = exports.keys = function keys(obj) {
97
90
  var results = [];
98
-
99
91
  if (obj === null) {
100
92
  return results;
101
93
  }
102
-
103
94
  each(obj, function (value, key) {
104
95
  results[results.length] = key;
105
96
  });
106
97
  return results;
107
98
  };
108
-
109
- exports.keys = keys;
110
-
111
- var indexOf = function indexOf(arr, target) {
99
+ var indexOf = exports.indexOf = function indexOf(arr, target) {
112
100
  var indexOf = arr.indexOf;
113
-
114
101
  if (indexOf) {
115
102
  return indexOf.call(arr, target);
116
103
  } else {
@@ -119,141 +106,95 @@ var indexOf = function indexOf(arr, target) {
119
106
  return i;
120
107
  }
121
108
  }
122
-
123
109
  return -1;
124
110
  }
125
111
  };
126
-
127
- exports.indexOf = indexOf;
128
-
129
112
  function round(num, decimals) {
130
113
  return +num.toFixed(decimals);
131
114
  }
132
-
133
115
  function toServerDuration(duration) {
134
116
  if (!isNumber(duration)) {
135
117
  return duration;
136
118
  }
137
-
138
119
  return round(duration * 1e6, 0);
139
120
  }
140
-
141
121
  function msToNs(duration) {
142
122
  if (typeof duration !== 'number') {
143
123
  return duration;
144
124
  }
145
-
146
125
  return round(duration * 1e6, 0);
147
126
  }
148
-
149
- var isUndefined = function isUndefined(obj) {
127
+ var isUndefined = exports.isUndefined = function isUndefined(obj) {
150
128
  return obj === void 0;
151
129
  };
152
-
153
- exports.isUndefined = isUndefined;
154
-
155
- var isString = function isString(obj) {
130
+ var isString = exports.isString = function isString(obj) {
156
131
  return toString.call(obj) === '[object String]';
157
132
  };
158
-
159
- exports.isString = isString;
160
-
161
- var isDate = function isDate(obj) {
133
+ var isDate = exports.isDate = function isDate(obj) {
162
134
  return toString.call(obj) === '[object Date]';
163
135
  };
164
-
165
- exports.isDate = isDate;
166
-
167
- var isBoolean = function isBoolean(obj) {
136
+ var isBoolean = exports.isBoolean = function isBoolean(obj) {
168
137
  return toString.call(obj) === '[object Boolean]';
169
138
  };
170
-
171
- exports.isBoolean = isBoolean;
172
-
173
- var isNumber = function isNumber(obj) {
139
+ var isNumber = exports.isNumber = function isNumber(obj) {
174
140
  return toString.call(obj) === '[object Number]' && /[\d\.]+/.test(String(obj));
175
141
  };
176
-
177
- exports.isNumber = isNumber;
178
-
179
- var isFunction = function isFunction(f) {
142
+ var isFunction = exports.isFunction = function isFunction(f) {
180
143
  if (!f) {
181
144
  return false;
182
145
  }
183
-
184
146
  try {
185
147
  return /^\s*\bfunction\b/.test(f);
186
148
  } catch (err) {
187
149
  return false;
188
150
  }
189
151
  };
190
-
191
- exports.isFunction = isFunction;
192
-
193
- var isArray = nativeIsArray || function (obj) {
152
+ var isArray = exports.isArray = nativeIsArray || function (obj) {
194
153
  return toString.call(obj) === '[object Array]';
195
154
  };
196
-
197
- exports.isArray = isArray;
198
-
199
- var toArray = function toArray(iterable) {
155
+ var toArray = exports.toArray = function toArray(iterable) {
200
156
  if (!iterable) return [];
201
-
202
157
  if (iterable.toArray) {
203
158
  return iterable.toArray();
204
159
  }
205
-
206
160
  if (Array.isArray(iterable)) {
207
161
  return slice.call(iterable);
208
162
  }
209
-
210
163
  if (isArguments(iterable)) {
211
164
  return slice.call(iterable);
212
165
  }
213
-
214
166
  return values(iterable);
215
167
  };
216
-
217
- exports.toArray = toArray;
218
-
219
- var areInOrder = function areInOrder() {
168
+ var areInOrder = exports.areInOrder = function areInOrder() {
220
169
  var numbers = toArray(arguments);
221
-
222
170
  for (var i = 1; i < numbers.length; i += 1) {
223
171
  if (numbers[i - 1] > numbers[i]) {
224
172
  return false;
225
173
  }
226
174
  }
227
-
228
175
  return true;
229
176
  };
230
177
  /**
231
178
  * UUID v4
232
179
  * from https://gist.github.com/jed/982883
233
180
  */
234
-
235
-
236
- exports.areInOrder = areInOrder;
237
-
238
181
  function UUID(placeholder) {
239
- return placeholder ? // tslint:disable-next-line no-bitwise
182
+ return placeholder ?
183
+ // tslint:disable-next-line no-bitwise
240
184
  (parseInt(placeholder, 10) ^ Math.random() * 16 >> parseInt(placeholder, 10) / 4).toString(16) : "".concat(1e7, "-", 1e3, "-", 4e3, "-", 8e3, "-", 1e11).replace(/[018]/g, UUID);
241
185
  }
242
-
243
- var utf8Encode = function utf8Encode(string) {
186
+ var utf8Encode = exports.utf8Encode = function utf8Encode(string) {
244
187
  string = (string + '').replace(/\r\n/g, '\n').replace(/\r/g, '\n');
245
188
  var utftext = '',
246
- start,
247
- end;
189
+ start,
190
+ end;
248
191
  var stringl = 0,
249
- n;
192
+ n;
250
193
  start = end = 0;
251
194
  stringl = string.length;
252
-
253
195
  for (n = 0; n < stringl; n++) {
254
196
  var c1 = string.charCodeAt(n);
255
197
  var enc = null;
256
-
257
198
  if (c1 < 128) {
258
199
  end++;
259
200
  } else if (c1 > 127 && c1 < 2048) {
@@ -261,48 +202,38 @@ var utf8Encode = function utf8Encode(string) {
261
202
  } else {
262
203
  enc = String.fromCharCode(c1 >> 12 | 224, c1 >> 6 & 63 | 128, c1 & 63 | 128);
263
204
  }
264
-
265
205
  if (enc !== null) {
266
206
  if (end > start) {
267
207
  utftext += string.substring(start, end);
268
208
  }
269
-
270
209
  utftext += enc;
271
210
  start = end = n + 1;
272
211
  }
273
212
  }
274
-
275
213
  if (end > start) {
276
214
  utftext += string.substring(start, string.length);
277
215
  }
278
-
279
216
  return utftext;
280
217
  };
281
-
282
- exports.utf8Encode = utf8Encode;
283
-
284
- var base64Encode = function base64Encode(data) {
218
+ var base64Encode = exports.base64Encode = function base64Encode(data) {
285
219
  data = String(data);
286
220
  var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
287
221
  var o1,
288
- o2,
289
- o3,
290
- h1,
291
- h2,
292
- h3,
293
- h4,
294
- bits,
295
- i = 0,
296
- ac = 0,
297
- enc = '',
298
- tmp_arr = [];
299
-
222
+ o2,
223
+ o3,
224
+ h1,
225
+ h2,
226
+ h3,
227
+ h4,
228
+ bits,
229
+ i = 0,
230
+ ac = 0,
231
+ enc = '',
232
+ tmp_arr = [];
300
233
  if (!data) {
301
234
  return data;
302
235
  }
303
-
304
236
  data = utf8Encode(data);
305
-
306
237
  do {
307
238
  o1 = data.charCodeAt(i++);
308
239
  o2 = data.charCodeAt(i++);
@@ -314,45 +245,33 @@ var base64Encode = function base64Encode(data) {
314
245
  h4 = bits & 0x3f;
315
246
  tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
316
247
  } while (i < data.length);
317
-
318
248
  enc = tmp_arr.join('');
319
-
320
249
  switch (data.length % 3) {
321
250
  case 1:
322
251
  enc = enc.slice(0, -2) + '==';
323
252
  break;
324
-
325
253
  case 2:
326
254
  enc = enc.slice(0, -1) + '=';
327
255
  break;
328
256
  }
329
-
330
257
  return enc;
331
258
  };
332
-
333
- exports.base64Encode = base64Encode;
334
-
335
259
  function hasToJSON(value) {
336
260
  return _typeof(value) === 'object' && value !== null && value.hasOwnProperty('toJSON');
337
261
  }
338
-
339
262
  function elapsed(start, end) {
340
263
  return end - start;
341
264
  }
342
-
343
265
  function getMethods(obj) {
344
266
  var funcs = [];
345
-
346
267
  for (var key in obj) {
347
268
  if (typeof obj[key] === 'function' && !_enums.MpHook[key]) {
348
269
  funcs.push(key);
349
270
  }
350
271
  }
351
-
352
272
  return funcs;
353
- } // 替换url包含数字的路由
354
-
355
-
273
+ }
274
+ // 替换url包含数字的路由
356
275
  function replaceNumberCharByPath(path) {
357
276
  if (path) {
358
277
  return path.replace(/\/([^\/]*)\d([^\/]*)/g, '/?');
@@ -360,37 +279,27 @@ function replaceNumberCharByPath(path) {
360
279
  return '';
361
280
  }
362
281
  }
363
-
364
282
  function getStatusGroup(status) {
365
283
  if (!status) return status;
366
284
  return String(status).substr(0, 1) + String(status).substr(1).replace(/\d*/g, 'x');
367
285
  }
368
-
369
- var getQueryParamsFromUrl = function getQueryParamsFromUrl(url) {
286
+ var getQueryParamsFromUrl = exports.getQueryParamsFromUrl = function getQueryParamsFromUrl(url) {
370
287
  var result = {};
371
288
  var arr = url.split('?');
372
289
  var queryString = arr[1] || '';
373
-
374
290
  if (queryString) {
375
291
  result = getURLSearchParams('?' + queryString);
376
292
  }
377
-
378
293
  return result;
379
294
  };
380
-
381
- exports.getQueryParamsFromUrl = getQueryParamsFromUrl;
382
-
383
- var getURLSearchParams = function getURLSearchParams(queryString) {
295
+ var getURLSearchParams = exports.getURLSearchParams = function getURLSearchParams(queryString) {
384
296
  queryString = queryString || '';
385
-
386
297
  var decodeParam = function decodeParam(str) {
387
298
  return decodeURIComponent(str);
388
299
  };
389
-
390
300
  var args = {};
391
301
  var query = queryString.substring(1);
392
302
  var pairs = query.split('&');
393
-
394
303
  for (var i = 0; i < pairs.length; i++) {
395
304
  var pos = pairs[i].indexOf('=');
396
305
  if (pos === -1) continue;
@@ -400,17 +309,12 @@ var getURLSearchParams = function getURLSearchParams(queryString) {
400
309
  value = decodeParam(value);
401
310
  args[name] = value;
402
311
  }
403
-
404
312
  return args;
405
313
  };
406
-
407
- exports.getURLSearchParams = getURLSearchParams;
408
-
409
314
  function isPercentage(value) {
410
315
  return isNumber(value) && value >= 0 && value <= 100;
411
316
  }
412
-
413
- var extend = function extend(obj) {
317
+ var extend = exports.extend = function extend(obj) {
414
318
  slice.call(arguments, 1).forEach(function (source) {
415
319
  for (var prop in source) {
416
320
  if (source[prop] !== void 0) {
@@ -420,10 +324,7 @@ var extend = function extend(obj) {
420
324
  });
421
325
  return obj;
422
326
  };
423
-
424
- exports.extend = extend;
425
-
426
- var extend2Lev = function extend2Lev(obj) {
327
+ var extend2Lev = exports.extend2Lev = function extend2Lev(obj) {
427
328
  slice.call(arguments, 1).forEach(function (source) {
428
329
  for (var prop in source) {
429
330
  if (source[prop] !== void 0) {
@@ -437,71 +338,46 @@ var extend2Lev = function extend2Lev(obj) {
437
338
  });
438
339
  return obj;
439
340
  };
440
-
441
- exports.extend2Lev = extend2Lev;
442
-
443
- var trim = function trim(str) {
341
+ var trim = exports.trim = function trim(str) {
444
342
  return str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
445
343
  };
446
-
447
- exports.trim = trim;
448
-
449
- var isObject = function isObject(obj) {
344
+ var isObject = exports.isObject = function isObject(obj) {
450
345
  if (obj === null) return false;
451
346
  return toString.call(obj) === '[object Object]';
452
347
  };
453
-
454
- exports.isObject = isObject;
455
-
456
- var isEmptyObject = function isEmptyObject(obj) {
348
+ var isEmptyObject = exports.isEmptyObject = function isEmptyObject(obj) {
457
349
  if (isObject(obj)) {
458
350
  for (var key in obj) {
459
351
  if (hasOwnProperty.call(obj, key)) {
460
352
  return false;
461
353
  }
462
354
  }
463
-
464
355
  return true;
465
356
  } else {
466
357
  return false;
467
358
  }
468
359
  };
469
-
470
- exports.isEmptyObject = isEmptyObject;
471
-
472
- var isJSONString = function isJSONString(str) {
360
+ var isJSONString = exports.isJSONString = function isJSONString(str) {
473
361
  try {
474
362
  JSON.parse(str);
475
363
  } catch (e) {
476
364
  return false;
477
365
  }
478
-
479
366
  return true;
480
367
  };
481
-
482
- exports.isJSONString = isJSONString;
483
-
484
- var safeJSONParse = function safeJSONParse(str) {
368
+ var safeJSONParse = exports.safeJSONParse = function safeJSONParse(str) {
485
369
  var val = null;
486
-
487
370
  try {
488
371
  val = JSON.parse(str);
489
372
  } catch (e) {
490
373
  return false;
491
374
  }
492
-
493
375
  return val;
494
376
  };
495
-
496
- exports.safeJSONParse = safeJSONParse;
497
-
498
- var now = Date.now || function () {
377
+ var now = exports.now = Date.now || function () {
499
378
  return new Date().getTime();
500
379
  };
501
-
502
- exports.now = now;
503
-
504
- var throttle = function throttle(fn, wait, options) {
380
+ var throttle = exports.throttle = function throttle(fn, wait, options) {
505
381
  var needLeadingExecution = options && options.leading !== undefined ? options.leading : true;
506
382
  var needTrailingExecution = options && options.trailing !== undefined ? options.trailing : true;
507
383
  var inWaitPeriod = false;
@@ -514,19 +390,16 @@ var throttle = function throttle(fn, wait, options) {
514
390
  pendingExecutionWithParameters = arguments;
515
391
  return;
516
392
  }
517
-
518
393
  if (needLeadingExecution) {
519
394
  fn.apply(context, arguments);
520
395
  } else {
521
396
  pendingExecutionWithParameters = arguments;
522
397
  }
523
-
524
398
  inWaitPeriod = true;
525
399
  pendingTimeoutId = setTimeout(function () {
526
400
  if (needTrailingExecution && pendingExecutionWithParameters) {
527
401
  fn.apply(context, pendingExecutionWithParameters);
528
402
  }
529
-
530
403
  inWaitPeriod = false;
531
404
  pendingExecutionWithParameters = undefined;
532
405
  }, wait);
@@ -538,36 +411,26 @@ var throttle = function throttle(fn, wait, options) {
538
411
  }
539
412
  };
540
413
  };
541
-
542
- exports.throttle = throttle;
543
-
544
414
  function noop() {}
545
415
  /**
546
416
  * Return true if the draw is successful
547
417
  * @param threshold between 0 and 100
548
418
  */
549
-
550
-
551
419
  function performDraw(threshold) {
552
420
  return threshold !== 0 && Math.random() * 100 <= threshold;
553
421
  }
554
-
555
422
  function findByPath(source, path) {
556
423
  var pathArr = path.split('.');
557
-
558
424
  while (pathArr.length) {
559
425
  var key = pathArr.shift();
560
-
561
426
  if (source && key in source && hasOwnProperty.call(source, key)) {
562
427
  source = source[key];
563
428
  } else {
564
429
  return undefined;
565
430
  }
566
431
  }
567
-
568
432
  return source;
569
433
  }
570
-
571
434
  function withSnakeCaseKeys(candidate) {
572
435
  var result = {};
573
436
  Object.keys(candidate).forEach(function (key) {
@@ -575,40 +438,33 @@ function withSnakeCaseKeys(candidate) {
575
438
  });
576
439
  return result;
577
440
  }
578
-
579
441
  function deepSnakeCase(candidate) {
580
442
  if (Array.isArray(candidate)) {
581
443
  return candidate.map(function (value) {
582
444
  return deepSnakeCase(value);
583
445
  });
584
446
  }
585
-
586
447
  if (_typeof(candidate) === 'object' && candidate !== null) {
587
448
  return withSnakeCaseKeys(candidate);
588
449
  }
589
-
590
450
  return candidate;
591
451
  }
592
-
593
452
  function toSnakeCase(word) {
594
453
  return word.replace(/[A-Z]/g, function (uppercaseLetter, index) {
595
454
  return (index !== 0 ? '_' : '') + uppercaseLetter.toLowerCase();
596
455
  }).replace(/-/g, '_');
597
456
  }
598
-
599
457
  function escapeRowData(str) {
600
458
  if (_typeof(str) === 'object' && str) {
601
459
  str = (0, _jsonStringify.jsonStringify)(str);
602
460
  } else if (!isString(str)) {
603
461
  return str;
604
462
  }
605
-
606
463
  var reg = /[\s=,"]/g;
607
464
  return String(str).replace(reg, function (word) {
608
465
  return '\\' + word;
609
466
  });
610
467
  }
611
-
612
468
  function escapeJsonValue(value) {
613
469
  if (isString(value)) {
614
470
  return value;
@@ -616,11 +472,9 @@ function escapeJsonValue(value) {
616
472
  return (0, _jsonStringify.jsonStringify)(value);
617
473
  }
618
474
  }
619
-
620
475
  function escapeFieldValueStr(str) {
621
476
  return '"' + str.replace(/[\\]*"/g, '"').replace(/"/g, '\\"') + '"';
622
477
  }
623
-
624
478
  function escapeRowField(value) {
625
479
  if (_typeof(value) === 'object' && value) {
626
480
  return escapeFieldValueStr((0, _jsonStringify.jsonStringify)(value));
@@ -630,8 +484,7 @@ function escapeRowField(value) {
630
484
  return value;
631
485
  }
632
486
  }
633
-
634
- var urlParse = function urlParse(para) {
487
+ var urlParse = exports.urlParse = function urlParse(para) {
635
488
  var URLParser = function URLParser(a) {
636
489
  this._fields = {
637
490
  Username: 4,
@@ -647,29 +500,23 @@ var urlParse = function urlParse(para) {
647
500
  this._values = {};
648
501
  this._regex = null;
649
502
  this._regex = /^((\w+):\/\/)?((\w+):?(\w+)?@)?([^\/\?:]+):?(\d+)?(\/?[^\?#]+)?\??([^#]+)?#?(\w*)/;
650
-
651
503
  if (typeof a != 'undefined') {
652
504
  this._parse(a);
653
505
  }
654
506
  };
655
-
656
507
  URLParser.prototype.setUrl = function (a) {
657
508
  this._parse(a);
658
509
  };
659
-
660
510
  URLParser.prototype._initValues = function () {
661
511
  for (var a in this._fields) {
662
512
  this._values[a] = '';
663
513
  }
664
514
  };
665
-
666
515
  URLParser.prototype.addQueryString = function (queryObj) {
667
516
  if (_typeof(queryObj) !== 'object') {
668
517
  return false;
669
518
  }
670
-
671
519
  var query = this._values.QueryString || '';
672
-
673
520
  for (var i in queryObj) {
674
521
  if (new RegExp(i + '[^&]+').test(query)) {
675
522
  query = query.replace(new RegExp(i + '[^&]+'), i + '=' + queryObj[i]);
@@ -685,69 +532,50 @@ var urlParse = function urlParse(para) {
685
532
  }
686
533
  }
687
534
  }
688
-
689
535
  this._values.QueryString = query;
690
536
  };
691
-
692
537
  URLParser.prototype.getParse = function () {
693
538
  return this._values;
694
539
  };
695
-
696
540
  URLParser.prototype.getUrl = function () {
697
541
  var url = '';
698
- url += this._values.Origin; // url += this._values.Port ? ':' + this._values.Port : ''
699
-
542
+ url += this._values.Origin;
543
+ // url += this._values.Port ? ':' + this._values.Port : ''
700
544
  url += this._values.Path;
701
545
  url += this._values.QueryString ? '?' + this._values.QueryString : '';
702
546
  return url;
703
547
  };
704
-
705
548
  URLParser.prototype._parse = function (a) {
706
549
  this._initValues();
707
-
708
550
  var b = this._regex.exec(a);
709
-
710
551
  if (!b) {
711
552
  throw 'DPURLParser::_parse -> Invalid URL';
712
553
  }
713
-
714
554
  for (var c in this._fields) {
715
555
  if (typeof b[this._fields[c]] != 'undefined') {
716
556
  this._values[c] = b[this._fields[c]];
717
557
  }
718
558
  }
719
-
720
559
  this._values['Path'] = this._values['Path'] || '/';
721
560
  this._values['Hostname'] = this._values['Host'].replace(/:\d+$/, '');
722
561
  this._values['Origin'] = this._values['Protocol'] + '://' + this._values['Hostname'] + (this._values.Port ? ':' + this._values.Port : '');
723
562
  };
724
-
725
563
  return new URLParser(para);
726
564
  };
727
-
728
- exports.urlParse = urlParse;
729
-
730
- var getOwnObjectKeys = function getOwnObjectKeys(obj, isEnumerable) {
565
+ var getOwnObjectKeys = exports.getOwnObjectKeys = function getOwnObjectKeys(obj, isEnumerable) {
731
566
  var keys = Object.keys(obj);
732
-
733
567
  if (Object.getOwnPropertySymbols) {
734
568
  var symbols = Object.getOwnPropertySymbols(obj);
735
-
736
569
  if (isEnumerable) {
737
570
  symbols = symbols.filter(function (t) {
738
571
  return Object.getOwnPropertyDescriptor(obj, t).enumerable;
739
572
  });
740
573
  }
741
-
742
574
  keys.push.apply(keys, symbols);
743
575
  }
744
-
745
576
  return keys;
746
577
  };
747
-
748
- exports.getOwnObjectKeys = getOwnObjectKeys;
749
-
750
- var defineObject = function defineObject(obj, key, value) {
578
+ var defineObject = exports.defineObject = function defineObject(obj, key, value) {
751
579
  if (key in obj) {
752
580
  Object.defineProperty(obj, key, {
753
581
  value: value,
@@ -758,16 +586,11 @@ var defineObject = function defineObject(obj, key, value) {
758
586
  } else {
759
587
  obj[key] = value;
760
588
  }
761
-
762
589
  return obj;
763
590
  };
764
-
765
- exports.defineObject = defineObject;
766
-
767
- var deepMixObject = function deepMixObject(targetObj) {
591
+ var deepMixObject = exports.deepMixObject = function deepMixObject(targetObj) {
768
592
  for (var t = 1; t < arguments.length; t++) {
769
593
  var target = arguments[t] != null ? arguments[t] : {};
770
-
771
594
  if (t % 2) {
772
595
  getOwnObjectKeys(Object(target), true).forEach(function (t) {
773
596
  defineObject(targetObj, t, target[t]);
@@ -782,56 +605,42 @@ var deepMixObject = function deepMixObject(targetObj) {
782
605
  }
783
606
  }
784
607
  }
785
-
786
608
  return targetObj;
787
609
  };
788
-
789
- exports.deepMixObject = deepMixObject;
790
-
791
610
  function getOrigin(url) {
792
611
  return urlParse(url).getParse().Origin;
793
612
  }
794
-
795
613
  function getActivePage() {
796
614
  var curPages = typeof getCurrentPages === 'function' ? getCurrentPages() : [];
797
-
798
615
  if (curPages.length) {
799
616
  return curPages[curPages.length - 1];
800
617
  }
801
-
802
618
  return {};
803
619
  }
804
-
805
620
  function findCommaSeparatedValue(rawString, name) {
806
621
  var matches = rawString.match('(?:^|;)\\s*' + name + '\\s*=\\s*([^;]+)');
807
622
  return matches ? matches[1] : undefined;
808
623
  }
809
-
810
624
  function createCircularReferenceChecker() {
811
625
  if (typeof WeakSet !== 'undefined') {
812
626
  var set = new WeakSet();
813
627
  return {
814
628
  hasAlreadyBeenSeen: function hasAlreadyBeenSeen(value) {
815
629
  var has = set.has(value);
816
-
817
630
  if (!has) {
818
631
  set.add(value);
819
632
  }
820
-
821
633
  return has;
822
634
  }
823
635
  };
824
636
  }
825
-
826
637
  var array = [];
827
638
  return {
828
639
  hasAlreadyBeenSeen: function hasAlreadyBeenSeen(value) {
829
640
  var has = array.indexOf(value) >= 0;
830
-
831
641
  if (!has) {
832
642
  array.push(value);
833
643
  }
834
-
835
644
  return has;
836
645
  }
837
646
  };
@@ -839,108 +648,86 @@ function createCircularReferenceChecker() {
839
648
  /**
840
649
  * Similar to `typeof`, but distinguish plain objects from `null` and arrays
841
650
  */
842
-
843
-
844
651
  function getType(value) {
845
652
  if (value === null) {
846
653
  return 'null';
847
654
  }
848
-
849
655
  if (Array.isArray(value)) {
850
656
  return 'array';
851
657
  }
852
-
853
658
  return _typeof(value);
854
659
  }
855
660
  /**
856
661
  * Iterate over source and affect its sub values into destination, recursively.
857
662
  * If the source and destination can't be merged, return source.
858
663
  */
859
-
860
-
861
664
  function mergeInto(destination, source, circularReferenceChecker) {
862
665
  // ignore the source if it is undefined
863
666
  if (typeof circularReferenceChecker === 'undefined') {
864
667
  circularReferenceChecker = createCircularReferenceChecker();
865
668
  }
866
-
867
669
  if (source === undefined) {
868
670
  return destination;
869
671
  }
870
-
871
672
  if (_typeof(source) !== 'object' || source === null) {
872
673
  // primitive values - just return source
873
674
  return source;
874
675
  } else if (source instanceof Date) {
875
676
  return new Date(source.getTime());
876
677
  } else if (source instanceof RegExp) {
877
- var flags = source.flags || // old browsers compatibility
678
+ var flags = source.flags ||
679
+ // old browsers compatibility
878
680
  [source.global ? 'g' : '', source.ignoreCase ? 'i' : '', source.multiline ? 'm' : '', source.sticky ? 'y' : '', source.unicode ? 'u' : ''].join('');
879
681
  return new RegExp(source.source, flags);
880
682
  }
881
-
882
683
  if (circularReferenceChecker.hasAlreadyBeenSeen(source)) {
883
684
  // remove circular references
884
685
  return undefined;
885
686
  } else if (Array.isArray(source)) {
886
687
  var merged = Array.isArray(destination) ? destination : [];
887
-
888
688
  for (var i = 0; i < source.length; ++i) {
889
689
  merged[i] = mergeInto(merged[i], source[i], circularReferenceChecker);
890
690
  }
891
-
892
691
  return merged;
893
692
  }
894
-
895
693
  var merged = getType(destination) === 'object' ? destination : {};
896
-
897
694
  for (var key in source) {
898
695
  if (Object.prototype.hasOwnProperty.call(source, key)) {
899
696
  merged[key] = mergeInto(merged[key], source[key], circularReferenceChecker);
900
697
  }
901
698
  }
902
-
903
699
  return merged;
904
700
  }
701
+
905
702
  /**
906
703
  * A simplistic implementation of a deep clone algorithm.
907
704
  * Caveats:
908
705
  * - It doesn't maintain prototype chains - don't use with instances of custom classes.
909
706
  * - It doesn't handle Map and Set
910
707
  */
911
-
912
-
913
708
  function deepClone(value) {
914
709
  return mergeInto(undefined, value);
915
710
  }
916
-
917
- var ONE_SECOND = 1000;
918
- exports.ONE_SECOND = ONE_SECOND;
919
- var ONE_MINUTE = 60 * ONE_SECOND;
920
- exports.ONE_MINUTE = ONE_MINUTE;
921
- var ONE_HOUR = 60 * ONE_MINUTE;
922
- exports.ONE_HOUR = ONE_HOUR;
923
-
711
+ var ONE_SECOND = exports.ONE_SECOND = 1000;
712
+ var ONE_MINUTE = exports.ONE_MINUTE = 60 * ONE_SECOND;
713
+ var ONE_HOUR = exports.ONE_HOUR = 60 * ONE_MINUTE;
924
714
  function defineGlobal(global, name, api) {
925
715
  global[name] = api;
926
716
  }
927
-
928
717
  function getGlobalObject() {
929
718
  if ((typeof globalThis === "undefined" ? "undefined" : _typeof(globalThis)) === 'object') {
930
719
  return globalThis;
931
720
  }
932
-
933
721
  Object.defineProperty(Object.prototype, '_dd_temp_', {
934
722
  get: function get() {
935
723
  return this;
936
724
  },
937
725
  configurable: true
938
- }); // @ts-ignore
939
-
940
- var globalObject = _dd_temp_; // @ts-ignore
941
-
726
+ });
727
+ // @ts-ignore
728
+ var globalObject = _dd_temp_;
729
+ // @ts-ignore
942
730
  delete Object.prototype._dd_temp_;
943
-
944
731
  if (_typeof(globalObject) !== 'object') {
945
732
  // on safari _dd_temp_ is available on window but not globally
946
733
  // fallback on other browser globals check
@@ -952,6 +739,5 @@ function getGlobalObject() {
952
739
  globalObject = {};
953
740
  }
954
741
  }
955
-
956
742
  return globalObject;
957
743
  }