main 68ec51069efe cached
1088 files
20.5 MB
5.4M tokens
7460 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (21,732K chars total). Download the full file to get everything.
Repository: microsoft/ApplicationInsights-JS
Branch: main
Commit: 68ec51069efe
Files: 1088
Total size: 20.5 MB

Directory structure:
gitextract_9gu592nz/

├── .aiAutoMinify.json
├── .eslintrc
├── .gitattributes
├── .github/
│   ├── CODEOWNERS
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   ├── codeql/
│   │   └── codeql-config.yml
│   ├── copilot-instructions.md
│   ├── prompts/
│   │   └── release-pr.prompt.md
│   └── workflows/
│       ├── ci.yml
│       ├── codeql-analysis.yml
│       ├── delete-merged-branches.yml
│       ├── jekyll-gh-pages.yml
│       ├── lock.yml
│       ├── stale-assigned.yml
│       └── stale.yml
├── .gitignore
├── .npmignore
├── .travis/
│   ├── test_react_native.sh
│   └── test_rush.sh
├── AISKU/
│   ├── .npmignore
│   ├── API.md
│   ├── LICENSE
│   ├── NOTICE
│   ├── PRIVACY
│   ├── README.md
│   ├── Tests/
│   │   ├── Manual/
│   │   │   ├── HelloWorld.html
│   │   │   ├── README.md
│   │   │   ├── ai1.test.js
│   │   │   ├── ai2.test.js
│   │   │   ├── ai3.test.js
│   │   │   ├── aisku-example-index.gbl.js
│   │   │   ├── latestSnippet.html
│   │   │   ├── span-e2e-manual-test.html
│   │   │   ├── style/
│   │   │   │   └── style.css
│   │   │   └── testVersionConflict.html
│   │   ├── Perf/
│   │   │   └── src/
│   │   │       ├── AISKUPerf.Tests.ts
│   │   │       ├── AISKUPerf.ts
│   │   │       └── aiskuperftests.ts
│   │   ├── PerfTests.html
│   │   ├── Unit/
│   │   │   └── src/
│   │   │       ├── AISKUSize.Tests.ts
│   │   │       ├── CdnPackaging.tests.ts
│   │   │       ├── CdnThrottle.tests.ts
│   │   │       ├── GlobalTestHooks.Test.ts
│   │   │       ├── IAnalyticsConfig.Tests.ts
│   │   │       ├── NonRecordingSpan.Tests.ts
│   │   │       ├── OTelInit.Tests.ts
│   │   │       ├── SnippetInitialization.Tests.ts
│   │   │       ├── SpanContextPropagation.Tests.ts
│   │   │       ├── SpanE2E.Tests.ts
│   │   │       ├── SpanErrorHandling.Tests.ts
│   │   │       ├── SpanHelperUtils.Tests.ts
│   │   │       ├── SpanLifeCycle.Tests.ts
│   │   │       ├── SpanPluginIntegration.Tests.ts
│   │   │       ├── SpanUtils.Tests.ts
│   │   │       ├── StartSpan.Tests.ts
│   │   │       ├── TelemetryItemGeneration.Tests.ts
│   │   │       ├── ThrottleSentMessage.tests.ts
│   │   │       ├── TraceContext.Tests.ts
│   │   │       ├── TraceProvider.Tests.ts
│   │   │       ├── TraceSuppression.Tests.ts
│   │   │       ├── UseSpan.Tests.ts
│   │   │       ├── WithSpan.Tests.ts
│   │   │       ├── aiskuunittests.ts
│   │   │       ├── applicationinsights.e2e.fetch.tests.ts
│   │   │       ├── applicationinsights.e2e.tests.ts
│   │   │       ├── sanitizer.e2e.tests.ts
│   │   │       ├── sender.e2e.tests.ts
│   │   │       ├── testLegacySnippet.ts
│   │   │       ├── testSnippetV5.ts
│   │   │       ├── testSnippetV6.ts
│   │   │       └── validate.e2e.tests.ts
│   │   ├── UnitTests.html
│   │   ├── es6-module-type-check/
│   │   │   ├── package.json
│   │   │   ├── src/
│   │   │   │   └── main.ts
│   │   │   └── tsconfig.json
│   │   └── tsconfig.json
│   ├── api-extractor.json
│   ├── dist-history/
│   │   ├── aisdk.0.0.13.js
│   │   ├── aisdk.0.0.15.js
│   │   ├── aisdk.0.0.17.js
│   │   ├── aisdk.0.0.18.js
│   │   ├── aisdk.0.0.19.js
│   │   ├── aisdk.0.0.8.js
│   │   ├── aisdk.min.0.0.8.js
│   │   └── aisdk.min.0.0.9.js
│   ├── examples/
│   │   └── span-usage-example.ts
│   ├── package.json
│   ├── rollup.config.js
│   ├── samples/
│   │   └── HelloWorld/
│   │       └── index-snippet.html
│   ├── scripts/
│   │   ├── README.md
│   │   ├── listAzCdnVersions.ps1
│   │   ├── publishAzImgToCdn.ps1
│   │   ├── publishAzReleaseToCdn.ps1
│   │   └── setAzActiveCdnVersion.ps1
│   ├── snippet/
│   │   ├── README.md
│   │   └── snippet.js
│   ├── src/
│   │   ├── AISku.ts
│   │   ├── ApplicationInsightsContainer.ts
│   │   ├── IApplicationInsights.ts
│   │   ├── Init.ts
│   │   ├── InternalConstants.ts
│   │   ├── Snippet.ts
│   │   ├── applicationinsights-web.ts
│   │   └── internal/
│   │       └── trace/
│   │           └── spanUtils.ts
│   ├── tsconfig.json
│   ├── tsdoc.json
│   ├── tslint.json
│   └── typedoc.json
├── AISKULight/
│   ├── .npmignore
│   ├── LICENSE
│   ├── NOTICE
│   ├── PRIVACY
│   ├── README.md
│   ├── Tests/
│   │   ├── Unit/
│   │   │   └── src/
│   │   │       ├── AISKULightSize.Tests.ts
│   │   │       ├── GlobalTestHooks.Test.ts
│   │   │       ├── aiskuliteunittests.ts
│   │   │       ├── config.tests.ts
│   │   │       ├── dynamicconfig.tests.ts
│   │   │       └── otelNegative.tests.ts
│   │   ├── UnitTests.html
│   │   └── tsconfig.json
│   ├── api-extractor.json
│   ├── build.cmd
│   ├── dist-history/
│   │   ├── aisdklight.js
│   │   └── aisdklite.0.0.3.js
│   ├── package.json
│   ├── rollup.config.js
│   ├── src/
│   │   └── index.ts
│   ├── tsconfig.json
│   ├── tsdoc.json
│   ├── tslint.json
│   └── typedoc.json
├── API-reference.md
├── CODEOWNERS
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── NOTICE
├── PRIVACY
├── README.md
├── RELEASES.md
├── SECURITY.md
├── SUPPORT.md
├── ThirdPartyNotices.txt
├── TreeShakingRecommendations.md
├── channels/
│   ├── 1ds-post-js/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── CODE_OF_CONDUCT.md
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE.TXT
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── SECURITY.md
│   │   ├── SUPPORT.md
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── BatchNotificationActions.ts
│   │   │   ├── ClockSkewManager.ts
│   │   │   ├── DataModels.ts
│   │   │   ├── EventBatch.ts
│   │   │   ├── HttpManager.ts
│   │   │   ├── Index.ts
│   │   │   ├── InternalConstants.ts
│   │   │   ├── KillSwitch.ts
│   │   │   ├── PostChannel.ts
│   │   │   ├── RetryPolicy.ts
│   │   │   ├── Serializer.ts
│   │   │   ├── TimeoutOverrideWrapper.ts
│   │   │   └── typings/
│   │   │       └── XDomainRequest.ts
│   │   ├── test/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── FileSizeCheckTest.ts
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── HttpManagerTest.ts
│   │   │   │       ├── KillSwitchTest.ts
│   │   │   │       ├── PostChannelTest.ts
│   │   │   │       ├── SerializerTest.ts
│   │   │   │       ├── TestHelper.ts
│   │   │   │       └── post.unittests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   ├── applicationinsights-channel-js/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── Sample.tests.ts
│   │   │   │       ├── Sender.tests.ts
│   │   │   │       ├── StatsBeat.tests.ts
│   │   │   │       └── aichannel.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── EnvelopeCreator.ts
│   │   │   ├── Interfaces/
│   │   │   │   └── Contracts/
│   │   │   │       └── IRequestData.ts
│   │   │   ├── Interfaces.ts
│   │   │   ├── InternalConstants.ts
│   │   │   ├── SendBuffer.ts
│   │   │   ├── Sender.ts
│   │   │   ├── Serializer.ts
│   │   │   ├── Telemetry/
│   │   │   │   ├── Common/
│   │   │   │   │   └── Data.ts
│   │   │   │   ├── RemoteDependencyData.ts
│   │   │   │   └── RequestData.ts
│   │   │   ├── TelemetryProcessors/
│   │   │   │   ├── Sample.ts
│   │   │   │   └── SamplingScoreGenerators/
│   │   │   │       ├── HashCodeScoreGenerator.ts
│   │   │   │       └── SamplingScoreGenerator.ts
│   │   │   └── applicationinsights-channel-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── offline-channel-js/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── CODE_OF_CONDUCT.md
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE.TXT
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── SECURITY.md
│   │   ├── SUPPORT.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── IndexedDB.tests.ts
│   │   │   │       ├── TestHelper.ts
│   │   │   │       ├── channel.tests.ts
│   │   │   │       ├── customprovider.tests.ts
│   │   │   │       ├── dbprovider.tests.ts
│   │   │   │       ├── inmemorybatch.tests.ts
│   │   │   │       ├── offlinebatchhandler.tests.ts
│   │   │   │       ├── offlinechannel.tests.ts
│   │   │   │       ├── offlinetimer.tests.ts
│   │   │   │       └── webprovider.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── Helpers/
│   │   │   │   └── Utils.ts
│   │   │   ├── InMemoryBatch.ts
│   │   │   ├── Interfaces/
│   │   │   │   ├── IInMemoryBatch.ts
│   │   │   │   ├── IOfflineBatch.ts
│   │   │   │   ├── IOfflineIndexDb.ts
│   │   │   │   ├── IOfflineProvider.ts
│   │   │   │   └── ISender.ts
│   │   │   ├── OfflineBatchHandler.ts
│   │   │   ├── OfflineChannel.ts
│   │   │   ├── PayloadHelper.ts
│   │   │   ├── Providers/
│   │   │   │   ├── IndexDbHelper.ts
│   │   │   │   ├── IndexDbProvider.ts
│   │   │   │   └── WebStorageProvider.ts
│   │   │   ├── Sender.ts
│   │   │   └── applicationinsights-offlinechannel-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   └── tee-channel-js/
│       ├── .npmignore
│       ├── LICENSE
│       ├── NOTICE
│       ├── PRIVACY
│       ├── README.md
│       ├── Tests/
│       │   ├── Unit/
│       │   │   └── src/
│       │   │       ├── GlobalTestHooks.Test.ts
│       │   │       ├── TeeChannelCore.Tests.ts
│       │   │       └── teechannel.tests.ts
│       │   ├── UnitTests.html
│       │   └── tsconfig.json
│       ├── api-extractor.json
│       ├── package.json
│       ├── rollup.config.js
│       ├── src/
│       │   ├── ChannelController.ts
│       │   ├── Interfaces/
│       │   │   └── ITeeChannelConfig.ts
│       │   ├── TeeChannel.ts
│       │   └── applicationinsights-teechannel-js.ts
│       ├── tsconfig.json
│       ├── tsdoc.json
│       └── typedoc.json
├── common/
│   ├── Tests/
│   │   ├── External/
│   │   │   ├── blanket-1.2.2.js
│   │   │   ├── blanket-reporter.js
│   │   │   ├── jquery.d.ts
│   │   │   ├── magic-string.umd.js
│   │   │   ├── qunit-1.23.1.css
│   │   │   ├── qunit-1.23.1.js
│   │   │   ├── qunit-2.9.1.css
│   │   │   ├── qunit-2.9.1.js
│   │   │   ├── qunit-2.9.3.css
│   │   │   ├── qunit-2.9.3.js
│   │   │   ├── qunit.d.ts
│   │   │   ├── require-2.2.0.js
│   │   │   ├── require-2.3.6.js
│   │   │   ├── sinon-1.17.2.js
│   │   │   ├── sinon-2.3.8.js
│   │   │   ├── sinon-7.3.1.js
│   │   │   ├── sinon.d.ts
│   │   │   ├── whatwg-fetch.3.0.0.js
│   │   │   └── whatwg-fetch.3.6.2.js
│   │   ├── Framework/
│   │   │   ├── package.json
│   │   │   ├── rollup.config.js
│   │   │   ├── src/
│   │   │   │   ├── AITestClass.ts
│   │   │   │   ├── Assert.ts
│   │   │   │   ├── DebugHelpers.ts
│   │   │   │   ├── PollingAssert.ts
│   │   │   │   ├── StepResult.ts
│   │   │   │   ├── TelemetryValidation/
│   │   │   │   │   ├── CommonValidator.ts
│   │   │   │   │   ├── EventValidator.ts
│   │   │   │   │   ├── ExceptionValidator.ts
│   │   │   │   │   ├── ITypeValidator.ts
│   │   │   │   │   ├── MetricValidator.ts
│   │   │   │   │   ├── PageViewPerformanceValidator.ts
│   │   │   │   │   ├── PageViewValidator.ts
│   │   │   │   │   ├── RemoteDepdencyValidator.ts
│   │   │   │   │   └── TraceValidator.ts
│   │   │   │   ├── TestHelper.ts
│   │   │   │   ├── ai-test-framework.ts
│   │   │   │   └── interfaces/
│   │   │   │       ├── FakeXMLHttpRequest.ts
│   │   │   │       ├── IASyncQueue.ts
│   │   │   │       ├── IBeaconRequest.ts
│   │   │   │       ├── IFetchRequest.ts
│   │   │   │       ├── ITestCase.ts
│   │   │   │       ├── ITestCaseAsync.ts
│   │   │   │       └── ITestContext.ts
│   │   │   └── tsconfig.json
│   │   └── Selenium/
│   │       ├── ExceptionHelper.js
│   │       └── ModuleLoader.js
│   ├── changes/
│   │   └── @microsoft/
│   │       └── applicationinsights-web/
│   │           └── markwolff-refactor_readme_2019-10-04-20-34.json
│   ├── config/
│   │   └── rush/
│   │       ├── .npmrc
│   │       ├── command-line.json
│   │       ├── common-versions.json
│   │       ├── npm-shrinkwrap.json
│   │       └── version-policies.json
│   └── scripts/
│       ├── install-run-rush-silent.js
│       ├── install-run-rush.js
│       ├── install-run-rushx.js
│       ├── install-run-silent.js
│       └── install-run.js
├── docs/
│   ├── API-reference.md
│   ├── Dependency.md
│   ├── ExtensionErrorSteps.md
│   ├── OTel/
│   │   ├── README.md
│   │   ├── examples.md
│   │   ├── otelApi.md
│   │   ├── startActiveSpan.md
│   │   ├── traceApi.md
│   │   ├── useSpan.md
│   │   └── withSpan.md
│   ├── PageUnloadEvents.md
│   ├── PerformanceMonitoring.md
│   ├── README.md
│   ├── SdkLoadFailure.md
│   ├── SdkLoadFailureSteps.md
│   ├── ThrottleMgr.md
│   ├── WebConfig.md
│   ├── es3_Support.md
│   ├── exceptionTelemetry.md
│   ├── upgrade/
│   │   ├── MergeCommonToCore.md
│   │   ├── v2_UpgradeGuide.md
│   │   └── v3_BreakingChanges.md
│   └── webSdk/
│       └── README.md
├── examples/
│   ├── AISKU/
│   │   ├── README.md
│   │   ├── index.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── aisku-example-index.ts
│   │   │   ├── aisku-init.ts
│   │   │   └── utils.ts
│   │   ├── style/
│   │   │   └── style.css
│   │   └── tsconfig.json
│   ├── README.md
│   ├── cfgSync/
│   │   ├── CfgSync.html
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── example-cfgsync-index.ts
│   │   │   ├── example-cfgsync-init.ts
│   │   │   ├── listener1.ts
│   │   │   ├── listener2.ts
│   │   │   └── main.ts
│   │   └── tsconfig.json
│   ├── dependency/
│   │   ├── README.md
│   │   ├── index.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── appinsights-init.ts
│   │   │   ├── dependencies-example-index.ts
│   │   │   ├── startSpan-example.ts
│   │   │   └── utils.ts
│   │   ├── style/
│   │   │   └── style.css
│   │   └── tsconfig.json
│   ├── shared-worker/
│   │   ├── README.md
│   │   ├── SharedWorker.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── example-shared-worker.ts
│   │   │   ├── interfaces/
│   │   │   │   └── IExampleMessage.ts
│   │   │   ├── worker-npm-init.ts
│   │   │   ├── worker.ts
│   │   │   └── worker2.ts
│   │   └── tsconfig.json
│   └── startSpan/
│       ├── package.json
│       ├── rollup.config.js
│       ├── src/
│       │   ├── startSpanExample.ts
│       │   └── startspan-example-index.ts
│       └── tsconfig.json
├── extensions/
│   ├── applicationinsights-analytics-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── AnalyticsExtensionSize.tests.ts
│   │   │   │       ├── AnalyticsPlugin.tests.ts
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── TelemetryItemCreator.tests.ts
│   │   │   │       └── appinsights-analytics.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── JavaScriptSDK/
│   │   │   │   ├── AnalyticsPlugin.ts
│   │   │   │   ├── Interfaces/
│   │   │   │   │   └── IAnalyticsConfig.ts
│   │   │   │   ├── Telemetry/
│   │   │   │   │   ├── PageViewManager.ts
│   │   │   │   │   ├── PageViewPerformanceManager.ts
│   │   │   │   │   └── PageVisitTimeManager.ts
│   │   │   │   └── Timing.ts
│   │   │   └── applicationinsights-analytics-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-angularplugin-js/
│   │   ├── README.md
│   │   └── tsdoc.json
│   ├── applicationinsights-cfgsync-js/
│   │   ├── .npmignore
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── cfgsync.tests.ts
│   │   │   │       ├── cfgsynchelper.tests.ts
│   │   │   │       └── cfgsyncplugin.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── CfgSyncHelperFuncs.ts
│   │   │   ├── CfgSyncPlugin.ts
│   │   │   ├── Interfaces/
│   │   │   │   ├── ICfgSyncCdnConfig.ts
│   │   │   │   ├── ICfgSyncConfig.ts
│   │   │   │   └── ICfgSyncPlugin.ts
│   │   │   └── applicationinsights-cfgsync-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-clickanalytics-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── ClickEventTest.ts
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       └── appinsights-clickanalytics.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── Behaviours.ts
│   │   │   ├── ClickAnalyticsPlugin.ts
│   │   │   ├── DataCollector.ts
│   │   │   ├── Enums.ts
│   │   │   ├── Interfaces/
│   │   │   │   └── Datamodel.ts
│   │   │   ├── applicationinsights-clickanalytics-js.ts
│   │   │   ├── common/
│   │   │   │   └── Utils.ts
│   │   │   ├── events/
│   │   │   │   ├── PageAction.ts
│   │   │   │   └── WebEvent.ts
│   │   │   └── handlers/
│   │   │       ├── AutoCaptureHandler.ts
│   │   │       └── DomContentHandler.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-debugplugin-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── sample/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   └── public/
│   │   │       ├── index.html
│   │   │       └── sample.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── DebugPlugin.ts
│   │   │   ├── applicationinsights-debugplugin-js.ts
│   │   │   ├── components/
│   │   │   │   ├── Dashboard.ts
│   │   │   │   ├── LogEntry.ts
│   │   │   │   ├── debugBins.ts
│   │   │   │   ├── filterList.ts
│   │   │   │   ├── helpers.ts
│   │   │   │   └── styleNodeSrc.ts
│   │   │   ├── interfaces/
│   │   │   │   └── IDebugPluginConfig.ts
│   │   │   └── localization/
│   │   │       └── EN-US.json
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-dependencies-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── TestChannelPlugin.ts
│   │   │   │       ├── W3CTraceStateDependency.tests.ts
│   │   │   │       ├── ajax.tests.ts
│   │   │   │       └── dependencies.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── DependencyInitializer.ts
│   │   │   ├── DependencyListener.ts
│   │   │   ├── InternalConstants.ts
│   │   │   ├── ajax.ts
│   │   │   ├── ajaxRecord.ts
│   │   │   └── applicationinsights-dependencies-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-osplugin-js/
│   │   ├── .npmignore
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── OsPluginTest.ts
│   │   │   │       └── applicationinsights-osplugin.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── DataModels.ts
│   │   │   ├── OsPlugin.ts
│   │   │   └── applicationinsights-osplugin-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   ├── applicationinsights-perfmarkmeasure-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── MarkMeasureTests.ts
│   │   │   │       └── appinsights-perfmarkmeasure.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── example/
│   │   │   └── cdn-usage.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── PerfMarkMeasureManager.ts
│   │   │   ├── applicationinsights-perfmarkmeasure-js.ts
│   │   │   └── interfaces/
│   │   │       └── IPerfMarkMeasureConfiguration.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-properties-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── SessionManager.Tests.ts
│   │   │   │       ├── TelemetryContext.Tests.ts
│   │   │   │       ├── TestChannelPlugin.ts
│   │   │   │       ├── prop.tests.ts
│   │   │   │       ├── properties.tests.ts
│   │   │   │       └── propertiesSize.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── Context/
│   │   │   │   ├── Application.ts
│   │   │   │   ├── Device.ts
│   │   │   │   ├── Internal.ts
│   │   │   │   ├── Location.ts
│   │   │   │   ├── Session.ts
│   │   │   │   └── User.ts
│   │   │   ├── Interfaces/
│   │   │   │   ├── IPropTelemetryContext.ts
│   │   │   │   └── IPropertiesConfig.ts
│   │   │   ├── PropertiesPlugin.ts
│   │   │   ├── TelemetryContext.ts
│   │   │   └── applicationinsights-properties-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-react-js/
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   └── README.md
│   └── applicationinsights-react-native/
│       ├── NOTICE
│       ├── PRIVACY
│       └── README.md
├── gruntfile.js
├── legacy/
│   └── README.md
├── nuget/
│   └── Microsoft.ApplicationInsights.JavaScript.Snippet.nuspec
├── package.json
├── policheck-exclusions.xml
├── rollup.base.config.js
├── rush.json
├── scripts/
│   └── dtsgen.js
├── shared/
│   ├── 1ds-core-js/
│   │   ├── .npmignore
│   │   ├── CODE_OF_CONDUCT.md
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE.TXT
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── SECURITY.md
│   │   ├── SUPPORT.md
│   │   ├── api-extractor.json
│   │   ├── auto-minify.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   └── Index.ts
│   │   ├── test/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── FileSizeCheckTest.ts
│   │   │   │       └── core.unittests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   ├── AppInsightsCommon/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   └── applicationinsights-common.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   └── AppInsightsCore/
│       ├── .npmignore
│       ├── CONTRIBUTING.md
│       ├── LICENSE
│       ├── NOTICE
│       ├── PRIVACY
│       ├── README.md
│       ├── SpanImplementationSummary.md
│       ├── Span_Implementation_Refactoring_Summary.md
│       ├── Tests/
│       │   ├── Perf/
│       │   │   ├── src/
│       │   │   │   ├── CorePerfCheck.Tests.ts
│       │   │   │   └── aiperftests.ts
│       │   │   └── tsconfig.json
│       │   ├── PerfTests.html
│       │   ├── Unit/
│       │   │   └── src/
│       │   │       ├── OpenTelemetry/
│       │   │       │   ├── commonUtils.Tests.ts
│       │   │       │   ├── errors.Tests.ts
│       │   │       │   └── otelNegative.Tests.ts
│       │   │       ├── ai/
│       │   │       │   ├── AppInsightsCommon.tests.ts
│       │   │       │   ├── AppInsightsCoreSize.Tests.ts
│       │   │       │   ├── ApplicationInsightsCore.Tests.ts
│       │   │       │   ├── ConnectionStringParser.tests.ts
│       │   │       │   ├── CookieManager.Tests.ts
│       │   │       │   ├── EventHelper.Tests.ts
│       │   │       │   ├── EventsDiscardedReason.Tests.ts
│       │   │       │   ├── Exception.tests.ts
│       │   │       │   ├── GlobalTestHooks.Test.ts
│       │   │       │   ├── HelperFunc.Tests.ts
│       │   │       │   ├── LoggingEnum.Tests.ts
│       │   │       │   ├── RequestHeaders.tests.ts
│       │   │       │   ├── SendPostManager.Tests.ts
│       │   │       │   ├── SeverityLevel.tests.ts
│       │   │       │   ├── StatsBeat.Tests.ts
│       │   │       │   ├── TestPlugins.ts
│       │   │       │   ├── ThrottleMgr.tests.ts
│       │   │       │   ├── UpdateConfig.Tests.ts
│       │   │       │   └── Util.tests.ts
│       │   │       ├── aiunittests.ts
│       │   │       ├── attribute/
│       │   │       │   └── attributeContainer.Tests.ts
│       │   │       ├── config/
│       │   │       │   ├── Dynamic.Tests.ts
│       │   │       │   └── DynamicConfig.Tests.ts
│       │   │       ├── ext/
│       │   │       │   ├── CoreTest.ts
│       │   │       │   ├── DynamicProtoTests.ts
│       │   │       │   ├── ESPromiseSchedulerTests.ts
│       │   │       │   ├── ESPromiseTests.ts
│       │   │       │   ├── GlobalTestHooks.Test.ts
│       │   │       │   ├── SpanUtilsTests.ts
│       │   │       │   ├── TestHelper.ts
│       │   │       │   ├── UtilsTest.ts
│       │   │       │   └── ValueSanitizerTests.ts
│       │   │       └── trace/
│       │   │           ├── W3CTraceStateModes.tests.ts
│       │   │           ├── W3cTraceParentTests.ts
│       │   │           ├── W3cTraceState.Tests.ts
│       │   │           ├── span.Tests.ts
│       │   │           ├── traceState.Tests.ts
│       │   │           └── traceUtils.Tests.ts
│       │   ├── UnitTests.html
│       │   └── tsconfig.json
│       ├── api-extractor.json
│       ├── package.json
│       ├── rollup.config.js
│       ├── src/
│       │   ├── config/
│       │   │   ├── ConfigDefaultHelpers.ts
│       │   │   ├── ConfigDefaults.ts
│       │   │   ├── DynamicConfig.ts
│       │   │   ├── DynamicProperty.ts
│       │   │   ├── DynamicState.ts
│       │   │   └── DynamicSupport.ts
│       │   ├── constants/
│       │   │   ├── Constants.ts
│       │   │   └── InternalConstants.ts
│       │   ├── core/
│       │   │   ├── AggregationError.ts
│       │   │   ├── AppInsightsCore.ts
│       │   │   ├── AsyncUtils.ts
│       │   │   ├── BaseTelemetryPlugin.ts
│       │   │   ├── CookieMgr.ts
│       │   │   ├── DbgExtensionUtils.ts
│       │   │   ├── InstrumentHooks.ts
│       │   │   ├── NotificationManager.ts
│       │   │   ├── PerfManager.ts
│       │   │   ├── ProcessTelemetryContext.ts
│       │   │   ├── ResponseHelpers.ts
│       │   │   ├── SenderPostManager.ts
│       │   │   ├── StatsBeat.ts
│       │   │   ├── TelemetryHelpers.ts
│       │   │   ├── TelemetryInitializerPlugin.ts
│       │   │   ├── UnloadHandlerContainer.ts
│       │   │   └── UnloadHookContainer.ts
│       │   ├── diagnostics/
│       │   │   ├── DiagnosticLogger.ts
│       │   │   └── ThrottleMgr.ts
│       │   ├── enums/
│       │   │   ├── EnumHelperFuncs.ts
│       │   │   ├── W3CTraceFlags.ts
│       │   │   ├── ai/
│       │   │   │   ├── DependencyTypes.ts
│       │   │   │   ├── Enums.ts
│       │   │   │   ├── EventsDiscardedReason.ts
│       │   │   │   ├── FeatureOptInEnums.ts
│       │   │   │   ├── InitActiveStatusEnum.ts
│       │   │   │   ├── LoggingEnums.ts
│       │   │   │   ├── SendRequestReason.ts
│       │   │   │   ├── StatsType.ts
│       │   │   │   ├── TelemetryUnloadReason.ts
│       │   │   │   ├── TelemetryUpdateReason.ts
│       │   │   │   ├── TraceHeadersMode.ts
│       │   │   │   └── UrlRedactionOptions.ts
│       │   │   ├── ext/
│       │   │   │   └── Enums.ts
│       │   │   └── otel/
│       │   │       ├── OTelSamplingDecision.ts
│       │   │       ├── OTelSpanKind.ts
│       │   │       ├── OTelSpanStatus.ts
│       │   │       └── eAttributeChangeOp.ts
│       │   ├── ext/
│       │   │   ├── AppInsightsExtCore.ts
│       │   │   ├── ValueSanitizer.ts
│       │   │   ├── extSpanUtils.ts
│       │   │   └── extUtils.ts
│       │   ├── index.ts
│       │   ├── interfaces/
│       │   │   ├── IException.ts
│       │   │   ├── IOTelHrTime.ts
│       │   │   ├── ai/
│       │   │   │   ├── ConnectionString.ts
│       │   │   │   ├── IAppInsights.ts
│       │   │   │   ├── IAppInsightsCore.ts
│       │   │   │   ├── IChannelControls.ts
│       │   │   │   ├── IChannelControlsHost.ts
│       │   │   │   ├── IConfig.ts
│       │   │   │   ├── IConfiguration.ts
│       │   │   │   ├── ICookieMgr.ts
│       │   │   │   ├── ICorrelationConfig.ts
│       │   │   │   ├── IDbgExtension.ts
│       │   │   │   ├── IDependencyTelemetry.ts
│       │   │   │   ├── IDiagnosticLogger.ts
│       │   │   │   ├── IDistributedTraceContext.ts
│       │   │   │   ├── IEventTelemetry.ts
│       │   │   │   ├── IExceptionConfig.ts
│       │   │   │   ├── IExceptionTelemetry.ts
│       │   │   │   ├── IFeatureOptIn.ts
│       │   │   │   ├── IInstrumentHooks.ts
│       │   │   │   ├── IMetricTelemetry.ts
│       │   │   │   ├── INetworkStatsbeat.ts
│       │   │   │   ├── INotificationListener.ts
│       │   │   │   ├── INotificationManager.ts
│       │   │   │   ├── IPageViewPerformanceTelemetry.ts
│       │   │   │   ├── IPageViewTelemetry.ts
│       │   │   │   ├── IPartC.ts
│       │   │   │   ├── IPerfEvent.ts
│       │   │   │   ├── IPerfManager.ts
│       │   │   │   ├── IProcessTelemetryContext.ts
│       │   │   │   ├── IPropertiesPlugin.ts
│       │   │   │   ├── IRequestContext.ts
│       │   │   │   ├── IRequestTelemetry.ts
│       │   │   │   ├── ISenderPostManager.ts
│       │   │   │   ├── IStatsBeat.ts
│       │   │   │   ├── IStatsEventData.ts
│       │   │   │   ├── IStatsMgr.ts
│       │   │   │   ├── IStorageBuffer.ts
│       │   │   │   ├── ITelemetryContext.ts
│       │   │   │   ├── ITelemetryInitializers.ts
│       │   │   │   ├── ITelemetryItem.ts
│       │   │   │   ├── ITelemetryPlugin.ts
│       │   │   │   ├── ITelemetryPluginChain.ts
│       │   │   │   ├── ITelemetryUnloadState.ts
│       │   │   │   ├── ITelemetryUpdateState.ts
│       │   │   │   ├── IThrottleMgr.ts
│       │   │   │   ├── ITraceParent.ts
│       │   │   │   ├── ITraceProvider.ts
│       │   │   │   ├── ITraceTelemetry.ts
│       │   │   │   ├── IUnloadHook.ts
│       │   │   │   ├── IUnloadableComponent.ts
│       │   │   │   ├── IW3cTraceState.ts
│       │   │   │   ├── IXDomainRequest.ts
│       │   │   │   ├── IXHROverride.ts
│       │   │   │   ├── PartAExtensions.ts
│       │   │   │   ├── context/
│       │   │   │   │   ├── IApplication.ts
│       │   │   │   │   ├── IDevice.ts
│       │   │   │   │   ├── IInternal.ts
│       │   │   │   │   ├── ILocation.ts
│       │   │   │   │   ├── IOperatingSystem.ts
│       │   │   │   │   ├── ISample.ts
│       │   │   │   │   ├── ISession.ts
│       │   │   │   │   ├── ISessionManager.ts
│       │   │   │   │   ├── ITelemetryTrace.ts
│       │   │   │   │   ├── IUser.ts
│       │   │   │   │   └── IWeb.ts
│       │   │   │   ├── contracts/
│       │   │   │   │   ├── AvailabilityData.ts
│       │   │   │   │   ├── ContextTagKeys.ts
│       │   │   │   │   ├── DataPointType.ts
│       │   │   │   │   ├── DependencyKind.ts
│       │   │   │   │   ├── DependencySourceType.ts
│       │   │   │   │   ├── IBase.ts
│       │   │   │   │   ├── IData.ts
│       │   │   │   │   ├── IDataPoint.ts
│       │   │   │   │   ├── IDomain.ts
│       │   │   │   │   ├── IEventData.ts
│       │   │   │   │   ├── IExceptionData.ts
│       │   │   │   │   ├── IExceptionDetails.ts
│       │   │   │   │   ├── IMessageData.ts
│       │   │   │   │   ├── IMetricData.ts
│       │   │   │   │   ├── IPageViewData.ts
│       │   │   │   │   ├── IPageViewPerfData.ts
│       │   │   │   │   ├── IRemoteDependencyData.ts
│       │   │   │   │   ├── IStackFrame.ts
│       │   │   │   │   └── SeverityLevel.ts
│       │   │   │   └── telemetry/
│       │   │   │       ├── IEnvelope.ts
│       │   │   │       └── ISerializable.ts
│       │   │   ├── config/
│       │   │   │   ├── IConfigDefaults.ts
│       │   │   │   ├── IDynamicConfigHandler.ts
│       │   │   │   ├── IDynamicPropertyHandler.ts
│       │   │   │   ├── IDynamicWatcher.ts
│       │   │   │   └── _IDynamicConfigHandlerState.ts
│       │   │   ├── ext/
│       │   │   │   └── DataModels.ts
│       │   │   └── otel/
│       │   │       ├── IOTelApi.ts
│       │   │       ├── IOTelApiCtx.ts
│       │   │       ├── IOTelAttributes.ts
│       │   │       ├── attribute/
│       │   │       │   └── IAttributeContainer.ts
│       │   │       ├── config/
│       │   │       │   ├── IOTelAttributeLimits.ts
│       │   │       │   ├── IOTelConfig.ts
│       │   │       │   ├── IOTelErrorHandlers.ts
│       │   │       │   ├── IOTelSpanLimits.ts
│       │   │       │   └── IOTelTraceCfg.ts
│       │   │       └── trace/
│       │   │           ├── IOTelSpan.ts
│       │   │           ├── IOTelSpanContext.ts
│       │   │           ├── IOTelSpanCtx.ts
│       │   │           ├── IOTelSpanOptions.ts
│       │   │           ├── IOTelSpanStatus.ts
│       │   │           ├── IOTelTraceApi.ts
│       │   │           ├── IOTelTraceState.ts
│       │   │           ├── IOTelTracer.ts
│       │   │           ├── IOTelTracerOptions.ts
│       │   │           ├── IOTelTracerProvider.ts
│       │   │           └── IReadableSpan.ts
│       │   ├── internal/
│       │   │   ├── EventHelpers.ts
│       │   │   ├── attributeHelpers.ts
│       │   │   ├── commonUtils.ts
│       │   │   ├── handleErrors.ts
│       │   │   ├── noopHelpers.ts
│       │   │   └── timeHelpers.ts
│       │   ├── otel/
│       │   │   ├── api/
│       │   │   │   ├── OTelApi.ts
│       │   │   │   ├── errors/
│       │   │   │   │   ├── OTelError.ts
│       │   │   │   │   ├── OTelInvalidAttributeError.ts
│       │   │   │   │   └── OTelSpanError.ts
│       │   │   │   └── trace/
│       │   │   │       ├── span.ts
│       │   │   │       ├── spanContext.ts
│       │   │   │       ├── traceApi.ts
│       │   │   │       ├── traceProvider.ts
│       │   │   │       ├── traceState.ts
│       │   │   │       ├── tracer.ts
│       │   │   │       ├── tracerProvider.ts
│       │   │   │       └── utils.ts
│       │   │   └── attribute/
│       │   │       ├── SemanticConventions.ts
│       │   │       └── attributeContainer.ts
│       │   ├── telemetry/
│       │   │   ├── ConnectionStringParser.ts
│       │   │   ├── RequestResponseHeaders.ts
│       │   │   ├── TelemetryItemCreator.ts
│       │   │   ├── W3cTraceState.ts
│       │   │   └── ai/
│       │   │       ├── Common/
│       │   │       │   ├── Data.ts
│       │   │       │   ├── DataPoint.ts
│       │   │       │   ├── DataSanitizer.ts
│       │   │       │   └── Envelope.ts
│       │   │       ├── DataTypes.ts
│       │   │       ├── EnvelopeTypes.ts
│       │   │       ├── Event.ts
│       │   │       ├── Exception.ts
│       │   │       ├── Metric.ts
│       │   │       ├── PageView.ts
│       │   │       ├── PageViewPerformance.ts
│       │   │       ├── RemoteDependencyData.ts
│       │   │       └── Trace.ts
│       │   └── utils/
│       │       ├── CoreUtils.ts
│       │       ├── DataCacheHelper.ts
│       │       ├── DomHelperFuncs.ts
│       │       ├── EnvUtils.ts
│       │       ├── HelperFuncs.ts
│       │       ├── Offline.ts
│       │       ├── RandomHelper.ts
│       │       ├── StorageHelperFuncs.ts
│       │       ├── TraceParent.ts
│       │       ├── UrlHelperFuncs.ts
│       │       └── Util.ts
│       ├── tsconfig.json
│       ├── tsdoc.json
│       ├── tslint.json
│       └── typedoc.json
├── tools/
│   ├── applicationinsights-web-snippet/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── SnippetTests.ts
│   │   │   │       └── snippet.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   ├── manual/
│   │   │   │   ├── cspUseNounceTest.html
│   │   │   │   └── cspUsePolicyTest.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── createAiSnippet.js
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── rollupOneDSSnippet.config.js
│   │   ├── rollupSnippet.config.js
│   │   ├── src/
│   │   │   ├── 1dsSupport.ts
│   │   │   ├── 1dsType.ts
│   │   │   ├── aiSupport.ts
│   │   │   ├── applicationinsights-web-snippet.ts
│   │   │   ├── common/
│   │   │   │   └── utils.ts
│   │   │   ├── snippet-config.jsonc
│   │   │   ├── snippet.ts
│   │   │   ├── support.ts
│   │   │   └── type.ts
│   │   ├── trustedTypeSupport.md
│   │   ├── tsconfig.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── chrome-debug-extension/
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── manifest.json
│   │   ├── package.json
│   │   ├── pages/
│   │   │   └── popup.html
│   │   ├── rollup.config.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── Enums.ts
│   │   │   ├── LogEntry.ts
│   │   │   ├── UpdateCheck.ts
│   │   │   ├── background.ts
│   │   │   ├── components/
│   │   │   │   ├── IFilterSettings.ts
│   │   │   │   ├── configurationSelection.tsx
│   │   │   │   ├── eventDetails.tsx
│   │   │   │   ├── eventTable.tsx
│   │   │   │   ├── eventTypeCounter.tsx
│   │   │   │   ├── eventTypeFilter.tsx
│   │   │   │   ├── eventTypeIcon.tsx
│   │   │   │   ├── optionsBar.tsx
│   │   │   │   ├── splitPanel.tsx
│   │   │   │   └── telemetryViewer.tsx
│   │   │   ├── configuration/
│   │   │   │   ├── Configuration.types.ts
│   │   │   │   ├── IConfiguration.ts
│   │   │   │   ├── IPopupSettings.ts
│   │   │   │   ├── PopupConfigCache.ts
│   │   │   │   ├── configuration.ts
│   │   │   │   └── defaultConfiguration.ts
│   │   │   ├── contentLoad.ts
│   │   │   ├── dataSources/
│   │   │   │   ├── IDataEvent.ts
│   │   │   │   ├── IDataSource.ts
│   │   │   │   ├── dataHelpers.ts
│   │   │   │   ├── dataSources.ts
│   │   │   │   ├── defaultDataSource.ts
│   │   │   │   └── noOpDataSource.ts
│   │   │   ├── helpers.ts
│   │   │   ├── interfaces/
│   │   │   │   └── IMessage.ts
│   │   │   ├── pageHelper.ts
│   │   │   ├── popup.tsx
│   │   │   ├── session.ts
│   │   │   └── telemetryViewerPopup.tsx
│   │   ├── styles/
│   │   │   └── popup.css
│   │   └── tsconfig.json
│   ├── config/
│   │   ├── README.md
│   │   ├── config.json
│   │   ├── package.json
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   └── test-config.json
│   ├── github-page-script-injection/
│   │   └── injectScript.js
│   ├── grunt-tasks/
│   │   ├── chrome/
│   │   │   └── bridge.js
│   │   ├── minifyNames.js
│   │   ├── qunit.js
│   │   └── stringReplace.js
│   ├── release-tools/
│   │   ├── README.md
│   │   ├── npm_package.js
│   │   ├── npm_publish.js
│   │   ├── npm_set_latest.js
│   │   ├── package.json
│   │   ├── package_groups.json
│   │   ├── setVersion.js
│   │   ├── updatemanifest.js
│   │   └── zipbrowser.js
│   ├── rollup-es5/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── Es5Rollup.Tests.ts
│   │   │   │       └── Es5RollupTests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── ImportCheck.ts
│   │   │   ├── applicationinsights-rollup-es5.ts
│   │   │   └── es5/
│   │   │       ├── Es5Check.ts
│   │   │       ├── Es5Poly.ts
│   │   │       ├── Es5Tokens.ts
│   │   │       ├── FormatError.ts
│   │   │       ├── Interfaces.ts
│   │   │       └── Utils.ts
│   │   ├── tsconfig.json
│   │   └── tslint.json
│   ├── rollup-plugin-uglify3-js/
│   │   ├── .eslintrc
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   └── uglify3-js.ts
│   │   └── tsconfig.json
│   ├── shims/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── ShimsTests.ts
│   │   │   │       └── shims.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── Constants.ts
│   │   │   ├── TsLibGlobals.ts
│   │   │   ├── TsLibShims.ts
│   │   │   └── applicationinsights-shims.ts
│   │   ├── tsconfig.json
│   │   └── tslint.json
│   ├── sizeImageGenerator/
│   │   ├── package.json
│   │   └── size-image-generator.js
│   ├── status-tools/
│   │   ├── github-status.js
│   │   └── package.json
│   ├── subResourceIntegrity/
│   │   └── generateIntegrityFile.js
│   └── updateDistEsm/
│       └── updateDistEsm.js
├── tsconfig.json
├── tsconfigmodule.json
├── tsdoc.json
├── tslint-base.json
├── tslint.json
├── version.json
└── versionConflict.md

================================================
FILE CONTENTS
================================================

================================================
FILE: .aiAutoMinify.json
================================================
{
    "pkgs": {
        "@microsoft/applicationinsights-core-js": {
            "constEnums": [
                "_eSetDynamicPropertyFlags",
                "ePendingOp",
                "CallbackType",
                "eW3CTraceFlags",
                "eRequestHeaders",
                "eTraceStateKeyType",
                "eOfflineValue",
                "eDependencyTypes",
                "eStorageType",
                "FieldType",
                "eDistributedTracingModes",
                "EventPersistenceValue",
                "eEventsDiscardedReason",
                "eBatchDiscardedReason",
                "FeatureOptInMode",
                "CdnFeatureMode",
                "eActiveStatus",
                "eLoggingSeverity",
                "_eInternalMessageId",
                "SendRequestReason",
                "eStatsType",
                "TelemetryUnloadReason",
                "TelemetryUpdateReason",
                "eTraceHeadersMode",
                "eUrlRedactionOptions",
                "eValueKind",
                "EventLatencyValue",
                "eEventPropertyType",
                "EventSendType",
                "eTraceLevel",
                "_eExtendedInternalMessageId",
                "GuidStyle",
                "FieldValueSanitizerType",
                "TransportType",
                "eAttributeChangeOp",
                "eOTelSamplingDecision",
                "eOTelSpanKind",
                "eOTelSpanStatusCode",
                "eAttributeSource",
                "AddAttributeResult",
                "DataPointType",
                "DependencyKind",
                "DependencySourceType",
                "eSeverityLevel",
                "eAttributeFilter",
                "DataSanitizerValues"
            ]
        },
        "@microsoft/applicationinsights-perfmarkmeasure-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-common": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-properties-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-dependencies-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-debugplugin-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-channel-js": {
            "constEnums": [
                "eSerializeType"
            ]
        },
        "@microsoft/applicationinsights-react-native": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-clickanalytics-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-web-basic": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-analytics-js": {
            "constEnums": [
                "eRouteTraceStrategy"
            ]
        },
        "@microsoft/applicationinsights-web": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-react-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-teechannel-js": {
            "constEnums": []
        },
        "@microsoft/applicationinsights-cfgsync-js": {
            "constEnums": [
                "ICfgSyncMode"
            ]
        },
        "@microsoft/1ds-core-js": {
            "constEnums": []
        },
        "@microsoft/1ds-post-js": {
            "constEnums": [
                "EventBatchNotificationReason"
            ]
        },
        "@microsoft/applicationinsights-offlinechannel-js": {
            "constEnums": [
                "eStorageType",
                "eBatchSendStatus",
                "eBatchStoreStatus",
                "CursorProcessResult",
                "eStorageProviders",
                "ValueQueryType"
            ]
        },
        "@microsoft/applicationinsights-osplugin-js": {
            "constEnums": []
        }
    }
}

================================================
FILE: .eslintrc
================================================
{
    "env": {
        "browser": true,
        "es2021": true
    },
    "plugins": [
        "security"
    ],
    "extends": [
        "eslint:recommended",
        "plugin:@typescript-eslint/recommended",
        "plugin:security/recommended"
    ],
    "rules": {
        "indent": ["error"],                                        // Enabling for auto fixing
        "quotes": ["warn", "double"],                               // Enabled for auto fixing
        "curly": [ "error" ],                                       // Enabling for auto fixing
        "brace-style": [ "error" ],                                 // Enabling for auto fixing
        "prefer-const": "off",
        "prefer-spread": "off",
        "no-var": "off",
        "no-extra-boolean-cast": "off",
        "prefer-rest-params": "off",
        "no-case-declarations": "off",
        "no-prototype-builtins": "off",
        "no-useless-escape": "off",                                 // Suppressing Error -- need to Review Later
        "no-trailing-spaces": [ "warn", { "skipBlankLines": true }],// Enabled for auto fixing
        "no-const-assign": "error",
        "comma-dangle": [ "error", "never" ],                       // Enabled for auto fixing
        "security/detect-object-injection": "off",                  // Suppress Warning -- need to Review Later
        "security/detect-non-literal-fs-filename": "off",           // This was causing a bunch of false positive matches for dynamic config "watch" function
        "@typescript-eslint/ban-types": "off",
        "@typescript-eslint/no-unused-vars": [ "warn", { "vars": "all", "args": "none", "argsIgnorePattern": "^_", "ignoreRestSiblings": true } ],
        "@typescript-eslint/triple-slash-reference": "off",
        "@typescript-eslint/no-inferrable-types": "off",
        "@typescript-eslint/no-this-alias": "off",
        "@typescript-eslint/no-explicit-any": "off",
        "@typescript-eslint/no-empty-function": "off",
        "@typescript-eslint/no-empty-interface": "off",
        "@typescript-eslint/explicit-module-boundary-types": "off",
        "@typescript-eslint/no-extra-semi": "error",                // Enabled for auto fixing
        "@typescript-eslint/no-non-null-assertion": "error"
    }
}


================================================
FILE: .gitattributes
================================================
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto
# Don't allow people to merge changes to these generated files, because the result
# may be invalid.  You need to run "rush update" again.
shrinkwrap.yaml              merge=binary
npm-shrinkwrap.json          merge=binary
yarn.lock                    merge=binary

###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs     diff=csharp

###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following 
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln       merge=binary
#*.csproj    merge=binary
#*.vbproj    merge=binary
#*.vcxproj   merge=binary
#*.vcproj    merge=binary
#*.dbproj    merge=binary
#*.fsproj    merge=binary
#*.lsproj    merge=binary
#*.wixproj   merge=binary
#*.modelproj merge=binary
#*.sqlproj   merge=binary
#*.wwaproj   merge=binary

###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg   binary
#*.png   binary
#*.gif   binary

###############################################################################
# diff behavior for common document formats
# 
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the 
# entries below.
###############################################################################
#*.doc   diff=astextplain
#*.DOC   diff=astextplain
#*.docx  diff=astextplain
#*.DOCX  diff=astextplain
#*.dot   diff=astextplain
#*.DOT   diff=astextplain
#*.pdf   diff=astextplain
#*.PDF   diff=astextplain
#*.rtf   diff=astextplain
#*.RTF   diff=astextplain


================================================
FILE: .github/CODEOWNERS
================================================
* @microsoft/ApplicationInsights-JS-owners
* @microsoft/ApplicationInsights-JS-CodeOwners
/.github/CODEOWNERS @microsoft/ApplicationInsights-JS-owners


================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Create a new bug report
title: "[BUG]"
labels: ''
assignees: ''

---

**Description/Screenshot**

**Steps to Reproduce**

 - OS/Browser:
 - SDK Version [e.g. 22]:
 - How you initialized the SDK:

**Expected behavior**

**Additional context**
Add any other context about the problem here.


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.


================================================
FILE: .github/codeql/codeql-config.yml
================================================
name: "CodeQL config"

queries:
  - uses: security-and-quality

paths-ignore:
  - '**/test/'
  - '**/Tests/'
  - '**/dist-history/'
  - '**/rollup.config.js'
  - '**/docs/webSdk/'
  - '**/tools/**/*.jsonc'
  - '**/node_modules/'
  - '**/*.d.ts'
  - '**/out/'
  - '**/build/'
  - '**/bundle/'
  - '**/dist/'
  - '**/dist-es*/'
  - 'common/temp/'
  - '**/samples/'


================================================
FILE: .github/copilot-instructions.md
================================================
# GitHub Copilot Instructions for Application Insights JavaScript SDK

## Workflow Prompts

Detailed step-by-step workflow instructions are available as prompt files in `.github/prompts/`. When asked to perform one of these tasks, **always read and follow the corresponding prompt file**:

- **Release PR**: `.github/prompts/release-pr.prompt.md` — Full workflow for creating a release PR (version bump, README updates, RELEASES.md, gruntfile, lint, commit, and build validation)

## Project Overview
This is the **Microsoft Application Insights JavaScript SDK** - a browser-based telemetry library for monitoring web applications. The SDK tracks page views, user interactions, performance metrics, exceptions, and custom events.

## Architecture & Structure

### Monorepo Structure
- **AISKU/**: Main Application Insights SDK package
- **AISKULight/**: Lightweight version of the SDK
- **shared/**: Core shared libraries (AppInsightsCore, AppInsightsCommon, 1ds-core-js)
- **extensions/**: Plugin-based extensions (analytics, dependencies, etc.)
- **channels/**: Data transmission channels (online, offline, tee)
- **tools/**: Build and development tools
- **examples/**: Sample implementations

### Key Technologies
- **TypeScript/JavaScript**: Primary languages (ES5 target for browser compatibility)
- **Rush**: Monorepo management tool
- **Rollup**: Module bundler
- **Grunt**: Task runner
- **Dynamic Proto**: Dynamic prototype pattern for performance

## Code Style & Patterns

### Required Before Each Commit
- Do not commit any changes that are only end-of-file whitespace changes
- Ensure all TypeScript files are formatted and imports are reordered correctly by running `npm run lint-fix` before committing
  - This will apply ESLint fixes to all TypeScript files
  - It will also reorder imports to maintain consistent style

### TypeScript/JavaScript Conventions
- Use **ES5-compatible** syntax for browser support and target ES5 for modern browsers
- Prefer `function` declarations over arrow functions for better IE compatibility
- Use `var` instead of `let/const` in JavaScript files for ES5 compatibility (use `let/const` in TypeScript files)
- Always use semicolons
- Use 4-space indentation
- Maximum line length: 140 characters

### Naming Conventions
- **Classes**: PascalCase (e.g., `PageViewManager`, `TelemetryContext`)
- **Interfaces**: PascalCase with `I` prefix (e.g., `ITelemetryItem`, `IPageViewTelemetry`)
- **Methods/Functions**: camelCase (e.g., `trackPageView`, `sendTelemetry`)
- **Constants**: UPPER_SNAKE_CASE (e.g., `MAX_DURATION_ALLOWED`)
- **Private variables**: underscore prefix (e.g., `_logger`, `_hasInitialized`)
- **Enums**: PascalCase with `e` prefix (e.g., `eLoggingSeverity`, `eInternalMessageId`)
  - Must be const enums with integer values (not strings)
  - Use `createEnumStyle` helper for exported enums
  - All usage should reference the const enum directly

### Dynamic Proto Pattern
This project uses a unique `dynamicProto` pattern for performance optimization. This pattern should be used for all classes:

```typescript
export class MyClass {
    constructor() {
        dynamicProto(MyClass, this, (_self, _base) => {
            // Private variables should be included inside the constructor closure
            // They are not publicly visible on the class
            let _logger = _self._logger;
            let _hasInitialized = false;
            
            // Public methods need @DynamicProtoStub comment for TypeScript definitions
            _self.myMethod = () => {
                // Method implementation
            };
        });
    }
    
    /**
     * @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging
     */
    public myMethod(): void {
        // This stub will be replaced by the dynamicProto implementation
    }
}
```

Key requirements:
- Use this pattern for all classes
- Private variables must be inside the constructor closure
- Public functions need `@DynamicProtoStub` comment for TypeScript definition generation
- Never add implementation code to the stub methods

### Error Handling
- Use `_throwInternal` for logging diagnostic errors
- Always include telemetry context in error messages
- Use appropriate logging severity levels: `CRITICAL`, `WARNING`, `INFORMATION`

```typescript
_throwInternal(_logger,
    eLoggingSeverity.WARNING,
    _eInternalMessageId.InvalidDurationValue,
    "Invalid page load duration value",
    { total, network, request, response, dom });
```

### Performance Considerations
- Minimize object allocations in hot paths
- Use `doPerf()` wrapper for performance tracking
- Avoid synchronous operations that could block the browser
- Implement lazy initialization where possible
- Use object pooling for frequently created objects
- Minimize the size of generated JavaScript by avoiding certain TypeScript features:
  - Do not use the spread `...` operator
  - Do not use optional chaining `?.` operator
  - Do not use the nullish coalescing `??` operator - use `||` instead
  - These restrictions will be removed once ES5 support is discontinued

## Browser Compatibility

### Target Support
- **Modern browsers**: Chrome, Firefox, Safari, Edge (targeting ES5 for modern browsers)
- **Legacy support**: Internet Explorer 8+ (ES5 compatibility required)
- **Mobile browsers**: iOS Safari, Android Chrome
- **Non-browser runtimes**: Node.js and other browser-like environments (for worker contexts and server-side rendering)

### Compatibility Patterns
- Feature detection over browser detection
- Graceful degradation for missing APIs
- Use existing polyfills rather than creating new ones
- Safe API usage with null checks

### Async Operations Support
Support async operations using ts-async helpers instead of native async/await:
- Use `doAwait` for `await` operations
- Use `doAwaitResponse` to handle catch operations for asynchronous operations
- Use `createPromise`, `createSyncPromise`, `createIdlePromise` instead of declaring functions as `async`
- Return type should use `IPromise` instead of `Promise` for IE support

```typescript
const perf = getPerformance();
if (perf && perf.timing && perf.timing.navigationStart) {
    // Use performance API
}
```

## Telemetry & Data Collection

### Core Telemetry Types
- **Page Views**: `IPageViewTelemetry` - Track page navigation
- **Events**: `IEventTelemetry` - Custom user actions
- **Metrics**: `IMetricTelemetry` - Numeric measurements
- **Exceptions**: `IExceptionTelemetry` - Error tracking
- **Dependencies**: `IDependencyTelemetry` - External calls
- **Traces**: `ITraceTelemetry` - Logging messages

### Data Privacy & Compliance
- Never collect PII (personally identifiable information) by default
- Sanitize URLs and remove sensitive query parameters
- Implement data sampling and throttling
- Support opt-out mechanisms
- Follow GDPR/privacy regulations

### Performance Monitoring
- Use `IPerfManager` and `IPerfEvent` for internal performance tracking
- Collect browser timing APIs (Navigation Timing, Resource Timing)
- Track page load performance metrics
- Monitor SDK overhead and impact

## Plugin Architecture

### Plugin Development
- Extend `BaseTelemetryPlugin` for new plugins
- Implement `ITelemetryPlugin` interface
- Use `IProcessTelemetryContext` for processing pipeline
- Support plugin chaining and dependencies

```typescript
export class MyPlugin extends BaseTelemetryPlugin {
    public processTelemetry(evt: ITelemetryItem, itemCtx?: IProcessTelemetryContext) {
        // Process telemetry
        this.processNext(evt, itemCtx);
    }
}
```

### Extension Points
- **Telemetry Initializers**: Modify telemetry before sending
- **Dependency Listeners**: Track AJAX/fetch calls
- **Channels**: Custom data transmission

## Testing Patterns

### Unit Testing
- Use framework-agnostic test patterns
- Mock browser APIs consistently
- Test both success and failure scenarios
- Verify telemetry data structure and content

### Testing Framework Requirements
- **Extend AITestClass**: All test classes must extend `AITestClass` from `@microsoft/ai-test-framework`
- **Use Framework Tools**: Leverage existing framework helpers like `this.hookFetch()`, `this.useFakeTimers()`, and `this.onDone()`
- **Proper Registration**: Implement `registerTests()` method and use `this.testCase()` for test registration
- **Async Tests**: Return `IPromise` from test functions for asynchronous operations (do not use deprecated `testCaseAsync`)

### Critical Cleanup & Resource Management
- **Mandatory Core Cleanup**: Always call `appInsightsCore.unload(false)` in test cleanup to prevent hook pollution between tests
- **Extension Teardown**: Only call `teardown()` on extension instances that were NOT added to a core instance; `core.unload()` handles teardown for initialized extensions
- **Hook Validation**: The framework validates that all hooks are properly removed; tests will fail if cleanup is incomplete
- **Resource Isolation**: Each test must be completely isolated - no shared state or leftover hooks

### Configuration Testing Requirements
- **Static Configuration**: Test initial configuration setup and validation
- **Dynamic Configuration**: **REQUIRED** - All tests that touch configuration must include post-initialization configuration change tests
- **onConfigChange Testing**: Components using `onConfigChange` callbacks must be tested for runtime configuration updates
- **Configuration Validation**: Test both valid and invalid configuration scenarios with proper error handling

```typescript
// Example dynamic configuration test pattern
public testDynamicConfig() {
    // Initial setup with one config
    let initialConfig = { enableFeature: false };
    core.initialize(initialConfig, channels);
    
    // Verify initial behavior
    Assert.equal(false, component.isFeatureEnabled());
    
    // Update configuration dynamically
    core.config.enableFeature = true;
    // Note: core.onConfigChange() only registers callbacks, it doesn't trigger changes
    
    // To trigger config change detection, use one of these patterns:
    
    // Option 1: Using fake timers (synchronous)
    this.clock.tick(1); // Trigger 1ms timer for config change detection
    
    // Option 2: Async test without fake timers
    // return createPromise((resolve) => {
    //     setTimeout(() => {
    //         Assert.equal(true, component.isFeatureEnabled());
    //         resolve();
    //     }, 10);
    // });
    
    // Verify behavior changed (when using fake timers)
    Assert.equal(true, component.isFeatureEnabled());
}
```

### Package Organization & Dependencies
- **Respect Package Boundaries**: Place tests in the package that owns the functionality being tested
- **Dependency Injection**: Extensions must include dependencies in `config.extensions` array for proper initialization
- **Cross-Package Coordination**: Understand which package owns which functionality when testing integrated features
- **Import Resolution**: Use proper module imports and avoid direct file path dependencies

### HTTP API & Network Testing
- **Use Framework Helpers**: Use `this.hookFetch()` instead of custom fetch mocking implementations
- **XMLHttpRequest Testing**: Use framework's built-in mechanisms for XHR validation
- **Header Validation**: Test both presence and absence of headers based on different configuration modes
- **Network Scenarios**: Test success, failure, timeout, and edge cases consistently

### Async Testing Patterns
- **IPromise Return**: Use `this.testCase()` and return `IPromise` for asynchronous operations instead of deprecated `testCaseAsync`
- **Promise Handling**: Handle both resolution and rejection paths in async tests
- **Timing Control**: Use `this.clock.tick()` when `useFakeTimers: true` for deterministic timing
- **Cleanup in Async**: Ensure cleanup happens in both success and failure paths of async tests

```typescript
// Example async test pattern
this.testCase({
    name: "Async operation test",
    test: () => {
        return createPromise((resolve, reject) => {
            // Setup async operation
            someAsyncOperation().then(() => {
                try {
                    // Assertions
                    Assert.ok(true, "Operation succeeded");
                    resolve();
                } catch (e) {
                    reject(e);
                }
            }).catch(reject);
        });
    }
});
```

### Unit Testing Best Practices
- **Comprehensive Coverage**: Test all major code paths including edge cases and error conditions
- **Mock Browser APIs**: Mock browser APIs consistently using framework-provided mechanisms
- **Telemetry Validation**: Verify telemetry data structure, content, and proper formatting
- **State Testing**: Test both empty/null states and populated states for data structures

### Browser Testing
- **Cross-browser Compatibility**: Test across different browser environments and API availability
- **Performance Regression**: Monitor test execution time and detect performance regressions
- **Memory Leak Detection**: Verify proper cleanup and resource management in long-running scenarios
- **API Graceful Degradation**: Test behavior when browser APIs are unavailable or disabled

### Test Organization
- **Collocate Tests**: Place tests in `Tests/` directories within the same package as source code
- **Descriptive Naming**: Use clear, descriptive test names that explain the scenario being tested
- **Logical Grouping**: Group related tests in test suites within the same test class
- **Documentation**: Include comments explaining complex test scenarios and edge cases

### Common Anti-Patterns to Avoid
- **Skipping Cleanup**: Not calling `unload()` or `teardown()` methods leads to test interference
- **Custom Implementations**: Implementing custom mocks/helpers instead of using framework-provided tools
- **Configuration Gaps**: Testing only static configuration without dynamic configuration change scenarios
- **Hook Pollution**: Leaving hooks active between tests causing false positives/negatives
- **Incomplete Coverage**: Missing edge cases, error conditions, or state transitions
- **Deprecated Async**: Using deprecated `testCaseAsync` instead of `testCase` with `IPromise` return

## Configuration & Initialization

### SDK Configuration
- Support both snippet and npm installation
- Provide sensible defaults
- Allow runtime configuration changes
- Validate configuration parameters
- Configuration names should be descriptive but mindful of browser bundle size by keeping names concise and readable

```typescript
const config: IConfiguration = {
    instrumentationKey: "your-key",
    enableAutoRouteTracking: true,
    disableTelemetry: false,
    samplingPercentage: 100
};
```

### Initialization Patterns
- Lazy initialization to minimize startup impact
- Graceful handling of initialization failures
- Support for multiple SDK instances
- Plugin dependency resolution

## Performance Guidelines

### Bundle Size Optimization
- Tree-shaking friendly exports
- Conditional feature loading
- Minimize third-party dependencies
- Use rollup for optimal bundling

### Runtime Performance
- Avoid blocking the main thread
- Use requestIdleCallback when available
- Batch telemetry operations
- Implement efficient queuing mechanisms

### Memory Management
- Clean up event listeners on teardown
- Avoid memory leaks in long-running applications
- Use weak references where appropriate
- Implement proper disposal patterns

### Code Organization & Tree-Shaking
- Each package should be side-effect free to enable proper tree-shaking
- All code should be tree-shakable - avoid global side effects
- Use lazy initialization for any globals via `ILazyValue` interface or similar patterns
- Distinguish between "value not yet checked/assigned" vs "resulting value is null/undefined"
- Export functions and classes individually rather than as default exports
- Avoid executing code at module load time

## Common Patterns & Anti-Patterns

### ✅ Good Practices
- Use TypeScript interfaces for contracts
- Implement proper error boundaries
- Follow the plugin architecture
- Use performance monitoring internally
- Sanitize all user inputs
- Support both sync and async operations

### ❌ Anti-Patterns
- Don't block the browser UI thread
- Avoid throwing unhandled exceptions
- Don't collect sensitive user data
- Avoid tight coupling between components
- Don't ignore browser compatibility
- Avoid memory leaks in event handlers

## Documentation Standards

### Code Comments
- Use TypeDoc format for public APIs
- Document complex algorithms and business logic
- Include examples for public methods
- Explain browser compatibility considerations

### Interface Documentation
- Document all public interfaces thoroughly using TypeDoc comments
- Include parameter validation requirements
- Include defaults and any relevant examples
- Specify return value contracts
- Note any side effects or state changes

## Build & Deployment

### Build Process
- Rush for monorepo management
- TypeScript compilation with strict settings
- Rollup bundling with multiple output formats
- Minification and size optimization

### Release Process

#### Version Management
The project uses `version.json` in the root to track release versions and an automated `setVersion.js` script to update all packages consistently.

**`version.json` key fields:**
- `release`: The current base version (e.g., `"3.4.0"`)
- `next`: The default increment type for `-next` flag (`"patch"`, `"minor"`, or `"major"`)
- `pkgs`: Per-package version overrides (some packages like `1ds-*` or `offline-channel` have independent version numbers)

**Using the setVersion script:**
```bash
# Common release commands:
npm run setVersion -- -next           # Increment based on version.json "next" field (e.g., patch: 3.3.11 => 3.3.12)
npm run setVersion -- -next -release  # Increment and remove any pre-release tag
npm run setVersion -- -patch          # Force patch increment (x.y.z => x.y.[z+1])
npm run setVersion -- -minor          # Force minor increment (x.y.z => x.[y+1].0)
npm run setVersion -- -major          # Force major increment (x.y.z => [x+1].0.0)
npm run setVersion -- 3.4.0           # Set an explicit version

# Pre-release variants:
npm run setVersion -- -next -dev      # Increment + dev pre-release tag (x.y.z-dev)
npm run setVersion -- -next -beta     # Increment + beta pre-release tag (x.y.z-beta)
npm run setVersion -- -next -alpha    # Increment + alpha pre-release tag (x.y.z-alpha)
npm run setVersion -- -release        # Strip pre-release tag from current version (x.y.z-beta => x.y.z)

# Dry run (logs changes without modifying files):
npm run setVersion -- -next -test
```

**What setVersion updates:**
1. `version.json` — updates `release` and per-package versions in `pkgs`
2. All `package.json` files — updates `version`, `publishConfig.tag`, and all internal `@microsoft/applicationinsights-*` and `@microsoft/1ds-*` dependency references
3. Source files (`.ts`, `.tsx`, `.html`) — replaces hardcoded version strings

#### Creating a Release PR
For the full step-by-step release PR workflow (version bump, README updates, RELEASES.md, gruntfile, lint, commit, and build validation), see the prompt file at `.github/prompts/release-pr.prompt.md`.

Summary of the steps:
1. Run `npm run setVersion -- -next -release` to bump the version
2. Update `AISKU/README.md` CDN version table
3. Update `RELEASES.md` with the new version entry, moving the "Unreleased Changes" content into the new version section
4. Update `gruntfile.js` perfTestVersions array
5. Run `npm run lint-fix`
6. Commit all changes
7. Run `npm run fullCleanBuild` to validate (must be run outside VS Code due to file locks)

#### Publishing (post-merge)
- `npm run npm-package` — Creates `.tgz` packages for a package group
- `npm run npm-publish` — Publishes packages to npm
- `npm run npm-set-latest` — Updates the npm `latest` tag
- Package groups are defined in `tools/release-tools/package_groups.json`

#### General Guidelines
- Semantic versioning
- Automated testing before release
- Bundle size monitoring
- Browser compatibility verification

---

*This document helps GitHub Copilot understand the unique patterns, architecture, and requirements of the Application Insights JavaScript SDK project.*


================================================
FILE: .github/prompts/release-pr.prompt.md
================================================
---
description: "Create a release PR: bump version, update READMEs, RELEASES.md, gruntfile, and commit"
agent: "agent"
---

# Create Release PR

Prepare a release by incrementing the version and updating all required files. Do NOT create a new branch — use the current branch.

## Step 1: Increment the Version

**IMPORTANT: You MUST run the setVersion command FIRST and wait for it to complete BEFORE reading `version.json`.** Do NOT read `version.json` beforehand — the current value is the *old* version. The script increments the version, and only after it finishes will `version.json` contain the correct new version.

Run the following command from the repo root to bump the version based on the `next` field in `version.json`:

```
npm run setVersion -- -next
```

After the command completes, THEN read `version.json` to determine the new version number (the `release` field). This is referred to as `X.Y.Z` in the steps below. Do NOT assume you know the version from any prior reading of the file.

## Step 2: Update AISKU/README.md CDN Version Table

In [AISKU/README.md](../AISKU/README.md), find the `## CDN Version Release Summary (with Size tracking)` table.

Add a new row for `X.Y.Z` immediately after the nightly row and before the previous release entry. Use this exact format (substitute the actual version):

```
| X.Y.Z:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.X.Y.Z.js.svg)](https://js.monitor.azure.com/scripts/b/ai.X.Y.Z.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.X.Y.Z.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.X.Y.Z.min.js.gzip.svg)
```

Remove the oldest version row from the v3.x section to keep the table from growing unbounded (keep the last ~25 v3.x entries). Do NOT remove any v2.x entries.

## Step 3: Update RELEASES.md

In [RELEASES.md](../RELEASES.md):

1. **Create a new release heading** at the top of the file (after the initial note and before any existing release entries), using format:
   ```
   ## X.Y.Z (Month DDth, YYYY)
   ```
   Use today's date. The new release section is always inserted at the top — above all existing entries including any beta/alpha/pre-release entries.

2. **Include Significant Changes**: If this release includes significant new features, breaking changes, behavioral changes, package deprecations, or other notable updates, add a `### Significant Changes (since PREV_VERSION)` section (where `PREV_VERSION` is the previous full release version) summarizing them. Review the existing beta/pre-release entry (if any) for content that should be carried forward (duplicated) into the new release. This section should be human-readable and describe the impact to users.

   **You MUST always thoroughly review every PR/commit since the previous release** to identify all significant changes — do not rely solely on what was already written in the beta or unreleased sections. PRs that introduce new features, change behavior, deprecate packages, modify default configuration values, or improve reliability/performance should all be included as significant changes even if they were not called out in prior sections.

   If any packages have been merged, deprecated, or are now published only as compatibility shims, add a `### Package Deprecation` section describing which packages are affected, that they are still published as shims, and that consumers should migrate to the new package.

   If any of the significant changes were previously included in a beta/alpha/pre-release, add a blockquote note immediately after the heading:
   ```
   > The following are the significant changes since the previous full release (PREV_VERSION). Some of these changes were previously included in the X.Y.Z-beta release.
   ```
   This makes it clear why content may appear duplicated across release entries.

3. **Include Breaking Changes and Potential Breaking Changes**: If the existing unreleased or beta sections contain `### Breaking Changes` or `### Potential Breaking Changes` or `### Potential behavioral changes` sections, duplicate them into the new release section. Do NOT remove them from the original beta/pre-release entry.

4. **Build the Changelog**: Combine:
   - All entries currently under `## Unreleased Changes (from Main)` changelog
   - All entries from any beta/pre-release section changelog (e.g., `## X.Y.Z-beta`) — these should be **duplicated** into the new release, NOT moved
   - Review git history since the last release tag for any significant PRs that may have been missed
   - Do NOT include PRs that only bump dependency versions (e.g., "bump @microsoft/xxx from A to B")
   - Each entry should be a clickable link: `- #NNNN Description` where `#NNNN` links to the GitHub PR

   **CRITICAL: NEVER strip or remove sub-bullet details from changelog entries.** If an entry in the Unreleased section or a prior release includes sub-bullets with additional context (e.g., potential breaking changes, enhancement notes, configuration details), those sub-bullets MUST be preserved exactly as-is in the new release changelog. Do not flatten detailed entries into single-line summaries.

5. **Add a comparison link** at the end of the new release section:
   ```
   **Full Changelog**: https://github.com/microsoft/ApplicationInsights-JS/compare/PREV_VERSION...X.Y.Z
   ```
   Where `PREV_VERSION` is the previous release version tag.

6. **Clean up the Unreleased section only**: Remove or comment out the `## Unreleased Changes (from Main)` section content. Leave behind a commented placeholder:
   ```
   <!-- ## Unreleased Changes -->
   ```

   **CRITICAL: NEVER delete or remove any existing release entries from RELEASES.md** — this includes beta, alpha, RC, and all prior full releases. Even if a beta/pre-release contains the same changes as the new full release, the beta entry must remain in the file. The only section that gets removed is the `## Unreleased Changes (from Main)` section.

   Even when told to use version X.Y.Z as the "previous release" for changelog purposes, this only affects which PRs to include in the new entry and the comparison link — it does NOT mean you should delete any intervening release entries (beta, alpha, etc.) from the file.

## Step 4: Update gruntfile.js perfTestVersions

In [gruntfile.js](../gruntfile.js), update the `perfTestVersions` array to include the new version:

```javascript
const perfTestVersions=["X.Y.Z"];
```

Replace the existing version value — this array should contain only the new release version.

## Step 5: Run lint-fix

Run the following command to ensure all files are properly formatted:

```
npm run lint-fix
```

## Step 6: Commit

Stage all changes and commit with the message:

```
[Release] Increase version to X.Y.Z
```

If there are significant changes worth calling out (breaking changes, major new features), add them as additional lines after the subject line. It is valid for this commit to have no additional body content beyond the subject.

Do NOT push the branch — just create the local commit.

## Step 7: Validate the Build

Run the full clean build to ensure no build issues:

```
npm run fullCleanBuild
```

- **If running from GitHub Actions, automation, or a CI environment**: Run this command directly before creating the PR. Resolve any unexpected build failures before proceeding.
- **If running interactively from VS Code or Visual Studio**: This command cannot be run from within the editor because open editors and extensions hold file locks that will cause the clean build step to fail. Instead, inform the user that they need to **manually** run `npm run fullCleanBuild` from a **separate terminal** (e.g., Windows Terminal, PowerShell, or Command Prompt) pointed at the repo root, and resolve any issues before creating the PR.


================================================
FILE: .github/workflows/ci.yml
================================================
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions

name: Node.js CI

on:
  push:
    branches: [ main, master, beta, Release2.7, release-3.0 ]
  pull_request:
    branches: [ main, master, beta, Release2.7, release-3.0 ]
  merge_group:
    branches: [ "main", "master", "beta", "Release*", "release*", "*-legacy", "legacy-v1" ]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [ 16, 18, 20 ]

    steps:
    - uses: actions/checkout@v4
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v4
      with:
        node-version: ${{ matrix.node-version }}
    - name: Update rush shrinkwrap dependencies (for different node versions)
      run: node common/scripts/install-run-rush.js update --full --recheck
    - run: npm install rollup -g
    - run: npm install grunt-cli
    - run: npm install
    - run: node common/scripts/install-run-rush.js check
    - run: node common/scripts/install-run-rush.js update --full --recheck
    - run: npm run build --verbose
      timeout-minutes: 20
    - run: npm run test --verbose
      timeout-minutes: 30


================================================
FILE: .github/workflows/codeql-analysis.yml
================================================
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
  push:
    branches: [ "main", "master", "beta", "Release*", "release*", "*-legacy", "legacy-v1" ]
  pull_request:
    # The branches below must be a subset of the branches above
    branches: [ "main", "master", "beta", "Release*", "release*", "*-legacy", "legacy-v1" ]
  schedule:
    - cron: '15 17 * * 2'  # Every Tuesday at 17:15 UTC

jobs:
  analyze:
    name: Analyze (${{ matrix.language }})
    runs-on: ubuntu-latest
    permissions:
      # required for all workflows
      security-events: write
      # required to fetch internal or private CodeQL packs
      packages: read
      # only required for workflows in private repositories
      actions: read
      contents: read
      
    strategy:
      fail-fast: false
      matrix:
        include:
          - language: actions
          - language: javascript
          - language: javascript-typescript
            node-version: '18'
        # CodeQL supports the following values keywords for 'language': 'actions', 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift'
        # Use `c-cpp` to analyze code written in C, C++ or both
        # Use 'java-kotlin' to analyze code written in Java, Kotlin or both
        # Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
        # To learn more about changing the languages that are analyzed or customizing the build mode for your analysis,
        # see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.
        # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how
        # your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages

    steps:
    - name: Checkout repository
      uses: actions/checkout@v4

    # Setup Node.js for JavaScript projects
    - name: Setup Node.js ${{ matrix.node-version }}
      # Only run the build for Typescript/JavaScript language match
      if: matrix.language == 'javascript-typescript' 
      uses: actions/setup-node@v4
      with:
        node-version: ${{ matrix.node-version }}
        
    # Install dependencies for JavaScript projects
    - name: Install dependencies
      # Only run the build for Typescript/JavaScript language match
      if: matrix.language == 'javascript-typescript'
      run: |
        node common/scripts/install-run-rush.js update --full --recheck
        npm install rollup -g
        npm install grunt-cli
        npm install
        node common/scripts/install-run-rush.js update --full --recheck
        
    # Initializes the CodeQL tools for scanning
    - name: Initialize CodeQL
      uses: github/codeql-action/init@v3
      with:
        languages: ${{ matrix.language }}
        config-file: ./.github/codeql/codeql-config.yml
        
    # Build JavaScript project specifically (skipping autobuild for JavaScript)
    - name: Build JavaScript
      # Only run the build for Typescript/JavaScript language match
      if: matrix.language == 'javascript-typescript'
      run: npm run build

    # Perform the CodeQL Analysis
    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@v3
      with:
        category: "/language:${{matrix.language}}"
        upload-database: false
        
    # Debug CodeQL configuration
    - name: Debug CodeQL configuration
      if: always()
      run: |
        echo "Executed CodeQL for language: ${{ matrix.language }}"
        echo "Category used: /language:${{ matrix.language }}"
        echo "Node version: ${{ matrix.node-version || 'N/A' }}"

================================================
FILE: .github/workflows/delete-merged-branches.yml
================================================
---
name: 'Delete Merged Branches'

# This workflow automatically deletes branches that are associated with
# closed or merged pull requests. It runs weekly on Sundays at midnight UTC.
#
# Protected branches (will NOT be deleted):
# - main
# - master
# - beta
# - otel-sdk
# - release* (case-insensitive: release-1.0, release/v2.0, etc.)
# - Release* (case-insensitive: Release-1.0, Release/v2.0, etc.)
# - legacy-* (e.g., legacy-v1, legacy-old)
# - *-legacy (e.g., old-legacy, v1-legacy)
#
# The workflow will only delete branches that:
# 1. Have associated pull requests
# 2. All PRs for the branch are either merged or closed (no open PRs)
# 3. Do not match any protected branch pattern

on:
  schedule:
    # Run every Sunday at midnight UTC
    - cron: '0 0 * * 0'
  workflow_dispatch:

# Required permissions for this workflow:
# - contents: write - Required to delete branch references via GitHub API
# - pull-requests: read - Required to query PR status and metadata
# See: https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
# See: https://docs.github.com/en/rest/overview/permissions-required-for-github-apps
permissions:
  contents: write
  pull-requests: read

jobs:
  delete-merged-branches:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Delete merged branches
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          # Weekly branch cleanup script
          #
          # This script safely deletes branches associated with merged PRs
          # while protecting important branches like main, master, release, etc.
          #
          # Logic:
          # 1. Get all remote branches
          # 2. Filter out protected branches using pattern matching
          # 3. For each non-protected branch:
          #    - Check if it has associated PRs
          #    - Skip if no PRs found
          #    - Skip if any PRs are still open
          #    - Delete if all PRs are closed or merged
          # Protected branch patterns (case-insensitive matching)
          PROTECTED_PATTERNS=(
            "main"
            "master"
            "beta"
            "otel-sdk"
            "release*"
            "Release*"
            "legacy-*"
            "*-legacy"
          )

          echo "Starting branch cleanup..."

          # Get all remote branches except HEAD
          git fetch --all --prune
          branches=$(git for-each-ref \
            --format='%(refname:short)' refs/remotes/origin | \
            grep -v 'origin/HEAD' | sed 's|origin/||')

          for branch in $branches; do
            echo "Checking branch: $branch"

            # Check if branch matches any protected pattern
            # Use [[ ]] pattern matching instead of case statement to properly
            # support wildcard patterns stored in variables (e.g., "release*", "*-legacy")
            # See: https://www.gnu.org/software/bash/manual/html_node/Pattern-Matching.html
            protected=false
            for pattern in "${PROTECTED_PATTERNS[@]}"; do
              if [[ "$branch" =~ $pattern ]]; then
                protected=true
                echo "  → Protected (matches: $pattern), skipping"
                break
              fi
            done

            if [ "$protected" = true ]; then
              continue
            fi

            # Check if branch is associated with a merged or closed PR
            echo "  → Checking PR status for branch: $branch"

            # Get PRs for this branch (both merged and closed)
            # GitHub context variables used here:
            # - github.repository: owner/repo-name (e.g., microsoft/ApplicationInsights-JS)
            # - github.repository_owner: repository owner (e.g., microsoft)
            # - GITHUB_TOKEN: automatically provided GitHub token for API access
            # See: https://docs.github.com/en/actions/learn-github-actions/contexts#github-context
            repo_api="https://api.github.com/repos/${{ github.repository }}"
            query="?head=${{ github.repository_owner }}:$branch&state=all"
            pr_response=$(curl -s \
              -H "Authorization: token $GITHUB_TOKEN" \
              -H "Accept: application/vnd.github.v3+json" \
              "${repo_api}/pulls${query}")

            # Check if any PRs exist for this branch
            pr_count=$(echo "$pr_response" | jq '. | length')

            if [ "$pr_count" -eq 0 ]; then
              echo "  → No PR found for branch, skipping"
              continue
            fi

            # Check if all PRs for this branch are either merged or closed
            open_prs=$(echo "$pr_response" | jq '[.[] | select(.state == "open")] | length')

            if [ "$open_prs" -gt 0 ]; then
              echo "  → Branch has open PR(s), skipping"
              continue
            fi

            # All PRs are either merged or closed, safe to delete
            merged_prs=$(echo "$pr_response" | jq '[.[] | select(.merged_at != null)] | length')
            closed_prs=$(echo "$pr_response" | jq '[.[] | select(.state == "closed" and .merged_at == null)] | length')

            echo "  → Branch has $merged_prs merged and $closed_prs closed PRs"
            echo "  → Deleting branch: $branch"

            # Delete the remote branch using GitHub REST API
            # See: https://docs.github.com/en/rest/git/refs#delete-a-reference
            delete_url="https://api.github.com/repos/${{ github.repository }}"
            delete_response=$(curl -s -X DELETE \
              -H "Authorization: token $GITHUB_TOKEN" \
              -H "Accept: application/vnd.github.v3+json" \
              "${delete_url}/git/refs/heads/$branch")

            if echo "$delete_response" | jq -e '.message' > /dev/null 2>&1; then
              error_msg=$(echo "$delete_response" | jq -r '.message')
              echo "  → Error deleting branch: $error_msg"
            else
              echo "  → Successfully deleted branch: $branch"
            fi
          done

          echo "Branch cleanup completed!"


================================================
FILE: .github/workflows/jekyll-gh-pages.yml
================================================
# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: Deploy Jekyll with GitHub Pages dependencies preinstalled

on:
  # Runs on pushes targeting the default branch
  push:
    branches: ["main"]

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
  contents: read
  pages: write
  id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  # Build job
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node-version }}
      - name: Update rush shrinkwrap dependencies (for different node versions)
        run: node common/scripts/install-run-rush.js update --full
      - run: npm install rollup -g
      - run: npm install grunt-cli
      - run: npm install
      - run: node common/scripts/install-run-rush.js check
      - run: node common/scripts/install-run-rush.js update --full --recheck
      - run: npm run build --verbose
        timeout-minutes: 20
      - name: doc generate
        run:  npm run api-docs
      - name: Inject Script
        run:  node ./tools/github-page-script-injection/injectScript.js
      - name: Setup Pages
        uses: actions/configure-pages@v4
      - name: Build with Jekyll
        uses: actions/jekyll-build-pages@v1
        with:
          source: ./docs
          destination: ./_site
      - name: Upload artifact
        uses: actions/upload-pages-artifact@v3

  # Deployment job
  deploy:
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    runs-on: ubuntu-latest
    needs: build
    steps:
      - name: Deploy to GitHub Pages
        id: deployment
        uses: actions/deploy-pages@v4


================================================
FILE: .github/workflows/lock.yml
================================================
name: 'Lock Threads'

on:
  schedule:
    - cron: '0 0 * * *'

permissions:
  actions: write
  issues: write
  pull-requests: write

jobs:
  action:
    runs-on: ubuntu-latest
    steps:
      - uses: dessant/lock-threads@v2
        with:
          github-token: ${{ github.token }}
          issue-lock-comment: >
            This issue has been automatically locked since there
            has not been any recent activity after it was closed.
            Please open a new issue for related bugs.
          process-only: 'issues'

================================================
FILE: .github/workflows/stale-assigned.yml
================================================
name: 'Stale issue handler'
on:
  workflow_dispatch:
  schedule:
    - cron: '0 7 * * *'

permissions:
  actions: write
  issues: write
  pull-requests: write

jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/stale@v9
        id: stale
        with:
          stale-issue-message: 'This Issue will be closed in 30 days. Please remove the "Stale" label or comment to avoid closure with no action.'
          stale-pr-message: 'This PR will be closed in 30 days. Please remove the "Stale" label or comment to avoid closure with no action.'
          operations-per-run: 200
          days-before-stale: 300
          days-before-close: 30
          stale-issue-label: 'stale'
          stale-pr-label: 'stale'
          close-issue-label: 'closed'
          close-pr-label: 'closed'
          exempt-issue-labels: 'bug,enhancement,documentation,waiting,keep'
          exempt-pr-labels: 'waiting,keep'
          include-only-assigned: true

================================================
FILE: .github/workflows/stale.yml
================================================
name: 'Stale issue handler'
on:
  workflow_dispatch:
  schedule:
    - cron: '0 7 * * *'

permissions:
  actions: write
  issues: write
  pull-requests: write

jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/stale@v9
        id: stale
        with:
          stale-issue-message: 'This Issue will be closed in 30 days. Please remove the "Stale" label or comment to avoid closure with no action.'
          stale-pr-message: 'This PR will be closed in 30 days. Please remove the "Stale" label or comment to avoid closure with no action.'
          operations-per-run: 200
          days-before-stale: 240
          days-before-close: 30
          stale-issue-label: 'stale'
          stale-pr-label: 'stale'
          close-issue-label: 'closed'
          close-pr-label: 'closed'
          exempt-issue-labels: 'bug,enhancement,documentation,waiting,keep'
          exempt-pr-labels: 'waiting,keep'
          exempt-all-milestones: true
          exempt-all-assignees: true
          
  mark-abandoned:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/stale@v9
        id: mark-abandoned
        with:
          days-before-stale: 30
          days-before-close: -1
          days-before-issue-stale: -1
          days-before-issue-close: -1
          stale-pr-message: 'This PR has been inactive for 30 days and has been marked as abandoned. You can remove this label by commenting or pushing new changes. If it remains inactive with the abandoned label, it will eventually also be marked as stale and closed.'
          stale-pr-label: 'abandoned'
          exempt-pr-labels: 'keep,wontfix,stale'
          operations-per-run: 100
          remove-stale-when-updated: true
          exempt-all-milestones: false
          exempt-all-assignees: false

  stale-wontfix:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/stale@v9
        id: stale-wontfix
        with:
          stale-issue-message: 'This Issue will be closed in 14 days. Please remove the "Stale" label or comment to avoid closure with no action.'
          stale-pr-message: 'This PR will be closed in 14 days. Please remove the "Stale" label or comment to avoid closure with no action.'
          operations-per-run: 100
          days-before-stale: 14
          days-before-close: 14
          stale-issue-label: 'stale'
          stale-pr-label: 'stale'
          close-issue-label: 'closed'
          close-pr-label: 'closed'
          any-of-labels: 'wontfix,abandoned'
          exempt-issue-labels: 'keep'
          exempt-pr-labels: 'keep'
          exempt-all-milestones: false
          exempt-all-assignees: false


================================================
FILE: .gitignore
================================================
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.suo
*.user
*.sln.docstates

# Build results
[Dd]ebug/
[Rr]elease/
[Bb]in/
[Oo]bj/
[Oo]bj//Core/Javascript/ai*.[tj]s*

# Telemetry output
*.onesipkg

# Enable "build/" folder in the NuGet Packages folder since NuGet packages use it for MSBuild targets
!packages/*/build/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
report.*.json

*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.log
*.scc

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile

# Local tgz files
*.tgz

# Visual Studio profiler
*.psess
*.vsp
*.vspx

# Visual Studio Code
.vscode/**

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# NCrunch
*.ncrunch*
.*crunch*.local.xml

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.Publish.xml

# NuGet binaries downloaded automatically
packages/

# Windows Azure Build Output
csx
*.build.csdef

# Windows Store app package directory
AppPackages/

# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.[Pp]ublish.xml
*.publishsettings

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm

# SQL Server files
App_Data/*.mdf
App_Data/*.ldf


#LightSwitch generated files
GeneratedArtifacts/
_Pvt_Extensions/
ModelManifest.xml

# =========================
# Windows detritus
# =========================

# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Mac desktop service store files
.DS_Store

# Build log files
*.err
*.prf
*.wrn

# Visual studio 2015 user specific files
legacy/JavaScript/.vs

# Temp directories
bundle/
node_modules/
out/
coreSDK/node_modules
build/
dist-es*/
browser/
types/
dist/
dest/
drop/
.cdn/

# Don't commit the sub resource integrity generated files
**/*.integrity.json

# Grunt
.tscache
**/Tests/Selenium/*tests.js
**/Tests/Selenium/*tests.d.ts
**/Tests/Selenium/*tests.js.map

# Misc
statistics.html
npm
tests_output

# Logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Runtime data
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
jspm_packages/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env

# next.js build output
.next

# Common toolchain intermediate files
temp

# Rush files
common/temp/**
package-deps.json
package-lock.json
rush-logs/

# test output
aicore.tests.js*
aicore.tests.d.ts
ai.tests.d.ts
/.vs
/index.html

# Generated Constant File
**/__DynamicConstants.ts

# Generated Docs
docs/webSdk/applicationinsights*/**
docs/webSdk/1ds*/**

================================================
FILE: .npmignore
================================================
# NPM Ignore

# ignore everything
*

# ... but these files
!/package.json
!/CODE_OF_CONDUCT.md
!/CONTRIBUTING.md
!/README.md
!/SECURITY.md
!/SUPPORT.md
!/NOTICE
!/PRIVACY
!/LICENSE
!/LICENSE.TXT
!/docs/API-reference.md
!/bundle/ai.module.*
!/dist/ai.js
!/dist/ai.js.map
!/dist/ai.0.js
!/dist/ai.0.js.map

================================================
FILE: .travis/test_react_native.sh
================================================
cd extensions/applicationinsights-react-native

echo -en 'travis_fold:end:change\\r'
echo 'Checking for inconsistent dependency versions' && echo -en 'travis_fold:start:check\\r'
node common/scripts/install-run-rush.js check

echo -en 'travis_fold:end:check\\r'
echo 'Installing...' && echo -en 'travis_fold:start:install\\r'
rm -rf common/temp/npm-local
node common/scripts/install-run-rush.js install

npm install
npm run build
npm run test
npm run lint


================================================
FILE: .travis/test_rush.sh
================================================
set -e
set NO_UPDATE_NOTIFIER=1
# echo 'Checking for missing change logs...' && echo -en 'travis_fold:start:change\\r'
# git fetch origin master:refs/remotes/origin/master -a
# node common/scripts/install-run-rush.js change -v

echo -en 'travis_fold:end:change\\r'
echo 'Checking for inconsistent dependency versions' && echo -en 'travis_fold:start:check\\r'
node common/scripts/install-run-rush.js check

echo -en 'travis_fold:end:check\\r'
echo 'Installing...' && echo -en 'travis_fold:start:install\\r'
rm -rf common/temp/npm-local
node common/scripts/install-run-rush.js install

echo -en 'travis_fold:end:install\\r'
echo 'Building...' && echo -en 'travis_fold:start:build\\r'
node common/scripts/install-run-rush.js rebuild --verbose

echo -en 'travis_fold:end:build\\r'
echo 'Running test...' && echo -en 'travis_fold:start:tests\\r'
node common/scripts/install-run-rush.js test --verbose

echo -en 'travis_fold:end:tests\\r'
echo 'Running tslint...' && echo -en 'travis_fold:start:lint\\r'
node common/scripts/install-run-rush.js lint --verbose
echo -en 'travis_fold:end:lint\\r'


================================================
FILE: AISKU/.npmignore
================================================
# NPM Ignore

# ignore everything
*

# ... but these files
!package.json
!tsconfig.json
!/CODE_OF_CONDUCT.md
!/CONTRIBUTING.md
!/README.md
!/SECURITY.md
!/SUPPORT.md
!/NOTICE
!/PRIVACY
!/LICENSE
!/LICENSE.TXT
!dist-es*/**
!dist/**
!browser/**
!types/**


================================================
FILE: AISKU/API.md
================================================
### trackPageView

```ts
applicationInsights.trackPageView(pageView: IPageViewTelemetry, customProperties?: { [key: string]: any })
```

The [`IPageViewTelemetry`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html) interface is below:

Parameter | Type | Description
---|---|---
[`name?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html#name) | string | **Optional**<br>Name of the pageview. Defaults to the document `title`.
[`uri?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html#uri) | string | **Optional**<br>A relative or absolute URL that identifies the page or other item. Defaults to the window location.
[`refUri?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html#refUri) | string | **Optional**<br>The URL of the previous page that sent the user to the current page.
[`pageType?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html#pageType) | string | **Optional**<br>Page Type string. Describes how you classify this page, e.g. errorPage, formPage, etc.
[`isLoggedIn?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html#isLoggedIn) | boolean | **Optional**<br>Whether or not the user is logged in
[`pageTags?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IPageViewTelemetry.html#pageTags) | dictionary | **Optional**<br>Property bag to contain an extension to domain properties - extension to Part B


### startTrackPage

```ts
startTrackPage(name?: string)
```

Starts the timer for tracking a page load time. Use this instead of `trackPageView` if you want to control when the page view timer starts and stops, but don't want to calculate the duration yourself. This method doesn't send any telemetry. Call `stopTrackPage` to log the end of the page view and send the event.

Parameter | Type | Description
---|---|---
`name?` | string | **Optional**<br>The name used to identify the page in the portal. Defaults to the document title.

### stopTrackPage

```ts
stopTrackPage(name?: string, url?: string, customProperties?: { [name: string]: any; });
```

Stops the timer that was started by calling `startTrackPage` and sends the pageview load time telemetry with the specified properties and measurements. The duration of the page view will be the time between calling `startTrackPage` and `stopTrackPage`.

Parameter | Type | Description
---|---|---
`name?` | string | **Optional**<br>The name used to identify the page in the portal. Defaults to the document title.
`url?` |  string | **Optional**<br>A relative or absolute URL that identifies the page or similar item. Defaults to the window location.
`customProperties?` | dictionary | **Optional**<br>Map of string to string: Additional data used to [filter pages](https://azure.microsoft.com/documentation/articles/app-insights-api-custom-events-metrics/#properties) in the portal. Defaults to empty.

### trackMetric

```ts
trackMetric(metric: IMetricTelemetry, customProperties?: {[name: string]: any})
```

Log a positive numeric value that is not associated with a specific event. Typically used to send regular reports of performance indicators.

To send a single measurement, use just the first two parameters. If you take measurements very frequently, you can reduce the telemetry bandwidth by aggregating multiple measurements and sending the resulting `average` and `sampleCount` at intervals.

[`IMetricTelemetry`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html) is described below

Parameter | Type | Description
---|---|---
[`name`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html#name) | string | **Required**<br>A string that identifies the metric. In the portal, you can select metrics for display by name.
[`average`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html#average) | number | **Required**<br>Either a single measurement, or the average of several measurements. Should be >=0 to be correctly displayed.
[`sampleCount?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html#sampleCount) | number | **Optional**<br>Count of measurements represented by the average. Defaults to 1. Should be >=1.
[`min?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html#min) | number | **Optional**<br>The smallest measurement in the sample. Defaults to the average. Should be >= 0.
[`max?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html#max) | number | **Optional**<br>The largest measurement in the sample. Defaults to the average. Should be >= 0.
[`stdDev?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IMetricTelemetry.html#stdDev) | number | **Optional**<br>The standard deviation for the sample. Defaults to undefined which is reported as zero (0).

```typescript
appInsights.trackMetric({ name: "my_custom_metric", average: 1.5, sampleCount: 2, min: 1, max: 2, stdDev: 1.0 });
```

### trackException

```ts
trackException(exception: IExceptionTelemtry, customProperties?: {[key: string]: any})
```

Log an exception you have caught. Exceptions caught by the browser are also automatically logged.

[`IExceptionTelemetry`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IExceptionTelemetry.html) is described below

Parameter | Type | Description
---|---|---
[`error`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IExceptionTelemetry.html#exception) | [Error](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) | **Required**<br>Error object
[`severityLevel?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IExceptionTelemetry.html#severityLevel) | [SeverityLevel (number)](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-common/enums/eSeverityLevel.html) | **Optional**<br>Severity of the message, ranging from verbose to critical

By default, uncaught browser exceptions are caught by the SDK and reported to the portal. To disable this behavior, insert the following line in the config section below your connection string:

```ts
{
  connectionString: "your connection string",
  disableExceptionTracking: true
}
```

### trackTrace

```ts
trackTrace(trace: ITraceTelemetry, customProperties?: {[key: string]: any})
```

Log a diagnostic event such as entering or leaving a method.


The [`ITraceTelemetry`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/ITraceTelemetry.html) interface is described below

Parameter | Type | Description
---|---|---
[`message`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/ITraceTelemetry.html#message) | string | **Required**<br>Diagnostic data. Can be much longer than an event's name.
[`severityLevel?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/ITraceTelemetry.html#severityLevel) | [SeverityLevel (number)](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-common/enums/eSeverityLevel.html) | **Optional**<br>Severity of the message, ranging from verbose to critical

In the portal, you can search on message content and [display individual trackTrace events](https://azure.microsoft.com/documentation/articles/app-insights-diagnostic-search/).
(Unlike `trackEvent`, you can't filter on the message content in the portal.)


### trackDependencyData

```ts
trackDependencyData(dependency: IDependencyTelemetry, customProperties?: {[key: string]: any}, systemProperties?: {[key: string]: any})
```

Log a dependency call (for instance: ajax)

The [`IDependencyTelemetry`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html) interface is described below

Parameter | Type | Description
---|---|---
[`id`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#id) | string | **Required**<br>Unique id, this is used by the backend to correlate server requests.
[`absoluteUrl`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#absoluteUrl) | string | **Required**<br>Absolute url used to make the dependency request
[`success`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#success) | boolean | **Required**<br>Whether or not the request was successful or not (e.g., `responseCode` in the range 200-299)
[`resultCode`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#resultCode) | number | **Required**<br>Response code returned by the dependency request (e.g., `200` for a success)
[`commandName?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#commandName) | string| **Optional**<br>Command used to make the dependency request
[`duration?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#duration) | number | **Optional**<br>Elapsed time of request & reply
[`method?`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-web/interfaces/IDependencyTelemetry.html#method) | string | **Optional**<br>Represents request verb (GET, POST, etc.)

### flush

```ts
flush(async?: boolean = true)
```

Immediately send all queued telemetry. By default, it is sent async.

> *Note:* You don't have to use flush, as it is automatically called at an interval and when the user closes the window.

<a name="setAuthenticatedUserContext"></a>
### setAuthenticatedUserContext

```ts
setAuthenticatedUserContext(authenticatedUserId: string, accountId?: string, storeInCookie = false)
```

Set the authenticated user id and the account id. Use this when you have identified a specific signed-in user. Parameters must not contain spaces or ,;=|

The method will only set the `authenticatedUserId` and `accountId` for all events in the current page view. To set them for all events within the whole session, you should either call this method on every page view or set `storeInCookie = true`.

 Parameter | Type |Description
---|---|--
`authenticatedUserId` | string | **Required**<br>An id that uniquely identifies a user of your app. No spaces, comma, semicolon, equals or vertical bar.
`accountId?` | string | **Optional**<br>An optional account id, if your app groups users into accounts. No spaces, comma, semicolon, equals or vertical bar.

In the portal, this will add to the count of authenticated users. Authenticated users provide a more reliable count of the number of real users than the count of anonymous users.

The authenticated user id will be available as part of the context of the telemetry sent to the portal, so that you can filter and search on it. It will also be saved as a cookie and sent to the server, where the server SDK (if installed) will attach it to server telemetry.

### clearAuthenticatedUserContext

```ts
clearAuthenticatedUserContext ()
```

Clears the authenticated user id and the account id from the user context, and clears the associated cookie.


### addTelemetryInitializer

```ts
public addTelemetryInitializer(telemetryInitializer: (item: ITelemetryItem) => boolean | void)
```

Adds a telemetry initializer to the collection. Telemetry initializers will be called one by one, in the order they were added,
before the telemetry item is pushed for sending.
If one of the telemetry initializers returns false or throws an error, then the telemetry item will not be sent.

See [`ITelemetryItem`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryItem.html) for the full interface definition.

```ts
interface ITelemetryItem {
    /**
     * Unique name of the telemetry item
     */
    name: string;

    /**
     * Timestamp when item was sent
     */
    timestamp?: Date;

    /**
     * Identifier of the resource that uniquely identifies which resource data is sent to
     */
    instrumentationKey?: string;

    /**
     * System properties with well defined extensions, documentation coming soon
     */
    ctx?: {[key: string]: any};

    /**
     * Part A custom extensions
     */
    tags?: Tags; // Tags[] is deprecated since 4.1.0

    /**
     * Telemetry type used for part B
     */
    baseType?: string;

    /**
     * Based on schema for part B
     */
    baseData?: { [key: string]: any };

    /**
     * Telemetry data used for Part C
     */
    data?: {
        [key: string]: any;
    },
}
```

### Custom extension

A custom plugin can be loaded by the SDK through config.extensions. All plugins must implement [`ITelemetryPlugin`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryPlugin.html) interface. These provide the capability of inspecting and updating data as it leaves the system, but also provides additional functionality to for one time initialization of extension state and pass in custom configuration through SKU configuration etc.

```ts
interface ITelemetryPlugin {
    /**
    * Call back for telemetry processing before it is sent to next plugin for processing (needs to be invoked by caller)
    */
    processTelemetry: (env: ITelemetryItem) => void;

    /**
    * Extension name
    */
    identifier: string;

    /**
    * Set next extension for telemetry processing
    */
    setNextPlugin: (next: ITelemetryPlugin) => void;

    /**
    * Priority of the extension
    *
    * 1 - 100: customer plugins
    * 100 - 199: reserved for internal plugins.
    * > 200: channel plugins (that implement IChannelControls to send data to an endpoint)
    */
    priority: number;
}
```

## [`ITelemetryContext`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryContext.html)

### context.application

```ts
application: IApplication
```

Details of the app you're monitoring. See [`IApplication`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IApplication.html).

Property | Type | Description
---|---|---
[`application.ver`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IApplication.html#ver) | string | Application version
[`application.build`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IApplication.html#build) | string | Application build

### context.device

```ts
device: IDevice
```

The device the app is running on. See [`IDevice`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDevice.html).

Property | Type | Description
---|---|---
[`device.id`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDevice.html#id) | string | Unique ID
[`device.deviceClass`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDevice.html#deviceClass) | string | Device class
[`device.model`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDevice.html#model) | string | Device model
[`device.resolution`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDevice.html#resolution) | string | Screen resolution
[`device.ip`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDevice.html#ip) | string | IP address

### context.user

```ts
user: IUserContext
```

Data about the current user. Users are identified by cookie, so one person can look like
more than one user if they use different machines or browsers, or delete cookies. See [`IUserContext`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IUserContext.html).

Property | Type | Description
---|---|---
[`user.id`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IUserContext.html#id) | string | Unique, cookie-based user id, automatically assigned.
[`user.authenticatedId`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IUserContext.html#authenticatedId) | string | Id set by your app using [`setAuthenticatedUserContext`](#setAuthenticatedUserContext) when the user signs in.
[`user.accountId`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IUserContext.html#accountId) | string | Set by your app when the user signs in, if your app groups users into accounts.
[`user.accountAcquisitionDate`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IUserContext.html#accountAcquisitionDate) | string | Account acquisition date


### context.session

```ts
session: ISession
```

The user session. A session represents a series of user actions. A session starts with a user action.
It ends at the last user activity when there is no more activity for sessionRenewalMs, or if it lasts longer than sessionExpirationMs. See [`ISession`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ISession.html).

Property | Type | Description
---|---|---
[`session.id`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ISession.html#id) | string | Automatically assigned id
[`session.acquisitionDate`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ISession.html#acquisitionDate) | number | The dateTime when this session was created.
[`session.renewalDate`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ISession.html#renewalDate) | number | DateTime when telemetry was last sent with this session.


### context.location

```ts
location: ILocation
```

Data from which the geographical location of the user's device can be guessed. See [`ILocation`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ILocation.html).

Property | Type | Description
---|---|---
[`location.ip`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ILocation.html#ip) | string | IP address

### context.telemetryTrace

> **Deprecated:** Use [`appInsights.getTraceCtx()`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITraceHost.html#getTraceCtx) instead to get/set the current trace context. This returns an [`IDistributedTraceContext`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html) which supports distributed tracing and allows the core to manage the trace context.

```ts
telemetryTrace: ITelemetryTrace
```

Represents the distributed trace context. See [`ITelemetryTrace`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryTrace.html).

Property | Type | Description
---|---|---
[`telemetryTrace.traceID`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryTrace.html#traceID) | string | Trace ID
[`telemetryTrace.parentID`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryTrace.html#parentID) | string | Parent ID
[`telemetryTrace.traceFlags`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryTrace.html#traceFlags) | number | W3C trace flags
[`telemetryTrace.name`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITelemetryTrace.html#name) | string | Operation name

### Distributed Trace Context (Recommended)

Use [`getTraceCtx()`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/ITraceHost.html#getTraceCtx) to access the current [`IDistributedTraceContext`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html). This is the recommended replacement for the deprecated `telemetryTrace`.

```ts
// Get the current trace context - using the standard SKU (AISKU)
let traceCtx = appInsights.getTraceCtx();

// Or when using the core directly
// let traceCtx = appInsights.core.getTraceCtx();

// Read trace values
let traceId = traceCtx.traceId;
let spanId = traceCtx.spanId;
let traceFlags = traceCtx.traceFlags;
let pageName = traceCtx.pageName;

// Update trace values (updates current context only)
traceCtx.traceId = "new-trace-id";
traceCtx.spanId = "new-span-id";
traceCtx.traceFlags = 1;
traceCtx.pageName = "my-page";

// Replace the entire trace context
appInsights.core.setTraceCtx(newTraceCtx);
```

Property | Type | Description
---|---|---
[`traceId`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#traceId) | string | 32 lowercase hex character trace ID, shared across all spans in a trace
[`spanId`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#spanId) | string | 16 lowercase hex character span ID, unique identifier for this span
[`traceFlags`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#traceFlags) | number | W3C trace flags (8-bit bitmap), bit 0x01 indicates sampling
[`pageName`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#pageName) | string | Current page name
[`traceState`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#traceState) | IW3cTraceState | Vendor-specific trace state for cross-system correlation
[`parentCtx`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#parentCtx) | IDistributedTraceContext | Parent context (read-only)
[`isRemote`](https://microsoft.github.io/ApplicationInsights-JS/webSdk/applicationinsights-core-js/interfaces/IDistributedTraceContext.html#isRemote) | boolean | Whether context was propagated from a remote parent


================================================
FILE: AISKU/LICENSE
================================================
The MIT License (MIT)

Copyright (c) Microsoft Corporation

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: AISKU/NOTICE
================================================
NOTICES AND INFORMATION
Do Not Translate or Localize

This software incorporates material from third parties. Microsoft makes certain
open source code available at https://3rdpartysource.microsoft.com, or you may
send a check or money order for US $5.00, including the product name, the open
source component name, and version number, to:

Source Code Compliance Team
Microsoft Corporation
One Microsoft Way
Redmond, WA 98052
USA

Notwithstanding any other terms, you may reverse engineer this software to the
extent required to debug changes to any libraries licensed under the GNU Lesser
General Public License.


================================================
FILE: AISKU/PRIVACY
================================================
# Data Collection

The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. You may turn off the telemetry as described in the repository. There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft’s privacy statement. Our privacy statement is located at https://go.microsoft.com/fwlink/?LinkID=824704. You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.

================================================
FILE: AISKU/README.md
================================================
<properties
	pageTitle="Application Insights JavaScript SDK - AISKU"
	description="Reference doc"
	services="application-insights"
    documentationCenter=".net"
/>

<tags
	ms.service="application-insights"
	ms.workload="tbd"
	ms.tgt_pltfrm="ibiza"
	ms.devlang="na"
	ms.topic="article"
	ms.date="10/8/2019"/>

# Microsoft Application Insights JavaScript SDK - Web

[![GitHub Workflow Status (main)](https://img.shields.io/github/actions/workflow/status/microsoft/ApplicationInsights-JS/ci.yml?branch=main)](https://github.com/microsoft/ApplicationInsights-JS/tree/main)
[![Build Status](https://dev.azure.com/mseng/AppInsights/_apis/build/status/AppInsights%20-%20DevTools/1DS%20JavaScript%20SDK%20web%20SKU%20vNext?branchName=main)](https://dev.azure.com/mseng/AppInsights/_build/latest?definitionId=8184&branchName=main)
[![npm version](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web.svg)](https://badge.fury.io/js/%40microsoft%2Fapplicationinsights-web)

Application Insights SDK is a package that combines commonly used packages for Web scenarios.
Refer to [our GitHub page](https://github.com/microsoft/applicationinsights-js) for more details on getting started.

## V3.x Release Breaking changes

- Removed ES3 / IE8 Support
- Removed V1 API Backward Compatibility (Upgrading V1 -> V3)

See [Breaking Changes](https://microsoft.github.io/ApplicationInsights-JS/upgrade/v3_BreakingChanges.html)

## CDN Version Release Summary (with Size tracking)

| Version | Full Size | Raw Minified | GZip Size
|---------|-----------|--------------|-------------
| [&lt;nightly3&gt;](https://github.com/microsoft/ApplicationInsights-JS/tree/main/AISKU)  | [![full size size](https://js.monitor.azure.com/nightly/ai.3-nightly3.js.svg)](https://js.monitor.azure.com/nightly/ai.3-nightly3.js.svg)| ![minified size size](https://js.monitor.azure.com/nightly/ai.3-nightly3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/nightly/ai.3-nightly3.min.js.gzip.svg)
| 3.4.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.4.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.4.1.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.4.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.4.1.min.js.gzip.svg)
| 3.4.0-beta:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.4.0-beta.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.4.0-beta.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.4.0-beta.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.11.min.js.gzip.svg)
| 3.3.11:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.11.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.11.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.11.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.11.min.js.gzip.svg)
| 3.3.10:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.10.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.10.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.10.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.10.min.js.gzip.svg)
| 3.3.9:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.9.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.9.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.9.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.9.min.js.gzip.svg)
| 3.3.8:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.8.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.8.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.8.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.8.min.js.gzip.svg)
| 3.3.7:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.7.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.7.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.7.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.7.min.js.gzip.svg)
| 3.3.6:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.6.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.6.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.6.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.6.min.js.gzip.svg)
| 3.3.5:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.5.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.5.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.5.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.5.min.js.gzip.svg)
| 3.3.4:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.4.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.4.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.4.min.js.gzip.svg)
| 3.3.3:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.3.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.3.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.3.min.js.gzip.svg)
| 3.3.2:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.2.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.2.min.js.gzip.svg)
| 3.3.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.1.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.1.min.js.gzip.svg)
| 3.3.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.3.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.3.0.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.3.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.3.0.min.js.gzip.svg)
| 3.2.2:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.2.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.2.2.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.2.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.2.2.min.js.gzip.svg)
| 3.2.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.2.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.2.1.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.2.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.2.1.min.js.gzip.svg)
| 3.2.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.2.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.2.0.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.2.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.2.0.min.js.gzip.svg)
| 3.1.2:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.1.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.1.2.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.1.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.1.2.min.js.gzip.svg)
| 3.1.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.1.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.1.1.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.1.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.1.1.min.js.gzip.svg)
| 3.1.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.1.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.1.0.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.1.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.1.0.min.js.gzip.svg)
| 3.0.9:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.0.9.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.0.9.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.0.9.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.0.8.min.js.gzip.svg)
| 3.0.8:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.0.8.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.0.8.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.0.8.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.0.8.min.js.gzip.svg)
| 3.0.7:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.0.7.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.0.7.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.0.7.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.0.7.min.js.gzip.svg)
| 3.0.6:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.0.6.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.0.6.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.0.6.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.0.5.min.js.gzip.svg)
| 3.0.5:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.0.5.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.0.5.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.0.5.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.0.5.min.js.gzip.svg)
| 3.0.4:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.3.0.4.js.svg)](https://js.monitor.azure.com/scripts/b/ai.3.0.4.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.3.0.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.3.0.4.min.js.gzip.svg)
| [<nightly>](https://github.com/microsoft/ApplicationInsights-JS/tree/master/AISKU)  | [![full size size](https://js.monitor.azure.com/nightly/ai.2-nightly.js.svg)](https://js.monitor.azure.com/nightly/ai.2-nightly.js.svg)| ![minified size size](https://js.monitor.azure.com/nightly/ai.2-nightly.min.js.svg) | ![gzip size](https://js.monitor.azure.com/nightly/ai.2-nightly.min.js.gzip.svg)
| 2.8.18:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.18.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.18.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.18.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.18.min.js.gzip.svg)
| 2.8.17:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.17.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.17.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.17.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.17.min.js.gzip.svg)
| 2.8.16:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.16.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.16.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.16.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.16.min.js.gzip.svg)
| 2.8.15:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.15.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.15.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.15.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.15.min.js.gzip.svg)
| 2.8.14:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.14.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.14.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.14.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.14.min.js.gzip.svg)
| 2.8.13:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.13.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.13.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.13.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.13.min.js.gzip.svg)
| [2.8.12](https://github.com/microsoft/ApplicationInsights-JS/tree/master/AISKU):  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.12.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.12.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.12.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.12.min.js.gzip.svg)
| 2.8.11:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.11.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.11.js.svg)| ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.11.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.11.min.js.gzip.svg)
| 2.8.10: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.10.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.10.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.10.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.10.min.js.gzip.svg)
| 2.8.9: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.9.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.9.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.9.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.9.min.js.gzip.svg)
| 2.8.8: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.8.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.8.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.8.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.8.min.js.gzip.svg)
| 2.8.7: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.7.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.7.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.7.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.7.min.js.gzip.svg)
| 2.8.6: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.6.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.6.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.6.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.6.min.js.gzip.svg)
| 2.8.5: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.5.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.5.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.5.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.5.min.js.gzip.svg)
| 2.8.4: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.4.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.4.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.4.min.js.gzip.svg)
| 2.8.3: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.3.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.3.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.3.min.js.gzip.svg)
| 2.8.2: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.2.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.2.min.js.gzip.svg)
| 2.8.1: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.1.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.1.min.js.gzip.svg)
| 2.8.0: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.8.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.8.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.8.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.8.0.min.js.gzip.svg)
| 2.7.4: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.7.4.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.7.4.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.7.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.7.4.min.js.gzip.svg)
| 2.7.3: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.7.3.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.7.3.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.7.3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.7.3.min.js.gzip.svg)
| 2.7.2: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.7.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.7.2.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.7.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.7.2.min.js.gzip.svg)
| 2.7.1: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.7.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.7.1.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.7.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.7.1.min.js.gzip.svg)
| 2.7.0: | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.7.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.7.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.7.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.7.0.min.js.gzip.svg)
| 2.6.5:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.6.5.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.6.5.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.6.5.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.6.5.min.js.gzip.svg)
| 2.6.4:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.6.4.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.6.4.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.6.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.6.4.min.js.gzip.svg)
| 2.6.3:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.6.3.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.6.3.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.6.3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.6.3.min.js.gzip.svg)
| 2.6.2:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.6.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.6.2.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.6.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.6.2.min.js.gzip.svg)
| 2.6.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.6.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.6.1.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.6.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.6.1.min.js.gzip.svg)
| 2.6.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.6.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.6.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.6.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.6.0.min.js.gzip.svg)
| 2.5.11:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.11.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.11.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.11.min.js.gzip.svg)
| 2.5.10:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.10.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.10.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.10.min.js.gzip.svg)
| 2.5.9:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.9.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.9.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.9.min.js.gzip.svg)
| 2.5.8:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.8.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.8.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.8.min.js.gzip.svg)
| 2.5.7:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.7.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.7.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.7.min.js.gzip.svg)
| 2.5.6:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.6.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.6.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.6.min.js.gzip.svg)
| 2.5.5:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.5.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.5.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.5.min.js.gzip.svg)
| 2.5.4:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.4.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.4.min.js.gzip.svg)
| 2.5.3:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.3.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.3.min.js.gzip.svg)
| 2.5.2:  | ![full size size](https://js.monitor.azure.com/scripts/b/ai.2.5.2.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.5.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.5.2.min.js.gzip.svg)
| 2.5.0 - 2.5.1 | Not Deployed to CDN |  |
| 2.4.4:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.4.4.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.4.4.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.4.4.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.4.4.min.js.gzip.svg)
| 2.4.3:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.4.3.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.4.3.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.4.3.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.4.3.min.js.gzip.svg)
| 2.4.2:  | Not Deployed to CDN
| 2.4.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.4.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.4.1.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.4.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.4.1.min.js.gzip.svg)
| 2.4.0:  | Not Deployed to CDN
| 2.3.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.3.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.3.1.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.3.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.3.1.min.js.gzip.svg)
| 2.3.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.3.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.3.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.3.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.3.0.min.js.gzip.svg)
| 2.2.2:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.2.2.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.2.2.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.2.2.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.2.2.min.js.gzip.svg)
| 2.2.1:  | Not Deployed to CDN
| 2.2.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.2.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.2.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.2.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.2.0.min.js.gzip.svg)
| 2.1.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.1.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.1.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.1.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.1.0.min.js.gzip.svg)
| 2.0.1:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.0.1.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.0.1.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.0.1.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.0.1.min.js.gzip.svg)
| 2.0.0:  | [![full size size](https://js.monitor.azure.com/scripts/b/ai.2.0.0.js.svg)](https://js.monitor.azure.com/scripts/b/ai.2.0.0.js.svg) | ![minified size size](https://js.monitor.azure.com/scripts/b/ai.2.0.0.min.js.svg) | ![gzip size](https://js.monitor.azure.com/scripts/b/ai.2.0.0.min.js.gzip.svg)


## Contributing

This project welcomes contributions and suggestions. Most contributions require you to
agree to a Contributor License Agreement (CLA) declaring that you have the right to,
and actually do, grant us the rights to use your contribution. For details, visit
https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need
to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the
instructions provided by the bot. You will only need to do this once across all repositories using our CLA.

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

## Data Collection

As this SDK is designed to enable applications to perform data collection which is sent to the Microsoft collection endpoints the following is required to identify our privacy statement.

The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. You may turn off the telemetry as described in the repository. There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft’s privacy statement. Our privacy statement is located at https://go.microsoft.com/fwlink/?LinkID=824704. You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.

## Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow [Microsoft’s Trademark & Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general). Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.

## License

[MIT](LICENSE)


================================================
FILE: AISKU/Tests/Manual/HelloWorld.html
================================================
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Home Page - HelloWorld</title>
    <!-- <link rel="stylesheet" href="/lib/bootstrap/dist/css/bootstrap.min.css" />
    <link rel="stylesheet" href="/css/site.css" /> -->
</head>
<body>
    <header>
        <nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
            <div class="container">
                <h1 class="display-4">Welcome</h1>
            </div>
        </nav>
    </header>
    <div class="container">
        <main role="main" class="pb-3">
            
<div class="text-center">
    From your repository<br/>
    Perform a full build <code>rush rebuild</code><br/>
    Enable the test http server <code>npm run serve</code><br />
    <a href="http://localhost:9001/AISKU/Tests/Manual/HelloWorld.html">Load this page from the local service</a>
    <ul>
        <li>Load in different browsers and ensure that the events are attempted to be sent</li>
        <li>Use different browsers, Firefox, Chrome and Edge</li>
        <li>Using Edge enable IE Mode</li>
        <div>
            Use IEChooser to debug and change the Emulation mode
            <ul>
                <li>Default IE 11</li>
                <li>Default IE 10</li>
                <li>Default IE 9</li>
                <li>Default IE 8</li>
                <li>Default IE 7 - This will fail due to no JSON implementation, the console should show a warning</li>
            </ul>

        </div>
    </ul>
    Note: The send attempt will fail, but you should see the outbound network attempt. If not debug the code and find out why!
</div>
<div>
    <textarea id="log" style="width:45%; min-height: 400px;"></textarea>
    <textarea id="cfg" style="width:50%; min-height: 400px;"></textarea>
</div>

<script>
    //Promise = null;
    var _message = {
        log: "", 
        cfg: ""
    };

    function logMessage(message, dest, line) {
        var dateTime = new Date().toLocaleString();
        var target = dest || "log";
        var elm = document.getElementById(target);
        _message[target] = dateTime + ": " + message + "\n" + (line ? "------------------------\n" : "") + (_message[target] ||"");
        if (_message[target].length > 4096) {
            _message[target] = _message[target].substring(0, 4090) + "...\n";
        }

        elm.innerHTML = _message[target];
    }
</script>

<!-- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> -->

<!-- <script src="file://./ai.2.8.0.js"></script> -->
<script src="http://localhost:9001/AISKU/browser/es5/ai.3.js"></script>
<!-- <script src="https://js.monitor.azure.com/scripts/b/ai.2.7.4.js" crossorigin="anonymous"></script> -->
<!-- <script src="https://js.monitor.azure.com/scripts/b/ai.2.8.0.js" crossorigin="anonymous"></script> -->
<!-- <script>
    // Snippet v5
    var enableDebug = true;
    var instrumentationKey = "2bd72339-a683-4cce-8ed7-b1b0e8700000";

    !function(T,l,y){var S=T.location,k="script",D="instrumentationKey",C="ingestionendpoint",I="disableExceptionTracking",E="ai.device.",b="toLowerCase",w="crossOrigin",N="POST",e="appInsightsSDK",t=y.name||"appInsights";(y.name||T[e])&&(T[e]=t);var n=T[t]||function(d){var g=!1,f=!1,m={initialize:!0,queue:[],sv:"5",version:2,config:d};function v(e,t){var n={},a="Browser";return n[E+"id"]=a[b](),n[E+"type"]=a,n["ai.operation.name"]=S&&S.pathname||"_unknown_",n["ai.internal.sdkVersion"]="javascript:snippet_"+(m.sv||m.version),{time:function(){var e=new Date;function t(e){var t=""+e;return 1===t.length&&(t="0"+t),t}return e.getUTCFullYear()+"-"+t(1+e.getUTCMonth())+"-"+t(e.getUTCDate())+"T"+t(e.getUTCHours())+":"+t(e.getUTCMinutes())+":"+t(e.getUTCSeconds())+"."+((e.getUTCMilliseconds()/1e3).toFixed(3)+"").slice(2,5)+"Z"}(),iKey:e,name:"Microsoft.ApplicationInsights."+e.replace(/-/g,"")+"."+t,sampleRate:100,tags:n,data:{baseData:{ver:2}}}}var h=d.url||y.src;if(h){function a(e){var t,n,a,i,r,o,s,c,u,p,l;g=!0,m.queue=[],f||(f=!0,t=h,s=function(){var e={},t=d.connectionString;if(t)for(var n=t.split(";"),a=0;a<n.length;a++){var i=n[a].split("=");2===i.length&&(e[i[0][b]()]=i[1])}if(!e[C]){var r=e.endpointsuffix,o=r?e.location:null;e[C]="https://"+(o?o+".":"")+"dc."+(r||"services.visualstudio.com")}return e}(),c=s[D]||d[D]||"",u=s[C],p=u?u+"/v2/track":d.endpointUrl,(l=[]).push((n="SDK LOAD Failure: Failed to load Application Insights SDK script (See stack for details)",a=t,i=p,(o=(r=v(c,"Exception")).data).baseType="ExceptionData",o.baseData.exceptions=[{typeName:"SDKLoadFailed",message:n.replace(/\./g,"-"),hasFullStack:!1,stack:n+"\nSnippet failed to load ["+a+"] -- Telemetry is disabled\nHelp Link: https://go.microsoft.com/fwlink/?linkid=2128109\nHost: "+(S&&S.pathname||"_unknown_")+"\nEndpoint: "+i,parsedStack:[]}],r)),l.push(function(e,t,n,a){var i=v(c,"Message"),r=i.data;r.baseType="MessageData";var o=r.baseData;return o.message='AI (Internal): 99 message:"'+("SDK LOAD Failure: Failed to load Application Insights SDK script (See stack for details) ("+n+")").replace(/\"/g,"")+'"',o.properties={endpoint:a},i}(0,0,t,p)),function(e,t){if(JSON){var n=T.fetch;if(n&&!y.useXhr)n(t,{method:N,body:JSON.stringify(e),mode:"cors"});else if(XMLHttpRequest){var a=new XMLHttpRequest;a.open(N,t),a.setRequestHeader("Content-type","application/json"),a.send(JSON.stringify(e))}}}(l,p))}function i(e,t){f||setTimeout(function(){!t&&m.core||a()},500)}var e=function(){var n=l.createElement(k);n.src=h;var e=y[w];return!e&&""!==e||"undefined"==n[w]||(n[w]=e),n.onload=i,n.onerror=a,n.onreadystatechange=function(e,t){"loaded"!==n.readyState&&"complete"!==n.readyState||i(0,t)},n}();y.ld<0?l.getElementsByTagName("head")[0].appendChild(e):setTimeout(function(){l.getElementsByTagName(k)[0].parentNode.appendChild(e)},y.ld||0)}try{m.cookie=l.cookie}catch(p){}function t(e){for(;e.length;)!function(t){m[t]=function(){var e=arguments;g||m.queue.push(function(){m[t].apply(m,e)})}}(e.pop())}var n="track",r="TrackPage",o="TrackEvent";t([n+"Event",n+"PageView",n+"Exception",n+"Trace",n+"DependencyData",n+"Metric",n+"PageViewPerformance","start"+r,"stop"+r,"start"+o,"stop"+o,"addTelemetryInitializer","setAuthenticatedUserContext","clearAuthenticatedUserContext","flush"]),m.SeverityLevel={Verbose:0,Information:1,Warning:2,Error:3,Critical:4};var s=(d.extensionConfig||{}).ApplicationInsightsAnalytics||{};if(!0!==d[I]&&!0!==s[I]){var c="onerror";t(["_"+c]);var u=T[c];T[c]=function(e,t,n,a,i){var r=u&&u(e,t,n,a,i);return!0!==r&&m["_"+c]({message:e,url:t,lineNumber:n,columnNumber:a,error:i}),r},d.autoExceptionInstrumented=!0}return m}(y.cfg);function a(){y.onInit&&y.onInit(n)}(T[t]=n).queue&&0===n.queue.length?(n.queue.push(a),n.trackPageView({})):a()}(window,document,{
    src: "http://localhost:9001/AISKU/browser/ai.2x.js", // The SDK URL Source
    // name: "appInsights", // Global SDK Instance name defaults to "appInsights" when not supplied
    // ld: 0, // Defines the load delay (in ms) before attempting to load the sdk. -1 = block page load and add to head. (default) = 0ms load after timeout,
    // useXhr: 1, // Use XHR instead of fetch to report failures (if available),
    // crossOrigin: "anonymous", // When supplied this will add the provided value as the cross origin attribute on the script tag
    // onInit: null, // Once the application insights instance has loaded and initialized this callback function will be called with 1 argument - the sdk instance (DO NOT ADD anything to the sdk.queue - As they won't get called)
    cfg: { // Application Insights Configuration
        connectionString: "InstrumentationKey=" + instrumentationKey + ";IngestionEndpoint=http://localhost:9001",
        //extensions: [reactPlugin],
        enableDebug: true,
        loggingLevelConsole: enableDebug ? 2 : 0,
        loggingLevelTelemetry: enableDebug ? 2 : 1,
        autoTrackPageVisitTime: true,
        enableAutoRouteTracking: true,
        enableDebugExceptions: enableDebug,
        enableUnhandledPromiseRejectionTracking: true,
        enableCorsCorrelation: false,
        enableRequestHeaderTracking: true,
        enableResponseHeaderTracking: true
    }});
</script> -->
<script>
    // Snippet v5
    var enableDebug = true;
    var instrumentationKey = "2bd72339-a683-4cce-8ed7-b1b0e8700000";

    !(function (cfg){function e(){cfg.onInit&&cfg.onInit(a)}var v,y,T,t,n,a,k=window,S=document,D=k.location,C="script",x="ingestionendpoint",w="disableExceptionTracking",I="ai.device.";"instrumentationKey"[v="toLowerCase"](),y="crossOrigin",T="POST",t="appInsightsSDK",n=cfg.name||"appInsights",(cfg.name||k[t])&&(k[t]=n),a=k[n]||function(l){var u=!1,d=!1,g={initialize:!0,queue:[],sv:"7",version:2,config:l};function f(e,t){var n={},a="Browser";function i(e){e=""+e;return 1===e.length?"0"+e:e}return n[I+"id"]=a[v](),n[I+"type"]=a,n["ai.operation.name"]=D&&D.pathname||"_unknown_",n["ai.internal.sdkVersion"]="javascript:snippet_"+(g.sv||g.version),{time:(a=new Date).getUTCFullYear()+"-"+i(1+a.getUTCMonth())+"-"+i(a.getUTCDate())+"T"+i(a.getUTCHours())+":"+i(a.getUTCMinutes())+":"+i(a.getUTCSeconds())+"."+(a.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5)+"Z",iKey:e,name:"Microsoft.ApplicationInsights."+e.replace(/-/g,"")+"."+t,sampleRate:100,tags:n,data:{baseData:{ver:2}},ver:4,seq:"1",aiDataContract:undefined}}var n,a,e,i,m=l.url||cfg.src;m&&((o=navigator)&&(~(o=(o.userAgent||"").toLowerCase()).indexOf("msie")||~o.indexOf("trident/"))&&~m.indexOf("ai.3")&&(m=m.replace(/(\/)(ai\.3\.)([^\d]*)$/,function(e,t,n){return t+"ai.2"+n})),n=function(e){var t,n,a,i,o,r,s,c,p;u=!0,g.queue=[],d||(d=!0,i=m,s=(c=function(){var e,t={},n=l.connectionString;if(n)for(var a=n.split(";"),i=0;i<a.length;i++){var o=a[i].split("=");2===o.length&&(t[o[0][v]()]=o[1])}return t[x]||(e=(n=t.endpointsuffix)?t.location:null,t[x]="https://"+(e?e+".":"")+"dc."+(n||"services.visualstudio.com")),t}()).instrumentationkey||l.instrumentationKey||"",c=(c=c[x])?c+"/v2/track":l.endpointUrl,(p=[]).push((t="SDK LOAD Failure: Failed to load Application Insights SDK script (See stack for details)",n=i,o=c,(r=(a=f(s,"Exception")).data).baseType="ExceptionData",r.baseData.exceptions=[{typeName:"SDKLoadFailed",message:t.replace(/\./g,"-"),hasFullStack:!1,stack:t+"\nSnippet failed to load ["+n+"] -- Telemetry is disabled\nHelp Link: https://go.microsoft.com/fwlink/?linkid=2128109\nHost: "+(D&&D.pathname||"_unknown_")+"\nEndpoint: "+o,parsedStack:[]}],a)),p.push((r=i,t=c,(o=(n=f(s,"Message")).data).baseType="MessageData",(a=o.baseData).message='AI (Internal): 99 message:"'+("SDK LOAD Failure: Failed to load Application Insights SDK script (See stack for details) ("+r+")").replace(/\"/g,"")+'"',a.properties={endpoint:t},n)),i=p,s=c,JSON&&((o=k.fetch)&&!cfg.useXhr?o(s,{method:T,body:JSON.stringify(i),mode:"cors"}):XMLHttpRequest&&((r=new XMLHttpRequest).open(T,s),r.setRequestHeader("Content-type","application/json"),r.send(JSON.stringify(i)))))},a=function(e,t){d||setTimeout(function(){!t&&g.core||n()},500)},(i=S.createElement(C)).src=m,!(o=cfg[y])&&""!==o||"undefined"==i[y]||(i[y]=o),i.onload=a,i.onerror=n,i.onreadystatechange=function(e,t){"loaded"!==i.readyState&&"complete"!==i.readyState||a(0,t)},e=i,cfg.ld&&cfg.ld<0?S.getElementsByTagName("head")[0].appendChild(e):setTimeout(function(){S.getElementsByTagName(C)[0].parentNode.appendChild(e)},cfg.ld||0));try{g.cookie=S.cookie}catch(h){}function t(e){for(;e.length;)!function(t){g[t]=function(){var e=arguments;u||g.queue.push(function(){g[t].apply(g,e)})}}(e.pop())}var r,s,o="track",c="TrackPage",p="TrackEvent",o=(t([o+"Event",o+"PageView",o+"Exception",o+"Trace",o+"DependencyData",o+"Metric",o+"PageViewPerformance","start"+c,"stop"+c,"start"+p,"stop"+p,"addTelemetryInitializer","setAuthenticatedUserContext","clearAuthenticatedUserContext","flush"]),g.SeverityLevel={Verbose:0,Information:1,Warning:2,Error:3,Critical:4},(l.extensionConfig||{}).ApplicationInsightsAnalytics||{});return!0!==l[w]&&!0!==o[w]&&(t(["_"+(r="onerror")]),s=k[r],k[r]=function(e,t,n,a,i){var o=s&&s(e,t,n,a,i);return!0!==o&&g["_"+r]({message:e,url:t,lineNumber:n,columnNumber:a,error:i,evt:k.event}),o},l.autoExceptionInstrumented=!0),g}(cfg.cfg),(k[n]=a).queue&&0===a.queue.length?(a.queue.push(e),a.trackPageView({})):e();})({
        src: "http://localhost:9001/AISKU/browser/ai.2x.js", // The SDK URL Source
        // name: "appInsights", // Global SDK Instance name defaults to "appInsights" when not supplied
        // ld: 0, // Defines the load delay (in ms) before attempting to load the sdk. -1 = block page load and add to head. (default) = 0ms load after timeout,
        // useXhr: 1, // Use XHR instead of fetch to report failures (if available),
        // crossOrigin: "anonymous", // When supplied this will add the provided value as the cross origin attribute on the script tag
        // onInit: null, // Once the application insights instance has loaded and initialized this callback function will be called with 1 argument -- the sdk instance (DO NOT ADD anything to the sdk.queue -- As they won't get called)
        cfg: { // Application Insights Configuration
            connectionString: "InstrumentationKey=" + instrumentationKey + ";IngestionEndpoint=http://localhost:9001",
            //extensions: [reactPlugin],
            enableDebug: true,
            loggingLevelConsole: enableDebug ? 2 : 0,
            loggingLevelTelemetry: enableDebug ? 2 : 1,
            autoTrackPageVisitTime: true,
            enableAutoRouteTracking: true,
            enableDebugExceptions: enableDebug,
            enableUnhandledPromiseRejectionTracking: true,
            enableCorsCorrelation: false,
            enableRequestHeaderTracking: true,
            enableResponseHeaderTracking: true
        }
    });
</script>

<script>

    //var sdkInstance="appInsightsSDK";window[sdkInstance]="appInsights";var aiName=window[sdkInstance],aisdk=window[aiName]||function(e){function n(e){t[e]=function(){var n=arguments;t.queue.push(function(){t[e].apply(t,n)})}}var t={config:e};t.initialize=!0;var i=document,a=window;setTimeout(function(){var n=i.createElement("script");n.src=e.url||"https://az416426.vo.msecnd.net/scripts/b/ai.2.min.js",i.getElementsByTagName("script")[0].parentNode.appendChild(n)});try{t.cookie=i.cookie}catch(e){}t.queue=[],t.version=2;for(var r=["Event","PageView","Exception","Trace","DependencyData","Metric","PageViewPerformance"];r.length;)n("track"+r.pop());n("startTrackPage"),n("stopTrackPage");var s="Track"+r[0];if(n("start"+s),n("stop"+s),n("addTelemetryInitializer"),n("setAuthenticatedUserContext"),n("clearAuthenticatedUserContext"),n("flush"),t.SeverityLevel={Verbose:0,Information:1,Warning:2,Error:3,Critical:4},!(!0===e.disableExceptionTracking||e.extensionConfig&&e.extensionConfig.ApplicationInsightsAnalytics&&!0===e.extensionConfig.ApplicationInsightsAnalytics.disableExceptionTracking)){n("_"+(r="onerror"));var o=a[r];a[r]=function(e,n,i,a,s){var c=o&&o(e,n,i,a,s);return!0!==c&&t["_"+r]({message:e,url:n,lineNumber:i,columnNumber:a,error:s}),c},e.autoExceptionInstrumented=!0}return t}(
    //    {
    //        instrumentationKey: "2bd72339-a683-4cce-8ed7-b1b0e8767295"
    //    }
    //); window[aiName] = aisdk, aisdk.queue && 0 === aisdk.queue.length && aisdk.trackPageView({});


    // var sdkInstance="appInsightsSDK";window[sdkInstance]="appInsights";var aiName=window[sdkInstance],aisdk=window[aiName]||function(e){function n(e){t[e]=function(){var n=arguments;t.queue.push(function(){t[e].apply(t,n)})}}var t={config:e};t.initialize=!0;var i=document,a=window;setTimeout(function(){var n=i.createElement("script");n.src=e.url||"https://az416426.vo.msecnd.net/scripts/b/ai.2.8.0.js",i.getElementsByTagName("script")[0].parentNode.appendChild(n)});try{t.cookie=i.cookie}catch(e){}t.queue=[],t.version=2;for(var r=["Event","PageView","Exception","Trace","DependencyData","Metric","PageViewPerformance"];r.length;)n("track"+r.pop());n("startTrackPage"),n("stopTrackPage");var s="Track"+r[0];if(n("start"+s),n("stop"+s),n("addTelemetryInitializer"),n("setAuthenticatedUserContext"),n("clearAuthenticatedUserContext"),n("flush"),t.SeverityLevel={Verbose:0,Information:1,Warning:2,Error:3,Critical:4},!(!0===e.disableExceptionTracking||e.extensionConfig&&e.extensionConfig.ApplicationInsightsAnalytics&&!0===e.extensionConfig.ApplicationInsightsAnalytics.disableExceptionTracking)){n("_"+(r="onerror"));var o=a[r];a[r]=function(e,n,i,a,s){var c=o&&o(e,n,i,a,s);return!0!==c&&t["_"+r]({message:e,url:n,lineNumber:i,columnNumber:a,error:s}),c},e.autoExceptionInstrumented=!0}return t}(
    //     {
    //         url: "./ai.2.8.0.js",
    //         instrumentationKey: "2bd72339-a683-4cce-8ed7-b1b0e8767295",
    //         enableCorsCorrelation: true,
    //         enableApplicationInsightsTrace: true
    //     }
    // ); window[aiName] = aisdk;

    // if (aisdk.queue && aisdk.queue.length === 0) {
    //     setTimeout(function() {
    //         aisdk.properties.context.telemetryTrace.traceID = "<server operation id>"
    //         aisdk.properties.context.telemetryTrace.parentID = "<server request id>"
    //         aisdk.properties.context.telemetryTrace.name = "<server operation name>"
    //         aisdk.trackPageView();
    //     }, 100);
    // }

    var enableDebug = true;
    var instrumentationKey = "2bd72339-a683-4cce-8ed7-b1b0e8700000";
    var appInsights = new Microsoft.ApplicationInsights.ApplicationInsights({
        config: {
            instrumentationKey: instrumentationKey,
            endpointUrl: "http://localhost:9001/v2/track",
            //extensions: [reactPlugin],
            enableDebug: false,
            loggingLevelConsole: enableDebug ? 2 : 0,
            loggingLevelTelemetry: enableDebug ? 2 : 1,
            autoTrackPageVisitTime: true,
            enableAutoRouteTracking: true,
            enableDebugExceptions: enableDebug,
            enableUnhandledPromiseRejectionTracking: true,
            enableCorsCorrelation: false,
            enableRequestHeaderTracking: true,
            enableResponseHeaderTracking: true,
            hello: "World"
        }
    });

    appInsights.onCfgChange(function (details) {
        logMessage("onCfgChange 1 - called", null, true);

        logMessage("endpointUrl: " + details.cfg.endpointUrl);
    });

    appInsights.onCfgChange(function (details) {
        logMessage("onCfgChange 2 - called", null, true);

        logMessage("instrumentationKey: " + details.cfg.instrumentationKey);
    });

    appInsights.onCfgChange(function (details) {
        logMessage(JSON.stringify(details.cfg, stringifyReplacer, 4), "cfg");
        logMessage("onCfgChange 3 - called", "cfg");
    });

    appInsights.onCfgChange(function (details) {
        logMessage("onCfgChange 4 - called", null, true);
        if (details.cfg.enableDebug) {
            logMessage("Debug Enable - " + details.cfg.loggingLevelConsole);
        } else {
            logMessage("Debug Not enabled!");
        }
    });

    
    appInsights.loadAppInsights();
    appInsights.trackPageView();    


    function stringifyReplacer(name, value) {
        if (name === "extensions" || name === "channels") {
            return "[... (" + (value ? value.length : 0) + ") ...]";
        }

        return value;
    }

    //$.ajax({
    //    url: "https://www.mocky.io/v2/5185415ba171ea3a00704eed",
    //    type: 'GET',
    //    dataType: 'json', // added data type
    //    success: function(res) {
    //        console.log(res.hello);
    //        alert(res.hello);
    //    }
    //});

</script>
        </main>
    </div>

    <footer class="border-top footer text-muted">
        <div class="container">
            &copy; 2019 - HelloWorld
        </div>
    </footer>
    
</body>
</html>

================================================
FILE: AISKU/Tests/Manual/README.md
================================================
# Span API End-to-End (E2E) Tests

This directory contains end-to-end tests for the new Span APIs that send real telemetry to Azure Application Insights (Breeze endpoint) for manual validation in the Azure Portal.

## 📁 Files

- **`SpanE2E.Tests.ts`** - Automated E2E test suite that can be configured to send real telemetry
- **`span-e2e-manual-test.html`** - Interactive HTML page for manual testing with visual feedback

## 🚀 Quick Start - Manual HTML Testing

The easiest way to test is using the interactive HTML page:

1. **Get your Application Insights credentials**:
   - Go to [Azure Portal](https://portal.azure.com)
   - Navigate to your Application Insights resource (or create a new one)
   - Copy the **Instrumentation Key** or **Connection String** from the Overview page

2. **Open the test page**:
   ```bash
   # Option 1: Open directly in browser
   open AISKU/Tests/Manual/span-e2e-manual-test.html
   
   # Option 2: Serve via local web server
   cd AISKU/Tests/Manual
   python -m http.server 8080
   # Then open http://localhost:8080/span-e2e-manual-test.html
   ```

3. **Run tests**:
   - Paste your Instrumentation Key or Connection String
   - Click "Initialize SDK"
   - Run individual tests or click "Run All Tests"
   - Watch the output log for confirmation

4. **View results in Azure Portal**:
   - Wait 1-2 minutes for telemetry to arrive
   - Go to your Application Insights resource
   - Navigate to **Performance** → **Dependencies** or **Requests**
   - Use **Search** to find specific test scenarios
   - Click **"View in End-to-End Transaction"** to see distributed traces

## 🧪 Automated Test Suite

### Configuration

To run the automated test suite with real telemetry:

1. Open [`SpanE2E.Tests.ts`](../Unit/src/SpanE2E.Tests.ts)

2. Update the configuration:
   ```typescript
   // Set to true to send real telemetry
   private static readonly MANUAL_E2E_TEST = true;
   
   // Replace with your instrumentation key
   private static readonly _instrumentationKey = "YOUR-IKEY-HERE";
   ```

3. Run the tests:
   ```bash
   # From repository root
   rush build
   rush test
   ```

### Test Scenarios Included

The test suite covers:

#### Basic Span Tests
- ✅ CLIENT span → RemoteDependency
- ✅ SERVER span → Request  
- ✅ Failed span → success=false

#### Distributed Trace Tests
- ✅ Parent-child relationships
- ✅ 3-level nested hierarchy
- ✅ Context propagation

#### HTTP Dependency Tests
- ✅ Various HTTP methods (GET, POST, PUT, DELETE)
- ✅ Multiple status codes (2xx, 4xx, 5xx)
- ✅ Full HTTP details (headers, body size, response time)

#### Database Dependency Tests
- ✅ MySQL, PostgreSQL, MongoDB, Redis, SQL Server
- ✅ SQL statements and operations
- ✅ Slow query scenarios

#### Complex Scenarios
- ✅ E-commerce checkout flow (7 dependencies)
- ✅ Mixed success and failure operations
- ✅ Rich custom properties for filtering

## 🔍 What to Look For in the Portal

### Performance Blade

**Dependencies Tab**:
- Look for CLIENT, PRODUCER, and INTERNAL spans
- Verify dependency types (Http, mysql, postgresql, redis, etc.)
- Check duration, target, and result codes
- Examine custom properties in the details pane

**Requests Tab**:
- Look for SERVER and CONSUMER spans
- Verify URLs, methods, and status codes
- Check success/failure status
- View response codes and durations

### Search Feature

Filter by custom properties to find specific test runs:
```
customDimensions.test.scenario == "ecommerce"
customDimensions.test.timestamp >= datetime(2025-12-01)
customDimensions.business.tenant == "manual-test-corp"
```

### End-to-End Transaction View

1. Click any request or dependency
2. Click **"View in End-to-End Transaction"**
3. See the complete distributed trace:
   - Timeline showing span durations
   - Parent-child relationships
   - All related dependencies
   - Custom properties at each level

### Transaction Timeline

Look for:
- ✅ Correct parent-child relationships (indentation)
- ✅ Proper span nesting (visual hierarchy)
- ✅ Accurate duration calculations
- ✅ Operation IDs matching across spans
- ✅ Custom dimensions preserved throughout

## 📊 Expected Results

### Test: Basic CLIENT Span
- **Portal Location**: Performance → Dependencies
- **Dependency Type**: "Dependency" or "Http"
- **Custom Properties**: test.scenario, test.timestamp

### Test: Parent-Child Trace
- **Portal Location**: End-to-End Transaction view
- **Expected**: 1 Request + 2 Dependencies
- **Relationship**: Both children reference same parent operation.id

### Test: E-commerce Checkout
- **Portal Location**: End-to-End Transaction view
- **Expected**: 1 Request + 7 Dependencies
- **Types**: Http (inventory, payment, email), Database (create order), Redis (cache)
- **Duration**: Parent spans entire operation

### Test: Rich Custom Properties
- **Portal Location**: Search → Custom dimensions filter
- **Expected Properties**: 
  - business.tenant
  - user.subscription
  - feature.* flags
  - performance.* metrics

## 🐛 Troubleshooting

### Telemetry not appearing in portal

1. **Wait longer**: Initial ingestion can take 1-3 minutes
2. **Check time filter**: Ensure portal is showing last 30 minutes
3. **Verify iKey**: Confirm instrumentation key is correct
4. **Check browser console**: Look for SDK errors
5. **Flush telemetry**: Call `appInsights.flush()` in tests

### SDK initialization fails

1. **Valid credentials**: Verify instrumentation key format
2. **CORS issues**: Ensure application is running on http/https (not file://)
3. **Browser compatibility**: Use modern browser (Chrome, Edge, Firefox)

### Missing custom properties

1. **Property name limits**: Check for truncation (8192 char limit)
2. **Reserved names**: Some property names are filtered (http.*, db.*, microsoft.*)
3. **Type preservation**: Ensure values are correct types (string, number, boolean)

## 📝 Adding New Test Scenarios

To add a new E2E test scenario:

1. **In SpanE2E.Tests.ts**:
   ```typescript
   this.testCase({
       name: "E2E: Your new scenario",
       test: () => {
           const span = this._ai.startSpan("E2E-YourScenario", {
               kind: eOTelSpanKind.CLIENT,
               attributes: {
                   "test.scenario": "your-scenario",
                   "custom.property": "value"
               }
           });
           
           if (span) {
               span.setStatus({ code: eOTelSpanStatusCode.OK });
               span.end();
           }
           
           this._ai.flush();
           Assert.ok(span, "Span created");
       }
   });
   ```

2. **In span-e2e-manual-test.html**:
   ```javascript
   function testYourScenario() {
       if (!appInsights) return;
       
       const span = appInsights.startSpan('E2E-Manual-YourScenario', {
           kind: 1, // CLIENT
           attributes: {
               'test.scenario': 'your-scenario',
               'custom.property': 'value'
           }
       });
       
       if (span) {
           span.setStatus({ code: 1 });
           span.end();
           log('✅ Your scenario sent', 'success');
       }
       appInsights.flush();
   }
   ```

## 🎯 Best Practices

1. **Use descriptive names**: Prefix test spans with "E2E-" or "Manual-"
2. **Include timestamps**: Add test.timestamp for filtering
3. **Add scenario tags**: Use test.scenario for grouping
4. **Flush after tests**: Always call `flush()` to send immediately
5. **Wait before checking**: Give telemetry 1-2 minutes to arrive
6. **Use unique identifiers**: Help distinguish between test runs
7. **Clean up regularly**: Archive or delete old test data

## 🔗 Resources

- [Application Insights Overview](https://docs.microsoft.com/azure/azure-monitor/app/app-insights-overview)
- [OpenTelemetry Specification](https://opentelemetry.io/docs/specs/otel/trace/api/)
- [Azure Portal](https://portal.azure.com)
- [Application Insights SDK Documentation](../../../README.md)

## 🤝 Contributing

When adding new E2E tests:
1. Follow existing naming conventions (E2E-* prefix)
2. Include relevant custom properties
3. Document expected portal behavior
4. Update this README with new scenarios
5. Test manually before committing


================================================
FILE: AISKU/Tests/Manual/ai1.test.js
================================================
"use strict";var AI,Microsoft,__extends=this&&this.__extends||function(){var i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};return function(e,t){function n(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}}();function _endsWith(e,t){var n=e.length,i=n-t.length;return e.substring(0<=i?i:0,n)===t}!function(e){e.ApplicationInsights||(e.ApplicationInsights={})}(Microsoft||(Microsoft={})),function(e){var t;t=function n(){},(e.Telemetry||(e.Telemetry={})).Base=t}(Microsoft||(Microsoft={})),function(e){var t;t=function n(){this.ver=1,this.sampleRate=100,this.tags={}},(e.Telemetry||(e.Telemetry={})).Envelope=t}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(t.Context={})}(Microsoft||(Microsoft={})),function(e){e.ApplicationInsights||(e.ApplicationInsights={})}(Microsoft||(Microsoft={})),function(e){e.ApplicationInsights||(e.ApplicationInsights={})}(Microsoft||(Microsoft={})),function(e){e.ApplicationInsights||(e.ApplicationInsights={})}(Microsoft||(Microsoft={})),function(e){var t;(t=e.SeverityLevel||(e.SeverityLevel={}))[t.Verbose=0]="Verbose",t[t.Information=1]="Information",t[t.Warning=2]="Warning",t[t.Error=3]="Error",t[t.Critical=4]="Critical"}(AI||(AI={})),function(e){e.ApplicationInsights||(e.ApplicationInsights={})}(Microsoft||(Microsoft={})),function(e){!function(s){var l,e,c,t;(e=l=s.LoggingSeverity||(s.LoggingSeverity={}))[e.CRITICAL=0]="CRITICAL",e[e.WARNING=1]="WARNING",(t=c=s._InternalMessageId||(s._InternalMessageId={}))[t.BrowserDoesNotSupportLocalStorage=0]="BrowserDoesNotSupportLocalStorage",t[t.BrowserCannotReadLocalStorage=1]="BrowserCannotReadLocalStorage",t[t.BrowserCannotReadSessionStorage=2]="BrowserCannotReadSessionStorage",t[t.BrowserCannotWriteLocalStorage=3]="BrowserCannotWriteLocalStorage",t[t.BrowserCannotWriteSessionStorage=4]="BrowserCannotWriteSessionStorage",t[t.BrowserFailedRemovalFromLocalStorage=5]="BrowserFailedRemovalFromLocalStorage",t[t.BrowserFailedRemovalFromSessionStorage=6]="BrowserFailedRemovalFromSessionStorage",t[t.CannotSendEmptyTelemetry=7]="CannotSendEmptyTelemetry",t[t.ClientPerformanceMathError=8]="ClientPerformanceMathError",t[t.ErrorParsingAISessionCookie=9]="ErrorParsingAISessionCookie",t[t.ErrorPVCalc=10]="ErrorPVCalc",t[t.ExceptionWhileLoggingError=11]="ExceptionWhileLoggingError",t[t.FailedAddingTelemetryToBuffer=12]="FailedAddingTelemetryToBuffer",t[t.FailedMonitorAjaxAbort=13]="FailedMonitorAjaxAbort",t[t.FailedMonitorAjaxDur=14]="FailedMonitorAjaxDur",t[t.FailedMonitorAjaxOpen=15]="FailedMonitorAjaxOpen",t[t.FailedMonitorAjaxRSC=16]="FailedMonitorAjaxRSC",t[t.FailedMonitorAjaxSend=17]="FailedMonitorAjaxSend",t[t.FailedMonitorAjaxGetCorrelationHeader=18]="FailedMonitorAjaxGetCorrelationHeader",t[t.FailedToAddHandlerForOnBeforeUnload=19]="FailedToAddHandlerForOnBeforeUnload",t[t.FailedToSendQueuedTelemetry=20]="FailedToSendQueuedTelemetry",t[t.FailedToReportDataLoss=21]="FailedToReportDataLoss",t[t.FlushFailed=22]="FlushFailed",t[t.MessageLimitPerPVExceeded=23]="MessageLimitPerPVExceeded",t[t.MissingRequiredFieldSpecification=24]="MissingRequiredFieldSpecification",t[t.NavigationTimingNotSupported=25]="NavigationTimingNotSupported",t[t.OnError=26]="OnError",t[t.SessionRenewalDateIsZero=27]="SessionRenewalDateIsZero",t[t.SenderNotInitialized=28]="SenderNotInitialized",t[t.StartTrackEventFailed=29]="StartTrackEventFailed",t[t.StopTrackEventFailed=30]="StopTrackEventFailed",t[t.StartTrackFailed=31]="StartTrackFailed",t[t.StopTrackFailed=32]="StopTrackFailed",t[t.TelemetrySampledAndNotSent=33]="TelemetrySampledAndNotSent",t[t.TrackEventFailed=34]="TrackEventFailed",t[t.TrackExceptionFailed=35]="TrackExceptionFailed",t[t.TrackMetricFailed=36]="TrackMetricFailed",t[t.TrackPVFailed=37]="TrackPVFailed",t[t.TrackPVFailedCalc=38]="TrackPVFailedCalc",t[t.TrackTraceFailed=39]="TrackTraceFailed",t[t.TransmissionFailed=40]="TransmissionFailed",t[t.FailedToSetStorageBuffer=41]="FailedToSetStorageBuffer",t[t.FailedToRestoreStorageBuffer=42]="FailedToRestoreStorageBuffer",t[t.InvalidBackendResponse=43]="InvalidBackendResponse",t[t.FailedToFixDepricatedValues=44]="FailedToFixDepricatedValues",t[t.InvalidDurationValue=45]="InvalidDurationValue",t[t.CannotSerializeObject=46]="CannotSerializeObject",t[t.CannotSerializeObjectNonSerializable=47]="CannotSerializeObjectNonSerializable",t[t.CircularReferenceDetected=48]="CircularReferenceDetected",t[t.ClearAuthContextFailed=49]="ClearAuthContextFailed",t[t.ExceptionTruncated=50]="ExceptionTruncated",t[t.IllegalCharsInName=51]="IllegalCharsInName",t[t.ItemNotInArray=52]="ItemNotInArray",t[t.MaxAjaxPerPVExceeded=53]="MaxAjaxPerPVExceeded",t[t.MessageTruncated=54]="MessageTruncated",t[t.NameTooLong=55]="NameTooLong",t[t.SampleRateOutOfRange=56]="SampleRateOutOfRange",t[t.SetAuthContextFailed=57]="SetAuthContextFailed",t[t.SetAuthContextFailedAccountName=58]="SetAuthContextFailedAccountName",t[t.StringValueTooLong=59]="StringValueTooLong",t[t.StartCalledMoreThanOnce=60]="StartCalledMoreThanOnce",t[t.StopCalledWithoutStart=61]="StopCalledWithoutStart",t[t.TelemetryInitializerFailed=62]="TelemetryInitializerFailed",t[t.TrackArgumentsNotSpecified=63]="TrackArgumentsNotSpecified",t[t.UrlTooLong=64]="UrlTooLong",t[t.SessionStorageBufferFull=65]="SessionStorageBufferFull",t[t.CannotAccessCookie=66]="CannotAccessCookie",t[t.IdTooLong=67]="IdTooLong";var g=function(){function a(e,t,n,i){void 0===n&&(n=!1),this.messageId=e,this.message=(n?a.AiUserActionablePrefix:a.AiNonUserActionablePrefix)+c[e].toString();var o=(t?" message:"+a.sanitizeDiagnosticText(t):"")+(i?" props:"+a.sanitizeDiagnosticText(JSON.stringify(i)):"");this.message+=o}return a.sanitizeDiagnosticText=function(e){return'"'+e.replace(/\"/g,"")+'"'},a.AiNonUserActionablePrefix="AI (Internal): ",a.AiUserActionablePrefix="AI: ",a}();s._InternalLogMessage=g;var n=function(){function r(){}return r.throwInternal=function(e,t,n,i,o){void 0===o&&(o=!1);var a=new g(t,n,o,i);if(this.enableDebugExceptions())throw a;if(void 0!==a&&a&&"undefined"!=typeof a.message){if(o){var r=c[a.messageId];this._messageLogged[r]&&!this.verboseLogging()||(this.warnToConsole(a.message),this._messageLogged[r]=!0)}else this.verboseLogging()&&this.warnToConsole(a.message);this.logInternalMessage(e,a)}},r.warnToConsole=function(e){"undefined"!=typeof console&&console&&("function"==typeof console.warn?console.warn(e):"function"==typeof console.log&&console.log(e))},r.resetInternalMessageCount=function(){this._messageCount=0,this._messageLogged={}},r.clearInternalMessageLoggedTypes=function(){if(s.Util.canUseSessionStorage())for(var e=s.Util.getSessionStorageKeys(),t=0;t<e.length;t++)0===e[t].indexOf(r.AIInternalMessagePrefix)&&s.Util.removeSessionStorage(e[t])},r.setMaxInternalMessageLimit=function(e){if(!e)throw new Error("limit cannot be undefined.");this.MAX_INTERNAL_MESSAGE_LIMIT=e},r.logInternalMessage=function(e,t){if(!this._areInternalMessagesThrottled()){var n=!0,i=r.AIInternalMessagePrefix+c[t.messageId];if(s.Util.canUseSessionStorage())s.Util.getSessionStorage(i)?n=!1:s.Util.setSessionStorage(i,"1");else this._messageLogged[i]?n=!1:this._messageLogged[i]=!0;if(n&&((this.verboseLogging()||e===l.CRITICAL)&&(this.queue.push(t),this._messageCount++),this._messageCount==this.MAX_INTERNAL_MESSAGE_LIMIT)){var o="Internal events throttle limit per PageView reached for this app.",a=new g(c.MessageLimitPerPVExceeded,o,!1);this.queue.push(a),this.warnToConsole(o)}}},r._areInternalMessagesThrottled=function(){return this._messageCount>=this.MAX_INTERNAL_MESSAGE_LIMIT},r.AIInternalMessagePrefix="AITR_",r.enableDebugExceptions=function(){return!1},r.verboseLogging=function(){return!1},r.queue=[],r.MAX_INTERNAL_MESSAGE_LIMIT=25,r._messageCount=0,r._messageLogged={},r}();s._InternalLogging=n}(e.ApplicationInsights||(e.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function(){function e(){}return e.newId=function(){for(var e="",t=1073741824*Math.random();0<t;){e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t%64),t=Math.floor(t/64)}return e},e}(),t.UtilHelpers=n}(Microsoft||(Microsoft={})),function(e){!function(o){var a,e;(e=a||(a={}))[e.LocalStorage=0]="LocalStorage",e[e.SessionStorage=1]="SessionStorage";var t=function(){function r(){}return r.disableStorage=function(){r._canUseLocalStorage=!1,r._canUseSessionStorage=!1},r._getLocalStorageObject=function(){return r.canUseLocalStorage()?r._getVerifiedStorageObject(a.LocalStorage):null},r._getVerifiedStorageObject=function(e){var t,n,i=null;try{n=new Date,(i=e===a.LocalStorage?window.localStorage:window.sessionStorage).setItem(n,n),t=i.getItem(n)!=n,i.removeItem(n),t&&(i=null)}catch(o){i=null}return i},r.isInternalApplicationInsightsEndpoint=function(e){return-1!==r._internalEndpoints.indexOf(e.toLowerCase())},r.canUseLocalStorage=function(){return r._canUseLocalStorage===undefined&&(r._canUseLocalStorage=!!r._getVerifiedStorageObject(a.LocalStorage)),r._canUseLocalStorage},r.getStorage=function(e){var t=r._getLocalStorageObject();if(null!==t)try{return t.getItem(e)}catch(n){r._canUseLocalStorage=!1,o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.BrowserCannotReadLocalStorage,"Browser failed read of local storage. "+r.getExceptionName(n),{exception:r.dump(n)})}return null},r.setStorage=function(e,t){var n=r._getLocalStorageObject();if(null!==n)try{return n.setItem(e,t),!0}catch(i){r._canUseLocalStorage=!1,o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.BrowserCannotWriteLocalStorage,"Browser failed write to local storage. "+r.getExceptionName(i),{exception:r.dump(i)})}return!1},r.removeStorage=function(e){var t=r._getLocalStorageObject();if(null!==t)try{return t.removeItem(e),!0}catch(n){r._canUseLocalStorage=!1,o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.BrowserFailedRemovalFromLocalStorage,"Browser failed removal of local storage item. "+r.getExceptionName(n),{exception:r.dump(n)})}return!1},r._getSessionStorageObject=function(){return r.canUseSessionStorage()?r._getVerifiedStorageObject(a.SessionStorage):null},r.canUseSessionStorage=function(){return r._canUseSessionStorage===undefined&&(r._canUseSessionStorage=!!r._getVerifiedStorageObject(a.SessionStorage)),r._canUseSessionStorage},r.getSessionStorageKeys=function(){var e=[];if(r.canUseSessionStorage())for(var t in window.sessionStorage)e.push(t);return e},r.getSessionStorage=function(e){var t=r._getSessionStorageObject();if(null!==t)try{return t.getItem(e)}catch(n){r._canUseSessionStorage=!1,o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.BrowserCannotReadSessionStorage,"Browser failed read of session storage. "+r.getExceptionName(n),{exception:r.dump(n)})}return null},r.setSessionStorage=function(e,t){var n=r._getSessionStorageObject();if(null!==n)try{return n.setItem(e,t),!0}catch(i){r._canUseSessionStorage=!1,o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.BrowserCannotWriteSessionStorage,"Browser failed write to session storage. "+r.getExceptionName(i),{exception:r.dump(i)})}return!1},r.removeSessionStorage=function(e){var t=r._getSessionStorageObject();if(null!==t)try{return t.removeItem(e),!0}catch(n){r._canUseSessionStorage=!1,o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.BrowserFailedRemovalFromSessionStorage,"Browser failed removal of session storage item. "+r.getExceptionName(n),{exception:r.dump(n)})}return!1},r.disableCookies=function(){r._canUseCookies=!1},r.canUseCookies=function(){if(r._canUseCookies===undefined){r._canUseCookies=!1;try{r._canUseCookies=r.document.cookie!==undefined}catch(e){o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.CannotAccessCookie,"Cannot access document.cookie - "+r.getExceptionName(e),{exception:r.dump(e)})}}return r._canUseCookies},r.disallowsSameSiteNone=function(e){return"string"==typeof e&&(-1!==e.indexOf("CPU iPhone OS 12")||-1!==e.indexOf("iPad; CPU OS 12")||(-1!==e.indexOf("Macintosh; Intel Mac OS X 10_14")&&-1!==e.indexOf("Version/")&&-1!==e.indexOf("Safari")||(!(-1===e.indexOf("Macintosh; Intel Mac OS X 10_14")||!_endsWith(e,"AppleWebKit/605.1.15 (KHTML, like Gecko)"))||(-1!==e.indexOf("Chrome/5")||-1!==e.indexOf("Chrome/6")||(-1!==e.indexOf("UnrealEngine")&&-1===e.indexOf("Chrome")||(-1!==e.indexOf("UCBrowser/12")||-1!==e.indexOf("UCBrowser/11")))))))},r.setCookie=function(e,t,n){var i="",o="";n&&(i=";domain="+n),r.document.location&&"https:"===r.document.location.protocol&&(o=";secure",null===r._uaDisallowsSameSiteNone&&"undefined"!=typeof navigator&&(r._uaDisallowsSameSiteNone=r.disallowsSameSiteNone(navigator.userAgent)),r._uaDisallowsSameSiteNone||(t+=";SameSite=None")),r.canUseCookies()&&(r.document.cookie=e+"="+t+i+";path=/"+o)},r.stringToBoolOrDefault=function(e,t){return void 0===t&&(t=!1),e===undefined||null===e?t:"true"===e.toString().toLowerCase()},r.getCookie=function(e){if(r.canUseCookies()){var t="";if(e&&e.length)for(var n=e+"=",i=r.document.cookie.split(";"),o=0;o<i.length;o++){var a=i[o];if((a=r.trim(a))&&0===a.indexOf(n)){t=a.substring(n.length,i[o].length);break}}return t}},r.deleteCookie=function(e){r.canUseCookies()&&(r.document.cookie=e+"=;path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT;")},r.trim=function(e){return"string"!=typeof e?e:e.replace(/^\s+|\s+$/g,"")},r.newId=function(){return o.UtilHelpers.newId()},r.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)},r.isError=function(e){return"[object Error]"===Object.prototype.toString.call(e)},r.isDate=function(e){return"[object Date]"===Object.prototype.toString.call(e)},r.toISOStringForIE8=function(e){if(r.isDate(e)){if(Date.prototype.toISOString)return e.toISOString();var t=function(e){var t=String(e);return 1===t.length&&(t="0"+t),t};return e.getUTCFullYear()+"-"+t(e.getUTCMonth()+1)+"-"+t(e.getUTCDate())+"T"+t(e.getUTCHours())+":"+t(e.getUTCMinutes())+":"+t(e.getUTCSeconds())+"."+String((e.getUTCMilliseconds()/1e3).toFixed(3)).slice(2,5)+"Z"}},r.getIEVersion=function(e){void 0===e&&(e=null);var t=e?e.toLowerCase():navigator.userAgent.toLowerCase();return-1!=t.indexOf("msie")?parseInt(t.split("msie")[1]):null},r.msToTimeSpan=function(e){(isNaN(e)||e<0)&&(e=0);var t=""+(e=Math.round(e))%1e3,n=""+Math.floor(e/1e3)%60,i=""+Math.floor(e/6e4)%60,o=""+Math.floor(e/36e5)%24,a=Math.floor(e/864e5);return t=1===t.length?"00"+t:2===t.length?"0"+t:t,n=n.length<2?"0"+n:n,i=i.length<2?"0"+i:i,(0<a?a+".":"")+(o=o.length<2?"0"+o:o)+":"+i+":"+n+"."+t},r.isCrossOriginError=function(e,t,n,i,o){return("Script error."===e||"Script error"===e)&&!o},r.dump=function(e){var t=Object.prototype.toString.call(e),n=JSON.stringify(e);return"[object Error]"===t&&(n="{ stack: '"+e.stack+"', message: '"+e.message+"', name: '"+e.name+"'"),t+n},r.getExceptionName=function(e){return"[object Error]"===Object.prototype.toString.call(e)?e.name:""},r.addEventHandler=function(e,t){if(!window||"string"!=typeof e||"function"!=typeof t)return!1;var n="on"+e;if(window.addEventListener)window.addEventListener(e,t,!1);else{if(!window.attachEvent)return!1;window.attachEvent(n,t)}return!0},r.IsBeaconApiSupported=function(){return"sendBeacon"in navigator&&navigator.sendBeacon},r.document="undefined"!=typeof document?document:{},r._canUseCookies=undefined,r._canUseLocalStorage=undefined,r._canUseSessionStorage=undefined,r._uaDisallowsSameSiteNone=null,r._internalEndpoints=["https://dc.services.visualstudio.com/v2/track","https://breeze.aimon.applicationinsights.io/v2/track","https://dc-int.services.visualstudio.com/v2/track"],r.NotSpecified="not_specified",r}();o.Util=t;var r=function(){function i(){}return i.parseUrl=function(e){return i.htmlAnchorElement||(i.htmlAnchorElement=i.document.createElement?i.document.createElement("a"):{host:i.parseHost(e)}),i.htmlAnchorElement.href=e,i.htmlAnchorElement},i.parseHost=function(e){var t=e.match(/:\/\/(www[0-9]?\.)?(.[^/:]+)/i);return null!=t&&2<t.length&&"string"==typeof t[2]&&0<t[2].length?t[2]:null},i.getAbsoluteUrl=function(e){var t,n=i.parseUrl(e);return n&&(t=n.href),t},i.getPathName=function(e){var t,n=i.parseUrl(e);return n&&(t=n.pathname),t},i.getCompleteUrl=function(e,t){return e?e.toUpperCase()+" "+t:t},i.document="undefined"!=typeof document?document:{},i}();o.UrlHelper=r;var n=function(){function n(){}return n.canIncludeCorrelationHeader=function(e,t,n){if(e&&e.disableCorrelationHeaders)return!1;if(!t)return!1;var i=r.parseUrl(t).host.toLowerCase();if(!(e&&e.enableCorsCorrelation||i===n))return!1;var o=e&&e.correlationHeaderExcludedDomains;if(!o||0==o.length)return!0;for(var a=0;a<o.length;a++){if(new RegExp(o[a].toLowerCase().replace(/\./g,".").replace(/\*/g,".*")).test(i))return!1}return!0},n.getCorrelationContext=function(e){if(e){var t=n.getCorrelationContextValue(e,o.RequestHeaders.requestContextTargetKey);if(t&&t!==n.correlationIdPrefix)return t}},n.getCorrelationContextValue=function(e,t){if(e)for(var n=e.split(","),i=0;i<n.length;++i){var o=n[i].split("=");if(2==o.length&&o[0]==t)return o[1]}},n.correlationIdPrefix="cid-v1:",n}();o.CorrelationIdHelper=n}(e.ApplicationInsights||(e.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(e){!function(f){var h,e;(e=h=f.FieldType||(f.FieldType={}))[e.Default=0]="Default",e[e.Required=1]="Required",e[e.Array=2]="Array",e[e.Hidden=4]="Hidden";var t=function(){function d(){}return d.serialize=function(e){var t=d._serializeObject(e,"root");return JSON.stringify(t)},d._serializeObject=function(e,t){var n="__aiCircularRefCheck",i={};if(!e)return f._InternalLogging.throwInternal(f.LoggingSeverity.CRITICAL,f._InternalMessageId.CannotSerializeObject,"cannot serialize object because it is null or undefined",{name:t},!0),i;if(e[n])return f._InternalLogging.throwInternal(f.LoggingSeverity.WARNING,f._InternalMessageId.CircularReferenceDetected,"Circular reference detected while serializing object",{name:t},!0),i;if(!e.aiDataContract){if("measurements"===t)i=d._serializeStringMap(e,"number",t);else if("properties"===t)i=d._serializeStringMap(e,"string",t);else if("tags"===t)i=d._serializeStringMap(e,"string",t);else if(f.Util.isArray(e))i=d._serializeArray(e,t);else{f._InternalLogging.throwInternal(f.LoggingSeverity.WARNING,f._InternalMessageId.CannotSerializeObjectNonSerializable,"Attempting to serialize an object which does not implement ISerializable",{name:t},!0);try{JSON.stringify(e),i=e}catch(p){f._InternalLogging.throwInternal(f.LoggingSeverity.CRITICAL,f._InternalMessageId.CannotSerializeObject,p&&"function"==typeof p.toString?p.toString():"Error serializing object",null,!0)}}return i}for(var o in e[n]=!0,e.aiDataContract){var a,r=e.aiDataContract[o],s="function"==typeof r?r()&h.Required:r&h.Required,l="function"==typeof r?r()&h.Hidden:r&h.Hidden,c=r&h.Array,g=e[o]!==undefined,u="object"==typeof e[o]&&null!==e[o];if(!s||g||c){if(!l)(a=u?c?d._serializeArray(e[o],o):d._serializeObject(e[o],o):e[o])!==undefined&&(i[o]=a)}else f._InternalLogging.throwInternal(f.LoggingSeverity.CRITICAL,f._InternalMessageId.MissingRequiredFieldSpecification,"Missing required field specification. The field is required but not present on source",{field:o,name:t})}return delete e[n],i},d._serializeArray=function(e,t){var n=undefined;if(e)if(f.Util.isArray(e)){n=[];for(var i=0;i<e.length;i++){var o=e[i],a=d._serializeObject(o,t+"["+i+"]");n.push(a)}}else f._InternalLogging.throwInternal(f.LoggingSeverity.CRITICAL,f._InternalMessageId.ItemNotInArray,"This field was specified as an array in the contract but the item is not an array.\r\n",{name:t},!0);return n},d._serializeStringMap=function(e,t,n){var i=undefined;if(e)for(var o in i={},e){var a=e[o];if("string"===t)a===undefined?i[o]="undefined":null===a?i[o]="null":a.toString?i[o]=a.toString():i[o]="invalid field: toString() is not defined.";else if("number"===t)if(a===undefined)i[o]="undefined";else if(null===a)i[o]="null";else{var r=parseFloat(a);isNaN(r)?i[o]="NaN":i[o]=r}else i[o]="invalid field: "+n+" is of unknown type.",f._InternalLogging.throwInternal(f.LoggingSeverity.CRITICAL,i[o],null,!0)}return i},d}();f.Serializer=t}(e.ApplicationInsights||(e.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(e){var o,t,a,n;o=e.ApplicationInsights||(e.ApplicationInsights={}),t=o.Telemetry||(o.Telemetry={}),a=t.Common||(t.Common={}),n=function(i){function e(e,t){var n=i.call(this)||this;return n.name=a.DataSanitizer.sanitizeString(t)||o.Util.NotSpecified,n.data=e,n.time=o.Util.toISOStringForIE8(new Date),n.aiDataContract={time:o.FieldType.Required,iKey:o.FieldType.Required,name:o.FieldType.Required,sampleRate:function(){return 100==n.sampleRate?o.FieldType.Hidden:o.FieldType.Required},tags:o.FieldType.Required,data:o.FieldType.Required},n}return __extends(e,i),e}(e.Telemetry.Envelope),a.Envelope=n}(Microsoft||(Microsoft={})),function(e){var t,n,i,o;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=t.Telemetry||(t.Telemetry={}),i=n.Common||(n.Common={}),o=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.aiDataContract={},e}return __extends(e,t),e}(e.Telemetry.Base),i.Base=o}(Microsoft||(Microsoft={})),function(e){var t=function n(){this.applicationVersion="ai.application.ver",this.applicationBuild="ai.application.build",this.applicationTypeId="ai.application.typeId",this.applicationId="ai.application.applicationId",this.applicationLayer="ai.application.layer",this.deviceId="ai.device.id",this.deviceIp="ai.device.ip",this.deviceLanguage="ai.device.language",this.deviceLocale="ai.device.locale",this.deviceModel="ai.device.model",this.deviceFriendlyName="ai.device.friendlyName",this.deviceNetwork="ai.device.network",this.deviceNetworkName="ai.device.networkName",this.deviceOEMName="ai.device.oemName",this.deviceOS="ai.device.os",this.deviceOSVersion="ai.device.osVersion",this.deviceRoleInstance="ai.device.roleInstance",this.deviceRoleName="ai.device.roleName",this.deviceScreenResolution="ai.device.screenResolution",this.deviceType="ai.device.type",this.deviceMachineName="ai.device.machineName",this.deviceVMName="ai.device.vmName",this.deviceBrowser="ai.device.browser",this.deviceBrowserVersion="ai.device.browserVersion",this.locationIp="ai.location.ip",this.locationCountry="ai.location.country",this.locationProvince="ai.location.province",this.locationCity="ai.location.city",this.operationId="ai.operation.id",this.operationName="ai.operation.name",this.operationParentId="ai.operation.parentId",this.operationRootId="ai.operation.rootId",this.operationSyntheticSource="ai.operation.syntheticSource",this.operationCorrelationVector="ai.operation.correlationVector",this.sessionId="ai.session.id",this.sessionIsFirst="ai.session.isFirst",this.sessionIsNew="ai.session.isNew",this.userAccountAcquisitionDate="ai.user.accountAcquisitionDate",this.userAccountId="ai.user.accountId",this.userAgent="ai.user.userAgent",this.userId="ai.user.id",this.userStoreRegion="ai.user.storeRegion",this.userAuthUserId="ai.user.authUserId",this.userAnonymousUserAcquisitionDate="ai.user.anonUserAcquisitionDate",this.userAuthenticatedUserAcquisitionDate="ai.user.authUserAcquisitionDate",this.cloudName="ai.cloud.name",this.cloudRole="ai.cloud.role",this.cloudRoleVer="ai.cloud.roleVer",this.cloudRoleInstance="ai.cloud.roleInstance",this.cloudEnvironment="ai.cloud.environment",this.cloudLocation="ai.cloud.location",this.cloudDeploymentUnit="ai.cloud.deploymentUnit",this.internalSdkVersion="ai.internal.sdkVersion",this.internalAgentVersion="ai.internal.agentVersion",this.internalNodeName="ai.internal.nodeName"};(AI||(AI={})).ContextTagKeys=t}(),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function i(){},(t.Context||(t.Context={})).Application=n}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function i(){this.id="browser",this.type="Browser"},(t.Context||(t.Context={})).Device=n}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function i(e){this.sdkVersion=(e.sdkExtension()?e.sdkExtension()+"_":"")+"javascript:"+t.Version},(t.Context||(t.Context={})).Internal=n}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function i(){},(t.Context||(t.Context={})).Location=n}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function i(){this.id=t.Util.newId(),window&&window.location&&window.location.pathname&&(this.name=window.location.pathname)},(t.Context||(t.Context={})).Operation=n}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function(){function i(){}return i.prototype.getHashCodeScore=function(e){return 100*(this.getHashCode(e)/i.INT_MAX_VALUE)},i.prototype.getHashCode=function(e){if(""==e)return 0;for(;e.length<i.MIN_INPUT_LENGTH;)e=e.concat(e);for(var t=5381,n=0;n<e.length;++n)t=(t<<5)+t+e.charCodeAt(n),t&=t;return Math.abs(t)},i.INT_MAX_VALUE=2147483647,i.MIN_INPUT_LENGTH=8,i}(),t.HashCodeScoreGenerator=n}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function(){function e(){this.hashCodeGeneragor=new t.HashCodeScoreGenerator}return e.prototype.getSamplingScore=function(e){var t=new AI.ContextTagKeys;return e.tags[t.userId]?this.hashCodeGeneragor.getHashCodeScore(e.tags[t.userId]):e.tags[t.operationId]?this.hashCodeGeneragor.getHashCodeScore(e.tags[t.operationId]):Math.random()},e}(),t.SamplingScoreGenerator=n}(Microsoft||(Microsoft={})),function(e){var t,n,i;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=t.Context||(t.Context={}),i=function(){function e(e){this.INT_MAX_VALUE=2147483647,(100<e||e<0)&&(t._InternalLogging.throwInternal(t.LoggingSeverity.WARNING,t._InternalMessageId.SampleRateOutOfRange,"Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.",{samplingRate:e},!0),this.sampleRate=100),this.sampleRate=e,this.samplingScoreGenerator=new t.SamplingScoreGenerator}return e.prototype.isSampledIn=function(e){return 100==this.sampleRate||this.samplingScoreGenerator.getSamplingScore(e)<this.sampleRate},e}(),n.Sample=i}(Microsoft||(Microsoft={})),function(e){var l;(function(e){var t=function i(){};e.Session=t;var n=function(){function i(e){e||(e={}),"function"!=typeof e.sessionExpirationMs&&(e.sessionExpirationMs=function(){return i.acquisitionSpan}),"function"!=typeof e.sessionRenewalMs&&(e.sessionRenewalMs=function(){return i.renewalSpan}),this.config=e,this.automaticSession=new t}return i.prototype.update=function(){this.automaticSession.id||this.initializeAutomaticSession();var e=l.dateTime.Now(),t=e-this.automaticSession.acquisitionDate>this.config.sessionExpirationMs(),n=e-this.automaticSession.renewalDate>this.config.sessionRenewalMs();t||n?(this.automaticSession.isFirst=undefined,this.renew()):(!this.cookieUpdatedTimestamp||e-this.cookieUpdatedTimestamp>i.cookieUpdateInterval)&&(this.automaticSession.renewalDate=e,this.setCookie(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate))},i.prototype.backup=function(){this.setStorage(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate)},i.prototype.initializeAutomaticSession=function(){var e=l.Util.getCookie("ai_session");if(e&&"function"==typeof e.split)this.initializeAutomaticSessionWithData(e);else{var t=l.Util.getStorage("ai_session");t&&this.initializeAutomaticSessionWithData(t)}this.automaticSession.id||(this.automaticSession.isFirst=!0,this.renew())},i.prototype.initializeAutomaticSessionWithData=function(e){var t=e.split("|");0<t.length&&(this.automaticSession.id=t[0]);try{if(1<t.length){var n=+t[1];this.automaticSession.acquisitionDate=+new Date(n),this.automaticSession.acquisitionDate=0<this.automaticSession.acquisitionDate?this.automaticSession.acquisitionDate:0}if(2<t.length){var i=+t[2];this.automaticSession.renewalDate=+new Date(i),this.automaticSession.renewalDate=0<this.automaticSession.renewalDate?this.automaticSession.renewalDate:0}}catch(o){l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.ErrorParsingAISessionCookie,"Error parsing ai_session cookie, session will be reset: "+l.Util.getExceptionName(o),{exception:l.Util.dump(o)})}0==this.automaticSession.renewalDate&&l._InternalLogging.throwInternal(l.LoggingSeverity.WARNING,l._InternalMessageId.SessionRenewalDateIsZero,"AI session renewal date is 0, session will be reset.")},i.prototype.renew=function(){var e=l.dateTime.Now();this.automaticSession.id=l.Util.newId(),this.automaticSession.acquisitionDate=e,this.automaticSession.renewalDate=e,this.setCookie(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate),l.Util.canUseLocalStorage()||l._InternalLogging.throwInternal(l.LoggingSeverity.WARNING,l._InternalMessageId.BrowserDoesNotSupportLocalStorage,"Browser does not support local storage. Session durations will be inaccurate.")},i.prototype.setCookie=function(e,t,n){var i=t+this.config.sessionExpirationMs(),o=n+this.config.sessionRenewalMs(),a=new Date,r=[e,t,n];i<o?a.setTime(i):a.setTime(o);var s=this.config.cookieDomain?this.config.cookieDomain():null;l.Util.setCookie("ai_session",r.join("|")+";expires="+a.toUTCString(),s),this.cookieUpdatedTimestamp=l.dateTime.Now()},i.prototype.setStorage=function(e,t,n){l.Util.setStorage("ai_session",[e,t,n].join("|"))},i.acquisitionSpan=864e5,i.renewalSpan=18e5,i.cookieUpdateInterval=6e4,i}();e._SessionManager=n})((l=e.ApplicationInsights||(e.ApplicationInsights={})).Context||(l.Context={}))}(Microsoft||(Microsoft={})),function(e){var g,t,n;g=e.ApplicationInsights||(e.ApplicationInsights={}),t=g.Context||(g.Context={}),n=function(){function c(e){var t=g.Util.getCookie(c.userCookieName);if(t){var n=t.split(c.cookieSeparator);0<n.length&&(this.id=n[0])}if(this.config=e,!this.id){this.id=g.Util.newId();var i=new Date,o=g.Util.toISOStringForIE8(i);this.accountAcquisitionDate=o,i.setTime(i.getTime()+31536e6);var a=[this.id,o],r=this.config.cookieDomain?this.config.cookieDomain():undefined;g.Util.setCookie(c.userCookieName,a.join(c.cookieSeparator)+";expires="+i.toUTCString(),r),g.Util.removeStorage("ai_session")}this.accountId=e.accountId?e.accountId():undefined;var s=g.Util.getCookie(c.authUserCookieName);if(s){var l=(s=decodeURI(s)).split(c.cookieSeparator);l[0]&&(this.authenticatedId=l[0]),1<l.length&&l[1]&&(this.accountId=l[1])}}return c.prototype.setAuthenticatedUserContext=function(e,t,n){if(void 0===n&&(n=!1),!this.validateUserInput(e)||t&&!this.validateUserInput(t))g._InternalLogging.throwInternal(g.LoggingSeverity.WARNING,g._InternalMessageId.SetAuthContextFailedAccountName,"Setting auth user context failed. User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars.",!0);else{this.authenticatedId=e;var i=this.authenticatedId;t&&(this.accountId=t,i=[this.authenticatedId,this.accountId].join(c.cookieSeparator)),n&&g.Util.setCookie(c.authUserCookieName,encodeURI(i),this.config.cookieDomain())}},c.prototype.clearAuthenticatedUserContext=function(){this.authenticatedId=null,this.accountId=null,g.Util.deleteCookie(c.authUserCookieName)},c.prototype.validateUserInput=function(e){return!("string"!=typeof e||!e||e.match(/,|;|=| |\|/))},c.cookieSeparator="|",c.userCookieName="ai_user",c.authUserCookieName="ai_authUser",c}(),t.User=n}(Microsoft||(Microsoft={})),function(e){!function(r){var o=function(){function e(){}return e.IsNullOrUndefined=function(e){return null==e},e}();r.extensions=o;var e=function(){function e(){}return e.GetLength=function(e){var t=0;if(!o.IsNullOrUndefined(e)){var n="";try{n=e.toString()}catch(i){}t=n.length,t=isNaN(t)?0:t}return t},e}();r.stringUtils=e;var t=function(){function e(){}return e.Now=window.performance&&window.performance.now&&window.performance.timing?function(){return window.performance.now()+window.performance.timing.navigationStart}:function(){return(new Date).getTime()},e.GetDuration=function(e,t){var n=null;return 0===e||0===t||o.IsNullOrUndefined(e)||o.IsNullOrUndefined(t)||(n=t-e),n},e}();r.dateTime=t;var n=function(){function e(){}return e.AttachEvent=function(e,t,n){var i=!1;return o.IsNullOrUndefined(e)||(o.IsNullOrUndefined(e.attachEvent)?o.IsNullOrUndefined(e.addEventListener)||(e.addEventListener(t,n,!1),i=!0):(e.attachEvent("on"+t,n),i=!0)),i},e.DetachEvent=function(e,t,n){o.IsNullOrUndefined(e)||(o.IsNullOrUndefined(e.detachEvent)?o.IsNullOrUndefined(e.removeEventListener)||e.removeEventListener(t,n,!1):e.detachEvent("on"+t,n))},e}();r.EventHelper=n;var i=function(){function e(){}return e.ParseDependencyPath=function(e,t,n){var i,o;if(e&&0<e.length){var a=r.UrlHelper.parseUrl(e);if(i=a.host,null!=a.pathname)"/"!==(n=0===a.pathname.length?"/":a.pathname).charAt(0)&&(n="/"+n),o=r.Telemetry.Common.DataSanitizer.sanitizeString(t?t+" "+n:n);else o=r.Telemetry.Common.DataSanitizer.sanitizeString(e)}else o=i=n;return{target:i,name:o}},e}();r.AjaxHelper=i}(e.ApplicationInsights||(e.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(e){!function(t){var n=function i(){this.openDone=!1,this.setRequestHeaderDone=!1,this.sendDone=!1,this.abortDone=!1,this.onreadystatechangeCallbackAttached=!1};t.XHRMonitoringState=n;var e=function(){function e(e){this.completed=!1,this.requestHeadersSize=null,this.ttfb=null,this.responseReceivingDuration=null,this.callbackDuration=null,this.ajaxTotalDuration=null,this.aborted=null,this.pageUrl=null,this.requestUrl=null,this.requestSize=0,this.method=null,this.status=null,this.requestSentTime=null,this.responseStartedTime=null,this.responseFinishedTime=null,this.callbackFinishedTime=null,this.endTime=null,this.originalOnreadystatechage=null,this.xhrMonitoringState=new n,this.clientFailure=0,this.CalculateMetrics=function(){this.ajaxTotalDuration=Math.round(1e3*t.dateTime.GetDuration(this.requestSentTime,this.responseFinishedTime))/1e3},this.id=e}return e.prototype.getAbsoluteUrl=function(){return this.requestUrl?t.UrlHelper.getAbsoluteUrl(this.requestUrl):null},e.prototype.getPathName=function(){return this.requestUrl?t.Telemetry.Common.DataSanitizer.sanitizeUrl(t.UrlHelper.getCompleteUrl(this.method,this.requestUrl)):null},e}();t.ajaxRecord=e}(e.ApplicationInsights||(e.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(e){var t,n;t=e.ApplicationInsights||(e.ApplicationInsights={}),n=function(){function e(){}return e.requestContextHeader="Request-Context",e.requestContextTargetKey="appId",e.requestContextAppIdFormat="appId=cid-v1:",e.requestIdHeader="Request-Id",e.sdkContextHeader="Sdk-Context",e.sdkContextHeaderAppIdRequest="appId",e.requestContextHeaderLowerCase="request-context",e}(),t.RequestHeaders=n}(Microsoft||(Microsoft={})),function(e){var t;t=function n(){},(e.Telemetry||(e.Telemetry={})).Domain=t}(Microsoft||(Microsoft={})),function(e){var t=function(t){function e(){var e=t.call(this)||this;return e.ver=2,e.properties={},e.measurements={},e}return __extends(e,t),e}(Microsoft.Telemetry.Domain);e.EventData=t}(AI||(AI={})),function(e){var t=function(t){function e(){var e=t.call(this)||this;return e.ver=2,e.properties={},e.measurements={},e}return __extends(e,t),e}(e.EventData);e.PageViewData=t}(AI||(AI={})),function(e){var t=function(t){function e(){var e=t.call(this)||this;return e.ver=2,e.success=!0,e.properties={},e.measurements={},e}return __extends(e,t),e}(Microsoft.Telemetry.Domain);e.RemoteDependencyData=t}(AI||(AI={})),function(e){var i,t,n,o;i=e.ApplicationInsights||(e.ApplicationInsights={}),t=i.Telemetry||(i.Telemetry={}),n=t.Common||(t.Common={}),o=function(){function r(){}return r.sanitizeKeyAndAddUniqueness=function(e,t){var n=e.length,i=r.sanitizeKey(e);if(i.length!==n){for(var o=0,a=i;t[a]!==undefined;)o++,a=i.substring(0,r.MAX_NAME_LENGTH-3)+r.padNumber(o);i=a}return i},r.sanitizeKey=function(e){return e&&(e=i.Util.trim(e.toString())).length>r.MAX_NAME_LENGTH&&(e=e.substring(0,r.MAX_NAME_LENGTH),i._InternalLogging.throwInternal(i.LoggingSeverity.WARNING,i._InternalMessageId.NameTooLong,"name is too long.  It has been truncated to "+r.MAX_NAME_LENGTH+" characters.",{name:e},!0)),e},r.sanitizeString=function(e,t){return void 0===t&&(t=r.MAX_STRING_LENGTH),e&&(t=t||r.MAX_STRING_LENGTH,(e=i.Util.trim(e)).toString().length>t&&(e=e.toString().substring(0,t),i._InternalLogging.throwInternal(i.LoggingSeverity.WARNING,i._InternalMessageId.StringValueTooLong,"string value is too long. It has been truncated to "+t+" characters.",{value:e},!0))),e},r.sanitizeUrl=function(e){return r.sanitizeInput(e,r.MAX_URL_LENGTH,i._InternalMessageId.UrlTooLong)},r.sanitizeMessage=function(e){return e&&e.length>r.MAX_MESSAGE_LENGTH&&(e=e.substring(0,r.MAX_MESSAGE_LENGTH),i._InternalLogging.throwInternal(i.LoggingSeverity.WARNING,i._InternalMessageId.MessageTruncated,"message is too long, it has been truncated to "+r.MAX_MESSAGE_LENGTH+" characters.",{message:e},!0)),e},r.sanitizeException=function(e){return e&&e.length>r.MAX_EXCEPTION_LENGTH&&(e=e.substring(0,r.MAX_EXCEPTION_LENGTH),i._InternalLogging.throwInternal(i.LoggingSeverity.WARNING,i._InternalMessageId.ExceptionTruncated,"exception is too long, it has been truncated to "+r.MAX_EXCEPTION_LENGTH+" characters.",{exception:e},!0)),e},r.sanitizeProperties=function(e){if(e){var t={};for(var n in e){var i=r.sanitizeString(e[n],r.MAX_PROPERTY_LENGTH);t[n=r.sanitizeKeyAndAddUniqueness(n,t)]=i}e=t}return e},r.sanitizeMeasurements=function(e){if(e){var t={};for(var n in e){var i=e[n];t[n=r.sanitizeKeyAndAddUniqueness(n,t)]=i}e=t}return e},r.sanitizeId=function(e){return e?r.sanitizeInput(e,r.MAX_ID_LENGTH,i._InternalMessageId.IdTooLong).toString():e},r.sanitizeInput=function(e,t,n){return e&&(e=i.Util.trim(e)).length>t&&(e=e.substring(0,t),i._InternalLogging.throwInternal(i.LoggingSeverity.WARNING,n,"input is too long, it has been truncated to "+t+" characters.",{data:e},!0)),e},r.padNumber=function(e){var t="00"+e;return t.substr(t.length-3)},r.MAX_NAME_LENGTH=150,r.MAX_ID_LENGTH=128,r.MAX_PROPERTY_LENGTH=8192,r.MAX_STRING_LENGTH=1024,r.MAX_URL_LENGTH=2048,r.MAX_MESSAGE_LENGTH=32768,r.MAX_EXCEPTION_LENGTH=32768,r}(),n.DataSanitizer=o}(Microsoft||(Microsoft={})),function(e){var p,d,t;p=e.ApplicationInsights||(e.ApplicationInsights={}),d=p.Telemetry||(p.Telemetry={}),t=function(u){function e(e,t,n,i,o,a,r,s,l){var c=u.call(this)||this;c.aiDataContract={id:p.FieldType.Required,ver:p.FieldType.Required,name:p.FieldType.Default,resultCode:p.FieldType.Default,duration:p.FieldType.Default,success:p.FieldType.Default,data:p.FieldType.Default,target:p.FieldType.Default,type:p.FieldType.Default,properties:p.FieldType.Default,measurements:p.FieldType.Default,kind:p.FieldType.Default,value:p.FieldType.Default,count:p.FieldType.Default,min:p.FieldType.Default,max:p.FieldType.Default,stdDev:p.FieldType.Default,dependencyKind:p.FieldType.Default,dependencySource:p.FieldType.Default,commandName:p.FieldType.Default,dependencyTypeName:p.FieldType.Default},c.id=e,c.duration=p.Util.msToTimeSpan(i),c.success=o,c.resultCode=a+"",c.type="Ajax",c.data=d.Common.DataSanitizer.sanitizeUrl(n);var g=p.AjaxHelper.ParseDependencyPath(t,r,n);return c.target=g.target,c.name=g.name,c.properties=p.Telemetry.Common.DataSanitizer.sanitizeProperties(s),c.measurements=p.Telemetry.Common.DataSanitizer.sanitizeMeasurements(l),c}return __extends(e,u),e.envelopeType="Microsoft.ApplicationInsights.{0}.RemoteDependency",e.dataType="RemoteDependencyData",e}(AI.RemoteDependencyData),d.RemoteDependencyData=t}(Microsoft||(Microsoft={})),function(s){var l,e;l=s.ApplicationInsights||(s.ApplicationInsights={}),e=function(){function r(e){this.currentWindowHost="object"==typeof window?window.location.host&&window.location.host.toLowerCase():undefined,this.appInsights=e,this.initialized=!1,this.Init()}return r.prototype.Init=function(){this.supportsMonitoring()&&(this.instrumentOpen(),this.instrumentSend(),this.instrumentAbort(),this.initialized=!0)},r.prototype.isMonitoredInstance=function(e,t){return this.initialized&&(!0===t||!l.extensions.IsNullOrUndefined(e.ajaxData))&&!0!==e[r.DisabledPropertyName]},r.prototype.supportsMonitoring=function(){var e=!0;("function"!=typeof XMLHttpRequest||l.extensions.IsNullOrUndefined(XMLHttpRequest)||l.extensions.IsNullOrUndefined(XMLHttpRequest.prototype)||l.extensions.IsNullOrUndefined(XMLHttpRequest.prototype.open)||l.extensions.IsNullOrUndefined(XMLHttpRequest.prototype.send)||l.extensions.IsNullOrUndefined(XMLHttpRequest.prototype.abort))&&(e=!1);try{" a ".trim()}catch(t){e=!1}return e},r.prototype.instrumentOpen=function(){var o=XMLHttpRequest.prototype.open,a=this;XMLHttpRequest.prototype.open=function(e,t,n){try{!a.isMonitoredInstance(this,!0)||this.ajaxData&&this.ajaxData.xhrMonitoringState.openDone||a.openHandler(this,e,t,n)}catch(i){l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.FailedMonitorAjaxOpen,"Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:r.getFailedAjaxDiagnosticsMessage(this),exception:s.ApplicationInsights.Util.dump(i)})}return o.apply(this,arguments)}},r.prototype.openHandler=function(e,t,n,i){var o="|"+this.appInsights.context.operation.id+"."+l.Util.newId(),a=new l.ajaxRecord(o);a.method=t,a.requestUrl=n,a.xhrMonitoringState.openDone=!0,e.ajaxData=a,this.attachToOnReadyStateChange(e)},r.getFailedAjaxDiagnosticsMessage=function(e){var t="";try{l.extensions.IsNullOrUndefined(e)||l.extensions.IsNullOrUndefined(e.ajaxData)||l.extensions.IsNullOrUndefined(e.ajaxData.requestUrl)||(t+="(url: '"+e.ajaxData.requestUrl+"')")}catch(n){}return t},r.prototype.instrumentSend=function(){var n=XMLHttpRequest.prototype.send,i=this;XMLHttpRequest.prototype.send=function(e){try{i.isMonitoredInstance(this)&&!this.ajaxData.xhrMonitoringState.sendDone&&i.sendHandler(this,e)}catch(t){l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.FailedMonitorAjaxSend,"Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:r.getFailedAjaxDiagnosticsMessage(this),exception:s.ApplicationInsights.Util.dump(t)})}return n.apply(this,arguments)}},r.prototype.sendHandler=function(e,t){if(e.ajaxData.requestSentTime=l.dateTime.Now(),l.CorrelationIdHelper.canIncludeCorrelationHeader(this.appInsights.config,e.ajaxData.getAbsoluteUrl(),this.currentWindowHost)&&(e.setRequestHeader(l.RequestHeaders.requestIdHeader,e.ajaxData.id),this.appInsights.context)){var n=this.appInsights.context.appId();n&&e.setRequestHeader(l.RequestHeaders.requestContextHeader,l.RequestHeaders.requestContextAppIdFormat+n)}e.ajaxData.xhrMonitoringState.sendDone=!0},r.prototype.instrumentAbort=function(){var t=XMLHttpRequest.prototype.abort,n=this;XMLHttpRequest.prototype.abort=function(){try{n.isMonitoredInstance(this)&&!this.ajaxData.xhrMonitoringState.abortDone&&(this.ajaxData.aborted=1,this.ajaxData.xhrMonitoringState.abortDone=!0)}catch(e){l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.FailedMonitorAjaxAbort,"Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:r.getFailedAjaxDiagnosticsMessage(this),exception:s.ApplicationInsights.Util.dump(e)})}return t.apply(this,arguments)}},r.prototype.attachToOnReadyStateChange=function(n){var i=this;n.ajaxData.xhrMonitoringState.onreadystatechangeCallbackAttached=l.EventHelper.AttachEvent(n,"readystatechange",function(){try{i.isMonitoredInstance(n)&&4===n.readyState&&i.onAjaxComplete(n)}catch(t){var e=s.ApplicationInsights.Util.dump(t);e&&-1!=e.toLowerCase().indexOf("c00c023f")||l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.FailedMonitorAjaxRSC,"Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:r.getFailedAjaxDiagnosticsMessage(n),exception:s.ApplicationInsights.Util.dump(t)})}})},r.prototype.onAjaxComplete=function(e){if(e.ajaxData.responseFinishedTime=l.dateTime.Now(),e.ajaxData.status=e.status,e.ajaxData.CalculateMetrics(),e.ajaxData.ajaxTotalDuration<0)l._InternalLogging.throwInternal(l.LoggingSeverity.WARNING,l._InternalMessageId.FailedMonitorAjaxDur,"Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.",{ajaxDiagnosticsMessage:r.getFailedAjaxDiagnosticsMessage(e),requestSentTime:e.ajaxData.requestSentTime,responseFinishedTime:e.ajaxData.responseFinishedTime});else{var t=new l.Telemetry.RemoteDependencyData(e.ajaxData.id,e.ajaxData.getAbsoluteUrl(),e.ajaxData.getPathName(),e.ajaxData.ajaxTotalDuration,200<=+e.ajaxData.status&&+e.ajaxData.status<400,+e.ajaxData.status,e.ajaxData.method),n=this.getCorrelationContext(e);n&&(t.target=t.target+" | "+n),this.appInsights.trackDependencyData(t),e.ajaxData=null}},r.prototype.getCorrelationContext=function(e){try{var t=e.getAllResponseHeaders();if(null!==t)if(-1!==t.toLowerCase().indexOf(l.RequestHeaders.requestContextHeaderLowerCase)){var n=e.getResponseHeader(l.RequestHeaders.requestContextHeader);return l.CorrelationIdHelper.getCorrelationContext(n)}}catch(i){l._InternalLogging.throwInternal(l.LoggingSeverity.WARNING,l._InternalMessageId.FailedMonitorAjaxGetCorrelationHeader,"Failed to get Request-Context correlation header as it may be not included in the response or not accessible.",{ajaxDiagnosticsMessage:r.getFailedAjaxDiagnosticsMessage(e),exception:s.ApplicationInsights.Util.dump(i)})}},r.instrumentedByAppInsightsName="InstrumentedByAppInsights",r.DisabledPropertyName="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",r}(),l.AjaxMonitor=e}(Microsoft||(Microsoft={})),function(e){!function(o){var e=function(){function e(e){this._config=e,this._buffer=[]}return e.prototype.enqueue=function(e){this._buffer.push(e)},e.prototype.count=function(){return this._buffer.length},e.prototype.clear=function(){this._buffer.length=0},e.prototype.getItems=function(){return this._buffer.slice(0)},e.prototype.batchPayloads=function(e){return e&&0<e.length?this._config.emitLineDelimitedJson()?e.join("\n"):"["+e.join(",")+"]":null},e.prototype.markAsSent=function(e){this.clear()},e.prototype.clearSent=function(e){},e}();o.ArraySendBuffer=e;var t=function(){function i(e){this._bufferFullMessageSent=!1,this._config=e;var t=this.getBuffer(i.BUFFER_KEY),n=this.getBuffer(i.SENT_BUFFER_KEY);this._buffer=t.concat(n),this._buffer.length>i.MAX_BUFFER_SIZE&&(this._buffer.length=i.MAX_BUFFER_SIZE),this.setBuffer(i.SENT_BUFFER_KEY,[]),this.setBuffer(i.BUFFER_KEY,this._buffer)}return i.prototype.enqueue=function(e){this._buffer.length>=i.MAX_BUFFER_SIZE?this._bufferFullMessageSent||(o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.SessionStorageBufferFull,"Maximum buffer size reached: "+this._buffer.length,!0),this._bufferFullMessageSent=!0):(this._buffer.push(e),this.setBuffer(i.BUFFER_KEY,this._buffer))},i.prototype.count=function(){return this._buffer.length},i.prototype.clear=function(){this._buffer.length=0,this.setBuffer(i.BUFFER_KEY,[]),this.setBuffer(i.SENT_BUFFER_KEY,[]),this._bufferFullMessageSent=!1},i.prototype.getItems=function(){return this._buffer.slice(0)},i.prototype.batchPayloads=function(e){return e&&0<e.length?this._config.emitLineDelimitedJson()?e.join("\n"):"["+e.join(",")+"]":null},i.prototype.markAsSent=function(e){this._buffer=this.removePayloadsFromBuffer(e,this._buffer),this.setBuffer(i.BUFFER_KEY,this._buffer);var t=this.getBuffer(i.SENT_BUFFER_KEY);t instanceof Array&&e instanceof Array&&((t=t.concat(e)).length>i.MAX_BUFFER_SIZE&&(o._InternalLogging.throwInternal(o.LoggingSeverity.CRITICAL,o._InternalMessageId.SessionStorageBufferFull,"Sent buffer reached its maximum size: "+t.length,!0),t.length=i.MAX_BUFFER_SIZE),this.setBuffer(i.SENT_BUFFER_KEY,t))},i.prototype.clearSent=function(e){var t=this.getBuffer(i.SENT_BUFFER_KEY);t=this.removePayloadsFromBuffer(e,t),this.setBuffer(i.SENT_BUFFER_KEY,t)},i.prototype.removePayloadsFromBuffer=function(e,t){var n=[];for(var i in t){var o=!1;for(var a in e)if(e[a]===t[i]){o=!0;break}o||n.push(t[i])}return n},i.prototype.getBuffer=function(e){try{var t=o.Util.getSessionStorage(e);if(t){var n=JSON.parse(t);if(n)return n}}catch(i){o._InternalLogging.throwInternal(o.LoggingSeverity.CRITICAL,o._InternalMessageId.FailedToRestoreStorageBuffer," storage key: "+e+", "+o.Util.getExceptionName(i),{exception:o.Util.dump(i)})}return[]},i.prototype.setBuffer=function(e,t){try{var n=JSON.stringify(t);o.Util.setSessionStorage(e,n)}catch(i){o.Util.setSessionStorage(e,JSON.stringify([])),o._InternalLogging.throwInternal(o.LoggingSeverity.WARNING,o._InternalMessageId.FailedToSetStorageBuffer," storage key: "+e+", "+o.Util.getExceptionName(i)+". Buffer cleared",{exception:o.Util.dump(i)})}},i.BUFFER_KEY="AI_buffer",i.SENT_BUFFER_KEY="AI_sentBuffer",i.MAX_BUFFER_SIZE=2e3,i}();o.SessionStorageSendBuffer=t}(e.ApplicationInsights||(e.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(e){var l,t;l=e.ApplicationInsights||(e.ApplicationInsights={}),t=function(){function e(e){(this._XMLHttpRequestSupported=!1,this._consecutiveErrors=0,this._retryAt=null,this._lastSend=0,this._config=e,this._sender=null,this._buffer=l.Util.canUseSessionStorage()&&this._config.enableSessionStorageBuffer()?new l.SessionStorageSendBuffer(e):new l.ArraySendBuffer(e),!this._config.isBeaconApiDisabled()&&l.Util.IsBeaconApiSupported())?this._sender=this._beaconSender:"undefined"!=typeof XMLHttpRequest&&("withCredentials"in new XMLHttpRequest?(this._sender=this._xhrSender,this._XMLHttpRequestSupported=!0):"undefined"!=typeof XDomainRequest&&(this._sender=this._xdrSender))}return e.prototype.send=function(e){try{if(this._config.disableTelemetry())return;if(!e)return void l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.CannotSendEmptyTelemetry,"Cannot send empty telemetry");if(!this._sender)return void l._InternalLogging.throwInternal(l.LoggingSeverity.CRITICAL,l._InternalMessageId.SenderNotInitialized,"Sender was not initialized");var t=l.Serializer.serialize(e),n=this._buffer.getItems(),i=this._buffer.batchPayloads(n);i&&i.length+t.length>this._config.maxBatchSizeInBytes()&&this.triggerSend(
Download .txt
gitextract_9gu592nz/

├── .aiAutoMinify.json
├── .eslintrc
├── .gitattributes
├── .github/
│   ├── CODEOWNERS
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   └── feature_request.md
│   ├── codeql/
│   │   └── codeql-config.yml
│   ├── copilot-instructions.md
│   ├── prompts/
│   │   └── release-pr.prompt.md
│   └── workflows/
│       ├── ci.yml
│       ├── codeql-analysis.yml
│       ├── delete-merged-branches.yml
│       ├── jekyll-gh-pages.yml
│       ├── lock.yml
│       ├── stale-assigned.yml
│       └── stale.yml
├── .gitignore
├── .npmignore
├── .travis/
│   ├── test_react_native.sh
│   └── test_rush.sh
├── AISKU/
│   ├── .npmignore
│   ├── API.md
│   ├── LICENSE
│   ├── NOTICE
│   ├── PRIVACY
│   ├── README.md
│   ├── Tests/
│   │   ├── Manual/
│   │   │   ├── HelloWorld.html
│   │   │   ├── README.md
│   │   │   ├── ai1.test.js
│   │   │   ├── ai2.test.js
│   │   │   ├── ai3.test.js
│   │   │   ├── aisku-example-index.gbl.js
│   │   │   ├── latestSnippet.html
│   │   │   ├── span-e2e-manual-test.html
│   │   │   ├── style/
│   │   │   │   └── style.css
│   │   │   └── testVersionConflict.html
│   │   ├── Perf/
│   │   │   └── src/
│   │   │       ├── AISKUPerf.Tests.ts
│   │   │       ├── AISKUPerf.ts
│   │   │       └── aiskuperftests.ts
│   │   ├── PerfTests.html
│   │   ├── Unit/
│   │   │   └── src/
│   │   │       ├── AISKUSize.Tests.ts
│   │   │       ├── CdnPackaging.tests.ts
│   │   │       ├── CdnThrottle.tests.ts
│   │   │       ├── GlobalTestHooks.Test.ts
│   │   │       ├── IAnalyticsConfig.Tests.ts
│   │   │       ├── NonRecordingSpan.Tests.ts
│   │   │       ├── OTelInit.Tests.ts
│   │   │       ├── SnippetInitialization.Tests.ts
│   │   │       ├── SpanContextPropagation.Tests.ts
│   │   │       ├── SpanE2E.Tests.ts
│   │   │       ├── SpanErrorHandling.Tests.ts
│   │   │       ├── SpanHelperUtils.Tests.ts
│   │   │       ├── SpanLifeCycle.Tests.ts
│   │   │       ├── SpanPluginIntegration.Tests.ts
│   │   │       ├── SpanUtils.Tests.ts
│   │   │       ├── StartSpan.Tests.ts
│   │   │       ├── TelemetryItemGeneration.Tests.ts
│   │   │       ├── ThrottleSentMessage.tests.ts
│   │   │       ├── TraceContext.Tests.ts
│   │   │       ├── TraceProvider.Tests.ts
│   │   │       ├── TraceSuppression.Tests.ts
│   │   │       ├── UseSpan.Tests.ts
│   │   │       ├── WithSpan.Tests.ts
│   │   │       ├── aiskuunittests.ts
│   │   │       ├── applicationinsights.e2e.fetch.tests.ts
│   │   │       ├── applicationinsights.e2e.tests.ts
│   │   │       ├── sanitizer.e2e.tests.ts
│   │   │       ├── sender.e2e.tests.ts
│   │   │       ├── testLegacySnippet.ts
│   │   │       ├── testSnippetV5.ts
│   │   │       ├── testSnippetV6.ts
│   │   │       └── validate.e2e.tests.ts
│   │   ├── UnitTests.html
│   │   ├── es6-module-type-check/
│   │   │   ├── package.json
│   │   │   ├── src/
│   │   │   │   └── main.ts
│   │   │   └── tsconfig.json
│   │   └── tsconfig.json
│   ├── api-extractor.json
│   ├── dist-history/
│   │   ├── aisdk.0.0.13.js
│   │   ├── aisdk.0.0.15.js
│   │   ├── aisdk.0.0.17.js
│   │   ├── aisdk.0.0.18.js
│   │   ├── aisdk.0.0.19.js
│   │   ├── aisdk.0.0.8.js
│   │   ├── aisdk.min.0.0.8.js
│   │   └── aisdk.min.0.0.9.js
│   ├── examples/
│   │   └── span-usage-example.ts
│   ├── package.json
│   ├── rollup.config.js
│   ├── samples/
│   │   └── HelloWorld/
│   │       └── index-snippet.html
│   ├── scripts/
│   │   ├── README.md
│   │   ├── listAzCdnVersions.ps1
│   │   ├── publishAzImgToCdn.ps1
│   │   ├── publishAzReleaseToCdn.ps1
│   │   └── setAzActiveCdnVersion.ps1
│   ├── snippet/
│   │   ├── README.md
│   │   └── snippet.js
│   ├── src/
│   │   ├── AISku.ts
│   │   ├── ApplicationInsightsContainer.ts
│   │   ├── IApplicationInsights.ts
│   │   ├── Init.ts
│   │   ├── InternalConstants.ts
│   │   ├── Snippet.ts
│   │   ├── applicationinsights-web.ts
│   │   └── internal/
│   │       └── trace/
│   │           └── spanUtils.ts
│   ├── tsconfig.json
│   ├── tsdoc.json
│   ├── tslint.json
│   └── typedoc.json
├── AISKULight/
│   ├── .npmignore
│   ├── LICENSE
│   ├── NOTICE
│   ├── PRIVACY
│   ├── README.md
│   ├── Tests/
│   │   ├── Unit/
│   │   │   └── src/
│   │   │       ├── AISKULightSize.Tests.ts
│   │   │       ├── GlobalTestHooks.Test.ts
│   │   │       ├── aiskuliteunittests.ts
│   │   │       ├── config.tests.ts
│   │   │       ├── dynamicconfig.tests.ts
│   │   │       └── otelNegative.tests.ts
│   │   ├── UnitTests.html
│   │   └── tsconfig.json
│   ├── api-extractor.json
│   ├── build.cmd
│   ├── dist-history/
│   │   ├── aisdklight.js
│   │   └── aisdklite.0.0.3.js
│   ├── package.json
│   ├── rollup.config.js
│   ├── src/
│   │   └── index.ts
│   ├── tsconfig.json
│   ├── tsdoc.json
│   ├── tslint.json
│   └── typedoc.json
├── API-reference.md
├── CODEOWNERS
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── NOTICE
├── PRIVACY
├── README.md
├── RELEASES.md
├── SECURITY.md
├── SUPPORT.md
├── ThirdPartyNotices.txt
├── TreeShakingRecommendations.md
├── channels/
│   ├── 1ds-post-js/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── CODE_OF_CONDUCT.md
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE.TXT
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── SECURITY.md
│   │   ├── SUPPORT.md
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── BatchNotificationActions.ts
│   │   │   ├── ClockSkewManager.ts
│   │   │   ├── DataModels.ts
│   │   │   ├── EventBatch.ts
│   │   │   ├── HttpManager.ts
│   │   │   ├── Index.ts
│   │   │   ├── InternalConstants.ts
│   │   │   ├── KillSwitch.ts
│   │   │   ├── PostChannel.ts
│   │   │   ├── RetryPolicy.ts
│   │   │   ├── Serializer.ts
│   │   │   ├── TimeoutOverrideWrapper.ts
│   │   │   └── typings/
│   │   │       └── XDomainRequest.ts
│   │   ├── test/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── FileSizeCheckTest.ts
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── HttpManagerTest.ts
│   │   │   │       ├── KillSwitchTest.ts
│   │   │   │       ├── PostChannelTest.ts
│   │   │   │       ├── SerializerTest.ts
│   │   │   │       ├── TestHelper.ts
│   │   │   │       └── post.unittests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   ├── applicationinsights-channel-js/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── Sample.tests.ts
│   │   │   │       ├── Sender.tests.ts
│   │   │   │       ├── StatsBeat.tests.ts
│   │   │   │       └── aichannel.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── EnvelopeCreator.ts
│   │   │   ├── Interfaces/
│   │   │   │   └── Contracts/
│   │   │   │       └── IRequestData.ts
│   │   │   ├── Interfaces.ts
│   │   │   ├── InternalConstants.ts
│   │   │   ├── SendBuffer.ts
│   │   │   ├── Sender.ts
│   │   │   ├── Serializer.ts
│   │   │   ├── Telemetry/
│   │   │   │   ├── Common/
│   │   │   │   │   └── Data.ts
│   │   │   │   ├── RemoteDependencyData.ts
│   │   │   │   └── RequestData.ts
│   │   │   ├── TelemetryProcessors/
│   │   │   │   ├── Sample.ts
│   │   │   │   └── SamplingScoreGenerators/
│   │   │   │       ├── HashCodeScoreGenerator.ts
│   │   │   │       └── SamplingScoreGenerator.ts
│   │   │   └── applicationinsights-channel-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── offline-channel-js/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── CODE_OF_CONDUCT.md
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE.TXT
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── SECURITY.md
│   │   ├── SUPPORT.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── IndexedDB.tests.ts
│   │   │   │       ├── TestHelper.ts
│   │   │   │       ├── channel.tests.ts
│   │   │   │       ├── customprovider.tests.ts
│   │   │   │       ├── dbprovider.tests.ts
│   │   │   │       ├── inmemorybatch.tests.ts
│   │   │   │       ├── offlinebatchhandler.tests.ts
│   │   │   │       ├── offlinechannel.tests.ts
│   │   │   │       ├── offlinetimer.tests.ts
│   │   │   │       └── webprovider.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── Helpers/
│   │   │   │   └── Utils.ts
│   │   │   ├── InMemoryBatch.ts
│   │   │   ├── Interfaces/
│   │   │   │   ├── IInMemoryBatch.ts
│   │   │   │   ├── IOfflineBatch.ts
│   │   │   │   ├── IOfflineIndexDb.ts
│   │   │   │   ├── IOfflineProvider.ts
│   │   │   │   └── ISender.ts
│   │   │   ├── OfflineBatchHandler.ts
│   │   │   ├── OfflineChannel.ts
│   │   │   ├── PayloadHelper.ts
│   │   │   ├── Providers/
│   │   │   │   ├── IndexDbHelper.ts
│   │   │   │   ├── IndexDbProvider.ts
│   │   │   │   └── WebStorageProvider.ts
│   │   │   ├── Sender.ts
│   │   │   └── applicationinsights-offlinechannel-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   └── tee-channel-js/
│       ├── .npmignore
│       ├── LICENSE
│       ├── NOTICE
│       ├── PRIVACY
│       ├── README.md
│       ├── Tests/
│       │   ├── Unit/
│       │   │   └── src/
│       │   │       ├── GlobalTestHooks.Test.ts
│       │   │       ├── TeeChannelCore.Tests.ts
│       │   │       └── teechannel.tests.ts
│       │   ├── UnitTests.html
│       │   └── tsconfig.json
│       ├── api-extractor.json
│       ├── package.json
│       ├── rollup.config.js
│       ├── src/
│       │   ├── ChannelController.ts
│       │   ├── Interfaces/
│       │   │   └── ITeeChannelConfig.ts
│       │   ├── TeeChannel.ts
│       │   └── applicationinsights-teechannel-js.ts
│       ├── tsconfig.json
│       ├── tsdoc.json
│       └── typedoc.json
├── common/
│   ├── Tests/
│   │   ├── External/
│   │   │   ├── blanket-1.2.2.js
│   │   │   ├── blanket-reporter.js
│   │   │   ├── jquery.d.ts
│   │   │   ├── magic-string.umd.js
│   │   │   ├── qunit-1.23.1.css
│   │   │   ├── qunit-1.23.1.js
│   │   │   ├── qunit-2.9.1.css
│   │   │   ├── qunit-2.9.1.js
│   │   │   ├── qunit-2.9.3.css
│   │   │   ├── qunit-2.9.3.js
│   │   │   ├── qunit.d.ts
│   │   │   ├── require-2.2.0.js
│   │   │   ├── require-2.3.6.js
│   │   │   ├── sinon-1.17.2.js
│   │   │   ├── sinon-2.3.8.js
│   │   │   ├── sinon-7.3.1.js
│   │   │   ├── sinon.d.ts
│   │   │   ├── whatwg-fetch.3.0.0.js
│   │   │   └── whatwg-fetch.3.6.2.js
│   │   ├── Framework/
│   │   │   ├── package.json
│   │   │   ├── rollup.config.js
│   │   │   ├── src/
│   │   │   │   ├── AITestClass.ts
│   │   │   │   ├── Assert.ts
│   │   │   │   ├── DebugHelpers.ts
│   │   │   │   ├── PollingAssert.ts
│   │   │   │   ├── StepResult.ts
│   │   │   │   ├── TelemetryValidation/
│   │   │   │   │   ├── CommonValidator.ts
│   │   │   │   │   ├── EventValidator.ts
│   │   │   │   │   ├── ExceptionValidator.ts
│   │   │   │   │   ├── ITypeValidator.ts
│   │   │   │   │   ├── MetricValidator.ts
│   │   │   │   │   ├── PageViewPerformanceValidator.ts
│   │   │   │   │   ├── PageViewValidator.ts
│   │   │   │   │   ├── RemoteDepdencyValidator.ts
│   │   │   │   │   └── TraceValidator.ts
│   │   │   │   ├── TestHelper.ts
│   │   │   │   ├── ai-test-framework.ts
│   │   │   │   └── interfaces/
│   │   │   │       ├── FakeXMLHttpRequest.ts
│   │   │   │       ├── IASyncQueue.ts
│   │   │   │       ├── IBeaconRequest.ts
│   │   │   │       ├── IFetchRequest.ts
│   │   │   │       ├── ITestCase.ts
│   │   │   │       ├── ITestCaseAsync.ts
│   │   │   │       └── ITestContext.ts
│   │   │   └── tsconfig.json
│   │   └── Selenium/
│   │       ├── ExceptionHelper.js
│   │       └── ModuleLoader.js
│   ├── changes/
│   │   └── @microsoft/
│   │       └── applicationinsights-web/
│   │           └── markwolff-refactor_readme_2019-10-04-20-34.json
│   ├── config/
│   │   └── rush/
│   │       ├── .npmrc
│   │       ├── command-line.json
│   │       ├── common-versions.json
│   │       ├── npm-shrinkwrap.json
│   │       └── version-policies.json
│   └── scripts/
│       ├── install-run-rush-silent.js
│       ├── install-run-rush.js
│       ├── install-run-rushx.js
│       ├── install-run-silent.js
│       └── install-run.js
├── docs/
│   ├── API-reference.md
│   ├── Dependency.md
│   ├── ExtensionErrorSteps.md
│   ├── OTel/
│   │   ├── README.md
│   │   ├── examples.md
│   │   ├── otelApi.md
│   │   ├── startActiveSpan.md
│   │   ├── traceApi.md
│   │   ├── useSpan.md
│   │   └── withSpan.md
│   ├── PageUnloadEvents.md
│   ├── PerformanceMonitoring.md
│   ├── README.md
│   ├── SdkLoadFailure.md
│   ├── SdkLoadFailureSteps.md
│   ├── ThrottleMgr.md
│   ├── WebConfig.md
│   ├── es3_Support.md
│   ├── exceptionTelemetry.md
│   ├── upgrade/
│   │   ├── MergeCommonToCore.md
│   │   ├── v2_UpgradeGuide.md
│   │   └── v3_BreakingChanges.md
│   └── webSdk/
│       └── README.md
├── examples/
│   ├── AISKU/
│   │   ├── README.md
│   │   ├── index.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── aisku-example-index.ts
│   │   │   ├── aisku-init.ts
│   │   │   └── utils.ts
│   │   ├── style/
│   │   │   └── style.css
│   │   └── tsconfig.json
│   ├── README.md
│   ├── cfgSync/
│   │   ├── CfgSync.html
│   │   ├── README.md
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── example-cfgsync-index.ts
│   │   │   ├── example-cfgsync-init.ts
│   │   │   ├── listener1.ts
│   │   │   ├── listener2.ts
│   │   │   └── main.ts
│   │   └── tsconfig.json
│   ├── dependency/
│   │   ├── README.md
│   │   ├── index.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── appinsights-init.ts
│   │   │   ├── dependencies-example-index.ts
│   │   │   ├── startSpan-example.ts
│   │   │   └── utils.ts
│   │   ├── style/
│   │   │   └── style.css
│   │   └── tsconfig.json
│   ├── shared-worker/
│   │   ├── README.md
│   │   ├── SharedWorker.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── example-shared-worker.ts
│   │   │   ├── interfaces/
│   │   │   │   └── IExampleMessage.ts
│   │   │   ├── worker-npm-init.ts
│   │   │   ├── worker.ts
│   │   │   └── worker2.ts
│   │   └── tsconfig.json
│   └── startSpan/
│       ├── package.json
│       ├── rollup.config.js
│       ├── src/
│       │   ├── startSpanExample.ts
│       │   └── startspan-example-index.ts
│       └── tsconfig.json
├── extensions/
│   ├── applicationinsights-analytics-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── AnalyticsExtensionSize.tests.ts
│   │   │   │       ├── AnalyticsPlugin.tests.ts
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── TelemetryItemCreator.tests.ts
│   │   │   │       └── appinsights-analytics.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── JavaScriptSDK/
│   │   │   │   ├── AnalyticsPlugin.ts
│   │   │   │   ├── Interfaces/
│   │   │   │   │   └── IAnalyticsConfig.ts
│   │   │   │   ├── Telemetry/
│   │   │   │   │   ├── PageViewManager.ts
│   │   │   │   │   ├── PageViewPerformanceManager.ts
│   │   │   │   │   └── PageVisitTimeManager.ts
│   │   │   │   └── Timing.ts
│   │   │   └── applicationinsights-analytics-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-angularplugin-js/
│   │   ├── README.md
│   │   └── tsdoc.json
│   ├── applicationinsights-cfgsync-js/
│   │   ├── .npmignore
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── cfgsync.tests.ts
│   │   │   │       ├── cfgsynchelper.tests.ts
│   │   │   │       └── cfgsyncplugin.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── CfgSyncHelperFuncs.ts
│   │   │   ├── CfgSyncPlugin.ts
│   │   │   ├── Interfaces/
│   │   │   │   ├── ICfgSyncCdnConfig.ts
│   │   │   │   ├── ICfgSyncConfig.ts
│   │   │   │   └── ICfgSyncPlugin.ts
│   │   │   └── applicationinsights-cfgsync-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-clickanalytics-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── ClickEventTest.ts
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       └── appinsights-clickanalytics.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── Behaviours.ts
│   │   │   ├── ClickAnalyticsPlugin.ts
│   │   │   ├── DataCollector.ts
│   │   │   ├── Enums.ts
│   │   │   ├── Interfaces/
│   │   │   │   └── Datamodel.ts
│   │   │   ├── applicationinsights-clickanalytics-js.ts
│   │   │   ├── common/
│   │   │   │   └── Utils.ts
│   │   │   ├── events/
│   │   │   │   ├── PageAction.ts
│   │   │   │   └── WebEvent.ts
│   │   │   └── handlers/
│   │   │       ├── AutoCaptureHandler.ts
│   │   │       └── DomContentHandler.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-debugplugin-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── sample/
│   │   │   ├── .gitignore
│   │   │   ├── README.md
│   │   │   └── public/
│   │   │       ├── index.html
│   │   │       └── sample.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── DebugPlugin.ts
│   │   │   ├── applicationinsights-debugplugin-js.ts
│   │   │   ├── components/
│   │   │   │   ├── Dashboard.ts
│   │   │   │   ├── LogEntry.ts
│   │   │   │   ├── debugBins.ts
│   │   │   │   ├── filterList.ts
│   │   │   │   ├── helpers.ts
│   │   │   │   └── styleNodeSrc.ts
│   │   │   ├── interfaces/
│   │   │   │   └── IDebugPluginConfig.ts
│   │   │   └── localization/
│   │   │       └── EN-US.json
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-dependencies-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── TestChannelPlugin.ts
│   │   │   │       ├── W3CTraceStateDependency.tests.ts
│   │   │   │       ├── ajax.tests.ts
│   │   │   │       └── dependencies.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── DependencyInitializer.ts
│   │   │   ├── DependencyListener.ts
│   │   │   ├── InternalConstants.ts
│   │   │   ├── ajax.ts
│   │   │   ├── ajaxRecord.ts
│   │   │   └── applicationinsights-dependencies-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-osplugin-js/
│   │   ├── .npmignore
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── OsPluginTest.ts
│   │   │   │       └── applicationinsights-osplugin.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── DataModels.ts
│   │   │   ├── OsPlugin.ts
│   │   │   └── applicationinsights-osplugin-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   ├── applicationinsights-perfmarkmeasure-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── MarkMeasureTests.ts
│   │   │   │       └── appinsights-perfmarkmeasure.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── example/
│   │   │   └── cdn-usage.html
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── PerfMarkMeasureManager.ts
│   │   │   ├── applicationinsights-perfmarkmeasure-js.ts
│   │   │   └── interfaces/
│   │   │       └── IPerfMarkMeasureConfiguration.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-properties-js/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── GlobalTestHooks.Test.ts
│   │   │   │       ├── SessionManager.Tests.ts
│   │   │   │       ├── TelemetryContext.Tests.ts
│   │   │   │       ├── TestChannelPlugin.ts
│   │   │   │       ├── prop.tests.ts
│   │   │   │       ├── properties.tests.ts
│   │   │   │       └── propertiesSize.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── Context/
│   │   │   │   ├── Application.ts
│   │   │   │   ├── Device.ts
│   │   │   │   ├── Internal.ts
│   │   │   │   ├── Location.ts
│   │   │   │   ├── Session.ts
│   │   │   │   └── User.ts
│   │   │   ├── Interfaces/
│   │   │   │   ├── IPropTelemetryContext.ts
│   │   │   │   └── IPropertiesConfig.ts
│   │   │   ├── PropertiesPlugin.ts
│   │   │   ├── TelemetryContext.ts
│   │   │   └── applicationinsights-properties-js.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── applicationinsights-react-js/
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   └── README.md
│   └── applicationinsights-react-native/
│       ├── NOTICE
│       ├── PRIVACY
│       └── README.md
├── gruntfile.js
├── legacy/
│   └── README.md
├── nuget/
│   └── Microsoft.ApplicationInsights.JavaScript.Snippet.nuspec
├── package.json
├── policheck-exclusions.xml
├── rollup.base.config.js
├── rush.json
├── scripts/
│   └── dtsgen.js
├── shared/
│   ├── 1ds-core-js/
│   │   ├── .npmignore
│   │   ├── CODE_OF_CONDUCT.md
│   │   ├── CONTRIBUTING.md
│   │   ├── LICENSE.TXT
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── SECURITY.md
│   │   ├── SUPPORT.md
│   │   ├── api-extractor.json
│   │   ├── auto-minify.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   └── Index.ts
│   │   ├── test/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── FileSizeCheckTest.ts
│   │   │   │       └── core.unittests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   └── typedoc.json
│   ├── AppInsightsCommon/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   └── applicationinsights-common.ts
│   │   ├── tsconfig.json
│   │   ├── tsdoc.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   └── AppInsightsCore/
│       ├── .npmignore
│       ├── CONTRIBUTING.md
│       ├── LICENSE
│       ├── NOTICE
│       ├── PRIVACY
│       ├── README.md
│       ├── SpanImplementationSummary.md
│       ├── Span_Implementation_Refactoring_Summary.md
│       ├── Tests/
│       │   ├── Perf/
│       │   │   ├── src/
│       │   │   │   ├── CorePerfCheck.Tests.ts
│       │   │   │   └── aiperftests.ts
│       │   │   └── tsconfig.json
│       │   ├── PerfTests.html
│       │   ├── Unit/
│       │   │   └── src/
│       │   │       ├── OpenTelemetry/
│       │   │       │   ├── commonUtils.Tests.ts
│       │   │       │   ├── errors.Tests.ts
│       │   │       │   └── otelNegative.Tests.ts
│       │   │       ├── ai/
│       │   │       │   ├── AppInsightsCommon.tests.ts
│       │   │       │   ├── AppInsightsCoreSize.Tests.ts
│       │   │       │   ├── ApplicationInsightsCore.Tests.ts
│       │   │       │   ├── ConnectionStringParser.tests.ts
│       │   │       │   ├── CookieManager.Tests.ts
│       │   │       │   ├── EventHelper.Tests.ts
│       │   │       │   ├── EventsDiscardedReason.Tests.ts
│       │   │       │   ├── Exception.tests.ts
│       │   │       │   ├── GlobalTestHooks.Test.ts
│       │   │       │   ├── HelperFunc.Tests.ts
│       │   │       │   ├── LoggingEnum.Tests.ts
│       │   │       │   ├── RequestHeaders.tests.ts
│       │   │       │   ├── SendPostManager.Tests.ts
│       │   │       │   ├── SeverityLevel.tests.ts
│       │   │       │   ├── StatsBeat.Tests.ts
│       │   │       │   ├── TestPlugins.ts
│       │   │       │   ├── ThrottleMgr.tests.ts
│       │   │       │   ├── UpdateConfig.Tests.ts
│       │   │       │   └── Util.tests.ts
│       │   │       ├── aiunittests.ts
│       │   │       ├── attribute/
│       │   │       │   └── attributeContainer.Tests.ts
│       │   │       ├── config/
│       │   │       │   ├── Dynamic.Tests.ts
│       │   │       │   └── DynamicConfig.Tests.ts
│       │   │       ├── ext/
│       │   │       │   ├── CoreTest.ts
│       │   │       │   ├── DynamicProtoTests.ts
│       │   │       │   ├── ESPromiseSchedulerTests.ts
│       │   │       │   ├── ESPromiseTests.ts
│       │   │       │   ├── GlobalTestHooks.Test.ts
│       │   │       │   ├── SpanUtilsTests.ts
│       │   │       │   ├── TestHelper.ts
│       │   │       │   ├── UtilsTest.ts
│       │   │       │   └── ValueSanitizerTests.ts
│       │   │       └── trace/
│       │   │           ├── W3CTraceStateModes.tests.ts
│       │   │           ├── W3cTraceParentTests.ts
│       │   │           ├── W3cTraceState.Tests.ts
│       │   │           ├── span.Tests.ts
│       │   │           ├── traceState.Tests.ts
│       │   │           └── traceUtils.Tests.ts
│       │   ├── UnitTests.html
│       │   └── tsconfig.json
│       ├── api-extractor.json
│       ├── package.json
│       ├── rollup.config.js
│       ├── src/
│       │   ├── config/
│       │   │   ├── ConfigDefaultHelpers.ts
│       │   │   ├── ConfigDefaults.ts
│       │   │   ├── DynamicConfig.ts
│       │   │   ├── DynamicProperty.ts
│       │   │   ├── DynamicState.ts
│       │   │   └── DynamicSupport.ts
│       │   ├── constants/
│       │   │   ├── Constants.ts
│       │   │   └── InternalConstants.ts
│       │   ├── core/
│       │   │   ├── AggregationError.ts
│       │   │   ├── AppInsightsCore.ts
│       │   │   ├── AsyncUtils.ts
│       │   │   ├── BaseTelemetryPlugin.ts
│       │   │   ├── CookieMgr.ts
│       │   │   ├── DbgExtensionUtils.ts
│       │   │   ├── InstrumentHooks.ts
│       │   │   ├── NotificationManager.ts
│       │   │   ├── PerfManager.ts
│       │   │   ├── ProcessTelemetryContext.ts
│       │   │   ├── ResponseHelpers.ts
│       │   │   ├── SenderPostManager.ts
│       │   │   ├── StatsBeat.ts
│       │   │   ├── TelemetryHelpers.ts
│       │   │   ├── TelemetryInitializerPlugin.ts
│       │   │   ├── UnloadHandlerContainer.ts
│       │   │   └── UnloadHookContainer.ts
│       │   ├── diagnostics/
│       │   │   ├── DiagnosticLogger.ts
│       │   │   └── ThrottleMgr.ts
│       │   ├── enums/
│       │   │   ├── EnumHelperFuncs.ts
│       │   │   ├── W3CTraceFlags.ts
│       │   │   ├── ai/
│       │   │   │   ├── DependencyTypes.ts
│       │   │   │   ├── Enums.ts
│       │   │   │   ├── EventsDiscardedReason.ts
│       │   │   │   ├── FeatureOptInEnums.ts
│       │   │   │   ├── InitActiveStatusEnum.ts
│       │   │   │   ├── LoggingEnums.ts
│       │   │   │   ├── SendRequestReason.ts
│       │   │   │   ├── StatsType.ts
│       │   │   │   ├── TelemetryUnloadReason.ts
│       │   │   │   ├── TelemetryUpdateReason.ts
│       │   │   │   ├── TraceHeadersMode.ts
│       │   │   │   └── UrlRedactionOptions.ts
│       │   │   ├── ext/
│       │   │   │   └── Enums.ts
│       │   │   └── otel/
│       │   │       ├── OTelSamplingDecision.ts
│       │   │       ├── OTelSpanKind.ts
│       │   │       ├── OTelSpanStatus.ts
│       │   │       └── eAttributeChangeOp.ts
│       │   ├── ext/
│       │   │   ├── AppInsightsExtCore.ts
│       │   │   ├── ValueSanitizer.ts
│       │   │   ├── extSpanUtils.ts
│       │   │   └── extUtils.ts
│       │   ├── index.ts
│       │   ├── interfaces/
│       │   │   ├── IException.ts
│       │   │   ├── IOTelHrTime.ts
│       │   │   ├── ai/
│       │   │   │   ├── ConnectionString.ts
│       │   │   │   ├── IAppInsights.ts
│       │   │   │   ├── IAppInsightsCore.ts
│       │   │   │   ├── IChannelControls.ts
│       │   │   │   ├── IChannelControlsHost.ts
│       │   │   │   ├── IConfig.ts
│       │   │   │   ├── IConfiguration.ts
│       │   │   │   ├── ICookieMgr.ts
│       │   │   │   ├── ICorrelationConfig.ts
│       │   │   │   ├── IDbgExtension.ts
│       │   │   │   ├── IDependencyTelemetry.ts
│       │   │   │   ├── IDiagnosticLogger.ts
│       │   │   │   ├── IDistributedTraceContext.ts
│       │   │   │   ├── IEventTelemetry.ts
│       │   │   │   ├── IExceptionConfig.ts
│       │   │   │   ├── IExceptionTelemetry.ts
│       │   │   │   ├── IFeatureOptIn.ts
│       │   │   │   ├── IInstrumentHooks.ts
│       │   │   │   ├── IMetricTelemetry.ts
│       │   │   │   ├── INetworkStatsbeat.ts
│       │   │   │   ├── INotificationListener.ts
│       │   │   │   ├── INotificationManager.ts
│       │   │   │   ├── IPageViewPerformanceTelemetry.ts
│       │   │   │   ├── IPageViewTelemetry.ts
│       │   │   │   ├── IPartC.ts
│       │   │   │   ├── IPerfEvent.ts
│       │   │   │   ├── IPerfManager.ts
│       │   │   │   ├── IProcessTelemetryContext.ts
│       │   │   │   ├── IPropertiesPlugin.ts
│       │   │   │   ├── IRequestContext.ts
│       │   │   │   ├── IRequestTelemetry.ts
│       │   │   │   ├── ISenderPostManager.ts
│       │   │   │   ├── IStatsBeat.ts
│       │   │   │   ├── IStatsEventData.ts
│       │   │   │   ├── IStatsMgr.ts
│       │   │   │   ├── IStorageBuffer.ts
│       │   │   │   ├── ITelemetryContext.ts
│       │   │   │   ├── ITelemetryInitializers.ts
│       │   │   │   ├── ITelemetryItem.ts
│       │   │   │   ├── ITelemetryPlugin.ts
│       │   │   │   ├── ITelemetryPluginChain.ts
│       │   │   │   ├── ITelemetryUnloadState.ts
│       │   │   │   ├── ITelemetryUpdateState.ts
│       │   │   │   ├── IThrottleMgr.ts
│       │   │   │   ├── ITraceParent.ts
│       │   │   │   ├── ITraceProvider.ts
│       │   │   │   ├── ITraceTelemetry.ts
│       │   │   │   ├── IUnloadHook.ts
│       │   │   │   ├── IUnloadableComponent.ts
│       │   │   │   ├── IW3cTraceState.ts
│       │   │   │   ├── IXDomainRequest.ts
│       │   │   │   ├── IXHROverride.ts
│       │   │   │   ├── PartAExtensions.ts
│       │   │   │   ├── context/
│       │   │   │   │   ├── IApplication.ts
│       │   │   │   │   ├── IDevice.ts
│       │   │   │   │   ├── IInternal.ts
│       │   │   │   │   ├── ILocation.ts
│       │   │   │   │   ├── IOperatingSystem.ts
│       │   │   │   │   ├── ISample.ts
│       │   │   │   │   ├── ISession.ts
│       │   │   │   │   ├── ISessionManager.ts
│       │   │   │   │   ├── ITelemetryTrace.ts
│       │   │   │   │   ├── IUser.ts
│       │   │   │   │   └── IWeb.ts
│       │   │   │   ├── contracts/
│       │   │   │   │   ├── AvailabilityData.ts
│       │   │   │   │   ├── ContextTagKeys.ts
│       │   │   │   │   ├── DataPointType.ts
│       │   │   │   │   ├── DependencyKind.ts
│       │   │   │   │   ├── DependencySourceType.ts
│       │   │   │   │   ├── IBase.ts
│       │   │   │   │   ├── IData.ts
│       │   │   │   │   ├── IDataPoint.ts
│       │   │   │   │   ├── IDomain.ts
│       │   │   │   │   ├── IEventData.ts
│       │   │   │   │   ├── IExceptionData.ts
│       │   │   │   │   ├── IExceptionDetails.ts
│       │   │   │   │   ├── IMessageData.ts
│       │   │   │   │   ├── IMetricData.ts
│       │   │   │   │   ├── IPageViewData.ts
│       │   │   │   │   ├── IPageViewPerfData.ts
│       │   │   │   │   ├── IRemoteDependencyData.ts
│       │   │   │   │   ├── IStackFrame.ts
│       │   │   │   │   └── SeverityLevel.ts
│       │   │   │   └── telemetry/
│       │   │   │       ├── IEnvelope.ts
│       │   │   │       └── ISerializable.ts
│       │   │   ├── config/
│       │   │   │   ├── IConfigDefaults.ts
│       │   │   │   ├── IDynamicConfigHandler.ts
│       │   │   │   ├── IDynamicPropertyHandler.ts
│       │   │   │   ├── IDynamicWatcher.ts
│       │   │   │   └── _IDynamicConfigHandlerState.ts
│       │   │   ├── ext/
│       │   │   │   └── DataModels.ts
│       │   │   └── otel/
│       │   │       ├── IOTelApi.ts
│       │   │       ├── IOTelApiCtx.ts
│       │   │       ├── IOTelAttributes.ts
│       │   │       ├── attribute/
│       │   │       │   └── IAttributeContainer.ts
│       │   │       ├── config/
│       │   │       │   ├── IOTelAttributeLimits.ts
│       │   │       │   ├── IOTelConfig.ts
│       │   │       │   ├── IOTelErrorHandlers.ts
│       │   │       │   ├── IOTelSpanLimits.ts
│       │   │       │   └── IOTelTraceCfg.ts
│       │   │       └── trace/
│       │   │           ├── IOTelSpan.ts
│       │   │           ├── IOTelSpanContext.ts
│       │   │           ├── IOTelSpanCtx.ts
│       │   │           ├── IOTelSpanOptions.ts
│       │   │           ├── IOTelSpanStatus.ts
│       │   │           ├── IOTelTraceApi.ts
│       │   │           ├── IOTelTraceState.ts
│       │   │           ├── IOTelTracer.ts
│       │   │           ├── IOTelTracerOptions.ts
│       │   │           ├── IOTelTracerProvider.ts
│       │   │           └── IReadableSpan.ts
│       │   ├── internal/
│       │   │   ├── EventHelpers.ts
│       │   │   ├── attributeHelpers.ts
│       │   │   ├── commonUtils.ts
│       │   │   ├── handleErrors.ts
│       │   │   ├── noopHelpers.ts
│       │   │   └── timeHelpers.ts
│       │   ├── otel/
│       │   │   ├── api/
│       │   │   │   ├── OTelApi.ts
│       │   │   │   ├── errors/
│       │   │   │   │   ├── OTelError.ts
│       │   │   │   │   ├── OTelInvalidAttributeError.ts
│       │   │   │   │   └── OTelSpanError.ts
│       │   │   │   └── trace/
│       │   │   │       ├── span.ts
│       │   │   │       ├── spanContext.ts
│       │   │   │       ├── traceApi.ts
│       │   │   │       ├── traceProvider.ts
│       │   │   │       ├── traceState.ts
│       │   │   │       ├── tracer.ts
│       │   │   │       ├── tracerProvider.ts
│       │   │   │       └── utils.ts
│       │   │   └── attribute/
│       │   │       ├── SemanticConventions.ts
│       │   │       └── attributeContainer.ts
│       │   ├── telemetry/
│       │   │   ├── ConnectionStringParser.ts
│       │   │   ├── RequestResponseHeaders.ts
│       │   │   ├── TelemetryItemCreator.ts
│       │   │   ├── W3cTraceState.ts
│       │   │   └── ai/
│       │   │       ├── Common/
│       │   │       │   ├── Data.ts
│       │   │       │   ├── DataPoint.ts
│       │   │       │   ├── DataSanitizer.ts
│       │   │       │   └── Envelope.ts
│       │   │       ├── DataTypes.ts
│       │   │       ├── EnvelopeTypes.ts
│       │   │       ├── Event.ts
│       │   │       ├── Exception.ts
│       │   │       ├── Metric.ts
│       │   │       ├── PageView.ts
│       │   │       ├── PageViewPerformance.ts
│       │   │       ├── RemoteDependencyData.ts
│       │   │       └── Trace.ts
│       │   └── utils/
│       │       ├── CoreUtils.ts
│       │       ├── DataCacheHelper.ts
│       │       ├── DomHelperFuncs.ts
│       │       ├── EnvUtils.ts
│       │       ├── HelperFuncs.ts
│       │       ├── Offline.ts
│       │       ├── RandomHelper.ts
│       │       ├── StorageHelperFuncs.ts
│       │       ├── TraceParent.ts
│       │       ├── UrlHelperFuncs.ts
│       │       └── Util.ts
│       ├── tsconfig.json
│       ├── tsdoc.json
│       ├── tslint.json
│       └── typedoc.json
├── tools/
│   ├── applicationinsights-web-snippet/
│   │   ├── .gitignore
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── SnippetTests.ts
│   │   │   │       └── snippet.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   ├── manual/
│   │   │   │   ├── cspUseNounceTest.html
│   │   │   │   └── cspUsePolicyTest.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── createAiSnippet.js
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── rollupOneDSSnippet.config.js
│   │   ├── rollupSnippet.config.js
│   │   ├── src/
│   │   │   ├── 1dsSupport.ts
│   │   │   ├── 1dsType.ts
│   │   │   ├── aiSupport.ts
│   │   │   ├── applicationinsights-web-snippet.ts
│   │   │   ├── common/
│   │   │   │   └── utils.ts
│   │   │   ├── snippet-config.jsonc
│   │   │   ├── snippet.ts
│   │   │   ├── support.ts
│   │   │   └── type.ts
│   │   ├── trustedTypeSupport.md
│   │   ├── tsconfig.json
│   │   ├── tslint.json
│   │   └── typedoc.json
│   ├── chrome-debug-extension/
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── PRIVACY
│   │   ├── README.md
│   │   ├── manifest.json
│   │   ├── package.json
│   │   ├── pages/
│   │   │   └── popup.html
│   │   ├── rollup.config.js
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   ├── src/
│   │   │   ├── Enums.ts
│   │   │   ├── LogEntry.ts
│   │   │   ├── UpdateCheck.ts
│   │   │   ├── background.ts
│   │   │   ├── components/
│   │   │   │   ├── IFilterSettings.ts
│   │   │   │   ├── configurationSelection.tsx
│   │   │   │   ├── eventDetails.tsx
│   │   │   │   ├── eventTable.tsx
│   │   │   │   ├── eventTypeCounter.tsx
│   │   │   │   ├── eventTypeFilter.tsx
│   │   │   │   ├── eventTypeIcon.tsx
│   │   │   │   ├── optionsBar.tsx
│   │   │   │   ├── splitPanel.tsx
│   │   │   │   └── telemetryViewer.tsx
│   │   │   ├── configuration/
│   │   │   │   ├── Configuration.types.ts
│   │   │   │   ├── IConfiguration.ts
│   │   │   │   ├── IPopupSettings.ts
│   │   │   │   ├── PopupConfigCache.ts
│   │   │   │   ├── configuration.ts
│   │   │   │   └── defaultConfiguration.ts
│   │   │   ├── contentLoad.ts
│   │   │   ├── dataSources/
│   │   │   │   ├── IDataEvent.ts
│   │   │   │   ├── IDataSource.ts
│   │   │   │   ├── dataHelpers.ts
│   │   │   │   ├── dataSources.ts
│   │   │   │   ├── defaultDataSource.ts
│   │   │   │   └── noOpDataSource.ts
│   │   │   ├── helpers.ts
│   │   │   ├── interfaces/
│   │   │   │   └── IMessage.ts
│   │   │   ├── pageHelper.ts
│   │   │   ├── popup.tsx
│   │   │   ├── session.ts
│   │   │   └── telemetryViewerPopup.tsx
│   │   ├── styles/
│   │   │   └── popup.css
│   │   └── tsconfig.json
│   ├── config/
│   │   ├── README.md
│   │   ├── config.json
│   │   ├── package.json
│   │   ├── scripts/
│   │   │   ├── listAzCdnVersions.ps1
│   │   │   ├── publishAzReleaseToCdn.ps1
│   │   │   └── setAzActiveCdnVersion.ps1
│   │   └── test-config.json
│   ├── github-page-script-injection/
│   │   └── injectScript.js
│   ├── grunt-tasks/
│   │   ├── chrome/
│   │   │   └── bridge.js
│   │   ├── minifyNames.js
│   │   ├── qunit.js
│   │   └── stringReplace.js
│   ├── release-tools/
│   │   ├── README.md
│   │   ├── npm_package.js
│   │   ├── npm_publish.js
│   │   ├── npm_set_latest.js
│   │   ├── package.json
│   │   ├── package_groups.json
│   │   ├── setVersion.js
│   │   ├── updatemanifest.js
│   │   └── zipbrowser.js
│   ├── rollup-es5/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── Es5Rollup.Tests.ts
│   │   │   │       └── Es5RollupTests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── ImportCheck.ts
│   │   │   ├── applicationinsights-rollup-es5.ts
│   │   │   └── es5/
│   │   │       ├── Es5Check.ts
│   │   │       ├── Es5Poly.ts
│   │   │       ├── Es5Tokens.ts
│   │   │       ├── FormatError.ts
│   │   │       ├── Interfaces.ts
│   │   │       └── Utils.ts
│   │   ├── tsconfig.json
│   │   └── tslint.json
│   ├── rollup-plugin-uglify3-js/
│   │   ├── .eslintrc
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   └── uglify3-js.ts
│   │   └── tsconfig.json
│   ├── shims/
│   │   ├── .npmignore
│   │   ├── LICENSE
│   │   ├── NOTICE
│   │   ├── README.md
│   │   ├── Tests/
│   │   │   ├── Unit/
│   │   │   │   └── src/
│   │   │   │       ├── ShimsTests.ts
│   │   │   │       └── shims.tests.ts
│   │   │   ├── UnitTests.html
│   │   │   └── tsconfig.json
│   │   ├── api-extractor.json
│   │   ├── package.json
│   │   ├── rollup.config.js
│   │   ├── src/
│   │   │   ├── Constants.ts
│   │   │   ├── TsLibGlobals.ts
│   │   │   ├── TsLibShims.ts
│   │   │   └── applicationinsights-shims.ts
│   │   ├── tsconfig.json
│   │   └── tslint.json
│   ├── sizeImageGenerator/
│   │   ├── package.json
│   │   └── size-image-generator.js
│   ├── status-tools/
│   │   ├── github-status.js
│   │   └── package.json
│   ├── subResourceIntegrity/
│   │   └── generateIntegrityFile.js
│   └── updateDistEsm/
│       └── updateDistEsm.js
├── tsconfig.json
├── tsconfigmodule.json
├── tsdoc.json
├── tslint-base.json
├── tslint.json
├── version.json
└── versionConflict.md
Download .txt
Showing preview only (651K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (7460 symbols across 598 files)

FILE: AISKU/Tests/Manual/ai1.test.js
  function n (line 1) | function n(){this.constructor=e}
  function _endsWith (line 1) | function _endsWith(e,t){var n=e.length,i=n-t.length;return e.substring(0...
  function a (line 1) | function a(e,t,n,i){void 0===n&&(n=!1),this.messageId=e,this.message=(n?...
  function r (line 1) | function r(){}
  function e (line 1) | function e(){}
  function r (line 1) | function r(){}
  function i (line 1) | function i(){}
  function n (line 1) | function n(){}
  function d (line 1) | function d(){}
  function e (line 1) | function e(e,t){var n=i.call(this)||this;return n.name=a.DataSanitizer.s...
  function e (line 1) | function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.aiDa...
  function i (line 1) | function i(){}
  function e (line 1) | function e(){this.hashCodeGeneragor=new t.HashCodeScoreGenerator}
  function e (line 1) | function e(e){this.INT_MAX_VALUE=2147483647,(100<e||e<0)&&(t._InternalLo...
  function i (line 1) | function i(e){e||(e={}),"function"!=typeof e.sessionExpirationMs&&(e.ses...
  function c (line 1) | function c(e){var t=g.Util.getCookie(c.userCookieName);if(t){var n=t.spl...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(e){this.completed=!1,this.requestHeadersSize=null,this.ttfb=n...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.properties={},e.m...
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.properties={},e.m...
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.success=!0,e.prop...
  function r (line 1) | function r(){}
  function e (line 1) | function e(e,t,n,i,o,a,r,s,l){var c=u.call(this)||this;c.aiDataContract=...
  function r (line 1) | function r(e){this.currentWindowHost="object"==typeof window?window.loca...
  function e (line 1) | function e(e){this._config=e,this._buffer=[]}
  function i (line 1) | function i(e){this._bufferFullMessageSent=!1,this._config=e;var t=this.g...
  function e (line 1) | function e(e){(this._XMLHttpRequestSupported=!1,this._consecutiveErrors=...
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.properties={},e}
  function e (line 1) | function e(e,t,n){var i=o.call(this)||this;return i.aiDataContract={ver:...
  function e (line 1) | function e(e,t,n){var i=o.call(this)||this;return i.aiDataContract={ver:...
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.exceptions=[],e.p...
  function e (line 1) | function e(e,t,n,i){var o=a.call(this)||this;return o.aiDataContract={ve...
  function e (line 1) | function e(e){var t=i.call(this)||this;t.aiDataContract={id:s.FieldType....
  function a (line 1) | function a(e,t){var n=o.call(this)||this;n.sizeInBytes=0,n.aiDataContrac...
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.metrics=[],e.prop...
  function e (line 1) | function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.aiDa...
  function e (line 1) | function e(e,t,n,i,o,a){var r=l.call(this)||this;r.aiDataContract={ver:g...
  function e (line 1) | function e(e,t,n,i,o,a){var r=s.call(this)||this;return r.aiDataContract...
  function e (line 1) | function e(){var e=t.call(this)||this;return e.ver=2,e.properties={},e.m...
  function d (line 1) | function d(e,t,n,i,o){var a=p.call(this)||this;a.aiDataContract={ver:f.F...
  function e (line 1) | function e(e){var t=this;this._config=e,this._sender=new s.Sender(e),thi...
  function t (line 1) | function t(){return e.call(this)||this}
  function e (line 1) | function e(e,t){var n=i.call(this)||this;return n.aiDataContract={baseTy...
  function e (line 1) | function e(e,t){this.pageViewPerformanceSent=!1,this.overridePageViewDur...
  function e (line 1) | function e(e){this.prevPageVisitDataKeyName="prevPageVisitData",this.pag...
  function e (line 1) | function e(){this.hashCodeGeneragor=new t.HashCodeScoreGenerator}
  function o (line 1) | function o(e){var l=this;this._trackAjaxAttempts=0,this.config=e||{};var...
  function e (line 1) | function e(e){this._name=e,this._events={}}
  function i (line 1) | function i(){}
  function n (line 1) | function n(e){e.queue=e.queue||[];var t=e.config||{};if(t&&!t.instrument...

FILE: AISKU/Tests/Manual/ai2.test.js
  function getGlobal (line 50) | function getGlobal(useCached) {
  function throwTypeError (line 70) | function throwTypeError(message) {
  function objCreateFn (line 73) | function objCreateFn(obj) {
  function __extendsFn (line 118) | function __extendsFn(d, b) {
  function __spreadArrayFn (line 128) | function __spreadArrayFn(to, from) {
  function _getObjProto$1 (line 234) | function _getObjProto$1(target) {
  function isTypeof (line 246) | function isTypeof(value, theType) {
  function isUndefined (line 249) | function isUndefined(value) {
  function isNullOrUndefined (line 252) | function isNullOrUndefined(value) {
  function isNotNullOrUndefined (line 255) | function isNotNullOrUndefined(value) {
  function hasOwnProperty (line 258) | function hasOwnProperty(obj, prop) {
  function isObject (line 261) | function isObject(value) {
  function isFunction (line 264) | function isFunction(value) {
  function normalizeJsName (line 267) | function normalizeJsName(name) {
  function objForEachKey (line 280) | function objForEachKey(target, callbackfn) {
  function strEndsWith (line 289) | function strEndsWith(value, search) {
  function _strEndsWithPoly (line 296) | function _strEndsWithPoly(value, search) {
  function strContains (line 312) | function strContains(value, search) {
  function isDate (line 318) | function isDate(obj) {
  function _isArrayPoly (line 322) | function _isArrayPoly(obj) {
  function isError (line 325) | function isError(obj) {
  function isString (line 328) | function isString(value) {
  function isNumber (line 331) | function isNumber(value) {
  function isBoolean (line 334) | function isBoolean(value) {
  function isPlainObject (line 337) | function isPlainObject(value) {
  function toISOString (line 353) | function toISOString(date) {
  function _toISOStringPoly (line 358) | function _toISOStringPoly(date) {
  function arrForEach (line 377) | function arrForEach(arr, callbackfn, thisArg) {
  function arrIndexOf (line 391) | function arrIndexOf(arr, searchElement, fromIndex) {
  function arrMap (line 410) | function arrMap(arr, callbackfn, thisArg) {
  function arrReduce (line 431) | function arrReduce(arr, callbackfn, initialValue) {
  function strTrim (line 457) | function strTrim(str) {
  function objKeys (line 473) | function objKeys(obj) {
  function objDefineAccessors (line 497) | function objDefineAccessors(target, prop, getProp, setProp) {
  function _doNothing (line 518) | function _doNothing(value) {
  function deepFreeze (line 521) | function deepFreeze(obj) {
  function dateNow (line 532) | function dateNow() {
  function getExceptionName (line 536) | function getExceptionName(object) {
  function setValue (line 542) | function setValue(target, field, value, valChk, srcChk) {
  function getSetValue (line 553) | function getSetValue(target, field, defValue) {
  function getCfgValue (line 567) | function getCfgValue(theValue, defaultValue) {
  function isTruthy (line 570) | function isTruthy(value) {
  function throwError (line 573) | function throwError(message) {
  function _createProxyFunction (line 576) | function _createProxyFunction(source, funcName) {
  function proxyAssign (line 595) | function proxyAssign(target, source, chkSet) {
  function proxyFunctionAs (line 625) | function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
  function proxyFunctions (line 632) | function proxyFunctions(target, source, functionsToProxy, overwriteTarge...
  function createClassFromInterface (line 642) | function createClassFromInterface(defaults) {
  function optimizeObject (line 655) | function optimizeObject(theObject) {
  function objExtend (line 661) | function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
  function createEnumStyle (line 706) | function createEnumStyle(values) {
  function createValueMap (line 714) | function createValueMap(values) {
  function _getGlobal (line 749) | function _getGlobal() {
  function _hasOwnProperty (line 773) | function _hasOwnProperty(obj, prop) {
  function _isObjectOrArrayPrototype (line 776) | function _isObjectOrArrayPrototype(target) {
  function _isObjectArrayOrFunctionPrototype (line 779) | function _isObjectArrayOrFunctionPrototype(target) {
  function _getObjProto (line 782) | function _getObjProto(target) {
  function _forEachProp (line 798) | function _forEachProp(target, func) {
  function _isDynamicCandidate (line 816) | function _isDynamicCandidate(target, funcName, skipOwn) {
  function _throwTypeError (line 819) | function _throwTypeError(message) {
  function _getInstanceFuncs (line 822) | function _getInstanceFuncs(thisTarget) {
  function _hasVisited (line 831) | function _hasVisited(values, value) {
  function _getBaseFuncs (line 839) | function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
  function _getInstFunc (line 869) | function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
  function _getProtoFunc (line 903) | function _getProtoFunc(funcName, proto, currentDynProtoProxy) {
  function _populatePrototype (line 913) | function _populatePrototype(proto, className, target, baseInstFuncs, set...
  function _checkPrototype (line 939) | function _checkPrototype(classProto, thisTarget) {
  function _getObjName (line 954) | function _getObjName(target, unknownValue) {
  function dynamicProto (line 960) | function dynamicProto(theClass, target, delegateFunc, options) {
  function _hasProperty (line 1013) | function _hasProperty(theClass, property) {
  function getGlobalInst (line 1038) | function getGlobalInst(name) {
  function hasWindow (line 1048) | function hasWindow() {
  function getWindow (line 1051) | function getWindow() {
  function hasDocument (line 1057) | function hasDocument() {
  function getDocument (line 1060) | function getDocument() {
  function hasNavigator (line 1066) | function hasNavigator() {
  function getNavigator (line 1069) | function getNavigator() {
  function hasHistory (line 1075) | function hasHistory() {
  function getHistory (line 1078) | function getHistory() {
  function getLocation (line 1084) | function getLocation(checkForMock) {
  function getConsole (line 1096) | function getConsole() {
  function getPerformance (line 1102) | function getPerformance() {
  function hasJSON (line 1105) | function hasJSON() {
  function getJSON (line 1108) | function getJSON() {
  function getCrypto (line 1114) | function getCrypto() {
  function getMsCrypto (line 1117) | function getMsCrypto() {
  function isReactNative (line 1120) | function isReactNative() {
  function isIE (line 1127) | function isIE() {
  function getIEVersion (line 1136) | function getIEVersion(userAgentStr) {
  function dumpObj (line 1155) | function dumpObj(object) {
  function isBeaconsSupported (line 1166) | function isBeaconsSupported() {
  function isFetchSupported (line 1172) | function isFetchSupported(withKeepAlive) {
  function useXDomainRequest (line 1185) | function useXDomainRequest() {
  function isXhrSupported (line 1194) | function isXhrSupported() {
  function _getNamedValue (line 1204) | function _getNamedValue(values, name) {
  function findMetaTag (line 1217) | function findMetaTag(name) {
  function findNamedServerTiming (line 1224) | function findNamedServerTiming(name) {
  function _listenerProxyFunc (line 1237) | function _listenerProxyFunc(name, config) {
  function _getExtensionNamespace (line 1249) | function _getExtensionNamespace() {
  function getDebugExt (line 1256) | function getDebugExt(config) {
  function getDebugListener (line 1263) | function getDebugListener(config) {
  function _sanitizeDiagnosticText (line 1276) | function _sanitizeDiagnosticText(text) {
  function _logToConsole (line 1282) | function _logToConsole(func, message) {
  function _InternalLogMessage (line 1295) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function safeGetLogger (line 1313) | function safeGetLogger(core, config) {
  function DiagnosticLogger (line 1317) | function DiagnosticLogger(config) {
  function _getLogger (line 1424) | function _getLogger(logger) {
  function _throwInternal (line 1427) | function _throwInternal(logger, severity, msgId, msg, properties, isUser...
  function _warnToConsole (line 1431) | function _warnToConsole(logger, message) {
  function _logInternalMessage (line 1434) | function _logInternalMessage(logger, severity, message) {
  function PerfEvent (line 1443) | function PerfEvent(name, payloadDetails, isAsync) {
  function PerfManager (line 1510) | function PerfManager(manager) {
  function doPerf (line 1539) | function doPerf(mgrSource, getSource, func, details, isAsync) {
  function getGblPerfMgr (line 1581) | function getGblPerfMgr() {
  function _mwcSeed (line 1590) | function _mwcSeed(seedValue) {
  function _autoSeedMwc (line 1598) | function _autoSeedMwc() {
  function randomValue (line 1606) | function randomValue(maxValue) {
  function random32 (line 1612) | function random32(signed) {
  function mwcRandomSeed (line 1632) | function mwcRandomSeed(value) {
  function mwcRandom32 (line 1640) | function mwcRandom32(signed) {
  function newId (line 1649) | function newId(maxLength) {
  function _createAccessor (line 1671) | function _createAccessor(target, prop, value) {
  function _canAcceptData (line 1686) | function _canAcceptData(target) {
  function _getCache (line 1689) | function _getCache(data, target) {
  function createUniqueNamespace (line 1705) | function createUniqueNamespace(name, includeVersion) {
  function createElmNodeData (line 1709) | function createElmNodeData(name) {
  function _gblCookieMgr (line 1753) | function _gblCookieMgr(config, logger) {
  function _isMgrEnabled (line 1761) | function _isMgrEnabled(cookieMgr) {
  function _createCookieMgrConfig (line 1767) | function _createCookieMgrConfig(rootConfig) {
  function _isIgnoredCookie (line 1783) | function _isIgnoredCookie(cookieMgrCfg, name) {
  function _isBlockedCookie (line 1789) | function _isBlockedCookie(cookieMgrCfg, name) {
  function safeGetCookieMgr (line 1797) | function safeGetCookieMgr(core, config) {
  function createCookieMgr (line 1816) | function createCookieMgr(rootConfig, logger) {
  function areCookiesSupported (line 1913) | function areCookiesSupported(logger) {
  function _extractParts (line 1926) | function _extractParts(theValue) {
  function _formatDate (line 1945) | function _formatDate(theDate, func) {
  function _formatCookieValue (line 1951) | function _formatCookieValue(value, values) {
  function _getCookieValue (line 1958) | function _getCookieValue(name) {
  function _setCookieValue (line 1970) | function _setCookieValue(name, cookieValue) {
  function uaDisallowsSameSiteNone (line 1975) | function uaDisallowsSameSiteNone(userAgent) {
  function _normalizeNamespace (line 2017) | function _normalizeNamespace(name) {
  function _getEvtNamespace (line 2023) | function _getEvtNamespace(eventName, evtNamespace) {
  function _getRegisteredEvents (line 2055) | function _getRegisteredEvents(target, evtName, addDefault) {
  function _doDetach (line 2064) | function _doDetach(obj, evtName, handlerRef, useCapture) {
  function _doAttach (line 2074) | function _doAttach(obj, evtName, handlerRef, useCapture) {
  function _doUnregister (line 2088) | function _doUnregister(target, events, evtName, unRegFn) {
  function _unregisterEvents (line 2102) | function _unregisterEvents(target, evtName, unRegFn) {
  function mergeEvtNamespace (line 2116) | function mergeEvtNamespace(theNamespace, namespaces) {
  function eventOn (line 2132) | function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
  function eventOff (line 2156) | function eventOff(target, eventName, handlerRef, evtNamespace, useCaptur...
  function attachEvent (line 2177) | function attachEvent(obj, eventNameWithoutOn, handlerRef, useCapture) {
  function addEventHandler (line 2181) | function addEventHandler(eventName, callback, evtNamespace) {
  function removeEventHandler (line 2194) | function removeEventHandler(eventName, callback, evtNamespace) {
  function _addEventListeners (line 2205) | function _addEventListeners(events, listener, excludeEvents, evtNamespac...
  function addEventListeners (line 2218) | function addEventListeners(events, listener, excludeEvents, evtNamespace) {
  function removeEventListeners (line 2228) | function removeEventListeners(events, listener, evtNamespace) {
  function addPageUnloadEventListener (line 2237) | function addPageUnloadEventListener(listener, excludeEvents, evtNamespac...
  function removePageUnloadEventListener (line 2240) | function removePageUnloadEventListener(listener, evtNamespace) {
  function addPageHideEventListener (line 2243) | function addPageHideEventListener(listener, excludeEvents, evtNamespace) {
  function removePageHideEventListener (line 2260) | function removePageHideEventListener(listener, evtNamespace) {
  function newGuid (line 2268) | function newGuid() {
  function perfNow (line 2272) | function perfNow() {
  function generateW3CId (line 2279) | function generateW3CId() {
  function _legacyCookieMgr (line 2333) | function _legacyCookieMgr(config, logger) {
  function disableCookies (line 2359) | function disableCookies() {
  function canUseCookies (line 2362) | function canUseCookies(logger) {
  function getCookie (line 2365) | function getCookie(logger, name) {
  function setCookie (line 2368) | function setCookie(logger, name, value, domain) {
  function deleteCookie (line 2371) | function deleteCookie(logger, name) {
  function _isValid (line 2380) | function _isValid(value, len, invalidValue) {
  function _formatValue (line 2386) | function _formatValue(value, len, defValue) {
  function _formatFlags (line 2392) | function _formatFlags(value) {
  function createTraceParent (line 2402) | function createTraceParent(traceId, spanId, flags, version) {
  function parseTraceParent (line 2411) | function parseTraceParent(value) {
  function isValidTraceId (line 2436) | function isValidTraceId(value) {
  function isValidSpanId (line 2439) | function isValidSpanId(value) {
  function formatTraceParent (line 2442) | function formatTraceParent(value) {
  function findW3cTraceParent (line 2456) | function findW3cTraceParent() {
  function _getPluginState (line 2466) | function _getPluginState(plugin) {
  function initializePlugins (line 2469) | function initializePlugins(processContext, extensions) {
  function sortPlugins (line 2508) | function sortPlugins(plugins) {
  function createDistributedTraceContext (line 2526) | function createDistributedTraceContext(parentCtx) {
  function _getNextProxyStart (line 2568) | function _getNextProxyStart(proxy, core, startAt) {
  function _createInternalContext (line 2577) | function _createInternalContext(telemetryChain, config, core, startAt) {
  function createProcessTelemetryContext (line 2696) | function createProcessTelemetryContext(telemetryChain, config, core, sta...
  function createProcessTelemetryUnloadContext (line 2715) | function createProcessTelemetryUnloadContext(telemetryChain, core, start...
  function createProcessTelemetryUpdateContext (line 2735) | function createProcessTelemetryUpdateContext(telemetryChain, core, start...
  function createTelemetryProxyChain (line 2757) | function createTelemetryProxyChain(plugins, config, core, startAt) {
  function createTelemetryPluginProxy (line 2783) | function createTelemetryPluginProxy(plugin, config, core) {
  function _addChannelQueue (line 2914) | function _addChannelQueue(channelQueue, queue, core) {
  function createChannelControllerPlugin (line 2930) | function createChannelControllerPlugin(channelQueue, core) {
  function createChannelQueues (line 3091) | function createChannelQueues(channels, extensions, core) {
  function createUnloadHandlerContainer (line 3108) | function createUnloadHandlerContainer() {
  function BaseTelemetryPlugin (line 3134) | function BaseTelemetryPlugin() {
  function TelemetryInitializerPlugin (line 3285) | function TelemetryInitializerPlugin() {
  function _createPerfManager (line 3353) | function _createPerfManager(core, notificationMgr) {
  function _validateExtensions (line 3356) | function _validateExtensions(logger, channelPriority, allExtensions) {
  function _isPluginPresent (line 3384) | function _isPluginPresent(thePlugin, plugins) {
  function _createDummyNotificationManager (line 3394) | function _createDummyNotificationManager() {
  function BaseCore (line 3405) | function BaseCore() {
  function _runListeners (line 3888) | function _runListeners(listeners, name, isAsync, callback) {
  function NotificationManager (line 3905) | function NotificationManager(config) {
  function AppInsightsCore (line 3956) | function AppInsightsCore() {
  function _arrLoop (line 4101) | function _arrLoop(arr, fn) {
  function _doCallbacks (line 4110) | function _doCallbacks(hooks, callDetails, cbArgs, hookCtx, type) {
  function _createFunctionHook (line 4142) | function _createFunctionHook(aiHook) {
  function _getOwner (line 4184) | function _getOwner(target, name, checkPrototype, checkParentProto) {
  function InstrumentProto (line 4196) | function InstrumentProto(target, funcName, callbacks) {
  function _createInstrumentHook (line 4202) | function _createInstrumentHook(owner, funcName, fn, callbacks) {
  function InstrumentFunc (line 4232) | function InstrumentFunc(target, funcName, callbacks, checkPrototype, che...
  function InstrumentEvent (line 4245) | function InstrumentEvent(target, evtName, callbacks, checkPrototype, che...
  function createDomEvent (line 4264) | function createDomEvent(eventName) {
  function stringToBoolOrDefault (line 4318) | function stringToBoolOrDefault(str, defaultValue) {
  function msToTimeSpan (line 4325) | function msToTimeSpan(totalms) {
  function getExtensionByName (line 4341) | function getExtensionByName(extensions, identifier) {
  function isCrossOriginError (line 4351) | function isCrossOriginError(message, url, lineNumber, columnNumber, erro...
  function _getLocalStorageObject (line 4380) | function _getLocalStorageObject() {
  function _getVerifiedStorageObject (line 4386) | function _getVerifiedStorageObject(storageType) {
  function _getSessionStorageObject (line 4405) | function _getSessionStorageObject() {
  function utlDisableStorage (line 4411) | function utlDisableStorage() {
  function utlSetStoragePrefix (line 4415) | function utlSetStoragePrefix(storagePrefix) {
  function utlEnableStorage (line 4418) | function utlEnableStorage() {
  function utlCanUseLocalStorage (line 4422) | function utlCanUseLocalStorage(reset) {
  function utlGetLocalStorage (line 4428) | function utlGetLocalStorage(logger, name) {
  function utlSetLocalStorage (line 4441) | function utlSetLocalStorage(logger, name, data) {
  function utlRemoveStorage (line 4455) | function utlRemoveStorage(logger, name) {
  function utlCanUseSessionStorage (line 4469) | function utlCanUseSessionStorage(reset) {
  function utlGetSessionStorageKeys (line 4475) | function utlGetSessionStorageKeys() {
  function utlGetSessionStorage (line 4484) | function utlGetSessionStorage(logger, name) {
  function utlSetSessionStorage (line 4497) | function utlSetSessionStorage(logger, name, data) {
  function utlRemoveSessionStorage (line 4511) | function utlRemoveSessionStorage(logger, name) {
  function dataSanitizeKeyAndAddUniqueness (line 4527) | function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
  function dataSanitizeKey (line 4541) | function dataSanitizeKey(logger, name) {
  function dataSanitizeString (line 4552) | function dataSanitizeString(logger, value, maxLength) {
  function dataSanitizeUrl (line 4565) | function dataSanitizeUrl(logger, url) {
  function dataSanitizeMessage (line 4568) | function dataSanitizeMessage(logger, message) {
  function dataSanitizeException (line 4578) | function dataSanitizeException(logger, exception) {
  function dataSanitizeProperties (line 4589) | function dataSanitizeProperties(logger, properties) {
  function dataSanitizeMeasurements (line 4609) | function dataSanitizeMeasurements(logger, measurements) {
  function dataSanitizeId (line 4620) | function dataSanitizeId(logger, id) {
  function dataSanitizeInput (line 4623) | function dataSanitizeInput(logger, input, maxLength, _msgId) {
  function dsPadNumber (line 4634) | function dsPadNumber(num) {
  function urlParseUrl (line 4664) | function urlParseUrl(url) {
  function urlGetAbsoluteUrl (line 4682) | function urlGetAbsoluteUrl(url) {
  function urlGetPathName (line 4690) | function urlGetPathName(url) {
  function urlGetCompleteUrl (line 4698) | function urlGetCompleteUrl(method, absoluteUrl) {
  function urlParseHost (line 4704) | function urlParseHost(url, inclPort) {
  function urlParseFullHost (line 4714) | function urlParseFullHost(url, inclPort) {
  function isInternalApplicationInsightsEndpoint (line 4741) | function isInternalApplicationInsightsEndpoint(endpointUrl) {
  function AjaxHelperParseDependencyPath (line 4855) | function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, comm...
  function dateTimeUtilsNow (line 4884) | function dateTimeUtilsNow() {
  function dateTimeUtilsDuration (line 4894) | function dateTimeUtilsDuration(start, end) {
  function createDistributedTraceContextFromTrace (line 4905) | function createDistributedTraceContextFromTrace(telemetryTrace, parentCt...
  function parseConnectionString (line 4945) | function parseConnectionString(connectionString) {
  function Envelope (line 4973) | function Envelope(logger, data, name) {
  function Event (line 4997) | function Event(logger, name, properties, measurements) {
  function _stringify (line 5022) | function _stringify(value, convertToString) {
  function _formatMessage (line 5042) | function _formatMessage(theEvent, errorType) {
  function _isExceptionDetailsInternal (line 5060) | function _isExceptionDetailsInternal(value) {
  function _isExceptionInternal (line 5070) | function _isExceptionInternal(value) {
  function _isStackDetails (line 5080) | function _isStackDetails(details) {
  function _convertStackObj (line 5083) | function _convertStackObj(errorStack) {
  function _getOperaStack (line 5099) | function _getOperaStack(errorMessage) {
  function _getStackFromErrorObj (line 5115) | function _getStackFromErrorObj(errorObj) {
  function _formatStackTrace (line 5165) | function _formatStackTrace(stackDetails) {
  function _parseStack (line 5179) | function _parseStack(stack) {
  function _getErrorType (line 5219) | function _getErrorType(errorType) {
  function _formatErrorCode (line 5235) | function _formatErrorCode(errorObj) {
  function Exception (line 5260) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 5360) | function _ExceptionDetails(logger, exception, properties) {
  function _StackFrame (line 5428) | function _StackFrame(sourceFrame, level) {
  function DataPoint (line 5486) | function DataPoint() {
  function Metric (line 5502) | function Metric(logger, name, value, count, min, max, stdDev, properties...
  function PageView (line 5527) | function PageView(logger, name, url, durationMs, properties, measurement...
  function RemoteDependencyData (line 5554) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function Trace (line 5602) | function Trace(logger, message, severityLevel, properties, measurements) {
  function PageViewPerformance (line 5625) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function Data (line 5660) | function Data(baseType, data) {
  function ConfigurationManager (line 5680) | function ConfigurationManager() {
  function _aiNameFunc (line 5696) | function _aiNameFunc(baseName) {
  function ContextTagKeys (line 5712) | function ContextTagKeys() {
  function createTelemetryItem (line 5776) | function createTelemetryItem(item, baseType, envelopeName, logger, custo...
  function TelemetryItemCreator (line 5808) | function TelemetryItemCreator() {
  function _calcPerfDuration (line 5891) | function _calcPerfDuration(resourceEntry, start, end) {
  function _setPerfDuration (line 5900) | function _setPerfDuration(props, name, resourceEntry, start, end) {
  function _setPerfValue (line 5908) | function _setPerfValue(props, name, value) {
  function _populatePerfData (line 5918) | function _populatePerfData(ajaxData, dependency) {
  function XHRMonitoringState (line 5993) | function XHRMonitoringState() {
  function ajaxRecord (line 6004) | function ajaxRecord(traceId, spanId, logger, traceCtx) {
  function _supportsFetch (line 6145) | function _supportsFetch() {
  function isWebWorker$1 (line 6156) | function isWebWorker$1() {
  function _supportsAjaxMonitoring (line 6167) | function _supportsAjaxMonitoring(ajaxMonitorInstance) {
  function _getFailedAjaxDiagnosticsMessage (line 6196) | function _getFailedAjaxDiagnosticsMessage(xhr) {
  function _throwInternalCritical (line 6207) | function _throwInternalCritical(ajaxMonitorInstance, msgId, message, pro...
  function _throwInternalWarning (line 6210) | function _throwInternalWarning(ajaxMonitorInstance, msgId, message, prop...
  function _createErrorCallbackFunc (line 6213) | function _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, ...
  function _indexOf (line 6221) | function _indexOf(value, match) {
  function _addHandler (line 6227) | function _addHandler(container, id, theFunc) {
  function _processDependencyContainer (line 6244) | function _processDependencyContainer(core, container, details, message) {
  function _processDependencyListeners (line 6258) | function _processDependencyListeners(listeners, core, ajaxData, xhr, inp...
  function _getDefaultConfig$1 (line 6289) | function _getDefaultConfig$1() {
  function _getEmptyConfig (line 6318) | function _getEmptyConfig() {
  function AjaxMonitor (line 6327) | function AjaxMonitor() {
  function getDefaultConfig (line 7146) | function getDefaultConfig(config) {
  function AppInsightsDeprecated (line 7181) | function AppInsightsDeprecated(snippet, appInsightsNew) {
  function isWebWorker (line 7340) | function isWebWorker() {
  function PageViewManager (line 7352) | function PageViewManager(appInsights, overridePageViewDuration, core, pa...
  function _isPerformanceTimingSupported (line 7500) | function _isPerformanceTimingSupported() {
  function _isPerformanceNavigationTimingSupported (line 7504) | function _isPerformanceNavigationTimingSupported() {
  function _isPerformanceTimingDataReady (line 7508) | function _isPerformanceTimingDataReady() {
  function _getPerformanceTiming (line 7521) | function _getPerformanceTiming() {
  function _getPerformanceNavigationTiming (line 7527) | function _getPerformanceNavigationTiming() {
  function _shouldCollectDuration (line 7533) | function _shouldCollectDuration() {
  function PageViewPerformanceManager (line 7559) | function PageViewPerformanceManager(core) {
  function PageVisitTimeManager (line 7617) | function PageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {
  function PageVisitData (line 7685) | function PageVisitData(pageName, pageUrl) {
  function Timing (line 7694) | function Timing(logger, name) {
  function _dispatchEvent (line 7721) | function _dispatchEvent(target, evnt) {
  function _getReason (line 7726) | function _getReason(error) {
  function _configMilliseconds (line 7737) | function _configMilliseconds(value, defValue) {
  function _getDefaultConfig (line 7744) | function _getDefaultConfig(config) {
  function _updateStorageUsage (line 7766) | function _updateStorageUsage(extConfig) {
  function AnalyticsPlugin (line 7778) | function AnalyticsPlugin() {
  function _setValueIf (line 8313) | function _setValueIf(target, field, value) {
  function _extractPartAExtensions (line 8316) | function _extractPartAExtensions(logger, item, env) {
  function _extractPropsAndMeasurements (line 8377) | function _extractPropsAndMeasurements(data, properties, measurements) {
  function _convertPropsUndefinedToCustomDefinedValue (line 8392) | function _convertPropsUndefinedToCustomDefinedValue(properties, customUn...
  function _createEnvelope (line 8399) | function _createEnvelope(logger, envelopeType, telemetryItem, data) {
  function EnvelopeCreatorInit (line 8412) | function EnvelopeCreatorInit(logger, telemetryItem) {
  function DependencyEnvelopeCreator (line 8420) | function DependencyEnvelopeCreator(logger, telemetryItem, customUndefine...
  function EventEnvelopeCreator (line 8438) | function EventEnvelopeCreator(logger, telemetryItem, customUndefinedValu...
  function ExceptionEnvelopeCreator (line 8463) | function ExceptionEnvelopeCreator(logger, telemetryItem, customUndefined...
  function MetricEnvelopeCreator (line 8476) | function MetricEnvelopeCreator(logger, telemetryItem, customUndefinedVal...
  function PageViewEnvelopeCreator (line 8489) | function PageViewEnvelopeCreator(logger, telemetryItem, customUndefinedV...
  function PageViewPerformanceEnvelopeCreator (line 8537) | function PageViewPerformanceEnvelopeCreator(logger, telemetryItem, custo...
  function TraceEnvelopeCreator (line 8552) | function TraceEnvelopeCreator(logger, telemetryItem, customUndefinedValu...
  function _disableEvents (line 8567) | function _disableEvents(target, evtNamespace) {
  function createOfflineListener (line 8570) | function createOfflineListener(parentEvtNamespace) {
  function BaseSendBuffer (line 8645) | function BaseSendBuffer(logger, config) {
  function ArraySendBuffer (line 8702) | function ArraySendBuffer(logger, config) {
  function SessionStorageSendBuffer (line 8718) | function SessionStorageSendBuffer(logger, config) {
  function Serializer (line 8816) | function Serializer(logger) {
  function HashCodeScoreGenerator (line 8963) | function HashCodeScoreGenerator() {
  function SamplingScoreGenerator (line 8988) | function SamplingScoreGenerator() {
  function Sample (line 9016) | function Sample(sampleRate, logger) {
  function _getResponseText (line 9043) | function _getResponseText(xhr) {
  function _getDefaultAppInsightsChannelConfig (line 9051) | function _getDefaultAppInsightsChannelConfig() {
  function Sender (line 9088) | function Sender() {
  function Application (line 9772) | function Application() {
  function Device (line 9778) | function Device() {
  function Internal (line 9822) | function Internal(config) {
  function Location (line 9829) | function Location() {
  function Session (line 9836) | function Session() {
  function _SessionManager (line 9841) | function _SessionManager(config, core) {
  function TelemetryTrace (line 9973) | function TelemetryTrace(id, parentId, name, logger) {
  function _validateUserInput (line 9986) | function _validateUserInput(id) {
  function User (line 9995) | function User(config, core) {
  function _removeEmpty (line 10090) | function _removeEmpty(target, name) {
  function TelemetryContext (line 10096) | function TelemetryContext(core, defaultConfig, previousTraceCtx) {
  function PropertiesPlugin (line 10218) | function PropertiesPlugin() {
  function Initialization (line 10386) | function Initialization(snippet) {
  function ApplicationInsightsContainer (line 10658) | function ApplicationInsightsContainer() {
  function _logWarn (line 10679) | function _logWarn(aiName, message) {

FILE: AISKU/Tests/Manual/ai3.test.js
  function safeGet (line 63) | function safeGet(cb, defValue) {
  function _createIs (line 74) | function _createIs(theType) {
  function _createObjIs (line 79) | function _createObjIs(theName) {
  function objToString (line 85) | function objToString(value) {
  function isUndefined (line 88) | function isUndefined(value) {
  function isNullOrUndefined (line 91) | function isNullOrUndefined(value) {
  function isStrictNullOrUndefined (line 94) | function isStrictNullOrUndefined(value) {
  function isDefined (line 97) | function isDefined(arg) {
  function isPrimitiveType (line 100) | function isPrimitiveType(theType) {
  function isObject (line 105) | function isObject(value) {
  function isPromiseLike (line 116) | function isPromiseLike(value) {
  function isTruthy (line 119) | function isTruthy(value) {
  function objHasOwnProperty (line 125) | function objHasOwnProperty(obj, prop) {
  function polyObjHasOwn (line 130) | function polyObjHasOwn(obj, prop) {
  function objForEachKey (line 134) | function objForEachKey(theObject, callbackfn, thisArg) {
  function _createKeyValueMap (line 146) | function _createKeyValueMap(values, keyType, valueType, completeFn) {
  function throwError (line 155) | function throwError(message) {
  function throwTypeError (line 158) | function throwTypeError(message) {
  function _doNothing (line 163) | function _doNothing(value) {
  function _getProto (line 166) | function _getProto(value) {
  function objKeys (line 170) | function objKeys(value) {
  function objDeepFreeze (line 176) | function objDeepFreeze(value) {
  function createEnum (line 189) | function createEnum(values) {
  function createEnumKeyMap (line 192) | function createEnumKeyMap(values) {
  function createSimpleMap (line 195) | function createSimpleMap(values) {
  function createTypeMap (line 203) | function createTypeMap(values) {
  function _getGlobalValue (line 227) | function _getGlobalValue() {
  function _getGlobalConfig (line 243) | function _getGlobalConfig() {
  function dumpObj (line 251) | function dumpObj(object, format) {
  function _throwMissingFunction (line 268) | function _throwMissingFunction(funcName, thisArg) {
  function _unwrapInstFunction (line 271) | function _unwrapInstFunction(funcName) {
  function _unwrapFunction (line 277) | function _unwrapFunction(funcName, clsProto) {
  function _unwrapFunctionWithPoly (line 288) | function _unwrapFunctionWithPoly(funcName, clsProto, polyFunc) {
  function _unwrapProp (line 300) | function _unwrapProp(propName) {
  function polyStrSubstr (line 312) | function polyStrSubstr(value, start, length) {
  function strLeft (line 328) | function strLeft(value, count) {
  function _globalSymbolRegistry (line 334) | function _globalSymbolRegistry() {
  function polyNewSymbol (line 342) | function polyNewSymbol(description) {
  function polySymbolFor (line 350) | function polySymbolFor(key) {
  function polyGetKnownSymbol (line 361) | function polyGetKnownSymbol(name) {
  function _createProp (line 378) | function _createProp(value) {
  function objDefine (line 397) | function objDefine(target, key, propDesc) {
  function getLazy (line 406) | function getLazy(cb) {
  function safeGetLazy (line 431) | function safeGetLazy(cb, defValue) {
  function lazySafeGetInst (line 443) | function lazySafeGetInst(name) {
  function getGlobal (line 446) | function getGlobal(useCached) {
  function getInst (line 450) | function getInst(name, useCached) {
  function hasDocument (line 460) | function hasDocument() {
  function getDocument (line 463) | function getDocument() {
  function hasWindow (line 467) | function hasWindow() {
  function getWindow (line 470) | function getWindow() {
  function hasNavigator (line 474) | function hasNavigator() {
  function getNavigator (line 477) | function getNavigator() {
  function hasHistory (line 481) | function hasHistory() {
  function getHistory (line 484) | function getHistory() {
  function isNode (line 488) | function isNode() {
  function isWebWorker (line 492) | function isWebWorker() {
  function _getSymbolValue (line 500) | function _getSymbolValue(name) {
  function hasSymbol (line 505) | function hasSymbol() {
  function getSymbol (line 508) | function getSymbol() {
  function getKnownSymbol (line 515) | function getKnownSymbol(name, noPoly) {
  function newSymbol (line 520) | function newSymbol(description, noPoly) {
  function symbolFor (line 524) | function symbolFor(key) {
  function isIterator (line 529) | function isIterator(value) {
  function isIterable (line 532) | function isIterable(value) {
  function iterForOf (line 537) | function iterForOf(iter, callbackfn, thisArg) {
  function arrAppend (line 580) | function arrAppend(target, elms) {
  function arrForEach (line 597) | function arrForEach(theArray, callbackfn, thisArg) {
  function polyObjCreate (line 620) | function polyObjCreate(obj) {
  function objSetPrototypeOf (line 634) | function objSetPrototypeOf(obj, proto) {
  function _createCustomError (line 646) | function _createCustomError(name, d, b) {
  function createCustomError (line 670) | function createCustomError(name, constructCb, errorBase) {
  function throwUnsupported (line 695) | function throwUnsupported(message) {
  function utcNow (line 702) | function utcNow() {
  function polyUtcNow (line 705) | function polyUtcNow() {
  function _createTrimFn (line 709) | function _createTrimFn(exp) {
  function isPlainObject (line 731) | function isPlainObject(value) {
  function _getSetVisited (line 770) | function _getSetVisited(visitMap, source, newPath, cb) {
  function _deepCopy (line 785) | function _deepCopy(visitMap, value, ctx, key) {
  function _copyProps (line 839) | function _copyProps(visitMap, target, source, ctx) {
  function objCopyProps (line 847) | function objCopyProps(target, source, handler) {
  function objDeepCopy (line 855) | function objDeepCopy(source, handler) {
  function arrayDeepCopyHandler (line 862) | function arrayDeepCopyHandler(details) {
  function dateDeepCopyHandler (line 872) | function dateDeepCopyHandler(details) {
  function functionDeepCopyHandler (line 880) | function functionDeepCopyHandler(details) {
  function plainObjDeepCopyHandler (line 886) | function plainObjDeepCopyHandler(details) {
  function _doExtend (line 896) | function _doExtend(target, theArgs) {
  function deepExtend (line 902) | function deepExtend(target, obj1, obj2, obj3, obj4, obj5, obj6) {
  function objExtend$1 (line 905) | function objExtend$1(target, obj1, obj2, obj3, obj4, obj5, obj6) {
  function getPerformance (line 912) | function getPerformance() {
  function polyStrSymSplit (line 917) | function polyStrSymSplit(value, splitter, limit) {
  function setValueByKey (line 925) | function setValueByKey(target, path, value) {
  function polyStrEndsWith (line 940) | function polyStrEndsWith(value, searchString, length) {
  function _createTimerHandler (line 958) | function _createTimerHandler(startTimer, refreshFn, cancelFn) {
  function _createTimeoutWith (line 1015) | function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
  function scheduleTimeout (line 1039) | function scheduleTimeout(callback, timeout) {
  function createTimeout (line 1042) | function createTimeout(callback, timeout) {
  function throwAggregationError (line 1108) | function throwAggregationError(message, sourceErrors) {
  function __extendsFn (line 1159) | function __extendsFn(d, b) {
  function __spreadArrayFn (line 1169) | function __spreadArrayFn(to, from) {
  function _isObjectOrArrayPrototype (line 1205) | function _isObjectOrArrayPrototype(target) {
  function _isObjectArrayOrFunctionPrototype (line 1208) | function _isObjectArrayOrFunctionPrototype(target) {
  function _getObjProto$1 (line 1211) | function _getObjProto$1(target) {
  function _forEachProp (line 1227) | function _forEachProp(target, func) {
  function _isDynamicCandidate (line 1245) | function _isDynamicCandidate(target, funcName, skipOwn) {
  function _throwTypeError (line 1248) | function _throwTypeError(message) {
  function _getInstanceFuncs (line 1251) | function _getInstanceFuncs(thisTarget) {
  function _hasVisited (line 1260) | function _hasVisited(values, value) {
  function _getBaseFuncs (line 1268) | function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
  function _getInstFunc (line 1298) | function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
  function _getProtoFunc (line 1332) | function _getProtoFunc(funcName, proto, currentDynProtoProxy) {
  function _populatePrototype (line 1342) | function _populatePrototype(proto, className, target, baseInstFuncs, set...
  function _checkPrototype (line 1368) | function _checkPrototype(classProto, thisTarget) {
  function _getObjName (line 1383) | function _getObjName(target, unknownValue) {
  function dynamicProto (line 1389) | function dynamicProto(theClass, target, delegateFunc, options) {
  function doAwaitResponse (line 1422) | function doAwaitResponse(value, cb) {
  function doAwait (line 1435) | function doAwait(value, resolveFn, rejectFn, finallyFn) {
  function doFinally (line 1452) | function doFinally(value, finallyFn) {
  function emitEvent (line 1482) | function emitEvent(target, evtName, populateEvent, useNewEvent) {
  function dumpFnObj (line 1517) | function dumpFnObj(value) {
  function _createPromise (line 1523) | function _createPromise(newPromise, processor, executor) {
  function _createAllPromise (line 1662) | function _createAllPromise(newPromise) {
  function timeoutItemProcessor (line 1701) | function timeoutItemProcessor(timeout) {
  function createAsyncPromise (line 1710) | function createAsyncPromise(executor, timeout) {
  function createNativePromise (line 1715) | function createNativePromise(executor, timeout) {
  function createPromise (line 1746) | function createPromise(executor, timeout) {
  function isNotNullOrUndefined (line 1776) | function isNotNullOrUndefined(value) {
  function normalizeJsName (line 1779) | function normalizeJsName(name) {
  function strContains (line 1792) | function strContains(value, search) {
  function toISOString (line 1798) | function toISOString(date) {
  function getExceptionName (line 1801) | function getExceptionName(object) {
  function setValue (line 1807) | function setValue(target, field, value, valChk, srcChk) {
  function getSetValue (line 1818) | function getSetValue(target, field, defValue) {
  function _createProxyFunction (line 1832) | function _createProxyFunction(source, funcName) {
  function proxyAssign (line 1851) | function proxyAssign(target, source, chkSet) {
  function proxyFunctionAs (line 1882) | function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
  function proxyFunctions (line 1889) | function proxyFunctions(target, source, functionsToProxy, overwriteTarge...
  function createClassFromInterface (line 1899) | function createClassFromInterface(defaults) {
  function optimizeObject (line 1912) | function optimizeObject(theObject) {
  function objExtend (line 1918) | function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
  function isFeatureEnabled (line 1962) | function isFeatureEnabled(feature, cfg) {
  function _hasProperty (line 1987) | function _hasProperty(theClass, property) {
  function getLocation (line 2012) | function getLocation(checkForMock) {
  function getConsole (line 2024) | function getConsole() {
  function hasJSON (line 2030) | function hasJSON() {
  function getJSON (line 2033) | function getJSON() {
  function getCrypto (line 2039) | function getCrypto() {
  function getMsCrypto (line 2042) | function getMsCrypto() {
  function isReactNative (line 2045) | function isReactNative() {
  function isIE (line 2052) | function isIE() {
  function getIEVersion (line 2061) | function getIEVersion(userAgentStr) {
  function isBeaconsSupported (line 2080) | function isBeaconsSupported(useCached) {
  function isFetchSupported (line 2086) | function isFetchSupported(withKeepAlive) {
  function useXDomainRequest (line 2099) | function useXDomainRequest() {
  function isXhrSupported (line 2108) | function isXhrSupported() {
  function _getNamedValue (line 2118) | function _getNamedValue(values, name) {
  function findMetaTag (line 2131) | function findMetaTag(name) {
  function findNamedServerTiming (line 2138) | function findNamedServerTiming(name) {
  function dispatchEvent (line 2147) | function dispatchEvent(target, evnt) {
  function createCustomDomEvent (line 2154) | function createCustomDomEvent(eventName, details) {
  function sendCustomEvent (line 2169) | function sendCustomEvent(evtName, cfg, customDetails) {
  function _mwcSeed (line 2189) | function _mwcSeed(seedValue) {
  function _autoSeedMwc (line 2197) | function _autoSeedMwc() {
  function randomValue (line 2205) | function randomValue(maxValue) {
  function random32 (line 2211) | function random32(signed) {
  function mwcRandom32 (line 2231) | function mwcRandom32(signed) {
  function newId (line 2240) | function newId(maxLength) {
  function _canAcceptData (line 2261) | function _canAcceptData(target) {
  function _getCache (line 2264) | function _getCache(data, target) {
  function createUniqueNamespace (line 2281) | function createUniqueNamespace(name, includeVersion) {
  function createElmNodeData (line 2285) | function createElmNodeData(name) {
  function _isConfigDefaults (line 2315) | function _isConfigDefaults(value) {
  function _getDefault (line 2318) | function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
  function _resolveDefaultValue (line 2349) | function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
  function _applyDefaultValue (line 2378) | function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValu...
  function _cfgDeepCopy (line 2447) | function _cfgDeepCopy(source) {
  function getDynamicConfigHandler (line 2466) | function getDynamicConfigHandler(value) {
  function blockDynamicConversion (line 2475) | function blockDynamicConversion(value) {
  function _canMakeDynamic (line 2485) | function _canMakeDynamic(getFunc, state, value) {
  function throwInvalidAccess (line 2495) | function throwInvalidAccess(message) {
  function _patchArray (line 2509) | function _patchArray(state, target, name) {
  function _getOwnPropGetter (line 2525) | function _getOwnPropGetter(target, name) {
  function _createDynamicProperty (line 2529) | function _createDynamicProperty(state, theConfig, name, value) {
  function _setDynamicProperty (line 2618) | function _setDynamicProperty(state, target, name, value) {
  function _setDynamicPropertyState (line 2631) | function _setDynamicPropertyState(state, target, name, flags) {
  function _makeDynamicObject (line 2667) | function _makeDynamicObject(state, target, name, desc) {
  function _createState (line 2689) | function _createState(cfgHandler) {
  function _createAndUseHandler (line 2808) | function _createAndUseHandler(state, configHandler) {
  function _createDynamicHandler (line 2820) | function _createDynamicHandler(logger, target, inPlace) {
  function _logInvalidAccess (line 2902) | function _logInvalidAccess(logger, message) {
  function createDynamicConfig (line 2911) | function createDynamicConfig(config, defaultConfig, logger, inPlace) {
  function onConfigChange (line 2918) | function onConfigChange(config, configHandler, logger) {
  function runTargetUnload (line 2927) | function runTargetUnload(target, isAsync) {
  function doUnloadAll (line 2932) | function doUnloadAll(targets, isAsync, done) {
  function _stringToBoolOrDefault (line 2952) | function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
  function cfgDfMerge (line 2961) | function cfgDfMerge(defaultValue) {
  function cfgDfSet (line 2967) | function cfgDfSet(setter, defaultValue) {
  function cfgDfValidate (line 2973) | function cfgDfValidate(validator, defaultValue, fallBackName) {
  function cfgDfBoolean (line 2980) | function cfgDfBoolean(defaultValue, fallBackName) {
  function cfgDfString (line 2987) | function cfgDfString(defaultValue) {
  function _listenerProxyFunc (line 2997) | function _listenerProxyFunc(name, config) {
  function _getExtensionNamespace (line 3009) | function _getExtensionNamespace() {
  function getDebugExt (line 3016) | function getDebugExt(config) {
  function getDebugListener (line 3023) | function getDebugListener(config) {
  function _sanitizeDiagnosticText (line 3050) | function _sanitizeDiagnosticText(text) {
  function _logToConsole (line 3056) | function _logToConsole(func, message) {
  function _InternalLogMessage (line 3069) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function safeGetLogger (line 3087) | function safeGetLogger(core, config) {
  function DiagnosticLogger (line 3091) | function DiagnosticLogger(config) {
  function _getLogger (line 3207) | function _getLogger(logger) {
  function _throwInternal (line 3210) | function _throwInternal(logger, severity, msgId, msg, properties, isUser...
  function _warnToConsole (line 3214) | function _warnToConsole(logger, message) {
  function _logInternalMessage (line 3217) | function _logInternalMessage(logger, severity, message) {
  function _getDoc (line 3248) | function _getDoc() {
  function _gblCookieMgr (line 3251) | function _gblCookieMgr(config, logger) {
  function _isMgrEnabled (line 3259) | function _isMgrEnabled(cookieMgr) {
  function _isIgnoredCookie (line 3265) | function _isIgnoredCookie(cookieMgrCfg, name) {
  function _isBlockedCookie (line 3271) | function _isBlockedCookie(cookieMgrCfg, name) {
  function _isCfgEnabled (line 3279) | function _isCfgEnabled(rootConfig, cookieMgrConfig) {
  function safeGetCookieMgr (line 3293) | function safeGetCookieMgr(core, config) {
  function createCookieMgr (line 3312) | function createCookieMgr(rootConfig, logger) {
  function areCookiesSupported (line 3427) | function areCookiesSupported(logger) {
  function _extractParts (line 3441) | function _extractParts(theValue) {
  function _formatDate (line 3460) | function _formatDate(theDate, func) {
  function _formatCookieValue (line 3466) | function _formatCookieValue(value, values) {
  function _getCookieValue (line 3473) | function _getCookieValue(name) {
  function _setCookieValue (line 3486) | function _setCookieValue(name, cookieValue) {
  function uaDisallowsSameSiteNone (line 3492) | function uaDisallowsSameSiteNone(userAgent) {
  function _runListeners (line 3520) | function _runListeners(listeners, name, isAsync, callback) {
  function NotificationManager (line 3537) | function NotificationManager(config) {
  function PerfEvent (line 3628) | function PerfEvent(name, payloadDetails, isAsync) {
  function PerfManager (line 3693) | function PerfManager(manager) {
  function doPerf (line 3722) | function doPerf(mgrSource, getSource, func, details, isAsync) {
  function getGblPerfMgr (line 3764) | function getGblPerfMgr() {
  function newGuid (line 3768) | function newGuid() {
  function generateW3CId (line 3772) | function generateW3CId() {
  function _isValid (line 3796) | function _isValid(value, len, invalidValue) {
  function _formatValue (line 3802) | function _formatValue(value, len, defValue) {
  function _formatFlags (line 3808) | function _formatFlags(value) {
  function createTraceParent (line 3818) | function createTraceParent(traceId, spanId, flags, version) {
  function parseTraceParent (line 3827) | function parseTraceParent(value, selectIdx) {
  function isValidTraceId (line 3857) | function isValidTraceId(value) {
  function isValidSpanId (line 3860) | function isValidSpanId(value) {
  function formatTraceParent (line 3863) | function formatTraceParent(value) {
  function findW3cTraceParent (line 3877) | function findW3cTraceParent(selectIdx) {
  function _getPluginState (line 3887) | function _getPluginState(plugin) {
  function initializePlugins (line 3890) | function initializePlugins(processContext, extensions) {
  function sortPlugins (line 3924) | function sortPlugins(plugins) {
  function createDistributedTraceContext (line 3942) | function createDistributedTraceContext(parentCtx) {
  function _getNextProxyStart (line 3984) | function _getNextProxyStart(proxy, core, startAt) {
  function _createInternalContext (line 3993) | function _createInternalContext(telemetryChain, dynamicHandler, core, st...
  function createProcessTelemetryContext (line 4121) | function createProcessTelemetryContext(telemetryChain, cfg, core, startA...
  function createProcessTelemetryUnloadContext (line 4143) | function createProcessTelemetryUnloadContext(telemetryChain, core, start...
  function createProcessTelemetryUpdateContext (line 4163) | function createProcessTelemetryUpdateContext(telemetryChain, core, start...
  function createTelemetryProxyChain (line 4185) | function createTelemetryProxyChain(plugins, config, core, startAt) {
  function createTelemetryPluginProxy (line 4211) | function createTelemetryPluginProxy(plugin, config, core) {
  function createUnloadHandlerContainer (line 4340) | function createUnloadHandlerContainer() {
  function createUnloadHookContainer (line 4364) | function createUnloadHookContainer() {
  function BaseTelemetryPlugin (line 4395) | function BaseTelemetryPlugin() {
  function _addInitializer (line 4530) | function _addInitializer(_initializers, id, telemetryInitializer) {
  function _runInitializers (line 4548) | function _runInitializers(_initializers, item, logger) {
  function TelemetryInitializerPlugin (line 4569) | function TelemetryInitializerPlugin() {
  function _createPerfManager (line 4614) | function _createPerfManager(core, notificationMgr) {
  function _validateExtensions (line 4617) | function _validateExtensions(logger, channelPriority, allExtensions) {
  function _isPluginPresent (line 4648) | function _isPluginPresent(thePlugin, plugins) {
  function _deepMergeConfig (line 4658) | function _deepMergeConfig(details, target, newValues, merge) {
  function _findWatcher (line 4675) | function _findWatcher(listeners, newWatcher) {
  function _addDelayedCfgListener (line 4687) | function _addDelayedCfgListener(listeners, newWatcher) {
  function _registerDelayedCfgListener (line 4703) | function _registerDelayedCfgListener(config, listeners, logger) {
  function AppInsightsCore (line 4713) | function AppInsightsCore() {
  function _normalizeNamespace (line 5426) | function _normalizeNamespace(name) {
  function _getEvtNamespace (line 5432) | function _getEvtNamespace(eventName, evtNamespace) {
  function _getRegisteredEvents (line 5464) | function _getRegisteredEvents(target, evtName, addDefault) {
  function _doDetach (line 5473) | function _doDetach(obj, evtName, handlerRef, useCapture) {
  function _doAttach (line 5483) | function _doAttach(obj, evtName, handlerRef, useCapture) {
  function _doUnregister (line 5497) | function _doUnregister(target, events, evtName, unRegFn) {
  function _unregisterEvents (line 5511) | function _unregisterEvents(target, evtName, unRegFn) {
  function mergeEvtNamespace (line 5525) | function mergeEvtNamespace(theNamespace, namespaces) {
  function eventOn (line 5541) | function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
  function eventOff (line 5565) | function eventOff(target, eventName, handlerRef, evtNamespace, useCaptur...
  function addEventHandler (line 5586) | function addEventHandler(eventName, callback, evtNamespace) {
  function removeEventHandler (line 5599) | function removeEventHandler(eventName, callback, evtNamespace) {
  function _addEventListeners (line 5610) | function _addEventListeners(events, listener, excludeEvents, evtNamespac...
  function addEventListeners (line 5623) | function addEventListeners(events, listener, excludeEvents, evtNamespace) {
  function removeEventListeners (line 5633) | function removeEventListeners(events, listener, evtNamespace) {
  function addPageUnloadEventListener (line 5642) | function addPageUnloadEventListener(listener, excludeEvents, evtNamespac...
  function removePageUnloadEventListener (line 5645) | function removePageUnloadEventListener(listener, evtNamespace) {
  function addPageHideEventListener (line 5648) | function addPageHideEventListener(listener, excludeEvents, evtNamespace) {
  function removePageHideEventListener (line 5665) | function removePageHideEventListener(listener, evtNamespace) {
  function _arrLoop (line 5682) | function _arrLoop(arr, fn) {
  function _doCallbacks (line 5691) | function _doCallbacks(hooks, callDetails, cbArgs, hookCtx, type) {
  function _createFunctionHook (line 5723) | function _createFunctionHook(aiHook) {
  function _getOwner (line 5765) | function _getOwner(target, name, checkPrototype, checkParentProto) {
  function InstrumentProto (line 5777) | function InstrumentProto(target, funcName, callbacks) {
  function _createInstrumentHook (line 5783) | function _createInstrumentHook(owner, funcName, fn, callbacks) {
  function InstrumentFunc (line 5813) | function InstrumentFunc(target, funcName, callbacks, checkPrototype, che...
  function InstrumentEvent (line 5826) | function InstrumentEvent(target, evtName, callbacks, checkPrototype, che...
  function dataSanitizeKeyAndAddUniqueness (line 5895) | function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
  function dataSanitizeKey (line 5909) | function dataSanitizeKey(logger, name) {
  function dataSanitizeString (line 5920) | function dataSanitizeString(logger, value, maxLength) {
  function dataSanitizeUrl (line 5933) | function dataSanitizeUrl(logger, url) {
  function dataSanitizeMessage (line 5936) | function dataSanitizeMessage(logger, message) {
  function dataSanitizeException (line 5946) | function dataSanitizeException(logger, exception) {
  function dataSanitizeProperties (line 5957) | function dataSanitizeProperties(logger, properties) {
  function dataSanitizeMeasurements (line 5977) | function dataSanitizeMeasurements(logger, measurements) {
  function dataSanitizeId (line 5988) | function dataSanitizeId(logger, id) {
  function dataSanitizeInput (line 5991) | function dataSanitizeInput(logger, input, maxLength, _msgId) {
  function dsPadNumber (line 6002) | function dsPadNumber(num) {
  function urlParseUrl (line 6010) | function urlParseUrl(url) {
  function urlGetAbsoluteUrl (line 6028) | function urlGetAbsoluteUrl(url) {
  function urlGetCompleteUrl (line 6036) | function urlGetCompleteUrl(method, absoluteUrl) {
  function urlParseHost (line 6042) | function urlParseHost(url, inclPort) {
  function urlParseFullHost (line 6052) | function urlParseFullHost(url, inclPort) {
  function isInternalApplicationInsightsEndpoint (line 6080) | function isInternalApplicationInsightsEndpoint(endpointUrl) {
  function correlationIdCanIncludeCorrelationHeader (line 6083) | function correlationIdCanIncludeCorrelationHeader(config, requestUrl, cu...
  function correlationIdGetCorrelationContext (line 6124) | function correlationIdGetCorrelationContext(responseHeader) {
  function correlationIdGetCorrelationContextValue (line 6132) | function correlationIdGetCorrelationContextValue(responseHeader, key) {
  function AjaxHelperParseDependencyPath (line 6143) | function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, comm...
  function dateTimeUtilsNow (line 6172) | function dateTimeUtilsNow() {
  function dateTimeUtilsDuration (line 6182) | function dateTimeUtilsDuration(start, end) {
  function createDistributedTraceContextFromTrace (line 6189) | function createDistributedTraceContextFromTrace(telemetryTrace, parentCt...
  function _getLocalStorageObject (line 6240) | function _getLocalStorageObject() {
  function _getVerifiedStorageObject (line 6246) | function _getVerifiedStorageObject(storageType) {
  function _getSessionStorageObject (line 6265) | function _getSessionStorageObject() {
  function utlDisableStorage (line 6271) | function utlDisableStorage() {
  function utlSetStoragePrefix (line 6275) | function utlSetStoragePrefix(storagePrefix) {
  function utlEnableStorage (line 6278) | function utlEnableStorage() {
  function utlCanUseLocalStorage (line 6282) | function utlCanUseLocalStorage(reset) {
  function utlGetLocalStorage (line 6288) | function utlGetLocalStorage(logger, name) {
  function utlSetLocalStorage (line 6301) | function utlSetLocalStorage(logger, name, data) {
  function utlRemoveStorage (line 6315) | function utlRemoveStorage(logger, name) {
  function utlCanUseSessionStorage (line 6329) | function utlCanUseSessionStorage(reset) {
  function utlGetSessionStorage (line 6335) | function utlGetSessionStorage(logger, name) {
  function utlSetSessionStorage (line 6348) | function utlSetSessionStorage(logger, name, data) {
  function utlRemoveSessionStorage (line 6362) | function utlRemoveSessionStorage(logger, name) {
  function ThrottleMgr (line 6379) | function ThrottleMgr(core, namePrefix) {
  function parseConnectionString (line 6703) | function parseConnectionString(connectionString) {
  function Envelope (line 6731) | function Envelope(logger, data, name) {
  function Event (line 6755) | function Event(logger, name, properties, measurements) {
  function _stringify (line 6780) | function _stringify(value, convertToString) {
  function _formatMessage (line 6800) | function _formatMessage(theEvent, errorType) {
  function _isExceptionDetailsInternal (line 6818) | function _isExceptionDetailsInternal(value) {
  function _isExceptionInternal (line 6828) | function _isExceptionInternal(value) {
  function _isStackDetails (line 6838) | function _isStackDetails(details) {
  function _convertStackObj (line 6841) | function _convertStackObj(errorStack) {
  function _getOperaStack (line 6857) | function _getOperaStack(errorMessage) {
  function _getStackFromErrorObj (line 6873) | function _getStackFromErrorObj(errorObj) {
  function _formatStackTrace (line 6923) | function _formatStackTrace(stackDetails) {
  function _parseStack (line 6937) | function _parseStack(stack) {
  function _getErrorType (line 6977) | function _getErrorType(errorType) {
  function _formatErrorCode (line 6993) | function _formatErrorCode(errorObj) {
  function Exception (line 7018) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 7118) | function _ExceptionDetails(logger, exception, properties) {
  function _StackFrame (line 7186) | function _StackFrame(sourceFrame, level) {
  function DataPoint (line 7244) | function DataPoint() {
  function Metric (line 7260) | function Metric(logger, name, value, count, min, max, stdDev, properties...
  function msToTimeSpan (line 7285) | function msToTimeSpan(totalms) {
  function isCrossOriginError (line 7301) | function isCrossOriginError(message, url, lineNumber, columnNumber, erro...
  function PageView (line 7306) | function PageView(logger, name, url, durationMs, properties, measurement...
  function RemoteDependencyData (line 7333) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function Trace (line 7381) | function Trace(logger, message, severityLevel, properties, measurements) {
  function PageViewPerformance (line 7404) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function Data (line 7439) | function Data(baseType, data) {
  function _aiNameFunc (line 7458) | function _aiNameFunc(baseName) {
  function ContextTagKeys (line 7474) | function ContextTagKeys() {
  function createTelemetryItem (line 7538) | function createTelemetryItem(item, baseType, envelopeName, logger, custo...
  function createDomEvent (line 7582) | function createDomEvent(eventName) {
  function _disableEvents (line 7597) | function _disableEvents(target, evtNamespace) {
  function createOfflineListener (line 7600) | function createOfflineListener(parentEvtNamespace) {
  function PageViewManager (line 7765) | function PageViewManager(appInsights, overridePageViewDuration, core, pa...
  function _isPerformanceTimingSupported (line 7928) | function _isPerformanceTimingSupported() {
  function _isPerformanceNavigationTimingSupported (line 7932) | function _isPerformanceNavigationTimingSupported() {
  function _isPerformanceTimingDataReady (line 7936) | function _isPerformanceTimingDataReady() {
  function _getPerformanceTiming (line 7949) | function _getPerformanceTiming() {
  function _getPerformanceNavigationTiming (line 7955) | function _getPerformanceNavigationTiming() {
  function _shouldCollectDuration (line 7961) | function _shouldCollectDuration() {
  function PageViewPerformanceManager (line 7987) | function PageViewPerformanceManager(core) {
  function PageVisitTimeManager (line 8045) | function PageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {
  function PageVisitData (line 8104) | function PageVisitData(pageName, pageUrl) {
  function Timing (line 8113) | function Timing(logger, name) {
  function _dispatchEvent (line 8141) | function _dispatchEvent(target, evnt) {
  function _getReason (line 8146) | function _getReason(error) {
  function _chkConfigMilliseconds (line 8175) | function _chkConfigMilliseconds(value, defValue) {
  function _chkSampling$1 (line 8182) | function _chkSampling$1(value) {
  function _updateStorageUsage (line 8185) | function _updateStorageUsage(extConfig) {
  function AnalyticsPlugin (line 8197) | function AnalyticsPlugin() {
  function replaceByNonOverrideCfg (line 8680) | function replaceByNonOverrideCfg(cfg, nonOverrideConfigs, curLevel, maxL...
  function resolveCdnFeatureCfg (line 8710) | function resolveCdnFeatureCfg(field, cdnCfg, userOptInDetails) {
  function applyCdnfeatureCfg (line 8756) | function applyCdnfeatureCfg(cdnCfg, core) {
  function _overrideCdnCfgByFeature (line 8781) | function _overrideCdnCfgByFeature(field, ftVal, config) {
  function CfgSyncPlugin (line 8819) | function CfgSyncPlugin() {
  function _setValueIf (line 9202) | function _setValueIf(target, field, value) {
  function _extractPartAExtensions (line 9205) | function _extractPartAExtensions(logger, item, env) {
  function _extractPropsAndMeasurements (line 9266) | function _extractPropsAndMeasurements(data, properties, measurements) {
  function _convertPropsUndefinedToCustomDefinedValue (line 9281) | function _convertPropsUndefinedToCustomDefinedValue(properties, customUn...
  function _createEnvelope (line 9288) | function _createEnvelope(logger, envelopeType, telemetryItem, data) {
  function EnvelopeCreatorInit (line 9301) | function EnvelopeCreatorInit(logger, telemetryItem) {
  function DependencyEnvelopeCreator (line 9309) | function DependencyEnvelopeCreator(logger, telemetryItem, customUndefine...
  function EventEnvelopeCreator (line 9327) | function EventEnvelopeCreator(logger, telemetryItem, customUndefinedValu...
  function ExceptionEnvelopeCreator (line 9352) | function ExceptionEnvelopeCreator(logger, telemetryItem, customUndefined...
  function MetricEnvelopeCreator (line 9365) | function MetricEnvelopeCreator(logger, telemetryItem, customUndefinedVal...
  function PageViewEnvelopeCreator (line 9378) | function PageViewEnvelopeCreator(logger, telemetryItem, customUndefinedV...
  function PageViewPerformanceEnvelopeCreator (line 9426) | function PageViewPerformanceEnvelopeCreator(logger, telemetryItem, custo...
  function TraceEnvelopeCreator (line 9441) | function TraceEnvelopeCreator(logger, telemetryItem, customUndefinedValu...
  function BaseSendBuffer (line 9457) | function BaseSendBuffer(logger, config) {
  function ArraySendBuffer (line 9524) | function ArraySendBuffer(logger, config) {
  function SessionStorageSendBuffer (line 9540) | function SessionStorageSendBuffer(logger, config) {
  function Serializer (line 9655) | function Serializer(logger) {
  function HashCodeScoreGenerator (line 9810) | function HashCodeScoreGenerator() {
  function SamplingScoreGenerator (line 9835) | function SamplingScoreGenerator() {
  function Sample (line 9863) | function Sample(sampleRate, logger) {
  function _getResponseText (line 9891) | function _getResponseText(xhr) {
  function isOverrideFn (line 9899) | function isOverrideFn(httpXHROverride) {
  function _prependTransports (line 9902) | function _prependTransports(theTransports, newTransports) {
  function _chkSampling (line 9938) | function _chkSampling(value) {
  function Sender (line 9952) | function Sender() {
  function _calcPerfDuration (line 10911) | function _calcPerfDuration(resourceEntry, start, end) {
  function _setPerfDuration (line 10920) | function _setPerfDuration(props, name, resourceEntry, start, end) {
  function _setPerfValue (line 10928) | function _setPerfValue(props, name, value) {
  function _populatePerfData (line 10938) | function _populatePerfData(ajaxData, dependency) {
  function XHRMonitoringState (line 11013) | function XHRMonitoringState() {
  function ajaxRecord (line 11024) | function ajaxRecord(traceId, spanId, logger, traceCtx) {
  function _supportsFetch (line 11166) | function _supportsFetch() {
  function _supportsAjaxMonitoring (line 11176) | function _supportsAjaxMonitoring(ajaxMonitorInstance, ajaxDataId) {
  function _getFailedAjaxDiagnosticsMessage (line 11244) | function _getFailedAjaxDiagnosticsMessage(xhr, ajaxDataId) {
  function _throwInternalCritical (line 11256) | function _throwInternalCritical(ajaxMonitorInstance, msgId, message, pro...
  function _throwInternalWarning (line 11259) | function _throwInternalWarning(ajaxMonitorInstance, msgId, message, prop...
  function _createErrorCallbackFunc (line 11262) | function _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, ...
  function _indexOf (line 11272) | function _indexOf(value, match) {
  function _addHandler (line 11278) | function _addHandler(container, id, theFunc) {
  function _processDependencyContainer (line 11295) | function _processDependencyContainer(core, container, details, message) {
  function _processDependencyListeners (line 11309) | function _processDependencyListeners(listeners, core, ajaxData, xhr, inp...
  function AjaxMonitor (line 11369) | function AjaxMonitor() {
  function Application (line 12198) | function Application() {
  function Device (line 12204) | function Device() {
  function Internal (line 12213) | function Internal(config, unloadHookContainer) {
  function Location (line 12225) | function Location() {
  function Session (line 12265) | function Session() {
  function _SessionManager (line 12270) | function _SessionManager(config, core, unloadHookContainer) {
  function TelemetryTrace (line 12394) | function TelemetryTrace(id, parentId, name, logger) {
  function _validateUserInput (line 12407) | function _validateUserInput(id) {
  function User (line 12416) | function User(config, core, unloadHookContainer) {
  function _removeEmpty (line 12516) | function _removeEmpty(target, name) {
  function _nullResult (line 12521) | function _nullResult() {
  function TelemetryContext (line 12525) | function TelemetryContext(core, defaultConfig, previousTraceCtx, unloadH...
  function PropertiesPlugin (line 12666) | function PropertiesPlugin() {
  function _chkDiagLevel (line 12846) | function _chkDiagLevel(value) {
  function AppInsightsSku (line 12850) | function AppInsightsSku(snippet) {
  function _findSdkSourceFile (line 13174) | function _findSdkSourceFile() {
  function ApplicationInsightsContainer (line 13221) | function ApplicationInsightsContainer() {
  function _logWarn (line 13235) | function _logWarn(aiName, message) {

FILE: AISKU/Tests/Manual/aisku-example-index.gbl.js
  function safeGet (line 36) | function safeGet(cb, defValue) {
  function _createIs (line 47) | function _createIs(theType) {
  function _createObjIs (line 52) | function _createObjIs(theName) {
  function objToString (line 58) | function objToString(value) {
  function isUndefined (line 61) | function isUndefined(value) {
  function isNullOrUndefined (line 64) | function isNullOrUndefined(value) {
  function isStrictNullOrUndefined (line 67) | function isStrictNullOrUndefined(value) {
  function isDefined (line 70) | function isDefined(arg) {
  function isObject (line 78) | function isObject(value) {
  function isPromiseLike (line 89) | function isPromiseLike(value) {
  function isTruthy (line 92) | function isTruthy(value) {
  function objHasOwnProperty (line 98) | function objHasOwnProperty(obj, prop) {
  function polyObjHasOwn (line 103) | function polyObjHasOwn(obj, prop) {
  function objForEachKey (line 107) | function objForEachKey(theObject, callbackfn, thisArg) {
  function _createKeyValueMap (line 119) | function _createKeyValueMap(values, keyType, valueType, completeFn) {
  function throwError (line 128) | function throwError(message) {
  function throwTypeError (line 131) | function throwTypeError(message) {
  function objKeys (line 139) | function objKeys(value) {
  function objDeepFreeze (line 145) | function objDeepFreeze(value) {
  function createEnum (line 158) | function createEnum(values) {
  function createEnumKeyMap (line 161) | function createEnumKeyMap(values) {
  function createSimpleMap (line 164) | function createSimpleMap(values) {
  function createTypeMap (line 172) | function createTypeMap(values) {
  function _getGlobalValue (line 196) | function _getGlobalValue() {
  function _getGlobalConfig (line 212) | function _getGlobalConfig() {
  function dumpObj (line 220) | function dumpObj(object, format) {
  function _unwrapProp (line 266) | function _unwrapProp(propName) {
  function polyStrSubstr (line 278) | function polyStrSubstr(value, start, length) {
  function strLeft (line 294) | function strLeft(value, count) {
  function _globalSymbolRegistry (line 299) | function _globalSymbolRegistry() {
  function polyNewSymbol (line 307) | function polyNewSymbol(description) {
  function polySymbolFor (line 315) | function polySymbolFor(key) {
  function polyGetKnownSymbol (line 324) | function polyGetKnownSymbol(name) {
  function _createProp (line 341) | function _createProp(value) {
  function objDefine (line 360) | function objDefine(target, key, propDesc) {
  function getLazy (line 369) | function getLazy(cb) {
  function safeGetLazy (line 394) | function safeGetLazy(cb, defValue) {
  function _getSymbolValue (line 453) | function _getSymbolValue(name) {
  function hasSymbol (line 458) | function hasSymbol() {
  function getSymbol (line 461) | function getSymbol() {
  function getKnownSymbol (line 468) | function getKnownSymbol(name, noPoly) {
  function newSymbol (line 473) | function newSymbol(description, noPoly) {
  function symbolFor (line 477) | function symbolFor(key) {
  function isIterator (line 482) | function isIterator(value) {
  function isIterable (line 485) | function isIterable(value) {
  function iterForOf (line 490) | function iterForOf(iter, callbackfn, thisArg) {
  function arrAppend (line 533) | function arrAppend(target, elms) {
  function arrForEach (line 550) | function arrForEach(theArray, callbackfn, thisArg) {
  function polyArrIncludes (line 571) | function polyArrIncludes(theArray, searchElement, fromIndex) {
  function polyObjCreate (line 581) | function polyObjCreate(obj) {
  function objSetPrototypeOf (line 595) | function objSetPrototypeOf(obj, proto) {
  function __ (line 610) | function __() {
  function createCustomError (line 631) | function createCustomError(name, constructCb, errorBase) {
  function throwUnsupported (line 656) | function throwUnsupported(message) {
  function utcNow (line 663) | function utcNow() {
  function polyUtcNow (line 666) | function polyUtcNow() {
  function _createTrimFn (line 670) | function _createTrimFn(exp) {
  function isPlainObject (line 688) | function isPlainObject(value) {
  function _getSetVisited (line 727) | function _getSetVisited(visitMap, source, newPath, cb) {
  function _deepCopy (line 742) | function _deepCopy(visitMap, value, ctx, key) {
  function _copyProps (line 796) | function _copyProps(visitMap, target, source, ctx) {
  function objCopyProps (line 804) | function objCopyProps(target, source, handler) {
  function objDeepCopy (line 812) | function objDeepCopy(source, handler) {
  function arrayDeepCopyHandler (line 819) | function arrayDeepCopyHandler(details) {
  function dateDeepCopyHandler (line 829) | function dateDeepCopyHandler(details) {
  function functionDeepCopyHandler (line 837) | function functionDeepCopyHandler(details) {
  function plainObjDeepCopyHandler (line 843) | function plainObjDeepCopyHandler(details) {
  function _doExtend (line 853) | function _doExtend(target, theArgs) {
  function deepExtend (line 859) | function deepExtend(target, obj1, obj2, obj3, obj4, obj5, obj6) {
  function getPerformance (line 866) | function getPerformance() {
  function polyStrEndsWith (line 872) | function polyStrEndsWith(value, searchString, length) {
  function _createTimerHandler (line 889) | function _createTimerHandler(startTimer, refreshFn, cancelFn) {
  function _createTimeoutWith (line 946) | function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
  function scheduleTimeout (line 970) | function scheduleTimeout(callback, timeout) {
  function createTimeout (line 973) | function createTimeout(callback, timeout) {
  function _isObjectOrArrayPrototype (line 1006) | function _isObjectOrArrayPrototype(target) {
  function _isObjectArrayOrFunctionPrototype (line 1009) | function _isObjectArrayOrFunctionPrototype(target) {
  function _getObjProto$1 (line 1012) | function _getObjProto$1(target) {
  function _forEachProp (line 1028) | function _forEachProp(target, func) {
  function _isDynamicCandidate (line 1046) | function _isDynamicCandidate(target, funcName, skipOwn) {
  function _throwTypeError (line 1049) | function _throwTypeError(message) {
  function _getInstanceFuncs (line 1052) | function _getInstanceFuncs(thisTarget) {
  function _hasVisited (line 1061) | function _hasVisited(values, value) {
  function _getBaseFuncs (line 1069) | function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
  function _getInstFunc (line 1099) | function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
  function _getProtoFunc (line 1133) | function _getProtoFunc(funcName, proto, currentDynProtoProxy) {
  function _populatePrototype (line 1143) | function _populatePrototype(proto, className, target, baseInstFuncs, set...
  function _checkPrototype (line 1169) | function _checkPrototype(classProto, thisTarget) {
  function _getObjName (line 1184) | function _getObjName(target, unknownValue) {
  function dynamicProto (line 1190) | function dynamicProto(theClass, target, delegateFunc, options) {
  function __extendsFn (line 1259) | function __extendsFn(d, b) {
  function __spreadArrayFn (line 1269) | function __spreadArrayFn(to, from) {
  function throwAggregationError (line 1338) | function throwAggregationError(message, sourceErrors) {
  function doAwaitResponse (line 1353) | function doAwaitResponse(value, cb) {
  function doAwait (line 1366) | function doAwait(value, resolveFn, rejectFn, finallyFn) {
  function doFinally (line 1381) | function doFinally(value, finallyFn) {
  function emitEvent (line 1411) | function emitEvent(target, evtName, populateEvent, useNewEvent) {
  function dumpFnObj (line 1446) | function dumpFnObj(value) {
  function _createPromise (line 1452) | function _createPromise(newPromise, processor, executor) {
  function _createAllPromise (line 1591) | function _createAllPromise(newPromise) {
  function timeoutItemProcessor (line 1630) | function timeoutItemProcessor(timeout) {
  function createAsyncPromise (line 1639) | function createAsyncPromise(executor, timeout) {
  function createNativePromise (line 1644) | function createNativePromise(executor, timeout) {
  function createPromise (line 1675) | function createPromise(executor, timeout) {
  function isNotNullOrUndefined (line 1705) | function isNotNullOrUndefined(value) {
  function normalizeJsName (line 1708) | function normalizeJsName(name) {
  function strContains (line 1721) | function strContains(value, search) {
  function toISOString (line 1727) | function toISOString(date) {
  function getExceptionName (line 1730) | function getExceptionName(object) {
  function setValue (line 1736) | function setValue(target, field, value, valChk, srcChk) {
  function getSetValue (line 1747) | function getSetValue(target, field, defValue) {
  function _createProxyFunction (line 1761) | function _createProxyFunction(source, funcName) {
  function proxyAssign (line 1780) | function proxyAssign(target, source, chkSet) {
  function proxyFunctionAs (line 1811) | function proxyFunctionAs(target, name, source, theFunc, overwriteTarget) {
  function proxyFunctions (line 1818) | function proxyFunctions(target, source, functionsToProxy, overwriteTarge...
  function createClassFromInterface (line 1828) | function createClassFromInterface(defaults) {
  function optimizeObject (line 1841) | function optimizeObject(theObject) {
  function objExtend (line 1847) | function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
  function _hasProperty (line 1907) | function _hasProperty(theClass, property) {
  function getLocation (line 1932) | function getLocation(checkForMock) {
  function getConsole (line 1944) | function getConsole() {
  function hasJSON (line 1950) | function hasJSON() {
  function getJSON (line 1953) | function getJSON() {
  function getCrypto (line 1959) | function getCrypto() {
  function getMsCrypto (line 1962) | function getMsCrypto() {
  function isReactNative (line 1965) | function isReactNative() {
  function isIE (line 1972) | function isIE() {
  function getIEVersion (line 1981) | function getIEVersion(userAgentStr) {
  function isBeaconsSupported (line 2000) | function isBeaconsSupported(useCached) {
  function isFetchSupported (line 2006) | function isFetchSupported(withKeepAlive) {
  function useXDomainRequest (line 2019) | function useXDomainRequest() {
  function isXhrSupported (line 2028) | function isXhrSupported() {
  function _mwcSeed (line 2046) | function _mwcSeed(seedValue) {
  function _autoSeedMwc (line 2054) | function _autoSeedMwc() {
  function random32 (line 2062) | function random32(signed) {
  function mwcRandom32 (line 2082) | function mwcRandom32(signed) {
  function newId (line 2091) | function newId(maxLength) {
  function _canAcceptData (line 2112) | function _canAcceptData(target) {
  function _getCache (line 2115) | function _getCache(data, target) {
  function createUniqueNamespace (line 2132) | function createUniqueNamespace(name, includeVersion) {
  function createElmNodeData (line 2136) | function createElmNodeData(name) {
  function _isConfigDefaults (line 2166) | function _isConfigDefaults(value) {
  function _getDefault (line 2169) | function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
  function _resolveDefaultValue (line 2200) | function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
  function _applyDefaultValue (line 2229) | function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValu...
  function _cfgDeepCopy (line 2298) | function _cfgDeepCopy(source) {
  function getDynamicConfigHandler (line 2317) | function getDynamicConfigHandler(value) {
  function blockDynamicConversion (line 2326) | function blockDynamicConversion(value) {
  function _canMakeDynamic (line 2336) | function _canMakeDynamic(getFunc, state, value) {
  function throwInvalidAccess (line 2346) | function throwInvalidAccess(message) {
  function _patchArray (line 2360) | function _patchArray(state, target, name) {
  function _getOwnPropGetter (line 2376) | function _getOwnPropGetter(target, name) {
  function _createDynamicProperty (line 2380) | function _createDynamicProperty(state, theConfig, name, value) {
  function _setDynamicProperty (line 2469) | function _setDynamicProperty(state, target, name, value) {
  function _setDynamicPropertyState (line 2482) | function _setDynamicPropertyState(state, target, name, flags) {
  function _makeDynamicObject (line 2518) | function _makeDynamicObject(state, target, name, desc) {
  function _createState (line 2540) | function _createState(cfgHandler) {
  function _createAndUseHandler (line 2659) | function _createAndUseHandler(state, configHandler) {
  function _createDynamicHandler (line 2671) | function _createDynamicHandler(logger, target, inPlace) {
  function _logInvalidAccess (line 2753) | function _logInvalidAccess(logger, message) {
  function createDynamicConfig (line 2762) | function createDynamicConfig(config, defaultConfig, logger, inPlace) {
  function onConfigChange (line 2769) | function onConfigChange(config, configHandler, logger) {
  function runTargetUnload (line 2778) | function runTargetUnload(target, isAsync) {
  function doUnloadAll (line 2783) | function doUnloadAll(targets, isAsync, done) {
  function _stringToBoolOrDefault (line 2803) | function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
  function cfgDfMerge (line 2812) | function cfgDfMerge(defaultValue) {
  function cfgDfSet (line 2818) | function cfgDfSet(setter, defaultValue) {
  function cfgDfValidate (line 2824) | function cfgDfValidate(validator, defaultValue, fallBackName) {
  function cfgDfBoolean (line 2831) | function cfgDfBoolean(defaultValue, fallBackName) {
  function cfgDfString (line 2838) | function cfgDfString(defaultValue) {
  function _listenerProxyFunc (line 2848) | function _listenerProxyFunc(name, config) {
  function _getExtensionNamespace (line 2860) | function _getExtensionNamespace() {
  function getDebugExt (line 2867) | function getDebugExt(config) {
  function getDebugListener (line 2874) | function getDebugListener(config) {
  function _sanitizeDiagnosticText (line 2901) | function _sanitizeDiagnosticText(text) {
  function _logToConsole (line 2907) | function _logToConsole(func, message) {
  function _InternalLogMessage (line 2920) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function safeGetLogger (line 2938) | function safeGetLogger(core, config) {
  function DiagnosticLogger (line 2942) | function DiagnosticLogger(config) {
  function _getLogger (line 3058) | function _getLogger(logger) {
  function _throwInternal (line 3061) | function _throwInternal(logger, severity, msgId, msg, properties, isUser...
  function _warnToConsole (line 3065) | function _warnToConsole(logger, message) {
  function _logInternalMessage (line 3068) | function _logInternalMessage(logger, severity, message) {
  function _getDoc (line 3099) | function _getDoc() {
  function _gblCookieMgr (line 3102) | function _gblCookieMgr(config, logger) {
  function _isMgrEnabled (line 3110) | function _isMgrEnabled(cookieMgr) {
  function _isIgnoredCookie (line 3116) | function _isIgnoredCookie(cookieMgrCfg, name) {
  function _isBlockedCookie (line 3122) | function _isBlockedCookie(cookieMgrCfg, name) {
  function _isCfgEnabled (line 3130) | function _isCfgEnabled(rootConfig, cookieMgrConfig) {
  function safeGetCookieMgr (line 3144) | function safeGetCookieMgr(core, config) {
  function createCookieMgr (line 3163) | function createCookieMgr(rootConfig, logger) {
  function areCookiesSupported (line 3278) | function areCookiesSupported(logger) {
  function _extractParts (line 3292) | function _extractParts(theValue) {
  function _formatDate (line 3311) | function _formatDate(theDate, func) {
  function _formatCookieValue (line 3317) | function _formatCookieValue(value, values) {
  function _getCookieValue (line 3324) | function _getCookieValue(name) {
  function _setCookieValue (line 3337) | function _setCookieValue(name, cookieValue) {
  function uaDisallowsSameSiteNone (line 3343) | function uaDisallowsSameSiteNone(userAgent) {
  function _runListeners (line 3371) | function _runListeners(listeners, name, isAsync, callback) {
  function NotificationManager (line 3388) | function NotificationManager(config) {
  function PerfEvent (line 3479) | function PerfEvent(name, payloadDetails, isAsync) {
  function PerfManager (line 3544) | function PerfManager(manager) {
  function doPerf (line 3573) | function doPerf(mgrSource, getSource, func, details, isAsync) {
  function getGblPerfMgr (line 3615) | function getGblPerfMgr() {
  function generateW3CId (line 3619) | function generateW3CId() {
  function _isValid (line 3642) | function _isValid(value, len, invalidValue) {
  function _formatValue (line 3648) | function _formatValue(value, len, defValue) {
  function _formatFlags (line 3654) | function _formatFlags(value) {
  function createTraceParent (line 3664) | function createTraceParent(traceId, spanId, flags, version) {
  function isValidTraceId (line 3673) | function isValidTraceId(value) {
  function isValidSpanId (line 3676) | function isValidSpanId(value) {
  function formatTraceParent (line 3679) | function formatTraceParent(value) {
  function _getPluginState (line 3695) | function _getPluginState(plugin) {
  function initializePlugins (line 3698) | function initializePlugins(processContext, extensions) {
  function sortPlugins (line 3732) | function sortPlugins(plugins) {
  function createDistributedTraceContext (line 3750) | function createDistributedTraceContext(parentCtx) {
  function _getNextProxyStart (line 3792) | function _getNextProxyStart(proxy, core, startAt) {
  function _createInternalContext (line 3801) | function _createInternalContext(telemetryChain, dynamicHandler, core, st...
  function createProcessTelemetryContext (line 3929) | function createProcessTelemetryContext(telemetryChain, cfg, core, startA...
  function createProcessTelemetryUnloadContext (line 3951) | function createProcessTelemetryUnloadContext(telemetryChain, core, start...
  function createProcessTelemetryUpdateContext (line 3971) | function createProcessTelemetryUpdateContext(telemetryChain, core, start...
  function createTelemetryProxyChain (line 3993) | function createTelemetryProxyChain(plugins, config, core, startAt) {
  function createTelemetryPluginProxy (line 4019) | function createTelemetryPluginProxy(plugin, config, core) {
  function createUnloadHandlerContainer (line 4148) | function createUnloadHandlerContainer() {
  function createUnloadHookContainer (line 4172) | function createUnloadHookContainer() {
  function BaseTelemetryPlugin (line 4203) | function BaseTelemetryPlugin() {
  function _addInitializer (line 4338) | function _addInitializer(_initializers, id, telemetryInitializer) {
  function _runInitializers (line 4356) | function _runInitializers(_initializers, item, logger) {
  function TelemetryInitializerPlugin (line 4377) | function TelemetryInitializerPlugin() {
  function _createPerfManager (line 4422) | function _createPerfManager(core, notificationMgr) {
  function _validateExtensions (line 4425) | function _validateExtensions(logger, channelPriority, allExtensions) {
  function _isPluginPresent (line 4456) | function _isPluginPresent(thePlugin, plugins) {
  function _deepMergeConfig (line 4466) | function _deepMergeConfig(details, target, newValues, merge) {
  function _findWatcher (line 4483) | function _findWatcher(listeners, newWatcher) {
  function _addDelayedCfgListener (line 4495) | function _addDelayedCfgListener(listeners, newWatcher) {
  function _registerDelayedCfgListener (line 4511) | function _registerDelayedCfgListener(config, listeners, logger) {
  function AppInsightsCore (line 4521) | function AppInsightsCore() {
  function _normalizeNamespace (line 5234) | function _normalizeNamespace(name) {
  function _getEvtNamespace (line 5240) | function _getEvtNamespace(eventName, evtNamespace) {
  function _getRegisteredEvents (line 5272) | function _getRegisteredEvents(target, evtName, addDefault) {
  function _doDetach (line 5281) | function _doDetach(obj, evtName, handlerRef, useCapture) {
  function _doAttach (line 5291) | function _doAttach(obj, evtName, handlerRef, useCapture) {
  function _doUnregister (line 5305) | function _doUnregister(target, events, evtName, unRegFn) {
  function _unregisterEvents (line 5319) | function _unregisterEvents(target, evtName, unRegFn) {
  function mergeEvtNamespace (line 5333) | function mergeEvtNamespace(theNamespace, namespaces) {
  function eventOn (line 5349) | function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
  function eventOff (line 5373) | function eventOff(target, eventName, handlerRef, evtNamespace, useCaptur...
  function addEventHandler (line 5394) | function addEventHandler(eventName, callback, evtNamespace) {
  function removeEventHandler (line 5407) | function removeEventHandler(eventName, callback, evtNamespace) {
  function _addEventListeners (line 5418) | function _addEventListeners(events, listener, excludeEvents, evtNamespac...
  function addEventListeners (line 5431) | function addEventListeners(events, listener, excludeEvents, evtNamespace) {
  function removeEventListeners (line 5441) | function removeEventListeners(events, listener, evtNamespace) {
  function addPageUnloadEventListener (line 5450) | function addPageUnloadEventListener(listener, excludeEvents, evtNamespac...
  function removePageUnloadEventListener (line 5453) | function removePageUnloadEventListener(listener, evtNamespace) {
  function addPageHideEventListener (line 5456) | function addPageHideEventListener(listener, excludeEvents, evtNamespace) {
  function removePageHideEventListener (line 5473) | function removePageHideEventListener(listener, evtNamespace) {
  function _arrLoop (line 5483) | function _arrLoop(arr, fn) {
  function _doCallbacks (line 5492) | function _doCallbacks(hooks, callDetails, cbArgs, hookCtx, type) {
  function _createFunctionHook (line 5524) | function _createFunctionHook(aiHook) {
  function _getOwner (line 5566) | function _getOwner(target, name, checkPrototype, checkParentProto) {
  function InstrumentProto (line 5578) | function InstrumentProto(target, funcName, callbacks) {
  function _createInstrumentHook (line 5584) | function _createInstrumentHook(owner, funcName, fn, callbacks) {
  function InstrumentFunc (line 5614) | function InstrumentFunc(target, funcName, callbacks, checkPrototype, che...
  function InstrumentEvent (line 5627) | function InstrumentEvent(target, evtName, callbacks, checkPrototype, che...
  function dataSanitizeKeyAndAddUniqueness (line 5689) | function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
  function dataSanitizeKey (line 5703) | function dataSanitizeKey(logger, name) {
  function dataSanitizeString (line 5714) | function dataSanitizeString(logger, value, maxLength) {
  function dataSanitizeUrl (line 5727) | function dataSanitizeUrl(logger, url) {
  function dataSanitizeMessage (line 5730) | function dataSanitizeMessage(logger, message) {
  function dataSanitizeException (line 5740) | function dataSanitizeException(logger, exception) {
  function dataSanitizeProperties (line 5751) | function dataSanitizeProperties(logger, properties) {
  function dataSanitizeMeasurements (line 5771) | function dataSanitizeMeasurements(logger, measurements) {
  function dataSanitizeId (line 5782) | function dataSanitizeId(logger, id) {
  function dataSanitizeInput (line 5785) | function dataSanitizeInput(logger, input, maxLength, _msgId) {
  function dsPadNumber (line 5796) | function dsPadNumber(num) {
  function urlParseUrl (line 5804) | function urlParseUrl(url) {
  function urlGetAbsoluteUrl (line 5822) | function urlGetAbsoluteUrl(url) {
  function urlGetCompleteUrl (line 5830) | function urlGetCompleteUrl(method, absoluteUrl) {
  function urlParseHost (line 5836) | function urlParseHost(url, inclPort) {
  function urlParseFullHost (line 5846) | function urlParseFullHost(url, inclPort) {
  function isInternalApplicationInsightsEndpoint (line 5874) | function isInternalApplicationInsightsEndpoint(endpointUrl) {
  function correlationIdCanIncludeCorrelationHeader (line 5877) | function correlationIdCanIncludeCorrelationHeader(config, requestUrl, cu...
  function correlationIdGetCorrelationContext (line 5918) | function correlationIdGetCorrelationContext(responseHeader) {
  function correlationIdGetCorrelationContextValue (line 5926) | function correlationIdGetCorrelationContextValue(responseHeader, key) {
  function AjaxHelperParseDependencyPath (line 5937) | function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, comm...
  function dateTimeUtilsNow (line 5966) | function dateTimeUtilsNow() {
  function dateTimeUtilsDuration (line 5976) | function dateTimeUtilsDuration(start, end) {
  function createDistributedTraceContextFromTrace (line 5983) | function createDistributedTraceContextFromTrace(telemetryTrace, parentCt...
  function _getLocalStorageObject (line 6034) | function _getLocalStorageObject() {
  function _getVerifiedStorageObject (line 6040) | function _getVerifiedStorageObject(storageType) {
  function _getSessionStorageObject (line 6059) | function _getSessionStorageObject() {
  function utlDisableStorage (line 6065) | function utlDisableStorage() {
  function utlSetStoragePrefix (line 6069) | function utlSetStoragePrefix(storagePrefix) {
  function utlEnableStorage (line 6072) | function utlEnableStorage() {
  function utlCanUseLocalStorage (line 6076) | function utlCanUseLocalStorage(reset) {
  function utlGetLocalStorage (line 6082) | function utlGetLocalStorage(logger, name) {
  function utlSetLocalStorage (line 6095) | function utlSetLocalStorage(logger, name, data) {
  function utlRemoveStorage (line 6109) | function utlRemoveStorage(logger, name) {
  function utlCanUseSessionStorage (line 6123) | function utlCanUseSessionStorage(reset) {
  function utlGetSessionStorage (line 6129) | function utlGetSessionStorage(logger, name) {
  function utlSetSessionStorage (line 6142) | function utlSetSessionStorage(logger, name, data) {
  function utlRemoveSessionStorage (line 6156) | function utlRemoveSessionStorage(logger, name) {
  function parseConnectionString (line 6173) | function parseConnectionString(connectionString) {
  function Envelope (line 6198) | function Envelope(logger, data, name) {
  function Event (line 6222) | function Event(logger, name, properties, measurements) {
  function _stringify (line 6247) | function _stringify(value, convertToString) {
  function _formatMessage (line 6267) | function _formatMessage(theEvent, errorType) {
  function _isExceptionDetailsInternal (line 6285) | function _isExceptionDetailsInternal(value) {
  function _isExceptionInternal (line 6295) | function _isExceptionInternal(value) {
  function _isStackDetails (line 6305) | function _isStackDetails(details) {
  function _convertStackObj (line 6308) | function _convertStackObj(errorStack) {
  function _getOperaStack (line 6324) | function _getOperaStack(errorMessage) {
  function _getStackFromErrorObj (line 6340) | function _getStackFromErrorObj(errorObj) {
  function _formatStackTrace (line 6390) | function _formatStackTrace(stackDetails) {
  function _parseStack (line 6404) | function _parseStack(stack) {
  function _getErrorType (line 6444) | function _getErrorType(errorType) {
  function _formatErrorCode (line 6460) | function _formatErrorCode(errorObj) {
  function Exception (line 6485) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 6585) | function _ExceptionDetails(logger, exception, properties) {
  function _StackFrame (line 6653) | function _StackFrame(sourceFrame, level) {
  function DataPoint (line 6711) | function DataPoint() {
  function Metric (line 6727) | function Metric(logger, name, value, count, min, max, stdDev, properties...
  function msToTimeSpan (line 6752) | function msToTimeSpan(totalms) {
  function isCrossOriginError (line 6768) | function isCrossOriginError(message, url, lineNumber, columnNumber, erro...
  function PageView (line 6773) | function PageView(logger, name, url, durationMs, properties, measurement...
  function RemoteDependencyData (line 6800) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function Trace (line 6848) | function Trace(logger, message, severityLevel, properties, measurements) {
  function PageViewPerformance (line 6871) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function Data (line 6906) | function Data(baseType, data) {
  function _aiNameFunc (line 6917) | function _aiNameFunc(baseName) {
  function ContextTagKeys (line 6933) | function ContextTagKeys() {
  function createTelemetryItem (line 6997) | function createTelemetryItem(item, baseType, envelopeName, logger, custo...
  function createDomEvent (line 7041) | function createDomEvent(eventName) {
  function PageViewManager (line 7107) | function PageViewManager(appInsights, overridePageViewDuration, core, pa...
  function _isPerformanceTimingSupported (line 7256) | function _isPerformanceTimingSupported() {
  function _isPerformanceNavigationTimingSupported (line 7260) | function _isPerformanceNavigationTimingSupported() {
  function _isPerformanceTimingDataReady (line 7264) | function _isPerformanceTimingDataReady() {
  function _getPerformanceTiming (line 7277) | function _getPerformanceTiming() {
  function _getPerformanceNavigationTiming (line 7283) | function _getPerformanceNavigationTiming() {
  function _shouldCollectDuration (line 7289) | function _shouldCollectDuration() {
  function PageViewPerformanceManager (line 7315) | function PageViewPerformanceManager(core) {
  function PageVisitTimeManager (line 7373) | function PageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {
  function PageVisitData (line 7432) | function PageVisitData(pageName, pageUrl) {
  function Timing (line 7441) | function Timing(logger, name) {
  function _dispatchEvent (line 7469) | function _dispatchEvent(target, evnt) {
  function _getReason (line 7474) | function _getReason(error) {
  function _chkConfigMilliseconds (line 7503) | function _chkConfigMilliseconds(value, defValue) {
  function _chkSampling$1 (line 7510) | function _chkSampling$1(value) {
  function _updateStorageUsage (line 7513) | function _updateStorageUsage(extConfig) {
  function AnalyticsPlugin (line 7525) | function AnalyticsPlugin() {
  function _setValueIf (line 8071) | function _setValueIf(target, field, value) {
  function _extractPartAExtensions (line 8074) | function _extractPartAExtensions(logger, item, env) {
  function _extractPropsAndMeasurements (line 8135) | function _extractPropsAndMeasurements(data, properties, measurements) {
  function _convertPropsUndefinedToCustomDefinedValue (line 8150) | function _convertPropsUndefinedToCustomDefinedValue(properties, customUn...
  function _createEnvelope (line 8157) | function _createEnvelope(logger, envelopeType, telemetryItem, data) {
  function EnvelopeCreatorInit (line 8170) | function EnvelopeCreatorInit(logger, telemetryItem) {
  function DependencyEnvelopeCreator (line 8178) | function DependencyEnvelopeCreator(logger, telemetryItem, customUndefine...
  function EventEnvelopeCreator (line 8196) | function EventEnvelopeCreator(logger, telemetryItem, customUndefinedValu...
  function ExceptionEnvelopeCreator (line 8221) | function ExceptionEnvelopeCreator(logger, telemetryItem, customUndefined...
  function MetricEnvelopeCreator (line 8234) | function MetricEnvelopeCreator(logger, telemetryItem, customUndefinedVal...
  function PageViewEnvelopeCreator (line 8247) | function PageViewEnvelopeCreator(logger, telemetryItem, customUndefinedV...
  function PageViewPerformanceEnvelopeCreator (line 8295) | function PageViewPerformanceEnvelopeCreator(logger, telemetryItem, custo...
  function TraceEnvelopeCreator (line 8310) | function TraceEnvelopeCreator(logger, telemetryItem, customUndefinedValu...
  function _disableEvents (line 8325) | function _disableEvents(target, evtNamespace) {
  function createOfflineListener (line 8328) | function createOfflineListener(parentEvtNamespace) {
  function BaseSendBuffer (line 8403) | function BaseSendBuffer(logger, config) {
  function ArraySendBuffer (line 8470) | function ArraySendBuffer(logger, config) {
  function SessionStorageSendBuffer (line 8486) | function SessionStorageSendBuffer(logger, config) {
  function Serializer (line 8601) | function Serializer(logger) {
  function HashCodeScoreGenerator (line 8748) | function HashCodeScoreGenerator() {
  function SamplingScoreGenerator (line 8773) | function SamplingScoreGenerator() {
  function Sample (line 8801) | function Sample(sampleRate, logger) {
  function _getResponseText (line 8829) | function _getResponseText(xhr) {
  function _chkSampling (line 8858) | function _chkSampling(value) {
  function Sender (line 8872) | function Sender() {
  function _calcPerfDuration (line 9717) | function _calcPerfDuration(resourceEntry, start, end) {
  function _setPerfDuration (line 9726) | function _setPerfDuration(props, name, resourceEntry, start, end) {
  function _setPerfValue (line 9734) | function _setPerfValue(props, name, value) {
  function _populatePerfData (line 9744) | function _populatePerfData(ajaxData, dependency) {
  function XHRMonitoringState (line 9819) | function XHRMonitoringState() {
  function ajaxRecord (line 9830) | function ajaxRecord(traceId, spanId, logger, traceCtx) {
  function _supportsFetch (line 9972) | function _supportsFetch() {
  function _supportsAjaxMonitoring (line 9982) | function _supportsAjaxMonitoring(ajaxMonitorInstance) {
  function _getFailedAjaxDiagnosticsMessage (line 10012) | function _getFailedAjaxDiagnosticsMessage(xhr) {
  function _throwInternalCritical (line 10023) | function _throwInternalCritical(ajaxMonitorInstance, msgId, message, pro...
  function _throwInternalWarning (line 10026) | function _throwInternalWarning(ajaxMonitorInstance, msgId, message, prop...
  function _createErrorCallbackFunc (line 10029) | function _createErrorCallbackFunc(ajaxMonitorInstance, internalMessage, ...
  function _indexOf (line 10039) | function _indexOf(value, match) {
  function _addHandler (line 10045) | function _addHandler(container, id, theFunc) {
  function _processDependencyContainer (line 10062) | function _processDependencyContainer(core, container, details, message) {
  function _processDependencyListeners (line 10076) | function _processDependencyListeners(listeners, core, ajaxData, xhr, inp...
  function AjaxMonitor (line 10136) | function AjaxMonitor() {
  function Application (line 10927) | function Application() {
  function Device (line 10933) | function Device() {
  function Internal (line 10942) | function Internal(config, unloadHookContainer) {
  function Location (line 10954) | function Location() {
  function Session (line 10994) | function Session() {
  function _SessionManager (line 10999) | function _SessionManager(config, core, unloadHookContainer) {
  function TelemetryTrace (line 11123) | function TelemetryTrace(id, parentId, name, logger) {
  function _validateUserInput (line 11136) | function _validateUserInput(id) {
  function User (line 11145) | function User(config, core, unloadHookContainer) {
  function _removeEmpty (line 11245) | function _removeEmpty(target, name) {
  function _nullResult (line 11250) | function _nullResult() {
  function TelemetryContext (line 11254) | function TelemetryContext(core, defaultConfig, previousTraceCtx, unloadH...
  function PropertiesPlugin (line 11395) | function PropertiesPlugin() {
  function _chkDiagLevel (line 11543) | function _chkDiagLevel(value) {
  function AppInsightsSku (line 11547) | function AppInsightsSku(snippet) {
  function _findSdkSourceFile (line 11841) | function _findSdkSourceFile() {
  function randomBoolean (line 11899) | function randomBoolean() {
  function clearEle (line 11905) | function clearEle(id) {
  function clearDetailsList (line 11911) | function clearDetailsList() {
  function createSubContainer (line 11914) | function createSubContainer(id, className) {
  function createButton (line 11920) | function createButton(buttontextContent, buttobuttononclickFn, id) {
  function generateNewConfig (line 11929) | function generateNewConfig() {
  function createDetailList (line 11949) | function createDetailList(propsToWatch, details, id, title) {
  function createContainers (line 11984) | function createContainers() {
  function triggerException (line 11996) | function triggerException() {
  function initApplicationInsights (line 12001) | function initApplicationInsights(config) {
  function trackPageView (line 12014) | function trackPageView(pageView) {
  function trackEvent (line 12021) | function trackEvent(event, customProperties) {
  function startTrackEvent (line 12028) | function startTrackEvent(name) {
  function stopTrackEvent (line 12035) | function stopTrackEvent(name, properties, measurements) {
  function trackTrace (line 12042) | function trackTrace(trace) {
  function trackMetric (line 12049) | function trackMetric(metric, customProperties) {
  function addTelemetryInitializer (line 12056) | function addTelemetryInitializer(telemetryInitializer) {
  function getCookieMgr (line 12063) | function getCookieMgr() {
  function getConfig (line 12069) | function getConfig() {
  function changeConfig (line 12078) | function changeConfig() {
  function createPageviewTracks (line 12135) | function createPageviewTracks() {
  function createEventTracks (line 12138) | function createEventTracks() {
  function startEvent (line 12141) | function startEvent() {
  function stopEvent (line 12144) | function stopEvent() {
  function createTraceTracks (line 12147) | function createTraceTracks() {
  function createMetricTracks (line 12150) | function createMetricTracks() {
  function getCookieMgrdetails (line 12153) | function getCookieMgrdetails() {
  function addTelemetryListener (line 12164) | function addTelemetryListener() {
  function createConfigDetails (line 12171) | function createConfigDetails() {
  function changeConfigOnClick (line 12176) | function changeConfigOnClick() {
  function createButtonSection (line 12180) | function createButtonSection() {
  function analyticsSample (line 12197) | function analyticsSample() {

FILE: AISKU/Tests/Perf/src/AISKUPerf.Tests.ts
  function isNullOrUndefined (line 6) | function isNullOrUndefined(value: any): boolean {
  function createTrackEvent (line 10) | function createTrackEvent(eventName: string, type: string = "EventData",...
  function sendEventWithCollectorUrl (line 20) | function sendEventWithCollectorUrl(event: any) {
  function pushPerfEvents (line 32) | function pushPerfEvents(event: any, AISKUPerfTest: any): void {
  function flush (line 41) | function flush(AISKUPerfTest: any): void {
  constant TENANT_KEY (line 53) | const TENANT_KEY = "2252db2e5e344635a36c5f1c04b3902c-eaced1c8-a046-4e8d-...
  function createPerfEvent (line 54) | function createPerfEvent(AISKUInitPerf: any, name: string, value: number...
  function parseBatchSendEvent (line 79) | function parseBatchSendEvent(perfEvent: any, AISKUInitPerf: any, memoryU...
  function parseTrackEvent (line 90) | function parseTrackEvent(perfEvent: any, AISKUInitPerf: any): void {
  function parseAppInsightsPerfEvent (line 110) | function parseAppInsightsPerfEvent(perfEvent: any, AISKUInitPerf: any, m...
  function addSnippetLoadingTimeEvent (line 122) | function addSnippetLoadingTimeEvent(AISKUPerfTest: any, endtime: number)...
  class AISKUPerf (line 128) | class AISKUPerf extends AITestClass {
    method testInitialize (line 138) | public testInitialize() {
    method testCleanup (line 155) | public testCleanup() {
    method registerTests (line 160) | public registerTests() {
    method constructor (line 164) | constructor() {
    method addPerfTest (line 168) | public addPerfTest(): void {
    method _loadScriptOnInit (line 206) | protected _loadScriptOnInit(theModule: any): void {
    method _loadSnippet (line 247) | protected _loadSnippet():void {
    method addPerfEvents (line 275) | public addPerfEvents() {
    method getScriptSrc (line 296) | public getScriptSrc(): string {
    method _addMemoryPerfEvent (line 306) | private _addMemoryPerfEvent(initialMemoryUsage: number, metric?: strin...
    method _trackSingleEvent (line 318) | protected _trackSingleEvent() {
    method _trackBatchEvents (line 342) | protected _trackBatchEvents(number?: number) {

FILE: AISKU/Tests/Perf/src/AISKUPerf.ts
  class AppInsightsInitPerfTestClass (line 1) | class AppInsightsInitPerfTestClass {
    method constructor (line 16) | constructor(ver?: string) {
    method _getQueryParameterVersion (line 32) | protected _getQueryParameterVersion(defaultVer: string): string {

FILE: AISKU/Tests/Perf/src/aiskuperftests.ts
  function runTests (line 3) | function runTests() {

FILE: AISKU/Tests/Unit/src/AISKUSize.Tests.ts
  constant PACKAGE_JSON (line 9) | const PACKAGE_JSON = "../package.json";
  function removeTrailingComma (line 11) | function removeTrailingComma(text) {
  function _loadPackageJson (line 15) | function _loadPackageJson(cb:(isNightly: boolean, packageJson: any) => I...
  function _checkSize (line 48) | function _checkSize(checkType: string, maxSize: number, size: number, is...
  class AISKUSizeCheck (line 56) | class AISKUSizeCheck extends AITestClass {
    method testInitialize (line 66) | public testInitialize() {
    method testFinishedCleanup (line 70) | public testFinishedCleanup(): void {
    method testCleanup (line 87) | public testCleanup() {
    method registerTests (line 92) | public registerTests() {
    method constructor (line 97) | constructor() {
    method addRawFileSizeCheck (line 101) | private addRawFileSizeCheck(): void {
    method addProdFileSizeCheck (line 105) | private addProdFileSizeCheck(): void {
    method _checkFileSize (line 109) | private _checkFileSize(isProd: boolean): void {

FILE: AISKU/Tests/Unit/src/CdnPackaging.tests.ts
  type CdnFormat (line 11) | const enum CdnFormat {
  class CdnPackagingChecks (line 17) | class CdnPackagingChecks extends AITestClass {
    method testInitialize (line 21) | public testInitialize() {
    method testFinishedCleanup (line 24) | public testFinishedCleanup(): void {
    method testCleanup (line 41) | public testCleanup() {
    method registerTests (line 44) | public registerTests() {
    method constructor (line 49) | constructor() {
    method checkFullPackaging (line 53) | private checkFullPackaging(): void {
    method addMinifiedPackaging (line 59) | private addMinifiedPackaging(): void {
    method _validateExpectedExports (line 65) | private _validateExpectedExports(theExports: any) {
    method _validateExportsAsModule (line 124) | private _validateExportsAsModule(text: string, format: CdnFormat) {
    method _validateGlobalExports (line 199) | private _validateGlobalExports(text: string, format: CdnFormat) {
    method _validateExportsAsDefine (line 279) | private _validateExportsAsDefine(text: string, format: CdnFormat) {
    method _validateExportsAsAmdDefine (line 363) | private _validateExportsAsAmdDefine(text: string, format: CdnFormat) {
    method _checkPackaging (line 468) | private _checkPackaging(cdnPackage: string, format: CdnFormat): void {

FILE: AISKU/Tests/Unit/src/CdnThrottle.tests.ts
  class CdnThrottle (line 85) | class CdnThrottle extends AITestClass {
    method constructor (line 96) | constructor() {
    method _getTestConfig (line 100) | public _getTestConfig() {
    method testInitialize (line 112) | public testInitialize() {
    method testFinishedCleanup (line 161) | public testFinishedCleanup(): void {
    method registerTests (line 172) | public registerTests() {
  function hookFetch (line 462) | function hookFetch<T>(executor: (resolve: (value?: T | PromiseLike<T>) =...

FILE: AISKU/Tests/Unit/src/GlobalTestHooks.Test.ts
  class GlobalTestHooks (line 5) | class GlobalTestHooks {
    method registerTests (line 7) | public registerTests() {

FILE: AISKU/Tests/Unit/src/IAnalyticsConfig.Tests.ts
  class IAnalyticsConfigTests (line 9) | class IAnalyticsConfigTests extends AITestClass {
    method testInitialize (line 11) | public testInitialize() {
    method testCleanup (line 15) | public testCleanup() {
    method registerTests (line 21) | public registerTests() {

FILE: AISKU/Tests/Unit/src/NonRecordingSpan.Tests.ts
  class NonRecordingSpanTests (line 14) | class NonRecordingSpanTests extends AITestClass {
    method constructor (line 21) | constructor(testName?: string) {
    method testInitialize (line 25) | public testInitialize() {
    method testFinishedCleanup (line 54) | public testFinishedCleanup() {
    method registerTests (line 60) | public registerTests() {
    method addBasicNonRecordingTests (line 71) | private addBasicNonRecordingTests(): void {
    method addAttributeOperationTests (line 134) | private addAttributeOperationTests(): void {
    method addStatusAndNameTests (line 237) | private addStatusAndNameTests(): void {
    method addSpanKindTests (line 316) | private addSpanKindTests(): void {
    method addHierarchyTests (line 394) | private addHierarchyTests(): void {
    method addTelemetryGenerationTests (line 493) | private addTelemetryGenerationTests(): void {
    method addPerformanceTests (line 584) | private addPerformanceTests(): void {
    method addEdgeCaseTests (line 631) | private addEdgeCaseTests(): void {

FILE: AISKU/Tests/Unit/src/OTelInit.Tests.ts
  class OTelInitTests (line 16) | class OTelInitTests extends AITestClass {
    method constructor (line 19) | constructor(testName?: string) {
    method testInitialize (line 23) | public testInitialize() {
    method testFinishedCleanup (line 58) | public testFinishedCleanup() {
    method registerTests (line 65) | public registerTests() {

FILE: AISKU/Tests/Unit/src/SnippetInitialization.Tests.ts
  function getSnippetConfig (line 55) | function getSnippetConfig(sessionPrefix: string, addSampling: boolean = ...
  function getSnippetConfigConnectionString (line 79) | function getSnippetConfigConnectionString(sessionPrefix: string) {
  function getSnippetConfigWrongConnectionString (line 102) | function getSnippetConfigWrongConnectionString(sessionPrefix: string) {
  function getSnippetConfigNotSetConnectionString (line 125) | function getSnippetConfigNotSetConnectionString(sessionPrefix: string) {
  class SnippetInitializationTests (line 148) | class SnippetInitializationTests extends AITestClass {
    method constructor (line 162) | constructor(emulateIe: boolean) {
    method testInitialize (line 172) | public testInitialize() {
    method testCleanup (line 188) | public testCleanup() {
    method registerTests (line 195) | public registerTests() {
    method addAnalyticsApiTests (line 426) | public addAnalyticsApiTests(snippetName: string, snippetCreator: (conf...
    method addAsyncTests (line 443) | public addAsyncTests(snippetName: string, snippetCreator: (config:any)...
    method addDependencyPluginTests (line 653) | public addDependencyPluginTests(snippetName: string, snippetCreator: (...
    method addPropertiesPluginTests (line 754) | public addPropertiesPluginTests(snippetName: string, snippetCreator: (...
    method _initializeSnippet (line 1063) | private _initializeSnippet(snippet: Snippet): IApplicationInsights {
  class TestPlugin (line 1155) | class TestPlugin extends BaseTelemetryPlugin {
    method constructor (line 1159) | constructor() {
    method processTelemetry (line 1163) | public processTelemetry(env: ITelemetryItem, itemCtx?: IProcessTelemet...

FILE: AISKU/Tests/Unit/src/SpanContextPropagation.Tests.ts
  class SpanContextPropagationTests (line 6) | class SpanContextPropagationTests extends AITestClass {
    method constructor (line 13) | constructor(testName?: string) {
    method testInitialize (line 17) | public testInitialize() {
    method testFinishedCleanup (line 47) | public testFinishedCleanup() {
    method registerTests (line 53) | public registerTests() {
    method addParentChildRelationshipTests (line 61) | private addParentChildRelationshipTests(): void {
    method addMultiLevelHierarchyTests (line 226) | private addMultiLevelHierarchyTests(): void {
    method addSiblingSpanTests (line 344) | private addSiblingSpanTests(): void {
    method addAsyncBoundaryTests (line 433) | private addAsyncBoundaryTests(): void {
    method addContextPropagationTests (line 567) | private addContextPropagationTests(): void {

FILE: AISKU/Tests/Unit/src/SpanE2E.Tests.ts
  class SpanE2ETests (line 21) | class SpanE2ETests extends AITestClass {
    method constructor (line 31) | constructor(testName?: string) {
    method testInitialize (line 35) | public testInitialize() {
    method testFinishedCleanup (line 68) | public testFinishedCleanup() {
    method registerTests (line 76) | public registerTests() {
    method addE2EBasicSpanTests (line 84) | private addE2EBasicSpanTests(): void {
    method addE2EDistributedTraceTests (line 180) | private addE2EDistributedTraceTests(): void {
    method addE2EHttpDependencyTests (line 307) | private addE2EHttpDependencyTests(): void {
    method addE2EDatabaseDependencyTests (line 378) | private addE2EDatabaseDependencyTests(): void {
    method addE2EComplexScenarioTests (line 458) | private addE2EComplexScenarioTests(): void {

FILE: AISKU/Tests/Unit/src/SpanErrorHandling.Tests.ts
  class SpanErrorHandlingTests (line 5) | class SpanErrorHandlingTests extends AITestClass {
    method constructor (line 12) | constructor(testName?: string) {
    method testInitialize (line 16) | public testInitialize() {
    method testFinishedCleanup (line 46) | public testFinishedCleanup() {
    method registerTests (line 52) | public registerTests() {
    method addInvalidSpanNameTests (line 61) | private addInvalidSpanNameTests(): void {
    method addInvalidAttributeTests (line 136) | private addInvalidAttributeTests(): void {
    method addNullUndefinedInputTests (line 290) | private addNullUndefinedInputTests(): void {
    method addInvalidParentContextTests (line 436) | private addInvalidParentContextTests(): void {
    method addInvalidOptionsTests (line 511) | private addInvalidOptionsTests(): void {
    method addEdgeCaseTests (line 621) | private addEdgeCaseTests(): void {

FILE: AISKU/Tests/Unit/src/SpanHelperUtils.Tests.ts
  class SpanHelperUtilsTests (line 23) | class SpanHelperUtilsTests extends AITestClass {
    method constructor (line 30) | constructor(testName?: string) {
    method testInitialize (line 34) | public testInitialize() {
    method testFinishedCleanup (line 63) | public testFinishedCleanup() {
    method registerTests (line 69) | public registerTests() {
    method addIsSpanContextValidTests (line 76) | private addIsSpanContextValidTests(): void {
    method addWrapSpanContextTests (line 296) | private addWrapSpanContextTests(): void {
    method addIsReadableSpanTests (line 526) | private addIsReadableSpanTests(): void {
    method addHelperIntegrationTests (line 740) | private addHelperIntegrationTests(): void {

FILE: AISKU/Tests/Unit/src/SpanLifeCycle.Tests.ts
  class SpanLifeCycleTests (line 5) | class SpanLifeCycleTests extends AITestClass {
    method constructor (line 12) | constructor(testName?: string) {
    method testInitialize (line 16) | public testInitialize() {
    method testFinishedCleanup (line 46) | public testFinishedCleanup() {
    method registerTests (line 52) | public registerTests() {
    method addDoubleEndTests (line 60) | private addDoubleEndTests(): void {
    method addOperationsOnEndedSpansTests (line 158) | private addOperationsOnEndedSpansTests(): void {
    method addEndedPropertyTests (line 344) | private addEndedPropertyTests(): void {
    method addIsRecordingAfterEndTests (line 437) | private addIsRecordingAfterEndTests(): void {
    method addEndTimeTests (line 511) | private addEndTimeTests(): void {

FILE: AISKU/Tests/Unit/src/SpanPluginIntegration.Tests.ts
  class SpanPluginIntegrationTests (line 15) | class SpanPluginIntegrationTests extends AITestClass {
    method constructor (line 18) | constructor(testName?: string) {
    method testInitialize (line 22) | public testInitialize() {
    method testFinishedCleanup (line 54) | public testFinishedCleanup() {
    method registerTests (line 61) | public registerTests() {
    method addPropertiesPluginIntegrationTests (line 73) | private addPropertiesPluginIntegrationTests(): void {
    method addAnalyticsPluginIntegrationTests (line 220) | private addAnalyticsPluginIntegrationTests(): void {
    method addTelemetryInitializerTests (line 416) | private addTelemetryInitializerTests(): void {
    method addSessionContextTests (line 558) | private addSessionContextTests(): void {
    method addUserContextTests (line 637) | private addUserContextTests(): void {
    method addDeviceContextTests (line 702) | private addDeviceContextTests(): void {
    method addDistributedTraceContextTests (line 732) | private addDistributedTraceContextTests(): void {
    method addSamplingIntegrationTests (line 806) | private addSamplingIntegrationTests(): void {
    method addConfigurationIntegrationTests (line 861) | private addConfigurationIntegrationTests(): void {
    method getSentTelemetry (line 979) | private getSentTelemetry(): any[] {
    method parseDurationToMs (line 1001) | private parseDurationToMs(duration: string): number {

FILE: AISKU/Tests/Unit/src/SpanUtils.Tests.ts
  class SpanUtilsTests (line 27) | class SpanUtilsTests extends AITestClass {
    method constructor (line 34) | constructor(testName?: string) {
    method testInitialize (line 38) | public testInitialize() {
    method testFinishedCleanup (line 67) | public testFinishedCleanup() {
    method registerTests (line 73) | public registerTests() {
    method addDependencyTelemetryTests (line 87) | private addDependencyTelemetryTests(): void {
    method addRequestTelemetryTests (line 205) | private addRequestTelemetryTests(): void {
    method addHttpDependencyTests (line 360) | private addHttpDependencyTests(): void {
    method addDbDependencyTests (line 504) | private addDbDependencyTests(): void {
    method addRpcDependencyTests (line 669) | private addRpcDependencyTests(): void {
    method addAttributeMappingTests (line 743) | private addAttributeMappingTests(): void {
    method addTagsCreationTests (line 812) | private addTagsCreationTests(): void {
    method addAzureSDKTests (line 1015) | private addAzureSDKTests(): void {
    method addSemanticAttributeExclusionTests (line 1090) | private addSemanticAttributeExclusionTests(): void {
    method addEdgeCaseTests (line 1243) | private addEdgeCaseTests(): void {
    method addCrossBrowserCompatibilityTests (line 1592) | private addCrossBrowserCompatibilityTests(): void {

FILE: AISKU/Tests/Unit/src/StartSpan.Tests.ts
  class StartSpanTests (line 5) | class StartSpanTests extends AITestClass {
    method constructor (line 14) | constructor(testName?: string) {
    method testInitialize (line 18) | public testInitialize() {
    method testFinishedCleanup (line 51) | public testFinishedCleanup() {
    method registerTests (line 57) | public registerTests() {
    method addTests (line 61) | private addTests(): void {

FILE: AISKU/Tests/Unit/src/TelemetryItemGeneration.Tests.ts
  class TelemetryItemGenerationTests (line 5) | class TelemetryItemGenerationTests extends AITestClass {
    method constructor (line 12) | constructor(testName?: string) {
    method testInitialize (line 16) | public testInitialize() {
    method testFinishedCleanup (line 46) | public testFinishedCleanup() {
    method registerTests (line 52) | public registerTests() {
    method addSpanKindTests (line 60) | private addSpanKindTests(): void {
    method addStatusCodeTests (line 224) | private addStatusCodeTests(): void {
    method addAttributeTests (line 353) | private addAttributeTests(): void {
    method addTelemetryItemStructureTests (line 551) | private addTelemetryItemStructureTests(): void {
    method addComplexScenarioTests (line 668) | private addComplexScenarioTests(): void {

FILE: AISKU/Tests/Unit/src/ThrottleSentMessage.tests.ts
  class ThrottleSentMessage (line 25) | class ThrottleSentMessage extends AITestClass {
    method constructor (line 31) | constructor() {
    method _getTestConfig (line 35) | public _getTestConfig() {
    method testInitialize (line 57) | public testInitialize() {
    method testFinishedCleanup (line 79) | public testFinishedCleanup(): void {
    method registerTests (line 89) | public registerTests() {
    method cdnDeprecatedMessageTests (line 95) | public cdnDeprecatedMessageTests(): void {
    method ikeyMessageTests (line 159) | public ikeyMessageTests(): void {
    method snippetVerMessageTests (line 210) | public snippetVerMessageTests(){
    method _initializeSnippet (line 257) | private _initializeSnippet(snippet: Snippet): ApplicationInsights {

FILE: AISKU/Tests/Unit/src/TraceContext.Tests.ts
  class TraceContextTests (line 6) | class TraceContextTests extends AITestClass {
    method constructor (line 13) | constructor(testName?: string) {
    method testInitialize (line 17) | public testInitialize() {
    method testFinishedCleanup (line 47) | public testFinishedCleanup() {
    method registerTests (line 53) | public registerTests() {
    method addGetTraceCtxTests (line 60) | private addGetTraceCtxTests(): void {
    method addActiveSpanTests (line 240) | private addActiveSpanTests(): void {
    method addsetActiveSpanTests (line 401) | private addsetActiveSpanTests(): void {
    method addIntegrationTests (line 577) | private addIntegrationTests(): void {

FILE: AISKU/Tests/Unit/src/TraceProvider.Tests.ts
  class TraceProviderTests (line 8) | class TraceProviderTests extends AITestClass {
    method constructor (line 15) | constructor(testName?: string) {
    method testInitialize (line 19) | public testInitialize() {
    method testFinishedCleanup (line 49) | public testFinishedCleanup() {
    method registerTests (line 55) | public registerTests() {
    method addProviderAvailabilityTests (line 63) | private addProviderAvailabilityTests(): void {
    method addGetProviderIdTests (line 126) | private addGetProviderIdTests(): void {
    method addIsAvailableTests (line 200) | private addIsAvailableTests(): void {
    method addCreateSpanTests (line 299) | private addCreateSpanTests(): void {
    method addProviderIntegrationTests (line 486) | private addProviderIntegrationTests(): void {

FILE: AISKU/Tests/Unit/src/TraceSuppression.Tests.ts
  function _createAndInitializeSDK (line 6) | function _createAndInitializeSDK(connectionString: string): ApplicationI...
  class TraceSuppressionTests (line 23) | class TraceSuppressionTests extends AITestClass {
    method constructor (line 32) | constructor(testName?: string) {
    method testInitialize (line 36) | public testInitialize() {
    method testFinishedCleanup (line 55) | public testFinishedCleanup() {
    method registerTests (line 61) | public registerTests() {
    method addTests (line 65) | private addTests(): void {

FILE: AISKU/Tests/Unit/src/UseSpan.Tests.ts
  class UseSpanTests (line 7) | class UseSpanTests extends AITestClass {
    method constructor (line 16) | constructor(testName?: string) {
    method testInitialize (line 20) | public testInitialize() {
    method testFinishedCleanup (line 51) | public testFinishedCleanup() {
    method registerTests (line 57) | public registerTests() {
    method addTests (line 61) | private addTests(): void {

FILE: AISKU/Tests/Unit/src/WithSpan.Tests.ts
  class WithSpanTests (line 6) | class WithSpanTests extends AITestClass {
    method constructor (line 15) | constructor(testName?: string) {
    method testInitialize (line 19) | public testInitialize() {
    method testFinishedCleanup (line 50) | public testFinishedCleanup() {
    method registerTests (line 56) | public registerTests() {
    method addTests (line 60) | private addTests(): void {

FILE: AISKU/Tests/Unit/src/aiskuunittests.ts
  function runTests (line 30) | function runTests() {

FILE: AISKU/Tests/Unit/src/applicationinsights.e2e.fetch.tests.ts
  class ApplicationInsightsFetchTests (line 8) | class ApplicationInsightsFetchTests extends ApplicationInsightsTests {
    method constructor (line 10) | constructor() {
    method _getTestConfig (line 14) | protected _getTestConfig(sessionPrefix: string) {
    method testInitialize (line 40) | public testInitialize() {

FILE: AISKU/Tests/Unit/src/applicationinsights.e2e.tests.ts
  function _checkExpectedFrame (line 14) | function _checkExpectedFrame(expectedFrame: IStackFrame, actualFrame: IS...
  class ApplicationInsightsTests (line 22) | class ApplicationInsightsTests extends AITestClass {
    method constructor (line 61) | constructor(testName?: string) {
    method _getTestConfig (line 65) | protected _getTestConfig(sessionPrefix: string) {
    method testInitialize (line 90) | public testInitialize() {
    method testFinishedCleanup (line 143) | public testFinishedCleanup(): void {
    method registerTests (line 156) | public registerTests() {
    method addGenericE2ETests (line 167) | public addGenericE2ETests(): void {
    method addDynamicConfigTests (line 213) | public addDynamicConfigTests(): void {
    method addCDNOverrideTests (line 702) | public addCDNOverrideTests(): void {
    method addAnalyticsApiTests (line 718) | public addAnalyticsApiTests(): void {
    method addCdnMonitorTests (line 730) | public addCdnMonitorTests(): void {
    method addAsyncTests (line 922) | public addAsyncTests(): void {
    method addDependencyPluginTests (line 1627) | public addDependencyPluginTests(): void {
    method addPropertiesPluginTests (line 1725) | public addPropertiesPluginTests(): void {
  class CustomTestError (line 2076) | class CustomTestError extends Error {
    method constructor (line 2077) | constructor(message = "") {
  class TestPlugin (line 2084) | class TestPlugin extends BaseTelemetryPlugin {
    method constructor (line 2088) | constructor() {
    method processTelemetry (line 2092) | public processTelemetry(env: ITelemetryItem, itemCtx?: IProcessTelemet...

FILE: AISKU/Tests/Unit/src/sanitizer.e2e.tests.ts
  class SanitizerE2ETests (line 8) | class SanitizerE2ETests extends AITestClass {
    method constructor (line 20) | constructor() {
    method testInitialize (line 24) | public testInitialize() {
    method testFinishedCleanup (line 51) | public testFinishedCleanup(): void {
    method registerTests (line 58) | public registerTests() {
    method addAsyncTests (line 62) | private addAsyncTests(): void {

FILE: AISKU/Tests/Unit/src/sender.e2e.tests.ts
  class SenderE2ETests (line 9) | class SenderE2ETests extends AITestClass {
    method constructor (line 25) | constructor() {
    method testInitialize (line 29) | public testInitialize() {
    method testFinishedCleanup (line 64) | public testFinishedCleanup(): void {
    method testCleanup (line 70) | public testCleanup() {
    method registerTests (line 77) | public registerTests() {
    method addRetryTests (line 83) | private addRetryTests() {
    method addAsyncTests (line 117) | private addAsyncTests(): void {
    method addTrackEndpointTests (line 190) | private addTrackEndpointTests(): void {
    method waitForResponse (line 229) | private waitForResponse() {
    method boilerPlateAsserts (line 236) | private boilerPlateAsserts() {
    method isSessionEmpty (line 249) | private isSessionEmpty(): boolean {
    method isSessionSentEmpty (line 254) | private isSessionSentEmpty(): boolean {
    method _getBuffer (line 259) | private _getBuffer(key: string): string[] {

FILE: AISKU/Tests/Unit/src/testLegacySnippet.ts
  function createLegacySnippet (line 9) | function createLegacySnippet(aiConfig) {

FILE: AISKU/Tests/Unit/src/testSnippetV5.ts
  function createSnippetV5 (line 12) | function createSnippetV5(snipConfig) {

FILE: AISKU/Tests/Unit/src/testSnippetV6.ts
  function createSnippetV6 (line 12) | function createSnippetV6(snipConfig) {

FILE: AISKU/Tests/Unit/src/validate.e2e.tests.ts
  class ValidateE2ETests (line 8) | class ValidateE2ETests extends AITestClass {
    method constructor (line 20) | constructor() {
    method testInitialize (line 24) | public testInitialize() {
    method testFinishedCleanup (line 55) | public testFinishedCleanup(): void {
    method registerTests (line 62) | public registerTests() {
    method addAsyncTests (line 66) | private addAsyncTests(): void {
    method waitForResponse (line 184) | private waitForResponse() {
    method boilerPlateAsserts (line 190) | private boilerPlateAsserts() {

FILE: AISKU/dist-history/aisdk.0.0.13.js
  function __webpack_require__ (line 16) | function __webpack_require__(moduleId) {
  function Initialization (line 165) | function Initialization(snippet) {
  function ApplicationInsights (line 361) | function ApplicationInsights() {
  function Timing (line 705) | function Timing(logger, name) {
  function PageViewManager (line 751) | function PageViewManager(appInsights, overridePageViewDuration, core) {
  function __ (line 903) | function __() { this.constructor = d; }
  function EnvelopeCreator (line 971) | function EnvelopeCreator() {
  function DependencyEnvelopeCreator (line 1034) | function DependencyEnvelopeCreator() {
  function EventEnvelopeCreator (line 1067) | function EventEnvelopeCreator() {
  function ExceptionEnvelopeCreator (line 1092) | function ExceptionEnvelopeCreator() {
  function MetricEnvelopeCreator (line 1115) | function MetricEnvelopeCreator() {
  function PageViewEnvelopeCreator (line 1139) | function PageViewEnvelopeCreator() {
  function PageViewPerformanceEnvelopeCreator (line 1191) | function PageViewPerformanceEnvelopeCreator() {
  function TraceEnvelopeCreator (line 1215) | function TraceEnvelopeCreator() {
  function ArraySendBuffer (line 1254) | function ArraySendBuffer(config) {
  function SessionStorageSendBuffer (line 1292) | function SessionStorageSendBuffer(logger, config) {
  function Sender (line 1430) | function Sender() {
  function Serializer (line 1914) | function Serializer(logger) {
  function EventValidator (line 2085) | function EventValidator() {
  function ExceptionValidator (line 2123) | function ExceptionValidator() {
  function MetricValidator (line 2173) | function MetricValidator() {
  function PageViewPerformanceValidator (line 2199) | function PageViewPerformanceValidator() {
  function PageViewValidator (line 2246) | function PageViewValidator() {
  function RemoteDepdencyValidator (line 2289) | function RemoteDepdencyValidator() {
  function TraceValidator (line 2336) | function TraceValidator() {
  function Base (line 2451) | function Base() {
  function ContextTagKeys (line 2474) | function ContextTagKeys() {
  function __ (line 2553) | function __() { this.constructor = d; }
  function Data (line 2565) | function Data() {
  function DataPoint (line 2591) | function DataPoint() {
  function Domain (line 2643) | function Domain() {
  function Envelope (line 2668) | function Envelope() {
  function __ (line 2695) | function __() { this.constructor = d; }
  function EventData (line 2707) | function EventData() {
  function __ (line 2736) | function __() { this.constructor = d; }
  function ExceptionData (line 2748) | function ExceptionData() {
  function ExceptionDetails (line 2779) | function ExceptionDetails() {
  function __ (line 2805) | function __() { this.constructor = d; }
  function MessageData (line 2817) | function MessageData() {
  function __ (line 2845) | function __() { this.constructor = d; }
  function MetricData (line 2857) | function MetricData() {
  function __ (line 2886) | function __() { this.constructor = d; }
  function PageViewData (line 2898) | function PageViewData() {
  function __ (line 2927) | function __() { this.constructor = d; }
  function PageViewPerfData (line 2939) | function PageViewPerfData() {
  function __ (line 2968) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 2980) | function RemoteDependencyData() {
  function StackFrame (line 3040) | function StackFrame() {
  function RequestHeaders (line 3062) | function RequestHeaders() {
  function __ (line 3113) | function __() { this.constructor = d; }
  function Data (line 3125) | function Data(type, data) {
  function __ (line 3160) | function __() { this.constructor = d; }
  function DataPoint (line 3169) | function DataPoint() {
  function DataSanitizer (line 3205) | function DataSanitizer() {
  function __ (line 3358) | function __() { this.constructor = d; }
  function Envelope (line 3370) | function Envelope(logger, data, name) {
  function __ (line 3409) | function __() { this.constructor = d; }
  function Event (line 3421) | function Event(logger, name, properties, measurements) {
  function __ (line 3458) | function __() { this.constructor = d; }
  function Exception (line 3470) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 3509) | function _ExceptionDetails(logger, exception) {
  function _StackFrame (line 3577) | function _StackFrame(frame, level) {
  function __ (line 3631) | function __() { this.constructor = d; }
  function Metric (line 3643) | function Metric(logger, name, value, count, min, max, properties) {
  function __ (line 3684) | function __() { this.constructor = d; }
  function PageView (line 3696) | function PageView(logger, name, url, durationMs, properties, measurement...
  function __ (line 3741) | function __() { this.constructor = d; }
  function PageViewPerformance (line 3753) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function __ (line 3918) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 3930) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function __ (line 3992) | function __() { this.constructor = d; }
  function Trace (line 4004) | function Trace(logger, message, properties, severityLevel) {
  function TelemetryItemCreator (line 4042) | function TelemetryItemCreator() {
  function Util (line 4100) | function Util() {
  function UrlHelper (line 4563) | function UrlHelper() {
  function CorrelationIdHelper (line 4601) | function CorrelationIdHelper() {
  function AjaxHelper (line 4659) | function AjaxHelper() {
  function DateTimeUtils (line 4693) | function DateTimeUtils() {
  function AppInsightsCore (line 4942) | function AppInsightsCore() {
  function ChannelController (line 5141) | function ChannelController() {
  function CoreUtils (line 5223) | function CoreUtils() {
  function _InternalLogMessage (line 5259) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function DiagnosticLogger (line 5285) | function DiagnosticLogger(config) {
  function NotificationManager (line 5458) | function NotificationManager() {
  function AjaxMonitor (line 5558) | function AjaxMonitor() {
  function XHRMonitoringState (line 5831) | function XHRMonitoringState() {
  function ajaxRecord (line 5843) | function ajaxRecord(id, logger) {
  function stringUtils (line 5907) | function stringUtils() {
  function EventHelper (line 5928) | function EventHelper() {
  function Application (line 6002) | function Application() {
  function Device (line 6027) | function Device() {
  function Internal (line 6058) | function Internal(config) {
  function Location (line 6081) | function Location() {
  function Operation (line 6103) | function Operation() {
  function Sample (line 6129) | function Sample(sampleRate, logger) {
  function Session (line 6172) | function Session() {
  function _SessionManager (line 6178) | function _SessionManager(config, logger) {
  function User (line 6337) | function User(config, logger) {
  function HashCodeScoreGenerator (line 6452) | function HashCodeScoreGenerator() {
  function PropertiesPlugin (line 6503) | function PropertiesPlugin() {
  function SamplingScoreGenerator (line 6735) | function SamplingScoreGenerator() {

FILE: AISKU/dist-history/aisdk.0.0.15.js
  function __webpack_require__ (line 16) | function __webpack_require__(moduleId) {
  function Initialization (line 165) | function Initialization(snippet) {
  function ApplicationInsights (line 365) | function ApplicationInsights() {
  function Timing (line 710) | function Timing(logger, name) {
  function PageViewManager (line 756) | function PageViewManager(appInsights, overridePageViewDuration, core) {
  function __ (line 908) | function __() { this.constructor = d; }
  function EnvelopeCreator (line 976) | function EnvelopeCreator() {
  function DependencyEnvelopeCreator (line 1039) | function DependencyEnvelopeCreator() {
  function EventEnvelopeCreator (line 1072) | function EventEnvelopeCreator() {
  function ExceptionEnvelopeCreator (line 1097) | function ExceptionEnvelopeCreator() {
  function MetricEnvelopeCreator (line 1120) | function MetricEnvelopeCreator() {
  function PageViewEnvelopeCreator (line 1144) | function PageViewEnvelopeCreator() {
  function PageViewPerformanceEnvelopeCreator (line 1196) | function PageViewPerformanceEnvelopeCreator() {
  function TraceEnvelopeCreator (line 1220) | function TraceEnvelopeCreator() {
  function ArraySendBuffer (line 1259) | function ArraySendBuffer(config) {
  function SessionStorageSendBuffer (line 1297) | function SessionStorageSendBuffer(logger, config) {
  function Sender (line 1435) | function Sender() {
  function Serializer (line 1920) | function Serializer(logger) {
  function EventValidator (line 2091) | function EventValidator() {
  function ExceptionValidator (line 2129) | function ExceptionValidator() {
  function MetricValidator (line 2179) | function MetricValidator() {
  function PageViewPerformanceValidator (line 2205) | function PageViewPerformanceValidator() {
  function PageViewValidator (line 2252) | function PageViewValidator() {
  function RemoteDepdencyValidator (line 2295) | function RemoteDepdencyValidator() {
  function TraceValidator (line 2342) | function TraceValidator() {
  function Base (line 2457) | function Base() {
  function ContextTagKeys (line 2480) | function ContextTagKeys() {
  function __ (line 2559) | function __() { this.constructor = d; }
  function Data (line 2571) | function Data() {
  function DataPoint (line 2597) | function DataPoint() {
  function Domain (line 2649) | function Domain() {
  function Envelope (line 2674) | function Envelope() {
  function __ (line 2701) | function __() { this.constructor = d; }
  function EventData (line 2713) | function EventData() {
  function __ (line 2742) | function __() { this.constructor = d; }
  function ExceptionData (line 2754) | function ExceptionData() {
  function ExceptionDetails (line 2785) | function ExceptionDetails() {
  function __ (line 2811) | function __() { this.constructor = d; }
  function MessageData (line 2823) | function MessageData() {
  function __ (line 2851) | function __() { this.constructor = d; }
  function MetricData (line 2863) | function MetricData() {
  function __ (line 2892) | function __() { this.constructor = d; }
  function PageViewData (line 2904) | function PageViewData() {
  function __ (line 2933) | function __() { this.constructor = d; }
  function PageViewPerfData (line 2945) | function PageViewPerfData() {
  function __ (line 2974) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 2986) | function RemoteDependencyData() {
  function StackFrame (line 3046) | function StackFrame() {
  function RequestHeaders (line 3068) | function RequestHeaders() {
  function __ (line 3119) | function __() { this.constructor = d; }
  function Data (line 3131) | function Data(baseType, data) {
  function __ (line 3166) | function __() { this.constructor = d; }
  function DataPoint (line 3175) | function DataPoint() {
  function DataSanitizer (line 3211) | function DataSanitizer() {
  function __ (line 3364) | function __() { this.constructor = d; }
  function Envelope (line 3376) | function Envelope(logger, data, name) {
  function __ (line 3415) | function __() { this.constructor = d; }
  function Event (line 3427) | function Event(logger, name, properties, measurements) {
  function __ (line 3464) | function __() { this.constructor = d; }
  function Exception (line 3476) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 3515) | function _ExceptionDetails(logger, exception) {
  function _StackFrame (line 3583) | function _StackFrame(frame, level) {
  function __ (line 3637) | function __() { this.constructor = d; }
  function Metric (line 3649) | function Metric(logger, name, value, count, min, max, properties) {
  function __ (line 3690) | function __() { this.constructor = d; }
  function PageView (line 3702) | function PageView(logger, name, url, durationMs, properties, measurement...
  function __ (line 3747) | function __() { this.constructor = d; }
  function PageViewPerformance (line 3759) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function __ (line 3924) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 3936) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function __ (line 3998) | function __() { this.constructor = d; }
  function Trace (line 4010) | function Trace(logger, message, properties, severityLevel) {
  function TelemetryItemCreator (line 4048) | function TelemetryItemCreator() {
  function Util (line 4106) | function Util() {
  function UrlHelper (line 4570) | function UrlHelper() {
  function CorrelationIdHelper (line 4608) | function CorrelationIdHelper() {
  function AjaxHelper (line 4666) | function AjaxHelper() {
  function DateTimeUtils (line 4700) | function DateTimeUtils() {
  function AppInsightsCore (line 4949) | function AppInsightsCore() {
  function ChannelController (line 5148) | function ChannelController() {
  function CoreUtils (line 5230) | function CoreUtils() {
  function _InternalLogMessage (line 5266) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function DiagnosticLogger (line 5292) | function DiagnosticLogger(config) {
  function NotificationManager (line 5465) | function NotificationManager() {
  function AjaxMonitor (line 5565) | function AjaxMonitor() {
  function XHRMonitoringState (line 5838) | function XHRMonitoringState() {
  function ajaxRecord (line 5850) | function ajaxRecord(id, logger) {
  function stringUtils (line 5914) | function stringUtils() {
  function EventHelper (line 5935) | function EventHelper() {
  function Application (line 6009) | function Application() {
  function Device (line 6034) | function Device() {
  function Internal (line 6065) | function Internal(config) {
  function Location (line 6088) | function Location() {
  function Operation (line 6110) | function Operation() {
  function Sample (line 6136) | function Sample(sampleRate, logger) {
  function Session (line 6179) | function Session() {
  function _SessionManager (line 6185) | function _SessionManager(config, logger) {
  function User (line 6344) | function User(config, logger) {
  function HashCodeScoreGenerator (line 6459) | function HashCodeScoreGenerator() {
  function PropertiesPlugin (line 6510) | function PropertiesPlugin() {
  function SamplingScoreGenerator (line 6742) | function SamplingScoreGenerator() {

FILE: AISKU/dist-history/aisdk.0.0.17.js
  function __webpack_require__ (line 16) | function __webpack_require__(moduleId) {
  function Initialization (line 165) | function Initialization(snippet) {
  function ApplicationInsights (line 365) | function ApplicationInsights() {
  function Timing (line 710) | function Timing(logger, name) {
  function PageViewManager (line 756) | function PageViewManager(appInsights, overridePageViewDuration, core) {
  function __ (line 908) | function __() { this.constructor = d; }
  function EnvelopeCreator (line 976) | function EnvelopeCreator() {
  function DependencyEnvelopeCreator (line 1039) | function DependencyEnvelopeCreator() {
  function EventEnvelopeCreator (line 1072) | function EventEnvelopeCreator() {
  function ExceptionEnvelopeCreator (line 1097) | function ExceptionEnvelopeCreator() {
  function MetricEnvelopeCreator (line 1120) | function MetricEnvelopeCreator() {
  function PageViewEnvelopeCreator (line 1144) | function PageViewEnvelopeCreator() {
  function PageViewPerformanceEnvelopeCreator (line 1196) | function PageViewPerformanceEnvelopeCreator() {
  function TraceEnvelopeCreator (line 1220) | function TraceEnvelopeCreator() {
  function OfflineListener (line 1261) | function OfflineListener() {
  function ArraySendBuffer (line 1329) | function ArraySendBuffer(config) {
  function SessionStorageSendBuffer (line 1367) | function SessionStorageSendBuffer(logger, config) {
  function Sender (line 1505) | function Sender() {
  function Serializer (line 1999) | function Serializer(logger) {
  function EventValidator (line 2170) | function EventValidator() {
  function ExceptionValidator (line 2208) | function ExceptionValidator() {
  function MetricValidator (line 2258) | function MetricValidator() {
  function PageViewPerformanceValidator (line 2284) | function PageViewPerformanceValidator() {
  function PageViewValidator (line 2331) | function PageViewValidator() {
  function RemoteDepdencyValidator (line 2374) | function RemoteDepdencyValidator() {
  function TraceValidator (line 2421) | function TraceValidator() {
  function Base (line 2536) | function Base() {
  function ContextTagKeys (line 2559) | function ContextTagKeys() {
  function __ (line 2638) | function __() { this.constructor = d; }
  function Data (line 2650) | function Data() {
  function DataPoint (line 2676) | function DataPoint() {
  function Domain (line 2728) | function Domain() {
  function Envelope (line 2753) | function Envelope() {
  function __ (line 2780) | function __() { this.constructor = d; }
  function EventData (line 2792) | function EventData() {
  function __ (line 2821) | function __() { this.constructor = d; }
  function ExceptionData (line 2833) | function ExceptionData() {
  function ExceptionDetails (line 2864) | function ExceptionDetails() {
  function __ (line 2890) | function __() { this.constructor = d; }
  function MessageData (line 2902) | function MessageData() {
  function __ (line 2930) | function __() { this.constructor = d; }
  function MetricData (line 2942) | function MetricData() {
  function __ (line 2971) | function __() { this.constructor = d; }
  function PageViewData (line 2983) | function PageViewData() {
  function __ (line 3012) | function __() { this.constructor = d; }
  function PageViewPerfData (line 3024) | function PageViewPerfData() {
  function __ (line 3053) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 3065) | function RemoteDependencyData() {
  function StackFrame (line 3125) | function StackFrame() {
  function RequestHeaders (line 3147) | function RequestHeaders() {
  function __ (line 3198) | function __() { this.constructor = d; }
  function Data (line 3210) | function Data(baseType, data) {
  function __ (line 3245) | function __() { this.constructor = d; }
  function DataPoint (line 3254) | function DataPoint() {
  function DataSanitizer (line 3290) | function DataSanitizer() {
  function __ (line 3443) | function __() { this.constructor = d; }
  function Envelope (line 3455) | function Envelope(logger, data, name) {
  function __ (line 3494) | function __() { this.constructor = d; }
  function Event (line 3506) | function Event(logger, name, properties, measurements) {
  function __ (line 3543) | function __() { this.constructor = d; }
  function Exception (line 3555) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 3594) | function _ExceptionDetails(logger, exception) {
  function _StackFrame (line 3662) | function _StackFrame(frame, level) {
  function __ (line 3716) | function __() { this.constructor = d; }
  function Metric (line 3728) | function Metric(logger, name, value, count, min, max, properties) {
  function __ (line 3769) | function __() { this.constructor = d; }
  function PageView (line 3781) | function PageView(logger, name, url, durationMs, properties, measurement...
  function __ (line 3826) | function __() { this.constructor = d; }
  function PageViewPerformance (line 3838) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function __ (line 4003) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 4015) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function __ (line 4077) | function __() { this.constructor = d; }
  function Trace (line 4089) | function Trace(logger, message, properties, severityLevel) {
  function TelemetryItemCreator (line 4127) | function TelemetryItemCreator() {
  function Util (line 4185) | function Util() {
  function UrlHelper (line 4649) | function UrlHelper() {
  function CorrelationIdHelper (line 4687) | function CorrelationIdHelper() {
  function AjaxHelper (line 4745) | function AjaxHelper() {
  function DateTimeUtils (line 4779) | function DateTimeUtils() {
  function AppInsightsCore (line 5028) | function AppInsightsCore() {
  function ChannelController (line 5227) | function ChannelController() {
  function CoreUtils (line 5309) | function CoreUtils() {
  function _InternalLogMessage (line 5345) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function DiagnosticLogger (line 5371) | function DiagnosticLogger(config) {
  function NotificationManager (line 5544) | function NotificationManager() {
  function AjaxMonitor (line 5644) | function AjaxMonitor() {
  function XHRMonitoringState (line 5917) | function XHRMonitoringState() {
  function ajaxRecord (line 5929) | function ajaxRecord(id, logger) {
  function stringUtils (line 5993) | function stringUtils() {
  function EventHelper (line 6014) | function EventHelper() {
  function Application (line 6088) | function Application() {
  function Device (line 6113) | function Device() {
  function Internal (line 6144) | function Internal(config) {
  function Location (line 6167) | function Location() {
  function Operation (line 6189) | function Operation() {
  function Sample (line 6215) | function Sample(sampleRate, logger) {
  function Session (line 6258) | function Session() {
  function _SessionManager (line 6264) | function _SessionManager(config, logger) {
  function User (line 6423) | function User(config, logger) {
  function HashCodeScoreGenerator (line 6538) | function HashCodeScoreGenerator() {
  function PropertiesPlugin (line 6589) | function PropertiesPlugin() {
  function SamplingScoreGenerator (line 6821) | function SamplingScoreGenerator() {

FILE: AISKU/dist-history/aisdk.0.0.18.js
  function __webpack_require__ (line 16) | function __webpack_require__(moduleId) {
  function Initialization (line 165) | function Initialization(snippet) {
  function ApplicationInsights (line 369) | function ApplicationInsights() {
  function Timing (line 714) | function Timing(logger, name) {
  function PageViewManager (line 760) | function PageViewManager(appInsights, overridePageViewDuration, core) {
  function __ (line 912) | function __() { this.constructor = d; }
  function EnvelopeCreator (line 980) | function EnvelopeCreator() {
  function DependencyEnvelopeCreator (line 1043) | function DependencyEnvelopeCreator() {
  function EventEnvelopeCreator (line 1076) | function EventEnvelopeCreator() {
  function ExceptionEnvelopeCreator (line 1101) | function ExceptionEnvelopeCreator() {
  function MetricEnvelopeCreator (line 1124) | function MetricEnvelopeCreator() {
  function PageViewEnvelopeCreator (line 1148) | function PageViewEnvelopeCreator() {
  function PageViewPerformanceEnvelopeCreator (line 1200) | function PageViewPerformanceEnvelopeCreator() {
  function TraceEnvelopeCreator (line 1224) | function TraceEnvelopeCreator() {
  function OfflineListener (line 1265) | function OfflineListener() {
  function ArraySendBuffer (line 1333) | function ArraySendBuffer(config) {
  function SessionStorageSendBuffer (line 1371) | function SessionStorageSendBuffer(logger, config) {
  function Sender (line 1509) | function Sender() {
  function Serializer (line 2003) | function Serializer(logger) {
  function EventValidator (line 2174) | function EventValidator() {
  function ExceptionValidator (line 2212) | function ExceptionValidator() {
  function MetricValidator (line 2262) | function MetricValidator() {
  function PageViewPerformanceValidator (line 2288) | function PageViewPerformanceValidator() {
  function PageViewValidator (line 2335) | function PageViewValidator() {
  function RemoteDepdencyValidator (line 2378) | function RemoteDepdencyValidator() {
  function TraceValidator (line 2425) | function TraceValidator() {
  function Base (line 2540) | function Base() {
  function ContextTagKeys (line 2563) | function ContextTagKeys() {
  function __ (line 2642) | function __() { this.constructor = d; }
  function Data (line 2654) | function Data() {
  function DataPoint (line 2680) | function DataPoint() {
  function Domain (line 2732) | function Domain() {
  function Envelope (line 2757) | function Envelope() {
  function __ (line 2784) | function __() { this.constructor = d; }
  function EventData (line 2796) | function EventData() {
  function __ (line 2825) | function __() { this.constructor = d; }
  function ExceptionData (line 2837) | function ExceptionData() {
  function ExceptionDetails (line 2868) | function ExceptionDetails() {
  function __ (line 2894) | function __() { this.constructor = d; }
  function MessageData (line 2906) | function MessageData() {
  function __ (line 2934) | function __() { this.constructor = d; }
  function MetricData (line 2946) | function MetricData() {
  function __ (line 2975) | function __() { this.constructor = d; }
  function PageViewData (line 2987) | function PageViewData() {
  function __ (line 3016) | function __() { this.constructor = d; }
  function PageViewPerfData (line 3028) | function PageViewPerfData() {
  function __ (line 3057) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 3069) | function RemoteDependencyData() {
  function StackFrame (line 3129) | function StackFrame() {
  function RequestHeaders (line 3151) | function RequestHeaders() {
  function __ (line 3202) | function __() { this.constructor = d; }
  function Data (line 3214) | function Data(baseType, data) {
  function __ (line 3249) | function __() { this.constructor = d; }
  function DataPoint (line 3258) | function DataPoint() {
  function DataSanitizer (line 3294) | function DataSanitizer() {
  function __ (line 3447) | function __() { this.constructor = d; }
  function Envelope (line 3459) | function Envelope(logger, data, name) {
  function __ (line 3498) | function __() { this.constructor = d; }
  function Event (line 3510) | function Event(logger, name, properties, measurements) {
  function __ (line 3547) | function __() { this.constructor = d; }
  function Exception (line 3559) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 3598) | function _ExceptionDetails(logger, exception) {
  function _StackFrame (line 3666) | function _StackFrame(frame, level) {
  function __ (line 3720) | function __() { this.constructor = d; }
  function Metric (line 3732) | function Metric(logger, name, value, count, min, max, properties) {
  function __ (line 3773) | function __() { this.constructor = d; }
  function PageView (line 3785) | function PageView(logger, name, url, durationMs, properties, measurement...
  function __ (line 3830) | function __() { this.constructor = d; }
  function PageViewPerformance (line 3842) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function __ (line 4007) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 4019) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function __ (line 4081) | function __() { this.constructor = d; }
  function Trace (line 4093) | function Trace(logger, message, properties, severityLevel) {
  function TelemetryItemCreator (line 4131) | function TelemetryItemCreator() {
  function Util (line 4189) | function Util() {
  function UrlHelper (line 4653) | function UrlHelper() {
  function CorrelationIdHelper (line 4691) | function CorrelationIdHelper() {
  function AjaxHelper (line 4749) | function AjaxHelper() {
  function DateTimeUtils (line 4783) | function DateTimeUtils() {
  function AppInsightsCore (line 5032) | function AppInsightsCore() {
  function ChannelController (line 5233) | function ChannelController() {
  function CoreUtils (line 5315) | function CoreUtils() {
  function _InternalLogMessage (line 5352) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function DiagnosticLogger (line 5378) | function DiagnosticLogger(config) {
  function NotificationManager (line 5551) | function NotificationManager() {
  function AjaxMonitor (line 5651) | function AjaxMonitor() {
  function XHRMonitoringState (line 5924) | function XHRMonitoringState() {
  function ajaxRecord (line 5936) | function ajaxRecord(id, logger) {
  function stringUtils (line 6000) | function stringUtils() {
  function EventHelper (line 6021) | function EventHelper() {
  function Application (line 6095) | function Application() {
  function Device (line 6120) | function Device() {
  function Internal (line 6151) | function Internal(config) {
  function Location (line 6174) | function Location() {
  function Operation (line 6196) | function Operation() {
  function Sample (line 6222) | function Sample(sampleRate, logger) {
  function Session (line 6265) | function Session() {
  function _SessionManager (line 6271) | function _SessionManager(config, logger) {
  function User (line 6430) | function User(config, logger) {
  function HashCodeScoreGenerator (line 6545) | function HashCodeScoreGenerator() {
  function PropertiesPlugin (line 6596) | function PropertiesPlugin() {
  function SamplingScoreGenerator (line 6828) | function SamplingScoreGenerator() {

FILE: AISKU/dist-history/aisdk.0.0.19.js
  function __webpack_require__ (line 16) | function __webpack_require__(moduleId) {
  function Initialization (line 165) | function Initialization(snippet) {
  function ApplicationInsights (line 368) | function ApplicationInsights() {
  function Timing (line 717) | function Timing(logger, name) {
  function PageViewManager (line 763) | function PageViewManager(appInsights, overridePageViewDuration, core) {
  function __ (line 915) | function __() { this.constructor = d; }
  function EnvelopeCreator (line 983) | function EnvelopeCreator() {
  function DependencyEnvelopeCreator (line 1046) | function DependencyEnvelopeCreator() {
  function EventEnvelopeCreator (line 1079) | function EventEnvelopeCreator() {
  function ExceptionEnvelopeCreator (line 1104) | function ExceptionEnvelopeCreator() {
  function MetricEnvelopeCreator (line 1127) | function MetricEnvelopeCreator() {
  function PageViewEnvelopeCreator (line 1151) | function PageViewEnvelopeCreator() {
  function PageViewPerformanceEnvelopeCreator (line 1203) | function PageViewPerformanceEnvelopeCreator() {
  function TraceEnvelopeCreator (line 1227) | function TraceEnvelopeCreator() {
  function OfflineListener (line 1268) | function OfflineListener() {
  function ArraySendBuffer (line 1336) | function ArraySendBuffer(config) {
  function SessionStorageSendBuffer (line 1374) | function SessionStorageSendBuffer(logger, config) {
  function Sender (line 1512) | function Sender() {
  function Serializer (line 2006) | function Serializer(logger) {
  function EventValidator (line 2177) | function EventValidator() {
  function ExceptionValidator (line 2215) | function ExceptionValidator() {
  function MetricValidator (line 2265) | function MetricValidator() {
  function PageViewPerformanceValidator (line 2291) | function PageViewPerformanceValidator() {
  function PageViewValidator (line 2338) | function PageViewValidator() {
  function RemoteDepdencyValidator (line 2381) | function RemoteDepdencyValidator() {
  function TraceValidator (line 2428) | function TraceValidator() {
  function Base (line 2543) | function Base() {
  function ContextTagKeys (line 2566) | function ContextTagKeys() {
  function __ (line 2645) | function __() { this.constructor = d; }
  function Data (line 2657) | function Data() {
  function DataPoint (line 2683) | function DataPoint() {
  function Domain (line 2735) | function Domain() {
  function Envelope (line 2760) | function Envelope() {
  function __ (line 2787) | function __() { this.constructor = d; }
  function EventData (line 2799) | function EventData() {
  function __ (line 2828) | function __() { this.constructor = d; }
  function ExceptionData (line 2840) | function ExceptionData() {
  function ExceptionDetails (line 2871) | function ExceptionDetails() {
  function __ (line 2897) | function __() { this.constructor = d; }
  function MessageData (line 2909) | function MessageData() {
  function __ (line 2937) | function __() { this.constructor = d; }
  function MetricData (line 2949) | function MetricData() {
  function __ (line 2978) | function __() { this.constructor = d; }
  function PageViewData (line 2990) | function PageViewData() {
  function __ (line 3019) | function __() { this.constructor = d; }
  function PageViewPerfData (line 3031) | function PageViewPerfData() {
  function __ (line 3060) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 3072) | function RemoteDependencyData() {
  function StackFrame (line 3132) | function StackFrame() {
  function RequestHeaders (line 3154) | function RequestHeaders() {
  function __ (line 3205) | function __() { this.constructor = d; }
  function Data (line 3217) | function Data(baseType, data) {
  function __ (line 3252) | function __() { this.constructor = d; }
  function DataPoint (line 3261) | function DataPoint() {
  function DataSanitizer (line 3297) | function DataSanitizer() {
  function __ (line 3450) | function __() { this.constructor = d; }
  function Envelope (line 3462) | function Envelope(logger, data, name) {
  function __ (line 3501) | function __() { this.constructor = d; }
  function Event (line 3513) | function Event(logger, name, properties, measurements) {
  function __ (line 3550) | function __() { this.constructor = d; }
  function Exception (line 3562) | function Exception(logger, exception, properties, measurements, severity...
  function _ExceptionDetails (line 3601) | function _ExceptionDetails(logger, exception) {
  function _StackFrame (line 3669) | function _StackFrame(frame, level) {
  function __ (line 3723) | function __() { this.constructor = d; }
  function Metric (line 3735) | function Metric(logger, name, value, count, min, max, properties) {
  function __ (line 3776) | function __() { this.constructor = d; }
  function PageView (line 3788) | function PageView(logger, name, url, durationMs, properties, measurement...
  function __ (line 3833) | function __() { this.constructor = d; }
  function PageViewPerformance (line 3845) | function PageViewPerformance(logger, name, url, unused, properties, meas...
  function __ (line 4010) | function __() { this.constructor = d; }
  function RemoteDependencyData (line 4022) | function RemoteDependencyData(logger, id, absoluteUrl, commandName, valu...
  function __ (line 4084) | function __() { this.constructor = d; }
  function Trace (line 4096) | function Trace(logger, message, properties, severityLevel) {
  function TelemetryItemCreator (line 4134) | function TelemetryItemCreator() {
  function Util (line 4192) | function Util() {
  function UrlHelper (line 4656) | function UrlHelper() {
  function CorrelationIdHelper (line 4694) | function CorrelationIdHelper() {
  function AjaxHelper (line 4752) | function AjaxHelper() {
  function DateTimeUtils (line 4786) | function DateTimeUtils() {
  function AppInsightsCore (line 5035) | function AppInsightsCore() {
  function ChannelController (line 5236) | function ChannelController() {
  function CoreUtils (line 5318) | function CoreUtils() {
  function _InternalLogMessage (line 5355) | function _InternalLogMessage(msgId, msg, isUserAct, properties) {
  function DiagnosticLogger (line 5381) | function DiagnosticLogger(config) {
  function NotificationManager (line 5554) | function NotificationManager() {
  function AjaxMonitor (line 5654) | function AjaxMonitor() {
  function XHRMonitoringState (line 5927) | function XHRMonitoringState() {
  function ajaxRecord (line 5939) | function ajaxRecord(id, logger) {
  function stringUtils (line 6003) | function stringUtils() {
  function EventHelper (line 6024) | function EventHelper() {
  function Application (line 6098) | function Application() {
  function Device (line 6123) | function Device() {
  function Internal (line 6154) | function Internal(config) {
  function Location (line 6177) | function Location() {
  function Operation (line 6199) | function Operation() {
  function Sample (line 6225) | function Sample(sampleRate, logger) {
  function Session (line 6268) | function Session() {
  function _SessionManager (line 6274) | function _SessionManager(config, logger) {
  function User (line 6433) | function User(config, logger) {
  function HashCodeScoreGenerator (line 6548) | function HashCodeScoreGenerator() {
  function PropertiesPlugin (line 6599) | function PropertiesPlugin() {
  function SamplingScoreGenerator (line 6831) | function SamplingScoreGenerator() {

FILE: AISKU/dist-history/aisdk.0.0.8.js
  function n (line 1) | function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t,i,r,o){void 0===r&&(r=!1),this.messageId=t,this.message=(r?...
  function e (line 1) | function e(){}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function e (line 1) | function e(){}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){return e.call(this)||this}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){this.listeners=[]}
  function e (line 1) | function e(){this._trackAjaxAttempts=0,this.identifier=e.defaultIdentifi...
  function e (line 1) | function e(e){this._name=e,this._events={}}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,i,r){var o=e.call(this)||this;return o.aiDataContract={ve...
  function t (line 1) | function t(t){var n=e.call(this)||this;n.aiDataContract={id:s.FieldType....
  function t (line 1) | function t(n,i){var r=e.call(this)||this;r.sizeInBytes=0,r.aiDataContrac...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.exceptions=[],t.p...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n){var o=e.call(this)||this;return o.name=i.DataSanitizer.s...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o){var s=e.call(this)||this;return s.aiDataContract={ver:...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o,l,c,u){var p=e.call(this)||this;p.aiDataContract={ver:r...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.metrics=[],t.prop...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.aiDa...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o,s,l,c){var u=e.call(this)||this;return u.aiDataContract...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,o,s,l,c,u,p,d,f){var g=e.call(this)||this;g.aiDataContract=...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.success=!0,t.prop...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o){var s=e.call(this)||this;return s.aiDataContract={ver:...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(n,o,l,c,u){var p=e.call(this)||this;p.aiDataContract={ver:i.F...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n){var r=e.call(this)||this;return r.aiDataContract={baseTy...
  function e (line 1) | function e(){this._extensions=new Array}
  function e (line 1) | function e(){this.priority=200,this._XMLHttpRequestSupported=!1}
  function e (line 1) | function e(){}
  function e (line 1) | function e(e){this._config=e,this._buffer=[]}
  function e (line 1) | function e(t){this._bufferFullMessageSent=!1,this._config=t;var n=this.g...
  function i (line 1) | function i(){this.constructor=t}
  function e (line 1) | function e(){}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(e,t,n){this.pageViewPerformanceSent=!1,this.overridePageViewD...
  function e (line 1) | function e(e,t){this._config=e,this._core=t,this._telemetryInitializers=...
  function e (line 1) | function e(e){this.INT_MAX_VALUE=2147483647,(e>100||e<0)&&(i._InternalLo...
  function e (line 1) | function e(){this.hashCodeGeneragor=new n.HashCodeScoreGenerator}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t){var i=n.Util.getCookie(e.userCookieName);if(i){var r=i.spl...
  function e (line 1) | function e(t){t||(t={}),"function"!=typeof t.sessionExpirationMs&&(t.ses...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t){t.queue=t.queue||[];var n=t.config||{};n&&!n.instrumentati...

FILE: AISKU/dist-history/aisdk.min.0.0.8.js
  function n (line 1) | function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t,i,r,o){void 0===r&&(r=!1),this.messageId=t,this.message=(r?...
  function e (line 1) | function e(){}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function e (line 1) | function e(){}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){return e.call(this)||this}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){this.listeners=[]}
  function e (line 1) | function e(){this._trackAjaxAttempts=0,this.identifier=e.defaultIdentifi...
  function e (line 1) | function e(e){this._name=e,this._events={}}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,i,r){var o=e.call(this)||this;return o.aiDataContract={ve...
  function t (line 1) | function t(t){var n=e.call(this)||this;n.aiDataContract={id:s.FieldType....
  function t (line 1) | function t(n,i){var r=e.call(this)||this;r.sizeInBytes=0,r.aiDataContrac...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.exceptions=[],t.p...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n){var o=e.call(this)||this;return o.name=i.DataSanitizer.s...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o){var s=e.call(this)||this;return s.aiDataContract={ver:...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o,l,c,u){var p=e.call(this)||this;p.aiDataContract={ver:r...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.metrics=[],t.prop...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.aiDa...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o,s,l,c){var u=e.call(this)||this;return u.aiDataContract...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,o,s,l,c,u,p,d,f){var g=e.call(this)||this;g.aiDataContract=...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.success=!0,t.prop...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o){var s=e.call(this)||this;return s.aiDataContract={ver:...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(n,o,l,c,u){var p=e.call(this)||this;p.aiDataContract={ver:i.F...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n){var r=e.call(this)||this;return r.aiDataContract={baseTy...
  function e (line 1) | function e(){this._extensions=new Array}
  function e (line 1) | function e(){this.priority=200,this._XMLHttpRequestSupported=!1}
  function e (line 1) | function e(){}
  function e (line 1) | function e(e){this._config=e,this._buffer=[]}
  function e (line 1) | function e(t){this._bufferFullMessageSent=!1,this._config=t;var n=this.g...
  function i (line 1) | function i(){this.constructor=t}
  function e (line 1) | function e(){}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(e,t,n){this.pageViewPerformanceSent=!1,this.overridePageViewD...
  function e (line 1) | function e(e,t){this._config=e,this._core=t,this._telemetryInitializers=...
  function e (line 1) | function e(e){this.INT_MAX_VALUE=2147483647,(e>100||e<0)&&(i._InternalLo...
  function e (line 1) | function e(){this.hashCodeGeneragor=new n.HashCodeScoreGenerator}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t){var i=n.Util.getCookie(e.userCookieName);if(i){var r=i.spl...
  function e (line 1) | function e(t){t||(t={}),"function"!=typeof t.sessionExpirationMs&&(t.ses...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t){t.queue=t.queue||[];var n=t.config||{};n&&!n.instrumentati...

FILE: AISKU/dist-history/aisdk.min.0.0.9.js
  function n (line 1) | function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t,i,r,o){void 0===r&&(r=!1),this.messageId=t,this.message=(r?...
  function e (line 1) | function e(){}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function e (line 1) | function e(){}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){return e.call(this)||this}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function e (line 1) | function e(){this._trackAjaxAttempts=0,this.identifier=e.defaultIdentifi...
  function e (line 1) | function e(e){this._name=e,this._events={}}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){this.listeners=[]}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,i,r){var o=e.call(this)||this;return o.aiDataContract={ve...
  function t (line 1) | function t(t){var n=e.call(this)||this;n.aiDataContract={id:s.FieldType....
  function t (line 1) | function t(n,i){var r=e.call(this)||this;r.sizeInBytes=0,r.aiDataContrac...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.exceptions=[],t.p...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n){var o=e.call(this)||this;return o.name=i.DataSanitizer.s...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o){var s=e.call(this)||this;return s.aiDataContract={ver:...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o,l,c,u){var p=e.call(this)||this;p.aiDataContract={ver:r...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.metrics=[],t.prop...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.aiDa...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o,s,l,c){var u=e.call(this)||this;return u.aiDataContract...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,o,s,l,c,u,p,d,f){var g=e.call(this)||this;g.aiDataContract=...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.success=!0,t.prop...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n,o){var s=e.call(this)||this;return s.aiDataContract={ver:...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t}
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(n,o,l,c,u){var p=e.call(this)||this;p.aiDataContract={ver:i.F...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(){var t=e.call(this)||this;return t.ver=2,t.properties={},t.m...
  function i (line 1) | function i(){this.constructor=t}
  function t (line 1) | function t(t,n){var r=e.call(this)||this;return r.aiDataContract={baseTy...
  function e (line 1) | function e(e,t,n){this.pageViewPerformanceSent=!1,this.overridePageViewD...
  function e (line 1) | function e(){this._extensions=new Array}
  function e (line 1) | function e(e,t){this._config=e,this._core=t,this._telemetryInitializers=...
  function e (line 1) | function e(e){this.INT_MAX_VALUE=2147483647,(e>100||e<0)&&(i._InternalLo...
  function e (line 1) | function e(){this.hashCodeGeneragor=new n.HashCodeScoreGenerator}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t){var i=n.Util.getCookie(e.userCookieName);if(i){var r=i.spl...
  function e (line 1) | function e(t){t||(t={}),"function"!=typeof t.sessionExpirationMs&&(t.ses...
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(t){t.queue=t.queue||[];var n=t.config||{};n&&!n.instrumentati...
  function e (line 1) | function e(){this.priority=200,this._XMLHttpRequestSupported=!1}
  function e (line 1) | function e(){}
  function e (line 1) | function e(e){this._config=e,this._buffer=[]}
  function e (line 1) | function e(t){this._bufferFullMessageSent=!1,this._config=t;var n=this.g...
  function i (line 1) | function i(){this.constructor=t}
  function e (line 1) | function e(){}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function t (line 1) | function t(){return null!==e&&e.apply(this,arguments)||this}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}
  function e (line 1) | function e(){}

FILE: AISKU/examples/span-usage-example.ts
  function exampleSpanUsage (line 20) | function exampleSpanUsage() {
  function checkTraceProviderAvailability (line 58) | function checkTraceProviderAvailability() {

FILE: AISKU/snippet/snippet.js
  function _parseConnectionString (line 34) | function _parseConnectionString() {
  function _sendEvents (line 60) | function _sendEvents(evts, endpointUrl) {
  function _reportFailure (line 75) | function _reportFailure(targetSrc) {
  function _getTime (line 90) | function _getTime() {
  function _createEnvelope (line 111) | function _createEnvelope(iKey, theType) {
  function _createInternal (line 133) | function _createInternal(iKey, message, targetSrc, endpointUrl) {
  function _createException (line 146) | function _createException(iKey, message, targetSrc, endpointUrl) {
  function _handleError (line 164) | function _handleError(evt) {
  function _handleLoad (line 173) | function _handleLoad(evt, isAbort) {
  function _createScript (line 185) | function _createScript() {
  function _createMethods (line 226) | function _createMethods(methods) {
  function _onInit (line 305) | function _onInit() {

FILE: AISKU/src/AISku.ts
  constant STR_DEPENDENCIES (line 45) | const STR_DEPENDENCIES = "dependencies";
  constant STR_PROPERTIES (line 46) | const STR_PROPERTIES = "properties";
  constant STR_SNIPPET_VERSION (line 47) | const STR_SNIPPET_VERSION = "_snippetVersion";
  constant STR_APP_INSIGHTS_NEW (line 48) | const STR_APP_INSIGHTS_NEW = "appInsightsNew";
  constant STR_GET_SKU_DEFAULTS (line 49) | const STR_GET_SKU_DEFAULTS = "getSKUDefaults";
  constant IKEY_USAGE (line 63) | const IKEY_USAGE = "iKeyUsage";
  constant CDN_USAGE (line 64) | const CDN_USAGE = "CdnUsage";
  constant SDK_LOADER_VER (line 65) | const SDK_LOADER_VER = "SdkLoaderVer";
  constant ZIP_PAYLOAD (line 66) | const ZIP_PAYLOAD = "zipPayload";
  function _chkDiagLevel (line 114) | function _chkDiagLevel(value: number) {
  function _parseCs (line 119) | function _parseCs(config: IConfiguration & IConfig, configCs: string | I...
  function _initOTel (line 136) | function _initOTel(sku: AppInsightsSku, traceName: string, onEnd: (span:...
  class AppInsightsSku (line 154) | class AppInsightsSku implements IApplicationInsights<IConfiguration & IC...
    method constructor (line 182) | constructor(snippet: Snippet) {
    method getCookieMgr (line 735) | public getCookieMgr(): ICookieMgr {
    method trackEvent (line 745) | public trackEvent(event: IEventTelemetry, customProperties?: ICustomPr...
    method trackPageView (line 753) | public trackPageView(pageView?: IPageViewTelemetry) {
    method trackPageViewPerformance (line 761) | public trackPageViewPerformance(pageViewPerformance: IPageViewPerforma...
    method trackException (line 770) | public trackException(exception: IExceptionTelemetry, customProperties...
    method _onerror (line 779) | public _onerror(exception: IAutoExceptionTelemetry): void {
    method trackTrace (line 788) | public trackTrace(trace: ITraceTelemetry, customProperties?: ICustomPr...
    method trackMetric (line 805) | public trackMetric(metric: IMetricTelemetry, customProperties?: ICusto...
    method startTrackPage (line 814) | public startTrackPage(name?: string): void {
    method stopTrackPage (line 826) | public stopTrackPage(name?: string, url?: string, properties?: { [key:...
    method startTrackEvent (line 830) | public startTrackEvent(name?: string): void {
    method stopTrackEvent (line 840) | public stopTrackEvent(name: string, properties?: { [key: string]: stri...
    method addTelemetryInitializer (line 844) | public addTelemetryInitializer(telemetryInitializer: (item: ITelemetry...
    method setAuthenticatedUserContext (line 859) | public setAuthenticatedUserContext(authenticatedUserId: string, accoun...
    method clearAuthenticatedUserContext (line 866) | public clearAuthenticatedUserContext(): void {
    method trackDependencyData (line 876) | public trackDependencyData(dependency: IDependencyTelemetry): void {
    method flush (line 896) | public flush(async?: boolean, callBack?: () => void): void | IPromise<...
    method onunloadFlush (line 905) | public onunloadFlush(async: boolean = true) {
    method loadAppInsights (
Copy disabled (too large) Download .json
Condensed preview — 1088 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (22,169K chars).
[
  {
    "path": ".aiAutoMinify.json",
    "chars": 3932,
    "preview": "{\n    \"pkgs\": {\n        \"@microsoft/applicationinsights-core-js\": {\n            \"constEnums\": [\n                \"_eSetDy"
  },
  {
    "path": ".eslintrc",
    "chars": 2262,
    "preview": "{\n    \"env\": {\n        \"browser\": true,\n        \"es2021\": true\n    },\n    \"plugins\": [\n        \"security\"\n    ],\n    \"ex"
  },
  {
    "path": ".gitattributes",
    "chars": 2783,
    "preview": "###############################################################################\n# Set default behavior to automatically "
  },
  {
    "path": ".github/CODEOWNERS",
    "chars": 151,
    "preview": "* @microsoft/ApplicationInsights-JS-owners\n* @microsoft/ApplicationInsights-JS-CodeOwners\n/.github/CODEOWNERS @microsoft"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "chars": 316,
    "preview": "---\nname: Bug report\nabout: Create a new bug report\ntitle: \"[BUG]\"\nlabels: ''\nassignees: ''\n\n---\n\n**Description/Screensh"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "chars": 595,
    "preview": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: ''\nlabels: ''\nassignees: ''\n\n---\n\n**Is your fea"
  },
  {
    "path": ".github/codeql/codeql-config.yml",
    "chars": 363,
    "preview": "name: \"CodeQL config\"\n\nqueries:\n  - uses: security-and-quality\n\npaths-ignore:\n  - '**/test/'\n  - '**/Tests/'\n  - '**/dis"
  },
  {
    "path": ".github/copilot-instructions.md",
    "chars": 20348,
    "preview": "# GitHub Copilot Instructions for Application Insights JavaScript SDK\n\n## Workflow Prompts\n\nDetailed step-by-step workfl"
  },
  {
    "path": ".github/prompts/release-pr.prompt.md",
    "chars": 7805,
    "preview": "---\ndescription: \"Create a release PR: bump version, update READMEs, RELEASES.md, gruntfile, and commit\"\nagent: \"agent\"\n"
  },
  {
    "path": ".github/workflows/ci.yml",
    "chars": 1328,
    "preview": "# This workflow will do a clean install of node dependencies, build the source code and run tests across different versi"
  },
  {
    "path": ".github/workflows/codeql-analysis.yml",
    "chars": 4237,
    "preview": "# For most projects, this workflow file will not need changing; you simply need\n# to commit it to your repository.\n#\n# Y"
  },
  {
    "path": ".github/workflows/delete-merged-branches.yml",
    "chars": 6172,
    "preview": "---\nname: 'Delete Merged Branches'\n\n# This workflow automatically deletes branches that are associated with\n# closed or "
  },
  {
    "path": ".github/workflows/jekyll-gh-pages.yml",
    "chars": 2168,
    "preview": "# Sample workflow for building and deploying a Jekyll site to GitHub Pages\nname: Deploy Jekyll with GitHub Pages depende"
  },
  {
    "path": ".github/workflows/lock.yml",
    "chars": 532,
    "preview": "name: 'Lock Threads'\n\non:\n  schedule:\n    - cron: '0 0 * * *'\n\npermissions:\n  actions: write\n  issues: write\n  pull-requ"
  },
  {
    "path": ".github/workflows/stale-assigned.yml",
    "chars": 963,
    "preview": "name: 'Stale issue handler'\non:\n  workflow_dispatch:\n  schedule:\n    - cron: '0 7 * * *'\n\npermissions:\n  actions: write\n"
  },
  {
    "path": ".github/workflows/stale.yml",
    "chars": 2642,
    "preview": "name: 'Stale issue handler'\non:\n  workflow_dispatch:\n  schedule:\n    - cron: '0 7 * * *'\n\npermissions:\n  actions: write\n"
  },
  {
    "path": ".gitignore",
    "chars": 3918,
    "preview": "## Ignore Visual Studio temporary files, build results, and\n## files generated by popular Visual Studio add-ons.\n\n# Use"
  },
  {
    "path": ".npmignore",
    "chars": 303,
    "preview": "# NPM Ignore\n\n# ignore everything\n*\n\n# ... but these files\n!/package.json\n!/CODE_OF_CONDUCT.md\n!/CONTRIBUTING.md\n!/READM"
  },
  {
    "path": ".travis/test_react_native.sh",
    "chars": 456,
    "preview": "cd extensions/applicationinsights-react-native\n\necho -en 'travis_fold:end:change\\\\r'\necho 'Checking for inconsistent dep"
  },
  {
    "path": ".travis/test_rush.sh",
    "chars": 1088,
    "preview": "set -e\nset NO_UPDATE_NOTIFIER=1\n# echo 'Checking for missing change logs...' && echo -en 'travis_fold:start:change\\\\r'\n#"
  },
  {
    "path": "AISKU/.npmignore",
    "chars": 253,
    "preview": "# NPM Ignore\n\n# ignore everything\n*\n\n# ... but these files\n!package.json\n!tsconfig.json\n!/CODE_OF_CONDUCT.md\n!/CONTRIBUT"
  },
  {
    "path": "AISKU/API.md",
    "chars": 23388,
    "preview": "### trackPageView\n\n```ts\napplicationInsights.trackPageView(pageView: IPageViewTelemetry, customProperties?: { [key: stri"
  },
  {
    "path": "AISKU/LICENSE",
    "chars": 1083,
    "preview": "The MIT License (MIT)\n\nCopyright (c) Microsoft Corporation\n\nPermission is hereby granted, free of charge, to any person "
  },
  {
    "path": "AISKU/NOTICE",
    "chars": 614,
    "preview": "NOTICES AND INFORMATION\nDo Not Translate or Localize\n\nThis software incorporates material from third parties. Microsoft "
  },
  {
    "path": "AISKU/PRIVACY",
    "chars": 850,
    "preview": "# Data Collection\n\nThe software may collect information about you and your use of the software and send it to Microsoft."
  },
  {
    "path": "AISKU/README.md",
    "chars": 27955,
    "preview": "<properties\n\tpageTitle=\"Application Insights JavaScript SDK - AISKU\"\n\tdescription=\"Reference doc\"\n\tservices=\"application"
  },
  {
    "path": "AISKU/Tests/Manual/HelloWorld.html",
    "chars": 19919,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"utf-8\" />\n    <meta name=\"viewport\" content=\"width=device-wid"
  },
  {
    "path": "AISKU/Tests/Manual/README.md",
    "chars": 8144,
    "preview": "# Span API End-to-End (E2E) Tests\n\nThis directory contains end-to-end tests for the new Span APIs that send real telemet"
  },
  {
    "path": "AISKU/Tests/Manual/ai1.test.js",
    "chars": 96705,
    "preview": "\"use strict\";var AI,Microsoft,__extends=this&&this.__extends||function(){var i=Object.setPrototypeOf||{__proto__:[]}inst"
  },
  {
    "path": "AISKU/Tests/Manual/ai2.test.js",
    "chars": 455749,
    "preview": "/*!\n * Application Insights JavaScript SDK - Web, 2.8.14\n * Copyright (c) Microsoft and contributors. All rights reserve"
  },
  {
    "path": "AISKU/Tests/Manual/ai3.test.js",
    "chars": 545282,
    "preview": "/*!\n * Application Insights JavaScript SDK - Web, 3.0.6\n * Copyright (c) Microsoft and contributors. All rights reserved"
  },
  {
    "path": "AISKU/Tests/Manual/aisku-example-index.gbl.js",
    "chars": 547008,
    "preview": "/*!\n * Application Insights JavaScript SDK Example - AISKU, 3.0.2\n * Copyright (c) Microsoft and contributors. All right"
  },
  {
    "path": "AISKU/Tests/Manual/latestSnippet.html",
    "chars": 7955,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"utf-8\" />\n    <meta name=\"viewport\" content=\"width=device-wid"
  },
  {
    "path": "AISKU/Tests/Manual/span-e2e-manual-test.html",
    "chars": 30815,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width"
  },
  {
    "path": "AISKU/Tests/Manual/style/style.css",
    "chars": 1192,
    "preview": "body {\n    margin: 0;\n}\n\nh1 {\n    font-size: 1.875rem;\n    margin: 0.67rem 0;\n}\n\nh2 {\n    font-size: 1.5rem;\n    margin:"
  },
  {
    "path": "AISKU/Tests/Manual/testVersionConflict.html",
    "chars": 7292,
    "preview": "<!DOCTYPE html>\n\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n<html lang=\"en\">\n  <head>\n    <m"
  },
  {
    "path": "AISKU/Tests/Perf/src/AISKUPerf.Tests.ts",
    "chars": 14919,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { AppInsightsInitPerfTestClass } from \"./AISK"
  },
  {
    "path": "AISKU/Tests/Perf/src/AISKUPerf.ts",
    "chars": 1434,
    "preview": "export class AppInsightsInitPerfTestClass {\n\n    public version: string;\n    public perfEventsBuffer: any[];\n    public "
  },
  {
    "path": "AISKU/Tests/Perf/src/aiskuperftests.ts",
    "chars": 115,
    "preview": "import { AISKUPerf } from \"./AISKUPerf.Tests\";\n\nexport function runTests() {\n    new AISKUPerf().registerTests();\n}"
  },
  {
    "path": "AISKU/Tests/PerfTests.html",
    "chars": 5721,
    "preview": "<!DOCTYPE html>\n<html>\n\n<head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"Cache-control\" content=\"no-Cache\" />\n  "
  },
  {
    "path": "AISKU/Tests/Unit/src/AISKUSize.Tests.ts",
    "chars": 5783,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { dumpObj } from '@nevware21/ts-utils';\nimpor"
  },
  {
    "path": "AISKU/Tests/Unit/src/CdnPackaging.tests.ts",
    "chars": 23569,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { \n    AnalyticsPluginIdentifier, BreezeChann"
  },
  {
    "path": "AISKU/Tests/Unit/src/CdnThrottle.tests.ts",
    "chars": 19911,
    "preview": "import { ApplicationInsights, ApplicationInsightsContainer, IApplicationInsights, IConfig, IConfiguration, LoggingSeveri"
  },
  {
    "path": "AISKU/Tests/Unit/src/GlobalTestHooks.Test.ts",
    "chars": 496,
    "preview": "import { Assert } from \"@microsoft/ai-test-framework\";\nimport { _testHookMaxUnloadHooksCb } from \"@microsoft/application"
  },
  {
    "path": "AISKU/Tests/Unit/src/IAnalyticsConfig.Tests.ts",
    "chars": 4721,
    "preview": "import { ApplicationInsights, IAnalyticsConfig, IAppInsights, IConfig, ApplicationAnalytics } from \"../../../src/applica"
  },
  {
    "path": "AISKU/Tests/Unit/src/NonRecordingSpan.Tests.ts",
    "chars": 29508,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/OTelInit.Tests.ts",
    "chars": 5559,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SnippetInitialization.Tests.ts",
    "chars": 55652,
    "preview": "import { ApplicationInsightsContainer } from \"../../../src/ApplicationInsightsContainer\";\nimport { IApplicationInsights "
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanContextPropagation.Tests.ts",
    "chars": 31154,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanE2E.Tests.ts",
    "chars": 30589,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanErrorHandling.Tests.ts",
    "chars": 27468,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanHelperUtils.Tests.ts",
    "chars": 37667,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanLifeCycle.Tests.ts",
    "chars": 23246,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanPluginIntegration.Tests.ts",
    "chars": 41461,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/SpanUtils.Tests.ts",
    "chars": 76321,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights, IDependencyTelemetry }"
  },
  {
    "path": "AISKU/Tests/Unit/src/StartSpan.Tests.ts",
    "chars": 13359,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/TelemetryItemGeneration.Tests.ts",
    "chars": 33559,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/ThrottleSentMessage.tests.ts",
    "chars": 12830,
    "preview": "import { ApplicationInsights, ApplicationInsightsContainer, IApplicationInsights, IConfig, IConfiguration, LoggingSeveri"
  },
  {
    "path": "AISKU/Tests/Unit/src/TraceContext.Tests.ts",
    "chars": 32256,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/TraceProvider.Tests.ts",
    "chars": 27337,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/TraceSuppression.Tests.ts",
    "chars": 32628,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/UseSpan.Tests.ts",
    "chars": 54076,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { ApplicationInsights } from \"../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/WithSpan.Tests.ts",
    "chars": 50815,
    "preview": "import { AITestClass, Assert } from '@microsoft/ai-test-framework';\nimport { ApplicationInsights } from '../../../src/ap"
  },
  {
    "path": "AISKU/Tests/Unit/src/aiskuunittests.ts",
    "chars": 3134,
    "preview": "import { AISKUSizeCheck } from \"./AISKUSize.Tests\";\nimport { ApplicationInsightsTests } from \"./applicationinsights.e2e."
  },
  {
    "path": "AISKU/Tests/Unit/src/applicationinsights.e2e.fetch.tests.ts",
    "chars": 1827,
    "preview": "import { DistributedTracingModes, IConfig } from '@microsoft/applicationinsights-core-js';\nimport { ApplicationInsightsT"
  },
  {
    "path": "AISKU/Tests/Unit/src/applicationinsights.e2e.tests.ts",
    "chars": 108272,
    "preview": "import { AITestClass, Assert, PollingAssert, EventValidator, TraceValidator, ExceptionValidator, MetricValidator, PageVi"
  },
  {
    "path": "AISKU/Tests/Unit/src/sanitizer.e2e.tests.ts",
    "chars": 8826,
    "preview": "import { ApplicationInsights, IApplicationInsights, LoggingSeverity, _eInternalMessageId } from '../../../src/applicatio"
  },
  {
    "path": "AISKU/Tests/Unit/src/sender.e2e.tests.ts",
    "chars": 11457,
    "preview": "import { ApplicationInsights, IApplicationInsights } from '../../../src/applicationinsights-web'\nimport { Sender } from "
  },
  {
    "path": "AISKU/Tests/Unit/src/testLegacySnippet.ts",
    "chars": 3106,
    "preview": "\n/**\n * DO NOT FIX BUGS WITH THE OBJECT RETURNED BY THIS HELPER\n * -----------------------------------------------------"
  },
  {
    "path": "AISKU/Tests/Unit/src/testSnippetV5.ts",
    "chars": 14228,
    "preview": "\n\n/**\n * DO NOT FIX BUGS WITH THE OBJECT RETURNED BY THIS HELPER\n * ----------------------------------------------------"
  },
  {
    "path": "AISKU/Tests/Unit/src/testSnippetV6.ts",
    "chars": 14450,
    "preview": "\n\n/**\n * DO NOT FIX BUGS WITH THE OBJECT RETURNED BY THIS HELPER\n * ----------------------------------------------------"
  },
  {
    "path": "AISKU/Tests/Unit/src/validate.e2e.tests.ts",
    "chars": 8426,
    "preview": "import { ApplicationInsights, IApplicationInsights } from '../../../src/applicationinsights-web'\nimport { Sender } from "
  },
  {
    "path": "AISKU/Tests/UnitTests.html",
    "chars": 1726,
    "preview": "<!DOCTYPE html>\n<html>\n\n<head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"Cache-control\" content=\"no-Cache\" />\n  "
  },
  {
    "path": "AISKU/Tests/es6-module-type-check/package.json",
    "chars": 1259,
    "preview": "{\n    \"name\": \"@microsoft/applicationinsights-test-module-type-check\",\n    \"author\": \"Microsoft Application Insights Tea"
  },
  {
    "path": "AISKU/Tests/es6-module-type-check/src/main.ts",
    "chars": 141,
    "preview": "import { ContextTagKeys } from \"@microsoft/applicationinsights-core-js\";\nimport { ITelemetryItem } from \"@microsoft/appl"
  },
  {
    "path": "AISKU/Tests/es6-module-type-check/tsconfig.json",
    "chars": 394,
    "preview": "{\n    \"compilerOptions\": {\n      \"module\": \"commonjs\",\n      \"target\": \"es6\",\n      \"lib\": [\"es2015\", \"dom\"],\n      \"out"
  },
  {
    "path": "AISKU/Tests/tsconfig.json",
    "chars": 286,
    "preview": "{\n    \"compilerOptions\": {\n        \"sourceMap\": true,\n        \"inlineSources\": true,\n        \"noImplicitAny\": false,\n   "
  },
  {
    "path": "AISKU/api-extractor.json",
    "chars": 14602,
    "preview": "/**\n * Config file for API Extractor.  For more info, please visit: https://api-extractor.com\n */\n {\n    \"$schema\": \"htt"
  },
  {
    "path": "AISKU/dist-history/aisdk.0.0.13.js",
    "chars": 379767,
    "preview": "(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object"
  },
  {
    "path": "AISKU/dist-history/aisdk.0.0.15.js",
    "chars": 380420,
    "preview": "(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object"
  },
  {
    "path": "AISKU/dist-history/aisdk.0.0.17.js",
    "chars": 384333,
    "preview": "(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object"
  },
  {
    "path": "AISKU/dist-history/aisdk.0.0.18.js",
    "chars": 384957,
    "preview": "(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object"
  },
  {
    "path": "AISKU/dist-history/aisdk.0.0.19.js",
    "chars": 385166,
    "preview": "(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object"
  },
  {
    "path": "AISKU/dist-history/aisdk.0.0.8.js",
    "chars": 102751,
    "preview": "!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define"
  },
  {
    "path": "AISKU/dist-history/aisdk.min.0.0.8.js",
    "chars": 102750,
    "preview": "!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define"
  },
  {
    "path": "AISKU/dist-history/aisdk.min.0.0.9.js",
    "chars": 102596,
    "preview": "!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define"
  },
  {
    "path": "AISKU/examples/span-usage-example.ts",
    "chars": 1989,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\n/**\n * Example showing "
  },
  {
    "path": "AISKU/package.json",
    "chars": 3228,
    "preview": "{\n    \"name\": \"@microsoft/applicationinsights-web\",\n    \"version\": \"3.4.1\",\n    \"description\": \"Microsoft Application In"
  },
  {
    "path": "AISKU/rollup.config.js",
    "chars": 1069,
    "preview": "import { createConfig } from \"../rollup.base.config\";\nimport { updateDistEsmFiles } from \"../tools/updateDistEsm/updateD"
  },
  {
    "path": "AISKU/samples/HelloWorld/index-snippet.html",
    "chars": 5497,
    "preview": "<!DOCTYPE html>\n<html>\n  <head>\n    <title>Hello World!</title>\n\n    <!-- import Application Insights JS SDK from CDN --"
  },
  {
    "path": "AISKU/scripts/README.md",
    "chars": 30402,
    "preview": "# Application Insights JavaScript SDK deployment scripts\n\n<properties\n    pageTitle=\"Application Insights SDK JavaScript"
  },
  {
    "path": "AISKU/scripts/listAzCdnVersions.ps1",
    "chars": 5464,
    "preview": "param (\n    [string] $container = $null,                        # Identify the container that you want to check blank =="
  },
  {
    "path": "AISKU/scripts/publishAzImgToCdn.ps1",
    "chars": 5392,
    "preview": "param (\n    [string] $releaseFrom = $null,                      # The root path for where to find the files to be releas"
  },
  {
    "path": "AISKU/scripts/publishAzReleaseToCdn.ps1",
    "chars": 6984,
    "preview": "param (\n    [string] $releaseFrom = $null,                      # The root path for where to find the files to be releas"
  },
  {
    "path": "AISKU/scripts/setAzActiveCdnVersion.ps1",
    "chars": 7307,
    "preview": "[CmdletBinding()]\nparam (\n    [string] $container = \"\",                           # The container to update\n    [string]"
  },
  {
    "path": "AISKU/snippet/README.md",
    "chars": 9558,
    "preview": "<properties\n\tpageTitle=\"Application Insights JavaScript SDK - Snippets\"\n\tdescription=\"Reference doc\"\n\tservices=\"applicat"
  },
  {
    "path": "AISKU/snippet/snippet.js",
    "chars": 14445,
    "preview": "(function (win, doc, snipConfig) {\n    var locn = win.location;\n    var helpLink = \"https://go.microsoft.com/fwlink/?li"
  },
  {
    "path": "AISKU/src/AISku.ts",
    "chars": 56875,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\"use strict\";\n\nimport dy"
  },
  {
    "path": "AISKU/src/ApplicationInsightsContainer.ts",
    "chars": 1101,
    "preview": "import { throwUnsupported } from \"@nevware21/ts-utils\";\nimport { AppInsightsSku } from \"./AISku\";\nimport { IApplicationI"
  },
  {
    "path": "AISKU/src/IApplicationInsights.ts",
    "chars": 6542,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\nimport { AnalyticsPlugin"
  },
  {
    "path": "AISKU/src/Init.ts",
    "chars": 6004,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\nimport { strUndefined }"
  },
  {
    "path": "AISKU/src/InternalConstants.ts",
    "chars": 2464,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\n// ####################"
  },
  {
    "path": "AISKU/src/Snippet.ts",
    "chars": 375,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\"use strict\";\n\nimport { "
  },
  {
    "path": "AISKU/src/applicationinsights-web.ts",
    "chars": 2359,
    "preview": "export { Snippet } from \"./Snippet\";\nexport { IApplicationInsights } from \"./IApplicationInsights\";\nexport { AppInsights"
  },
  {
    "path": "AISKU/src/internal/trace/spanUtils.ts",
    "chars": 21158,
    "preview": "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n    ATTR_CLIENT_ADDRESS, ATTR_CLIEN"
  },
  {
    "path": "AISKU/tsconfig.json",
    "chars": 638,
    "preview": "{\n  \"compilerOptions\": {\n    \"sourceMap\": true,\n    \"inlineSources\": true,\n    \"noImplicitAny\": true,\n    \"module\": \"es6"
  },
  {
    "path": "AISKU/tsdoc.json",
    "chars": 131,
    "preview": "{\n    \"$schema\": \"https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json\",\n    \"extends\": [\"../tsdoc.js"
  },
  {
    "path": "AISKU/tslint.json",
    "chars": 57,
    "preview": "{\n    \"extends\": [\n        \"../tslint-base.json\"\n    ]\n}\n"
  },
  {
    "path": "AISKU/typedoc.json",
    "chars": 1854,
    "preview": "{\n    \"$schema\": \"https://typedoc.org/schema.json\",\n    \"entryPoints\": [ \"./src/Init.ts\" ],\n    \"exclude\": [ \"**/interna"
  },
  {
    "path": "AISKULight/.npmignore",
    "chars": 254,
    "preview": "# NPM Ignore\n\n# ignore everything\n*\n\n# ... but these files\n!package.json\n!tsconfig.json\n!/CODE_OF_CONDUCT.md\n!/CONTRIBUT"
  },
  {
    "path": "AISKULight/LICENSE",
    "chars": 1083,
    "preview": "The MIT License (MIT)\n\nCopyright (c) Microsoft Corporation\n\nPermission is hereby granted, free of charge, to any person "
  },
  {
    "path": "AISKULight/NOTICE",
    "chars": 614,
    "preview": "NOTICES AND INFORMATION\nDo Not Translate or Localize\n\nThis software incorporates material from third parties. Microsoft "
  },
  {
    "path": "AISKULight/PRIVACY",
    "chars": 850,
    "preview": "# Data Collection\n\nThe software may collect information about you and your use of the software and send it to Microsoft."
  },
  {
    "path": "AISKULight/README.md",
    "chars": 3977,
    "preview": "<properties\n\tpageTitle=\"Application Insights JavaScript SDK - AISKULight\"\n\tdescription=\"Reference doc\"\n\tservices=\"applic"
  },
  {
    "path": "AISKULight/Tests/Unit/src/AISKULightSize.Tests.ts",
    "chars": 4818,
    "preview": "import { AITestClass, Assert } from \"@microsoft/ai-test-framework\";\nimport { dumpObj } from '@nevware21/ts-utils';\nimpor"
  },
  {
    "path": "AISKULight/Tests/Unit/src/GlobalTestHooks.Test.ts",
    "chars": 496,
    "preview": "import { Assert } from \"@microsoft/ai-test-framework\";\nimport { _testHookMaxUnloadHooksCb } from \"@microsoft/application"
  },
  {
    "path": "AISKULight/Tests/Unit/src/aiskuliteunittests.ts",
    "chars": 631,
    "preview": "import { AISKULightSizeCheck } from \"./AISKULightSize.Tests\";\nimport { ApplicationInsightsDynamicConfigTests } from \"./d"
  },
  {
    "path": "AISKULight/Tests/Unit/src/config.tests.ts",
    "chars": 14173,
    "preview": "import { AITestClass, Assert, PollingAssert } from \"@microsoft/ai-test-framework\";\nimport { ITelemetryItem, newId } from"
  },
  {
    "path": "AISKULight/Tests/Unit/src/dynamicconfig.tests.ts",
    "chars": 11841,
    "preview": "import { AITestClass, Assert, PollingAssert } from \"@microsoft/ai-test-framework\";\nimport { IConfig } from \"@microsoft/a"
  },
  {
    "path": "AISKULight/Tests/Unit/src/otelNegative.tests.ts",
    "chars": 7843,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\nimport { AITestClass, A"
  },
  {
    "path": "AISKULight/Tests/UnitTests.html",
    "chars": 1631,
    "preview": "<!DOCTYPE html>\n<html>\n\n<head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"Cache-control\" content=\"no-Cache\" />\n   "
  },
  {
    "path": "AISKULight/Tests/tsconfig.json",
    "chars": 286,
    "preview": "{\n    \"compilerOptions\": {\n        \"sourceMap\": true,\n        \"inlineSources\": true,\n        \"noImplicitAny\": false,\n   "
  },
  {
    "path": "AISKULight/api-extractor.json",
    "chars": 14584,
    "preview": "/**\n * Config file for API Extractor.  For more info, please visit: https://api-extractor.com\n */\n {\n    \"$schema\": \"htt"
  },
  {
    "path": "AISKULight/build.cmd",
    "chars": 392,
    "preview": "REM rd /s /q node_modules\nREM del package-lock.json\n\nREM echo \"starting build\"\nREM npm install \nREM rd /s /q amd\\bundle\n"
  },
  {
    "path": "AISKULight/dist-history/aisdklight.js",
    "chars": 2278,
    "preview": "(function (global, factory) {\n    typeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n    typeof "
  },
  {
    "path": "AISKULight/dist-history/aisdklite.0.0.3.js",
    "chars": 263800,
    "preview": "(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object"
  },
  {
    "path": "AISKULight/package.json",
    "chars": 2741,
    "preview": "{\n    \"name\": \"@microsoft/applicationinsights-web-basic\",\n    \"version\": \"3.4.1\",\n    \"description\": \"Microsoft Applicat"
  },
  {
    "path": "AISKULight/rollup.config.js",
    "chars": 1048,
    "preview": "import { createConfig } from \"../rollup.base.config\";\nimport { updateDistEsmFiles } from \"../tools/updateDistEsm/updateD"
  },
  {
    "path": "AISKULight/src/index.ts",
    "chars": 12544,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\nimport dynamicProto fro"
  },
  {
    "path": "AISKULight/tsconfig.json",
    "chars": 635,
    "preview": "{\n  \"compilerOptions\": {\n    \"sourceMap\": true,\n    \"inlineSources\": true,\n    \"noImplicitAny\": true,\n    \"module\": \"es6"
  },
  {
    "path": "AISKULight/tsdoc.json",
    "chars": 131,
    "preview": "{\n    \"$schema\": \"https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json\",\n    \"extends\": [\"../tsdoc.js"
  },
  {
    "path": "AISKULight/tslint.json",
    "chars": 57,
    "preview": "{\n    \"extends\": [\n        \"../tslint-base.json\"\n    ]\n}\n"
  },
  {
    "path": "AISKULight/typedoc.json",
    "chars": 1872,
    "preview": "{\n    \"$schema\": \"https://typedoc.org/schema.json\",\n    \"entryPoints\": [ \"./src/index.ts\" ],\n    \"exclude\": [ \"**/intern"
  },
  {
    "path": "API-reference.md",
    "chars": 159,
    "preview": "# API Reference\n\nThis documentation has been moved to the [GitHub Pages documentation site](https://microsoft.github.io/"
  },
  {
    "path": "CODEOWNERS",
    "chars": 91,
    "preview": "* @microsoft/ApplicationInsights-JS-owners\n* @microsoft/ApplicationInsights-JS-CodeOwners\n\n"
  },
  {
    "path": "CODE_OF_CONDUCT.md",
    "chars": 444,
    "preview": "# Microsoft Open Source Code of Conduct\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://op"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 2844,
    "preview": "# Contributing\n\nThis project welcomes contributions and suggestions. Most contributions require you to\nagree to a Contri"
  },
  {
    "path": "LICENSE",
    "chars": 1083,
    "preview": "The MIT License (MIT)\n\nCopyright (c) Microsoft Corporation\n\nPermission is hereby granted, free of charge, to any person "
  },
  {
    "path": "NOTICE",
    "chars": 614,
    "preview": "NOTICES AND INFORMATION\nDo Not Translate or Localize\n\nThis software incorporates material from third parties. Microsoft "
  },
  {
    "path": "PRIVACY",
    "chars": 850,
    "preview": "# Data Collection\n\nThe software may collect information about you and your use of the software and send it to Microsoft."
  },
  {
    "path": "README.md",
    "chars": 101478,
    "preview": "# Application Insights JavaScript SDK\n\n<properties\n    pageTitle=\"Application Insights SDK JavaScript API\"\n    descripti"
  },
  {
    "path": "RELEASES.md",
    "chars": 112135,
    "preview": "# Releases\n\n> Note: ES3/IE8 compatibility will be removed in the future v3.x.x releases (scheduled for mid-late 2022), s"
  },
  {
    "path": "SECURITY.md",
    "chars": 2757,
    "preview": "<!-- BEGIN MICROSOFT SECURITY.MD V0.0.7 BLOCK -->\n\n## Security\n\nMicrosoft takes the security of our software products an"
  },
  {
    "path": "SUPPORT.md",
    "chars": 528,
    "preview": "# Support\n\n## How to file issues and get help  \n\nThis project uses GitHub Issues to track bugs and feature requests. Ple"
  },
  {
    "path": "ThirdPartyNotices.txt",
    "chars": 16967,
    "preview": "\nTHIRD-PARTY SOFTWARE NOTICES AND INFORMATION\nDo Not Translate or Localize\n\nThe Microsoft Application Insights SDK for J"
  },
  {
    "path": "TreeShakingRecommendations.md",
    "chars": 6623,
    "preview": "# Tree-Shaking Enhancements / Recommendations\n\nAs part of changes introduced in version 2.6.0 we are deprecating and rem"
  },
  {
    "path": "channels/1ds-post-js/.gitignore",
    "chars": 71,
    "preview": "/node_modules\n*.user\n/bundle\n/.vs\n/docs\n/dist-es5\n/dist\ntest/debug.log\n"
  },
  {
    "path": "channels/1ds-post-js/.npmignore",
    "chars": 252,
    "preview": "# NPM Ignore\n\n# ignore everything\n*\n\n# ... but these files\n!package.json\n!tsconfig.json\n!/CODE_OF_CONDUCT.md\n!/CONTRIBUT"
  },
  {
    "path": "channels/1ds-post-js/CODE_OF_CONDUCT.md",
    "chars": 444,
    "preview": "# Microsoft Open Source Code of Conduct\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://op"
  },
  {
    "path": "channels/1ds-post-js/CONTRIBUTING.md",
    "chars": 921,
    "preview": "# Contributing\n\nThis project welcomes contributions and suggestions. Most contributions require you to\nagree to a Contri"
  },
  {
    "path": "channels/1ds-post-js/LICENSE.TXT",
    "chars": 1082,
    "preview": "The MIT License (MIT)\n\nCopyright (c) Microsoft Corporation\n\nPermission is hereby granted, free of charge, to any person "
  },
  {
    "path": "channels/1ds-post-js/NOTICE",
    "chars": 614,
    "preview": "NOTICES AND INFORMATION\nDo Not Translate or Localize\n\nThis software incorporates material from third parties. Microsoft "
  },
  {
    "path": "channels/1ds-post-js/PRIVACY",
    "chars": 850,
    "preview": "# Data Collection\n\nThe software may collect information about you and your use of the software and send it to Microsoft."
  },
  {
    "path": "channels/1ds-post-js/README.md",
    "chars": 31084,
    "preview": "# Microsoft 1DS Web SDK Post Plugin\n\n## Description\n1DS Web SDK Post Channel main functionality is to send data to OneCo"
  },
  {
    "path": "channels/1ds-post-js/SECURITY.md",
    "chars": 2757,
    "preview": "<!-- BEGIN MICROSOFT SECURITY.MD V0.0.7 BLOCK -->\n\n## Security\n\nMicrosoft takes the security of our software products an"
  },
  {
    "path": "channels/1ds-post-js/SUPPORT.md",
    "chars": 528,
    "preview": "# Support\n\n## How to file issues and get help  \n\nThis project uses GitHub Issues to track bugs and feature requests. Ple"
  },
  {
    "path": "channels/1ds-post-js/api-extractor.json",
    "chars": 13863,
    "preview": "/**\n * Config file for API Extractor.  For more info, please visit: https://api-extractor.com\n */\n {\n  \"$schema\": \"https"
  },
  {
    "path": "channels/1ds-post-js/package.json",
    "chars": 2555,
    "preview": "{\n    \"name\": \"@microsoft/1ds-post-js\",\n    \"version\": \"4.4.1\",\n    \"description\": \"Microsoft Application Insights JavaS"
  },
  {
    "path": "channels/1ds-post-js/rollup.config.js",
    "chars": 995,
    "preview": "import { createConfig } from \"../../rollup.base.config\";\nimport { updateDistEsmFiles } from \"../../tools/updateDistEsm/u"
  },
  {
    "path": "channels/1ds-post-js/src/BatchNotificationActions.ts",
    "chars": 1295,
    "preview": "/**\n* BatchNotificationActions.ts\n* @author Nev Wylie (newylie)\n* @copyright Microsoft 2020\n*/\nimport { EventSendType } "
  },
  {
    "path": "channels/1ds-post-js/src/ClockSkewManager.ts",
    "chars": 3759,
    "preview": "/**\n* ClockSkewManager.ts\n* @author Abhilash Panwar (abpanwar)\n* @copyright Microsoft 2018\n*/\n\n/**\n * Internal interface"
  },
  {
    "path": "channels/1ds-post-js/src/DataModels.ts",
    "chars": 20166,
    "preview": "/**\n* DataModels.ts\n* @author Abhilash Panwar (abpanwar) and Hector Hernandez (hectorh)\n* @copyright Microsoft 2018\n* Fi"
  },
  {
    "path": "channels/1ds-post-js/src/EventBatch.ts",
    "chars": 4636,
    "preview": "/**\n* EventBatch.ts\n* @author Nev Wylie (newylie)\n* @copyright Microsoft 2020\n*/\nimport { isNullOrUndefined, isValueAssi"
  },
  {
    "path": "channels/1ds-post-js/src/HttpManager.ts",
    "chars": 72949,
    "preview": "/**\n* HttpManager.ts\n* @author Abhilash Panwar (abpanwar); Hector Hernandez (hectorh); Nev Wylie (newylie)\n* @copyright "
  },
  {
    "path": "channels/1ds-post-js/src/Index.ts",
    "chars": 727,
    "preview": "/**\n* @name Index.ts\n* @author Abhilash Panwar (abpanwar)\n* @copyright Microsoft 2018\n* File to export public classes.\n*"
  },
  {
    "path": "channels/1ds-post-js/src/InternalConstants.ts",
    "chars": 2257,
    "preview": "// Copyright (c) Microsoft Corporation. All rights reserved.\n// Licensed under the MIT License.\n\n// !!!!!!!!!!!!!!!!!!!!"
  },
  {
    "path": "channels/1ds-post-js/src/KillSwitch.ts",
    "chars": 2745,
    "preview": "/**\n* KillSwitch.ts\n* @author Abhilash Panwar (abpanwar)\n* @copyright Microsoft 2018\n*/\n\nimport { arrForEach, dateNow, s"
  },
  {
    "path": "channels/1ds-post-js/src/PostChannel.ts",
    "chars": 62234,
    "preview": "/**\n* PostManager.ts\n* @author Abhilash Panwar (abpanwar); Hector Hernandez (hectorh); Nev Wylie (newylie)\n* @copyright "
  },
  {
    "path": "channels/1ds-post-js/src/RetryPolicy.ts",
    "chars": 2129,
    "preview": "import { mathFloor, mathMin } from \"@nevware21/ts-utils\";\n\n/**\n* RetryPolicy.ts\n* @author Abhilash Panwar (abpanwar)\n* @"
  },
  {
    "path": "channels/1ds-post-js/src/Serializer.ts",
    "chars": 25181,
    "preview": "/**\n* Serializer.ts\n* @author Abhilash Panwar (abpanwar); Hector Hernandez (hectorh); Nev Wylie (newylie)\n* @copyright M"
  },
  {
    "path": "channels/1ds-post-js/src/TimeoutOverrideWrapper.ts",
    "chars": 709,
    "preview": "/**\n* TimeoutOverrideWrapper.ts\n* @author  Nev Wylie (newylie)\n* @copyright Microsoft 2022\n* Simple internal timeout wra"
  },
  {
    "path": "channels/1ds-post-js/src/typings/XDomainRequest.ts",
    "chars": 974,
    "preview": "// This interface was removed from newer versions of typescript. Restore it for legacy support\nexport interface XDomainR"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/FileSizeCheckTest.ts",
    "chars": 3295,
    "preview": "import { AITestClass } from \"@microsoft/ai-test-framework\";\nimport { dumpObj, mathCeil } from '@nevware21/ts-utils';\nimp"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/GlobalTestHooks.Test.ts",
    "chars": 496,
    "preview": "import { _testHookMaxUnloadHooksCb } from \"@microsoft/applicationinsights-core-js\";\nimport { Assert } from \"@microsoft/a"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/HttpManagerTest.ts",
    "chars": 152265,
    "preview": "import { AITestClass, PollingAssert } from \"@microsoft/ai-test-framework\";\nimport { HttpManager } from \"../../../src/Htt"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/KillSwitchTest.ts",
    "chars": 9255,
    "preview": "import { AITestClass } from \"@microsoft/ai-test-framework\";\nimport { IKillSwitch, createKillSwitch } from '../../../src/"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/PostChannelTest.ts",
    "chars": 207806,
    "preview": "import { AITestClass, PollingAssert, TestHelper } from \"@microsoft/ai-test-framework\";\nimport { \n    IExtendedConfigurat"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/SerializerTest.ts",
    "chars": 24445,
    "preview": "import { AITestClass } from \"@microsoft/ai-test-framework\";\nimport { HttpManager } from '../../../src/HttpManager';\nimpo"
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/TestHelper.ts",
    "chars": 2799,
    "preview": "import { IExtendedTelemetryItem } from '@microsoft/applicationinsights-core-js';\n\nexport class TestHelper {\n    private "
  },
  {
    "path": "channels/1ds-post-js/test/Unit/src/post.unittests.ts",
    "chars": 786,
    "preview": "import { PostChannelTest } from './PostChannelTest';\nimport { HttpManagerTest } from './HttpManagerTest';\nimport { KillS"
  },
  {
    "path": "channels/1ds-post-js/test/UnitTests.html",
    "chars": 1702,
    "preview": "<html>\n\n<head>\n  <meta charset=\"utf-8\">\n  <meta http-equiv=\"Cache-control\" content=\"no-Cache\" />\n  <meta name=\"viewport\""
  },
  {
    "path": "channels/1ds-post-js/test/tsconfig.json",
    "chars": 285,
    "preview": "{\n    \"compilerOptions\": {\n        \"sourceMap\": true,\n        \"inlineSources\": true,\n        \"noImplicitAny\": false,\n   "
  },
  {
    "path": "channels/1ds-post-js/tsconfig.json",
    "chars": 706,
    "preview": "{\n    \"compilerOptions\": {\n        \"sourceMap\": true,\n        \"inlineSources\": true,\n        \"module\": \"es6\",\n        \"m"
  },
  {
    "path": "channels/1ds-post-js/tsdoc.json",
    "chars": 134,
    "preview": "{\n    \"$schema\": \"https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json\",\n    \"extends\": [\"../../tsdoc"
  },
  {
    "path": "channels/1ds-post-js/typedoc.json",
    "chars": 1765,
    "preview": "{\n    \"$schema\": \"https://typedoc.org/schema.json\",\n    \"entryPoints\": [ \"./src/Index.ts\" ],\n    \"exclude\": [ \"**/intern"
  },
  {
    "path": "channels/applicationinsights-channel-js/.gitignore",
    "chars": 2512,
    "preview": "## Ignore Visual Studio temporary files, build results, and\n## files generated by popular Visual Studio add-ons.\n\n# User"
  },
  {
    "path": "channels/applicationinsights-channel-js/.npmignore",
    "chars": 253,
    "preview": "# NPM Ignore\n\n# ignore everything\n*\n\n# ... but these files\n!package.json\n!tsconfig.json\n!dist-es*/**\n!dist/**\n!browser/*"
  },
  {
    "path": "channels/applicationinsights-channel-js/LICENSE",
    "chars": 1083,
    "preview": "The MIT License (MIT)\n\nCopyright (c) Microsoft Corporation\n\nPermission is hereby granted, free of charge, to any person "
  },
  {
    "path": "channels/applicationinsights-channel-js/NOTICE",
    "chars": 614,
    "preview": "NOTICES AND INFORMATION\nDo Not Translate or Localize\n\nThis software incorporates material from third parties. Microsoft "
  },
  {
    "path": "channels/applicationinsights-channel-js/PRIVACY",
    "chars": 850,
    "preview": "# Data Collection\n\nThe software may collect information about you and your use of the software and send it to Microsoft."
  },
  {
    "path": "channels/applicationinsights-channel-js/README.md",
    "chars": 3382,
    "preview": "# Microsoft Application Insights JavaScript SDK - Channel\n\nChannel layer for the Application Insights JavaScript SDK\n\n[!"
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/Unit/src/GlobalTestHooks.Test.ts",
    "chars": 496,
    "preview": "import { Assert } from \"@microsoft/ai-test-framework\";\nimport { _testHookMaxUnloadHooksCb } from \"@microsoft/application"
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/Unit/src/Sample.tests.ts",
    "chars": 5707,
    "preview": "import { AITestClass } from \"@microsoft/ai-test-framework\";\nimport { createSampler } from \"../../../src/TelemetryProcess"
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/Unit/src/Sender.tests.ts",
    "chars": 217683,
    "preview": "import { AITestClass, PollingAssert } from \"@microsoft/ai-test-framework\";\nimport { Sender } from \"../../../src/Sender\";"
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/Unit/src/StatsBeat.tests.ts",
    "chars": 14131,
    "preview": "// import { AITestClass, Assert, PollingAssert } from \"@microsoft/ai-test-framework\";\n// import { AppInsightsCore, creat"
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/Unit/src/aichannel.tests.ts",
    "chars": 403,
    "preview": "import { SenderTests } from \"./Sender.tests\";\nimport { SampleTests } from \"./Sample.tests\";\nimport { GlobalTestHooks } "
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/UnitTests.html",
    "chars": 1554,
    "preview": "<!DOCTYPE html>\n<html>\n\n<head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"Cache-control\" content=\"no-Cache\" />\n  "
  },
  {
    "path": "channels/applicationinsights-channel-js/Tests/tsconfig.json",
    "chars": 294,
    "preview": "{\n  \"compilerOptions\": {\n    \"sourceMap\": true,\n    \"inlineSources\": true,\n    \"noImplicitAny\": false,\n    \"module\": \"am"
  },
  {
    "path": "channels/applicationinsights-channel-js/api-extractor.json",
    "chars": 14611,
    "preview": "/**\n * Config file for API Extractor.  For more info, please visit: https://api-extractor.com\n */\n {\n    \"$schema\": \"htt"
  },
  {
    "path": "channels/applicationinsights-channel-js/package.json",
    "chars": 2730,
    "preview": "{\n    \"name\": \"@microsoft/applicationinsights-channel-js\",\n    \"version\": \"3.4.1\",\n    \"description\": \"Microsoft Applica"
  }
]

// ... and 888 more files (download for full content)

About this extraction

This page contains the full source code of the microsoft/ApplicationInsights-JS GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 1088 files (20.5 MB), approximately 5.4M tokens, and a symbol index with 7460 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!