@microsoft/applicationinsights-debugplugin-js 2.8.1 → 2.8.2

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 (61) hide show
  1. package/browser/{ai.dbg.2.8.1.cjs.js → ai.dbg.2.8.2.cjs.js} +26 -21
  2. package/browser/ai.dbg.2.8.2.cjs.js.map +1 -0
  3. package/browser/ai.dbg.2.8.2.cjs.min.js +6 -0
  4. package/browser/ai.dbg.2.8.2.cjs.min.js.map +1 -0
  5. package/browser/{ai.dbg.2.8.1.gbl.js → ai.dbg.2.8.2.gbl.js} +26 -21
  6. package/browser/ai.dbg.2.8.2.gbl.js.map +1 -0
  7. package/browser/ai.dbg.2.8.2.gbl.min.js +6 -0
  8. package/browser/ai.dbg.2.8.2.gbl.min.js.map +1 -0
  9. package/browser/ai.dbg.2.8.2.integrity.json +66 -0
  10. package/browser/{ai.dbg.2.8.1.js → ai.dbg.2.8.2.js} +26 -21
  11. package/browser/ai.dbg.2.8.2.js.map +1 -0
  12. package/browser/ai.dbg.2.8.2.min.js +6 -0
  13. package/browser/ai.dbg.2.8.2.min.js.map +1 -0
  14. package/browser/ai.dbg.2.cjs.js +25 -20
  15. package/browser/ai.dbg.2.cjs.js.map +1 -1
  16. package/browser/ai.dbg.2.cjs.min.js +2 -2
  17. package/browser/ai.dbg.2.cjs.min.js.map +1 -1
  18. package/browser/ai.dbg.2.gbl.js +25 -20
  19. package/browser/ai.dbg.2.gbl.js.map +1 -1
  20. package/browser/ai.dbg.2.gbl.min.js +2 -2
  21. package/browser/ai.dbg.2.gbl.min.js.map +1 -1
  22. package/browser/ai.dbg.2.js +25 -20
  23. package/browser/ai.dbg.2.js.map +1 -1
  24. package/browser/ai.dbg.2.min.js +2 -2
  25. package/browser/ai.dbg.2.min.js.map +1 -1
  26. package/dist/applicationinsights-debugplugin-js.api.json +1 -1
  27. package/dist/applicationinsights-debugplugin-js.d.ts +1 -1
  28. package/dist/applicationinsights-debugplugin-js.js +25 -20
  29. package/dist/applicationinsights-debugplugin-js.js.map +1 -1
  30. package/dist/applicationinsights-debugplugin-js.min.js +2 -2
  31. package/dist/applicationinsights-debugplugin-js.min.js.map +1 -1
  32. package/dist/applicationinsights-debugplugin-js.rollup.d.ts +1 -1
  33. package/dist-esm/DebugPlugin.js +8 -8
  34. package/dist-esm/DebugPlugin.js.map +1 -1
  35. package/dist-esm/applicationinsights-debugplugin-js.js +1 -1
  36. package/dist-esm/components/Dashboard.js +5 -5
  37. package/dist-esm/components/Dashboard.js.map +1 -1
  38. package/dist-esm/components/LogEntry.js +1 -1
  39. package/dist-esm/components/debugBins.js +1 -1
  40. package/dist-esm/components/filterList.js +3 -2
  41. package/dist-esm/components/filterList.js.map +1 -1
  42. package/dist-esm/components/helpers.js +4 -4
  43. package/dist-esm/components/helpers.js.map +1 -1
  44. package/dist-esm/components/styleNodeSrc.js +1 -1
  45. package/dist-esm/interfaces/IDebugPluginConfig.js +1 -1
  46. package/package.json +4 -4
  47. package/src/DebugPlugin.ts +7 -7
  48. package/src/components/Dashboard.ts +4 -4
  49. package/src/components/filterList.ts +3 -1
  50. package/src/components/helpers.ts +3 -3
  51. package/types/tsdoc-metadata.json +1 -1
  52. package/browser/ai.dbg.2.8.1.cjs.js.map +0 -1
  53. package/browser/ai.dbg.2.8.1.cjs.min.js +0 -6
  54. package/browser/ai.dbg.2.8.1.cjs.min.js.map +0 -1
  55. package/browser/ai.dbg.2.8.1.gbl.js.map +0 -1
  56. package/browser/ai.dbg.2.8.1.gbl.min.js +0 -6
  57. package/browser/ai.dbg.2.8.1.gbl.min.js.map +0 -1
  58. package/browser/ai.dbg.2.8.1.integrity.json +0 -66
  59. package/browser/ai.dbg.2.8.1.js.map +0 -1
  60. package/browser/ai.dbg.2.8.1.min.js +0 -6
  61. package/browser/ai.dbg.2.8.1.min.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft.ApplicationInsights, 2.8.1
2
+ * Microsoft.ApplicationInsights, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -1,11 +1,11 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
6
6
 
7
7
  import { __extendsFn as __extends } from "@microsoft/applicationinsights-shims";
8
- import { BaseTelemetryPlugin, arrForEach, InstrumentFunc, objForEachKey, isFunction, dateNow, isArray, isUndefined, getDebugExt } from "@microsoft/applicationinsights-core-js";
8
+ import { BaseTelemetryPlugin, arrForEach, InstrumentFunc, objForEachKey, isFunction, dateNow, isArray, isUndefined, getDebugExt, arrIndexOf } from "@microsoft/applicationinsights-core-js";
9
9
  import { Dashboard } from "./components/Dashboard";
10
10
  import { getTargetName } from "./components/helpers";
11
11
  import { permStyle } from "./components/styleNodeSrc";
@@ -119,16 +119,16 @@ var DebugPlugin = /** @class */ (function (_super) {
119
119
  dashboard.newLogEntry(perfEvent, dateNow() - startTime, evtName, 0, "perfEvent");
120
120
  }
121
121
  });
