@vc-shell/framework 2.9.0-pr400.2a5fffb → 2.9.0-pr401.d98d2aa
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/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-D7CJzbVq.js → VcScheduler.vue_vue_type_script_setup_true_lang-CSSuvg-P.js} +1384 -1384
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-CSSuvg-P.js.map +1 -0
- package/dist/chunks/{VcScheduler.vue_vue_type_style_index_0_lang-BzPg7VnG.js → VcScheduler.vue_vue_type_style_index_0_lang-D1lnJqUU.js} +1 -1
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-D1lnJqUU.js.map +1 -0
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-BXccwYEq.js → dashboard-feed-row.vue_vue_type_script_setup_true_lang-Cy5iV5cs.js} +1 -1
- package/dist/chunks/{dashboard-feed-row.vue_vue_type_script_setup_true_lang-BXccwYEq.js.map → dashboard-feed-row.vue_vue_type_script_setup_true_lang-Cy5iV5cs.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-analytics-js-ufpnHxNR.js → vendor-microsoft-applicationinsights-analytics-js-JNujMGRZ.js} +4 -4
- package/dist/chunks/{vendor-microsoft-applicationinsights-analytics-js-ufpnHxNR.js.map → vendor-microsoft-applicationinsights-analytics-js-JNujMGRZ.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-cfgsync-js-BmGq5cEx.js → vendor-microsoft-applicationinsights-cfgsync-js-CuTIf6Ja.js} +5 -5
- package/dist/chunks/{vendor-microsoft-applicationinsights-cfgsync-js-BmGq5cEx.js.map → vendor-microsoft-applicationinsights-cfgsync-js-CuTIf6Ja.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-channel-js-BdtUi1l8.js → vendor-microsoft-applicationinsights-channel-js-CNkUyAbS.js} +5 -5
- package/dist/chunks/{vendor-microsoft-applicationinsights-channel-js-BdtUi1l8.js.map → vendor-microsoft-applicationinsights-channel-js-CNkUyAbS.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-core-js-CR3vyuZc.js → vendor-microsoft-applicationinsights-core-js-CSN3RtVn.js} +4 -4
- package/dist/chunks/{vendor-microsoft-applicationinsights-core-js-CR3vyuZc.js.map → vendor-microsoft-applicationinsights-core-js-CSN3RtVn.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-dependencies-js-DXmYt4tG.js → vendor-microsoft-applicationinsights-dependencies-js-nAX4eQ23.js} +4 -4
- package/dist/chunks/{vendor-microsoft-applicationinsights-dependencies-js-DXmYt4tG.js.map → vendor-microsoft-applicationinsights-dependencies-js-nAX4eQ23.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-properties-js-CLbNzgkN.js → vendor-microsoft-applicationinsights-properties-js-Cmu8Wg1E.js} +4 -4
- package/dist/chunks/{vendor-microsoft-applicationinsights-properties-js-CLbNzgkN.js.map → vendor-microsoft-applicationinsights-properties-js-Cmu8Wg1E.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-shims-CGX8KXgN.js → vendor-microsoft-applicationinsights-shims-B6fduw3B.js} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-shims-CGX8KXgN.js.map → vendor-microsoft-applicationinsights-shims-B6fduw3B.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-applicationinsights-web-DzgnK2Mn.js → vendor-microsoft-applicationinsights-web-Dmi5k0xB.js} +9 -9
- package/dist/chunks/{vendor-microsoft-applicationinsights-web-DzgnK2Mn.js.map → vendor-microsoft-applicationinsights-web-Dmi5k0xB.js.map} +1 -1
- package/dist/chunks/{vendor-microsoft-dynamicproto-js-D7567TLZ.js → vendor-microsoft-dynamicproto-js-DYnR16gH.js} +1 -1
- package/dist/chunks/{vendor-microsoft-dynamicproto-js-D7567TLZ.js.map → vendor-microsoft-dynamicproto-js-DYnR16gH.js.map} +1 -1
- package/dist/chunks/{vendor-nevware21-ts-async-BxN_lmkD.js → vendor-nevware21-ts-async-Cjd7qOdd.js} +1 -1
- package/dist/chunks/{vendor-nevware21-ts-async-BxN_lmkD.js.map → vendor-nevware21-ts-async-Cjd7qOdd.js.map} +1 -1
- package/dist/chunks/vendor-nevware21-ts-utils-C93a9s--.js +1045 -0
- package/dist/chunks/vendor-nevware21-ts-utils-C93a9s--.js.map +1 -0
- package/dist/chunks/{vendor-vue3-application-insights-CAgbt8pk.js → vendor-vue3-application-insights-BXcZIdsm.js} +2 -2
- package/dist/chunks/{vendor-vue3-application-insights-CAgbt8pk.js.map → vendor-vue3-application-insights-BXcZIdsm.js.map} +1 -1
- package/dist/core/services/widget-service.d.ts +7 -7
- package/dist/core/services/widget-service.d.ts.map +1 -1
- package/dist/core/types/index.d.ts +5 -3
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/framework.js +10 -10
- package/dist/shell/_internal/blade-navigation/components/vc-blade-navigation/shortcut-dispatch.d.ts +10 -5
- package/dist/shell/_internal/blade-navigation/components/vc-blade-navigation/shortcut-dispatch.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/composables/useToolbarRegistration.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/_internal/widgets/useHeadlessWidgetHelpers.d.ts.map +1 -1
- package/dist/ui/components/organisms/vc-blade/utils.d.ts +6 -7
- package/dist/ui/components/organisms/vc-blade/utils.d.ts.map +1 -1
- package/dist/ui/index.js +2 -2
- package/package.json +4 -4
- package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-D7CJzbVq.js.map +0 -1
- package/dist/chunks/VcScheduler.vue_vue_type_style_index_0_lang-BzPg7VnG.js.map +0 -1
- package/dist/chunks/vendor-nevware21-ts-utils-Dr-hD3q9.js +0 -973
- package/dist/chunks/vendor-nevware21-ts-utils-Dr-hD3q9.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vendor-microsoft-applicationinsights-analytics-js-ufpnHxNR.js","sources":["../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/__DynamicConstants.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Timing.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/AnalyticsPlugin.js"],"sourcesContent":["/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES5 which can result in a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_TO_STRING = \"toString\"; // Count: 4\r\nexport var _DYN_IS_STORAGE_USE_DISAB0 = \"isStorageUseDisabled\"; // Count: 3\r\nexport var _DYN__ADD_HOOK = \"_addHook\"; // Count: 6\r\nexport var _DYN_CORE = \"core\"; // Count: 13\r\nexport var _DYN_DIAG_LOG = \"diagLog\"; // Count: 13\r\nexport var _DYN_TRACK = \"track\"; // Count: 7\r\nexport var _DYN_TRACK_PAGE_VIEW = \"trackPageView\"; // Count: 4\r\nexport var _DYN_CONFIG = \"config\"; // Count: 12\r\nexport var _DYN_TRACK_PREVIOUS_PAGE_1 = \"trackPreviousPageVisit\"; // Count: 3\r\nexport var _DYN_SEND_PAGE_VIEW_INTER2 = \"sendPageViewInternal\"; // Count: 7\r\nexport var _DYN_REF_URI = \"refUri\"; // Count: 5\r\nexport var _DYN_START_TIME = \"startTime\"; // Count: 6\r\nexport var _DYN_PROPERTIES = \"properties\"; // Count: 5\r\nexport var _DYN_DURATION = \"duration\"; // Count: 12\r\nexport var _DYN_SEND_PAGE_VIEW_PERFO3 = \"sendPageViewPerformanceInternal\"; // Count: 3\r\nexport var _DYN_POPULATE_PAGE_VIEW_P4 = \"populatePageViewPerformanceEvent\"; // Count: 2\r\nexport var _DYN_HREF = \"href\"; // Count: 6\r\nexport var _DYN_SEND_EXCEPTION_INTER5 = \"sendExceptionInternal\"; // Count: 2\r\nexport var _DYN_ERROR = \"error\"; // Count: 5\r\nexport var _DYN_LINE_NUMBER = \"lineNumber\"; // Count: 4\r\nexport var _DYN_COLUMN_NUMBER = \"columnNumber\"; // Count: 5\r\nexport var _DYN__CREATE_AUTO_EXCEPTI6 = \"CreateAutoException\"; // Count: 3\r\nexport var _DYN_ADD_TELEMETRY_INITIA7 = \"addTelemetryInitializer\"; // Count: 4\r\nexport var _DYN_OVERRIDE_PAGE_VIEW_D8 = \"overridePageViewDuration\"; // Count: 2\r\nexport var _DYN_AUTO_EXCEPTION_INSTR9 = \"autoExceptionInstrumented\"; // Count: 3\r\nexport var _DYN_AUTO_TRACK_PAGE_VISI10 = \"autoTrackPageVisitTime\"; // Count: 2\r\nexport var _DYN_IS_BROWSER_LINK_TRAC11 = \"isBrowserLinkTrackingEnabled\"; // Count: 2\r\nexport var _DYN_LENGTH = \"length\"; // Count: 5\r\nexport var _DYN_ENABLE_AUTO_ROUTE_TR12 = \"enableAutoRouteTracking\"; // Count: 2\r\nexport var _DYN_GET_TRACE_CTX = \"getTraceCtx\"; // Count: 3\r\nexport var _DYN_ENABLE_UNHANDLED_PRO13 = \"enableUnhandledPromiseRejectionTracking\"; // Count: 2\r\nexport var _DYN_AUTO_UNHANDLED_PROMI14 = \"autoUnhandledPromiseInstrumented\"; // Count: 3\r\nexport var _DYN_GET_ENTRIES_BY_TYPE = \"getEntriesByType\"; // Count: 5\r\nexport var _DYN_IS_PERFORMANCE_TIMIN15 = \"isPerformanceTimingSupported\"; // Count: 2\r\nexport var _DYN_GET_PERFORMANCE_TIMI16 = \"getPerformanceTiming\"; // Count: 2\r\nexport var _DYN_NAVIGATION_START = \"navigationStart\"; // Count: 4\r\nexport var _DYN_SHOULD_COLLECT_DURAT17 = \"shouldCollectDuration\"; // Count: 2\r\nexport var _DYN_IS_PERFORMANCE_TIMIN18 = \"isPerformanceTimingDataReady\"; // Count: 2\r\nexport var _DYN_RESPONSE_START = \"responseStart\"; // Count: 5\r\nexport var _DYN_REQUEST_START = \"requestStart\"; // Count: 3\r\nexport var _DYN_LOAD_EVENT_END = \"loadEventEnd\"; // Count: 4\r\nexport var _DYN_RESPONSE_END = \"responseEnd\"; // Count: 5\r\nexport var _DYN_CONNECT_END = \"connectEnd\"; // Count: 4\r\nexport var _DYN_PAGE_VISIT_TIME = \"pageVisitTime\"; // Count: 3\r\n//# sourceMappingURL=__DynamicConstants.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _throwInternal, arrForEach, dateTimeUtilsDuration, dumpObj, fieldRedaction, getDocument, getExceptionName, getLocation, isNullOrUndefined } from \"@microsoft/applicationinsights-core-js\";\r\nimport { getPerformance, isUndefined, isWebWorker, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { _DYN_CONFIG, _DYN_DURATION, _DYN_GET_ENTRIES_BY_TYPE, _DYN_GET_PERFORMANCE_TIMI16, _DYN_HREF, _DYN_IS_PERFORMANCE_TIMIN15, _DYN_IS_PERFORMANCE_TIMIN18, _DYN_LENGTH, _DYN_NAVIGATION_START, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_PROPERTIES, _DYN_SEND_PAGE_VIEW_INTER2, _DYN_SEND_PAGE_VIEW_PERFO3, _DYN_SHOULD_COLLECT_DURAT17, _DYN_START_TIME, _DYN_TRACK_PAGE_VIEW } from \"../../__DynamicConstants\";\r\n/**\r\n * Factory function to create a PageViewManager instance.\r\n * @param appInsights - Internal interface to send telemetry\r\n * @param overridePageViewDuration - Whether to override page view duration\r\n * @param core - App Insights core instance\r\n * @param pageViewPerformanceManager - Page view performance manager instance\r\n * @returns A new IPageViewManager instance.\r\n * @internal\r\n */\r\nexport function createPageViewManager(appInsights, overridePageViewDuration, core, pageViewPerformanceManager) {\r\n var _a;\r\n var queueTimer = null;\r\n var itemQueue = [];\r\n var pageViewPerformanceSent = false;\r\n var firstPageViewSent = false;\r\n var _logger;\r\n if (core) {\r\n _logger = core.logger;\r\n }\r\n function _flushChannels(isAsync) {\r\n if (core) {\r\n core.flush(isAsync, function () {\r\n // Event flushed, callback added to prevent promise creation\r\n });\r\n }\r\n }\r\n function _startTimer() {\r\n if (!queueTimer) {\r\n queueTimer = scheduleTimeout((function () {\r\n queueTimer = null;\r\n var allItems = itemQueue.slice(0);\r\n var doFlush = false;\r\n itemQueue = [];\r\n arrForEach(allItems, function (item) {\r\n if (!item()) {\r\n // Not processed so rescheduled\r\n itemQueue.push(item);\r\n }\r\n else {\r\n doFlush = true;\r\n }\r\n });\r\n if (itemQueue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _startTimer();\r\n }\r\n if (doFlush) {\r\n // We process at least one item so flush the queue\r\n _flushChannels(true);\r\n }\r\n }), 100);\r\n }\r\n }\r\n function _addQueue(cb) {\r\n itemQueue.push(cb);\r\n _startTimer();\r\n }\r\n return _a = {},\r\n _a[_DYN_TRACK_PAGE_VIEW /* @min:trackPageView */] = function (pageView, customProperties) {\r\n var name = pageView.name;\r\n if (isNullOrUndefined(name) || typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = pageView.name = doc && doc.title || \"\";\r\n }\r\n var uri = pageView.uri;\r\n if (isNullOrUndefined(uri) || typeof uri !== \"string\") {\r\n var location_1 = getLocation();\r\n uri = pageView.uri = location_1 && location_1[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (core && core[_DYN_CONFIG /* @min:%2econfig */]) {\r\n uri = pageView.uri = fieldRedaction(pageView.uri, core[_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n if (!firstPageViewSent) {\r\n var perf = getPerformance();\r\n // Access the performance timing object\r\n var navigationEntries = (perf && perf[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */] && perf[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */](\"navigation\"));\r\n // Edge Case the navigation Entries may return an empty array and the timeOrigin is not supported on IE\r\n if (navigationEntries && navigationEntries[0] && !isUndefined(perf.timeOrigin)) {\r\n // Get the value of loadEventStart\r\n var loadEventStart = navigationEntries[0].loadEventStart;\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(perf.timeOrigin + loadEventStart);\r\n }\r\n else {\r\n // calculate the start time manually\r\n var duration_1 = ((customProperties || pageView[_DYN_PROPERTIES /* @min:%2eproperties */] || {})[_DYN_DURATION /* @min:%2eduration */] || 0);\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(new Date().getTime() - duration_1);\r\n }\r\n firstPageViewSent = true;\r\n }\r\n // case 1a. if performance timing is not supported by the browser, send the page view telemetry with the duration provided by the user. If the user\r\n // do not provide the duration, set duration to undefined\r\n // Also this is case 4\r\n if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN15 /* @min:%2eisPerformanceTimingSupported */]()) {\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n _flushChannels(true);\r\n if (!isWebWorker()) {\r\n // no navigation timing (IE 8, iOS Safari 8.4, Opera Mini 8 - see http://caniuse.com/#feat=nav-timing)\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 25 /* _eInternalMessageId.NavigationTimingNotSupported */, \"trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.\");\r\n }\r\n return;\r\n }\r\n var pageViewSent = false;\r\n var customDuration;\r\n // if the performance timing is supported by the browser, calculate the custom duration\r\n var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI16 /* @min:%2egetPerformanceTiming */]()[_DYN_NAVIGATION_START /* @min:%2enavigationStart */];\r\n if (start > 0) {\r\n customDuration = dateTimeUtilsDuration(start, +new Date);\r\n if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT17 /* @min:%2eshouldCollectDuration */](customDuration)) {\r\n customDuration = undefined;\r\n }\r\n }\r\n // if the user has provided duration, send a page view telemetry with the provided duration. Otherwise, if\r\n // overridePageViewDuration is set to true, send a page view telemetry with the custom duration calculated earlier\r\n var duration;\r\n if (!isNullOrUndefined(customProperties) &&\r\n !isNullOrUndefined(customProperties[_DYN_DURATION /* @min:%2eduration */])) {\r\n duration = customProperties[_DYN_DURATION /* @min:%2eduration */];\r\n }\r\n if (overridePageViewDuration || !isNaN(duration)) {\r\n if (isNaN(duration)) {\r\n // case 3\r\n if (!customProperties) {\r\n customProperties = {};\r\n }\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = customDuration;\r\n }\r\n // case 2\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n _flushChannels(true);\r\n pageViewSent = true;\r\n }\r\n // now try to send the page view performance telemetry\r\n var maxDurationLimit = 60000;\r\n if (!customProperties) {\r\n customProperties = {};\r\n }\r\n // Queue the event for processing\r\n _addQueue(function () {\r\n var processed = false;\r\n try {\r\n if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN18 /* @min:%2eisPerformanceTimingDataReady */]()) {\r\n processed = true;\r\n var pageViewPerformance = {\r\n name: name,\r\n uri: uri\r\n };\r\n pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */](pageViewPerformance);\r\n if (!pageViewPerformance.isValid && !pageViewSent) {\r\n // If navigation timing gives invalid numbers, then go back to \"override page view duration\" mode.\r\n // That's the best value we can get that makes sense.\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = customDuration;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n else {\r\n if (!pageViewSent) {\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = pageViewPerformance.durationMs;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n if (!pageViewPerformanceSent) {\r\n appInsights[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */](pageViewPerformance, customProperties);\r\n pageViewPerformanceSent = true;\r\n }\r\n }\r\n }\r\n else if (start > 0 && dateTimeUtilsDuration(start, +new Date) > maxDurationLimit) {\r\n // if performance timings are not ready but we exceeded the maximum duration limit, just log a page view telemetry\r\n // with the maximum duration limit. Otherwise, keep waiting until performance timings are ready\r\n processed = true;\r\n if (!pageViewSent) {\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = maxDurationLimit;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 38 /* _eInternalMessageId.TrackPVFailedCalc */, \"trackPageView failed on page load calculation: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n return processed;\r\n });\r\n },\r\n _a.teardown = function (unloadCtx, unloadState) {\r\n if (queueTimer) {\r\n queueTimer.cancel();\r\n queueTimer = null;\r\n var allItems = itemQueue.slice(0);\r\n itemQueue = [];\r\n arrForEach(allItems, function (item) {\r\n if (item()) {\r\n // Item processed successfully\r\n }\r\n });\r\n }\r\n },\r\n _a;\r\n}\r\n//# sourceMappingURL=PageViewManager.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _throwInternal, dateTimeUtilsDuration, getNavigator, getPerformance, msToTimeSpan, safeGetLogger } from \"@microsoft/applicationinsights-core-js\";\r\nimport { mathFloor, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_CONNECT_END, _DYN_DURATION, _DYN_GET_ENTRIES_BY_TYPE, _DYN_GET_PERFORMANCE_TIMI16, _DYN_IS_PERFORMANCE_TIMIN15, _DYN_IS_PERFORMANCE_TIMIN18, _DYN_LENGTH, _DYN_LOAD_EVENT_END, _DYN_NAVIGATION_START, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_REQUEST_START, _DYN_RESPONSE_END, _DYN_RESPONSE_START, _DYN_SHOULD_COLLECT_DURAT17, _DYN_START_TIME } from \"../../__DynamicConstants\";\r\nvar MAX_DURATION_ALLOWED = 3600000; // 1h\r\nvar botAgentNames = [\"googlebot\", \"adsbot-google\", \"apis-google\", \"mediapartners-google\"];\r\nfunction _isPerformanceTimingSupported() {\r\n var perf = getPerformance();\r\n return perf && !!perf.timing;\r\n}\r\nfunction _isPerformanceNavigationTimingSupported() {\r\n var perf = getPerformance();\r\n return perf && perf.getEntriesByType && perf.getEntriesByType(\"navigation\")[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n}\r\nfunction _isPerformanceTimingDataReady() {\r\n var perf = getPerformance();\r\n var timing = perf ? perf.timing : 0;\r\n return timing\r\n && timing.domainLookupStart > 0\r\n && timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */] > 0\r\n && timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */] > 0\r\n && timing[_DYN_REQUEST_START /* @min:%2erequestStart */] > 0\r\n && timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */] > 0\r\n && timing[_DYN_RESPONSE_END /* @min:%2eresponseEnd */] > 0\r\n && timing[_DYN_CONNECT_END /* @min:%2econnectEnd */] > 0\r\n && timing.domLoading > 0;\r\n}\r\nfunction _getPerformanceTiming() {\r\n if (_isPerformanceTimingSupported()) {\r\n return getPerformance().timing;\r\n }\r\n return null;\r\n}\r\nfunction _getPerformanceNavigationTiming() {\r\n if (_isPerformanceNavigationTimingSupported()) {\r\n return getPerformance()[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */](\"navigation\")[0];\r\n }\r\n return null;\r\n}\r\n/**\r\n* This method tells if given durations should be excluded from collection.\r\n*/\r\nfunction _shouldCollectDuration() {\r\n var durations = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n durations[_i] = arguments[_i];\r\n }\r\n var _navigator = getNavigator() || {};\r\n // a full list of Google crawlers user agent strings - https://support.google.com/webmasters/answer/1061943?hl=en\r\n var userAgent = _navigator.userAgent;\r\n var isGoogleBot = false;\r\n if (userAgent) {\r\n for (var i = 0; i < botAgentNames[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n isGoogleBot = isGoogleBot || strIndexOf(userAgent.toLowerCase(), botAgentNames[i]) !== -1;\r\n }\r\n }\r\n if (isGoogleBot) {\r\n // Don't report durations for GoogleBot, it is returning invalid values in performance.timing API.\r\n return false;\r\n }\r\n else {\r\n // for other page views, don't report if it's outside of a reasonable range\r\n for (var i = 0; i < durations[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (durations[i] < 0 || durations[i] >= MAX_DURATION_ALLOWED) {\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n}\r\n/**\r\n * Factory function to create a PageViewPerformanceManager instance.\r\n * @param core - App Insights core instance\r\n * @returns A new IPageViewPerformanceManager instance.\r\n * @internal\r\n */\r\nexport function createPageViewPerformanceManager(core) {\r\n var _a;\r\n var _logger = safeGetLogger(core);\r\n return _a = {},\r\n _a[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:populatePageViewPerformanceEvent */] = function (pageViewPerformance) {\r\n pageViewPerformance.isValid = false;\r\n /*\r\n * http://www.w3.org/TR/navigation-timing/#processing-model\r\n * |-navigationStart\r\n * | |-connectEnd\r\n * | ||-requestStart\r\n * | || |-responseStart\r\n * | || | |-responseEnd\r\n * | || | |\r\n * | || | | |-loadEventEnd\r\n * |---network---||---request---|---response---|---dom---|\r\n * |--------------------------total----------------------|\r\n *\r\n * total = The difference between the load event of the current document is completed and the first recorded timestamp of the performance entry : https://developer.mozilla.org/en-US/docs/Web/Performance/Navigation_and_resource_timings#duration\r\n * network = Redirect time + App Cache + DNS lookup time + TCP connection time\r\n * request = Request time : https://developer.mozilla.org/en-US/docs/Web/Performance/Navigation_and_resource_timings#request_time\r\n * response = Response time\r\n * dom = Document load time : https://html.spec.whatwg.org/multipage/dom.html#document-load-timing-info\r\n * = Document processing time : https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing/#document_processing\r\n * + Loading time : https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing/#loading\r\n */\r\n var navigationTiming = _getPerformanceNavigationTiming();\r\n var timing = _getPerformanceTiming();\r\n var total = 0;\r\n var network = 0;\r\n var request = 0;\r\n var response = 0;\r\n var dom = 0;\r\n if (navigationTiming || timing) {\r\n if (navigationTiming) {\r\n total = navigationTiming[_DYN_DURATION /* @min:%2eduration */];\r\n /**\r\n * support both cases:\r\n * - startTime is always zero: https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming\r\n * - for older browsers where the startTime is not zero\r\n */\r\n network = navigationTiming[_DYN_START_TIME /* @min:%2estartTime */] === 0 ? navigationTiming[_DYN_CONNECT_END /* @min:%2econnectEnd */] : dateTimeUtilsDuration(navigationTiming[_DYN_START_TIME /* @min:%2estartTime */], navigationTiming[_DYN_CONNECT_END /* @min:%2econnectEnd */]);\r\n request = dateTimeUtilsDuration(navigationTiming.requestStart, navigationTiming[_DYN_RESPONSE_START /* @min:%2eresponseStart */]);\r\n response = dateTimeUtilsDuration(navigationTiming[_DYN_RESPONSE_START /* @min:%2eresponseStart */], navigationTiming[_DYN_RESPONSE_END /* @min:%2eresponseEnd */]);\r\n dom = dateTimeUtilsDuration(navigationTiming.responseEnd, navigationTiming[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n }\r\n else {\r\n total = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */], timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n network = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */], timing[_DYN_CONNECT_END /* @min:%2econnectEnd */]);\r\n request = dateTimeUtilsDuration(timing.requestStart, timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */]);\r\n response = dateTimeUtilsDuration(timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */], timing[_DYN_RESPONSE_END /* @min:%2eresponseEnd */]);\r\n dom = dateTimeUtilsDuration(timing.responseEnd, timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n }\r\n if (total === 0) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 10 /* _eInternalMessageId.ErrorPVCalc */, \"error calculating page view performance.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else if (!_shouldCollectDuration(total, network, request, response, dom)) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 45 /* _eInternalMessageId.InvalidDurationValue */, \"Invalid page load duration value. Browser perf data won't be sent.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else if (total < mathFloor(network) + mathFloor(request) + mathFloor(response) + mathFloor(dom)) {\r\n // some browsers may report individual components incorrectly so that the sum of the parts will be bigger than total PLT\r\n // in this case, don't report client performance from this page\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 8 /* _eInternalMessageId.ClientPerformanceMathError */, \"client performance math error.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else {\r\n pageViewPerformance.durationMs = total;\r\n // // convert to timespans\r\n pageViewPerformance.perfTotal = pageViewPerformance[_DYN_DURATION /* @min:%2eduration */] = msToTimeSpan(total);\r\n pageViewPerformance.networkConnect = msToTimeSpan(network);\r\n pageViewPerformance.sentRequest = msToTimeSpan(request);\r\n pageViewPerformance.receivedResponse = msToTimeSpan(response);\r\n pageViewPerformance.domProcessing = msToTimeSpan(dom);\r\n pageViewPerformance.isValid = true;\r\n }\r\n }\r\n },\r\n _a[_DYN_GET_PERFORMANCE_TIMI16 /* @min:getPerformanceTiming */] = _getPerformanceTiming,\r\n _a[_DYN_IS_PERFORMANCE_TIMIN15 /* @min:isPerformanceTimingSupported */] = _isPerformanceTimingSupported,\r\n _a[_DYN_IS_PERFORMANCE_TIMIN18 /* @min:isPerformanceTimingDataReady */] = _isPerformanceTimingDataReady,\r\n _a[_DYN_SHOULD_COLLECT_DURAT17 /* @min:shouldCollectDuration */] = _shouldCollectDuration,\r\n _a;\r\n}\r\n//# sourceMappingURL=PageViewPerformanceManager.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _warnToConsole, dateNow, dumpObj, getJSON, hasJSON, throwError, utlCanUseSessionStorage, utlGetSessionStorage, utlRemoveSessionStorage, utlSetSessionStorage } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_PAGE_VISIT_TIME, _DYN_TRACK_PREVIOUS_PAGE_1 } from \"../../__DynamicConstants\";\r\n/**\r\n * Factory function to create a page visit data object\r\n * @param pageName - Name of the page\r\n * @param pageUrl - URL of the page\r\n * @returns IPageVisitData instance\r\n */\r\nexport function createPageVisitData(pageName, pageUrl) {\r\n var _a;\r\n return _a = {\r\n pageVisitStartTime: dateNow(),\r\n pageName: pageName,\r\n pageUrl: pageUrl\r\n },\r\n _a[_DYN_PAGE_VISIT_TIME /* @min:pageVisitTime */] = 0,\r\n _a;\r\n}\r\n/**\r\n * Factory function to create a PageVisitTimeManager instance.\r\n * @param logger - Diagnostic logger\r\n * @param pageVisitTimeTrackingHandler - Delegate that will be called to send telemetry data to AI (when trackPreviousPageVisit is called)\r\n * @returns A new IPageVisitTimeManager instance.\r\n * @internal\r\n */\r\nexport function createPageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {\r\n var _a;\r\n var prevPageVisitDataKeyName = \"prevPageVisitData\";\r\n /**\r\n * Stops timing of current page (if exists) and starts timing for duration of visit to pageName\r\n * @param pageName - Name of page to begin timing visit duration\r\n * @returns {IPageVisitData} Page visit data (including duration) of pageName from last call to start or restart, if exists. Null if not.\r\n */\r\n function restartPageVisitTimer(pageName, pageUrl) {\r\n var prevPageVisitData = null;\r\n try {\r\n prevPageVisitData = stopPageVisitTimer();\r\n if (utlCanUseSessionStorage()) {\r\n if (utlGetSessionStorage(logger, prevPageVisitDataKeyName) != null) {\r\n throwError(\"Cannot call startPageVisit consecutively without first calling stopPageVisit\");\r\n }\r\n var currPageVisitDataStr = getJSON().stringify(createPageVisitData(pageName, pageUrl));\r\n utlSetSessionStorage(logger, prevPageVisitDataKeyName, currPageVisitDataStr);\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Call to restart failed: \" + dumpObj(e));\r\n prevPageVisitData = null;\r\n }\r\n return prevPageVisitData;\r\n }\r\n /**\r\n * Stops timing of current page, if exists.\r\n * @returns {IPageVisitData} Page visit data (including duration) of pageName from call to start, if exists. Null if not.\r\n */\r\n function stopPageVisitTimer() {\r\n var prevPageVisitData = null;\r\n try {\r\n if (utlCanUseSessionStorage()) {\r\n // Define end time of page's visit\r\n var pageVisitEndTime = dateNow();\r\n // Try to retrieve page name and start time from session storage\r\n var pageVisitDataJsonStr = utlGetSessionStorage(logger, prevPageVisitDataKeyName);\r\n if (pageVisitDataJsonStr && hasJSON()) {\r\n // if previous page data exists, set end time of visit\r\n prevPageVisitData = getJSON().parse(pageVisitDataJsonStr);\r\n prevPageVisitData[_DYN_PAGE_VISIT_TIME /* @min:%2epageVisitTime */] = pageVisitEndTime - prevPageVisitData.pageVisitStartTime;\r\n // Remove data from storage since we already used it\r\n utlRemoveSessionStorage(logger, prevPageVisitDataKeyName);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Stop page visit timer failed: \" + dumpObj(e));\r\n prevPageVisitData = null;\r\n }\r\n return prevPageVisitData;\r\n }\r\n return _a = {},\r\n _a[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:trackPreviousPageVisit */] = function (currentPageName, currentPageUrl) {\r\n try {\r\n // Restart timer for new page view\r\n var prevPageVisitTimeData = restartPageVisitTimer(currentPageName, currentPageUrl);\r\n // If there was a page already being timed, track the visit time for it now.\r\n if (prevPageVisitTimeData) {\r\n pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData[_DYN_PAGE_VISIT_TIME /* @min:%2epageVisitTime */]);\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Auto track page visit time failed, metric will not be collected: \" + dumpObj(e));\r\n }\r\n },\r\n // Expose for backward compatibility with tests\r\n _a._logger = logger,\r\n _a.pageVisitTimeTrackingHandler = pageVisitTimeTrackingHandler,\r\n _a;\r\n}\r\n//# sourceMappingURL=PageVisitTimeManager.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _throwInternal, dateTimeUtilsDuration } from \"@microsoft/applicationinsights-core-js\";\r\n/**\r\n * Factory function to create a Timing instance.\r\n * @param logger - Diagnostic logger\r\n * @param name - Name identifier for timing operations\r\n * @returns A new ITiming instance.\r\n * @internal\r\n */\r\nexport function createTiming(logger, name) {\r\n var _events = {};\r\n var timing = {\r\n action: null,\r\n start: function (name) {\r\n if (typeof _events[name] !== \"undefined\") {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 62 /* _eInternalMessageId.StartCalledMoreThanOnce */, \"start was called more than once for this event without calling stop.\", { name: name, key: name }, true);\r\n }\r\n _events[name] = +new Date;\r\n },\r\n stop: function (name, url, properties, measurements) {\r\n var start = _events[name];\r\n if (isNaN(start)) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 63 /* _eInternalMessageId.StopCalledWithoutStart */, \"stop was called without a corresponding start.\", { name: name, key: name }, true);\r\n }\r\n else {\r\n var end = +new Date;\r\n var duration = dateTimeUtilsDuration(start, end);\r\n timing.action(name, url, duration, properties, measurements);\r\n }\r\n delete _events[name];\r\n _events[name] = undefined;\r\n }\r\n };\r\n return timing;\r\n}\r\n//# sourceMappingURL=Timing.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n/**\r\n* ApplicationInsights.ts\r\n* @copyright Microsoft 2018\r\n*/\r\nvar _a;\r\nimport { __assignFn as __assign, __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AnalyticsPluginIdentifier, BaseTelemetryPlugin, EventDataType, EventEnvelopeType, Exception, ExceptionDataType, ExceptionEnvelopeType, InstrumentEvent, MetricDataType, MetricEnvelopeType, PageViewDataType, PageViewEnvelopeType, PageViewPerformanceDataType, PageViewPerformanceEnvelopeType, RemoteDependencyDataType, TraceDataType, TraceEnvelopeType, arrForEach, cfgDfBoolean, cfgDfMerge, cfgDfSet, cfgDfString, cfgDfValidate, createDistributedTraceContext, createDomEvent, createProcessTelemetryContext, createTelemetryItem, createUniqueNamespace, dataSanitizeString, dumpObj, eventOff, eventOn, fieldRedaction, findAllScripts, generateW3CId, getDocument, getExceptionName, getHistory, getLocation, getWindow, hasHistory, hasWindow, isCrossOriginError, isFunction, isNullOrUndefined, isString, isUndefined, mergeEvtNamespace, onConfigChange, safeGetCookieMgr, strNotSpecified, strUndefined, throwError, utlDisableStorage, utlEnableStorage, utlSetStoragePrefix } from \"@microsoft/applicationinsights-core-js\";\r\nimport { isArray, isError, objDeepFreeze, objDefine, scheduleTimeout, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_ADD_TELEMETRY_INITIA7, _DYN_AUTO_EXCEPTION_INSTR9, _DYN_AUTO_TRACK_PAGE_VISI10, _DYN_AUTO_UNHANDLED_PROMI14, _DYN_COLUMN_NUMBER, _DYN_CONFIG, _DYN_CORE, _DYN_DIAG_LOG, _DYN_DURATION, _DYN_ENABLE_AUTO_ROUTE_TR12, _DYN_ENABLE_UNHANDLED_PRO13, _DYN_ERROR, _DYN_GET_TRACE_CTX, _DYN_HREF, _DYN_IS_BROWSER_LINK_TRAC11, _DYN_IS_STORAGE_USE_DISAB0, _DYN_LENGTH, _DYN_LINE_NUMBER, _DYN_OVERRIDE_PAGE_VIEW_D8, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_PROPERTIES, _DYN_REF_URI, _DYN_SEND_EXCEPTION_INTER5, _DYN_SEND_PAGE_VIEW_INTER2, _DYN_SEND_PAGE_VIEW_PERFO3, _DYN_START_TIME, _DYN_TO_STRING, _DYN_TRACK, _DYN_TRACK_PAGE_VIEW, _DYN_TRACK_PREVIOUS_PAGE_1, _DYN__ADD_HOOK, _DYN__CREATE_AUTO_EXCEPTI6 } from \"../__DynamicConstants\";\r\nimport { createPageViewManager } from \"./Telemetry/PageViewManager\";\r\nimport { createPageViewPerformanceManager } from \"./Telemetry/PageViewPerformanceManager\";\r\nimport { createPageVisitTimeManager } from \"./Telemetry/PageVisitTimeManager\";\r\nimport { createTiming } from \"./Timing\";\r\nvar strEvent = \"event\";\r\nfunction _dispatchEvent(target, evnt) {\r\n if (target && target.dispatchEvent && evnt) {\r\n target.dispatchEvent(evnt);\r\n }\r\n}\r\nfunction _getReason(error) {\r\n if (error && error.reason) {\r\n var reason = error.reason;\r\n if (!isString(reason) && isFunction(reason[_DYN_TO_STRING /* @min:%2etoString */])) {\r\n return reason[_DYN_TO_STRING /* @min:%2etoString */]();\r\n }\r\n return dumpObj(reason);\r\n }\r\n // Pass the original object down which will eventually get evaluated for any message or description\r\n return error || \"\";\r\n}\r\nvar MinMilliSeconds = 60000;\r\nvar defaultValues = objDeepFreeze((_a = {\r\n sessionRenewalMs: cfgDfSet(_chkConfigMilliseconds, 30 * 60 * 1000),\r\n sessionExpirationMs: cfgDfSet(_chkConfigMilliseconds, 24 * 60 * 60 * 1000),\r\n disableExceptionTracking: cfgDfBoolean()\r\n },\r\n _a[_DYN_AUTO_TRACK_PAGE_VISI10 /* @min:autoTrackPageVisitTime */] = cfgDfBoolean(),\r\n _a[_DYN_OVERRIDE_PAGE_VIEW_D8 /* @min:overridePageViewDuration */] = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_UNHANDLED_PRO13 /* @min:enableUnhandledPromiseRejectionTracking */] = cfgDfBoolean(),\r\n _a[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:autoUnhandledPromiseInstrumented */] = false,\r\n _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),\r\n _a[_DYN_IS_STORAGE_USE_DISAB0 /* @min:isStorageUseDisabled */] = cfgDfBoolean(),\r\n _a[_DYN_IS_BROWSER_LINK_TRAC11 /* @min:isBrowserLinkTrackingEnabled */] = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_AUTO_ROUTE_TR12 /* @min:enableAutoRouteTracking */] = cfgDfBoolean(),\r\n _a.namePrefix = cfgDfString(),\r\n _a.enableDebug = cfgDfBoolean(),\r\n _a.disableFlushOnBeforeUnload = cfgDfBoolean(),\r\n _a.disableFlushOnUnload = cfgDfBoolean(false, \"disableFlushOnBeforeUnload\"),\r\n _a.expCfg = cfgDfMerge({ inclScripts: false, expLog: undefined, maxLogs: 50 }),\r\n _a.routeTraceStrategy = 0 /* eRouteTraceStrategy.Server */,\r\n _a));\r\nfunction _chkConfigMilliseconds(value, defValue) {\r\n value = value || defValue;\r\n if (value < MinMilliSeconds) {\r\n value = MinMilliSeconds;\r\n }\r\n return +value;\r\n}\r\nfunction _chkSampling(value) {\r\n return !isNaN(value) && value > 0 && value <= 100;\r\n}\r\nfunction _updateStorageUsage(extConfig) {\r\n // Not resetting the storage usage as someone may have manually called utlDisableStorage, so this will only\r\n // reset based if the configuration option is provided\r\n if (!isUndefined(extConfig[_DYN_IS_STORAGE_USE_DISAB0 /* @min:%2eisStorageUseDisabled */])) {\r\n if (extConfig[_DYN_IS_STORAGE_USE_DISAB0 /* @min:%2eisStorageUseDisabled */]) {\r\n utlDisableStorage();\r\n }\r\n else {\r\n utlEnableStorage();\r\n }\r\n }\r\n}\r\nvar AnalyticsPlugin = /** @class */ (function (_super) {\r\n __extends(AnalyticsPlugin, _super);\r\n function AnalyticsPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = AnalyticsPluginIdentifier; // do not change name or priority\r\n _this.priority = 180; // take from reserved priority range 100- 200\r\n _this.autoRoutePVDelay = 500; // ms; Time to wait after a route change before triggering a pageview to allow DOM changes to take place\r\n var _eventTracking;\r\n var _pageTracking;\r\n var _pageViewManager;\r\n var _pageViewPerformanceManager;\r\n var _pageVisitTimeManager;\r\n var _preInitTelemetryInitializers;\r\n var _isBrowserLinkTrackingEnabled;\r\n var _browserLinkInitializerAdded;\r\n var _enableAutoRouteTracking;\r\n var _historyListenerAdded;\r\n var _disableExceptionTracking;\r\n var _autoExceptionInstrumented;\r\n var _enableUnhandledPromiseRejectionTracking;\r\n var _autoUnhandledPromiseInstrumented;\r\n var _extConfig;\r\n var _autoTrackPageVisitTime;\r\n var _expCfg;\r\n // New configuration variables for trace context management\r\n var _routeTraceStrategy;\r\n // array with max length of 2 that store current url and previous url for SPA page route change trackPageview use.\r\n var _prevUri; // Assigned in the constructor\r\n var _currUri;\r\n var _evtNamespace;\r\n // For testing error hooks only\r\n var _errorHookCnt;\r\n dynamicProto(AnalyticsPlugin, _this, function (_self, _base) {\r\n var _addHook = _base[_DYN__ADD_HOOK /* @min:%2e_addHook */];\r\n _initDefaults();\r\n _self.getCookieMgr = function () {\r\n return safeGetCookieMgr(_self[_DYN_CORE /* @min:%2ecore */]);\r\n };\r\n _self.processTelemetry = function (env, itemCtx) {\r\n _self.processNext(env, itemCtx);\r\n };\r\n _self.trackEvent = function (event, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(event, EventDataType, EventEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(2 /* eLoggingSeverity.WARNING */, 39 /* _eInternalMessageId.TrackTraceFailed */, \"trackTrace failed, trace will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Start timing an extended event. Call `stopTrackEvent` to log the event when it ends.\r\n * @param name - A string that identifies this event uniquely within the document.\r\n */\r\n _self.startTrackEvent = function (name) {\r\n try {\r\n _eventTracking.start(name);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 29 /* _eInternalMessageId.StartTrackEventFailed */, \"startTrackEvent failed, event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Log an extended event that you started timing with `startTrackEvent`.\r\n * @param name - The string you used to identify this event in `startTrackEvent`.\r\n * @param properties - map[string, string] - additional data used to filter events and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this event, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n _self.stopTrackEvent = function (name, properties, measurements) {\r\n try {\r\n _eventTracking.stop(name, undefined, properties, measurements);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 30 /* _eInternalMessageId.StopTrackEventFailed */, \"stopTrackEvent failed, event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Log a diagnostic message\r\n * @param trace - the trace message\r\n * @param customProperties - Additional custom properties to include in the event\r\n */\r\n _self.trackTrace = function (trace, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(trace, TraceDataType, TraceEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(2 /* eLoggingSeverity.WARNING */, 39 /* _eInternalMessageId.TrackTraceFailed */, \"trackTrace failed, trace will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Log a numeric value that is not associated with a specific event. Typically\r\n * used to send regular reports of performance indicators. To send single measurement, just\r\n * use the name and average fields of {@link IMetricTelemetry}. If you take measurements\r\n * frequently, you can reduce the telemetry bandwidth by aggregating multiple measurements\r\n * and sending the resulting average at intervals\r\n * @param metric - input object argument. Only name and average are mandatory.\r\n * @param } customProperties additional data used to filter metrics in the\r\n * portal. Defaults to empty.\r\n */\r\n _self.trackMetric = function (metric, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(metric, MetricDataType, MetricEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 36 /* _eInternalMessageId.TrackMetricFailed */, \"trackMetric failed, metric will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Logs that a page or other item was viewed.\r\n * @param IPageViewTelemetry - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param customProperties - Additional data used to filter events and metrics. Defaults to empty.\r\n * If a user wants to provide duration for pageLoad, it'll have to be in pageView.properties.duration\r\n */\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */] = function (pageView, customProperties) {\r\n try {\r\n var inPv = pageView || {};\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n inPv.uri = fieldRedaction(inPv.uri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n _pageViewManager[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */](inPv, __assign(__assign(__assign({}, inPv.properties), inPv.measurements), customProperties));\r\n if (_autoTrackPageVisitTime) {\r\n _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */](inPv.name, inPv.uri);\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 37 /* _eInternalMessageId.TrackPVFailed */, \"trackPageView failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Create a page view telemetry item and send it to the SDK pipeline through the core.track API\r\n * @param pageView - Page view item to be sent\r\n * @param properties - Custom properties (Part C) that a user can add to the telemetry item\r\n * @param systemProperties - System level properties (Part A) that a user can add to the telemetry item\r\n */\r\n _self[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */] = function (pageView, properties, systemProperties) {\r\n var doc = getDocument();\r\n if (doc) {\r\n pageView[_DYN_REF_URI /* @min:%2erefUri */] = pageView[_DYN_REF_URI /* @min:%2erefUri */] === undefined ? doc.referrer : pageView[_DYN_REF_URI /* @min:%2erefUri */];\r\n }\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n pageView.refUri = fieldRedaction(pageView.refUri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n if (isNullOrUndefined(pageView[_DYN_START_TIME /* @min:%2estartTime */])) {\r\n // calculate the start time manually\r\n var duration = ((properties || pageView[_DYN_PROPERTIES /* @min:%2eproperties */] || {})[_DYN_DURATION /* @min:%2eduration */] || 0);\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(new Date().getTime() - duration);\r\n }\r\n var telemetryItem = createTelemetryItem(pageView, PageViewDataType, PageViewEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n // reset ajaxes counter\r\n _resetAjaxAttempts();\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param pageViewPerformance\r\n * @param properties\r\n */\r\n _self[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */] = function (pageViewPerformance, properties, systemProperties) {\r\n var telemetryItem = createTelemetryItem(pageViewPerformance, PageViewPerformanceDataType, PageViewPerformanceEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n };\r\n /**\r\n * Send browser performance metrics.\r\n * @param pageViewPerformance\r\n * @param customProperties\r\n */\r\n _self.trackPageViewPerformance = function (pageViewPerformance, customProperties) {\r\n var inPvp = pageViewPerformance || {};\r\n try {\r\n _pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */](inPvp);\r\n _self[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */](inPvp, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 37 /* _eInternalMessageId.TrackPVFailed */, \"trackPageViewPerformance failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Starts the timer for tracking a page load time. Use this instead of `trackPageView` if you want to control when the page view timer starts and stops,\r\n * but don't want to calculate the duration yourself. This method doesn't send any telemetry. Call `stopTrackPage` to log the end of the page view\r\n * and send the event.\r\n * @param name - A string that idenfities this item, unique within this HTML document. Defaults to the document title.\r\n */\r\n _self.startTrackPage = function (name) {\r\n try {\r\n if (typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = doc && doc.title || \"\";\r\n }\r\n _pageTracking.start(name);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 31 /* _eInternalMessageId.StartTrackFailed */, \"startTrackPage failed, page view may not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Stops the timer that was started by calling `startTrackPage` and sends the pageview load time telemetry with the specified properties and measurements.\r\n * The duration of the page view will be the time between calling `startTrackPage` and `stopTrackPage`.\r\n * @param name - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param url - String - a relative or absolute URL that identifies the page or other item. Defaults to the window location.\r\n * @param properties - map[string, string] - additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this page, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n _self.stopTrackPage = function (name, url, properties, measurement) {\r\n try {\r\n if (typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = doc && doc.title || \"\";\r\n }\r\n if (typeof url !== \"string\") {\r\n var loc = getLocation();\r\n url = loc && loc[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n url = fieldRedaction(url, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n _pageTracking.stop(name, url, properties, measurement);\r\n if (_autoTrackPageVisitTime) {\r\n _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */](name, url);\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 32 /* _eInternalMessageId.StopTrackFailed */, \"stopTrackPage failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param exception\r\n * @param properties\r\n * @param systemProperties\r\n */\r\n _self[_DYN_SEND_EXCEPTION_INTER5 /* @min:%2esendExceptionInternal */] = function (exception, customProperties, systemProperties) {\r\n // Adding additional edge cases to handle\r\n // - Not passing anything (null / undefined)\r\n var theError = (exception && (exception.exception || exception[_DYN_ERROR /* @min:%2eerror */])) ||\r\n // - Handle someone calling trackException based of v1 API where the exception was the Error\r\n isError(exception) && exception ||\r\n // - Handles no error being defined and instead of creating a new Error() instance attempt to map so any stacktrace\r\n // is preserved and does not list ApplicationInsights code as the source\r\n { name: (exception && typeof exception), message: exception || strNotSpecified };\r\n // If no exception object was passed assign to an empty object to avoid internal exceptions\r\n exception = exception || {};\r\n var exceptionPartB = new Exception(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), theError, exception[_DYN_PROPERTIES /* @min:%2eproperties */] || customProperties, exception.measurements, exception.severityLevel, exception.id).toInterface();\r\n var doc = getDocument();\r\n if (doc && (_expCfg === null || _expCfg === void 0 ? void 0 : _expCfg.inclScripts)) {\r\n var scriptsInfo = findAllScripts(doc);\r\n exceptionPartB[_DYN_PROPERTIES /* @min:%2eproperties */][\"exceptionScripts\"] = JSON.stringify(scriptsInfo);\r\n }\r\n if (_expCfg === null || _expCfg === void 0 ? void 0 : _expCfg.expLog) {\r\n var logs = _expCfg.expLog();\r\n if (logs && logs.logs && isArray(logs.logs)) {\r\n exceptionPartB[_DYN_PROPERTIES /* @min:%2eproperties */][\"exceptionLog\"] = logs.logs.slice(0, _expCfg.maxLogs).join(\"\\n\");\r\n }\r\n }\r\n var telemetryItem = createTelemetryItem(exceptionPartB, ExceptionDataType, ExceptionEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n };\r\n /**\r\n * Log an exception you have caught.\r\n *\r\n * @param exception - Object which contains exception to be sent\r\n * @param } customProperties Additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n *\r\n * Any property of type double will be considered a measurement, and will be treated by Application Insights as a metric.\r\n */\r\n _self.trackException = function (exception, customProperties) {\r\n if (exception && !exception.exception && exception[_DYN_ERROR /* @min:%2eerror */]) {\r\n exception.exception = exception[_DYN_ERROR /* @min:%2eerror */];\r\n }\r\n try {\r\n _self[_DYN_SEND_EXCEPTION_INTER5 /* @min:%2esendExceptionInternal */](exception, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 35 /* _eInternalMessageId.TrackExceptionFailed */, \"trackException failed, exception will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Custom error handler for Application Insights Analytics\r\n * @param exception\r\n */\r\n _self._onerror = function (exception) {\r\n var error = exception && exception[_DYN_ERROR /* @min:%2eerror */];\r\n var evt = exception && exception.evt;\r\n try {\r\n if (!evt) {\r\n var _window = getWindow();\r\n if (_window) {\r\n evt = _window[strEvent];\r\n }\r\n }\r\n var url = (exception && exception.url) || (getDocument() || {}).URL;\r\n // If no error source is provided assume the default window.onerror handler\r\n var errorSrc = exception.errorSrc || \"window.onerror@\" + url + \":\" + (exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0) + \":\" + (exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0);\r\n var properties = {\r\n errorSrc: errorSrc,\r\n url: url,\r\n lineNumber: exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0,\r\n columnNumber: exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0,\r\n message: exception.message\r\n };\r\n if (isCrossOriginError(exception.message, exception.url, exception.lineNumber, exception.columnNumber, exception[_DYN_ERROR /* @min:%2eerror */])) {\r\n _sendCORSException(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](\"Script error: The browser's same-origin policy prevents us from getting the details of this exception. Consider using the 'crossorigin' attribute.\", url, exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0, exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0, error, evt, null, errorSrc), properties);\r\n }\r\n else {\r\n if (!exception.errorSrc) {\r\n exception.errorSrc = errorSrc;\r\n }\r\n _self.trackException({ exception: exception, severityLevel: 3 /* eSeverityLevel.Error */ }, properties);\r\n }\r\n }\r\n catch (e) {\r\n var errorString = error ? (error.name + \", \" + error.message) : \"null\";\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 11 /* _eInternalMessageId.ExceptionWhileLoggingError */, \"_onError threw exception while logging error, error will not be collected: \"\r\n + getExceptionName(e), { exception: dumpObj(e), errorString: errorString });\r\n }\r\n };\r\n _self[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */] = function (telemetryInitializer) {\r\n if (_self[_DYN_CORE /* @min:%2ecore */]) {\r\n // Just add to the core\r\n return _self[_DYN_CORE /* @min:%2ecore */][_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](telemetryInitializer);\r\n }\r\n // Handle \"pre-initialization\" telemetry initializers (for backward compatibility)\r\n if (!_preInitTelemetryInitializers) {\r\n _preInitTelemetryInitializers = [];\r\n }\r\n _preInitTelemetryInitializers.push(telemetryInitializer);\r\n };\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (_self.isInitialized()) {\r\n return;\r\n }\r\n if (isNullOrUndefined(core)) {\r\n throwError(\"Error initializing\");\r\n }\r\n _base.initialize(config, core, extensions, pluginChain);\r\n try {\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(_self.identifier), core.evtNamespace && core.evtNamespace());\r\n if (_preInitTelemetryInitializers) {\r\n arrForEach(_preInitTelemetryInitializers, function (initializer) {\r\n core[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](initializer);\r\n });\r\n _preInitTelemetryInitializers = null;\r\n }\r\n _populateDefaults(config);\r\n _pageViewPerformanceManager = createPageViewPerformanceManager(_self[_DYN_CORE /* @min:%2ecore */]);\r\n _pageViewManager = createPageViewManager(_self, _extConfig.overridePageViewDuration, _self[_DYN_CORE /* @min:%2ecore */], _pageViewPerformanceManager);\r\n _pageVisitTimeManager = createPageVisitTimeManager(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), function (pageName, pageUrl, pageVisitTime) { return trackPageVisitTime(pageName, pageUrl, pageVisitTime); });\r\n _eventTracking = createTiming(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), \"trackEvent\");\r\n _eventTracking.action =\r\n function (name, url, duration, properties, measurements) {\r\n if (!properties) {\r\n properties = {};\r\n }\r\n if (!measurements) {\r\n measurements = {};\r\n }\r\n properties.duration = duration[_DYN_TO_STRING /* @min:%2etoString */]();\r\n _self.trackEvent({ name: name, properties: properties, measurements: measurements });\r\n };\r\n // initialize page view timing\r\n _pageTracking = createTiming(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), \"trackPageView\");\r\n _pageTracking.action = function (name, url, duration, properties, measurements) {\r\n // duration must be a custom property in order for the collector to extract it\r\n if (isNullOrUndefined(properties)) {\r\n properties = {};\r\n }\r\n properties.duration = duration[_DYN_TO_STRING /* @min:%2etoString */]();\r\n var pageViewItem = {\r\n name: name,\r\n uri: url,\r\n properties: properties,\r\n measurements: measurements\r\n };\r\n _self[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageViewItem, properties);\r\n };\r\n if (hasWindow()) {\r\n _updateExceptionTracking();\r\n _updateLocationChange();\r\n }\r\n }\r\n catch (e) {\r\n // resetting the initialized state because of failure\r\n _self.setInitialized(false);\r\n throw e;\r\n }\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n _pageViewManager && _pageViewManager.teardown(unloadCtx, unloadState);\r\n // Just register to remove all events associated with this namespace\r\n eventOff(window, null, null, _evtNamespace);\r\n _initDefaults();\r\n };\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_errorHookCnt, _autoExceptionInstrumented];\r\n };\r\n function _resetAjaxAttempts() {\r\n // Reset ajax attempts counter for the new page view\r\n if (_self[_DYN_CORE /* @min:%2ecore */]) {\r\n var ajaxPlugin = _self[_DYN_CORE /* @min:%2ecore */].getPlugin(\"AjaxDependencyPlugin\");\r\n if (ajaxPlugin && ajaxPlugin.plugin && ajaxPlugin.plugin.resetAjaxAttempts) {\r\n ajaxPlugin.plugin.resetAjaxAttempts();\r\n }\r\n }\r\n }\r\n function _populateDefaults(config) {\r\n // it is used for 1DS as well, so config type should be IConfiguration only\r\n var identifier = _self.identifier;\r\n var core = _self[_DYN_CORE /* @min:%2ecore */];\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(config, function () {\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n _extConfig = ctx.getExtCfg(identifier, defaultValues);\r\n // make sure auto exception is instrumented only once and it won't be overriden by the following config changes\r\n _autoExceptionInstrumented = _autoExceptionInstrumented || config[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */] || _extConfig[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */];\r\n _expCfg = _extConfig.expCfg;\r\n _autoTrackPageVisitTime = _extConfig[_DYN_AUTO_TRACK_PAGE_VISI10 /* @min:%2eautoTrackPageVisitTime */];\r\n // Initialize new trace context configuration options\r\n _routeTraceStrategy = _extConfig.routeTraceStrategy || 0 /* eRouteTraceStrategy.Server */;\r\n if (config.storagePrefix) {\r\n utlSetStoragePrefix(config.storagePrefix);\r\n }\r\n _updateStorageUsage(_extConfig);\r\n // _updateBrowserLinkTracking\r\n _isBrowserLinkTrackingEnabled = _extConfig[_DYN_IS_BROWSER_LINK_TRAC11 /* @min:%2eisBrowserLinkTrackingEnabled */];\r\n _addDefaultTelemetryInitializers();\r\n }));\r\n }\r\n /**\r\n * Log a page visit time\r\n * @param pageName - Name of page\r\n * @param pageVisitDuration - Duration of visit to the page in milliseconds\r\n */\r\n function trackPageVisitTime(pageName, pageUrl, pageVisitTime) {\r\n var properties = { PageName: pageName, PageUrl: pageUrl };\r\n _self.trackMetric({\r\n name: \"PageVisitTime\",\r\n average: pageVisitTime,\r\n max: pageVisitTime,\r\n min: pageVisitTime,\r\n sampleCount: 1\r\n }, properties);\r\n }\r\n function _addDefaultTelemetryInitializers() {\r\n if (!_browserLinkInitializerAdded && _isBrowserLinkTrackingEnabled) {\r\n var browserLinkPaths_1 = [\"/browserLinkSignalR/\", \"/__browserLink/\"];\r\n var dropBrowserLinkRequests = function (envelope) {\r\n if (_isBrowserLinkTrackingEnabled && envelope.baseType === RemoteDependencyDataType) {\r\n var remoteData = envelope.baseData;\r\n if (remoteData) {\r\n for (var i = 0; i < browserLinkPaths_1[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (remoteData.target && strIndexOf(remoteData.target, browserLinkPaths_1[i]) >= 0) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n };\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](_self[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](dropBrowserLinkRequests));\r\n _browserLinkInitializerAdded = true;\r\n }\r\n }\r\n function _sendCORSException(exception, properties) {\r\n var telemetryItem = createTelemetryItem(exception, ExceptionDataType, ExceptionEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n function _updateExceptionTracking() {\r\n var _window = getWindow();\r\n var locn = getLocation(true);\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _disableExceptionTracking = _extConfig.disableExceptionTracking;\r\n if (!_disableExceptionTracking && !_autoExceptionInstrumented && !_extConfig[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */]) {\r\n // We want to enable exception auto collection and it has not been done so yet\r\n _addHook(InstrumentEvent(_window, \"onerror\", {\r\n ns: _evtNamespace,\r\n rsp: function (callDetails, message, url, lineNumber, columnNumber, error) {\r\n if (!_disableExceptionTracking && callDetails.rslt !== true) {\r\n _self._onerror(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](message, url, lineNumber, columnNumber, error, callDetails.evt));\r\n }\r\n }\r\n }, false));\r\n _errorHookCnt++;\r\n _autoExceptionInstrumented = true;\r\n }\r\n }));\r\n _addUnhandledPromiseRejectionTracking(_window, locn);\r\n }\r\n function _updateLocationChange() {\r\n var win = getWindow();\r\n var locn = getLocation(true);\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _enableAutoRouteTracking = _extConfig[_DYN_ENABLE_AUTO_ROUTE_TR12 /* @min:%2eenableAutoRouteTracking */] === true;\r\n /**\r\n * Create a custom \"locationchange\" event which is triggered each time the history object is changed\r\n */\r\n if (win && _enableAutoRouteTracking && !_historyListenerAdded && hasHistory()) {\r\n var _history = getHistory();\r\n if (isFunction(_history.pushState) && isFunction(_history.replaceState) && typeof Event !== strUndefined) {\r\n _addHistoryListener(win, _history, locn);\r\n }\r\n }\r\n }));\r\n }\r\n /**\r\n * Create a custom \"locationchange\" event which is triggered each time the history object is changed\r\n */\r\n function _addHistoryListener(win, history, locn) {\r\n if (_historyListenerAdded) {\r\n return;\r\n }\r\n // Name Prefix is only referenced during the initial initialization and cannot be changed afterwards\r\n var namePrefix = _extConfig.namePrefix || \"\";\r\n function _popstateHandler() {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n function _locationChangeHandler() {\r\n // We always track the changes (if the handler is installed) to handle the feature being disabled between location changes\r\n if (_currUri) {\r\n _prevUri = _currUri;\r\n _currUri = locn && locn[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n else {\r\n _currUri = locn && locn[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n _currUri = fieldRedaction(_currUri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n if (_enableAutoRouteTracking) {\r\n // TODO(OTelSpan) (create new \"context\") / spans for the new page view\r\n // Should \"end\" any previous span (once we have a new one)\r\n var newContext = void 0;\r\n // Quick and dirty backward compatibility check -- should never be needed but here to avoid a JS exception\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */]) {\r\n var currentContext = _self[_DYN_CORE /* @min:%2ecore */][_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */](false); // Get current context without creating new\r\n if (currentContext && _routeTraceStrategy === 1 /* eRouteTraceStrategy.Page */) {\r\n // Create new context with the determined parent\r\n newContext = createDistributedTraceContext(currentContext);\r\n }\r\n else {\r\n // Fall back to original behavior - use server context as parent\r\n newContext = _self[_DYN_CORE /* @min:%2ecore */][_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */](true);\r\n }\r\n // Always generate new trace ID for route changes (this also generates new span ID)\r\n newContext.traceId = generateW3CId();\r\n // This populates the ai.operation.name which has a maximum size of 1024 so we need to sanitize it\r\n newContext.pageName = dataSanitizeString(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), newContext.pageName || \"_unknown_\");\r\n _self[_DYN_CORE /* @min:%2ecore */].setTraceCtx(newContext);\r\n }\r\n // Single page view tracking call for all scenarios\r\n scheduleTimeout((function (uri) {\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */]({ refUri: uri, properties: { duration: 0 } });\r\n }).bind(_self, _prevUri), _self.autoRoutePVDelay);\r\n }\r\n }\r\n _addHook(InstrumentEvent(history, \"pushState\", {\r\n ns: _evtNamespace,\r\n rsp: function () {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"pushState\"));\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n }, true));\r\n _addHook(InstrumentEvent(history, \"replaceState\", {\r\n ns: _evtNamespace,\r\n rsp: function () {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"replaceState\"));\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n }, true));\r\n eventOn(win, namePrefix + \"popstate\", _popstateHandler, _evtNamespace);\r\n eventOn(win, namePrefix + \"locationchange\", _locationChangeHandler, _evtNamespace);\r\n _historyListenerAdded = true;\r\n }\r\n function _addUnhandledPromiseRejectionTracking(_window, _location) {\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _enableUnhandledPromiseRejectionTracking = _extConfig[_DYN_ENABLE_UNHANDLED_PRO13 /* @min:%2eenableUnhandledPromiseRejectionTracking */] === true;\r\n _autoExceptionInstrumented = _autoExceptionInstrumented || _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:%2eautoUnhandledPromiseInstrumented */];\r\n if (_enableUnhandledPromiseRejectionTracking && !_autoUnhandledPromiseInstrumented) {\r\n // We want to enable exception auto collection and it has not been done so yet\r\n _addHook(InstrumentEvent(_window, \"onunhandledrejection\", {\r\n ns: _evtNamespace,\r\n rsp: function (callDetails, error) {\r\n if (_enableUnhandledPromiseRejectionTracking && callDetails.rslt !== true) { // handled could be typeof function\r\n _self._onerror(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](_getReason(error), _location ? _location[_DYN_HREF /* @min:%2ehref */] : \"\", 0, 0, error, callDetails.evt));\r\n }\r\n }\r\n }, false));\r\n _errorHookCnt++;\r\n _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:%2eautoUnhandledPromiseInstrumented */] = _autoUnhandledPromiseInstrumented = true;\r\n }\r\n }));\r\n }\r\n /**\r\n * This method will throw exceptions in debug mode or attempt to log the error as a console warning.\r\n * @param severity - The severity of the log message\r\n * @param msgId - The log message.\r\n */\r\n function _throwInternal(severity, msgId, msg, properties, isUserAct) {\r\n _self[_DYN_DIAG_LOG /* @min:%2ediagLog */]().throwInternal(severity, msgId, msg, properties, isUserAct);\r\n }\r\n function _initDefaults() {\r\n _eventTracking = null;\r\n _pageTracking = null;\r\n _pageViewManager = null;\r\n _pageViewPerformanceManager = null;\r\n _pageVisitTimeManager = null;\r\n _preInitTelemetryInitializers = null;\r\n _isBrowserLinkTrackingEnabled = false;\r\n _browserLinkInitializerAdded = false;\r\n _enableAutoRouteTracking = false;\r\n _historyListenerAdded = false;\r\n _disableExceptionTracking = false;\r\n _autoExceptionInstrumented = false;\r\n _enableUnhandledPromiseRejectionTracking = false;\r\n _autoUnhandledPromiseInstrumented = false;\r\n _autoTrackPageVisitTime = false;\r\n // Reset ajax attempts counter\r\n _resetAjaxAttempts();\r\n // array with max length of 2 that store current url and previous url for SPA page route change trackPageview use.\r\n var location = getLocation(true);\r\n _prevUri = location && location[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n _prevUri = fieldRedaction(_prevUri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n _currUri = null;\r\n _evtNamespace = null;\r\n _extConfig = null;\r\n _errorHookCnt = 0;\r\n // Define _self.config\r\n objDefine(_self, \"config\", {\r\n g: function () { return _extConfig; }\r\n });\r\n }\r\n // For backward compatibility\r\n objDefine(_self, \"_pageViewManager\", { g: function () { return _pageViewManager; } });\r\n objDefine(_self, \"_pageViewPerformanceManager\", { g: function () { return _pageViewPerformanceManager; } });\r\n objDefine(_self, \"_pageVisitTimeManager\", { g: function () { return _pageVisitTimeManager; } });\r\n objDefine(_self, \"_evtNamespace\", { g: function () { return \".\" + _evtNamespace; } });\r\n });\r\n return _this;\r\n }\r\n// Removed Stub for AnalyticsPlugin.prototype.getCookieMgr.\r\n// Removed Stub for AnalyticsPlugin.prototype.processTelemetry.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackEvent.\r\n// Removed Stub for AnalyticsPlugin.prototype.startTrackEvent.\r\n// Removed Stub for AnalyticsPlugin.prototype.stopTrackEvent.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackTrace.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackMetric.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackPageView.\r\n// Removed Stub for AnalyticsPlugin.prototype.sendPageViewInternal.\r\n// Removed Stub for AnalyticsPlugin.prototype.sendPageViewPerformanceInternal.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackPageViewPerformance.\r\n// Removed Stub for AnalyticsPlugin.prototype.startTrackPage.\r\n// Removed Stub for AnalyticsPlugin.prototype.stopTrackPage.\r\n// Removed Stub for AnalyticsPlugin.prototype.sendExceptionInternal.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackException.\r\n// Removed Stub for AnalyticsPlugin.prototype._onerror.\r\n// Removed Stub for AnalyticsPlugin.prototype.addTelemetryInitializer.\r\n// Removed Stub for AnalyticsPlugin.prototype.initialize.\r\n AnalyticsPlugin.Version = '3.4.1'; // Not currently used anywhere\r\n return AnalyticsPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { AnalyticsPlugin };\r\n//# sourceMappingURL=AnalyticsPlugin.js.map"],"names":["_DYN_TO_STRING","_DYN_IS_STORAGE_USE_DISAB0","_DYN__ADD_HOOK","_DYN_CORE","_DYN_DIAG_LOG","_DYN_TRACK","_DYN_TRACK_PAGE_VIEW","_DYN_CONFIG","_DYN_TRACK_PREVIOUS_PAGE_1","_DYN_SEND_PAGE_VIEW_INTER2","_DYN_REF_URI","_DYN_START_TIME","_DYN_PROPERTIES","_DYN_DURATION","_DYN_SEND_PAGE_VIEW_PERFO3","_DYN_POPULATE_PAGE_VIEW_P4","_DYN_HREF","_DYN_SEND_EXCEPTION_INTER5","_DYN_ERROR","_DYN_LINE_NUMBER","_DYN_COLUMN_NUMBER","_DYN__CREATE_AUTO_EXCEPTI6","_DYN_ADD_TELEMETRY_INITIA7","_DYN_OVERRIDE_PAGE_VIEW_D8","_DYN_AUTO_EXCEPTION_INSTR9","_DYN_AUTO_TRACK_PAGE_VISI10","_DYN_IS_BROWSER_LINK_TRAC11","_DYN_LENGTH","_DYN_ENABLE_AUTO_ROUTE_TR12","_DYN_GET_TRACE_CTX","_DYN_ENABLE_UNHANDLED_PRO13","_DYN_AUTO_UNHANDLED_PROMI14","_DYN_GET_ENTRIES_BY_TYPE","_DYN_IS_PERFORMANCE_TIMIN15","_DYN_GET_PERFORMANCE_TIMI16","_DYN_NAVIGATION_START","_DYN_SHOULD_COLLECT_DURAT17","_DYN_IS_PERFORMANCE_TIMIN18","_DYN_RESPONSE_START","_DYN_REQUEST_START","_DYN_LOAD_EVENT_END","_DYN_RESPONSE_END","_DYN_CONNECT_END","_DYN_PAGE_VISIT_TIME","createPageViewManager","appInsights","overridePageViewDuration","core","pageViewPerformanceManager","_a","queueTimer","itemQueue","pageViewPerformanceSent","firstPageViewSent","_logger","_flushChannels","isAsync","_startTimer","scheduleTimeout","allItems","doFlush","arrForEach","item","_addQueue","cb","pageView","customProperties","name","isNullOrUndefined","doc","getDocument","uri","location_1","getLocation","fieldRedaction","perf","getPerformance","navigationEntries","isUndefined","loadEventStart","duration_1","isWebWorker","_throwInternal","pageViewSent","customDuration","start","dateTimeUtilsDuration","duration","maxDurationLimit","processed","pageViewPerformance","e","getExceptionName","dumpObj","unloadCtx","unloadState","MAX_DURATION_ALLOWED","botAgentNames","_isPerformanceTimingSupported","_isPerformanceNavigationTimingSupported","_isPerformanceTimingDataReady","timing","_getPerformanceTiming","_getPerformanceNavigationTiming","_shouldCollectDuration","durations","_i","_navigator","getNavigator","userAgent","isGoogleBot","i","strIndexOf","createPageViewPerformanceManager","safeGetLogger","navigationTiming","total","network","request","response","dom","mathFloor","msToTimeSpan","createPageVisitData","pageName","pageUrl","dateNow","createPageVisitTimeManager","logger","pageVisitTimeTrackingHandler","prevPageVisitDataKeyName","restartPageVisitTimer","prevPageVisitData","stopPageVisitTimer","utlCanUseSessionStorage","utlGetSessionStorage","throwError","currPageVisitDataStr","getJSON","utlSetSessionStorage","_warnToConsole","pageVisitEndTime","pageVisitDataJsonStr","hasJSON","utlRemoveSessionStorage","currentPageName","currentPageUrl","prevPageVisitTimeData","createTiming","_events","url","properties","measurements","end","strEvent","_dispatchEvent","target","evnt","_getReason","error","reason","isString","isFunction","MinMilliSeconds","defaultValues","objDeepFreeze","cfgDfSet","_chkConfigMilliseconds","cfgDfBoolean","cfgDfValidate","_chkSampling","cfgDfString","cfgDfMerge","value","defValue","_updateStorageUsage","extConfig","utlDisableStorage","utlEnableStorage","AnalyticsPlugin","_super","__extends","_this","AnalyticsPluginIdentifier","_eventTracking","_pageTracking","_pageViewManager","_pageViewPerformanceManager","_pageVisitTimeManager","_preInitTelemetryInitializers","_isBrowserLinkTrackingEnabled","_browserLinkInitializerAdded","_enableAutoRouteTracking","_historyListenerAdded","_disableExceptionTracking","_autoExceptionInstrumented","_enableUnhandledPromiseRejectionTracking","_autoUnhandledPromiseInstrumented","_extConfig","_autoTrackPageVisitTime","_expCfg","_routeTraceStrategy","_prevUri","_currUri","_evtNamespace","_errorHookCnt","dynamicProto","_self","_base","_addHook","_initDefaults","safeGetCookieMgr","env","itemCtx","event","telemetryItem","createTelemetryItem","EventDataType","EventEnvelopeType","trace","TraceDataType","TraceEnvelopeType","metric","MetricDataType","MetricEnvelopeType","inPv","__assign","systemProperties","PageViewDataType","PageViewEnvelopeType","_resetAjaxAttempts","PageViewPerformanceDataType","PageViewPerformanceEnvelopeType","inPvp","measurement","loc","exception","theError","isError","strNotSpecified","exceptionPartB","Exception","scriptsInfo","findAllScripts","logs","isArray","ExceptionDataType","ExceptionEnvelopeType","evt","_window","getWindow","errorSrc","isCrossOriginError","_sendCORSException","errorString","telemetryInitializer","config","extensions","pluginChain","mergeEvtNamespace","createUniqueNamespace","initializer","_populateDefaults","pageVisitTime","trackPageVisitTime","pageViewItem","hasWindow","_updateExceptionTracking","_updateLocationChange","eventOff","ajaxPlugin","identifier","onConfigChange","ctx","createProcessTelemetryContext","utlSetStoragePrefix","_addDefaultTelemetryInitializers","browserLinkPaths_1","dropBrowserLinkRequests","envelope","RemoteDependencyDataType","remoteData","locn","InstrumentEvent","callDetails","message","lineNumber","columnNumber","_addUnhandledPromiseRejectionTracking","win","hasHistory","_history","getHistory","strUndefined","_addHistoryListener","history","namePrefix","_popstateHandler","createDomEvent","_locationChangeHandler","newContext","currentContext","createDistributedTraceContext","generateW3CId","dataSanitizeString","eventOn","_location","severity","msgId","msg","isUserAct","location","objDefine","BaseTelemetryPlugin"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]}
|
|
1
|
+
{"version":3,"file":"vendor-microsoft-applicationinsights-analytics-js-JNujMGRZ.js","sources":["../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/__DynamicConstants.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/Timing.js","../../../node_modules/@microsoft/applicationinsights-analytics-js/dist-es5/JavaScriptSDK/AnalyticsPlugin.js"],"sourcesContent":["/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES5 which can result in a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_TO_STRING = \"toString\"; // Count: 4\r\nexport var _DYN_IS_STORAGE_USE_DISAB0 = \"isStorageUseDisabled\"; // Count: 3\r\nexport var _DYN__ADD_HOOK = \"_addHook\"; // Count: 6\r\nexport var _DYN_CORE = \"core\"; // Count: 13\r\nexport var _DYN_DIAG_LOG = \"diagLog\"; // Count: 13\r\nexport var _DYN_TRACK = \"track\"; // Count: 7\r\nexport var _DYN_TRACK_PAGE_VIEW = \"trackPageView\"; // Count: 4\r\nexport var _DYN_CONFIG = \"config\"; // Count: 12\r\nexport var _DYN_TRACK_PREVIOUS_PAGE_1 = \"trackPreviousPageVisit\"; // Count: 3\r\nexport var _DYN_SEND_PAGE_VIEW_INTER2 = \"sendPageViewInternal\"; // Count: 7\r\nexport var _DYN_REF_URI = \"refUri\"; // Count: 5\r\nexport var _DYN_START_TIME = \"startTime\"; // Count: 6\r\nexport var _DYN_PROPERTIES = \"properties\"; // Count: 5\r\nexport var _DYN_DURATION = \"duration\"; // Count: 12\r\nexport var _DYN_SEND_PAGE_VIEW_PERFO3 = \"sendPageViewPerformanceInternal\"; // Count: 3\r\nexport var _DYN_POPULATE_PAGE_VIEW_P4 = \"populatePageViewPerformanceEvent\"; // Count: 2\r\nexport var _DYN_HREF = \"href\"; // Count: 6\r\nexport var _DYN_SEND_EXCEPTION_INTER5 = \"sendExceptionInternal\"; // Count: 2\r\nexport var _DYN_ERROR = \"error\"; // Count: 5\r\nexport var _DYN_LINE_NUMBER = \"lineNumber\"; // Count: 4\r\nexport var _DYN_COLUMN_NUMBER = \"columnNumber\"; // Count: 5\r\nexport var _DYN__CREATE_AUTO_EXCEPTI6 = \"CreateAutoException\"; // Count: 3\r\nexport var _DYN_ADD_TELEMETRY_INITIA7 = \"addTelemetryInitializer\"; // Count: 4\r\nexport var _DYN_OVERRIDE_PAGE_VIEW_D8 = \"overridePageViewDuration\"; // Count: 2\r\nexport var _DYN_AUTO_EXCEPTION_INSTR9 = \"autoExceptionInstrumented\"; // Count: 3\r\nexport var _DYN_AUTO_TRACK_PAGE_VISI10 = \"autoTrackPageVisitTime\"; // Count: 2\r\nexport var _DYN_IS_BROWSER_LINK_TRAC11 = \"isBrowserLinkTrackingEnabled\"; // Count: 2\r\nexport var _DYN_LENGTH = \"length\"; // Count: 5\r\nexport var _DYN_ENABLE_AUTO_ROUTE_TR12 = \"enableAutoRouteTracking\"; // Count: 2\r\nexport var _DYN_GET_TRACE_CTX = \"getTraceCtx\"; // Count: 3\r\nexport var _DYN_ENABLE_UNHANDLED_PRO13 = \"enableUnhandledPromiseRejectionTracking\"; // Count: 2\r\nexport var _DYN_AUTO_UNHANDLED_PROMI14 = \"autoUnhandledPromiseInstrumented\"; // Count: 3\r\nexport var _DYN_GET_ENTRIES_BY_TYPE = \"getEntriesByType\"; // Count: 5\r\nexport var _DYN_IS_PERFORMANCE_TIMIN15 = \"isPerformanceTimingSupported\"; // Count: 2\r\nexport var _DYN_GET_PERFORMANCE_TIMI16 = \"getPerformanceTiming\"; // Count: 2\r\nexport var _DYN_NAVIGATION_START = \"navigationStart\"; // Count: 4\r\nexport var _DYN_SHOULD_COLLECT_DURAT17 = \"shouldCollectDuration\"; // Count: 2\r\nexport var _DYN_IS_PERFORMANCE_TIMIN18 = \"isPerformanceTimingDataReady\"; // Count: 2\r\nexport var _DYN_RESPONSE_START = \"responseStart\"; // Count: 5\r\nexport var _DYN_REQUEST_START = \"requestStart\"; // Count: 3\r\nexport var _DYN_LOAD_EVENT_END = \"loadEventEnd\"; // Count: 4\r\nexport var _DYN_RESPONSE_END = \"responseEnd\"; // Count: 5\r\nexport var _DYN_CONNECT_END = \"connectEnd\"; // Count: 4\r\nexport var _DYN_PAGE_VISIT_TIME = \"pageVisitTime\"; // Count: 3\r\n//# sourceMappingURL=__DynamicConstants.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _throwInternal, arrForEach, dateTimeUtilsDuration, dumpObj, fieldRedaction, getDocument, getExceptionName, getLocation, isNullOrUndefined } from \"@microsoft/applicationinsights-core-js\";\r\nimport { getPerformance, isUndefined, isWebWorker, scheduleTimeout } from \"@nevware21/ts-utils\";\r\nimport { _DYN_CONFIG, _DYN_DURATION, _DYN_GET_ENTRIES_BY_TYPE, _DYN_GET_PERFORMANCE_TIMI16, _DYN_HREF, _DYN_IS_PERFORMANCE_TIMIN15, _DYN_IS_PERFORMANCE_TIMIN18, _DYN_LENGTH, _DYN_NAVIGATION_START, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_PROPERTIES, _DYN_SEND_PAGE_VIEW_INTER2, _DYN_SEND_PAGE_VIEW_PERFO3, _DYN_SHOULD_COLLECT_DURAT17, _DYN_START_TIME, _DYN_TRACK_PAGE_VIEW } from \"../../__DynamicConstants\";\r\n/**\r\n * Factory function to create a PageViewManager instance.\r\n * @param appInsights - Internal interface to send telemetry\r\n * @param overridePageViewDuration - Whether to override page view duration\r\n * @param core - App Insights core instance\r\n * @param pageViewPerformanceManager - Page view performance manager instance\r\n * @returns A new IPageViewManager instance.\r\n * @internal\r\n */\r\nexport function createPageViewManager(appInsights, overridePageViewDuration, core, pageViewPerformanceManager) {\r\n var _a;\r\n var queueTimer = null;\r\n var itemQueue = [];\r\n var pageViewPerformanceSent = false;\r\n var firstPageViewSent = false;\r\n var _logger;\r\n if (core) {\r\n _logger = core.logger;\r\n }\r\n function _flushChannels(isAsync) {\r\n if (core) {\r\n core.flush(isAsync, function () {\r\n // Event flushed, callback added to prevent promise creation\r\n });\r\n }\r\n }\r\n function _startTimer() {\r\n if (!queueTimer) {\r\n queueTimer = scheduleTimeout((function () {\r\n queueTimer = null;\r\n var allItems = itemQueue.slice(0);\r\n var doFlush = false;\r\n itemQueue = [];\r\n arrForEach(allItems, function (item) {\r\n if (!item()) {\r\n // Not processed so rescheduled\r\n itemQueue.push(item);\r\n }\r\n else {\r\n doFlush = true;\r\n }\r\n });\r\n if (itemQueue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _startTimer();\r\n }\r\n if (doFlush) {\r\n // We process at least one item so flush the queue\r\n _flushChannels(true);\r\n }\r\n }), 100);\r\n }\r\n }\r\n function _addQueue(cb) {\r\n itemQueue.push(cb);\r\n _startTimer();\r\n }\r\n return _a = {},\r\n _a[_DYN_TRACK_PAGE_VIEW /* @min:trackPageView */] = function (pageView, customProperties) {\r\n var name = pageView.name;\r\n if (isNullOrUndefined(name) || typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = pageView.name = doc && doc.title || \"\";\r\n }\r\n var uri = pageView.uri;\r\n if (isNullOrUndefined(uri) || typeof uri !== \"string\") {\r\n var location_1 = getLocation();\r\n uri = pageView.uri = location_1 && location_1[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (core && core[_DYN_CONFIG /* @min:%2econfig */]) {\r\n uri = pageView.uri = fieldRedaction(pageView.uri, core[_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n if (!firstPageViewSent) {\r\n var perf = getPerformance();\r\n // Access the performance timing object\r\n var navigationEntries = (perf && perf[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */] && perf[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */](\"navigation\"));\r\n // Edge Case the navigation Entries may return an empty array and the timeOrigin is not supported on IE\r\n if (navigationEntries && navigationEntries[0] && !isUndefined(perf.timeOrigin)) {\r\n // Get the value of loadEventStart\r\n var loadEventStart = navigationEntries[0].loadEventStart;\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(perf.timeOrigin + loadEventStart);\r\n }\r\n else {\r\n // calculate the start time manually\r\n var duration_1 = ((customProperties || pageView[_DYN_PROPERTIES /* @min:%2eproperties */] || {})[_DYN_DURATION /* @min:%2eduration */] || 0);\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(new Date().getTime() - duration_1);\r\n }\r\n firstPageViewSent = true;\r\n }\r\n // case 1a. if performance timing is not supported by the browser, send the page view telemetry with the duration provided by the user. If the user\r\n // do not provide the duration, set duration to undefined\r\n // Also this is case 4\r\n if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN15 /* @min:%2eisPerformanceTimingSupported */]()) {\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n _flushChannels(true);\r\n if (!isWebWorker()) {\r\n // no navigation timing (IE 8, iOS Safari 8.4, Opera Mini 8 - see http://caniuse.com/#feat=nav-timing)\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 25 /* _eInternalMessageId.NavigationTimingNotSupported */, \"trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.\");\r\n }\r\n return;\r\n }\r\n var pageViewSent = false;\r\n var customDuration;\r\n // if the performance timing is supported by the browser, calculate the custom duration\r\n var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI16 /* @min:%2egetPerformanceTiming */]()[_DYN_NAVIGATION_START /* @min:%2enavigationStart */];\r\n if (start > 0) {\r\n customDuration = dateTimeUtilsDuration(start, +new Date);\r\n if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT17 /* @min:%2eshouldCollectDuration */](customDuration)) {\r\n customDuration = undefined;\r\n }\r\n }\r\n // if the user has provided duration, send a page view telemetry with the provided duration. Otherwise, if\r\n // overridePageViewDuration is set to true, send a page view telemetry with the custom duration calculated earlier\r\n var duration;\r\n if (!isNullOrUndefined(customProperties) &&\r\n !isNullOrUndefined(customProperties[_DYN_DURATION /* @min:%2eduration */])) {\r\n duration = customProperties[_DYN_DURATION /* @min:%2eduration */];\r\n }\r\n if (overridePageViewDuration || !isNaN(duration)) {\r\n if (isNaN(duration)) {\r\n // case 3\r\n if (!customProperties) {\r\n customProperties = {};\r\n }\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = customDuration;\r\n }\r\n // case 2\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n _flushChannels(true);\r\n pageViewSent = true;\r\n }\r\n // now try to send the page view performance telemetry\r\n var maxDurationLimit = 60000;\r\n if (!customProperties) {\r\n customProperties = {};\r\n }\r\n // Queue the event for processing\r\n _addQueue(function () {\r\n var processed = false;\r\n try {\r\n if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN18 /* @min:%2eisPerformanceTimingDataReady */]()) {\r\n processed = true;\r\n var pageViewPerformance = {\r\n name: name,\r\n uri: uri\r\n };\r\n pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */](pageViewPerformance);\r\n if (!pageViewPerformance.isValid && !pageViewSent) {\r\n // If navigation timing gives invalid numbers, then go back to \"override page view duration\" mode.\r\n // That's the best value we can get that makes sense.\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = customDuration;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n else {\r\n if (!pageViewSent) {\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = pageViewPerformance.durationMs;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n if (!pageViewPerformanceSent) {\r\n appInsights[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */](pageViewPerformance, customProperties);\r\n pageViewPerformanceSent = true;\r\n }\r\n }\r\n }\r\n else if (start > 0 && dateTimeUtilsDuration(start, +new Date) > maxDurationLimit) {\r\n // if performance timings are not ready but we exceeded the maximum duration limit, just log a page view telemetry\r\n // with the maximum duration limit. Otherwise, keep waiting until performance timings are ready\r\n processed = true;\r\n if (!pageViewSent) {\r\n customProperties[_DYN_DURATION /* @min:%2eduration */] = maxDurationLimit;\r\n appInsights[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageView, customProperties);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 38 /* _eInternalMessageId.TrackPVFailedCalc */, \"trackPageView failed on page load calculation: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n return processed;\r\n });\r\n },\r\n _a.teardown = function (unloadCtx, unloadState) {\r\n if (queueTimer) {\r\n queueTimer.cancel();\r\n queueTimer = null;\r\n var allItems = itemQueue.slice(0);\r\n itemQueue = [];\r\n arrForEach(allItems, function (item) {\r\n if (item()) {\r\n // Item processed successfully\r\n }\r\n });\r\n }\r\n },\r\n _a;\r\n}\r\n//# sourceMappingURL=PageViewManager.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _throwInternal, dateTimeUtilsDuration, getNavigator, getPerformance, msToTimeSpan, safeGetLogger } from \"@microsoft/applicationinsights-core-js\";\r\nimport { mathFloor, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_CONNECT_END, _DYN_DURATION, _DYN_GET_ENTRIES_BY_TYPE, _DYN_GET_PERFORMANCE_TIMI16, _DYN_IS_PERFORMANCE_TIMIN15, _DYN_IS_PERFORMANCE_TIMIN18, _DYN_LENGTH, _DYN_LOAD_EVENT_END, _DYN_NAVIGATION_START, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_REQUEST_START, _DYN_RESPONSE_END, _DYN_RESPONSE_START, _DYN_SHOULD_COLLECT_DURAT17, _DYN_START_TIME } from \"../../__DynamicConstants\";\r\nvar MAX_DURATION_ALLOWED = 3600000; // 1h\r\nvar botAgentNames = [\"googlebot\", \"adsbot-google\", \"apis-google\", \"mediapartners-google\"];\r\nfunction _isPerformanceTimingSupported() {\r\n var perf = getPerformance();\r\n return perf && !!perf.timing;\r\n}\r\nfunction _isPerformanceNavigationTimingSupported() {\r\n var perf = getPerformance();\r\n return perf && perf.getEntriesByType && perf.getEntriesByType(\"navigation\")[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n}\r\nfunction _isPerformanceTimingDataReady() {\r\n var perf = getPerformance();\r\n var timing = perf ? perf.timing : 0;\r\n return timing\r\n && timing.domainLookupStart > 0\r\n && timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */] > 0\r\n && timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */] > 0\r\n && timing[_DYN_REQUEST_START /* @min:%2erequestStart */] > 0\r\n && timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */] > 0\r\n && timing[_DYN_RESPONSE_END /* @min:%2eresponseEnd */] > 0\r\n && timing[_DYN_CONNECT_END /* @min:%2econnectEnd */] > 0\r\n && timing.domLoading > 0;\r\n}\r\nfunction _getPerformanceTiming() {\r\n if (_isPerformanceTimingSupported()) {\r\n return getPerformance().timing;\r\n }\r\n return null;\r\n}\r\nfunction _getPerformanceNavigationTiming() {\r\n if (_isPerformanceNavigationTimingSupported()) {\r\n return getPerformance()[_DYN_GET_ENTRIES_BY_TYPE /* @min:%2egetEntriesByType */](\"navigation\")[0];\r\n }\r\n return null;\r\n}\r\n/**\r\n* This method tells if given durations should be excluded from collection.\r\n*/\r\nfunction _shouldCollectDuration() {\r\n var durations = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n durations[_i] = arguments[_i];\r\n }\r\n var _navigator = getNavigator() || {};\r\n // a full list of Google crawlers user agent strings - https://support.google.com/webmasters/answer/1061943?hl=en\r\n var userAgent = _navigator.userAgent;\r\n var isGoogleBot = false;\r\n if (userAgent) {\r\n for (var i = 0; i < botAgentNames[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n isGoogleBot = isGoogleBot || strIndexOf(userAgent.toLowerCase(), botAgentNames[i]) !== -1;\r\n }\r\n }\r\n if (isGoogleBot) {\r\n // Don't report durations for GoogleBot, it is returning invalid values in performance.timing API.\r\n return false;\r\n }\r\n else {\r\n // for other page views, don't report if it's outside of a reasonable range\r\n for (var i = 0; i < durations[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (durations[i] < 0 || durations[i] >= MAX_DURATION_ALLOWED) {\r\n return false;\r\n }\r\n }\r\n }\r\n return true;\r\n}\r\n/**\r\n * Factory function to create a PageViewPerformanceManager instance.\r\n * @param core - App Insights core instance\r\n * @returns A new IPageViewPerformanceManager instance.\r\n * @internal\r\n */\r\nexport function createPageViewPerformanceManager(core) {\r\n var _a;\r\n var _logger = safeGetLogger(core);\r\n return _a = {},\r\n _a[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:populatePageViewPerformanceEvent */] = function (pageViewPerformance) {\r\n pageViewPerformance.isValid = false;\r\n /*\r\n * http://www.w3.org/TR/navigation-timing/#processing-model\r\n * |-navigationStart\r\n * | |-connectEnd\r\n * | ||-requestStart\r\n * | || |-responseStart\r\n * | || | |-responseEnd\r\n * | || | |\r\n * | || | | |-loadEventEnd\r\n * |---network---||---request---|---response---|---dom---|\r\n * |--------------------------total----------------------|\r\n *\r\n * total = The difference between the load event of the current document is completed and the first recorded timestamp of the performance entry : https://developer.mozilla.org/en-US/docs/Web/Performance/Navigation_and_resource_timings#duration\r\n * network = Redirect time + App Cache + DNS lookup time + TCP connection time\r\n * request = Request time : https://developer.mozilla.org/en-US/docs/Web/Performance/Navigation_and_resource_timings#request_time\r\n * response = Response time\r\n * dom = Document load time : https://html.spec.whatwg.org/multipage/dom.html#document-load-timing-info\r\n * = Document processing time : https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing/#document_processing\r\n * + Loading time : https://developers.google.com/web/fundamentals/performance/navigation-and-resource-timing/#loading\r\n */\r\n var navigationTiming = _getPerformanceNavigationTiming();\r\n var timing = _getPerformanceTiming();\r\n var total = 0;\r\n var network = 0;\r\n var request = 0;\r\n var response = 0;\r\n var dom = 0;\r\n if (navigationTiming || timing) {\r\n if (navigationTiming) {\r\n total = navigationTiming[_DYN_DURATION /* @min:%2eduration */];\r\n /**\r\n * support both cases:\r\n * - startTime is always zero: https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming\r\n * - for older browsers where the startTime is not zero\r\n */\r\n network = navigationTiming[_DYN_START_TIME /* @min:%2estartTime */] === 0 ? navigationTiming[_DYN_CONNECT_END /* @min:%2econnectEnd */] : dateTimeUtilsDuration(navigationTiming[_DYN_START_TIME /* @min:%2estartTime */], navigationTiming[_DYN_CONNECT_END /* @min:%2econnectEnd */]);\r\n request = dateTimeUtilsDuration(navigationTiming.requestStart, navigationTiming[_DYN_RESPONSE_START /* @min:%2eresponseStart */]);\r\n response = dateTimeUtilsDuration(navigationTiming[_DYN_RESPONSE_START /* @min:%2eresponseStart */], navigationTiming[_DYN_RESPONSE_END /* @min:%2eresponseEnd */]);\r\n dom = dateTimeUtilsDuration(navigationTiming.responseEnd, navigationTiming[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n }\r\n else {\r\n total = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */], timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n network = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START /* @min:%2enavigationStart */], timing[_DYN_CONNECT_END /* @min:%2econnectEnd */]);\r\n request = dateTimeUtilsDuration(timing.requestStart, timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */]);\r\n response = dateTimeUtilsDuration(timing[_DYN_RESPONSE_START /* @min:%2eresponseStart */], timing[_DYN_RESPONSE_END /* @min:%2eresponseEnd */]);\r\n dom = dateTimeUtilsDuration(timing.responseEnd, timing[_DYN_LOAD_EVENT_END /* @min:%2eloadEventEnd */]);\r\n }\r\n if (total === 0) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 10 /* _eInternalMessageId.ErrorPVCalc */, \"error calculating page view performance.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else if (!_shouldCollectDuration(total, network, request, response, dom)) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 45 /* _eInternalMessageId.InvalidDurationValue */, \"Invalid page load duration value. Browser perf data won't be sent.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else if (total < mathFloor(network) + mathFloor(request) + mathFloor(response) + mathFloor(dom)) {\r\n // some browsers may report individual components incorrectly so that the sum of the parts will be bigger than total PLT\r\n // in this case, don't report client performance from this page\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 8 /* _eInternalMessageId.ClientPerformanceMathError */, \"client performance math error.\", { total: total, network: network, request: request, response: response, dom: dom });\r\n }\r\n else {\r\n pageViewPerformance.durationMs = total;\r\n // // convert to timespans\r\n pageViewPerformance.perfTotal = pageViewPerformance[_DYN_DURATION /* @min:%2eduration */] = msToTimeSpan(total);\r\n pageViewPerformance.networkConnect = msToTimeSpan(network);\r\n pageViewPerformance.sentRequest = msToTimeSpan(request);\r\n pageViewPerformance.receivedResponse = msToTimeSpan(response);\r\n pageViewPerformance.domProcessing = msToTimeSpan(dom);\r\n pageViewPerformance.isValid = true;\r\n }\r\n }\r\n },\r\n _a[_DYN_GET_PERFORMANCE_TIMI16 /* @min:getPerformanceTiming */] = _getPerformanceTiming,\r\n _a[_DYN_IS_PERFORMANCE_TIMIN15 /* @min:isPerformanceTimingSupported */] = _isPerformanceTimingSupported,\r\n _a[_DYN_IS_PERFORMANCE_TIMIN18 /* @min:isPerformanceTimingDataReady */] = _isPerformanceTimingDataReady,\r\n _a[_DYN_SHOULD_COLLECT_DURAT17 /* @min:shouldCollectDuration */] = _shouldCollectDuration,\r\n _a;\r\n}\r\n//# sourceMappingURL=PageViewPerformanceManager.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _warnToConsole, dateNow, dumpObj, getJSON, hasJSON, throwError, utlCanUseSessionStorage, utlGetSessionStorage, utlRemoveSessionStorage, utlSetSessionStorage } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_PAGE_VISIT_TIME, _DYN_TRACK_PREVIOUS_PAGE_1 } from \"../../__DynamicConstants\";\r\n/**\r\n * Factory function to create a page visit data object\r\n * @param pageName - Name of the page\r\n * @param pageUrl - URL of the page\r\n * @returns IPageVisitData instance\r\n */\r\nexport function createPageVisitData(pageName, pageUrl) {\r\n var _a;\r\n return _a = {\r\n pageVisitStartTime: dateNow(),\r\n pageName: pageName,\r\n pageUrl: pageUrl\r\n },\r\n _a[_DYN_PAGE_VISIT_TIME /* @min:pageVisitTime */] = 0,\r\n _a;\r\n}\r\n/**\r\n * Factory function to create a PageVisitTimeManager instance.\r\n * @param logger - Diagnostic logger\r\n * @param pageVisitTimeTrackingHandler - Delegate that will be called to send telemetry data to AI (when trackPreviousPageVisit is called)\r\n * @returns A new IPageVisitTimeManager instance.\r\n * @internal\r\n */\r\nexport function createPageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {\r\n var _a;\r\n var prevPageVisitDataKeyName = \"prevPageVisitData\";\r\n /**\r\n * Stops timing of current page (if exists) and starts timing for duration of visit to pageName\r\n * @param pageName - Name of page to begin timing visit duration\r\n * @returns {IPageVisitData} Page visit data (including duration) of pageName from last call to start or restart, if exists. Null if not.\r\n */\r\n function restartPageVisitTimer(pageName, pageUrl) {\r\n var prevPageVisitData = null;\r\n try {\r\n prevPageVisitData = stopPageVisitTimer();\r\n if (utlCanUseSessionStorage()) {\r\n if (utlGetSessionStorage(logger, prevPageVisitDataKeyName) != null) {\r\n throwError(\"Cannot call startPageVisit consecutively without first calling stopPageVisit\");\r\n }\r\n var currPageVisitDataStr = getJSON().stringify(createPageVisitData(pageName, pageUrl));\r\n utlSetSessionStorage(logger, prevPageVisitDataKeyName, currPageVisitDataStr);\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Call to restart failed: \" + dumpObj(e));\r\n prevPageVisitData = null;\r\n }\r\n return prevPageVisitData;\r\n }\r\n /**\r\n * Stops timing of current page, if exists.\r\n * @returns {IPageVisitData} Page visit data (including duration) of pageName from call to start, if exists. Null if not.\r\n */\r\n function stopPageVisitTimer() {\r\n var prevPageVisitData = null;\r\n try {\r\n if (utlCanUseSessionStorage()) {\r\n // Define end time of page's visit\r\n var pageVisitEndTime = dateNow();\r\n // Try to retrieve page name and start time from session storage\r\n var pageVisitDataJsonStr = utlGetSessionStorage(logger, prevPageVisitDataKeyName);\r\n if (pageVisitDataJsonStr && hasJSON()) {\r\n // if previous page data exists, set end time of visit\r\n prevPageVisitData = getJSON().parse(pageVisitDataJsonStr);\r\n prevPageVisitData[_DYN_PAGE_VISIT_TIME /* @min:%2epageVisitTime */] = pageVisitEndTime - prevPageVisitData.pageVisitStartTime;\r\n // Remove data from storage since we already used it\r\n utlRemoveSessionStorage(logger, prevPageVisitDataKeyName);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Stop page visit timer failed: \" + dumpObj(e));\r\n prevPageVisitData = null;\r\n }\r\n return prevPageVisitData;\r\n }\r\n return _a = {},\r\n _a[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:trackPreviousPageVisit */] = function (currentPageName, currentPageUrl) {\r\n try {\r\n // Restart timer for new page view\r\n var prevPageVisitTimeData = restartPageVisitTimer(currentPageName, currentPageUrl);\r\n // If there was a page already being timed, track the visit time for it now.\r\n if (prevPageVisitTimeData) {\r\n pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData[_DYN_PAGE_VISIT_TIME /* @min:%2epageVisitTime */]);\r\n }\r\n }\r\n catch (e) {\r\n _warnToConsole(logger, \"Auto track page visit time failed, metric will not be collected: \" + dumpObj(e));\r\n }\r\n },\r\n // Expose for backward compatibility with tests\r\n _a._logger = logger,\r\n _a.pageVisitTimeTrackingHandler = pageVisitTimeTrackingHandler,\r\n _a;\r\n}\r\n//# sourceMappingURL=PageVisitTimeManager.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n\r\n\r\nimport { _throwInternal, dateTimeUtilsDuration } from \"@microsoft/applicationinsights-core-js\";\r\n/**\r\n * Factory function to create a Timing instance.\r\n * @param logger - Diagnostic logger\r\n * @param name - Name identifier for timing operations\r\n * @returns A new ITiming instance.\r\n * @internal\r\n */\r\nexport function createTiming(logger, name) {\r\n var _events = {};\r\n var timing = {\r\n action: null,\r\n start: function (name) {\r\n if (typeof _events[name] !== \"undefined\") {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 62 /* _eInternalMessageId.StartCalledMoreThanOnce */, \"start was called more than once for this event without calling stop.\", { name: name, key: name }, true);\r\n }\r\n _events[name] = +new Date;\r\n },\r\n stop: function (name, url, properties, measurements) {\r\n var start = _events[name];\r\n if (isNaN(start)) {\r\n _throwInternal(logger, 2 /* eLoggingSeverity.WARNING */, 63 /* _eInternalMessageId.StopCalledWithoutStart */, \"stop was called without a corresponding start.\", { name: name, key: name }, true);\r\n }\r\n else {\r\n var end = +new Date;\r\n var duration = dateTimeUtilsDuration(start, end);\r\n timing.action(name, url, duration, properties, measurements);\r\n }\r\n delete _events[name];\r\n _events[name] = undefined;\r\n }\r\n };\r\n return timing;\r\n}\r\n//# sourceMappingURL=Timing.js.map","/*\n * Application Insights JavaScript SDK - Web Analytics, 3.4.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n */\n/**\r\n* ApplicationInsights.ts\r\n* @copyright Microsoft 2018\r\n*/\r\nvar _a;\r\nimport { __assignFn as __assign, __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AnalyticsPluginIdentifier, BaseTelemetryPlugin, EventDataType, EventEnvelopeType, Exception, ExceptionDataType, ExceptionEnvelopeType, InstrumentEvent, MetricDataType, MetricEnvelopeType, PageViewDataType, PageViewEnvelopeType, PageViewPerformanceDataType, PageViewPerformanceEnvelopeType, RemoteDependencyDataType, TraceDataType, TraceEnvelopeType, arrForEach, cfgDfBoolean, cfgDfMerge, cfgDfSet, cfgDfString, cfgDfValidate, createDistributedTraceContext, createDomEvent, createProcessTelemetryContext, createTelemetryItem, createUniqueNamespace, dataSanitizeString, dumpObj, eventOff, eventOn, fieldRedaction, findAllScripts, generateW3CId, getDocument, getExceptionName, getHistory, getLocation, getWindow, hasHistory, hasWindow, isCrossOriginError, isFunction, isNullOrUndefined, isString, isUndefined, mergeEvtNamespace, onConfigChange, safeGetCookieMgr, strNotSpecified, strUndefined, throwError, utlDisableStorage, utlEnableStorage, utlSetStoragePrefix } from \"@microsoft/applicationinsights-core-js\";\r\nimport { isArray, isError, objDeepFreeze, objDefine, scheduleTimeout, strIndexOf } from \"@nevware21/ts-utils\";\r\nimport { _DYN_ADD_TELEMETRY_INITIA7, _DYN_AUTO_EXCEPTION_INSTR9, _DYN_AUTO_TRACK_PAGE_VISI10, _DYN_AUTO_UNHANDLED_PROMI14, _DYN_COLUMN_NUMBER, _DYN_CONFIG, _DYN_CORE, _DYN_DIAG_LOG, _DYN_DURATION, _DYN_ENABLE_AUTO_ROUTE_TR12, _DYN_ENABLE_UNHANDLED_PRO13, _DYN_ERROR, _DYN_GET_TRACE_CTX, _DYN_HREF, _DYN_IS_BROWSER_LINK_TRAC11, _DYN_IS_STORAGE_USE_DISAB0, _DYN_LENGTH, _DYN_LINE_NUMBER, _DYN_OVERRIDE_PAGE_VIEW_D8, _DYN_POPULATE_PAGE_VIEW_P4, _DYN_PROPERTIES, _DYN_REF_URI, _DYN_SEND_EXCEPTION_INTER5, _DYN_SEND_PAGE_VIEW_INTER2, _DYN_SEND_PAGE_VIEW_PERFO3, _DYN_START_TIME, _DYN_TO_STRING, _DYN_TRACK, _DYN_TRACK_PAGE_VIEW, _DYN_TRACK_PREVIOUS_PAGE_1, _DYN__ADD_HOOK, _DYN__CREATE_AUTO_EXCEPTI6 } from \"../__DynamicConstants\";\r\nimport { createPageViewManager } from \"./Telemetry/PageViewManager\";\r\nimport { createPageViewPerformanceManager } from \"./Telemetry/PageViewPerformanceManager\";\r\nimport { createPageVisitTimeManager } from \"./Telemetry/PageVisitTimeManager\";\r\nimport { createTiming } from \"./Timing\";\r\nvar strEvent = \"event\";\r\nfunction _dispatchEvent(target, evnt) {\r\n if (target && target.dispatchEvent && evnt) {\r\n target.dispatchEvent(evnt);\r\n }\r\n}\r\nfunction _getReason(error) {\r\n if (error && error.reason) {\r\n var reason = error.reason;\r\n if (!isString(reason) && isFunction(reason[_DYN_TO_STRING /* @min:%2etoString */])) {\r\n return reason[_DYN_TO_STRING /* @min:%2etoString */]();\r\n }\r\n return dumpObj(reason);\r\n }\r\n // Pass the original object down which will eventually get evaluated for any message or description\r\n return error || \"\";\r\n}\r\nvar MinMilliSeconds = 60000;\r\nvar defaultValues = objDeepFreeze((_a = {\r\n sessionRenewalMs: cfgDfSet(_chkConfigMilliseconds, 30 * 60 * 1000),\r\n sessionExpirationMs: cfgDfSet(_chkConfigMilliseconds, 24 * 60 * 60 * 1000),\r\n disableExceptionTracking: cfgDfBoolean()\r\n },\r\n _a[_DYN_AUTO_TRACK_PAGE_VISI10 /* @min:autoTrackPageVisitTime */] = cfgDfBoolean(),\r\n _a[_DYN_OVERRIDE_PAGE_VIEW_D8 /* @min:overridePageViewDuration */] = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_UNHANDLED_PRO13 /* @min:enableUnhandledPromiseRejectionTracking */] = cfgDfBoolean(),\r\n _a[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:autoUnhandledPromiseInstrumented */] = false,\r\n _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),\r\n _a[_DYN_IS_STORAGE_USE_DISAB0 /* @min:isStorageUseDisabled */] = cfgDfBoolean(),\r\n _a[_DYN_IS_BROWSER_LINK_TRAC11 /* @min:isBrowserLinkTrackingEnabled */] = cfgDfBoolean(),\r\n _a[_DYN_ENABLE_AUTO_ROUTE_TR12 /* @min:enableAutoRouteTracking */] = cfgDfBoolean(),\r\n _a.namePrefix = cfgDfString(),\r\n _a.enableDebug = cfgDfBoolean(),\r\n _a.disableFlushOnBeforeUnload = cfgDfBoolean(),\r\n _a.disableFlushOnUnload = cfgDfBoolean(false, \"disableFlushOnBeforeUnload\"),\r\n _a.expCfg = cfgDfMerge({ inclScripts: false, expLog: undefined, maxLogs: 50 }),\r\n _a.routeTraceStrategy = 0 /* eRouteTraceStrategy.Server */,\r\n _a));\r\nfunction _chkConfigMilliseconds(value, defValue) {\r\n value = value || defValue;\r\n if (value < MinMilliSeconds) {\r\n value = MinMilliSeconds;\r\n }\r\n return +value;\r\n}\r\nfunction _chkSampling(value) {\r\n return !isNaN(value) && value > 0 && value <= 100;\r\n}\r\nfunction _updateStorageUsage(extConfig) {\r\n // Not resetting the storage usage as someone may have manually called utlDisableStorage, so this will only\r\n // reset based if the configuration option is provided\r\n if (!isUndefined(extConfig[_DYN_IS_STORAGE_USE_DISAB0 /* @min:%2eisStorageUseDisabled */])) {\r\n if (extConfig[_DYN_IS_STORAGE_USE_DISAB0 /* @min:%2eisStorageUseDisabled */]) {\r\n utlDisableStorage();\r\n }\r\n else {\r\n utlEnableStorage();\r\n }\r\n }\r\n}\r\nvar AnalyticsPlugin = /** @class */ (function (_super) {\r\n __extends(AnalyticsPlugin, _super);\r\n function AnalyticsPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = AnalyticsPluginIdentifier; // do not change name or priority\r\n _this.priority = 180; // take from reserved priority range 100- 200\r\n _this.autoRoutePVDelay = 500; // ms; Time to wait after a route change before triggering a pageview to allow DOM changes to take place\r\n var _eventTracking;\r\n var _pageTracking;\r\n var _pageViewManager;\r\n var _pageViewPerformanceManager;\r\n var _pageVisitTimeManager;\r\n var _preInitTelemetryInitializers;\r\n var _isBrowserLinkTrackingEnabled;\r\n var _browserLinkInitializerAdded;\r\n var _enableAutoRouteTracking;\r\n var _historyListenerAdded;\r\n var _disableExceptionTracking;\r\n var _autoExceptionInstrumented;\r\n var _enableUnhandledPromiseRejectionTracking;\r\n var _autoUnhandledPromiseInstrumented;\r\n var _extConfig;\r\n var _autoTrackPageVisitTime;\r\n var _expCfg;\r\n // New configuration variables for trace context management\r\n var _routeTraceStrategy;\r\n // array with max length of 2 that store current url and previous url for SPA page route change trackPageview use.\r\n var _prevUri; // Assigned in the constructor\r\n var _currUri;\r\n var _evtNamespace;\r\n // For testing error hooks only\r\n var _errorHookCnt;\r\n dynamicProto(AnalyticsPlugin, _this, function (_self, _base) {\r\n var _addHook = _base[_DYN__ADD_HOOK /* @min:%2e_addHook */];\r\n _initDefaults();\r\n _self.getCookieMgr = function () {\r\n return safeGetCookieMgr(_self[_DYN_CORE /* @min:%2ecore */]);\r\n };\r\n _self.processTelemetry = function (env, itemCtx) {\r\n _self.processNext(env, itemCtx);\r\n };\r\n _self.trackEvent = function (event, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(event, EventDataType, EventEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(2 /* eLoggingSeverity.WARNING */, 39 /* _eInternalMessageId.TrackTraceFailed */, \"trackTrace failed, trace will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Start timing an extended event. Call `stopTrackEvent` to log the event when it ends.\r\n * @param name - A string that identifies this event uniquely within the document.\r\n */\r\n _self.startTrackEvent = function (name) {\r\n try {\r\n _eventTracking.start(name);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 29 /* _eInternalMessageId.StartTrackEventFailed */, \"startTrackEvent failed, event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Log an extended event that you started timing with `startTrackEvent`.\r\n * @param name - The string you used to identify this event in `startTrackEvent`.\r\n * @param properties - map[string, string] - additional data used to filter events and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this event, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n _self.stopTrackEvent = function (name, properties, measurements) {\r\n try {\r\n _eventTracking.stop(name, undefined, properties, measurements);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 30 /* _eInternalMessageId.StopTrackEventFailed */, \"stopTrackEvent failed, event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Log a diagnostic message\r\n * @param trace - the trace message\r\n * @param customProperties - Additional custom properties to include in the event\r\n */\r\n _self.trackTrace = function (trace, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(trace, TraceDataType, TraceEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(2 /* eLoggingSeverity.WARNING */, 39 /* _eInternalMessageId.TrackTraceFailed */, \"trackTrace failed, trace will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Log a numeric value that is not associated with a specific event. Typically\r\n * used to send regular reports of performance indicators. To send single measurement, just\r\n * use the name and average fields of {@link IMetricTelemetry}. If you take measurements\r\n * frequently, you can reduce the telemetry bandwidth by aggregating multiple measurements\r\n * and sending the resulting average at intervals\r\n * @param metric - input object argument. Only name and average are mandatory.\r\n * @param } customProperties additional data used to filter metrics in the\r\n * portal. Defaults to empty.\r\n */\r\n _self.trackMetric = function (metric, customProperties) {\r\n try {\r\n var telemetryItem = createTelemetryItem(metric, MetricDataType, MetricEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 36 /* _eInternalMessageId.TrackMetricFailed */, \"trackMetric failed, metric will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Logs that a page or other item was viewed.\r\n * @param IPageViewTelemetry - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param customProperties - Additional data used to filter events and metrics. Defaults to empty.\r\n * If a user wants to provide duration for pageLoad, it'll have to be in pageView.properties.duration\r\n */\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */] = function (pageView, customProperties) {\r\n try {\r\n var inPv = pageView || {};\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n inPv.uri = fieldRedaction(inPv.uri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n _pageViewManager[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */](inPv, __assign(__assign(__assign({}, inPv.properties), inPv.measurements), customProperties));\r\n if (_autoTrackPageVisitTime) {\r\n _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */](inPv.name, inPv.uri);\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 37 /* _eInternalMessageId.TrackPVFailed */, \"trackPageView failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Create a page view telemetry item and send it to the SDK pipeline through the core.track API\r\n * @param pageView - Page view item to be sent\r\n * @param properties - Custom properties (Part C) that a user can add to the telemetry item\r\n * @param systemProperties - System level properties (Part A) that a user can add to the telemetry item\r\n */\r\n _self[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */] = function (pageView, properties, systemProperties) {\r\n var doc = getDocument();\r\n if (doc) {\r\n pageView[_DYN_REF_URI /* @min:%2erefUri */] = pageView[_DYN_REF_URI /* @min:%2erefUri */] === undefined ? doc.referrer : pageView[_DYN_REF_URI /* @min:%2erefUri */];\r\n }\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n pageView.refUri = fieldRedaction(pageView.refUri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n if (isNullOrUndefined(pageView[_DYN_START_TIME /* @min:%2estartTime */])) {\r\n // calculate the start time manually\r\n var duration = ((properties || pageView[_DYN_PROPERTIES /* @min:%2eproperties */] || {})[_DYN_DURATION /* @min:%2eduration */] || 0);\r\n pageView[_DYN_START_TIME /* @min:%2estartTime */] = new Date(new Date().getTime() - duration);\r\n }\r\n var telemetryItem = createTelemetryItem(pageView, PageViewDataType, PageViewEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n // reset ajaxes counter\r\n _resetAjaxAttempts();\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param pageViewPerformance\r\n * @param properties\r\n */\r\n _self[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */] = function (pageViewPerformance, properties, systemProperties) {\r\n var telemetryItem = createTelemetryItem(pageViewPerformance, PageViewPerformanceDataType, PageViewPerformanceEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n };\r\n /**\r\n * Send browser performance metrics.\r\n * @param pageViewPerformance\r\n * @param customProperties\r\n */\r\n _self.trackPageViewPerformance = function (pageViewPerformance, customProperties) {\r\n var inPvp = pageViewPerformance || {};\r\n try {\r\n _pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 /* @min:%2epopulatePageViewPerformanceEvent */](inPvp);\r\n _self[_DYN_SEND_PAGE_VIEW_PERFO3 /* @min:%2esendPageViewPerformanceInternal */](inPvp, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 37 /* _eInternalMessageId.TrackPVFailed */, \"trackPageViewPerformance failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Starts the timer for tracking a page load time. Use this instead of `trackPageView` if you want to control when the page view timer starts and stops,\r\n * but don't want to calculate the duration yourself. This method doesn't send any telemetry. Call `stopTrackPage` to log the end of the page view\r\n * and send the event.\r\n * @param name - A string that idenfities this item, unique within this HTML document. Defaults to the document title.\r\n */\r\n _self.startTrackPage = function (name) {\r\n try {\r\n if (typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = doc && doc.title || \"\";\r\n }\r\n _pageTracking.start(name);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 31 /* _eInternalMessageId.StartTrackFailed */, \"startTrackPage failed, page view may not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * Stops the timer that was started by calling `startTrackPage` and sends the pageview load time telemetry with the specified properties and measurements.\r\n * The duration of the page view will be the time between calling `startTrackPage` and `stopTrackPage`.\r\n * @param name - The string you used as the name in startTrackPage. Defaults to the document title.\r\n * @param url - String - a relative or absolute URL that identifies the page or other item. Defaults to the window location.\r\n * @param properties - map[string, string] - additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n * @param measurements - map[string, number] - metrics associated with this page, displayed in Metrics Explorer on the portal. Defaults to empty.\r\n */\r\n _self.stopTrackPage = function (name, url, properties, measurement) {\r\n try {\r\n if (typeof name !== \"string\") {\r\n var doc = getDocument();\r\n name = doc && doc.title || \"\";\r\n }\r\n if (typeof url !== \"string\") {\r\n var loc = getLocation();\r\n url = loc && loc[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n url = fieldRedaction(url, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n _pageTracking.stop(name, url, properties, measurement);\r\n if (_autoTrackPageVisitTime) {\r\n _pageVisitTimeManager[_DYN_TRACK_PREVIOUS_PAGE_1 /* @min:%2etrackPreviousPageVisit */](name, url);\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 32 /* _eInternalMessageId.StopTrackFailed */, \"stopTrackPage failed, page view will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @ignore INTERNAL ONLY\r\n * @param exception\r\n * @param properties\r\n * @param systemProperties\r\n */\r\n _self[_DYN_SEND_EXCEPTION_INTER5 /* @min:%2esendExceptionInternal */] = function (exception, customProperties, systemProperties) {\r\n // Adding additional edge cases to handle\r\n // - Not passing anything (null / undefined)\r\n var theError = (exception && (exception.exception || exception[_DYN_ERROR /* @min:%2eerror */])) ||\r\n // - Handle someone calling trackException based of v1 API where the exception was the Error\r\n isError(exception) && exception ||\r\n // - Handles no error being defined and instead of creating a new Error() instance attempt to map so any stacktrace\r\n // is preserved and does not list ApplicationInsights code as the source\r\n { name: (exception && typeof exception), message: exception || strNotSpecified };\r\n // If no exception object was passed assign to an empty object to avoid internal exceptions\r\n exception = exception || {};\r\n var exceptionPartB = new Exception(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), theError, exception[_DYN_PROPERTIES /* @min:%2eproperties */] || customProperties, exception.measurements, exception.severityLevel, exception.id).toInterface();\r\n var doc = getDocument();\r\n if (doc && (_expCfg === null || _expCfg === void 0 ? void 0 : _expCfg.inclScripts)) {\r\n var scriptsInfo = findAllScripts(doc);\r\n exceptionPartB[_DYN_PROPERTIES /* @min:%2eproperties */][\"exceptionScripts\"] = JSON.stringify(scriptsInfo);\r\n }\r\n if (_expCfg === null || _expCfg === void 0 ? void 0 : _expCfg.expLog) {\r\n var logs = _expCfg.expLog();\r\n if (logs && logs.logs && isArray(logs.logs)) {\r\n exceptionPartB[_DYN_PROPERTIES /* @min:%2eproperties */][\"exceptionLog\"] = logs.logs.slice(0, _expCfg.maxLogs).join(\"\\n\");\r\n }\r\n }\r\n var telemetryItem = createTelemetryItem(exceptionPartB, ExceptionDataType, ExceptionEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), customProperties, systemProperties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n };\r\n /**\r\n * Log an exception you have caught.\r\n *\r\n * @param exception - Object which contains exception to be sent\r\n * @param } customProperties Additional data used to filter pages and metrics in the portal. Defaults to empty.\r\n *\r\n * Any property of type double will be considered a measurement, and will be treated by Application Insights as a metric.\r\n */\r\n _self.trackException = function (exception, customProperties) {\r\n if (exception && !exception.exception && exception[_DYN_ERROR /* @min:%2eerror */]) {\r\n exception.exception = exception[_DYN_ERROR /* @min:%2eerror */];\r\n }\r\n try {\r\n _self[_DYN_SEND_EXCEPTION_INTER5 /* @min:%2esendExceptionInternal */](exception, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 35 /* _eInternalMessageId.TrackExceptionFailed */, \"trackException failed, exception will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n /**\r\n * @description Custom error handler for Application Insights Analytics\r\n * @param exception\r\n */\r\n _self._onerror = function (exception) {\r\n var error = exception && exception[_DYN_ERROR /* @min:%2eerror */];\r\n var evt = exception && exception.evt;\r\n try {\r\n if (!evt) {\r\n var _window = getWindow();\r\n if (_window) {\r\n evt = _window[strEvent];\r\n }\r\n }\r\n var url = (exception && exception.url) || (getDocument() || {}).URL;\r\n // If no error source is provided assume the default window.onerror handler\r\n var errorSrc = exception.errorSrc || \"window.onerror@\" + url + \":\" + (exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0) + \":\" + (exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0);\r\n var properties = {\r\n errorSrc: errorSrc,\r\n url: url,\r\n lineNumber: exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0,\r\n columnNumber: exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0,\r\n message: exception.message\r\n };\r\n if (isCrossOriginError(exception.message, exception.url, exception.lineNumber, exception.columnNumber, exception[_DYN_ERROR /* @min:%2eerror */])) {\r\n _sendCORSException(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](\"Script error: The browser's same-origin policy prevents us from getting the details of this exception. Consider using the 'crossorigin' attribute.\", url, exception[_DYN_LINE_NUMBER /* @min:%2elineNumber */] || 0, exception[_DYN_COLUMN_NUMBER /* @min:%2ecolumnNumber */] || 0, error, evt, null, errorSrc), properties);\r\n }\r\n else {\r\n if (!exception.errorSrc) {\r\n exception.errorSrc = errorSrc;\r\n }\r\n _self.trackException({ exception: exception, severityLevel: 3 /* eSeverityLevel.Error */ }, properties);\r\n }\r\n }\r\n catch (e) {\r\n var errorString = error ? (error.name + \", \" + error.message) : \"null\";\r\n _throwInternal(1 /* eLoggingSeverity.CRITICAL */, 11 /* _eInternalMessageId.ExceptionWhileLoggingError */, \"_onError threw exception while logging error, error will not be collected: \"\r\n + getExceptionName(e), { exception: dumpObj(e), errorString: errorString });\r\n }\r\n };\r\n _self[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */] = function (telemetryInitializer) {\r\n if (_self[_DYN_CORE /* @min:%2ecore */]) {\r\n // Just add to the core\r\n return _self[_DYN_CORE /* @min:%2ecore */][_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](telemetryInitializer);\r\n }\r\n // Handle \"pre-initialization\" telemetry initializers (for backward compatibility)\r\n if (!_preInitTelemetryInitializers) {\r\n _preInitTelemetryInitializers = [];\r\n }\r\n _preInitTelemetryInitializers.push(telemetryInitializer);\r\n };\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (_self.isInitialized()) {\r\n return;\r\n }\r\n if (isNullOrUndefined(core)) {\r\n throwError(\"Error initializing\");\r\n }\r\n _base.initialize(config, core, extensions, pluginChain);\r\n try {\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(_self.identifier), core.evtNamespace && core.evtNamespace());\r\n if (_preInitTelemetryInitializers) {\r\n arrForEach(_preInitTelemetryInitializers, function (initializer) {\r\n core[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](initializer);\r\n });\r\n _preInitTelemetryInitializers = null;\r\n }\r\n _populateDefaults(config);\r\n _pageViewPerformanceManager = createPageViewPerformanceManager(_self[_DYN_CORE /* @min:%2ecore */]);\r\n _pageViewManager = createPageViewManager(_self, _extConfig.overridePageViewDuration, _self[_DYN_CORE /* @min:%2ecore */], _pageViewPerformanceManager);\r\n _pageVisitTimeManager = createPageVisitTimeManager(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), function (pageName, pageUrl, pageVisitTime) { return trackPageVisitTime(pageName, pageUrl, pageVisitTime); });\r\n _eventTracking = createTiming(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), \"trackEvent\");\r\n _eventTracking.action =\r\n function (name, url, duration, properties, measurements) {\r\n if (!properties) {\r\n properties = {};\r\n }\r\n if (!measurements) {\r\n measurements = {};\r\n }\r\n properties.duration = duration[_DYN_TO_STRING /* @min:%2etoString */]();\r\n _self.trackEvent({ name: name, properties: properties, measurements: measurements });\r\n };\r\n // initialize page view timing\r\n _pageTracking = createTiming(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), \"trackPageView\");\r\n _pageTracking.action = function (name, url, duration, properties, measurements) {\r\n // duration must be a custom property in order for the collector to extract it\r\n if (isNullOrUndefined(properties)) {\r\n properties = {};\r\n }\r\n properties.duration = duration[_DYN_TO_STRING /* @min:%2etoString */]();\r\n var pageViewItem = {\r\n name: name,\r\n uri: url,\r\n properties: properties,\r\n measurements: measurements\r\n };\r\n _self[_DYN_SEND_PAGE_VIEW_INTER2 /* @min:%2esendPageViewInternal */](pageViewItem, properties);\r\n };\r\n if (hasWindow()) {\r\n _updateExceptionTracking();\r\n _updateLocationChange();\r\n }\r\n }\r\n catch (e) {\r\n // resetting the initialized state because of failure\r\n _self.setInitialized(false);\r\n throw e;\r\n }\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n _pageViewManager && _pageViewManager.teardown(unloadCtx, unloadState);\r\n // Just register to remove all events associated with this namespace\r\n eventOff(window, null, null, _evtNamespace);\r\n _initDefaults();\r\n };\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_errorHookCnt, _autoExceptionInstrumented];\r\n };\r\n function _resetAjaxAttempts() {\r\n // Reset ajax attempts counter for the new page view\r\n if (_self[_DYN_CORE /* @min:%2ecore */]) {\r\n var ajaxPlugin = _self[_DYN_CORE /* @min:%2ecore */].getPlugin(\"AjaxDependencyPlugin\");\r\n if (ajaxPlugin && ajaxPlugin.plugin && ajaxPlugin.plugin.resetAjaxAttempts) {\r\n ajaxPlugin.plugin.resetAjaxAttempts();\r\n }\r\n }\r\n }\r\n function _populateDefaults(config) {\r\n // it is used for 1DS as well, so config type should be IConfiguration only\r\n var identifier = _self.identifier;\r\n var core = _self[_DYN_CORE /* @min:%2ecore */];\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(config, function () {\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n _extConfig = ctx.getExtCfg(identifier, defaultValues);\r\n // make sure auto exception is instrumented only once and it won't be overriden by the following config changes\r\n _autoExceptionInstrumented = _autoExceptionInstrumented || config[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */] || _extConfig[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */];\r\n _expCfg = _extConfig.expCfg;\r\n _autoTrackPageVisitTime = _extConfig[_DYN_AUTO_TRACK_PAGE_VISI10 /* @min:%2eautoTrackPageVisitTime */];\r\n // Initialize new trace context configuration options\r\n _routeTraceStrategy = _extConfig.routeTraceStrategy || 0 /* eRouteTraceStrategy.Server */;\r\n if (config.storagePrefix) {\r\n utlSetStoragePrefix(config.storagePrefix);\r\n }\r\n _updateStorageUsage(_extConfig);\r\n // _updateBrowserLinkTracking\r\n _isBrowserLinkTrackingEnabled = _extConfig[_DYN_IS_BROWSER_LINK_TRAC11 /* @min:%2eisBrowserLinkTrackingEnabled */];\r\n _addDefaultTelemetryInitializers();\r\n }));\r\n }\r\n /**\r\n * Log a page visit time\r\n * @param pageName - Name of page\r\n * @param pageVisitDuration - Duration of visit to the page in milliseconds\r\n */\r\n function trackPageVisitTime(pageName, pageUrl, pageVisitTime) {\r\n var properties = { PageName: pageName, PageUrl: pageUrl };\r\n _self.trackMetric({\r\n name: \"PageVisitTime\",\r\n average: pageVisitTime,\r\n max: pageVisitTime,\r\n min: pageVisitTime,\r\n sampleCount: 1\r\n }, properties);\r\n }\r\n function _addDefaultTelemetryInitializers() {\r\n if (!_browserLinkInitializerAdded && _isBrowserLinkTrackingEnabled) {\r\n var browserLinkPaths_1 = [\"/browserLinkSignalR/\", \"/__browserLink/\"];\r\n var dropBrowserLinkRequests = function (envelope) {\r\n if (_isBrowserLinkTrackingEnabled && envelope.baseType === RemoteDependencyDataType) {\r\n var remoteData = envelope.baseData;\r\n if (remoteData) {\r\n for (var i = 0; i < browserLinkPaths_1[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (remoteData.target && strIndexOf(remoteData.target, browserLinkPaths_1[i]) >= 0) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n return true;\r\n };\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](_self[_DYN_ADD_TELEMETRY_INITIA7 /* @min:%2eaddTelemetryInitializer */](dropBrowserLinkRequests));\r\n _browserLinkInitializerAdded = true;\r\n }\r\n }\r\n function _sendCORSException(exception, properties) {\r\n var telemetryItem = createTelemetryItem(exception, ExceptionDataType, ExceptionEnvelopeType, _self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), properties);\r\n _self[_DYN_CORE /* @min:%2ecore */][_DYN_TRACK /* @min:%2etrack */](telemetryItem);\r\n }\r\n function _updateExceptionTracking() {\r\n var _window = getWindow();\r\n var locn = getLocation(true);\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _disableExceptionTracking = _extConfig.disableExceptionTracking;\r\n if (!_disableExceptionTracking && !_autoExceptionInstrumented && !_extConfig[_DYN_AUTO_EXCEPTION_INSTR9 /* @min:%2eautoExceptionInstrumented */]) {\r\n // We want to enable exception auto collection and it has not been done so yet\r\n _addHook(InstrumentEvent(_window, \"onerror\", {\r\n ns: _evtNamespace,\r\n rsp: function (callDetails, message, url, lineNumber, columnNumber, error) {\r\n if (!_disableExceptionTracking && callDetails.rslt !== true) {\r\n _self._onerror(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](message, url, lineNumber, columnNumber, error, callDetails.evt));\r\n }\r\n }\r\n }, false));\r\n _errorHookCnt++;\r\n _autoExceptionInstrumented = true;\r\n }\r\n }));\r\n _addUnhandledPromiseRejectionTracking(_window, locn);\r\n }\r\n function _updateLocationChange() {\r\n var win = getWindow();\r\n var locn = getLocation(true);\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _enableAutoRouteTracking = _extConfig[_DYN_ENABLE_AUTO_ROUTE_TR12 /* @min:%2eenableAutoRouteTracking */] === true;\r\n /**\r\n * Create a custom \"locationchange\" event which is triggered each time the history object is changed\r\n */\r\n if (win && _enableAutoRouteTracking && !_historyListenerAdded && hasHistory()) {\r\n var _history = getHistory();\r\n if (isFunction(_history.pushState) && isFunction(_history.replaceState) && typeof Event !== strUndefined) {\r\n _addHistoryListener(win, _history, locn);\r\n }\r\n }\r\n }));\r\n }\r\n /**\r\n * Create a custom \"locationchange\" event which is triggered each time the history object is changed\r\n */\r\n function _addHistoryListener(win, history, locn) {\r\n if (_historyListenerAdded) {\r\n return;\r\n }\r\n // Name Prefix is only referenced during the initial initialization and cannot be changed afterwards\r\n var namePrefix = _extConfig.namePrefix || \"\";\r\n function _popstateHandler() {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n function _locationChangeHandler() {\r\n // We always track the changes (if the handler is installed) to handle the feature being disabled between location changes\r\n if (_currUri) {\r\n _prevUri = _currUri;\r\n _currUri = locn && locn[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n else {\r\n _currUri = locn && locn[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n }\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n _currUri = fieldRedaction(_currUri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n if (_enableAutoRouteTracking) {\r\n // TODO(OTelSpan) (create new \"context\") / spans for the new page view\r\n // Should \"end\" any previous span (once we have a new one)\r\n var newContext = void 0;\r\n // Quick and dirty backward compatibility check -- should never be needed but here to avoid a JS exception\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */]) {\r\n var currentContext = _self[_DYN_CORE /* @min:%2ecore */][_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */](false); // Get current context without creating new\r\n if (currentContext && _routeTraceStrategy === 1 /* eRouteTraceStrategy.Page */) {\r\n // Create new context with the determined parent\r\n newContext = createDistributedTraceContext(currentContext);\r\n }\r\n else {\r\n // Fall back to original behavior - use server context as parent\r\n newContext = _self[_DYN_CORE /* @min:%2ecore */][_DYN_GET_TRACE_CTX /* @min:%2egetTraceCtx */](true);\r\n }\r\n // Always generate new trace ID for route changes (this also generates new span ID)\r\n newContext.traceId = generateW3CId();\r\n // This populates the ai.operation.name which has a maximum size of 1024 so we need to sanitize it\r\n newContext.pageName = dataSanitizeString(_self[_DYN_DIAG_LOG /* @min:%2ediagLog */](), newContext.pageName || \"_unknown_\");\r\n _self[_DYN_CORE /* @min:%2ecore */].setTraceCtx(newContext);\r\n }\r\n // Single page view tracking call for all scenarios\r\n scheduleTimeout((function (uri) {\r\n _self[_DYN_TRACK_PAGE_VIEW /* @min:%2etrackPageView */]({ refUri: uri, properties: { duration: 0 } });\r\n }).bind(_self, _prevUri), _self.autoRoutePVDelay);\r\n }\r\n }\r\n _addHook(InstrumentEvent(history, \"pushState\", {\r\n ns: _evtNamespace,\r\n rsp: function () {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"pushState\"));\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n }, true));\r\n _addHook(InstrumentEvent(history, \"replaceState\", {\r\n ns: _evtNamespace,\r\n rsp: function () {\r\n if (_enableAutoRouteTracking) {\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"replaceState\"));\r\n _dispatchEvent(win, createDomEvent(namePrefix + \"locationchange\"));\r\n }\r\n }\r\n }, true));\r\n eventOn(win, namePrefix + \"popstate\", _popstateHandler, _evtNamespace);\r\n eventOn(win, namePrefix + \"locationchange\", _locationChangeHandler, _evtNamespace);\r\n _historyListenerAdded = true;\r\n }\r\n function _addUnhandledPromiseRejectionTracking(_window, _location) {\r\n _self[_DYN__ADD_HOOK /* @min:%2e_addHook */](onConfigChange(_extConfig, function () {\r\n _enableUnhandledPromiseRejectionTracking = _extConfig[_DYN_ENABLE_UNHANDLED_PRO13 /* @min:%2eenableUnhandledPromiseRejectionTracking */] === true;\r\n _autoExceptionInstrumented = _autoExceptionInstrumented || _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:%2eautoUnhandledPromiseInstrumented */];\r\n if (_enableUnhandledPromiseRejectionTracking && !_autoUnhandledPromiseInstrumented) {\r\n // We want to enable exception auto collection and it has not been done so yet\r\n _addHook(InstrumentEvent(_window, \"onunhandledrejection\", {\r\n ns: _evtNamespace,\r\n rsp: function (callDetails, error) {\r\n if (_enableUnhandledPromiseRejectionTracking && callDetails.rslt !== true) { // handled could be typeof function\r\n _self._onerror(Exception[_DYN__CREATE_AUTO_EXCEPTI6 /* @min:%2eCreateAutoException */](_getReason(error), _location ? _location[_DYN_HREF /* @min:%2ehref */] : \"\", 0, 0, error, callDetails.evt));\r\n }\r\n }\r\n }, false));\r\n _errorHookCnt++;\r\n _extConfig[_DYN_AUTO_UNHANDLED_PROMI14 /* @min:%2eautoUnhandledPromiseInstrumented */] = _autoUnhandledPromiseInstrumented = true;\r\n }\r\n }));\r\n }\r\n /**\r\n * This method will throw exceptions in debug mode or attempt to log the error as a console warning.\r\n * @param severity - The severity of the log message\r\n * @param msgId - The log message.\r\n */\r\n function _throwInternal(severity, msgId, msg, properties, isUserAct) {\r\n _self[_DYN_DIAG_LOG /* @min:%2ediagLog */]().throwInternal(severity, msgId, msg, properties, isUserAct);\r\n }\r\n function _initDefaults() {\r\n _eventTracking = null;\r\n _pageTracking = null;\r\n _pageViewManager = null;\r\n _pageViewPerformanceManager = null;\r\n _pageVisitTimeManager = null;\r\n _preInitTelemetryInitializers = null;\r\n _isBrowserLinkTrackingEnabled = false;\r\n _browserLinkInitializerAdded = false;\r\n _enableAutoRouteTracking = false;\r\n _historyListenerAdded = false;\r\n _disableExceptionTracking = false;\r\n _autoExceptionInstrumented = false;\r\n _enableUnhandledPromiseRejectionTracking = false;\r\n _autoUnhandledPromiseInstrumented = false;\r\n _autoTrackPageVisitTime = false;\r\n // Reset ajax attempts counter\r\n _resetAjaxAttempts();\r\n // array with max length of 2 that store current url and previous url for SPA page route change trackPageview use.\r\n var location = getLocation(true);\r\n _prevUri = location && location[_DYN_HREF /* @min:%2ehref */] || \"\";\r\n if (_self[_DYN_CORE /* @min:%2ecore */] && _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]) {\r\n _prevUri = fieldRedaction(_prevUri, _self[_DYN_CORE /* @min:%2ecore */][_DYN_CONFIG /* @min:%2econfig */]);\r\n }\r\n _currUri = null;\r\n _evtNamespace = null;\r\n _extConfig = null;\r\n _errorHookCnt = 0;\r\n // Define _self.config\r\n objDefine(_self, \"config\", {\r\n g: function () { return _extConfig; }\r\n });\r\n }\r\n // For backward compatibility\r\n objDefine(_self, \"_pageViewManager\", { g: function () { return _pageViewManager; } });\r\n objDefine(_self, \"_pageViewPerformanceManager\", { g: function () { return _pageViewPerformanceManager; } });\r\n objDefine(_self, \"_pageVisitTimeManager\", { g: function () { return _pageVisitTimeManager; } });\r\n objDefine(_self, \"_evtNamespace\", { g: function () { return \".\" + _evtNamespace; } });\r\n });\r\n return _this;\r\n }\r\n// Removed Stub for AnalyticsPlugin.prototype.getCookieMgr.\r\n// Removed Stub for AnalyticsPlugin.prototype.processTelemetry.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackEvent.\r\n// Removed Stub for AnalyticsPlugin.prototype.startTrackEvent.\r\n// Removed Stub for AnalyticsPlugin.prototype.stopTrackEvent.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackTrace.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackMetric.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackPageView.\r\n// Removed Stub for AnalyticsPlugin.prototype.sendPageViewInternal.\r\n// Removed Stub for AnalyticsPlugin.prototype.sendPageViewPerformanceInternal.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackPageViewPerformance.\r\n// Removed Stub for AnalyticsPlugin.prototype.startTrackPage.\r\n// Removed Stub for AnalyticsPlugin.prototype.stopTrackPage.\r\n// Removed Stub for AnalyticsPlugin.prototype.sendExceptionInternal.\r\n// Removed Stub for AnalyticsPlugin.prototype.trackException.\r\n// Removed Stub for AnalyticsPlugin.prototype._onerror.\r\n// Removed Stub for AnalyticsPlugin.prototype.addTelemetryInitializer.\r\n// Removed Stub for AnalyticsPlugin.prototype.initialize.\r\n AnalyticsPlugin.Version = '3.4.1'; // Not currently used anywhere\r\n return AnalyticsPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { AnalyticsPlugin };\r\n//# sourceMappingURL=AnalyticsPlugin.js.map"],"names":["_DYN_TO_STRING","_DYN_IS_STORAGE_USE_DISAB0","_DYN__ADD_HOOK","_DYN_CORE","_DYN_DIAG_LOG","_DYN_TRACK","_DYN_TRACK_PAGE_VIEW","_DYN_CONFIG","_DYN_TRACK_PREVIOUS_PAGE_1","_DYN_SEND_PAGE_VIEW_INTER2","_DYN_REF_URI","_DYN_START_TIME","_DYN_PROPERTIES","_DYN_DURATION","_DYN_SEND_PAGE_VIEW_PERFO3","_DYN_POPULATE_PAGE_VIEW_P4","_DYN_HREF","_DYN_SEND_EXCEPTION_INTER5","_DYN_ERROR","_DYN_LINE_NUMBER","_DYN_COLUMN_NUMBER","_DYN__CREATE_AUTO_EXCEPTI6","_DYN_ADD_TELEMETRY_INITIA7","_DYN_OVERRIDE_PAGE_VIEW_D8","_DYN_AUTO_EXCEPTION_INSTR9","_DYN_AUTO_TRACK_PAGE_VISI10","_DYN_IS_BROWSER_LINK_TRAC11","_DYN_LENGTH","_DYN_ENABLE_AUTO_ROUTE_TR12","_DYN_GET_TRACE_CTX","_DYN_ENABLE_UNHANDLED_PRO13","_DYN_AUTO_UNHANDLED_PROMI14","_DYN_GET_ENTRIES_BY_TYPE","_DYN_IS_PERFORMANCE_TIMIN15","_DYN_GET_PERFORMANCE_TIMI16","_DYN_NAVIGATION_START","_DYN_SHOULD_COLLECT_DURAT17","_DYN_IS_PERFORMANCE_TIMIN18","_DYN_RESPONSE_START","_DYN_REQUEST_START","_DYN_LOAD_EVENT_END","_DYN_RESPONSE_END","_DYN_CONNECT_END","_DYN_PAGE_VISIT_TIME","createPageViewManager","appInsights","overridePageViewDuration","core","pageViewPerformanceManager","_a","queueTimer","itemQueue","pageViewPerformanceSent","firstPageViewSent","_logger","_flushChannels","isAsync","_startTimer","scheduleTimeout","allItems","doFlush","arrForEach","item","_addQueue","cb","pageView","customProperties","name","isNullOrUndefined","doc","getDocument","uri","location_1","getLocation","fieldRedaction","perf","getPerformance","navigationEntries","isUndefined","loadEventStart","duration_1","isWebWorker","_throwInternal","pageViewSent","customDuration","start","dateTimeUtilsDuration","duration","maxDurationLimit","processed","pageViewPerformance","e","getExceptionName","dumpObj","unloadCtx","unloadState","MAX_DURATION_ALLOWED","botAgentNames","_isPerformanceTimingSupported","_isPerformanceNavigationTimingSupported","_isPerformanceTimingDataReady","timing","_getPerformanceTiming","_getPerformanceNavigationTiming","_shouldCollectDuration","durations","_i","_navigator","getNavigator","userAgent","isGoogleBot","i","strIndexOf","createPageViewPerformanceManager","safeGetLogger","navigationTiming","total","network","request","response","dom","mathFloor","msToTimeSpan","createPageVisitData","pageName","pageUrl","dateNow","createPageVisitTimeManager","logger","pageVisitTimeTrackingHandler","prevPageVisitDataKeyName","restartPageVisitTimer","prevPageVisitData","stopPageVisitTimer","utlCanUseSessionStorage","utlGetSessionStorage","throwError","currPageVisitDataStr","getJSON","utlSetSessionStorage","_warnToConsole","pageVisitEndTime","pageVisitDataJsonStr","hasJSON","utlRemoveSessionStorage","currentPageName","currentPageUrl","prevPageVisitTimeData","createTiming","_events","url","properties","measurements","end","strEvent","_dispatchEvent","target","evnt","_getReason","error","reason","isString","isFunction","MinMilliSeconds","defaultValues","objDeepFreeze","cfgDfSet","_chkConfigMilliseconds","cfgDfBoolean","cfgDfValidate","_chkSampling","cfgDfString","cfgDfMerge","value","defValue","_updateStorageUsage","extConfig","utlDisableStorage","utlEnableStorage","AnalyticsPlugin","_super","__extends","_this","AnalyticsPluginIdentifier","_eventTracking","_pageTracking","_pageViewManager","_pageViewPerformanceManager","_pageVisitTimeManager","_preInitTelemetryInitializers","_isBrowserLinkTrackingEnabled","_browserLinkInitializerAdded","_enableAutoRouteTracking","_historyListenerAdded","_disableExceptionTracking","_autoExceptionInstrumented","_enableUnhandledPromiseRejectionTracking","_autoUnhandledPromiseInstrumented","_extConfig","_autoTrackPageVisitTime","_expCfg","_routeTraceStrategy","_prevUri","_currUri","_evtNamespace","_errorHookCnt","dynamicProto","_self","_base","_addHook","_initDefaults","safeGetCookieMgr","env","itemCtx","event","telemetryItem","createTelemetryItem","EventDataType","EventEnvelopeType","trace","TraceDataType","TraceEnvelopeType","metric","MetricDataType","MetricEnvelopeType","inPv","__assign","systemProperties","PageViewDataType","PageViewEnvelopeType","_resetAjaxAttempts","PageViewPerformanceDataType","PageViewPerformanceEnvelopeType","inPvp","measurement","loc","exception","theError","isError","strNotSpecified","exceptionPartB","Exception","scriptsInfo","findAllScripts","logs","isArray","ExceptionDataType","ExceptionEnvelopeType","evt","_window","getWindow","errorSrc","isCrossOriginError","_sendCORSException","errorString","telemetryInitializer","config","extensions","pluginChain","mergeEvtNamespace","createUniqueNamespace","initializer","_populateDefaults","pageVisitTime","trackPageVisitTime","pageViewItem","hasWindow","_updateExceptionTracking","_updateLocationChange","eventOff","ajaxPlugin","identifier","onConfigChange","ctx","createProcessTelemetryContext","utlSetStoragePrefix","_addDefaultTelemetryInitializers","browserLinkPaths_1","dropBrowserLinkRequests","envelope","RemoteDependencyDataType","remoteData","locn","InstrumentEvent","callDetails","message","lineNumber","columnNumber","_addUnhandledPromiseRejectionTracking","win","hasHistory","_history","getHistory","strUndefined","_addHistoryListener","history","namePrefix","_popstateHandler","createDomEvent","_locationChangeHandler","newContext","currentContext","createDistributedTraceContext","generateW3CId","dataSanitizeString","eventOn","_location","severity","msgId","msg","isUserAct","location","objDefine","BaseTelemetryPlugin"],"mappings":";;;;AAaO,IAAIA,KAAiB,YACjBC,KAA6B,wBAC7BC,KAAiB,YACjBC,IAAY,QACZC,IAAgB,WAChBC,IAAa,SACbC,KAAuB,iBACvBC,IAAc,UACdC,KAA6B,0BAC7BC,IAA6B,wBAC7BC,KAAe,UACfC,KAAkB,aAClBC,KAAkB,cAClBC,IAAgB,YAChBC,KAA6B,mCAC7BC,KAA6B,oCAC7BC,KAAY,QACZC,KAA6B,yBAC7BC,KAAa,SACbC,KAAmB,cACnBC,KAAqB,gBACrBC,KAA6B,uBAC7BC,KAA6B,2BAC7BC,KAA6B,4BAC7BC,KAA6B,6BAC7BC,KAA8B,0BAC9BC,KAA8B,gCAC9BC,KAAc,UACdC,KAA8B,2BAC9BC,KAAqB,eACrBC,KAA8B,2CAC9BC,KAA8B,oCAC9BC,KAA2B,oBAC3BC,KAA8B,gCAC9BC,KAA8B,wBAC9BC,KAAwB,mBACxBC,KAA8B,yBAC9BC,KAA8B,gCAC9BC,KAAsB,iBACtBC,KAAqB,gBACrBC,KAAsB,gBACtBC,KAAoB,eACpBC,KAAmB,cACnBC,KAAuB;ACtC3B,SAASC,GAAsBC,GAAaC,GAA0BC,GAAMC,GAA4B;AAC3G,MAAIC,GACAC,IAAa,MACbC,IAAY,CAAA,GACZC,IAA0B,IAC1BC,IAAoB,IACpBC;AACJ,EAAIP,MACAO,IAAUP,EAAK;AAEnB,WAASQ,EAAeC,GAAS;AAC7B,IAAIT,KACAA,EAAK,MAAMS,GAAS,WAAY;AAAA,IAEhC,CAAC;AAAA,EAET;AACA,WAASC,IAAc;AACnB,IAAKP,MACDA,IAAaQ,IAAiB,WAAY;AACtC,MAAAR,IAAa;AACb,UAAIS,IAAWR,EAAU,MAAM,CAAC,GAC5BS,IAAU;AACd,MAAAT,IAAY,CAAA,GACZU,GAAWF,GAAU,SAAUG,GAAM;AACjC,QAAKA,EAAI,IAKLF,IAAU,KAHVT,EAAU,KAAKW,CAAI;AAAA,MAK3B,CAAC,GACGX;AAAA,QAAUxB;AAAA;AAAA,MAAW,IAAyB,KAC9C8B,KAEAG,KAEAL,EAAe,EAAI;AAAA,IAE3B,IAAI,GAAG;AAAA,EAEf;AACA,WAASQ,EAAUC,GAAI;AACnB,IAAAb,EAAU,KAAKa,CAAE,GACjBP;EACJ;AACA,SAAOR,IAAK,CAAA,GACRA;AAAA,IAAG3C;AAAA;AAAA,EAAoB,IAA6B,SAAU2D,GAAUC,GAAkB;AACtF,QAAIC,IAAOF,EAAS;AACpB,QAAIG,EAAkBD,CAAI,KAAK,OAAOA,KAAS,UAAU;AACrD,UAAIE,IAAMC;AACV,MAAAH,IAAOF,EAAS,OAAOI,KAAOA,EAAI,SAAS;AAAA,IAC/C;AACA,QAAIE,IAAMN,EAAS;AACnB,QAAIG,EAAkBG,CAAG,KAAK,OAAOA,KAAQ,UAAU;AACnD,UAAIC,IAAaC;AACjB,MAAAF,IAAMN,EAAS,MAAMO,KAAcA;AAAA,QAAWxD;AAAA;AAAA,MAAS,KAAwB;AAAA,IACnF;AAIA,QAHI+B,KAAQA;AAAA,MAAKxC;AAAA;AAAA,UACbgE,IAAMN,EAAS,MAAMS,GAAeT,EAAS,KAAKlB;AAAA,MAAKxC;AAAA;AAAA,IAAW,CAAsB,IAExF,CAAC8C,GAAmB;AACpB,UAAIsB,IAAOC,MAEPC,IAAqBF,KAAQA;AAAA,QAAK3C;AAAA;AAAA,MAAwB,KAAoC2C;AAAA,QAAK3C;AAAA;AAAA,MAAwB,EAAiC,YAAY;AAE5K,UAAI6C,KAAqBA,EAAkB,CAAC,KAAK,CAACC,GAAYH,EAAK,UAAU,GAAG;AAE5E,YAAII,IAAiBF,EAAkB,CAAC,EAAE;AAC1C,QAAAZ;AAAA,UAAStD;AAAA;AAAA,QAAe,IAA4B,IAAI,KAAKgE,EAAK,aAAaI,CAAc;AAAA,MACjG,OACK;AAED,YAAIC,KAAed,KAAoBD;AAAA,UAASrD;AAAA;AAAA,QAAe,KAA8B;UAAIC;AAAA;AAAA,aAAyC;AAC1I,QAAAoD;AAAA,UAAStD;AAAA;AAAA,QAAe,IAA4B,IAAI,MAAK,oBAAI,QAAO,YAAYqE,CAAU;AAAA,MAClG;AACA,MAAA3B,IAAoB;AAAA,IACxB;AAIA,QAAI,CAACL;AAAA,MAA2Bf;AAAA;AAAA,IAA2B,KAAgD;AACvG,MAAAY;AAAA,QAAYpC;AAAA;AAAA,MAA0B,EAAqCwD,GAAUC,CAAgB,GACrGX,EAAe,EAAI,GACd0B,GAAW,KAEZC,EAAe5B,GAAS,GAAkC,IAA2D,iLAAiL;AAE1S;AAAA,IACJ;AACA,QAAI6B,IAAe,IACfC,GAEAC,IAAQrC;AAAA,MAA2Bd;AAAA;AAAA,IAA2B,EAAoC;AAAA,MAAGC;AAAA;AAAA,IAAqB;AAC9H,IAAIkD,IAAQ,MACRD,IAAiBE,EAAsBD,GAAO,CAAC,oBAAI,MAAI,GAClDrC;AAAA,MAA2BZ;AAAA;AAAA,IAA2B,EAAsCgD,CAAc,MAC3GA,IAAiB;AAKzB,QAAIG;AACJ,IAAI,CAACnB,EAAkBF,CAAgB,KACnC,CAACE,EAAkBF;AAAA,MAAiBrD;AAAA;AAAA,IAAa,CAAwB,MACzE0E,IAAWrB;AAAA,MAAiBrD;AAAA;AAAA,SAE5BiC,KAA4B,CAAC,MAAMyC,CAAQ,OACvC,MAAMA,CAAQ,MAETrB,MACDA,IAAmB,CAAA,IAEvBA;AAAA,MAAiBrD;AAAA;AAAA,IAAa,IAA2BuE,IAG7DvC;AAAA,MAAYpC;AAAA;AAAA,IAA0B,EAAqCwD,GAAUC,CAAgB,GACrGX,EAAe,EAAI,GACnB4B,IAAe;AAGnB,QAAIK,IAAmB;AACvB,IAAKtB,MACDA,IAAmB,CAAA,IAGvBH,EAAU,WAAY;AAClB,UAAI0B,IAAY;AAChB,UAAI;AACA,YAAIzC;AAAA,UAA2BX;AAAA;AAAA,QAA2B,KAAgD;AACtG,UAAAoD,IAAY;AACZ,cAAIC,IAAsB;AAAA,YACtB,MAAMvB;AAAA,YACN,KAAKI;AAAA,UACjC;AACwB,UAAAvB;AAAA,YAA2BjC;AAAA;AAAA,YAA2E2E,CAAmB,GACrH,CAACA,EAAoB,WAAW,CAACP,KAGjCjB;AAAA,YAAiBrD;AAAA;AAAA,UAAa,IAA2BuE,GACzDvC;AAAA,YAAYpC;AAAA;AAAA,UAA0B,EAAqCwD,GAAUC,CAAgB,MAGhGiB,MACDjB;AAAA,YAAiBrD;AAAA;AAAA,UAAa,IAA2B6E,EAAoB,YAC7E7C;AAAA,YAAYpC;AAAA;AAAA,UAA0B,EAAqCwD,GAAUC,CAAgB,IAEpGd,MACDP;AAAA,YAAY/B;AAAA;AAAA,UAA0B,EAAgD4E,GAAqBxB,CAAgB,GAC3Hd,IAA0B;AAAA,QAGtC,MACK,CAAIiC,IAAQ,KAAKC,EAAsBD,GAAO,CAAC,oBAAI,MAAI,IAAIG,MAG5DC,IAAY,IACPN,MACDjB;AAAA,UAAiBrD;AAAA;AAAA,QAAa,IAA2B2E,GACzD3C;AAAA,UAAYpC;AAAA;AAAA,QAA0B,EAAqCwD,GAAUC,CAAgB;AAAA,MAGjH,SACOyB,IAAG;AACN,QAAAT,EAAe5B,GAAS,GAAmC,IAAgD,oDAAoDsC,EAAiBD,EAAC,GAAG,EAAE,WAAWE,EAAQF,EAAC,EAAC,CAAE;AAAA,MACjN;AACA,aAAOF;AAAA,IACX,CAAC;AAAA,EACL,GACAxC,EAAG,WAAW,SAAU6C,GAAWC,GAAa;AAC5C,QAAI7C,GAAY;AACZ,MAAAA,EAAW,OAAM,GACjBA,IAAa;AACb,UAAIS,IAAWR,EAAU,MAAM,CAAC;AAChC,MAAAA,IAAY,CAAA,GACZU,GAAWF,GAAU,SAAUG,GAAM;AACjC,QAAIA,EAAI;AAAA,MAGZ,CAAC;AAAA,IACL;AAAA,EACJ,GACAb;AACR;ACjMA,IAAI+C,KAAuB,MACvBC,KAAgB,CAAC,aAAa,iBAAiB,eAAe,sBAAsB;AACxF,SAASC,KAAgC;AACrC,MAAIvB,IAAOC;AACX,SAAOD,KAAQ,CAAC,CAACA,EAAK;AAC1B;AACA,SAASwB,KAA0C;AAC/C,MAAIxB,IAAOC;AACX,SAAOD,KAAQA,EAAK,oBAAoBA,EAAK,iBAAiB,YAAY;AAAA,IAAEhD;AAAA;AAAA,EAAW,IAAyB;AACpH;AACA,SAASyE,KAAgC;AACrC,MAAIzB,IAAOC,MACPyB,IAAS1B,IAAOA,EAAK,SAAS;AAClC,SAAO0B,KACAA,EAAO,oBAAoB,KAC3BA;AAAA,IAAOlE;AAAA;AAAA,EAAqB,IAAkC,KAC9DkE;AAAA,IAAO/D;AAAA;AAAA,EAAmB,IAAgC,KAC1D+D;AAAA,IAAO9D;AAAA;AAAA,EAAkB,IAA+B,KACxD8D;AAAA,IAAO7D;AAAA;AAAA,EAAmB,IAA+B,KACzD6D;AAAA,IAAO5D;AAAA;AAAA,EAAiB,IAA8B,KACtD4D;AAAA,IAAO3D;AAAA;AAAA,EAAgB,IAA6B,KACpD2D,EAAO,aAAa;AAC/B;AACA,SAASC,KAAwB;AAC7B,SAAIJ,GAA6B,IACtBtB,GAAc,EAAG,SAErB;AACX;AACA,SAAS2B,KAAkC;AACvC,SAAIJ,GAAuC,IAChCvB,GAAc;AAAA,IAAG5C;AAAA;AAAA,EAAwB,EAAiC,YAAY,EAAE,CAAC,IAE7F;AACX;AAIA,SAASwE,KAAyB;AAE9B,WADIC,IAAY,CAAA,GACPC,IAAK,GAAGA,IAAK,UAAU,QAAQA;AACpC,IAAAD,EAAUC,CAAE,IAAI,UAAUA,CAAE;AAEhC,MAAIC,IAAaC,GAAY,KAAM,IAE/BC,IAAYF,EAAW,WACvBG,IAAc;AAClB,MAAID;AACA,aAASE,IAAI,GAAGA,IAAId;AAAA,MAActE;AAAA;AAAA,IAAW,GAAwBoF;AACjE,MAAAD,IAAcA,KAAeE,GAAWH,EAAU,YAAW,GAAIZ,GAAcc,CAAC,CAAC,MAAM;AAG/F,MAAID;AAEA,WAAO;AAIP,WAASC,IAAI,GAAGA,IAAIN;AAAA,IAAU9E;AAAA;AAAA,EAAW,GAAwBoF;AAC7D,QAAIN,EAAUM,CAAC,IAAI,KAAKN,EAAUM,CAAC,KAAKf;AACpC,aAAO;AAInB,SAAO;AACX;AAOO,SAASiB,GAAiClE,GAAM;AACnD,MAAIE,GACAK,IAAU4D,GAAcnE,CAAI;AAChC,SAAOE,IAAK,CAAA,GACRA;AAAA,IAAGlC;AAAA;AAAA,MAA0E,SAAU2E,GAAqB;AACxG,IAAAA,EAAoB,UAAU;AAqB9B,QAAIyB,IAAmBZ,MACnBF,IAASC,MACTc,IAAQ,GACRC,IAAU,GACVC,IAAU,GACVC,IAAW,GACXC,IAAM;AACV,KAAIL,KAAoBd,OAChBc,KACAC,IAAQD;AAAA,MAAiBtG;AAAA;AAAA,OAMzBwG,IAAUF;AAAA,MAAiBxG;AAAA;AAAA,IAAe,MAA8B,IAAIwG;AAAA,MAAiBzE;AAAA;AAAA,IAAgB,IAA6B4C,EAAsB6B;AAAA,MAAiBxG;AAAA;AAAA,IAAe,GAA2BwG;AAAA,MAAiBzE;AAAA;AAAA,IAAgB,CAA0B,GACtR4E,IAAUhC,EAAsB6B,EAAiB,cAAcA;AAAA,MAAiB7E;AAAA;AAAA,IAAmB,CAA6B,GAChIiF,IAAWjC,EAAsB6B;AAAA,MAAiB7E;AAAA;AAAA,IAAmB,GAA+B6E;AAAA,MAAiB1E;AAAA;AAAA,IAAiB,CAA2B,GACjK+E,IAAMlC,EAAsB6B,EAAiB,aAAaA;AAAA,MAAiB3E;AAAA;AAAA,IAAmB,CAA4B,MAG1H4E,IAAQ9B,EAAsBe;AAAA,MAAOlE;AAAA;AAAA,IAAqB,GAAiCkE;AAAA,MAAO7D;AAAA;AAAA,IAAmB,CAA4B,GACjJ6E,IAAU/B,EAAsBe;AAAA,MAAOlE;AAAA;AAAA,IAAqB,GAAiCkE;AAAA,MAAO3D;AAAA;AAAA,IAAgB,CAA0B,GAC9I4E,IAAUhC,EAAsBe,EAAO,cAAcA;AAAA,MAAO/D;AAAA;AAAA,IAAmB,CAA6B,GAC5GiF,IAAWjC,EAAsBe;AAAA,MAAO/D;AAAA;AAAA,IAAmB,GAA+B+D;AAAA,MAAO5D;AAAA;AAAA,IAAiB,CAA2B,GAC7I+E,IAAMlC,EAAsBe,EAAO,aAAaA;AAAA,MAAO7D;AAAA;AAAA,IAAmB,CAA4B,IAEtG4E,MAAU,IACVlC,EAAe5B,GAAS,GAAkC,IAA0C,4CAA4C,EAAE,OAAO8D,GAAO,SAASC,GAAS,SAASC,GAAS,UAAUC,GAAU,KAAKC,EAAG,CAAE,IAE5NhB,GAAuBY,GAAOC,GAASC,GAASC,GAAUC,CAAG,IAG9DJ,IAAQK,GAAUJ,CAAO,IAAII,GAAUH,CAAO,IAAIG,GAAUF,CAAQ,IAAIE,GAAUD,CAAG,IAG1FtC,EAAe5B,GAAS,GAAkC,GAAwD,kCAAkC,EAAE,OAAO8D,GAAO,SAASC,GAAS,SAASC,GAAS,UAAUC,GAAU,KAAKC,EAAG,CAAE,KAGtO9B,EAAoB,aAAa0B,GAEjC1B,EAAoB,YAAYA;AAAA,MAAoB7E;AAAA;AAAA,IAAa,IAA2B6G,GAAaN,CAAK,GAC9G1B,EAAoB,iBAAiBgC,GAAaL,CAAO,GACzD3B,EAAoB,cAAcgC,GAAaJ,CAAO,GACtD5B,EAAoB,mBAAmBgC,GAAaH,CAAQ,GAC5D7B,EAAoB,gBAAgBgC,GAAaF,CAAG,GACpD9B,EAAoB,UAAU,MAf9BR,EAAe5B,GAAS,GAAkC,IAAmD,sEAAsE,EAAE,OAAO8D,GAAO,SAASC,GAAS,SAASC,GAAS,UAAUC,GAAU,KAAKC,EAAG,CAAE;AAAA,EAkBjR,GACAvE;AAAA,IAAGf;AAAA;AAAA,EAA2B,IAAoCoE,IAClErD;AAAA,IAAGhB;AAAA;AAAA,EAA2B,IAA4CiE,IAC1EjD;AAAA,IAAGZ;AAAA;AAAA,EAA2B,IAA4C+D,IAC1EnD;AAAA,IAAGb;AAAA;AAAA,EAA2B,IAAqCoE,IACnEvD;AACR;ACpJO,SAAS0E,GAAoBC,GAAUC,GAAS;AACnD,MAAI5E;AACJ,SAAOA,IAAK;AAAA,IACJ,oBAAoB6E,GAAO;AAAA,IAC3B,UAAUF;AAAA,IACV,SAASC;AAAA,EACrB,GACQ5E;AAAA,IAAGN;AAAA;AAAA,EAAoB,IAA6B,GACpDM;AACR;AAQO,SAAS8E,GAA2BC,GAAQC,GAA8B;AAC7E,MAAIhF,GACAiF,IAA2B;AAM/B,WAASC,EAAsBP,GAAUC,GAAS;AAC9C,QAAIO,IAAoB;AACxB,QAAI;AAEA,UADAA,IAAoBC,EAAkB,GAClCC,GAAuB,GAAI;AAC3B,QAAIC,GAAqBP,GAAQE,CAAwB,KAAK,QAC1DM,GAAW,8EAA8E;AAE7F,YAAIC,IAAuBC,KAAU,UAAUf,GAAoBC,GAAUC,CAAO,CAAC;AACrF,QAAAc,GAAqBX,GAAQE,GAA0BO,CAAoB;AAAA,MAC/E;AAAA,IACJ,SACO9C,GAAG;AACN,MAAAiD,GAAeZ,GAAQ,6BAA6BnC,EAAQF,CAAC,CAAC,GAC9DyC,IAAoB;AAAA,IACxB;AACA,WAAOA;AAAA,EACX;AAKA,WAASC,IAAqB;AAC1B,QAAID,IAAoB;AACxB,QAAI;AACA,UAAIE,GAAuB,GAAI;AAE3B,YAAIO,IAAmBf,MAEnBgB,IAAuBP,GAAqBP,GAAQE,CAAwB;AAChF,QAAIY,KAAwBC,SAExBX,IAAoBM,GAAO,EAAG,MAAMI,CAAoB,GACxDV;AAAA,UAAkBzF;AAAA;AAAA,QAAoB,IAAgCkG,IAAmBT,EAAkB,oBAE3GY,GAAwBhB,GAAQE,CAAwB;AAAA,MAEhE;AAAA,IACJ,SACOvC,GAAG;AACN,MAAAiD,GAAeZ,GAAQ,mCAAmCnC,EAAQF,CAAC,CAAC,GACpEyC,IAAoB;AAAA,IACxB;AACA,WAAOA;AAAA,EACX;AACA,SAAOnF,IAAK,CAAA,GACRA;AAAA,IAAGzC;AAAA;AAAA,EAA0B,IAAsC,SAAUyI,GAAiBC,GAAgB;AAC1G,QAAI;AAEA,UAAIC,IAAwBhB,EAAsBc,GAAiBC,CAAc;AAEjF,MAAIC,KACAlB,EAA6BkB,EAAsB,UAAUA,EAAsB,SAASA;AAAA,QAAsBxG;AAAA;AAAA,MAAoB,CAA6B;AAAA,IAE3K,SACOgD,GAAG;AACN,MAAAiD,GAAeZ,GAAQ,sEAAsEnC,EAAQF,CAAC,CAAC;AAAA,IAC3G;AAAA,EACJ;AAAA,EAEA1C,EAAG,UAAU+E,GACb/E,EAAG,+BAA+BgF,GAClChF;AACR;ACxFO,SAASmG,GAAapB,GAAQ7D,GAAM;AACvC,MAAIkF,IAAU,CAAA,GACVhD,IAAS;AAAA,IACT,QAAQ;AAAA,IACR,OAAO,SAAUlC,GAAM;AACnB,MAAI,OAAOkF,EAAQlF,CAAI,IAAM,OACzBe,EAAe8C,GAAQ,GAAkC,IAAsD,wEAAwE,EAAE,MAAM7D,GAAM,KAAKA,EAAI,GAAI,EAAI,GAE1NkF,EAAQlF,CAAI,IAAI,CAAC,oBAAI;AAAA,IACzB;AAAA,IACA,MAAM,SAAUA,GAAMmF,GAAKC,GAAYC,GAAc;AACjD,UAAInE,IAAQgE,EAAQlF,CAAI;AACxB,UAAI,MAAMkB,CAAK;AACX,QAAAH,EAAe8C,GAAQ,GAAkC,IAAqD,kDAAkD,EAAE,MAAM7D,GAAM,KAAKA,EAAI,GAAI,EAAI;AAAA,WAE9L;AACD,YAAIsF,IAAM,CAAC,oBAAI,QACXlE,IAAWD,EAAsBD,GAAOoE,CAAG;AAC/C,QAAApD,EAAO,OAAOlC,GAAMmF,GAAK/D,GAAUgE,GAAYC,CAAY;AAAA,MAC/D;AACA,aAAOH,EAAQlF,CAAI,GACnBkF,EAAQlF,CAAI,IAAI;AAAA,IACpB;AAAA,EACR;AACI,SAAOkC;AACX;AC/BA,IAAIpD,GAUAyG,KAAW;AACf,SAASC,GAAeC,GAAQC,GAAM;AAClC,EAAID,KAAUA,EAAO,iBAAiBC,KAClCD,EAAO,cAAcC,CAAI;AAEjC;AACA,SAASC,GAAWC,GAAO;AACvB,MAAIA,KAASA,EAAM,QAAQ;AACvB,QAAIC,IAASD,EAAM;AACnB,WAAI,CAACE,GAASD,CAAM,KAAKE,GAAWF;AAAA,MAAOhK;AAAA;AAAA,IAAc,CAAwB,IACtEgK;AAAA,MAAOhK;AAAA;AAAA,IAAc,MAEzB6F,EAAQmE,CAAM;AAAA,EACzB;AAEA,SAAOD,KAAS;AACpB;AACA,IAAII,KAAkB,KAClBC,KAAgBC,IAAepH,IAAK;AAAA,EAChC,kBAAkBqH,GAASC,IAAwB,OAAU,GAAI;AAAA,EACjE,qBAAqBD,GAASC,IAAwB,OAAU,KAAK,GAAI;AAAA,EACzE,0BAA0BC,EAAY;AAC9C,GACIvH;AAAA,EAAGxB;AAAA;AAA2B,IAAsC+I,EAAY,GAChFvH;AAAA,EAAG1B;AAAA;AAA0B,IAAwCiJ,EAAY,GACjFvH;AAAA,EAAGnB;AAAA;AAA2B,IAAuD0I,EAAY,GACjGvH;AAAA,EAAGlB;AAAA;AAA2B,IAAgD,IAC9EkB,EAAG,qBAAqBwH,GAAcC,IAAc,GAAG,GACvDzH;AAAA,EAAGhD;AAAA;AAA0B,IAAoCuK,EAAY,GAC7EvH;AAAA,EAAGvB;AAAA;AAA2B,IAA4C8I,EAAY,GACtFvH;AAAA,EAAGrB;AAAA;AAA2B,IAAuC4I,EAAY,GACjFvH,EAAG,aAAa0H,GAAW,GAC3B1H,EAAG,cAAcuH,EAAY,GAC7BvH,EAAG,6BAA6BuH,EAAY,GAC5CvH,EAAG,uBAAuBuH,EAAa,IAAO,4BAA4B,GAC1EvH,EAAG,SAAS2H,GAAW,EAAE,aAAa,IAAO,QAAQ,QAAW,SAAS,IAAI,GAC7E3H,EAAG,qBAAqB,GACxBA;AACJ,SAASsH,GAAuBM,GAAOC,GAAU;AAC7C,SAAAD,IAAQA,KAASC,GACbD,IAAQV,OACRU,IAAQV,KAEL,CAACU;AACZ;AACA,SAASH,GAAaG,GAAO;AACzB,SAAO,CAAC,MAAMA,CAAK,KAAKA,IAAQ,KAAKA,KAAS;AAClD;AACA,SAASE,GAAoBC,GAAW;AAGpC,EAAKlG,GAAYkG;AAAA,IAAU/K;AAAA;AAAA,EAA0B,CAAoC,MACjF+K;AAAA,IAAU/K;AAAA;AAAA,MACVgL,OAGAC;AAGZ;AACG,IAACC;AAAA;AAAA,GAAiC,SAAUC,GAAQ;AACnDC,IAAAA,GAAUF,GAAiBC,CAAM;AACjC,aAASD,IAAkB;AACvB,UAAIG,IAAQF,EAAO,KAAK,IAAI,KAAK;AACjC,MAAAE,EAAM,aAAaC,IACnBD,EAAM,WAAW,KACjBA,EAAM,mBAAmB;AACzB,UAAIE,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GAEAC,GAEAC,GACAC,GACAC,GAEAC;AACJ,aAAAC,GAAa3B,GAAiBG,GAAO,SAAUyB,GAAOC,GAAO;AACzD,YAAIC,IAAWD;AAAA,UAAM9M;AAAA;AAAA;AACrB,QAAAgN,MACAH,EAAM,eAAe,WAAY;AAC7B,iBAAOI,GAAiBJ;AAAA,YAAM5M;AAAA;AAAA,UAAS,CAAoB;AAAA,QAC/D,GACA4M,EAAM,mBAAmB,SAAUK,GAAKC,GAAS;AAC7C,UAAAN,EAAM,YAAYK,GAAKC,CAAO;AAAA,QAClC,GACAN,EAAM,aAAa,SAAUO,GAAOpJ,GAAkB;AAClD,cAAI;AACA,gBAAIqJ,IAAgBC,EAAoBF,GAAOG,IAAeC,IAAmBX;AAAA,cAAM3M;AAAA;AAAA,YAAa,KAA2B8D,CAAgB;AAC/I,YAAA6I;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBE;AAAA;AAAA,YAAU,EAAsBkN,CAAa;AAAA,UACrF,SACO5H,GAAG;AACN,YAAAT,EAAe,GAAkC,IAA+C,qDAAqDU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UACvM;AAAA,QACJ,GAKAoH,EAAM,kBAAkB,SAAU5I,GAAM;AACpC,cAAI;AACA,YAAAqH,EAAe,MAAMrH,CAAI;AAAA,UAC7B,SACOwB,GAAG;AACN,YAAAT,EAAe,GAAmC,IAAoD,0DAA0DU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UAClN;AAAA,QACJ,GAOAoH,EAAM,iBAAiB,SAAU5I,GAAMoF,GAAYC,GAAc;AAC7D,cAAI;AACA,YAAAgC,EAAe,KAAKrH,GAAM,QAAWoF,GAAYC,CAAY;AAAA,UACjE,SACO7D,GAAG;AACN,YAAAT,EAAe,GAAmC,IAAmD,yDAAyDU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UAChN;AAAA,QACJ,GAMAoH,EAAM,aAAa,SAAUY,GAAOzJ,GAAkB;AAClD,cAAI;AACA,gBAAIqJ,IAAgBC,EAAoBG,GAAOC,IAAeC,IAAmBd;AAAA,cAAM3M;AAAA;AAAA,YAAa,KAA2B8D,CAAgB;AAC/I,YAAA6I;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBE;AAAA;AAAA,YAAU,EAAsBkN,CAAa;AAAA,UACrF,SACO5H,GAAG;AACN,YAAAT,EAAe,GAAkC,IAA+C,qDAAqDU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UACvM;AAAA,QACJ,GAWAoH,EAAM,cAAc,SAAUe,GAAQ5J,GAAkB;AACpD,cAAI;AACA,gBAAIqJ,IAAgBC,EAAoBM,GAAQC,IAAgBC,IAAoBjB;AAAA,cAAM3M;AAAA;AAAA,YAAa,KAA2B8D,CAAgB;AAClJ,YAAA6I;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBE;AAAA;AAAA,YAAU,EAAsBkN,CAAa;AAAA,UACrF,SACO5H,GAAG;AACN,YAAAT,EAAe,GAAmC,IAAgD,uDAAuDU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UAC3M;AAAA,QACJ,GAOAoH;AAAA,UAAMzM;AAAA;AAAA,QAAoB,IAAgC,SAAU2D,GAAUC,GAAkB;AAC5F,cAAI;AACA,gBAAI+J,IAAOhK,KAAY;AACvB,YAAI8I;AAAA,cAAM5M;AAAA;AAAA,YAAS,KAAwB4M;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBI;AAAA;AAAA,kBAC3E0N,EAAK,MAAMvJ,GAAeuJ,EAAK,KAAKlB;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBI;AAAA;AAAA,YAAW,CAAsB,IAE7GmL;AAAA,cAAiBpL;AAAA;AAAA,YAAoB,EAA8B2N,GAAMC,GAASA,GAASA,GAAS,CAAA,GAAID,EAAK,UAAU,GAAGA,EAAK,YAAY,GAAG/J,CAAgB,CAAC,GAC3JqI,KACAX;AAAA,cAAsBpL;AAAA;AAAA,YAA0B,EAAuCyN,EAAK,MAAMA,EAAK,GAAG;AAAA,UAElH,SACOtI,GAAG;AACN,YAAAT,EAAe,GAAmC,IAA4C,4DAA4DU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UAC5M;AAAA,QACJ,GAOAoH;AAAA,UAAMtM;AAAA;AAAA,QAA0B,IAAuC,SAAUwD,GAAUsF,GAAY4E,GAAkB;AACrH,cAAI9J,IAAMC;AAOV,cANID,MACAJ;AAAA,YAASvD;AAAA;AAAA,UAAY,IAAyBuD;AAAA,YAASvD;AAAA;AAAA,UAAY,MAA2B,SAAY2D,EAAI,WAAWJ;AAAA,YAASvD;AAAA;AAAA,cAElIqM;AAAA,YAAM5M;AAAA;AAAA,UAAS,KAAwB4M;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBI;AAAA;AAAA,gBAC3E0D,EAAS,SAASS,GAAeT,EAAS,QAAQ8I;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBI;AAAA;AAAA,UAAW,CAAsB,IAEvH6D,EAAkBH;AAAA,YAAStD;AAAA;AAAA,UAAe,CAAyB,GAAG;AAEtE,gBAAI4E,KAAagE,KAActF;AAAA,cAASrD;AAAA;AAAA,YAAe,KAA8B;cAAIC;AAAA;AAAA,iBAAyC;AAClI,YAAAoD;AAAA,cAAStD;AAAA;AAAA,YAAe,IAA4B,IAAI,MAAK,oBAAI,QAAO,YAAY4E,CAAQ;AAAA,UAChG;AACA,cAAIgI,IAAgBC,EAAoBvJ,GAAUmK,IAAkBC,IAAsBtB;AAAA,YAAM3M;AAAA;AAAA,UAAa,EAAuB,GAAImJ,GAAY4E,CAAgB;AACpK,UAAApB;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBE;AAAA;AAAA,UAAU,EAAsBkN,CAAa,GAEjFe;QACJ,GAMAvB;AAAA,UAAMjM;AAAA;AAAA,QAA0B,IAAkD,SAAU4E,GAAqB6D,GAAY4E,GAAkB;AAC3I,cAAIZ,IAAgBC,EAAoB9H,GAAqB6I,IAA6BC,IAAiCzB;AAAA,YAAM3M;AAAA;AAAA,UAAa,EAAuB,GAAImJ,GAAY4E,CAAgB;AACrM,UAAApB;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBE;AAAA;AAAA,UAAU,EAAsBkN,CAAa;AAAA,QACrF,GAMAR,EAAM,2BAA2B,SAAUrH,GAAqBxB,GAAkB;AAC9E,cAAIuK,IAAQ/I,KAAuB;AACnC,cAAI;AACA,YAAAiG;AAAA,cAA4B5K;AAAA;AAAA,cAA2E0N,CAAK,GAC5G1B;AAAA,cAAMjM;AAAA;AAAA,YAA0B,EAAgD2N,GAAOvK,CAAgB;AAAA,UAC3G,SACOyB,GAAG;AACN,YAAAT,EAAe,GAAmC,IAA4C,uEAAuEU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UACvN;AAAA,QACJ,GAOAoH,EAAM,iBAAiB,SAAU5I,GAAM;AACnC,cAAI;AACA,gBAAI,OAAOA,KAAS,UAAU;AAC1B,kBAAIE,IAAMC;AACV,cAAAH,IAAOE,KAAOA,EAAI,SAAS;AAAA,YAC/B;AACA,YAAAoH,EAAc,MAAMtH,CAAI;AAAA,UAC5B,SACOwB,GAAG;AACN,YAAAT,EAAe,GAAmC,IAA+C,4DAA4DU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UAC/M;AAAA,QACJ,GASAoH,EAAM,gBAAgB,SAAU5I,GAAMmF,GAAKC,GAAYmF,GAAa;AAChE,cAAI;AACA,gBAAI,OAAOvK,KAAS,UAAU;AAC1B,kBAAIE,IAAMC;AACV,cAAAH,IAAOE,KAAOA,EAAI,SAAS;AAAA,YAC/B;AACA,gBAAI,OAAOiF,KAAQ,UAAU;AACzB,kBAAIqF,IAAMlK;AACV,cAAA6E,IAAMqF,KAAOA;AAAA,gBAAI3N;AAAA;AAAA,cAAS,KAAwB;AAAA,YACtD;AACA,YAAI+L;AAAA,cAAM5M;AAAA;AAAA,YAAS,KAAwB4M;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBI;AAAA;AAAA,kBAC3E+I,IAAM5E,GAAe4E,GAAKyD;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBI;AAAA;AAAA,YAAW,CAAsB,IAEnGkL,EAAc,KAAKtH,GAAMmF,GAAKC,GAAYmF,CAAW,GACjDnC,KACAX;AAAA,cAAsBpL;AAAA;AAAA,YAA0B,EAAuC2D,GAAMmF,CAAG;AAAA,UAExG,SACO3D,GAAG;AACN,YAAAT,EAAe,GAAmC,IAA8C,4DAA4DU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UAC9M;AAAA,QACJ,GAOAoH;AAAA,UAAM9L;AAAA;AAAA,QAA0B,IAAwC,SAAU2N,GAAW1K,GAAkBiK,GAAkB;AAG7H,cAAIU,IAAYD,MAAcA,EAAU,aAAaA;AAAA,YAAU1N;AAAA;AAAA;UAE3D4N,GAAQF,CAAS,KAAKA;AAAA;AAAA,UAGtB,EAAE,MAAOA,KAAa,OAAOA,GAAY,SAASA,KAAaG;AAEnE,UAAAH,IAAYA,KAAa;AACzB,cAAII,IAAiB,IAAIC,GAAUlC;AAAA,YAAM3M;AAAA;AAAA,UAAa,KAA2ByO,GAAUD;AAAA,YAAUhO;AAAA;AAAA,UAAe,KAA8BsD,GAAkB0K,EAAU,cAAcA,EAAU,eAAeA,EAAU,EAAE,EAAE,eAC/NvK,IAAMC;AACV,cAAID,KAA0DmI,GAAQ,aAAc;AAChF,gBAAI0C,IAAcC,GAAe9K,CAAG;AACpC,YAAA2K;AAAA,cAAepO;AAAA;AAAA,YAAe,EAA2B,mBAAsB,KAAK,UAAUsO,CAAW;AAAA,UAC7G;AACA,cAAsD1C,GAAQ,QAAQ;AAClE,gBAAI4C,IAAO5C,EAAQ;AACnB,YAAI4C,KAAQA,EAAK,QAAQC,GAAQD,EAAK,IAAI,MACtCJ;AAAA,cAAepO;AAAA;AAAA,YAAe,EAA2B,eAAkBwO,EAAK,KAAK,MAAM,GAAG5C,EAAQ,OAAO,EAAE,KAAK;AAAA,CAAI;AAAA,UAEhI;AACA,cAAIe,IAAgBC,EAAoBwB,GAAgBM,IAAmBC,IAAuBxC;AAAA,YAAM3M;AAAA;AAAA,UAAa,EAAuB,GAAI8D,GAAkBiK,CAAgB;AAClL,UAAApB;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBE;AAAA;AAAA,UAAU,EAAsBkN,CAAa;AAAA,QACrF,GASAR,EAAM,iBAAiB,SAAU6B,GAAW1K,GAAkB;AAC1D,UAAI0K,KAAa,CAACA,EAAU,aAAaA;AAAA,YAAU1N;AAAA;AAAA,UAAU,MACzD0N,EAAU,YAAYA;AAAA,YAAU1N;AAAA;AAAA;AAEpC,cAAI;AACA,YAAA6L;AAAA,cAAM9L;AAAA;AAAA,YAA0B,EAAsC2N,GAAW1K,CAAgB;AAAA,UACrG,SACOyB,GAAG;AACN,YAAAT,EAAe,GAAmC,IAAmD,6DAA6DU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,EAAC,CAAE;AAAA,UACpN;AAAA,QACJ,GAKAoH,EAAM,WAAW,SAAU6B,GAAW;AAClC,cAAI7E,IAAQ6E,KAAaA;AAAA,YAAU1N;AAAA;AAAA,UAAU,GACzCsO,IAAMZ,KAAaA,EAAU;AACjC,cAAI;AACA,gBAAI,CAACY,GAAK;AACN,kBAAIC,IAAUC;AACd,cAAID,MACAD,IAAMC,EAAQ/F,EAAQ;AAAA,YAE9B;AACA,gBAAIJ,IAAOsF,KAAaA,EAAU,QAAStK,GAAW,KAAM,CAAA,GAAI,KAE5DqL,IAAWf,EAAU,YAAY,oBAAoBtF,IAAM,OAAOsF;AAAA,cAAUzN;AAAA;AAAA,YAAgB,KAA8B,KAAK,OAAOyN;AAAA,cAAUxN;AAAA;AAAA,YAAkB,KAAgC,IAClMmI,IAAa;AAAA,cACb,UAAUoG;AAAA,cACV,KAAKrG;AAAA,cACL,YAAYsF;AAAA,gBAAUzN;AAAA;AAAA,cAAgB,KAA8B;AAAA,cACpE,cAAcyN;AAAA,gBAAUxN;AAAA;AAAA,cAAkB,KAAgC;AAAA,cAC1E,SAASwN,EAAU;AAAA,YAC3C;AACoB,YAAIgB,GAAmBhB,EAAU,SAASA,EAAU,KAAKA,EAAU,YAAYA,EAAU,cAAcA;AAAA,cAAU1N;AAAA;AAAA,YAAU,CAAqB,IAC5I2O,GAAmBZ;AAAA,cAAU5N;AAAA;AAAA,cAA8D,sJAAsJiI,GAAKsF;AAAA,cAAUzN;AAAA;AAAA,YAAgB,KAA8B,GAAGyN;AAAA,cAAUxN;AAAA;AAAA,YAAkB,KAAgC,GAAG2I,GAAOyF,GAAK,MAAMG,CAAQ,GAAGpG,CAAU,KAGlZqF,EAAU,aACXA,EAAU,WAAWe,IAEzB5C,EAAM,eAAe;AAAA,cAAE,WAAW6B;AAAA,cAAW,eAAe;AAAA;AAAA,YAAC,GAA+BrF,CAAU;AAAA,UAE9G,SACO5D,GAAG;AACN,gBAAImK,IAAc/F,IAASA,EAAM,OAAO,OAAOA,EAAM,UAAW;AAChE,YAAA7E,EAAe,GAAmC,IAAyD,gFACrGU,EAAiBD,CAAC,GAAG,EAAE,WAAWE,EAAQF,CAAC,GAAG,aAAamK,EAAW,CAAE;AAAA,UAClF;AAAA,QACJ,GACA/C;AAAA,UAAMzL;AAAA;AAAA,YAAoE,SAAUyO,GAAsB;AACtG,cAAIhD;AAAA,YAAM5M;AAAA;AAAA;AAEN,mBAAO4M;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBmB;AAAA;AAAA,YAA0B,EAAwCyO,CAAoB;AAGrI,UAAKlE,MACDA,IAAgC,CAAA,IAEpCA,EAA8B,KAAKkE,CAAoB;AAAA,QAC3D,GACAhD,EAAM,aAAa,SAAUiD,GAAQjN,GAAMkN,GAAYC,GAAa;AAChE,cAAI,CAAAnD,EAAM,iBAGV;AAAA,YAAI3I,EAAkBrB,CAAI,KACtByF,GAAW,oBAAoB,GAEnCwE,EAAM,WAAWgD,GAAQjN,GAAMkN,GAAYC,CAAW;AACtD,gBAAI;AACA,cAAAtD,IAAgBuD,GAAkBC,GAAsBrD,EAAM,UAAU,GAAGhK,EAAK,gBAAgBA,EAAK,aAAY,CAAE,GAC/G8I,MACAhI,GAAWgI,GAA+B,SAAUwE,GAAa;AAC7D,gBAAAtN;AAAA,kBAAKzB;AAAA;AAAA,kBAAkE+O,CAAW;AAAA,cACtF,CAAC,GACDxE,IAAgC,OAEpCyE,EAAkBN,CAAM,GACxBrE,IAA8B1E,GAAiC8F;AAAA,gBAAM5M;AAAA;AAAA,cAAS,CAAoB,GAClGuL,IAAmB9I,GAAsBmK,GAAOT,EAAW,0BAA0BS;AAAA,gBAAM5M;AAAA;AAAA,iBAA+BwL,CAA2B,GACrJC,IAAwB7D,GAA2BgF;AAAA,gBAAM3M;AAAA;AAAA,cAAa,EAAuB,GAAI,SAAUwH,GAAUC,GAAS0I,GAAe;AAAE,uBAAOC,GAAmB5I,GAAUC,GAAS0I,CAAa;AAAA,cAAG,CAAC,GAC7M/E,IAAiBpC,GAAa2D;AAAA,gBAAM3M;AAAA;AAAA,cAAa,EAAuB,GAAI,YAAY,GACxFoL,EAAe,SACX,SAAUrH,GAAMmF,GAAK/D,GAAUgE,GAAYC,GAAc;AACrD,gBAAKD,MACDA,IAAa,CAAA,IAEZC,MACDA,IAAe,CAAA,IAEnBD,EAAW,WAAWhE;AAAA,kBAASvF;AAAA;AAAA,gBAAc,EAAwB,GACrE+M,EAAM,WAAW,EAAE,MAAM5I,GAAM,YAAYoF,GAAY,cAAcC,EAAY,CAAE;AAAA,cACvF,GAEJiC,IAAgBrC,GAAa2D;AAAA,gBAAM3M;AAAA;AAAA,cAAa,EAAuB,GAAI,eAAe,GAC1FqL,EAAc,SAAS,SAAUtH,GAAMmF,GAAK/D,GAAUgE,GAAYC,GAAc;AAE5E,gBAAIpF,EAAkBmF,CAAU,MAC5BA,IAAa,CAAA,IAEjBA,EAAW,WAAWhE;AAAA,kBAASvF;AAAA;AAAA,gBAAc,EAAwB;AACrE,oBAAIyQ,KAAe;AAAA,kBACf,MAAMtM;AAAA,kBACN,KAAKmF;AAAA,kBACL,YAAYC;AAAA,kBACZ,cAAcC;AAAA,gBAC1C;AACwB,gBAAAuD;AAAA,kBAAMtM;AAAA;AAAA,gBAA0B,EAAqCgQ,IAAclH,CAAU;AAAA,cACjG,GACImH,GAAS,MACTC,MACAC;YAER,SACOjL,GAAG;AAEN,oBAAAoH,EAAM,eAAe,EAAK,GACpBpH;AAAA,YACV;AAAA;AAAA,QACJ,GACAoH,EAAM,cAAc,SAAUjH,GAAWC,GAAa;AAClD,UAAA2F,KAAoBA,EAAiB,SAAS5F,GAAWC,CAAW,GAEpE8K,GAAS,QAAQ,MAAM,MAAMjE,CAAa,GAC1CM;QACJ,GACAH,EAAM,oBAAuB,WAAY;AACrC,iBAAO,CAACF,GAAeV,CAA0B;AAAA,QACrD;AACA,iBAASmC,IAAqB;AAE1B,cAAIvB;AAAA,YAAM5M;AAAA;AAAA,aAA+B;AACrC,gBAAI2Q,IAAa/D;AAAA,cAAM5M;AAAA;AAAA,YAAS,EAAqB,UAAU,sBAAsB;AACrF,YAAI2Q,KAAcA,EAAW,UAAUA,EAAW,OAAO,qBACrDA,EAAW,OAAO;UAE1B;AAAA,QACJ;AACA,iBAASR,EAAkBN,GAAQ;AAE/B,cAAIe,IAAahE,EAAM,YACnBhK,IAAOgK;AAAA,YAAM5M;AAAA;AAAA;AACjB,UAAA4M;AAAA,YAAM7M;AAAA;AAAA,UAAc,EAAyB8Q,GAAehB,GAAQ,WAAY;AAC5E,gBAAIiB,IAAMC,GAA8B,MAAMlB,GAAQjN,CAAI;AAC1D,YAAAuJ,IAAa2E,EAAI,UAAUF,GAAY3G,EAAa,GAEpD+B,IAA6BA,KAA8B6D;AAAA,cAAOxO;AAAA;AAAA,YAA0B,KAA6C8K;AAAA,cAAW9K;AAAA;AAAA,eACpJgL,IAAUF,EAAW,QACrBC,IAA0BD;AAAA,cAAW7K;AAAA;AAAA,eAErCgL,IAAsBH,EAAW,sBAAsB,GACnD0D,EAAO,iBACPmB,GAAoBnB,EAAO,aAAa,GAE5CjF,GAAoBuB,CAAU,GAE9BR,IAAgCQ;AAAA,cAAW5K;AAAA;AAAA,eAC3C0P;UACJ,CAAC,CAAC;AAAA,QACN;AAMA,iBAASZ,GAAmB5I,GAAUC,GAAS0I,GAAe;AAC1D,cAAIhH,IAAa,EAAE,UAAU3B,GAAU,SAASC,EAAO;AACvD,UAAAkF,EAAM,YAAY;AAAA,YACd,MAAM;AAAA,YACN,SAASwD;AAAA,YACT,KAAKA;AAAA,YACL,KAAKA;AAAA,YACL,aAAa;AAAA,UACjC,GAAmBhH,CAAU;AAAA,QACjB;AACA,iBAAS6H,KAAmC;AACxC,cAAI,CAACrF,KAAgCD,GAA+B;AAChE,gBAAIuF,IAAqB,CAAC,wBAAwB,iBAAiB,GAC/DC,IAA0B,SAAUC,GAAU;AAC9C,kBAAIzF,KAAiCyF,EAAS,aAAaC,IAA0B;AACjF,oBAAIC,IAAaF,EAAS;AAC1B,oBAAIE;AACA,2BAAS1K,IAAI,GAAGA,IAAIsK;AAAA,oBAAmB1P;AAAA;AAAA,kBAAW,GAAwBoF;AACtE,wBAAI0K,EAAW,UAAUzK,GAAWyK,EAAW,QAAQJ,EAAmBtK,CAAC,CAAC,KAAK;AAC7E,6BAAO;AAAA;AAAA,cAIvB;AACA,qBAAO;AAAA,YACX;AACA,YAAAgG;AAAA,cAAM7M;AAAA;AAAA,YAAc,EAAyB6M;AAAA,cAAMzL;AAAA;AAAA,YAA0B,EAAwCgQ,CAAuB,CAAC,GAC7IvF,IAA+B;AAAA,UACnC;AAAA,QACJ;AACA,iBAAS8D,GAAmBjB,GAAWrF,GAAY;AAC/C,cAAIgE,IAAgBC,EAAoBoB,GAAWU,IAAmBC,IAAuBxC;AAAA,YAAM3M;AAAA;AAAA,UAAa,KAA2BmJ,CAAU;AACrJ,UAAAwD;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBE;AAAA;AAAA,UAAU,EAAsBkN,CAAa;AAAA,QACrF;AACA,iBAASoD,KAA2B;AAChC,cAAIlB,IAAUC,MACVgC,IAAOjN,GAAgB;AAC3B,UAAAsI;AAAA,YAAM7M;AAAA;AAAA,UAAc,EAAyB8Q,GAAe1E,GAAY,WAAY;AAChF,YAAAJ,IAA4BI,EAAW,0BACnC,CAACJ,KAA6B,CAACC,KAA8B,CAACG;AAAA,cAAW9K;AAAA;AAAA,YAA0B,MAEnGyL,EAAS0E,GAAgBlC,GAAS,WAAW;AAAA,cACzC,IAAI7C;AAAA,cACJ,KAAK,SAAUgF,GAAaC,GAASvI,GAAKwI,GAAYC,GAAchI,GAAO;AACvE,gBAAI,CAACmC,KAA6B0F,EAAY,SAAS,MACnD7E,EAAM,SAASkC;AAAA,kBAAU5N;AAAA;AAAA,gBAA0B,EAAoCwQ,GAASvI,GAAKwI,GAAYC,GAAchI,GAAO6H,EAAY,GAAG,CAAC;AAAA,cAE9J;AAAA,YAC5B,GAA2B,EAAK,CAAC,GACT/E,KACAV,IAA6B;AAAA,UAErC,CAAC,CAAC,GACF6F,GAAsCvC,GAASiC,CAAI;AAAA,QACvD;AACA,iBAASd,KAAwB;AAC7B,cAAIqB,IAAMvC,MACNgC,IAAOjN,GAAgB;AAC3B,UAAAsI;AAAA,YAAM7M;AAAA;AAAA,UAAc,EAAyB8Q,GAAe1E,GAAY,WAAY;AAKhF,gBAJAN,IAA2BM;AAAA,cAAW1K;AAAA;AAAA,YAA2B,MAA4C,IAIzGqQ,KAAOjG,KAA4B,CAACC,KAAyBiG,GAAU,GAAI;AAC3E,kBAAIC,IAAWC;AACf,cAAIlI,GAAWiI,EAAS,SAAS,KAAKjI,GAAWiI,EAAS,YAAY,KAAK,OAAO,UAAUE,MACxFC,GAAoBL,GAAKE,GAAUT,CAAI;AAAA,YAE/C;AAAA,UACJ,CAAC,CAAC;AAAA,QACN;AAIA,iBAASY,GAAoBL,GAAKM,GAASb,GAAM;AAC7C,cAAIzF;AACA;AAGJ,cAAIuG,IAAalG,EAAW,cAAc;AAC1C,mBAASmG,IAAmB;AACxB,YAAIzG,KACArC,GAAesI,GAAKS,GAAeF,IAAa,gBAAgB,CAAC;AAAA,UAEzE;AACA,mBAASG,IAAyB;AAY9B,gBAVIhG,MACAD,IAAWC,IACXA,IAAW+E,KAAQA;AAAA,cAAK1Q;AAAA;AAAA,YAAS,KAAwB,IAKzD+L;AAAA,cAAM5M;AAAA;AAAA,YAAS,KAAwB4M;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBI;AAAA;AAAA,kBAC3EoM,IAAWjI,GAAeiI,GAAUI;AAAA,cAAM5M;AAAA;AAAA,YAAS;AAAA,cAAqBI;AAAA;AAAA,YAAW,CAAsB,IAEzGyL,GAA0B;AAG1B,kBAAI4G,IAAa;AAEjB,kBAAI7F;AAAA,gBAAM5M;AAAA;AAAA,cAAS,KAAwB4M;AAAA,gBAAM5M;AAAA;AAAA,cAAS;AAAA,gBAAqB0B;AAAA;AAAA,iBAA+C;AAC1H,oBAAIgR,IAAiB9F;AAAA,kBAAM5M;AAAA;AAAA,gBAAS;AAAA,kBAAqB0B;AAAA;AAAA,gBAAkB,EAA4B,EAAK;AAC5G,gBAAIgR,KAAkBpG,MAAwB,IAE1CmG,IAAaE,GAA8BD,CAAc,IAIzDD,IAAa7F;AAAA,kBAAM5M;AAAA;AAAA,gBAAS;AAAA,kBAAqB0B;AAAA;AAAA,gBAAkB,EAA4B,EAAI,GAGvG+Q,EAAW,UAAUG,MAErBH,EAAW,WAAWI,GAAmBjG;AAAA,kBAAM3M;AAAA;AAAA,gBAAa,EAAuB,GAAIwS,EAAW,YAAY,WAAW,GACzH7F;AAAA,kBAAM5M;AAAA;AAAA,gBAAS,EAAqB,YAAYyS,CAAU;AAAA,cAC9D;AAEA,cAAAlP,IAAiB,SAAUa,GAAK;AAC5B,gBAAAwI;AAAA,kBAAMzM;AAAA;AAAA,kBAAkD,EAAE,QAAQiE,GAAK,YAAY,EAAE,UAAU,EAAC,EAAE,CAAE;AAAA,cACxG,GAAG,KAAKwI,GAAOL,CAAQ,GAAGK,EAAM,gBAAgB;AAAA,YACpD;AAAA,UACJ;AACA,UAAAE,EAAS0E,GAAgBY,GAAS,aAAa;AAAA,YAC3C,IAAI3F;AAAA,YACJ,KAAK,WAAY;AACb,cAAIZ,MACArC,GAAesI,GAAKS,GAAeF,IAAa,WAAW,CAAC,GAC5D7I,GAAesI,GAAKS,GAAeF,IAAa,gBAAgB,CAAC;AAAA,YAEzE;AAAA,UACpB,GAAmB,EAAI,CAAC,GACRvF,EAAS0E,GAAgBY,GAAS,gBAAgB;AAAA,YAC9C,IAAI3F;AAAA,YACJ,KAAK,WAAY;AACb,cAAIZ,MACArC,GAAesI,GAAKS,GAAeF,IAAa,cAAc,CAAC,GAC/D7I,GAAesI,GAAKS,GAAeF,IAAa,gBAAgB,CAAC;AAAA,YAEzE;AAAA,UACpB,GAAmB,EAAI,CAAC,GACRS,GAAQhB,GAAKO,IAAa,YAAYC,GAAkB7F,CAAa,GACrEqG,GAAQhB,GAAKO,IAAa,kBAAkBG,GAAwB/F,CAAa,GACjFX,IAAwB;AAAA,QAC5B;AACA,iBAAS+F,GAAsCvC,GAASyD,GAAW;AAC/D,UAAAnG;AAAA,YAAM7M;AAAA;AAAA,UAAc,EAAyB8Q,GAAe1E,GAAY,WAAY;AAChF,YAAAF,IAA2CE;AAAA,cAAWxK;AAAA;AAAA,YAA2B,MAA4D,IAC7IqK,IAA6BA,KAA8BG;AAAA,cAAWvK;AAAA;AAAA,eAClEqK,KAA4C,CAACC,MAE7CY,EAAS0E,GAAgBlC,GAAS,wBAAwB;AAAA,cACtD,IAAI7C;AAAA,cACJ,KAAK,SAAUgF,GAAa7H,GAAO;AAC/B,gBAAIqC,KAA4CwF,EAAY,SAAS,MACjE7E,EAAM,SAASkC;AAAA,kBAAU5N;AAAA;AAAA,gBAA0B,EAAoCyI,GAAWC,CAAK,GAAGmJ,IAAYA;AAAA,kBAAUlS;AAAA;AAAA,gBAAS,IAAuB,IAAI,GAAG,GAAG+I,GAAO6H,EAAY,GAAG,CAAC;AAAA,cAEzM;AAAA,YAC5B,GAA2B,EAAK,CAAC,GACT/E,KACAP;AAAA,cAAWvK;AAAA;AAAA,YAA2B,IAAmDsK,IAAoC;AAAA,UAErI,CAAC,CAAC;AAAA,QACN;AAMA,iBAASnH,EAAeiO,GAAUC,GAAOC,GAAK9J,GAAY+J,GAAW;AACjE,UAAAvG;AAAA,YAAM3M;AAAA;AAAA,YAAoC,EAAG,cAAc+S,GAAUC,GAAOC,GAAK9J,GAAY+J,CAAS;AAAA,QAC1G;AACA,iBAASpG,KAAgB;AACrB,UAAA1B,IAAiB,MACjBC,IAAgB,MAChBC,IAAmB,MACnBC,IAA8B,MAC9BC,IAAwB,MACxBC,IAAgC,MAChCC,IAAgC,IAChCC,IAA+B,IAC/BC,IAA2B,IAC3BC,IAAwB,IACxBC,IAA4B,IAC5BC,IAA6B,IAC7BC,IAA2C,IAC3CC,IAAoC,IACpCE,IAA0B,IAE1B+B;AAEA,cAAIiF,IAAW9O,GAAgB;AAC/B,UAAAiI,IAAW6G,KAAYA;AAAA,YAASvS;AAAA;AAAA,UAAS,KAAwB,IAC7D+L;AAAA,YAAM5M;AAAA;AAAA,UAAS,KAAwB4M;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBI;AAAA;AAAA,gBAC3EmM,IAAWhI,GAAegI,GAAUK;AAAA,YAAM5M;AAAA;AAAA,UAAS;AAAA,YAAqBI;AAAA;AAAA,UAAW,CAAsB,IAE7GoM,IAAW,MACXC,IAAgB,MAChBN,IAAa,MACbO,IAAgB,GAEhB2G,GAAUzG,GAAO,UAAU;AAAA,YACvB,GAAG,WAAY;AAAE,qBAAOT;AAAA,YAAY;AAAA,UACxD,CAAiB;AAAA,QACL;AAEA,QAAAkH,GAAUzG,GAAO,oBAAoB,EAAE,GAAG,WAAY;AAAE,iBAAOrB;AAAA,QAAkB,EAAC,CAAE,GACpF8H,GAAUzG,GAAO,+BAA+B,EAAE,GAAG,WAAY;AAAE,iBAAOpB;AAAA,QAA6B,EAAC,CAAE,GAC1G6H,GAAUzG,GAAO,yBAAyB,EAAE,GAAG,WAAY;AAAE,iBAAOnB;AAAA,QAAuB,EAAC,CAAE,GAC9F4H,GAAUzG,GAAO,iBAAiB,EAAE,GAAG,WAAY;AAAE,iBAAO,MAAMH;AAAA,QAAe,EAAC,CAAE;AAAA,MACxF,CAAC,GACMtB;AAAA,IACX;AAmBA,WAAAH,EAAgB,UAAU,SACnBA;AAAA,EACX,GAAEsI,EAAmB;AAAA;","x_google_ignoreList":[0,1,2,3,4,5]}
|