{"version":3,"sources":["webpack:///./src/framework/logging/app-insights.ts"],"names":["AppInsights","key","endpointUrl","_classCallCheck","appInsights","initializer","ApplicationInsightsInitializer","config","isCookieUseDisabled","instrumentationKey","enableUnhandledPromiseRejectionTracking","maxBatchInterval","disableExceptionTracking","this","hasGlobalAppInsights","disableAjaxTracking","disableFetchTracking","loadAppInsights","get","window","value","error","additionalProperties","arguments","length","undefined","trackException","id","exception","properties","trackPageView","telemetryInitializer","addTelemetryInitializer","eventName","trackEvent","name","metricName","amount","trackMetric","average","message","trackTrace"],"mappings":"i6BAC2G,IAKtFA,EAAW,WAC/B,SAAAA,EAAYC,EAAaC,I,4FAAqBC,CAAA,KAAAH,GAAA,KAoBtCI,iBAAW,EAnBlB,IAAMC,EAAc,IAAIC,IAA+B,CACtDC,OAAQ,CACPC,qBAAqB,EACrBC,mBAAoBR,EACpBC,YAAaA,EACbQ,yCAAyC,EACzCC,iBAAkB,IAElBC,yBAA0BC,KAAKC,qBAC/BC,oBAAqBF,KAAKC,qBAC1BE,qBAAsBH,KAAKC,wBAI7BT,EAAYY,kBAEZJ,KAAKT,YAAcC,EAAYD,Y,UA4C/B,O,EA3CAJ,G,EAAA,EAAAC,IAAA,uBAAAiB,IAID,WACC,QAASC,OAAoB,cAG9B,CAAAlB,IAAA,MAAAmB,MACA,SAAIC,GAAiE,IAAnDC,EAA0CC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAC9DV,KAAKT,YAAYsB,eAAe,CAC/BC,GAAI,GACJC,UAAWP,EACXQ,WAAYP,MAEb,CAAArB,IAAA,WAAAmB,MAED,WAA+D,IAAtDE,EAA6CC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KACnDV,KAAKC,sBACTD,KAAKT,YAAY0B,cAAc,CAAED,WAAYP,MAC9C,CAAArB,IAAA,0BAAAmB,MAED,SAAwBW,GACvBlB,KAAKT,YAAY4B,wBAAwBD,KACzC,CAAA9B,IAAA,iBAAAmB,MAED,SAAea,GAAyE,IAAtDX,EAA6CC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KACjFV,KAAKT,YAAY8B,WAAW,CAAEC,KAAMF,EAAWJ,WAAYP,MAC3D,CAAArB,IAAA,YAAAmB,MAED,SAAUgB,EAAoBC,GAAsE,IAAtDf,EAA6CC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KAC7FV,KAAKT,YAAYkC,YAAY,CAC5BH,KAAMC,EACNG,QAASF,EACTR,WAAYP,MAEb,CAAArB,IAAA,WAAAmB,MAED,SAASoB,GAAuE,IAAtDlB,EAA6CC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,KACzEV,KAAKT,YAAYqC,WAAW,CAC3BD,UACAX,WAAYP,S,8EAEbtB,EA9D8B","file":"139.5815ab9f27dedb193a23.js","sourcesContent":["import type { ITelemetryItem } from '@microsoft/applicationinsights-web';\r\nimport { ApplicationInsights as ApplicationInsightsInitializer } from '@microsoft/applicationinsights-web';\r\nimport type { ApplicationInsights } from '@microsoft/applicationinsights-analytics-js/types/applicationinsights-analytics-js';\r\nimport type { Initialization } from '@microsoft/applicationinsights-web/dist-esm/Initialization';\r\nimport type { ObjectLookup } from 'src/util';\r\n\r\nexport default class AppInsights {\r\n\tconstructor(key: string, endpointUrl: string) {\r\n\t\tconst initializer = new ApplicationInsightsInitializer({\r\n\t\t\tconfig: {\r\n\t\t\t\tisCookieUseDisabled: true,\r\n\t\t\t\tinstrumentationKey: key,\r\n\t\t\t\tendpointUrl: endpointUrl,\r\n\t\t\t\tenableUnhandledPromiseRejectionTracking: true,\r\n\t\t\t\tmaxBatchInterval: 10000,\r\n\t\t\t\t// if app insights is already globally loaded, avoid doubling up on automatic telemetry collection\r\n\t\t\t\tdisableExceptionTracking: this.hasGlobalAppInsights,\r\n\t\t\t\tdisableAjaxTracking: this.hasGlobalAppInsights,\r\n\t\t\t\tdisableFetchTracking: this.hasGlobalAppInsights\r\n\t\t\t}\r\n\t\t}) as Initialization;\r\n\r\n\t\tinitializer.loadAppInsights();\r\n\r\n\t\tthis.appInsights = initializer.appInsights;\r\n\t}\r\n\r\n\tprivate appInsights : ApplicationInsights;\r\n\r\n\tget hasGlobalAppInsights() {\r\n\t\treturn !!window['appInsights'];\r\n\t}\r\n\r\n\t// ---------Methods----------\r\n\tlog(error: Error, additionalProperties: ObjectLookup = null) {\r\n\t\tthis.appInsights.trackException({\r\n\t\t\tid: '',\r\n\t\t\texception: error,\r\n\t\t\tproperties: additionalProperties\r\n\t\t});\r\n\t}\r\n\r\n\tpageView(additionalProperties: Record = null) {\r\n\t\tif (!this.hasGlobalAppInsights)\r\n\t\t\tthis.appInsights.trackPageView({ properties: additionalProperties });\r\n\t}\r\n\r\n\taddTelemetryInitializer(telemetryInitializer: (item: ITelemetryItem) => boolean | void) {\r\n\t\tthis.appInsights.addTelemetryInitializer(telemetryInitializer);\r\n\t}\r\n\r\n\tlogCustomEvent(eventName: string, additionalProperties: Record = null) {\r\n\t\tthis.appInsights.trackEvent({ name: eventName, properties: additionalProperties });\r\n\t}\r\n\r\n\tlogMetric(metricName: string, amount: number, additionalProperties: Record = null) {\r\n\t\tthis.appInsights.trackMetric({\r\n\t\t\tname: metricName,\r\n\t\t\taverage: amount,\r\n\t\t\tproperties: additionalProperties\r\n\t\t});\r\n\t}\r\n\r\n\tlogTrace(message: string, additionalProperties: Record = null) {\r\n\t\tthis.appInsights.trackTrace({\r\n\t\t\tmessage,\r\n\t\t\tproperties: additionalProperties\r\n\t\t});\r\n\t}\r\n}\r\n"],"sourceRoot":""}