@microsoft/applicationinsights-core-js 3.0.7-nightly3.2312-05 → 3.0.8

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 (90) hide show
  1. package/browser/es5/applicationinsights-core-js.cjs.js +271 -206
  2. package/browser/es5/applicationinsights-core-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-core-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-core-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-core-js.gbl.js +273 -208
  6. package/browser/es5/applicationinsights-core-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-core-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-core-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-core-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-core-js.js +273 -208
  11. package/browser/es5/applicationinsights-core-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-core-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-core-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-core-js.js +271 -206
  15. package/dist/es5/applicationinsights-core-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-core-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-core-js.min.js.map +1 -1
  18. package/dist-es5/Config/ConfigDefaultHelpers.js +1 -1
  19. package/dist-es5/Config/ConfigDefaults.js +1 -1
  20. package/dist-es5/Config/DynamicConfig.js +1 -1
  21. package/dist-es5/Config/DynamicProperty.js +1 -1
  22. package/dist-es5/Config/DynamicState.js +1 -1
  23. package/dist-es5/Config/DynamicSupport.js +1 -1
  24. package/dist-es5/Config/IConfigDefaults.js +1 -1
  25. package/dist-es5/Config/IDynamicConfigHandler.js +1 -1
  26. package/dist-es5/Config/IDynamicPropertyHandler.js +1 -1
  27. package/dist-es5/Config/IDynamicWatcher.js +1 -1
  28. package/dist-es5/Config/_IDynamicConfigHandlerState.js +1 -1
  29. package/dist-es5/JavaScriptSDK/AggregationError.js +1 -1
  30. package/dist-es5/JavaScriptSDK/AppInsightsCore.js +1 -1
  31. package/dist-es5/JavaScriptSDK/AsyncUtils.js +1 -1
  32. package/dist-es5/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  33. package/dist-es5/JavaScriptSDK/Constants.js +1 -1
  34. package/dist-es5/JavaScriptSDK/CookieMgr.js +1 -1
  35. package/dist-es5/JavaScriptSDK/CoreUtils.js +1 -1
  36. package/dist-es5/JavaScriptSDK/DataCacheHelper.js +2 -2
  37. package/dist-es5/JavaScriptSDK/DataCacheHelper.js.map +1 -1
  38. package/dist-es5/JavaScriptSDK/DbgExtensionUtils.js +1 -1
  39. package/dist-es5/JavaScriptSDK/DiagnosticLogger.js +1 -1
  40. package/dist-es5/JavaScriptSDK/EnvUtils.js +1 -1
  41. package/dist-es5/JavaScriptSDK/EventHelpers.js +1 -1
  42. package/dist-es5/JavaScriptSDK/HelperFuncs.js +1 -1
  43. package/dist-es5/JavaScriptSDK/InstrumentHooks.js +1 -1
  44. package/dist-es5/JavaScriptSDK/InternalConstants.js +1 -1
  45. package/dist-es5/JavaScriptSDK/NotificationManager.js +1 -1
  46. package/dist-es5/JavaScriptSDK/PerfManager.js +1 -1
  47. package/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js +1 -1
  48. package/dist-es5/JavaScriptSDK/RandomHelper.js +1 -1
  49. package/dist-es5/JavaScriptSDK/TelemetryHelpers.js +1 -1
  50. package/dist-es5/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  51. package/dist-es5/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  52. package/dist-es5/JavaScriptSDK/UnloadHookContainer.js +1 -1
  53. package/dist-es5/JavaScriptSDK/W3cTraceParent.js +1 -1
  54. package/dist-es5/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  55. package/dist-es5/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
  56. package/dist-es5/JavaScriptSDK.Enums/FeatureOptInEnums.js +1 -1
  57. package/dist-es5/JavaScriptSDK.Enums/LoggingEnums.js +1 -1
  58. package/dist-es5/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  59. package/dist-es5/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  60. package/dist-es5/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  61. package/dist-es5/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  62. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  63. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControlsHost.js +1 -1
  64. package/dist-es5/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
  65. package/dist-es5/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  66. package/dist-es5/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  67. package/dist-es5/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  68. package/dist-es5/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  69. package/dist-es5/JavaScriptSDK.Interfaces/IFeatureOptIn.js +1 -1
  70. package/dist-es5/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  71. package/dist-es5/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  72. package/dist-es5/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  73. package/dist-es5/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  74. package/dist-es5/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  75. package/dist-es5/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  76. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  77. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  78. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  79. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  80. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  81. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  82. package/dist-es5/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  83. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  84. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  85. package/dist-es5/JavaScriptSDK.Interfaces/IXHROverride.js +1 -1
  86. package/dist-es5/__DynamicConstants.js +1 -1
  87. package/dist-es5/applicationinsights-core-js.js +1 -1
  88. package/package.json +75 -78
  89. package/types/applicationinsights-core-js.d.ts +1 -1
  90. package/types/applicationinsights-core-js.namespaced.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.0.7-nightly3.2312-05
2
+ * Application Insights JavaScript SDK - Core, 3.0.8
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  'use strict';
@@ -27,6 +27,8 @@ var DONE = "done";
27
27
  var VALUE = "value";
28
28
  var NAME = "name";
29
29
  var SLICE = "slice";
30
+ var CALL = "call";
31
+ var TO_STRING = "toString";
30
32
  var ObjClass$1 = Object;
31
33
  var ObjProto = ObjClass$1[PROTOTYPE];
32
34
  var StrCls = String;
@@ -35,51 +37,67 @@ var MathCls = Math;
35
37
  var ArrCls = Array;
36
38
  var ArrProto = ArrCls[PROTOTYPE];
37
39
 