122
- if (trackers.indexOf("eventsSent") !== -1) {
122
+ if (arrIndexOf(trackers, "eventsSent") !== -1) {
123
123
  foundTrackers_1.push("eventsSent");
124
124
  }
125
- if (trackers.indexOf("eventsSendRequest") !== -1) {
125
+ if (arrIndexOf(trackers, "eventsSendRequest") !== -1) {
126
126
  foundTrackers_1.push("eventsSendRequest");
127
127
  }
128
- if (trackers.indexOf("eventsDiscarded") !== -1) {
128
+ if (arrIndexOf(trackers, "eventsDiscarded") !== -1) {
129
129
  foundTrackers_1.push("eventsDiscarded");
130
130
  }
131
- if (trackers.indexOf("perfEvent") !== -1) {
131
+ if (arrIndexOf(trackers, "perfEvent") !== -1) {
132
132
  foundTrackers_1.push("perfEvent");
133
133
  }
134
134
  }
@@ -168,7 +168,7 @@ var DebugPlugin = /** @class */ (function (_super) {
168
168
  rsp: _handleInstPostHook()
169
169
  }, true);
170
170
  if (val) {
171
- if (foundTrackers_1.indexOf(tracker) === -1) {
171
+ if (arrIndexOf(foundTrackers_1, tracker) === -1) {
172
172
  foundTrackers_1.push(tracker);
173
173
  }
174
174
  }
@@ -211,7 +211,7 @@ var DebugPlugin = /** @class */ (function (_super) {
211
211
  }
212
212
  };
213
213
  function _addTarget(targetObjects, ext) {
214
- if (ext && targetObjects.indexOf(ext) === -1) {
214
+ if (ext && arrIndexOf(targetObjects, ext) === -1) {
215
215
  targetObjects.push(ext);
216
216
  return true;
217
217
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DebugPlugin.js.map","sources":["DebugPlugin.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { __extends } from \"tslib\";\r\nimport { BaseTelemetryPlugin, arrForEach, InstrumentFunc, objForEachKey, isFunction, dateNow, isArray, isUndefined, getDebugExt } from \"@microsoft/applicationinsights-core-js\";\r\nimport { Dashboard } from \"./components/Dashboard\";\r\nimport { getTargetName } from \"./components/helpers\";\r\nimport { permStyle } from \"./components/styleNodeSrc\";\r\nimport { DebugBin, DebugBinParent } from \"./components/debugBins\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nvar getDefaultConfig = function () {\r\n var config = {\r\n trackers: function () { return [\r\n \"flush\",\r\n \"track\",\r\n \"trackEvent\",\r\n \"trackPageView\",\r\n \"trackPageViewPerformance\",\r\n \"trackException\",\r\n \"trackTrace\",\r\n \"trackMetric\",\r\n \"trackDependencyData\",\r\n \"processTelemetry\",\r\n \"throwInternal\",\r\n \"logInternalMessage\",\r\n \"triggerSend\",\r\n \"_sender\",\r\n \"perfEvent\",\r\n \"initialize\"\r\n ]; },\r\n excludeKeys: function () { return [\r\n \"_dynInstFuncs\",\r\n \"_getTelCtx\",\r\n \"_baseTelInit\",\r\n \"diagLog\",\r\n \"isInitialized\",\r\n \"setInitialized\",\r\n \"setNextPlugin\",\r\n \"processNext\"\r\n ]; },\r\n cssPrefix: function () { return \"ai\"; },\r\n disableNotifications: function () { return false; },\r\n dumpToConsole: function () { return false; },\r\n maxMessages: function () { return 5000; },\r\n showFunctions: function () { return false; },\r\n logProcessTelemetry: function () { return false; }\r\n };\r\n return config;\r\n};\r\nvar DebugPlugin = /** @class */ (function (_super) {\r\n __extends(DebugPlugin, _super);\r\n function DebugPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = DebugPlugin.identifier;\r\n var dashboard;\r\n /**\r\n * the style that will be permanently embedded in the webpage\r\n * TODO: manage style conflicts (prepend unique ID to relevant class names?)\r\n */\r\n var permStyleEl;\r\n /**\r\n * an object containing the individual debug bin items\r\n */\r\n var debugBins;\r\n /**\r\n * the parent containing all the individual debugBins\r\n */\r\n var debugBinParent;\r\n /**\r\n * the different telemetry functions that will be tracked\r\n */\r\n var trackers;\r\n /**\r\n * timestamp used to track number of seconds since webpage was loaded\r\n */\r\n var startTime = +new Date();\r\n /**\r\n * the config for this plugin\r\n */\r\n var _theConfig = getDefaultConfig();\r\n dynamicProto(DebugPlugin, _this, function (_self, base) {\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (!_self.isInitialized()) {\r\n base.initialize(config, core, extensions, pluginChain);\r\n var defaultConfig = getDefaultConfig();\r\n var ctx_1 = _self._getTelCtx();\r\n var identifier_1 = _self.identifier;\r\n objForEachKey(defaultConfig, function (field, value) {\r\n _theConfig[field] = function () { return ctx_1.getConfig(identifier_1, field, value()); };\r\n });\r\n var foundTrackers_1 = [];\r\n trackers = _theConfig.trackers();\r\n var prefix = _theConfig.cssPrefix();\r\n // 1. Listen to Notifications\r\n if (!_theConfig.disableNotifications()) {\r\n var notifyMgr = (isFunction(core.getNotifyMgr) && core.getNotifyMgr()) || core[\"_notificationManager\"];\r\n if (notifyMgr) {\r\n notifyMgr.addNotificationListener({\r\n eventsSent: function (events) {\r\n dashboard.newLogEntry(events, dateNow() - startTime, \"Notification:eventsSent\", 0, \"eventsSent\");\r\n },\r\n eventsDiscarded: function (events, reason) {\r\n dashboard.newLogEntry({\r\n events: events,\r\n reason: reason\r\n }, dateNow() - startTime, \"Notification:eventsDiscarded\", 0, \"eventsDiscarded\");\r\n },\r\n eventsSendRequest: function (sendReason, isAsync) {\r\n dashboard.newLogEntry({\r\n sendReason: sendReason,\r\n isAsync: isAsync\r\n }, dateNow() - startTime, \"Notification:eventsSendRequest\", 0, \"eventsSendRequest\");\r\n },\r\n perfEvent: function (perfEvent) {\r\n var evtName = \"Notification:perfEvent[\".concat(perfEvent.name, \"]\");\r\n dashboard.newLogEntry(perfEvent, dateNow() - startTime, evtName, 0, \"perfEvent\");\r\n }\r\n });\r\n if (trackers.indexOf(\"eventsSent\") !== -1) {\r\n foundTrackers_1.push(\"eventsSent\");\r\n }\r\n if (trackers.indexOf(\"eventsSendRequest\") !== -1) {\r\n foundTrackers_1.push(\"eventsSendRequest\");\r\n }\r\n if (trackers.indexOf(\"eventsDiscarded\") !== -1) {\r\n foundTrackers_1.push(\"eventsDiscarded\");\r\n }\r\n if (trackers.indexOf(\"perfEvent\") !== -1) {\r\n foundTrackers_1.push(\"perfEvent\");\r\n }\r\n }\r\n }\r\n // 2. Get all of the extensions and channels\r\n debugBins = {};\r\n var targetObjects_1 = [core, _self.diagLog()];\r\n // Get all of the config extensions\r\n if (config.extensions) {\r\n arrForEach(config.extensions, function (ext) {\r\n _addTargets(targetObjects_1, ext);\r\n });\r\n }\r\n // Get all of the passed extensions\r\n if (extensions) {\r\n arrForEach(extensions, function (ext) {\r\n _addTargets(targetObjects_1, ext);\r\n });\r\n }\r\n if (isFunction(core.getTransmissionControls)) {\r\n var channelControls = core.getTransmissionControls();\r\n if (channelControls) {\r\n arrForEach(channelControls, function (channel) {\r\n if (isArray(channel)) {\r\n arrForEach(channel, function (theChannel) {\r\n _addTargets(targetObjects_1, theChannel);\r\n });\r\n }\r\n });\r\n }\r\n }\r\n // 3. Instrument the functions\r\n arrForEach(trackers, function (tracker) {\r\n arrForEach(targetObjects_1, function (target, idx) {\r\n var val = InstrumentFunc(target, tracker, {\r\n req: _handleInstPreHook(),\r\n rsp: _handleInstPostHook()\r\n }, true);\r\n if (val) {\r\n if (foundTrackers_1.indexOf(tracker) === -1) {\r\n foundTrackers_1.push(tracker);\r\n }\r\n }\r\n });\r\n });\r\n // Sort the items\r\n foundTrackers_1 = foundTrackers_1.sort();\r\n // 4. Create the Dashboard\r\n dashboard = new Dashboard({\r\n prefix: prefix,\r\n trackers: foundTrackers_1,\r\n excludeKeys: _theConfig.excludeKeys(),\r\n maxMessages: _theConfig.maxMessages(),\r\n includeFunctions: _theConfig.showFunctions()\r\n });\r\n // 5. setup debugBin\r\n var debugBinContainer = document.createElement(\"div\");\r\n debugBinContainer.className = \"\".concat(prefix, \"-debug-bin-container\");\r\n debugBinParent = new DebugBinParent(debugBinContainer, [], 0, prefix);\r\n arrForEach(foundTrackers_1, function (tracker, idx) {\r\n debugBins[tracker] = new DebugBin(tracker, 0, debugBinParent, (idx + 1) * 50);\r\n });\r\n // 6. append permanent style\r\n permStyleEl = document.createElement(\"style\");\r\n permStyleEl.innerHTML = permStyle(prefix);\r\n document.head.appendChild(permStyleEl);\r\n // 7. add button to debugBinParent\r\n debugBinParent.addButton(function (evt) {\r\n evt.stopPropagation();\r\n if (dashboard.isDisplayed()) {\r\n dashboard.hide();\r\n }\r\n else {\r\n dashboard.show();\r\n }\r\n }, \"show dashboard\");\r\n document.body.appendChild(debugBinContainer);\r\n // 8. Log the config as \"keep\" so it won't be dropped or cleared\r\n dashboard.newLogEntry(config, 0, \"config\", 0, \"config\", true);\r\n }\r\n };\r\n function _addTarget(targetObjects, ext) {\r\n if (ext && targetObjects.indexOf(ext) === -1) {\r\n targetObjects.push(ext);\r\n return true;\r\n }\r\n return false;\r\n }\r\n function _addTargets(targetObjects, ext) {\r\n if (_addTarget(targetObjects, ext)) {\r\n if (isFunction(ext[\"_getDbgPlgTargets\"])) {\r\n var extra = ext[\"_getDbgPlgTargets\"]();\r\n if (isArray(extra)) {\r\n arrForEach(extra, function (tgt) {\r\n _addTargets(targetObjects, tgt);\r\n });\r\n }\r\n }\r\n }\r\n }\r\n function _createInstrumentObject(funcArgs, orgArgs) {\r\n var result = {\r\n funcName: funcArgs.name,\r\n inst: funcArgs.inst\r\n };\r\n if (orgArgs && orgArgs.length) {\r\n result.args = orgArgs;\r\n }\r\n if (!isUndefined(funcArgs.err)) {\r\n result.err = funcArgs.err;\r\n }\r\n if (!isUndefined(funcArgs.rslt)) {\r\n result.rslt = funcArgs.rslt;\r\n }\r\n return result;\r\n }\r\n function _getEvtPrefix(funcArgs) {\r\n var identifier = getTargetName(funcArgs.inst);\r\n var evtPrefix = funcArgs.name;\r\n if (identifier) {\r\n evtPrefix += \":\" + identifier;\r\n }\r\n return evtPrefix;\r\n }\r\n function _logEntry(theEvent, evtName, kind) {\r\n dashboard.newLogEntry(theEvent, dateNow() - startTime, evtName, 0, kind);\r\n var dbgExt = getDebugExt(_self.core.config);\r\n if (dbgExt && dbgExt.debugMsg) {\r\n dbgExt.debugMsg(evtName, theEvent);\r\n }\r\n }\r\n function _handleInstPreHook() {\r\n return function (funcArgs) {\r\n var orgArgs = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n orgArgs[_i - 1] = arguments[_i];\r\n }\r\n (debugBins[funcArgs.name] || debugBins[\"default\"]).increment();\r\n if (funcArgs.name === \"trackException\" && !debugBinParent.showChildren) {\r\n debugBinParent.addClassToEl(\"notify\");\r\n }\r\n var evtPrefix = _getEvtPrefix(funcArgs);\r\n _logEntry(_createInstrumentObject(funcArgs, orgArgs), evtPrefix, funcArgs.name);\r\n if (_theConfig.dumpToConsole() && console && console.log) {\r\n console.log(\"[\".concat(evtPrefix, \"] preProcess - funcArgs: \"), funcArgs);\r\n console.log(\"[\".concat(evtPrefix, \"] preProcess - orgArgs: \"), orgArgs);\r\n }\r\n };\r\n }\r\n function _handleInstPostHook() {\r\n return function (funcArgs) {\r\n var orgArgs = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n orgArgs[_i - 1] = arguments[_i];\r\n }\r\n if (!isUndefined(funcArgs.err)) {\r\n var evtPrefix = _getEvtPrefix(funcArgs);\r\n if (!debugBinParent.showChildren) {\r\n debugBinParent.addClassToEl(\"notify\");\r\n }\r\n // The called function threw an exception\r\n _logEntry(_createInstrumentObject(funcArgs, orgArgs), evtPrefix, funcArgs.name);\r\n if (_theConfig.dumpToConsole() && console && console.log) {\r\n console.log(\"[\".concat(evtPrefix, \"] complete\"));\r\n }\r\n }\r\n };\r\n }\r\n _self.processTelemetry = function (event, itemCtx) {\r\n if (_theConfig.dumpToConsole() && console && console.log) {\r\n console.log(\"[\".concat(_self.identifier, \":processTelemetry] complete\"));\r\n }\r\n if (!debugBins[\"processTelemetry\"] && _theConfig.logProcessTelemetry() === true) {\r\n _logEntry(event, \"[\".concat(_self.identifier, \":processTelemetry[\").concat(event.baseType, \"]\"), \"processTelemetry\");\r\n }\r\n _self.processNext(event, itemCtx);\r\n };\r\n });\r\n return _this;\r\n }\r\n DebugPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n DebugPlugin.prototype.processTelemetry = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n DebugPlugin.identifier = \"DebugPlugin\";\r\n return DebugPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport default DebugPlugin;\r\n//# sourceMappingURL=DebugPlugin.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC,gFAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;2DAKM;AACN;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"DebugPlugin.js.map","sources":["DebugPlugin.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { __extends } from \"tslib\";\r\nimport { BaseTelemetryPlugin, arrForEach, InstrumentFunc, objForEachKey, isFunction, dateNow, isArray, isUndefined, getDebugExt, arrIndexOf } from \"@microsoft/applicationinsights-core-js\";\r\nimport { Dashboard } from \"./components/Dashboard\";\r\nimport { getTargetName } from \"./components/helpers\";\r\nimport { permStyle } from \"./components/styleNodeSrc\";\r\nimport { DebugBin, DebugBinParent } from \"./components/debugBins\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nvar getDefaultConfig = function () {\r\n var config = {\r\n trackers: function () { return [\r\n \"flush\",\r\n \"track\",\r\n \"trackEvent\",\r\n \"trackPageView\",\r\n \"trackPageViewPerformance\",\r\n \"trackException\",\r\n \"trackTrace\",\r\n \"trackMetric\",\r\n \"trackDependencyData\",\r\n \"processTelemetry\",\r\n \"throwInternal\",\r\n \"logInternalMessage\",\r\n \"triggerSend\",\r\n \"_sender\",\r\n \"perfEvent\",\r\n \"initialize\"\r\n ]; },\r\n excludeKeys: function () { return [\r\n \"_dynInstFuncs\",\r\n \"_getTelCtx\",\r\n \"_baseTelInit\",\r\n \"diagLog\",\r\n \"isInitialized\",\r\n \"setInitialized\",\r\n \"setNextPlugin\",\r\n \"processNext\"\r\n ]; },\r\n cssPrefix: function () { return \"ai\"; },\r\n disableNotifications: function () { return false; },\r\n dumpToConsole: function () { return false; },\r\n maxMessages: function () { return 5000; },\r\n showFunctions: function () { return false; },\r\n logProcessTelemetry: function () { return false; }\r\n };\r\n return config;\r\n};\r\nvar DebugPlugin = /** @class */ (function (_super) {\r\n __extends(DebugPlugin, _super);\r\n function DebugPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = DebugPlugin.identifier;\r\n var dashboard;\r\n /**\r\n * the style that will be permanently embedded in the webpage\r\n * TODO: manage style conflicts (prepend unique ID to relevant class names?)\r\n */\r\n var permStyleEl;\r\n /**\r\n * an object containing the individual debug bin items\r\n */\r\n var debugBins;\r\n /**\r\n * the parent containing all the individual debugBins\r\n */\r\n var debugBinParent;\r\n /**\r\n * the different telemetry functions that will be tracked\r\n */\r\n var trackers;\r\n /**\r\n * timestamp used to track number of seconds since webpage was loaded\r\n */\r\n var startTime = +new Date();\r\n /**\r\n * the config for this plugin\r\n */\r\n var _theConfig = getDefaultConfig();\r\n dynamicProto(DebugPlugin, _this, function (_self, base) {\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (!_self.isInitialized()) {\r\n base.initialize(config, core, extensions, pluginChain);\r\n var defaultConfig = getDefaultConfig();\r\n var ctx_1 = _self._getTelCtx();\r\n var identifier_1 = _self.identifier;\r\n objForEachKey(defaultConfig, function (field, value) {\r\n _theConfig[field] = function () { return ctx_1.getConfig(identifier_1, field, value()); };\r\n });\r\n var foundTrackers_1 = [];\r\n trackers = _theConfig.trackers();\r\n var prefix = _theConfig.cssPrefix();\r\n // 1. Listen to Notifications\r\n if (!_theConfig.disableNotifications()) {\r\n var notifyMgr = (isFunction(core.getNotifyMgr) && core.getNotifyMgr()) || core[\"_notificationManager\"];\r\n if (notifyMgr) {\r\n notifyMgr.addNotificationListener({\r\n eventsSent: function (events) {\r\n dashboard.newLogEntry(events, dateNow() - startTime, \"Notification:eventsSent\", 0, \"eventsSent\");\r\n },\r\n eventsDiscarded: function (events, reason) {\r\n dashboard.newLogEntry({\r\n events: events,\r\n reason: reason\r\n }, dateNow() - startTime, \"Notification:eventsDiscarded\", 0, \"eventsDiscarded\");\r\n },\r\n eventsSendRequest: function (sendReason, isAsync) {\r\n dashboard.newLogEntry({\r\n sendReason: sendReason,\r\n isAsync: isAsync\r\n }, dateNow() - startTime, \"Notification:eventsSendRequest\", 0, \"eventsSendRequest\");\r\n },\r\n perfEvent: function (perfEvent) {\r\n var evtName = \"Notification:perfEvent[\".concat(perfEvent.name, \"]\");\r\n dashboard.newLogEntry(perfEvent, dateNow() - startTime, evtName, 0, \"perfEvent\");\r\n }\r\n });\r\n if (arrIndexOf(trackers, \"eventsSent\") !== -1) {\r\n foundTrackers_1.push(\"eventsSent\");\r\n }\r\n if (arrIndexOf(trackers, \"eventsSendRequest\") !== -1) {\r\n foundTrackers_1.push(\"eventsSendRequest\");\r\n }\r\n if (arrIndexOf(trackers, \"eventsDiscarded\") !== -1) {\r\n foundTrackers_1.push(\"eventsDiscarded\");\r\n }\r\n if (arrIndexOf(trackers, \"perfEvent\") !== -1) {\r\n foundTrackers_1.push(\"perfEvent\");\r\n }\r\n }\r\n }\r\n // 2. Get all of the extensions and channels\r\n debugBins = {};\r\n var targetObjects_1 = [core, _self.diagLog()];\r\n // Get all of the config extensions\r\n if (config.extensions) {\r\n arrForEach(config.extensions, function (ext) {\r\n _addTargets(targetObjects_1, ext);\r\n });\r\n }\r\n // Get all of the passed extensions\r\n if (extensions) {\r\n arrForEach(extensions, function (ext) {\r\n _addTargets(targetObjects_1, ext);\r\n });\r\n }\r\n if (isFunction(core.getTransmissionControls)) {\r\n var channelControls = core.getTransmissionControls();\r\n if (channelControls) {\r\n arrForEach(channelControls, function (channel) {\r\n if (isArray(channel)) {\r\n arrForEach(channel, function (theChannel) {\r\n _addTargets(targetObjects_1, theChannel);\r\n });\r\n }\r\n });\r\n }\r\n }\r\n // 3. Instrument the functions\r\n arrForEach(trackers, function (tracker) {\r\n arrForEach(targetObjects_1, function (target, idx) {\r\n var val = InstrumentFunc(target, tracker, {\r\n req: _handleInstPreHook(),\r\n rsp: _handleInstPostHook()\r\n }, true);\r\n if (val) {\r\n if (arrIndexOf(foundTrackers_1, tracker) === -1) {\r\n foundTrackers_1.push(tracker);\r\n }\r\n }\r\n });\r\n });\r\n // Sort the items\r\n foundTrackers_1 = foundTrackers_1.sort();\r\n // 4. Create the Dashboard\r\n dashboard = new Dashboard({\r\n prefix: prefix,\r\n trackers: foundTrackers_1,\r\n excludeKeys: _theConfig.excludeKeys(),\r\n maxMessages: _theConfig.maxMessages(),\r\n includeFunctions: _theConfig.showFunctions()\r\n });\r\n // 5. setup debugBin\r\n var debugBinContainer = document.createElement(\"div\");\r\n debugBinContainer.className = \"\".concat(prefix, \"-debug-bin-container\");\r\n debugBinParent = new DebugBinParent(debugBinContainer, [], 0, prefix);\r\n arrForEach(foundTrackers_1, function (tracker, idx) {\r\n debugBins[tracker] = new DebugBin(tracker, 0, debugBinParent, (idx + 1) * 50);\r\n });\r\n // 6. append permanent style\r\n permStyleEl = document.createElement(\"style\");\r\n permStyleEl.innerHTML = permStyle(prefix);\r\n document.head.appendChild(permStyleEl);\r\n // 7. add button to debugBinParent\r\n debugBinParent.addButton(function (evt) {\r\n evt.stopPropagation();\r\n if (dashboard.isDisplayed()) {\r\n dashboard.hide();\r\n }\r\n else {\r\n dashboard.show();\r\n }\r\n }, \"show dashboard\");\r\n document.body.appendChild(debugBinContainer);\r\n // 8. Log the config as \"keep\" so it won't be dropped or cleared\r\n dashboard.newLogEntry(config, 0, \"config\", 0, \"config\", true);\r\n }\r\n };\r\n function _addTarget(targetObjects, ext) {\r\n if (ext && arrIndexOf(targetObjects, ext) === -1) {\r\n targetObjects.push(ext);\r\n return true;\r\n }\r\n return false;\r\n }\r\n function _addTargets(targetObjects, ext) {\r\n if (_addTarget(targetObjects, ext)) {\r\n if (isFunction(ext[\"_getDbgPlgTargets\"])) {\r\n var extra = ext[\"_getDbgPlgTargets\"]();\r\n if (isArray(extra)) {\r\n arrForEach(extra, function (tgt) {\r\n _addTargets(targetObjects, tgt);\r\n });\r\n }\r\n }\r\n }\r\n }\r\n function _createInstrumentObject(funcArgs, orgArgs) {\r\n var result = {\r\n funcName: funcArgs.name,\r\n inst: funcArgs.inst\r\n };\r\n if (orgArgs && orgArgs.length) {\r\n result.args = orgArgs;\r\n }\r\n if (!isUndefined(funcArgs.err)) {\r\n result.err = funcArgs.err;\r\n }\r\n if (!isUndefined(funcArgs.rslt)) {\r\n result.rslt = funcArgs.rslt;\r\n }\r\n return result;\r\n }\r\n function _getEvtPrefix(funcArgs) {\r\n var identifier = getTargetName(funcArgs.inst);\r\n var evtPrefix = funcArgs.name;\r\n if (identifier) {\r\n evtPrefix += \":\" + identifier;\r\n }\r\n return evtPrefix;\r\n }\r\n function _logEntry(theEvent, evtName, kind) {\r\n dashboard.newLogEntry(theEvent, dateNow() - startTime, evtName, 0, kind);\r\n var dbgExt = getDebugExt(_self.core.config);\r\n if (dbgExt && dbgExt.debugMsg) {\r\n dbgExt.debugMsg(evtName, theEvent);\r\n }\r\n }\r\n function _handleInstPreHook() {\r\n return function (funcArgs) {\r\n var orgArgs = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n orgArgs[_i - 1] = arguments[_i];\r\n }\r\n (debugBins[funcArgs.name] || debugBins[\"default\"]).increment();\r\n if (funcArgs.name === \"trackException\" && !debugBinParent.showChildren) {\r\n debugBinParent.addClassToEl(\"notify\");\r\n }\r\n var evtPrefix = _getEvtPrefix(funcArgs);\r\n _logEntry(_createInstrumentObject(funcArgs, orgArgs), evtPrefix, funcArgs.name);\r\n if (_theConfig.dumpToConsole() && console && console.log) {\r\n console.log(\"[\".concat(evtPrefix, \"] preProcess - funcArgs: \"), funcArgs);\r\n console.log(\"[\".concat(evtPrefix, \"] preProcess - orgArgs: \"), orgArgs);\r\n }\r\n };\r\n }\r\n function _handleInstPostHook() {\r\n return function (funcArgs) {\r\n var orgArgs = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n orgArgs[_i - 1] = arguments[_i];\r\n }\r\n if (!isUndefined(funcArgs.err)) {\r\n var evtPrefix = _getEvtPrefix(funcArgs);\r\n if (!debugBinParent.showChildren) {\r\n debugBinParent.addClassToEl(\"notify\");\r\n }\r\n // The called function threw an exception\r\n _logEntry(_createInstrumentObject(funcArgs, orgArgs), evtPrefix, funcArgs.name);\r\n if (_theConfig.dumpToConsole() && console && console.log) {\r\n console.log(\"[\".concat(evtPrefix, \"] complete\"));\r\n }\r\n }\r\n };\r\n }\r\n _self.processTelemetry = function (event, itemCtx) {\r\n if (_theConfig.dumpToConsole() && console && console.log) {\r\n console.log(\"[\".concat(_self.identifier, \":processTelemetry] complete\"));\r\n }\r\n if (!debugBins[\"processTelemetry\"] && _theConfig.logProcessTelemetry() === true) {\r\n _logEntry(event, \"[\".concat(_self.identifier, \":processTelemetry[\").concat(event.baseType, \"]\"), \"processTelemetry\");\r\n }\r\n _self.processNext(event, itemCtx);\r\n };\r\n });\r\n return _this;\r\n }\r\n DebugPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n DebugPlugin.prototype.processTelemetry = function (event, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n DebugPlugin.identifier = \"DebugPlugin\";\r\n return DebugPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport default DebugPlugin;\r\n//# sourceMappingURL=DebugPlugin.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC,gFAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;2DAKM;AACN;AACA;AACA;AACA;AACA"}
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -1,8 +1,8 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
- import { arrForEach } from "@microsoft/applicationinsights-core-js";
5
+ import { arrForEach, arrIndexOf } from "@microsoft/applicationinsights-core-js";
6
6
  import dynamicProto from "@microsoft/dynamicproto-js";
7
7
  import { tempStyle } from "./styleNodeSrc";
8
8
  import { FilterList } from "./filterList";
@@ -112,12 +112,12 @@ var Dashboard = /** @class */ (function () {
112
112
  return;
113
113
  }
114
114
  var type = entry.getKind();
115
- var allowOther = excludedTypes_1.indexOf("other") === -1; // Other types are not excluded
116
- if (trackers.indexOf(type) === -1 && !allowOther) {
115
+ var allowOther = arrIndexOf(excludedTypes_1, "other") === -1; // Other types are not excluded
116
+ if (arrIndexOf(trackers, type) === -1 && !allowOther) {
117
117
  // Not a tracked type and we are not allowing other types
118
118
  return;
119
119
  }
120
- else if (excludedTypes_1.indexOf(type) !== -1) {
120
+ else if (arrIndexOf(excludedTypes_1, type) !== -1) {
121
121
  // This type is explicitly excluded
122
122
  return;
123
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Dashboard.js.map","sources":["Dashboard.js"],"sourcesContent":["import { arrForEach } from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { tempStyle } from \"./styleNodeSrc\";\r\nimport { FilterList } from \"./filterList\";\r\nimport { LogEntry } from \"./LogEntry\";\r\nimport { copySelectedTree } from \"./helpers\";\r\nvar Dashboard = /** @class */ (function () {\r\n function Dashboard(config) {\r\n var _this = this;\r\n var msgTracker = [];\r\n var textFilter = \"\";\r\n /**\r\n * the root element of the logger\r\n */\r\n var rootElement;\r\n /**\r\n * the style that is only on the webpage when the log is active\r\n */\r\n var tempStyleEl;\r\n var filterList;\r\n var loggerEl;\r\n dynamicProto(Dashboard, this, function (_self) {\r\n var prefix = config.prefix;\r\n var trackers = config.trackers;\r\n var rootEl = rootElement = document.createElement(\"div\");\r\n rootEl.className = \"\".concat(prefix, \"-dbg-lgr-dashboard\");\r\n tempStyleEl = document.createElement(\"style\");\r\n tempStyleEl.innerHTML = tempStyle(prefix);\r\n // TODO: research more accessibility (aria)\r\n rootEl.style.position = \"fixed\";\r\n rootEl.style.width = \"100vw\";\r\n rootEl.style.height = \"100vh\";\r\n rootEl.style.backgroundColor = \"#ffffff\";\r\n rootEl.style.opacity = \"1\";\r\n rootEl.style.pointerEvents = \"auto\";\r\n rootEl.style.top = \"-100%\";\r\n rootEl.style.transition = \".2s top cubic-bezier(0.87, 0, 0.13, 1)\";\r\n var logHeading = document.createElement(\"h1\");\r\n logHeading.textContent = \"dashboard\";\r\n logHeading.style.fontFamily = \"monospace\";\r\n logHeading.style.textAlign = \"center\";\r\n rootEl.appendChild(logHeading);\r\n _createLogger(rootEl, prefix, trackers);\r\n _self.getElm = function () {\r\n return rootEl;\r\n };\r\n _self.isDisplayed = function () {\r\n return !!(rootEl.parentElement || rootEl.parentNode);\r\n };\r\n _self.getTextFilter = function () {\r\n return textFilter;\r\n };\r\n _self.setTextFilter = function (value) {\r\n if (value !== textFilter) {\r\n textFilter = value;\r\n _self.render();\r\n }\r\n };\r\n _self.getTrackers = function () {\r\n return trackers;\r\n };\r\n _self.newLogEntry = function (target, tm, key, level, kind, keep) {\r\n var _self = _this;\r\n msgTracker.push(new LogEntry(target, tm, key, level, kind, keep));\r\n if (msgTracker.length > config.maxMessages) {\r\n var lp = 0;\r\n while (lp < msgTracker.length) {\r\n var entry = msgTracker[lp];\r\n if (!entry.isKeep()) {\r\n var el = entry.getEl();\r\n if (el && el.parentElement) {\r\n el.parentElement.removeChild(el);\r\n }\r\n msgTracker.splice(lp, 1);\r\n break;\r\n }\r\n lp++;\r\n }\r\n }\r\n _self.render();\r\n };\r\n _self.show = function () {\r\n if (!_this.isDisplayed()) {\r\n document.body.appendChild(rootEl);\r\n document.head.appendChild(tempStyleEl);\r\n rootEl.style.top = \"0%\";\r\n rootEl.style.pointerEvents = \"auto\";\r\n _self.render();\r\n }\r\n };\r\n _self.hide = function () {\r\n if (_self.isDisplayed()) {\r\n rootEl.style.top = \"-100%\";\r\n rootEl.style.pointerEvents = \"none\";\r\n document.head.removeChild(tempStyleEl);\r\n document.body.removeChild(rootEl);\r\n }\r\n };\r\n _self.render = function () {\r\n if (_self.isDisplayed()) {\r\n var excludedTypes_1 = filterList.getCurrentFilter();\r\n arrForEach(msgTracker, function (entry) {\r\n var el = entry.getEl();\r\n if (el && el.parentElement) {\r\n el.parentElement.removeChild(el);\r\n }\r\n if (!entry.isMatch(textFilter, config.excludeKeys, config.includeFunctions)) {\r\n return;\r\n }\r\n var type = entry.getKind();\r\n var allowOther = excludedTypes_1.indexOf(\"other\") === -1; // Other types are not excluded\r\n if (trackers.indexOf(type) === -1 && !allowOther) {\r\n // Not a tracked type and we are not allowing other types\r\n return;\r\n }\r\n else if (excludedTypes_1.indexOf(type) !== -1) {\r\n // This type is explicitly excluded\r\n return;\r\n }\r\n var newEl = entry.render(textFilter, config.excludeKeys, config.includeFunctions);\r\n if (newEl) {\r\n loggerEl.appendChild(newEl);\r\n }\r\n });\r\n }\r\n };\r\n function clearEvents() {\r\n var newEvents = [];\r\n arrForEach(msgTracker, function (entry) {\r\n if (entry.isKeep()) {\r\n newEvents.push(entry);\r\n }\r\n else {\r\n var el = entry.getEl();\r\n if (el && el.parentElement) {\r\n el.parentElement.removeChild(el);\r\n }\r\n }\r\n });\r\n msgTracker = newEvents;\r\n _self.render();\r\n }\r\n function closeDashboard() {\r\n _self.hide();\r\n }\r\n function _createLogger(hostDiv, prefix, trackers) {\r\n loggerEl = document.createElement(\"div\");\r\n loggerEl.className = \"\".concat(prefix, \"-dbg-lgr\");\r\n var controlDiv = document.createElement(\"div\");\r\n controlDiv.className = \"controls\";\r\n var textFilterInput = document.createElement(\"input\");\r\n textFilterInput.className = \"text-filter-input\";\r\n textFilterInput.setAttribute(\"placeholder\", \"filter text\");\r\n textFilterInput.onchange = function (evt) {\r\n _self.setTextFilter(textFilterInput.value);\r\n };\r\n textFilterInput.onblur = function (evt) {\r\n _self.setTextFilter(textFilterInput.value);\r\n };\r\n textFilterInput.onkeyup = function (evt) {\r\n if (keyupTimer != null) {\r\n clearTimeout(keyupTimer);\r\n }\r\n var newValue = textFilterInput.value;\r\n if (newValue !== _self.getTextFilter()) {\r\n keyupTimer = setTimeout(function () {\r\n keyupTimer = null;\r\n _self.setTextFilter(textFilterInput.value);\r\n }, 200);\r\n }\r\n };\r\n controlDiv.appendChild(textFilterInput);\r\n var copyButton = document.createElement(\"button\");\r\n copyButton.innerText = \"copy current node\";\r\n copyButton.className = \"btn-secondary\";\r\n copyButton.onclick = copySelectedTree;\r\n copyButton.ontouchend = copySelectedTree;\r\n var keyupTimer = null;\r\n filterList = new FilterList(controlDiv, trackers.slice(0), function () { return _self.render(); });\r\n controlDiv.appendChild(copyButton);\r\n var clearEventsBtn = document.createElement(\"button\");\r\n clearEventsBtn.innerText = \"clear events\";\r\n clearEventsBtn.className = \"btn-secondary\";\r\n clearEventsBtn.onclick = clearEvents;\r\n clearEventsBtn.ontouchend = clearEvents;\r\n controlDiv.appendChild(clearEventsBtn);\r\n var closeEventsBtn = document.createElement(\"button\");\r\n closeEventsBtn.id = \"close-dashboard\";\r\n closeEventsBtn.innerText = \"close dashboard\";\r\n closeEventsBtn.className = \"btn-primary\";\r\n closeEventsBtn.onclick = closeDashboard;\r\n closeEventsBtn.ontouchend = closeDashboard;\r\n controlDiv.appendChild(closeEventsBtn);\r\n hostDiv.appendChild(controlDiv);\r\n hostDiv.appendChild(loggerEl);\r\n }\r\n });\r\n }\r\n Dashboard.prototype.getElm = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n Dashboard.prototype.isDisplayed = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return false;\r\n };\r\n Dashboard.prototype.getTextFilter = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n Dashboard.prototype.setTextFilter = function (value) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.getTrackers = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n Dashboard.prototype.newLogEntry = function (target, tm, key, level, kind, keep) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.render = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.show = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.hide = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return Dashboard;\r\n}());\r\nexport { Dashboard };\r\n//# sourceMappingURL=Dashboard.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;6CA8BM;AACN;AACA;AACA;AACA"}
1
+ {"version":3,"file":"Dashboard.js.map","sources":["Dashboard.js"],"sourcesContent":["import { arrForEach, arrIndexOf } from \"@microsoft/applicationinsights-core-js\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { tempStyle } from \"./styleNodeSrc\";\r\nimport { FilterList } from \"./filterList\";\r\nimport { LogEntry } from \"./LogEntry\";\r\nimport { copySelectedTree } from \"./helpers\";\r\nvar Dashboard = /** @class */ (function () {\r\n function Dashboard(config) {\r\n var _this = this;\r\n var msgTracker = [];\r\n var textFilter = \"\";\r\n /**\r\n * the root element of the logger\r\n */\r\n var rootElement;\r\n /**\r\n * the style that is only on the webpage when the log is active\r\n */\r\n var tempStyleEl;\r\n var filterList;\r\n var loggerEl;\r\n dynamicProto(Dashboard, this, function (_self) {\r\n var prefix = config.prefix;\r\n var trackers = config.trackers;\r\n var rootEl = rootElement = document.createElement(\"div\");\r\n rootEl.className = \"\".concat(prefix, \"-dbg-lgr-dashboard\");\r\n tempStyleEl = document.createElement(\"style\");\r\n tempStyleEl.innerHTML = tempStyle(prefix);\r\n // TODO: research more accessibility (aria)\r\n rootEl.style.position = \"fixed\";\r\n rootEl.style.width = \"100vw\";\r\n rootEl.style.height = \"100vh\";\r\n rootEl.style.backgroundColor = \"#ffffff\";\r\n rootEl.style.opacity = \"1\";\r\n rootEl.style.pointerEvents = \"auto\";\r\n rootEl.style.top = \"-100%\";\r\n rootEl.style.transition = \".2s top cubic-bezier(0.87, 0, 0.13, 1)\";\r\n var logHeading = document.createElement(\"h1\");\r\n logHeading.textContent = \"dashboard\";\r\n logHeading.style.fontFamily = \"monospace\";\r\n logHeading.style.textAlign = \"center\";\r\n rootEl.appendChild(logHeading);\r\n _createLogger(rootEl, prefix, trackers);\r\n _self.getElm = function () {\r\n return rootEl;\r\n };\r\n _self.isDisplayed = function () {\r\n return !!(rootEl.parentElement || rootEl.parentNode);\r\n };\r\n _self.getTextFilter = function () {\r\n return textFilter;\r\n };\r\n _self.setTextFilter = function (value) {\r\n if (value !== textFilter) {\r\n textFilter = value;\r\n _self.render();\r\n }\r\n };\r\n _self.getTrackers = function () {\r\n return trackers;\r\n };\r\n _self.newLogEntry = function (target, tm, key, level, kind, keep) {\r\n var _self = _this;\r\n msgTracker.push(new LogEntry(target, tm, key, level, kind, keep));\r\n if (msgTracker.length > config.maxMessages) {\r\n var lp = 0;\r\n while (lp < msgTracker.length) {\r\n var entry = msgTracker[lp];\r\n if (!entry.isKeep()) {\r\n var el = entry.getEl();\r\n if (el && el.parentElement) {\r\n el.parentElement.removeChild(el);\r\n }\r\n msgTracker.splice(lp, 1);\r\n break;\r\n }\r\n lp++;\r\n }\r\n }\r\n _self.render();\r\n };\r\n _self.show = function () {\r\n if (!_this.isDisplayed()) {\r\n document.body.appendChild(rootEl);\r\n document.head.appendChild(tempStyleEl);\r\n rootEl.style.top = \"0%\";\r\n rootEl.style.pointerEvents = \"auto\";\r\n _self.render();\r\n }\r\n };\r\n _self.hide = function () {\r\n if (_self.isDisplayed()) {\r\n rootEl.style.top = \"-100%\";\r\n rootEl.style.pointerEvents = \"none\";\r\n document.head.removeChild(tempStyleEl);\r\n document.body.removeChild(rootEl);\r\n }\r\n };\r\n _self.render = function () {\r\n if (_self.isDisplayed()) {\r\n var excludedTypes_1 = filterList.getCurrentFilter();\r\n arrForEach(msgTracker, function (entry) {\r\n var el = entry.getEl();\r\n if (el && el.parentElement) {\r\n el.parentElement.removeChild(el);\r\n }\r\n if (!entry.isMatch(textFilter, config.excludeKeys, config.includeFunctions)) {\r\n return;\r\n }\r\n var type = entry.getKind();\r\n var allowOther = arrIndexOf(excludedTypes_1, \"other\") === -1; // Other types are not excluded\r\n if (arrIndexOf(trackers, type) === -1 && !allowOther) {\r\n // Not a tracked type and we are not allowing other types\r\n return;\r\n }\r\n else if (arrIndexOf(excludedTypes_1, type) !== -1) {\r\n // This type is explicitly excluded\r\n return;\r\n }\r\n var newEl = entry.render(textFilter, config.excludeKeys, config.includeFunctions);\r\n if (newEl) {\r\n loggerEl.appendChild(newEl);\r\n }\r\n });\r\n }\r\n };\r\n function clearEvents() {\r\n var newEvents = [];\r\n arrForEach(msgTracker, function (entry) {\r\n if (entry.isKeep()) {\r\n newEvents.push(entry);\r\n }\r\n else {\r\n var el = entry.getEl();\r\n if (el && el.parentElement) {\r\n el.parentElement.removeChild(el);\r\n }\r\n }\r\n });\r\n msgTracker = newEvents;\r\n _self.render();\r\n }\r\n function closeDashboard() {\r\n _self.hide();\r\n }\r\n function _createLogger(hostDiv, prefix, trackers) {\r\n loggerEl = document.createElement(\"div\");\r\n loggerEl.className = \"\".concat(prefix, \"-dbg-lgr\");\r\n var controlDiv = document.createElement(\"div\");\r\n controlDiv.className = \"controls\";\r\n var textFilterInput = document.createElement(\"input\");\r\n textFilterInput.className = \"text-filter-input\";\r\n textFilterInput.setAttribute(\"placeholder\", \"filter text\");\r\n textFilterInput.onchange = function (evt) {\r\n _self.setTextFilter(textFilterInput.value);\r\n };\r\n textFilterInput.onblur = function (evt) {\r\n _self.setTextFilter(textFilterInput.value);\r\n };\r\n textFilterInput.onkeyup = function (evt) {\r\n if (keyupTimer != null) {\r\n clearTimeout(keyupTimer);\r\n }\r\n var newValue = textFilterInput.value;\r\n if (newValue !== _self.getTextFilter()) {\r\n keyupTimer = setTimeout(function () {\r\n keyupTimer = null;\r\n _self.setTextFilter(textFilterInput.value);\r\n }, 200);\r\n }\r\n };\r\n controlDiv.appendChild(textFilterInput);\r\n var copyButton = document.createElement(\"button\");\r\n copyButton.innerText = \"copy current node\";\r\n copyButton.className = \"btn-secondary\";\r\n copyButton.onclick = copySelectedTree;\r\n copyButton.ontouchend = copySelectedTree;\r\n var keyupTimer = null;\r\n filterList = new FilterList(controlDiv, trackers.slice(0), function () { return _self.render(); });\r\n controlDiv.appendChild(copyButton);\r\n var clearEventsBtn = document.createElement(\"button\");\r\n clearEventsBtn.innerText = \"clear events\";\r\n clearEventsBtn.className = \"btn-secondary\";\r\n clearEventsBtn.onclick = clearEvents;\r\n clearEventsBtn.ontouchend = clearEvents;\r\n controlDiv.appendChild(clearEventsBtn);\r\n var closeEventsBtn = document.createElement(\"button\");\r\n closeEventsBtn.id = \"close-dashboard\";\r\n closeEventsBtn.innerText = \"close dashboard\";\r\n closeEventsBtn.className = \"btn-primary\";\r\n closeEventsBtn.onclick = closeDashboard;\r\n closeEventsBtn.ontouchend = closeDashboard;\r\n controlDiv.appendChild(closeEventsBtn);\r\n hostDiv.appendChild(controlDiv);\r\n hostDiv.appendChild(loggerEl);\r\n }\r\n });\r\n }\r\n Dashboard.prototype.getElm = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n Dashboard.prototype.isDisplayed = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return false;\r\n };\r\n Dashboard.prototype.getTextFilter = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n Dashboard.prototype.setTextFilter = function (value) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.getTrackers = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n return null;\r\n };\r\n Dashboard.prototype.newLogEntry = function (target, tm, key, level, kind, keep) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.render = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.show = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n Dashboard.prototype.hide = function () {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n return Dashboard;\r\n}());\r\nexport { Dashboard };\r\n//# sourceMappingURL=Dashboard.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;6CA8BM;AACN;AACA;AACA;AACA"}
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  import { isBoolean, isNumber, isObject, isString, objToString } from "@microsoft/applicationinsights-core-js";
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -1,9 +1,10 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
6
6
 
7
+ import { arrIndexOf } from "@microsoft/applicationinsights-core-js";
7
8
  var FilterList = /** @class */ (function () {
8
9
  function FilterList(parent, trackers, toggleCb) {
9
10
  var _this = this;
@@ -59,7 +60,7 @@ var FilterList = /** @class */ (function () {
59
60
  ch.childNodes[0].className = "checkbox off";
60
61
  }
61
62
  }
62
- _self.filterList.splice(_self.filterList.indexOf(t), 1);
63
+ _self.filterList.splice(arrIndexOf(_self.filterList, t), 1);
63
64
  checkbox.className = "checkbox on";
64
65
  }
65
66
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"filterList.js.map","sources":["filterList.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nvar FilterList = /** @class */ (function () {\r\n function FilterList(parent, trackers, toggleCb) {\r\n var _this = this;\r\n this.children = [];\r\n this.getCurrentFilter = function () {\r\n return _this.filterList;\r\n };\r\n var _self = this;\r\n var active = false;\r\n trackers = trackers.concat(\"other\");\r\n _self.filterList = [];\r\n _self.el = document.createElement(\"div\");\r\n _self.el.className = \"filterlist\";\r\n var inputEl = document.createElement(\"div\");\r\n inputEl.className = \"filterlist-input\";\r\n inputEl.innerText = \"filter nodes...\";\r\n _self.el.appendChild(inputEl);\r\n var dropdownMenuEl = document.createElement(\"div\");\r\n dropdownMenuEl.className = \"filterlist-dropdown\";\r\n _self.el.appendChild(dropdownMenuEl);\r\n dropdownMenuEl.onkeyup = function (evt) {\r\n if (active && evt.keyCode === 27) {\r\n evt.stopPropagation();\r\n _hideDropdown();\r\n }\r\n };\r\n var _loop_1 = function (t) {\r\n var chEl = document.createElement(\"div\");\r\n chEl.setAttribute(\"tabindex\", \"0\");\r\n chEl.setAttribute(\"filter-type\", t);\r\n chEl.className = \"filterlist-toggle\";\r\n var checkbox = document.createElement(\"div\");\r\n checkbox.className = \"checkbox on\";\r\n var label = document.createElement(\"span\");\r\n label.className = \"label\";\r\n label.innerText = t;\r\n chEl.appendChild(checkbox);\r\n chEl.appendChild(label);\r\n chEl.onkeyup = function (evt) {\r\n if (active && evt.keyCode === 27) {\r\n evt.stopPropagation();\r\n _hideDropdown();\r\n }\r\n };\r\n chEl.onclick = function (evt) {\r\n evt.stopPropagation();\r\n chEl.focus();\r\n if (checkbox.className === \"checkbox off\") {\r\n if (evt.shiftKey) {\r\n _self.filterList = trackers.concat();\r\n for (var _i = 0, _a = _self.children; _i < _a.length; _i++) {\r\n var ch = _a[_i];\r\n ch.childNodes[0].className = \"checkbox off\";\r\n }\r\n }\r\n _self.filterList.splice(_self.filterList.indexOf(t), 1);\r\n checkbox.className = \"checkbox on\";\r\n }\r\n else {\r\n if (evt.shiftKey) {\r\n _self.filterList = [];\r\n for (var _b = 0, _c = _self.children; _b < _c.length; _b++) {\r\n var ch = _c[_b];\r\n ch.childNodes[0].className = \"checkbox on\";\r\n }\r\n }\r\n _self.filterList.push(t);\r\n checkbox.className = \"checkbox off\";\r\n }\r\n toggleCb();\r\n };\r\n _self.children.push(chEl);\r\n };\r\n for (var _i = 0, trackers_1 = trackers; _i < trackers_1.length; _i++) {\r\n var t = trackers_1[_i];\r\n _loop_1(t);\r\n }\r\n function _hideDropdown() {\r\n active = false;\r\n for (var _i = 0, _a = _self.children; _i < _a.length; _i++) {\r\n var ch = _a[_i];\r\n dropdownMenuEl.removeChild(ch);\r\n }\r\n }\r\n function _showDropdown() {\r\n active = true;\r\n for (var _i = 0, _a = _self.children; _i < _a.length; _i++) {\r\n var ch = _a[_i];\r\n dropdownMenuEl.appendChild(ch);\r\n }\r\n dropdownMenuEl.focus();\r\n }\r\n _self.el.onkeyup = function (evt) {\r\n if (active && evt.keyCode === 27) {\r\n evt.stopPropagation();\r\n _hideDropdown();\r\n }\r\n };\r\n _self.el.onclick = function () {\r\n if (!active) {\r\n _showDropdown();\r\n }\r\n else {\r\n _hideDropdown();\r\n }\r\n };\r\n parent.appendChild(_self.el);\r\n }\r\n return FilterList;\r\n}());\r\nexport { FilterList };\r\n//# sourceMappingURL=filterList.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"filterList.js.map","sources":["filterList.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrIndexOf } from \"@microsoft/applicationinsights-core-js\";\r\nvar FilterList = /** @class */ (function () {\r\n function FilterList(parent, trackers, toggleCb) {\r\n var _this = this;\r\n this.children = [];\r\n this.getCurrentFilter = function () {\r\n return _this.filterList;\r\n };\r\n var _self = this;\r\n var active = false;\r\n trackers = trackers.concat(\"other\");\r\n _self.filterList = [];\r\n _self.el = document.createElement(\"div\");\r\n _self.el.className = \"filterlist\";\r\n var inputEl = document.createElement(\"div\");\r\n inputEl.className = \"filterlist-input\";\r\n inputEl.innerText = \"filter nodes...\";\r\n _self.el.appendChild(inputEl);\r\n var dropdownMenuEl = document.createElement(\"div\");\r\n dropdownMenuEl.className = \"filterlist-dropdown\";\r\n _self.el.appendChild(dropdownMenuEl);\r\n dropdownMenuEl.onkeyup = function (evt) {\r\n if (active && evt.keyCode === 27) {\r\n evt.stopPropagation();\r\n _hideDropdown();\r\n }\r\n };\r\n var _loop_1 = function (t) {\r\n var chEl = document.createElement(\"div\");\r\n chEl.setAttribute(\"tabindex\", \"0\");\r\n chEl.setAttribute(\"filter-type\", t);\r\n chEl.className = \"filterlist-toggle\";\r\n var checkbox = document.createElement(\"div\");\r\n checkbox.className = \"checkbox on\";\r\n var label = document.createElement(\"span\");\r\n label.className = \"label\";\r\n label.innerText = t;\r\n chEl.appendChild(checkbox);\r\n chEl.appendChild(label);\r\n chEl.onkeyup = function (evt) {\r\n if (active && evt.keyCode === 27) {\r\n evt.stopPropagation();\r\n _hideDropdown();\r\n }\r\n };\r\n chEl.onclick = function (evt) {\r\n evt.stopPropagation();\r\n chEl.focus();\r\n if (checkbox.className === \"checkbox off\") {\r\n if (evt.shiftKey) {\r\n _self.filterList = trackers.concat();\r\n for (var _i = 0, _a = _self.children; _i < _a.length; _i++) {\r\n var ch = _a[_i];\r\n ch.childNodes[0].className = \"checkbox off\";\r\n }\r\n }\r\n _self.filterList.splice(arrIndexOf(_self.filterList, t), 1);\r\n checkbox.className = \"checkbox on\";\r\n }\r\n else {\r\n if (evt.shiftKey) {\r\n _self.filterList = [];\r\n for (var _b = 0, _c = _self.children; _b < _c.length; _b++) {\r\n var ch = _c[_b];\r\n ch.childNodes[0].className = \"checkbox on\";\r\n }\r\n }\r\n _self.filterList.push(t);\r\n checkbox.className = \"checkbox off\";\r\n }\r\n toggleCb();\r\n };\r\n _self.children.push(chEl);\r\n };\r\n for (var _i = 0, trackers_1 = trackers; _i < trackers_1.length; _i++) {\r\n var t = trackers_1[_i];\r\n _loop_1(t);\r\n }\r\n function _hideDropdown() {\r\n active = false;\r\n for (var _i = 0, _a = _self.children; _i < _a.length; _i++) {\r\n var ch = _a[_i];\r\n dropdownMenuEl.removeChild(ch);\r\n }\r\n }\r\n function _showDropdown() {\r\n active = true;\r\n for (var _i = 0, _a = _self.children; _i < _a.length; _i++) {\r\n var ch = _a[_i];\r\n dropdownMenuEl.appendChild(ch);\r\n }\r\n dropdownMenuEl.focus();\r\n }\r\n _self.el.onkeyup = function (evt) {\r\n if (active && evt.keyCode === 27) {\r\n evt.stopPropagation();\r\n _hideDropdown();\r\n }\r\n };\r\n _self.el.onclick = function () {\r\n if (!active) {\r\n _showDropdown();\r\n }\r\n else {\r\n _hideDropdown();\r\n }\r\n };\r\n parent.appendChild(_self.el);\r\n }\r\n return FilterList;\r\n}());\r\nexport { FilterList };\r\n//# sourceMappingURL=filterList.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -211,7 +211,7 @@ export function getTargetKeys(target, excludedKeys, includeFunctions) {
211
211
  if (propKeys) {
212
212
  arrForEach(propKeys, function (key) {
213
213
  var theKey = _toString(key);
214
- if (theKey && keys.indexOf(theKey) === -1) {
214
+ if (theKey && arrIndexOf(keys, theKey) === -1) {
215
215
  keys.push(key);
216
216
  }
217
217
  });
@@ -229,7 +229,7 @@ export function getTargetKeys(target, excludedKeys, includeFunctions) {
229
229
  return;
230
230
  }
231
231
  var theKey = _toString(key);
232
- if (theKey && excludedKeys.indexOf(theKey) === -1) {
232
+ if (theKey && arrIndexOf(excludedKeys, theKey) === -1) {
233
233
  theKeys.push(theKey);
234
234
  }
235
235
  });
@@ -273,7 +273,7 @@ export function formatLogElements(target, tmLabel, key, level, textFilter, exclu
273
273
  }
274
274
  for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
275
275
  var key_1 = keys_1[_i];
276
- if (excludeKeys.indexOf(key_1) !== -1) {
276
+ if (arrIndexOf(excludeKeys, key_1) !== -1) {
277
277
  continue;
278
278
  }
279
279
  var targetValue = target[key_1];
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js.map","sources":["helpers.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, hasOwnProperty, isFunction, isObject, isString, isSymbol, objKeys } from \"@microsoft/applicationinsights-core-js\";\r\nimport { Util } from \"@microsoft/applicationinsights-common\";\r\nimport { strShimPrototype } from \"@microsoft/applicationinsights-shims\";\r\nvar strConstructor = \"constructor\";\r\nvar strGetOwnPropertyNames = \"getOwnPropertyNames\";\r\nexport var MAX_DEPTH = 16;\r\nexport function makeRegex(value) {\r\n if (value && value.length > 0) {\r\n // Escape any slashes first!\r\n value = value.replace(/\\\\/g, \"\\\\\\\\\");\r\n // eslint-disable-next-line security/detect-non-literal-regexp\r\n value = value.replace(/([\\+\\?\\|\\{\\}\\[\\]\\(\\)\\^\\$\\#\\.\\=\\!\\:\\/])/g, \"\\\\$1\");\r\n value = value.replace(/\\*/g, \".*\");\r\n return new RegExp(\"(\" + value + \")\");\r\n }\r\n return null;\r\n}\r\nexport function toggleClassName(el, className) {\r\n var idx = el.className.indexOf(className);\r\n if (idx === -1) {\r\n el.className += className;\r\n }\r\n else {\r\n el.className = el.className.substring(0, idx) + el.className.substring(idx + className.length);\r\n }\r\n}\r\nexport function traverseAndReplace(target, maxDepth, currentDepth, thingsReferenced, excludedKeys, includeFunctions) {\r\n var out = {};\r\n if (!thingsReferenced) {\r\n thingsReferenced = [];\r\n }\r\n if (isObject(target)) {\r\n for (var _i = 0, _a = getTargetKeys(target, excludedKeys, includeFunctions); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n var targetValue = target[key];\r\n if (isSymbol(targetValue)) {\r\n targetValue = targetValue.toString();\r\n }\r\n if (targetValue !== null && arrIndexOf(thingsReferenced, targetValue) !== -1) {\r\n out[key] = \"<circular (\".concat(key, \" - \\\"\").concat(getTargetName(targetValue), \"\\\")>\");\r\n }\r\n else if (targetValue !== null && isObject(targetValue)) {\r\n if (currentDepth >= maxDepth) {\r\n out[key] = \"<max allowed depth reached>\";\r\n }\r\n else {\r\n thingsReferenced.push(target);\r\n out[key] = traverseAndReplace(targetValue, maxDepth, currentDepth + 1, thingsReferenced, excludedKeys, includeFunctions);\r\n thingsReferenced.pop();\r\n }\r\n }\r\n else {\r\n out[key] = targetValue;\r\n }\r\n }\r\n }\r\n return out;\r\n}\r\nfunction _sanitizeText(value) {\r\n if (value) {\r\n value = value.replace(/&/g, \"&amp;\");\r\n value = value.replace(/>/g, \"&gt;\");\r\n value = value.replace(/</g, \"&lt;\");\r\n }\r\n return value;\r\n}\r\nfunction _setInnerText(elm, theText, textFilter) {\r\n var innerText = theText;\r\n var matchPos = -1;\r\n var matchLen = 0;\r\n var rg = makeRegex(textFilter);\r\n if (rg) {\r\n var matchTxt = rg.exec(innerText);\r\n if (matchTxt && matchTxt[1]) {\r\n matchPos = theText.indexOf(matchTxt[1]);\r\n matchLen = matchTxt[1].length;\r\n }\r\n }\r\n if (matchPos !== -1) {\r\n var innerHtml = _sanitizeText(theText.substring(0, matchPos)) +\r\n \"<span class=\\\"matched-text-filter\\\">\" +\r\n _sanitizeText(theText.substring(matchPos, matchPos + matchLen)) +\r\n \"</span>\" +\r\n theText.substring(matchPos + matchLen);\r\n elm.innerHTML = innerHtml;\r\n return true;\r\n }\r\n elm.innerText = theText;\r\n return false;\r\n}\r\nvar lastSelectedElement;\r\nvar selectedObject;\r\nexport function copySelectedTree() {\r\n var toCopy = selectedObject;\r\n if (!toCopy) {\r\n return;\r\n }\r\n var textArea = document.createElement(\"textarea\");\r\n textArea.innerText = JSON.stringify(toCopy);\r\n textArea.style.opacity = \"0\";\r\n document.body.appendChild(textArea);\r\n textArea.select();\r\n document.execCommand(\"copy\");\r\n textArea.parentElement.removeChild(textArea);\r\n}\r\nexport function focusHandler(evt, target, level, excludeKeys, includeFunctions) {\r\n if (lastSelectedElement) {\r\n toggleClassName(lastSelectedElement, \" last-selected-element\");\r\n }\r\n lastSelectedElement = evt.target;\r\n for (var i = 0; i < 10; i++) {\r\n if (lastSelectedElement.tagName === \"DIV\") {\r\n break;\r\n }\r\n lastSelectedElement = lastSelectedElement.parentElement;\r\n }\r\n lastSelectedElement.className += \" last-selected-element\";\r\n selectedObject = traverseAndReplace(target, MAX_DEPTH, level, null, excludeKeys, includeFunctions);\r\n}\r\nfunction _navHandler(evt, openHandler, currentState) {\r\n var el = evt.target;\r\n switch (evt.which) {\r\n // Enter\r\n case 13:\r\n (openHandler) ? openHandler(evt) : void 0;\r\n break;\r\n // ArrowUp\r\n case 38:\r\n evt.preventDefault();\r\n var prev = el.previousElementSibling;\r\n if (prev && prev.tagName !== \"BUTTON\") {\r\n prev.focus();\r\n }\r\n break;\r\n // ArrowDown\r\n case 40:\r\n evt.preventDefault();\r\n var next = el.nextElementSibling;\r\n if (next) {\r\n next.focus();\r\n }\r\n break;\r\n // ArrowRight\r\n case 39:\r\n if (openHandler) {\r\n openHandler(evt, true);\r\n if (currentState) {\r\n el.firstElementChild.nextSibling.focus();\r\n }\r\n }\r\n break;\r\n // ArrowLeft\r\n case 37:\r\n if (openHandler) {\r\n openHandler(evt, false);\r\n }\r\n if (!currentState) {\r\n el.parentElement.focus();\r\n }\r\n break;\r\n // c\r\n case 67:\r\n if (evt.ctrlKey) {\r\n copySelectedTree();\r\n evt.target.focus();\r\n }\r\n break;\r\n }\r\n}\r\nexport function getTargetName(target) {\r\n if (target) {\r\n if (isString(target.identifier)) {\r\n return target.identifier;\r\n }\r\n if (isString(target.name)) {\r\n return target.name;\r\n }\r\n if (hasOwnProperty(target, strShimPrototype)) {\r\n // Look like a prototype\r\n return target.name || \"\";\r\n }\r\n return ((target[strConstructor]) || {}).name || \"\";\r\n }\r\n return \"\";\r\n}\r\nfunction _toString(value) {\r\n if (isString(value)) {\r\n return value;\r\n }\r\n if (isSymbol(value)) {\r\n return value.toString();\r\n }\r\n if (isFunction(value[\"toString\"])) {\r\n return value[\"toString\"]() || \"\";\r\n }\r\n return \"\";\r\n}\r\nexport function getTargetKeys(target, excludedKeys, includeFunctions) {\r\n var keys = objKeys(target);\r\n if (!Util.isArray(target)) {\r\n try {\r\n if (Object[strGetOwnPropertyNames]) {\r\n // We need to use this for built in objects such as Error which don't return their values via objKeys because they are not enumerable for example\r\n var propKeys = Object[strGetOwnPropertyNames](target);\r\n if (propKeys) {\r\n arrForEach(propKeys, function (key) {\r\n var theKey = _toString(key);\r\n if (theKey && keys.indexOf(theKey) === -1) {\r\n keys.push(key);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n catch (ex) {\r\n // getOwnPropertyNames can fail in ES5, if the argument to this method is not an object (a primitive),\r\n // then it will cause a TypeError. In ES2015, a non-object argument will be coerced to an object.\r\n }\r\n }\r\n var theKeys = [];\r\n arrForEach(keys, function (key) {\r\n if (!includeFunctions && isFunction(target[key])) {\r\n return;\r\n }\r\n var theKey = _toString(key);\r\n if (theKey && excludedKeys.indexOf(theKey) === -1) {\r\n theKeys.push(theKey);\r\n }\r\n });\r\n return theKeys;\r\n}\r\nexport function formatLogElements(target, tmLabel, key, level, textFilter, excludeKeys, thingsReferenced, includeFunctions) {\r\n var openState = false;\r\n if (!level) {\r\n level = 0;\r\n }\r\n if (!thingsReferenced) {\r\n thingsReferenced = [];\r\n }\r\n var isObj = isObject(target) || Util.isError(target);\r\n var isErr = target[\"baseType\"] === \"ExceptionData\" || Util.isError(target);\r\n var children = [];\r\n function _openNode(currentLine) {\r\n openState = true;\r\n arrForEach(children, function (child) {\r\n rootDiv.appendChild(child);\r\n });\r\n currentLine.className = \"obj-key expandable open\";\r\n }\r\n function _collapseNode(currentLine) {\r\n // rootDiv.innerHTML = '';\r\n arrForEach(children, function (child) {\r\n rootDiv.removeChild(child);\r\n });\r\n // rootDiv.appendChild(currentLine);\r\n openState = false;\r\n currentLine.className = \"obj-key expandable closed\";\r\n }\r\n var matched = false;\r\n var childOpened = false;\r\n var keys = getTargetKeys(target, excludeKeys, includeFunctions);\r\n if (keys.length === 0) {\r\n keys.push(\"<empty>\");\r\n }\r\n if (level >= MAX_DEPTH) {\r\n keys.unshift(\"<maxdepth>\");\r\n }\r\n for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {\r\n var key_1 = keys_1[_i];\r\n if (excludeKeys.indexOf(key_1) !== -1) {\r\n continue;\r\n }\r\n var targetValue = target[key_1];\r\n if (isSymbol(targetValue)) {\r\n targetValue = targetValue.toString();\r\n }\r\n if (key_1 === \"<maxdepth>\") {\r\n var builder = document.createElement(\"div\");\r\n builder.className = \"empty\";\r\n builder.innerText = \"<max allowed depth reached>\";\r\n children.push(builder);\r\n break;\r\n }\r\n else if (key_1 === \"<empty>\") {\r\n var builder = document.createElement(\"div\");\r\n builder.className = \"empty\";\r\n builder.innerText = \"<empty>\";\r\n children.push(builder);\r\n }\r\n else if (targetValue !== null && arrIndexOf(thingsReferenced, targetValue) !== -1) {\r\n var builder = document.createElement(\"div\");\r\n builder.className = \"empty\";\r\n builder.innerText = \"<circular (\".concat(key_1, \") - \\\"\").concat(getTargetName(targetValue), \"\\\">\");\r\n children.push(builder);\r\n }\r\n else if (targetValue !== null && (isObject(targetValue) || Util.isError(targetValue))) {\r\n thingsReferenced.push(target);\r\n var formatted = formatLogElements(targetValue, null, key_1, level + 1, textFilter, excludeKeys, thingsReferenced, includeFunctions);\r\n thingsReferenced.pop();\r\n if (formatted.matched) {\r\n childOpened = true;\r\n }\r\n if (formatted.isErr) {\r\n isErr = true;\r\n }\r\n children.push(formatted.root);\r\n }\r\n else {\r\n var builder = document.createElement(\"div\");\r\n builder.setAttribute(\"tabindex\", \"0\");\r\n builder.onclick = function (evt) {\r\n evt.stopPropagation();\r\n };\r\n builder.ontouchend = function (evt) {\r\n evt.stopPropagation();\r\n };\r\n builder.onkeydown = function (evt) {\r\n evt.stopPropagation();\r\n _navHandler(evt);\r\n };\r\n builder.onfocus = function (evt) {\r\n focusHandler(evt, target, level, excludeKeys, includeFunctions);\r\n };\r\n var outerSpan = document.createElement(\"span\");\r\n var keySpan = document.createElement(\"span\");\r\n keySpan.className = \"key\";\r\n if (_setInnerText(keySpan, \"\".concat(key_1, \": \"), textFilter)) {\r\n childOpened = true;\r\n }\r\n outerSpan.appendChild(keySpan);\r\n var valueSpan = document.createElement(\"span\");\r\n if (isFunction(targetValue)) {\r\n var fnStr = targetValue.toString();\r\n var fnHead = fnStr.match(/^([^{]+)/)[1];\r\n valueSpan.textContent = \"\".concat(fnHead, \"{...}\");\r\n }\r\n else {\r\n if (_setInnerText(valueSpan, \"\".concat(targetValue), textFilter)) {\r\n childOpened = true;\r\n }\r\n }\r\n valueSpan.className = \"\".concat(typeof targetValue);\r\n outerSpan.appendChild(valueSpan);\r\n builder.appendChild(outerSpan);\r\n children.push(builder);\r\n }\r\n }\r\n var rootDiv = document.createElement(\"div\");\r\n var innerText = \"\";\r\n var currentLine = document.createElement(\"span\");\r\n if (isObj || children.length) {\r\n innerText = \"\".concat(key ? key : \"obj\", \": \");\r\n if (Util.isArray(target)) {\r\n innerText += \"[\".concat(getTargetKeys(target, excludeKeys, includeFunctions).length, \"]\");\r\n }\r\n else {\r\n var targetName = getTargetName(target);\r\n if (targetName) {\r\n innerText += \" <\\\"\".concat(targetName, \"\\\"> \");\r\n }\r\n innerText += \"{\".concat(getTargetKeys(target, excludeKeys, includeFunctions).length, \"}\");\r\n }\r\n matched = _setInnerText(currentLine, innerText, textFilter);\r\n if (tmLabel) {\r\n var tmWrapper = document.createElement(\"span\");\r\n var tmDetails = document.createElement(\"span\");\r\n tmDetails.className = \"obj-time\";\r\n tmDetails.innerText = tmLabel;\r\n tmWrapper.appendChild(tmDetails);\r\n tmWrapper.appendChild(currentLine);\r\n currentLine = tmWrapper;\r\n }\r\n currentLine.className = \"obj-key expandable closed\";\r\n }\r\n else {\r\n innerText = \"\".concat(key ? key : \"obj\", \": \").concat(target.toString());\r\n matched = _setInnerText(currentLine, innerText, textFilter);\r\n currentLine.className = \"obj-key\";\r\n }\r\n rootDiv.appendChild(currentLine);\r\n rootDiv.setAttribute(\"tabindex\", \"0\");\r\n if (childOpened) {\r\n // A child node matched so auto-expand\r\n _openNode(currentLine);\r\n }\r\n if (isObj) {\r\n if (isErr) {\r\n rootDiv.className = \"exception\";\r\n }\r\n var openHandler_1 = function (evt, forceState) {\r\n evt.stopPropagation();\r\n if (Util.getIEVersion()) {\r\n focusHandler(evt, target, level, excludeKeys, includeFunctions);\r\n }\r\n if (forceState !== undefined && openState === forceState) {\r\n return;\r\n }\r\n if (lastSelectedElement === rootDiv) {\r\n if (openState) {\r\n _collapseNode(currentLine);\r\n }\r\n else {\r\n _openNode(currentLine);\r\n }\r\n }\r\n };\r\n rootDiv.onkeydown = function (evt) {\r\n _navHandler(evt, openHandler_1, openState);\r\n };\r\n rootDiv.onclick = function (evt) {\r\n openHandler_1(evt);\r\n };\r\n rootDiv.ontouchend = function (evt) {\r\n openHandler_1(evt);\r\n };\r\n rootDiv.onfocus = function (evt) {\r\n focusHandler(evt, target, level, excludeKeys, includeFunctions);\r\n };\r\n }\r\n return {\r\n root: rootDiv,\r\n isErr: isErr,\r\n matched: matched || childOpened\r\n };\r\n}\r\n//# sourceMappingURL=helpers.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"helpers.js.map","sources":["helpers.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\nimport { arrForEach, arrIndexOf, hasOwnProperty, isFunction, isObject, isString, isSymbol, objKeys } from \"@microsoft/applicationinsights-core-js\";\r\nimport { Util } from \"@microsoft/applicationinsights-common\";\r\nimport { strShimPrototype } from \"@microsoft/applicationinsights-shims\";\r\nvar strConstructor = \"constructor\";\r\nvar strGetOwnPropertyNames = \"getOwnPropertyNames\";\r\nexport var MAX_DEPTH = 16;\r\nexport function makeRegex(value) {\r\n if (value && value.length > 0) {\r\n // Escape any slashes first!\r\n value = value.replace(/\\\\/g, \"\\\\\\\\\");\r\n // eslint-disable-next-line security/detect-non-literal-regexp\r\n value = value.replace(/([\\+\\?\\|\\{\\}\\[\\]\\(\\)\\^\\$\\#\\.\\=\\!\\:\\/])/g, \"\\\\$1\");\r\n value = value.replace(/\\*/g, \".*\");\r\n return new RegExp(\"(\" + value + \")\");\r\n }\r\n return null;\r\n}\r\nexport function toggleClassName(el, className) {\r\n var idx = el.className.indexOf(className);\r\n if (idx === -1) {\r\n el.className += className;\r\n }\r\n else {\r\n el.className = el.className.substring(0, idx) + el.className.substring(idx + className.length);\r\n }\r\n}\r\nexport function traverseAndReplace(target, maxDepth, currentDepth, thingsReferenced, excludedKeys, includeFunctions) {\r\n var out = {};\r\n if (!thingsReferenced) {\r\n thingsReferenced = [];\r\n }\r\n if (isObject(target)) {\r\n for (var _i = 0, _a = getTargetKeys(target, excludedKeys, includeFunctions); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n var targetValue = target[key];\r\n if (isSymbol(targetValue)) {\r\n targetValue = targetValue.toString();\r\n }\r\n if (targetValue !== null && arrIndexOf(thingsReferenced, targetValue) !== -1) {\r\n out[key] = \"<circular (\".concat(key, \" - \\\"\").concat(getTargetName(targetValue), \"\\\")>\");\r\n }\r\n else if (targetValue !== null && isObject(targetValue)) {\r\n if (currentDepth >= maxDepth) {\r\n out[key] = \"<max allowed depth reached>\";\r\n }\r\n else {\r\n thingsReferenced.push(target);\r\n out[key] = traverseAndReplace(targetValue, maxDepth, currentDepth + 1, thingsReferenced, excludedKeys, includeFunctions);\r\n thingsReferenced.pop();\r\n }\r\n }\r\n else {\r\n out[key] = targetValue;\r\n }\r\n }\r\n }\r\n return out;\r\n}\r\nfunction _sanitizeText(value) {\r\n if (value) {\r\n value = value.replace(/&/g, \"&amp;\");\r\n value = value.replace(/>/g, \"&gt;\");\r\n value = value.replace(/</g, \"&lt;\");\r\n }\r\n return value;\r\n}\r\nfunction _setInnerText(elm, theText, textFilter) {\r\n var innerText = theText;\r\n var matchPos = -1;\r\n var matchLen = 0;\r\n var rg = makeRegex(textFilter);\r\n if (rg) {\r\n var matchTxt = rg.exec(innerText);\r\n if (matchTxt && matchTxt[1]) {\r\n matchPos = theText.indexOf(matchTxt[1]);\r\n matchLen = matchTxt[1].length;\r\n }\r\n }\r\n if (matchPos !== -1) {\r\n var innerHtml = _sanitizeText(theText.substring(0, matchPos)) +\r\n \"<span class=\\\"matched-text-filter\\\">\" +\r\n _sanitizeText(theText.substring(matchPos, matchPos + matchLen)) +\r\n \"</span>\" +\r\n theText.substring(matchPos + matchLen);\r\n elm.innerHTML = innerHtml;\r\n return true;\r\n }\r\n elm.innerText = theText;\r\n return false;\r\n}\r\nvar lastSelectedElement;\r\nvar selectedObject;\r\nexport function copySelectedTree() {\r\n var toCopy = selectedObject;\r\n if (!toCopy) {\r\n return;\r\n }\r\n var textArea = document.createElement(\"textarea\");\r\n textArea.innerText = JSON.stringify(toCopy);\r\n textArea.style.opacity = \"0\";\r\n document.body.appendChild(textArea);\r\n textArea.select();\r\n document.execCommand(\"copy\");\r\n textArea.parentElement.removeChild(textArea);\r\n}\r\nexport function focusHandler(evt, target, level, excludeKeys, includeFunctions) {\r\n if (lastSelectedElement) {\r\n toggleClassName(lastSelectedElement, \" last-selected-element\");\r\n }\r\n lastSelectedElement = evt.target;\r\n for (var i = 0; i < 10; i++) {\r\n if (lastSelectedElement.tagName === \"DIV\") {\r\n break;\r\n }\r\n lastSelectedElement = lastSelectedElement.parentElement;\r\n }\r\n lastSelectedElement.className += \" last-selected-element\";\r\n selectedObject = traverseAndReplace(target, MAX_DEPTH, level, null, excludeKeys, includeFunctions);\r\n}\r\nfunction _navHandler(evt, openHandler, currentState) {\r\n var el = evt.target;\r\n switch (evt.which) {\r\n // Enter\r\n case 13:\r\n (openHandler) ? openHandler(evt) : void 0;\r\n break;\r\n // ArrowUp\r\n case 38:\r\n evt.preventDefault();\r\n var prev = el.previousElementSibling;\r\n if (prev && prev.tagName !== \"BUTTON\") {\r\n prev.focus();\r\n }\r\n break;\r\n // ArrowDown\r\n case 40:\r\n evt.preventDefault();\r\n var next = el.nextElementSibling;\r\n if (next) {\r\n next.focus();\r\n }\r\n break;\r\n // ArrowRight\r\n case 39:\r\n if (openHandler) {\r\n openHandler(evt, true);\r\n if (currentState) {\r\n el.firstElementChild.nextSibling.focus();\r\n }\r\n }\r\n break;\r\n // ArrowLeft\r\n case 37:\r\n if (openHandler) {\r\n openHandler(evt, false);\r\n }\r\n if (!currentState) {\r\n el.parentElement.focus();\r\n }\r\n break;\r\n // c\r\n case 67:\r\n if (evt.ctrlKey) {\r\n copySelectedTree();\r\n evt.target.focus();\r\n }\r\n break;\r\n }\r\n}\r\nexport function getTargetName(target) {\r\n if (target) {\r\n if (isString(target.identifier)) {\r\n return target.identifier;\r\n }\r\n if (isString(target.name)) {\r\n return target.name;\r\n }\r\n if (hasOwnProperty(target, strShimPrototype)) {\r\n // Look like a prototype\r\n return target.name || \"\";\r\n }\r\n return ((target[strConstructor]) || {}).name || \"\";\r\n }\r\n return \"\";\r\n}\r\nfunction _toString(value) {\r\n if (isString(value)) {\r\n return value;\r\n }\r\n if (isSymbol(value)) {\r\n return value.toString();\r\n }\r\n if (isFunction(value[\"toString\"])) {\r\n return value[\"toString\"]() || \"\";\r\n }\r\n return \"\";\r\n}\r\nexport function getTargetKeys(target, excludedKeys, includeFunctions) {\r\n var keys = objKeys(target);\r\n if (!Util.isArray(target)) {\r\n try {\r\n if (Object[strGetOwnPropertyNames]) {\r\n // We need to use this for built in objects such as Error which don't return their values via objKeys because they are not enumerable for example\r\n var propKeys = Object[strGetOwnPropertyNames](target);\r\n if (propKeys) {\r\n arrForEach(propKeys, function (key) {\r\n var theKey = _toString(key);\r\n if (theKey && arrIndexOf(keys, theKey) === -1) {\r\n keys.push(key);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n catch (ex) {\r\n // getOwnPropertyNames can fail in ES5, if the argument to this method is not an object (a primitive),\r\n // then it will cause a TypeError. In ES2015, a non-object argument will be coerced to an object.\r\n }\r\n }\r\n var theKeys = [];\r\n arrForEach(keys, function (key) {\r\n if (!includeFunctions && isFunction(target[key])) {\r\n return;\r\n }\r\n var theKey = _toString(key);\r\n if (theKey && arrIndexOf(excludedKeys, theKey) === -1) {\r\n theKeys.push(theKey);\r\n }\r\n });\r\n return theKeys;\r\n}\r\nexport function formatLogElements(target, tmLabel, key, level, textFilter, excludeKeys, thingsReferenced, includeFunctions) {\r\n var openState = false;\r\n if (!level) {\r\n level = 0;\r\n }\r\n if (!thingsReferenced) {\r\n thingsReferenced = [];\r\n }\r\n var isObj = isObject(target) || Util.isError(target);\r\n var isErr = target[\"baseType\"] === \"ExceptionData\" || Util.isError(target);\r\n var children = [];\r\n function _openNode(currentLine) {\r\n openState = true;\r\n arrForEach(children, function (child) {\r\n rootDiv.appendChild(child);\r\n });\r\n currentLine.className = \"obj-key expandable open\";\r\n }\r\n function _collapseNode(currentLine) {\r\n // rootDiv.innerHTML = '';\r\n arrForEach(children, function (child) {\r\n rootDiv.removeChild(child);\r\n });\r\n // rootDiv.appendChild(currentLine);\r\n openState = false;\r\n currentLine.className = \"obj-key expandable closed\";\r\n }\r\n var matched = false;\r\n var childOpened = false;\r\n var keys = getTargetKeys(target, excludeKeys, includeFunctions);\r\n if (keys.length === 0) {\r\n keys.push(\"<empty>\");\r\n }\r\n if (level >= MAX_DEPTH) {\r\n keys.unshift(\"<maxdepth>\");\r\n }\r\n for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {\r\n var key_1 = keys_1[_i];\r\n if (arrIndexOf(excludeKeys, key_1) !== -1) {\r\n continue;\r\n }\r\n var targetValue = target[key_1];\r\n if (isSymbol(targetValue)) {\r\n targetValue = targetValue.toString();\r\n }\r\n if (key_1 === \"<maxdepth>\") {\r\n var builder = document.createElement(\"div\");\r\n builder.className = \"empty\";\r\n builder.innerText = \"<max allowed depth reached>\";\r\n children.push(builder);\r\n break;\r\n }\r\n else if (key_1 === \"<empty>\") {\r\n var builder = document.createElement(\"div\");\r\n builder.className = \"empty\";\r\n builder.innerText = \"<empty>\";\r\n children.push(builder);\r\n }\r\n else if (targetValue !== null && arrIndexOf(thingsReferenced, targetValue) !== -1) {\r\n var builder = document.createElement(\"div\");\r\n builder.className = \"empty\";\r\n builder.innerText = \"<circular (\".concat(key_1, \") - \\\"\").concat(getTargetName(targetValue), \"\\\">\");\r\n children.push(builder);\r\n }\r\n else if (targetValue !== null && (isObject(targetValue) || Util.isError(targetValue))) {\r\n thingsReferenced.push(target);\r\n var formatted = formatLogElements(targetValue, null, key_1, level + 1, textFilter, excludeKeys, thingsReferenced, includeFunctions);\r\n thingsReferenced.pop();\r\n if (formatted.matched) {\r\n childOpened = true;\r\n }\r\n if (formatted.isErr) {\r\n isErr = true;\r\n }\r\n children.push(formatted.root);\r\n }\r\n else {\r\n var builder = document.createElement(\"div\");\r\n builder.setAttribute(\"tabindex\", \"0\");\r\n builder.onclick = function (evt) {\r\n evt.stopPropagation();\r\n };\r\n builder.ontouchend = function (evt) {\r\n evt.stopPropagation();\r\n };\r\n builder.onkeydown = function (evt) {\r\n evt.stopPropagation();\r\n _navHandler(evt);\r\n };\r\n builder.onfocus = function (evt) {\r\n focusHandler(evt, target, level, excludeKeys, includeFunctions);\r\n };\r\n var outerSpan = document.createElement(\"span\");\r\n var keySpan = document.createElement(\"span\");\r\n keySpan.className = \"key\";\r\n if (_setInnerText(keySpan, \"\".concat(key_1, \": \"), textFilter)) {\r\n childOpened = true;\r\n }\r\n outerSpan.appendChild(keySpan);\r\n var valueSpan = document.createElement(\"span\");\r\n if (isFunction(targetValue)) {\r\n var fnStr = targetValue.toString();\r\n var fnHead = fnStr.match(/^([^{]+)/)[1];\r\n valueSpan.textContent = \"\".concat(fnHead, \"{...}\");\r\n }\r\n else {\r\n if (_setInnerText(valueSpan, \"\".concat(targetValue), textFilter)) {\r\n childOpened = true;\r\n }\r\n }\r\n valueSpan.className = \"\".concat(typeof targetValue);\r\n outerSpan.appendChild(valueSpan);\r\n builder.appendChild(outerSpan);\r\n children.push(builder);\r\n }\r\n }\r\n var rootDiv = document.createElement(\"div\");\r\n var innerText = \"\";\r\n var currentLine = document.createElement(\"span\");\r\n if (isObj || children.length) {\r\n innerText = \"\".concat(key ? key : \"obj\", \": \");\r\n if (Util.isArray(target)) {\r\n innerText += \"[\".concat(getTargetKeys(target, excludeKeys, includeFunctions).length, \"]\");\r\n }\r\n else {\r\n var targetName = getTargetName(target);\r\n if (targetName) {\r\n innerText += \" <\\\"\".concat(targetName, \"\\\"> \");\r\n }\r\n innerText += \"{\".concat(getTargetKeys(target, excludeKeys, includeFunctions).length, \"}\");\r\n }\r\n matched = _setInnerText(currentLine, innerText, textFilter);\r\n if (tmLabel) {\r\n var tmWrapper = document.createElement(\"span\");\r\n var tmDetails = document.createElement(\"span\");\r\n tmDetails.className = \"obj-time\";\r\n tmDetails.innerText = tmLabel;\r\n tmWrapper.appendChild(tmDetails);\r\n tmWrapper.appendChild(currentLine);\r\n currentLine = tmWrapper;\r\n }\r\n currentLine.className = \"obj-key expandable closed\";\r\n }\r\n else {\r\n innerText = \"\".concat(key ? key : \"obj\", \": \").concat(target.toString());\r\n matched = _setInnerText(currentLine, innerText, textFilter);\r\n currentLine.className = \"obj-key\";\r\n }\r\n rootDiv.appendChild(currentLine);\r\n rootDiv.setAttribute(\"tabindex\", \"0\");\r\n if (childOpened) {\r\n // A child node matched so auto-expand\r\n _openNode(currentLine);\r\n }\r\n if (isObj) {\r\n if (isErr) {\r\n rootDiv.className = \"exception\";\r\n }\r\n var openHandler_1 = function (evt, forceState) {\r\n evt.stopPropagation();\r\n if (Util.getIEVersion()) {\r\n focusHandler(evt, target, level, excludeKeys, includeFunctions);\r\n }\r\n if (forceState !== undefined && openState === forceState) {\r\n return;\r\n }\r\n if (lastSelectedElement === rootDiv) {\r\n if (openState) {\r\n _collapseNode(currentLine);\r\n }\r\n else {\r\n _openNode(currentLine);\r\n }\r\n }\r\n };\r\n rootDiv.onkeydown = function (evt) {\r\n _navHandler(evt, openHandler_1, openState);\r\n };\r\n rootDiv.onclick = function (evt) {\r\n openHandler_1(evt);\r\n };\r\n rootDiv.ontouchend = function (evt) {\r\n openHandler_1(evt);\r\n };\r\n rootDiv.onfocus = function (evt) {\r\n focusHandler(evt, target, level, excludeKeys, includeFunctions);\r\n };\r\n }\r\n return {\r\n root: rootDiv,\r\n isErr: isErr,\r\n matched: matched || childOpened\r\n };\r\n}\r\n//# sourceMappingURL=helpers.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Debug Plugin, 2.8.1
2
+ * Application Insights JavaScript SDK - Debug Plugin, 2.8.2
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/applicationinsights-debugplugin-js",
3
- "version": "2.8.1",
3
+ "version": "2.8.2",
4
4
  "description": "Microsoft Application Insights JavaScript SDK - Debug Plugin extension",
5
5
  "homepage": "https://github.com/microsoft/ApplicationInsights-JS#readme",
6
6
  "author": "Microsoft Application Insights Team",
@@ -45,9 +45,9 @@
45
45
  "tslib": "*"
46
46
  },
47
47
  "dependencies": {
48
- "@microsoft/dynamicproto-js": "^1.1.4",
49
- "@microsoft/applicationinsights-common": "2.8.1",
50
- "@microsoft/applicationinsights-core-js": "2.8.1",
48
+ "@microsoft/dynamicproto-js": "^1.1.5",
49
+ "@microsoft/applicationinsights-common": "2.8.2",
50
+ "@microsoft/applicationinsights-core-js": "2.8.2",
51
51
  "@microsoft/applicationinsights-shims": "2.0.1"
52
52
  },
53
53
  "license": "MIT"
@@ -5,7 +5,7 @@ import {
5
5
  BaseTelemetryPlugin, IConfiguration, arrForEach,
6
6
  IAppInsightsCore, IPlugin, ITelemetryItem, IProcessTelemetryContext, _InternalLogMessage,
7
7
  ITelemetryPluginChain, InstrumentFunc, IInstrumentCallDetails, InstrumentorHooksCallback, IPerfEvent, IChannelControls,
8
- objForEachKey, isFunction, dateNow, isArray, isUndefined, getDebugExt
8
+ objForEachKey, isFunction, dateNow, isArray, isUndefined, getDebugExt, arrIndexOf
9
9
  } from "@microsoft/applicationinsights-core-js";
10
10
  import { Dashboard } from "./components/Dashboard";
11
11
  import { getTargetName } from "./components/helpers";
@@ -162,16 +162,16 @@ export default class DebugPlugin extends BaseTelemetryPlugin {
162
162
  }
163
163
  });
164
164
 
165
- if (trackers.indexOf("eventsSent") !== -1) {
165
+ if (arrIndexOf(trackers, "eventsSent") !== -1) {
166
166
  foundTrackers.push("eventsSent");
167
167
  }
168
- if (trackers.indexOf("eventsSendRequest") !== -1) {
168
+ if (arrIndexOf(trackers, "eventsSendRequest") !== -1) {
169
169
  foundTrackers.push("eventsSendRequest");
170
170
  }
171
- if (trackers.indexOf("eventsDiscarded") !== -1) {
171
+ if (arrIndexOf(trackers, "eventsDiscarded") !== -1) {
172
172
  foundTrackers.push("eventsDiscarded");
173
173
  }
174
- if (trackers.indexOf("perfEvent") !== -1) {
174
+ if (arrIndexOf(trackers, "perfEvent") !== -1) {
175
175
  foundTrackers.push("perfEvent");
176
176
  }
177
177
  }
@@ -217,7 +217,7 @@ export default class DebugPlugin extends BaseTelemetryPlugin {
217
217
  }, true);
218
218
 
219
219
  if (val) {
220
- if (foundTrackers.indexOf(tracker) === -1) {
220
+ if (arrIndexOf(foundTrackers, tracker) === -1) {
221
221
  foundTrackers.push(tracker);
222
222
  }
223
223
  }
@@ -271,7 +271,7 @@ export default class DebugPlugin extends BaseTelemetryPlugin {
271
271
  }
272
272
 
273
273
  function _addTarget(targetObjects: any[], ext:any) {
274
- if (ext && targetObjects.indexOf(ext) === -1) {
274
+ if (ext && arrIndexOf(targetObjects, ext) === -1) {
275
275
  targetObjects.push(ext);
276
276
  return true;
277
277
  }
@@ -1,4 +1,4 @@
1
- import { arrForEach } from "@microsoft/applicationinsights-core-js";
1
+ import { arrForEach, arrIndexOf } from "@microsoft/applicationinsights-core-js";
2
2
  import dynamicProto from "@microsoft/dynamicproto-js";
3
3
  import { tempStyle } from "./styleNodeSrc";
4
4
  import { FilterList } from "./filterList";
@@ -138,11 +138,11 @@ export class Dashboard {
138
138
  }
139
139
 
140
140
  let type = entry.getKind();
141
- let allowOther = excludedTypes.indexOf("other") === -1; // Other types are not excluded
142
- if (trackers.indexOf(type) === -1 && !allowOther) {
141
+ let allowOther = arrIndexOf(excludedTypes, "other") === -1; // Other types are not excluded
142
+ if (arrIndexOf(trackers, type) === -1 && !allowOther) {
143
143
  // Not a tracked type and we are not allowing other types
144
144
  return;
145
- } else if (excludedTypes.indexOf(type) !== -1) {
145
+ } else if (arrIndexOf(excludedTypes, type) !== -1) {
146
146
  // This type is explicitly excluded
147
147
  return;
148
148
  }
@@ -1,6 +1,8 @@
1
1
  // Copyright (c) Microsoft Corporation. All rights reserved.
2
2
  // Licensed under the MIT License.
3
3
 
4
+ import { arrIndexOf } from "@microsoft/applicationinsights-core-js";
5
+
4
6
  export class FilterList {
5
7
 
6
8
  private el: HTMLElement;
@@ -70,7 +72,7 @@ export class FilterList {
70
72
  (ch.childNodes[0] as HTMLElement).className = "checkbox off";
71
73
  }
72
74
  }
73
- _self.filterList.splice(_self.filterList.indexOf(t), 1);
75
+ _self.filterList.splice(arrIndexOf(_self.filterList, t), 1);
74
76
  checkbox.className = "checkbox on";
75
77
  } else {
76
78
  if (evt.shiftKey) {
@@ -233,7 +233,7 @@ export function getTargetKeys(target: any, excludedKeys: string[], includeFuncti
233
233
  if (propKeys) {
234
234
  arrForEach(propKeys, (key) => {
235
235
  const theKey = _toString(key);
236
- if (theKey && keys.indexOf(theKey) === -1) {
236
+ if (theKey && arrIndexOf(keys, theKey) === -1) {
237
237
  keys.push(key);
238
238
  }
239
239
  });
@@ -253,7 +253,7 @@ export function getTargetKeys(target: any, excludedKeys: string[], includeFuncti
253
253
  }
254
254
 
255
255
  const theKey = _toString(key);
256
- if (theKey && excludedKeys.indexOf(theKey) === -1) {
256
+ if (theKey && arrIndexOf(excludedKeys, theKey) === -1) {
257
257
  theKeys.push(theKey);
258
258
  }
259
259
  });
@@ -305,7 +305,7 @@ export function formatLogElements(target: Object, tmLabel: string, key: string,
305
305
  keys.unshift("<maxdepth>");
306
306
  }
307
307
  for (const key of keys) {
308
- if (excludeKeys.indexOf(key) !== -1) {
308
+ if (arrIndexOf(excludeKeys, key) !== -1) {
309
309
  continue;
310
310
  }
311
311
 
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.22.2"
8
+ "packageVersion": "7.23.0"
9
9
  }
10
10
  ]
11
11
  }