@microsoft/applicationinsights-common 3.0.0-beta.2303-11 → 3.0.0-nightly3.2304-28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/es5/applicationinsights-common.cjs.js +3965 -0
- package/browser/es5/applicationinsights-common.cjs.js.map +1 -0
- package/browser/es5/applicationinsights-common.cjs.min.js +6 -0
- package/browser/es5/applicationinsights-common.cjs.min.js.map +1 -0
- package/browser/es5/applicationinsights-common.gbl.js +3969 -0
- package/browser/es5/applicationinsights-common.gbl.js.map +1 -0
- package/browser/es5/applicationinsights-common.gbl.min.js +6 -0
- package/browser/es5/applicationinsights-common.gbl.min.js.map +1 -0
- package/browser/es5/applicationinsights-common.integrity.json +66 -0
- package/browser/{applicationinsights-common.js → es5/applicationinsights-common.js} +194 -167
- package/browser/es5/applicationinsights-common.js.map +1 -0
- package/browser/es5/applicationinsights-common.min.js +6 -0
- package/browser/es5/applicationinsights-common.min.js.map +1 -0
- package/dist/{applicationinsights-common.js → es5/applicationinsights-common.js} +194 -167
- package/dist/es5/applicationinsights-common.js.map +1 -0
- package/dist/es5/applicationinsights-common.min.js +6 -0
- package/dist/es5/applicationinsights-common.min.js.map +1 -0
- package/{dist-esm → dist-es5}/ConnectionStringParser.js +1 -1
- package/{dist-esm → dist-es5}/Constants.js +1 -1
- package/{dist-esm → dist-es5}/DomHelperFuncs.js +1 -1
- package/{dist-esm → dist-es5}/Enums.js +1 -1
- package/{dist-esm → dist-es5}/HelperFuncs.js +1 -1
- package/dist-es5/Interfaces/ConnectionString.js +6 -0
- package/dist-es5/Interfaces/Context/IApplication.js +8 -0
- package/dist-es5/Interfaces/Context/IDevice.js +8 -0
- package/dist-es5/Interfaces/Context/IInternal.js +8 -0
- package/dist-es5/Interfaces/Context/ILocation.js +8 -0
- package/dist-es5/Interfaces/Context/IOperatingSystem.js +8 -0
- package/dist-es5/Interfaces/Context/ISample.js +8 -0
- package/dist-es5/Interfaces/Context/ISession.js +8 -0
- package/dist-es5/Interfaces/Context/ITelemetryTrace.js +8 -0
- package/dist-es5/Interfaces/Context/IUser.js +8 -0
- package/dist-es5/Interfaces/Context/IWeb.js +8 -0
- package/{dist-esm → dist-es5}/Interfaces/Contracts/AvailabilityData.js +1 -1
- package/{dist-esm → dist-es5}/Interfaces/Contracts/ContextTagKeys.js +1 -1
- package/dist-es5/Interfaces/Contracts/DataPointType.js +8 -0
- package/dist-es5/Interfaces/Contracts/DependencyKind.js +8 -0
- package/dist-es5/Interfaces/Contracts/DependencySourceType.js +8 -0
- package/dist-es5/Interfaces/Contracts/IBase.js +8 -0
- package/dist-es5/Interfaces/Contracts/IData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IDataPoint.js +6 -0
- package/dist-es5/Interfaces/Contracts/IDomain.js +8 -0
- package/{dist-esm → dist-es5}/Interfaces/Contracts/IEnvelope.js +1 -1
- package/dist-es5/Interfaces/Contracts/IEventData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IExceptionData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IExceptionDetails.js +8 -0
- package/dist-es5/Interfaces/Contracts/IMessageData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IMetricData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IPageViewData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IPageViewPerfData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IRemoteDependencyData.js +8 -0
- package/dist-es5/Interfaces/Contracts/IStackFrame.js +8 -0
- package/{dist-esm → dist-es5}/Interfaces/Contracts/RequestData.js +1 -1
- package/{dist-esm → dist-es5}/Interfaces/Contracts/SeverityLevel.js +1 -1
- package/dist-es5/Interfaces/IAppInsights.js +8 -0
- package/{dist-esm → dist-es5}/Interfaces/IConfig.js +1 -1
- package/dist-es5/Interfaces/ICorrelationConfig.js +8 -0
- package/dist-es5/Interfaces/IDependencyTelemetry.js +8 -0
- package/dist-es5/Interfaces/IEventTelemetry.js +6 -0
- package/dist-es5/Interfaces/IExceptionTelemetry.js +8 -0
- package/dist-es5/Interfaces/IMetricTelemetry.js +6 -0
- package/dist-es5/Interfaces/IPageViewPerformanceTelemetry.js +6 -0
- package/dist-es5/Interfaces/IPageViewTelemetry.js +6 -0
- package/dist-es5/Interfaces/IPartC.js +8 -0
- package/dist-es5/Interfaces/IPropertiesPlugin.js +8 -0
- package/dist-es5/Interfaces/IRequestContext.js +6 -0
- package/dist-es5/Interfaces/ITelemetryContext.js +8 -0
- package/dist-es5/Interfaces/IThrottleMgr.js +6 -0
- package/dist-es5/Interfaces/ITraceTelemetry.js +8 -0
- package/{dist-esm → dist-es5}/Interfaces/PartAExtensions.js +1 -1
- package/dist-es5/Interfaces/Telemetry/IEnvelope.js +8 -0
- package/dist-es5/Interfaces/Telemetry/ISerializable.js +8 -0
- package/{dist-esm → dist-es5}/RequestResponseHeaders.js +1 -1
- package/{dist-esm → dist-es5}/StorageHelperFuncs.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Common/Data.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Common/DataPoint.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Common/DataSanitizer.js +3 -2
- package/dist-es5/Telemetry/Common/DataSanitizer.js.map +1 -0
- package/{dist-esm → dist-es5}/Telemetry/Common/Envelope.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Event.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Exception.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Metric.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/PageView.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/PageViewPerformance.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/RemoteDependencyData.js +1 -1
- package/{dist-esm → dist-es5}/Telemetry/Trace.js +1 -1
- package/{dist-esm → dist-es5}/TelemetryItemCreator.js +1 -1
- package/{dist-esm → dist-es5}/ThrottleMgr.js +1 -1
- package/{dist-esm → dist-es5}/UrlHelperFuncs.js +1 -1
- package/{dist-esm → dist-es5}/Util.js +1 -1
- package/{dist-esm → dist-es5}/__DynamicConstants.js +1 -1
- package/{dist-esm → dist-es5}/applicationinsights-common.js +1 -1
- package/package.json +18 -17
- package/tsconfig.json +4 -3
- package/types/applicationinsights-common.d.ts +2561 -58
- package/{dist/applicationinsights-common.d.ts → types/applicationinsights-common.namespaced.d.ts} +1 -1
- package/browser/applicationinsights-common.integrity.json +0 -26
- package/browser/applicationinsights-common.js.map +0 -1
- package/browser/applicationinsights-common.min.js +0 -6
- package/browser/applicationinsights-common.min.js.map +0 -1
- package/dist/applicationinsights-common.api.json +0 -19540
- package/dist/applicationinsights-common.api.md +0 -1224
- package/dist/applicationinsights-common.js.map +0 -1
- package/dist/applicationinsights-common.min.js +0 -6
- package/dist/applicationinsights-common.min.js.map +0 -1
- package/dist/applicationinsights-common.rollup.d.ts +0 -2562
- package/dist-esm/Interfaces/ConnectionString.js +0 -6
- package/dist-esm/Interfaces/Context/IApplication.js +0 -8
- package/dist-esm/Interfaces/Context/IDevice.js +0 -8
- package/dist-esm/Interfaces/Context/IInternal.js +0 -8
- package/dist-esm/Interfaces/Context/ILocation.js +0 -8
- package/dist-esm/Interfaces/Context/IOperatingSystem.js +0 -8
- package/dist-esm/Interfaces/Context/ISample.js +0 -8
- package/dist-esm/Interfaces/Context/ISession.js +0 -8
- package/dist-esm/Interfaces/Context/ITelemetryTrace.js +0 -8
- package/dist-esm/Interfaces/Context/IUser.js +0 -8
- package/dist-esm/Interfaces/Context/IWeb.js +0 -8
- package/dist-esm/Interfaces/Contracts/DataPointType.js +0 -8
- package/dist-esm/Interfaces/Contracts/DependencyKind.js +0 -8
- package/dist-esm/Interfaces/Contracts/DependencySourceType.js +0 -8
- package/dist-esm/Interfaces/Contracts/IBase.js +0 -8
- package/dist-esm/Interfaces/Contracts/IData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IDataPoint.js +0 -6
- package/dist-esm/Interfaces/Contracts/IDomain.js +0 -8
- package/dist-esm/Interfaces/Contracts/IEventData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IExceptionData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IExceptionDetails.js +0 -8
- package/dist-esm/Interfaces/Contracts/IMessageData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IMetricData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IPageViewData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IPageViewPerfData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IRemoteDependencyData.js +0 -8
- package/dist-esm/Interfaces/Contracts/IStackFrame.js +0 -8
- package/dist-esm/Interfaces/IAppInsights.js +0 -8
- package/dist-esm/Interfaces/ICorrelationConfig.js +0 -8
- package/dist-esm/Interfaces/IDependencyTelemetry.js +0 -8
- package/dist-esm/Interfaces/IEventTelemetry.js +0 -6
- package/dist-esm/Interfaces/IExceptionTelemetry.js +0 -8
- package/dist-esm/Interfaces/IMetricTelemetry.js +0 -6
- package/dist-esm/Interfaces/IPageViewPerformanceTelemetry.js +0 -6
- package/dist-esm/Interfaces/IPageViewTelemetry.js +0 -6
- package/dist-esm/Interfaces/IPartC.js +0 -8
- package/dist-esm/Interfaces/IPropertiesPlugin.js +0 -8
- package/dist-esm/Interfaces/IRequestContext.js +0 -6
- package/dist-esm/Interfaces/ITelemetryContext.js +0 -8
- package/dist-esm/Interfaces/IThrottleMgr.js +0 -6
- package/dist-esm/Interfaces/ITraceTelemetry.js +0 -8
- package/dist-esm/Interfaces/Telemetry/IEnvelope.js +0 -8
- package/dist-esm/Interfaces/Telemetry/ISerializable.js +0 -8
- package/dist-esm/Telemetry/Common/DataSanitizer.js.map +0 -1
- package/src/ConnectionStringParser.ts +0 -47
- package/src/Constants.ts +0 -18
- package/src/DomHelperFuncs.ts +0 -19
- package/src/Enums.ts +0 -65
- package/src/HelperFuncs.ts +0 -54
- package/src/Interfaces/ConnectionString.ts +0 -3
- package/src/Interfaces/Context/IApplication.ts +0 -14
- package/src/Interfaces/Context/IDevice.ts +0 -28
- package/src/Interfaces/Context/IInternal.ts +0 -29
- package/src/Interfaces/Context/ILocation.ts +0 -9
- package/src/Interfaces/Context/IOperatingSystem.ts +0 -7
- package/src/Interfaces/Context/ISample.ts +0 -13
- package/src/Interfaces/Context/ISession.ts +0 -22
- package/src/Interfaces/Context/ITelemetryTrace.ts +0 -33
- package/src/Interfaces/Context/IUser.ts +0 -50
- package/src/Interfaces/Context/IWeb.ts +0 -39
- package/src/Interfaces/Contracts/AvailabilityData.ts +0 -57
- package/src/Interfaces/Contracts/ContextTagKeys.ts +0 -299
- package/src/Interfaces/Contracts/DataPointType.ts +0 -10
- package/src/Interfaces/Contracts/DependencyKind.ts +0 -11
- package/src/Interfaces/Contracts/DependencySourceType.ts +0 -11
- package/src/Interfaces/Contracts/IBase.ts +0 -13
- package/src/Interfaces/Contracts/IData.ts +0 -19
- package/src/Interfaces/Contracts/IDataPoint.ts +0 -44
- package/src/Interfaces/Contracts/IDomain.ts +0 -8
- package/src/Interfaces/Contracts/IEnvelope.ts +0 -50
- package/src/Interfaces/Contracts/IEventData.ts +0 -30
- package/src/Interfaces/Contracts/IExceptionData.ts +0 -37
- package/src/Interfaces/Contracts/IExceptionDetails.ts +0 -45
- package/src/Interfaces/Contracts/IMessageData.ts +0 -36
- package/src/Interfaces/Contracts/IMetricData.ts +0 -31
- package/src/Interfaces/Contracts/IPageViewData.ts +0 -26
- package/src/Interfaces/Contracts/IPageViewPerfData.ts +0 -35
- package/src/Interfaces/Contracts/IRemoteDependencyData.ts +0 -65
- package/src/Interfaces/Contracts/IStackFrame.ts +0 -33
- package/src/Interfaces/Contracts/RequestData.ts +0 -50
- package/src/Interfaces/Contracts/SeverityLevel.ts +0 -28
- package/src/Interfaces/IAppInsights.ts +0 -31
- package/src/Interfaces/IConfig.ts +0 -396
- package/src/Interfaces/ICorrelationConfig.ts +0 -71
- package/src/Interfaces/IDependencyTelemetry.ts +0 -22
- package/src/Interfaces/IEventTelemetry.ts +0 -20
- package/src/Interfaces/IExceptionTelemetry.ts +0 -143
- package/src/Interfaces/IMetricTelemetry.ts +0 -56
- package/src/Interfaces/IPageViewPerformanceTelemetry.ts +0 -61
- package/src/Interfaces/IPageViewTelemetry.ts +0 -65
- package/src/Interfaces/IPartC.ts +0 -18
- package/src/Interfaces/IPropertiesPlugin.ts +0 -8
- package/src/Interfaces/IRequestContext.ts +0 -6
- package/src/Interfaces/ITelemetryContext.ts +0 -69
- package/src/Interfaces/IThrottleMgr.ts +0 -111
- package/src/Interfaces/ITraceTelemetry.ts +0 -28
- package/src/Interfaces/PartAExtensions.ts +0 -14
- package/src/Interfaces/Telemetry/IEnvelope.ts +0 -47
- package/src/Interfaces/Telemetry/ISerializable.ts +0 -11
- package/src/RequestResponseHeaders.ts +0 -96
- package/src/StorageHelperFuncs.ts +0 -223
- package/src/Telemetry/Common/Data.ts +0 -35
- package/src/Telemetry/Common/DataPoint.ts +0 -58
- package/src/Telemetry/Common/DataSanitizer.ts +0 -197
- package/src/Telemetry/Common/Envelope.ts +0 -81
- package/src/Telemetry/Event.ts +0 -52
- package/src/Telemetry/Exception.ts +0 -681
- package/src/Telemetry/Metric.ts +0 -61
- package/src/Telemetry/PageView.ts +0 -79
- package/src/Telemetry/PageViewPerformance.ts +0 -113
- package/src/Telemetry/RemoteDependencyData.ts +0 -122
- package/src/Telemetry/Trace.ts +0 -64
- package/src/TelemetryItemCreator.ts +0 -75
- package/src/ThrottleMgr.ts +0 -345
- package/src/UrlHelperFuncs.ts +0 -101
- package/src/Util.ts +0 -221
- package/src/__DynamicConstants.ts +0 -50
- package/src/applicationinsights-common.ts +0 -76
- package/types/ConnectionStringParser.d.ts +0 -5
- package/types/Constants.d.ts +0 -15
- package/types/DomHelperFuncs.d.ts +0 -1
- package/types/Enums.d.ts +0 -49
- package/types/HelperFuncs.d.ts +0 -8
- package/types/Interfaces/ConnectionString.d.ts +0 -4
- package/types/Interfaces/Context/IApplication.d.ts +0 -10
- package/types/Interfaces/Context/IDevice.d.ts +0 -22
- package/types/Interfaces/Context/IInternal.d.ts +0 -23
- package/types/Interfaces/Context/ILocation.d.ts +0 -6
- package/types/Interfaces/Context/IOperatingSystem.d.ts +0 -3
- package/types/Interfaces/Context/ISample.d.ts +0 -8
- package/types/Interfaces/Context/ISession.d.ts +0 -17
- package/types/Interfaces/Context/ITelemetryTrace.d.ts +0 -25
- package/types/Interfaces/Context/IUser.d.ts +0 -39
- package/types/Interfaces/Context/IWeb.d.ts +0 -30
- package/types/Interfaces/Contracts/AvailabilityData.d.ts +0 -0
- package/types/Interfaces/Contracts/ContextTagKeys.d.ts +0 -175
- package/types/Interfaces/Contracts/DataPointType.d.ts +0 -7
- package/types/Interfaces/Contracts/DependencyKind.d.ts +0 -8
- package/types/Interfaces/Contracts/DependencySourceType.d.ts +0 -8
- package/types/Interfaces/Contracts/IBase.d.ts +0 -9
- package/types/Interfaces/Contracts/IData.d.ts +0 -14
- package/types/Interfaces/Contracts/IDataPoint.d.ts +0 -34
- package/types/Interfaces/Contracts/IDomain.d.ts +0 -5
- package/types/Interfaces/Contracts/IEnvelope.d.ts +0 -0
- package/types/Interfaces/Contracts/IEventData.d.ts +0 -22
- package/types/Interfaces/Contracts/IExceptionData.d.ts +0 -28
- package/types/Interfaces/Contracts/IExceptionDetails.d.ts +0 -34
- package/types/Interfaces/Contracts/IMessageData.d.ts +0 -27
- package/types/Interfaces/Contracts/IMetricData.d.ts +0 -23
- package/types/Interfaces/Contracts/IPageViewData.d.ts +0 -18
- package/types/Interfaces/Contracts/IPageViewPerfData.d.ts +0 -26
- package/types/Interfaces/Contracts/IRemoteDependencyData.d.ts +0 -50
- package/types/Interfaces/Contracts/IStackFrame.d.ts +0 -25
- package/types/Interfaces/Contracts/RequestData.d.ts +0 -0
- package/types/Interfaces/Contracts/SeverityLevel.d.ts +0 -15
- package/types/Interfaces/IAppInsights.d.ts +0 -37
- package/types/Interfaces/IConfig.d.ts +0 -323
- package/types/Interfaces/ICorrelationConfig.d.ts +0 -59
- package/types/Interfaces/IDependencyTelemetry.d.ts +0 -17
- package/types/Interfaces/IEventTelemetry.d.ts +0 -15
- package/types/Interfaces/IExceptionTelemetry.d.ts +0 -123
- package/types/Interfaces/IMetricTelemetry.d.ts +0 -46
- package/types/Interfaces/IPageViewPerformanceTelemetry.d.ts +0 -55
- package/types/Interfaces/IPageViewTelemetry.d.ts +0 -52
- package/types/Interfaces/IPartC.d.ts +0 -18
- package/types/Interfaces/IPropertiesPlugin.d.ts +0 -4
- package/types/Interfaces/IRequestContext.d.ts +0 -6
- package/types/Interfaces/ITelemetryContext.d.ts +0 -55
- package/types/Interfaces/IThrottleMgr.d.ts +0 -96
- package/types/Interfaces/ITraceTelemetry.d.ts +0 -22
- package/types/Interfaces/PartAExtensions.d.ts +0 -12
- package/types/Interfaces/Telemetry/IEnvelope.d.ts +0 -37
- package/types/Interfaces/Telemetry/ISerializable.d.ts +0 -8
- package/types/RequestResponseHeaders.d.ts +0 -68
- package/types/StorageHelperFuncs.d.ts +0 -23
- package/types/Telemetry/Common/Data.d.ts +0 -24
- package/types/Telemetry/Common/DataPoint.d.ts +0 -46
- package/types/Telemetry/Common/DataSanitizer.d.ts +0 -42
- package/types/Telemetry/Common/Envelope.d.ts +0 -45
- package/types/Telemetry/Event.d.ts +0 -34
- package/types/Telemetry/Exception.d.ts +0 -150
- package/types/Telemetry/Metric.d.ts +0 -36
- package/types/Telemetry/PageView.d.ts +0 -53
- package/types/Telemetry/PageViewPerformance.d.ts +0 -78
- package/types/Telemetry/RemoteDependencyData.d.ts +0 -79
- package/types/Telemetry/Trace.d.ts +0 -41
- package/types/TelemetryItemCreator.d.ts +0 -27
- package/types/ThrottleMgr.d.ts +0 -13
- package/types/UrlHelperFuncs.d.ts +0 -6
- package/types/Util.d.ts +0 -36
- package/types/__DynamicConstants.d.ts +0 -38
- package/types/tsdoc-metadata.json +0 -11
- /package/{dist-esm → dist-es5}/ConnectionStringParser.js.map +0 -0
- /package/{dist-esm → dist-es5}/Constants.js.map +0 -0
- /package/{dist-esm → dist-es5}/DomHelperFuncs.js.map +0 -0
- /package/{dist-esm → dist-es5}/Enums.js.map +0 -0
- /package/{dist-esm → dist-es5}/HelperFuncs.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/ConnectionString.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/IApplication.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/IDevice.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/IInternal.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/ILocation.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/IOperatingSystem.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/ISample.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/ISession.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/ITelemetryTrace.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/IUser.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Context/IWeb.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/AvailabilityData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/ContextTagKeys.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/DataPointType.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/DependencyKind.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/DependencySourceType.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IBase.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IDataPoint.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IDomain.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IEnvelope.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IEventData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IExceptionData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IExceptionDetails.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IMessageData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IMetricData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IPageViewData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IPageViewPerfData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IRemoteDependencyData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/IStackFrame.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/RequestData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Contracts/SeverityLevel.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IAppInsights.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IConfig.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/ICorrelationConfig.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IDependencyTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IEventTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IExceptionTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IMetricTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IPageViewPerformanceTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IPageViewTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IPartC.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IPropertiesPlugin.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IRequestContext.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/ITelemetryContext.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/IThrottleMgr.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/ITraceTelemetry.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/PartAExtensions.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Telemetry/IEnvelope.js.map +0 -0
- /package/{dist-esm → dist-es5}/Interfaces/Telemetry/ISerializable.js.map +0 -0
- /package/{dist-esm → dist-es5}/RequestResponseHeaders.js.map +0 -0
- /package/{dist-esm → dist-es5}/StorageHelperFuncs.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Common/Data.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Common/DataPoint.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Common/Envelope.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Event.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Exception.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Metric.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/PageView.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/PageViewPerformance.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/RemoteDependencyData.js.map +0 -0
- /package/{dist-esm → dist-es5}/Telemetry/Trace.js.map +0 -0
- /package/{dist-esm → dist-es5}/TelemetryItemCreator.js.map +0 -0
- /package/{dist-esm → dist-es5}/ThrottleMgr.js.map +0 -0
- /package/{dist-esm → dist-es5}/UrlHelperFuncs.js.map +0 -0
- /package/{dist-esm → dist-es5}/Util.js.map +0 -0
- /package/{dist-esm → dist-es5}/__DynamicConstants.js.map +0 -0
- /package/{dist-esm → dist-es5}/applicationinsights-common.js.map +0 -0
|
@@ -0,0 +1,3965 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Application Insights JavaScript SDK - Common, 3.0.0-nightly3.2304-28
|
|
3
|
+
* Copyright (c) Microsoft and contributors. All rights reserved.
|
|
4
|
+
*/
|
|
5
|
+
'use strict';
|
|
6
|
+
|
|
7
|
+
var UNDEF_VALUE = undefined;
|
|
8
|
+
var EMPTY = "";
|
|
9
|
+
var FUNCTION = "function";
|
|
10
|
+
var NUMBER = "number";
|
|
11
|
+
var OBJECT = "object";
|
|
12
|
+
var PROTOTYPE = "prototype";
|
|
13
|
+
var STRING = "string";
|
|
14
|
+
var UNDEFINED = "undefined";
|
|
15
|
+
var CONSTRUCTOR = "constructor";
|
|
16
|
+
var SYMBOL = "Symbol";
|
|
17
|
+
var POLYFILL_TAG = "_polyfill";
|
|
18
|
+
var INDEX_OF = "indexOf";
|
|
19
|
+
var LENGTH = "length";
|
|
20
|
+
var DONE = "done";
|
|
21
|
+
var VALUE = "value";
|
|
22
|
+
var NAME = "name";
|
|
23
|
+
var SLICE = "slice";
|
|
24
|
+
var ObjClass$1 = Object;
|
|
25
|
+
var ObjProto$1 = ObjClass$1[PROTOTYPE];
|
|
26
|
+
var StrCls = String;
|
|
27
|
+
var StrProto = StrCls[PROTOTYPE];
|
|
28
|
+
var MathCls = Math;
|
|
29
|
+
var ArrCls = Array;
|
|
30
|
+
var ArrProto = ArrCls[PROTOTYPE];
|
|
31
|
+
|
|
32
|
+
function _safeGet(cb, defValue) {
|
|
33
|
+
var result = defValue;
|
|
34
|
+
try {
|
|
35
|
+
result = cb();
|
|
36
|
+
}
|
|
37
|
+
catch (e) {
|
|
38
|
+
}
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function _createIs(theType) {
|
|
43
|
+
return function (value) {
|
|
44
|
+
return typeof value === theType;
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function _createObjIs(theName) {
|
|
48
|
+
var theType = "[object " + theName + "]";
|
|
49
|
+
return function (value) {
|
|
50
|
+
return !!(value && objToString(value) === theType);
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
function objToString(value) {
|
|
54
|
+
return ObjProto$1.toString.call(value);
|
|
55
|
+
}
|
|
56
|
+
function isUndefined(value) {
|
|
57
|
+
return typeof value === UNDEFINED || value === UNDEFINED;
|
|
58
|
+
}
|
|
59
|
+
function isNullOrUndefined(value) {
|
|
60
|
+
return value === null || isUndefined(value);
|
|
61
|
+
}
|
|
62
|
+
function isStrictNullOrUndefined(value) {
|
|
63
|
+
return value === null || !isDefined(value);
|
|
64
|
+
}
|
|
65
|
+
function isDefined(arg) {
|
|
66
|
+
return !!arg || arg !== UNDEF_VALUE;
|
|
67
|
+
}
|
|
68
|
+
var isString = _createIs(STRING);
|
|
69
|
+
var isFunction = _createIs(FUNCTION);
|
|
70
|
+
function isObject(value) {
|
|
71
|
+
if (!value && isNullOrUndefined(value)) {
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
return !!value && typeof value === OBJECT;
|
|
75
|
+
}
|
|
76
|
+
var isArray = ArrCls.isArray;
|
|
77
|
+
var isNumber = _createIs(NUMBER);
|
|
78
|
+
var isError = _createObjIs("Error");
|
|
79
|
+
|
|
80
|
+
var objGetOwnPropertyDescriptor = ObjClass$1.getOwnPropertyDescriptor;
|
|
81
|
+
|
|
82
|
+
function objHasOwnProperty(obj, prop) {
|
|
83
|
+
return obj && ObjProto$1.hasOwnProperty.call(obj, prop);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
var objHasOwn = ObjClass$1["hasOwn"] || polyObjHasOwn;
|
|
87
|
+
function polyObjHasOwn(obj, prop) {
|
|
88
|
+
return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function objForEachKey(theObject, callbackfn, thisArg) {
|
|
92
|
+
if (theObject && isObject(theObject)) {
|
|
93
|
+
for (var prop in theObject) {
|
|
94
|
+
if (objHasOwn(theObject, prop)) {
|
|
95
|
+
if (callbackfn.call(thisArg || theObject, prop, theObject[prop]) === -1) {
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
function _createKeyValueMap(values, keyType, valueType, completeFn) {
|
|
104
|
+
var theMap = {};
|
|
105
|
+
objForEachKey(values, function (key, value) {
|
|
106
|
+
theMap[key] = keyType ? value : key;
|
|
107
|
+
theMap[value] = valueType ? value : key;
|
|
108
|
+
});
|
|
109
|
+
return completeFn(theMap);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
function throwError(message) {
|
|
113
|
+
throw new Error(message);
|
|
114
|
+
}
|
|
115
|
+
function throwTypeError(message) {
|
|
116
|
+
throw new TypeError(message);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
var _objFreeze = ObjClass$1["freeze"];
|
|
120
|
+
var _doNothing = function (value) { return value; };
|
|
121
|
+
var objAssign = ObjClass$1["assign"];
|
|
122
|
+
function objKeys(value) {
|
|
123
|
+
if (!isObject(value) || value === null) {
|
|
124
|
+
throwTypeError("objKeys called on non-object");
|
|
125
|
+
}
|
|
126
|
+
return ObjClass$1.keys(value);
|
|
127
|
+
}
|
|
128
|
+
function objDeepFreeze(value) {
|
|
129
|
+
if (_objFreeze) {
|
|
130
|
+
objForEachKey(value, function (key, value) {
|
|
131
|
+
if (isArray(value) || isObject(value)) {
|
|
132
|
+
_objFreeze(value);
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
return objFreeze(value);
|
|
137
|
+
}
|
|
138
|
+
var objFreeze = _objFreeze || _doNothing;
|
|
139
|
+
var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _doNothing;
|
|
140
|
+
|
|
141
|
+
function createEnum(values) {
|
|
142
|
+
return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
|
|
143
|
+
}
|
|
144
|
+
function createEnumKeyMap(values) {
|
|
145
|
+
return _createKeyValueMap(values, 0 , 0 , objDeepFreeze);
|
|
146
|
+
}
|
|
147
|
+
function createSimpleMap(values) {
|
|
148
|
+
var mapClass = {};
|
|
149
|
+
objForEachKey(values, function (key, value) {
|
|
150
|
+
mapClass[key] = value[1];
|
|
151
|
+
mapClass[value[0]] = value[1];
|
|
152
|
+
});
|
|
153
|
+
return objDeepFreeze(mapClass);
|
|
154
|
+
}
|
|
155
|
+
function createTypeMap(values) {
|
|
156
|
+
return createSimpleMap(values);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
var _wellKnownSymbolMap = createEnumKeyMap({
|
|
160
|
+
asyncIterator: 0 ,
|
|
161
|
+
hasInstance: 1 ,
|
|
162
|
+
isConcatSpreadable: 2 ,
|
|
163
|
+
iterator: 3 ,
|
|
164
|
+
match: 4 ,
|
|
165
|
+
matchAll: 5 ,
|
|
166
|
+
replace: 6 ,
|
|
167
|
+
search: 7 ,
|
|
168
|
+
species: 8 ,
|
|
169
|
+
split: 9 ,
|
|
170
|
+
toPrimitive: 10 ,
|
|
171
|
+
toStringTag: 11 ,
|
|
172
|
+
unscopables: 12
|
|
173
|
+
});
|
|
174
|
+
|
|
175
|
+
var asString = StrCls;
|
|
176
|
+
|
|
177
|
+
var GLOBAL_CONFIG_KEY = "__tsUtils$gblCfg";
|
|
178
|
+
var _globalCfg;
|
|
179
|
+
function _getGlobalValue() {
|
|
180
|
+
var result;
|
|
181
|
+
if (typeof globalThis !== UNDEFINED) {
|
|
182
|
+
result = globalThis;
|
|
183
|
+
}
|
|
184
|
+
if (!result && typeof self !== UNDEFINED) {
|
|
185
|
+
result = self;
|
|
186
|
+
}
|
|
187
|
+
if (!result && typeof window !== UNDEFINED) {
|
|
188
|
+
result = window;
|
|
189
|
+
}
|
|
190
|
+
if (!result && typeof global !== UNDEFINED) {
|
|
191
|
+
result = global;
|
|
192
|
+
}
|
|
193
|
+
return result;
|
|
194
|
+
}
|
|
195
|
+
function _getGlobalConfig() {
|
|
196
|
+
if (!_globalCfg) {
|
|
197
|
+
var gbl = _getGlobalValue() || {};
|
|
198
|
+
_globalCfg = gbl[GLOBAL_CONFIG_KEY] = gbl[GLOBAL_CONFIG_KEY] || {};
|
|
199
|
+
}
|
|
200
|
+
return _globalCfg;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
function dumpObj(object, format) {
|
|
204
|
+
var propertyValueDump = EMPTY;
|
|
205
|
+
if (isError(object)) {
|
|
206
|
+
propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object.name + "'";
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
try {
|
|
210
|
+
propertyValueDump = JSON.stringify(object, null, format ? (isNumber(format) ? format : 4) : UNDEF_VALUE);
|
|
211
|
+
}
|
|
212
|
+
catch (e) {
|
|
213
|
+
propertyValueDump = " - " + dumpObj(e, format);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
return objToString(object) + ": " + propertyValueDump;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
function _unwrapFunction(funcName, target, polyFunc) {
|
|
220
|
+
return function (thisArg) {
|
|
221
|
+
var theFunc = (thisArg && thisArg[funcName]) || (target && target[funcName]);
|
|
222
|
+
if (theFunc || polyFunc) {
|
|
223
|
+
var theArgs = arguments;
|
|
224
|
+
return (theFunc || polyFunc).apply(thisArg, theFunc ? ArrProto[SLICE].call(theArgs, 1) : theArgs);
|
|
225
|
+
}
|
|
226
|
+
throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
var mathMax = MathCls.max;
|
|
231
|
+
|
|
232
|
+
var strSlice = _unwrapFunction(SLICE, StrProto);
|
|
233
|
+
|
|
234
|
+
var strSubstring = _unwrapFunction("substring", StrProto);
|
|
235
|
+
var strSubstr = _unwrapFunction("substr", StrProto, polyStrSubstr);
|
|
236
|
+
function polyStrSubstr(value, start, length) {
|
|
237
|
+
if (isNullOrUndefined(value)) {
|
|
238
|
+
throwTypeError("'polyStrSubstr called with invalid " + dumpObj(value));
|
|
239
|
+
}
|
|
240
|
+
if (length < 0) {
|
|
241
|
+
return EMPTY;
|
|
242
|
+
}
|
|
243
|
+
start = start || 0;
|
|
244
|
+
if (start < 0) {
|
|
245
|
+
start = mathMax(start + value[LENGTH], 0);
|
|
246
|
+
}
|
|
247
|
+
if (isUndefined(length)) {
|
|
248
|
+
return strSlice(value, start);
|
|
249
|
+
}
|
|
250
|
+
return strSlice(value, start, start + length);
|
|
251
|
+
}
|
|
252
|
+
function strLeft(value, count) {
|
|
253
|
+
return strSubstring(value, 0, count);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
var _polySymbols;
|
|
257
|
+
function _globalSymbolRegistry() {
|
|
258
|
+
if (!_polySymbols) {
|
|
259
|
+
var gblCfg = _getGlobalConfig();
|
|
260
|
+
_polySymbols = gblCfg.gblSym = gblCfg.gblSym || { k: {}, s: {} };
|
|
261
|
+
}
|
|
262
|
+
return _polySymbols;
|
|
263
|
+
}
|
|
264
|
+
var _wellKnownSymbolCache = {};
|
|
265
|
+
function polyNewSymbol(description) {
|
|
266
|
+
var theSymbol = {
|
|
267
|
+
description: asString(description),
|
|
268
|
+
toString: function () { return SYMBOL + "(" + description + ")"; }
|
|
269
|
+
};
|
|
270
|
+
theSymbol[POLYFILL_TAG] = true;
|
|
271
|
+
return theSymbol;
|
|
272
|
+
}
|
|
273
|
+
function polySymbolFor(key) {
|
|
274
|
+
var registry = _globalSymbolRegistry();
|
|
275
|
+
if (!objHasOwn(registry, key)) {
|
|
276
|
+
var newSymbol = polyNewSymbol(key);
|
|
277
|
+
registry.k[key] = newSymbol;
|
|
278
|
+
registry.s[newSymbol] = asString(key);
|
|
279
|
+
}
|
|
280
|
+
return registry.k[key];
|
|
281
|
+
}
|
|
282
|
+
function polyGetKnownSymbol(name) {
|
|
283
|
+
var result;
|
|
284
|
+
var knownName = _wellKnownSymbolMap[name];
|
|
285
|
+
if (knownName) {
|
|
286
|
+
result = _wellKnownSymbolCache[knownName] = _wellKnownSymbolCache[knownName] || polyNewSymbol(SYMBOL + "." + knownName);
|
|
287
|
+
}
|
|
288
|
+
return result;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
var propMap = {
|
|
292
|
+
e: "enumerable",
|
|
293
|
+
c: "configurable",
|
|
294
|
+
v: VALUE,
|
|
295
|
+
w: "writable",
|
|
296
|
+
g: "get",
|
|
297
|
+
s: "set"
|
|
298
|
+
};
|
|
299
|
+
function _createProp(value) {
|
|
300
|
+
var prop = {};
|
|
301
|
+
prop[propMap["c"]] = true;
|
|
302
|
+
prop[propMap["e"]] = true;
|
|
303
|
+
if (value.l) {
|
|
304
|
+
prop.get = function () { return value.l.v; };
|
|
305
|
+
var desc = objGetOwnPropertyDescriptor(value.l, "v");
|
|
306
|
+
if (desc && desc.set) {
|
|
307
|
+
prop.set = function (newValue) {
|
|
308
|
+
value.l.v = newValue;
|
|
309
|
+
};
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
objForEachKey(value, function (key, value) {
|
|
313
|
+
prop[propMap[key]] = isUndefined(value) ? prop[propMap[key]] : value;
|
|
314
|
+
});
|
|
315
|
+
return prop;
|
|
316
|
+
}
|
|
317
|
+
var objDefineProp = ObjClass$1["defineProperty"];
|
|
318
|
+
function objDefine(target, key, propDesc) {
|
|
319
|
+
return objDefineProp(target, key, _createProp(propDesc));
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
var _globalLazyTestHooks;
|
|
323
|
+
var _fetchLazyTestHooks = function () {
|
|
324
|
+
_globalLazyTestHooks = _getGlobalConfig();
|
|
325
|
+
_fetchLazyTestHooks = null;
|
|
326
|
+
};
|
|
327
|
+
function getLazy(cb) {
|
|
328
|
+
var lazyValue = {};
|
|
329
|
+
_fetchLazyTestHooks && _fetchLazyTestHooks();
|
|
330
|
+
lazyValue.b = _globalLazyTestHooks.lzy;
|
|
331
|
+
objDefineProp(lazyValue, "v", {
|
|
332
|
+
configurable: true,
|
|
333
|
+
get: function () {
|
|
334
|
+
var result = cb();
|
|
335
|
+
if (!_globalLazyTestHooks.lzy) {
|
|
336
|
+
objDefineProp(lazyValue, "v", {
|
|
337
|
+
value: result
|
|
338
|
+
});
|
|
339
|
+
if (lazyValue.b) {
|
|
340
|
+
delete lazyValue.b;
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
if (_globalLazyTestHooks.lzy && lazyValue.b !== _globalLazyTestHooks.lzy) {
|
|
344
|
+
lazyValue.b = _globalLazyTestHooks.lzy;
|
|
345
|
+
}
|
|
346
|
+
return result;
|
|
347
|
+
}
|
|
348
|
+
});
|
|
349
|
+
return lazyValue;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
function _lazySafeGet(cb, defValue) {
|
|
353
|
+
return getLazy(function () { return _safeGet(cb, defValue); });
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
var WINDOW = "window";
|
|
357
|
+
var _cachedGlobal;
|
|
358
|
+
var _cachedWindow;
|
|
359
|
+
var _cachedDocument;
|
|
360
|
+
var _cachedNavigator;
|
|
361
|
+
function _lazySafeGetInst(name) {
|
|
362
|
+
return _lazySafeGet(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE);
|
|
363
|
+
}
|
|
364
|
+
function getGlobal(useCached) {
|
|
365
|
+
(!_cachedGlobal || useCached === false || (_globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = _lazySafeGet(_getGlobalValue, null));
|
|
366
|
+
return _cachedGlobal.v;
|
|
367
|
+
}
|
|
368
|
+
function getInst(name, useCached) {
|
|
369
|
+
var gbl = getGlobal(useCached);
|
|
370
|
+
if (gbl && gbl[name]) {
|
|
371
|
+
return gbl[name];
|
|
372
|
+
}
|
|
373
|
+
if (name === WINDOW && _cachedWindow) {
|
|
374
|
+
return _cachedWindow.v;
|
|
375
|
+
}
|
|
376
|
+
return null;
|
|
377
|
+
}
|
|
378
|
+
function getDocument() {
|
|
379
|
+
(!_cachedDocument || (_globalLazyTestHooks.lzy && !_cachedDocument.b)) && (_cachedDocument = _lazySafeGetInst("document"));
|
|
380
|
+
return _cachedDocument.v;
|
|
381
|
+
}
|
|
382
|
+
function hasWindow() {
|
|
383
|
+
return !!getWindow();
|
|
384
|
+
}
|
|
385
|
+
function getWindow() {
|
|
386
|
+
(!_cachedWindow || (_globalLazyTestHooks.lzy && !_cachedWindow.b)) && (_cachedWindow = _lazySafeGetInst(WINDOW));
|
|
387
|
+
return _cachedWindow.v;
|
|
388
|
+
}
|
|
389
|
+
function hasNavigator() {
|
|
390
|
+
return !!getNavigator();
|
|
391
|
+
}
|
|
392
|
+
function getNavigator() {
|
|
393
|
+
(!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = _lazySafeGetInst("navigator"));
|
|
394
|
+
return _cachedNavigator.v;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
var _symbol;
|
|
398
|
+
var _symbolFor;
|
|
399
|
+
var _symbolKeyFor;
|
|
400
|
+
function _getSymbolValue(name) {
|
|
401
|
+
return _lazySafeGet(function () {
|
|
402
|
+
return (_symbol.v ? _symbol[name] : UNDEF_VALUE);
|
|
403
|
+
}, UNDEF_VALUE);
|
|
404
|
+
}
|
|
405
|
+
function getSymbol() {
|
|
406
|
+
var resetCache = !_symbol || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_symbol.b);
|
|
407
|
+
resetCache && (_symbol = _lazySafeGetInst(SYMBOL));
|
|
408
|
+
(!_symbolFor || resetCache) && (_symbolFor = _getSymbolValue("for"));
|
|
409
|
+
(!_symbolKeyFor || resetCache) && (_symbolKeyFor = _getSymbolValue("keyFor"));
|
|
410
|
+
return _symbol.v;
|
|
411
|
+
}
|
|
412
|
+
function getKnownSymbol(name, noPoly) {
|
|
413
|
+
var knownName = _wellKnownSymbolMap[name];
|
|
414
|
+
(!_symbol || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
|
|
415
|
+
return _symbol.v ? _symbol.v[knownName || name] : (!noPoly ? polyGetKnownSymbol(name) : UNDEF_VALUE);
|
|
416
|
+
}
|
|
417
|
+
function newSymbol(description, noPoly) {
|
|
418
|
+
(!_symbol || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
|
|
419
|
+
return _symbol.v ? _symbol.v(description) : (!noPoly ? polyNewSymbol(description) : null);
|
|
420
|
+
}
|
|
421
|
+
function symbolFor(key) {
|
|
422
|
+
(!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
|
|
423
|
+
return (_symbolFor.v || polySymbolFor)(key);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
function isIterator(value) {
|
|
427
|
+
return !!value && isFunction(value.next);
|
|
428
|
+
}
|
|
429
|
+
function isIterable(value) {
|
|
430
|
+
return !isStrictNullOrUndefined(value) && isFunction(value[getKnownSymbol(3 )]);
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
function iterForOf(iter, callbackfn, thisArg) {
|
|
434
|
+
if (iter) {
|
|
435
|
+
if (!isIterator(iter)) {
|
|
436
|
+
var itSymbol = getKnownSymbol(3 );
|
|
437
|
+
iter = iter[itSymbol] ? iter[itSymbol]() : null;
|
|
438
|
+
}
|
|
439
|
+
if (isIterator(iter)) {
|
|
440
|
+
try {
|
|
441
|
+
var count = 0;
|
|
442
|
+
var value = iter.next();
|
|
443
|
+
while (!value[DONE]) {
|
|
444
|
+
if (callbackfn.call(thisArg || iter, value[VALUE], count, iter) === -1) {
|
|
445
|
+
break;
|
|
446
|
+
}
|
|
447
|
+
count++;
|
|
448
|
+
value = iter.next();
|
|
449
|
+
}
|
|
450
|
+
iter.return && iter.return(value);
|
|
451
|
+
}
|
|
452
|
+
catch (e) {
|
|
453
|
+
iter.throw && iter.throw(e);
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
function arrAppend(target, elms) {
|
|
460
|
+
if (!isUndefined(elms) && target) {
|
|
461
|
+
if (isArray(elms)) {
|
|
462
|
+
target.push.apply(target, elms);
|
|
463
|
+
}
|
|
464
|
+
else if (isIterator(elms) || isIterable(elms)) {
|
|
465
|
+
iterForOf(elms, function (elm) {
|
|
466
|
+
target.push(elm);
|
|
467
|
+
});
|
|
468
|
+
}
|
|
469
|
+
else {
|
|
470
|
+
target.push(elms);
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
return target;
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
function arrForEach(theArray, callbackfn, thisArg) {
|
|
477
|
+
if (theArray) {
|
|
478
|
+
var len = theArray[LENGTH] >>> 0;
|
|
479
|
+
for (var idx = 0; idx < len; idx++) {
|
|
480
|
+
if (idx in theArray) {
|
|
481
|
+
if (callbackfn.call(thisArg || theArray, theArray[idx], idx, theArray) === -1) {
|
|
482
|
+
break;
|
|
483
|
+
}
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
var arrIndexOf = _unwrapFunction(INDEX_OF, ArrProto);
|
|
490
|
+
|
|
491
|
+
var arrMap = _unwrapFunction("map", ArrProto);
|
|
492
|
+
|
|
493
|
+
var arrReduce = _unwrapFunction("reduce", ArrProto);
|
|
494
|
+
|
|
495
|
+
var arrSlice = _unwrapFunction(SLICE, ArrProto);
|
|
496
|
+
|
|
497
|
+
function objSetPrototypeOf(obj, proto) {
|
|
498
|
+
var fn = ObjClass$1["setPrototypeOf"] ||
|
|
499
|
+
({ __proto__: [] } instanceof Array && function (d, b) {
|
|
500
|
+
d.__proto__ = b;
|
|
501
|
+
}) ||
|
|
502
|
+
function (d, b) {
|
|
503
|
+
objForEachKey(b, function (key, value) { return d[key] = value; });
|
|
504
|
+
};
|
|
505
|
+
return fn(obj, proto);
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
function _createCustomError(name, d, baseClass) {
|
|
509
|
+
objSetPrototypeOf(d, baseClass);
|
|
510
|
+
function __() {
|
|
511
|
+
this.constructor = d;
|
|
512
|
+
this[NAME] = name;
|
|
513
|
+
}
|
|
514
|
+
__[PROTOTYPE] = baseClass[PROTOTYPE];
|
|
515
|
+
d[PROTOTYPE] = new __();
|
|
516
|
+
return d;
|
|
517
|
+
}
|
|
518
|
+
var _safeSetName = function (baseClass, name) {
|
|
519
|
+
try {
|
|
520
|
+
baseClass[PROTOTYPE][NAME] = name;
|
|
521
|
+
}
|
|
522
|
+
catch (e) {
|
|
523
|
+
}
|
|
524
|
+
};
|
|
525
|
+
function createCustomError(name, constructCb) {
|
|
526
|
+
var baseClass = Error;
|
|
527
|
+
var orgName = baseClass[PROTOTYPE][NAME];
|
|
528
|
+
var customError = _createCustomError(name, function () {
|
|
529
|
+
var _this = this;
|
|
530
|
+
try {
|
|
531
|
+
_safeSetName(baseClass, name);
|
|
532
|
+
_this = baseClass.apply(_this, arguments) || _this;
|
|
533
|
+
_this[NAME] = name;
|
|
534
|
+
constructCb && constructCb(_this, arguments);
|
|
535
|
+
}
|
|
536
|
+
finally {
|
|
537
|
+
_safeSetName(baseClass, orgName);
|
|
538
|
+
}
|
|
539
|
+
return _this;
|
|
540
|
+
}, baseClass);
|
|
541
|
+
return customError;
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
function utcNow() {
|
|
545
|
+
return (Date.now || polyUtcNow)();
|
|
546
|
+
}
|
|
547
|
+
function polyUtcNow() {
|
|
548
|
+
return new Date().getTime();
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
function _createTrimFn(exp) {
|
|
552
|
+
return function _doTrim(value) {
|
|
553
|
+
if (isNullOrUndefined(value)) {
|
|
554
|
+
throwTypeError("strTrim called [" + dumpObj(value) + "]");
|
|
555
|
+
}
|
|
556
|
+
if (value && value.replace) {
|
|
557
|
+
value = value.replace(exp, EMPTY);
|
|
558
|
+
}
|
|
559
|
+
return value;
|
|
560
|
+
};
|
|
561
|
+
}
|
|
562
|
+
var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
|
|
563
|
+
|
|
564
|
+
var strTrim = _unwrapFunction("trim", StrProto, polyStrTrim);
|
|
565
|
+
|
|
566
|
+
var _fnToString;
|
|
567
|
+
var _objCtrFnString;
|
|
568
|
+
var _gblWindow;
|
|
569
|
+
function isPlainObject(value) {
|
|
570
|
+
if (!value || typeof value !== OBJECT) {
|
|
571
|
+
return false;
|
|
572
|
+
}
|
|
573
|
+
if (!_gblWindow) {
|
|
574
|
+
_gblWindow = hasWindow() ? getWindow() : true;
|
|
575
|
+
}
|
|
576
|
+
var result = false;
|
|
577
|
+
if (value !== _gblWindow) {
|
|
578
|
+
if (!_objCtrFnString) {
|
|
579
|
+
_fnToString = Function[PROTOTYPE].toString;
|
|
580
|
+
_objCtrFnString = _fnToString.call(ObjClass$1);
|
|
581
|
+
}
|
|
582
|
+
try {
|
|
583
|
+
var proto = objGetPrototypeOf(value);
|
|
584
|
+
result = !proto;
|
|
585
|
+
if (!result) {
|
|
586
|
+
if (objHasOwnProperty(proto, CONSTRUCTOR)) {
|
|
587
|
+
proto = proto[CONSTRUCTOR];
|
|
588
|
+
}
|
|
589
|
+
result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
catch (ex) {
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
return result;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
var _perf;
|
|
599
|
+
function getPerformance() {
|
|
600
|
+
(!_perf || (_globalLazyTestHooks.lzy && !_perf.b)) && (_perf = _lazySafeGetInst("performance"));
|
|
601
|
+
return _perf.v;
|
|
602
|
+
}
|
|
603
|
+
|
|
604
|
+
var _objCreate = ObjClass$1["create"];
|
|
605
|
+
var objCreate = _objCreate || polyObjCreate;
|
|
606
|
+
function polyObjCreate(obj) {
|
|
607
|
+
if (!obj) {
|
|
608
|
+
return {};
|
|
609
|
+
}
|
|
610
|
+
var type = typeof obj;
|
|
611
|
+
if (type !== OBJECT && type !== FUNCTION) {
|
|
612
|
+
throw new TypeError("Prototype must be an Object or function: " + dumpObj(obj));
|
|
613
|
+
}
|
|
614
|
+
function tempFunc() { }
|
|
615
|
+
tempFunc[PROTOTYPE] = obj;
|
|
616
|
+
return new tempFunc();
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
var strIndexOf = _unwrapFunction(INDEX_OF, StrProto);
|
|
620
|
+
|
|
621
|
+
var REF = "ref";
|
|
622
|
+
var UNREF = "un" + REF;
|
|
623
|
+
var HAS_REF = "hasRef";
|
|
624
|
+
var ENABLED = "enabled";
|
|
625
|
+
function _createTimerHandler(startTimer, refreshFn, cancelFn) {
|
|
626
|
+
var _a;
|
|
627
|
+
var ref = true;
|
|
628
|
+
var timerId = startTimer ? refreshFn(null) : null;
|
|
629
|
+
var theTimerHandler;
|
|
630
|
+
var _unref = function () {
|
|
631
|
+
ref = false;
|
|
632
|
+
timerId && timerId[UNREF] && timerId[UNREF]();
|
|
633
|
+
return theTimerHandler;
|
|
634
|
+
};
|
|
635
|
+
var _ref = function () {
|
|
636
|
+
ref = true;
|
|
637
|
+
timerId && timerId[REF] && timerId[REF]();
|
|
638
|
+
return theTimerHandler;
|
|
639
|
+
};
|
|
640
|
+
var _hasRef = function () {
|
|
641
|
+
if (timerId && timerId[HAS_REF]) {
|
|
642
|
+
return timerId[HAS_REF]();
|
|
643
|
+
}
|
|
644
|
+
return ref;
|
|
645
|
+
};
|
|
646
|
+
var _refresh = function () {
|
|
647
|
+
timerId = refreshFn(timerId);
|
|
648
|
+
if (!ref) {
|
|
649
|
+
_unref();
|
|
650
|
+
}
|
|
651
|
+
return theTimerHandler;
|
|
652
|
+
};
|
|
653
|
+
var _cancel = function () {
|
|
654
|
+
timerId && cancelFn(timerId);
|
|
655
|
+
timerId = null;
|
|
656
|
+
};
|
|
657
|
+
var _setEnabled = function (value) {
|
|
658
|
+
!value && timerId && _cancel();
|
|
659
|
+
value && !timerId && _refresh();
|
|
660
|
+
};
|
|
661
|
+
theTimerHandler = (_a = {
|
|
662
|
+
cancel: _cancel,
|
|
663
|
+
refresh: _refresh
|
|
664
|
+
},
|
|
665
|
+
_a[HAS_REF] = _hasRef,
|
|
666
|
+
_a[REF] = _ref,
|
|
667
|
+
_a[UNREF] = _unref,
|
|
668
|
+
_a[ENABLED] = false,
|
|
669
|
+
_a);
|
|
670
|
+
objDefineProp(theTimerHandler, ENABLED, {
|
|
671
|
+
get: function () { return !!timerId; },
|
|
672
|
+
set: _setEnabled
|
|
673
|
+
});
|
|
674
|
+
return {
|
|
675
|
+
h: theTimerHandler,
|
|
676
|
+
dn: function () {
|
|
677
|
+
timerId = null;
|
|
678
|
+
}
|
|
679
|
+
};
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
|
|
683
|
+
var isArr = isArray(overrideFn);
|
|
684
|
+
var len = isArr ? overrideFn.length : 0;
|
|
685
|
+
var setFn = (len > 0 ? overrideFn[0] : (!isArr ? overrideFn : UNDEF_VALUE)) || setTimeout;
|
|
686
|
+
var clearFn = (len > 1 ? overrideFn[1] : UNDEF_VALUE) || clearTimeout;
|
|
687
|
+
var timerFn = theArgs[0];
|
|
688
|
+
theArgs[0] = function () {
|
|
689
|
+
handler.dn();
|
|
690
|
+
timerFn.apply(self, arguments);
|
|
691
|
+
};
|
|
692
|
+
var handler = _createTimerHandler(startTimer, function (timerId) {
|
|
693
|
+
if (timerId) {
|
|
694
|
+
if (timerId.refresh) {
|
|
695
|
+
timerId.refresh();
|
|
696
|
+
return timerId;
|
|
697
|
+
}
|
|
698
|
+
clearFn.call(self, timerId);
|
|
699
|
+
}
|
|
700
|
+
return setFn.apply(self, theArgs);
|
|
701
|
+
}, function (timerId) {
|
|
702
|
+
clearFn.call(self, timerId);
|
|
703
|
+
});
|
|
704
|
+
return handler.h;
|
|
705
|
+
}
|
|
706
|
+
function scheduleTimeout(callback, timeout) {
|
|
707
|
+
return _createTimeoutWith(this, true, UNDEF_VALUE, arrSlice(arguments));
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
var createEnumStyle = createEnum;
|
|
711
|
+
var createValueMap = createTypeMap;
|
|
712
|
+
|
|
713
|
+
var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
|
|
714
|
+
var _DYN_LENGTH$1 = "length";
|
|
715
|
+
var _DYN_RD_ONLY = "rdOnly";
|
|
716
|
+
var _DYN_NOTIFY = "notify";
|
|
717
|
+
var _DYN_THROW_INTERNAL = "throwInternal";
|
|
718
|
+
var _DYN_SET_DF = "setDf";
|
|
719
|
+
var _DYN_WATCH = "watch";
|
|
720
|
+
var _DYN_LOGGER = "logger";
|
|
721
|
+
var _DYN_APPLY = "apply";
|
|
722
|
+
var _DYN_PUSH = "push";
|
|
723
|
+
var _DYN_SPLICE = "splice";
|
|
724
|
+
var _DYN_CANCEL = "cancel";
|
|
725
|
+
var _DYN_NAME$1 = "name";
|
|
726
|
+
var _DYN_VERSION = "version";
|
|
727
|
+
var _DYN_LOGGING_LEVEL_CONSOL4 = "loggingLevelConsole";
|
|
728
|
+
var _DYN_MESSAGE_ID = "messageId";
|
|
729
|
+
var _DYN_MESSAGE$1 = "message";
|
|
730
|
+
var _DYN_DIAG_LOG = "diagLog";
|
|
731
|
+
var _DYN_USER_AGENT = "userAgent";
|
|
732
|
+
var _DYN_REPLACE = "replace";
|
|
733
|
+
var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
|
|
734
|
+
var _DYN_TRACE_ID = "traceId";
|
|
735
|
+
var _DYN_SPAN_ID = "spanId";
|
|
736
|
+
var _DYN_TRACE_FLAGS = "traceFlags";
|
|
737
|
+
|
|
738
|
+
var aggregationErrorType;
|
|
739
|
+
function throwAggregationError(message, sourceErrors) {
|
|
740
|
+
if (!aggregationErrorType) {
|
|
741
|
+
aggregationErrorType = createCustomError("AggregationError", function (self, args) {
|
|
742
|
+
if (args[_DYN_LENGTH$1 ] > 1) {
|
|
743
|
+
self.errors = args[1];
|
|
744
|
+
}
|
|
745
|
+
});
|
|
746
|
+
}
|
|
747
|
+
var theMessage = message || "One or more errors occurred.";
|
|
748
|
+
arrForEach(sourceErrors, function (srcError, idx) {
|
|
749
|
+
theMessage += "\n".concat(idx, " > ").concat(dumpObj(srcError));
|
|
750
|
+
});
|
|
751
|
+
throw new aggregationErrorType(theMessage, sourceErrors || []);
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
var strShimFunction = "function";
|
|
755
|
+
var strShimObject = "object";
|
|
756
|
+
var strShimUndefined = "undefined";
|
|
757
|
+
var strShimPrototype = "prototype";
|
|
758
|
+
var ObjClass = Object;
|
|
759
|
+
var ObjProto = ObjClass[strShimPrototype];
|
|
760
|
+
|
|
761
|
+
(getGlobal() || {})["Symbol"];
|
|
762
|
+
(getGlobal() || {})["Reflect"];
|
|
763
|
+
var strHasOwnProperty = "hasOwnProperty";
|
|
764
|
+
var __objAssignFnImpl = function (t) {
|
|
765
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
766
|
+
s = arguments[i];
|
|
767
|
+
for (var p in s) {
|
|
768
|
+
if (ObjProto[strHasOwnProperty].call(s, p)) {
|
|
769
|
+
t[p] = s[p];
|
|
770
|
+
}
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
return t;
|
|
774
|
+
};
|
|
775
|
+
var __assignFn = objAssign || __objAssignFnImpl;
|
|
776
|
+
var extendStaticsFn = function (d, b) {
|
|
777
|
+
extendStaticsFn = ObjClass["setPrototypeOf"] ||
|
|
778
|
+
({ __proto__: [] } instanceof Array && function (d, b) {
|
|
779
|
+
d.__proto__ = b;
|
|
780
|
+
}) ||
|
|
781
|
+
function (d, b) {
|
|
782
|
+
for (var p in b) {
|
|
783
|
+
if (b[strHasOwnProperty](p)) {
|
|
784
|
+
d[p] = b[p];
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
};
|
|
788
|
+
return extendStaticsFn(d, b);
|
|
789
|
+
};
|
|
790
|
+
function __extendsFn(d, b) {
|
|
791
|
+
if (typeof b !== strShimFunction && b !== null) {
|
|
792
|
+
throwTypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
793
|
+
}
|
|
794
|
+
extendStaticsFn(d, b);
|
|
795
|
+
function __() {
|
|
796
|
+
this.constructor = d;
|
|
797
|
+
}
|
|
798
|
+
d[strShimPrototype] = b === null ? objCreate(b) : (__[strShimPrototype] = b[strShimPrototype], new __());
|
|
799
|
+
}
|
|
800
|
+
|
|
801
|
+
var _a;
|
|
802
|
+
var Constructor = 'constructor';
|
|
803
|
+
var Prototype = 'prototype';
|
|
804
|
+
var strFunction = 'function';
|
|
805
|
+
var DynInstFuncTable = '_dynInstFuncs';
|
|
806
|
+
var DynProxyTag = '_isDynProxy';
|
|
807
|
+
var DynClassName = '_dynClass';
|
|
808
|
+
var DynClassNamePrefix = '_dynCls$';
|
|
809
|
+
var DynInstChkTag = '_dynInstChk';
|
|
810
|
+
var DynAllowInstChkTag = DynInstChkTag;
|
|
811
|
+
var DynProtoDefaultOptions = '_dfOpts';
|
|
812
|
+
var UnknownValue = '_unknown_';
|
|
813
|
+
var str__Proto = "__proto__";
|
|
814
|
+
var DynProtoBaseProto = "_dyn" + str__Proto;
|
|
815
|
+
var DynProtoGlobalSettings = "__dynProto$Gbl";
|
|
816
|
+
var DynProtoCurrent = "_dynInstProto";
|
|
817
|
+
var strUseBaseInst = 'useBaseInst';
|
|
818
|
+
var strSetInstFuncs = 'setInstFuncs';
|
|
819
|
+
var Obj = Object;
|
|
820
|
+
var _objGetPrototypeOf = Obj["getPrototypeOf"];
|
|
821
|
+
var _objGetOwnProps = Obj["getOwnPropertyNames"];
|
|
822
|
+
var _gbl = getGlobal();
|
|
823
|
+
var _gblInst = _gbl[DynProtoGlobalSettings] || (_gbl[DynProtoGlobalSettings] = {
|
|
824
|
+
o: (_a = {},
|
|
825
|
+
_a[strSetInstFuncs] = true,
|
|
826
|
+
_a[strUseBaseInst] = true,
|
|
827
|
+
_a),
|
|
828
|
+
n: 1000
|
|
829
|
+
});
|
|
830
|
+
function _isObjectOrArrayPrototype(target) {
|
|
831
|
+
return target && (target === Obj[Prototype] || target === Array[Prototype]);
|
|
832
|
+
}
|
|
833
|
+
function _isObjectArrayOrFunctionPrototype(target) {
|
|
834
|
+
return _isObjectOrArrayPrototype(target) || target === Function[Prototype];
|
|
835
|
+
}
|
|
836
|
+
function _getObjProto(target) {
|
|
837
|
+
var newProto;
|
|
838
|
+
if (target) {
|
|
839
|
+
if (_objGetPrototypeOf) {
|
|
840
|
+
return _objGetPrototypeOf(target);
|
|
841
|
+
}
|
|
842
|
+
var curProto = target[str__Proto] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null);
|
|
843
|
+
newProto = target[DynProtoBaseProto] || curProto;
|
|
844
|
+
if (!objHasOwnProperty(target, DynProtoBaseProto)) {
|
|
845
|
+
delete target[DynProtoCurrent];
|
|
846
|
+
newProto = target[DynProtoBaseProto] = target[DynProtoCurrent] || target[DynProtoBaseProto];
|
|
847
|
+
target[DynProtoCurrent] = curProto;
|
|
848
|
+
}
|
|
849
|
+
}
|
|
850
|
+
return newProto;
|
|
851
|
+
}
|
|
852
|
+
function _forEachProp(target, func) {
|
|
853
|
+
var props = [];
|
|
854
|
+
if (_objGetOwnProps) {
|
|
855
|
+
props = _objGetOwnProps(target);
|
|
856
|
+
}
|
|
857
|
+
else {
|
|
858
|
+
for (var name_1 in target) {
|
|
859
|
+
if (typeof name_1 === "string" && objHasOwnProperty(target, name_1)) {
|
|
860
|
+
props.push(name_1);
|
|
861
|
+
}
|
|
862
|
+
}
|
|
863
|
+
}
|
|
864
|
+
if (props && props.length > 0) {
|
|
865
|
+
for (var lp = 0; lp < props.length; lp++) {
|
|
866
|
+
func(props[lp]);
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
function _isDynamicCandidate(target, funcName, skipOwn) {
|
|
871
|
+
return (funcName !== Constructor && typeof target[funcName] === strFunction && (skipOwn || objHasOwnProperty(target, funcName)));
|
|
872
|
+
}
|
|
873
|
+
function _throwTypeError(message) {
|
|
874
|
+
throwTypeError("DynamicProto: " + message);
|
|
875
|
+
}
|
|
876
|
+
function _getInstanceFuncs(thisTarget) {
|
|
877
|
+
var instFuncs = {};
|
|
878
|
+
_forEachProp(thisTarget, function (name) {
|
|
879
|
+
if (!instFuncs[name] && _isDynamicCandidate(thisTarget, name, false)) {
|
|
880
|
+
instFuncs[name] = thisTarget[name];
|
|
881
|
+
}
|
|
882
|
+
});
|
|
883
|
+
return instFuncs;
|
|
884
|
+
}
|
|
885
|
+
function _hasVisited(values, value) {
|
|
886
|
+
for (var lp = values.length - 1; lp >= 0; lp--) {
|
|
887
|
+
if (values[lp] === value) {
|
|
888
|
+
return true;
|
|
889
|
+
}
|
|
890
|
+
}
|
|
891
|
+
return false;
|
|
892
|
+
}
|
|
893
|
+
function _getBaseFuncs(classProto, thisTarget, instFuncs, useBaseInst) {
|
|
894
|
+
function _instFuncProxy(target, funcHost, funcName) {
|
|
895
|
+
var theFunc = funcHost[funcName];
|
|
896
|
+
if (theFunc[DynProxyTag] && useBaseInst) {
|
|
897
|
+
var instFuncTable = target[DynInstFuncTable] || {};
|
|
898
|
+
if (instFuncTable[DynAllowInstChkTag] !== false) {
|
|
899
|
+
theFunc = (instFuncTable[funcHost[DynClassName]] || {})[funcName] || theFunc;
|
|
900
|
+
}
|
|
901
|
+
}
|
|
902
|
+
return function () {
|
|
903
|
+
return theFunc.apply(target, arguments);
|
|
904
|
+
};
|
|
905
|
+
}
|
|
906
|
+
var baseFuncs = {};
|
|
907
|
+
_forEachProp(instFuncs, function (name) {
|
|
908
|
+
baseFuncs[name] = _instFuncProxy(thisTarget, instFuncs, name);
|
|
909
|
+
});
|
|
910
|
+
var baseProto = _getObjProto(classProto);
|
|
911
|
+
var visited = [];
|
|
912
|
+
while (baseProto && !_isObjectArrayOrFunctionPrototype(baseProto) && !_hasVisited(visited, baseProto)) {
|
|
913
|
+
_forEachProp(baseProto, function (name) {
|
|
914
|
+
if (!baseFuncs[name] && _isDynamicCandidate(baseProto, name, !_objGetPrototypeOf)) {
|
|
915
|
+
baseFuncs[name] = _instFuncProxy(thisTarget, baseProto, name);
|
|
916
|
+
}
|
|
917
|
+
});
|
|
918
|
+
visited.push(baseProto);
|
|
919
|
+
baseProto = _getObjProto(baseProto);
|
|
920
|
+
}
|
|
921
|
+
return baseFuncs;
|
|
922
|
+
}
|
|
923
|
+
function _getInstFunc(target, funcName, proto, currentDynProtoProxy) {
|
|
924
|
+
var instFunc = null;
|
|
925
|
+
if (target && objHasOwnProperty(proto, DynClassName)) {
|
|
926
|
+
var instFuncTable = target[DynInstFuncTable] || {};
|
|
927
|
+
instFunc = (instFuncTable[proto[DynClassName]] || {})[funcName];
|
|
928
|
+
if (!instFunc) {
|
|
929
|
+
_throwTypeError("Missing [" + funcName + "] " + strFunction);
|
|
930
|
+
}
|
|
931
|
+
if (!instFunc[DynInstChkTag] && instFuncTable[DynAllowInstChkTag] !== false) {
|
|
932
|
+
var canAddInst = !objHasOwnProperty(target, funcName);
|
|
933
|
+
var objProto = _getObjProto(target);
|
|
934
|
+
var visited = [];
|
|
935
|
+
while (canAddInst && objProto && !_isObjectArrayOrFunctionPrototype(objProto) && !_hasVisited(visited, objProto)) {
|
|
936
|
+
var protoFunc = objProto[funcName];
|
|
937
|
+
if (protoFunc) {
|
|
938
|
+
canAddInst = (protoFunc === currentDynProtoProxy);
|
|
939
|
+
break;
|
|
940
|
+
}
|
|
941
|
+
visited.push(objProto);
|
|
942
|
+
objProto = _getObjProto(objProto);
|
|
943
|
+
}
|
|
944
|
+
try {
|
|
945
|
+
if (canAddInst) {
|
|
946
|
+
target[funcName] = instFunc;
|
|
947
|
+
}
|
|
948
|
+
instFunc[DynInstChkTag] = 1;
|
|
949
|
+
}
|
|
950
|
+
catch (e) {
|
|
951
|
+
instFuncTable[DynAllowInstChkTag] = false;
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
}
|
|
955
|
+
return instFunc;
|
|
956
|
+
}
|
|
957
|
+
function _getProtoFunc(funcName, proto, currentDynProtoProxy) {
|
|
958
|
+
var protoFunc = proto[funcName];
|
|
959
|
+
if (protoFunc === currentDynProtoProxy) {
|
|
960
|
+
protoFunc = _getObjProto(proto)[funcName];
|
|
961
|
+
}
|
|
962
|
+
if (typeof protoFunc !== strFunction) {
|
|
963
|
+
_throwTypeError("[" + funcName + "] is not a " + strFunction);
|
|
964
|
+
}
|
|
965
|
+
return protoFunc;
|
|
966
|
+
}
|
|
967
|
+
function _populatePrototype(proto, className, target, baseInstFuncs, setInstanceFunc) {
|
|
968
|
+
function _createDynamicPrototype(proto, funcName) {
|
|
969
|
+
var dynProtoProxy = function () {
|
|
970
|
+
var instFunc = _getInstFunc(this, funcName, proto, dynProtoProxy) || _getProtoFunc(funcName, proto, dynProtoProxy);
|
|
971
|
+
return instFunc.apply(this, arguments);
|
|
972
|
+
};
|
|
973
|
+
dynProtoProxy[DynProxyTag] = 1;
|
|
974
|
+
return dynProtoProxy;
|
|
975
|
+
}
|
|
976
|
+
if (!_isObjectOrArrayPrototype(proto)) {
|
|
977
|
+
var instFuncTable = target[DynInstFuncTable] = target[DynInstFuncTable] || {};
|
|
978
|
+
var instFuncs_1 = instFuncTable[className] = (instFuncTable[className] || {});
|
|
979
|
+
if (instFuncTable[DynAllowInstChkTag] !== false) {
|
|
980
|
+
instFuncTable[DynAllowInstChkTag] = !!setInstanceFunc;
|
|
981
|
+
}
|
|
982
|
+
_forEachProp(target, function (name) {
|
|
983
|
+
if (_isDynamicCandidate(target, name, false) && target[name] !== baseInstFuncs[name]) {
|
|
984
|
+
instFuncs_1[name] = target[name];
|
|
985
|
+
delete target[name];
|
|
986
|
+
if (!objHasOwnProperty(proto, name) || (proto[name] && !proto[name][DynProxyTag])) {
|
|
987
|
+
proto[name] = _createDynamicPrototype(proto, name);
|
|
988
|
+
}
|
|
989
|
+
}
|
|
990
|
+
});
|
|
991
|
+
}
|
|
992
|
+
}
|
|
993
|
+
function _checkPrototype(classProto, thisTarget) {
|
|
994
|
+
if (_objGetPrototypeOf) {
|
|
995
|
+
var visited = [];
|
|
996
|
+
var thisProto = _getObjProto(thisTarget);
|
|
997
|
+
while (thisProto && !_isObjectArrayOrFunctionPrototype(thisProto) && !_hasVisited(visited, thisProto)) {
|
|
998
|
+
if (thisProto === classProto) {
|
|
999
|
+
return true;
|
|
1000
|
+
}
|
|
1001
|
+
visited.push(thisProto);
|
|
1002
|
+
thisProto = _getObjProto(thisProto);
|
|
1003
|
+
}
|
|
1004
|
+
return false;
|
|
1005
|
+
}
|
|
1006
|
+
return true;
|
|
1007
|
+
}
|
|
1008
|
+
function _getObjName(target, unknownValue) {
|
|
1009
|
+
if (objHasOwnProperty(target, Prototype)) {
|
|
1010
|
+
return target.name || unknownValue || UnknownValue;
|
|
1011
|
+
}
|
|
1012
|
+
return (((target || {})[Constructor]) || {}).name || unknownValue || UnknownValue;
|
|
1013
|
+
}
|
|
1014
|
+
function dynamicProto(theClass, target, delegateFunc, options) {
|
|
1015
|
+
if (!objHasOwnProperty(theClass, Prototype)) {
|
|
1016
|
+
_throwTypeError("theClass is an invalid class definition.");
|
|
1017
|
+
}
|
|
1018
|
+
var classProto = theClass[Prototype];
|
|
1019
|
+
if (!_checkPrototype(classProto, target)) {
|
|
1020
|
+
_throwTypeError("[" + _getObjName(theClass) + "] not in hierarchy of [" + _getObjName(target) + "]");
|
|
1021
|
+
}
|
|
1022
|
+
var className = null;
|
|
1023
|
+
if (objHasOwnProperty(classProto, DynClassName)) {
|
|
1024
|
+
className = classProto[DynClassName];
|
|
1025
|
+
}
|
|
1026
|
+
else {
|
|
1027
|
+
className = DynClassNamePrefix + _getObjName(theClass, "_") + "$" + _gblInst.n;
|
|
1028
|
+
_gblInst.n++;
|
|
1029
|
+
classProto[DynClassName] = className;
|
|
1030
|
+
}
|
|
1031
|
+
var perfOptions = dynamicProto[DynProtoDefaultOptions];
|
|
1032
|
+
var useBaseInst = !!perfOptions[strUseBaseInst];
|
|
1033
|
+
if (useBaseInst && options && options[strUseBaseInst] !== undefined) {
|
|
1034
|
+
useBaseInst = !!options[strUseBaseInst];
|
|
1035
|
+
}
|
|
1036
|
+
var instFuncs = _getInstanceFuncs(target);
|
|
1037
|
+
var baseFuncs = _getBaseFuncs(classProto, target, instFuncs, useBaseInst);
|
|
1038
|
+
delegateFunc(target, baseFuncs);
|
|
1039
|
+
var setInstanceFunc = !!_objGetPrototypeOf && !!perfOptions[strSetInstFuncs];
|
|
1040
|
+
if (setInstanceFunc && options) {
|
|
1041
|
+
setInstanceFunc = !!options[strSetInstFuncs];
|
|
1042
|
+
}
|
|
1043
|
+
_populatePrototype(classProto, className, target, instFuncs, setInstanceFunc !== false);
|
|
1044
|
+
}
|
|
1045
|
+
dynamicProto[DynProtoDefaultOptions] = _gblInst.o;
|
|
1046
|
+
|
|
1047
|
+
var UNDEFINED_VALUE = undefined;
|
|
1048
|
+
var STR_EMPTY = "";
|
|
1049
|
+
var STR_ERROR_TO_CONSOLE = "errorToConsole";
|
|
1050
|
+
var STR_WARN_TO_CONSOLE = "warnToConsole";
|
|
1051
|
+
var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
|
|
1052
|
+
|
|
1053
|
+
var rCamelCase = /-([a-z])/g;
|
|
1054
|
+
var rNormalizeInvalid = /([^\w\d_$])/g;
|
|
1055
|
+
var rLeadingNumeric = /^(\d+[\w\d_$])/;
|
|
1056
|
+
function isNotNullOrUndefined(value) {
|
|
1057
|
+
return !isNullOrUndefined(value);
|
|
1058
|
+
}
|
|
1059
|
+
function normalizeJsName(name) {
|
|
1060
|
+
var value = name;
|
|
1061
|
+
if (value && isString(value)) {
|
|
1062
|
+
value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
|
|
1063
|
+
return letter.toUpperCase();
|
|
1064
|
+
});
|
|
1065
|
+
value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
|
|
1066
|
+
value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
|
|
1067
|
+
return "_" + match;
|
|
1068
|
+
});
|
|
1069
|
+
}
|
|
1070
|
+
return value;
|
|
1071
|
+
}
|
|
1072
|
+
function strContains(value, search) {
|
|
1073
|
+
if (value && search) {
|
|
1074
|
+
return strIndexOf(value, search) !== -1;
|
|
1075
|
+
}
|
|
1076
|
+
return false;
|
|
1077
|
+
}
|
|
1078
|
+
function toISOString(date) {
|
|
1079
|
+
return date && date.toISOString() || "";
|
|
1080
|
+
}
|
|
1081
|
+
function getExceptionName(object) {
|
|
1082
|
+
if (isError(object)) {
|
|
1083
|
+
return object[_DYN_NAME$1 ];
|
|
1084
|
+
}
|
|
1085
|
+
return STR_EMPTY;
|
|
1086
|
+
}
|
|
1087
|
+
function createClassFromInterface(defaults) {
|
|
1088
|
+
return /** @class */ (function () {
|
|
1089
|
+
function class_1() {
|
|
1090
|
+
var _this = this;
|
|
1091
|
+
if (defaults) {
|
|
1092
|
+
objForEachKey(defaults, function (field, value) {
|
|
1093
|
+
_this[field] = value;
|
|
1094
|
+
});
|
|
1095
|
+
}
|
|
1096
|
+
}
|
|
1097
|
+
return class_1;
|
|
1098
|
+
}());
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
var strConsole = "console";
|
|
1102
|
+
var strJSON = "JSON";
|
|
1103
|
+
var strCrypto = "crypto";
|
|
1104
|
+
var strMsCrypto = "msCrypto";
|
|
1105
|
+
var strMsie = "msie";
|
|
1106
|
+
var strTrident = "trident/";
|
|
1107
|
+
var _isTrident = null;
|
|
1108
|
+
var _navUserAgentCheck = null;
|
|
1109
|
+
var _beaconsSupported = null;
|
|
1110
|
+
function getConsole() {
|
|
1111
|
+
if (typeof console !== strShimUndefined) {
|
|
1112
|
+
return console;
|
|
1113
|
+
}
|
|
1114
|
+
return getInst(strConsole);
|
|
1115
|
+
}
|
|
1116
|
+
function hasJSON() {
|
|
1117
|
+
return Boolean((typeof JSON === strShimObject && JSON) || getInst(strJSON) !== null);
|
|
1118
|
+
}
|
|
1119
|
+
function getJSON() {
|
|
1120
|
+
if (hasJSON()) {
|
|
1121
|
+
return JSON || getInst(strJSON);
|
|
1122
|
+
}
|
|
1123
|
+
return null;
|
|
1124
|
+
}
|
|
1125
|
+
function getCrypto() {
|
|
1126
|
+
return getInst(strCrypto);
|
|
1127
|
+
}
|
|
1128
|
+
function getMsCrypto() {
|
|
1129
|
+
return getInst(strMsCrypto);
|
|
1130
|
+
}
|
|
1131
|
+
function isIE() {
|
|
1132
|
+
var nav = getNavigator();
|
|
1133
|
+
if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
|
|
1134
|
+
_navUserAgentCheck = nav[_DYN_USER_AGENT ];
|
|
1135
|
+
var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
|
|
1136
|
+
_isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
|
|
1137
|
+
}
|
|
1138
|
+
return _isTrident;
|
|
1139
|
+
}
|
|
1140
|
+
function isBeaconsSupported() {
|
|
1141
|
+
if (_beaconsSupported === null) {
|
|
1142
|
+
_beaconsSupported = hasNavigator() && Boolean(getNavigator().sendBeacon);
|
|
1143
|
+
}
|
|
1144
|
+
return _beaconsSupported;
|
|
1145
|
+
}
|
|
1146
|
+
function _getNamedValue(values, name) {
|
|
1147
|
+
if (values) {
|
|
1148
|
+
for (var i = 0; i < values[_DYN_LENGTH$1 ]; i++) {
|
|
1149
|
+
var value = values[i];
|
|
1150
|
+
if (value[_DYN_NAME$1 ]) {
|
|
1151
|
+
if (value[_DYN_NAME$1 ] === name) {
|
|
1152
|
+
return value;
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1156
|
+
}
|
|
1157
|
+
return {};
|
|
1158
|
+
}
|
|
1159
|
+
function findMetaTag(name) {
|
|
1160
|
+
var doc = getDocument();
|
|
1161
|
+
if (doc && name) {
|
|
1162
|
+
return _getNamedValue(doc.querySelectorAll("meta"), name).content;
|
|
1163
|
+
}
|
|
1164
|
+
return null;
|
|
1165
|
+
}
|
|
1166
|
+
function findNamedServerTiming(name) {
|
|
1167
|
+
var value;
|
|
1168
|
+
var perf = getPerformance();
|
|
1169
|
+
if (perf) {
|
|
1170
|
+
var navPerf = perf.getEntriesByType("navigation") || [];
|
|
1171
|
+
value = _getNamedValue((navPerf[_DYN_LENGTH$1 ] > 0 ? navPerf[0] : {}).serverTiming, name).description;
|
|
1172
|
+
}
|
|
1173
|
+
return value;
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
var UInt32Mask = 0x100000000;
|
|
1177
|
+
var MaxUInt32 = 0xffffffff;
|
|
1178
|
+
var SEED1 = 123456789;
|
|
1179
|
+
var SEED2 = 987654321;
|
|
1180
|
+
var _mwcSeeded = false;
|
|
1181
|
+
var _mwcW = SEED1;
|
|
1182
|
+
var _mwcZ = SEED2;
|
|
1183
|
+
function _mwcSeed(seedValue) {
|
|
1184
|
+
if (seedValue < 0) {
|
|
1185
|
+
seedValue >>>= 0;
|
|
1186
|
+
}
|
|
1187
|
+
_mwcW = (SEED1 + seedValue) & MaxUInt32;
|
|
1188
|
+
_mwcZ = (SEED2 - seedValue) & MaxUInt32;
|
|
1189
|
+
_mwcSeeded = true;
|
|
1190
|
+
}
|
|
1191
|
+
function _autoSeedMwc() {
|
|
1192
|
+
try {
|
|
1193
|
+
var now = utcNow() & 0x7fffffff;
|
|
1194
|
+
_mwcSeed(((Math.random() * UInt32Mask) ^ now) + now);
|
|
1195
|
+
}
|
|
1196
|
+
catch (e) {
|
|
1197
|
+
}
|
|
1198
|
+
}
|
|
1199
|
+
function randomValue(maxValue) {
|
|
1200
|
+
if (maxValue > 0) {
|
|
1201
|
+
return Math.floor((random32() / MaxUInt32) * (maxValue + 1)) >>> 0;
|
|
1202
|
+
}
|
|
1203
|
+
return 0;
|
|
1204
|
+
}
|
|
1205
|
+
function random32(signed) {
|
|
1206
|
+
var value = 0;
|
|
1207
|
+
var c = getCrypto() || getMsCrypto();
|
|
1208
|
+
if (c && c.getRandomValues) {
|
|
1209
|
+
value = c.getRandomValues(new Uint32Array(1))[0] & MaxUInt32;
|
|
1210
|
+
}
|
|
1211
|
+
if (value === 0 && isIE()) {
|
|
1212
|
+
if (!_mwcSeeded) {
|
|
1213
|
+
_autoSeedMwc();
|
|
1214
|
+
}
|
|
1215
|
+
value = mwcRandom32() & MaxUInt32;
|
|
1216
|
+
}
|
|
1217
|
+
if (value === 0) {
|
|
1218
|
+
value = Math.floor((UInt32Mask * Math.random()) | 0);
|
|
1219
|
+
}
|
|
1220
|
+
if (!signed) {
|
|
1221
|
+
value >>>= 0;
|
|
1222
|
+
}
|
|
1223
|
+
return value;
|
|
1224
|
+
}
|
|
1225
|
+
function mwcRandom32(signed) {
|
|
1226
|
+
_mwcZ = (36969 * (_mwcZ & 0xFFFF) + (_mwcZ >> 16)) & MaxUInt32;
|
|
1227
|
+
_mwcW = (18000 * (_mwcW & 0xFFFF) + (_mwcW >> 16)) & MaxUInt32;
|
|
1228
|
+
var value = (((_mwcZ << 16) + (_mwcW & 0xFFFF)) >>> 0) & MaxUInt32 | 0;
|
|
1229
|
+
if (!signed) {
|
|
1230
|
+
value >>>= 0;
|
|
1231
|
+
}
|
|
1232
|
+
return value;
|
|
1233
|
+
}
|
|
1234
|
+
function newId(maxLength) {
|
|
1235
|
+
if (maxLength === void 0) { maxLength = 22; }
|
|
1236
|
+
var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
|
1237
|
+
var number = random32() >>> 0;
|
|
1238
|
+
var chars = 0;
|
|
1239
|
+
var result = STR_EMPTY;
|
|
1240
|
+
while (result[_DYN_LENGTH$1 ] < maxLength) {
|
|
1241
|
+
chars++;
|
|
1242
|
+
result += base64chars.charAt(number & 0x3F);
|
|
1243
|
+
number >>>= 6;
|
|
1244
|
+
if (chars === 5) {
|
|
1245
|
+
number = (((random32() << 2) & 0xFFFFFFFF) | (number & 0x03)) >>> 0;
|
|
1246
|
+
chars = 0;
|
|
1247
|
+
}
|
|
1248
|
+
}
|
|
1249
|
+
return result;
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1252
|
+
var version = "3.0.0-nightly3.2304-28";
|
|
1253
|
+
var instanceName = "." + newId(6);
|
|
1254
|
+
var _dataUid = 0;
|
|
1255
|
+
function createUniqueNamespace(name, includeVersion) {
|
|
1256
|
+
if (includeVersion === void 0) { includeVersion = false; }
|
|
1257
|
+
return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
|
|
1258
|
+
}
|
|
1259
|
+
|
|
1260
|
+
function _isConfigDefaults(value) {
|
|
1261
|
+
return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
|
|
1262
|
+
}
|
|
1263
|
+
function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
|
|
1264
|
+
var defValue;
|
|
1265
|
+
var isDefaultValid = cfgDefaults.dfVal || isDefined;
|
|
1266
|
+
if (theConfig && cfgDefaults.fb) {
|
|
1267
|
+
var fallbacks = cfgDefaults.fb;
|
|
1268
|
+
if (!isArray(fallbacks)) {
|
|
1269
|
+
fallbacks = [fallbacks];
|
|
1270
|
+
}
|
|
1271
|
+
for (var lp = 0; lp < fallbacks[_DYN_LENGTH$1 ]; lp++) {
|
|
1272
|
+
var fallback = fallbacks[lp];
|
|
1273
|
+
var fbValue = theConfig[fallback];
|
|
1274
|
+
if (isDefaultValid(fbValue)) {
|
|
1275
|
+
defValue = fbValue;
|
|
1276
|
+
}
|
|
1277
|
+
else if (dynamicHandler) {
|
|
1278
|
+
fbValue = dynamicHandler.cfg[fallback];
|
|
1279
|
+
if (isDefaultValid(fbValue)) {
|
|
1280
|
+
defValue = fbValue;
|
|
1281
|
+
}
|
|
1282
|
+
dynamicHandler.set(dynamicHandler.cfg, asString(fallback), fbValue);
|
|
1283
|
+
}
|
|
1284
|
+
if (isDefaultValid(defValue)) {
|
|
1285
|
+
break;
|
|
1286
|
+
}
|
|
1287
|
+
}
|
|
1288
|
+
}
|
|
1289
|
+
if (!isDefaultValid(defValue) && isDefaultValid(cfgDefaults.v)) {
|
|
1290
|
+
defValue = cfgDefaults.v;
|
|
1291
|
+
}
|
|
1292
|
+
return defValue;
|
|
1293
|
+
}
|
|
1294
|
+
function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
|
|
1295
|
+
var theValue = cfgDefaults;
|
|
1296
|
+
if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
|
|
1297
|
+
theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
|
|
1298
|
+
}
|
|
1299
|
+
if (theValue) {
|
|
1300
|
+
if (_isConfigDefaults(theValue)) {
|
|
1301
|
+
theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
|
|
1302
|
+
}
|
|
1303
|
+
var newValue_1;
|
|
1304
|
+
if (isArray(theValue)) {
|
|
1305
|
+
newValue_1 = [];
|
|
1306
|
+
newValue_1[_DYN_LENGTH$1 ] = theValue[_DYN_LENGTH$1 ];
|
|
1307
|
+
}
|
|
1308
|
+
else if (isPlainObject(theValue)) {
|
|
1309
|
+
newValue_1 = {};
|
|
1310
|
+
}
|
|
1311
|
+
if (newValue_1) {
|
|
1312
|
+
objForEachKey(theValue, function (key, value) {
|
|
1313
|
+
if (value && _isConfigDefaults(value)) {
|
|
1314
|
+
value = _resolveDefaultValue(dynamicHandler, theConfig, value);
|
|
1315
|
+
}
|
|
1316
|
+
newValue_1[key] = value;
|
|
1317
|
+
});
|
|
1318
|
+
theValue = newValue_1;
|
|
1319
|
+
}
|
|
1320
|
+
}
|
|
1321
|
+
return theValue;
|
|
1322
|
+
}
|
|
1323
|
+
function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
|
|
1324
|
+
var isValid;
|
|
1325
|
+
var setFn;
|
|
1326
|
+
var defValue;
|
|
1327
|
+
var cfgDefaults = defaultValue;
|
|
1328
|
+
var mergeDf;
|
|
1329
|
+
var reference;
|
|
1330
|
+
var readOnly;
|
|
1331
|
+
if (_isConfigDefaults(cfgDefaults)) {
|
|
1332
|
+
isValid = cfgDefaults.isVal;
|
|
1333
|
+
setFn = cfgDefaults.set;
|
|
1334
|
+
readOnly = cfgDefaults[_DYN_RD_ONLY ];
|
|
1335
|
+
mergeDf = cfgDefaults.mrg;
|
|
1336
|
+
reference = cfgDefaults.ref;
|
|
1337
|
+
if (!reference && isUndefined(reference)) {
|
|
1338
|
+
reference = !!mergeDf;
|
|
1339
|
+
}
|
|
1340
|
+
defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
|
|
1341
|
+
}
|
|
1342
|
+
else {
|
|
1343
|
+
defValue = defaultValue;
|
|
1344
|
+
}
|
|
1345
|
+
var theValue;
|
|
1346
|
+
var usingDefault = true;
|
|
1347
|
+
var cfgValue = theConfig[name];
|
|
1348
|
+
if (cfgValue || !isNullOrUndefined(cfgValue)) {
|
|
1349
|
+
theValue = cfgValue;
|
|
1350
|
+
usingDefault = false;
|
|
1351
|
+
if (isValid && theValue !== defValue && !isValid(theValue)) {
|
|
1352
|
+
theValue = defValue;
|
|
1353
|
+
usingDefault = true;
|
|
1354
|
+
}
|
|
1355
|
+
if (setFn) {
|
|
1356
|
+
theValue = setFn(theValue, defValue, theConfig);
|
|
1357
|
+
usingDefault = theValue === defValue;
|
|
1358
|
+
}
|
|
1359
|
+
}
|
|
1360
|
+
if (!usingDefault) {
|
|
1361
|
+
if (isPlainObject(theValue) || isArray(defValue)) {
|
|
1362
|
+
if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
|
|
1363
|
+
objForEachKey(defValue, function (dfName, dfValue) {
|
|
1364
|
+
_applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
|
|
1365
|
+
});
|
|
1366
|
+
}
|
|
1367
|
+
}
|
|
1368
|
+
}
|
|
1369
|
+
else if (defValue) {
|
|
1370
|
+
theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
|
|
1371
|
+
}
|
|
1372
|
+
else {
|
|
1373
|
+
theValue = defValue;
|
|
1374
|
+
}
|
|
1375
|
+
dynamicHandler.set(theConfig, name, theValue);
|
|
1376
|
+
if (reference) {
|
|
1377
|
+
dynamicHandler.ref(theConfig, name);
|
|
1378
|
+
}
|
|
1379
|
+
if (readOnly) {
|
|
1380
|
+
dynamicHandler[_DYN_RD_ONLY ](theConfig, name);
|
|
1381
|
+
}
|
|
1382
|
+
}
|
|
1383
|
+
|
|
1384
|
+
var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
|
|
1385
|
+
var BLOCK_DYNAMIC = symbolFor("[[ai_blkDynCfg_1]]");
|
|
1386
|
+
var FORCE_DYNAMIC = symbolFor("[[ai_frcDynCfg_1]]");
|
|
1387
|
+
function _cfgDeepCopy(source) {
|
|
1388
|
+
if (source) {
|
|
1389
|
+
var target_1;
|
|
1390
|
+
if (isArray(source)) {
|
|
1391
|
+
target_1 = [];
|
|
1392
|
+
target_1[_DYN_LENGTH$1 ] = source[_DYN_LENGTH$1 ];
|
|
1393
|
+
}
|
|
1394
|
+
else if (isPlainObject(source)) {
|
|
1395
|
+
target_1 = {};
|
|
1396
|
+
}
|
|
1397
|
+
if (target_1) {
|
|
1398
|
+
objForEachKey(source, function (key, value) {
|
|
1399
|
+
target_1[key] = _cfgDeepCopy(value);
|
|
1400
|
+
});
|
|
1401
|
+
return target_1;
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
return source;
|
|
1405
|
+
}
|
|
1406
|
+
function getDynamicConfigHandler(value) {
|
|
1407
|
+
if (value) {
|
|
1408
|
+
var handler = value[CFG_HANDLER_LINK] || value;
|
|
1409
|
+
if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
|
|
1410
|
+
return handler;
|
|
1411
|
+
}
|
|
1412
|
+
}
|
|
1413
|
+
return null;
|
|
1414
|
+
}
|
|
1415
|
+
function _canMakeDynamic(value) {
|
|
1416
|
+
var result = false;
|
|
1417
|
+
if (value) {
|
|
1418
|
+
result = value[FORCE_DYNAMIC];
|
|
1419
|
+
if (!result && !value[BLOCK_DYNAMIC]) {
|
|
1420
|
+
result = isPlainObject(value) || isArray(value);
|
|
1421
|
+
}
|
|
1422
|
+
}
|
|
1423
|
+
return result;
|
|
1424
|
+
}
|
|
1425
|
+
function throwInvalidAccess(message) {
|
|
1426
|
+
throwTypeError("InvalidAccess:" + message);
|
|
1427
|
+
}
|
|
1428
|
+
|
|
1429
|
+
var arrayMethodsToPatch = [
|
|
1430
|
+
"push",
|
|
1431
|
+
"pop",
|
|
1432
|
+
"shift",
|
|
1433
|
+
"unshift",
|
|
1434
|
+
"splice"
|
|
1435
|
+
];
|
|
1436
|
+
function _patchArray(state, target) {
|
|
1437
|
+
if (isArray(target)) {
|
|
1438
|
+
arrForEach(arrayMethodsToPatch, function (method) {
|
|
1439
|
+
var orgMethod = target[method];
|
|
1440
|
+
target[method] = function () {
|
|
1441
|
+
var args = [];
|
|
1442
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
1443
|
+
args[_i] = arguments[_i];
|
|
1444
|
+
}
|
|
1445
|
+
var result = orgMethod[_DYN_APPLY ](this, args);
|
|
1446
|
+
_makeDynamicObject(state, target);
|
|
1447
|
+
return result;
|
|
1448
|
+
};
|
|
1449
|
+
});
|
|
1450
|
+
}
|
|
1451
|
+
}
|
|
1452
|
+
function _getOwnPropGetter(target, name) {
|
|
1453
|
+
var propDesc = objGetOwnPropertyDescriptor(target, name);
|
|
1454
|
+
return propDesc && propDesc.get;
|
|
1455
|
+
}
|
|
1456
|
+
function _makeDynamicProperty(state, theConfig, name, value) {
|
|
1457
|
+
var detail = {
|
|
1458
|
+
n: name,
|
|
1459
|
+
h: [],
|
|
1460
|
+
trk: function (handler) {
|
|
1461
|
+
if (handler && handler.fn) {
|
|
1462
|
+
if (arrIndexOf(detail.h, handler) === -1) {
|
|
1463
|
+
detail.h[_DYN_PUSH ](handler);
|
|
1464
|
+
}
|
|
1465
|
+
state.trk(handler, detail);
|
|
1466
|
+
}
|
|
1467
|
+
},
|
|
1468
|
+
clr: function (handler) {
|
|
1469
|
+
var idx = arrIndexOf(detail.h, handler);
|
|
1470
|
+
if (idx !== -1) {
|
|
1471
|
+
detail.h[_DYN_SPLICE ](idx, 1);
|
|
1472
|
+
}
|
|
1473
|
+
}
|
|
1474
|
+
};
|
|
1475
|
+
var checkDynamic = true;
|
|
1476
|
+
var isObjectOrArray = false;
|
|
1477
|
+
function _getProperty() {
|
|
1478
|
+
if (checkDynamic) {
|
|
1479
|
+
isObjectOrArray = isObjectOrArray || _canMakeDynamic(value);
|
|
1480
|
+
if (value && !value[CFG_HANDLER_LINK] && isObjectOrArray) {
|
|
1481
|
+
value = _makeDynamicObject(state, value);
|
|
1482
|
+
}
|
|
1483
|
+
checkDynamic = false;
|
|
1484
|
+
}
|
|
1485
|
+
var activeHandler = state.act;
|
|
1486
|
+
if (activeHandler) {
|
|
1487
|
+
detail.trk(activeHandler);
|
|
1488
|
+
}
|
|
1489
|
+
return value;
|
|
1490
|
+
}
|
|
1491
|
+
_getProperty[state.prop] = {
|
|
1492
|
+
chng: function () {
|
|
1493
|
+
state.add(detail);
|
|
1494
|
+
}
|
|
1495
|
+
};
|
|
1496
|
+
function _setProperty(newValue) {
|
|
1497
|
+
if (value !== newValue) {
|
|
1498
|
+
if (!!_getProperty[state.ro] && !state.upd) {
|
|
1499
|
+
throwInvalidAccess("[" + name + "] is read-only:" + dumpObj(theConfig));
|
|
1500
|
+
}
|
|
1501
|
+
if (checkDynamic) {
|
|
1502
|
+
isObjectOrArray = isObjectOrArray || _canMakeDynamic(value);
|
|
1503
|
+
checkDynamic = false;
|
|
1504
|
+
}
|
|
1505
|
+
var isReferenced = isObjectOrArray && _getProperty[state.rf];
|
|
1506
|
+
if (isObjectOrArray) {
|
|
1507
|
+
if (isReferenced) {
|
|
1508
|
+
objForEachKey(value, function (key) {
|
|
1509
|
+
value[key] = newValue ? newValue[key] : UNDEFINED_VALUE;
|
|
1510
|
+
});
|
|
1511
|
+
objForEachKey(newValue, function (key, theValue) {
|
|
1512
|
+
_setDynamicProperty(state, value, key, theValue);
|
|
1513
|
+
});
|
|
1514
|
+
newValue = value;
|
|
1515
|
+
}
|
|
1516
|
+
else if (value && value[CFG_HANDLER_LINK]) {
|
|
1517
|
+
objForEachKey(value, function (key) {
|
|
1518
|
+
var getter = _getOwnPropGetter(value, key);
|
|
1519
|
+
if (getter) {
|
|
1520
|
+
var valueState = getter[state.prop];
|
|
1521
|
+
valueState && valueState.chng();
|
|
1522
|
+
}
|
|
1523
|
+
});
|
|
1524
|
+
}
|
|
1525
|
+
}
|
|
1526
|
+
if (newValue !== value) {
|
|
1527
|
+
var newIsObjectOrArray = newValue && _canMakeDynamic(newValue);
|
|
1528
|
+
if (!isReferenced && newIsObjectOrArray) {
|
|
1529
|
+
_makeDynamicObject(state, newValue);
|
|
1530
|
+
}
|
|
1531
|
+
value = newValue;
|
|
1532
|
+
isObjectOrArray = newIsObjectOrArray;
|
|
1533
|
+
}
|
|
1534
|
+
state.add(detail);
|
|
1535
|
+
}
|
|
1536
|
+
}
|
|
1537
|
+
objDefine(theConfig, detail.n, { g: _getProperty, s: _setProperty });
|
|
1538
|
+
}
|
|
1539
|
+
function _setDynamicProperty(state, target, name, value, inPlace, rdOnly) {
|
|
1540
|
+
if (target) {
|
|
1541
|
+
var getter = _getOwnPropGetter(target, name);
|
|
1542
|
+
var isDynamic = getter && !!getter[state.prop];
|
|
1543
|
+
if (!isDynamic) {
|
|
1544
|
+
_makeDynamicProperty(state, target, name, value);
|
|
1545
|
+
if (inPlace || rdOnly) {
|
|
1546
|
+
getter = _getOwnPropGetter(target, name);
|
|
1547
|
+
}
|
|
1548
|
+
}
|
|
1549
|
+
else {
|
|
1550
|
+
target[name] = value;
|
|
1551
|
+
}
|
|
1552
|
+
if (inPlace) {
|
|
1553
|
+
getter[state.rf] = inPlace;
|
|
1554
|
+
}
|
|
1555
|
+
if (rdOnly) {
|
|
1556
|
+
getter[state.ro] = rdOnly;
|
|
1557
|
+
}
|
|
1558
|
+
}
|
|
1559
|
+
return target;
|
|
1560
|
+
}
|
|
1561
|
+
function _makeDynamicObject(state, target) {
|
|
1562
|
+
objForEachKey(target, function (key, value) {
|
|
1563
|
+
_setDynamicProperty(state, target, key, value);
|
|
1564
|
+
});
|
|
1565
|
+
if (!target[CFG_HANDLER_LINK]) {
|
|
1566
|
+
objDefineProp(target, CFG_HANDLER_LINK, {
|
|
1567
|
+
get: function () {
|
|
1568
|
+
return state.hdlr;
|
|
1569
|
+
}
|
|
1570
|
+
});
|
|
1571
|
+
_patchArray(state, target);
|
|
1572
|
+
}
|
|
1573
|
+
return target;
|
|
1574
|
+
}
|
|
1575
|
+
|
|
1576
|
+
var symPrefix = "[[ai_";
|
|
1577
|
+
var symPostfix = "]]";
|
|
1578
|
+
function _createState(cfgHandler) {
|
|
1579
|
+
var _a;
|
|
1580
|
+
var dynamicPropertySymbol = newSymbol(symPrefix + "get" + cfgHandler.uid + symPostfix);
|
|
1581
|
+
var dynamicPropertyReadOnly = newSymbol(symPrefix + "ro" + cfgHandler.uid + symPostfix);
|
|
1582
|
+
var dynamicPropertyReferenced = newSymbol(symPrefix + "rf" + cfgHandler.uid + symPostfix);
|
|
1583
|
+
var dynamicPropertyDetail = newSymbol(symPrefix + "dtl" + cfgHandler.uid + symPostfix);
|
|
1584
|
+
var _waitingHandlers = null;
|
|
1585
|
+
var _watcherTimer = null;
|
|
1586
|
+
var theState;
|
|
1587
|
+
function _useHandler(activeHandler, callback) {
|
|
1588
|
+
var prevWatcher = theState.act;
|
|
1589
|
+
try {
|
|
1590
|
+
theState.act = activeHandler;
|
|
1591
|
+
if (activeHandler && activeHandler[dynamicPropertyDetail]) {
|
|
1592
|
+
arrForEach(activeHandler[dynamicPropertyDetail], function (detail) {
|
|
1593
|
+
detail.clr(activeHandler);
|
|
1594
|
+
});
|
|
1595
|
+
activeHandler[dynamicPropertyDetail] = [];
|
|
1596
|
+
}
|
|
1597
|
+
callback({
|
|
1598
|
+
cfg: cfgHandler.cfg,
|
|
1599
|
+
set: cfgHandler.set.bind(cfgHandler),
|
|
1600
|
+
setDf: cfgHandler[_DYN_SET_DF ].bind(cfgHandler),
|
|
1601
|
+
ref: cfgHandler.ref.bind(cfgHandler),
|
|
1602
|
+
rdOnly: cfgHandler[_DYN_RD_ONLY ].bind(cfgHandler)
|
|
1603
|
+
});
|
|
1604
|
+
}
|
|
1605
|
+
catch (e) {
|
|
1606
|
+
var logger = cfgHandler[_DYN_LOGGER ];
|
|
1607
|
+
if (logger) {
|
|
1608
|
+
logger[_DYN_THROW_INTERNAL ](1 , 107 , dumpObj(e));
|
|
1609
|
+
}
|
|
1610
|
+
throw e;
|
|
1611
|
+
}
|
|
1612
|
+
finally {
|
|
1613
|
+
theState.act = prevWatcher || null;
|
|
1614
|
+
}
|
|
1615
|
+
}
|
|
1616
|
+
function _notifyWatchers() {
|
|
1617
|
+
if (_waitingHandlers) {
|
|
1618
|
+
var notifyHandlers = _waitingHandlers;
|
|
1619
|
+
_waitingHandlers = null;
|
|
1620
|
+
_watcherTimer && _watcherTimer[_DYN_CANCEL ]();
|
|
1621
|
+
_watcherTimer = null;
|
|
1622
|
+
var watcherFailures_1 = [];
|
|
1623
|
+
arrForEach(notifyHandlers, function (handler) {
|
|
1624
|
+
if (handler) {
|
|
1625
|
+
if (handler[dynamicPropertyDetail]) {
|
|
1626
|
+
arrForEach(handler[dynamicPropertyDetail], function (detail) {
|
|
1627
|
+
detail.clr(handler);
|
|
1628
|
+
});
|
|
1629
|
+
handler[dynamicPropertyDetail] = null;
|
|
1630
|
+
}
|
|
1631
|
+
if (handler.fn) {
|
|
1632
|
+
try {
|
|
1633
|
+
_useHandler(handler, handler.fn);
|
|
1634
|
+
}
|
|
1635
|
+
catch (e) {
|
|
1636
|
+
watcherFailures_1[_DYN_PUSH ](e);
|
|
1637
|
+
}
|
|
1638
|
+
}
|
|
1639
|
+
}
|
|
1640
|
+
});
|
|
1641
|
+
if (_waitingHandlers) {
|
|
1642
|
+
try {
|
|
1643
|
+
_notifyWatchers();
|
|
1644
|
+
}
|
|
1645
|
+
catch (e) {
|
|
1646
|
+
watcherFailures_1[_DYN_PUSH ](e);
|
|
1647
|
+
}
|
|
1648
|
+
}
|
|
1649
|
+
if (watcherFailures_1[_DYN_LENGTH$1 ] > 0) {
|
|
1650
|
+
throwAggregationError("Watcher error(s): ", watcherFailures_1);
|
|
1651
|
+
}
|
|
1652
|
+
}
|
|
1653
|
+
}
|
|
1654
|
+
function _addWatcher(detail) {
|
|
1655
|
+
if (detail && detail.h[_DYN_LENGTH$1 ] > 0) {
|
|
1656
|
+
if (!_waitingHandlers) {
|
|
1657
|
+
_waitingHandlers = [];
|
|
1658
|
+
}
|
|
1659
|
+
if (!_watcherTimer) {
|
|
1660
|
+
_watcherTimer = scheduleTimeout(function () {
|
|
1661
|
+
_watcherTimer = null;
|
|
1662
|
+
_notifyWatchers();
|
|
1663
|
+
}, 0);
|
|
1664
|
+
}
|
|
1665
|
+
for (var idx = 0; idx < detail.h[_DYN_LENGTH$1 ]; idx++) {
|
|
1666
|
+
var handler = detail.h[idx];
|
|
1667
|
+
if (handler && arrIndexOf(_waitingHandlers, handler) === -1) {
|
|
1668
|
+
_waitingHandlers[_DYN_PUSH ](handler);
|
|
1669
|
+
}
|
|
1670
|
+
}
|
|
1671
|
+
}
|
|
1672
|
+
}
|
|
1673
|
+
function _trackHandler(handler, detail) {
|
|
1674
|
+
if (handler) {
|
|
1675
|
+
var details = handler[dynamicPropertyDetail] = handler[dynamicPropertyDetail] || [];
|
|
1676
|
+
if (arrIndexOf(details, detail) === -1) {
|
|
1677
|
+
details[_DYN_PUSH ](detail);
|
|
1678
|
+
}
|
|
1679
|
+
}
|
|
1680
|
+
}
|
|
1681
|
+
theState = (_a = {
|
|
1682
|
+
prop: dynamicPropertySymbol,
|
|
1683
|
+
ro: dynamicPropertyReadOnly,
|
|
1684
|
+
rf: dynamicPropertyReferenced,
|
|
1685
|
+
hdlr: cfgHandler,
|
|
1686
|
+
add: _addWatcher
|
|
1687
|
+
},
|
|
1688
|
+
_a[_DYN_NOTIFY ] = _notifyWatchers,
|
|
1689
|
+
_a.use = _useHandler,
|
|
1690
|
+
_a.trk = _trackHandler,
|
|
1691
|
+
_a);
|
|
1692
|
+
return theState;
|
|
1693
|
+
}
|
|
1694
|
+
|
|
1695
|
+
function _createAndUseHandler(state, configHandler) {
|
|
1696
|
+
var handler = {
|
|
1697
|
+
fn: configHandler,
|
|
1698
|
+
rm: function () {
|
|
1699
|
+
handler.fn = null;
|
|
1700
|
+
state = null;
|
|
1701
|
+
configHandler = null;
|
|
1702
|
+
}
|
|
1703
|
+
};
|
|
1704
|
+
state.use(handler, configHandler);
|
|
1705
|
+
return handler;
|
|
1706
|
+
}
|
|
1707
|
+
function _createDynamicHandler(logger, target, inPlace) {
|
|
1708
|
+
var _a;
|
|
1709
|
+
var dynamicHandler = getDynamicConfigHandler(target);
|
|
1710
|
+
if (dynamicHandler) {
|
|
1711
|
+
return dynamicHandler;
|
|
1712
|
+
}
|
|
1713
|
+
var uid = createUniqueNamespace("dyncfg", true);
|
|
1714
|
+
var newTarget = (target && inPlace !== false) ? target : _cfgDeepCopy(target);
|
|
1715
|
+
var theState;
|
|
1716
|
+
function _notifyWatchers() {
|
|
1717
|
+
theState[_DYN_NOTIFY ]();
|
|
1718
|
+
}
|
|
1719
|
+
function _setValue(target, name, value) {
|
|
1720
|
+
return _setDynamicProperty(theState, target, name, value)[name];
|
|
1721
|
+
}
|
|
1722
|
+
function _watch(configHandler) {
|
|
1723
|
+
return _createAndUseHandler(theState, configHandler);
|
|
1724
|
+
}
|
|
1725
|
+
function _block(configHandler, allowUpdate) {
|
|
1726
|
+
theState.use(null, function (details) {
|
|
1727
|
+
var prevUpd = theState.upd;
|
|
1728
|
+
try {
|
|
1729
|
+
if (!isUndefined(allowUpdate)) {
|
|
1730
|
+
theState.upd = allowUpdate;
|
|
1731
|
+
}
|
|
1732
|
+
configHandler(details);
|
|
1733
|
+
}
|
|
1734
|
+
finally {
|
|
1735
|
+
theState.upd = prevUpd;
|
|
1736
|
+
}
|
|
1737
|
+
});
|
|
1738
|
+
}
|
|
1739
|
+
function _ref(target, name) {
|
|
1740
|
+
return _setDynamicProperty(theState, target, name, target[name], true)[name];
|
|
1741
|
+
}
|
|
1742
|
+
function _rdOnly(target, name) {
|
|
1743
|
+
return _setDynamicProperty(theState, target, name, target[name], false, true)[name];
|
|
1744
|
+
}
|
|
1745
|
+
function _applyDefaults(theConfig, defaultValues) {
|
|
1746
|
+
if (defaultValues) {
|
|
1747
|
+
objForEachKey(defaultValues, function (name, value) {
|
|
1748
|
+
_applyDefaultValue(cfgHandler, theConfig, name, value);
|
|
1749
|
+
});
|
|
1750
|
+
}
|
|
1751
|
+
return theConfig;
|
|
1752
|
+
}
|
|
1753
|
+
var cfgHandler = (_a = {
|
|
1754
|
+
uid: null,
|
|
1755
|
+
cfg: newTarget
|
|
1756
|
+
},
|
|
1757
|
+
_a[_DYN_LOGGER ] = logger,
|
|
1758
|
+
_a[_DYN_NOTIFY ] = _notifyWatchers,
|
|
1759
|
+
_a.set = _setValue,
|
|
1760
|
+
_a[_DYN_SET_DF ] = _applyDefaults,
|
|
1761
|
+
_a[_DYN_WATCH ] = _watch,
|
|
1762
|
+
_a.ref = _ref,
|
|
1763
|
+
_a[_DYN_RD_ONLY ] = _rdOnly,
|
|
1764
|
+
_a._block = _block,
|
|
1765
|
+
_a);
|
|
1766
|
+
objDefine(cfgHandler, "uid", {
|
|
1767
|
+
c: false,
|
|
1768
|
+
e: false,
|
|
1769
|
+
w: false,
|
|
1770
|
+
v: uid
|
|
1771
|
+
});
|
|
1772
|
+
theState = _createState(cfgHandler);
|
|
1773
|
+
_makeDynamicObject(theState, newTarget);
|
|
1774
|
+
return cfgHandler;
|
|
1775
|
+
}
|
|
1776
|
+
function _logInvalidAccess(logger, message) {
|
|
1777
|
+
if (logger) {
|
|
1778
|
+
logger[STR_WARN_TO_CONSOLE ](message);
|
|
1779
|
+
logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
|
|
1780
|
+
}
|
|
1781
|
+
else {
|
|
1782
|
+
throwInvalidAccess(message);
|
|
1783
|
+
}
|
|
1784
|
+
}
|
|
1785
|
+
function createDynamicConfig(config, defaultConfig, logger, inPlace) {
|
|
1786
|
+
var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
|
|
1787
|
+
if (defaultConfig) {
|
|
1788
|
+
dynamicHandler[_DYN_SET_DF ](dynamicHandler.cfg, defaultConfig);
|
|
1789
|
+
}
|
|
1790
|
+
return dynamicHandler;
|
|
1791
|
+
}
|
|
1792
|
+
function onConfigChange(config, configHandler, logger) {
|
|
1793
|
+
var handler = config[CFG_HANDLER_LINK] || config;
|
|
1794
|
+
if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
|
|
1795
|
+
return handler[_DYN_WATCH ](configHandler);
|
|
1796
|
+
}
|
|
1797
|
+
_logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
|
|
1798
|
+
createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
|
|
1799
|
+
}
|
|
1800
|
+
|
|
1801
|
+
var _aiNamespace = null;
|
|
1802
|
+
function _getExtensionNamespace() {
|
|
1803
|
+
var target = getInst("Microsoft");
|
|
1804
|
+
if (target) {
|
|
1805
|
+
_aiNamespace = target["ApplicationInsights"];
|
|
1806
|
+
}
|
|
1807
|
+
return _aiNamespace;
|
|
1808
|
+
}
|
|
1809
|
+
function getDebugExt(config) {
|
|
1810
|
+
var ns = _aiNamespace;
|
|
1811
|
+
if (!ns && config.disableDbgExt !== true) {
|
|
1812
|
+
ns = _aiNamespace || _getExtensionNamespace();
|
|
1813
|
+
}
|
|
1814
|
+
return ns ? ns["ChromeDbgExt"] : null;
|
|
1815
|
+
}
|
|
1816
|
+
|
|
1817
|
+
var AiNonUserActionablePrefix = "AI (Internal): ";
|
|
1818
|
+
var AiUserActionablePrefix = "AI: ";
|
|
1819
|
+
var AIInternalMessagePrefix = "AITR_";
|
|
1820
|
+
var defaultValues = {
|
|
1821
|
+
loggingLevelConsole: 0,
|
|
1822
|
+
loggingLevelTelemetry: 1,
|
|
1823
|
+
maxMessageLimit: 25,
|
|
1824
|
+
enableDebug: false
|
|
1825
|
+
};
|
|
1826
|
+
function _sanitizeDiagnosticText(text) {
|
|
1827
|
+
if (text) {
|
|
1828
|
+
return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
|
|
1829
|
+
}
|
|
1830
|
+
return STR_EMPTY;
|
|
1831
|
+
}
|
|
1832
|
+
function _logToConsole(func, message) {
|
|
1833
|
+
var theConsole = getConsole();
|
|
1834
|
+
if (!!theConsole) {
|
|
1835
|
+
var logFunc = "log";
|
|
1836
|
+
if (theConsole[func]) {
|
|
1837
|
+
logFunc = func;
|
|
1838
|
+
}
|
|
1839
|
+
if (isFunction(theConsole[logFunc])) {
|
|
1840
|
+
theConsole[logFunc](message);
|
|
1841
|
+
}
|
|
1842
|
+
}
|
|
1843
|
+
}
|
|
1844
|
+
var _InternalLogMessage = /** @class */ (function () {
|
|
1845
|
+
function _InternalLogMessage(msgId, msg, isUserAct, properties) {
|
|
1846
|
+
if (isUserAct === void 0) { isUserAct = false; }
|
|
1847
|
+
var _self = this;
|
|
1848
|
+
_self[_DYN_MESSAGE_ID ] = msgId;
|
|
1849
|
+
_self[_DYN_MESSAGE$1 ] =
|
|
1850
|
+
(isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
|
|
1851
|
+
msgId;
|
|
1852
|
+
var strProps = STR_EMPTY;
|
|
1853
|
+
if (hasJSON()) {
|
|
1854
|
+
strProps = getJSON().stringify(properties);
|
|
1855
|
+
}
|
|
1856
|
+
var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
|
|
1857
|
+
(properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
|
|
1858
|
+
_self[_DYN_MESSAGE$1 ] += diagnosticText;
|
|
1859
|
+
}
|
|
1860
|
+
_InternalLogMessage.dataType = "MessageData";
|
|
1861
|
+
return _InternalLogMessage;
|
|
1862
|
+
}());
|
|
1863
|
+
function safeGetLogger(core, config) {
|
|
1864
|
+
return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
|
|
1865
|
+
}
|
|
1866
|
+
var DiagnosticLogger = /** @class */ (function () {
|
|
1867
|
+
function DiagnosticLogger(config) {
|
|
1868
|
+
this.identifier = "DiagnosticLogger";
|
|
1869
|
+
this.queue = [];
|
|
1870
|
+
var _messageCount = 0;
|
|
1871
|
+
var _messageLogged = {};
|
|
1872
|
+
var _loggingLevelConsole;
|
|
1873
|
+
var _loggingLevelTelemetry;
|
|
1874
|
+
var _maxInternalMessageLimit;
|
|
1875
|
+
var _enableDebug;
|
|
1876
|
+
dynamicProto(DiagnosticLogger, this, function (_self) {
|
|
1877
|
+
_setDefaultsFromConfig(config || {});
|
|
1878
|
+
_self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
|
|
1879
|
+
_self[_DYN_THROW_INTERNAL ] = function (severity, msgId, msg, properties, isUserAct) {
|
|
1880
|
+
if (isUserAct === void 0) { isUserAct = false; }
|
|
1881
|
+
var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
|
|
1882
|
+
if (_enableDebug) {
|
|
1883
|
+
throw dumpObj(message);
|
|
1884
|
+
}
|
|
1885
|
+
else {
|
|
1886
|
+
var logFunc = severity === 1 ? STR_ERROR_TO_CONSOLE : STR_WARN_TO_CONSOLE;
|
|
1887
|
+
if (!isUndefined(message[_DYN_MESSAGE$1 ])) {
|
|
1888
|
+
if (isUserAct) {
|
|
1889
|
+
var messageKey = +message[_DYN_MESSAGE_ID ];
|
|
1890
|
+
if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
|
|
1891
|
+
_self[logFunc](message[_DYN_MESSAGE$1 ]);
|
|
1892
|
+
_messageLogged[messageKey] = true;
|
|
1893
|
+
}
|
|
1894
|
+
}
|
|
1895
|
+
else {
|
|
1896
|
+
if (_loggingLevelConsole >= severity) {
|
|
1897
|
+
_self[logFunc](message[_DYN_MESSAGE$1 ]);
|
|
1898
|
+
}
|
|
1899
|
+
}
|
|
1900
|
+
_logInternalMessage(severity, message);
|
|
1901
|
+
}
|
|
1902
|
+
else {
|
|
1903
|
+
_debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
|
|
1904
|
+
}
|
|
1905
|
+
}
|
|
1906
|
+
};
|
|
1907
|
+
_self[STR_WARN_TO_CONSOLE ] = function (message) {
|
|
1908
|
+
_logToConsole("warn", message);
|
|
1909
|
+
_debugExtMsg("warning", message);
|
|
1910
|
+
};
|
|
1911
|
+
_self[STR_ERROR_TO_CONSOLE ] = function (message) {
|
|
1912
|
+
_logToConsole("error", message);
|
|
1913
|
+
_debugExtMsg("error", message);
|
|
1914
|
+
};
|
|
1915
|
+
_self.resetInternalMessageCount = function () {
|
|
1916
|
+
_messageCount = 0;
|
|
1917
|
+
_messageLogged = {};
|
|
1918
|
+
};
|
|
1919
|
+
_self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
|
|
1920
|
+
function _logInternalMessage(severity, message) {
|
|
1921
|
+
if (_areInternalMessagesThrottled()) {
|
|
1922
|
+
return;
|
|
1923
|
+
}
|
|
1924
|
+
var logMessage = true;
|
|
1925
|
+
var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
|
|
1926
|
+
if (_messageLogged[messageKey]) {
|
|
1927
|
+
logMessage = false;
|
|
1928
|
+
}
|
|
1929
|
+
else {
|
|
1930
|
+
_messageLogged[messageKey] = true;
|
|
1931
|
+
}
|
|
1932
|
+
if (logMessage) {
|
|
1933
|
+
if (severity <= _loggingLevelTelemetry) {
|
|
1934
|
+
_self.queue[_DYN_PUSH ](message);
|
|
1935
|
+
_messageCount++;
|
|
1936
|
+
_debugExtMsg((severity === 1 ? "error" : "warn"), message);
|
|
1937
|
+
}
|
|
1938
|
+
if (_messageCount === _maxInternalMessageLimit) {
|
|
1939
|
+
var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
|
|
1940
|
+
var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
|
|
1941
|
+
_self.queue[_DYN_PUSH ](throttleMessage);
|
|
1942
|
+
if (severity === 1 ) {
|
|
1943
|
+
_self[STR_ERROR_TO_CONSOLE ](throttleLimitMessage);
|
|
1944
|
+
}
|
|
1945
|
+
else {
|
|
1946
|
+
_self[STR_WARN_TO_CONSOLE ](throttleLimitMessage);
|
|
1947
|
+
}
|
|
1948
|
+
}
|
|
1949
|
+
}
|
|
1950
|
+
}
|
|
1951
|
+
function _setDefaultsFromConfig(config) {
|
|
1952
|
+
var handler = createDynamicConfig(config, defaultValues, _self);
|
|
1953
|
+
handler[_DYN_WATCH ](function (details) {
|
|
1954
|
+
var config = details.cfg;
|
|
1955
|
+
_loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 ];
|
|
1956
|
+
_loggingLevelTelemetry = config.loggingLevelTelemetry;
|
|
1957
|
+
_maxInternalMessageLimit = config.maxMessageLimit;
|
|
1958
|
+
_enableDebug = config.enableDebug;
|
|
1959
|
+
});
|
|
1960
|
+
}
|
|
1961
|
+
function _areInternalMessagesThrottled() {
|
|
1962
|
+
return _messageCount >= _maxInternalMessageLimit;
|
|
1963
|
+
}
|
|
1964
|
+
function _debugExtMsg(name, data) {
|
|
1965
|
+
var dbgExt = getDebugExt(config || {});
|
|
1966
|
+
if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
|
|
1967
|
+
dbgExt[_DYN_DIAG_LOG ](name, data);
|
|
1968
|
+
}
|
|
1969
|
+
}
|
|
1970
|
+
});
|
|
1971
|
+
}
|
|
1972
|
+
DiagnosticLogger.__ieDyn=1;
|
|
1973
|
+
return DiagnosticLogger;
|
|
1974
|
+
}());
|
|
1975
|
+
function _getLogger(logger) {
|
|
1976
|
+
return (logger || new DiagnosticLogger());
|
|
1977
|
+
}
|
|
1978
|
+
function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
|
|
1979
|
+
if (isUserAct === void 0) { isUserAct = false; }
|
|
1980
|
+
_getLogger(logger)[_DYN_THROW_INTERNAL ](severity, msgId, msg, properties, isUserAct);
|
|
1981
|
+
}
|
|
1982
|
+
|
|
1983
|
+
function generateW3CId() {
|
|
1984
|
+
var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
1985
|
+
var oct = STR_EMPTY, tmp;
|
|
1986
|
+
for (var a = 0; a < 4; a++) {
|
|
1987
|
+
tmp = random32();
|
|
1988
|
+
oct +=
|
|
1989
|
+
hexValues[tmp & 0xF] +
|
|
1990
|
+
hexValues[tmp >> 4 & 0xF] +
|
|
1991
|
+
hexValues[tmp >> 8 & 0xF] +
|
|
1992
|
+
hexValues[tmp >> 12 & 0xF] +
|
|
1993
|
+
hexValues[tmp >> 16 & 0xF] +
|
|
1994
|
+
hexValues[tmp >> 20 & 0xF] +
|
|
1995
|
+
hexValues[tmp >> 24 & 0xF] +
|
|
1996
|
+
hexValues[tmp >> 28 & 0xF];
|
|
1997
|
+
}
|
|
1998
|
+
var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
|
|
1999
|
+
return strSubstr(oct, 0, 8) + strSubstr(oct, 9, 4) + "4" + strSubstr(oct, 13, 3) + clockSequenceHi + strSubstr(oct, 16, 3) + strSubstr(oct, 19, 12);
|
|
2000
|
+
}
|
|
2001
|
+
|
|
2002
|
+
var TRACE_PARENT_REGEX = /^([\da-f]{2})-([\da-f]{32})-([\da-f]{16})-([\da-f]{2})(-[^\s]{1,64})?$/i;
|
|
2003
|
+
var DEFAULT_VERSION = "00";
|
|
2004
|
+
var INVALID_VERSION = "ff";
|
|
2005
|
+
var INVALID_TRACE_ID = "00000000000000000000000000000000";
|
|
2006
|
+
var INVALID_SPAN_ID = "0000000000000000";
|
|
2007
|
+
var SAMPLED_FLAG = 0x01;
|
|
2008
|
+
function _isValid(value, len, invalidValue) {
|
|
2009
|
+
if (value && value[_DYN_LENGTH$1 ] === len && value !== invalidValue) {
|
|
2010
|
+
return !!value.match(/^[\da-f]*$/i);
|
|
2011
|
+
}
|
|
2012
|
+
return false;
|
|
2013
|
+
}
|
|
2014
|
+
function _formatValue(value, len, defValue) {
|
|
2015
|
+
if (_isValid(value, len)) {
|
|
2016
|
+
return value;
|
|
2017
|
+
}
|
|
2018
|
+
return defValue;
|
|
2019
|
+
}
|
|
2020
|
+
function _formatFlags(value) {
|
|
2021
|
+
if (isNaN(value) || value < 0 || value > 255) {
|
|
2022
|
+
value = 0x01;
|
|
2023
|
+
}
|
|
2024
|
+
var result = value.toString(16);
|
|
2025
|
+
while (result[_DYN_LENGTH$1 ] < 2) {
|
|
2026
|
+
result = "0" + result;
|
|
2027
|
+
}
|
|
2028
|
+
return result;
|
|
2029
|
+
}
|
|
2030
|
+
function createTraceParent(traceId, spanId, flags, version) {
|
|
2031
|
+
var _a;
|
|
2032
|
+
return _a = {},
|
|
2033
|
+
_a[_DYN_VERSION ] = _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
|
|
2034
|
+
_a[_DYN_TRACE_ID ] = isValidTraceId(traceId) ? traceId : generateW3CId(),
|
|
2035
|
+
_a[_DYN_SPAN_ID ] = isValidSpanId(spanId) ? spanId : strLeft(generateW3CId(), 16),
|
|
2036
|
+
_a.traceFlags = flags >= 0 && flags <= 0xFF ? flags : 1,
|
|
2037
|
+
_a;
|
|
2038
|
+
}
|
|
2039
|
+
function parseTraceParent(value) {
|
|
2040
|
+
var _a;
|
|
2041
|
+
if (!value) {
|
|
2042
|
+
return null;
|
|
2043
|
+
}
|
|
2044
|
+
if (isArray(value)) {
|
|
2045
|
+
value = value[0] || "";
|
|
2046
|
+
}
|
|
2047
|
+
if (!value || !isString(value) || value[_DYN_LENGTH$1 ] > 8192) {
|
|
2048
|
+
return null;
|
|
2049
|
+
}
|
|
2050
|
+
var match = TRACE_PARENT_REGEX.exec(strTrim(value));
|
|
2051
|
+
if (!match ||
|
|
2052
|
+
match[1] === INVALID_VERSION ||
|
|
2053
|
+
match[2] === INVALID_TRACE_ID ||
|
|
2054
|
+
match[3] === INVALID_SPAN_ID) {
|
|
2055
|
+
return null;
|
|
2056
|
+
}
|
|
2057
|
+
return _a = {
|
|
2058
|
+
version: (match[1] || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ](),
|
|
2059
|
+
traceId: (match[2] || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ](),
|
|
2060
|
+
spanId: (match[3] || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]()
|
|
2061
|
+
},
|
|
2062
|
+
_a[_DYN_TRACE_FLAGS ] = parseInt(match[4], 16),
|
|
2063
|
+
_a;
|
|
2064
|
+
}
|
|
2065
|
+
function isValidTraceId(value) {
|
|
2066
|
+
return _isValid(value, 32, INVALID_TRACE_ID);
|
|
2067
|
+
}
|
|
2068
|
+
function isValidSpanId(value) {
|
|
2069
|
+
return _isValid(value, 16, INVALID_SPAN_ID);
|
|
2070
|
+
}
|
|
2071
|
+
function isValidTraceParent(value) {
|
|
2072
|
+
if (!value ||
|
|
2073
|
+
!_isValid(value[_DYN_VERSION ], 2, INVALID_VERSION) ||
|
|
2074
|
+
!_isValid(value[_DYN_TRACE_ID ], 32, INVALID_TRACE_ID) ||
|
|
2075
|
+
!_isValid(value[_DYN_SPAN_ID ], 16, INVALID_SPAN_ID) ||
|
|
2076
|
+
!_isValid(_formatFlags(value[_DYN_TRACE_FLAGS ]), 2)) {
|
|
2077
|
+
return false;
|
|
2078
|
+
}
|
|
2079
|
+
return true;
|
|
2080
|
+
}
|
|
2081
|
+
function isSampledFlag(value) {
|
|
2082
|
+
if (isValidTraceParent(value)) {
|
|
2083
|
+
return (value[_DYN_TRACE_FLAGS ] & SAMPLED_FLAG) === SAMPLED_FLAG;
|
|
2084
|
+
}
|
|
2085
|
+
return false;
|
|
2086
|
+
}
|
|
2087
|
+
function formatTraceParent(value) {
|
|
2088
|
+
if (value) {
|
|
2089
|
+
var flags = _formatFlags(value[_DYN_TRACE_FLAGS ]);
|
|
2090
|
+
if (!_isValid(flags, 2)) {
|
|
2091
|
+
flags = "01";
|
|
2092
|
+
}
|
|
2093
|
+
var version = value[_DYN_VERSION ] || DEFAULT_VERSION;
|
|
2094
|
+
if (version !== "00" && version !== "ff") {
|
|
2095
|
+
version = DEFAULT_VERSION;
|
|
2096
|
+
}
|
|
2097
|
+
return "".concat(version.toLowerCase(), "-").concat(_formatValue(value.traceId, 32, INVALID_TRACE_ID).toLowerCase(), "-").concat(_formatValue(value.spanId, 16, INVALID_SPAN_ID).toLowerCase(), "-").concat(flags.toLowerCase());
|
|
2098
|
+
}
|
|
2099
|
+
return "";
|
|
2100
|
+
}
|
|
2101
|
+
function findW3cTraceParent() {
|
|
2102
|
+
var name = "traceparent";
|
|
2103
|
+
var traceParent = parseTraceParent(findMetaTag(name));
|
|
2104
|
+
if (!traceParent) {
|
|
2105
|
+
traceParent = parseTraceParent(findNamedServerTiming(name));
|
|
2106
|
+
}
|
|
2107
|
+
return traceParent;
|
|
2108
|
+
}
|
|
2109
|
+
|
|
2110
|
+
function createUnloadHookContainer() {
|
|
2111
|
+
var _hooks = [];
|
|
2112
|
+
function _doUnload(logger) {
|
|
2113
|
+
var oldHooks = _hooks;
|
|
2114
|
+
_hooks = [];
|
|
2115
|
+
arrForEach(oldHooks, function (fn) {
|
|
2116
|
+
try {
|
|
2117
|
+
(fn.rm || fn.remove).call(fn);
|
|
2118
|
+
}
|
|
2119
|
+
catch (e) {
|
|
2120
|
+
_throwInternal(logger, 2 , 73 , "Unloading:" + dumpObj(e));
|
|
2121
|
+
}
|
|
2122
|
+
});
|
|
2123
|
+
}
|
|
2124
|
+
function _addHook(hooks) {
|
|
2125
|
+
if (hooks) {
|
|
2126
|
+
arrAppend(_hooks, hooks);
|
|
2127
|
+
}
|
|
2128
|
+
}
|
|
2129
|
+
return {
|
|
2130
|
+
run: _doUnload,
|
|
2131
|
+
add: _addHook
|
|
2132
|
+
};
|
|
2133
|
+
}
|
|
2134
|
+
|
|
2135
|
+
var DisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation";
|
|
2136
|
+
var SampleRate = "sampleRate";
|
|
2137
|
+
var ProcessLegacy = "ProcessLegacy";
|
|
2138
|
+
var HttpMethod = "http.method";
|
|
2139
|
+
var DEFAULT_BREEZE_ENDPOINT = "https://dc.services.visualstudio.com";
|
|
2140
|
+
var DEFAULT_BREEZE_PATH = "/v2/track";
|
|
2141
|
+
var strNotSpecified = "not_specified";
|
|
2142
|
+
var strIkey = "iKey";
|
|
2143
|
+
|
|
2144
|
+
var RequestHeaders = createValueMap({
|
|
2145
|
+
requestContextHeader: [0 , "Request-Context"],
|
|
2146
|
+
requestContextTargetKey: [1 , "appId"],
|
|
2147
|
+
requestContextAppIdFormat: [2 , "appId=cid-v1:"],
|
|
2148
|
+
requestIdHeader: [3 , "Request-Id"],
|
|
2149
|
+
traceParentHeader: [4 , "traceparent"],
|
|
2150
|
+
traceStateHeader: [5 , "tracestate"],
|
|
2151
|
+
sdkContextHeader: [6 , "Sdk-Context"],
|
|
2152
|
+
sdkContextHeaderAppIdRequest: [7 , "appId"],
|
|
2153
|
+
requestContextHeaderLowerCase: [8 , "request-context"]
|
|
2154
|
+
});
|
|
2155
|
+
|
|
2156
|
+
var _DYN_SPLIT = "split";
|
|
2157
|
+
var _DYN_LENGTH = "length";
|
|
2158
|
+
var _DYN_TO_LOWER_CASE = "toLowerCase";
|
|
2159
|
+
var _DYN_INGESTIONENDPOINT = "ingestionendpoint";
|
|
2160
|
+
var _DYN_TO_STRING = "toString";
|
|
2161
|
+
var _DYN_REMOVE_ITEM = "removeItem";
|
|
2162
|
+
var _DYN_NAME = "name";
|
|
2163
|
+
var _DYN_MESSAGE = "message";
|
|
2164
|
+
var _DYN_COUNT = "count";
|
|
2165
|
+
var _DYN_PRE_TRIGGER_DATE = "preTriggerDate";
|
|
2166
|
+
var _DYN_DISABLED = "disabled";
|
|
2167
|
+
var _DYN_INTERVAL = "interval";
|
|
2168
|
+
var _DYN_DAYS_OF_MONTH = "daysOfMonth";
|
|
2169
|
+
var _DYN_DATE = "date";
|
|
2170
|
+
var _DYN_GET_UTCDATE = "getUTCDate";
|
|
2171
|
+
var _DYN_STRINGIFY = "stringify";
|
|
2172
|
+
var _DYN_PATHNAME = "pathname";
|
|
2173
|
+
var _DYN_CORRELATION_HEADER_E0 = "correlationHeaderExcludePatterns";
|
|
2174
|
+
var _DYN_EXTENSION_CONFIG = "extensionConfig";
|
|
2175
|
+
var _DYN_EXCEPTIONS = "exceptions";
|
|
2176
|
+
var _DYN_PARSED_STACK = "parsedStack";
|
|
2177
|
+
var _DYN_PROPERTIES = "properties";
|
|
2178
|
+
var _DYN_MEASUREMENTS = "measurements";
|
|
2179
|
+
var _DYN_SIZE_IN_BYTES = "sizeInBytes";
|
|
2180
|
+
var _DYN_TYPE_NAME = "typeName";
|
|
2181
|
+
var _DYN_SEVERITY_LEVEL = "severityLevel";
|
|
2182
|
+
var _DYN_PROBLEM_GROUP = "problemGroup";
|
|
2183
|
+
var _DYN_IS_MANUAL = "isManual";
|
|
2184
|
+
var _DYN__CREATE_FROM_INTERFA1 = "CreateFromInterface";
|
|
2185
|
+
var _DYN_ASSEMBLY = "assembly";
|
|
2186
|
+
var _DYN_HAS_FULL_STACK = "hasFullStack";
|
|
2187
|
+
var _DYN_LEVEL = "level";
|
|
2188
|
+
var _DYN_METHOD = "method";
|
|
2189
|
+
var _DYN_FILE_NAME = "fileName";
|
|
2190
|
+
var _DYN_LINE = "line";
|
|
2191
|
+
var _DYN_DURATION = "duration";
|
|
2192
|
+
var _DYN_RECEIVED_RESPONSE = "receivedResponse";
|
|
2193
|
+
var _DYN_SUBSTRING = "substring";
|
|
2194
|
+
|
|
2195
|
+
function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
|
|
2196
|
+
var origLength = key[_DYN_LENGTH ];
|
|
2197
|
+
var field = dataSanitizeKey(logger, key);
|
|
2198
|
+
if (field[_DYN_LENGTH ] !== origLength) {
|
|
2199
|
+
var i = 0;
|
|
2200
|
+
var uniqueField = field;
|
|
2201
|
+
while (map[uniqueField] !== undefined) {
|
|
2202
|
+
i++;
|
|
2203
|
+
uniqueField = field[_DYN_SUBSTRING ](0, 150 - 3) + dsPadNumber(i);
|
|
2204
|
+
}
|
|
2205
|
+
field = uniqueField;
|
|
2206
|
+
}
|
|
2207
|
+
return field;
|
|
2208
|
+
}
|
|
2209
|
+
function dataSanitizeKey(logger, name) {
|
|
2210
|
+
var nameTrunc;
|
|
2211
|
+
if (name) {
|
|
2212
|
+
name = strTrim(name[_DYN_TO_STRING ]());
|
|
2213
|
+
if (name[_DYN_LENGTH ] > 150 ) {
|
|
2214
|
+
nameTrunc = name[_DYN_SUBSTRING ](0, 150 );
|
|
2215
|
+
_throwInternal(logger, 2 , 57 , "name is too long. It has been truncated to " + 150 + " characters.", { name: name }, true);
|
|
2216
|
+
}
|
|
2217
|
+
}
|
|
2218
|
+
return nameTrunc || name;
|
|
2219
|
+
}
|
|
2220
|
+
function dataSanitizeString(logger, value, maxLength) {
|
|
2221
|
+
if (maxLength === void 0) { maxLength = 1024 ; }
|
|
2222
|
+
var valueTrunc;
|
|
2223
|
+
if (value) {
|
|
2224
|
+
maxLength = maxLength ? maxLength : 1024 ;
|
|
2225
|
+
value = strTrim(value[_DYN_TO_STRING ]());
|
|
2226
|
+
if (value[_DYN_LENGTH ] > maxLength) {
|
|
2227
|
+
valueTrunc = value[_DYN_SUBSTRING ](0, maxLength);
|
|
2228
|
+
_throwInternal(logger, 2 , 61 , "string value is too long. It has been truncated to " + maxLength + " characters.", { value: value }, true);
|
|
2229
|
+
}
|
|
2230
|
+
}
|
|
2231
|
+
return valueTrunc || value;
|
|
2232
|
+
}
|
|
2233
|
+
function dataSanitizeUrl(logger, url) {
|
|
2234
|
+
return dataSanitizeInput(logger, url, 2048 , 66 );
|
|
2235
|
+
}
|
|
2236
|
+
function dataSanitizeMessage(logger, message) {
|
|
2237
|
+
var messageTrunc;
|
|
2238
|
+
if (message) {
|
|
2239
|
+
if (message[_DYN_LENGTH ] > 32768 ) {
|
|
2240
|
+
messageTrunc = message[_DYN_SUBSTRING ](0, 32768 );
|
|
2241
|
+
_throwInternal(logger, 2 , 56 , "message is too long, it has been truncated to " + 32768 + " characters.", { message: message }, true);
|
|
2242
|
+
}
|
|
2243
|
+
}
|
|
2244
|
+
return messageTrunc || message;
|
|
2245
|
+
}
|
|
2246
|
+
function dataSanitizeException(logger, exception) {
|
|
2247
|
+
var exceptionTrunc;
|
|
2248
|
+
if (exception) {
|
|
2249
|
+
var value = "" + exception;
|
|
2250
|
+
if (value[_DYN_LENGTH ] > 32768 ) {
|
|
2251
|
+
exceptionTrunc = value[_DYN_SUBSTRING ](0, 32768 );
|
|
2252
|
+
_throwInternal(logger, 2 , 52 , "exception is too long, it has been truncated to " + 32768 + " characters.", { exception: exception }, true);
|
|
2253
|
+
}
|
|
2254
|
+
}
|
|
2255
|
+
return exceptionTrunc || exception;
|
|
2256
|
+
}
|
|
2257
|
+
function dataSanitizeProperties(logger, properties) {
|
|
2258
|
+
if (properties) {
|
|
2259
|
+
var tempProps_1 = {};
|
|
2260
|
+
objForEachKey(properties, function (prop, value) {
|
|
2261
|
+
if (isObject(value) && hasJSON()) {
|
|
2262
|
+
try {
|
|
2263
|
+
value = getJSON()[_DYN_STRINGIFY ](value);
|
|
2264
|
+
}
|
|
2265
|
+
catch (e) {
|
|
2266
|
+
_throwInternal(logger, 2 , 49 , "custom property is not valid", { exception: e }, true);
|
|
2267
|
+
}
|
|
2268
|
+
}
|
|
2269
|
+
value = dataSanitizeString(logger, value, 8192 );
|
|
2270
|
+
prop = dataSanitizeKeyAndAddUniqueness(logger, prop, tempProps_1);
|
|
2271
|
+
tempProps_1[prop] = value;
|
|
2272
|
+
});
|
|
2273
|
+
properties = tempProps_1;
|
|
2274
|
+
}
|
|
2275
|
+
return properties;
|
|
2276
|
+
}
|
|
2277
|
+
function dataSanitizeMeasurements(logger, measurements) {
|
|
2278
|
+
if (measurements) {
|
|
2279
|
+
var tempMeasurements_1 = {};
|
|
2280
|
+
objForEachKey(measurements, function (measure, value) {
|
|
2281
|
+
measure = dataSanitizeKeyAndAddUniqueness(logger, measure, tempMeasurements_1);
|
|
2282
|
+
tempMeasurements_1[measure] = value;
|
|
2283
|
+
});
|
|
2284
|
+
measurements = tempMeasurements_1;
|
|
2285
|
+
}
|
|
2286
|
+
return measurements;
|
|
2287
|
+
}
|
|
2288
|
+
function dataSanitizeId(logger, id) {
|
|
2289
|
+
return id ? dataSanitizeInput(logger, id, 128 , 69 )[_DYN_TO_STRING ]() : id;
|
|
2290
|
+
}
|
|
2291
|
+
function dataSanitizeInput(logger, input, maxLength, _msgId) {
|
|
2292
|
+
var inputTrunc;
|
|
2293
|
+
if (input) {
|
|
2294
|
+
input = strTrim(input[_DYN_TO_STRING ]());
|
|
2295
|
+
if (input[_DYN_LENGTH ] > maxLength) {
|
|
2296
|
+
inputTrunc = input[_DYN_SUBSTRING ](0, maxLength);
|
|
2297
|
+
_throwInternal(logger, 2 , _msgId, "input is too long, it has been truncated to " + maxLength + " characters.", { data: input }, true);
|
|
2298
|
+
}
|
|
2299
|
+
}
|
|
2300
|
+
return inputTrunc || input;
|
|
2301
|
+
}
|
|
2302
|
+
function dsPadNumber(num) {
|
|
2303
|
+
var s = "00" + num;
|
|
2304
|
+
return strSubstr(s, s[_DYN_LENGTH ] - 3);
|
|
2305
|
+
}
|
|
2306
|
+
|
|
2307
|
+
var _document = getDocument() || {};
|
|
2308
|
+
var _htmlAnchorIdx = 0;
|
|
2309
|
+
var _htmlAnchorElement = [null, null, null, null, null];
|
|
2310
|
+
function urlParseUrl(url) {
|
|
2311
|
+
var anchorIdx = _htmlAnchorIdx;
|
|
2312
|
+
var anchorCache = _htmlAnchorElement;
|
|
2313
|
+
var tempAnchor = anchorCache[anchorIdx];
|
|
2314
|
+
if (!_document.createElement) {
|
|
2315
|
+
tempAnchor = { host: urlParseHost(url, true) };
|
|
2316
|
+
}
|
|
2317
|
+
else if (!anchorCache[anchorIdx]) {
|
|
2318
|
+
tempAnchor = anchorCache[anchorIdx] = _document.createElement("a");
|
|
2319
|
+
}
|
|
2320
|
+
tempAnchor.href = url;
|
|
2321
|
+
anchorIdx++;
|
|
2322
|
+
if (anchorIdx >= anchorCache[_DYN_LENGTH ]) {
|
|
2323
|
+
anchorIdx = 0;
|
|
2324
|
+
}
|
|
2325
|
+
_htmlAnchorIdx = anchorIdx;
|
|
2326
|
+
return tempAnchor;
|
|
2327
|
+
}
|
|
2328
|
+
function urlGetAbsoluteUrl(url) {
|
|
2329
|
+
var result;
|
|
2330
|
+
var a = urlParseUrl(url);
|
|
2331
|
+
if (a) {
|
|
2332
|
+
result = a.href;
|
|
2333
|
+
}
|
|
2334
|
+
return result;
|
|
2335
|
+
}
|
|
2336
|
+
function urlGetPathName(url) {
|
|
2337
|
+
var result;
|
|
2338
|
+
var a = urlParseUrl(url);
|
|
2339
|
+
if (a) {
|
|
2340
|
+
result = a[_DYN_PATHNAME ];
|
|
2341
|
+
}
|
|
2342
|
+
return result;
|
|
2343
|
+
}
|
|
2344
|
+
function urlGetCompleteUrl(method, absoluteUrl) {
|
|
2345
|
+
if (method) {
|
|
2346
|
+
return method.toUpperCase() + " " + absoluteUrl;
|
|
2347
|
+
}
|
|
2348
|
+
return absoluteUrl;
|
|
2349
|
+
}
|
|
2350
|
+
function urlParseHost(url, inclPort) {
|
|
2351
|
+
var fullHost = urlParseFullHost(url, inclPort) || "";
|
|
2352
|
+
if (fullHost) {
|
|
2353
|
+
var match = fullHost.match(/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);
|
|
2354
|
+
if (match != null && match[_DYN_LENGTH ] > 3 && isString(match[2]) && match[2][_DYN_LENGTH ] > 0) {
|
|
2355
|
+
return match[2] + (match[3] || "");
|
|
2356
|
+
}
|
|
2357
|
+
}
|
|
2358
|
+
return fullHost;
|
|
2359
|
+
}
|
|
2360
|
+
function urlParseFullHost(url, inclPort) {
|
|
2361
|
+
var result = null;
|
|
2362
|
+
if (url) {
|
|
2363
|
+
var match = url.match(/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);
|
|
2364
|
+
if (match != null && match[_DYN_LENGTH ] > 2 && isString(match[2]) && match[2][_DYN_LENGTH ] > 0) {
|
|
2365
|
+
result = match[2] || "";
|
|
2366
|
+
if (inclPort && match[_DYN_LENGTH ] > 2) {
|
|
2367
|
+
var protocol = (match[1] || "")[_DYN_TO_LOWER_CASE ]();
|
|
2368
|
+
var port = match[3] || "";
|
|
2369
|
+
if (protocol === "http" && port === ":80") {
|
|
2370
|
+
port = "";
|
|
2371
|
+
}
|
|
2372
|
+
else if (protocol === "https" && port === ":443") {
|
|
2373
|
+
port = "";
|
|
2374
|
+
}
|
|
2375
|
+
result += port;
|
|
2376
|
+
}
|
|
2377
|
+
}
|
|
2378
|
+
}
|
|
2379
|
+
return result;
|
|
2380
|
+
}
|
|
2381
|
+
|
|
2382
|
+
var _internalEndpoints = [
|
|
2383
|
+
DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH,
|
|
2384
|
+
"https://breeze.aimon.applicationinsights.io" + DEFAULT_BREEZE_PATH,
|
|
2385
|
+
"https://dc-int.services.visualstudio.com" + DEFAULT_BREEZE_PATH
|
|
2386
|
+
];
|
|
2387
|
+
var _correlationIdPrefix = "cid-v1:";
|
|
2388
|
+
function isInternalApplicationInsightsEndpoint(endpointUrl) {
|
|
2389
|
+
return arrIndexOf(_internalEndpoints, endpointUrl[_DYN_TO_LOWER_CASE ]()) !== -1;
|
|
2390
|
+
}
|
|
2391
|
+
function correlationIdSetPrefix(prefix) {
|
|
2392
|
+
_correlationIdPrefix = prefix;
|
|
2393
|
+
}
|
|
2394
|
+
function correlationIdGetPrefix() {
|
|
2395
|
+
return _correlationIdPrefix;
|
|
2396
|
+
}
|
|
2397
|
+
function correlationIdCanIncludeCorrelationHeader(config, requestUrl, currentHost) {
|
|
2398
|
+
if (!requestUrl || (config && config.disableCorrelationHeaders)) {
|
|
2399
|
+
return false;
|
|
2400
|
+
}
|
|
2401
|
+
if (config && config[_DYN_CORRELATION_HEADER_E0 ]) {
|
|
2402
|
+
for (var i = 0; i < config.correlationHeaderExcludePatterns[_DYN_LENGTH ]; i++) {
|
|
2403
|
+
if (config[_DYN_CORRELATION_HEADER_E0 ][i].test(requestUrl)) {
|
|
2404
|
+
return false;
|
|
2405
|
+
}
|
|
2406
|
+
}
|
|
2407
|
+
}
|
|
2408
|
+
var requestHost = urlParseUrl(requestUrl).host[_DYN_TO_LOWER_CASE ]();
|
|
2409
|
+
if (requestHost && (strIndexOf(requestHost, ":443") !== -1 || strIndexOf(requestHost, ":80") !== -1)) {
|
|
2410
|
+
requestHost = (urlParseFullHost(requestUrl, true) || "")[_DYN_TO_LOWER_CASE ]();
|
|
2411
|
+
}
|
|
2412
|
+
if ((!config || !config.enableCorsCorrelation) && (requestHost && requestHost !== currentHost)) {
|
|
2413
|
+
return false;
|
|
2414
|
+
}
|
|
2415
|
+
var includedDomains = config && config.correlationHeaderDomains;
|
|
2416
|
+
if (includedDomains) {
|
|
2417
|
+
var matchExists_1;
|
|
2418
|
+
arrForEach(includedDomains, function (domain) {
|
|
2419
|
+
var regex = new RegExp(domain.toLowerCase().replace(/\\/g, "\\\\").replace(/\./g, "\\.").replace(/\*/g, ".*"));
|
|
2420
|
+
matchExists_1 = matchExists_1 || regex.test(requestHost);
|
|
2421
|
+
});
|
|
2422
|
+
if (!matchExists_1) {
|
|
2423
|
+
return false;
|
|
2424
|
+
}
|
|
2425
|
+
}
|
|
2426
|
+
var excludedDomains = config && config.correlationHeaderExcludedDomains;
|
|
2427
|
+
if (!excludedDomains || excludedDomains[_DYN_LENGTH ] === 0) {
|
|
2428
|
+
return true;
|
|
2429
|
+
}
|
|
2430
|
+
for (var i = 0; i < excludedDomains[_DYN_LENGTH ]; i++) {
|
|
2431
|
+
var regex = new RegExp(excludedDomains[i].toLowerCase().replace(/\\/g, "\\\\").replace(/\./g, "\\.").replace(/\*/g, ".*"));
|
|
2432
|
+
if (regex.test(requestHost)) {
|
|
2433
|
+
return false;
|
|
2434
|
+
}
|
|
2435
|
+
}
|
|
2436
|
+
return requestHost && requestHost[_DYN_LENGTH ] > 0;
|
|
2437
|
+
}
|
|
2438
|
+
function correlationIdGetCorrelationContext(responseHeader) {
|
|
2439
|
+
if (responseHeader) {
|
|
2440
|
+
var correlationId = correlationIdGetCorrelationContextValue(responseHeader, RequestHeaders[1 ]);
|
|
2441
|
+
if (correlationId && correlationId !== _correlationIdPrefix) {
|
|
2442
|
+
return correlationId;
|
|
2443
|
+
}
|
|
2444
|
+
}
|
|
2445
|
+
}
|
|
2446
|
+
function correlationIdGetCorrelationContextValue(responseHeader, key) {
|
|
2447
|
+
if (responseHeader) {
|
|
2448
|
+
var keyValues = responseHeader[_DYN_SPLIT ](",");
|
|
2449
|
+
for (var i = 0; i < keyValues[_DYN_LENGTH ]; ++i) {
|
|
2450
|
+
var keyValue = keyValues[i][_DYN_SPLIT ]("=");
|
|
2451
|
+
if (keyValue[_DYN_LENGTH ] === 2 && keyValue[0] === key) {
|
|
2452
|
+
return keyValue[1];
|
|
2453
|
+
}
|
|
2454
|
+
}
|
|
2455
|
+
}
|
|
2456
|
+
}
|
|
2457
|
+
function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName) {
|
|
2458
|
+
var target, name = commandName, data = commandName;
|
|
2459
|
+
if (absoluteUrl && absoluteUrl[_DYN_LENGTH ] > 0) {
|
|
2460
|
+
var parsedUrl = urlParseUrl(absoluteUrl);
|
|
2461
|
+
target = parsedUrl.host;
|
|
2462
|
+
if (!name) {
|
|
2463
|
+
if (parsedUrl[_DYN_PATHNAME ] != null) {
|
|
2464
|
+
var pathName = (parsedUrl.pathname[_DYN_LENGTH ] === 0) ? "/" : parsedUrl[_DYN_PATHNAME ];
|
|
2465
|
+
if (pathName.charAt(0) !== "/") {
|
|
2466
|
+
pathName = "/" + pathName;
|
|
2467
|
+
}
|
|
2468
|
+
data = parsedUrl[_DYN_PATHNAME ];
|
|
2469
|
+
name = dataSanitizeString(logger, method ? method + " " + pathName : pathName);
|
|
2470
|
+
}
|
|
2471
|
+
else {
|
|
2472
|
+
name = dataSanitizeString(logger, absoluteUrl);
|
|
2473
|
+
}
|
|
2474
|
+
}
|
|
2475
|
+
}
|
|
2476
|
+
else {
|
|
2477
|
+
target = commandName;
|
|
2478
|
+
name = commandName;
|
|
2479
|
+
}
|
|
2480
|
+
return {
|
|
2481
|
+
target: target,
|
|
2482
|
+
name: name,
|
|
2483
|
+
data: data
|
|
2484
|
+
};
|
|
2485
|
+
}
|
|
2486
|
+
function dateTimeUtilsNow() {
|
|
2487
|
+
var perf = getPerformance();
|
|
2488
|
+
if (perf && perf.now && perf.timing) {
|
|
2489
|
+
var now = perf.now() + perf.timing.navigationStart;
|
|
2490
|
+
if (now > 0) {
|
|
2491
|
+
return now;
|
|
2492
|
+
}
|
|
2493
|
+
}
|
|
2494
|
+
return utcNow();
|
|
2495
|
+
}
|
|
2496
|
+
function dateTimeUtilsDuration(start, end) {
|
|
2497
|
+
var result = null;
|
|
2498
|
+
if (start !== 0 && end !== 0 && !isNullOrUndefined(start) && !isNullOrUndefined(end)) {
|
|
2499
|
+
result = end - start;
|
|
2500
|
+
}
|
|
2501
|
+
return result;
|
|
2502
|
+
}
|
|
2503
|
+
function createDistributedTraceContextFromTrace(telemetryTrace, parentCtx) {
|
|
2504
|
+
var trace = telemetryTrace || {};
|
|
2505
|
+
return {
|
|
2506
|
+
getName: function () {
|
|
2507
|
+
return trace[_DYN_NAME ];
|
|
2508
|
+
},
|
|
2509
|
+
setName: function (newValue) {
|
|
2510
|
+
parentCtx && parentCtx.setName(newValue);
|
|
2511
|
+
trace[_DYN_NAME ] = newValue;
|
|
2512
|
+
},
|
|
2513
|
+
getTraceId: function () {
|
|
2514
|
+
return trace.traceID;
|
|
2515
|
+
},
|
|
2516
|
+
setTraceId: function (newValue) {
|
|
2517
|
+
parentCtx && parentCtx.setTraceId(newValue);
|
|
2518
|
+
if (isValidTraceId(newValue)) {
|
|
2519
|
+
trace.traceID = newValue;
|
|
2520
|
+
}
|
|
2521
|
+
},
|
|
2522
|
+
getSpanId: function () {
|
|
2523
|
+
return trace.parentID;
|
|
2524
|
+
},
|
|
2525
|
+
setSpanId: function (newValue) {
|
|
2526
|
+
parentCtx && parentCtx.setSpanId(newValue);
|
|
2527
|
+
if (isValidSpanId(newValue)) {
|
|
2528
|
+
trace.parentID = newValue;
|
|
2529
|
+
}
|
|
2530
|
+
},
|
|
2531
|
+
getTraceFlags: function () {
|
|
2532
|
+
return trace.traceFlags;
|
|
2533
|
+
},
|
|
2534
|
+
setTraceFlags: function (newTraceFlags) {
|
|
2535
|
+
parentCtx && parentCtx.setTraceFlags(newTraceFlags);
|
|
2536
|
+
trace.traceFlags = newTraceFlags;
|
|
2537
|
+
}
|
|
2538
|
+
};
|
|
2539
|
+
}
|
|
2540
|
+
|
|
2541
|
+
var StorageType = createEnumStyle({
|
|
2542
|
+
LocalStorage: 0 ,
|
|
2543
|
+
SessionStorage: 1
|
|
2544
|
+
});
|
|
2545
|
+
var DistributedTracingModes = createEnumStyle({
|
|
2546
|
+
AI: 0 ,
|
|
2547
|
+
AI_AND_W3C: 1 ,
|
|
2548
|
+
W3C: 2
|
|
2549
|
+
});
|
|
2550
|
+
|
|
2551
|
+
var _canUseLocalStorage = undefined;
|
|
2552
|
+
var _canUseSessionStorage = undefined;
|
|
2553
|
+
function _getLocalStorageObject() {
|
|
2554
|
+
if (utlCanUseLocalStorage()) {
|
|
2555
|
+
return _getVerifiedStorageObject(StorageType.LocalStorage);
|
|
2556
|
+
}
|
|
2557
|
+
return null;
|
|
2558
|
+
}
|
|
2559
|
+
function _getVerifiedStorageObject(storageType) {
|
|
2560
|
+
try {
|
|
2561
|
+
if (isNullOrUndefined(getGlobal())) {
|
|
2562
|
+
return null;
|
|
2563
|
+
}
|
|
2564
|
+
var uid = (new Date)[_DYN_TO_STRING ]();
|
|
2565
|
+
var storage = getInst(storageType === StorageType.LocalStorage ? "localStorage" : "sessionStorage");
|
|
2566
|
+
storage.setItem(uid, uid);
|
|
2567
|
+
var fail = storage.getItem(uid) !== uid;
|
|
2568
|
+
storage[_DYN_REMOVE_ITEM ](uid);
|
|
2569
|
+
if (!fail) {
|
|
2570
|
+
return storage;
|
|
2571
|
+
}
|
|
2572
|
+
}
|
|
2573
|
+
catch (exception) {
|
|
2574
|
+
}
|
|
2575
|
+
return null;
|
|
2576
|
+
}
|
|
2577
|
+
function _getSessionStorageObject() {
|
|
2578
|
+
if (utlCanUseSessionStorage()) {
|
|
2579
|
+
return _getVerifiedStorageObject(StorageType.SessionStorage);
|
|
2580
|
+
}
|
|
2581
|
+
return null;
|
|
2582
|
+
}
|
|
2583
|
+
function utlDisableStorage() {
|
|
2584
|
+
_canUseLocalStorage = false;
|
|
2585
|
+
_canUseSessionStorage = false;
|
|
2586
|
+
}
|
|
2587
|
+
function utlEnableStorage() {
|
|
2588
|
+
_canUseLocalStorage = utlCanUseLocalStorage(true);
|
|
2589
|
+
_canUseSessionStorage = utlCanUseSessionStorage(true);
|
|
2590
|
+
}
|
|
2591
|
+
function utlCanUseLocalStorage(reset) {
|
|
2592
|
+
if (reset || _canUseLocalStorage === undefined) {
|
|
2593
|
+
_canUseLocalStorage = !!_getVerifiedStorageObject(StorageType.LocalStorage);
|
|
2594
|
+
}
|
|
2595
|
+
return _canUseLocalStorage;
|
|
2596
|
+
}
|
|
2597
|
+
function utlGetLocalStorage(logger, name) {
|
|
2598
|
+
var storage = _getLocalStorageObject();
|
|
2599
|
+
if (storage !== null) {
|
|
2600
|
+
try {
|
|
2601
|
+
return storage.getItem(name);
|
|
2602
|
+
}
|
|
2603
|
+
catch (e) {
|
|
2604
|
+
_canUseLocalStorage = false;
|
|
2605
|
+
_throwInternal(logger, 2 , 1 , "Browser failed read of local storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2606
|
+
}
|
|
2607
|
+
}
|
|
2608
|
+
return null;
|
|
2609
|
+
}
|
|
2610
|
+
function utlSetLocalStorage(logger, name, data) {
|
|
2611
|
+
var storage = _getLocalStorageObject();
|
|
2612
|
+
if (storage !== null) {
|
|
2613
|
+
try {
|
|
2614
|
+
storage.setItem(name, data);
|
|
2615
|
+
return true;
|
|
2616
|
+
}
|
|
2617
|
+
catch (e) {
|
|
2618
|
+
_canUseLocalStorage = false;
|
|
2619
|
+
_throwInternal(logger, 2 , 3 , "Browser failed write to local storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2620
|
+
}
|
|
2621
|
+
}
|
|
2622
|
+
return false;
|
|
2623
|
+
}
|
|
2624
|
+
function utlRemoveStorage(logger, name) {
|
|
2625
|
+
var storage = _getLocalStorageObject();
|
|
2626
|
+
if (storage !== null) {
|
|
2627
|
+
try {
|
|
2628
|
+
storage[_DYN_REMOVE_ITEM ](name);
|
|
2629
|
+
return true;
|
|
2630
|
+
}
|
|
2631
|
+
catch (e) {
|
|
2632
|
+
_canUseLocalStorage = false;
|
|
2633
|
+
_throwInternal(logger, 2 , 5 , "Browser failed removal of local storage item. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2634
|
+
}
|
|
2635
|
+
}
|
|
2636
|
+
return false;
|
|
2637
|
+
}
|
|
2638
|
+
function utlCanUseSessionStorage(reset) {
|
|
2639
|
+
if (reset || _canUseSessionStorage === undefined) {
|
|
2640
|
+
_canUseSessionStorage = !!_getVerifiedStorageObject(StorageType.SessionStorage);
|
|
2641
|
+
}
|
|
2642
|
+
return _canUseSessionStorage;
|
|
2643
|
+
}
|
|
2644
|
+
function utlGetSessionStorageKeys() {
|
|
2645
|
+
var keys = [];
|
|
2646
|
+
if (utlCanUseSessionStorage()) {
|
|
2647
|
+
objForEachKey(getInst("sessionStorage"), function (key) {
|
|
2648
|
+
keys.push(key);
|
|
2649
|
+
});
|
|
2650
|
+
}
|
|
2651
|
+
return keys;
|
|
2652
|
+
}
|
|
2653
|
+
function utlGetSessionStorage(logger, name) {
|
|
2654
|
+
var storage = _getSessionStorageObject();
|
|
2655
|
+
if (storage !== null) {
|
|
2656
|
+
try {
|
|
2657
|
+
return storage.getItem(name);
|
|
2658
|
+
}
|
|
2659
|
+
catch (e) {
|
|
2660
|
+
_canUseSessionStorage = false;
|
|
2661
|
+
_throwInternal(logger, 2 , 2 , "Browser failed read of session storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2662
|
+
}
|
|
2663
|
+
}
|
|
2664
|
+
return null;
|
|
2665
|
+
}
|
|
2666
|
+
function utlSetSessionStorage(logger, name, data) {
|
|
2667
|
+
var storage = _getSessionStorageObject();
|
|
2668
|
+
if (storage !== null) {
|
|
2669
|
+
try {
|
|
2670
|
+
storage.setItem(name, data);
|
|
2671
|
+
return true;
|
|
2672
|
+
}
|
|
2673
|
+
catch (e) {
|
|
2674
|
+
_canUseSessionStorage = false;
|
|
2675
|
+
_throwInternal(logger, 2 , 4 , "Browser failed write to session storage. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2676
|
+
}
|
|
2677
|
+
}
|
|
2678
|
+
return false;
|
|
2679
|
+
}
|
|
2680
|
+
function utlRemoveSessionStorage(logger, name) {
|
|
2681
|
+
var storage = _getSessionStorageObject();
|
|
2682
|
+
if (storage !== null) {
|
|
2683
|
+
try {
|
|
2684
|
+
storage[_DYN_REMOVE_ITEM ](name);
|
|
2685
|
+
return true;
|
|
2686
|
+
}
|
|
2687
|
+
catch (e) {
|
|
2688
|
+
_canUseSessionStorage = false;
|
|
2689
|
+
_throwInternal(logger, 2 , 6 , "Browser failed removal of session storage item. " + getExceptionName(e), { exception: dumpObj(e) });
|
|
2690
|
+
}
|
|
2691
|
+
}
|
|
2692
|
+
return false;
|
|
2693
|
+
}
|
|
2694
|
+
|
|
2695
|
+
var THROTTLE_STORAGE_PREFIX = "appInsightsThrottle";
|
|
2696
|
+
var ThrottleMgr = /** @class */ (function () {
|
|
2697
|
+
function ThrottleMgr(config, core, namePrefix, unloadHookContainer) {
|
|
2698
|
+
var _self = this;
|
|
2699
|
+
var _canUseLocalStorage;
|
|
2700
|
+
var _logger;
|
|
2701
|
+
var _config;
|
|
2702
|
+
var _localStorageName;
|
|
2703
|
+
var _localStorageObj;
|
|
2704
|
+
var _isTriggered;
|
|
2705
|
+
var _namePrefix;
|
|
2706
|
+
var _queue;
|
|
2707
|
+
var _isReady = false;
|
|
2708
|
+
var _isSpecificDaysGiven = false;
|
|
2709
|
+
_initConfig();
|
|
2710
|
+
_self["_getDbgPlgTargets"] = function () {
|
|
2711
|
+
return [_queue];
|
|
2712
|
+
};
|
|
2713
|
+
_self.getConfig = function () {
|
|
2714
|
+
return _config;
|
|
2715
|
+
};
|
|
2716
|
+
_self.canThrottle = function () {
|
|
2717
|
+
return _canThrottle(_config, _canUseLocalStorage, _localStorageObj);
|
|
2718
|
+
};
|
|
2719
|
+
_self.isTriggered = function () {
|
|
2720
|
+
return _isTriggered;
|
|
2721
|
+
};
|
|
2722
|
+
_self.isReady = function () {
|
|
2723
|
+
return _isReady;
|
|
2724
|
+
};
|
|
2725
|
+
_self.flush = function () {
|
|
2726
|
+
try {
|
|
2727
|
+
if (_isReady && _queue[_DYN_LENGTH ] > 0) {
|
|
2728
|
+
var items = _queue.slice(0);
|
|
2729
|
+
_queue = [];
|
|
2730
|
+
arrForEach(items, function (item) {
|
|
2731
|
+
_flushMessage(item.msgID, item[_DYN_MESSAGE ], item.severity, false);
|
|
2732
|
+
});
|
|
2733
|
+
return true;
|
|
2734
|
+
}
|
|
2735
|
+
}
|
|
2736
|
+
catch (err) {
|
|
2737
|
+
}
|
|
2738
|
+
return false;
|
|
2739
|
+
};
|
|
2740
|
+
_self.onReadyState = function (isReady) {
|
|
2741
|
+
_isReady = isNullOrUndefined(isReady) ? true : isReady;
|
|
2742
|
+
return _self.flush();
|
|
2743
|
+
};
|
|
2744
|
+
_self.sendMessage = function (msgID, message, severity) {
|
|
2745
|
+
return _flushMessage(msgID, message, severity, true);
|
|
2746
|
+
};
|
|
2747
|
+
function _flushMessage(msgID, message, severity, saveUnsentMsg) {
|
|
2748
|
+
if (_isReady) {
|
|
2749
|
+
var isSampledIn = _canSampledIn();
|
|
2750
|
+
if (!isSampledIn) {
|
|
2751
|
+
return;
|
|
2752
|
+
}
|
|
2753
|
+
var canThrottle = _canThrottle(_config, _canUseLocalStorage, _localStorageObj);
|
|
2754
|
+
var throttled = false;
|
|
2755
|
+
var number = 0;
|
|
2756
|
+
try {
|
|
2757
|
+
if (canThrottle && !_isTriggered) {
|
|
2758
|
+
number = Math.min(_config.limit.maxSendNumber, _localStorageObj[_DYN_COUNT ] + 1);
|
|
2759
|
+
_localStorageObj[_DYN_COUNT ] = 0;
|
|
2760
|
+
throttled = true;
|
|
2761
|
+
_isTriggered = true;
|
|
2762
|
+
_localStorageObj[_DYN_PRE_TRIGGER_DATE ] = new Date();
|
|
2763
|
+
}
|
|
2764
|
+
else {
|
|
2765
|
+
_isTriggered = canThrottle;
|
|
2766
|
+
_localStorageObj[_DYN_COUNT ] += 1;
|
|
2767
|
+
}
|
|
2768
|
+
_resetLocalStorage(_logger, _localStorageName, _localStorageObj);
|
|
2769
|
+
for (var i = 0; i < number; i++) {
|
|
2770
|
+
_sendMessage(msgID, _logger, message, severity);
|
|
2771
|
+
}
|
|
2772
|
+
}
|
|
2773
|
+
catch (e) {
|
|
2774
|
+
}
|
|
2775
|
+
return {
|
|
2776
|
+
isThrottled: throttled,
|
|
2777
|
+
throttleNum: number
|
|
2778
|
+
};
|
|
2779
|
+
}
|
|
2780
|
+
else {
|
|
2781
|
+
if (!!saveUnsentMsg) {
|
|
2782
|
+
_queue.push({
|
|
2783
|
+
msgID: msgID,
|
|
2784
|
+
message: message,
|
|
2785
|
+
severity: severity
|
|
2786
|
+
});
|
|
2787
|
+
}
|
|
2788
|
+
}
|
|
2789
|
+
return null;
|
|
2790
|
+
}
|
|
2791
|
+
function _initConfig() {
|
|
2792
|
+
_logger = safeGetLogger(core);
|
|
2793
|
+
_isTriggered = false;
|
|
2794
|
+
_queue = [];
|
|
2795
|
+
_namePrefix = isNotNullOrUndefined(namePrefix) ? namePrefix : "";
|
|
2796
|
+
unloadHookContainer = unloadHookContainer || createUnloadHookContainer();
|
|
2797
|
+
config = createDynamicConfig(config || {}, null, _logger).cfg;
|
|
2798
|
+
var unloadHook = onConfigChange((config), function () {
|
|
2799
|
+
var _a, _b;
|
|
2800
|
+
_canUseLocalStorage = utlCanUseLocalStorage();
|
|
2801
|
+
var configMgr = config || {};
|
|
2802
|
+
_config = {};
|
|
2803
|
+
_config[_DYN_DISABLED ] = !!configMgr[_DYN_DISABLED ];
|
|
2804
|
+
_config.msgKey = configMgr.msgKey || 0 ;
|
|
2805
|
+
var configInterval = configMgr[_DYN_INTERVAL ] || {};
|
|
2806
|
+
_isSpecificDaysGiven = (configInterval === null || configInterval === void 0 ? void 0 : configInterval.daysOfMonth) && (configInterval === null || configInterval === void 0 ? void 0 : configInterval.daysOfMonth[_DYN_LENGTH ]) > 0;
|
|
2807
|
+
_config[_DYN_INTERVAL ] = _getIntervalConfig(configInterval);
|
|
2808
|
+
var limit = {
|
|
2809
|
+
samplingRate: ((_a = configMgr.limit) === null || _a === void 0 ? void 0 : _a.samplingRate) || 100,
|
|
2810
|
+
maxSendNumber: ((_b = configMgr.limit) === null || _b === void 0 ? void 0 : _b.maxSendNumber) || 1
|
|
2811
|
+
};
|
|
2812
|
+
_config.limit = limit;
|
|
2813
|
+
_localStorageName = _getLocalStorageName(_config.msgKey, _namePrefix);
|
|
2814
|
+
if (_canUseLocalStorage && _localStorageName) {
|
|
2815
|
+
_localStorageObj = _getLocalStorageObj(utlGetLocalStorage(_logger, _localStorageName), _logger, _localStorageName);
|
|
2816
|
+
}
|
|
2817
|
+
if (_localStorageObj) {
|
|
2818
|
+
_isTriggered = _isTriggeredOnCurDate(_localStorageObj[_DYN_PRE_TRIGGER_DATE ]);
|
|
2819
|
+
}
|
|
2820
|
+
});
|
|
2821
|
+
unloadHookContainer && unloadHookContainer.add(unloadHook);
|
|
2822
|
+
}
|
|
2823
|
+
function _getIntervalConfig(interval) {
|
|
2824
|
+
interval = interval || {};
|
|
2825
|
+
var monthInterval = interval === null || interval === void 0 ? void 0 : interval.monthInterval;
|
|
2826
|
+
var dayInterval = interval === null || interval === void 0 ? void 0 : interval.dayInterval;
|
|
2827
|
+
if (isNullOrUndefined(monthInterval) && isNullOrUndefined(dayInterval)) {
|
|
2828
|
+
interval.monthInterval = 3;
|
|
2829
|
+
if (!_isSpecificDaysGiven) {
|
|
2830
|
+
interval[_DYN_DAYS_OF_MONTH ] = [28];
|
|
2831
|
+
_isSpecificDaysGiven = true;
|
|
2832
|
+
}
|
|
2833
|
+
}
|
|
2834
|
+
interval = {
|
|
2835
|
+
monthInterval: interval === null || interval === void 0 ? void 0 : interval.monthInterval,
|
|
2836
|
+
dayInterval: interval === null || interval === void 0 ? void 0 : interval.dayInterval,
|
|
2837
|
+
daysOfMonth: interval === null || interval === void 0 ? void 0 : interval.daysOfMonth
|
|
2838
|
+
};
|
|
2839
|
+
return interval;
|
|
2840
|
+
}
|
|
2841
|
+
function _canThrottle(config, canUseLocalStorage, localStorageObj) {
|
|
2842
|
+
if (!config[_DYN_DISABLED ] && canUseLocalStorage && isNotNullOrUndefined(localStorageObj)) {
|
|
2843
|
+
var curDate = _getThrottleDate();
|
|
2844
|
+
var date = localStorageObj[_DYN_DATE ];
|
|
2845
|
+
var interval = config[_DYN_INTERVAL ];
|
|
2846
|
+
var monthCheck = 1;
|
|
2847
|
+
if (interval === null || interval === void 0 ? void 0 : interval.monthInterval) {
|
|
2848
|
+
var monthExpand = (curDate.getUTCFullYear() - date.getUTCFullYear()) * 12 + curDate.getUTCMonth() - date.getUTCMonth();
|
|
2849
|
+
monthCheck = _checkInterval(interval.monthInterval, 0, monthExpand);
|
|
2850
|
+
}
|
|
2851
|
+
var dayCheck = 1;
|
|
2852
|
+
if (_isSpecificDaysGiven) {
|
|
2853
|
+
dayCheck = arrIndexOf(interval[_DYN_DAYS_OF_MONTH ], curDate[_DYN_GET_UTCDATE ]());
|
|
2854
|
+
}
|
|
2855
|
+
else if (interval === null || interval === void 0 ? void 0 : interval.dayInterval) {
|
|
2856
|
+
var daySpan = Math.floor((curDate.getTime() - date.getTime()) / 86400000);
|
|
2857
|
+
dayCheck = _checkInterval(interval.dayInterval, 0, daySpan);
|
|
2858
|
+
}
|
|
2859
|
+
return monthCheck >= 0 && dayCheck >= 0;
|
|
2860
|
+
}
|
|
2861
|
+
return false;
|
|
2862
|
+
}
|
|
2863
|
+
function _getLocalStorageName(msgKey, prefix) {
|
|
2864
|
+
var fix = isNotNullOrUndefined(prefix) ? prefix : "";
|
|
2865
|
+
if (msgKey) {
|
|
2866
|
+
return THROTTLE_STORAGE_PREFIX + fix + "-" + msgKey;
|
|
2867
|
+
}
|
|
2868
|
+
return null;
|
|
2869
|
+
}
|
|
2870
|
+
function _isTriggeredOnCurDate(preTriggerDate) {
|
|
2871
|
+
try {
|
|
2872
|
+
if (preTriggerDate) {
|
|
2873
|
+
var curDate = new Date();
|
|
2874
|
+
return preTriggerDate.getUTCFullYear() === curDate.getUTCFullYear() &&
|
|
2875
|
+
preTriggerDate.getUTCMonth() === curDate.getUTCMonth() &&
|
|
2876
|
+
preTriggerDate[_DYN_GET_UTCDATE ]() === curDate[_DYN_GET_UTCDATE ]();
|
|
2877
|
+
}
|
|
2878
|
+
}
|
|
2879
|
+
catch (e) {
|
|
2880
|
+
}
|
|
2881
|
+
return false;
|
|
2882
|
+
}
|
|
2883
|
+
function _getLocalStorageObj(value, logger, storageName) {
|
|
2884
|
+
try {
|
|
2885
|
+
var storageObj = {
|
|
2886
|
+
date: _getThrottleDate(),
|
|
2887
|
+
count: 0
|
|
2888
|
+
};
|
|
2889
|
+
if (value) {
|
|
2890
|
+
var obj = JSON.parse(value);
|
|
2891
|
+
return {
|
|
2892
|
+
date: _getThrottleDate(obj[_DYN_DATE ]) || storageObj[_DYN_DATE ],
|
|
2893
|
+
count: obj[_DYN_COUNT ] || storageObj[_DYN_COUNT ],
|
|
2894
|
+
preTriggerDate: obj.preTriggerDate ? _getThrottleDate(obj[_DYN_PRE_TRIGGER_DATE ]) : undefined
|
|
2895
|
+
};
|
|
2896
|
+
}
|
|
2897
|
+
else {
|
|
2898
|
+
_resetLocalStorage(logger, storageName, storageObj);
|
|
2899
|
+
return storageObj;
|
|
2900
|
+
}
|
|
2901
|
+
}
|
|
2902
|
+
catch (e) {
|
|
2903
|
+
}
|
|
2904
|
+
return null;
|
|
2905
|
+
}
|
|
2906
|
+
function _getThrottleDate(dateStr) {
|
|
2907
|
+
try {
|
|
2908
|
+
if (dateStr) {
|
|
2909
|
+
var date = new Date(dateStr);
|
|
2910
|
+
if (!isNaN(date.getDate())) {
|
|
2911
|
+
return date;
|
|
2912
|
+
}
|
|
2913
|
+
}
|
|
2914
|
+
else {
|
|
2915
|
+
return new Date();
|
|
2916
|
+
}
|
|
2917
|
+
}
|
|
2918
|
+
catch (e) {
|
|
2919
|
+
}
|
|
2920
|
+
return null;
|
|
2921
|
+
}
|
|
2922
|
+
function _resetLocalStorage(logger, storageName, obj) {
|
|
2923
|
+
try {
|
|
2924
|
+
return utlSetLocalStorage(logger, storageName, strTrim(JSON[_DYN_STRINGIFY ](obj)));
|
|
2925
|
+
}
|
|
2926
|
+
catch (e) {
|
|
2927
|
+
}
|
|
2928
|
+
return false;
|
|
2929
|
+
}
|
|
2930
|
+
function _checkInterval(interval, start, current) {
|
|
2931
|
+
if (interval <= 0) {
|
|
2932
|
+
return 1;
|
|
2933
|
+
}
|
|
2934
|
+
return (current >= start) && (current - start) % interval == 0 ? Math.floor((current - start) / interval) + 1 : -1;
|
|
2935
|
+
}
|
|
2936
|
+
function _sendMessage(msgID, logger, message, severity) {
|
|
2937
|
+
_throwInternal(logger, severity || 1 , msgID, message);
|
|
2938
|
+
}
|
|
2939
|
+
function _canSampledIn() {
|
|
2940
|
+
return randomValue(1000000) <= _config.limit.samplingRate;
|
|
2941
|
+
}
|
|
2942
|
+
}
|
|
2943
|
+
return ThrottleMgr;
|
|
2944
|
+
}());
|
|
2945
|
+
|
|
2946
|
+
var _FIELDS_SEPARATOR = ";";
|
|
2947
|
+
var _FIELD_KEY_VALUE_SEPARATOR = "=";
|
|
2948
|
+
function parseConnectionString(connectionString) {
|
|
2949
|
+
if (!connectionString) {
|
|
2950
|
+
return {};
|
|
2951
|
+
}
|
|
2952
|
+
var kvPairs = connectionString[_DYN_SPLIT ](_FIELDS_SEPARATOR);
|
|
2953
|
+
var result = arrReduce(kvPairs, function (fields, kv) {
|
|
2954
|
+
var kvParts = kv[_DYN_SPLIT ](_FIELD_KEY_VALUE_SEPARATOR);
|
|
2955
|
+
if (kvParts[_DYN_LENGTH ] === 2) {
|
|
2956
|
+
var key = kvParts[0][_DYN_TO_LOWER_CASE ]();
|
|
2957
|
+
var value = kvParts[1];
|
|
2958
|
+
fields[key] = value;
|
|
2959
|
+
}
|
|
2960
|
+
return fields;
|
|
2961
|
+
}, {});
|
|
2962
|
+
if (objKeys(result)[_DYN_LENGTH ] > 0) {
|
|
2963
|
+
if (result.endpointsuffix) {
|
|
2964
|
+
var locationPrefix = result.location ? result.location + "." : "";
|
|
2965
|
+
result[_DYN_INGESTIONENDPOINT ] = result[_DYN_INGESTIONENDPOINT ] || ("https://" + locationPrefix + "dc." + result.endpointsuffix);
|
|
2966
|
+
}
|
|
2967
|
+
result[_DYN_INGESTIONENDPOINT ] = result[_DYN_INGESTIONENDPOINT ] || DEFAULT_BREEZE_ENDPOINT;
|
|
2968
|
+
}
|
|
2969
|
+
return result;
|
|
2970
|
+
}
|
|
2971
|
+
var ConnectionStringParser = {
|
|
2972
|
+
parse: parseConnectionString
|
|
2973
|
+
};
|
|
2974
|
+
|
|
2975
|
+
var Envelope = /** @class */ (function () {
|
|
2976
|
+
function Envelope(logger, data, name) {
|
|
2977
|
+
var _this = this;
|
|
2978
|
+
var _self = this;
|
|
2979
|
+
_self.ver = 1;
|
|
2980
|
+
_self.sampleRate = 100.0;
|
|
2981
|
+
_self.tags = {};
|
|
2982
|
+
_self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
2983
|
+
_self.data = data;
|
|
2984
|
+
_self.time = toISOString(new Date());
|
|
2985
|
+
_self.aiDataContract = {
|
|
2986
|
+
time: 1 ,
|
|
2987
|
+
iKey: 1 ,
|
|
2988
|
+
name: 1 ,
|
|
2989
|
+
sampleRate: function () {
|
|
2990
|
+
return (_this.sampleRate === 100) ? 4 : 1 ;
|
|
2991
|
+
},
|
|
2992
|
+
tags: 1 ,
|
|
2993
|
+
data: 1
|
|
2994
|
+
};
|
|
2995
|
+
}
|
|
2996
|
+
return Envelope;
|
|
2997
|
+
}());
|
|
2998
|
+
|
|
2999
|
+
var Event$1 = /** @class */ (function () {
|
|
3000
|
+
function Event(logger, name, properties, measurements) {
|
|
3001
|
+
this.aiDataContract = {
|
|
3002
|
+
ver: 1 ,
|
|
3003
|
+
name: 1 ,
|
|
3004
|
+
properties: 0 ,
|
|
3005
|
+
measurements: 0
|
|
3006
|
+
};
|
|
3007
|
+
var _self = this;
|
|
3008
|
+
_self.ver = 2;
|
|
3009
|
+
_self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
3010
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3011
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3012
|
+
}
|
|
3013
|
+
Event.envelopeType = "Microsoft.ApplicationInsights.{0}.Event";
|
|
3014
|
+
Event.dataType = "EventData";
|
|
3015
|
+
return Event;
|
|
3016
|
+
}());
|
|
3017
|
+
|
|
3018
|
+
var NoMethod = "<no_method>";
|
|
3019
|
+
var strError = "error";
|
|
3020
|
+
var strStack = "stack";
|
|
3021
|
+
var strStackDetails = "stackDetails";
|
|
3022
|
+
var strErrorSrc = "errorSrc";
|
|
3023
|
+
var strMessage = "message";
|
|
3024
|
+
var strDescription = "description";
|
|
3025
|
+
function _stringify(value, convertToString) {
|
|
3026
|
+
var result = value;
|
|
3027
|
+
if (result && !isString(result)) {
|
|
3028
|
+
if (JSON && JSON[_DYN_STRINGIFY ]) {
|
|
3029
|
+
result = JSON[_DYN_STRINGIFY ](value);
|
|
3030
|
+
if (convertToString && (!result || result === "{}")) {
|
|
3031
|
+
if (isFunction(value[_DYN_TO_STRING ])) {
|
|
3032
|
+
result = value[_DYN_TO_STRING ]();
|
|
3033
|
+
}
|
|
3034
|
+
else {
|
|
3035
|
+
result = "" + value;
|
|
3036
|
+
}
|
|
3037
|
+
}
|
|
3038
|
+
}
|
|
3039
|
+
else {
|
|
3040
|
+
result = "" + value + " - (Missing JSON.stringify)";
|
|
3041
|
+
}
|
|
3042
|
+
}
|
|
3043
|
+
return result || "";
|
|
3044
|
+
}
|
|
3045
|
+
function _formatMessage(theEvent, errorType) {
|
|
3046
|
+
var evtMessage = theEvent;
|
|
3047
|
+
if (theEvent) {
|
|
3048
|
+
if (evtMessage && !isString(evtMessage)) {
|
|
3049
|
+
evtMessage = theEvent[strMessage] || theEvent[strDescription] || evtMessage;
|
|
3050
|
+
}
|
|
3051
|
+
if (evtMessage && !isString(evtMessage)) {
|
|
3052
|
+
evtMessage = _stringify(evtMessage, true);
|
|
3053
|
+
}
|
|
3054
|
+
if (theEvent["filename"]) {
|
|
3055
|
+
evtMessage = evtMessage + " @" + (theEvent["filename"] || "") + ":" + (theEvent["lineno"] || "?") + ":" + (theEvent["colno"] || "?");
|
|
3056
|
+
}
|
|
3057
|
+
}
|
|
3058
|
+
if (errorType && errorType !== "String" && errorType !== "Object" && errorType !== "Error" && strIndexOf(evtMessage || "", errorType) === -1) {
|
|
3059
|
+
evtMessage = errorType + ": " + evtMessage;
|
|
3060
|
+
}
|
|
3061
|
+
return evtMessage || "";
|
|
3062
|
+
}
|
|
3063
|
+
function _isExceptionDetailsInternal(value) {
|
|
3064
|
+
try {
|
|
3065
|
+
if (isObject(value)) {
|
|
3066
|
+
return "hasFullStack" in value && "typeName" in value;
|
|
3067
|
+
}
|
|
3068
|
+
}
|
|
3069
|
+
catch (e) {
|
|
3070
|
+
}
|
|
3071
|
+
return false;
|
|
3072
|
+
}
|
|
3073
|
+
function _isExceptionInternal(value) {
|
|
3074
|
+
try {
|
|
3075
|
+
if (isObject(value)) {
|
|
3076
|
+
return ("ver" in value && "exceptions" in value && "properties" in value);
|
|
3077
|
+
}
|
|
3078
|
+
}
|
|
3079
|
+
catch (e) {
|
|
3080
|
+
}
|
|
3081
|
+
return false;
|
|
3082
|
+
}
|
|
3083
|
+
function _isStackDetails(details) {
|
|
3084
|
+
return details && details.src && isString(details.src) && details.obj && isArray(details.obj);
|
|
3085
|
+
}
|
|
3086
|
+
function _convertStackObj(errorStack) {
|
|
3087
|
+
var src = errorStack || "";
|
|
3088
|
+
if (!isString(src)) {
|
|
3089
|
+
if (isString(src[strStack])) {
|
|
3090
|
+
src = src[strStack];
|
|
3091
|
+
}
|
|
3092
|
+
else {
|
|
3093
|
+
src = "" + src;
|
|
3094
|
+
}
|
|
3095
|
+
}
|
|
3096
|
+
var items = src[_DYN_SPLIT ]("\n");
|
|
3097
|
+
return {
|
|
3098
|
+
src: src,
|
|
3099
|
+
obj: items
|
|
3100
|
+
};
|
|
3101
|
+
}
|
|
3102
|
+
function _getOperaStack(errorMessage) {
|
|
3103
|
+
var stack = [];
|
|
3104
|
+
var lines = errorMessage[_DYN_SPLIT ]("\n");
|
|
3105
|
+
for (var lp = 0; lp < lines[_DYN_LENGTH ]; lp++) {
|
|
3106
|
+
var entry = lines[lp];
|
|
3107
|
+
if (lines[lp + 1]) {
|
|
3108
|
+
entry += "@" + lines[lp + 1];
|
|
3109
|
+
lp++;
|
|
3110
|
+
}
|
|
3111
|
+
stack.push(entry);
|
|
3112
|
+
}
|
|
3113
|
+
return {
|
|
3114
|
+
src: errorMessage,
|
|
3115
|
+
obj: stack
|
|
3116
|
+
};
|
|
3117
|
+
}
|
|
3118
|
+
function _getStackFromErrorObj(errorObj) {
|
|
3119
|
+
var details = null;
|
|
3120
|
+
if (errorObj) {
|
|
3121
|
+
try {
|
|
3122
|
+
if (errorObj[strStack]) {
|
|
3123
|
+
details = _convertStackObj(errorObj[strStack]);
|
|
3124
|
+
}
|
|
3125
|
+
else if (errorObj[strError] && errorObj[strError][strStack]) {
|
|
3126
|
+
details = _convertStackObj(errorObj[strError][strStack]);
|
|
3127
|
+
}
|
|
3128
|
+
else if (errorObj["exception"] && errorObj.exception[strStack]) {
|
|
3129
|
+
details = _convertStackObj(errorObj.exception[strStack]);
|
|
3130
|
+
}
|
|
3131
|
+
else if (_isStackDetails(errorObj)) {
|
|
3132
|
+
details = errorObj;
|
|
3133
|
+
}
|
|
3134
|
+
else if (_isStackDetails(errorObj[strStackDetails])) {
|
|
3135
|
+
details = errorObj[strStackDetails];
|
|
3136
|
+
}
|
|
3137
|
+
else if (window && window["opera"] && errorObj[strMessage]) {
|
|
3138
|
+
details = _getOperaStack(errorObj[_DYN_MESSAGE ]);
|
|
3139
|
+
}
|
|
3140
|
+
else if (errorObj["reason"] && errorObj.reason[strStack]) {
|
|
3141
|
+
details = _convertStackObj(errorObj.reason[strStack]);
|
|
3142
|
+
}
|
|
3143
|
+
else if (isString(errorObj)) {
|
|
3144
|
+
details = _convertStackObj(errorObj);
|
|
3145
|
+
}
|
|
3146
|
+
else {
|
|
3147
|
+
var evtMessage = errorObj[strMessage] || errorObj[strDescription] || "";
|
|
3148
|
+
if (isString(errorObj[strErrorSrc])) {
|
|
3149
|
+
if (evtMessage) {
|
|
3150
|
+
evtMessage += "\n";
|
|
3151
|
+
}
|
|
3152
|
+
evtMessage += " from " + errorObj[strErrorSrc];
|
|
3153
|
+
}
|
|
3154
|
+
if (evtMessage) {
|
|
3155
|
+
details = _convertStackObj(evtMessage);
|
|
3156
|
+
}
|
|
3157
|
+
}
|
|
3158
|
+
}
|
|
3159
|
+
catch (e) {
|
|
3160
|
+
details = _convertStackObj(e);
|
|
3161
|
+
}
|
|
3162
|
+
}
|
|
3163
|
+
return details || {
|
|
3164
|
+
src: "",
|
|
3165
|
+
obj: null
|
|
3166
|
+
};
|
|
3167
|
+
}
|
|
3168
|
+
function _formatStackTrace(stackDetails) {
|
|
3169
|
+
var stack = "";
|
|
3170
|
+
if (stackDetails) {
|
|
3171
|
+
if (stackDetails.obj) {
|
|
3172
|
+
arrForEach(stackDetails.obj, function (entry) {
|
|
3173
|
+
stack += entry + "\n";
|
|
3174
|
+
});
|
|
3175
|
+
}
|
|
3176
|
+
else {
|
|
3177
|
+
stack = stackDetails.src || "";
|
|
3178
|
+
}
|
|
3179
|
+
}
|
|
3180
|
+
return stack;
|
|
3181
|
+
}
|
|
3182
|
+
function _parseStack(stack) {
|
|
3183
|
+
var parsedStack;
|
|
3184
|
+
var frames = stack.obj;
|
|
3185
|
+
if (frames && frames[_DYN_LENGTH ] > 0) {
|
|
3186
|
+
parsedStack = [];
|
|
3187
|
+
var level_1 = 0;
|
|
3188
|
+
var totalSizeInBytes_1 = 0;
|
|
3189
|
+
arrForEach(frames, function (frame) {
|
|
3190
|
+
var theFrame = frame[_DYN_TO_STRING ]();
|
|
3191
|
+
if (_StackFrame.regex.test(theFrame)) {
|
|
3192
|
+
var parsedFrame = new _StackFrame(theFrame, level_1++);
|
|
3193
|
+
totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES ];
|
|
3194
|
+
parsedStack.push(parsedFrame);
|
|
3195
|
+
}
|
|
3196
|
+
});
|
|
3197
|
+
var exceptionParsedStackThreshold = 32 * 1024;
|
|
3198
|
+
if (totalSizeInBytes_1 > exceptionParsedStackThreshold) {
|
|
3199
|
+
var left = 0;
|
|
3200
|
+
var right = parsedStack[_DYN_LENGTH ] - 1;
|
|
3201
|
+
var size = 0;
|
|
3202
|
+
var acceptedLeft = left;
|
|
3203
|
+
var acceptedRight = right;
|
|
3204
|
+
while (left < right) {
|
|
3205
|
+
var lSize = parsedStack[left][_DYN_SIZE_IN_BYTES ];
|
|
3206
|
+
var rSize = parsedStack[right][_DYN_SIZE_IN_BYTES ];
|
|
3207
|
+
size += lSize + rSize;
|
|
3208
|
+
if (size > exceptionParsedStackThreshold) {
|
|
3209
|
+
var howMany = acceptedRight - acceptedLeft + 1;
|
|
3210
|
+
parsedStack.splice(acceptedLeft, howMany);
|
|
3211
|
+
break;
|
|
3212
|
+
}
|
|
3213
|
+
acceptedLeft = left;
|
|
3214
|
+
acceptedRight = right;
|
|
3215
|
+
left++;
|
|
3216
|
+
right--;
|
|
3217
|
+
}
|
|
3218
|
+
}
|
|
3219
|
+
}
|
|
3220
|
+
return parsedStack;
|
|
3221
|
+
}
|
|
3222
|
+
function _getErrorType(errorType) {
|
|
3223
|
+
var typeName = "";
|
|
3224
|
+
if (errorType) {
|
|
3225
|
+
typeName = errorType.typeName || errorType[_DYN_NAME ] || "";
|
|
3226
|
+
if (!typeName) {
|
|
3227
|
+
try {
|
|
3228
|
+
var funcNameRegex = /function (.{1,200})\(/;
|
|
3229
|
+
var results = (funcNameRegex).exec((errorType).constructor[_DYN_TO_STRING ]());
|
|
3230
|
+
typeName = (results && results[_DYN_LENGTH ] > 1) ? results[1] : "";
|
|
3231
|
+
}
|
|
3232
|
+
catch (e) {
|
|
3233
|
+
}
|
|
3234
|
+
}
|
|
3235
|
+
}
|
|
3236
|
+
return typeName;
|
|
3237
|
+
}
|
|
3238
|
+
function _formatErrorCode(errorObj) {
|
|
3239
|
+
if (errorObj) {
|
|
3240
|
+
try {
|
|
3241
|
+
if (!isString(errorObj)) {
|
|
3242
|
+
var errorType = _getErrorType(errorObj);
|
|
3243
|
+
var result = _stringify(errorObj, false);
|
|
3244
|
+
if (!result || result === "{}") {
|
|
3245
|
+
if (errorObj[strError]) {
|
|
3246
|
+
errorObj = errorObj[strError];
|
|
3247
|
+
errorType = _getErrorType(errorObj);
|
|
3248
|
+
}
|
|
3249
|
+
result = _stringify(errorObj, true);
|
|
3250
|
+
}
|
|
3251
|
+
if (strIndexOf(result, errorType) !== 0 && errorType !== "String") {
|
|
3252
|
+
return errorType + ":" + result;
|
|
3253
|
+
}
|
|
3254
|
+
return result;
|
|
3255
|
+
}
|
|
3256
|
+
}
|
|
3257
|
+
catch (e) {
|
|
3258
|
+
}
|
|
3259
|
+
}
|
|
3260
|
+
return "" + (errorObj || "");
|
|
3261
|
+
}
|
|
3262
|
+
var Exception = /** @class */ (function () {
|
|
3263
|
+
function Exception(logger, exception, properties, measurements, severityLevel, id) {
|
|
3264
|
+
this.aiDataContract = {
|
|
3265
|
+
ver: 1 ,
|
|
3266
|
+
exceptions: 1 ,
|
|
3267
|
+
severityLevel: 0 ,
|
|
3268
|
+
properties: 0 ,
|
|
3269
|
+
measurements: 0
|
|
3270
|
+
};
|
|
3271
|
+
var _self = this;
|
|
3272
|
+
_self.ver = 2;
|
|
3273
|
+
if (!_isExceptionInternal(exception)) {
|
|
3274
|
+
if (!properties) {
|
|
3275
|
+
properties = {};
|
|
3276
|
+
}
|
|
3277
|
+
_self[_DYN_EXCEPTIONS ] = [new _ExceptionDetails(logger, exception, properties)];
|
|
3278
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3279
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3280
|
+
if (severityLevel) {
|
|
3281
|
+
_self[_DYN_SEVERITY_LEVEL ] = severityLevel;
|
|
3282
|
+
}
|
|
3283
|
+
if (id) {
|
|
3284
|
+
_self.id = id;
|
|
3285
|
+
}
|
|
3286
|
+
}
|
|
3287
|
+
else {
|
|
3288
|
+
_self[_DYN_EXCEPTIONS ] = exception[_DYN_EXCEPTIONS ] || [];
|
|
3289
|
+
_self[_DYN_PROPERTIES ] = exception[_DYN_PROPERTIES ];
|
|
3290
|
+
_self[_DYN_MEASUREMENTS ] = exception[_DYN_MEASUREMENTS ];
|
|
3291
|
+
if (exception[_DYN_SEVERITY_LEVEL ]) {
|
|
3292
|
+
_self[_DYN_SEVERITY_LEVEL ] = exception[_DYN_SEVERITY_LEVEL ];
|
|
3293
|
+
}
|
|
3294
|
+
if (exception.id) {
|
|
3295
|
+
_self.id = exception.id;
|
|
3296
|
+
}
|
|
3297
|
+
if (exception[_DYN_PROBLEM_GROUP ]) {
|
|
3298
|
+
_self[_DYN_PROBLEM_GROUP ] = exception[_DYN_PROBLEM_GROUP ];
|
|
3299
|
+
}
|
|
3300
|
+
if (!isNullOrUndefined(exception[_DYN_IS_MANUAL ])) {
|
|
3301
|
+
_self[_DYN_IS_MANUAL ] = exception[_DYN_IS_MANUAL ];
|
|
3302
|
+
}
|
|
3303
|
+
}
|
|
3304
|
+
}
|
|
3305
|
+
Exception.CreateAutoException = function (message, url, lineNumber, columnNumber, error, evt, stack, errorSrc) {
|
|
3306
|
+
var _a;
|
|
3307
|
+
var errorType = _getErrorType(error || evt || message);
|
|
3308
|
+
return _a = {},
|
|
3309
|
+
_a[_DYN_MESSAGE ] = _formatMessage(message, errorType),
|
|
3310
|
+
_a.url = url,
|
|
3311
|
+
_a.lineNumber = lineNumber,
|
|
3312
|
+
_a.columnNumber = columnNumber,
|
|
3313
|
+
_a.error = _formatErrorCode(error || evt || message),
|
|
3314
|
+
_a.evt = _formatErrorCode(evt || message),
|
|
3315
|
+
_a[_DYN_TYPE_NAME ] = errorType,
|
|
3316
|
+
_a.stackDetails = _getStackFromErrorObj(stack || error || evt),
|
|
3317
|
+
_a.errorSrc = errorSrc,
|
|
3318
|
+
_a;
|
|
3319
|
+
};
|
|
3320
|
+
Exception.CreateFromInterface = function (logger, exception, properties, measurements) {
|
|
3321
|
+
var exceptions = exception[_DYN_EXCEPTIONS ]
|
|
3322
|
+
&& arrMap(exception[_DYN_EXCEPTIONS ], function (ex) { return _ExceptionDetails[_DYN__CREATE_FROM_INTERFA1 ](logger, ex); });
|
|
3323
|
+
var exceptionData = new Exception(logger, __assignFn(__assignFn({}, exception), { exceptions: exceptions }), properties, measurements);
|
|
3324
|
+
return exceptionData;
|
|
3325
|
+
};
|
|
3326
|
+
Exception.prototype.toInterface = function () {
|
|
3327
|
+
var _a;
|
|
3328
|
+
var _b = this, exceptions = _b.exceptions, properties = _b.properties, measurements = _b.measurements, severityLevel = _b.severityLevel, problemGroup = _b.problemGroup, id = _b.id, isManual = _b.isManual;
|
|
3329
|
+
var exceptionDetailsInterface = exceptions instanceof Array
|
|
3330
|
+
&& arrMap(exceptions, function (exception) { return exception.toInterface(); })
|
|
3331
|
+
|| undefined;
|
|
3332
|
+
return _a = {
|
|
3333
|
+
ver: "4.0"
|
|
3334
|
+
},
|
|
3335
|
+
_a[_DYN_EXCEPTIONS ] = exceptionDetailsInterface,
|
|
3336
|
+
_a.severityLevel = severityLevel,
|
|
3337
|
+
_a.properties = properties,
|
|
3338
|
+
_a.measurements = measurements,
|
|
3339
|
+
_a.problemGroup = problemGroup,
|
|
3340
|
+
_a.id = id,
|
|
3341
|
+
_a.isManual = isManual,
|
|
3342
|
+
_a;
|
|
3343
|
+
};
|
|
3344
|
+
Exception.CreateSimpleException = function (message, typeName, assembly, fileName, details, line) {
|
|
3345
|
+
var _a;
|
|
3346
|
+
return {
|
|
3347
|
+
exceptions: [
|
|
3348
|
+
(_a = {},
|
|
3349
|
+
_a[_DYN_HAS_FULL_STACK ] = true,
|
|
3350
|
+
_a.message = message,
|
|
3351
|
+
_a.stack = details,
|
|
3352
|
+
_a.typeName = typeName,
|
|
3353
|
+
_a)
|
|
3354
|
+
]
|
|
3355
|
+
};
|
|
3356
|
+
};
|
|
3357
|
+
Exception.envelopeType = "Microsoft.ApplicationInsights.{0}.Exception";
|
|
3358
|
+
Exception.dataType = "ExceptionData";
|
|
3359
|
+
Exception.formatError = _formatErrorCode;
|
|
3360
|
+
return Exception;
|
|
3361
|
+
}());
|
|
3362
|
+
var _ExceptionDetails = /** @class */ (function () {
|
|
3363
|
+
function _ExceptionDetails(logger, exception, properties) {
|
|
3364
|
+
this.aiDataContract = {
|
|
3365
|
+
id: 0 ,
|
|
3366
|
+
outerId: 0 ,
|
|
3367
|
+
typeName: 1 ,
|
|
3368
|
+
message: 1 ,
|
|
3369
|
+
hasFullStack: 0 ,
|
|
3370
|
+
stack: 0 ,
|
|
3371
|
+
parsedStack: 2
|
|
3372
|
+
};
|
|
3373
|
+
var _self = this;
|
|
3374
|
+
if (!_isExceptionDetailsInternal(exception)) {
|
|
3375
|
+
var error = exception;
|
|
3376
|
+
var evt = error && error.evt;
|
|
3377
|
+
if (!isError(error)) {
|
|
3378
|
+
error = error[strError] || evt || error;
|
|
3379
|
+
}
|
|
3380
|
+
_self[_DYN_TYPE_NAME ] = dataSanitizeString(logger, _getErrorType(error)) || strNotSpecified;
|
|
3381
|
+
_self[_DYN_MESSAGE ] = dataSanitizeMessage(logger, _formatMessage(exception || error, _self[_DYN_TYPE_NAME ])) || strNotSpecified;
|
|
3382
|
+
var stack = exception[strStackDetails] || _getStackFromErrorObj(exception);
|
|
3383
|
+
_self[_DYN_PARSED_STACK ] = _parseStack(stack);
|
|
3384
|
+
if (isArray(_self[_DYN_PARSED_STACK ])) {
|
|
3385
|
+
arrMap(_self[_DYN_PARSED_STACK ], function (frame) { return frame[_DYN_ASSEMBLY ] = dataSanitizeString(logger, frame[_DYN_ASSEMBLY ]); });
|
|
3386
|
+
}
|
|
3387
|
+
_self[strStack] = dataSanitizeException(logger, _formatStackTrace(stack));
|
|
3388
|
+
_self.hasFullStack = isArray(_self.parsedStack) && _self.parsedStack[_DYN_LENGTH ] > 0;
|
|
3389
|
+
if (properties) {
|
|
3390
|
+
properties[_DYN_TYPE_NAME ] = properties[_DYN_TYPE_NAME ] || _self[_DYN_TYPE_NAME ];
|
|
3391
|
+
}
|
|
3392
|
+
}
|
|
3393
|
+
else {
|
|
3394
|
+
_self[_DYN_TYPE_NAME ] = exception[_DYN_TYPE_NAME ];
|
|
3395
|
+
_self[_DYN_MESSAGE ] = exception[_DYN_MESSAGE ];
|
|
3396
|
+
_self[strStack] = exception[strStack];
|
|
3397
|
+
_self[_DYN_PARSED_STACK ] = exception[_DYN_PARSED_STACK ] || [];
|
|
3398
|
+
_self[_DYN_HAS_FULL_STACK ] = exception[_DYN_HAS_FULL_STACK ];
|
|
3399
|
+
}
|
|
3400
|
+
}
|
|
3401
|
+
_ExceptionDetails.prototype.toInterface = function () {
|
|
3402
|
+
var _a;
|
|
3403
|
+
var _self = this;
|
|
3404
|
+
var parsedStack = _self[_DYN_PARSED_STACK ] instanceof Array
|
|
3405
|
+
&& arrMap(_self[_DYN_PARSED_STACK ], function (frame) { return frame.toInterface(); });
|
|
3406
|
+
var exceptionDetailsInterface = (_a = {
|
|
3407
|
+
id: _self.id,
|
|
3408
|
+
outerId: _self.outerId,
|
|
3409
|
+
typeName: _self[_DYN_TYPE_NAME ],
|
|
3410
|
+
message: _self[_DYN_MESSAGE ],
|
|
3411
|
+
hasFullStack: _self[_DYN_HAS_FULL_STACK ],
|
|
3412
|
+
stack: _self[strStack]
|
|
3413
|
+
},
|
|
3414
|
+
_a[_DYN_PARSED_STACK ] = parsedStack || undefined,
|
|
3415
|
+
_a);
|
|
3416
|
+
return exceptionDetailsInterface;
|
|
3417
|
+
};
|
|
3418
|
+
_ExceptionDetails.CreateFromInterface = function (logger, exception) {
|
|
3419
|
+
var parsedStack = (exception[_DYN_PARSED_STACK ] instanceof Array
|
|
3420
|
+
&& arrMap(exception[_DYN_PARSED_STACK ], function (frame) { return _StackFrame[_DYN__CREATE_FROM_INTERFA1 ](frame); }))
|
|
3421
|
+
|| exception[_DYN_PARSED_STACK ];
|
|
3422
|
+
var exceptionDetails = new _ExceptionDetails(logger, __assignFn(__assignFn({}, exception), { parsedStack: parsedStack }));
|
|
3423
|
+
return exceptionDetails;
|
|
3424
|
+
};
|
|
3425
|
+
return _ExceptionDetails;
|
|
3426
|
+
}());
|
|
3427
|
+
var _StackFrame = /** @class */ (function () {
|
|
3428
|
+
function _StackFrame(sourceFrame, level) {
|
|
3429
|
+
this.aiDataContract = {
|
|
3430
|
+
level: 1 ,
|
|
3431
|
+
method: 1 ,
|
|
3432
|
+
assembly: 0 ,
|
|
3433
|
+
fileName: 0 ,
|
|
3434
|
+
line: 0
|
|
3435
|
+
};
|
|
3436
|
+
var _self = this;
|
|
3437
|
+
_self[_DYN_SIZE_IN_BYTES ] = 0;
|
|
3438
|
+
if (typeof sourceFrame === "string") {
|
|
3439
|
+
var frame = sourceFrame;
|
|
3440
|
+
_self[_DYN_LEVEL ] = level;
|
|
3441
|
+
_self[_DYN_METHOD ] = NoMethod;
|
|
3442
|
+
_self[_DYN_ASSEMBLY ] = strTrim(frame);
|
|
3443
|
+
_self[_DYN_FILE_NAME ] = "";
|
|
3444
|
+
_self[_DYN_LINE ] = 0;
|
|
3445
|
+
var matches = frame.match(_StackFrame.regex);
|
|
3446
|
+
if (matches && matches[_DYN_LENGTH ] >= 5) {
|
|
3447
|
+
_self[_DYN_METHOD ] = strTrim(matches[2]) || _self[_DYN_METHOD ];
|
|
3448
|
+
_self[_DYN_FILE_NAME ] = strTrim(matches[4]);
|
|
3449
|
+
_self[_DYN_LINE ] = parseInt(matches[5]) || 0;
|
|
3450
|
+
}
|
|
3451
|
+
}
|
|
3452
|
+
else {
|
|
3453
|
+
_self[_DYN_LEVEL ] = sourceFrame[_DYN_LEVEL ];
|
|
3454
|
+
_self[_DYN_METHOD ] = sourceFrame[_DYN_METHOD ];
|
|
3455
|
+
_self[_DYN_ASSEMBLY ] = sourceFrame[_DYN_ASSEMBLY ];
|
|
3456
|
+
_self[_DYN_FILE_NAME ] = sourceFrame[_DYN_FILE_NAME ];
|
|
3457
|
+
_self[_DYN_LINE ] = sourceFrame[_DYN_LINE ];
|
|
3458
|
+
_self[_DYN_SIZE_IN_BYTES ] = 0;
|
|
3459
|
+
}
|
|
3460
|
+
_self.sizeInBytes += _self.method[_DYN_LENGTH ];
|
|
3461
|
+
_self.sizeInBytes += _self.fileName[_DYN_LENGTH ];
|
|
3462
|
+
_self.sizeInBytes += _self.assembly[_DYN_LENGTH ];
|
|
3463
|
+
_self[_DYN_SIZE_IN_BYTES ] += _StackFrame.baseSize;
|
|
3464
|
+
_self.sizeInBytes += _self.level.toString()[_DYN_LENGTH ];
|
|
3465
|
+
_self.sizeInBytes += _self.line.toString()[_DYN_LENGTH ];
|
|
3466
|
+
}
|
|
3467
|
+
_StackFrame.CreateFromInterface = function (frame) {
|
|
3468
|
+
return new _StackFrame(frame, null );
|
|
3469
|
+
};
|
|
3470
|
+
_StackFrame.prototype.toInterface = function () {
|
|
3471
|
+
var _self = this;
|
|
3472
|
+
return {
|
|
3473
|
+
level: _self[_DYN_LEVEL ],
|
|
3474
|
+
method: _self[_DYN_METHOD ],
|
|
3475
|
+
assembly: _self[_DYN_ASSEMBLY ],
|
|
3476
|
+
fileName: _self[_DYN_FILE_NAME ],
|
|
3477
|
+
line: _self[_DYN_LINE ]
|
|
3478
|
+
};
|
|
3479
|
+
};
|
|
3480
|
+
_StackFrame.regex = /^([\s]+at)?[\s]{0,50}([^\@\()]+?)[\s]{0,50}(\@|\()([^\(\n]+):([0-9]+):([0-9]+)(\)?)$/;
|
|
3481
|
+
_StackFrame.baseSize = 58;
|
|
3482
|
+
return _StackFrame;
|
|
3483
|
+
}());
|
|
3484
|
+
|
|
3485
|
+
var DataPoint = /** @class */ (function () {
|
|
3486
|
+
function DataPoint() {
|
|
3487
|
+
this.aiDataContract = {
|
|
3488
|
+
name: 1 ,
|
|
3489
|
+
kind: 0 ,
|
|
3490
|
+
value: 1 ,
|
|
3491
|
+
count: 0 ,
|
|
3492
|
+
min: 0 ,
|
|
3493
|
+
max: 0 ,
|
|
3494
|
+
stdDev: 0
|
|
3495
|
+
};
|
|
3496
|
+
this.kind = 0 ;
|
|
3497
|
+
}
|
|
3498
|
+
return DataPoint;
|
|
3499
|
+
}());
|
|
3500
|
+
|
|
3501
|
+
var Metric = /** @class */ (function () {
|
|
3502
|
+
function Metric(logger, name, value, count, min, max, stdDev, properties, measurements) {
|
|
3503
|
+
this.aiDataContract = {
|
|
3504
|
+
ver: 1 ,
|
|
3505
|
+
metrics: 1 ,
|
|
3506
|
+
properties: 0
|
|
3507
|
+
};
|
|
3508
|
+
var _self = this;
|
|
3509
|
+
_self.ver = 2;
|
|
3510
|
+
var dataPoint = new DataPoint();
|
|
3511
|
+
dataPoint[_DYN_COUNT ] = count > 0 ? count : undefined;
|
|
3512
|
+
dataPoint.max = isNaN(max) || max === null ? undefined : max;
|
|
3513
|
+
dataPoint.min = isNaN(min) || min === null ? undefined : min;
|
|
3514
|
+
dataPoint[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
3515
|
+
dataPoint.value = value;
|
|
3516
|
+
dataPoint.stdDev = isNaN(stdDev) || stdDev === null ? undefined : stdDev;
|
|
3517
|
+
_self.metrics = [dataPoint];
|
|
3518
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3519
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3520
|
+
}
|
|
3521
|
+
Metric.envelopeType = "Microsoft.ApplicationInsights.{0}.Metric";
|
|
3522
|
+
Metric.dataType = "MetricData";
|
|
3523
|
+
return Metric;
|
|
3524
|
+
}());
|
|
3525
|
+
|
|
3526
|
+
var strEmpty = "";
|
|
3527
|
+
function stringToBoolOrDefault(str, defaultValue) {
|
|
3528
|
+
if (defaultValue === void 0) { defaultValue = false; }
|
|
3529
|
+
if (str === undefined || str === null) {
|
|
3530
|
+
return defaultValue;
|
|
3531
|
+
}
|
|
3532
|
+
return str.toString()[_DYN_TO_LOWER_CASE ]() === "true";
|
|
3533
|
+
}
|
|
3534
|
+
function msToTimeSpan(totalms) {
|
|
3535
|
+
if (isNaN(totalms) || totalms < 0) {
|
|
3536
|
+
totalms = 0;
|
|
3537
|
+
}
|
|
3538
|
+
totalms = Math.round(totalms);
|
|
3539
|
+
var ms = strEmpty + totalms % 1000;
|
|
3540
|
+
var sec = strEmpty + Math.floor(totalms / 1000) % 60;
|
|
3541
|
+
var min = strEmpty + Math.floor(totalms / (1000 * 60)) % 60;
|
|
3542
|
+
var hour = strEmpty + Math.floor(totalms / (1000 * 60 * 60)) % 24;
|
|
3543
|
+
var days = Math.floor(totalms / (1000 * 60 * 60 * 24));
|
|
3544
|
+
ms = ms[_DYN_LENGTH ] === 1 ? "00" + ms : ms[_DYN_LENGTH ] === 2 ? "0" + ms : ms;
|
|
3545
|
+
sec = sec[_DYN_LENGTH ] < 2 ? "0" + sec : sec;
|
|
3546
|
+
min = min[_DYN_LENGTH ] < 2 ? "0" + min : min;
|
|
3547
|
+
hour = hour[_DYN_LENGTH ] < 2 ? "0" + hour : hour;
|
|
3548
|
+
return (days > 0 ? days + "." : strEmpty) + hour + ":" + min + ":" + sec + "." + ms;
|
|
3549
|
+
}
|
|
3550
|
+
function getExtensionByName(extensions, identifier) {
|
|
3551
|
+
var extension = null;
|
|
3552
|
+
arrForEach(extensions, function (value) {
|
|
3553
|
+
if (value.identifier === identifier) {
|
|
3554
|
+
extension = value;
|
|
3555
|
+
return -1;
|
|
3556
|
+
}
|
|
3557
|
+
});
|
|
3558
|
+
return extension;
|
|
3559
|
+
}
|
|
3560
|
+
function isCrossOriginError(message, url, lineNumber, columnNumber, error) {
|
|
3561
|
+
return !error && isString(message) && (message === "Script error." || message === "Script error");
|
|
3562
|
+
}
|
|
3563
|
+
|
|
3564
|
+
var PageView = /** @class */ (function () {
|
|
3565
|
+
function PageView(logger, name, url, durationMs, properties, measurements, id) {
|
|
3566
|
+
this.aiDataContract = {
|
|
3567
|
+
ver: 1 ,
|
|
3568
|
+
name: 0 ,
|
|
3569
|
+
url: 0 ,
|
|
3570
|
+
duration: 0 ,
|
|
3571
|
+
properties: 0 ,
|
|
3572
|
+
measurements: 0 ,
|
|
3573
|
+
id: 0
|
|
3574
|
+
};
|
|
3575
|
+
var _self = this;
|
|
3576
|
+
_self.ver = 2;
|
|
3577
|
+
_self.id = dataSanitizeId(logger, id);
|
|
3578
|
+
_self.url = dataSanitizeUrl(logger, url);
|
|
3579
|
+
_self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
3580
|
+
if (!isNaN(durationMs)) {
|
|
3581
|
+
_self[_DYN_DURATION ] = msToTimeSpan(durationMs);
|
|
3582
|
+
}
|
|
3583
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3584
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3585
|
+
}
|
|
3586
|
+
PageView.envelopeType = "Microsoft.ApplicationInsights.{0}.Pageview";
|
|
3587
|
+
PageView.dataType = "PageviewData";
|
|
3588
|
+
return PageView;
|
|
3589
|
+
}());
|
|
3590
|
+
|
|
3591
|
+
var RemoteDependencyData = /** @class */ (function () {
|
|
3592
|
+
function RemoteDependencyData(logger, id, absoluteUrl, commandName, value, success, resultCode, method, requestAPI, correlationContext, properties, measurements) {
|
|
3593
|
+
if (requestAPI === void 0) { requestAPI = "Ajax"; }
|
|
3594
|
+
this.aiDataContract = {
|
|
3595
|
+
id: 1 ,
|
|
3596
|
+
ver: 1 ,
|
|
3597
|
+
name: 0 ,
|
|
3598
|
+
resultCode: 0 ,
|
|
3599
|
+
duration: 0 ,
|
|
3600
|
+
success: 0 ,
|
|
3601
|
+
data: 0 ,
|
|
3602
|
+
target: 0 ,
|
|
3603
|
+
type: 0 ,
|
|
3604
|
+
properties: 0 ,
|
|
3605
|
+
measurements: 0 ,
|
|
3606
|
+
kind: 0 ,
|
|
3607
|
+
value: 0 ,
|
|
3608
|
+
count: 0 ,
|
|
3609
|
+
min: 0 ,
|
|
3610
|
+
max: 0 ,
|
|
3611
|
+
stdDev: 0 ,
|
|
3612
|
+
dependencyKind: 0 ,
|
|
3613
|
+
dependencySource: 0 ,
|
|
3614
|
+
commandName: 0 ,
|
|
3615
|
+
dependencyTypeName: 0
|
|
3616
|
+
};
|
|
3617
|
+
var _self = this;
|
|
3618
|
+
_self.ver = 2;
|
|
3619
|
+
_self.id = id;
|
|
3620
|
+
_self[_DYN_DURATION ] = msToTimeSpan(value);
|
|
3621
|
+
_self.success = success;
|
|
3622
|
+
_self.resultCode = resultCode + "";
|
|
3623
|
+
_self.type = dataSanitizeString(logger, requestAPI);
|
|
3624
|
+
var dependencyFields = AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName);
|
|
3625
|
+
_self.data = dataSanitizeUrl(logger, commandName) || dependencyFields.data;
|
|
3626
|
+
_self.target = dataSanitizeString(logger, dependencyFields.target);
|
|
3627
|
+
if (correlationContext) {
|
|
3628
|
+
_self.target = "".concat(_self.target, " | ").concat(correlationContext);
|
|
3629
|
+
}
|
|
3630
|
+
_self[_DYN_NAME ] = dataSanitizeString(logger, dependencyFields[_DYN_NAME ]);
|
|
3631
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3632
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3633
|
+
}
|
|
3634
|
+
RemoteDependencyData.envelopeType = "Microsoft.ApplicationInsights.{0}.RemoteDependency";
|
|
3635
|
+
RemoteDependencyData.dataType = "RemoteDependencyData";
|
|
3636
|
+
return RemoteDependencyData;
|
|
3637
|
+
}());
|
|
3638
|
+
|
|
3639
|
+
var Trace = /** @class */ (function () {
|
|
3640
|
+
function Trace(logger, message, severityLevel, properties, measurements) {
|
|
3641
|
+
this.aiDataContract = {
|
|
3642
|
+
ver: 1 ,
|
|
3643
|
+
message: 1 ,
|
|
3644
|
+
severityLevel: 0 ,
|
|
3645
|
+
properties: 0
|
|
3646
|
+
};
|
|
3647
|
+
var _self = this;
|
|
3648
|
+
_self.ver = 2;
|
|
3649
|
+
message = message || strNotSpecified;
|
|
3650
|
+
_self[_DYN_MESSAGE ] = dataSanitizeMessage(logger, message);
|
|
3651
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3652
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3653
|
+
if (severityLevel) {
|
|
3654
|
+
_self[_DYN_SEVERITY_LEVEL ] = severityLevel;
|
|
3655
|
+
}
|
|
3656
|
+
}
|
|
3657
|
+
Trace.envelopeType = "Microsoft.ApplicationInsights.{0}.Message";
|
|
3658
|
+
Trace.dataType = "MessageData";
|
|
3659
|
+
return Trace;
|
|
3660
|
+
}());
|
|
3661
|
+
|
|
3662
|
+
var PageViewPerformance = /** @class */ (function () {
|
|
3663
|
+
function PageViewPerformance(logger, name, url, unused, properties, measurements, cs4BaseData) {
|
|
3664
|
+
this.aiDataContract = {
|
|
3665
|
+
ver: 1 ,
|
|
3666
|
+
name: 0 ,
|
|
3667
|
+
url: 0 ,
|
|
3668
|
+
duration: 0 ,
|
|
3669
|
+
perfTotal: 0 ,
|
|
3670
|
+
networkConnect: 0 ,
|
|
3671
|
+
sentRequest: 0 ,
|
|
3672
|
+
receivedResponse: 0 ,
|
|
3673
|
+
domProcessing: 0 ,
|
|
3674
|
+
properties: 0 ,
|
|
3675
|
+
measurements: 0
|
|
3676
|
+
};
|
|
3677
|
+
var _self = this;
|
|
3678
|
+
_self.ver = 2;
|
|
3679
|
+
_self.url = dataSanitizeUrl(logger, url);
|
|
3680
|
+
_self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
|
|
3681
|
+
_self[_DYN_PROPERTIES ] = dataSanitizeProperties(logger, properties);
|
|
3682
|
+
_self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
|
|
3683
|
+
if (cs4BaseData) {
|
|
3684
|
+
_self.domProcessing = cs4BaseData.domProcessing;
|
|
3685
|
+
_self[_DYN_DURATION ] = cs4BaseData[_DYN_DURATION ];
|
|
3686
|
+
_self.networkConnect = cs4BaseData.networkConnect;
|
|
3687
|
+
_self.perfTotal = cs4BaseData.perfTotal;
|
|
3688
|
+
_self[_DYN_RECEIVED_RESPONSE ] = cs4BaseData[_DYN_RECEIVED_RESPONSE ];
|
|
3689
|
+
_self.sentRequest = cs4BaseData.sentRequest;
|
|
3690
|
+
}
|
|
3691
|
+
}
|
|
3692
|
+
PageViewPerformance.envelopeType = "Microsoft.ApplicationInsights.{0}.PageviewPerformance";
|
|
3693
|
+
PageViewPerformance.dataType = "PageviewPerformanceData";
|
|
3694
|
+
return PageViewPerformance;
|
|
3695
|
+
}());
|
|
3696
|
+
|
|
3697
|
+
var Data = /** @class */ (function () {
|
|
3698
|
+
function Data(baseType, data) {
|
|
3699
|
+
this.aiDataContract = {
|
|
3700
|
+
baseType: 1 ,
|
|
3701
|
+
baseData: 1
|
|
3702
|
+
};
|
|
3703
|
+
this.baseType = baseType;
|
|
3704
|
+
this.baseData = data;
|
|
3705
|
+
}
|
|
3706
|
+
return Data;
|
|
3707
|
+
}());
|
|
3708
|
+
|
|
3709
|
+
var SeverityLevel = createEnumStyle({
|
|
3710
|
+
Verbose: 0 ,
|
|
3711
|
+
Information: 1 ,
|
|
3712
|
+
Warning: 2 ,
|
|
3713
|
+
Error: 3 ,
|
|
3714
|
+
Critical: 4
|
|
3715
|
+
});
|
|
3716
|
+
|
|
3717
|
+
var ConfigurationManager = /** @class */ (function () {
|
|
3718
|
+
function ConfigurationManager() {
|
|
3719
|
+
}
|
|
3720
|
+
ConfigurationManager.getConfig = function (config, field, identifier, defaultValue) {
|
|
3721
|
+
if (defaultValue === void 0) { defaultValue = false; }
|
|
3722
|
+
var configValue;
|
|
3723
|
+
if (identifier && config[_DYN_EXTENSION_CONFIG ] && config[_DYN_EXTENSION_CONFIG ][identifier] && !isNullOrUndefined(config[_DYN_EXTENSION_CONFIG ][identifier][field])) {
|
|
3724
|
+
configValue = config[_DYN_EXTENSION_CONFIG ][identifier][field];
|
|
3725
|
+
}
|
|
3726
|
+
else {
|
|
3727
|
+
configValue = config[field];
|
|
3728
|
+
}
|
|
3729
|
+
return !isNullOrUndefined(configValue) ? configValue : defaultValue;
|
|
3730
|
+
};
|
|
3731
|
+
return ConfigurationManager;
|
|
3732
|
+
}());
|
|
3733
|
+
|
|
3734
|
+
function _aiNameFunc(baseName) {
|
|
3735
|
+
var aiName = "ai." + baseName + ".";
|
|
3736
|
+
return function (name) {
|
|
3737
|
+
return aiName + name;
|
|
3738
|
+
};
|
|
3739
|
+
}
|
|
3740
|
+
var _aiApplication = _aiNameFunc("application");
|
|
3741
|
+
var _aiDevice = _aiNameFunc("device");
|
|
3742
|
+
var _aiLocation = _aiNameFunc("location");
|
|
3743
|
+
var _aiOperation = _aiNameFunc("operation");
|
|
3744
|
+
var _aiSession = _aiNameFunc("session");
|
|
3745
|
+
var _aiUser = _aiNameFunc("user");
|
|
3746
|
+
var _aiCloud = _aiNameFunc("cloud");
|
|
3747
|
+
var _aiInternal = _aiNameFunc("internal");
|
|
3748
|
+
var ContextTagKeys = /** @class */ (function (_super) {
|
|
3749
|
+
__extendsFn(ContextTagKeys, _super);
|
|
3750
|
+
function ContextTagKeys() {
|
|
3751
|
+
return _super.call(this) || this;
|
|
3752
|
+
}
|
|
3753
|
+
return ContextTagKeys;
|
|
3754
|
+
}(createClassFromInterface({
|
|
3755
|
+
applicationVersion: _aiApplication("ver"),
|
|
3756
|
+
applicationBuild: _aiApplication("build"),
|
|
3757
|
+
applicationTypeId: _aiApplication("typeId"),
|
|
3758
|
+
applicationId: _aiApplication("applicationId"),
|
|
3759
|
+
applicationLayer: _aiApplication("layer"),
|
|
3760
|
+
deviceId: _aiDevice("id"),
|
|
3761
|
+
deviceIp: _aiDevice("ip"),
|
|
3762
|
+
deviceLanguage: _aiDevice("language"),
|
|
3763
|
+
deviceLocale: _aiDevice("locale"),
|
|
3764
|
+
deviceModel: _aiDevice("model"),
|
|
3765
|
+
deviceFriendlyName: _aiDevice("friendlyName"),
|
|
3766
|
+
deviceNetwork: _aiDevice("network"),
|
|
3767
|
+
deviceNetworkName: _aiDevice("networkName"),
|
|
3768
|
+
deviceOEMName: _aiDevice("oemName"),
|
|
3769
|
+
deviceOS: _aiDevice("os"),
|
|
3770
|
+
deviceOSVersion: _aiDevice("osVersion"),
|
|
3771
|
+
deviceRoleInstance: _aiDevice("roleInstance"),
|
|
3772
|
+
deviceRoleName: _aiDevice("roleName"),
|
|
3773
|
+
deviceScreenResolution: _aiDevice("screenResolution"),
|
|
3774
|
+
deviceType: _aiDevice("type"),
|
|
3775
|
+
deviceMachineName: _aiDevice("machineName"),
|
|
3776
|
+
deviceVMName: _aiDevice("vmName"),
|
|
3777
|
+
deviceBrowser: _aiDevice("browser"),
|
|
3778
|
+
deviceBrowserVersion: _aiDevice("browserVersion"),
|
|
3779
|
+
locationIp: _aiLocation("ip"),
|
|
3780
|
+
locationCountry: _aiLocation("country"),
|
|
3781
|
+
locationProvince: _aiLocation("province"),
|
|
3782
|
+
locationCity: _aiLocation("city"),
|
|
3783
|
+
operationId: _aiOperation("id"),
|
|
3784
|
+
operationName: _aiOperation("name"),
|
|
3785
|
+
operationParentId: _aiOperation("parentId"),
|
|
3786
|
+
operationRootId: _aiOperation("rootId"),
|
|
3787
|
+
operationSyntheticSource: _aiOperation("syntheticSource"),
|
|
3788
|
+
operationCorrelationVector: _aiOperation("correlationVector"),
|
|
3789
|
+
sessionId: _aiSession("id"),
|
|
3790
|
+
sessionIsFirst: _aiSession("isFirst"),
|
|
3791
|
+
sessionIsNew: _aiSession("isNew"),
|
|
3792
|
+
userAccountAcquisitionDate: _aiUser("accountAcquisitionDate"),
|
|
3793
|
+
userAccountId: _aiUser("accountId"),
|
|
3794
|
+
userAgent: _aiUser("userAgent"),
|
|
3795
|
+
userId: _aiUser("id"),
|
|
3796
|
+
userStoreRegion: _aiUser("storeRegion"),
|
|
3797
|
+
userAuthUserId: _aiUser("authUserId"),
|
|
3798
|
+
userAnonymousUserAcquisitionDate: _aiUser("anonUserAcquisitionDate"),
|
|
3799
|
+
userAuthenticatedUserAcquisitionDate: _aiUser("authUserAcquisitionDate"),
|
|
3800
|
+
cloudName: _aiCloud("name"),
|
|
3801
|
+
cloudRole: _aiCloud("role"),
|
|
3802
|
+
cloudRoleVer: _aiCloud("roleVer"),
|
|
3803
|
+
cloudRoleInstance: _aiCloud("roleInstance"),
|
|
3804
|
+
cloudEnvironment: _aiCloud("environment"),
|
|
3805
|
+
cloudLocation: _aiCloud("location"),
|
|
3806
|
+
cloudDeploymentUnit: _aiCloud("deploymentUnit"),
|
|
3807
|
+
internalNodeName: _aiInternal("nodeName"),
|
|
3808
|
+
internalSdkVersion: _aiInternal("sdkVersion"),
|
|
3809
|
+
internalAgentVersion: _aiInternal("agentVersion"),
|
|
3810
|
+
internalSnippet: _aiInternal("snippet"),
|
|
3811
|
+
internalSdkSrc: _aiInternal("sdkSrc")
|
|
3812
|
+
})));
|
|
3813
|
+
|
|
3814
|
+
function createTelemetryItem(item, baseType, envelopeName, logger, customProperties, systemProperties) {
|
|
3815
|
+
var _a;
|
|
3816
|
+
envelopeName = dataSanitizeString(logger, envelopeName) || strNotSpecified;
|
|
3817
|
+
if (isNullOrUndefined(item) ||
|
|
3818
|
+
isNullOrUndefined(baseType) ||
|
|
3819
|
+
isNullOrUndefined(envelopeName)) {
|
|
3820
|
+
throwError("Input doesn't contain all required fields");
|
|
3821
|
+
}
|
|
3822
|
+
var iKey = "";
|
|
3823
|
+
if (item[strIkey]) {
|
|
3824
|
+
iKey = item[strIkey];
|
|
3825
|
+
delete item[strIkey];
|
|
3826
|
+
}
|
|
3827
|
+
var telemetryItem = (_a = {},
|
|
3828
|
+
_a[_DYN_NAME ] = envelopeName,
|
|
3829
|
+
_a.time = toISOString(new Date()),
|
|
3830
|
+
_a.iKey = iKey,
|
|
3831
|
+
_a.ext = systemProperties ? systemProperties : {},
|
|
3832
|
+
_a.tags = [],
|
|
3833
|
+
_a.data = {},
|
|
3834
|
+
_a.baseType = baseType,
|
|
3835
|
+
_a.baseData = item
|
|
3836
|
+
,
|
|
3837
|
+
_a);
|
|
3838
|
+
if (!isNullOrUndefined(customProperties)) {
|
|
3839
|
+
objForEachKey(customProperties, function (prop, value) {
|
|
3840
|
+
telemetryItem.data[prop] = value;
|
|
3841
|
+
});
|
|
3842
|
+
}
|
|
3843
|
+
return telemetryItem;
|
|
3844
|
+
}
|
|
3845
|
+
var TelemetryItemCreator = /** @class */ (function () {
|
|
3846
|
+
function TelemetryItemCreator() {
|
|
3847
|
+
}
|
|
3848
|
+
TelemetryItemCreator.create = createTelemetryItem;
|
|
3849
|
+
return TelemetryItemCreator;
|
|
3850
|
+
}());
|
|
3851
|
+
|
|
3852
|
+
var Extensions = {
|
|
3853
|
+
UserExt: "user",
|
|
3854
|
+
DeviceExt: "device",
|
|
3855
|
+
TraceExt: "trace",
|
|
3856
|
+
WebExt: "web",
|
|
3857
|
+
AppExt: "app",
|
|
3858
|
+
OSExt: "os",
|
|
3859
|
+
SessionExt: "ses",
|
|
3860
|
+
SDKExt: "sdk"
|
|
3861
|
+
};
|
|
3862
|
+
var CtxTagKeys = new ContextTagKeys();
|
|
3863
|
+
|
|
3864
|
+
function createDomEvent(eventName) {
|
|
3865
|
+
var event = null;
|
|
3866
|
+
if (isFunction(Event)) {
|
|
3867
|
+
event = new Event(eventName);
|
|
3868
|
+
}
|
|
3869
|
+
else {
|
|
3870
|
+
var doc = getDocument();
|
|
3871
|
+
if (doc && doc.createEvent) {
|
|
3872
|
+
event = doc.createEvent("Event");
|
|
3873
|
+
event.initEvent(eventName, true, true);
|
|
3874
|
+
}
|
|
3875
|
+
}
|
|
3876
|
+
return event;
|
|
3877
|
+
}
|
|
3878
|
+
|
|
3879
|
+
var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
|
|
3880
|
+
var BreezeChannelIdentifier = "AppInsightsChannelPlugin";
|
|
3881
|
+
var AnalyticsPluginIdentifier = "ApplicationInsightsAnalytics";
|
|
3882
|
+
|
|
3883
|
+
exports.AnalyticsPluginIdentifier = AnalyticsPluginIdentifier;
|
|
3884
|
+
exports.BreezeChannelIdentifier = BreezeChannelIdentifier;
|
|
3885
|
+
exports.ConfigurationManager = ConfigurationManager;
|
|
3886
|
+
exports.ConnectionStringParser = ConnectionStringParser;
|
|
3887
|
+
exports.ContextTagKeys = ContextTagKeys;
|
|
3888
|
+
exports.CtxTagKeys = CtxTagKeys;
|
|
3889
|
+
exports.DEFAULT_BREEZE_ENDPOINT = DEFAULT_BREEZE_ENDPOINT;
|
|
3890
|
+
exports.DEFAULT_BREEZE_PATH = DEFAULT_BREEZE_PATH;
|
|
3891
|
+
exports.Data = Data;
|
|
3892
|
+
exports.DisabledPropertyName = DisabledPropertyName;
|
|
3893
|
+
exports.DistributedTracingModes = DistributedTracingModes;
|
|
3894
|
+
exports.Envelope = Envelope;
|
|
3895
|
+
exports.Event = Event$1;
|
|
3896
|
+
exports.Exception = Exception;
|
|
3897
|
+
exports.Extensions = Extensions;
|
|
3898
|
+
exports.HttpMethod = HttpMethod;
|
|
3899
|
+
exports.Metric = Metric;
|
|
3900
|
+
exports.PageView = PageView;
|
|
3901
|
+
exports.PageViewPerformance = PageViewPerformance;
|
|
3902
|
+
exports.ProcessLegacy = ProcessLegacy;
|
|
3903
|
+
exports.PropertiesPluginIdentifier = PropertiesPluginIdentifier;
|
|
3904
|
+
exports.RemoteDependencyData = RemoteDependencyData;
|
|
3905
|
+
exports.RequestHeaders = RequestHeaders;
|
|
3906
|
+
exports.SampleRate = SampleRate;
|
|
3907
|
+
exports.SeverityLevel = SeverityLevel;
|
|
3908
|
+
exports.TelemetryItemCreator = TelemetryItemCreator;
|
|
3909
|
+
exports.ThrottleMgr = ThrottleMgr;
|
|
3910
|
+
exports.Trace = Trace;
|
|
3911
|
+
exports.correlationIdCanIncludeCorrelationHeader = correlationIdCanIncludeCorrelationHeader;
|
|
3912
|
+
exports.correlationIdGetCorrelationContext = correlationIdGetCorrelationContext;
|
|
3913
|
+
exports.correlationIdGetCorrelationContextValue = correlationIdGetCorrelationContextValue;
|
|
3914
|
+
exports.correlationIdGetPrefix = correlationIdGetPrefix;
|
|
3915
|
+
exports.correlationIdSetPrefix = correlationIdSetPrefix;
|
|
3916
|
+
exports.createDistributedTraceContextFromTrace = createDistributedTraceContextFromTrace;
|
|
3917
|
+
exports.createDomEvent = createDomEvent;
|
|
3918
|
+
exports.createTelemetryItem = createTelemetryItem;
|
|
3919
|
+
exports.createTraceParent = createTraceParent;
|
|
3920
|
+
exports.dataSanitizeException = dataSanitizeException;
|
|
3921
|
+
exports.dataSanitizeId = dataSanitizeId;
|
|
3922
|
+
exports.dataSanitizeInput = dataSanitizeInput;
|
|
3923
|
+
exports.dataSanitizeKey = dataSanitizeKey;
|
|
3924
|
+
exports.dataSanitizeKeyAndAddUniqueness = dataSanitizeKeyAndAddUniqueness;
|
|
3925
|
+
exports.dataSanitizeMeasurements = dataSanitizeMeasurements;
|
|
3926
|
+
exports.dataSanitizeMessage = dataSanitizeMessage;
|
|
3927
|
+
exports.dataSanitizeProperties = dataSanitizeProperties;
|
|
3928
|
+
exports.dataSanitizeString = dataSanitizeString;
|
|
3929
|
+
exports.dataSanitizeUrl = dataSanitizeUrl;
|
|
3930
|
+
exports.dateTimeUtilsDuration = dateTimeUtilsDuration;
|
|
3931
|
+
exports.dateTimeUtilsNow = dateTimeUtilsNow;
|
|
3932
|
+
exports.dsPadNumber = dsPadNumber;
|
|
3933
|
+
exports.findW3cTraceParent = findW3cTraceParent;
|
|
3934
|
+
exports.formatTraceParent = formatTraceParent;
|
|
3935
|
+
exports.getExtensionByName = getExtensionByName;
|
|
3936
|
+
exports.isBeaconApiSupported = isBeaconsSupported;
|
|
3937
|
+
exports.isCrossOriginError = isCrossOriginError;
|
|
3938
|
+
exports.isInternalApplicationInsightsEndpoint = isInternalApplicationInsightsEndpoint;
|
|
3939
|
+
exports.isSampledFlag = isSampledFlag;
|
|
3940
|
+
exports.isValidSpanId = isValidSpanId;
|
|
3941
|
+
exports.isValidTraceId = isValidTraceId;
|
|
3942
|
+
exports.isValidTraceParent = isValidTraceParent;
|
|
3943
|
+
exports.msToTimeSpan = msToTimeSpan;
|
|
3944
|
+
exports.parseConnectionString = parseConnectionString;
|
|
3945
|
+
exports.parseTraceParent = parseTraceParent;
|
|
3946
|
+
exports.strNotSpecified = strNotSpecified;
|
|
3947
|
+
exports.stringToBoolOrDefault = stringToBoolOrDefault;
|
|
3948
|
+
exports.urlGetAbsoluteUrl = urlGetAbsoluteUrl;
|
|
3949
|
+
exports.urlGetCompleteUrl = urlGetCompleteUrl;
|
|
3950
|
+
exports.urlGetPathName = urlGetPathName;
|
|
3951
|
+
exports.urlParseFullHost = urlParseFullHost;
|
|
3952
|
+
exports.urlParseHost = urlParseHost;
|
|
3953
|
+
exports.urlParseUrl = urlParseUrl;
|
|
3954
|
+
exports.utlCanUseLocalStorage = utlCanUseLocalStorage;
|
|
3955
|
+
exports.utlCanUseSessionStorage = utlCanUseSessionStorage;
|
|
3956
|
+
exports.utlDisableStorage = utlDisableStorage;
|
|
3957
|
+
exports.utlEnableStorage = utlEnableStorage;
|
|
3958
|
+
exports.utlGetLocalStorage = utlGetLocalStorage;
|
|
3959
|
+
exports.utlGetSessionStorage = utlGetSessionStorage;
|
|
3960
|
+
exports.utlGetSessionStorageKeys = utlGetSessionStorageKeys;
|
|
3961
|
+
exports.utlRemoveSessionStorage = utlRemoveSessionStorage;
|
|
3962
|
+
exports.utlRemoveStorage = utlRemoveStorage;
|
|
3963
|
+
exports.utlSetLocalStorage = utlSetLocalStorage;
|
|
3964
|
+
exports.utlSetSessionStorage = utlSetSessionStorage;
|
|
3965
|
+
//# sourceMappingURL=applicationinsights-common.cjs.js.map
|