38
- function safeGet(cb, defValue) {
39
- var result = defValue;
40
+ function safe(func, argArray) {
40
41
  try {
41
- result = cb();
42
+ return {
43
+ v: func.apply(this, argArray)
44
+ };
42
45
  }
43
46
  catch (e) {
47
+ return { e: e };
44
48
  }
45
- return result;
49
+ }
50
+
51
+ function safeGet(cb, defValue) {
52
+ var result = safe(cb);
53
+ return result.e ? defValue : result.v;
46
54
  }
47
55
 
48
56
  var PRIMITIVE_TYPES = [STRING, NUMBER, BOOLEAN, UNDEFINED, "symbol", "bigint"];
57
+ /*#__NO_SIDE_EFFECTS__*/
49
58
  function _createIs(theType) {
50
59
  return function (value) {
51
60
  return typeof value === theType;
52
61
  };
53
62
  }
63
+ /*#__NO_SIDE_EFFECTS__*/
54
64
  function _createObjIs(theName) {
55
65
  var theType = "[object " + theName + "]";
56
66
  return function (value) {
57
67
  return !!(value && objToString(value) === theType);
58
68
  };
59
69
  }
70
+ /*#__NO_SIDE_EFFECTS__*/
60
71
  function objToString(value) {
61
72
  return ObjProto.toString.call(value);
62
73
  }
74
+ /*#__NO_SIDE_EFFECTS__*/
63
75
  function isTypeof(value, theType) {
64
76
  return typeof value === theType;
65
77
  }
78
+ /*#__NO_SIDE_EFFECTS__*/
66
79
  function isUndefined(value) {
67
80
  return typeof value === UNDEFINED || value === UNDEFINED;
68
81
  }
82
+ /*#__NO_SIDE_EFFECTS__*/
69
83
  function isNullOrUndefined(value) {
70
84
  return value === NULL_VALUE || isUndefined(value);
71
85
  }
86
+ /*#__NO_SIDE_EFFECTS__*/
72
87
  function isStrictNullOrUndefined(value) {
73
88
  return value === NULL_VALUE || !isDefined(value);
74
89
  }
90
+ /*#__NO_SIDE_EFFECTS__*/
75
91
  function isDefined(arg) {
76
92
  return !!arg || arg !== UNDEF_VALUE;
77
93
  }
78
- var isPrimitiveType = function (theType) {
94
+ /*#__NO_SIDE_EFFECTS__*/
95
+ function isPrimitiveType(theType) {
79
96
  return theType !== OBJECT && PRIMITIVE_TYPES.indexOf(theType) !== -1;
80
- };
81
- var isString = _createIs(STRING);
82
- var isFunction = _createIs(FUNCTION);
97
+ }
98
+ var isString = ( /*#__PURE__*/_createIs(STRING));
99
+ var isFunction = ( /*#__PURE__*/_createIs(FUNCTION));
100
+ /*#__NO_SIDE_EFFECTS__*/
83
101
  function isObject(value) {
84
102
  if (!value && isNullOrUndefined(value)) {
85
103
  return false;
@@ -87,27 +105,32 @@ function isObject(value) {
87
105
  return !!value && typeof value === OBJECT;
88
106
  }
89
107
  var isArray = ArrCls.isArray;
90
- var isDate = _createObjIs("Date");
91
- var isNumber = _createIs(NUMBER);
92
- var isBoolean = _createIs(BOOLEAN);
93
- var isError = _createObjIs("Error");
108
+ var isDate = ( /*#__PURE__*/_createObjIs("Date"));
109
+ var isNumber = ( /*#__PURE__*/_createIs(NUMBER));
110
+ var isBoolean = ( /*#__PURE__*/_createIs(BOOLEAN));
111
+ var isError = ( /*#__PURE__*/_createObjIs("Error"));
112
+ /*#__NO_SIDE_EFFECTS__*/
94
113
  function isPromiseLike(value) {
95
- return !!value && isFunction(value.then);
114
+ return !!(value && value.then && isFunction(value.then));
96
115
  }
116
+ /*#__NO_SIDE_EFFECTS__*/
97
117
  function isNotTruthy(value) {
98
- return !value || !safeGet(function () { return (value && (0 + value)); }, value);
118
+ return !value || !isTruthy(value);
99
119
  }
120
+ /*#__NO_SIDE_EFFECTS__*/
100
121
  function isTruthy(value) {
101
122
  return !(!value || safeGet(function () { return !(value && (0 + value)); }, !value));
102
123
  }
103
124
 
104
125
  var objGetOwnPropertyDescriptor = ObjClass$1.getOwnPropertyDescriptor;
105
126
 
127
+ /*#__NO_SIDE_EFFECTS__*/
106
128
  function objHasOwnProperty(obj, prop) {
107
- return obj && ObjProto.hasOwnProperty.call(obj, prop);
129
+ return !!obj && ObjProto.hasOwnProperty[CALL](obj, prop);
108
130
  }
109
131
 
110
132
  var objHasOwn = ObjClass$1["hasOwn"] || polyObjHasOwn;
133
+ /*#__NO_SIDE_EFFECTS__*/
111
134
  function polyObjHasOwn(obj, prop) {
112
135
  return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
113
136
  }
@@ -116,7 +139,7 @@ function objForEachKey(theObject, callbackfn, thisArg) {
116
139
  if (theObject && isObject(theObject)) {
117
140
  for (var prop in theObject) {
118
141
  if (objHasOwn(theObject, prop)) {
119
- if (callbackfn.call(thisArg || theObject, prop, theObject[prop]) === -1) {
142
+ if (callbackfn[CALL](thisArg || theObject, prop, theObject[prop]) === -1) {
120
143
  break;
121
144
  }
122
145
  }
@@ -124,6 +147,7 @@ function objForEachKey(theObject, callbackfn, thisArg) {
124
147
  }
125
148
  }
126
149
 
150
+ /*#__NO_SIDE_EFFECTS__*/
127
151
  function _createKeyValueMap(values, keyType, valueType, completeFn) {
128
152
  var theMap = {};
129
153
  objForEachKey(values, function (key, value) {
@@ -141,15 +165,15 @@ function throwTypeError(message) {
141
165
  }
142
166
 
143
167
  var _objFreeze = ObjClass$1["freeze"];
144
- var _doNothing = function (value) { return value; };
145
- var _getProto = function (value) { return value[__PROTO__] || NULL_VALUE; };
146
- var objAssign = ObjClass$1["assign"];
147
- function objKeys(value) {
148
- if (!isObject(value) || value === NULL_VALUE) {
149
- throwTypeError("objKeys called on non-object");
150
- }
151
- return ObjClass$1.keys(value);
168
+ function _doNothing(value) {
169
+ return value;
170
+ }
171
+ /*#__NO_SIDE_EFFECTS__*/
172
+ function _getProto(value) {
173
+ return value[__PROTO__] || NULL_VALUE;
152
174
  }
175
+ var objAssign = ObjClass$1["assign"];
176
+ var objKeys = ObjClass$1.keys;
153
177
  function objDeepFreeze(value) {
154
178
  if (_objFreeze) {
155
179
  objForEachKey(value, function (key, value) {
@@ -164,12 +188,15 @@ var objFreeze = _objFreeze || _doNothing;
164
188
  var objSeal = ObjClass$1["seal"] || _doNothing;
165
189
  var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _getProto;
166
190
 
191
+ /*#__NO_SIDE_EFFECTS__*/
167
192
  function createEnum(values) {
168
193
  return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
169
194
  }
195
+ /*#__NO_SIDE_EFFECTS__*/
170
196
  function createEnumKeyMap(values) {
171
197
  return _createKeyValueMap(values, 0 , 0 , objDeepFreeze);
172
198
  }
199
+ /*#__NO_SIDE_EFFECTS__*/
173
200
  function createSimpleMap(values) {
174
201
  var mapClass = {};
175
202
  objForEachKey(values, function (key, value) {
@@ -178,11 +205,12 @@ function createSimpleMap(values) {
178
205
  });
179
206
  return objDeepFreeze(mapClass);
180
207
  }
208
+ /*#__NO_SIDE_EFFECTS__*/
181
209
  function createTypeMap(values) {
182
210
  return createSimpleMap(values);
183
211
  }
184
212
 
185
- var _wellKnownSymbolMap = createEnumKeyMap({
213
+ var _wellKnownSymbolMap = /*#__PURE__*/ createEnumKeyMap({
186
214
  asyncIterator: 0 ,
187
215
  hasInstance: 1 ,
188
216
  isConcatSpreadable: 2 ,
@@ -218,60 +246,50 @@ function _getGlobalValue() {
218
246
  }
219
247
  return result;
220
248
  }
249
+ /*#__NO_SIDE_EFFECTS__*/
221
250
  function _getGlobalConfig() {
222
251
  if (!_globalCfg) {
223
- var gbl = _getGlobalValue() || {};
252
+ var gbl = safe(_getGlobalValue).v || {};
224
253
  _globalCfg = gbl[GLOBAL_CONFIG_KEY] = gbl[GLOBAL_CONFIG_KEY] || {};
225
254
  }
226
255
  return _globalCfg;
227
256
  }
228
257
 
258
+ var ERROR_TYPE = "[object Error]";
259
+ /*#__NO_SIDE_EFFECTS__*/
229
260
  function dumpObj(object, format) {
230
261
  var propertyValueDump = EMPTY;
231
- if (isError(object)) {
232
- propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object.name + "'";
262
+ var objType = ObjProto[TO_STRING][CALL](object);
263
+ if (objType === ERROR_TYPE) {
264
+ object = { stack: asString(object.stack), message: asString(object.message), name: asString(object.name) };
233
265
  }
234
- else {
235
- try {
236
- propertyValueDump = JSON.stringify(object, NULL_VALUE, format ? (isNumber(format) ? format : 4) : UNDEF_VALUE);
237
- }
238
- catch (e) {
239
- propertyValueDump = " - " + dumpObj(e, format);
240
- }
266
+ try {
267
+ propertyValueDump = JSON.stringify(object, NULL_VALUE, format ? ((typeof format === NUMBER) ? format : 4) : UNDEF_VALUE);
268
+ propertyValueDump = (propertyValueDump && propertyValueDump.replace(/"(\w+)"\s*:\s{0,1}/g, "$1: ")) || asString(object);
241
269
  }
242
- return objToString(object) + ": " + propertyValueDump;
270
+ catch (e) {
271
+ propertyValueDump = " - " + dumpObj(e, format);
272
+ }
273
+ return objType + ": " + propertyValueDump;
243
274
  }
244
275
 
245
- var _arrSlice = ArrProto[SLICE];
246
- var _throwMissingFunction = function (funcName, thisArg) {
247
- throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
248
- };
249
- var _unwrapInstFunction = function (funcName) {
250
- return function (thisArg) {
251
- return thisArg[funcName].apply(thisArg, _arrSlice.call(arguments, 1));
252
- };
253
- };
254
- var _unwrapFunction = function (funcName, clsProto) {
255
- var clsFn = clsProto && clsProto[funcName];
256
- return function (thisArg) {
257
- var theFunc = (thisArg && thisArg[funcName]) || clsFn;
258
- if (theFunc) {
259
- return theFunc.apply(thisArg, _arrSlice.call(arguments, 1));
260
- }
261
- _throwMissingFunction(funcName, thisArg);
262
- };
263
- };
264
- var _unwrapFunctionWithPoly = function (funcName, clsProto, polyFunc) {
276
+ var _slice;
277
+ var _unwrapInstFunction = _unwrapFunctionWithPoly;
278
+ var _unwrapFunction = _unwrapFunctionWithPoly;
279
+ /*#__NO_SIDE_EFFECTS__*/
280
+ function _unwrapFunctionWithPoly(funcName, clsProto, polyFunc) {
281
+ _slice = _slice || ArrProto[SLICE];
265
282
  var clsFn = clsProto && clsProto[funcName];
266
283
  return function (thisArg) {
267
284
  var theFunc = (thisArg && thisArg[funcName]) || clsFn;
268
285
  if (theFunc || polyFunc) {
269
286
  var theArgs = arguments;
270
- return (theFunc || polyFunc).apply(thisArg, theFunc ? _arrSlice.call(theArgs, 1) : theArgs);
287
+ return (theFunc || polyFunc).apply(thisArg, theFunc ? _slice[CALL](theArgs, 1) : theArgs);
271
288
  }
272
- _throwMissingFunction(funcName, thisArg);
289
+ throwTypeError("\"" + asString(funcName) + "\" not defined for " + dumpObj(thisArg));
273
290
  };
274
- };
291
+ }
292
+ /*#__NO_SIDE_EFFECTS__*/
275
293
  function _unwrapProp(propName) {
276
294
  return function (thisArg) {
277
295
  return thisArg[propName];
@@ -280,10 +298,11 @@ function _unwrapProp(propName) {
280
298
 
281
299
  var mathMax = MathCls.max;
282
300
 
283
- var strSlice = _unwrapFunction(SLICE, StrProto);
301
+ var strSlice = ( /*#__PURE__*/_unwrapFunction(SLICE, StrProto));
284
302
 
285
- var strSubstring = _unwrapFunction("substring", StrProto);
286
- var strSubstr = _unwrapFunctionWithPoly("substr", StrProto, polyStrSubstr);
303
+ var strSubstring = ( /*#__PURE__*/_unwrapFunction("substring", StrProto));
304
+ var strSubstr = ( /*#__PURE__*/_unwrapFunctionWithPoly("substr", StrProto, polyStrSubstr));
305
+ /*#__NO_SIDE_EFFECTS__*/
287
306
  function polyStrSubstr(value, start, length) {
288
307
  if (isNullOrUndefined(value)) {
289
308
  throwTypeError("'polyStrSubstr called with invalid " + dumpObj(value));
@@ -300,23 +319,14 @@ function polyStrSubstr(value, start, length) {
300
319
  }
301
320
  return strSlice(value, start, start + length);
302
321
  }
322
+ /*#__NO_SIDE_EFFECTS__*/
303
323
  function strLeft(value, count) {
304
324
  return strSubstring(value, 0, count);
305
325
  }
306
326
 
307
- var strStartsWith = _unwrapFunctionWithPoly("startsWith", StrProto, polyStrStartsWith);
308
- function polyStrStartsWith(value, searchString, position) {
309
- if (!isString(value)) {
310
- throwTypeError("'" + dumpObj(value) + "' is not a string");
311
- }
312
- var searchValue = isString(searchString) ? searchString : asString(searchString);
313
- var chkLen = searchValue[LENGTH];
314
- var pos = position > 0 ? position : 0;
315
- return strSubstring(value, pos, pos + chkLen) === searchValue;
316
- }
317
-
318
327
  var UNIQUE_REGISTRY_ID = "_urid";
319
328
  var _polySymbols;
329
+ /*#__NO_SIDE_EFFECTS__*/
320
330
  function _globalSymbolRegistry() {
321
331
  if (!_polySymbols) {
322
332
  var gblCfg = _getGlobalConfig();
@@ -324,7 +334,8 @@ function _globalSymbolRegistry() {
324
334
  }
325
335
  return _polySymbols;
326
336
  }
327
- var _wellKnownSymbolCache = {};
337
+ var _wellKnownSymbolCache;
338
+ /*#__NO_SIDE_EFFECTS__*/
328
339
  function polyNewSymbol(description) {
329
340
  var theSymbol = {
330
341
  description: asString(description),
@@ -333,18 +344,21 @@ function polyNewSymbol(description) {
333
344
  theSymbol[POLYFILL_TAG] = true;
334
345
  return theSymbol;
335
346
  }
347
+ /*#__NO_SIDE_EFFECTS__*/
336
348
  function polySymbolFor(key) {
337
349
  var registry = _globalSymbolRegistry();
338
350
  if (!objHasOwn(registry.k, key)) {
339
351
  var newSymbol_1 = polyNewSymbol(key);
340
352
  var regId_1 = objKeys(registry.s).length;
341
- newSymbol_1[UNIQUE_REGISTRY_ID] = function () { return regId_1 + "_" + newSymbol_1.toString(); };
353
+ newSymbol_1[UNIQUE_REGISTRY_ID] = function () { return regId_1 + "_" + newSymbol_1[TO_STRING](); };
342
354
  registry.k[key] = newSymbol_1;
343
355
  registry.s[newSymbol_1[UNIQUE_REGISTRY_ID]()] = asString(key);
344
356
  }
345
357
  return registry.k[key];
346
358
  }
359
+ /*#__NO_SIDE_EFFECTS__*/
347
360
  function polyGetKnownSymbol(name) {
361
+ !_wellKnownSymbolCache && (_wellKnownSymbolCache = {});
348
362
  var result;
349
363
  var knownName = _wellKnownSymbolMap[name];
350
364
  if (knownName) {
@@ -361,6 +375,7 @@ var propMap = {
361
375
  g: "get",
362
376
  s: "set"
363
377
  };
378
+ /*#__NO_SIDE_EFFECTS__*/
364
379
  function _createProp(value) {
365
380
  var prop = {};
366
381
  prop[propMap["c"]] = true;
@@ -398,13 +413,12 @@ function objDefine(target, key, propDesc) {
398
413
  }
399
414
 
400
415
  var _globalLazyTestHooks;
401
- var _fetchLazyTestHooks = function () {
416
+ function _initTestHooks() {
402
417
  _globalLazyTestHooks = _getGlobalConfig();
403
- _fetchLazyTestHooks = NULL_VALUE;
404
- };
418
+ }
405
419
  function getLazy(cb) {
406
420
  var lazyValue = {};
407
- _fetchLazyTestHooks && _fetchLazyTestHooks();
421
+ !_globalLazyTestHooks && _initTestHooks();
408
422
  lazyValue.b = _globalLazyTestHooks.lzy;
409
423
  objDefineProp(lazyValue, "v", {
410
424
  configurable: true,
@@ -414,21 +428,27 @@ function getLazy(cb) {
414
428
  objDefineProp(lazyValue, "v", {
415
429
  value: result
416
430
  });
417
- if (lazyValue.b) {
418
- delete lazyValue.b;
419
- }
420
- }
421
- if (_globalLazyTestHooks.lzy && lazyValue.b !== _globalLazyTestHooks.lzy) {
422
- lazyValue.b = _globalLazyTestHooks.lzy;
423
431
  }
432
+ lazyValue.b = _globalLazyTestHooks.lzy;
424
433
  return result;
425
434
  }
426
435
  });
427
436
  return lazyValue;
428
437
  }
429
438
 
439
+ /*#__NO_SIDE_EFFECTS__*/
430
440
  function safeGetLazy(cb, defValue) {
431
- return getLazy(function () { return safeGet(cb, defValue); });
441
+ return getLazy(function () {
442
+ var result = safe(cb);
443
+ return result.e ? defValue : result.v;
444
+ });
445
+ }
446
+
447
+ /*#__NO_SIDE_EFFECTS__*/
448
+ function createCachedValue(value) {
449
+ return objDefineProp({
450
+ toJSON: function () { return value; }
451
+ }, "v", { value: value });
432
452
  }
433
453
 
434
454
  var WINDOW = "window";
@@ -438,12 +458,18 @@ var _cachedDocument;
438
458
  var _cachedNavigator;
439
459
  var _cachedHistory;
440
460
  var _isNode;
441
- var lazySafeGetInst = function (name) { return safeGetLazy(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE); };
442
- var getGlobal = function (useCached) {
443
- (!_cachedGlobal || useCached === false || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = safeGetLazy(_getGlobalValue, NULL_VALUE));
461
+ /*#__NO_SIDE_EFFECTS__*/
462
+ function lazySafeGetInst(name) {
463
+ return getLazy(function () { return safe((getInst), [name]).v || UNDEF_VALUE; });
464
+ }
465
+ /*#__NO_SIDE_EFFECTS__*/
466
+ function getGlobal(useCached) {
467
+ !_globalLazyTestHooks && _initTestHooks();
468
+ (!_cachedGlobal || useCached === false || _globalLazyTestHooks.lzy) && (_cachedGlobal = createCachedValue(safe(_getGlobalValue).v || NULL_VALUE));
444
469
  return _cachedGlobal.v;
445
- };
446
- var getInst = function (name, useCached) {
470
+ }
471
+ /*#__NO_SIDE_EFFECTS__*/
472
+ function getInst(name, useCached) {
447
473
  var gbl = (!_cachedGlobal || useCached === false) ? getGlobal(useCached) : _cachedGlobal.v;
448
474
  if (gbl && gbl[name]) {
449
475
  return gbl[name];
@@ -452,68 +478,96 @@ var getInst = function (name, useCached) {
452
478
  return _cachedWindow.v;
453
479
  }
454
480
  return NULL_VALUE;
455
- };
456
- var hasDocument = function () { return !!getDocument(); };
457
- var getDocument = function () {
458
- (!_cachedDocument || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedDocument.b)) && (_cachedDocument = lazySafeGetInst("document"));
481
+ }
482
+ /*#__NO_SIDE_EFFECTS__*/
483
+ function hasDocument() {
484
+ return !!getDocument();
485
+ }
486
+ /*#__NO_SIDE_EFFECTS__*/
487
+ function getDocument() {
488
+ !_globalLazyTestHooks && _initTestHooks();
489
+ (!_cachedDocument || _globalLazyTestHooks.lzy) && (_cachedDocument = createCachedValue(safe((getInst), ["document"]).v));
459
490
  return _cachedDocument.v;
460
- };
461
- var hasWindow = function () { return !!getWindow(); };
462
- var getWindow = function () {
463
- (!_cachedWindow || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedWindow.b)) && (_cachedWindow = lazySafeGetInst(WINDOW));
491
+ }
492
+ /*#__NO_SIDE_EFFECTS__*/
493
+ function hasWindow() {
494
+ return !!getWindow();
495
+ }
496
+ /*#__NO_SIDE_EFFECTS__*/
497
+ function getWindow() {
498
+ !_globalLazyTestHooks && _initTestHooks();
499
+ (!_cachedWindow || _globalLazyTestHooks.lzy) && (_cachedWindow = createCachedValue(safe((getInst), [WINDOW]).v));
464
500
  return _cachedWindow.v;
465
- };
466
- var hasNavigator = function () { return !!getNavigator(); };
467
- var getNavigator = function () {
468
- (!_cachedNavigator || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = lazySafeGetInst("navigator"));
501
+ }
502
+ /*#__NO_SIDE_EFFECTS__*/
503
+ function hasNavigator() {
504
+ return !!getNavigator();
505
+ }
506
+ /*#__NO_SIDE_EFFECTS__*/
507
+ function getNavigator() {
508
+ !_globalLazyTestHooks && _initTestHooks();
509
+ (!_cachedNavigator || _globalLazyTestHooks.lzy) && (_cachedNavigator = createCachedValue(safe((getInst), ["navigator"]).v));
469
510
  return _cachedNavigator.v;
470
- };
471
- var hasHistory = function () { return !!getHistory(); };
472
- var getHistory = function () {
473
- (!_cachedHistory || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedHistory.b)) && (_cachedHistory = lazySafeGetInst("history"));
511
+ }
512
+ /*#__NO_SIDE_EFFECTS__*/
513
+ function hasHistory() {
514
+ return !!getHistory();
515
+ }
516
+ /*#__NO_SIDE_EFFECTS__*/
517
+ function getHistory() {
518
+ !_globalLazyTestHooks && _initTestHooks();
519
+ (!_cachedHistory || _globalLazyTestHooks.lzy) && (_cachedHistory = createCachedValue(safe((getInst), ["history"]).v));
474
520
  return _cachedHistory.v;
475
- };
476
- var isNode = function () {
477
- !_isNode && (_isNode = safeGetLazy(function () { return !!(process && (process.versions || {}).node); }, false));
521
+ }
522
+ function isNode() {
523
+ !_isNode && (_isNode = createCachedValue(!!safe(function () { return (process && (process.versions || {}).node); }).v));
478
524
  return _isNode.v;
479
- };
525
+ }
480
526
 
481
527
  var _symbol;
482
528
  var _symbolFor;
483
- var _symbolKeyFor;
484
- function _getSymbolValue(name) {
485
- return safeGetLazy(function () {
486
- return (_symbol.v ? _symbol.v[name] : UNDEF_VALUE);
487
- }, UNDEF_VALUE);
529
+ function _initSymbol() {
530
+ if (!_symbol || !_symbol.b) {
531
+ _symbol = lazySafeGetInst(SYMBOL);
532
+ _symbolFor = safeGetLazy(function () { return (_symbol.v ? _symbol.v["for"] : UNDEF_VALUE); }, UNDEF_VALUE);
533
+ }
488
534
  }
489
- var isSymbol = _createIs("symbol");
535
+ var isSymbol = ( /*#__PURE__*/_createIs("symbol"));
536
+ /*#__NO_SIDE_EFFECTS__*/
490
537
  function hasSymbol() {
491
538
  return !!getSymbol();
492
539
  }
540
+ /*#__NO_SIDE_EFFECTS__*/
493
541
  function getSymbol() {
494
- var resetCache = !_symbol || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_symbol.b);
495
- resetCache && (_symbol = lazySafeGetInst(SYMBOL));
496
- (!_symbolFor || resetCache) && (_symbolFor = _getSymbolValue("for"));
497
- (!_symbolKeyFor || resetCache) && (_symbolKeyFor = _getSymbolValue("keyFor"));
542
+ !_globalLazyTestHooks && _initTestHooks();
543
+ (!_symbol || _globalLazyTestHooks.lzy) && _initSymbol();
498
544
  return _symbol.v;
499
545
  }
546
+ /*#__NO_SIDE_EFFECTS__*/
500
547
  function getKnownSymbol(name, noPoly) {
501
548
  var knownName = _wellKnownSymbolMap[name];
502
- (!_symbol || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
549
+ !_globalLazyTestHooks && _initTestHooks();
550
+ (!_symbol || _globalLazyTestHooks.lzy) && _initSymbol();
503
551
  return _symbol.v ? _symbol.v[knownName || name] : (!noPoly ? polyGetKnownSymbol(name) : UNDEF_VALUE);
504
552
  }
553
+ /*#__NO_SIDE_EFFECTS__*/
505
554
  function newSymbol(description, noPoly) {
506
- (!_symbol || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
555
+ !_globalLazyTestHooks && _initTestHooks();
556
+ (!_symbol || _globalLazyTestHooks.lzy) && _initSymbol();
507
557
  return _symbol.v ? _symbol.v(description) : (!noPoly ? polyNewSymbol(description) : NULL_VALUE);
508
558
  }
559
+ /*#__NO_SIDE_EFFECTS__*/
509
560
  function symbolFor(key) {
510
- (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
561
+ !_globalLazyTestHooks && _initTestHooks();
562
+ (!_symbolFor || !_symbol || _globalLazyTestHooks.lzy) && _initSymbol();
511
563
  return (_symbolFor.v || polySymbolFor)(key);
512
564
  }
513
565
 
566
+ /*#__NO_SIDE_EFFECTS__*/
514
567
  function isIterator(value) {
515
568
  return !!value && isFunction(value.next);
516
569
  }
570
+ /*#__NO_SIDE_EFFECTS__*/
517
571
  function isIterable(value) {
518
572
  return !isStrictNullOrUndefined(value) && isFunction(value[getKnownSymbol(3 )]);
519
573
  }
@@ -522,7 +576,7 @@ var _iterSymbol;
522
576
  function iterForOf(iter, callbackfn, thisArg) {
523
577
  if (iter) {
524
578
  if (!isIterator(iter)) {
525
- !_iterSymbol && (_iterSymbol = getLazy(function () { return getKnownSymbol(3 ); }));
579
+ !_iterSymbol && (_iterSymbol = createCachedValue(getKnownSymbol(3 )));
526
580
  iter = iter[_iterSymbol.v] ? iter[_iterSymbol.v]() : null;
527
581
  }
528
582
  if (isIterator(iter)) {
@@ -531,7 +585,7 @@ function iterForOf(iter, callbackfn, thisArg) {
531
585
  try {
532
586
  var count = 0;
533
587
  while (!(iterResult = iter.next())[DONE]) {
534
- if (callbackfn.call(thisArg || iter, iterResult[VALUE], count, iter) === -1) {
588
+ if (callbackfn[CALL](thisArg || iter, iterResult[VALUE], count, iter) === -1) {
535
589
  break;
536
590
  }
537
591
  count++;
@@ -560,7 +614,7 @@ function iterForOf(iter, callbackfn, thisArg) {
560
614
  }
561
615
  }
562
616
 
563
- var fnApply = _unwrapInstFunction("apply");
617
+ var fnApply = ( /*#__PURE__*/_unwrapInstFunction("apply"));
564
618
 
565
619
  function arrAppend(target, elms) {
566
620
  if (!isUndefined(elms) && target) {
@@ -584,7 +638,7 @@ function arrForEach(theArray, callbackfn, thisArg) {
584
638
  var len = theArray[LENGTH] >>> 0;
585
639
  for (var idx = 0; idx < len; idx++) {
586
640
  if (idx in theArray) {
587
- if (callbackfn.call(thisArg || theArray, theArray[idx], idx, theArray) === -1) {
641
+ if (callbackfn[CALL](thisArg || theArray, theArray[idx], idx, theArray) === -1) {
588
642
  break;
589
643
  }
590
644
  }
@@ -592,25 +646,23 @@ function arrForEach(theArray, callbackfn, thisArg) {
592
646
  }
593
647
  }
594
648
 
595
- var arrIndexOf = _unwrapFunction(INDEX_OF, ArrProto);
596
-
597
- var arrMap = _unwrapFunction("map", ArrProto);
649
+ var arrIndexOf = ( /*#__PURE__*/_unwrapFunction(INDEX_OF, ArrProto));
598
650
 
599
- var arrSlice = _unwrapFunction(SLICE, ArrProto);
651
+ var arrMap = ( /*#__PURE__*/_unwrapFunction("map", ArrProto));
600
652
 
601
- var fnCall = _unwrapInstFunction("call");
653
+ var arrSlice = ( /*#__PURE__*/_unwrapFunction(SLICE, ArrProto));
602
654
 
603
- var arrReduce = _unwrapFunction("reduce", ArrProto);
655
+ var arrReduce = ( /*#__PURE__*/_unwrapFunction("reduce", ArrProto));
604
656
 
605
- var _objCreate = ObjClass$1["create"];
606
- var objCreate = _objCreate || polyObjCreate;
657
+ var objCreate = ObjClass$1["create"] || polyObjCreate;
658
+ /*#__NO_SIDE_EFFECTS__*/
607
659
  function polyObjCreate(obj) {
608
660
  if (!obj) {
609
661
  return {};
610
662
  }
611
663
  var type = typeof obj;
612
664
  if (type !== OBJECT && type !== FUNCTION) {
613
- throw new TypeError("Prototype must be an Object or function: " + dumpObj(obj));
665
+ throwTypeError("Prototype must be an Object or function: " + dumpObj(obj));
614
666
  }
615
667
  function tempFunc() { }
616
668
  tempFunc[PROTOTYPE] = obj;
@@ -630,39 +682,30 @@ function objSetPrototypeOf(obj, proto) {
630
682
  return fn(obj, proto);
631
683
  }
632
684
 
633
- var _createCustomError = function (name, d, b) {
634
- _safeDefineName(d, name);
685
+ function _createCustomError(name, d, b) {
686
+ safe(objDefine, [d, NAME, { v: name, c: true, e: false }]);
635
687
  d = objSetPrototypeOf(d, b);
636
688
  function __() {
637
689
  this.constructor = d;
638
- _safeDefineName(this, name);
690
+ safe(objDefine, [this, NAME, { v: name, c: true, e: false }]);
639
691
  }
640
692
  d[PROTOTYPE] = b === NULL_VALUE ? objCreate(b) : (__[PROTOTYPE] = b[PROTOTYPE], new __());
641
693
  return d;
642
- };
643
- var _safeSetName = function (baseClass, name) {
644
- try {
645
- name && (baseClass[NAME] = name);
646
- }
647
- catch (e) {
648
- }
649
- };
650
- var _safeDefineName = function (target, name) {
651
- try {
652
- objDefine(target, NAME, { v: name, c: true, e: false });
653
- }
654
- catch (e) {
655
- }
656
- };
694
+ }
695
+ function _setName(baseClass, name) {
696
+ name && (baseClass[NAME] = name);
697
+ }
698
+ /*#__NO_SIDE_EFFECTS__*/
657
699
  function createCustomError(name, constructCb, errorBase) {
658
700
  var theBaseClass = errorBase || Error;
659
701
  var orgName = theBaseClass[PROTOTYPE][NAME];
660
702
  var captureFn = Error.captureStackTrace;
661
703
  return _createCustomError(name, function () {
662
704
  var _this = this;
705
+ var theArgs = arguments;
663
706
  try {
664
- _safeSetName(theBaseClass, name);
665
- var _self = fnApply(theBaseClass, _this, arrSlice(arguments)) || _this;
707
+ safe(_setName, [theBaseClass, name]);
708
+ var _self = fnApply(theBaseClass, _this, ArrProto[SLICE][CALL](theArgs)) || _this;
666
709
  if (_self !== _this) {
667
710
  var orgProto = objGetPrototypeOf(_this);
668
711
  if (orgProto !== objGetPrototypeOf(_self)) {
@@ -670,22 +713,25 @@ function createCustomError(name, constructCb, errorBase) {
670
713
  }
671
714
  }
672
715
  captureFn && captureFn(_self, _this[CONSTRUCTOR]);
673
- constructCb && constructCb(_self, arguments);
716
+ constructCb && constructCb(_self, theArgs);
674
717
  return _self;
675
718
  }
676
719
  finally {
677
- _safeSetName(theBaseClass, orgName);
720
+ safe(_setName, [theBaseClass, orgName]);
678
721
  }
679
722
  }, theBaseClass);
680
723
  }
681
724
 
725
+ /*#__NO_SIDE_EFFECTS__*/
682
726
  function utcNow() {
683
727
  return (Date.now || polyUtcNow)();
684
728
  }
729
+ /*#__NO_SIDE_EFFECTS__*/
685
730
  function polyUtcNow() {
686
731
  return new Date().getTime();
687
732
  }
688
733
 
734
+ /*#__NO_SIDE_EFFECTS__*/
689
735
  function _createTrimFn(exp) {
690
736
  return function _doTrim(value) {
691
737
  if (isNullOrUndefined(value)) {
@@ -697,13 +743,14 @@ function _createTrimFn(exp) {
697
743
  return value;
698
744
  };
699
745
  }
700
- var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
746
+ var polyStrTrim = ( /*#__PURE__*/_createTrimFn(/^\s+|(?=\s)\s+$/g));
701
747
 
702
- var strTrim = _unwrapFunctionWithPoly("trim", StrProto, polyStrTrim);
748
+ var strTrim = ( /*#__PURE__*/_unwrapFunctionWithPoly("trim", StrProto, polyStrTrim));
703
749
 
704
750
  var _fnToString;
705
751
  var _objCtrFnString;
706
752
  var _gblWindow;
753
+ /*#__NO_SIDE_EFFECTS__*/
707
754
  function isPlainObject(value) {
708
755
  if (!value || typeof value !== OBJECT) {
709
756
  return false;
@@ -714,8 +761,8 @@ function isPlainObject(value) {
714
761
  var result = false;
715
762
  if (value !== _gblWindow) {
716
763
  if (!_objCtrFnString) {
717
- _fnToString = Function[PROTOTYPE].toString;
718
- _objCtrFnString = fnCall(_fnToString, ObjClass$1);
764
+ _fnToString = Function[PROTOTYPE][TO_STRING];
765
+ _objCtrFnString = _fnToString[CALL](ObjClass$1);
719
766
  }
720
767
  try {
721
768
  var proto = objGetPrototypeOf(value);
@@ -724,7 +771,7 @@ function isPlainObject(value) {
724
771
  if (objHasOwnProperty(proto, CONSTRUCTOR)) {
725
772
  proto = proto[CONSTRUCTOR];
726
773
  }
727
- result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
774
+ result = proto && typeof proto === FUNCTION && _fnToString[CALL](proto) === _objCtrFnString;
728
775
  }
729
776
  }
730
777
  catch (ex) {
@@ -802,12 +849,12 @@ function _deepCopy(visitMap, value, ctx, key) {
802
849
  });
803
850
  var idx = 0;
804
851
  var handler = userHandler;
805
- while (!fnCall(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler), ctx, details)) {
852
+ while (!(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler))[CALL](ctx, details)) {
806
853
  handler = NULL_VALUE;
807
854
  }
808
855
  });
809
856
  }
810
- if (userHandler && fnCall(userHandler, ctx, details)) {
857
+ if (userHandler && userHandler[CALL](ctx, details)) {
811
858
  return details.result;
812
859
  }
813
860
  return value;
@@ -828,6 +875,7 @@ function objCopyProps(target, source, handler) {
828
875
  };
829
876
  return _copyProps([], target, source, ctx);
830
877
  }
878
+ /*#__NO_SIDE_EFFECTS__*/
831
879
  function objDeepCopy(source, handler) {
832
880
  var ctx = {
833
881
  handler: handler,
@@ -876,16 +924,19 @@ function _doExtend(target, theArgs) {
876
924
  return target;
877
925
  }
878
926
  function deepExtend(target, obj1, obj2, obj3, obj4, obj5, obj6) {
879
- return _doExtend(objDeepCopy(target) || {}, arrSlice(arguments));
927
+ return _doExtend(objDeepCopy(target) || {}, ArrProto[SLICE][CALL](arguments));
880
928
  }
881
929
 
882
- var getLength = _unwrapProp(LENGTH);
930
+ var getLength = ( /*#__PURE__*/_unwrapProp(LENGTH));
883
931
 
884
932
  var _perf;
933
+ /*#__NO_SIDE_EFFECTS__*/
885
934
  function getPerformance() {
886
- (!_perf || (!_perf.b && _globalLazyTestHooks && _globalLazyTestHooks.lzy)) && (_perf = lazySafeGetInst("performance"));
935
+ !_globalLazyTestHooks && _initTestHooks();
936
+ (!_perf || (!_perf.b && _globalLazyTestHooks.lzy)) && (_perf = lazySafeGetInst("performance"));
887
937
  return _perf.v;
888
938
  }
939
+ /*#__NO_SIDE_EFFECTS__*/
889
940
  function perfNow() {
890
941
  var perf = getPerformance();
891
942
  if (perf && perf.now) {
@@ -894,19 +945,29 @@ function perfNow() {
894
945
  return utcNow();
895
946
  }
896
947
 
897
- var strEndsWith = _unwrapFunctionWithPoly("endsWith", StrProto, polyStrEndsWith);
948
+ var strEndsWith = ( /*#__PURE__*/_unwrapFunctionWithPoly("endsWith", StrProto, polyStrEndsWith));
949
+ /*#__NO_SIDE_EFFECTS__*/
898
950
  function polyStrEndsWith(value, searchString, length) {
899
951
  if (!isString(value)) {
900
952
  throwTypeError("'" + dumpObj(value) + "' is not a string");
901
953
  }
902
954
  var searchValue = isString(searchString) ? searchString : asString(searchString);
903
- var chkLen = searchValue[LENGTH];
904
- var len = value[LENGTH];
905
- var end = !isUndefined(length) && length < len ? length : len;
906
- return strSubstring(value, end - chkLen, end) === searchValue;
955
+ var end = !isUndefined(length) && length < value[LENGTH] ? length : value[LENGTH];
956
+ return strSubstring(value, end - searchValue[LENGTH], end) === searchValue;
907
957
  }
908
958
 
909
- var strIndexOf = _unwrapFunction(INDEX_OF, StrProto);
959
+ var strIndexOf = ( /*#__PURE__*/_unwrapFunction(INDEX_OF, StrProto));
960
+
961
+ var strStartsWith = ( /*#__PURE__*/_unwrapFunctionWithPoly("startsWith", StrProto, polyStrStartsWith));
962
+ /*#__NO_SIDE_EFFECTS__*/
963
+ function polyStrStartsWith(value, searchString, position) {
964
+ if (!isString(value)) {
965
+ throwTypeError("'" + dumpObj(value) + "' is not a string");
966
+ }
967
+ var searchValue = isString(searchString) ? searchString : asString(searchString);
968
+ var pos = position > 0 ? position : 0;
969
+ return strSubstring(value, pos, pos + searchValue[LENGTH]) === searchValue;
970
+ }
910
971
 
911
972
  var REF = "ref";
912
973
  var UNREF = "un" + REF;
@@ -977,7 +1038,7 @@ function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
977
1038
  var timerFn = theArgs[0];
978
1039
  theArgs[0] = function () {
979
1040
  handler.dn();
980
- fnApply(timerFn, self, arrSlice(arguments));
1041
+ fnApply(timerFn, self, ArrProto[SLICE][CALL](arguments));
981
1042
  };
982
1043
  var handler = _createTimerHandler(startTimer, function (timerId) {
983
1044
  if (timerId) {
@@ -994,10 +1055,10 @@ function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
994
1055
  return handler.h;
995
1056
  }
996
1057
  function scheduleTimeout(callback, timeout) {
997
- return _createTimeoutWith(this, true, UNDEF_VALUE, arrSlice(arguments));
1058
+ return _createTimeoutWith(this, true, UNDEF_VALUE, ArrProto[SLICE][CALL](arguments));
998
1059
  }
999
1060
  function createTimeout(callback, timeout) {
1000
- return _createTimeoutWith(this, false, UNDEF_VALUE, arrSlice(arguments));
1061
+ return _createTimeoutWith(this, false, UNDEF_VALUE, ArrProto[SLICE][CALL](arguments));
1001
1062
  }
1002
1063
 
1003
1064
  var createEnumStyle = createEnum;
@@ -1092,8 +1153,6 @@ var strShimUndefined = "undefined";
1092
1153
  var strShimPrototype = "prototype";
1093
1154
  var ObjClass = Object;
1094
1155
 
1095
- (getGlobal() || {})["Symbol"];
1096
- (getGlobal() || {})["Reflect"];
1097
1156
  var strHasOwnProperty = "hasOwnProperty";
1098
1157
  var extendStaticsFn = function (d, b) {
1099
1158
  extendStaticsFn = ObjClass["setPrototypeOf"] ||
@@ -1196,13 +1255,13 @@ function _forEachProp(target, func) {
1196
1255
  }
1197
1256
  }
1198
1257
  function _isDynamicCandidate(target, funcName, skipOwn) {
1199
- return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || objHasOwnProperty(target, funcName)));
1258
+ return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || objHasOwnProperty(target, funcName)) && funcName !== str__Proto && funcName !== Prototype);
1200
1259
  }
1201
1260
  function _throwTypeError(message) {
1202
1261
  throwTypeError("DynamicProto: " + message);
1203
1262
  }
1204
1263
  function _getInstanceFuncs(thisTarget) {
1205
- var instFuncs = {};
1264
+ var instFuncs = objCreate(null);
1206
1265
  _forEachProp(thisTarget, function (name) {
1207
1266
  if (!instFuncs[name] && _isDynamicCandidate(thisTarget, name, false)) {
1208
1267
  instFuncs[name] = thisTarget[name];
@@ -1231,7 +1290,7 @@ function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
1231
1290
  return theFunc.apply(target, arguments);
1232
1291
  };
1233
1292
  }
1234
- var baseFuncs = {};
1293
+ var baseFuncs = objCreate(null);
1235
1294
  _forEachProp(instFuncs, function (name) {
1236
1295
  baseFuncs[name] = _instFuncProxy(thisTarget, instFuncs, name);
1237
1296
  });
@@ -1251,8 +1310,8 @@ function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
1251
1310
  function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
1252
1311
  var instFunc = null;
1253
1312
  if (target && objHasOwnProperty(proto, DynClassName)) {
1254
- var instFuncTable = target[DynInstFuncTable] || {};
1255
- instFunc = (instFuncTable[proto[DynClassName]] || {})[funcName];
1313
+ var instFuncTable = target[DynInstFuncTable] || objCreate(null);
1314
+ instFunc = (instFuncTable[proto[DynClassName]] || objCreate(null))[funcName];
1256
1315
  if (!instFunc) {
1257
1316
  _throwTypeError("Missing [" + funcName + "] " + strFunction);
1258
1317
  }
@@ -1302,20 +1361,24 @@ function _populatePrototype(proto, className, target, baseInstFuncs, setInstance
1302
1361
  return dynProtoProxy;
1303
1362
  }
1304
1363
  if (!_isObjectOrArrayPrototype(proto)) {
1305
- var instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || {};
1306
- var instFuncs_1 = instFuncTable[className] = (instFuncTable[className] || {});
1307
- if (instFuncTable[DynAllowInstChkTag] !== false) {
1308
- instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc;
1309
- }
1310
- _forEachProp(target, function (name) {
1311
- if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name]) {
1312
- instFuncs_1[name] = target[name];
1313
- delete target[name];
1314
- if (!objHasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) {
1315
- proto[name] = _createDynamicPrototype(proto, name);
1316
- }
1364
+ var instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || objCreate(null);
1365
+ if (!_isObjectOrArrayPrototype(instFuncTable)) {
1366
+ var instFuncs_1 = instFuncTable[className] = (instFuncTable[className] || objCreate(null));
1367
+ if (instFuncTable[DynAllowInstChkTag] !== false) {
1368
+ instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc;
1369
+ }
1370
+ if (!_isObjectOrArrayPrototype(instFuncs_1)) {
1371
+ _forEachProp(target, function (name) {
1372
+ if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name]) {
1373
+ instFuncs_1[name] = target[name];
1374
+ delete target[name];
1375
+ if (!objHasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) {
1376
+ proto[name] = _createDynamicPrototype(proto, name);
1377
+ }
1378
+ }
1379
+ });
1317
1380
  }
1318
- });
1381
+ }
1319
1382
  }
1320
1383
  }
1321
1384
  function _checkPrototype(classProto, thisTarget) {
@@ -1374,15 +1437,15 @@ dynamicProto[DynProtoDefaultOptions] = _gblInst.o;
1374
1437
 
1375
1438
  function doAwaitResponse(value, cb) {
1376
1439
  return doAwait(value, function (value) {
1377
- cb && cb({
1440
+ return cb ? cb({
1378
1441
  value: value,
1379
1442
  rejected: false
1380
- });
1443
+ }) : value;
1381
1444
  }, function (reason) {
1382
- cb && cb({
1445
+ return cb ? cb({
1383
1446
  rejected: true,
1384
1447
  reason: reason
1385
- });
1448
+ }) : reason;
1386
1449
  });
1387
1450
  }
1388
1451
  function doAwait(value, resolveFn, rejectFn, finallyFn) {
@@ -1393,10 +1456,12 @@ function doAwait(value, resolveFn, rejectFn, finallyFn) {
1393
1456
  }
1394
1457
  }
1395
1458
  else {
1396
- resolveFn && resolveFn(value);
1459
+ if (resolveFn) {
1460
+ result = resolveFn(value);
1461
+ }
1397
1462
  }
1398
1463
  if (finallyFn) {
1399
- result = doFinally(result, finallyFn);
1464
+ doFinally(result, finallyFn);
1400
1465
  }
1401
1466
  return result;
1402
1467
  }
@@ -2228,7 +2293,7 @@ function newId(maxLength) {
2228
2293
  return result;
2229
2294
  }
2230
2295
 
2231
- var version = '3.0.7-nightly3.2312-05';
2296
+ var version = '3.0.8';
2232
2297
  var instanceName = "." + newId(6);
2233
2298
  var _dataUid = 0;
2234
2299
  function _canAcceptData(target) {