{"version":3,"sources":["../../../../node_modules/.pnpm/@fluentui+set-version@8.2.24/node_modules/@fluentui/set-version/lib/setVersion.js","../../../../node_modules/.pnpm/@fluentui+set-version@8.2.24/node_modules/@fluentui/set-version/lib/index.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/memoize.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/mergeThemes.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/focus.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/string.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/getFirstVisibleElementFromSelector.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/warn/warnDeprecations.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/useFocusRects.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/css.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/asAsync.js","../../../../node_modules/.pnpm/@microsoft+1ds-core-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-core-js/dist-es5/Utils.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/motion/AnimationStyles.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/getDocument.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/setFocusVisibility.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/Customizer.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/warn/warn.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/getId.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/Rectangle.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/getRect.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/utilities/makeSemanticColors.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/getWindow.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/warn/warnControlledUsage.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/FabricPerformance.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/BaseComponent.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/createTheme.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/selection/Selection.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/mobileDetector.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/spacing/DefaultSpacing.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/utilities/buildClassMap.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/classNames/AnimationClassNames.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/classNames/FontClassNames.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/theme.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/classNames/ColorClassNames.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/hiddenContentStyle.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/PulsingBeaconAnimationStyles.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/getGlobalClassNames.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/CommonStyles.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/zIndexes.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/getFocusStyle.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/scheme.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/GeneralStyles.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/getFadedOverflowStyle.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/styles/getPlaceholderStyles.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/utilities/icons.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/utilities/getIconClassName.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/cdn.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/version.js","../../../../node_modules/.pnpm/@fluentui+style-utilities@8.10.20_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/style-utilities/lib/index.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/GlobalSettings.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/rtl.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/sessionStorage.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/ie11Detector.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/fonts/createFontStyles.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/assertNever.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/controlled.js","../../../../node_modules/.pnpm/@microsoft+1ds-core-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-core-js/dist-es5/__DynamicConstants.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/initials.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/colors/FluentColors.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/effects/FluentDepths.js","../../../../node_modules/.pnpm/@microsoft+1ds-core-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-core-js/dist-es5/Enums.js","../../../../node_modules/.pnpm/@microsoft+1ds-core-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-core-js/dist-es5/AppInsightsCore.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/DataModels.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/InternalConstants.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/__DynamicConstants.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/EventBatch.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/ClockSkewManager.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/KillSwitch.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/RetryPolicy.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/Serializer.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/HttpManager.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/TimeoutOverrideWrapper.js","../../../../node_modules/.pnpm/@microsoft+1ds-post-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-post-js/dist-es5/PostChannel.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/Utils.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/ExtensionKeys.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/InternalConstants.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Session.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/SessionManager.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Application.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Cloud.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Device.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/IntWeb.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Loc.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/OperatingSystem.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Sdk.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Trace.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/User.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Utc.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/context/Web.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/TelemetryContext.js","../../../../node_modules/.pnpm/@microsoft+1ds-properties-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-properties-js/dist-es5/PropertiesPlugin.js","../../../../node_modules/.pnpm/@microsoft+1ds-analytics-web-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-analytics-web-js/dist-es5/ApplicationInsights.js","../../../../node_modules/.pnpm/@microsoft+1ds-analytics-web-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-analytics-web-js/dist-es5/Index.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/modalize.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/CustomizerContext.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/effects/DefaultEffects.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/selection/Selection.types.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/resources.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/safeRequestAnimationFrame.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/renderFunction/composeRenderFunction.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/Async.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/extendComponent.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/properties.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/useCustomizationSettings.js","../../../../node_modules/.pnpm/@microsoft+1ds-core-js@4.2.1_tslib@2.7.0/node_modules/@microsoft/1ds-core-js/dist-es5/InternalConstants.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/hoist.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/shadowDom/contexts/MergeStylesShadowRootContext.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/aria.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/getNativeElementProps.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/math.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/appendFunction.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/setSSR.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/AutoScroll.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/shadowDom/contexts/MergeStylesDefaultContext.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/shadowDom/hooks/useMergeStylesHooks.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/shadowDom/hooks/useMergeStylesShadowRoot.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/shadowDom/contexts/MergeStylesShadowRootConsumer.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/customizable.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/safeSetTimeout.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/language.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/localStorage.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/osDetector.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/object.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/keyboard.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/on.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/colors/DefaultPalette.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/fonts/DefaultFontStyles.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/componentAs/composeComponentAs.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/initializeComponentRef.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/EventGroup.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/merge.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/canUseDOM.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/mergeSettings.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/classNamesFunction.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/mergeCustomizations.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/warn/warnConditionallyRequiredProps.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/DelayedRender.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/KeyCodes.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/createMergedRef.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/array.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/warn/warnMutuallyExclusive.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/fonts/FluentFonts.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/hoistStatics.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/dom/raiseClick.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/getPropsWithDefaults.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/styled.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/overflow.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/initializeFocusRects.js","../../../../node_modules/.pnpm/@fluentui+theme@2.6.58_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/theme/lib/FluentTheme.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/customizations/Customizations.js","../../../../node_modules/.pnpm/@fluentui+utilities@8.15.19_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/utilities/lib/scroll.js"],"names":["packagesCache","_win","undefined","window","e","setVersion","packageName","packageVersion","packages","__packages__","push","__webpack_require__","d","__webpack_exports__","setMemoizeWeakMap","resetMemoizations","memoize","memoizeFunction","createMemoizer","_fluentui_merge_styles__WEBPACK_IMPORTED_MODULE_0__","_initializedStylesheetResets","_resetCounter","_emptyObject","empty","_dictionary","_weakMap","WeakMap","weakMap","_target","_key","descriptor","fn","value","bind","configurable","get","cb","maxCacheSize","ignoreNullOrUndefinedResult","stylesheet","getInstance","onReset","rootNode","cacheSize","localResetCounter","args","_i","arguments","length","currentNode","_createNode","i","arg","_normalizeArg","map","has","set","hasOwnProperty","apply","getValue","cache","input","val","mergeThemes","_fluentui_utilities__WEBPACK_IMPORTED_MODULE_0__","_utilities_makeSemanticColors__WEBPACK_IMPORTED_MODULE_1__","theme","partialTheme","_a","_b","_c","mergedTheme","Object","semanticColors","palette","effects","isInverted","themePrimary","accent","defaultFontStyle","_d","keys","fonts","fontStyle","getFirstFocusable","getLastFocusable","getFirstTabbable","getLastTabbable","focusFirstChild","getPreviousElement","getNextElement","isElementVisible","isElementVisibleAndNotHidden","isElementTabbable","isElementFocusZone","isElementFocusSubZone","doesElementContainFocus","shouldWrapFocus","focusAsync","getFocusableByIndexPath","getElementIndexPath","_dom_elementContainsAttribute__WEBPACK_IMPORTED_MODULE_0__","_dom_elementContains__WEBPACK_IMPORTED_MODULE_1__","_dom_getParent__WEBPACK_IMPORTED_MODULE_2__","_dom_getWindow__WEBPACK_IMPORTED_MODULE_3__","_dom_getDocument__WEBPACK_IMPORTED_MODULE_4__","IS_FOCUSABLE_ATTRIBUTE","IS_VISIBLE_ATTRIBUTE","FOCUSZONE_ID_ATTRIBUTE","FOCUSZONE_SUB_ATTRIBUTE","rootElement","currentElement","includeElementsInFocusZones","includeShadowRoots","checkNode","bypassHiddenElements","element","suppressParentTraversal","traverseChildren","allowFocusRoot","tabbable","isCurrentElementVisible","childMatch","lastElementChild","shadowRoot","childMatchSiblingMatch","previousElementSibling","childMatchParent","parentElement","childMatchParentMatch","siblingMatch","suppressChildTraversal","firstElementChild","nextElementSibling","getAttribute","visibilityAttribute","offsetHeight","offsetParent","isVisible","win","theWin","hidden","getComputedStyle","visibility","checkTabIndex","checkShadowRoot","disabled","tabIndex","tabIndexAttributeValue","parseInt","isFocusableAttribute","isTabIndexSet","delegatesFocus","result","tagName","doc","currentActiveElement","activeElement","noWrapDataAttribute","theDoc","animationId","cancelAnimationFrame","requestAnimationFrame","focus","parent","path","path_1","index","nextChild","children","Math","min","fromElement","toElement","parent_1","unshift","Array","prototype","indexOf","call","format","FORMAT_ARGS_REGEX","FORMAT_REGEX","s","values","replace","match","replacement","getFirstVisibleElementFromSelector","_focus__WEBPACK_IMPORTED_MODULE_0__","_getDocument__WEBPACK_IMPORTED_MODULE_1__","selector","elements","querySelectorAll","from","find","defaultView","warnDeprecations","componentName","props","deprecationMap","useFocusRects","FocusRects","react__WEBPACK_IMPORTED_MODULE_0__","_dom_getWindow__WEBPACK_IMPORTED_MODULE_1__","_keyboard__WEBPACK_IMPORTED_MODULE_2__","_setFocusVisibility__WEBPACK_IMPORTED_MODULE_3__","mountCounters","callbackMap","setMountCounters","key","delta","newValue","currValue","FocusRectsContext","rootRef","context","current","FabricConfig","disableFocusRects","onMouseDown","onPointerDown","onKeyDown","onKeyUp","el","providerRef","addEventListener","callbacks","ev","_onMouseDown","registeredProviders","_onPointerDown","_onKeyDown","_onKeyUp","setCallbackMap","count","removeEventListener","target","pointerType","which","css","classes","args_1","toString","join","asAsync","tslib__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_1__","_syncModuleCache","options","Async","_super","_this","this","state","Component","load","render","forwardedRef","Placeholder","asyncPlaceholder","rest","ref","componentDidMount","then","LoadedComponent","setState","onLoad","catch","onError","FullVersionString","isDocumentObjectAvailable","isWindowObjectAvailable","isValueAssigned","getTenantId","isLatency","sanitizeProperty","getCommonSchemaMetaData","getCookieValue","createGuid","extend","getTime","setProcessTelemetryTimings","isChromium","isGreaterThanZero","_microsoft_applicationinsights_core_js__WEBPACK_IMPORTED_MODULE_0__","_microsoft_applicationinsights_core_js__WEBPACK_IMPORTED_MODULE_2__","_microsoft_applicationinsights_shims__WEBPACK_IMPORTED_MODULE_3__","_InternalConstants__WEBPACK_IMPORTED_MODULE_4__","_DynamicConstants__WEBPACK_IMPORTED_MODULE_5__","ObjHasOwnProperty","_fieldTypeEventPropMap","apiKey","indexTenantId","name","property","stringifyObjects","propType","JSON","stringify","isValueKind","kind","type","encodedTypeValue","isDataType","getFieldValueType","theType","objType","cookieMgr","decode","cookieValue","decodeURIComponent","style","theGuid","obj","obj2","obj3","obj4","obj5","extended","deep","theArgs","prop","arrayValue","arrayIndex","event","identifier","evt","AnimationVariables","AnimationStyles","EASING_FUNCTION_1","EASING_FUNCTION_2","FADE_IN","opacity","to","FADE_OUT","SLIDE_RIGHT_IN10","_createSlideInX","SLIDE_RIGHT_IN20","SLIDE_RIGHT_IN40","SLIDE_RIGHT_IN400","SLIDE_LEFT_IN10","SLIDE_LEFT_IN20","SLIDE_LEFT_IN40","SLIDE_LEFT_IN400","SLIDE_UP_IN10","_createSlideInY","SLIDE_UP_IN20","SLIDE_DOWN_IN10","SLIDE_DOWN_IN20","SLIDE_RIGHT_OUT10","_createSlideOutX","SLIDE_RIGHT_OUT20","SLIDE_RIGHT_OUT40","SLIDE_RIGHT_OUT400","SLIDE_LEFT_OUT10","SLIDE_LEFT_OUT20","SLIDE_LEFT_OUT40","SLIDE_LEFT_OUT400","SLIDE_UP_OUT10","_createSlideOutY","SLIDE_UP_OUT20","SLIDE_DOWN_OUT10","SLIDE_DOWN_OUT20","SCALE_UP100","transform","SCALE_DOWN98","SCALE_DOWN100","SCALE_UP103","ROTATE90","ROTATE_N90","easeFunction1","easeFunction2","durationValue1","durationValue2","durationValue3","durationValue4","slideRightIn10","_createAnimation","concat","slideRightIn20","slideRightIn40","slideRightIn400","slideLeftIn10","slideLeftIn20","slideLeftIn40","slideLeftIn400","slideUpIn10","slideUpIn20","slideDownIn10","slideDownIn20","slideRightOut10","slideRightOut20","slideRightOut40","slideRightOut400","slideLeftOut10","slideLeftOut20","slideLeftOut40","slideLeftOut400","slideUpOut10","slideUpOut20","slideDownOut10","slideDownOut20","scaleUpIn100","scaleDownIn100","scaleUpOut103","scaleDownOut98","fadeIn100","fadeIn200","fadeIn400","fadeIn500","fadeOut100","fadeOut200","fadeOut400","fadeOut500","rotate90deg","rotateN90deg","animationName","animationDuration","animationTimingFunction","animationFillMode","fromX","pointerEvents","fromY","toX","toY","getDocument","_canUseDOM__WEBPACK_IMPORTED_MODULE_0__","document","ownerDocument","IsFocusVisibleClassName","setFocusVisibility","_dom_getWindow__WEBPACK_IMPORTED_MODULE_0__","IsFocusHiddenClassName","updateClassList","enabled","classList","add","remove","forEach","body","Customizer","_Customizations__WEBPACK_IMPORTED_MODULE_2__","_CustomizerContext__WEBPACK_IMPORTED_MODULE_3__","_mergeCustomizations__WEBPACK_IMPORTED_MODULE_4__","_onCustomizationChange","forceUpdate","observe","componentWillUnmount","unobserve","contextTransform","Consumer","parentContext","newContext","Provider","warn","setWarningCallback","message","console","warningCallback","getId","resetIds","_fluentui_merge_styles__WEBPACK_IMPORTED_MODULE_1__","CURRENT_ID_PROPERTY","DEFAULT_ID_STRING","_global","prefix","counter","Rectangle","left","right","top","bottom","defineProperty","enumerable","equals","rect","parseFloat","toFixed","getRect","_getWindow__WEBPACK_IMPORTED_MODULE_0__","width","innerWidth","height","innerHeight","getBoundingClientRect","makeSemanticColors","getSemanticColors","p","depComments","dep","listTextColor","listText","menuItemBackgroundChecked","warningHighlight","warningText","messageText","successText","_fixDeprecatedSlots","primaryButtonBorder","errorText","messageLink","messageLinkHovered","infoIcon","errorIcon","blockingIcon","warningIcon","severeWarningIcon","successIcon","infoBackground","errorBackground","blockingBackground","warningBackground","severeWarningBackground","successBackground","white","black","themeDark","themeDarker","themeDarkAlt","themeLighter","neutralLight","neutralLighter","neutralDark","neutralQuaternary","neutralQuaternaryAlt","neutralPrimary","neutralSecondary","neutralSecondaryAlt","neutralTertiary","neutralTertiaryAlt","neutralLighterAlt","bodyBackground","bodyFrameBackground","accentButtonText","buttonBackground","primaryButtonText","primaryButtonTextHovered","primaryButtonTextPressed","inputBackground","inputForegroundChecked","listBackground","menuBackground","cardStandoutBackground","bodyTextChecked","buttonTextCheckedHovered","link","primaryButtonBackground","inputBackgroundChecked","inputIcon","inputFocusBorderAlt","menuIcon","menuHeader","accentButtonBackground","primaryButtonBackgroundPressed","inputBackgroundCheckedHovered","inputIconHovered","linkHovered","primaryButtonBackgroundHovered","inputPlaceholderBackgroundChecked","bodyBackgroundChecked","bodyFrameDivider","bodyDivider","variantBorder","buttonBackgroundCheckedHovered","buttonBackgroundPressed","listItemBackgroundChecked","listHeaderBackgroundPressed","menuItemBackgroundPressed","bodyBackgroundHovered","buttonBackgroundHovered","buttonBackgroundDisabled","buttonBorderDisabled","primaryButtonBackgroundDisabled","disabledBackground","listItemBackgroundHovered","listHeaderBackgroundHovered","menuItemBackgroundHovered","primaryButtonTextDisabled","disabledSubtext","listItemBackgroundCheckedHovered","disabledBodyText","variantBorderHovered","buttonTextDisabled","inputIconDisabled","disabledText","bodyText","actionLink","buttonText","inputBorderHovered","inputText","menuItemText","bodyStandoutBackground","defaultStateBackground","actionLinkHovered","buttonTextHovered","buttonTextChecked","buttonTextPressed","inputTextHovered","menuItemTextHovered","bodySubtext","focusBorder","inputBorder","smallInputBorder","inputPlaceholderText","buttonBorder","disabledBodySubtext","disabledBorder","buttonBackgroundChecked","menuDivider","elevation4","cardShadow","elevation8","cardShadowHovered","getWindow","_window","resetControlledWarnings","warnControlledUsage","params","FabricPerformance","now","performance","Date","measure","func","_timeoutId","setPeriodicReset","start","end","measurement","summary","totalDuration","all","duration","timeStamp","reset","clearTimeout","NaN","setTimeout","BaseComponent","nullRender","_Async__WEBPACK_IMPORTED_MODULE_2__","_EventGroup__WEBPACK_IMPORTED_MODULE_3__","_warn_warnConditionallyRequiredProps__WEBPACK_IMPORTED_MODULE_4__","_warn_warnMutuallyExclusive__WEBPACK_IMPORTED_MODULE_5__","_warn_warnDeprecations__WEBPACK_IMPORTED_MODULE_6__","methodNames","len","_makeSafe","_makeAllSafe","componentDidUpdate","prevProps","prevState","_updateComponentRef","_setComponentRef","componentRef","__disposables","_disposables","disposable","dispose","__className","results","exec","constructor","__async","__events","_resolveRef","refName","__resolves","currentProps","newProps","_warnDeprecations","className","_warnMutuallyExclusive","mutuallyExclusiveMap","_warnConditionallyRequiredProps","requiredProps","conditionalPropName","condition","_skipComponentRefResolution","methodName","classMethod","prototypeMethod","retVal","createTheme","_colors_index__WEBPACK_IMPORTED_MODULE_0__","_effects_index__WEBPACK_IMPORTED_MODULE_1__","_fonts_index__WEBPACK_IMPORTED_MODULE_2__","_mergeThemes__WEBPACK_IMPORTED_MODULE_3__","_spacing_index__WEBPACK_IMPORTED_MODULE_4__","_utilities_makeSemanticColors__WEBPACK_IMPORTED_MODULE_5__","baseTheme","spacing","disableGlobalClassNames","rtl","Selection","_Selection_types__WEBPACK_IMPORTED_MODULE_0__","_EventGroup__WEBPACK_IMPORTED_MODULE_1__","onSelectionChanged","onItemsChanged","getKey","canSelectItem","items","selectionMode","multiple","mode","_getKey","defaultGetKey","_changeEventSuppressionCount","_exemptedCount","_anchoredIndex","_unselectableCount","_onSelectionChanged","_onItemsChanged","_canSelectItem","_keyToIndexMap","_isModal","setItems","getSelectedCount","item","setChangeEvents","isEnabled","suppressChange","_hasChanged","_change","isModal","setModal","setAllSelected","shouldClear","newKeyToIndexMap","newUnselectableIndices","hasSelectionChanged","haveItemsChanged","_setAllSelected","newExemptedIndicies","newExemptedCount","indexProperty","_exemptedIndices","Number","exemptKey","_items","newIndex","_isAllSelected","_unselectableIndices","_selectedItems","_updateCount","raise","getItems","getSelection","isIndexSelected","getSelectedIndices","_selectedIndices","getItemIndex","isRangeSelected","fromIndex","endIndex","isAllSelected","selectableCount","single","isKeySelected","setKeySelected","isSelected","shouldAnchor","setIndexSelected","none","max","isExempt","setRangeSelected","startIndex","newAnchorIndex","selectToKey","clearSelection","selectToIndex","selectToRange","anchorIndex","toggleAllSelected","toggleKeySelected","toggleIndexSelected","toggleRangeSelected","preserveModalState","isIOS","navigator","userAgent","test","DefaultSpacing","s2","s1","m","l1","l2","buildClassMap","styles","_loop_1","styleName","className_1","mergeStyles","AnimationClassNames","FontClassNames","DefaultFontStyles","_theme","_onThemeChangeCallbacks","ThemeSettingName","initializeThemeInCustomizations","legacyTheme","loadTheme","Customizations","getSettings","applySettings","getTheme","registerOnThemeChangeCallback","callback","removeOnThemeChangeCallback","splice","lib_es6","tslib_es6","lines","fontName","font","propName","name_1","charAt","toUpperCase","slice","_loadFonts","ColorClassNames","ColorClassNames_colorName","DefaultPalette","_defineGetter","colorName","suffix","isHover","cssProperty","selectors",":hover","hiddenContentStyle","position","margin","padding","border","overflow","whiteSpace","DEFAULT_DURATION","DEFAULT_DELAY","DEFAULT_ITERATION_COUNT","_continuousPulseStepOne","beaconColorOne","innerDimension","borderColor","borderWidth","_continuousPulseStepTwo","_continuousPulseStepFour","beaconColorTwo","outerDimension","_continuousPulseStepFive","PulsingBeaconAnimationStyles","continuousPulseAnimationDouble","keyframes","0%","1.42%","3.57%","7.14%","8%","29.99%","30%","31.42%","33.57%","37.14%","38%","79.42%","79.43","81.85","83.42","87%","100%","continuousPulseAnimationSingle","14.2%","35.7%","71.4%","createDefaultAnimation","delayLength","animationIterationCount","animationDelay","_getGlobalClassNames","classNames","styleSheet","Stylesheet","reduce","acc","getClassName","getGlobalClassNames","HighContrastSelector","HighContrastSelectorWhite","HighContrastSelectorBlack","EdgeChromiumHighContrastSelector","ScreenWidthMinSmall","ScreenWidthMinMedium","ScreenWidthMinLarge","ScreenWidthMinXLarge","ScreenWidthMinXXLarge","ScreenWidthMinXXXLarge","ScreenWidthMaxSmall","ScreenWidthMaxMedium","ScreenWidthMaxLarge","ScreenWidthMaxXLarge","ScreenWidthMaxXXLarge","ScreenWidthMinUhfMobile","getScreenSelector","minSelector","maxSelector","getHighContrastNoAdjustStyle","forcedColorAdjust","MsHighContrastAdjust","getEdgeChromiumNoHighContrastAdjustSelector","ZIndexes","getFocusStyle","insetOrOptions","highContrastStyle","outlineColor","isFocusedOnly","borderRadius","_getFocusStyleInternal","inset","_e","_f","_g","_h","outline","::-moz-focus-inner","content","zIndex","FocusStyle","focusClear","&::-moz-focus-inner","&","getFocusOutlineStyle","color","outlineOffset","Nav","ScrollablePane","Coachmark","Layer","KeytipLayer","getInputFocusStyle","borderType","borderPosition","isBorderBottom",":after","getThemedContext","scheme","newSettings","schemeSource","customizations","schemeTheme","schemes","settings","mergeSettings","scopedSettings","normalize","boxShadow","boxSizing","noWrap","textOverflow","DEFAULT_HEIGHT","DEFAULT_WIDTH","getFadedOverflowStyle","direction","getDefaultValue","colorValue","rgbColor","r","g","b","parts","split","color2rgb","rgba","backgroundImage","getPlaceholderStyles","::placeholder",":-ms-input-placeholder","::-ms-input-placeholder","_iconSettings","GlobalSettings","__options","disableWarnings","warnOnMissingIcons","__remapped","subset","normalizeIconName","toLowerCase","registerIcons","iconSubset","isRegistered","icons","iconName","code","normalizedIconName","_warnDuplicateIcon","unregisterIcons","iconNames","iconNames_1","registerIconAlias","mappedToName","getIcon","icon","fontFace","fontFamily","fontWeight","setIconOptions","_missingIcons","_missingIconsTimer","defaultIconStyles","display","getIconClassName","::before","FLUENT_CDN_BASE_URL","lib","GLOBAL_SETTINGS_PROP_NAME","CALLBACK_STATE_PROP_NAME","_counter","defaultValue","globalSettings","_getGlobalSettings","setValue","oldValue","changeDescription","id","addChangeListener","__id__","_getCallbacks","String","removeChangeListener","globalObj","getRTL","setRTL","getRTLSafeKeyCode","_isRTL","_KeyCodes__WEBPACK_IMPORTED_MODULE_0__","_dom_getDocument__WEBPACK_IMPORTED_MODULE_1__","_sessionStorage__WEBPACK_IMPORTED_MODULE_2__","_fluentui_merge_styles__WEBPACK_IMPORTED_MODULE_3__","RTL_LOCAL_STORAGE_KEY","savedRTL","documentElement","isRTL","persistSetting","setAttribute","getItem","setItem","sessionStorage","data","isIE11","createFontStyles","_FluentFonts__WEBPACK_IMPORTED_MODULE_0__","FontFamilyFallbacks","defaultFontFamily","WestEuropean","LanguageToFontMap","ar","Arabic","bg","Cyrillic","cs","EastEuropean","Greek","et","he","Hebrew","hi","Hindi","hr","hu","ja","Japanese","kk","ko","Korean","lt","lv","pl","ru","sk","sr-latn","th","Thai","tr","uk","vi","Vietnamese","zh-hans","ChineseSimplified","zh-hant","ChineseTraditional","hy","Armenian","ka","Georgian","_createFont","size","weight","MozOsxFontSmoothing","WebkitFontSmoothing","fontSize","localeCode","localizedFont","language","lang","_getLocalizedFontFamily","fontFamilyWithFallback","tiny","mini","regular","xSmall","small","smallPlus","medium","mediumPlus","large","xLarge","semibold","xLargePlus","xxLarge","xxLargePlus","superLarge","mega","assertNever","x","Error","isControlled","valueProp","_DYN_INITIALIZE","_DYN_LOGGER","_DYN_INDEX_OF","_DYN_TIMINGS","_DYN_POLL_INTERNAL_LOGS","_DYN_VALUE","_DYN_KIND","_DYN_LENGTH","_DYN_PROCESS_TELEMETRY_ST0","getInitials","UNWANTED_ENCLOSURES_REGEX","UNWANTED_CHARS_REGEX","PHONENUMBER_REGEX","MULTIPLE_WHITESPACES_REGEX","UNSUPPORTED_TEXT_REGEX","displayName","isRtl","allowPhoneInitials","trim","cleanupDisplayName","initials","splits","getInitialsLatin","CommunicationColors","NeutralColors","SharedColors","shade30","shade20","shade10","primary","tint10","tint20","tint30","tint40","gray220","gray210","gray200","gray190","gray180","gray170","gray160","gray150","gray140","gray130","gray120","gray110","gray100","gray90","gray80","gray70","gray60","gray50","gray40","gray30","gray20","gray10","pinkRed10","red20","red10","redOrange20","redOrange10","orange30","orange20","orange10","yellow10","orangeYellow20","orangeYellow10","yellowGreen10","green20","green10","greenCyan10","cyan40","cyan30","cyan20","cyan10","cyanBlue20","cyanBlue10","blue10","blueMagenta40","blueMagenta30","blueMagenta20","blueMagenta10","magenta20","magenta10","magentaPink20","magentaPink10","Depths","depth0","depth4","depth8","depth16","depth64","ValueKind","EnumHelperFuncs","NotSet","Pii_DistinguishedName","Pii_GenericData","Pii_IPV4Address","Pii_IPv6Address","Pii_MailSubject","Pii_PhoneNumber","Pii_QueryString","Pii_SipAddress","Pii_SmtpAddress","Pii_Identity","Pii_Uri","Pii_Fqdn","Pii_IPV4AddressLegacy","Pii_IPv6ScrubLastHextets","Pii_DropValue","CustomerContent_GenericContent","EventLatency","Normal","CostDeferred","RealTime","Immediate","EventPersistence","Unspecified","Int32","UInt32","Int64","UInt64","Double","Bool","Guid","DateTime","Critical","TraceLevel","NONE","ERROR","WARNING","INFORMATION","defaultConfig","ts_utils","endpointUrl","InternalConstants","propertyStorageOverride","isVal","getProperty","setProperty","AppInsightsCore_AppInsightsCore","AppInsightsCore","DynamicProto","_self","_base","_DynamicConstants","config","extensions","logger","notificationManager","PerfManager","DynamicConfig","cfg","logger_1","DiagnosticLogger","track","telemetryItem","trackStart","Utils","latency","itemExt","ext","sdk","ver","baseData","itemProperties","pluginVersionString","eventName","TsLibShims","__ieDyn","JavaScriptSDK_AppInsightsCore","RT_PROFILE","NRT_PROFILE","BE_PROFILE","STR_EMPTY","STR_DROPPED","STR_SENDING","STR_RESPONSE_FAIL","STR_OTHER","DEFAULT_CACHE_CONTROL","DEFAULT_CONTENT_TYPE","STR_CACHE_CONTROL","STR_CONTENT_TYPE_HEADER","STR_KILL_TOKENS_HEADER","STR_KILL_DURATION_HEADER","STR_TIME_DELTA_HEADER","STR_CLIENT_VERSION","STR_CLIENT_ID","STR_TIME_DELTA_TO_APPLY","STR_UPLOAD_TIME","STR_API_KEY","STR_MSA_DEVICE_TICKET","STR_AUTH_WEB_TOKEN","STR_MSFPC","STR_TRACE","STR_USER","_DYN_ALLOW_REQUEST_SENDIN0","_DYN_FIRST_REQUEST_SENT","_DYN_SHOULD_ADD_CLOCK_SKE1","_DYN_GET_CLOCK_SKEW_HEADE2","_DYN_SET_CLOCK_SKEW","_DYN_CONCAT","_DYN_I_KEY","_DYN_COUNT","_DYN_EVENTS","_DYN_PUSH","_DYN_SPLIT","_DYN_SPLICE","_DYN_TO_LOWER_CASE","_DYN_HDRS","_DYN_USE_HDRS","_DYN_SET_TIMEOUT_OVERRIDE","_DYN_CLEAR_TIMEOUT_OVERRI3","_DYN_PAYLOAD_PREPROCESSOR","_DYN_OVERRIDE_ENDPOINT_UR4","_DYN_AVOID_OPTIONS","_DYN_DISABLE_EVENT_TIMING5","_DYN_STRINGIFY_OBJECTS","_DYN_ENABLE_COMPOUND_KEY","_DYN_DISABLE_XHR_SYNC","_DYN_DISABLE_FETCH_KEEP_A6","_DYN_ADD_NO_RESPONSE","_DYN_EXCLUDE_CS_META_DATA","_DYN_USE_SEND_BEACON","_DYN_ALWAYS_USE_XHR_OVERR7","_DYN_UNLOAD_TRANSPORTS","_DYN_SERIALIZE_OFFLINE_EV8","_DYN_GET_OFFLINE_REQUEST_9","_DYN_CREATE_PAYLOAD","_DYN_CREATE_ONE_DSPAYLOAD","_DYN_PAYLOAD_BLOB","_DYN_HEADERS","_DYN__THE_PAYLOAD","_DYN_URL_STRING","_DYN_BATCHES","_DYN_SEND_TYPE","_DYN_ADD_HEADER","_DYN_CAN_SEND_REQUEST","_DYN_SEND_QUEUED_REQUESTS","_DYN_IS_COMPLETELY_IDLE","_DYN_SET_UNLOADING","_DYN_IS_TENANT_KILLED","_DYN_SEND_SYNCHRONOUS_BAT10","_DYN__TRANSPORT","_DYN_GET_WPARAM","_DYN_IS_BEACON","_DYN_IS_TEARDOWN","_DYN_IS_SYNC","_DYN_DATA","_DYN_TIMEOUT","_DYN__SEND_REASON","_DYN_SET_KILL_SWITCH_TENA11","_DYN__BACK_OFF_TRANSMISSI12","_DYN_IDENTIFIER","_DYN_DISABLE_OPTIMIZE_OBJ","_DYN_IGNORE_MC1_MS0_COOKI13","_DYN_EVENTS_LIMIT_IN_MEM","_DYN_AUTO_FLUSH_EVENTS_LI14","_DYN_DISABLE_AUTO_BATCH_F15","_DYN_OVERRIDE_INSTRUMENTA16","_DYN_DISABLE_TELEMETRY","_DYN_BASE_DATA","_DYN_SEND_ATTEMPT","_DYN_LATENCY","_DYN_SYNC","_getEventMsfpc","theEvent","intWeb","EventBatch_getMsfpc","theEvents","msfpc","lp","EventBatch_EventBatch","EventBatch","iKey","addEvents","events","_msfpc","Msfpc","addEvent","fromEvent","numEvents","cnt","create","ClockSkewManager_ClockSkewManager","ClockSkewManager","_allowRequestSending","_shouldAddClockSkewHeaders","_isFirstRequest","_clockSkewHeaderValue","_clockSkewSet","timeDeltaInMillis","SecToMsMultiplier","KillSwitch_KillSwitch","KillSwitch","_killedTokenDictionary","killTokens","killDuration","killedTokens","_normalizeTenants","durationMs","ex","tenantToken","killDictionary","RandomizationLowerThreshold","RandomizationUpperThreshold","BaseBackoff","MaxBackoff","retryPolicyGetMillisToBackoffForRetry","retriesSoFar","waitDuration","minBackoff","maxBackoff","randomBackoff","floor","random","pow","HttpManager_a","_MAX_STRING_JOINS","RequestSizeLimitBytes","BeaconRequestSizeLimitBytes","MaxRecordSize","MaxBeaconRecordSize","metadata","f","rCheckDot","Serializer_Serializer","Serializer","perfManager","valueSanitizer","enableCompoundKey","getEncodedTypeOverride","excludeCsMetaData","_checkForCompoundkey","_theSanitizer","_isReservedCache","_excludeCsMetaData","_getEncodedType","_processPathKeys","srcObj","thePath","checkReserved","metadataPathKeys","metadataCallback","processSubKeys","srcValue","theMetaPathKeys","destObj","subKeys","keyLen","subKey","_isReservedField","handleField","newPath","createPayload","retryCnt","isTeardown","isSync","isReducedPayload","sendReason","sendType","apiKeys","payloadBlob","sizeExceed","failedEvts","batches","isBeacon","appendPayload","payload","theBatch","maxEventsPerBatch","canAddEvents","payloadEvents","eventsAdded","sizeExceeded","isBeaconPayload","requestMaxSize","recordMaxSize","joinCount","eventBlob","getEventBlob","blobLength","evts","eventData","serializedEvent","time","_addMetadataCallback","serializedExt","pathKeys","getEncodedType","json","propKeys","propertyValue","propertyType","metaData","metaTarget","newTarget","t","_addJSONPropertyMetaData","eventExt","serializedData","baseType","serializedBaseData","createTimeoutWrapper","argSetTimeout","argClearTimeout","ms","strSendAttempt","_noResponseQs","UrlQueryString","_eventActionMap","_collectorQsHeaders","_collectorHeaderToQs","_addCollectorHeaderQsMapping","qsName","headerName","allowQs","_hasHeader","headers","header","hasHeader","lowerHeader","_addRequestDetails","details","useHeaders","url","HttpManager_HttpManager","HttpManager","maxConnections","maxRequestRetriesBeforeBackoff","actions","_urlString","_killSwitch","_paused","_clockSkewManager","_outstandingRequests","_postManager","_logger","_sendInterfaces","_core","_customHttpInterface","_queryStringParameters","_headers","_batchQueue","_serializer","_enableEventTimings","_cookieMgr","_isUnloading","_useHeaders","_xhrTimeout","_disableXhrSync","_disableFetchKeepAlive","_canHaveReducedPayload","_addNoResponse","_unloadHooks","_sendHook","_sendListener","_responseHandlers","_isInitialized","_timeoutWrapper","_sendPostMgr","_useBeacons","undefValue","_sendCredentials","_getSenderInterface","transports","syncSupport","getSenderInst","_xdrOncomplete","xdr","oncomplete","response","HelperFuncs","_doOnComplete","_handleCollectorResponse","_fetchOnComplete","onComplete","resValue","headerMap","status","responseText","handleResponse","_xhrOnComplete","request","_onBeaconRetry","canSend","thePayload","theUrl","nav_1","persistStorage","getPlugin","droppedBatches_1","sentBatches_1","sendBeacon","sentEvts","_sendBatchesNotification","_isBeaconPayload","_adjustSendType","_hasIdleConnection","_clearQueue","theQueue","_canSendPayload","theBatches","_createDebugBatches","idx","_sendBatches","retryCount","orgBatches_1","isSynchronous_1","perfEvt","droppedBatches","serializationStart","sendInterface","sendTransport","_isSync","shift","isTenantKilled","_doPayloadSend","isSynchronous","useSendBeacon","_buildRequestDetails","requestDetails","hdrs","useHdrs","apiQsKeys","encodeURIComponent","_getMsfpc","wParam","_setTimingValue","timings","serializationCompleted","useSendHook_1","sendInterface_1","useHeaders_1","requestDetails_1","sendEventStart_1","batchLp","evtLp","orgPayloadData","urlString","_thePayload","_sendReason","timeout","disableXhrSync","disableFetchKeepAlive","sender","reason","isRetrying","backOffTrans","shouldRetry","Constants","killToken","removedEvents","httpStatusCode","retryCount_1","_doAction","batchReason","_clearBackOff","sendEventCompleted_1","sendEventCompleted","_addCompleteTimings","sendQueuedRequests","_handleRequestFinished","_retryRequestIfNeeded","sendPOST","hookData_1","senderCalled_1","interval","responseHandlers","parse","webResult","sendSync","theAction_1","action","_getNotificationAction","isSyncRequest_1","theConfig","core","postChannel","getCookieMgr","diagLog","coreConfig","channelConfig","extensionConfig","anonCookieName","qsParams","_addQueryStringParameter","_removeQueryStringParameter","payloadListener","httpInterface","httpXHROverride","xhrTimeout","EnvUtils","sendPostConfig","onCompleteFuncs","xdrOnComplete","fetchOnComplete","xhrOnComplete","beaconOnRetry","enableSendPromise","isOneDs","disableCredentials","disableXhr","disableBeacon","disableBeaconSync","timeWrapper","addNoResponse","senderOnCompleteCallBack","_getSendPostMgrConfig","SetConfig","SenderPostManager","syncHttpInterface","beaconHttpInterface","fetchSyncHttpInterface","beaconUnloadTransports","theTransports","addResponseHandler","responseHandler","rm","optimize","theBatches_1","batch","payloadData","removeHeader","addBatch","teardown","hook","pause","resume","FlushCheckTimer","MaxNumberEventPerBatch","EventsDroppedAtOneTime","MaxSendAttempts","MaxSyncUnloadSendAttempts","MaxBackoffCount","MaxConnections","MaxRequestRetriesBeforeBackoff","MaxEventsLimitInMem","strEventsDiscarded","EMPTY_STR","defaultPostChannelConfig","eventsLimitInMem","v","immediateEventLimit","autoFlushEventsLimit","disableAutoBatchFlushLimit","overrideInstrumentationKey","overrideEndpointUrl","disableTelemetry","ignoreMc1Ms0CookieProcessing","setTimeoutOverride","clearTimeoutOverride","payloadPreprocessor","disableEventTimings","disableOptimizeObj","unloadTransports","avoidOptions","alwaysUseXhrOverride","maxEventRetryAttempts","maxUnloadEventRetryAttempts","_canUseLocalStorage","PostChannel_PostChannel","PostChannel","_postConfig","priority","version","_flushCallbackTimer","_immediateQueueSizeLimit","_queueSizeLimit","_scheduledTimer","_immediateTimer","_currentBackoffCount","_timerCount","_httpManager","_batchQueues","_autoFlushEventsLimit","_autoFlushBatchLimit","_delayedBatchSendLatency","_delayedBatchReason","_optimizeObject","_isPageUnloadTriggered","_maxEventSendAttempts","_maxUnloadEventSendAttempts","_evtNamespace","_ignoreMc1Ms0CookieProcessing","_disableAutoBatchFlushLimit","_notificationManager","_unloadHandlersAdded","_overrideInstrumentationKey","_disableTelemetry","_isTeardownCalled","_flushCallbackQueue","_immediateQueueSize","_queueSize","_profiles","_currentProfile","_removeUnloadHandlers","EventHelpers","_batch","arr","rlt","_serialize","_cleanEvent","_handleUnloadEvents","_releaseAllQueues","_handleShowEvents","_addEventToQueues","append","evtLatency","queueSize","queueLimit","eventDropped","_addEventToProperQueue","dropLatency","dropNumber","currentLatency","eventBatch","_getEventBatch","droppedEvents","droppedCount","_notifyBatchEvents","EventsDiscardedReason","QueueFull","_resetQueueCounts","_dropEventWithLatencyOrLess","_notifyEvents","_sendEventsForLatencyAndAbove","queued","_queueBatches","_hasEvents","_scheduleTimer","immediateTimeOut","_createTimer","timeOut","_initDefaults","requeue","_requeueEvents","send","_sendingEvent","sent","_eventsSentEvent","drop","_eventsDropped","rspFail","_eventsResponseFail","oth","_otherEvent","_initializeProfiles","iKeyMap","_setAutoLimits","theTimerFunc","timerMultiplier","_clearScheduledTimer","cancel","batchQueue","_performAutoFlush","isAsync","doFlush","flush","sync","immediateQueue","normalQueue","eventsQueued","latencyToProcess","maxSendAttempts","NonRetryableStatus","_callNotification","evtName","manager","notifyFunc","extraArgs","isSyncRequest","Unknown","getNotifyMgr","DataCacheHelper","evtNamespace","_addHook","ctx","ProcessTelemetryContext","getExtCfg","existingGetWParamMethod","wparam","_hookWParam","excludePageUnloadEvents","disablePageUnloadEvents","disablePageShowEvents","setInitialized","processTelemetry","itemCtx","_getTelCtx","processNext","getOfflineSupport","details_1","getUrl","serialize","shouldProcess","createOneDSPayload","_doTeardown","unloadCtx","unloadState","setEventQueueLimits","eventLimit","autoFlushLimit","_loadTransmitProfiles","profiles","profileName","profileValue","profLen","directValue","ceil","async","ts_async","resolve","_flushImpl","_waitForIdleManager","cleared","setMsaAuthTicket","ticket","setAuthPluginHeader","token","removeAuthPluginHeader","hasEvents","_setTransmitProfile","BaseTelemetryPlugin","Extensions","UserExt","DeviceExt","TraceExt","WebExt","AppExt","OSExt","SdkExt","IntWebExt","UtcExt","LocExt","CloudExt","DtExt","AppExtensionKeys","appName","locale","expId","env","WebExtensionKeys","domain","browser","browserVer","screenRes","userConsent","consentDetails","UserExtensionKeys","localId","OSExtKeys","osName","SDKExtKeys","seq","installId","epoch","IntWebExtKeys","anid","serviceName","UtcExtKeys","popSample","eventFlags","LocExtKeys","tz","SessionExtKeys","sessionId","DeviceExtKeys","deviceClass","make","model","CloudExtKeys","role","roleInstance","roleVer","TraceExtKeys","traceId","traceName","parentId","DistributedTraceExtKeys","spanId","traceFlags","canUseLocalStorage","_getVerifiedStorageObject","_getLocalStorageObject","storageType","fail","uid","storage","global_1","localStorage","removeItem","exception","_getId","_setId","setId","Session_Session","Session","customId","automaticId","_staticInit","cookieNameConst","SessionManager_SessionManager","SessionManager","propConfig","unloadHookContainer","_cookieUpdatedTimestamp","_storageNamePrefix","_config","CookieMgr","unloadHook","_initializeAutomaticSessionWithData","sessionData","automaticSession","acq","acquisitionDate","renewal","renewalDate","_renew","sessionAsGuid","RandomHelper","idLength","_setCookie","guid","acquisitionExpiry","sessionExpirationMs","renewalExpiry","sessionRenewalMs","cookieExpiry","cookie","setTime","cookieDomain","toUTCString","namePrefix","update","getStorage","_initializeAutomaticSession","autoSession","acquisitionExpired","renewalExpired","cookieUpdateInterval","backup","setStorage","defaultFlightIdNameSpaces","_validateAppExpId","appExpIdNew","flightIdNameSpaces","appExpId","expIdArray","_isValidAppFlightId","appFlightId","isValid","curNameSpace","substring","_getExpId","getExpId","Application_Application","Application","propertiesConfig","_appExpId","expIdCookieName","_propertiesConfig","metaElements","meta","mt","_getMetaDataFromDOM","_populateDefaults","_setAppExpId","validateAppExpId","Cloud","Device","IntWeb_getMsfpc","getMsfpc","_getAnid","getAnid","IntWeb_IntWeb","IntWeb","proto","Loc","timeZone","getTimezoneOffset","minutes","hours","timeZonePrefix","abs","OSNAMEREGEX","WIN","WINRT","WINPHONE","OSX","IOS","LINUX","ANDROID","CROS","VERSION_MAPPINGS","5.1","6.0","6.1","6.2","6.3","10.0","REGEX_VERSION","REGEX_VERSION_MAC","UNKNOWN","OSNAMES","os","_getOsVersion","_getGenericOsVersion","macOsxVersionInUserAgentMatches","RegExp","versionString","delimiter","_getDelimiter","components","_getMacOsxVersion","iosVersionInUserAgentMatches","_getIosVersion","ntVersionMatches","OperatingSystem_OperatingSystem","_name","_ver","_userName","_userVer","populateOperatingSystemInfo","theNav","userAgentDataPlatform","userAgentData","platform","lowerCaseUserAgent","_getOsName","DEVICE_ID_COOKIE","Sdk_Sdk","Sdk","_sequenceId","getSequenceId","propertyStorage","deviceId","mgr","_getData","CoreUtils","_saveData","purge","Trace_Trace","self","enableDistributedTracing","enableApplicationInsightsTrace","loc","pathname","strSetLocalId","_getLocalId","getLocalId","_setLocalId","User_User","User","_customLocalId","_populateMuidFromCookie","enableApplicationInsightsUser","aiUser","userCookieName","cookieSeparator","acqStr","accountAcquisitionDate","newCookie","nav","userLanguage","hashIdentifiers","dropIdentifiers","muidValue","HASH_IDENTIFIERS_FLAG","DROP_IDENTIFIERS_FLAG","SCRUB_IP_FLAG","Utc_Utc","scrubIpOnly","USER_CONSENT_DETAILS","Web_REGEX_VERSION","Web_UNKNOWN","EDGE_CHROMIUM","USER_AGENTS","ua","BRANDS","br","_userAgentContainsString","searchString","_getBrandVersion","brands","brand","_getBrowserVersion","browserName","classicIeVersionMatches","ieVersionMatches","_getIeVersion","browserString","matches","_getOtherVersion","_getUserConsent","getUserConsent","Web_Web","Web","_userAgent","_userAgentBrands","_userBrowser","_userBrowserVer","_browser","_browserVer","_gpcDataSharingOption","populateBrowserInfo","userAgentBrands","_getBrowserName","_parseUserAgent","gpcDataSharingOptIn","windowLocation","hostname","protocol","h","w","screen","_getScreenResolution","userConsented","userConsentCookieName","getUserConsentDetails","userConsentDetails","disableConsentDetailsSanitize","GPC_DataSharingOptIn","_applyExtValues","extension","names","overwriteTarget","field","targetValue","TelemetryContext_TelemetryContext","TelemetryContext","app","cloud","user","web","_sdk","_intWeb","_utc","device","_sessionManager","session","_distributedTraceCtx","traceContext","parentCtx","trace","getName","setName","getTraceId","setTraceId","W3cTraceParent","getSpanId","setSpanId","getTraceFlags","setTraceFlags","newTraceFlags","createDistributedTraceContextFromTraceCtx","_getTraceCtx","_overwriteEventPartA","eventContainExtFields","_getSessionId","autoId","traceCtx","getTraceCtx","getSessionId","applyApplicationContext","applyUserContext","applyWebContext","applyOsContext","applySdkContext","applyIntWebContext","applyUtcContext","utcFields","applyLocContext","applySessionContext","applyDeviceContext","applyCloudContext","applyAITraceContext","distributedTrace","applyDistributedTraceContext","traceFields","PropertiesPlugin_extensions","defaultPropertyConfig","ConfigDefaultHelpers","PropertiesPlugin_undefValue","mobile","PropertiesPlugin_PropertiesPlugin","PropertiesPlugin","_context","_properties","initialize","setTraceCtx","inputMap","outputMap","evtExt","inputValue","getPropertiesContext","ApplicationInsights_defaultConfig","cookieCfg","rdOnly","channels","_ignoreUpdateSnippetProperties","_ignoreUpdateDefineSnippetProperties","ApplicationInsights_ApplicationInsights","ApplicationInsights","_snippetVersion","_webAnalytics","_postChannel","_propertyManager","WebAnalyticsPlugin","plugins","postFound","j","extConfig","channelConfiguration","propertyConfiguration","webAnalyticsConfiguration","isInitialized","error","getPropertyManager","getPostChannel","getWebAnalyticsExtension","emptySnippetQueue","snippet","queue","updateSnippetDefinitions","sv","updateCfg","unload","unloadComplete","cbTimeout","Undefined","_logWarn","aiName","_console","global","ai","modalize","_dom_getDocument__WEBPACK_IMPORTED_MODULE_0__","tagsToIgnore","targetDocument","affectedNodes","sibling","ariaHidden","node","originalValue","removeAttribute","unmodalize","CustomizerContext","inCustomizerContext","DefaultEffects","_FluentDepths__WEBPACK_IMPORTED_MODULE_0__","elevation16","elevation64","roundedCorner2","roundedCorner4","roundedCorner6","SELECTION_CHANGE","SELECTION_ITEMS_CHANGE","SelectionMode","SelectionDirection","getResourceUrl","setBaseUrl","_baseUrl","baseUrl","safeRequestAnimationFrame","_extendComponent__WEBPACK_IMPORTED_MODULE_0__","component","activeTimeouts","Set","timeoutId","delete","composeRenderFunction","_memoize__WEBPACK_IMPORTED_MODULE_0__","memoizer","outer","inner","innerMemoizer","defaultRender","innerProps","outerProps","_timeoutIds","_immediateIds","_intervalIds","_animationFrameIds","_isDisposed","_parent","_onErrorHandler","_noop","clearImmediate","clearInterval","_logError","setImmediate","targetElement","immediateId","setInterval","intervalId","throttle","wait","lastResult","lastArgs","waitMS","leading","trailing","lastExecuteTime","userCall","waitLength","debounce","noOpFunction","pending","maxWait","lastCallTime","isNaN","markExecuted","invokeFunction","executeImmediately","maxWaitDelta","maxWaitExpired","resultFunction","animationFrameId","animationFrameCallback","extendComponent","_appendFunction__WEBPACK_IMPORTED_MODULE_0__","methods","baseElementEvents","baseElementProperties","htmlElementProperties","labelProperties","audioProperties","videoProperties","olProperties","liProperties","anchorProperties","buttonProperties","inputProperties","textAreaProperties","selectProperties","optionProperties","tableProperties","trProperties","thProperties","tdProperties","colGroupProperties","colProperties","formProperties","iframeProperties","imgProperties","imageProperties","divProperties","getNativeProps","toObjectMap","items_1","keys_1","isArray","allowedPropNames","excludedPropNames","keys_2","useCustomizationSettings","_Customizations__WEBPACK_IMPORTED_MODULE_1__","_CustomizerContext__WEBPACK_IMPORTED_MODULE_2__","properties","scopeName","useForceUpdate","STR_DEFAULT_ENDPOINT_URL","STR_VERSION","STR_PROPERTIES","hoistMethods","unhoistMethods","REACT_LIFECYCLE_EXCLUSIONS","destination","source","exclusions","hoisted","MergeStylesShadowRootContext","mergeAriaAttributeValues","ariaAttributes","mergedAttribute","filter","getNativeElementProps","_properties__WEBPACK_IMPORTED_MODULE_0__","nativeElementMap","label","audio","video","ol","li","a","button","textarea","select","option","table","td","colGroup","col","form","iframe","img","getDistanceBetweenPoints","point1","point2","left1","top1","y","left2","top2","sqrt","fitContentToBounds","scale","contentSize","boundsSize","maxScale","contentAspectRatio","boundsAspectRatio","finalScale","calculatePrecision","groups","precisionRound","precision","base","exp","round","appendFunction","functions","setSSR","AutoScroll","_EventGroup__WEBPACK_IMPORTED_MODULE_0__","_scroll__WEBPACK_IMPORTED_MODULE_1__","_dom_getRect__WEBPACK_IMPORTED_MODULE_2__","_dom__WEBPACK_IMPORTED_MODULE_3__","_events","_scrollableParent","_incrementScroll","_scrollRect","on","_onMouseMove","_onTouchMove","_stopScroll","_computeScrollVelocity","touches","clientX","clientY","scrollRect","clientDirection","scrollClient","scrollRectTop","scrollRectLeft","scrollClientBottom","scrollClientRight","_isVerticalScroll","_scrollVelocity","_startScroll","scrollTop","scrollLeft","noop","noopShadow","shadowConfig","noopRootStylesheets","Map","noopUndefined","MergeStylesDefaultContext","react","stylesheets","useAdoptedStylesheetEx","useAdoptedStylesheet","useShadowConfig","useMergeStylesShadowRootContext","useHasMergeStylesShadowRootContext","useMergeStylesRootStylesheets","useWindow","useStyled","useMergeStylesHooks","MergeStylesShadowRootConsumer","stylesheetKey","shadowCtx","rootMergeStyles","lib_shadowConfig","memoizedMakeShadowConfig","mergeComponentStyles","defaultStyles","componentStyles","__shadowConfig__","customizable","scope","fields","concatStyles","ComposedComponent","resultClass","ComponentWithInjectedProps","_styleCache","_onSettingChanged","inShadow","defaultProps","componentProps","default","mergedStyles","concatStyleSets","merged","contextType","WindowProvider","hoistStatics","safeSetTimeout","_language","STORAGE_KEY","getLanguage","persistenceType","savedLanguage","setLanguage","persistenceParam","isMac","isMacResult","shallowCompare","assign","filteredAssign","isAllowed","sourceObject","mapEnumByName","theEnum","omit","isDirectionalKeyCode","addDirectionalKeyCode","DirectionalKeyCodes","up","down","home","tab","pageUp","pageDown","themeSecondary","themeTertiary","themeLight","themeLighterAlt","blackTranslucent40","neutralPrimaryAlt","whiteTranslucent40","yellowDark","yellow","yellowLight","orange","orangeLight","orangeLighter","redDark","red","magentaDark","magenta","magentaLight","purpleDark","purple","purpleLight","blueDark","blueMid","blue","blueLight","tealDark","teal","tealLight","greenDark","green","greenLight","registerDefaultFontFaces","_FluentFonts__WEBPACK_IMPORTED_MODULE_1__","_createFontStyles__WEBPACK_IMPORTED_MODULE_2__","_fluentui_utilities__WEBPACK_IMPORTED_MODULE_3__","_fluentui_utilities__WEBPACK_IMPORTED_MODULE_4__","DefaultBaseUrl","_registerFontFace","localFontName","localFontSrc","src","fontDisplay","_registerFontFaceSet","cdnFolder","cdnFontName","urlBase","light","semilight","bold","fontUrl","Selawik","fabricConfig","fontBaseUrl","_getFontBaseUrl","composeComponentAs","_memoize__WEBPACK_IMPORTED_MODULE_2__","componentAsMemoizer","Outer","Inner","initializeComponentRef","_onMount","_onUpdate","_onUnmount","EventGroup","_dom__WEBPACK_IMPORTED_MODULE_0__","_object__WEBPACK_IMPORTED_MODULE_1__","_id","_uniqueId","_eventRecords","eventArgs","bubbleEvent","_isElement","createEvent","initEvent","dispatchEvent","createEventObject","evObj","fireEvent","__events__","eventRecords","eventRecordList","listIndex","record","objectCallback","isObserved","isDeclared","declaredEvents","__declaredEvents","stopPropagation","cancelBubble","HTMLElement","off","onAll","useCapture","eventRecord","processElementEvent","preventDefault","elementCallback","attachEvent","targetArrayLookup","targetArray","detachEvent","declare","merge","_merge","circularReferences","isCircularReference","pop","canUseDOM","createElement","mergeScopedSettings","oldSettings","_isSettingsFunction","_settingsMergeWith","scopedSettingsFromProps","oldScopedSettings","newScopedSettings","_scopedSettingsMergeWith","classNamesFunction","_rtl__WEBPACK_IMPORTED_MODULE_2__","MAX_CACHE_COUNT","DEFAULT_SPECIFICITY_MULTIPLIER","_memoizedClassNames","windowMap","styleCalcCount","getClassNamesCount","currentMemoizedClassNames","styleFunctionOrObject","styleProps","useStaticStyles","__noStyleOverride__","disableCaching","_traverseMap","specificityMultiplier","enableClassNameCacheFullWarning","clear","_traverseEdge","_normalizeValue","inputs","__cachedInputs__","mergeCustomizations","_mergeSettings__WEBPACK_IMPORTED_MODULE_0__","warnConditionallyRequiredProps","DelayedRender","_dom_getWindow__WEBPACK_IMPORTED_MODULE_2__","isRendered","delay","only","KeyCodes","backspace","enter","ctrl","alt","pauseBreak","capslock","escape","space","insert","del","zero","one","two","three","four","five","six","seven","eight","nine","colon","c","k","l","n","o","q","u","z","leftWindow","rightWindow","zero_numpad","one_numpad","two_numpad","three_numpad","four_numpad","five_numpad","six_numpad","seven_numpad","eight_numpad","nine_numpad","multiply","subtract","decimalPoint","divide","f1","f2","f3","f4","f5","f6","f7","f8","f9","f10","f11","f12","numlock","scrollLock","semicolon","equalSign","comma","dash","period","forwardSlash","graveAccent","openBracket","backSlash","closeBracket","singleQuote","createMergedRef","_array__WEBPACK_IMPORTED_MODULE_0__","local","refs","newRefs","resolver","createResolver","findIndex","array","createArray","toMatrix","columnCount","rows","currentValue","removeIndex","_","replaceElement","newElement","copy","addElementAtIndex","itemToAdd","flatten","arraysEqual","array1","array2","warnMutuallyExclusive","exclusiveMap","LocalizedFontNames","LocalizedFontFamilies","FontSizes","FontWeights","IconFontSizes","size10","size12","size14","size16","size18","size20","size24","size28","size32","size42","size68","dest","raiseClick","_getDocument__WEBPACK_IMPORTED_MODULE_0__","Event","createNewEvent","getPropsWithDefaults","propsWithoutDefaults","styled","_fluentui_merge_styles__WEBPACK_IMPORTED_MODULE_2__","_shadowDom_index__WEBPACK_IMPORTED_MODULE_3__","_customizations_useCustomizationSettings__WEBPACK_IMPORTED_MODULE_4__","DefaultFields","baseStyles","getProps","pure","Wrapped","customizedStyles","dir","additionalProps","propStyles","concatenatedStyles","pureComponent","hasHorizontalOverflow","clientWidth","scrollWidth","hasVerticalOverflow","clientHeight","scrollHeight","hasOverflow","initializeFocusRects","_keyboard__WEBPACK_IMPORTED_MODULE_1__","_setFocusVisibility__WEBPACK_IMPORTED_MODULE_2__","__hasInitializeFocusRects__","FluentTheme","_createTheme__WEBPACK_IMPORTED_MODULE_0__","_GlobalSettings__WEBPACK_IMPORTED_MODULE_1__","NO_CUSTOMIZATIONS","_allSettings","_raiseChange","applyScopedSettings","localSettings","localScopedSettings","globalScopedSettings","properties_1","applyBatchedUpdates","suppressUpdate","_suppressUpdates","onChange","DATA_IS_SCROLLABLE_ATTRIBUTE","allowScrollOnElement","allowOverscrollOnElement","disableBodyScroll","enableBodyScroll","getScrollbarWidth","findScrollableParent","_scrollbarWidth","_bodyScrollDisabledCount","DisabledScrollClassName","_previousClientY","_element","computedStyles","targetTouches","passive","scrollableParent","isColumnReverse","flexDirection","_disableIosBodyScroll","capture","scrollDiv","appendChild","offsetWidth","removeChild","startingElement","overflowY","getPropertyValue"],"mappings":"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CA,YACA,YACA,eACA,iBACA,YACA,UACA,iBACA,gBACA,gBACA,SACA,YACA,cACA,aACA,cACA,aACA,cACA,SACA,cACA,qBACA,eACA,eACA,cACA,aACA,cACA,YACA,mBACA,WACA,gBACA,aACA,cACA,eACA,WACA,UACA,kBACA,gBACA,iBACA,iBACA,gBACA,eACA,gBACA,cACA,sBACA,yBAOOzB,EAAAyB,EAAA,CACP,YACA,WACA,YACA,kBACA,MACA,YACA,SACA,UACA,KACA,OACA,MACA,OACA,QACA,WACA,QACA,YACA,aACA,SAOOxB,EAAAwB,EAAAzB,EAAAD,GAMAG,EAAAuB,EAAAxB,EAAA,CACP,SAOOE,EAAAsB,EAAAxB,EAAA,CACP,SACA,OACA,QACA,UACA,MACA,UAOOG,EAAAqB,EAAAtB,EAAA,CACP,WAOOE,EAAAoB,EAAAxB,EAAA,CACP,UAOOK,EAAAmB,EAAAxB,EAAA,CACP,UAOOM,EAAAkB,EAAAxB,EAAA,CACP,WACA,OACA,WACA,QACA,MACA,SACA,SAOOO,EAAAiB,EAAAxB,EAAA,CACP,YACA,WACA,OACA,aACA,cACA,aACA,iBACA,aACA,OACA,UAOOQ,EAAAgB,EAAAjB,EAAA,CACP,SACA,MACA,iBACA,eACA,UACA,UACA,OACA,SACA,YACA,OACA,MACA,YACA,MACA,YACA,WACA,UACA,cACA,WACA,WACA,MACA,OACA,OACA,OACA,QACA,UAOOE,EAAAe,EAAAjB,EAAA,CACP,iBACA,OACA,UACA,OACA,YACA,YACA,cACA,WACA,WACA,OACA,SAOOG,EAAAc,EAAAjB,EAAA,CACP,OACA,WACA,aAEOI,EAAAa,EAAAxB,EAAA,CACP,WACA,UAOOY,EAAAY,EAAAxB,EAAA,CACP,cACA,gBAOOa,EAAAb,EAMAc,EAAAU,EAAAxB,EAAA,CACP,UACA,UAOOe,EAAAS,EAAAxB,EAAA,CACP,UACA,UACA,UACA,UAEOgB,EAAAQ,EAAAxB,EAAA,CACP,SAEOiB,EAAAO,EAAAxB,EAAA,CACP,SAOOkB,EAAAM,EAAAxB,EAAA,CACP,gBACA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","file":"static/js/vendor.initial~9bb2fea8.a0c3d9ff.chunk.js","sourcesContent":["// A packages cache that makes sure that we don't inject the same packageName twice in the same bundle -\n// this cache is local to the module closure inside this bundle\nvar packagesCache = {};\n// Cache access to window to avoid IE11 memory leak.\nvar _win = undefined;\ntry {\n _win = window;\n}\ncatch (e) {\n /* no-op */\n}\nexport function setVersion(packageName, packageVersion) {\n if (typeof _win !== 'undefined') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var packages = (_win.__packages__ = _win.__packages__ || {});\n // We allow either the global packages or local packages caches to invalidate so testing can\n // just clear the global to set this state\n if (!packages[packageName] || !packagesCache[packageName]) {\n packagesCache[packageName] = packageVersion;\n var versions = (packages[packageName] = packages[packageName] || []);\n versions.push(packageVersion);\n }\n }\n}\n//# sourceMappingURL=setVersion.js.map","import { setVersion } from './setVersion';\nexport { setVersion };\nsetVersion('@fluentui/set-version', '6.0.0');\n//# sourceMappingURL=index.js.map","import { Stylesheet } from '@fluentui/merge-styles';\nvar _initializedStylesheetResets = false;\nvar _resetCounter = 0;\nvar _emptyObject = { empty: true };\nvar _dictionary = {};\nvar _weakMap = typeof WeakMap === 'undefined' ? null : WeakMap;\n/**\n * Test utility for providing a custom weakmap.\n *\n * @internal\n * */\nexport function setMemoizeWeakMap(weakMap) {\n _weakMap = weakMap;\n}\n/**\n * Reset memoizations.\n */\nexport function resetMemoizations() {\n _resetCounter++;\n}\n/**\n * Memoize decorator to be used on class methods. WARNING: the `this` reference\n * will be inaccessible within a memoized method, given that a cached method's `this`\n * would not be instance-specific.\n *\n * @public\n */\nexport function memoize(_target, _key, descriptor) {\n // We bind to \"null\" to prevent people from inadvertently pulling values from \"this\",\n // rather than passing them in as input values which can be memoized.\n var fn = memoizeFunction(descriptor.value && descriptor.value.bind(null));\n return {\n configurable: true,\n get: function () {\n return fn;\n },\n };\n}\n/**\n * Memoizes a function; when you pass in the same parameters multiple times, it returns a cached result.\n * Be careful when passing in objects, you need to pass in the same INSTANCE for caching to work. Otherwise\n * it will grow the cache unnecessarily. Also avoid using default values that evaluate functions; passing in\n * undefined for a value and relying on a default function will execute it the first time, but will not\n * re-evaluate subsequent times which may have been unexpected.\n *\n * By default, the cache will reset after 100 permutations, to avoid abuse cases where the function is\n * unintendedly called with unique objects. Without a reset, the cache could grow infinitely, so we safeguard\n * by resetting. To override this behavior, pass a value of 0 to the maxCacheSize parameter.\n *\n * @public\n * @param cb - The function to memoize.\n * @param maxCacheSize - Max results to cache. If the cache exceeds this value, it will reset on the next call.\n * @param ignoreNullOrUndefinedResult - Flag to decide whether to cache callback result if it is undefined/null.\n * If the flag is set to true, the callback result is recomputed every time till the callback result is\n * not undefined/null for the first time, and then the non-undefined/null version gets cached.\n * @returns A memoized version of the function.\n */\nexport function memoizeFunction(cb, maxCacheSize, ignoreNullOrUndefinedResult) {\n if (maxCacheSize === void 0) { maxCacheSize = 100; }\n if (ignoreNullOrUndefinedResult === void 0) { ignoreNullOrUndefinedResult = false; }\n // Avoid breaking scenarios which don't have weak map.\n if (!_weakMap) {\n return cb;\n }\n if (!_initializedStylesheetResets) {\n var stylesheet = Stylesheet.getInstance();\n if (stylesheet && stylesheet.onReset) {\n Stylesheet.getInstance().onReset(resetMemoizations);\n }\n _initializedStylesheetResets = true;\n }\n var rootNode;\n var cacheSize = 0;\n var localResetCounter = _resetCounter;\n return function memoizedFunction() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var currentNode = rootNode;\n if (rootNode === undefined ||\n localResetCounter !== _resetCounter ||\n (maxCacheSize > 0 && cacheSize > maxCacheSize)) {\n rootNode = _createNode();\n cacheSize = 0;\n localResetCounter = _resetCounter;\n }\n currentNode = rootNode;\n // Traverse the tree until we find the match.\n for (var i = 0; i < args.length; i++) {\n var arg = _normalizeArg(args[i]);\n if (!currentNode.map.has(arg)) {\n currentNode.map.set(arg, _createNode());\n }\n currentNode = currentNode.map.get(arg);\n }\n if (!currentNode.hasOwnProperty('value')) {\n currentNode.value = cb.apply(void 0, args);\n cacheSize++;\n }\n if (ignoreNullOrUndefinedResult && (currentNode.value === null || currentNode.value === undefined)) {\n currentNode.value = cb.apply(void 0, args);\n }\n return currentNode.value;\n };\n}\n/**\n * Creates a memoizer for a single-value function, backed by a WeakMap.\n * With a WeakMap, the memoized values are only kept as long as the source objects,\n * ensuring that there is no memory leak.\n *\n * This function assumes that the input values passed to the wrapped function will be\n * `function` or `object` types. To memoize functions which accept other inputs, use\n * `memoizeFunction`, which memoizes against arbitrary inputs using a lookup cache.\n *\n * @public\n */\nexport function createMemoizer(getValue) {\n if (!_weakMap) {\n // Without a `WeakMap` implementation, memoization is not possible.\n return getValue;\n }\n var cache = new _weakMap();\n function memoizedGetValue(input) {\n if (!input || (typeof input !== 'function' && typeof input !== 'object')) {\n // A WeakMap can only be used to test against reference values, i.e. 'function' and 'object'.\n // All other inputs cannot be memoized against in this manner.\n return getValue(input);\n }\n if (cache.has(input)) {\n return cache.get(input);\n }\n var value = getValue(input);\n cache.set(input, value);\n return value;\n }\n return memoizedGetValue;\n}\nfunction _normalizeArg(val) {\n if (!val) {\n return _emptyObject;\n }\n else if (typeof val === 'object' || typeof val === 'function') {\n return val;\n }\n else if (!_dictionary[val]) {\n _dictionary[val] = { val: val };\n }\n return _dictionary[val];\n}\nfunction _createNode() {\n return {\n map: _weakMap ? new _weakMap() : null,\n };\n}\n//# sourceMappingURL=memoize.js.map","import { merge } from '@fluentui/utilities';\nimport { getSemanticColors } from './utilities/makeSemanticColors';\n/**\n * Merge a partial/full theme into a full theme and returns a merged full theme.\n */\nexport function mergeThemes(theme, partialTheme) {\n var _a, _b, _c;\n if (partialTheme === void 0) { partialTheme = {}; }\n var mergedTheme = merge({}, theme, partialTheme, {\n semanticColors: getSemanticColors(partialTheme.palette, partialTheme.effects, partialTheme.semanticColors, partialTheme.isInverted === undefined ? theme.isInverted : partialTheme.isInverted),\n });\n if (((_a = partialTheme.palette) === null || _a === void 0 ? void 0 : _a.themePrimary) && !((_b = partialTheme.palette) === null || _b === void 0 ? void 0 : _b.accent)) {\n mergedTheme.palette.accent = partialTheme.palette.themePrimary;\n }\n if (partialTheme.defaultFontStyle) {\n for (var _i = 0, _d = Object.keys(mergedTheme.fonts); _i < _d.length; _i++) {\n var fontStyle = _d[_i];\n mergedTheme.fonts[fontStyle] = merge(mergedTheme.fonts[fontStyle], partialTheme.defaultFontStyle, (_c = partialTheme === null || partialTheme === void 0 ? void 0 : partialTheme.fonts) === null || _c === void 0 ? void 0 : _c[fontStyle]);\n }\n }\n return mergedTheme;\n}\n//# sourceMappingURL=mergeThemes.js.map","import { elementContainsAttribute } from './dom/elementContainsAttribute';\nimport { elementContains } from './dom/elementContains';\nimport { getParent } from './dom/getParent';\nimport { getWindow } from './dom/getWindow';\nimport { getDocument } from './dom/getDocument';\nvar IS_FOCUSABLE_ATTRIBUTE = 'data-is-focusable';\nvar IS_VISIBLE_ATTRIBUTE = 'data-is-visible';\nvar FOCUSZONE_ID_ATTRIBUTE = 'data-focuszone-id';\nvar FOCUSZONE_SUB_ATTRIBUTE = 'data-is-sub-focuszone';\n/**\n * Gets the first focusable element.\n *\n * @public\n */\nexport function getFirstFocusable(rootElement, currentElement, includeElementsInFocusZones, includeShadowRoots) {\n return getNextElement(rootElement, currentElement, true /*checkNode*/, false /*suppressParentTraversal*/, false /*suppressChildTraversal*/, includeElementsInFocusZones, undefined, undefined, undefined, includeShadowRoots);\n}\n/**\n * Gets the last focusable element.\n *\n * @public\n */\nexport function getLastFocusable(rootElement, currentElement, includeElementsInFocusZones, includeShadowRoots) {\n return getPreviousElement(rootElement, currentElement, true /*checkNode*/, false /*suppressParentTraversal*/, true /*traverseChildren*/, includeElementsInFocusZones, undefined, undefined, includeShadowRoots);\n}\n/**\n * Gets the first tabbable element. (The difference between focusable and tabbable is that tabbable elements are\n * focusable elements that also have tabIndex != -1.)\n * @param rootElement - The parent element to search beneath.\n * @param currentElement - The descendant of rootElement to start the search at. This element is the first one checked,\n * and iteration continues forward. Typical use passes rootElement.firstChild.\n * @param includeElementsInFocusZones - true if traversal should go into FocusZone descendants.\n * @param checkNode - Include currentElement in search when true. Defaults to true.\n * @public\n */\nexport function getFirstTabbable(rootElement, currentElement, includeElementsInFocusZones, checkNode, includeShadowRoots) {\n if (checkNode === void 0) { checkNode = true; }\n return getNextElement(rootElement, currentElement, checkNode, false /*suppressParentTraversal*/, false /*suppressChildTraversal*/, includeElementsInFocusZones, false /*allowFocusRoot*/, true /*tabbable*/, undefined, includeShadowRoots);\n}\n/**\n * Gets the last tabbable element. (The difference between focusable and tabbable is that tabbable elements are\n * focusable elements that also have tabIndex != -1.)\n * @param rootElement - The parent element to search beneath.\n * @param currentElement - The descendant of rootElement to start the search at. This element is the first one checked,\n * and iteration continues in reverse. Typical use passes rootElement.lastChild.\n * @param includeElementsInFocusZones - true if traversal should go into FocusZone descendants.\n * @param checkNode - Include currentElement in search when true. Defaults to true.\n * @public\n */\nexport function getLastTabbable(rootElement, currentElement, includeElementsInFocusZones, checkNode, includeShadowRoots) {\n if (checkNode === void 0) { checkNode = true; }\n return getPreviousElement(rootElement, currentElement, checkNode, false /*suppressParentTraversal*/, true /*traverseChildren*/, includeElementsInFocusZones, false /*allowFocusRoot*/, true /*tabbable*/, includeShadowRoots);\n}\n/**\n * Attempts to focus the first focusable element that is a child or child's child of the rootElement.\n *\n * @public\n * @param rootElement - Element to start the search for a focusable child.\n * @param bypassHiddenElements - If true, focus will be not be set on hidden elements.\n * @returns True if focus was set, false if it was not.\n */\nexport function focusFirstChild(rootElement, bypassHiddenElements, includeShadowRoots) {\n var element = getNextElement(rootElement, rootElement, true, false, false, true, undefined, undefined, bypassHiddenElements, includeShadowRoots);\n if (element) {\n focusAsync(element);\n return true;\n }\n return false;\n}\n/**\n * Traverse to find the previous element.\n * If tabbable is true, the element must have tabIndex != -1.\n *\n * @public\n */\nexport function getPreviousElement(rootElement, currentElement, checkNode, suppressParentTraversal, traverseChildren, includeElementsInFocusZones, allowFocusRoot, tabbable, includeShadowRoots) {\n var _a;\n if (!currentElement || (!allowFocusRoot && currentElement === rootElement)) {\n return null;\n }\n var isCurrentElementVisible = isElementVisible(currentElement);\n // Check its children.\n if (traverseChildren &&\n isCurrentElementVisible &&\n (includeElementsInFocusZones || !(isElementFocusZone(currentElement) || isElementFocusSubZone(currentElement)))) {\n var lastElementChild = (currentElement.lastElementChild ||\n (includeShadowRoots && ((_a = currentElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.lastElementChild)));\n var childMatch = getPreviousElement(rootElement, lastElementChild, true, true, true, includeElementsInFocusZones, allowFocusRoot, tabbable, includeShadowRoots);\n if (childMatch) {\n if ((tabbable && isElementTabbable(childMatch, true, includeShadowRoots)) || !tabbable) {\n return childMatch;\n }\n var childMatchSiblingMatch = getPreviousElement(rootElement, childMatch.previousElementSibling, true, true, true, includeElementsInFocusZones, allowFocusRoot, tabbable, includeShadowRoots);\n if (childMatchSiblingMatch) {\n return childMatchSiblingMatch;\n }\n var childMatchParent = childMatch.parentElement;\n // At this point if we have not found any potential matches\n // start looking at the rest of the subtree under the currentParent.\n // NOTE: We do not want to recurse here because doing so could\n // cause elements to get skipped.\n while (childMatchParent && childMatchParent !== currentElement) {\n var childMatchParentMatch = getPreviousElement(rootElement, childMatchParent.previousElementSibling, true, true, true, includeElementsInFocusZones, allowFocusRoot, tabbable, includeShadowRoots);\n if (childMatchParentMatch) {\n return childMatchParentMatch;\n }\n childMatchParent = childMatchParent.parentElement;\n }\n }\n }\n // Check the current node, if it's not the first traversal.\n if (checkNode && isCurrentElementVisible && isElementTabbable(currentElement, tabbable, includeShadowRoots)) {\n return currentElement;\n }\n // Check its previous sibling.\n var siblingMatch = getPreviousElement(rootElement, currentElement.previousElementSibling, true, true, true, includeElementsInFocusZones, allowFocusRoot, tabbable, includeShadowRoots);\n if (siblingMatch) {\n return siblingMatch;\n }\n // Check its parent.\n if (!suppressParentTraversal) {\n return getPreviousElement(rootElement, currentElement.parentElement, true, false, false, includeElementsInFocusZones, allowFocusRoot, tabbable, includeShadowRoots);\n }\n return null;\n}\n/**\n * Traverse to find the next focusable element.\n * If tabbable is true, the element must have tabIndex != -1.\n *\n * @public\n * @param checkNode - Include currentElement in search when true.\n */\nexport function getNextElement(rootElement, currentElement, checkNode, suppressParentTraversal, suppressChildTraversal, includeElementsInFocusZones, allowFocusRoot, tabbable, bypassHiddenElements, includeShadowRoots) {\n var _a;\n if (!currentElement || (currentElement === rootElement && suppressChildTraversal && !allowFocusRoot)) {\n return null;\n }\n var checkElementVisibility = bypassHiddenElements ? isElementVisibleAndNotHidden : isElementVisible;\n var isCurrentElementVisible = checkElementVisibility(currentElement);\n // Check the current node, if it's not the first traversal.\n if (checkNode && isCurrentElementVisible && isElementTabbable(currentElement, tabbable, includeShadowRoots)) {\n return currentElement;\n }\n // Check its children.\n if (!suppressChildTraversal &&\n isCurrentElementVisible &&\n (includeElementsInFocusZones || !(isElementFocusZone(currentElement) || isElementFocusSubZone(currentElement)))) {\n var firstElementchild = (currentElement.firstElementChild ||\n (includeShadowRoots && ((_a = currentElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.firstElementChild)));\n var childMatch = getNextElement(rootElement, firstElementchild, true, true, false, includeElementsInFocusZones, allowFocusRoot, tabbable, bypassHiddenElements, includeShadowRoots);\n if (childMatch) {\n return childMatch;\n }\n }\n if (currentElement === rootElement) {\n return null;\n }\n // Check its sibling.\n var siblingMatch = getNextElement(rootElement, currentElement.nextElementSibling, true, true, false, includeElementsInFocusZones, allowFocusRoot, tabbable, bypassHiddenElements, includeShadowRoots);\n if (siblingMatch) {\n return siblingMatch;\n }\n if (!suppressParentTraversal) {\n return getNextElement(rootElement, currentElement.parentElement, false, false, true, includeElementsInFocusZones, allowFocusRoot, tabbable, bypassHiddenElements, includeShadowRoots);\n }\n return null;\n}\n/**\n * Determines if an element is visible.\n *\n * @public\n */\nexport function isElementVisible(element) {\n // If the element is not valid, return false.\n if (!element || !element.getAttribute) {\n return false;\n }\n var visibilityAttribute = element.getAttribute(IS_VISIBLE_ATTRIBUTE);\n // If the element is explicitly marked with the visibility attribute, return that value as boolean.\n if (visibilityAttribute !== null && visibilityAttribute !== undefined) {\n return visibilityAttribute === 'true';\n }\n // Fallback to other methods of determining actual visibility.\n return (element.offsetHeight !== 0 ||\n element.offsetParent !== null ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n element.isVisible === true); // used as a workaround for testing.\n}\n/**\n * Determines if an element is visible and not hidden\n * @param element - Element to check\n * @returns Returns true if the given element is visible and not hidden\n *\n * @public\n */\nexport function isElementVisibleAndNotHidden(element, win) {\n var theWin = win !== null && win !== void 0 ? win : getWindow();\n return (!!element &&\n isElementVisible(element) &&\n !element.hidden &&\n theWin.getComputedStyle(element).visibility !== 'hidden');\n}\n/**\n * Determines if an element can receive focus programmatically or via a mouse click.\n * If checkTabIndex is true, additionally checks to ensure the element can be focused with the tab key,\n * meaning tabIndex != -1.\n *\n * @public\n */\nexport function isElementTabbable(element, checkTabIndex, checkShadowRoot) {\n if (checkShadowRoot === void 0) { checkShadowRoot = true; }\n // If this element is null or is disabled, it is not considered tabbable.\n if (!element || element.disabled) {\n return false;\n }\n var tabIndex = 0;\n var tabIndexAttributeValue = null;\n if (element && element.getAttribute) {\n tabIndexAttributeValue = element.getAttribute('tabIndex');\n if (tabIndexAttributeValue) {\n tabIndex = parseInt(tabIndexAttributeValue, 10);\n }\n }\n var isFocusableAttribute = element.getAttribute ? element.getAttribute(IS_FOCUSABLE_ATTRIBUTE) : null;\n var isTabIndexSet = tabIndexAttributeValue !== null && tabIndex >= 0;\n var delegatesFocus = checkShadowRoot && element.shadowRoot ? !!element.shadowRoot.delegatesFocus : false;\n var result = !!element &&\n isFocusableAttribute !== 'false' &&\n (element.tagName === 'A' ||\n element.tagName === 'BUTTON' ||\n element.tagName === 'INPUT' ||\n element.tagName === 'TEXTAREA' ||\n element.tagName === 'SELECT' ||\n isFocusableAttribute === 'true' ||\n isTabIndexSet ||\n delegatesFocus);\n return checkTabIndex ? tabIndex !== -1 && result : result;\n}\n/**\n * Determines if a given element is a focus zone.\n *\n * @public\n */\nexport function isElementFocusZone(element) {\n return !!(element && element.getAttribute && !!element.getAttribute(FOCUSZONE_ID_ATTRIBUTE));\n}\n/**\n * Determines if a given element is a focus sub zone.\n *\n * @public\n */\nexport function isElementFocusSubZone(element) {\n return !!(element && element.getAttribute && element.getAttribute(FOCUSZONE_SUB_ATTRIBUTE) === 'true');\n}\n/**\n * Determines if an element, or any of its children, contain focus.\n *\n * @public\n */\nexport function doesElementContainFocus(element) {\n var doc = getDocument(element);\n var currentActiveElement = doc && doc.activeElement;\n if (currentActiveElement && elementContains(element, currentActiveElement)) {\n return true;\n }\n return false;\n}\n/**\n * Determines if an, or any of its ancestors, sepcificies that it doesn't want focus to wrap\n * @param element - element to start searching from\n * @param noWrapDataAttribute - the no wrap data attribute to match (either)\n * @returns true if focus should wrap, false otherwise\n */\nexport function shouldWrapFocus(element, noWrapDataAttribute, doc) {\n var theDoc = doc !== null && doc !== void 0 ? doc : getDocument();\n return elementContainsAttribute(element, noWrapDataAttribute, theDoc) === 'true' ? false : true;\n}\nvar animationId = undefined;\n/**\n * Sets focus to an element asynchronously. The focus will be set at the next browser repaint,\n * meaning it won't cause any extra recalculations. If more than one focusAsync is called during one frame,\n * only the latest called focusAsync element will actually be focused\n * @param element - The element to focus\n */\nexport function focusAsync(element) {\n if (element) {\n var win = getWindow(element);\n if (win) {\n // cancel any previous focus queues\n if (animationId !== undefined) {\n win.cancelAnimationFrame(animationId);\n }\n // element.focus() is a no-op if the element is no longer in the DOM, meaning this is always safe\n animationId = win.requestAnimationFrame(function () {\n element && element.focus();\n // We are done focusing for this frame, so reset the queued focus element\n animationId = undefined;\n });\n }\n }\n}\n/**\n * Finds the closest focusable element via an index path from a parent. See\n * `getElementIndexPath` for getting an index path from an element to a child.\n */\nexport function getFocusableByIndexPath(parent, path) {\n var element = parent;\n for (var _i = 0, path_1 = path; _i < path_1.length; _i++) {\n var index = path_1[_i];\n var nextChild = element.children[Math.min(index, element.children.length - 1)];\n if (!nextChild) {\n break;\n }\n element = nextChild;\n }\n element =\n isElementTabbable(element) && isElementVisible(element)\n ? element\n : getNextElement(parent, element, true) || getPreviousElement(parent, element);\n return element;\n}\n/**\n * Finds the element index path from a parent element to a child element.\n *\n * If you had this node structure: \"A has children [B, C] and C has child D\",\n * the index path from A to D would be [1, 0], or `parent.chidren[1].children[0]`.\n */\nexport function getElementIndexPath(fromElement, toElement) {\n var path = [];\n while (toElement && fromElement && toElement !== fromElement) {\n var parent_1 = getParent(toElement, true);\n if (parent_1 === null) {\n return [];\n }\n path.unshift(Array.prototype.indexOf.call(parent_1.children, toElement));\n toElement = parent_1;\n }\n return path;\n}\n//# sourceMappingURL=focus.js.map","// Regex that finds { and } so they can be removed on a lookup for string format\nvar FORMAT_ARGS_REGEX = /[\\{\\}]/g;\n// Regex that finds {#} so it can be replaced by the arguments in string format\nvar FORMAT_REGEX = /\\{\\d+\\}/g;\n/**\n * String format method, used for scenarios where at runtime you\n * need to evaluate a formatted string given a tokenized string. This\n * usually only is needed in localization scenarios.\n\n * @example\n * ```tsx\n * \"I love {0} every {1}\".format(\"CXP\")\n * ```\n * will result in a Debug Exception.\n *\n * @public\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function format(s) {\n var values = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n values[_i - 1] = arguments[_i];\n }\n var args = values;\n // Callback match function\n function replaceFunc(match) {\n // looks up in the args\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var replacement = args[match.replace(FORMAT_ARGS_REGEX, '')];\n // catches undefined in nondebug and null in debug and nondebug\n if (replacement === null || replacement === undefined) {\n replacement = '';\n }\n return replacement;\n }\n return s.replace(FORMAT_REGEX, replaceFunc);\n}\n//# sourceMappingURL=string.js.map","import { isElementVisibleAndNotHidden } from '../focus';\nimport { getDocument } from './getDocument';\n/**\n * Gets the first visible element that matches the given selector\n * @param selector - The selector to use to find potential visible elements\n * @returns The first visible element that matches the selector, otherwise undefined\n *\n * @public\n */\nexport function getFirstVisibleElementFromSelector(selector) {\n var doc = getDocument();\n var elements = doc.querySelectorAll(selector);\n // Iterate across the elements that match the selector and return the first visible/non-hidden element\n return Array.from(elements).find(function (element) { var _a; return isElementVisibleAndNotHidden(element, (_a = doc.defaultView) !== null && _a !== void 0 ? _a : undefined); });\n}\n//# sourceMappingURL=getFirstVisibleElementFromSelector.js.map","import { warn } from './warn';\n/**\n * Warns when a deprecated props are being used.\n *\n * @public\n * @param componentName - The name of the component being used.\n * @param props - The props passed into the component.\n * @param deprecationMap - The map of deprecations, where key is the prop name and the value is\n * either null or a replacement prop name.\n */\nexport function warnDeprecations(componentName, props, deprecationMap) {\n if (process.env.NODE_ENV !== 'production') {\n for (var propName in deprecationMap) {\n if (props && propName in props) {\n var deprecationMessage = \"\".concat(componentName, \" property '\").concat(propName, \"' was used but has been deprecated.\");\n var replacementPropName = deprecationMap[propName];\n if (replacementPropName) {\n deprecationMessage += \" Use '\".concat(replacementPropName, \"' instead.\");\n }\n warn(deprecationMessage);\n }\n }\n }\n}\n//# sourceMappingURL=warnDeprecations.js.map","import * as React from 'react';\nimport { getWindow } from './dom/getWindow';\nimport { isDirectionalKeyCode } from './keyboard';\nimport { setFocusVisibility } from './setFocusVisibility';\nvar mountCounters = new WeakMap();\nvar callbackMap = new WeakMap();\nfunction setMountCounters(key, delta) {\n var newValue;\n var currValue = mountCounters.get(key);\n if (currValue) {\n newValue = currValue + delta;\n }\n else {\n newValue = 1;\n }\n mountCounters.set(key, newValue);\n return newValue;\n}\nfunction setCallbackMap(context) {\n var callbacks = callbackMap.get(context);\n if (callbacks) {\n return callbacks;\n }\n var onMouseDown = function (ev) { return _onMouseDown(ev, context.registeredProviders); };\n var onPointerDown = function (ev) { return _onPointerDown(ev, context.registeredProviders); };\n var onKeyDown = function (ev) { return _onKeyDown(ev, context.registeredProviders); };\n var onKeyUp = function (ev) { return _onKeyUp(ev, context.registeredProviders); };\n callbacks = { onMouseDown: onMouseDown, onPointerDown: onPointerDown, onKeyDown: onKeyDown, onKeyUp: onKeyUp };\n callbackMap.set(context, callbacks);\n return callbacks;\n}\nexport var FocusRectsContext = React.createContext(undefined);\n/**\n * Initializes the logic which:\n *\n * 1. Subscribes keydown, keyup, mousedown and pointerdown events. (It will only do it once for the current element of\n * the FocusRectsContext providerRef or once per window if no such element is provided via context, so it's safe to\n * call this method multiple times.)\n * 2. When the user presses triggers a keydown or keyup event via directional keyboard keys, adds the\n * 'ms-Fabric--isFocusVisible' classname to the current element of the FocusRectsContext providerRef or the document\n * body if no such element is provided via context, and removes the 'ms-Fabric-isFocusHidden' classname.\n * 3. When the user triggers a mousedown or pointerdown event, adds the 'ms-Fabric-isFocusHidden' classname to the\n * current element of the FocusRectsContext providerRef or the document body if no such element is provided via\n * context, and removes the 'ms-Fabric--isFocusVisible' classname.\n *\n * This logic allows components on the page to conditionally render focus treatments based on\n * the existence of global classnames, which simplifies logic overall.\n *\n * @param rootRef - A Ref object. Focus rectangle can be applied on itself and all its children.\n */\nexport function useFocusRects(rootRef) {\n var context = React.useContext(FocusRectsContext);\n React.useEffect(function () {\n var _a, _b, _c, _d;\n var win = getWindow(rootRef === null || rootRef === void 0 ? void 0 : rootRef.current);\n if (!win || ((_a = win.FabricConfig) === null || _a === void 0 ? void 0 : _a.disableFocusRects) === true) {\n return undefined;\n }\n var el = win;\n var onMouseDown;\n var onPointerDown;\n var onKeyDown;\n var onKeyUp;\n if (((_b = context === null || context === void 0 ? void 0 : context.providerRef) === null || _b === void 0 ? void 0 : _b.current) &&\n ((_d = (_c = context === null || context === void 0 ? void 0 : context.providerRef) === null || _c === void 0 ? void 0 : _c.current) === null || _d === void 0 ? void 0 : _d.addEventListener)) {\n el = context.providerRef.current;\n // The NOINLINE directive tells terser not to move the setCallbackMap implementation into the call site during\n // minification.\n // This prevents the function from capturing additional variables in the closure, which can cause memory leaks.\n var callbacks = /*@__NOINLINE__*/ setCallbackMap(context);\n onMouseDown = callbacks.onMouseDown;\n onPointerDown = callbacks.onPointerDown;\n onKeyDown = callbacks.onKeyDown;\n onKeyUp = callbacks.onKeyUp;\n }\n else {\n onMouseDown = _onMouseDown;\n onPointerDown = _onPointerDown;\n onKeyDown = _onKeyDown;\n onKeyUp = _onKeyUp;\n }\n var count = setMountCounters(el, 1);\n if (count <= 1) {\n el.addEventListener('mousedown', onMouseDown, true);\n el.addEventListener('pointerdown', onPointerDown, true);\n el.addEventListener('keydown', onKeyDown, true);\n el.addEventListener('keyup', onKeyUp, true);\n }\n return function () {\n var _a;\n if (!win || ((_a = win.FabricConfig) === null || _a === void 0 ? void 0 : _a.disableFocusRects) === true) {\n return;\n }\n count = setMountCounters(el, -1);\n if (count === 0) {\n el.removeEventListener('mousedown', onMouseDown, true);\n el.removeEventListener('pointerdown', onPointerDown, true);\n el.removeEventListener('keydown', onKeyDown, true);\n el.removeEventListener('keyup', onKeyUp, true);\n }\n };\n }, [context, rootRef]);\n}\n/**\n * Function Component wrapper which enables calling `useFocusRects` hook.\n * Renders nothing.\n */\nexport var FocusRects = function (props) {\n useFocusRects(props.rootRef);\n return null;\n};\nfunction _onMouseDown(ev, registeredProviders) {\n setFocusVisibility(false, ev.target, registeredProviders);\n}\nfunction _onPointerDown(ev, registeredProviders) {\n if (ev.pointerType !== 'mouse') {\n setFocusVisibility(false, ev.target, registeredProviders);\n }\n}\n// You need both a keydown and a keyup listener that sets focus visibility to true to handle two distinct scenarios when\n// attaching the listeners and classnames to the provider instead of the document body.\n// If you only have a keydown listener, then the focus rectangles will not show when moving from outside of the provider\n// to inside it. That is why a keyup listener is needed, since it will always trigger after the focus event is fired.\n// If you only have a keyup listener, then the focus rectangles will not show moving between different tabbable elements\n// if the tab key is pressed without being released. That's is why we need a keydown listener, since it will trigger for\n// every element that is being tabbed into.\n// This works because `classList.add` is smart and will not duplicate a classname that already exists on the classList\n// when focus visibility is turned on.\nfunction _onKeyDown(ev, registeredProviders) {\n // eslint-disable-next-line deprecation/deprecation\n if (isDirectionalKeyCode(ev.which)) {\n setFocusVisibility(true, ev.target, registeredProviders);\n }\n}\nfunction _onKeyUp(ev, registeredProviders) {\n // eslint-disable-next-line deprecation/deprecation\n if (isDirectionalKeyCode(ev.which)) {\n setFocusVisibility(true, ev.target, registeredProviders);\n }\n}\n//# sourceMappingURL=useFocusRects.js.map","/**\n * Concatination helper, which can merge class names together. Skips over falsey values.\n *\n * @public\n */\nexport function css() {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var classes = [];\n for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {\n var arg = args_1[_a];\n if (arg) {\n if (typeof arg === 'string') {\n classes.push(arg);\n }\n else if (arg.hasOwnProperty('toString') && typeof arg.toString === 'function') {\n classes.push(arg.toString());\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n for (var key in arg) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (arg[key]) {\n classes.push(key);\n }\n }\n }\n }\n }\n return classes.join(' ');\n}\n//# sourceMappingURL=css.js.map","/**\n * asAsync - a HOC for async loading components.\n *\n * Usage:\n *\n * const AsyncDialog = asAsync({\n * load: () => import('Dialog').then(result => result.default),\n * });\n *\n * React.render(domElement, } { ...dialogProps } />);\n *\n * Note the `asyncPlaceholder` prop will be respected when rendering the async component and it hasn't\n * been loaded yet.\n */\nimport { __assign, __extends, __rest } from \"tslib\";\nimport * as React from 'react';\n/**\n * If possible, use a WeakMap to maintain a cache of loaded components.\n * This can be used to synchronously render components that have already been loaded,\n * rather than having to wait for at least one async tick.\n */\nvar _syncModuleCache = typeof WeakMap !== 'undefined'\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n new WeakMap()\n : undefined;\n/**\n * Produces a component which internally loads the target component before first mount.\n * The component passes all props through to the loaded component.\n *\n * This overload accepts a module with a default export for the component.\n */\nexport function asAsync(options) {\n var Async = /** @class */ (function (_super) {\n __extends(Async, _super);\n function Async() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n Component: _syncModuleCache ? _syncModuleCache.get(options.load) : undefined,\n };\n return _this;\n }\n Async.prototype.render = function () {\n // Typescript issue: the rest can't be pulled without the any cast, as TypeScript fails with rest on generics.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var _a = this.props, forwardedRef = _a.forwardedRef, Placeholder = _a.asyncPlaceholder, rest = __rest(_a, [\"forwardedRef\", \"asyncPlaceholder\"]);\n var Component = this.state.Component;\n return Component ? (React.createElement(Component, __assign(__assign({}, rest), { ref: forwardedRef }))) : Placeholder ? (React.createElement(Placeholder, null)) : null;\n };\n Async.prototype.componentDidMount = function () {\n var _this = this;\n var Component = this.state.Component;\n if (!Component) {\n options\n .load()\n .then(function (LoadedComponent) {\n if (LoadedComponent) {\n // Cache component for future reference.\n _syncModuleCache && _syncModuleCache.set(options.load, LoadedComponent);\n // Set state.\n _this.setState({\n Component: LoadedComponent,\n }, options.onLoad);\n }\n })\n .catch(options.onError);\n }\n };\n return Async;\n }(React.Component));\n return React.forwardRef(function (props, ref) { return React.createElement(Async, __assign({}, props, { forwardedRef: ref })); });\n}\n//# sourceMappingURL=asAsync.js.map","/*\n * 1DS JS SDK Core, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\nvar _a;\r\n/**\r\n* Utils.ts\r\n* @author Abhilash Panwar (abpanwar) Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2018\r\n* File containing utility functions.\r\n*/\r\nimport { arrForEach, getGlobalInst, getNavigator, hasDocument, hasWindow, isArray, isBoolean, isNullOrUndefined, isNumber, isObject, isReactNative, isString, isUndefined, newGuid, objForEachKey, perfNow } from \"@microsoft/applicationinsights-core-js\";\r\nimport { ObjProto, strShimObject } from \"@microsoft/applicationinsights-shims\";\r\nimport { strIndexOf, strLeft } from \"@nevware21/ts-utils\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\nimport { _DYN_INDEX_OF, _DYN_KIND, _DYN_LENGTH, _DYN_PROCESS_TELEMETRY_ST0, _DYN_TIMINGS, _DYN_VALUE } from \"./__DynamicConstants\";\r\nexport var Version = '4.2.1';\r\nexport var FullVersionString = \"1DS-Web-JS-\" + Version;\r\nvar ObjHasOwnProperty = ObjProto.hasOwnProperty;\r\n// Defining here so we don't need to take (import) the ApplicationInsights Common module\r\nvar strDisabledPropertyName = \"Microsoft_ApplicationInsights_BypassAjaxInstrumentation\";\r\nvar strWithCredentials = \"withCredentials\";\r\nvar strTimeout = \"timeout\";\r\n// If value is array just get the type for the first element\r\nvar _fieldTypeEventPropMap = (_a = {},\r\n _a[0 /* FieldValueSanitizerType.NotSet */] = 0 /* eEventPropertyType.Unspecified */,\r\n _a[2 /* FieldValueSanitizerType.Number */] = 6 /* eEventPropertyType.Double */,\r\n _a[1 /* FieldValueSanitizerType.String */] = 1 /* eEventPropertyType.String */,\r\n _a[3 /* FieldValueSanitizerType.Boolean */] = 7 /* eEventPropertyType.Bool */,\r\n _a[4096 /* FieldValueSanitizerType.Array */ | 2 /* FieldValueSanitizerType.Number */] = 6 /* eEventPropertyType.Double */,\r\n _a[4096 /* FieldValueSanitizerType.Array */ | 1 /* FieldValueSanitizerType.String */] = 1 /* eEventPropertyType.String */,\r\n _a[4096 /* FieldValueSanitizerType.Array */ | 3 /* FieldValueSanitizerType.Boolean */] = 7 /* eEventPropertyType.Bool */,\r\n _a);\r\n/**\r\n * @ignore\r\n */\r\n// let _uaDisallowsSameSiteNone = null;\r\nvar uInt8ArraySupported = null;\r\n// var _areCookiesAvailable: boolean | undefined;\r\n/**\r\n * Checks if document object is available\r\n */\r\nexport var isDocumentObjectAvailable = hasDocument();\r\n/**\r\n * Checks if window object is available\r\n */\r\nexport var isWindowObjectAvailable = hasWindow();\r\n/**\r\n * Checks if value is assigned to the given param.\r\n * @param value - The token from which the tenant id is to be extracted.\r\n * @returns True/false denoting if value is assigned to the param.\r\n */\r\nexport function isValueAssigned(value) {\r\n /// takes a value and checks for undefined, null and empty string \r\n /// value to be tested \r\n /// true if value is null undefined or emptyString \r\n return !(value === STR_EMPTY || isNullOrUndefined(value));\r\n}\r\n/**\r\n * Gets the tenant id from the tenant token.\r\n * @param apiKey - The token from which the tenant id is to be extracted.\r\n * @returns The tenant id.\r\n */\r\nexport function getTenantId(apiKey) {\r\n if (apiKey) {\r\n var indexTenantId = strIndexOf(apiKey, \"-\");\r\n if (indexTenantId > -1) {\r\n return strLeft(apiKey, indexTenantId);\r\n }\r\n }\r\n return STR_EMPTY;\r\n}\r\n/**\r\n * Checks if Uint8Array are available in the current environment. Safari and Firefox along with\r\n * ReactNative are known to not support Uint8Array properly.\r\n * @returns True if available, false otherwise.\r\n */\r\nexport function isUint8ArrayAvailable() {\r\n if (uInt8ArraySupported === null) {\r\n uInt8ArraySupported = !isUndefined(Uint8Array) && !isSafariOrFirefox() && !isReactNative();\r\n }\r\n return uInt8ArraySupported;\r\n}\r\n/**\r\n * Checks if the value is a valid EventLatency.\r\n * @param value - The value that needs to be checked.\r\n * @returns True if the value is in AWTEventLatency, false otherwise.\r\n */\r\nexport function isLatency(value) {\r\n if (value && isNumber(value) && value >= 1 /* EventLatencyValue.Normal */ && value <= 4 /* EventLatencyValue.Immediate */) {\r\n return true;\r\n }\r\n return false;\r\n}\r\n/**\r\n * Sanitizes the Property. It checks the that the property name and value are valid. It also\r\n * checks/populates the correct type and pii of the property value.\r\n * @param name - property name - The property name.\r\n * @param property - The property value or an IEventProperty containing value,\r\n * type ,pii and customer content.\r\n * @returns IEventProperty containing valid name, value, pii and type or null if invalid.\r\n */\r\nexport function sanitizeProperty(name, property, stringifyObjects) {\r\n // Check that property is valid\r\n if ((!property && !isValueAssigned(property)) || typeof name !== \"string\") {\r\n return null;\r\n }\r\n // Perf optimization -- only need to get the type once not multiple times\r\n var propType = typeof property;\r\n // If the property isn't IEventProperty (and is either string, number, boolean or array), convert it into one.\r\n if (propType === \"string\" || propType === \"number\" || propType === \"boolean\" || isArray(property)) {\r\n property = { value: property };\r\n }\r\n else if (propType === \"object\" && !ObjHasOwnProperty.call(property, \"value\")) {\r\n property = { value: stringifyObjects ? JSON.stringify(property) : property };\r\n }\r\n else if (isNullOrUndefined(property[_DYN_VALUE /* @min:%2evalue */])\r\n || property[_DYN_VALUE /* @min:%2evalue */] === STR_EMPTY || (!isString(property[_DYN_VALUE /* @min:%2evalue */])\r\n && !isNumber(property[_DYN_VALUE /* @min:%2evalue */]) && !isBoolean(property[_DYN_VALUE /* @min:%2evalue */])\r\n && !isArray(property[_DYN_VALUE /* @min:%2evalue */]))) {\r\n // Since property is IEventProperty, we need to validate its value\r\n return null;\r\n }\r\n // We need to check that if the property value is an array, it is valid\r\n if (isArray(property[_DYN_VALUE /* @min:%2evalue */]) &&\r\n !isArrayValid(property[_DYN_VALUE /* @min:%2evalue */])) {\r\n return null;\r\n }\r\n // If either pii or cc is set convert value to string (since only string pii/cc is allowed).\r\n // If the value is a complex type like an array that can't be converted to string we will drop\r\n // the property.\r\n if (!isNullOrUndefined(property[_DYN_KIND /* @min:%2ekind */])) {\r\n if (isArray(property[_DYN_VALUE /* @min:%2evalue */]) || !isValueKind(property[_DYN_KIND /* @min:%2ekind */])) {\r\n return null;\r\n }\r\n property[_DYN_VALUE /* @min:%2evalue */] = property[_DYN_VALUE /* @min:%2evalue */].toString();\r\n }\r\n return property;\r\n}\r\nexport function getCommonSchemaMetaData(value, kind, type) {\r\n var encodedTypeValue = -1;\r\n if (!isUndefined(value)) {\r\n if (kind > 0) {\r\n if (kind === 32 /* eValueKind.CustomerContent_GenericContent */) {\r\n // encode customer content. Value can only be string. bit 13-16 are for cc\r\n encodedTypeValue = (1 << 13);\r\n }\r\n else if (kind <= 13) {\r\n // encode PII. Value can only be string. bits 5-12 are for Pii\r\n encodedTypeValue = (kind << 5);\r\n }\r\n }\r\n // isDataType checks that the \"type\" is a number so we don't need to check for undefined\r\n if (isDataType(type)) {\r\n // Data Type is provided and valid, so use that\r\n if (encodedTypeValue === -1) {\r\n // Don't return -1\r\n encodedTypeValue = 0;\r\n }\r\n encodedTypeValue |= type;\r\n }\r\n else {\r\n var propType = _fieldTypeEventPropMap[getFieldValueType(value)] || -1;\r\n if (encodedTypeValue !== -1 && propType !== -1) {\r\n // pii exists so we must return correct type\r\n encodedTypeValue |= propType;\r\n }\r\n else if (propType === 6 /* eEventPropertyType.Double */) {\r\n encodedTypeValue = propType;\r\n }\r\n }\r\n }\r\n return encodedTypeValue;\r\n}\r\n/**\r\n * Helper to get and decode the cookie value using decodeURIComponent, this is for historical\r\n * backward compatibility where the document.cookie value was decoded before parsing.\r\n * @param cookieMgr - The cookie manager to use\r\n * @param name - The name of the cookie to get\r\n * @param decode - A flag to indicate whether the cookie value should be decoded\r\n * @returns The decoded cookie value (if available) otherwise an empty string.\r\n */\r\nexport function getCookieValue(cookieMgr, name, decode) {\r\n if (decode === void 0) { decode = true; }\r\n var cookieValue;\r\n if (cookieMgr) {\r\n cookieValue = cookieMgr.get(name);\r\n if (decode && cookieValue && decodeURIComponent) {\r\n cookieValue = decodeURIComponent(cookieValue);\r\n }\r\n }\r\n return cookieValue || STR_EMPTY;\r\n}\r\n/**\r\n * Create a new guid.\r\n * @param style - The style of guid to generated, defaults to Digits\r\n * Digits (Default) : 32 digits separated by hyphens: 00000000-0000-0000-0000-000000000000\r\n * Braces - 32 digits separated by hyphens, enclosed in braces: {00000000-0000-0000-0000-000000000000}\r\n * Parentheses - 32 digits separated by hyphens, enclosed in parentheses: (00000000-0000-0000-0000-000000000000)\r\n * Numeric - 32 digits: 00000000000000000000000000000000\r\n * @returns The formatted guid.\r\n */\r\nexport function createGuid(style) {\r\n if (style === void 0) { style = \"D\" /* GuidStyle.Digits */; }\r\n var theGuid = newGuid();\r\n if (style === \"B\" /* GuidStyle.Braces */) {\r\n theGuid = \"{\" + theGuid + \"}\";\r\n }\r\n else if (style === \"P\" /* GuidStyle.Parentheses */) {\r\n theGuid = \"(\" + theGuid + \")\";\r\n }\r\n else if (style === \"N\" /* GuidStyle.Numeric */) {\r\n theGuid = theGuid.replace(/-/g, STR_EMPTY);\r\n }\r\n return theGuid;\r\n}\r\n/**\r\n * Pass in the objects to merge as arguments.\r\n * @param obj1 - object to merge. Set this argument to 'true' for a deep extend.\r\n * @param obj2 - object to merge.\r\n * @param obj3 - object to merge.\r\n * @param obj4 - object to merge.\r\n * @param obj5 - object to merge.\r\n * @returns The extended object.\r\n */\r\nexport function extend(obj, obj2, obj3, obj4, obj5) {\r\n // Variables\r\n var extended = {};\r\n var deep = false;\r\n var i = 0;\r\n var length = arguments[_DYN_LENGTH /* @min:%2elength */];\r\n var theArgs = arguments;\r\n // Check if a deep merge\r\n if (isBoolean(theArgs[0])) {\r\n deep = theArgs[0];\r\n i++;\r\n }\r\n // Loop through each object and conduct a merge\r\n for (; i < length; i++) {\r\n var obj = theArgs[i];\r\n objForEachKey(obj, function (prop, value) {\r\n // If deep merge and property is an object, merge properties\r\n if (deep && value && isObject(value)) {\r\n if (isArray(value)) {\r\n extended[prop] = extended[prop] || [];\r\n arrForEach(value, function (arrayValue, arrayIndex) {\r\n if (arrayValue && isObject(arrayValue)) {\r\n extended[prop][arrayIndex] = extend(true, extended[prop][arrayIndex], arrayValue);\r\n }\r\n else {\r\n extended[prop][arrayIndex] = arrayValue;\r\n }\r\n });\r\n }\r\n else {\r\n extended[prop] = extend(true, extended[prop], value);\r\n }\r\n }\r\n else {\r\n extended[prop] = value;\r\n }\r\n });\r\n }\r\n return extended;\r\n}\r\nexport var getTime = perfNow;\r\nexport function isValueKind(value) {\r\n // Always assume that it's a number (no type checking) for performance as this is used during the JSON serialization\r\n if (value === 0 /* eValueKind.NotSet */ || ((value > 0 /* eValueKind.NotSet */ && value <= 13 /* eValueKind.Pii_IPV4AddressLegacy */) || value === 32 /* eValueKind.CustomerContent_GenericContent */)) {\r\n return true;\r\n }\r\n return false;\r\n}\r\nfunction isDataType(value) {\r\n // Remark: 0 returns false, but it doesn't affect encoding anyways\r\n // Always assume that it's a number (no type checking) for performance as this is used during the JSON serialization\r\n if (value >= 0 && value <= 9) {\r\n return true;\r\n }\r\n return false;\r\n}\r\nfunction isSafariOrFirefox() {\r\n var nav = getNavigator();\r\n // If non-browser navigator will be undefined\r\n if (!isUndefined(nav) && nav.userAgent) {\r\n var ua = nav.userAgent.toLowerCase();\r\n if ((ua[_DYN_INDEX_OF /* @min:%2eindexOf */](\"safari\") >= 0 || ua[_DYN_INDEX_OF /* @min:%2eindexOf */](\"firefox\") >= 0) && ua[_DYN_INDEX_OF /* @min:%2eindexOf */](\"chrome\") < 0) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n}\r\nexport function isArrayValid(value) {\r\n return value[_DYN_LENGTH /* @min:%2elength */] > 0;\r\n}\r\nexport function setProcessTelemetryTimings(event, identifier) {\r\n var evt = event;\r\n evt[_DYN_TIMINGS /* @min:%2etimings */] = evt[_DYN_TIMINGS /* @min:%2etimings */] || {};\r\n evt[_DYN_TIMINGS /* @min:%2etimings */][_DYN_PROCESS_TELEMETRY_ST0 /* @min:%2eprocessTelemetryStart */] = evt[_DYN_TIMINGS /* @min:%2etimings */][_DYN_PROCESS_TELEMETRY_ST0 /* @min:%2eprocessTelemetryStart */] || {};\r\n evt[_DYN_TIMINGS /* @min:%2etimings */][_DYN_PROCESS_TELEMETRY_ST0 /* @min:%2eprocessTelemetryStart */][identifier] = getTime();\r\n}\r\n/**\r\n * Returns a bitwise value for the FieldValueSanitizerType enum representing the decoded type of the passed value\r\n * @param value The value to determine the type\r\n */\r\nexport function getFieldValueType(value) {\r\n var theType = 0 /* FieldValueSanitizerType.NotSet */;\r\n if (value !== null && value !== undefined) {\r\n var objType = typeof value;\r\n if (objType === \"string\") {\r\n theType = 1 /* FieldValueSanitizerType.String */;\r\n }\r\n else if (objType === \"number\") {\r\n theType = 2 /* FieldValueSanitizerType.Number */;\r\n }\r\n else if (objType === \"boolean\") {\r\n theType = 3 /* FieldValueSanitizerType.Boolean */;\r\n }\r\n else if (objType === strShimObject) {\r\n theType = 4 /* FieldValueSanitizerType.Object */;\r\n if (isArray(value)) {\r\n theType = 4096 /* FieldValueSanitizerType.Array */;\r\n if (value[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Empty arrays are not supported and are considered to be the same as null\r\n theType |= getFieldValueType(value[0]);\r\n }\r\n }\r\n else if (ObjHasOwnProperty.call(value, \"value\")) {\r\n // Looks like an IEventProperty\r\n theType = 8192 /* FieldValueSanitizerType.EventProperty */ | getFieldValueType(value[_DYN_VALUE /* @min:%2evalue */]);\r\n }\r\n }\r\n }\r\n return theType;\r\n}\r\n/**\r\n * Helper to identify whether we are running in a chromium based browser environment\r\n */\r\nexport function isChromium() {\r\n return !!getGlobalInst(\"chrome\");\r\n}\r\n/**\r\n * Create and open an XMLHttpRequest object\r\n * @param method - The request method\r\n * @param urlString - The url\r\n * @param withCredentials - Option flag indicating that credentials should be sent\r\n * @param disabled - Optional flag indicating that the XHR object should be marked as disabled and not tracked (default is false)\r\n * @param isSync - Optional flag indicating if the instance should be a synchronous request (defaults to false)\r\n * @param timeout - Optional value identifying the timeout value that should be assigned to the XHR request\r\n * @returns A new opened XHR request\r\n */\r\nexport function openXhr(method, urlString, withCredentials, disabled, isSync, timeout) {\r\n if (disabled === void 0) { disabled = false; }\r\n if (isSync === void 0) { isSync = false; }\r\n function _wrapSetXhrProp(xhr, prop, value) {\r\n try {\r\n xhr[prop] = value;\r\n }\r\n catch (e) {\r\n // - Wrapping as depending on the environment setting the property may fail (non-terminally)\r\n }\r\n }\r\n var xhr = new XMLHttpRequest();\r\n if (disabled) {\r\n // Tag the instance so it's not tracked (trackDependency)\r\n // If the environment has locked down the XMLHttpRequest (preventExtensions and/or freeze), this would\r\n // cause the request to fail and we no telemetry would be sent\r\n _wrapSetXhrProp(xhr, strDisabledPropertyName, disabled);\r\n }\r\n if (withCredentials) {\r\n // Some libraries require that the withCredentials flag is set \"before\" open and\r\n // - Wrapping as IE 10 has started throwing when setting before open\r\n _wrapSetXhrProp(xhr, strWithCredentials, withCredentials);\r\n }\r\n xhr.open(method, urlString, !isSync);\r\n if (withCredentials) {\r\n // withCredentials should be set AFTER open (https://xhr.spec.whatwg.org/#the-withcredentials-attribute)\r\n // And older firefox instances from 11+ will throw for sync events (current versions don't) which happens during unload processing\r\n _wrapSetXhrProp(xhr, strWithCredentials, withCredentials);\r\n }\r\n // Only set the timeout for asynchronous requests as\r\n // \"Timeout shouldn't be used for synchronous XMLHttpRequests requests used in a document environment or it will throw an InvalidAccessError exception.\"\"\r\n // https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/timeout\r\n if (!isSync && timeout) {\r\n _wrapSetXhrProp(xhr, strTimeout, timeout);\r\n }\r\n return xhr;\r\n}\r\n/**\r\n * Check to see if the value is > 0\r\n * @param value - The value to check\r\n * @returns true if > 0 otherwise false\r\n */\r\nexport function isGreaterThanZero(value) {\r\n return value > 0;\r\n}\r\n//# sourceMappingURL=Utils.js.map","import { keyframes } from '@fluentui/merge-styles';\n/* Register the keyframes */\nvar EASING_FUNCTION_1 = 'cubic-bezier(.1,.9,.2,1)';\nvar EASING_FUNCTION_2 = 'cubic-bezier(.1,.25,.75,.9)';\nvar DURATION_1 = '0.167s';\nvar DURATION_2 = '0.267s';\nvar DURATION_3 = '0.367s';\nvar DURATION_4 = '0.467s';\nvar FADE_IN = keyframes({\n from: { opacity: 0 },\n to: { opacity: 1 },\n});\nvar FADE_OUT = keyframes({\n from: { opacity: 1 },\n to: { opacity: 0, visibility: 'hidden' },\n});\nvar SLIDE_RIGHT_IN10 = _createSlideInX(-10);\nvar SLIDE_RIGHT_IN20 = _createSlideInX(-20);\nvar SLIDE_RIGHT_IN40 = _createSlideInX(-40);\nvar SLIDE_RIGHT_IN400 = _createSlideInX(-400);\nvar SLIDE_LEFT_IN10 = _createSlideInX(10);\nvar SLIDE_LEFT_IN20 = _createSlideInX(20);\nvar SLIDE_LEFT_IN40 = _createSlideInX(40);\nvar SLIDE_LEFT_IN400 = _createSlideInX(400);\nvar SLIDE_UP_IN10 = _createSlideInY(10);\nvar SLIDE_UP_IN20 = _createSlideInY(20);\nvar SLIDE_DOWN_IN10 = _createSlideInY(-10);\nvar SLIDE_DOWN_IN20 = _createSlideInY(-20);\nvar SLIDE_RIGHT_OUT10 = _createSlideOutX(10);\nvar SLIDE_RIGHT_OUT20 = _createSlideOutX(20);\nvar SLIDE_RIGHT_OUT40 = _createSlideOutX(40);\nvar SLIDE_RIGHT_OUT400 = _createSlideOutX(400);\nvar SLIDE_LEFT_OUT10 = _createSlideOutX(-10);\nvar SLIDE_LEFT_OUT20 = _createSlideOutX(-20);\nvar SLIDE_LEFT_OUT40 = _createSlideOutX(-40);\nvar SLIDE_LEFT_OUT400 = _createSlideOutX(-400);\nvar SLIDE_UP_OUT10 = _createSlideOutY(-10);\nvar SLIDE_UP_OUT20 = _createSlideOutY(-20);\nvar SLIDE_DOWN_OUT10 = _createSlideOutY(10);\nvar SLIDE_DOWN_OUT20 = _createSlideOutY(20);\nvar SCALE_UP100 = keyframes({\n from: { transform: 'scale3d(.98,.98,1)' },\n to: { transform: 'scale3d(1,1,1)' },\n});\nvar SCALE_DOWN98 = keyframes({\n from: { transform: 'scale3d(1,1,1)' },\n to: { transform: 'scale3d(.98,.98,1)' },\n});\nvar SCALE_DOWN100 = keyframes({\n from: { transform: 'scale3d(1.03,1.03,1)' },\n to: { transform: 'scale3d(1,1,1)' },\n});\nvar SCALE_UP103 = keyframes({\n from: { transform: 'scale3d(1,1,1)' },\n to: { transform: 'scale3d(1.03,1.03,1)' },\n});\nvar ROTATE90 = keyframes({\n from: { transform: 'rotateZ(0deg)' },\n to: { transform: 'rotateZ(90deg)' },\n});\nvar ROTATE_N90 = keyframes({\n from: { transform: 'rotateZ(0deg)' },\n to: { transform: 'rotateZ(-90deg)' },\n});\n/**\n * Exporting raw duraction values and easing functions to be used in custom animations\n */\nexport var AnimationVariables = {\n easeFunction1: EASING_FUNCTION_1,\n easeFunction2: EASING_FUNCTION_2,\n durationValue1: DURATION_1,\n durationValue2: DURATION_2,\n durationValue3: DURATION_3,\n durationValue4: DURATION_4,\n};\n/**\n * All Fabric standard animations, exposed as json objects referencing predefined\n * keyframes. These objects can be mixed in with other class definitions.\n */\nexport var AnimationStyles = {\n slideRightIn10: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_RIGHT_IN10), DURATION_3, EASING_FUNCTION_1),\n slideRightIn20: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_RIGHT_IN20), DURATION_3, EASING_FUNCTION_1),\n slideRightIn40: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_RIGHT_IN40), DURATION_3, EASING_FUNCTION_1),\n slideRightIn400: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_RIGHT_IN400), DURATION_3, EASING_FUNCTION_1),\n slideLeftIn10: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_LEFT_IN10), DURATION_3, EASING_FUNCTION_1),\n slideLeftIn20: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_LEFT_IN20), DURATION_3, EASING_FUNCTION_1),\n slideLeftIn40: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_LEFT_IN40), DURATION_3, EASING_FUNCTION_1),\n slideLeftIn400: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_LEFT_IN400), DURATION_3, EASING_FUNCTION_1),\n slideUpIn10: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_UP_IN10), DURATION_3, EASING_FUNCTION_1),\n slideUpIn20: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_UP_IN20), DURATION_3, EASING_FUNCTION_1),\n slideDownIn10: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_DOWN_IN10), DURATION_3, EASING_FUNCTION_1),\n slideDownIn20: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SLIDE_DOWN_IN20), DURATION_3, EASING_FUNCTION_1),\n slideRightOut10: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_RIGHT_OUT10), DURATION_3, EASING_FUNCTION_1),\n slideRightOut20: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_RIGHT_OUT20), DURATION_3, EASING_FUNCTION_1),\n slideRightOut40: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_RIGHT_OUT40), DURATION_3, EASING_FUNCTION_1),\n slideRightOut400: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_RIGHT_OUT400), DURATION_3, EASING_FUNCTION_1),\n slideLeftOut10: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_LEFT_OUT10), DURATION_3, EASING_FUNCTION_1),\n slideLeftOut20: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_LEFT_OUT20), DURATION_3, EASING_FUNCTION_1),\n slideLeftOut40: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_LEFT_OUT40), DURATION_3, EASING_FUNCTION_1),\n slideLeftOut400: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_LEFT_OUT400), DURATION_3, EASING_FUNCTION_1),\n slideUpOut10: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_UP_OUT10), DURATION_3, EASING_FUNCTION_1),\n slideUpOut20: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_UP_OUT20), DURATION_3, EASING_FUNCTION_1),\n slideDownOut10: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_DOWN_OUT10), DURATION_3, EASING_FUNCTION_1),\n slideDownOut20: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SLIDE_DOWN_OUT20), DURATION_3, EASING_FUNCTION_1),\n scaleUpIn100: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SCALE_UP100), DURATION_3, EASING_FUNCTION_1),\n scaleDownIn100: _createAnimation(\"\".concat(FADE_IN, \",\").concat(SCALE_DOWN100), DURATION_3, EASING_FUNCTION_1),\n scaleUpOut103: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SCALE_UP103), DURATION_1, EASING_FUNCTION_2),\n scaleDownOut98: _createAnimation(\"\".concat(FADE_OUT, \",\").concat(SCALE_DOWN98), DURATION_1, EASING_FUNCTION_2),\n fadeIn100: _createAnimation(FADE_IN, DURATION_1, EASING_FUNCTION_2),\n fadeIn200: _createAnimation(FADE_IN, DURATION_2, EASING_FUNCTION_2),\n fadeIn400: _createAnimation(FADE_IN, DURATION_3, EASING_FUNCTION_2),\n fadeIn500: _createAnimation(FADE_IN, DURATION_4, EASING_FUNCTION_2),\n fadeOut100: _createAnimation(FADE_OUT, DURATION_1, EASING_FUNCTION_2),\n fadeOut200: _createAnimation(FADE_OUT, DURATION_2, EASING_FUNCTION_2),\n fadeOut400: _createAnimation(FADE_OUT, DURATION_3, EASING_FUNCTION_2),\n fadeOut500: _createAnimation(FADE_OUT, DURATION_4, EASING_FUNCTION_2),\n rotate90deg: _createAnimation(ROTATE90, '0.1s', EASING_FUNCTION_2),\n rotateN90deg: _createAnimation(ROTATE_N90, '0.1s', EASING_FUNCTION_2),\n // expandCollapse 100/200/400, delay 100/200\n};\nfunction _createAnimation(animationName, animationDuration, animationTimingFunction) {\n return {\n animationName: animationName,\n animationDuration: animationDuration,\n animationTimingFunction: animationTimingFunction,\n animationFillMode: 'both',\n };\n}\nfunction _createSlideInX(fromX) {\n return keyframes({\n from: { transform: \"translate3d(\".concat(fromX, \"px,0,0)\"), pointerEvents: 'none' },\n to: { transform: \"translate3d(0,0,0)\", pointerEvents: 'auto' },\n });\n}\nfunction _createSlideInY(fromY) {\n return keyframes({\n from: { transform: \"translate3d(0,\".concat(fromY, \"px,0)\"), pointerEvents: 'none' },\n to: { transform: \"translate3d(0,0,0)\", pointerEvents: 'auto' },\n });\n}\nfunction _createSlideOutX(toX) {\n return keyframes({\n from: { transform: \"translate3d(0,0,0)\" },\n to: { transform: \"translate3d(\".concat(toX, \"px,0,0)\") },\n });\n}\nfunction _createSlideOutY(toY) {\n return keyframes({\n from: { transform: \"translate3d(0,0,0)\" },\n to: { transform: \"translate3d(0,\".concat(toY, \"px,0)\") },\n });\n}\n//# sourceMappingURL=AnimationStyles.js.map","import { canUseDOM } from './canUseDOM';\n/**\n * Helper to get the document object. Note that in popup window cases, document\n * might be the wrong document, which is why we look at ownerDocument for the\n * truth.\n *\n * @public\n */\nexport function getDocument(rootElement) {\n // eslint-disable-next-line no-restricted-globals\n if (!canUseDOM() || typeof document === 'undefined') {\n return undefined;\n }\n else {\n var el = rootElement;\n // eslint-disable-next-line no-restricted-globals\n return el && el.ownerDocument ? el.ownerDocument : document;\n }\n}\n//# sourceMappingURL=getDocument.js.map","import { getWindow } from './dom/getWindow';\nexport var IsFocusVisibleClassName = 'ms-Fabric--isFocusVisible';\nexport var IsFocusHiddenClassName = 'ms-Fabric--isFocusHidden';\nfunction updateClassList(el, enabled) {\n if (el) {\n el.classList.add(enabled ? IsFocusVisibleClassName : IsFocusHiddenClassName);\n el.classList.remove(enabled ? IsFocusHiddenClassName : IsFocusVisibleClassName);\n }\n}\n/**\n * Sets the visibility of focus styling.\n *\n * By default, focus styles (the box surrounding a focused Button, for example) only show up when navigational\n * keypresses occur (through Tab, arrows, PgUp/PgDn, Home and End), and are hidden when mouse interactions occur.\n * This API provides an imperative way to turn them on/off.\n *\n * A use case might be when you have a keypress like ctrl-f6 navigate to a particular region on the page,\n * and want focus to show up.\n *\n * @param enabled - Whether to turn focus visibility on or off.\n * @param target - Optional target from which to get window in case no `providerElem` has been specified.\n * @param registeredProviders - Array of provider refs that are associated with a FocusRectsProvider. If no array\n * is passed in, the classnames are attached to the document body that contains `target`.\n */\nexport function setFocusVisibility(enabled, target, registeredProviders) {\n var _a;\n if (registeredProviders) {\n registeredProviders.forEach(function (ref) { return updateClassList(ref.current, enabled); });\n }\n else {\n updateClassList((_a = getWindow(target)) === null || _a === void 0 ? void 0 : _a.document.body, enabled);\n }\n}\n//# sourceMappingURL=setFocusVisibility.js.map","import { __extends } from \"tslib\";\nimport * as React from 'react';\nimport { Customizations } from './Customizations';\nimport { CustomizerContext } from './CustomizerContext';\nimport { mergeCustomizations } from './mergeCustomizations';\n/**\n * The Customizer component allows for default props to be mixed into components which\n * are decorated with the customizable() decorator, or use the styled HOC. This enables\n * injection scenarios like:\n *\n * 1. render svg icons instead of the icon font within all buttons\n * 2. inject a custom theme object into a component\n *\n * Props are provided via the settings prop which should be one of the following:\n * - A json map which contains 1 or more name/value pairs representing injectable props.\n * - A function that receives the current settings and returns the new ones that apply to the scope\n *\n * @public\n *\n * @deprecated This component is deprecated for purpose of applying theme to components\n * as of `@fluentui/react` version 8. Use `ThemeProvider` for applying theme instead.\n */\nvar Customizer = /** @class */ (function (_super) {\n __extends(Customizer, _super);\n function Customizer() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this._onCustomizationChange = function () { return _this.forceUpdate(); };\n return _this;\n }\n Customizer.prototype.componentDidMount = function () {\n Customizations.observe(this._onCustomizationChange);\n };\n Customizer.prototype.componentWillUnmount = function () {\n Customizations.unobserve(this._onCustomizationChange);\n };\n Customizer.prototype.render = function () {\n var _this = this;\n var contextTransform = this.props.contextTransform;\n return (React.createElement(CustomizerContext.Consumer, null, function (parentContext) {\n var newContext = mergeCustomizations(_this.props, parentContext);\n if (contextTransform) {\n newContext = contextTransform(newContext);\n }\n return React.createElement(CustomizerContext.Provider, { value: newContext }, _this.props.children);\n }));\n };\n return Customizer;\n}(React.Component));\nexport { Customizer };\n//# sourceMappingURL=Customizer.js.map","/* eslint-disable no-console */\nvar _warningCallback = undefined;\n/**\n * Sends a warning to console, if the api is present.\n *\n * @public\n * @param message - Warning message.\n */\nexport function warn(message) {\n if (_warningCallback && process.env.NODE_ENV !== 'production') {\n _warningCallback(message);\n }\n else if (console && console.warn) {\n console.warn(message);\n }\n}\n/**\n * Configures the warning callback. Passing in undefined will reset it to use the default\n * console.warn function.\n *\n * @public\n * @param warningCallback - Callback to override the generated warnings.\n */\nexport function setWarningCallback(warningCallback) {\n _warningCallback = warningCallback;\n}\n//# sourceMappingURL=warn.js.map","import { getWindow } from './dom/getWindow';\nimport { Stylesheet } from '@fluentui/merge-styles';\n// Initialize global window id.\nvar CURRENT_ID_PROPERTY = '__currentId__';\nvar DEFAULT_ID_STRING = 'id__';\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nvar _global = getWindow() || {};\nif (_global[CURRENT_ID_PROPERTY] === undefined) {\n _global[CURRENT_ID_PROPERTY] = 0;\n}\nvar _initializedStylesheetResets = false;\n/**\n * Generates a unique id in the global scope (this spans across duplicate copies of the same library.)\n *\n * @public\n */\nexport function getId(prefix) {\n if (!_initializedStylesheetResets) {\n // Configure ids to reset on stylesheet resets.\n var stylesheet = Stylesheet.getInstance();\n if (stylesheet && stylesheet.onReset) {\n stylesheet.onReset(resetIds);\n }\n _initializedStylesheetResets = true;\n }\n var index = _global[CURRENT_ID_PROPERTY]++;\n return (prefix === undefined ? DEFAULT_ID_STRING : prefix) + index;\n}\n/**\n * Resets id counter to an (optional) number.\n *\n * @public\n */\nexport function resetIds(counter) {\n if (counter === void 0) { counter = 0; }\n _global[CURRENT_ID_PROPERTY] = counter;\n}\n//# sourceMappingURL=getId.js.map","/**\n * Rectangle helper class.\n *\n * @public\n * {@docCategory Rectangle}\n */\nvar Rectangle = /** @class */ (function () {\n function Rectangle(left, right, top, bottom) {\n if (left === void 0) { left = 0; }\n if (right === void 0) { right = 0; }\n if (top === void 0) { top = 0; }\n if (bottom === void 0) { bottom = 0; }\n this.top = top;\n this.bottom = bottom;\n this.left = left;\n this.right = right;\n }\n Object.defineProperty(Rectangle.prototype, \"width\", {\n /**\n * Calculated automatically by subtracting the right from left\n */\n get: function () {\n return this.right - this.left;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Rectangle.prototype, \"height\", {\n /**\n * Calculated automatically by subtracting the bottom from top.\n */\n get: function () {\n return this.bottom - this.top;\n },\n enumerable: false,\n configurable: true\n });\n /**\n * Tests if another rect is approximately equal to this rect (within 4 decimal places.)\n */\n Rectangle.prototype.equals = function (rect) {\n // Fixing to 4 decimal places because it allows enough precision and will handle cases when something\n // should be rounded, like .999999 should round to 1.\n return (parseFloat(this.top.toFixed(4)) === parseFloat(rect.top.toFixed(4)) &&\n parseFloat(this.bottom.toFixed(4)) === parseFloat(rect.bottom.toFixed(4)) &&\n parseFloat(this.left.toFixed(4)) === parseFloat(rect.left.toFixed(4)) &&\n parseFloat(this.right.toFixed(4)) === parseFloat(rect.right.toFixed(4)));\n };\n return Rectangle;\n}());\nexport { Rectangle };\n//# sourceMappingURL=Rectangle.js.map","import { getWindow } from './getWindow';\n/**\n * Helper to get bounding client rect. Passing in window will get the window size.\n *\n * @public\n */\nexport function getRect(element, win) {\n var theWin = (win !== null && win !== void 0 ? win : (!element || (element && element.hasOwnProperty('devicePixelRatio'))))\n ? getWindow()\n : getWindow(element);\n var rect;\n if (element) {\n if (element === theWin) {\n rect = {\n left: 0,\n top: 0,\n width: theWin.innerWidth,\n height: theWin.innerHeight,\n right: theWin.innerWidth,\n bottom: theWin.innerHeight,\n };\n }\n else if (element.getBoundingClientRect) {\n rect = element.getBoundingClientRect();\n }\n }\n return rect;\n}\n//# sourceMappingURL=getRect.js.map","import { __assign } from \"tslib\";\n/** Generates all the semantic slot colors based on the theme so far\n * We'll use these as fallbacks for semantic slots that the passed in theme did not define.\n * The caller must still mix in the customized semantic slots at the end.\n */\nexport function makeSemanticColors(p, e, s, isInverted, depComments) {\n if (depComments === void 0) { depComments = false; }\n var semanticColors = __assign({ primaryButtonBorder: 'transparent', errorText: !isInverted ? '#a4262c' : '#F1707B', messageText: !isInverted ? '#323130' : '#F3F2F1', messageLink: !isInverted ? '#005A9E' : '#6CB8F6', messageLinkHovered: !isInverted ? '#004578' : '#82C7FF', infoIcon: !isInverted ? '#605e5c' : '#C8C6C4', errorIcon: !isInverted ? '#A80000' : '#F1707B', blockingIcon: !isInverted ? '#FDE7E9' : '#442726', warningIcon: !isInverted ? '#797775' : '#C8C6C4', severeWarningIcon: !isInverted ? '#D83B01' : '#FCE100', successIcon: !isInverted ? '#107C10' : '#92C353', infoBackground: !isInverted ? '#f3f2f1' : '#323130', errorBackground: !isInverted ? '#FDE7E9' : '#442726', blockingBackground: !isInverted ? '#FDE7E9' : '#442726', warningBackground: !isInverted ? '#FFF4CE' : '#433519', severeWarningBackground: !isInverted ? '#FED9CC' : '#4F2A0F', successBackground: !isInverted ? '#DFF6DD' : '#393D1B', \n // deprecated\n warningHighlight: !isInverted ? '#ffb900' : '#fff100', successText: !isInverted ? '#107C10' : '#92c353' }, s);\n var fullSemanticColors = getSemanticColors(p, e, semanticColors, isInverted);\n return _fixDeprecatedSlots(fullSemanticColors, depComments);\n}\n/**\n * Map partial platte and effects to partial semantic colors.\n */\nexport function getSemanticColors(p, e, s, isInverted, depComments) {\n if (depComments === void 0) { depComments = false; }\n var result = {};\n // map palette\n var _a = p || {}, white = _a.white, black = _a.black, themePrimary = _a.themePrimary, themeDark = _a.themeDark, themeDarker = _a.themeDarker, themeDarkAlt = _a.themeDarkAlt, themeLighter = _a.themeLighter, neutralLight = _a.neutralLight, neutralLighter = _a.neutralLighter, neutralDark = _a.neutralDark, neutralQuaternary = _a.neutralQuaternary, neutralQuaternaryAlt = _a.neutralQuaternaryAlt, neutralPrimary = _a.neutralPrimary, neutralSecondary = _a.neutralSecondary, neutralSecondaryAlt = _a.neutralSecondaryAlt, neutralTertiary = _a.neutralTertiary, neutralTertiaryAlt = _a.neutralTertiaryAlt, neutralLighterAlt = _a.neutralLighterAlt, accent = _a.accent;\n if (white) {\n result.bodyBackground = white;\n result.bodyFrameBackground = white;\n result.accentButtonText = white;\n result.buttonBackground = white;\n result.primaryButtonText = white;\n result.primaryButtonTextHovered = white;\n result.primaryButtonTextPressed = white;\n result.inputBackground = white;\n result.inputForegroundChecked = white;\n result.listBackground = white;\n result.menuBackground = white;\n result.cardStandoutBackground = white;\n }\n if (black) {\n result.bodyTextChecked = black;\n result.buttonTextCheckedHovered = black;\n }\n if (themePrimary) {\n result.link = themePrimary;\n result.primaryButtonBackground = themePrimary;\n result.inputBackgroundChecked = themePrimary;\n result.inputIcon = themePrimary;\n result.inputFocusBorderAlt = themePrimary;\n result.menuIcon = themePrimary;\n result.menuHeader = themePrimary;\n result.accentButtonBackground = themePrimary;\n }\n if (themeDark) {\n result.primaryButtonBackgroundPressed = themeDark;\n result.inputBackgroundCheckedHovered = themeDark;\n result.inputIconHovered = themeDark;\n }\n if (themeDarker) {\n result.linkHovered = themeDarker;\n }\n if (themeDarkAlt) {\n result.primaryButtonBackgroundHovered = themeDarkAlt;\n }\n if (themeLighter) {\n result.inputPlaceholderBackgroundChecked = themeLighter;\n }\n if (neutralLight) {\n result.bodyBackgroundChecked = neutralLight;\n result.bodyFrameDivider = neutralLight;\n result.bodyDivider = neutralLight;\n result.variantBorder = neutralLight;\n result.buttonBackgroundCheckedHovered = neutralLight;\n result.buttonBackgroundPressed = neutralLight;\n result.listItemBackgroundChecked = neutralLight;\n result.listHeaderBackgroundPressed = neutralLight;\n result.menuItemBackgroundPressed = neutralLight;\n // eslint-disable-next-line deprecation/deprecation\n result.menuItemBackgroundChecked = neutralLight;\n }\n if (neutralLighter) {\n result.bodyBackgroundHovered = neutralLighter;\n result.buttonBackgroundHovered = neutralLighter;\n result.buttonBackgroundDisabled = neutralLighter;\n result.buttonBorderDisabled = neutralLighter;\n result.primaryButtonBackgroundDisabled = neutralLighter;\n result.disabledBackground = neutralLighter;\n result.listItemBackgroundHovered = neutralLighter;\n result.listHeaderBackgroundHovered = neutralLighter;\n result.menuItemBackgroundHovered = neutralLighter;\n }\n if (neutralQuaternary) {\n result.primaryButtonTextDisabled = neutralQuaternary;\n result.disabledSubtext = neutralQuaternary;\n }\n if (neutralQuaternaryAlt) {\n result.listItemBackgroundCheckedHovered = neutralQuaternaryAlt;\n }\n if (neutralTertiary) {\n result.disabledBodyText = neutralTertiary;\n result.variantBorderHovered = (s === null || s === void 0 ? void 0 : s.variantBorderHovered) || neutralTertiary;\n result.buttonTextDisabled = neutralTertiary;\n result.inputIconDisabled = neutralTertiary;\n result.disabledText = neutralTertiary;\n }\n if (neutralPrimary) {\n result.bodyText = neutralPrimary;\n result.actionLink = neutralPrimary;\n result.buttonText = neutralPrimary;\n result.inputBorderHovered = neutralPrimary;\n result.inputText = neutralPrimary;\n result.listText = neutralPrimary;\n result.menuItemText = neutralPrimary;\n }\n if (neutralLighterAlt) {\n result.bodyStandoutBackground = neutralLighterAlt;\n result.defaultStateBackground = neutralLighterAlt;\n }\n if (neutralDark) {\n result.actionLinkHovered = neutralDark;\n result.buttonTextHovered = neutralDark;\n result.buttonTextChecked = neutralDark;\n result.buttonTextPressed = neutralDark;\n result.inputTextHovered = neutralDark;\n result.menuItemTextHovered = neutralDark;\n }\n if (neutralSecondary) {\n result.bodySubtext = neutralSecondary;\n result.focusBorder = neutralSecondary;\n result.inputBorder = neutralSecondary;\n result.smallInputBorder = neutralSecondary;\n result.inputPlaceholderText = neutralSecondary;\n }\n if (neutralSecondaryAlt) {\n result.buttonBorder = neutralSecondaryAlt;\n }\n if (neutralTertiaryAlt) {\n result.disabledBodySubtext = neutralTertiaryAlt;\n result.disabledBorder = neutralTertiaryAlt;\n result.buttonBackgroundChecked = neutralTertiaryAlt;\n result.menuDivider = neutralTertiaryAlt;\n }\n if (accent) {\n result.accentButtonBackground = accent;\n }\n // map effects\n if (e === null || e === void 0 ? void 0 : e.elevation4) {\n result.cardShadow = e.elevation4;\n }\n if (!isInverted && (e === null || e === void 0 ? void 0 : e.elevation8)) {\n result.cardShadowHovered = e.elevation8;\n }\n else if (result.variantBorderHovered) {\n result.cardShadowHovered = '0 0 1px ' + result.variantBorderHovered;\n }\n result = __assign(__assign({}, result), s);\n return result;\n}\nfunction _fixDeprecatedSlots(s, depComments) {\n // Add @deprecated tag as comment if enabled\n var dep = '';\n if (depComments === true) {\n dep = ' /* @deprecated */';\n }\n /* eslint-disable deprecation/deprecation */\n s.listTextColor = s.listText + dep;\n s.menuItemBackgroundChecked += dep;\n s.warningHighlight += dep;\n s.warningText = s.messageText + dep;\n s.successText += dep;\n /* eslint-enable deprecation/deprecation */\n return s;\n}\n//# sourceMappingURL=makeSemanticColors.js.map","import { canUseDOM } from './canUseDOM';\nvar _window = undefined;\n// Note: Accessing \"window\" in IE11 is somewhat expensive, and calling \"typeof window\"\n// hits a memory leak, whereas aliasing it and calling \"typeof _window\" does not.\n// Caching the window value at the file scope lets us minimize the impact.\ntry {\n // eslint-disable-next-line no-restricted-globals\n _window = window;\n}\ncatch (e) {\n /* no-op */\n}\n/**\n * Helper to get the window object. The helper will make sure to use a cached variable\n * of \"window\", to avoid overhead and memory leaks in IE11. Note that in popup scenarios the\n * window object won't match the \"global\" window object, and for these scenarios, you should\n * pass in an element hosted within the popup.\n *\n * @public\n */\nexport function getWindow(rootElement) {\n if (!canUseDOM() || typeof _window === 'undefined') {\n return undefined;\n }\n else {\n var el = rootElement;\n return el && el.ownerDocument && el.ownerDocument.defaultView ? el.ownerDocument.defaultView : _window;\n }\n}\n//# sourceMappingURL=getWindow.js.map","import { warn } from './warn';\nimport { isControlled as checkIsControlled } from '../controlled';\nvar warningsMap;\nif (process.env.NODE_ENV !== 'production') {\n warningsMap = {\n valueOnChange: {},\n valueDefaultValue: {},\n controlledToUncontrolled: {},\n uncontrolledToControlled: {},\n };\n}\n/** Reset controlled usage warnings for testing purposes. */\nexport function resetControlledWarnings() {\n if (process.env.NODE_ENV !== 'production') {\n warningsMap.valueOnChange = {};\n warningsMap.valueDefaultValue = {};\n warningsMap.controlledToUncontrolled = {};\n warningsMap.uncontrolledToControlled = {};\n }\n}\n/**\n * Check for and warn on the following error conditions with a form component:\n * - A value prop is provided (indicated it's being used as controlled) without a change handler,\n * and the component is not read-only\n * - Both the value and defaultValue props are provided\n * - The component is attempting to switch between controlled and uncontrolled\n *\n * The messages mimic the warnings React gives for these error conditions on input elements.\n * The warning will only be displayed once per component ID.\n */\nexport function warnControlledUsage(params) {\n if (process.env.NODE_ENV !== 'production') {\n var componentId = params.componentId, componentName = params.componentName, defaultValueProp = params.defaultValueProp, props = params.props, oldProps = params.oldProps, onChangeProp = params.onChangeProp, readOnlyProp = params.readOnlyProp, valueProp = params.valueProp;\n // This warning logic closely follows what React does for native elements.\n var oldIsControlled = oldProps ? checkIsControlled(oldProps, valueProp) : undefined;\n var newIsControlled = checkIsControlled(props, valueProp);\n if (newIsControlled) {\n // onChange (or readOnly) must be provided if value is provided\n var hasOnChange = !!props[onChangeProp];\n var isReadOnly = !!(readOnlyProp && props[readOnlyProp]);\n if (!(hasOnChange || isReadOnly) && !warningsMap.valueOnChange[componentId]) {\n warningsMap.valueOnChange[componentId] = true;\n warn(\"Warning: You provided a '\".concat(String(valueProp), \"' prop to a \").concat(String(componentName), \" without an '\").concat(String(onChangeProp), \"' handler. \") +\n \"This will render a read-only field. If the field should be mutable use '\".concat(String(defaultValueProp), \"'. \") +\n \"Otherwise, set '\".concat(String(onChangeProp), \"'\").concat(readOnlyProp ? \" or '\".concat(String(readOnlyProp), \"'\") : '', \".\"));\n }\n // value and defaultValue are mutually exclusive\n var defaultValue = props[defaultValueProp];\n if (defaultValue !== undefined && defaultValue !== null && !warningsMap.valueDefaultValue[componentId]) {\n warningsMap.valueDefaultValue[componentId] = true;\n warn(\"Warning: You provided both '\".concat(String(valueProp), \"' and '\").concat(String(defaultValueProp), \"' to a \").concat(componentName, \". \") +\n \"Form fields must be either controlled or uncontrolled (specify either the '\".concat(String(valueProp), \"' prop, \") +\n \"or the '\".concat(String(defaultValueProp), \"' prop, but not both). Decide between using a controlled or uncontrolled \") +\n \"\".concat(componentName, \" and remove one of these props. More info: https://fb.me/react-controlled-components\"));\n }\n }\n // Warn if switching between uncontrolled and controlled. (One difference between this implementation\n // and React's is that if oldIsControlled is indeterminate and newIsControlled true, we don't warn.)\n if (oldProps && newIsControlled !== oldIsControlled) {\n var oldType = oldIsControlled ? 'a controlled' : 'an uncontrolled';\n var newType = oldIsControlled ? 'uncontrolled' : 'controlled';\n var warnMap = oldIsControlled ? warningsMap.controlledToUncontrolled : warningsMap.uncontrolledToControlled;\n if (!warnMap[componentId]) {\n warnMap[componentId] = true;\n warn(\"Warning: A component is changing \".concat(oldType, \" \").concat(componentName, \" to be \").concat(newType, \". \") +\n \"\".concat(componentName, \"s should not switch from controlled to uncontrolled (or vice versa). \") +\n \"Decide between using controlled or uncontrolled for the lifetime of the component. \" +\n \"More info: https://fb.me/react-controlled-components\");\n }\n }\n }\n}\n//# sourceMappingURL=warnControlledUsage.js.map","var now = function () {\n return typeof performance !== 'undefined' && !!performance.now ? performance.now() : Date.now();\n};\nvar RESET_INTERVAL = 3 * 60 * 1000; // auto reset every 3 minutes\n/**\n * Performance helper class for measuring things.\n *\n * @public\n * {@docCategory FabricPerformance}\n */\nexport var FabricPerformance = /** @class */ (function () {\n function FabricPerformance() {\n }\n /**\n * Measures execution time of the given syncronous function. If the same logic is executed multiple times,\n * each individual measurement will be collected as well the overall numbers.\n * @param name - The name of this measurement\n * @param func - The logic to be measured for execution time\n */\n FabricPerformance.measure = function (name, func) {\n if (FabricPerformance._timeoutId) {\n FabricPerformance.setPeriodicReset();\n }\n var start = now();\n func();\n var end = now();\n var measurement = FabricPerformance.summary[name] || {\n totalDuration: 0,\n count: 0,\n all: [],\n };\n var duration = end - start;\n measurement.totalDuration += duration;\n measurement.count++;\n measurement.all.push({\n duration: duration,\n timeStamp: end,\n });\n FabricPerformance.summary[name] = measurement;\n };\n FabricPerformance.reset = function () {\n FabricPerformance.summary = {};\n clearTimeout(FabricPerformance._timeoutId);\n FabricPerformance._timeoutId = NaN;\n };\n FabricPerformance.setPeriodicReset = function () {\n FabricPerformance._timeoutId = setTimeout(function () { return FabricPerformance.reset(); }, RESET_INTERVAL);\n };\n FabricPerformance.summary = {};\n return FabricPerformance;\n}());\n//# sourceMappingURL=FabricPerformance.js.map","import { __extends } from \"tslib\";\nimport * as React from 'react';\nimport { Async } from './Async';\nimport { EventGroup } from './EventGroup';\nimport { warnConditionallyRequiredProps } from './warn/warnConditionallyRequiredProps';\nimport { warnMutuallyExclusive } from './warn/warnMutuallyExclusive';\nimport { warnDeprecations } from './warn/warnDeprecations';\n/**\n * BaseComponent class, which provides basic helpers for all components.\n *\n * @public\n * {@docCategory BaseComponent}\n *\n * @deprecated Do not use. We are moving away from class component.\n */\nvar BaseComponent = /** @class */ (function (_super) {\n __extends(BaseComponent, _super);\n /**\n * BaseComponent constructor\n * @param props - The props for the component.\n * @param context - The context for the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function BaseComponent(props, context) {\n var _this = _super.call(this, props, context) || this;\n // eslint-disable-next-line deprecation/deprecation\n _makeAllSafe(_this, BaseComponent.prototype, [\n 'componentDidMount',\n 'shouldComponentUpdate',\n 'getSnapshotBeforeUpdate',\n 'render',\n 'componentDidUpdate',\n 'componentWillUnmount',\n ]);\n return _this;\n }\n /**\n * When the component receives props, make sure the componentRef is updated.\n */\n BaseComponent.prototype.componentDidUpdate = function (prevProps, prevState) {\n this._updateComponentRef(prevProps, this.props);\n };\n /**\n * When the component has mounted, update the componentRef.\n */\n BaseComponent.prototype.componentDidMount = function () {\n this._setComponentRef(this.props.componentRef, this);\n };\n /**\n * If we have disposables, dispose them automatically on unmount.\n */\n BaseComponent.prototype.componentWillUnmount = function () {\n this._setComponentRef(this.props.componentRef, null);\n if (this.__disposables) {\n for (var i = 0, len = this._disposables.length; i < len; i++) {\n var disposable = this.__disposables[i];\n if (disposable.dispose) {\n disposable.dispose();\n }\n }\n this.__disposables = null;\n }\n };\n Object.defineProperty(BaseComponent.prototype, \"className\", {\n /**\n * Gets the object's class name.\n */\n get: function () {\n if (!this.__className) {\n var funcNameRegex = /function (.{1,})\\(/;\n var results = funcNameRegex.exec(this.constructor.toString());\n this.__className = results && results.length > 1 ? results[1] : '';\n }\n return this.__className;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseComponent.prototype, \"_disposables\", {\n /**\n * Allows subclasses to push things to this._disposables to be auto disposed.\n */\n get: function () {\n if (!this.__disposables) {\n this.__disposables = [];\n }\n return this.__disposables;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseComponent.prototype, \"_async\", {\n /**\n * Gets the async instance associated with the component, created on demand. The async instance gives\n * subclasses a way to execute setTimeout/setInterval async calls safely, where the callbacks\n * will be cleared/ignored automatically after unmounting. The helpers within the async object also\n * preserve the this pointer so that you don't need to \"bind\" the callbacks.\n */\n get: function () {\n if (!this.__async) {\n this.__async = new Async(this);\n this._disposables.push(this.__async);\n }\n return this.__async;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(BaseComponent.prototype, \"_events\", {\n /**\n * Gets the event group instance assocaited with the component, created on demand. The event instance\n * provides on/off methods for listening to DOM (or regular javascript object) events. The event callbacks\n * will be automatically disconnected after unmounting. The helpers within the events object also\n * preserve the this reference so that you don't need to \"bind\" the callbacks.\n */\n get: function () {\n if (!this.__events) {\n this.__events = new EventGroup(this);\n this._disposables.push(this.__events);\n }\n return this.__events;\n },\n enumerable: false,\n configurable: true\n });\n /**\n * Helper to return a memoized ref resolver function.\n * @param refName - Name of the member to assign the ref to.\n * @returns A function instance keyed from the given refname.\n * @deprecated Use `createRef` from React.createRef.\n */\n BaseComponent.prototype._resolveRef = function (refName) {\n var _this = this;\n if (!this.__resolves) {\n this.__resolves = {};\n }\n if (!this.__resolves[refName]) {\n this.__resolves[refName] = function (ref) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (_this[refName] = ref);\n };\n }\n return this.__resolves[refName];\n };\n /**\n * Updates the componentRef (by calling it with \"this\" when necessary.)\n */\n BaseComponent.prototype._updateComponentRef = function (currentProps, newProps) {\n if (newProps === void 0) { newProps = {}; }\n // currentProps *should* always be defined, but verify that just in case a subclass is manually\n // calling a lifecycle method with no parameters (which has happened) or other odd usage.\n if (currentProps && newProps && currentProps.componentRef !== newProps.componentRef) {\n this._setComponentRef(currentProps.componentRef, null);\n this._setComponentRef(newProps.componentRef, this);\n }\n };\n /**\n * Warns when a deprecated props are being used.\n *\n * @param deprecationMap - The map of deprecations, where key is the prop name and the value is\n * either null or a replacement prop name.\n */\n BaseComponent.prototype._warnDeprecations = function (deprecationMap) {\n warnDeprecations(this.className, this.props, deprecationMap);\n };\n /**\n * Warns when props which are mutually exclusive with each other are both used.\n *\n * @param mutuallyExclusiveMap - The map of mutually exclusive props.\n */\n BaseComponent.prototype._warnMutuallyExclusive = function (mutuallyExclusiveMap) {\n warnMutuallyExclusive(this.className, this.props, mutuallyExclusiveMap);\n };\n /**\n * Warns when props are required if a condition is met.\n *\n * @param requiredProps - The name of the props that are required when the condition is met.\n * @param conditionalPropName - The name of the prop that the condition is based on.\n * @param condition - Whether the condition is met.\n */\n BaseComponent.prototype._warnConditionallyRequiredProps = function (requiredProps, conditionalPropName, condition) {\n warnConditionallyRequiredProps(this.className, this.props, requiredProps, conditionalPropName, condition);\n };\n BaseComponent.prototype._setComponentRef = function (ref, value) {\n if (!this._skipComponentRefResolution && ref) {\n if (typeof ref === 'function') {\n ref(value);\n }\n if (typeof ref === 'object') {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref.current = value;\n }\n }\n };\n return BaseComponent;\n}(React.Component));\nexport { BaseComponent };\n/**\n * Helper to override a given method with a wrapper method that can try/catch the original, but also\n * ensures that the BaseComponent's methods are called before the subclass's. This ensures that\n * componentWillUnmount in the base is called and that things in the _disposables array are disposed.\n */\n// eslint-disable-next-line deprecation/deprecation\nfunction _makeAllSafe(obj, prototype, methodNames) {\n for (var i = 0, len = methodNames.length; i < len; i++) {\n _makeSafe(obj, prototype, methodNames[i]);\n }\n}\n// eslint-disable-next-line deprecation/deprecation\nfunction _makeSafe(obj, prototype, methodName) {\n /* eslint-disable @typescript-eslint/no-explicit-any */\n var classMethod = obj[methodName];\n var prototypeMethod = prototype[methodName];\n if (classMethod || prototypeMethod) {\n obj[methodName] = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n /* eslint-enable @typescript-eslint/no-explicit-any */\n var retVal;\n if (prototypeMethod) {\n retVal = prototypeMethod.apply(this, args);\n }\n if (classMethod !== prototypeMethod) {\n retVal = classMethod.apply(this, args);\n }\n return retVal;\n };\n }\n}\n/**\n * Simple constant function for returning null, used to render empty templates in JSX.\n *\n * @public\n */\nexport function nullRender() {\n return null;\n}\n//# sourceMappingURL=BaseComponent.js.map","import { DefaultPalette } from './colors/index';\nimport { DefaultEffects } from './effects/index';\nimport { DefaultFontStyles } from './fonts/index';\nimport { mergeThemes } from './mergeThemes';\nimport { DefaultSpacing } from './spacing/index';\nimport { makeSemanticColors } from './utilities/makeSemanticColors';\n/**\n * Creates a custom theme definition.\n * @param theme - Partial theme object.\n * @param depComments - Whether to include deprecated tags as comments for deprecated slots.\n */\nexport function createTheme(theme, depComments) {\n if (theme === void 0) { theme = {}; }\n if (depComments === void 0) { depComments = false; }\n var isInverted = !!theme.isInverted;\n var baseTheme = {\n palette: DefaultPalette,\n effects: DefaultEffects,\n fonts: DefaultFontStyles,\n spacing: DefaultSpacing,\n isInverted: isInverted,\n disableGlobalClassNames: false,\n semanticColors: makeSemanticColors(DefaultPalette, DefaultEffects, undefined, isInverted, depComments),\n rtl: undefined,\n };\n return mergeThemes(baseTheme, theme);\n}\n//# sourceMappingURL=createTheme.js.map","import { SELECTION_CHANGE, SelectionMode, SELECTION_ITEMS_CHANGE } from './Selection.types';\nimport { EventGroup } from '../EventGroup';\n/**\n * {@docCategory Selection}\n */\nvar Selection = /** @class */ (function () {\n /**\n * Create a new Selection. If `TItem` does not have a `key` property, you must provide an options\n * object with a `getKey` implementation. Providing options is optional otherwise.\n * (At most one `options` object is accepted.)\n */\n function Selection() {\n var options = []; // Otherwise, arguments require options with `getKey`.\n for (var _i = 0 // Otherwise, arguments require options with `getKey`.\n ; _i < arguments.length // Otherwise, arguments require options with `getKey`.\n ; _i++ // Otherwise, arguments require options with `getKey`.\n ) {\n options[_i] = arguments[_i]; // Otherwise, arguments require options with `getKey`.\n }\n var _a = options[0] || {}, onSelectionChanged = _a.onSelectionChanged, onItemsChanged = _a.onItemsChanged, getKey = _a.getKey, _b = _a.canSelectItem, canSelectItem = _b === void 0 ? function () { return true; } : _b, items = _a.items, _c = _a.selectionMode, selectionMode = _c === void 0 ? SelectionMode.multiple : _c;\n this.mode = selectionMode;\n this._getKey = getKey || defaultGetKey;\n this._changeEventSuppressionCount = 0;\n this._exemptedCount = 0;\n this._anchoredIndex = 0;\n this._unselectableCount = 0;\n this._onSelectionChanged = onSelectionChanged;\n this._onItemsChanged = onItemsChanged;\n this._canSelectItem = canSelectItem;\n this._keyToIndexMap = {};\n this._isModal = false;\n this.setItems(items || [], true);\n this.count = this.getSelectedCount();\n }\n Selection.prototype.canSelectItem = function (item, index) {\n if (typeof index === 'number' && index < 0) {\n return false;\n }\n return this._canSelectItem(item, index);\n };\n Selection.prototype.getKey = function (item, index) {\n var key = this._getKey(item, index);\n return typeof key === 'number' || key ? \"\".concat(key) : '';\n };\n Selection.prototype.setChangeEvents = function (isEnabled, suppressChange) {\n this._changeEventSuppressionCount += isEnabled ? -1 : 1;\n if (this._changeEventSuppressionCount === 0 && this._hasChanged) {\n this._hasChanged = false;\n if (!suppressChange) {\n this._change();\n }\n }\n };\n Selection.prototype.isModal = function () {\n return this._isModal;\n };\n Selection.prototype.setModal = function (isModal) {\n if (this._isModal !== isModal) {\n this.setChangeEvents(false);\n this._isModal = isModal;\n if (!isModal) {\n this.setAllSelected(false);\n }\n this._change();\n this.setChangeEvents(true);\n }\n };\n /**\n * Selection needs the items, call this method to set them. If the set\n * of items is the same, this will re-evaluate selection and index maps.\n * Otherwise, shouldClear should be set to true, so that selection is\n * cleared.\n */\n Selection.prototype.setItems = function (items, shouldClear) {\n if (shouldClear === void 0) { shouldClear = true; }\n var newKeyToIndexMap = {};\n var newUnselectableIndices = {};\n var hasSelectionChanged = false;\n this.setChangeEvents(false);\n // Reset the unselectable count.\n this._unselectableCount = 0;\n var haveItemsChanged = false;\n // Build lookup table for quick selection evaluation.\n for (var i = 0; i < items.length; i++) {\n var item = items[i];\n if (item) {\n var key = this.getKey(item, i);\n if (key) {\n if (!haveItemsChanged && (!(key in this._keyToIndexMap) || this._keyToIndexMap[key] !== i)) {\n haveItemsChanged = true;\n }\n newKeyToIndexMap[key] = i;\n }\n }\n newUnselectableIndices[i] = item && !this.canSelectItem(item);\n if (newUnselectableIndices[i]) {\n this._unselectableCount++;\n }\n }\n if (shouldClear || items.length === 0) {\n this._setAllSelected(false, true);\n }\n // Check the exemption list for discrepencies.\n var newExemptedIndicies = {};\n var newExemptedCount = 0;\n for (var indexProperty in this._exemptedIndices) {\n if (this._exemptedIndices.hasOwnProperty(indexProperty)) {\n var index = Number(indexProperty);\n var item = this._items[index];\n var exemptKey = item ? this.getKey(item, Number(index)) : undefined;\n var newIndex = exemptKey ? newKeyToIndexMap[exemptKey] : index;\n if (newIndex === undefined) {\n // The item has likely been replaced or removed.\n hasSelectionChanged = true;\n }\n else {\n // We know the new index of the item. update the existing exemption table.\n newExemptedIndicies[newIndex] = true;\n newExemptedCount++;\n hasSelectionChanged = hasSelectionChanged || newIndex !== index;\n }\n }\n }\n if (this._items && this._exemptedCount === 0 && items.length !== this._items.length && this._isAllSelected) {\n // If everything was selected but the number of items has changed, selection has changed.\n hasSelectionChanged = true;\n }\n if (!haveItemsChanged) {\n for (var _i = 0, _a = Object.keys(this._keyToIndexMap); _i < _a.length; _i++) {\n var key = _a[_i];\n if (!(key in newKeyToIndexMap)) {\n haveItemsChanged = true;\n break;\n }\n }\n }\n this._exemptedIndices = newExemptedIndicies;\n this._exemptedCount = newExemptedCount;\n this._keyToIndexMap = newKeyToIndexMap;\n this._unselectableIndices = newUnselectableIndices;\n this._items = items;\n this._selectedItems = null;\n if (hasSelectionChanged) {\n this._updateCount();\n }\n if (haveItemsChanged) {\n EventGroup.raise(this, SELECTION_ITEMS_CHANGE);\n if (this._onItemsChanged) {\n this._onItemsChanged();\n }\n }\n if (hasSelectionChanged) {\n this._change();\n }\n this.setChangeEvents(true);\n };\n Selection.prototype.getItems = function () {\n return this._items;\n };\n Selection.prototype.getSelection = function () {\n if (!this._selectedItems) {\n this._selectedItems = [];\n var items = this._items;\n if (items) {\n for (var i = 0; i < items.length; i++) {\n if (this.isIndexSelected(i)) {\n this._selectedItems.push(items[i]);\n }\n }\n }\n }\n return this._selectedItems;\n };\n Selection.prototype.getSelectedCount = function () {\n return this._isAllSelected\n ? this._items.length - this._exemptedCount - this._unselectableCount\n : this._exemptedCount;\n };\n Selection.prototype.getSelectedIndices = function () {\n if (!this._selectedIndices) {\n this._selectedIndices = [];\n var items = this._items;\n if (items) {\n for (var i = 0; i < items.length; i++) {\n if (this.isIndexSelected(i)) {\n this._selectedIndices.push(i);\n }\n }\n }\n }\n return this._selectedIndices;\n };\n Selection.prototype.getItemIndex = function (key) {\n var index = this._keyToIndexMap[key];\n return index !== null && index !== void 0 ? index : -1;\n };\n Selection.prototype.isRangeSelected = function (fromIndex, count) {\n if (count === 0) {\n return false;\n }\n var endIndex = fromIndex + count;\n for (var i = fromIndex; i < endIndex; i++) {\n if (!this.isIndexSelected(i)) {\n return false;\n }\n }\n return true;\n };\n Selection.prototype.isAllSelected = function () {\n var selectableCount = this._items.length - this._unselectableCount;\n // In single mode, we can only have a max of 1 item.\n if (this.mode === SelectionMode.single) {\n selectableCount = Math.min(selectableCount, 1);\n }\n return ((this.count > 0 && this._isAllSelected && this._exemptedCount === 0) ||\n (!this._isAllSelected && this._exemptedCount === selectableCount && selectableCount > 0));\n };\n Selection.prototype.isKeySelected = function (key) {\n var index = this._keyToIndexMap[key];\n return this.isIndexSelected(index);\n };\n Selection.prototype.isIndexSelected = function (index) {\n return !!((this.count > 0 && this._isAllSelected && !this._exemptedIndices[index] && !this._unselectableIndices[index]) ||\n (!this._isAllSelected && this._exemptedIndices[index]));\n };\n Selection.prototype.setAllSelected = function (isAllSelected) {\n if (isAllSelected && this.mode !== SelectionMode.multiple) {\n return;\n }\n var selectableCount = this._items ? this._items.length - this._unselectableCount : 0;\n this.setChangeEvents(false);\n if (selectableCount > 0 && (this._exemptedCount > 0 || isAllSelected !== this._isAllSelected)) {\n this._exemptedIndices = {};\n if (isAllSelected !== this._isAllSelected || this._exemptedCount > 0) {\n this._exemptedCount = 0;\n this._isAllSelected = isAllSelected;\n this._change();\n }\n this._updateCount();\n }\n this.setChangeEvents(true);\n };\n Selection.prototype.setKeySelected = function (key, isSelected, shouldAnchor) {\n var index = this._keyToIndexMap[key];\n if (index >= 0) {\n this.setIndexSelected(index, isSelected, shouldAnchor);\n }\n };\n Selection.prototype.setIndexSelected = function (index, isSelected, shouldAnchor) {\n if (this.mode === SelectionMode.none) {\n return;\n }\n // Clamp the index.\n index = Math.min(Math.max(0, index), this._items.length - 1);\n // No-op on out of bounds selections.\n if (index < 0 || index >= this._items.length) {\n return;\n }\n this.setChangeEvents(false);\n var isExempt = this._exemptedIndices[index];\n var canSelect = !this._unselectableIndices[index];\n if (canSelect) {\n if (isSelected && this.mode === SelectionMode.single) {\n // If this is single-select, the previous selection should be removed.\n this._setAllSelected(false, true);\n }\n // Determine if we need to remove the exemption.\n if (isExempt && ((isSelected && this._isAllSelected) || (!isSelected && !this._isAllSelected))) {\n delete this._exemptedIndices[index];\n this._exemptedCount--;\n }\n // Determine if we need to add the exemption.\n if (!isExempt && ((isSelected && !this._isAllSelected) || (!isSelected && this._isAllSelected))) {\n this._exemptedIndices[index] = true;\n this._exemptedCount++;\n }\n if (shouldAnchor) {\n this._anchoredIndex = index;\n }\n }\n this._updateCount();\n this.setChangeEvents(true);\n };\n Selection.prototype.setRangeSelected = function (fromIndex, count, isSelected, shouldAnchor) {\n if (this.mode === SelectionMode.none) {\n return;\n }\n // Clamp the index.\n fromIndex = Math.min(Math.max(0, fromIndex), this._items.length - 1);\n // Clamp the range.\n count = Math.min(Math.max(0, count), this._items.length - fromIndex);\n // No-op on out of bounds selections.\n if (fromIndex < 0 || fromIndex >= this._items.length || count === 0) {\n return;\n }\n this.setChangeEvents(false);\n var anchorIndex = this._anchoredIndex || 0;\n var startIndex = fromIndex;\n var endIndex = fromIndex + count - 1;\n var newAnchorIndex = anchorIndex >= endIndex ? startIndex : endIndex;\n for (; startIndex <= endIndex; startIndex++) {\n this.setIndexSelected(startIndex, isSelected, shouldAnchor ? startIndex === newAnchorIndex : false);\n }\n this.setChangeEvents(true);\n };\n Selection.prototype.selectToKey = function (key, clearSelection) {\n this.selectToIndex(this._keyToIndexMap[key], clearSelection);\n };\n Selection.prototype.selectToRange = function (fromIndex, count, clearSelection) {\n if (this.mode === SelectionMode.none) {\n return;\n }\n if (this.mode === SelectionMode.single) {\n if (count === 1) {\n this.setIndexSelected(fromIndex, true, true);\n }\n return;\n }\n var anchorIndex = this._anchoredIndex || 0;\n var startIndex = Math.min(fromIndex, anchorIndex);\n var endIndex = Math.max(fromIndex + count - 1, anchorIndex);\n this.setChangeEvents(false);\n if (clearSelection) {\n this._setAllSelected(false, true);\n }\n for (; startIndex <= endIndex; startIndex++) {\n this.setIndexSelected(startIndex, true, false);\n }\n this.setChangeEvents(true);\n };\n Selection.prototype.selectToIndex = function (index, clearSelection) {\n if (this.mode === SelectionMode.none) {\n return;\n }\n if (this.mode === SelectionMode.single) {\n this.setIndexSelected(index, true, true);\n return;\n }\n var anchorIndex = this._anchoredIndex || 0;\n var startIndex = Math.min(index, anchorIndex);\n var endIndex = Math.max(index, anchorIndex);\n this.setChangeEvents(false);\n if (clearSelection) {\n this._setAllSelected(false, true);\n }\n for (; startIndex <= endIndex; startIndex++) {\n this.setIndexSelected(startIndex, true, false);\n }\n this.setChangeEvents(true);\n };\n Selection.prototype.toggleAllSelected = function () {\n this.setAllSelected(!this.isAllSelected());\n };\n Selection.prototype.toggleKeySelected = function (key) {\n this.setKeySelected(key, !this.isKeySelected(key), true);\n };\n Selection.prototype.toggleIndexSelected = function (index) {\n this.setIndexSelected(index, !this.isIndexSelected(index), true);\n };\n Selection.prototype.toggleRangeSelected = function (fromIndex, count) {\n if (this.mode === SelectionMode.none) {\n return;\n }\n var isRangeSelected = this.isRangeSelected(fromIndex, count);\n var endIndex = fromIndex + count;\n if (this.mode === SelectionMode.single && count > 1) {\n return;\n }\n this.setChangeEvents(false);\n for (var i = fromIndex; i < endIndex; i++) {\n this.setIndexSelected(i, !isRangeSelected, false);\n }\n this.setChangeEvents(true);\n };\n Selection.prototype._updateCount = function (preserveModalState) {\n if (preserveModalState === void 0) { preserveModalState = false; }\n var count = this.getSelectedCount();\n if (count !== this.count) {\n this.count = count;\n this._change();\n }\n if (!this.count && !preserveModalState) {\n this.setModal(false);\n }\n };\n Selection.prototype._setAllSelected = function (isAllSelected, preserveModalState) {\n if (preserveModalState === void 0) { preserveModalState = false; }\n if (isAllSelected && this.mode !== SelectionMode.multiple) {\n return;\n }\n var selectableCount = this._items ? this._items.length - this._unselectableCount : 0;\n this.setChangeEvents(false);\n if (selectableCount > 0 && (this._exemptedCount > 0 || isAllSelected !== this._isAllSelected)) {\n this._exemptedIndices = {};\n if (isAllSelected !== this._isAllSelected || this._exemptedCount > 0) {\n this._exemptedCount = 0;\n this._isAllSelected = isAllSelected;\n this._change();\n }\n this._updateCount(preserveModalState);\n }\n this.setChangeEvents(true);\n };\n Selection.prototype._change = function () {\n if (this._changeEventSuppressionCount === 0) {\n this._selectedItems = null;\n this._selectedIndices = undefined;\n EventGroup.raise(this, SELECTION_CHANGE);\n if (this._onSelectionChanged) {\n this._onSelectionChanged();\n }\n }\n else {\n this._hasChanged = true;\n }\n };\n return Selection;\n}());\nexport { Selection };\nfunction defaultGetKey(item, index) {\n // 0 may be used as a key\n var _a = (item || {}).key, key = _a === void 0 ? \"\".concat(index) : _a;\n return key;\n}\n//# sourceMappingURL=Selection.js.map","/**\n * Returns true if and only if the user is on a iOS device.\n * Used to determine whether iOS-specific behavior should be applied.\n */\nexport var isIOS = function () {\n // eslint-disable-next-line no-restricted-globals\n if (!window || !window.navigator || !window.navigator.userAgent) {\n return false;\n }\n // eslint-disable-next-line no-restricted-globals\n return /iPad|iPhone|iPod/i.test(window.navigator.userAgent);\n};\n//# sourceMappingURL=mobileDetector.js.map","export var DefaultSpacing = {\n s2: '4px',\n s1: '8px',\n m: '16px',\n l1: '20px',\n l2: '32px',\n};\n//# sourceMappingURL=DefaultSpacing.js.map","import { mergeStyles } from '../MergeStyles';\n/**\n * Builds a class names object from a given map.\n *\n * @param styles - Map of unprocessed styles.\n * @returns Map of property name to class name.\n */\nexport function buildClassMap(styles) {\n var classes = {};\n var _loop_1 = function (styleName) {\n if (styles.hasOwnProperty(styleName)) {\n var className_1;\n Object.defineProperty(classes, styleName, {\n get: function () {\n if (className_1 === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n className_1 = mergeStyles(styles[styleName]).toString();\n }\n return className_1;\n },\n enumerable: true,\n configurable: true,\n });\n }\n };\n for (var styleName in styles) {\n _loop_1(styleName);\n }\n return classes;\n}\n//# sourceMappingURL=buildClassMap.js.map","import { buildClassMap } from '../utilities/index';\nimport { AnimationStyles } from '../styles/index';\n/**\n * {@docCategory AnimationClassNames}\n */\nexport var AnimationClassNames = buildClassMap(AnimationStyles);\n//# sourceMappingURL=AnimationClassNames.js.map","import { buildClassMap } from '../utilities/buildClassMap';\nimport { DefaultFontStyles } from '../styles/DefaultFontStyles';\n/**\n * {@docCategory FontClassNames}\n */\nexport var FontClassNames = buildClassMap(DefaultFontStyles);\n//# sourceMappingURL=FontClassNames.js.map","import { __assign } from \"tslib\";\nimport { Customizations, getWindow } from '@fluentui/utilities';\nimport { loadTheme as legacyLoadTheme } from '@microsoft/load-themed-styles';\nimport { createTheme } from '@fluentui/theme';\nexport { createTheme } from '@fluentui/theme';\nvar _theme = createTheme({});\nvar _onThemeChangeCallbacks = [];\nexport var ThemeSettingName = 'theme';\nexport function initializeThemeInCustomizations() {\n var _a;\n var _b, _c;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var win = getWindow();\n if ((_b = win === null || win === void 0 ? void 0 : win.FabricConfig) === null || _b === void 0 ? void 0 : _b.legacyTheme) {\n // does everything the `else` clause does and more, such as invoke legacy theming\n loadTheme(win.FabricConfig.legacyTheme);\n }\n else if (!Customizations.getSettings([ThemeSettingName]).theme) {\n if ((_c = win === null || win === void 0 ? void 0 : win.FabricConfig) === null || _c === void 0 ? void 0 : _c.theme) {\n _theme = createTheme(win.FabricConfig.theme);\n }\n // Set the default theme.\n Customizations.applySettings((_a = {}, _a[ThemeSettingName] = _theme, _a));\n }\n}\ninitializeThemeInCustomizations();\n/**\n * Gets the theme object\n * @param depComments - Whether to include deprecated tags as comments for deprecated slots.\n */\nexport function getTheme(depComments) {\n if (depComments === void 0) { depComments = false; }\n if (depComments === true) {\n _theme = createTheme({}, depComments);\n }\n return _theme;\n}\n/**\n * Registers a callback that gets called whenever the theme changes.\n * This should only be used when the component cannot automatically get theme changes through its state.\n * This will not register duplicate callbacks.\n */\nexport function registerOnThemeChangeCallback(callback) {\n if (_onThemeChangeCallbacks.indexOf(callback) === -1) {\n _onThemeChangeCallbacks.push(callback);\n }\n}\n/**\n * See registerOnThemeChangeCallback().\n * Removes previously registered callbacks.\n */\nexport function removeOnThemeChangeCallback(callback) {\n var i = _onThemeChangeCallbacks.indexOf(callback);\n if (i === -1) {\n return;\n }\n _onThemeChangeCallbacks.splice(i, 1);\n}\n/**\n * Applies the theme, while filling in missing slots.\n * @param theme - Partial theme object.\n * @param depComments - Whether to include deprecated tags as comments for deprecated slots.\n */\nexport function loadTheme(theme, depComments) {\n var _a;\n if (depComments === void 0) { depComments = false; }\n _theme = createTheme(theme, depComments);\n // Invoke the legacy method of theming the page as well.\n legacyLoadTheme(__assign(__assign(__assign(__assign({}, _theme.palette), _theme.semanticColors), _theme.effects), _loadFonts(_theme)));\n Customizations.applySettings((_a = {}, _a[ThemeSettingName] = _theme, _a));\n _onThemeChangeCallbacks.forEach(function (callback) {\n try {\n callback(_theme);\n }\n catch (e) {\n // don't let a bad callback break everything else\n }\n });\n return _theme;\n}\n/**\n * Loads font variables into a JSON object.\n * @param theme - The theme object\n */\nfunction _loadFonts(theme) {\n var lines = {};\n for (var _i = 0, _a = Object.keys(theme.fonts); _i < _a.length; _i++) {\n var fontName = _a[_i];\n var font = theme.fonts[fontName];\n for (var _b = 0, _c = Object.keys(font); _b < _c.length; _b++) {\n var propName = _c[_b];\n var name_1 = fontName + propName.charAt(0).toUpperCase() + propName.slice(1);\n var value = font[propName];\n if (propName === 'fontSize' && typeof value === 'number') {\n // if it's a number, convert it to px by default like our theming system does\n value = value + 'px';\n }\n lines[name_1] = value;\n }\n }\n return lines;\n}\n//# sourceMappingURL=theme.js.map","import { mergeStyles } from '@fluentui/merge-styles';\nimport { DefaultPalette } from '../styles/DefaultPalette';\nimport { getTheme } from '../styles/index';\nexport var ColorClassNames = {};\nfor (var colorName in DefaultPalette) {\n if (DefaultPalette.hasOwnProperty(colorName)) {\n // Foreground color\n _defineGetter(ColorClassNames, colorName, '', false, 'color');\n // Hover color\n _defineGetter(ColorClassNames, colorName, 'Hover', true, 'color');\n // Background color\n _defineGetter(ColorClassNames, colorName, 'Background', false, 'background');\n // Background hover\n _defineGetter(ColorClassNames, colorName, 'BackgroundHover', true, 'background');\n // Border color\n _defineGetter(ColorClassNames, colorName, 'Border', false, 'borderColor');\n // Border hover color\n _defineGetter(ColorClassNames, colorName, 'BorderHover', true, 'borderColor');\n }\n}\n/**\n * Defines a getter for the given class configuration.\n */\nfunction _defineGetter(obj, colorName, suffix, isHover, cssProperty) {\n Object.defineProperty(obj, colorName + suffix, {\n get: function () {\n var _a;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var style = (_a = {}, _a[cssProperty] = getTheme().palette[colorName], _a);\n return mergeStyles(isHover ? { selectors: { ':hover': style } } : style).toString();\n },\n enumerable: true,\n configurable: true,\n });\n}\n//# sourceMappingURL=ColorClassNames.js.map","export var hiddenContentStyle = {\n position: 'absolute',\n width: 1,\n height: 1,\n margin: -1,\n padding: 0,\n border: 0,\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n};\n//# sourceMappingURL=hiddenContentStyle.js.map","import { __assign } from \"tslib\";\nimport { keyframes } from '@fluentui/merge-styles';\nvar DEFAULT_DURATION = '14s';\nvar DEFAULT_DELAY = '2s';\nvar DEFAULT_ITERATION_COUNT = '1';\nfunction _continuousPulseStepOne(beaconColorOne, innerDimension) {\n return {\n borderColor: beaconColorOne,\n borderWidth: '0px',\n width: innerDimension,\n height: innerDimension,\n };\n}\nfunction _continuousPulseStepTwo(borderWidth) {\n return {\n opacity: 1,\n borderWidth: borderWidth,\n };\n}\nfunction _continuousPulseStepThree() {\n return {\n opacity: 1,\n };\n}\nfunction _continuousPulseStepFour(beaconColorTwo, outerDimension) {\n return {\n borderWidth: '0',\n width: outerDimension,\n height: outerDimension,\n opacity: 0,\n borderColor: beaconColorTwo,\n };\n}\nfunction _continuousPulseStepFive(beaconColorOne, innerDimension) {\n return __assign(__assign({}, _continuousPulseStepOne(beaconColorOne, innerDimension)), {\n opacity: 0,\n });\n}\nfunction _continuousPulseAnimationDouble(beaconColorOne, beaconColorTwo, innerDimension, outerDimension, borderWidth) {\n return keyframes({\n '0%': _continuousPulseStepOne(beaconColorOne, innerDimension),\n '1.42%': _continuousPulseStepTwo(borderWidth),\n '3.57%': _continuousPulseStepThree(),\n '7.14%': _continuousPulseStepFour(beaconColorTwo, outerDimension),\n '8%': _continuousPulseStepFive(beaconColorOne, innerDimension),\n '29.99%': _continuousPulseStepFive(beaconColorOne, innerDimension),\n '30%': _continuousPulseStepOne(beaconColorOne, innerDimension),\n '31.42%': _continuousPulseStepTwo(borderWidth),\n '33.57%': _continuousPulseStepThree(),\n '37.14%': _continuousPulseStepFour(beaconColorTwo, outerDimension),\n '38%': _continuousPulseStepFive(beaconColorOne, innerDimension),\n '79.42%': _continuousPulseStepFive(beaconColorOne, innerDimension),\n '79.43': _continuousPulseStepOne(beaconColorOne, innerDimension),\n '81.85': _continuousPulseStepTwo(borderWidth),\n '83.42': _continuousPulseStepThree(),\n '87%': _continuousPulseStepFour(beaconColorTwo, outerDimension),\n '100%': {},\n });\n}\nfunction _continuousPulseAnimationSingle(beaconColorOne, beaconColorTwo, innerDimension, outerDimension, borderWidth) {\n return keyframes({\n '0%': _continuousPulseStepOne(beaconColorOne, innerDimension),\n '14.2%': _continuousPulseStepTwo(borderWidth),\n '35.7%': _continuousPulseStepThree(),\n '71.4%': _continuousPulseStepFour(beaconColorTwo, outerDimension),\n '100%': {},\n });\n}\nfunction _createDefaultAnimation(animationName, delayLength) {\n return {\n animationName: animationName,\n animationIterationCount: DEFAULT_ITERATION_COUNT,\n animationDuration: DEFAULT_DURATION,\n animationDelay: delayLength || DEFAULT_DELAY,\n };\n}\nexport var PulsingBeaconAnimationStyles = {\n continuousPulseAnimationDouble: _continuousPulseAnimationDouble,\n continuousPulseAnimationSingle: _continuousPulseAnimationSingle,\n createDefaultAnimation: _createDefaultAnimation,\n};\n//# sourceMappingURL=PulsingBeaconAnimationStyles.js.map","import { Stylesheet } from '@fluentui/merge-styles';\nimport { memoizeFunction } from '@fluentui/utilities';\n/**\n * Internal memoized function which simply takes in the class map and the\n * disable boolean. These immutable values can be memoized.\n */\nvar _getGlobalClassNames = memoizeFunction(function (classNames, disableGlobalClassNames) {\n var styleSheet = Stylesheet.getInstance();\n if (disableGlobalClassNames) {\n // disable global classnames\n return Object.keys(classNames).reduce(function (acc, className) {\n acc[className] = styleSheet.getClassName(classNames[className]);\n return acc;\n }, {});\n }\n // use global classnames\n return classNames;\n});\n/**\n * Checks for the `disableGlobalClassNames` property on the `theme` to determine if it should return `classNames`\n * Note that calls to this function are memoized.\n *\n * @param classNames - The collection of global class names that apply when the flag is false. Make sure to pass in\n * the same instance on each call to benefit from memoization.\n * @param theme - The theme to check the flag on\n * @param disableGlobalClassNames - Optional. Explicitly opt in/out of disabling global classnames. Defaults to false.\n */\nexport function getGlobalClassNames(classNames, theme, disableGlobalClassNames) {\n return _getGlobalClassNames(classNames, disableGlobalClassNames !== undefined ? disableGlobalClassNames : theme.disableGlobalClassNames);\n}\n//# sourceMappingURL=getGlobalClassNames.js.map","export var HighContrastSelector = '@media screen and (-ms-high-contrast: active), screen and (forced-colors: active)';\nexport var HighContrastSelectorWhite = \n// eslint-disable-next-line @fluentui/max-len\n'@media screen and (-ms-high-contrast: black-on-white), screen and (forced-colors: active) and (prefers-color-scheme: light)';\nexport var HighContrastSelectorBlack = \n// eslint-disable-next-line @fluentui/max-len\n'@media screen and (-ms-high-contrast: white-on-black), screen and (forced-colors: active) and (prefers-color-scheme: dark)';\n/**\n * @deprecated Use `HighContrastSelector`\n */\nexport var EdgeChromiumHighContrastSelector = '@media screen and (-ms-high-contrast: active), screen and (forced-colors: active)';\nexport var ScreenWidthMinSmall = 320;\nexport var ScreenWidthMinMedium = 480;\nexport var ScreenWidthMinLarge = 640;\nexport var ScreenWidthMinXLarge = 1024;\nexport var ScreenWidthMinXXLarge = 1366;\nexport var ScreenWidthMinXXXLarge = 1920;\nexport var ScreenWidthMaxSmall = ScreenWidthMinMedium - 1;\nexport var ScreenWidthMaxMedium = ScreenWidthMinLarge - 1;\nexport var ScreenWidthMaxLarge = ScreenWidthMinXLarge - 1;\nexport var ScreenWidthMaxXLarge = ScreenWidthMinXXLarge - 1;\nexport var ScreenWidthMaxXXLarge = ScreenWidthMinXXXLarge - 1;\nexport var ScreenWidthMinUhfMobile = 768;\nexport function getScreenSelector(min, max) {\n var minSelector = typeof min === 'number' ? \" and (min-width: \".concat(min, \"px)\") : '';\n var maxSelector = typeof max === 'number' ? \" and (max-width: \".concat(max, \"px)\") : '';\n return \"@media only screen\".concat(minSelector).concat(maxSelector);\n}\n/**\n * The style which turns off high contrast adjustment in browsers.\n */\nexport function getHighContrastNoAdjustStyle() {\n return {\n forcedColorAdjust: 'none',\n MsHighContrastAdjust: 'none',\n };\n}\n/**\n * The style which turns off high contrast adjustment in (only) Edge Chromium browser.\n * @deprecated Use `getHighContrastNoAdjustStyle`\n */\n// eslint-disable-next-line deprecation/deprecation\nexport function getEdgeChromiumNoHighContrastAdjustSelector() {\n var _a;\n return _a = {},\n // eslint-disable-next-line deprecation/deprecation\n _a[EdgeChromiumHighContrastSelector] = {\n forcedColorAdjust: 'none',\n MsHighContrastAdjust: 'none',\n },\n _a;\n}\n//# sourceMappingURL=CommonStyles.js.map","export var ZIndexes;\n(function (ZIndexes) {\n ZIndexes.Nav = 1;\n /**\n * @deprecated Do not use\n */\n ZIndexes.ScrollablePane = 1;\n ZIndexes.FocusStyle = 1;\n ZIndexes.Coachmark = 1000;\n ZIndexes.Layer = 1000000;\n ZIndexes.KeytipLayer = 1000001;\n})(ZIndexes || (ZIndexes = {}));\n//# sourceMappingURL=zIndexes.js.map","import { HighContrastSelector } from './CommonStyles';\nimport { IsFocusVisibleClassName } from '@fluentui/utilities';\nimport { ZIndexes } from './zIndexes';\nexport function getFocusStyle(theme, insetOrOptions, position, highContrastStyle, borderColor, outlineColor, isFocusedOnly, borderRadius) {\n if (typeof insetOrOptions === 'number' || !insetOrOptions) {\n return _getFocusStyleInternal(theme, {\n inset: insetOrOptions,\n position: position,\n highContrastStyle: highContrastStyle,\n borderColor: borderColor,\n outlineColor: outlineColor,\n isFocusedOnly: isFocusedOnly,\n borderRadius: borderRadius,\n });\n }\n else {\n return _getFocusStyleInternal(theme, insetOrOptions);\n }\n}\nfunction _getFocusStyleInternal(theme, options) {\n var _a, _b;\n if (options === void 0) { options = {}; }\n var borderRadius = options.borderRadius, _c = options.inset, inset = _c === void 0 ? 0 : _c, _d = options.width, width = _d === void 0 ? 1 : _d, _e = options.position, position = _e === void 0 ? 'relative' : _e, highContrastStyle = options.highContrastStyle, _f = options.borderColor, borderColor = _f === void 0 ? theme.palette.white : _f, _g = options.outlineColor, outlineColor = _g === void 0 ? theme.palette.neutralSecondary : _g, _h = options.isFocusedOnly, isFocusedOnly = _h === void 0 ? true : _h, pointerEvents = options.pointerEvents;\n return {\n // Clear browser-specific focus styles and use 'transparent' as placeholder for focus style.\n outline: 'transparent',\n // Requirement because pseudo-element is absolutely positioned.\n position: position,\n selectors: (_a = {\n // Clear the focus border in Firefox.\n // Reference: http://stackoverflow.com/a/199319/1436671\n '::-moz-focus-inner': {\n border: '0',\n }\n },\n // When the element that uses this mixin is in a :focus state, add a pseudo-element to\n // create a border.\n _a[\".\".concat(IsFocusVisibleClassName, \" &\").concat(isFocusedOnly ? ':focus' : '', \":after, :host(.\").concat(IsFocusVisibleClassName, \") &\").concat(isFocusedOnly ? ':focus' : '', \":after\")] = {\n content: '\"\"',\n position: 'absolute',\n pointerEvents: pointerEvents,\n left: inset + 1,\n top: inset + 1,\n bottom: inset + 1,\n right: inset + 1,\n border: \"\".concat(width, \"px solid \").concat(borderColor),\n outline: \"\".concat(width, \"px solid \").concat(outlineColor),\n zIndex: ZIndexes.FocusStyle,\n borderRadius: borderRadius,\n selectors: (_b = {},\n _b[HighContrastSelector] = highContrastStyle,\n _b),\n },\n _a),\n };\n}\n/**\n * Generates style to clear browser specific focus styles.\n */\nexport function focusClear() {\n return {\n selectors: {\n '&::-moz-focus-inner': {\n // Clear the focus border in Firefox. Reference: http://stackoverflow.com/a/199319/1436671\n border: 0,\n },\n '&': {\n // Clear browser specific focus styles and use transparent as placeholder for focus style\n outline: 'transparent',\n },\n },\n };\n}\n/**\n * Generates a style which can be used to set a border on focus.\n *\n * @param theme - The theme object to use.\n * @param inset - The number of pixels to inset the border (default 0)\n * @param width - The border width in pixels (default 1)\n * @param color - Color of the outline (default `theme.palette.neutralSecondary`)\n * @returns The style object.\n */\nexport function getFocusOutlineStyle(theme, inset, width, color) {\n var _a;\n if (inset === void 0) { inset = 0; }\n if (width === void 0) { width = 1; }\n return {\n selectors: (_a = {},\n _a[\":global(\".concat(IsFocusVisibleClassName, \") &:focus\")] = {\n outline: \"\".concat(width, \" solid \").concat(color || theme.palette.neutralSecondary),\n outlineOffset: \"\".concat(-inset, \"px\"),\n },\n _a),\n };\n}\n/**\n * Generates text input border styles on focus.\n *\n * @param borderColor - Color of the border.\n * @param borderRadius - Radius of the border.\n * @param borderType - Type of the border.\n * @param borderPosition - Position of the border relative to the input element (default to -1\n * as it's the most common border width of the input element)\n * @returns The style object.\n */\nexport var getInputFocusStyle = function (borderColor, borderRadius, borderType, borderPosition) {\n var _a, _b, _c;\n if (borderType === void 0) { borderType = 'border'; }\n if (borderPosition === void 0) { borderPosition = -1; }\n var isBorderBottom = borderType === 'borderBottom';\n return {\n borderColor: borderColor,\n selectors: {\n ':after': (_a = {\n pointerEvents: 'none',\n content: \"''\",\n position: 'absolute',\n left: isBorderBottom ? 0 : borderPosition,\n top: borderPosition,\n bottom: borderPosition,\n right: isBorderBottom ? 0 : borderPosition\n },\n _a[borderType] = \"2px solid \".concat(borderColor),\n _a.borderRadius = borderRadius,\n _a.width = borderType === 'borderBottom' ? '100%' : undefined,\n _a.selectors = (_b = {},\n _b[HighContrastSelector] = (_c = {},\n _c[borderType === 'border' ? 'borderColor' : 'borderBottomColor'] = 'Highlight',\n _c),\n _b),\n _a),\n },\n };\n};\n//# sourceMappingURL=getFocusStyle.js.map","import { Customizations, mergeSettings } from '@fluentui/utilities';\n/**\n * @internal\n * This function is still in experimental phase in support of Foundation experimental development.\n * Its API signature and existence are subject to change.\n *\n * Modify context to activate the specified scheme or theme. For schemes, look in context (if available) and fall back\n * to global Customizations. If both scheme and theme are specified, scheme will be looked up in theme. In this case,\n * scheme must be present in theme arg, otherwise new context will default to theme arg (there is no fallback to\n * settings to look up scheme.)\n *\n * @param context - Context in which to get schemed customizations.\n * @param scheme - Scheme to get customizations for from theme arg (if supplied) OR from context and global settings.\n * @param theme - Theme to merge into context.\n * @returns modified schemed context if scheme is valid and not already applied, unmodified context otherwise.\n */\nexport function getThemedContext(context, scheme, theme) {\n var newContext = context;\n var newSettings;\n // Only fall back to context and customizations when theme arg is not provided.\n var schemeSource = theme || Customizations.getSettings(['theme'], undefined, context.customizations).theme;\n if (theme) {\n newSettings = { theme: theme };\n }\n var schemeTheme = scheme && schemeSource && schemeSource.schemes && schemeSource.schemes[scheme];\n // These first two checks are logically redundant but TS doesn't infer schemeSource.schemes is defined\n // when schemeTheme is defined.\n if (schemeSource && schemeTheme && schemeSource !== schemeTheme) {\n newSettings = { theme: schemeTheme };\n newSettings.theme.schemes = schemeSource.schemes;\n }\n if (newSettings) {\n newContext = {\n customizations: {\n settings: mergeSettings(context.customizations.settings, newSettings),\n scopedSettings: context.customizations.scopedSettings,\n },\n };\n }\n return newContext;\n}\n//# sourceMappingURL=scheme.js.map","// This file mimics styles and mixins from _General.Mixins.scss\nexport var normalize = {\n boxShadow: 'none',\n margin: 0,\n padding: 0,\n boxSizing: 'border-box',\n};\nexport var noWrap = {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n};\n//# sourceMappingURL=GeneralStyles.js.map","var DEFAULT_HEIGHT = '50%';\nvar DEFAULT_WIDTH = 20;\n/**\n * - Generates a style used to fade out an overflowing content by defining a style for an :after pseudo element.\n * - Apply it to the :after selector for all combination of states the parent of content might have (normal, hover,\n * selected, focus).\n * - Requires the target to have position set to relative and overflow set to hidden.\n *\n * @example\n * ```tsx\n * // Assuming the following DOM structure and the different background colors coming from\n * // the parent holding the content.\n *
\n * Overflown Content\n *
\n * ```\n * ```ts\n * // This is how the style set would look in Component.styles.ts\n * const { bodyBackground } = theme.semanticColors;\n * const { neutralLighter } = theme.palette;\n *\n * // The second argument of getFadedOverflowStyle function is a string representing a key of\n * // ISemanticColors or IPalette.\n *\n * const styles = {\n * parent: [\n * backgroundColor: bodyBackground,\n * selectors: {\n * '&:hover: {\n * backgroundColor: neutralLighter\n * },\n * '$content:after': {\n * ...getFadedOverflowStyle(theme, 'bodyBackground')\n * },\n * '&:hover $content:after': {\n * ...getFadedOverflowStyle(theme, 'neutralLighter')\n * }\n * }\n * ],\n * content: [\n * width: '100%',\n * display: 'inline-block',\n * position: 'relative',\n * overflow: 'hidden'\n * ]\n * }\n * ```\n * @param theme - The theme object to use.\n * @param color - The background color to fade out to. Accepts only keys of ISemanticColors or IPalette.\n * Defaults to 'bodyBackground'.\n * @param direction - The direction of the overflow. Defaults to horizontal.\n * @param width - The width of the fading overflow. Vertical direction defaults it to 100% vs 20px when horizontal.\n * @param height - The Height of the fading overflow. Vertical direction defaults it to 50% vs 100% when horizontal.\n * @returns The style object.\n */\nexport function getFadedOverflowStyle(theme, color, direction, width, height) {\n if (color === void 0) { color = 'bodyBackground'; }\n if (direction === void 0) { direction = 'horizontal'; }\n if (width === void 0) { width = getDefaultValue('width', direction); }\n if (height === void 0) { height = getDefaultValue('height', direction); }\n // Get the color value string from the theme semanticColors or palette.\n var colorValue = theme.semanticColors[color] || theme.palette[color];\n // Get the red, green, blue values of the colorValue.\n var rgbColor = color2rgb(colorValue);\n // Apply opacity 0 to serve as a start color of the gradient.\n var rgba = \"rgba(\".concat(rgbColor.r, \", \").concat(rgbColor.g, \", \").concat(rgbColor.b, \", 0)\");\n // Get the direction of the gradient. (mergeStyles takes care of RTL direction)\n var gradientDirection = direction === 'vertical' ? 'to bottom' : 'to right';\n return {\n content: '\"\"',\n position: 'absolute',\n right: 0,\n bottom: 0,\n width: width,\n height: height,\n pointerEvents: 'none',\n backgroundImage: \"linear-gradient(\".concat(gradientDirection, \", \").concat(rgba, \" 0%, \").concat(colorValue, \" 100%)\"),\n };\n}\n// TODO consider moving this to a separate module along with some more color functions from OUFR/utilities.\n/**\n * Helper function to convert a string hex color to an RGB object.\n *\n * @param colorValue - Color to be converted from hex to rgba.\n */\nfunction color2rgb(colorValue) {\n if (colorValue[0] === '#') {\n // If it's a hex code\n return {\n r: parseInt(colorValue.slice(1, 3), 16),\n g: parseInt(colorValue.slice(3, 5), 16),\n b: parseInt(colorValue.slice(5, 7), 16),\n };\n }\n else if (colorValue.indexOf('rgba(') === 0) {\n // If it's an rgba color string\n colorValue = colorValue.match(/rgba\\(([^)]+)\\)/)[1];\n var parts = colorValue.split(/ *, */).map(Number);\n return {\n r: parts[0],\n g: parts[1],\n b: parts[2],\n };\n }\n // The only remaining possibility is transparent.\n return {\n r: 255,\n g: 255,\n b: 255,\n };\n}\n/**\n * Helper function to get the default values for parameters of main function.\n *\n * @param style - Which style to get the default value for.\n * @param direction - What direction to take into consideration.\n */\nfunction getDefaultValue(style, direction) {\n if (style === 'width') {\n return direction === 'horizontal' ? DEFAULT_WIDTH : '100%';\n }\n else {\n return direction === 'vertical' ? DEFAULT_HEIGHT : '100%';\n }\n}\n//# sourceMappingURL=getFadedOverflowStyle.js.map","/**\n * Generates placeholder style for each of the browsers supported by `@fluentui/react`.\n * @param styles - The style to use.\n * @returns The placeholder style object for each browser depending on the placeholder directive it uses.\n */\nexport function getPlaceholderStyles(styles) {\n return {\n selectors: {\n '::placeholder': styles,\n ':-ms-input-placeholder': styles,\n '::-ms-input-placeholder': styles, // Edge\n },\n };\n}\n//# sourceMappingURL=getPlaceholderStyles.js.map","import { __assign } from \"tslib\";\nimport { GlobalSettings, warn } from '@fluentui/utilities';\nimport { fontFace, mergeStyles, Stylesheet } from '@fluentui/merge-styles';\nvar ICON_SETTING_NAME = 'icons';\nvar _iconSettings = GlobalSettings.getValue(ICON_SETTING_NAME, {\n __options: {\n disableWarnings: false,\n warnOnMissingIcons: true,\n },\n __remapped: {},\n});\n// Reset icon registration on stylesheet resets.\nvar stylesheet = Stylesheet.getInstance();\nif (stylesheet && stylesheet.onReset) {\n stylesheet.onReset(function () {\n for (var name_1 in _iconSettings) {\n if (_iconSettings.hasOwnProperty(name_1) && !!_iconSettings[name_1].subset) {\n _iconSettings[name_1].subset.className = undefined;\n }\n }\n });\n}\n/**\n * Normalizes an icon name for consistent mapping.\n * Current implementation is to convert the icon name to lower case.\n *\n * @param name - Icon name to normalize.\n * @returns {string} Normalized icon name to use for indexing and mapping.\n */\nvar normalizeIconName = function (name) { return name.toLowerCase(); };\n/**\n * Registers a given subset of icons.\n *\n * @param iconSubset - the icon subset definition.\n */\nexport function registerIcons(iconSubset, options) {\n var subset = __assign(__assign({}, iconSubset), { isRegistered: false, className: undefined });\n var icons = iconSubset.icons;\n // Grab options, optionally mix user provided ones on top.\n options = options ? __assign(__assign({}, _iconSettings.__options), options) : _iconSettings.__options;\n for (var iconName in icons) {\n if (icons.hasOwnProperty(iconName)) {\n var code = icons[iconName];\n var normalizedIconName = normalizeIconName(iconName);\n if (_iconSettings[normalizedIconName]) {\n _warnDuplicateIcon(iconName);\n }\n else {\n _iconSettings[normalizedIconName] = {\n code: code,\n subset: subset,\n };\n }\n }\n }\n}\n/**\n * Unregisters icons by name.\n *\n * @param iconNames - List of icons to unregister.\n */\nexport function unregisterIcons(iconNames) {\n var options = _iconSettings.__options;\n var _loop_1 = function (iconName) {\n var normalizedIconName = normalizeIconName(iconName);\n if (_iconSettings[normalizedIconName]) {\n delete _iconSettings[normalizedIconName];\n }\n else {\n // Warn that we are trying to delete an icon that doesn't exist\n if (!options.disableWarnings) {\n warn(\"The icon \\\"\".concat(iconName, \"\\\" tried to unregister but was not registered.\"));\n }\n }\n // Delete any aliases for this iconName\n if (_iconSettings.__remapped[normalizedIconName]) {\n delete _iconSettings.__remapped[normalizedIconName];\n }\n // Delete any items that were an alias for this iconName\n Object.keys(_iconSettings.__remapped).forEach(function (key) {\n if (_iconSettings.__remapped[key] === normalizedIconName) {\n delete _iconSettings.__remapped[key];\n }\n });\n };\n for (var _i = 0, iconNames_1 = iconNames; _i < iconNames_1.length; _i++) {\n var iconName = iconNames_1[_i];\n _loop_1(iconName);\n }\n}\n/**\n * Remaps one icon name to another.\n */\nexport function registerIconAlias(iconName, mappedToName) {\n _iconSettings.__remapped[normalizeIconName(iconName)] = normalizeIconName(mappedToName);\n}\n/**\n * Gets an icon definition. If an icon is requested but the subset has yet to be registered,\n * it will get registered immediately.\n *\n * @public\n * @param name - Name of icon.\n */\nexport function getIcon(name) {\n var icon = undefined;\n var options = _iconSettings.__options;\n name = name ? normalizeIconName(name) : '';\n name = _iconSettings.__remapped[name] || name;\n if (name) {\n icon = _iconSettings[name];\n if (icon) {\n var subset = icon.subset;\n if (subset && subset.fontFace) {\n if (!subset.isRegistered) {\n fontFace(subset.fontFace);\n subset.isRegistered = true;\n }\n if (!subset.className) {\n subset.className = mergeStyles(subset.style, {\n fontFamily: subset.fontFace.fontFamily,\n fontWeight: subset.fontFace.fontWeight || 'normal',\n fontStyle: subset.fontFace.fontStyle || 'normal',\n });\n }\n }\n }\n else {\n // eslint-disable-next-line deprecation/deprecation\n if (!options.disableWarnings && options.warnOnMissingIcons) {\n warn(\"The icon \\\"\".concat(name, \"\\\" was used but not registered. See https://github.com/microsoft/fluentui/wiki/Using-icons for more information.\"));\n }\n }\n }\n return icon;\n}\n/**\n * Sets the icon options.\n *\n * @public\n */\nexport function setIconOptions(options) {\n _iconSettings.__options = __assign(__assign({}, _iconSettings.__options), options);\n}\nvar _missingIcons = [];\nvar _missingIconsTimer = undefined;\nfunction _warnDuplicateIcon(iconName) {\n var options = _iconSettings.__options;\n var warningDelay = 2000;\n var maxIconsInMessage = 10;\n if (!options.disableWarnings) {\n _missingIcons.push(iconName);\n if (_missingIconsTimer === undefined) {\n _missingIconsTimer = setTimeout(function () {\n warn(\"Some icons were re-registered. Applications should only call registerIcons for any given \" +\n \"icon once. Redefining what an icon is may have unintended consequences. Duplicates \" +\n \"include: \\n\" +\n _missingIcons.slice(0, maxIconsInMessage).join(', ') +\n (_missingIcons.length > maxIconsInMessage ? \" (+ \".concat(_missingIcons.length - maxIconsInMessage, \" more)\") : ''));\n _missingIconsTimer = undefined;\n _missingIcons = [];\n }, warningDelay);\n }\n }\n}\n//# sourceMappingURL=icons.js.map","import { mergeStyles } from '@fluentui/merge-styles';\nimport { getIcon } from './icons';\nvar defaultIconStyles = {\n display: 'inline-block',\n};\n/**\n * Gets an icon classname. You should be able to add this classname to an I tag with no\n * additional classnames, and render the icon.\n *\n * @public\n */\nexport function getIconClassName(name) {\n var className = '';\n var icon = getIcon(name);\n if (icon) {\n className = mergeStyles(icon.subset.className, defaultIconStyles, {\n selectors: {\n '::before': {\n content: \"\\\"\".concat(icon.code, \"\\\"\"),\n },\n },\n });\n }\n return className;\n}\n//# sourceMappingURL=getIconClassName.js.map","export var FLUENT_CDN_BASE_URL = 'https://res.cdn.office.net/files/fabric-cdn-prod_20240129.001';\n//# sourceMappingURL=cdn.js.map","// Do not modify this file; it is generated as part of publish.\n// The checked in version is a placeholder only and will not be updated.\nimport { setVersion } from '@fluentui/set-version';\nsetVersion('@fluentui/style-utilities', '8.10.20');\n//# sourceMappingURL=version.js.map","export { AnimationClassNames, FontClassNames, ColorClassNames } from './classNames/index';\nexport { AnimationStyles, AnimationVariables, DefaultPalette, DefaultEffects, DefaultFontStyles, registerDefaultFontFaces, FontSizes, FontWeights, IconFontSizes, createFontStyles, hiddenContentStyle, PulsingBeaconAnimationStyles, getGlobalClassNames, \n// eslint-disable-next-line deprecation/deprecation\ngetFocusStyle, getFocusOutlineStyle, getInputFocusStyle, getThemedContext, focusClear, ThemeSettingName, getTheme, loadTheme, createTheme, registerOnThemeChangeCallback, removeOnThemeChangeCallback, HighContrastSelector, HighContrastSelectorWhite, HighContrastSelectorBlack, \n// eslint-disable-next-line deprecation/deprecation\nEdgeChromiumHighContrastSelector, ScreenWidthMinSmall, ScreenWidthMinMedium, ScreenWidthMinLarge, ScreenWidthMinXLarge, ScreenWidthMinXXLarge, ScreenWidthMinXXXLarge, ScreenWidthMaxSmall, ScreenWidthMaxMedium, ScreenWidthMaxLarge, ScreenWidthMaxXLarge, ScreenWidthMaxXXLarge, ScreenWidthMinUhfMobile, getScreenSelector, getHighContrastNoAdjustStyle, \n// eslint-disable-next-line deprecation/deprecation\ngetEdgeChromiumNoHighContrastAdjustSelector, normalize, noWrap, getFadedOverflowStyle, getPlaceholderStyles, ZIndexes, } from './styles/index';\nexport { buildClassMap, getIcon, registerIcons, registerIconAlias, unregisterIcons, setIconOptions, getIconClassName, } from './utilities/index';\nexport { InjectionMode, Stylesheet, concatStyleSets, concatStyleSetsWithProps, fontFace, keyframes, mergeStyleSets, mergeStyles, } from './MergeStyles';\nexport { FLUENT_CDN_BASE_URL } from './cdn';\nimport './version';\n// Ensure theme is initialized when this package is referenced.\nimport { initializeThemeInCustomizations } from './styles/theme';\ninitializeThemeInCustomizations();\n//# sourceMappingURL=index.js.map","import { getWindow } from './dom/getWindow';\n/**\n * Storing global state in local module variables has issues when more than one copy\n * if the module gets loaded on the page (due to a bundling error or simply by consuming\n * a prebundled script.)\n *\n * This file contains helpers to deal with the getting and setting local state, and allows\n * callers to get called back when it mutates.\n */\nvar GLOBAL_SETTINGS_PROP_NAME = '__globalSettings__';\nvar CALLBACK_STATE_PROP_NAME = '__callbacks__';\nvar _counter = 0;\n/**\n * Global settings helper, which stores settings in the global (window) namespace.\n * If window is not provided, it will store settings in module scope. Provides a\n * way to observe changes as well when their values change.\n *\n * @public\n * {@docCategory GlobalSettings}\n */\nvar GlobalSettings = /** @class */ (function () {\n function GlobalSettings() {\n }\n GlobalSettings.getValue = function (key, defaultValue) {\n var globalSettings = _getGlobalSettings();\n if (globalSettings[key] === undefined) {\n globalSettings[key] = typeof defaultValue === 'function' ? defaultValue() : defaultValue;\n }\n return globalSettings[key];\n };\n GlobalSettings.setValue = function (key, value) {\n var globalSettings = _getGlobalSettings();\n var callbacks = globalSettings[CALLBACK_STATE_PROP_NAME];\n var oldValue = globalSettings[key];\n if (value !== oldValue) {\n globalSettings[key] = value;\n var changeDescription = {\n oldValue: oldValue,\n value: value,\n key: key,\n };\n for (var id in callbacks) {\n if (callbacks.hasOwnProperty(id)) {\n callbacks[id](changeDescription);\n }\n }\n }\n return value;\n };\n GlobalSettings.addChangeListener = function (cb) {\n // Note: we use generated ids on the callbacks to create a map of the callbacks, which optimizes removal.\n // (It's faster to delete a key than it is to look up the index of an object and splice an array.)\n var id = cb.__id__;\n var callbacks = _getCallbacks();\n if (!id) {\n id = cb.__id__ = String(_counter++);\n }\n callbacks[id] = cb;\n };\n GlobalSettings.removeChangeListener = function (cb) {\n var callbacks = _getCallbacks();\n delete callbacks[cb.__id__];\n };\n return GlobalSettings;\n}());\nexport { GlobalSettings };\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _getGlobalSettings() {\n var _a;\n var win = getWindow();\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var globalObj = win || {};\n if (!globalObj[GLOBAL_SETTINGS_PROP_NAME]) {\n globalObj[GLOBAL_SETTINGS_PROP_NAME] = (_a = {},\n _a[CALLBACK_STATE_PROP_NAME] = {},\n _a);\n }\n return globalObj[GLOBAL_SETTINGS_PROP_NAME];\n}\nfunction _getCallbacks() {\n var globalSettings = _getGlobalSettings();\n return globalSettings[CALLBACK_STATE_PROP_NAME];\n}\n//# sourceMappingURL=GlobalSettings.js.map","import { KeyCodes } from './KeyCodes';\nimport { getDocument } from './dom/getDocument';\nimport { getItem, setItem } from './sessionStorage';\nimport { setRTL as mergeStylesSetRTL } from '@fluentui/merge-styles';\nvar RTL_LOCAL_STORAGE_KEY = 'isRTL';\n// Default to undefined so that we initialize on first read.\nvar _isRTL;\n/**\n * Gets the rtl state of the page (returns true if in rtl.)\n */\nexport function getRTL(theme) {\n if (theme === void 0) { theme = {}; }\n if (theme.rtl !== undefined) {\n return theme.rtl;\n }\n if (_isRTL === undefined) {\n // Fabric supports persisting the RTL setting between page refreshes via session storage\n var savedRTL = getItem(RTL_LOCAL_STORAGE_KEY);\n if (savedRTL !== null) {\n _isRTL = savedRTL === '1';\n setRTL(_isRTL);\n }\n var doc = getDocument();\n if (_isRTL === undefined && doc) {\n _isRTL = ((doc.body && doc.body.getAttribute('dir')) || doc.documentElement.getAttribute('dir')) === 'rtl';\n mergeStylesSetRTL(_isRTL);\n }\n }\n return !!_isRTL;\n}\n/**\n * Sets the rtl state of the page (by adjusting the dir attribute of the html element.)\n */\nexport function setRTL(isRTL, persistSetting) {\n if (persistSetting === void 0) { persistSetting = false; }\n var doc = getDocument();\n if (doc) {\n doc.documentElement.setAttribute('dir', isRTL ? 'rtl' : 'ltr');\n }\n if (persistSetting) {\n setItem(RTL_LOCAL_STORAGE_KEY, isRTL ? '1' : '0');\n }\n _isRTL = isRTL;\n mergeStylesSetRTL(_isRTL);\n}\n/**\n * Returns the given key, but flips right/left arrows if necessary.\n */\nexport function getRTLSafeKeyCode(key, theme) {\n if (theme === void 0) { theme = {}; }\n if (getRTL(theme)) {\n if (key === KeyCodes.left) {\n key = KeyCodes.right;\n }\n else if (key === KeyCodes.right) {\n key = KeyCodes.left;\n }\n }\n return key;\n}\n//# sourceMappingURL=rtl.js.map","import { getWindow } from './dom/getWindow';\n/**\n * Fetches an item from session storage without throwing an exception\n * @param key The key of the item to fetch from session storage\n */\nexport function getItem(key) {\n var result = null;\n try {\n var win = getWindow();\n result = win ? win.sessionStorage.getItem(key) : null;\n }\n catch (e) {\n /* Eat the exception */\n }\n return result;\n}\n/**\n * Inserts an item into session storage without throwing an exception\n * @param key The key of the item to add to session storage\n * @param data The data to put into session storage\n */\nexport function setItem(key, data) {\n var _a;\n try {\n (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.sessionStorage.setItem(key, data);\n }\n catch (e) {\n /* Eat the exception */\n }\n}\n//# sourceMappingURL=sessionStorage.js.map","import { getWindow } from './dom/getWindow';\nexport var isIE11 = function () {\n var _a;\n var win = getWindow();\n if (!((_a = win === null || win === void 0 ? void 0 : win.navigator) === null || _a === void 0 ? void 0 : _a.userAgent)) {\n return false;\n }\n return win.navigator.userAgent.indexOf('rv:11.0') > -1;\n};\n//# sourceMappingURL=ie11Detector.js.map","import { FontSizes, FontWeights, LocalizedFontFamilies, LocalizedFontNames } from './FluentFonts';\n// Fallback fonts, if specified system or web fonts are unavailable.\nvar FontFamilyFallbacks = \"'Segoe UI', -apple-system, BlinkMacSystemFont, 'Roboto', 'Helvetica Neue', sans-serif\";\n// By default, we favor system fonts for the default.\n// All localized fonts use a web font and never use the system font.\nvar defaultFontFamily = \"'Segoe UI', '\".concat(LocalizedFontNames.WestEuropean, \"'\");\n// Mapping of language prefix to to font family.\nvar LanguageToFontMap = {\n ar: LocalizedFontFamilies.Arabic,\n bg: LocalizedFontFamilies.Cyrillic,\n cs: LocalizedFontFamilies.EastEuropean,\n el: LocalizedFontFamilies.Greek,\n et: LocalizedFontFamilies.EastEuropean,\n he: LocalizedFontFamilies.Hebrew,\n hi: LocalizedFontFamilies.Hindi,\n hr: LocalizedFontFamilies.EastEuropean,\n hu: LocalizedFontFamilies.EastEuropean,\n ja: LocalizedFontFamilies.Japanese,\n kk: LocalizedFontFamilies.EastEuropean,\n ko: LocalizedFontFamilies.Korean,\n lt: LocalizedFontFamilies.EastEuropean,\n lv: LocalizedFontFamilies.EastEuropean,\n pl: LocalizedFontFamilies.EastEuropean,\n ru: LocalizedFontFamilies.Cyrillic,\n sk: LocalizedFontFamilies.EastEuropean,\n 'sr-latn': LocalizedFontFamilies.EastEuropean,\n th: LocalizedFontFamilies.Thai,\n tr: LocalizedFontFamilies.EastEuropean,\n uk: LocalizedFontFamilies.Cyrillic,\n vi: LocalizedFontFamilies.Vietnamese,\n 'zh-hans': LocalizedFontFamilies.ChineseSimplified,\n 'zh-hant': LocalizedFontFamilies.ChineseTraditional,\n hy: LocalizedFontFamilies.Armenian,\n ka: LocalizedFontFamilies.Georgian,\n};\nfunction _fontFamilyWithFallbacks(fontFamily) {\n return \"\".concat(fontFamily, \", \").concat(FontFamilyFallbacks);\n}\n/**\n * If there is a localized font for this language, return that.\n * Returns undefined if there is no localized font for that language.\n */\nfunction _getLocalizedFontFamily(language) {\n for (var lang in LanguageToFontMap) {\n if (LanguageToFontMap.hasOwnProperty(lang) && language && lang.indexOf(language) === 0) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return LanguageToFontMap[lang];\n }\n }\n return defaultFontFamily;\n}\nfunction _createFont(size, weight, fontFamily) {\n return {\n fontFamily: fontFamily,\n MozOsxFontSmoothing: 'grayscale',\n WebkitFontSmoothing: 'antialiased',\n fontSize: size,\n fontWeight: weight,\n };\n}\nexport function createFontStyles(localeCode) {\n var localizedFont = _getLocalizedFontFamily(localeCode);\n var fontFamilyWithFallback = _fontFamilyWithFallbacks(localizedFont);\n var fontStyles = {\n tiny: _createFont(FontSizes.mini, FontWeights.regular, fontFamilyWithFallback),\n xSmall: _createFont(FontSizes.xSmall, FontWeights.regular, fontFamilyWithFallback),\n small: _createFont(FontSizes.small, FontWeights.regular, fontFamilyWithFallback),\n smallPlus: _createFont(FontSizes.smallPlus, FontWeights.regular, fontFamilyWithFallback),\n medium: _createFont(FontSizes.medium, FontWeights.regular, fontFamilyWithFallback),\n mediumPlus: _createFont(FontSizes.mediumPlus, FontWeights.regular, fontFamilyWithFallback),\n large: _createFont(FontSizes.large, FontWeights.regular, fontFamilyWithFallback),\n xLarge: _createFont(FontSizes.xLarge, FontWeights.semibold, fontFamilyWithFallback),\n xLargePlus: _createFont(FontSizes.xLargePlus, FontWeights.semibold, fontFamilyWithFallback),\n xxLarge: _createFont(FontSizes.xxLarge, FontWeights.semibold, fontFamilyWithFallback),\n xxLargePlus: _createFont(FontSizes.xxLargePlus, FontWeights.semibold, fontFamilyWithFallback),\n superLarge: _createFont(FontSizes.superLarge, FontWeights.semibold, fontFamilyWithFallback),\n mega: _createFont(FontSizes.mega, FontWeights.semibold, fontFamilyWithFallback),\n };\n return fontStyles;\n}\n//# sourceMappingURL=createFontStyles.js.map","/**\n * AssertNever is a utility function that can be used for exhaustiveness checks in switch statements.\n *\n * @public\n */\nexport function assertNever(x) {\n throw new Error('Unexpected object: ' + x);\n}\n//# sourceMappingURL=assertNever.js.map","/**\n * Determines whether a component is controlled.\n * @param props - Component props\n * @param valueProp - Prop containing the controlled value\n * @returns true if controlled, false if uncontrolled\n */\nexport function isControlled(props, valueProp) {\n // React's built-in considers a prop to be provided if its value is non-null/undefined.\n // Mirror that behavior here (rather than checking for just undefined).\n return props[valueProp] !== undefined && props[valueProp] !== null;\n}\n//# sourceMappingURL=controlled.js.map","/*\n * 1DS JS SDK Core, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n\r\n// Licensed under the MIT License.\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 ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_INITIALIZE = \"initialize\"; // Count: 4\r\nexport var _DYN_LOGGER = \"logger\"; // Count: 4\r\nexport var _DYN_INDEX_OF = \"indexOf\"; // Count: 4\r\nexport var _DYN_TIMINGS = \"timings\"; // Count: 4\r\nexport var _DYN_POLL_INTERNAL_LOGS = \"pollInternalLogs\"; // Count: 4\r\nexport var _DYN_VALUE = \"value\"; // Count: 20\r\nexport var _DYN_KIND = \"kind\"; // Count: 5\r\nexport var _DYN_LENGTH = \"length\"; // Count: 7\r\nexport var _DYN_PROCESS_TELEMETRY_ST0 = \"processTelemetryStart\"; // Count: 3\r\nexport var _DYN_HANDLE_FIELD = \"handleField\"; // Count: 3\r\nexport var _DYN_RM_SANITIZER = \"rmSanitizer\"; // Count: 3\r\nexport var _DYN_RM_FIELD_SANITIZER = \"rmFieldSanitizer\"; // Count: 3\r\nexport var _DYN_CAN_HANDLE = \"canHandle\"; // Count: 7\r\n//# sourceMappingURL=__DynamicConstants.js.map","/**\n * Regular expressions matching characters to ignore when calculating the initials.\n */\n/**\n * Regular expression matching characters within various types of enclosures, including the enclosures themselves\n * so for example, (xyz) [xyz] {xyz} all would be ignored\n */\nvar UNWANTED_ENCLOSURES_REGEX = /[\\(\\[\\{\\<][^\\)\\]\\}\\>]*[\\)\\]\\}\\>]/g;\n/**\n * Regular expression matching special ASCII characters except space, plus some unicode special characters.\n * Applies after unwanted enclosures have been removed\n */\nvar UNWANTED_CHARS_REGEX = /[\\0-\\u001F\\!-/:-@\\[-`\\{-\\u00BF\\u0250-\\u036F\\uD800-\\uFFFF]/g;\n/**\n * Regular expression matching phone numbers. Applied after chars matching UNWANTED_CHARS_REGEX have been removed\n * and number has been trimmed for whitespaces\n */\nvar PHONENUMBER_REGEX = /^\\d+[\\d\\s]*(:?ext|x|)\\s*\\d+$/i;\n/** Regular expression matching one or more spaces. */\nvar MULTIPLE_WHITESPACES_REGEX = /\\s+/g;\n/**\n * Regular expression matching languages for which we currently don't support initials.\n * Arabic: Arabic, Arabic Supplement, Arabic Extended-A.\n * Korean: Hangul Jamo, Hangul Compatibility Jamo, Hangul Jamo Extended-A, Hangul Syllables, Hangul Jamo Extended-B.\n * Japanese: Hiragana, Katakana.\n * CJK: CJK Unified Ideographs Extension A, CJK Unified Ideographs, CJK Compatibility Ideographs,\n * CJK Unified Ideographs Extension B\n */\nvar UNSUPPORTED_TEXT_REGEX = \n// eslint-disable-next-line @fluentui/max-len\n/[\\u0600-\\u06FF\\u0750-\\u077F\\u08A0-\\u08FF\\u1100-\\u11FF\\u3130-\\u318F\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3040-\\u309F\\u30A0-\\u30FF\\u3400-\\u4DBF\\u4E00-\\u9FFF\\uF900-\\uFAFF]|[\\uD840-\\uD869][\\uDC00-\\uDED6]/;\nfunction getInitialsLatin(displayName, isRtl) {\n var initials = '';\n var splits = displayName.split(' ');\n if (splits.length === 2) {\n initials += splits[0].charAt(0).toUpperCase();\n initials += splits[1].charAt(0).toUpperCase();\n }\n else if (splits.length === 3) {\n initials += splits[0].charAt(0).toUpperCase();\n initials += splits[2].charAt(0).toUpperCase();\n }\n else if (splits.length !== 0) {\n initials += splits[0].charAt(0).toUpperCase();\n }\n if (isRtl && initials.length > 1) {\n return initials.charAt(1) + initials.charAt(0);\n }\n return initials;\n}\nfunction cleanupDisplayName(displayName) {\n displayName = displayName.replace(UNWANTED_ENCLOSURES_REGEX, '');\n displayName = displayName.replace(UNWANTED_CHARS_REGEX, '');\n displayName = displayName.replace(MULTIPLE_WHITESPACES_REGEX, ' ');\n displayName = displayName.trim();\n return displayName;\n}\n/**\n * Get (up to 2 characters) initials based on display name of the persona.\n *\n * @public\n */\nexport function getInitials(displayName, isRtl, allowPhoneInitials) {\n if (!displayName) {\n return '';\n }\n displayName = cleanupDisplayName(displayName);\n // For names containing CJK characters, and phone numbers, we don't display initials\n if (UNSUPPORTED_TEXT_REGEX.test(displayName) || (!allowPhoneInitials && PHONENUMBER_REGEX.test(displayName))) {\n return '';\n }\n return getInitialsLatin(displayName, isRtl);\n}\n//# sourceMappingURL=initials.js.map","export var CommunicationColors;\n(function (CommunicationColors) {\n CommunicationColors.shade30 = '#004578';\n CommunicationColors.shade20 = '#005a9e';\n CommunicationColors.shade10 = '#106ebe';\n CommunicationColors.primary = '#0078d4';\n CommunicationColors.tint10 = '#2b88d8';\n CommunicationColors.tint20 = '#c7e0f4';\n CommunicationColors.tint30 = '#deecf9';\n CommunicationColors.tint40 = '#eff6fc';\n})(CommunicationColors || (CommunicationColors = {}));\nexport var NeutralColors;\n(function (NeutralColors) {\n NeutralColors.black = '#000000';\n NeutralColors.gray220 = '#11100f';\n NeutralColors.gray210 = '#161514';\n NeutralColors.gray200 = '#1b1a19';\n NeutralColors.gray190 = '#201f1e';\n NeutralColors.gray180 = '#252423';\n NeutralColors.gray170 = '#292827';\n NeutralColors.gray160 = '#323130';\n NeutralColors.gray150 = '#3b3a39';\n NeutralColors.gray140 = '#484644';\n NeutralColors.gray130 = '#605e5c';\n NeutralColors.gray120 = '#797775';\n NeutralColors.gray110 = '#8a8886';\n NeutralColors.gray100 = '#979593';\n NeutralColors.gray90 = '#a19f9d';\n NeutralColors.gray80 = '#b3b0ad';\n NeutralColors.gray70 = '#bebbb8';\n NeutralColors.gray60 = '#c8c6c4';\n NeutralColors.gray50 = '#d2d0ce';\n NeutralColors.gray40 = '#e1dfdd';\n NeutralColors.gray30 = '#edebe9';\n NeutralColors.gray20 = '#f3f2f1';\n NeutralColors.gray10 = '#faf9f8';\n NeutralColors.white = '#ffffff';\n})(NeutralColors || (NeutralColors = {}));\nexport var SharedColors;\n(function (SharedColors) {\n SharedColors.pinkRed10 = '#750b1c';\n SharedColors.red20 = '#a4262c';\n SharedColors.red10 = '#d13438';\n SharedColors.redOrange20 = '#603d30';\n SharedColors.redOrange10 = '#da3b01';\n SharedColors.orange30 = '#8e562e';\n SharedColors.orange20 = '#ca5010';\n SharedColors.orange10 = '#ffaa44';\n SharedColors.yellow10 = '#fce100';\n SharedColors.orangeYellow20 = '#986f0b';\n SharedColors.orangeYellow10 = '#c19c00';\n SharedColors.yellowGreen10 = '#8cbd18';\n SharedColors.green20 = '#0b6a0b';\n SharedColors.green10 = '#498205';\n SharedColors.greenCyan10 = '#00ad56';\n SharedColors.cyan40 = '#005e50';\n SharedColors.cyan30 = '#005b70';\n SharedColors.cyan20 = '#038387';\n SharedColors.cyan10 = '#00b7c3';\n SharedColors.cyanBlue20 = '#004e8c';\n SharedColors.cyanBlue10 = '#0078d4';\n SharedColors.blue10 = '#4f6bed';\n SharedColors.blueMagenta40 = '#373277';\n SharedColors.blueMagenta30 = '#5c2e91';\n SharedColors.blueMagenta20 = '#8764b8';\n SharedColors.blueMagenta10 = '#8378de';\n SharedColors.magenta20 = '#881798';\n SharedColors.magenta10 = '#c239b3';\n SharedColors.magentaPink20 = '#9b0062';\n SharedColors.magentaPink10 = '#e3008c';\n SharedColors.gray40 = '#393939';\n SharedColors.gray30 = '#7a7574';\n SharedColors.gray20 = '#69797e';\n SharedColors.gray10 = '#a0aeb2';\n})(SharedColors || (SharedColors = {}));\n//# sourceMappingURL=FluentColors.js.map","export var Depths;\n(function (Depths) {\n Depths.depth0 = '0 0 0 0 transparent';\n Depths.depth4 = '0 1.6px 3.6px 0 rgba(0, 0, 0, 0.132), 0 0.3px 0.9px 0 rgba(0, 0, 0, 0.108)';\n Depths.depth8 = '0 3.2px 7.2px 0 rgba(0, 0, 0, 0.132), 0 0.6px 1.8px 0 rgba(0, 0, 0, 0.108)';\n Depths.depth16 = '0 6.4px 14.4px 0 rgba(0, 0, 0, 0.132), 0 1.2px 3.6px 0 rgba(0, 0, 0, 0.108)';\n Depths.depth64 = '0 25.6px 57.6px 0 rgba(0, 0, 0, 0.22), 0 4.8px 14.4px 0 rgba(0, 0, 0, 0.18)';\n})(Depths || (Depths = {}));\n//# sourceMappingURL=FluentDepths.js.map","/*\n * 1DS JS SDK Core, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Enums.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n* File containing the enums as constants.\r\n*/\r\nimport { createEnumStyle } from \"@microsoft/applicationinsights-core-js\";\r\n/**\r\n * The ValueKind contains a set of values that specify value kind of the property.\r\n * Either PII (Personal Identifiable Information) or customer content.\r\n */\r\nexport var ValueKind = createEnumStyle({\r\n NotSet: 0 /* eValueKind.NotSet */,\r\n Pii_DistinguishedName: 1 /* eValueKind.Pii_DistinguishedName */,\r\n Pii_GenericData: 2 /* eValueKind.Pii_GenericData */,\r\n Pii_IPV4Address: 3 /* eValueKind.Pii_IPV4Address */,\r\n Pii_IPv6Address: 4 /* eValueKind.Pii_IPv6Address */,\r\n Pii_MailSubject: 5 /* eValueKind.Pii_MailSubject */,\r\n Pii_PhoneNumber: 6 /* eValueKind.Pii_PhoneNumber */,\r\n Pii_QueryString: 7 /* eValueKind.Pii_QueryString */,\r\n Pii_SipAddress: 8 /* eValueKind.Pii_SipAddress */,\r\n Pii_SmtpAddress: 9 /* eValueKind.Pii_SmtpAddress */,\r\n Pii_Identity: 10 /* eValueKind.Pii_Identity */,\r\n Pii_Uri: 11 /* eValueKind.Pii_Uri */,\r\n Pii_Fqdn: 12 /* eValueKind.Pii_Fqdn */,\r\n Pii_IPV4AddressLegacy: 13 /* eValueKind.Pii_IPV4AddressLegacy */,\r\n Pii_IPv6ScrubLastHextets: 14 /* eValueKind.Pii_IPv6ScrubLastHextets */,\r\n Pii_DropValue: 15 /* eValueKind.Pii_DropValue */,\r\n CustomerContent_GenericContent: 32 /* eValueKind.CustomerContent_GenericContent */\r\n});\r\n/**\r\n * The EventLatency contains a set of values that specify the latency with which an event is sent.\r\n */\r\nexport var EventLatency = createEnumStyle({\r\n /**\r\n * Normal latency.\r\n */\r\n Normal: 1 /* EventLatencyValue.Normal */,\r\n /**\r\n * Cost deferred latency. At the moment this latency is treated as Normal latency.\r\n */\r\n CostDeferred: 2 /* EventLatencyValue.CostDeferred */,\r\n /**\r\n * Real time latency.\r\n */\r\n RealTime: 3 /* EventLatencyValue.RealTime */,\r\n /**\r\n * Bypass normal batching/timing and send as soon as possible, this will still send asynchronously.\r\n * Added in v3.1.1\r\n */\r\n Immediate: 4 /* EventLatencyValue.Immediate */\r\n});\r\n/**\r\n * Enum for property types.\r\n */\r\nexport var EventPropertyType = createEnumStyle({\r\n Unspecified: 0 /* eEventPropertyType.Unspecified */,\r\n String: 1 /* eEventPropertyType.String */,\r\n Int32: 2 /* eEventPropertyType.Int32 */,\r\n UInt32: 3 /* eEventPropertyType.UInt32 */,\r\n Int64: 4 /* eEventPropertyType.Int64 */,\r\n UInt64: 5 /* eEventPropertyType.UInt64 */,\r\n Double: 6 /* eEventPropertyType.Double */,\r\n Bool: 7 /* eEventPropertyType.Bool */,\r\n Guid: 8 /* eEventPropertyType.Guid */,\r\n DateTime: 9 /* eEventPropertyType.DateTime */\r\n});\r\n/**\r\n * The EventPersistence contains a set of values that specify the event's persistence.\r\n */\r\nexport var EventPersistence = createEnumStyle({\r\n /**\r\n * Normal persistence.\r\n */\r\n Normal: 1 /* EventPersistenceValue.Normal */,\r\n /**\r\n * Critical persistence.\r\n */\r\n Critical: 2 /* EventPersistenceValue.Critical */\r\n});\r\nexport var TraceLevel = createEnumStyle({\r\n NONE: 0 /* eTraceLevel.NONE */,\r\n ERROR: 1 /* eTraceLevel.ERROR */,\r\n WARNING: 2 /* eTraceLevel.WARNING */,\r\n INFORMATION: 3 /* eTraceLevel.INFORMATION */\r\n});\r\n//# sourceMappingURL=Enums.js.map","/*\n * 1DS JS SDK Core, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\nimport { __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\n/**\r\n* AppInsightsCore.ts\r\n* @author Abhilash Panwar (abpanwar) Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2018\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AppInsightsCore as InternalCore, _throwInternal, createDynamicConfig, doPerf, dumpObj, throwError } from \"@microsoft/applicationinsights-core-js\";\r\nimport { objDeepFreeze } from \"@nevware21/ts-utils\";\r\nimport { STR_DEFAULT_ENDPOINT_URL, STR_EMPTY, STR_PROPERTIES, STR_VERSION } from \"./InternalConstants\";\r\nimport { FullVersionString, getTime, isLatency } from \"./Utils\";\r\nimport { _DYN_INDEX_OF, _DYN_INITIALIZE, _DYN_LOGGER, _DYN_POLL_INTERNAL_LOGS, _DYN_TIMINGS } from \"./__DynamicConstants\";\r\n/**\r\n * The default settings for the config.\r\n * WE MUST include all defaults here to ensure that the config is created with all of the properties\r\n * defined as dynamic.\r\n */\r\nvar defaultConfig = objDeepFreeze({\r\n endpointUrl: STR_DEFAULT_ENDPOINT_URL,\r\n propertyStorageOverride: { isVal: _chkPropOverride }\r\n});\r\nfunction _chkPropOverride(propertyStorageOverride) {\r\n // Validate property storage override\r\n if (propertyStorageOverride && (!propertyStorageOverride.getProperty || !propertyStorageOverride.setProperty)) {\r\n throwError(\"Invalid property storage override passed.\");\r\n }\r\n return true;\r\n}\r\n/**\r\n * @group Classes\r\n * @group Entrypoint\r\n */\r\nvar AppInsightsCore = /** @class */ (function (_super) {\r\n __extends(AppInsightsCore, _super);\r\n function AppInsightsCore() {\r\n var _this = _super.call(this) || this;\r\n dynamicProto(AppInsightsCore, _this, function (_self, _base) {\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (config, extensions, logger, notificationManager) {\r\n doPerf(_self, function () { return \"AppInsightsCore.initialize\"; }, function () {\r\n try {\r\n _base[_DYN_INITIALIZE /* @min:%2einitialize */](createDynamicConfig(config, defaultConfig, logger || _self[_DYN_LOGGER /* @min:%2elogger */], false).cfg, extensions, logger, notificationManager);\r\n }\r\n catch (e) {\r\n var logger_1 = _self[_DYN_LOGGER /* @min:%2elogger */];\r\n var message = dumpObj(e);\r\n if (message[_DYN_INDEX_OF /* @min:%2eindexOf */](\"channels\") !== -1) {\r\n // Add some additional context to the underlying reported error\r\n message += \"\\n - Channels must be provided through config.channels only!\";\r\n }\r\n _throwInternal(logger_1, 1 /* eLoggingSeverity.CRITICAL */, 514 /* _eExtendedInternalMessageId.FailedToInitializeSDK */, \"SDK Initialization Failed - no telemetry will be sent: \" + message);\r\n }\r\n }, function () { return ({ config: config, extensions: extensions, logger: logger, notificationManager: notificationManager }); });\r\n };\r\n _self.track = function (item) {\r\n doPerf(_self, function () { return \"AppInsightsCore.track\"; }, function () {\r\n var telemetryItem = item;\r\n if (telemetryItem) {\r\n telemetryItem[_DYN_TIMINGS /* @min:%2etimings */] = telemetryItem[_DYN_TIMINGS /* @min:%2etimings */] || {};\r\n telemetryItem[_DYN_TIMINGS /* @min:%2etimings */].trackStart = getTime();\r\n if (!isLatency(telemetryItem.latency)) {\r\n telemetryItem.latency = 1 /* EventLatencyValue.Normal */;\r\n }\r\n var itemExt = telemetryItem.ext = telemetryItem.ext || {};\r\n itemExt.sdk = itemExt.sdk || {};\r\n itemExt.sdk.ver = FullVersionString;\r\n var baseData = telemetryItem.baseData = telemetryItem.baseData || {};\r\n baseData[STR_PROPERTIES /* @min:%2eproperties */] = baseData[STR_PROPERTIES /* @min:%2eproperties */] || {};\r\n var itemProperties = baseData[STR_PROPERTIES /* @min:%2eproperties */];\r\n itemProperties[STR_VERSION] = itemProperties[STR_VERSION] || _self.pluginVersionString || STR_EMPTY;\r\n }\r\n _base.track(telemetryItem);\r\n }, function () { return ({ item: item }); }, !(item.sync));\r\n };\r\n _self[_DYN_POLL_INTERNAL_LOGS /* @min:%2epollInternalLogs */] = function (eventName) {\r\n return _base[_DYN_POLL_INTERNAL_LOGS /* @min:%2epollInternalLogs */](eventName || \"InternalLog\");\r\n };\r\n });\r\n return _this;\r\n }\r\n// Removed Stub for AppInsightsCore.prototype.initialize.\r\n// Removed Stub for AppInsightsCore.prototype.track.\r\n// Removed Stub for AppInsightsCore.prototype.pollInternalLogs.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n AppInsightsCore.__ieDyn=1;\n\n return AppInsightsCore;\r\n}(InternalCore));\r\nexport { AppInsightsCore };\r\n//# sourceMappingURL=AppInsightsCore.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n * Real Time profile (default profile). RealTime Latency events are sent every 1 sec and\r\n * Normal Latency events are sent every 2 sec.\r\n */\r\nexport var RT_PROFILE = \"REAL_TIME\";\r\n/**\r\n * Near Real Time profile. RealTime Latency events are sent every 3 sec and\r\n * Normal Latency events are sent every 6 sec.\r\n */\r\nexport var NRT_PROFILE = \"NEAR_REAL_TIME\";\r\n/**\r\n * Best Effort. RealTime Latency events are sent every 9 sec and\r\n * Normal Latency events are sent every 18 sec.\r\n */\r\nexport var BE_PROFILE = \"BEST_EFFORT\";\r\n//# sourceMappingURL=DataModels.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n\r\n// Licensed under the MIT License.\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nexport var STR_EMPTY = \"\";\r\nexport var STR_POST_METHOD = \"POST\";\r\nexport var STR_DISABLED_PROPERTY_NAME = \"Microsoft_ApplicationInsights_BypassAjaxInstrumentation\";\r\nexport var STR_DROPPED = \"drop\";\r\nexport var STR_SENDING = \"send\";\r\nexport var STR_REQUEUE = \"requeue\";\r\nexport var STR_RESPONSE_FAIL = \"rspFail\";\r\nexport var STR_OTHER = \"oth\";\r\nexport var DEFAULT_CACHE_CONTROL = \"no-cache, no-store\";\r\nexport var DEFAULT_CONTENT_TYPE = \"application/x-json-stream\";\r\nexport var STR_CACHE_CONTROL = \"cache-control\";\r\nexport var STR_CONTENT_TYPE_HEADER = \"content-type\";\r\nexport var STR_KILL_TOKENS_HEADER = \"kill-tokens\";\r\nexport var STR_KILL_DURATION_HEADER = \"kill-duration\";\r\nexport var STR_KILL_DURATION_SECONDS_HEADER = \"kill-duration-seconds\";\r\nexport var STR_TIME_DELTA_HEADER = \"time-delta-millis\";\r\nexport var STR_CLIENT_VERSION = \"client-version\";\r\nexport var STR_CLIENT_ID = \"client-id\";\r\nexport var STR_TIME_DELTA_TO_APPLY = \"time-delta-to-apply-millis\";\r\nexport var STR_UPLOAD_TIME = \"upload-time\";\r\nexport var STR_API_KEY = \"apikey\";\r\nexport var STR_MSA_DEVICE_TICKET = \"AuthMsaDeviceTicket\";\r\nexport var STR_AUTH_WEB_TOKEN = \"WebAuthToken\";\r\nexport var STR_AUTH_XTOKEN = \"AuthXToken\";\r\nexport var STR_SDK_VERSION = \"sdk-version\";\r\nexport var STR_NO_RESPONSE_BODY = \"NoResponseBody\";\r\nexport var STR_MSFPC = \"msfpc\";\r\nexport var STR_TRACE = \"trace\";\r\nexport var STR_USER = \"user\";\r\n//# sourceMappingURL=InternalConstants.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n\r\n// Licensed under the MIT License.\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 ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_ALLOW_REQUEST_SENDIN0 = \"allowRequestSending\"; // Count: 3\r\nexport var _DYN_FIRST_REQUEST_SENT = \"firstRequestSent\"; // Count: 2\r\nexport var _DYN_SHOULD_ADD_CLOCK_SKE1 = \"shouldAddClockSkewHeaders\"; // Count: 2\r\nexport var _DYN_GET_CLOCK_SKEW_HEADE2 = \"getClockSkewHeaderValue\"; // Count: 2\r\nexport var _DYN_SET_CLOCK_SKEW = \"setClockSkew\"; // Count: 3\r\nexport var _DYN_LENGTH = \"length\"; // Count: 38\r\nexport var _DYN_CONCAT = \"concat\"; // Count: 7\r\nexport var _DYN_I_KEY = \"iKey\"; // Count: 11\r\nexport var _DYN_COUNT = \"count\"; // Count: 19\r\nexport var _DYN_EVENTS = \"events\"; // Count: 8\r\nexport var _DYN_PUSH = \"push\"; // Count: 15\r\nexport var _DYN_SPLIT = \"split\"; // Count: 6\r\nexport var _DYN_SPLICE = \"splice\"; // Count: 4\r\nexport var _DYN_TO_LOWER_CASE = \"toLowerCase\"; // Count: 3\r\nexport var _DYN_HDRS = \"hdrs\"; // Count: 7\r\nexport var _DYN_USE_HDRS = \"useHdrs\"; // Count: 5\r\nexport var _DYN_INITIALIZE = \"initialize\"; // Count: 5\r\nexport var _DYN_SET_TIMEOUT_OVERRIDE = \"setTimeoutOverride\"; // Count: 3\r\nexport var _DYN_CLEAR_TIMEOUT_OVERRI3 = \"clearTimeoutOverride\"; // Count: 3\r\nexport var _DYN_PAYLOAD_PREPROCESSOR = \"payloadPreprocessor\"; // Count: 2\r\nexport var _DYN_OVERRIDE_ENDPOINT_UR4 = \"overrideEndpointUrl\"; // Count: 3\r\nexport var _DYN_AVOID_OPTIONS = \"avoidOptions\"; // Count: 3\r\nexport var _DYN_DISABLE_EVENT_TIMING5 = \"disableEventTimings\"; // Count: 2\r\nexport var _DYN_STRINGIFY_OBJECTS = \"stringifyObjects\"; // Count: 2\r\nexport var _DYN_ENABLE_COMPOUND_KEY = \"enableCompoundKey\"; // Count: 4\r\nexport var _DYN_DISABLE_XHR_SYNC = \"disableXhrSync\"; // Count: 6\r\nexport var _DYN_DISABLE_FETCH_KEEP_A6 = \"disableFetchKeepAlive\"; // Count: 7\r\nexport var _DYN_ADD_NO_RESPONSE = \"addNoResponse\"; // Count: 3\r\nexport var _DYN_EXCLUDE_CS_META_DATA = \"excludeCsMetaData\"; // Count: 2\r\nexport var _DYN_USE_SEND_BEACON = \"useSendBeacon\"; // Count: 3\r\nexport var _DYN_ALWAYS_USE_XHR_OVERR7 = \"alwaysUseXhrOverride\"; // Count: 3\r\nexport var _DYN_UNLOAD_TRANSPORTS = \"unloadTransports\"; // Count: 2\r\nexport var _DYN_SERIALIZE_OFFLINE_EV8 = \"serializeOfflineEvt\"; // Count: 2\r\nexport var _DYN_GET_OFFLINE_REQUEST_9 = \"getOfflineRequestDetails\"; // Count: 2\r\nexport var _DYN_CREATE_PAYLOAD = \"createPayload\"; // Count: 4\r\nexport var _DYN_CREATE_ONE_DSPAYLOAD = \"createOneDSPayload\"; // Count: 4\r\nexport var _DYN_PAYLOAD_BLOB = \"payloadBlob\"; // Count: 3\r\nexport var _DYN_HEADERS = \"headers\"; // Count: 12\r\nexport var _DYN__THE_PAYLOAD = \"_thePayload\"; // Count: 6\r\nexport var _DYN_URL_STRING = \"urlString\"; // Count: 5\r\nexport var _DYN_BATCHES = \"batches\"; // Count: 15\r\nexport var _DYN_SEND_TYPE = \"sendType\"; // Count: 13\r\nexport var _DYN_ADD_HEADER = \"addHeader\"; // Count: 3\r\nexport var _DYN_CAN_SEND_REQUEST = \"canSendRequest\"; // Count: 3\r\nexport var _DYN_SEND_QUEUED_REQUESTS = \"sendQueuedRequests\"; // Count: 5\r\nexport var _DYN_IS_COMPLETELY_IDLE = \"isCompletelyIdle\"; // Count: 2\r\nexport var _DYN_SET_UNLOADING = \"setUnloading\"; // Count: 3\r\nexport var _DYN_IS_TENANT_KILLED = \"isTenantKilled\"; // Count: 3\r\nexport var _DYN_SEND_SYNCHRONOUS_BAT10 = \"sendSynchronousBatch\"; // Count: 2\r\nexport var _DYN__TRANSPORT = \"_transport\"; // Count: 3\r\nexport var _DYN_GET_WPARAM = \"getWParam\"; // Count: 4\r\nexport var _DYN_IS_BEACON = \"isBeacon\"; // Count: 4\r\nexport var _DYN_TIMINGS = \"timings\"; // Count: 4\r\nexport var _DYN_IS_TEARDOWN = \"isTeardown\"; // Count: 3\r\nexport var _DYN_IS_SYNC = \"isSync\"; // Count: 4\r\nexport var _DYN_DATA = \"data\"; // Count: 7\r\nexport var _DYN_TIMEOUT = \"timeout\"; // Count: 4\r\nexport var _DYN__SEND_REASON = \"_sendReason\"; // Count: 4\r\nexport var _DYN_SET_KILL_SWITCH_TENA11 = \"setKillSwitchTenants\"; // Count: 2\r\nexport var _DYN__BACK_OFF_TRANSMISSI12 = \"_backOffTransmission\"; // Count: 2\r\nexport var _DYN_IDENTIFIER = \"identifier\"; // Count: 4\r\nexport var _DYN_DISABLE_OPTIMIZE_OBJ = \"disableOptimizeObj\"; // Count: 2\r\nexport var _DYN_IGNORE_MC1_MS0_COOKI13 = \"ignoreMc1Ms0CookieProcessing\"; // Count: 2\r\nexport var _DYN_EVENTS_LIMIT_IN_MEM = \"eventsLimitInMem\"; // Count: 2\r\nexport var _DYN_AUTO_FLUSH_EVENTS_LI14 = \"autoFlushEventsLimit\"; // Count: 2\r\nexport var _DYN_DISABLE_AUTO_BATCH_F15 = \"disableAutoBatchFlushLimit\"; // Count: 2\r\nexport var _DYN_OVERRIDE_INSTRUMENTA16 = \"overrideInstrumentationKey\"; // Count: 2\r\nexport var _DYN_DISABLE_TELEMETRY = \"disableTelemetry\"; // Count: 2\r\nexport var _DYN_BASE_DATA = \"baseData\"; // Count: 3\r\nexport var _DYN_SEND_ATTEMPT = \"sendAttempt\"; // Count: 4\r\nexport var _DYN_LATENCY = \"latency\"; // Count: 7\r\nexport var _DYN_SYNC = \"sync\"; // Count: 7\r\n//# sourceMappingURL=__DynamicConstants.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* EventBatch.ts\r\n* @author Nev Wylie (newylie)\r\n* @copyright Microsoft 2020\r\n*/\r\nimport { isNullOrUndefined, isValueAssigned } from \"@microsoft/1ds-core-js\";\r\nimport { STR_EMPTY, STR_MSFPC } from \"./InternalConstants\";\r\nimport { _DYN_CONCAT, _DYN_COUNT, _DYN_EVENTS, _DYN_I_KEY, _DYN_LENGTH, _DYN_PUSH, _DYN_SPLICE, _DYN_SPLIT } from \"./__DynamicConstants\";\r\nfunction _getEventMsfpc(theEvent) {\r\n var intWeb = ((theEvent.ext || {})[\"intweb\"]);\r\n if (intWeb && isValueAssigned(intWeb[STR_MSFPC])) {\r\n return intWeb[STR_MSFPC];\r\n }\r\n return null;\r\n}\r\nfunction _getMsfpc(theEvents) {\r\n var msfpc = null;\r\n for (var lp = 0; msfpc === null && lp < theEvents[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n msfpc = _getEventMsfpc(theEvents[lp]);\r\n }\r\n return msfpc;\r\n}\r\n/**\r\n* This class defines a \"batch\" events related to a specific iKey, it is used by the PostChannel and HttpManager\r\n* to collect and transfer ownership of events without duplicating them in-memory. This reduces the previous\r\n* array duplication and shared ownership issues that occurred due to race conditions caused by the async nature\r\n* of sending requests.\r\n*/\r\nvar EventBatch = /** @class */ (function () {\r\n /**\r\n * Private constructor so that caller is forced to use the static create method.\r\n * @param iKey - The iKey to associate with the events (not validated)\r\n * @param addEvents - The optional collection of events to assign to this batch - defaults to an empty array.\r\n */\r\n function EventBatch(iKey, addEvents) {\r\n var events = addEvents ? [][_DYN_CONCAT /* @min:%2econcat */](addEvents) : [];\r\n var _self = this;\r\n var _msfpc = _getMsfpc(events);\r\n _self[_DYN_I_KEY /* @min:%2eiKey */] = function () {\r\n return iKey;\r\n };\r\n _self.Msfpc = function () {\r\n // return the cached value unless it's undefined -- used to avoid cpu\r\n return _msfpc || STR_EMPTY;\r\n };\r\n _self[_DYN_COUNT /* @min:%2ecount */] = function () {\r\n return events[_DYN_LENGTH /* @min:%2elength */];\r\n };\r\n _self[_DYN_EVENTS /* @min:%2eevents */] = function () {\r\n return events;\r\n };\r\n _self.addEvent = function (theEvent) {\r\n if (theEvent) {\r\n events[_DYN_PUSH /* @min:%2epush */](theEvent);\r\n if (!_msfpc) {\r\n // Not found so try and find one\r\n _msfpc = _getEventMsfpc(theEvent);\r\n }\r\n return true;\r\n }\r\n return false;\r\n };\r\n _self[_DYN_SPLIT /* @min:%2esplit */] = function (fromEvent, numEvents) {\r\n // Create a new batch with the same iKey\r\n var theEvents;\r\n if (fromEvent < events[_DYN_LENGTH /* @min:%2elength */]) {\r\n var cnt = events[_DYN_LENGTH /* @min:%2elength */] - fromEvent;\r\n if (!isNullOrUndefined(numEvents)) {\r\n cnt = numEvents < cnt ? numEvents : cnt;\r\n }\r\n theEvents = events[_DYN_SPLICE /* @min:%2esplice */](fromEvent, cnt);\r\n // reset the fetched msfpc value\r\n _msfpc = _getMsfpc(events);\r\n }\r\n return new EventBatch(iKey, theEvents);\r\n };\r\n }\r\n /**\r\n * Creates a new Event Batch object\r\n * @param iKey The iKey associated with this batch of events\r\n */\r\n EventBatch.create = function (iKey, theEvents) {\r\n return new EventBatch(iKey, theEvents);\r\n };\r\n return EventBatch;\r\n}());\r\nexport { EventBatch };\r\n//# sourceMappingURL=EventBatch.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* ClockSkewManager.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { _DYN_ALLOW_REQUEST_SENDIN0, _DYN_FIRST_REQUEST_SENT, _DYN_GET_CLOCK_SKEW_HEADE2, _DYN_SET_CLOCK_SKEW, _DYN_SHOULD_ADD_CLOCK_SKE1 } from \"./__DynamicConstants\";\r\n/**\r\n* Class to manage clock skew correction.\r\n*/\r\nvar ClockSkewManager = /** @class */ (function () {\r\n function ClockSkewManager() {\r\n var _allowRequestSending = true;\r\n var _shouldAddClockSkewHeaders = true;\r\n var _isFirstRequest = true;\r\n var _clockSkewHeaderValue = \"use-collector-delta\";\r\n var _clockSkewSet = false;\r\n dynamicProto(ClockSkewManager, this, function (_self) {\r\n /**\r\n * Determine if requests can be sent.\r\n * @returns True if requests can be sent, false otherwise.\r\n */\r\n _self[_DYN_ALLOW_REQUEST_SENDIN0 /* @min:%2eallowRequestSending */] = function () {\r\n return _allowRequestSending;\r\n };\r\n /**\r\n * Tells the ClockSkewManager that it should assume that the first request has now been sent,\r\n * If this method had not yet been called AND the clock Skew had not been set this will set\r\n * allowRequestSending to false until setClockSet() is called.\r\n */\r\n _self[_DYN_FIRST_REQUEST_SENT /* @min:%2efirstRequestSent */] = function () {\r\n if (_isFirstRequest) {\r\n _isFirstRequest = false;\r\n if (!_clockSkewSet) {\r\n // Block sending until we get the first clock Skew\r\n _allowRequestSending = false;\r\n }\r\n }\r\n };\r\n /**\r\n * Determine if clock skew headers should be added to the request.\r\n * @returns True if clock skew headers should be added, false otherwise.\r\n */\r\n _self[_DYN_SHOULD_ADD_CLOCK_SKE1 /* @min:%2eshouldAddClockSkewHeaders */] = function () {\r\n return _shouldAddClockSkewHeaders;\r\n };\r\n /**\r\n * Gets the clock skew header value.\r\n * @returns The clock skew header value.\r\n */\r\n _self[_DYN_GET_CLOCK_SKEW_HEADE2 /* @min:%2egetClockSkewHeaderValue */] = function () {\r\n return _clockSkewHeaderValue;\r\n };\r\n /**\r\n * Sets the clock skew header value. Once clock skew is set this method\r\n * is no-op.\r\n * @param timeDeltaInMillis - Time delta to be saved as the clock skew header value.\r\n */\r\n _self[_DYN_SET_CLOCK_SKEW /* @min:%2esetClockSkew */] = function (timeDeltaInMillis) {\r\n if (!_clockSkewSet) {\r\n if (timeDeltaInMillis) {\r\n _clockSkewHeaderValue = timeDeltaInMillis;\r\n _shouldAddClockSkewHeaders = true;\r\n _clockSkewSet = true;\r\n }\r\n else {\r\n _shouldAddClockSkewHeaders = false;\r\n }\r\n // Unblock sending\r\n _allowRequestSending = true;\r\n }\r\n };\r\n });\r\n }\r\n// Removed Stub for ClockSkewManager.prototype.allowRequestSending.\r\n// Removed Stub for ClockSkewManager.prototype.firstRequestSent.\r\n// Removed Stub for ClockSkewManager.prototype.shouldAddClockSkewHeaders.\r\n// Removed Stub for ClockSkewManager.prototype.getClockSkewHeaderValue.\r\n// Removed Stub for ClockSkewManager.prototype.setClockSkew.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n ClockSkewManager.__ieDyn=1;\n\n return ClockSkewManager;\r\n}());\r\nexport { ClockSkewManager };\r\n//# sourceMappingURL=ClockSkewManager.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* KillSwitch.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { arrForEach, dateNow, strTrim } from \"@microsoft/1ds-core-js\";\r\nimport { _DYN_IS_TENANT_KILLED, _DYN_LENGTH, _DYN_PUSH, _DYN_SET_KILL_SWITCH_TENA11, _DYN_SPLIT } from \"./__DynamicConstants\";\r\nvar SecToMsMultiplier = 1000;\r\n/**\r\n* Class to stop certain tenants sending events.\r\n*/\r\nvar KillSwitch = /** @class */ (function () {\r\n function KillSwitch() {\r\n var _killedTokenDictionary = {};\r\n function _normalizeTenants(values) {\r\n var result = [];\r\n if (values) {\r\n arrForEach(values, function (value) {\r\n result[_DYN_PUSH /* @min:%2epush */](strTrim(value));\r\n });\r\n }\r\n return result;\r\n }\r\n dynamicProto(KillSwitch, this, function (_self) {\r\n _self[_DYN_SET_KILL_SWITCH_TENA11 /* @min:%2esetKillSwitchTenants */] = function (killTokens, killDuration) {\r\n if (killTokens && killDuration) {\r\n try {\r\n var killedTokens = _normalizeTenants(killTokens[_DYN_SPLIT /* @min:%2esplit */](\",\"));\r\n if (killDuration === \"this-request-only\") {\r\n return killedTokens;\r\n }\r\n var durationMs = parseInt(killDuration, 10) * SecToMsMultiplier;\r\n for (var i = 0; i < killedTokens[_DYN_LENGTH /* @min:%2elength */]; ++i) {\r\n _killedTokenDictionary[killedTokens[i]] = dateNow() + durationMs;\r\n }\r\n }\r\n catch (ex) {\r\n return [];\r\n }\r\n }\r\n return [];\r\n };\r\n _self[_DYN_IS_TENANT_KILLED /* @min:%2eisTenantKilled */] = function (tenantToken) {\r\n var killDictionary = _killedTokenDictionary;\r\n var name = strTrim(tenantToken);\r\n if (killDictionary[name] !== undefined && killDictionary[name] > dateNow()) {\r\n return true;\r\n }\r\n delete killDictionary[name];\r\n return false;\r\n };\r\n });\r\n }\r\n// Removed Stub for KillSwitch.prototype.setKillSwitchTenants.\r\n// Removed Stub for KillSwitch.prototype.isTenantKilled.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n KillSwitch.__ieDyn=1;\n\n return KillSwitch;\r\n}());\r\nexport { KillSwitch };\r\n//# sourceMappingURL=KillSwitch.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* RetryPolicy.ts\r\n* @author Abhilash Panwar (abpanwar)\r\n* @copyright Microsoft 2018\r\n*/\r\nvar RandomizationLowerThreshold = 0.8;\r\nvar RandomizationUpperThreshold = 1.2;\r\nvar BaseBackoff = 3000;\r\nvar MaxBackoff = 600000;\r\n/**\r\n * Determine if the request should be retried for the given status code.\r\n * The below expression reads that we should only retry for:\r\n * - HttpStatusCodes that are smaller than 300.\r\n * - HttpStatusCodes greater or equal to 500 (except for 501-NotImplement\r\n * and 505-HttpVersionNotSupport).\r\n * - HttpStatusCode 408-RequestTimeout.\r\n * - HttpStatusCode 429.\r\n * This is based on Microsoft.WindowsAzure.Storage.RetryPolicies.ExponentialRetry class\r\n * @param httpStatusCode - The status code returned for the request.\r\n * @returns True if request should be retried, false otherwise.\r\n */\r\nexport function retryPolicyShouldRetryForStatus(httpStatusCode) {\r\n /* tslint:disable:triple-equals */\r\n // Disabling triple-equals rule to avoid httpOverrides from failing because they are returning a string value\r\n return !((httpStatusCode >= 300 && httpStatusCode < 500 && httpStatusCode != 429)\r\n || (httpStatusCode == 501)\r\n || (httpStatusCode == 505));\r\n /* tslint:enable:triple-equals */\r\n}\r\n/**\r\n * Gets the number of milliseconds to back off before retrying the request. The\r\n * back off duration is exponentially scaled based on the number of retries already\r\n * done for the request.\r\n * @param retriesSoFar - The number of times the request has already been retried.\r\n * @returns The back off duration for the request before it can be retried.\r\n */\r\nexport function retryPolicyGetMillisToBackoffForRetry(retriesSoFar) {\r\n var waitDuration = 0;\r\n var minBackoff = BaseBackoff * RandomizationLowerThreshold;\r\n var maxBackoff = BaseBackoff * RandomizationUpperThreshold;\r\n var randomBackoff = Math.floor(Math.random() * (maxBackoff - minBackoff)) + minBackoff;\r\n waitDuration = Math.pow(2, retriesSoFar) * randomBackoff;\r\n return Math.min(waitDuration, MaxBackoff);\r\n}\r\n//# sourceMappingURL=RetryPolicy.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Serializer.ts\r\n* @author Abhilash Panwar (abpanwar); Hector Hernandez (hectorh); Nev Wylie (newylie)\r\n* @copyright Microsoft 2018-2020\r\n*/\r\n// @skip-file-minify\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { arrIndexOf, doPerf, getCommonSchemaMetaData, getTenantId, isArray, isValueAssigned, objForEachKey, sanitizeProperty, strStartsWith } from \"@microsoft/1ds-core-js\";\r\nimport { EventBatch } from \"./EventBatch\";\r\nimport { STR_EMPTY } from \"./InternalConstants\";\r\nimport { strSubstr } from \"@nevware21/ts-utils\";\r\n/**\r\n * Note: This is an optimization for V8-based browsers. When V8 concatenates a string,\r\n * the strings are only joined logically using a \"cons string\" or \"constructed/concatenated\r\n * string\". These containers keep references to one another and can result in very large\r\n * memory usage. For example, if a 2MB string is constructed by concatenating 4 bytes\r\n * together at a time, the memory usage will be ~44MB; so ~22x increase. The strings are\r\n * only joined together when an operation requiring their joining takes place, such as\r\n * substr(). This function is called when adding data to this buffer to ensure these\r\n * types of strings are periodically joined to reduce the memory footprint.\r\n * Setting to every 20 events as the JSON.stringify() may have joined many strings\r\n * and calling this too much causes a minor delay while processing.\r\n */\r\nvar _MAX_STRING_JOINS = 20;\r\nvar RequestSizeLimitBytes = 3984588; // approx 3.8 Mb\r\nvar BeaconRequestSizeLimitBytes = 65000; // approx 64kb (the current Edge, Firefox and Chrome max limit)\r\nvar MaxRecordSize = 2000000; // approx 2 Mb\r\nvar MaxBeaconRecordSize = Math.min(MaxRecordSize, BeaconRequestSizeLimitBytes);\r\nvar metadata = \"metadata\";\r\nvar f = \"f\";\r\nvar rCheckDot = /\\./;\r\n/**\r\n* Class to handle serialization of event and request.\r\n* Currently uses Bond for serialization. Please note that this may be subject to change.\r\n*/\r\nvar Serializer = /** @class */ (function () {\r\n /**\r\n * Constructs a new instance of the Serializer class\r\n * @param perfManager - The performance manager to use for tracking performance\r\n * @param valueSanitizer - The value sanitizer to use for sanitizing field values\r\n * @param stringifyObjects - Should objects be stringified before being sent\r\n * @param enableCompoundKey - Should compound keys be enabled (defaults to false)\r\n * @param getEncodedTypeOverride - The callback to get the encoded type for a property defaults to ({@link getCommonSchemaMetaData }(...))\r\n * @param excludeCsMetaData - (!DANGER!) Should metadata be populated when encoding the event blob (defaults to false) - PII data will NOT be tagged as PII for backend processing\r\n */\r\n function Serializer(perfManager, valueSanitizer, stringifyObjects, enableCompoundKey, getEncodedTypeOverride, excludeCsMetaData) {\r\n var strData = \"data\";\r\n var strBaseData = \"baseData\";\r\n var strExt = \"ext\";\r\n var _checkForCompoundkey = !!enableCompoundKey;\r\n var _processSubKeys = true;\r\n var _theSanitizer = valueSanitizer;\r\n var _isReservedCache = {};\r\n var _excludeCsMetaData = !!excludeCsMetaData;\r\n var _getEncodedType = getEncodedTypeOverride || getCommonSchemaMetaData;\r\n dynamicProto(Serializer, this, function (_self) {\r\n _self.createPayload = function (retryCnt, isTeardown, isSync, isReducedPayload, sendReason, sendType) {\r\n return {\r\n apiKeys: [],\r\n payloadBlob: STR_EMPTY,\r\n overflow: null,\r\n sizeExceed: [],\r\n failedEvts: [],\r\n batches: [],\r\n numEvents: 0,\r\n retryCnt: retryCnt,\r\n isTeardown: isTeardown,\r\n isSync: isSync,\r\n isBeacon: isReducedPayload,\r\n sendType: sendType,\r\n sendReason: sendReason\r\n };\r\n };\r\n _self.appendPayload = function (payload, theBatch, maxEventsPerBatch) {\r\n var canAddEvents = payload && theBatch && !payload.overflow;\r\n if (canAddEvents) {\r\n doPerf(perfManager, function () { return \"Serializer:appendPayload\"; }, function () {\r\n var theEvents = theBatch.events();\r\n var payloadBlob = payload.payloadBlob;\r\n var payloadEvents = payload.numEvents;\r\n var eventsAdded = false;\r\n var sizeExceeded = [];\r\n var failedEvts = [];\r\n var isBeaconPayload = payload.isBeacon;\r\n var requestMaxSize = isBeaconPayload ? BeaconRequestSizeLimitBytes : RequestSizeLimitBytes;\r\n var recordMaxSize = isBeaconPayload ? MaxBeaconRecordSize : MaxRecordSize;\r\n var lp = 0;\r\n var joinCount = 0;\r\n while (lp < theEvents.length) {\r\n var theEvent = theEvents[lp];\r\n if (theEvent) {\r\n if (payloadEvents >= maxEventsPerBatch) {\r\n // Maximum events per payload reached, so don't add any more\r\n payload.overflow = theBatch.split(lp);\r\n break;\r\n }\r\n var eventBlob = _self.getEventBlob(theEvent);\r\n if (eventBlob && eventBlob.length <= recordMaxSize) {\r\n // This event will fit into the payload\r\n var blobLength = eventBlob.length;\r\n var currentSize = payloadBlob.length;\r\n if (currentSize + blobLength > requestMaxSize) {\r\n // Request or batch size exceeded, so don't add any more to the payload\r\n payload.overflow = theBatch.split(lp);\r\n break;\r\n }\r\n if (payloadBlob) {\r\n payloadBlob += \"\\n\";\r\n }\r\n payloadBlob += eventBlob;\r\n joinCount++;\r\n // v8 memory optimization only\r\n if (joinCount > _MAX_STRING_JOINS) {\r\n // this substr() should cause the constructed string to join\r\n strSubstr(payloadBlob, 0, 1);\r\n joinCount = 0;\r\n }\r\n eventsAdded = true;\r\n payloadEvents++;\r\n }\r\n else {\r\n if (eventBlob) {\r\n // Single event size exceeded so remove from the batch\r\n sizeExceeded.push(theEvent);\r\n }\r\n else {\r\n failedEvts.push(theEvent);\r\n }\r\n // We also need to remove this event from the existing array, otherwise a notification will be sent\r\n // indicating that it was successfully sent\r\n theEvents.splice(lp, 1);\r\n lp--;\r\n }\r\n }\r\n lp++;\r\n }\r\n if (sizeExceeded.length > 0) {\r\n payload.sizeExceed.push(EventBatch.create(theBatch.iKey(), sizeExceeded));\r\n // Remove the exceeded events from the batch\r\n }\r\n if (failedEvts.length > 0) {\r\n payload.failedEvts.push(EventBatch.create(theBatch.iKey(), failedEvts));\r\n // Remove the failed events from the batch\r\n }\r\n if (eventsAdded) {\r\n payload.batches.push(theBatch);\r\n payload.payloadBlob = payloadBlob;\r\n payload.numEvents = payloadEvents;\r\n var apiKey = theBatch.iKey();\r\n if (arrIndexOf(payload.apiKeys, apiKey) === -1) {\r\n payload.apiKeys.push(apiKey);\r\n }\r\n }\r\n }, function () { return ({ payload: payload, theBatch: { iKey: theBatch.iKey(), evts: theBatch.events() }, max: maxEventsPerBatch }); });\r\n }\r\n return canAddEvents;\r\n };\r\n _self.getEventBlob = function (eventData) {\r\n try {\r\n return doPerf(perfManager, function () { return \"Serializer.getEventBlob\"; }, function () {\r\n var serializedEvent = {};\r\n // Adding as dynamic keys for v8 performance\r\n serializedEvent.name = eventData.name;\r\n serializedEvent.time = eventData.time;\r\n serializedEvent.ver = eventData.ver;\r\n serializedEvent.iKey = \"o:\" + getTenantId(eventData.iKey);\r\n // Assigning local var so usage in part b/c don't throw if there is no ext\r\n var serializedExt = {};\r\n var _addMetadataCallback;\r\n if (!_excludeCsMetaData) {\r\n _addMetadataCallback = function (pathKeys, key, value) {\r\n _addJSONPropertyMetaData(_getEncodedType, serializedExt, pathKeys, key, value);\r\n };\r\n }\r\n // Part A\r\n var eventExt = eventData[strExt];\r\n if (eventExt) {\r\n // Only assign ext if the event had one (There are tests covering this use case)\r\n serializedEvent[strExt] = serializedExt;\r\n objForEachKey(eventExt, function (key, value) {\r\n var data = serializedExt[key] = {};\r\n // Don't include a metadata callback as we don't currently set metadata Part A fields\r\n _processPathKeys(value, data, \"ext.\" + key, true, null, null, true);\r\n });\r\n }\r\n var serializedData = serializedEvent[strData] = {};\r\n serializedData.baseType = eventData.baseType;\r\n var serializedBaseData = serializedData[strBaseData] = {};\r\n // Part B\r\n _processPathKeys(eventData.baseData, serializedBaseData, strBaseData, false, [strBaseData], _addMetadataCallback, _processSubKeys);\r\n // Part C\r\n _processPathKeys(eventData.data, serializedData, strData, false, [], _addMetadataCallback, _processSubKeys);\r\n return JSON.stringify(serializedEvent);\r\n }, function () { return ({ item: eventData }); });\r\n }\r\n catch (e) {\r\n return null;\r\n }\r\n };\r\n function _isReservedField(path, name) {\r\n var result = _isReservedCache[path];\r\n if (result === undefined) {\r\n if (path.length >= 7) {\r\n // Do not allow the changing of fields located in the ext.metadata or ext.web extension\r\n result = strStartsWith(path, \"ext.metadata\") || strStartsWith(path, \"ext.web\");\r\n }\r\n _isReservedCache[path] = result;\r\n }\r\n return result;\r\n }\r\n function _processPathKeys(srcObj, target, thePath, checkReserved, metadataPathKeys, metadataCallback, processSubKeys) {\r\n objForEachKey(srcObj, function (key, srcValue) {\r\n var prop = null;\r\n if (srcValue || isValueAssigned(srcValue)) {\r\n var path = thePath;\r\n var name_1 = key;\r\n var theMetaPathKeys = metadataPathKeys;\r\n var destObj = target;\r\n // Handle keys with embedded '.', like \"TestObject.testProperty\"\r\n if (_checkForCompoundkey && !checkReserved && rCheckDot.test(key)) {\r\n var subKeys = key.split(\".\");\r\n var keyLen = subKeys.length;\r\n if (keyLen > 1) {\r\n if (theMetaPathKeys) {\r\n // Create a copy of the meta path keys so we can add the extra ones\r\n theMetaPathKeys = theMetaPathKeys.slice();\r\n }\r\n for (var lp = 0; lp < keyLen - 1; lp++) {\r\n var subKey = subKeys[lp];\r\n // Add/reuse the sub key object\r\n destObj = destObj[subKey] = destObj[subKey] || {};\r\n path += \".\" + subKey;\r\n if (theMetaPathKeys) {\r\n theMetaPathKeys.push(subKey);\r\n }\r\n }\r\n name_1 = subKeys[keyLen - 1];\r\n }\r\n }\r\n var isReserved = checkReserved && _isReservedField(path, name_1);\r\n if (!isReserved && _theSanitizer && _theSanitizer.handleField(path, name_1)) {\r\n prop = _theSanitizer.value(path, name_1, srcValue, stringifyObjects);\r\n }\r\n else {\r\n prop = sanitizeProperty(name_1, srcValue, stringifyObjects);\r\n }\r\n if (prop) {\r\n // Set the value\r\n var newValue = prop.value;\r\n destObj[name_1] = newValue;\r\n if (metadataCallback) {\r\n metadataCallback(theMetaPathKeys, name_1, prop);\r\n }\r\n if (processSubKeys && typeof newValue === \"object\" && !isArray(newValue)) {\r\n var newPath = theMetaPathKeys;\r\n if (newPath) {\r\n newPath = newPath.slice();\r\n newPath.push(name_1);\r\n }\r\n // Make sure we process sub objects as well (for value sanitization and metadata)\r\n _processPathKeys(srcValue, newValue, path + \".\" + name_1, checkReserved, newPath, metadataCallback, processSubKeys);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n// Removed Stub for Serializer.prototype.createPayload.\r\n// Removed Stub for Serializer.prototype.appendPayload.\r\n// Removed Stub for Serializer.prototype.getEventBlob.\r\n// Removed Stub for Serializer.prototype.handleField.\r\n// Removed Stub for Serializer.prototype.getSanitizer.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n Serializer.__ieDyn=1;\n\n return Serializer;\r\n}());\r\nexport { Serializer };\r\n/**\r\n * @ignore\r\n * @param getEncodedType - The function to get the encoded type for the property\r\n * @param json - The json object to add the metadata to\r\n * @param propKeys - The property keys to add to the metadata\r\n * @param name - The name of the property\r\n * @param propertyValue - The property value\r\n */\r\nfunction _addJSONPropertyMetaData(getEncodedType, json, propKeys, name, propertyValue) {\r\n if (propertyValue && json) {\r\n var encodedTypeValue = getEncodedType(propertyValue.value, propertyValue.kind, propertyValue.propertyType);\r\n if (encodedTypeValue > -1) {\r\n // Add the root metadata\r\n var metaData = json[metadata];\r\n if (!metaData) {\r\n // Sets the root 'f'\r\n metaData = json[metadata] = { f: {} };\r\n }\r\n var metaTarget = metaData[f];\r\n if (!metaTarget) {\r\n // This can occur if someone has manually added an ext.metadata object\r\n // Such as ext.metadata.privLevel and ext.metadata.privTags\r\n metaTarget = metaData[f] = {};\r\n }\r\n // Traverse the metadata path and build each object (contains an 'f' key) -- if required\r\n if (propKeys) {\r\n for (var lp = 0; lp < propKeys.length; lp++) {\r\n var key = propKeys[lp];\r\n if (!metaTarget[key]) {\r\n metaTarget[key] = { f: {} };\r\n }\r\n var newTarget = metaTarget[key][f];\r\n if (!newTarget) {\r\n // Not expected, but can occur if the metadata context was pre-created as part of the event\r\n newTarget = metaTarget[key][f] = {};\r\n }\r\n metaTarget = newTarget;\r\n }\r\n }\r\n metaTarget = metaTarget[name] = {};\r\n if (isArray(propertyValue.value)) {\r\n metaTarget[\"a\"] = {\r\n t: encodedTypeValue\r\n };\r\n }\r\n else {\r\n metaTarget[\"t\"] = encodedTypeValue;\r\n }\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=Serializer.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\nvar _a;\r\n/**\r\n* HttpManager.ts\r\n* @author Abhilash Panwar (abpanwar); Hector Hernandez (hectorh); Nev Wylie (newylie)\r\n* @copyright Microsoft 2018-2020\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { FullVersionString, SenderPostManager, _getAllResponseHeaders, _throwInternal, _warnToConsole, arrForEach, dateNow, doPerf, dumpObj, extend, getCommonSchemaMetaData, getNavigator, getResponseText, getTime, hasOwnProperty, isBeaconsSupported, isFetchSupported, isNullOrUndefined, isReactNative, isUndefined, isValueAssigned, objForEachKey, objKeys, onConfigChange, optimizeObject, prependTransports, strUndefined } from \"@microsoft/1ds-core-js\";\r\nimport { arrAppend } from \"@nevware21/ts-utils\";\r\nimport { ClockSkewManager } from \"./ClockSkewManager\";\r\nimport { EventBatch } from \"./EventBatch\";\r\nimport { DEFAULT_CACHE_CONTROL, DEFAULT_CONTENT_TYPE, STR_API_KEY, STR_AUTH_XTOKEN, STR_CACHE_CONTROL, STR_CLIENT_ID, STR_CLIENT_VERSION, STR_CONTENT_TYPE_HEADER, STR_DROPPED, STR_EMPTY, STR_KILL_DURATION_HEADER, STR_KILL_TOKENS_HEADER, STR_MSA_DEVICE_TICKET, STR_MSFPC, STR_NO_RESPONSE_BODY, STR_OTHER, STR_REQUEUE, STR_RESPONSE_FAIL, STR_SENDING, STR_TIME_DELTA_HEADER, STR_TIME_DELTA_TO_APPLY, STR_UPLOAD_TIME } from \"./InternalConstants\";\r\nimport { KillSwitch } from \"./KillSwitch\";\r\nimport { retryPolicyGetMillisToBackoffForRetry, retryPolicyShouldRetryForStatus } from \"./RetryPolicy\";\r\nimport { Serializer } from \"./Serializer\";\r\nimport { createTimeoutWrapper } from \"./TimeoutOverrideWrapper\";\r\nimport { _DYN_ADD_HEADER, _DYN_ADD_NO_RESPONSE, _DYN_ALLOW_REQUEST_SENDIN0, _DYN_ALWAYS_USE_XHR_OVERR7, _DYN_AVOID_OPTIONS, _DYN_BATCHES, _DYN_CAN_SEND_REQUEST, _DYN_CLEAR_TIMEOUT_OVERRI3, _DYN_CONCAT, _DYN_COUNT, _DYN_CREATE_ONE_DSPAYLOAD, _DYN_CREATE_PAYLOAD, _DYN_DATA, _DYN_DISABLE_EVENT_TIMING5, _DYN_DISABLE_FETCH_KEEP_A6, _DYN_DISABLE_XHR_SYNC, _DYN_ENABLE_COMPOUND_KEY, _DYN_EVENTS, _DYN_EXCLUDE_CS_META_DATA, _DYN_FIRST_REQUEST_SENT, _DYN_GET_CLOCK_SKEW_HEADE2, _DYN_GET_OFFLINE_REQUEST_9, _DYN_GET_WPARAM, _DYN_HDRS, _DYN_HEADERS, _DYN_INITIALIZE, _DYN_IS_BEACON, _DYN_IS_COMPLETELY_IDLE, _DYN_IS_SYNC, _DYN_IS_TEARDOWN, _DYN_I_KEY, _DYN_LENGTH, _DYN_OVERRIDE_ENDPOINT_UR4, _DYN_PAYLOAD_BLOB, _DYN_PAYLOAD_PREPROCESSOR, _DYN_PUSH, _DYN_SEND_QUEUED_REQUESTS, _DYN_SEND_SYNCHRONOUS_BAT10, _DYN_SEND_TYPE, _DYN_SERIALIZE_OFFLINE_EV8, _DYN_SET_CLOCK_SKEW, _DYN_SET_KILL_SWITCH_TENA11, _DYN_SET_TIMEOUT_OVERRIDE, _DYN_SET_UNLOADING, _DYN_SHOULD_ADD_CLOCK_SKE1, _DYN_SPLICE, _DYN_SPLIT, _DYN_STRINGIFY_OBJECTS, _DYN_TIMEOUT, _DYN_TIMINGS, _DYN_TO_LOWER_CASE, _DYN_UNLOAD_TRANSPORTS, _DYN_URL_STRING, _DYN_USE_HDRS, _DYN_USE_SEND_BEACON, _DYN__BACK_OFF_TRANSMISSI12, _DYN__SEND_REASON, _DYN__THE_PAYLOAD, _DYN__TRANSPORT } from \"./__DynamicConstants\";\r\nvar strSendAttempt = \"sendAttempt\";\r\nvar _noResponseQs = \"&\" + STR_NO_RESPONSE_BODY + \"=true\";\r\nvar UrlQueryString = \"?cors=true&\" + STR_CONTENT_TYPE_HEADER[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() + \"=\" + DEFAULT_CONTENT_TYPE;\r\n/**\r\n * Identifies the default notification reason to the action names\r\n */\r\nvar _eventActionMap = (_a = {},\r\n _a[1 /* EventBatchNotificationReason.Paused */] = STR_REQUEUE,\r\n _a[100 /* EventBatchNotificationReason.RequeueEvents */] = STR_REQUEUE,\r\n _a[200 /* EventBatchNotificationReason.Complete */] = \"sent\",\r\n _a[8004 /* EventBatchNotificationReason.KillSwitch */] = STR_DROPPED,\r\n _a[8003 /* EventBatchNotificationReason.SizeLimitExceeded */] = STR_DROPPED,\r\n _a);\r\nvar _collectorQsHeaders = {};\r\nvar _collectorHeaderToQs = {};\r\nfunction _addCollectorHeaderQsMapping(qsName, headerName, allowQs) {\r\n _collectorQsHeaders[qsName] = headerName;\r\n if (allowQs !== false) {\r\n _collectorHeaderToQs[headerName] = qsName;\r\n }\r\n}\r\n_addCollectorHeaderQsMapping(STR_MSA_DEVICE_TICKET, STR_MSA_DEVICE_TICKET, false);\r\n_addCollectorHeaderQsMapping(STR_CLIENT_VERSION, STR_CLIENT_VERSION);\r\n_addCollectorHeaderQsMapping(STR_CLIENT_ID, \"Client-Id\");\r\n_addCollectorHeaderQsMapping(STR_API_KEY, STR_API_KEY);\r\n_addCollectorHeaderQsMapping(STR_TIME_DELTA_TO_APPLY, STR_TIME_DELTA_TO_APPLY);\r\n_addCollectorHeaderQsMapping(STR_UPLOAD_TIME, STR_UPLOAD_TIME);\r\n_addCollectorHeaderQsMapping(STR_AUTH_XTOKEN, STR_AUTH_XTOKEN);\r\nfunction _hasHeader(headers, header) {\r\n var hasHeader = false;\r\n if (headers && header) {\r\n var keys = objKeys(headers);\r\n if (keys && keys[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var lowerHeader = header[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]();\r\n for (var lp = 0; lp < keys[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n var value = keys[lp];\r\n if (value && hasOwnProperty(header, value) &&\r\n value[_DYN_TO_LOWER_CASE /* @min:%2etoLowerCase */]() === lowerHeader) {\r\n hasHeader = true;\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n return hasHeader;\r\n}\r\nfunction _addRequestDetails(details, name, value, useHeaders) {\r\n if (name && value && value[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n if (useHeaders && _collectorQsHeaders[name]) {\r\n details[_DYN_HDRS /* @min:%2ehdrs */][_collectorQsHeaders[name]] = value;\r\n details[_DYN_USE_HDRS /* @min:%2euseHdrs */] = true;\r\n }\r\n else {\r\n details.url += \"&\" + name + \"=\" + value;\r\n }\r\n }\r\n}\r\nfunction _addQueryStringParameter(qsParams, name, value) {\r\n for (var i = 0; i < qsParams[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (qsParams[i].name === name) {\r\n qsParams[i].value = value;\r\n return;\r\n }\r\n }\r\n qsParams[_DYN_PUSH /* @min:%2epush */]({ name: name, value: value });\r\n}\r\nfunction _removeQueryStringParameter(qsParams, name) {\r\n for (var i = 0; i < qsParams[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n if (qsParams[i].name === name) {\r\n qsParams[_DYN_SPLICE /* @min:%2esplice */](i, 1);\r\n return;\r\n }\r\n }\r\n}\r\n/**\r\n * Class managing the sending of requests.\r\n */\r\nvar HttpManager = /** @class */ (function () {\r\n /**\r\n * @constructor\r\n * @param requestQueue - The queue that contains the requests to be sent.\r\n */\r\n function HttpManager(maxEventsPerBatch, maxConnections, maxRequestRetriesBeforeBackoff, actions) {\r\n // ------------------------------------------------------------------------------------------------------------------------\r\n // Only set \"Default\" values in the _initDefaults() method, unless value are not \"reset\" during unloading\r\n // ------------------------------------------------------------------------------------------------------------------------\r\n var _urlString;\r\n var _killSwitch;\r\n var _paused;\r\n var _clockSkewManager;\r\n var _useBeacons = false;\r\n var _outstandingRequests; // Holds the number of outstanding async requests that have not returned a response yet\r\n var _postManager;\r\n var _logger;\r\n var _sendInterfaces;\r\n var _core;\r\n var _customHttpInterface;\r\n var _queryStringParameters;\r\n var _headers;\r\n var _batchQueue;\r\n var _serializer;\r\n var _enableEventTimings;\r\n var _cookieMgr;\r\n var _isUnloading;\r\n var _useHeaders;\r\n var _xhrTimeout;\r\n var _disableXhrSync;\r\n var _disableFetchKeepAlive;\r\n var _canHaveReducedPayload;\r\n var _addNoResponse;\r\n var _unloadHooks;\r\n var _sendHook;\r\n var _sendListener;\r\n var _responseHandlers;\r\n var _isInitialized;\r\n var _timeoutWrapper;\r\n var _excludeCsMetaData;\r\n var _sendPostMgr;\r\n dynamicProto(HttpManager, this, function (_self) {\r\n _initDefaults();\r\n var _sendCredentials = true;\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (theConfig, core, postChannel) {\r\n if (!_isInitialized) {\r\n _core = core;\r\n _cookieMgr = core.getCookieMgr();\r\n _postManager = postChannel;\r\n _logger = _postManager.diagLog();\r\n arrAppend(_unloadHooks, onConfigChange(theConfig, function (details) {\r\n var _a;\r\n var coreConfig = details.cfg;\r\n var channelConfig = details.cfg.extensionConfig[postChannel.identifier];\r\n _timeoutWrapper = createTimeoutWrapper(channelConfig[_DYN_SET_TIMEOUT_OVERRIDE /* @min:%2esetTimeoutOverride */], channelConfig[_DYN_CLEAR_TIMEOUT_OVERRI3 /* @min:%2eclearTimeoutOverride */]);\r\n if (isValueAssigned(coreConfig.anonCookieName)) {\r\n _addQueryStringParameter(_queryStringParameters, \"anoncknm\", coreConfig.anonCookieName);\r\n }\r\n else {\r\n _removeQueryStringParameter(_queryStringParameters, \"anoncknm\");\r\n }\r\n _sendHook = channelConfig[_DYN_PAYLOAD_PREPROCESSOR /* @min:%2epayloadPreprocessor */];\r\n _sendListener = channelConfig.payloadListener;\r\n var httpInterface = channelConfig.httpXHROverride;\r\n // Override endpointUrl if provided in Post config\r\n var endpointUrl = channelConfig[_DYN_OVERRIDE_ENDPOINT_UR4 /* @min:%2eoverrideEndpointUrl */] ? channelConfig[_DYN_OVERRIDE_ENDPOINT_UR4 /* @min:%2eoverrideEndpointUrl */] : coreConfig.endpointUrl;\r\n _urlString = endpointUrl + UrlQueryString;\r\n _useHeaders = !isUndefined(channelConfig[_DYN_AVOID_OPTIONS /* @min:%2eavoidOptions */]) ? !channelConfig[_DYN_AVOID_OPTIONS /* @min:%2eavoidOptions */] : true;\r\n _enableEventTimings = !channelConfig[_DYN_DISABLE_EVENT_TIMING5 /* @min:%2edisableEventTimings */];\r\n var valueSanitizer = channelConfig.valueSanitizer;\r\n var stringifyObjects = channelConfig[_DYN_STRINGIFY_OBJECTS /* @min:%2estringifyObjects */];\r\n var enableCompoundKey = !!coreConfig[_DYN_ENABLE_COMPOUND_KEY /* @min:%2eenableCompoundKey */];\r\n if (!isUndefined(channelConfig[_DYN_ENABLE_COMPOUND_KEY /* @min:%2eenableCompoundKey */])) {\r\n enableCompoundKey = !!channelConfig[_DYN_ENABLE_COMPOUND_KEY /* @min:%2eenableCompoundKey */];\r\n }\r\n _xhrTimeout = channelConfig.xhrTimeout;\r\n _disableXhrSync = !!channelConfig[_DYN_DISABLE_XHR_SYNC /* @min:%2edisableXhrSync */];\r\n _disableFetchKeepAlive = !!channelConfig[_DYN_DISABLE_FETCH_KEEP_A6 /* @min:%2edisableFetchKeepAlive */];\r\n _addNoResponse = channelConfig[_DYN_ADD_NO_RESPONSE /* @min:%2eaddNoResponse */] !== false;\r\n _excludeCsMetaData = !!channelConfig[_DYN_EXCLUDE_CS_META_DATA /* @min:%2eexcludeCsMetaData */];\r\n if (!!core.getPlugin(\"LocalStorage\")) {\r\n // Always disable fetch keep alive when persisten storage is available\r\n _disableFetchKeepAlive = true;\r\n }\r\n _useBeacons = !isReactNative(); // Only use beacons if not running in React Native\r\n _serializer = new Serializer(_core, valueSanitizer, stringifyObjects, enableCompoundKey, getCommonSchemaMetaData, _excludeCsMetaData);\r\n if (!isNullOrUndefined(channelConfig[_DYN_USE_SEND_BEACON /* @min:%2euseSendBeacon */])) {\r\n _useBeacons = !!channelConfig[_DYN_USE_SEND_BEACON /* @min:%2euseSendBeacon */];\r\n }\r\n var sendPostConfig = _getSendPostMgrConfig();\r\n // only init it once\r\n if (!_sendPostMgr) {\r\n _sendPostMgr = new SenderPostManager();\r\n _sendPostMgr[_DYN_INITIALIZE /* @min:%2einitialize */](sendPostConfig, _logger);\r\n }\r\n else {\r\n _sendPostMgr.SetConfig(sendPostConfig);\r\n }\r\n var syncHttpInterface = httpInterface;\r\n var beaconHttpInterface = channelConfig[_DYN_ALWAYS_USE_XHR_OVERR7 /* @min:%2ealwaysUseXhrOverride */] ? httpInterface : null;\r\n var fetchSyncHttpInterface = channelConfig[_DYN_ALWAYS_USE_XHR_OVERR7 /* @min:%2ealwaysUseXhrOverride */] ? httpInterface : null;\r\n var beaconUnloadTransports = [3 /* TransportType.Beacon */, 2 /* TransportType.Fetch */];\r\n if (!httpInterface) {\r\n _customHttpInterface = false;\r\n // this is handled in SendPostManager now\r\n // let location = getLocation();\r\n // if (location && location.protocol && location.protocol.toLowerCase() === \"file:\") {\r\n // // Special case where a local html file fails with a CORS error on Chromium browsers\r\n // _sendCredentials = false;\r\n // }\r\n var theTransports = [];\r\n if (isReactNative()) {\r\n // Use Fetch or XDR/XHR\r\n theTransports = [2 /* TransportType.Fetch */, 1 /* TransportType.Xhr */];\r\n beaconUnloadTransports = [2 /* TransportType.Fetch */, 1 /* TransportType.Xhr */, 3 /* TransportType.Beacon */];\r\n }\r\n else {\r\n // Use XDR/XHR, Fetch or beacons\r\n theTransports = [1 /* TransportType.Xhr */, 2 /* TransportType.Fetch */, 3 /* TransportType.Beacon */];\r\n }\r\n // Prefix any user requested transport(s) values\r\n theTransports = prependTransports(theTransports, channelConfig.transports);\r\n httpInterface = _getSenderInterface(theTransports, false);\r\n if (!httpInterface) {\r\n _warnToConsole(_logger, \"No available transport to send events\");\r\n }\r\n syncHttpInterface = _getSenderInterface(theTransports, true);\r\n }\r\n if (!beaconHttpInterface) {\r\n // Allow overriding the usage of sendBeacon\r\n beaconUnloadTransports = prependTransports(beaconUnloadTransports, channelConfig[_DYN_UNLOAD_TRANSPORTS /* @min:%2eunloadTransports */]);\r\n beaconHttpInterface = _getSenderInterface(beaconUnloadTransports, true);\r\n }\r\n _canHaveReducedPayload = !_customHttpInterface && ((_useBeacons && isBeaconsSupported()) || (!_disableFetchKeepAlive && isFetchSupported(true)));\r\n _sendInterfaces = (_a = {},\r\n _a[0 /* EventSendType.Batched */] = httpInterface,\r\n _a[1 /* EventSendType.Synchronous */] = syncHttpInterface || _getSenderInterface([1 /* TransportType.Xhr */, 2 /* TransportType.Fetch */, 3 /* TransportType.Beacon */], true),\r\n _a[2 /* EventSendType.SendBeacon */] = beaconHttpInterface || syncHttpInterface || _getSenderInterface([1 /* TransportType.Xhr */], true),\r\n _a[3 /* EventSendType.SyncFetch */] = fetchSyncHttpInterface || _getSenderInterface([2 /* TransportType.Fetch */, 3 /* TransportType.Beacon */], true) || syncHttpInterface || _getSenderInterface([1 /* TransportType.Xhr */], true),\r\n _a);\r\n }));\r\n _isInitialized = true;\r\n }\r\n };\r\n _self.addResponseHandler = function (responseHandler) {\r\n _responseHandlers[_DYN_PUSH /* @min:%2epush */](responseHandler);\r\n return {\r\n rm: function () {\r\n var index = _responseHandlers.indexOf(responseHandler);\r\n if (index >= 0) {\r\n _responseHandlers[_DYN_SPLICE /* @min:%2esplice */](index, 1);\r\n }\r\n }\r\n };\r\n };\r\n _self[_DYN_SERIALIZE_OFFLINE_EV8 /* @min:%2eserializeOfflineEvt */] = function (evt) {\r\n try {\r\n if (_serializer) {\r\n return _serializer.getEventBlob(evt);\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return STR_EMPTY;\r\n };\r\n _self[_DYN_GET_OFFLINE_REQUEST_9 /* @min:%2egetOfflineRequestDetails */] = function () {\r\n try {\r\n // get current url without paramter\r\n var payload = _serializer && _serializer[_DYN_CREATE_PAYLOAD /* @min:%2ecreatePayload */](0, false, false, false, 1 /* SendRequestReason.NormalSchedule */, 0 /* EventSendType.Batched */);\r\n return _buildRequestDetails(payload, _useHeaders);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n };\r\n _self[_DYN_CREATE_ONE_DSPAYLOAD /* @min:%2ecreateOneDSPayload */] = function (evts, optimize) {\r\n try {\r\n // TODO: optimize\r\n var theBatches_1 = [];\r\n // create a eventBatch for each event\r\n arrForEach(evts, function (evt) {\r\n if (optimize) {\r\n evt = optimizeObject(evt);\r\n }\r\n var batch = EventBatch.create(evt[_DYN_I_KEY /* @min:%2eiKey */], [evt]);\r\n theBatches_1[_DYN_PUSH /* @min:%2epush */](batch);\r\n });\r\n var thePayload = null;\r\n while (theBatches_1[_DYN_LENGTH /* @min:%2elength */] > 0 && _serializer) {\r\n var theBatch = theBatches_1.shift();\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n thePayload = thePayload || _serializer[_DYN_CREATE_PAYLOAD /* @min:%2ecreatePayload */](0, false, false, false, 1 /* SendRequestReason.NormalSchedule */, 0 /* EventSendType.Batched */);\r\n _serializer.appendPayload(thePayload, theBatch, maxEventsPerBatch);\r\n }\r\n }\r\n var requestDetails = _buildRequestDetails(thePayload, _useHeaders);\r\n var payloadData = {\r\n data: thePayload[_DYN_PAYLOAD_BLOB /* @min:%2epayloadBlob */],\r\n urlString: requestDetails.url,\r\n headers: requestDetails[_DYN_HDRS /* @min:%2ehdrs */],\r\n timeout: _xhrTimeout,\r\n disableXhrSync: _disableXhrSync,\r\n disableFetchKeepAlive: _disableFetchKeepAlive\r\n };\r\n // Only automatically add the following headers if already sending headers and we are not attempting to avoid an options call\r\n if (_useHeaders) {\r\n if (!_hasHeader(payloadData[_DYN_HEADERS /* @min:%2eheaders */], STR_CACHE_CONTROL)) {\r\n payloadData[_DYN_HEADERS /* @min:%2eheaders */][STR_CACHE_CONTROL] = DEFAULT_CACHE_CONTROL;\r\n }\r\n if (!_hasHeader(payloadData[_DYN_HEADERS /* @min:%2eheaders */], STR_CONTENT_TYPE_HEADER)) {\r\n payloadData[_DYN_HEADERS /* @min:%2eheaders */][STR_CONTENT_TYPE_HEADER] = DEFAULT_CONTENT_TYPE;\r\n }\r\n }\r\n return payloadData;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n };\r\n // Special internal method to allow the DebugPlugin to hook embedded objects\r\n function _getSenderInterface(transports, syncSupport) {\r\n try {\r\n return _sendPostMgr && _sendPostMgr.getSenderInst(transports, syncSupport);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_sendInterfaces[0 /* EventSendType.Batched */], _killSwitch, _serializer, _sendInterfaces];\r\n };\r\n function _getSendPostMgrConfig() {\r\n try {\r\n var onCompleteFuncs = {\r\n xdrOnComplete: _xdrOncomplete,\r\n fetchOnComplete: _fetchOnComplete,\r\n xhrOnComplete: _xhrOnComplete,\r\n beaconOnRetry: _onBeaconRetry\r\n };\r\n var config = {\r\n enableSendPromise: false,\r\n isOneDs: true,\r\n disableCredentials: !_sendCredentials,\r\n disableXhr: false,\r\n disableBeacon: !_useBeacons,\r\n disableBeaconSync: !_useBeacons,\r\n disableFetchKeepAlive: _disableFetchKeepAlive,\r\n timeWrapper: _timeoutWrapper,\r\n addNoResponse: _addNoResponse,\r\n senderOnCompleteCallBack: onCompleteFuncs\r\n };\r\n return config;\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n }\r\n function _xdrOncomplete(xdr, oncomplete, payload) {\r\n var response = getResponseText(xdr);\r\n _doOnComplete(oncomplete, 200, {}, response);\r\n _handleCollectorResponse(response);\r\n }\r\n function _initDefaults() {\r\n var undefValue;\r\n _urlString = null;\r\n _killSwitch = new KillSwitch();\r\n _paused = false;\r\n _clockSkewManager = new ClockSkewManager();\r\n _useBeacons = false;\r\n _outstandingRequests = 0; // Holds the number of outstanding async requests that have not returned a response yet\r\n _postManager = null;\r\n _logger = null;\r\n _sendInterfaces = null;\r\n _core = null;\r\n _customHttpInterface = true;\r\n _queryStringParameters = [];\r\n _headers = {};\r\n _batchQueue = [];\r\n _serializer = null;\r\n _enableEventTimings = false;\r\n _cookieMgr = null;\r\n _isUnloading = false;\r\n _useHeaders = false;\r\n _xhrTimeout = undefValue;\r\n _disableXhrSync = undefValue;\r\n _disableFetchKeepAlive = undefValue;\r\n _canHaveReducedPayload = undefValue;\r\n _addNoResponse = undefValue;\r\n _unloadHooks = [];\r\n _sendHook = undefValue;\r\n _sendListener = undefValue;\r\n _responseHandlers = [];\r\n _isInitialized = false;\r\n _timeoutWrapper = createTimeoutWrapper();\r\n _excludeCsMetaData = false;\r\n _sendPostMgr = null;\r\n }\r\n function _fetchOnComplete(response, onComplete, resValue, payload) {\r\n var handleResponse = function (status, headerMap, responseText) {\r\n _doOnComplete(onComplete, status, headerMap, responseText);\r\n _handleCollectorResponse(responseText);\r\n };\r\n var headerMap = {};\r\n var headers = response[_DYN_HEADERS /* @min:%2eheaders */];\r\n if (headers) {\r\n headers[\"forEach\"](function (value, name) {\r\n headerMap[name] = value;\r\n });\r\n }\r\n handleResponse(response.status, headerMap, resValue || STR_EMPTY);\r\n }\r\n function _xhrOnComplete(request, oncomplete, payload) {\r\n var response = getResponseText(request);\r\n _doOnComplete(oncomplete, request.status, _getAllResponseHeaders(request, true), response);\r\n _handleCollectorResponse(response);\r\n }\r\n function _doOnComplete(oncomplete, status, headers, response) {\r\n try {\r\n oncomplete(status, headers, response);\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 518 /* _eExtendedInternalMessageId.SendPostOnCompleteFailure */, dumpObj(e));\r\n }\r\n }\r\n function _onBeaconRetry(payload, onComplete, canSend) {\r\n // Custom headers not supported in sendBeacon payload.headers would be ignored\r\n var internalPayloadData = payload;\r\n var status = 200;\r\n var thePayload = internalPayloadData[_DYN__THE_PAYLOAD /* @min:%2e_thePayload */];\r\n var theUrl = payload[_DYN_URL_STRING /* @min:%2eurlString */] + (_addNoResponse ? _noResponseQs : STR_EMPTY);\r\n try {\r\n var nav_1 = getNavigator();\r\n if (thePayload) {\r\n var persistStorage = !!_core.getPlugin(\"LocalStorage\");\r\n // Failed to send entire payload so try and split data and try to send as much events as possible\r\n var droppedBatches_1 = [];\r\n var sentBatches_1 = [];\r\n arrForEach(thePayload[_DYN_BATCHES /* @min:%2ebatches */], function (theBatch) {\r\n if (droppedBatches_1 && theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n var theEvents = theBatch[_DYN_EVENTS /* @min:%2eevents */]();\r\n for (var lp = 0; lp < theEvents[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n if (!nav_1.sendBeacon(theUrl, _serializer.getEventBlob(theEvents[lp]))) {\r\n // Can't send anymore, so split the batch and drop the rest\r\n droppedBatches_1[_DYN_PUSH /* @min:%2epush */](theBatch[_DYN_SPLIT /* @min:%2esplit */](lp));\r\n break;\r\n }\r\n else {\r\n sentBatches_1[_DYN_PUSH /* @min:%2epush */](theBatch[lp]);\r\n }\r\n }\r\n }\r\n else {\r\n // Remove all of the events from the existing batch in the payload as the copy includes the original\r\n droppedBatches_1[_DYN_PUSH /* @min:%2epush */](theBatch[_DYN_SPLIT /* @min:%2esplit */](0));\r\n }\r\n });\r\n if (sentBatches_1[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Update the payload with the sent batches\r\n thePayload.sentEvts = sentBatches_1;\r\n }\r\n if (!persistStorage) {\r\n _sendBatchesNotification(droppedBatches_1, 8003 /* EventBatchNotificationReason.SizeLimitExceeded */, thePayload[_DYN_SEND_TYPE /* @min:%2esendType */], true);\r\n }\r\n }\r\n else {\r\n status = 0;\r\n }\r\n }\r\n catch (ex) {\r\n _warnToConsole(_logger, \"Failed to send telemetry using sendBeacon API. Ex:\" + dumpObj(ex));\r\n status = 0;\r\n }\r\n finally {\r\n _doOnComplete(onComplete, status, {}, STR_EMPTY);\r\n }\r\n }\r\n function _isBeaconPayload(sendType) {\r\n // Sync Fetch has the same payload limitation as sendBeacon -- 64kb limit, so treat both as a beacon send\r\n return sendType === 2 /* EventSendType.SendBeacon */ || sendType === 3 /* EventSendType.SyncFetch */;\r\n }\r\n function _adjustSendType(sendType) {\r\n if (_isUnloading && _isBeaconPayload(sendType)) {\r\n sendType = 2 /* EventSendType.SendBeacon */;\r\n }\r\n return sendType;\r\n }\r\n _self[_DYN_ADD_HEADER /* @min:%2eaddHeader */] = function (name, value) {\r\n _headers[name] = value;\r\n };\r\n _self.removeHeader = function (name) {\r\n delete _headers[name];\r\n };\r\n _self[_DYN_CAN_SEND_REQUEST /* @min:%2ecanSendRequest */] = function () {\r\n return _hasIdleConnection() && _clockSkewManager[_DYN_ALLOW_REQUEST_SENDIN0 /* @min:%2eallowRequestSending */]();\r\n };\r\n _self[_DYN_SEND_QUEUED_REQUESTS /* @min:%2esendQueuedRequests */] = function (sendType, sendReason) {\r\n if (isUndefined(sendType)) {\r\n sendType = 0 /* EventSendType.Batched */;\r\n }\r\n if (_isUnloading) {\r\n sendType = _adjustSendType(sendType);\r\n sendReason = 2 /* SendRequestReason.Unload */;\r\n }\r\n if (_canSendPayload(_batchQueue, sendType, 0)) {\r\n _sendBatches(_clearQueue(), 0, false, sendType, sendReason || 0 /* SendRequestReason.Undefined */);\r\n }\r\n };\r\n _self[_DYN_IS_COMPLETELY_IDLE /* @min:%2eisCompletelyIdle */] = function () {\r\n return !_paused && _outstandingRequests === 0 && _batchQueue[_DYN_LENGTH /* @min:%2elength */] === 0;\r\n };\r\n _self[_DYN_SET_UNLOADING /* @min:%2esetUnloading */] = function (value) {\r\n _isUnloading = value;\r\n };\r\n _self.addBatch = function (theBatch) {\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n // Try and kill the event faster\r\n if (_killSwitch.isTenantKilled(theBatch[_DYN_I_KEY /* @min:%2eiKey */]())) {\r\n return false;\r\n }\r\n _batchQueue[_DYN_PUSH /* @min:%2epush */](theBatch);\r\n }\r\n return true;\r\n };\r\n /**\r\n * Queue all the remaining requests to be sent. The requests will be\r\n * sent using HTML5 Beacons if they are available.\r\n */\r\n _self.teardown = function () {\r\n if (_batchQueue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _sendBatches(_clearQueue(), 0, true, 2 /* EventSendType.SendBeacon */, 2 /* SendRequestReason.Unload */);\r\n }\r\n arrForEach(_unloadHooks, function (hook) {\r\n hook && hook.rm && hook.rm();\r\n });\r\n _unloadHooks = [];\r\n };\r\n /**\r\n * Pause the sending of requests. No new requests will be sent.\r\n */\r\n _self.pause = function () {\r\n _paused = true;\r\n };\r\n /**\r\n * Resume the sending of requests.\r\n */\r\n _self.resume = function () {\r\n _paused = false;\r\n _self[_DYN_SEND_QUEUED_REQUESTS /* @min:%2esendQueuedRequests */](0 /* EventSendType.Batched */, 4 /* SendRequestReason.Resumed */);\r\n };\r\n /**\r\n * Sends a request synchronously to the Aria collector. This api is used to send\r\n * a request containing a single immediate event.\r\n *\r\n * @param batch - The request to be sent.\r\n * @param sendReason - The token used to send the request.\r\n */\r\n _self[_DYN_SEND_SYNCHRONOUS_BAT10 /* @min:%2esendSynchronousBatch */] = function (batch, sendType, sendReason) {\r\n // This will not take into account the max connections restriction. Since this is sync, we can\r\n // only send one of this request at a time and thus should not worry about multiple connections\r\n // being used to send synchronous events.\r\n // Increment active connection since we are still going to use a connection to send the request.\r\n if (batch && batch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n if (isNullOrUndefined(sendType)) {\r\n sendType = 1 /* EventSendType.Synchronous */;\r\n }\r\n if (_isUnloading) {\r\n sendType = _adjustSendType(sendType);\r\n sendReason = 2 /* SendRequestReason.Unload */;\r\n }\r\n // For sync requests we will not wait for the clock skew.\r\n _sendBatches([batch], 0, false, sendType, sendReason || 0 /* SendRequestReason.Undefined */);\r\n }\r\n };\r\n function _hasIdleConnection() {\r\n return !_paused && _outstandingRequests < maxConnections;\r\n }\r\n function _clearQueue() {\r\n var theQueue = _batchQueue;\r\n _batchQueue = [];\r\n return theQueue;\r\n }\r\n function _canSendPayload(theBatches, sendType, retryCnt) {\r\n var result = false;\r\n if (theBatches && theBatches[_DYN_LENGTH /* @min:%2elength */] > 0 && !_paused && _sendInterfaces[sendType] && _serializer) {\r\n // Always attempt to send synchronous events don't wait for idle or clockSkew\r\n // and don't block retry requests if clockSkew is not yet set\r\n result = (sendType !== 0 /* EventSendType.Batched */) || (_hasIdleConnection() && (retryCnt > 0 || _clockSkewManager[_DYN_ALLOW_REQUEST_SENDIN0 /* @min:%2eallowRequestSending */]()));\r\n }\r\n return result;\r\n }\r\n function _createDebugBatches(theBatches) {\r\n var values = {};\r\n if (theBatches) {\r\n arrForEach(theBatches, function (theBatch, idx) {\r\n values[idx] = {\r\n iKey: theBatch[_DYN_I_KEY /* @min:%2eiKey */](),\r\n evts: theBatch[_DYN_EVENTS /* @min:%2eevents */]()\r\n };\r\n });\r\n }\r\n return values;\r\n }\r\n function _sendBatches(theBatches, retryCount, isTeardown, sendType, sendReason) {\r\n if (!theBatches || theBatches[_DYN_LENGTH /* @min:%2elength */] === 0) {\r\n // Nothing to do\r\n return;\r\n }\r\n if (_paused) {\r\n _sendBatchesNotification(theBatches, 1 /* EventBatchNotificationReason.Paused */, sendType);\r\n return;\r\n }\r\n // Make sure that if we are unloading the sendType is a supported version\r\n sendType = _adjustSendType(sendType);\r\n try {\r\n var orgBatches_1 = theBatches;\r\n var isSynchronous_1 = sendType !== 0 /* EventSendType.Batched */;\r\n doPerf(_core, function () { return \"HttpManager:_sendBatches\"; }, function (perfEvt) {\r\n if (perfEvt) {\r\n // Perf Monitoring is enabled, so create a \"Quick\" copy of the original batches so we still report\r\n // the original values as part of the perfEvent. This is because theBatches uses .shift() to remove each\r\n // batch as they are processed - removing from the original array, so by the time the _createDebugBatches()\r\n // function is called the passed in value has changed and therefore the reported value for the perfEvent is incorrect\r\n theBatches = theBatches.slice(0);\r\n }\r\n var droppedBatches = [];\r\n var thePayload = null;\r\n var serializationStart = getTime();\r\n var sendInterface = _sendInterfaces[sendType] || (isSynchronous_1 ? _sendInterfaces[1 /* EventSendType.Synchronous */] : _sendInterfaces[0 /* EventSendType.Batched */]);\r\n var sendTransport = sendInterface && sendInterface[_DYN__TRANSPORT /* @min:%2e_transport */];\r\n // Sync Fetch has the same payload limitation as sendBeacon -- 64kb limit\r\n var isReducedPayload = _canHaveReducedPayload && (_isUnloading || _isBeaconPayload(sendType) || (sendTransport === 3 /* TransportType.Beacon */ || (sendInterface._isSync && sendTransport === 2 /* TransportType.Fetch */)));\r\n while (_canSendPayload(theBatches, sendType, retryCount)) {\r\n var theBatch = theBatches.shift();\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n if (!_killSwitch.isTenantKilled(theBatch[_DYN_I_KEY /* @min:%2eiKey */]())) {\r\n // Make sure we have a payload object\r\n thePayload = thePayload || _serializer[_DYN_CREATE_PAYLOAD /* @min:%2ecreatePayload */](retryCount, isTeardown, isSynchronous_1, isReducedPayload, sendReason, sendType);\r\n // Add the batch to the current payload\r\n if (!_serializer.appendPayload(thePayload, theBatch, maxEventsPerBatch)) {\r\n // Entire batch was not added so send the payload and retry adding this batch\r\n _doPayloadSend(thePayload, serializationStart, getTime(), sendReason);\r\n serializationStart = getTime();\r\n theBatches = [theBatch][_DYN_CONCAT /* @min:%2econcat */](theBatches);\r\n thePayload = null;\r\n }\r\n else if (thePayload.overflow !== null) {\r\n // Total Payload size was exceeded so send the payload and add the unsent as the next batch to send\r\n theBatches = [thePayload.overflow][_DYN_CONCAT /* @min:%2econcat */](theBatches);\r\n thePayload.overflow = null;\r\n _doPayloadSend(thePayload, serializationStart, getTime(), sendReason);\r\n serializationStart = getTime();\r\n thePayload = null;\r\n }\r\n }\r\n else {\r\n droppedBatches[_DYN_PUSH /* @min:%2epush */](theBatch);\r\n }\r\n }\r\n }\r\n // Make sure to flush any remaining payload\r\n if (thePayload) {\r\n _doPayloadSend(thePayload, serializationStart, getTime(), sendReason);\r\n }\r\n if (theBatches[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Add any unsent batches back to the head of the queue\r\n _batchQueue = theBatches[_DYN_CONCAT /* @min:%2econcat */](_batchQueue);\r\n }\r\n // Now send notification about any dropped events\r\n _sendBatchesNotification(droppedBatches, 8004 /* EventBatchNotificationReason.KillSwitch */, sendType);\r\n }, function () { return ({ batches: _createDebugBatches(orgBatches_1), retryCount: retryCount, isTeardown: isTeardown, isSynchronous: isSynchronous_1, sendReason: sendReason, useSendBeacon: _isBeaconPayload(sendType), sendType: sendType }); }, !isSynchronous_1);\r\n }\r\n catch (ex) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 48 /* _eInternalMessageId.CannotSerializeObject */, \"Unexpected Exception sending batch: \" + dumpObj(ex));\r\n }\r\n }\r\n function _buildRequestDetails(thePayload, useHeaders) {\r\n var requestDetails = {\r\n url: _urlString,\r\n hdrs: {},\r\n useHdrs: false // Assume no headers\r\n };\r\n if (!useHeaders) {\r\n // Attempt to map headers to a query string if possible\r\n objForEachKey(_headers, function (name, value) {\r\n if (_collectorHeaderToQs[name]) {\r\n _addRequestDetails(requestDetails, _collectorHeaderToQs[name], value, false);\r\n }\r\n else {\r\n // No mapping, so just include in the headers anyway (may not get sent if using sendBeacon())\r\n requestDetails[_DYN_HDRS /* @min:%2ehdrs */][name] = value;\r\n requestDetails[_DYN_USE_HDRS /* @min:%2euseHdrs */] = true;\r\n }\r\n });\r\n }\r\n else {\r\n // Copy the pre-defined headers into the payload headers\r\n requestDetails[_DYN_HDRS /* @min:%2ehdrs */] = extend(requestDetails[_DYN_HDRS /* @min:%2ehdrs */], _headers);\r\n requestDetails.useHdrs = (objKeys(requestDetails.hdrs)[_DYN_LENGTH /* @min:%2elength */] > 0);\r\n }\r\n _addRequestDetails(requestDetails, STR_CLIENT_ID, \"NO_AUTH\", useHeaders);\r\n _addRequestDetails(requestDetails, STR_CLIENT_VERSION, FullVersionString, useHeaders);\r\n var apiQsKeys = STR_EMPTY;\r\n arrForEach(thePayload.apiKeys, function (apiKey) {\r\n if (apiQsKeys[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n apiQsKeys += \",\";\r\n }\r\n apiQsKeys += apiKey;\r\n });\r\n _addRequestDetails(requestDetails, STR_API_KEY, apiQsKeys, useHeaders);\r\n _addRequestDetails(requestDetails, STR_UPLOAD_TIME, dateNow().toString(), useHeaders);\r\n var msfpc = _getMsfpc(thePayload);\r\n if (isValueAssigned(msfpc)) {\r\n requestDetails.url += \"&ext.intweb.msfpc=\" + msfpc;\r\n }\r\n if (_clockSkewManager[_DYN_SHOULD_ADD_CLOCK_SKE1 /* @min:%2eshouldAddClockSkewHeaders */]()) {\r\n _addRequestDetails(requestDetails, STR_TIME_DELTA_TO_APPLY, _clockSkewManager[_DYN_GET_CLOCK_SKEW_HEADE2 /* @min:%2egetClockSkewHeaderValue */](), useHeaders);\r\n }\r\n if (_core[_DYN_GET_WPARAM /* @min:%2egetWParam */]) {\r\n var wParam = _core[_DYN_GET_WPARAM /* @min:%2egetWParam */]();\r\n if (wParam >= 0) {\r\n requestDetails.url += \"&w=\" + wParam;\r\n }\r\n }\r\n for (var i = 0; i < _queryStringParameters[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n requestDetails.url += \"&\" + _queryStringParameters[i].name + \"=\" + _queryStringParameters[i].value;\r\n }\r\n return requestDetails;\r\n }\r\n function _setTimingValue(timings, name, value) {\r\n timings[name] = timings[name] || {};\r\n timings[name][_postManager.identifier] = value;\r\n }\r\n function _doPayloadSend(thePayload, serializationStart, serializationCompleted, sendReason) {\r\n if (thePayload && thePayload.payloadBlob && thePayload.payloadBlob[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n var useSendHook_1 = !!_sendHook;\r\n var sendInterface_1 = _sendInterfaces[thePayload.sendType];\r\n // Send all data using a beacon style transport if closing mode is on or channel was teared down\r\n if (!_isBeaconPayload(thePayload[_DYN_SEND_TYPE /* @min:%2esendType */]) && thePayload[_DYN_IS_BEACON /* @min:%2eisBeacon */] && thePayload.sendReason === 2 /* SendRequestReason.Unload */) {\r\n sendInterface_1 = _sendInterfaces[2 /* EventSendType.SendBeacon */] || _sendInterfaces[3 /* EventSendType.SyncFetch */] || sendInterface_1;\r\n }\r\n var useHeaders_1 = _useHeaders;\r\n // Disable header usage if we know we are using sendBeacon as additional headers are not supported\r\n if (thePayload.isBeacon || sendInterface_1[_DYN__TRANSPORT /* @min:%2e_transport */] === 3 /* TransportType.Beacon */) {\r\n useHeaders_1 = false;\r\n }\r\n var requestDetails_1 = _buildRequestDetails(thePayload, useHeaders_1);\r\n useHeaders_1 = useHeaders_1 || requestDetails_1[_DYN_USE_HDRS /* @min:%2euseHdrs */];\r\n var sendEventStart_1 = getTime();\r\n doPerf(_core, function () { return \"HttpManager:_doPayloadSend\"; }, function () {\r\n // Increment the send attempt count and add timings after packaging (So it's not serialized in the 1st attempt)\r\n for (var batchLp = 0; batchLp < thePayload.batches[_DYN_LENGTH /* @min:%2elength */]; batchLp++) {\r\n var theBatch = thePayload[_DYN_BATCHES /* @min:%2ebatches */][batchLp];\r\n var theEvents = theBatch[_DYN_EVENTS /* @min:%2eevents */]();\r\n for (var evtLp = 0; evtLp < theEvents[_DYN_LENGTH /* @min:%2elength */]; evtLp++) {\r\n var telemetryItem = theEvents[evtLp];\r\n if (_enableEventTimings) {\r\n var timings = telemetryItem[_DYN_TIMINGS /* @min:%2etimings */] = telemetryItem[_DYN_TIMINGS /* @min:%2etimings */] || {};\r\n _setTimingValue(timings, \"sendEventStart\", sendEventStart_1);\r\n _setTimingValue(timings, \"serializationStart\", serializationStart);\r\n _setTimingValue(timings, \"serializationCompleted\", serializationCompleted);\r\n }\r\n telemetryItem[strSendAttempt] > 0 ? telemetryItem[strSendAttempt]++ : telemetryItem[strSendAttempt] = 1;\r\n }\r\n }\r\n // Note: always sending this notification in a synchronous manner.\r\n _sendBatchesNotification(thePayload[_DYN_BATCHES /* @min:%2ebatches */], (1000 /* EventBatchNotificationReason.SendingUndefined */ + (sendReason || 0 /* SendRequestReason.Undefined */)), thePayload[_DYN_SEND_TYPE /* @min:%2esendType */], true);\r\n // Disabling the use of const because of Issue:\r\n // - Task 9227844: [1DS] Some environments and packagers automatically \"freeze\" objects which are defined as const which causes any mutations to throw\r\n // eslint-disable-next-line prefer-const\r\n var orgPayloadData = {\r\n data: thePayload[_DYN_PAYLOAD_BLOB /* @min:%2epayloadBlob */],\r\n urlString: requestDetails_1.url,\r\n headers: requestDetails_1[_DYN_HDRS /* @min:%2ehdrs */],\r\n _thePayload: thePayload,\r\n _sendReason: sendReason,\r\n timeout: _xhrTimeout,\r\n disableXhrSync: _disableXhrSync,\r\n disableFetchKeepAlive: _disableFetchKeepAlive\r\n };\r\n // Only automatically add the following headers if already sending headers and we are not attempting to avoid an options call\r\n if (useHeaders_1) {\r\n if (!_hasHeader(orgPayloadData[_DYN_HEADERS /* @min:%2eheaders */], STR_CACHE_CONTROL)) {\r\n orgPayloadData[_DYN_HEADERS /* @min:%2eheaders */][STR_CACHE_CONTROL] = DEFAULT_CACHE_CONTROL;\r\n }\r\n if (!_hasHeader(orgPayloadData[_DYN_HEADERS /* @min:%2eheaders */], STR_CONTENT_TYPE_HEADER)) {\r\n orgPayloadData[_DYN_HEADERS /* @min:%2eheaders */][STR_CONTENT_TYPE_HEADER] = DEFAULT_CONTENT_TYPE;\r\n }\r\n }\r\n var sender = null;\r\n if (sendInterface_1) {\r\n // Send sync requests if the request is immediate or we are tearing down telemetry.\r\n sender = function (payload) {\r\n // Notify the clock skew manager that we are sending the first request (Potentially blocking all further requests)\r\n _clockSkewManager[_DYN_FIRST_REQUEST_SENT /* @min:%2efirstRequestSent */]();\r\n var onComplete = function (status, headers) {\r\n _retryRequestIfNeeded(status, headers, thePayload, sendReason);\r\n };\r\n var isSync = thePayload[_DYN_IS_TEARDOWN /* @min:%2eisTeardown */] || thePayload[_DYN_IS_SYNC /* @min:%2eisSync */];\r\n try {\r\n sendInterface_1.sendPOST(payload, onComplete, isSync);\r\n if (_sendListener) {\r\n // Send the original payload to the listener\r\n _sendListener(orgPayloadData, payload, isSync, thePayload[_DYN_IS_BEACON /* @min:%2eisBeacon */]);\r\n }\r\n }\r\n catch (ex) {\r\n _warnToConsole(_logger, \"Unexpected exception sending payload. Ex:\" + dumpObj(ex));\r\n _doOnComplete(onComplete, 0, {});\r\n }\r\n };\r\n }\r\n doPerf(_core, function () { return \"HttpManager:_doPayloadSend.sender\"; }, function () {\r\n if (sender) {\r\n if (thePayload[_DYN_SEND_TYPE /* @min:%2esendType */] === 0 /* EventSendType.Batched */) {\r\n _outstandingRequests++;\r\n }\r\n // Only call the hook if it's defined and we are not using sendBeacon as additional headers are not supported\r\n if (useSendHook_1 && !thePayload.isBeacon && sendInterface_1[_DYN__TRANSPORT /* @min:%2e_transport */] !== 3 /* TransportType.Beacon */) {\r\n // Create a new IPayloadData that is sent into the hook method, so that the hook method\r\n // can't change the object references to the orgPayloadData (it can still change the content -- mainly the headers)\r\n // Disabling the use of const because of Issue:\r\n // - Task 9227844: [1DS] Some environments and packagers automatically \"freeze\" objects which are defined as const which causes any mutations to throw\r\n // eslint-disable-next-line prefer-const\r\n var hookData_1 = {\r\n data: orgPayloadData[_DYN_DATA /* @min:%2edata */],\r\n urlString: orgPayloadData[_DYN_URL_STRING /* @min:%2eurlString */],\r\n headers: extend({}, orgPayloadData[_DYN_HEADERS /* @min:%2eheaders */]),\r\n timeout: orgPayloadData[_DYN_TIMEOUT /* @min:%2etimeout */],\r\n disableXhrSync: orgPayloadData[_DYN_DISABLE_XHR_SYNC /* @min:%2edisableXhrSync */],\r\n disableFetchKeepAlive: orgPayloadData[_DYN_DISABLE_FETCH_KEEP_A6 /* @min:%2edisableFetchKeepAlive */]\r\n };\r\n var senderCalled_1 = false;\r\n doPerf(_core, function () { return \"HttpManager:_doPayloadSend.sendHook\"; }, function () {\r\n try {\r\n _sendHook(hookData_1, function (payload) {\r\n senderCalled_1 = true;\r\n // Add back the internal properties\r\n if (!_customHttpInterface && !payload[_DYN__THE_PAYLOAD /* @min:%2e_thePayload */]) {\r\n payload[_DYN__THE_PAYLOAD /* @min:%2e_thePayload */] = payload[_DYN__THE_PAYLOAD /* @min:%2e_thePayload */] || orgPayloadData[_DYN__THE_PAYLOAD /* @min:%2e_thePayload */];\r\n payload[_DYN__SEND_REASON /* @min:%2e_sendReason */] = payload[_DYN__SEND_REASON /* @min:%2e_sendReason */] || orgPayloadData[_DYN__SEND_REASON /* @min:%2e_sendReason */];\r\n }\r\n sender(payload);\r\n }, thePayload.isSync || thePayload[_DYN_IS_TEARDOWN /* @min:%2eisTeardown */]);\r\n }\r\n catch (ex) {\r\n if (!senderCalled_1) {\r\n // The hook never called the sender -- assume that it never will\r\n sender(orgPayloadData);\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n sender(orgPayloadData);\r\n }\r\n }\r\n });\r\n }, function () { return ({ thePayload: thePayload, serializationStart: serializationStart, serializationCompleted: serializationCompleted, sendReason: sendReason }); }, thePayload[_DYN_IS_SYNC /* @min:%2eisSync */]);\r\n }\r\n if (thePayload.sizeExceed && thePayload.sizeExceed[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Ensure that we send any discard events for oversize events even when there was no payload to send\r\n _sendBatchesNotification(thePayload.sizeExceed, 8003 /* EventBatchNotificationReason.SizeLimitExceeded */, thePayload[_DYN_SEND_TYPE /* @min:%2esendType */]);\r\n }\r\n if (thePayload.failedEvts && thePayload.failedEvts[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n // Ensure that we send any discard events for events that could not be serialized even when there was no payload to send\r\n _sendBatchesNotification(thePayload.failedEvts, 8002 /* EventBatchNotificationReason.InvalidEvent */, thePayload[_DYN_SEND_TYPE /* @min:%2esendType */]);\r\n }\r\n }\r\n function _addEventCompletedTimings(theEvents, sendEventCompleted) {\r\n if (_enableEventTimings) {\r\n arrForEach(theEvents, function (theEvent) {\r\n var timings = theEvent[_DYN_TIMINGS /* @min:%2etimings */] = theEvent[_DYN_TIMINGS /* @min:%2etimings */] || {};\r\n _setTimingValue(timings, \"sendEventCompleted\", sendEventCompleted);\r\n });\r\n }\r\n }\r\n function _retryRequestIfNeeded(status, headers, thePayload, sendReason) {\r\n var reason = 9000 /* EventBatchNotificationReason.ResponseFailure */;\r\n var droppedBatches = null;\r\n var isRetrying = false;\r\n var backOffTrans = false;\r\n try {\r\n var shouldRetry = true;\r\n if (typeof status !== strUndefined) {\r\n if (headers) {\r\n _clockSkewManager[_DYN_SET_CLOCK_SKEW /* @min:%2esetClockSkew */](headers[STR_TIME_DELTA_HEADER]);\r\n var killDuration = headers[STR_KILL_DURATION_HEADER] || headers[\"kill-duration-seconds\"];\r\n arrForEach(_killSwitch[_DYN_SET_KILL_SWITCH_TENA11 /* @min:%2esetKillSwitchTenants */](headers[STR_KILL_TOKENS_HEADER], killDuration), function (killToken) {\r\n arrForEach(thePayload[_DYN_BATCHES /* @min:%2ebatches */], function (theBatch) {\r\n if (theBatch[_DYN_I_KEY /* @min:%2eiKey */]() === killToken) {\r\n // Make sure we have initialized the array\r\n droppedBatches = droppedBatches || [];\r\n // Create a copy of the batch with all of the events (and more importantly the action functions)\r\n var removedEvents = theBatch[_DYN_SPLIT /* @min:%2esplit */](0);\r\n // And then remove the events for the payload batch and reduce the actual number of processed\r\n thePayload.numEvents -= removedEvents[_DYN_COUNT /* @min:%2ecount */]();\r\n droppedBatches[_DYN_PUSH /* @min:%2epush */](removedEvents);\r\n }\r\n });\r\n });\r\n }\r\n // Disabling triple-equals rule to avoid httpOverrides from failing because they are returning a string value\r\n // tslint:disable-next-line:triple-equals\r\n if (status == 200 || status == 204) {\r\n // Response was successfully sent\r\n reason = 200 /* EventBatchNotificationReason.Complete */;\r\n return;\r\n }\r\n if (!retryPolicyShouldRetryForStatus(status) || thePayload.numEvents <= 0) {\r\n // Only retry for specific response codes and if there is still events after kill switch processing\r\n shouldRetry = false;\r\n }\r\n // Derive the notification response from the HttpStatus Code\r\n reason = 9000 /* EventBatchNotificationReason.ResponseFailure */ + (status % 1000);\r\n }\r\n if (shouldRetry) {\r\n // The events should be retried -- so change notification to requeue them\r\n reason = 100 /* EventBatchNotificationReason.RequeueEvents */;\r\n var retryCount_1 = thePayload.retryCnt;\r\n if (thePayload[_DYN_SEND_TYPE /* @min:%2esendType */] === 0 /* EventSendType.Batched */) {\r\n // attempt to resend the entire batch\r\n if (retryCount_1 < maxRequestRetriesBeforeBackoff) {\r\n isRetrying = true;\r\n _doAction(function () {\r\n // try to resend the same batches\r\n if (thePayload[_DYN_SEND_TYPE /* @min:%2esendType */] === 0 /* EventSendType.Batched */) {\r\n // Reduce the outstanding request count (if this was an async request) as we didn't reduce the count\r\n // previously and we are about to reschedule our retry attempt and we want an attempt to send\r\n // to occur, it's also required to ensure that a follow up handleRequestFinished() call occurs\r\n _outstandingRequests--;\r\n }\r\n _sendBatches(thePayload[_DYN_BATCHES /* @min:%2ebatches */], retryCount_1 + 1, thePayload[_DYN_IS_TEARDOWN /* @min:%2eisTeardown */], _isUnloading ? 2 /* EventSendType.SendBeacon */ : thePayload[_DYN_SEND_TYPE /* @min:%2esendType */], 5 /* SendRequestReason.Retry */);\r\n }, _isUnloading, retryPolicyGetMillisToBackoffForRetry(retryCount_1));\r\n }\r\n else {\r\n backOffTrans = true;\r\n if (_isUnloading) {\r\n // we are unloading so don't try and requeue the events otherwise let the events get requeued and resent during the backoff sending\r\n // This will also cause the events to be purged based on the priority (if necessary)\r\n reason = 8001 /* EventBatchNotificationReason.NonRetryableStatus */;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n finally {\r\n if (!isRetrying) {\r\n // Make sure the clockSkewManager doesn't blocking further sending of requests once we have a proper response\r\n // This won't override any previously sent clock Skew value\r\n _clockSkewManager[_DYN_SET_CLOCK_SKEW /* @min:%2esetClockSkew */]();\r\n _handleRequestFinished(thePayload, reason, sendReason, backOffTrans);\r\n }\r\n _sendBatchesNotification(droppedBatches, 8004 /* EventBatchNotificationReason.KillSwitch */, thePayload[_DYN_SEND_TYPE /* @min:%2esendType */]);\r\n }\r\n }\r\n function _handleRequestFinished(thePayload, batchReason, sendReason, backOffTrans) {\r\n try {\r\n if (backOffTrans) {\r\n // Slow down the transmission requests\r\n _postManager[_DYN__BACK_OFF_TRANSMISSI12 /* @min:%2e_backOffTransmission */]();\r\n }\r\n var theBatches = thePayload[_DYN_BATCHES /* @min:%2ebatches */];\r\n if (batchReason === 200 /* EventBatchNotificationReason.Complete */) {\r\n theBatches = thePayload.sentEvts || thePayload[_DYN_BATCHES /* @min:%2ebatches */];\r\n if (!backOffTrans && !thePayload[_DYN_IS_SYNC /* @min:%2eisSync */]) {\r\n // We have a successful async response, so the lets open the floodgates\r\n // The reason for checking isSync is to avoid unblocking if beacon send occurred as it\r\n // doesn't wait for a response.\r\n _postManager._clearBackOff();\r\n }\r\n _addCompleteTimings(theBatches);\r\n }\r\n // Send the notifications synchronously\r\n _sendBatchesNotification(theBatches, batchReason, thePayload[_DYN_SEND_TYPE /* @min:%2esendType */], true);\r\n }\r\n finally {\r\n if (thePayload[_DYN_SEND_TYPE /* @min:%2esendType */] === 0 /* EventSendType.Batched */) {\r\n // we always need to decrement this value otherwise the httpmanager locks up and won't send any more events\r\n _outstandingRequests--;\r\n // Don't try to send additional queued events if this is a retry operation as the retried\r\n // response will eventually call _handleRequestFinished for the retried event\r\n if (sendReason !== 5 /* SendRequestReason.Retry */) {\r\n // Try and send any other queued batched events\r\n _self.sendQueuedRequests(thePayload[_DYN_SEND_TYPE /* @min:%2esendType */], sendReason);\r\n }\r\n }\r\n }\r\n }\r\n function _addCompleteTimings(theBatches) {\r\n if (_enableEventTimings) {\r\n var sendEventCompleted_1 = getTime();\r\n arrForEach(theBatches, function (theBatch) {\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n _addEventCompletedTimings(theBatch[_DYN_EVENTS /* @min:%2eevents */](), sendEventCompleted_1);\r\n }\r\n });\r\n }\r\n }\r\n function _doAction(cb, isSync, interval) {\r\n if (isSync) {\r\n cb();\r\n }\r\n else {\r\n _timeoutWrapper.set(cb, interval);\r\n }\r\n }\r\n function _getMsfpc(thePayload) {\r\n for (var lp = 0; lp < thePayload.batches[_DYN_LENGTH /* @min:%2elength */]; lp++) {\r\n var msfpc = thePayload[_DYN_BATCHES /* @min:%2ebatches */][lp].Msfpc();\r\n if (msfpc) {\r\n return encodeURIComponent(msfpc);\r\n }\r\n }\r\n return STR_EMPTY;\r\n }\r\n function _handleCollectorResponse(responseText) {\r\n var responseHandlers = _responseHandlers;\r\n try {\r\n for (var i = 0; i < responseHandlers[_DYN_LENGTH /* @min:%2elength */]; i++) {\r\n try {\r\n responseHandlers[i](responseText);\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 519 /* _eExtendedInternalMessageId.PostResponseHandler */, \"Response handler failed: \" + e);\r\n }\r\n }\r\n if (responseText) {\r\n var response = JSON.parse(responseText);\r\n if (isValueAssigned(response.webResult) && isValueAssigned(response.webResult[STR_MSFPC])) {\r\n // Set cookie\r\n _cookieMgr.set(\"MSFPC\", response.webResult[STR_MSFPC], 365 * 86400);\r\n }\r\n }\r\n }\r\n catch (ex) {\r\n // Doing nothing\r\n }\r\n }\r\n function _sendBatchesNotification(theBatches, batchReason, sendType, sendSync) {\r\n if (theBatches && theBatches[_DYN_LENGTH /* @min:%2elength */] > 0 && actions) {\r\n var theAction_1 = actions[_getNotificationAction(batchReason)];\r\n if (theAction_1) {\r\n var isSyncRequest_1 = sendType !== 0 /* EventSendType.Batched */;\r\n doPerf(_core, function () { return \"HttpManager:_sendBatchesNotification\"; }, function () {\r\n _doAction(function () {\r\n try {\r\n theAction_1.call(actions, theBatches, batchReason, isSyncRequest_1, sendType);\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 74 /* _eInternalMessageId.NotificationException */, \"send request notification failed: \" + e);\r\n }\r\n }, sendSync || isSyncRequest_1, 0);\r\n }, function () { return ({ batches: _createDebugBatches(theBatches), reason: batchReason, isSync: isSyncRequest_1, sendSync: sendSync, sendType: sendType }); }, !isSyncRequest_1);\r\n }\r\n }\r\n }\r\n function _getNotificationAction(reason) {\r\n var action = _eventActionMap[reason];\r\n if (!isValueAssigned(action)) {\r\n action = STR_OTHER;\r\n if (reason >= 9000 /* EventBatchNotificationReason.ResponseFailure */ && reason <= 9999 /* EventBatchNotificationReason.ResponseFailureMax */) {\r\n action = STR_RESPONSE_FAIL;\r\n }\r\n else if (reason >= 8000 /* EventBatchNotificationReason.EventsDropped */ && reason <= 8999 /* EventBatchNotificationReason.EventsDroppedMax */) {\r\n action = STR_DROPPED;\r\n }\r\n else if (reason >= 1000 /* EventBatchNotificationReason.SendingUndefined */ && reason <= 1999 /* EventBatchNotificationReason.SendingEventMax */) {\r\n action = STR_SENDING;\r\n }\r\n }\r\n return action;\r\n }\r\n });\r\n }\r\n// Removed Stub for HttpManager.prototype.initialize.\r\n// Removed Stub for HttpManager.prototype.addHeader.\r\n// Removed Stub for HttpManager.prototype.removeHeader.\r\n// Removed Stub for HttpManager.prototype.addResponseHandler.\r\n// Removed Stub for HttpManager.prototype.addBatch.\r\n// Removed Stub for HttpManager.prototype.canSendRequest.\r\n// Removed Stub for HttpManager.prototype.sendQueuedRequests.\r\n// Removed Stub for HttpManager.prototype.isCompletelyIdle.\r\n// Removed Stub for HttpManager.prototype.setUnloading.\r\n// Removed Stub for HttpManager.prototype.teardown.\r\n// Removed Stub for HttpManager.prototype.pause.\r\n// Removed Stub for HttpManager.prototype.resume.\r\n// Removed Stub for HttpManager.prototype.sendSynchronousBatch.\r\n// Removed Stub for HttpManager.prototype.serializeOfflineEvt.\r\n// Removed Stub for HttpManager.prototype.getOfflineRequestDetails.\r\n// Removed Stub for HttpManager.prototype.createOneDSPayload.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n HttpManager.__ieDyn=1;\n\n return HttpManager;\r\n}());\r\nexport { HttpManager };\r\n//# sourceMappingURL=HttpManager.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* TimeoutOverrideWrapper.ts\r\n* @author Nev Wylie (newylie)\r\n* @copyright Microsoft 2022\r\n* Simple internal timeout wrapper\r\n*/\r\nimport { scheduleTimeoutWith } from \"@nevware21/ts-utils\";\r\nexport function createTimeoutWrapper(argSetTimeout, argClearTimeout) {\r\n return {\r\n set: function (callback, ms) {\r\n var args = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n args[_i - 2] = arguments[_i];\r\n }\r\n return scheduleTimeoutWith([argSetTimeout, argClearTimeout], callback, ms, args);\r\n }\r\n };\r\n}\r\n//# sourceMappingURL=TimeoutOverrideWrapper.js.map","/*\n * 1DS JS SDK POST plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\nimport { __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\n/**\r\n* PostManager.ts\r\n* @author Abhilash Panwar (abpanwar); Hector Hernandez (hectorh); Nev Wylie (newylie)\r\n* @copyright Microsoft 2018-2020\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { BaseTelemetryPlugin, EventsDiscardedReason, _throwInternal, addPageHideEventListener, addPageShowEventListener, addPageUnloadEventListener, arrForEach, createProcessTelemetryContext, createUniqueNamespace, doPerf, getWindow, isChromium, isGreaterThanZero, isNumber, mergeEvtNamespace, objForEachKey, onConfigChange, optimizeObject, proxyFunctions, removePageHideEventListener, removePageShowEventListener, removePageUnloadEventListener, setProcessTelemetryTimings } from \"@microsoft/1ds-core-js\";\r\nimport { createPromise } from \"@nevware21/ts-async\";\r\nimport { objDeepFreeze } from \"@nevware21/ts-utils\";\r\nimport { BE_PROFILE, NRT_PROFILE, RT_PROFILE } from \"./DataModels\";\r\nimport { EventBatch } from \"./EventBatch\";\r\nimport { HttpManager } from \"./HttpManager\";\r\nimport { STR_AUTH_WEB_TOKEN, STR_MSA_DEVICE_TICKET, STR_TRACE, STR_USER } from \"./InternalConstants\";\r\nimport { retryPolicyGetMillisToBackoffForRetry } from \"./RetryPolicy\";\r\nimport { createTimeoutWrapper } from \"./TimeoutOverrideWrapper\";\r\nimport { _DYN_ADD_HEADER, _DYN_AUTO_FLUSH_EVENTS_LI14, _DYN_BASE_DATA, _DYN_BATCHES, _DYN_CAN_SEND_REQUEST, _DYN_CLEAR_TIMEOUT_OVERRI3, _DYN_CONCAT, _DYN_COUNT, _DYN_CREATE_ONE_DSPAYLOAD, _DYN_DATA, _DYN_DISABLE_AUTO_BATCH_F15, _DYN_DISABLE_OPTIMIZE_OBJ, _DYN_DISABLE_TELEMETRY, _DYN_EVENTS, _DYN_EVENTS_LIMIT_IN_MEM, _DYN_GET_OFFLINE_REQUEST_9, _DYN_GET_WPARAM, _DYN_IDENTIFIER, _DYN_IGNORE_MC1_MS0_COOKI13, _DYN_INITIALIZE, _DYN_IS_COMPLETELY_IDLE, _DYN_I_KEY, _DYN_LATENCY, _DYN_LENGTH, _DYN_OVERRIDE_INSTRUMENTA16, _DYN_PUSH, _DYN_SEND_ATTEMPT, _DYN_SEND_QUEUED_REQUESTS, _DYN_SEND_SYNCHRONOUS_BAT10, _DYN_SERIALIZE_OFFLINE_EV8, _DYN_SET_TIMEOUT_OVERRIDE, _DYN_SET_UNLOADING, _DYN_SPLICE, _DYN_SPLIT, _DYN_SYNC, _DYN__BACK_OFF_TRANSMISSI12 } from \"./__DynamicConstants\";\r\nvar FlushCheckTimer = 0.250; // This needs to be in seconds, so this is 250ms\r\nvar MaxNumberEventPerBatch = 500;\r\nvar EventsDroppedAtOneTime = 20;\r\nvar MaxSendAttempts = 6;\r\nvar MaxSyncUnloadSendAttempts = 2; // Assuming 2 based on beforeunload and unload\r\nvar MaxBackoffCount = 4;\r\nvar MaxConnections = 2;\r\nvar MaxRequestRetriesBeforeBackoff = 1;\r\nvar MaxEventsLimitInMem = 10000;\r\nvar strEventsDiscarded = \"eventsDiscarded\";\r\nvar EMPTY_STR = \"\";\r\nvar undefValue = undefined;\r\n/**\r\n * The default settings for the config.\r\n * WE MUST include all defaults here to ensure that the config is created with all of the properties\r\n * defined as dynamic.\r\n */\r\nvar defaultPostChannelConfig = objDeepFreeze({\r\n eventsLimitInMem: { isVal: isGreaterThanZero, v: MaxEventsLimitInMem },\r\n immediateEventLimit: { isVal: isGreaterThanZero, v: 500 },\r\n autoFlushEventsLimit: { isVal: isGreaterThanZero, v: 0 },\r\n disableAutoBatchFlushLimit: false,\r\n httpXHROverride: { isVal: isOverrideFn, v: undefValue },\r\n overrideInstrumentationKey: undefValue,\r\n overrideEndpointUrl: undefValue,\r\n disableTelemetry: false,\r\n ignoreMc1Ms0CookieProcessing: false,\r\n setTimeoutOverride: undefValue,\r\n clearTimeoutOverride: undefValue,\r\n payloadPreprocessor: undefValue,\r\n payloadListener: undefValue,\r\n disableEventTimings: undefValue,\r\n valueSanitizer: undefValue,\r\n stringifyObjects: undefValue,\r\n enableCompoundKey: undefValue,\r\n disableOptimizeObj: false,\r\n // disableCacheHeader: undefValue, // See Task #7178858 - Collector requires a change to support this\r\n transports: undefValue,\r\n unloadTransports: undefValue,\r\n useSendBeacon: undefValue,\r\n disableFetchKeepAlive: undefValue,\r\n avoidOptions: false,\r\n xhrTimeout: undefValue,\r\n disableXhrSync: undefValue,\r\n alwaysUseXhrOverride: false,\r\n maxEventRetryAttempts: { isVal: isNumber, v: MaxSendAttempts },\r\n maxUnloadEventRetryAttempts: { isVal: isNumber, v: MaxSyncUnloadSendAttempts },\r\n addNoResponse: undefValue,\r\n excludeCsMetaData: undefValue\r\n});\r\nfunction isOverrideFn(httpXHROverride) {\r\n return httpXHROverride && httpXHROverride.sendPOST;\r\n}\r\n/**\r\n * Class that manages adding events to inbound queues and batching of events\r\n * into requests.\r\n * @group Classes\r\n * @group Entrypoint\r\n */\r\nvar PostChannel = /** @class */ (function (_super) {\r\n __extends(PostChannel, _super);\r\n function PostChannel() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = \"PostChannel\";\r\n _this.priority = 1011;\r\n _this.version = '4.2.1';\r\n var _postConfig;\r\n var _isTeardownCalled = false;\r\n var _flushCallbackQueue = [];\r\n var _flushCallbackTimer;\r\n var _paused = false;\r\n var _immediateQueueSize = 0;\r\n var _immediateQueueSizeLimit;\r\n var _queueSize = 0;\r\n var _queueSizeLimit;\r\n var _profiles = {};\r\n var _currentProfile = RT_PROFILE;\r\n var _scheduledTimer;\r\n var _immediateTimer;\r\n var _currentBackoffCount;\r\n var _timerCount;\r\n var _httpManager;\r\n var _batchQueues;\r\n var _autoFlushEventsLimit;\r\n // either MaxBatchSize * (1+ Max Connections) or _queueLimit / 6 (where 3 latency Queues [normal, realtime, cost deferred] * 2 [allow half full -- allow for retry])\r\n var _autoFlushBatchLimit;\r\n var _delayedBatchSendLatency;\r\n var _delayedBatchReason;\r\n var _optimizeObject;\r\n var _isPageUnloadTriggered;\r\n var _maxEventSendAttempts;\r\n var _maxUnloadEventSendAttempts;\r\n var _evtNamespace;\r\n var _timeoutWrapper;\r\n var _ignoreMc1Ms0CookieProcessing;\r\n var _disableAutoBatchFlushLimit;\r\n var _notificationManager;\r\n var _unloadHandlersAdded;\r\n var _overrideInstrumentationKey;\r\n var _disableTelemetry;\r\n dynamicProto(PostChannel, _this, function (_self, _base) {\r\n _initDefaults();\r\n // Special internal method to allow the DebugPlugin to hook embedded objects\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_httpManager, _postConfig];\r\n };\r\n _self[_DYN_INITIALIZE /* @min:%2einitialize */] = function (theConfig, core, extensions) {\r\n doPerf(core, function () { return \"PostChannel:initialize\"; }, function () {\r\n _base[_DYN_INITIALIZE /* @min:%2einitialize */](theConfig, core, extensions);\r\n _notificationManager = core.getNotifyMgr();\r\n try {\r\n _evtNamespace = mergeEvtNamespace(createUniqueNamespace(_self[_DYN_IDENTIFIER /* @min:%2eidentifier */]), core.evtNamespace && core.evtNamespace());\r\n _self._addHook(onConfigChange(theConfig, function (details) {\r\n var coreConfig = details.cfg;\r\n var ctx = createProcessTelemetryContext(null, coreConfig, core);\r\n _postConfig = ctx.getExtCfg(_self[_DYN_IDENTIFIER /* @min:%2eidentifier */], defaultPostChannelConfig);\r\n _timeoutWrapper = createTimeoutWrapper(_postConfig[_DYN_SET_TIMEOUT_OVERRIDE /* @min:%2esetTimeoutOverride */], _postConfig[_DYN_CLEAR_TIMEOUT_OVERRI3 /* @min:%2eclearTimeoutOverride */]);\r\n // Only try and use the optimizeObject() if this appears to be a chromium based browser and it has not been explicitly disabled\r\n _optimizeObject = !_postConfig[_DYN_DISABLE_OPTIMIZE_OBJ /* @min:%2edisableOptimizeObj */] && isChromium();\r\n _ignoreMc1Ms0CookieProcessing = _postConfig[_DYN_IGNORE_MC1_MS0_COOKI13 /* @min:%2eignoreMc1Ms0CookieProcessing */];\r\n _hookWParam(core); // _hookWParam uses _ignoreMc1Ms0CookieProcessing\r\n _queueSizeLimit = _postConfig[_DYN_EVENTS_LIMIT_IN_MEM /* @min:%2eeventsLimitInMem */];\r\n _immediateQueueSizeLimit = _postConfig.immediateEventLimit;\r\n _autoFlushEventsLimit = _postConfig[_DYN_AUTO_FLUSH_EVENTS_LI14 /* @min:%2eautoFlushEventsLimit */];\r\n _maxEventSendAttempts = _postConfig.maxEventRetryAttempts;\r\n _maxUnloadEventSendAttempts = _postConfig.maxUnloadEventRetryAttempts;\r\n _disableAutoBatchFlushLimit = _postConfig[_DYN_DISABLE_AUTO_BATCH_F15 /* @min:%2edisableAutoBatchFlushLimit */];\r\n _setAutoLimits();\r\n // Override iKey if provided in Post config if provided for during initialization\r\n _overrideInstrumentationKey = _postConfig[_DYN_OVERRIDE_INSTRUMENTA16 /* @min:%2eoverrideInstrumentationKey */];\r\n // DisableTelemetry was defined in the config provided during initialization\r\n _disableTelemetry = !!_postConfig[_DYN_DISABLE_TELEMETRY /* @min:%2edisableTelemetry */];\r\n if (_unloadHandlersAdded) {\r\n _removeUnloadHandlers();\r\n }\r\n var excludePageUnloadEvents = coreConfig.disablePageUnloadEvents || [];\r\n // When running in Web browsers try to send all telemetry if page is unloaded\r\n _unloadHandlersAdded = addPageUnloadEventListener(_handleUnloadEvents, excludePageUnloadEvents, _evtNamespace);\r\n _unloadHandlersAdded = addPageHideEventListener(_handleUnloadEvents, excludePageUnloadEvents, _evtNamespace) || _unloadHandlersAdded;\r\n _unloadHandlersAdded = addPageShowEventListener(_handleShowEvents, coreConfig.disablePageShowEvents, _evtNamespace) || _unloadHandlersAdded;\r\n }));\r\n // only initialize the manager once\r\n _httpManager[_DYN_INITIALIZE /* @min:%2einitialize */](theConfig, _self.core, _self);\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 }, function () { return ({ theConfig: theConfig, core: core, extensions: extensions }); });\r\n };\r\n _self.processTelemetry = function (ev, itemCtx) {\r\n setProcessTelemetryTimings(ev, _self[_DYN_IDENTIFIER /* @min:%2eidentifier */]);\r\n itemCtx = itemCtx || _self._getTelCtx(itemCtx);\r\n var event = ev;\r\n if (!_disableTelemetry && !_isTeardownCalled) {\r\n // Override iKey if provided in Post config if provided for during initialization\r\n if (_overrideInstrumentationKey) {\r\n event[_DYN_I_KEY /* @min:%2eiKey */] = _overrideInstrumentationKey;\r\n }\r\n _addEventToQueues(event, true);\r\n if (_isPageUnloadTriggered) {\r\n // Unload event has been received so we need to try and flush new events\r\n _releaseAllQueues(2 /* EventSendType.SendBeacon */, 2 /* SendRequestReason.Unload */);\r\n }\r\n else {\r\n _scheduleTimer();\r\n }\r\n }\r\n _self.processNext(event, itemCtx);\r\n };\r\n _self.getOfflineSupport = function () {\r\n try {\r\n var details_1 = _httpManager && _httpManager[_DYN_GET_OFFLINE_REQUEST_9 /* @min:%2egetOfflineRequestDetails */]();\r\n if (_httpManager) {\r\n return {\r\n getUrl: function () {\r\n if (details_1) {\r\n return details_1.url;\r\n }\r\n return null;\r\n },\r\n serialize: _serialize,\r\n batch: _batch,\r\n shouldProcess: function (evt) {\r\n return !_disableTelemetry;\r\n },\r\n createPayload: function (evt) {\r\n return null;\r\n },\r\n createOneDSPayload: function (evts) {\r\n if (_httpManager[_DYN_CREATE_ONE_DSPAYLOAD /* @min:%2ecreateOneDSPayload */]) {\r\n return _httpManager[_DYN_CREATE_ONE_DSPAYLOAD /* @min:%2ecreateOneDSPayload */](evts, _optimizeObject);\r\n }\r\n }\r\n };\r\n }\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return null;\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n _releaseAllQueues(2 /* EventSendType.SendBeacon */, 2 /* SendRequestReason.Unload */);\r\n _isTeardownCalled = true;\r\n _httpManager.teardown();\r\n _removeUnloadHandlers();\r\n // Just register to remove all events associated with this namespace\r\n _initDefaults();\r\n };\r\n function _removeUnloadHandlers() {\r\n removePageUnloadEventListener(null, _evtNamespace);\r\n removePageHideEventListener(null, _evtNamespace);\r\n removePageShowEventListener(null, _evtNamespace);\r\n }\r\n function _hookWParam(core) {\r\n var existingGetWParamMethod = core[_DYN_GET_WPARAM /* @min:%2egetWParam */];\r\n core[_DYN_GET_WPARAM /* @min:%2egetWParam */] = function () {\r\n var wparam = 0;\r\n if (_ignoreMc1Ms0CookieProcessing) {\r\n wparam = wparam | 2;\r\n }\r\n return wparam | existingGetWParamMethod.call(core);\r\n };\r\n }\r\n function _batch(arr) {\r\n var rlt = EMPTY_STR;\r\n if (arr && arr[_DYN_LENGTH /* @min:%2elength */]) {\r\n arrForEach(arr, function (item) {\r\n if (rlt) {\r\n rlt += \"\\n\";\r\n }\r\n rlt += item;\r\n });\r\n }\r\n return rlt;\r\n }\r\n function _serialize(event) {\r\n var rlt = EMPTY_STR;\r\n try {\r\n _cleanEvent(event);\r\n rlt = _httpManager[_DYN_SERIALIZE_OFFLINE_EV8 /* @min:%2eserializeOfflineEvt */](event);\r\n }\r\n catch (e) {\r\n // eslint-disable-next-line no-empty\r\n }\r\n return rlt;\r\n }\r\n // Moving event handlers out from the initialize closure so that any local variables can be garbage collected\r\n function _handleUnloadEvents(evt) {\r\n var theEvt = evt || getWindow().event; // IE 8 does not pass the event\r\n if (theEvt.type !== \"beforeunload\") {\r\n // Only set the unload trigger if not beforeunload event as beforeunload can be cancelled while the other events can't\r\n _isPageUnloadTriggered = true;\r\n _httpManager[_DYN_SET_UNLOADING /* @min:%2esetUnloading */](_isPageUnloadTriggered);\r\n }\r\n _releaseAllQueues(2 /* EventSendType.SendBeacon */, 2 /* SendRequestReason.Unload */);\r\n }\r\n function _handleShowEvents(evt) {\r\n // Handle the page becoming visible again\r\n _isPageUnloadTriggered = false;\r\n _httpManager[_DYN_SET_UNLOADING /* @min:%2esetUnloading */](_isPageUnloadTriggered);\r\n }\r\n function _cleanEvent(event) {\r\n if (event.ext && event.ext[STR_TRACE]) {\r\n delete (event.ext[STR_TRACE]);\r\n }\r\n if (event.ext && event.ext[STR_USER] && event.ext[STR_USER][\"id\"]) {\r\n delete (event.ext[STR_USER][\"id\"]);\r\n }\r\n // v8 performance optimization for iterating over the keys\r\n if (_optimizeObject) {\r\n event.ext = optimizeObject(event.ext);\r\n if (event[_DYN_BASE_DATA /* @min:%2ebaseData */]) {\r\n event[_DYN_BASE_DATA /* @min:%2ebaseData */] = optimizeObject(event[_DYN_BASE_DATA /* @min:%2ebaseData */]);\r\n }\r\n if (event[_DYN_DATA /* @min:%2edata */]) {\r\n event[_DYN_DATA /* @min:%2edata */] = optimizeObject(event[_DYN_DATA /* @min:%2edata */]);\r\n }\r\n }\r\n }\r\n function _addEventToQueues(event, append) {\r\n // If send attempt field is undefined we should set it to 0.\r\n if (!event[_DYN_SEND_ATTEMPT /* @min:%2esendAttempt */]) {\r\n event[_DYN_SEND_ATTEMPT /* @min:%2esendAttempt */] = 0;\r\n }\r\n // Add default latency\r\n if (!event[_DYN_LATENCY /* @min:%2elatency */]) {\r\n event[_DYN_LATENCY /* @min:%2elatency */] = 1 /* EventLatencyValue.Normal */;\r\n }\r\n _cleanEvent(event);\r\n if (event[_DYN_SYNC /* @min:%2esync */]) {\r\n // If the transmission is backed off then do not send synchronous events.\r\n // We will convert these events to Real time latency instead.\r\n if (_currentBackoffCount || _paused) {\r\n event[_DYN_LATENCY /* @min:%2elatency */] = 3 /* EventLatencyValue.RealTime */;\r\n event[_DYN_SYNC /* @min:%2esync */] = false;\r\n }\r\n else {\r\n // Log the event synchronously\r\n if (_httpManager) {\r\n // v8 performance optimization for iterating over the keys\r\n if (_optimizeObject) {\r\n event = optimizeObject(event);\r\n }\r\n _httpManager[_DYN_SEND_SYNCHRONOUS_BAT10 /* @min:%2esendSynchronousBatch */](EventBatch.create(event[_DYN_I_KEY /* @min:%2eiKey */], [event]), event[_DYN_SYNC /* @min:%2esync */] === true ? 1 /* EventSendType.Synchronous */ : event[_DYN_SYNC /* @min:%2esync */], 3 /* SendRequestReason.SyncEvent */);\r\n return;\r\n }\r\n }\r\n }\r\n var evtLatency = event[_DYN_LATENCY /* @min:%2elatency */];\r\n var queueSize = _queueSize;\r\n var queueLimit = _queueSizeLimit;\r\n if (evtLatency === 4 /* EventLatencyValue.Immediate */) {\r\n queueSize = _immediateQueueSize;\r\n queueLimit = _immediateQueueSizeLimit;\r\n }\r\n var eventDropped = false;\r\n // Only add the event if the queue isn't full or it's a direct event (which don't add to the queue sizes)\r\n if (queueSize < queueLimit) {\r\n eventDropped = !_addEventToProperQueue(event, append);\r\n }\r\n else {\r\n var dropLatency = 1 /* EventLatencyValue.Normal */;\r\n var dropNumber = EventsDroppedAtOneTime;\r\n if (evtLatency === 4 /* EventLatencyValue.Immediate */) {\r\n // Only drop other immediate events as they are not technically sharing the general queue\r\n dropLatency = 4 /* EventLatencyValue.Immediate */;\r\n dropNumber = 1;\r\n }\r\n // Drop old event from lower or equal latency\r\n eventDropped = true;\r\n if (_dropEventWithLatencyOrLess(event[_DYN_I_KEY /* @min:%2eiKey */], event[_DYN_LATENCY /* @min:%2elatency */], dropLatency, dropNumber)) {\r\n eventDropped = !_addEventToProperQueue(event, append);\r\n }\r\n }\r\n if (eventDropped) {\r\n // Can't drop events from current queues because the all the slots are taken by queues that are being flushed.\r\n _notifyEvents(strEventsDiscarded, [event], EventsDiscardedReason.QueueFull);\r\n }\r\n }\r\n _self.setEventQueueLimits = function (eventLimit, autoFlushLimit) {\r\n _postConfig[_DYN_EVENTS_LIMIT_IN_MEM /* @min:%2eeventsLimitInMem */] = _queueSizeLimit = isGreaterThanZero(eventLimit) ? eventLimit : MaxEventsLimitInMem;\r\n _postConfig[_DYN_AUTO_FLUSH_EVENTS_LI14 /* @min:%2eautoFlushEventsLimit */] = _autoFlushEventsLimit = isGreaterThanZero(autoFlushLimit) ? autoFlushLimit : 0;\r\n _setAutoLimits();\r\n // We only do this check here as during normal event addition if the queue is > then events start getting dropped\r\n var doFlush = _queueSize > eventLimit;\r\n if (!doFlush && _autoFlushBatchLimit > 0) {\r\n // Check the auto flush max batch size\r\n for (var latency = 1 /* EventLatencyValue.Normal */; !doFlush && latency <= 3 /* EventLatencyValue.RealTime */; latency++) {\r\n var batchQueue = _batchQueues[latency];\r\n if (batchQueue && batchQueue[_DYN_BATCHES /* @min:%2ebatches */]) {\r\n arrForEach(batchQueue[_DYN_BATCHES /* @min:%2ebatches */], function (theBatch) {\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() >= _autoFlushBatchLimit) {\r\n // If any 1 batch is > than the limit then trigger an auto flush\r\n doFlush = true;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n _performAutoFlush(true, doFlush);\r\n };\r\n _self.pause = function () {\r\n _clearScheduledTimer();\r\n _paused = true;\r\n _httpManager.pause();\r\n };\r\n _self.resume = function () {\r\n _paused = false;\r\n _httpManager.resume();\r\n _scheduleTimer();\r\n };\r\n _self._loadTransmitProfiles = function (profiles) {\r\n _resetTransmitProfiles();\r\n objForEachKey(profiles, function (profileName, profileValue) {\r\n var profLen = profileValue[_DYN_LENGTH /* @min:%2elength */];\r\n if (profLen >= 2) {\r\n var directValue = (profLen > 2 ? profileValue[2] : 0);\r\n profileValue[_DYN_SPLICE /* @min:%2esplice */](0, profLen - 2);\r\n // Make sure if a higher latency is set to not send then don't send lower latency\r\n if (profileValue[1] < 0) {\r\n profileValue[0] = -1;\r\n }\r\n // Make sure each latency is multiple of the latency higher then it. If not a multiple\r\n // we round up so that it becomes a multiple.\r\n if (profileValue[1] > 0 && profileValue[0] > 0) {\r\n var timerMultiplier = profileValue[0] / profileValue[1];\r\n profileValue[0] = Math.ceil(timerMultiplier) * profileValue[1];\r\n }\r\n // Add back the direct profile timeout\r\n if (directValue >= 0 && profileValue[1] >= 0 && directValue > profileValue[1]) {\r\n // Make sure if it's not disabled (< 0) then make sure it's not larger than RealTime\r\n directValue = profileValue[1];\r\n }\r\n profileValue[_DYN_PUSH /* @min:%2epush */](directValue);\r\n _profiles[profileName] = profileValue;\r\n }\r\n });\r\n };\r\n _self.flush = function (async, callback, sendReason) {\r\n if (async === void 0) { async = true; }\r\n var result;\r\n if (!_paused) {\r\n sendReason = sendReason || 1 /* SendRequestReason.ManualFlush */;\r\n if (async) {\r\n if (!callback) {\r\n result = createPromise(function (resolve) {\r\n // Set the callback to the promise resolve callback\r\n callback = resolve;\r\n });\r\n }\r\n if (_flushCallbackTimer == null) {\r\n // Clear the normal schedule timer as we are going to try and flush ASAP\r\n _clearScheduledTimer();\r\n // Move all queued events to the HttpManager so that we don't discard new events (Auto flush scenario)\r\n _queueBatches(1 /* EventLatencyValue.Normal */, 0 /* EventSendType.Batched */, sendReason);\r\n _flushCallbackTimer = _createTimer(function () {\r\n _flushCallbackTimer = null;\r\n _flushImpl(callback, sendReason);\r\n }, 0);\r\n }\r\n else {\r\n // Even if null (no callback) this will ensure after the flushImpl finishes waiting\r\n // for a completely idle connection it will attempt to re-flush any queued events on the next cycle\r\n _flushCallbackQueue[_DYN_PUSH /* @min:%2epush */](callback);\r\n }\r\n }\r\n else {\r\n // Clear the normal schedule timer as we are going to try and flush ASAP\r\n var cleared = _clearScheduledTimer();\r\n // Now cause all queued events to be sent synchronously\r\n _sendEventsForLatencyAndAbove(1 /* EventLatencyValue.Normal */, 1 /* EventSendType.Synchronous */, sendReason);\r\n callback && callback();\r\n if (cleared) {\r\n // restart the normal event timer if it was cleared\r\n _scheduleTimer();\r\n }\r\n }\r\n }\r\n return result;\r\n };\r\n _self.setMsaAuthTicket = function (ticket) {\r\n _httpManager[_DYN_ADD_HEADER /* @min:%2eaddHeader */](STR_MSA_DEVICE_TICKET, ticket);\r\n };\r\n _self.setAuthPluginHeader = function (token) {\r\n _httpManager[_DYN_ADD_HEADER /* @min:%2eaddHeader */](STR_AUTH_WEB_TOKEN, token);\r\n };\r\n _self.removeAuthPluginHeader = function () {\r\n _httpManager.removeHeader(STR_AUTH_WEB_TOKEN);\r\n };\r\n _self.hasEvents = _hasEvents;\r\n _self._setTransmitProfile = function (profileName) {\r\n if (_currentProfile !== profileName && _profiles[profileName] !== undefined) {\r\n _clearScheduledTimer();\r\n _currentProfile = profileName;\r\n _scheduleTimer();\r\n }\r\n };\r\n proxyFunctions(_self, function () { return _httpManager; }, [\"addResponseHandler\"]);\r\n /**\r\n * Batch and send events currently in the queue for the given latency.\r\n * @param latency - Latency for which to send events.\r\n */\r\n function _sendEventsForLatencyAndAbove(latency, sendType, sendReason) {\r\n var queued = _queueBatches(latency, sendType, sendReason);\r\n // Always trigger the request as while the post channel may not have queued additional events, the httpManager may already have waiting events\r\n _httpManager[_DYN_SEND_QUEUED_REQUESTS /* @min:%2esendQueuedRequests */](sendType, sendReason);\r\n return queued;\r\n }\r\n function _hasEvents() {\r\n return _queueSize > 0;\r\n }\r\n /**\r\n * Try to schedule the timer after which events will be sent. If there are\r\n * no events to be sent, or there is already a timer scheduled, or the\r\n * http manager doesn't have any idle connections this method is no-op.\r\n */\r\n function _scheduleTimer() {\r\n // If we had previously attempted to send requests, but the http manager didn't have any idle connections then the requests where delayed\r\n // so try and requeue then again now\r\n if (_delayedBatchSendLatency >= 0 && _queueBatches(_delayedBatchSendLatency, 0 /* EventSendType.Batched */, _delayedBatchReason)) {\r\n _httpManager[_DYN_SEND_QUEUED_REQUESTS /* @min:%2esendQueuedRequests */](0 /* EventSendType.Batched */, _delayedBatchReason);\r\n }\r\n if (_immediateQueueSize > 0 && !_immediateTimer && !_paused) {\r\n // During initialization _profiles enforce that the direct [2] is less than real time [1] timer value\r\n // If the immediateTimeout is disabled the immediate events will be sent with Real Time events\r\n var immediateTimeOut = _profiles[_currentProfile][2];\r\n if (immediateTimeOut >= 0) {\r\n _immediateTimer = _createTimer(function () {\r\n _immediateTimer = null;\r\n // Only try to send direct events\r\n _sendEventsForLatencyAndAbove(4 /* EventLatencyValue.Immediate */, 0 /* EventSendType.Batched */, 1 /* SendRequestReason.NormalSchedule */);\r\n _scheduleTimer();\r\n }, immediateTimeOut);\r\n }\r\n }\r\n // During initialization the _profiles enforce that the normal [0] is a multiple of the real time [1] timer value\r\n var timeOut = _profiles[_currentProfile][1];\r\n if (!_scheduledTimer && !_flushCallbackTimer && timeOut >= 0 && !_paused) {\r\n if (_hasEvents()) {\r\n _scheduledTimer = _createTimer(function () {\r\n _scheduledTimer = null;\r\n _sendEventsForLatencyAndAbove(_timerCount === 0 ? 3 /* EventLatencyValue.RealTime */ : 1 /* EventLatencyValue.Normal */, 0 /* EventSendType.Batched */, 1 /* SendRequestReason.NormalSchedule */);\r\n // Increment the count for next cycle\r\n _timerCount++;\r\n _timerCount %= 2;\r\n _scheduleTimer();\r\n }, timeOut);\r\n }\r\n else {\r\n _timerCount = 0;\r\n }\r\n }\r\n }\r\n _self[_DYN__BACK_OFF_TRANSMISSI12 /* @min:%2e_backOffTransmission */] = function () {\r\n if (_currentBackoffCount < MaxBackoffCount) {\r\n _currentBackoffCount++;\r\n _clearScheduledTimer();\r\n _scheduleTimer();\r\n }\r\n };\r\n _self._clearBackOff = function () {\r\n if (_currentBackoffCount) {\r\n _currentBackoffCount = 0;\r\n _clearScheduledTimer();\r\n _scheduleTimer();\r\n }\r\n };\r\n function _initDefaults() {\r\n _postConfig = null;\r\n _isTeardownCalled = false;\r\n _flushCallbackQueue = [];\r\n _flushCallbackTimer = null;\r\n _paused = false;\r\n _immediateQueueSize = 0;\r\n _immediateQueueSizeLimit = 500;\r\n _queueSize = 0;\r\n _queueSizeLimit = MaxEventsLimitInMem;\r\n _profiles = {};\r\n _currentProfile = RT_PROFILE;\r\n _scheduledTimer = null;\r\n _immediateTimer = null;\r\n _currentBackoffCount = 0;\r\n _timerCount = 0;\r\n _batchQueues = {};\r\n _autoFlushEventsLimit = 0;\r\n _unloadHandlersAdded = false;\r\n // either MaxBatchSize * (1+ Max Connections) or _queueLimit / 6 (where 3 latency Queues [normal, realtime, cost deferred] * 2 [allow half full -- allow for retry])\r\n _autoFlushBatchLimit = 0;\r\n _delayedBatchSendLatency = -1;\r\n _delayedBatchReason = null;\r\n _optimizeObject = true;\r\n _isPageUnloadTriggered = false;\r\n _maxEventSendAttempts = MaxSendAttempts;\r\n _maxUnloadEventSendAttempts = MaxSyncUnloadSendAttempts;\r\n _evtNamespace = null;\r\n _overrideInstrumentationKey = null;\r\n _disableTelemetry = false;\r\n _timeoutWrapper = createTimeoutWrapper();\r\n _httpManager = new HttpManager(MaxNumberEventPerBatch, MaxConnections, MaxRequestRetriesBeforeBackoff, {\r\n requeue: _requeueEvents,\r\n send: _sendingEvent,\r\n sent: _eventsSentEvent,\r\n drop: _eventsDropped,\r\n rspFail: _eventsResponseFail,\r\n oth: _otherEvent\r\n });\r\n _initializeProfiles();\r\n _clearQueues();\r\n _setAutoLimits();\r\n }\r\n function _createTimer(theTimerFunc, timeOut) {\r\n // If the transmission is backed off make the timer at least 1 sec to allow for back off.\r\n if (timeOut === 0 && _currentBackoffCount) {\r\n timeOut = 1;\r\n }\r\n var timerMultiplier = 1000;\r\n if (_currentBackoffCount) {\r\n timerMultiplier = retryPolicyGetMillisToBackoffForRetry(_currentBackoffCount - 1);\r\n }\r\n return _timeoutWrapper.set(theTimerFunc, timeOut * timerMultiplier);\r\n }\r\n function _clearScheduledTimer() {\r\n if (_scheduledTimer !== null) {\r\n _scheduledTimer.cancel();\r\n _scheduledTimer = null;\r\n _timerCount = 0;\r\n return true;\r\n }\r\n return false;\r\n }\r\n // Try to send all queued events using beacons if available\r\n function _releaseAllQueues(sendType, sendReason) {\r\n _clearScheduledTimer();\r\n // Cancel all flush callbacks\r\n if (_flushCallbackTimer) {\r\n _flushCallbackTimer.cancel();\r\n _flushCallbackTimer = null;\r\n }\r\n if (!_paused) {\r\n // Queue all the remaining requests to be sent. The requests will be sent using HTML5 Beacons if they are available.\r\n _sendEventsForLatencyAndAbove(1 /* EventLatencyValue.Normal */, sendType, sendReason);\r\n }\r\n }\r\n /**\r\n * Add empty queues for all latencies in the inbound queues map. This is called\r\n * when Transmission Manager is being flushed. This ensures that new events added\r\n * after flush are stored separately till we flush the current events.\r\n */\r\n function _clearQueues() {\r\n _batchQueues[4 /* EventLatencyValue.Immediate */] = {\r\n batches: [],\r\n iKeyMap: {}\r\n };\r\n _batchQueues[3 /* EventLatencyValue.RealTime */] = {\r\n batches: [],\r\n iKeyMap: {}\r\n };\r\n _batchQueues[2 /* EventLatencyValue.CostDeferred */] = {\r\n batches: [],\r\n iKeyMap: {}\r\n };\r\n _batchQueues[1 /* EventLatencyValue.Normal */] = {\r\n batches: [],\r\n iKeyMap: {}\r\n };\r\n }\r\n function _getEventBatch(iKey, latency, create) {\r\n var batchQueue = _batchQueues[latency];\r\n if (!batchQueue) {\r\n latency = 1 /* EventLatencyValue.Normal */;\r\n batchQueue = _batchQueues[latency];\r\n }\r\n var eventBatch = batchQueue.iKeyMap[iKey];\r\n if (!eventBatch && create) {\r\n eventBatch = EventBatch.create(iKey);\r\n batchQueue.batches[_DYN_PUSH /* @min:%2epush */](eventBatch);\r\n batchQueue.iKeyMap[iKey] = eventBatch;\r\n }\r\n return eventBatch;\r\n }\r\n function _performAutoFlush(isAsync, doFlush) {\r\n // Only perform the auto flush check if the httpManager has an idle connection and we are not in a backoff situation\r\n if (_httpManager[_DYN_CAN_SEND_REQUEST /* @min:%2ecanSendRequest */]() && !_currentBackoffCount) {\r\n if (_autoFlushEventsLimit > 0 && _queueSize > _autoFlushEventsLimit) {\r\n // Force flushing\r\n doFlush = true;\r\n }\r\n if (doFlush && _flushCallbackTimer == null) {\r\n // Auto flush the queue, adding a callback to avoid the creation of a promise\r\n _self.flush(isAsync, function () { }, 20 /* SendRequestReason.MaxQueuedEvents */);\r\n }\r\n }\r\n }\r\n function _addEventToProperQueue(event, append) {\r\n // v8 performance optimization for iterating over the keys\r\n if (_optimizeObject) {\r\n event = optimizeObject(event);\r\n }\r\n var latency = event[_DYN_LATENCY /* @min:%2elatency */];\r\n var eventBatch = _getEventBatch(event[_DYN_I_KEY /* @min:%2eiKey */], latency, true);\r\n if (eventBatch.addEvent(event)) {\r\n if (latency !== 4 /* EventLatencyValue.Immediate */) {\r\n _queueSize++;\r\n // Check for auto flushing based on total events in the queue, but not for requeued or retry events\r\n if (append && event[_DYN_SEND_ATTEMPT /* @min:%2esendAttempt */] === 0) {\r\n // Force the flushing of the batch if the batch (specific iKey / latency combination) reaches it's auto flush limit\r\n _performAutoFlush(!event.sync, _autoFlushBatchLimit > 0 && eventBatch[_DYN_COUNT /* @min:%2ecount */]() >= _autoFlushBatchLimit);\r\n }\r\n }\r\n else {\r\n // Direct events don't need auto flushing as they are scheduled (by default) for immediate delivery\r\n _immediateQueueSize++;\r\n }\r\n return true;\r\n }\r\n return false;\r\n }\r\n function _dropEventWithLatencyOrLess(iKey, latency, currentLatency, dropNumber) {\r\n while (currentLatency <= latency) {\r\n var eventBatch = _getEventBatch(iKey, latency, true);\r\n if (eventBatch && eventBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n // Dropped oldest events from lowest possible latency\r\n var droppedEvents = eventBatch[_DYN_SPLIT /* @min:%2esplit */](0, dropNumber);\r\n var droppedCount = droppedEvents[_DYN_COUNT /* @min:%2ecount */]();\r\n if (droppedCount > 0) {\r\n if (currentLatency === 4 /* EventLatencyValue.Immediate */) {\r\n _immediateQueueSize -= droppedCount;\r\n }\r\n else {\r\n _queueSize -= droppedCount;\r\n }\r\n _notifyBatchEvents(strEventsDiscarded, [droppedEvents], EventsDiscardedReason.QueueFull);\r\n return true;\r\n }\r\n }\r\n currentLatency++;\r\n }\r\n // Unable to drop any events -- lets just make sure the queue counts are correct to avoid exhaustion\r\n _resetQueueCounts();\r\n return false;\r\n }\r\n /**\r\n * Internal helper to reset the queue counts, used as a backstop to avoid future queue exhaustion errors\r\n * that might occur because of counting issues.\r\n */\r\n function _resetQueueCounts() {\r\n var immediateQueue = 0;\r\n var normalQueue = 0;\r\n var _loop_1 = function (latency) {\r\n var batchQueue = _batchQueues[latency];\r\n if (batchQueue && batchQueue[_DYN_BATCHES /* @min:%2ebatches */]) {\r\n arrForEach(batchQueue[_DYN_BATCHES /* @min:%2ebatches */], function (theBatch) {\r\n if (latency === 4 /* EventLatencyValue.Immediate */) {\r\n immediateQueue += theBatch[_DYN_COUNT /* @min:%2ecount */]();\r\n }\r\n else {\r\n normalQueue += theBatch[_DYN_COUNT /* @min:%2ecount */]();\r\n }\r\n });\r\n }\r\n };\r\n for (var latency = 1 /* EventLatencyValue.Normal */; latency <= 4 /* EventLatencyValue.Immediate */; latency++) {\r\n _loop_1(latency);\r\n }\r\n _queueSize = normalQueue;\r\n _immediateQueueSize = immediateQueue;\r\n }\r\n function _queueBatches(latency, sendType, sendReason) {\r\n var eventsQueued = false;\r\n var isAsync = sendType === 0 /* EventSendType.Batched */;\r\n // Only queue batches (to the HttpManager) if this is a sync request or the httpManager has an idle connection\r\n // Thus keeping the events within the PostChannel until the HttpManager has a connection available\r\n // This is so we can drop \"old\" events if the queue is getting full because we can't successfully send events\r\n if (!isAsync || _httpManager[_DYN_CAN_SEND_REQUEST /* @min:%2ecanSendRequest */]()) {\r\n doPerf(_self.core, function () { return \"PostChannel._queueBatches\"; }, function () {\r\n var droppedEvents = [];\r\n var latencyToProcess = 4 /* EventLatencyValue.Immediate */;\r\n while (latencyToProcess >= latency) {\r\n var batchQueue = _batchQueues[latencyToProcess];\r\n if (batchQueue && batchQueue.batches && batchQueue.batches[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(batchQueue[_DYN_BATCHES /* @min:%2ebatches */], function (theBatch) {\r\n // Add the batch to the http manager to send the requests\r\n if (!_httpManager.addBatch(theBatch)) {\r\n // The events from this iKey are being dropped (killed)\r\n droppedEvents = droppedEvents[_DYN_CONCAT /* @min:%2econcat */](theBatch[_DYN_EVENTS /* @min:%2eevents */]());\r\n }\r\n else {\r\n eventsQueued = eventsQueued || (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0);\r\n }\r\n if (latencyToProcess === 4 /* EventLatencyValue.Immediate */) {\r\n _immediateQueueSize -= theBatch[_DYN_COUNT /* @min:%2ecount */]();\r\n }\r\n else {\r\n _queueSize -= theBatch[_DYN_COUNT /* @min:%2ecount */]();\r\n }\r\n });\r\n // Remove all batches from this Queue\r\n batchQueue[_DYN_BATCHES /* @min:%2ebatches */] = [];\r\n batchQueue.iKeyMap = {};\r\n }\r\n latencyToProcess--;\r\n }\r\n if (droppedEvents[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _notifyEvents(strEventsDiscarded, droppedEvents, EventsDiscardedReason.KillSwitch);\r\n }\r\n if (eventsQueued && _delayedBatchSendLatency >= latency) {\r\n // We have queued events at the same level as the delayed values so clear the setting\r\n _delayedBatchSendLatency = -1;\r\n _delayedBatchReason = 0 /* SendRequestReason.Undefined */;\r\n }\r\n }, function () { return ({ latency: latency, sendType: sendType, sendReason: sendReason }); }, !isAsync);\r\n }\r\n else {\r\n // remember the min latency so that we can re-trigger later\r\n _delayedBatchSendLatency = _delayedBatchSendLatency >= 0 ? Math.min(_delayedBatchSendLatency, latency) : latency;\r\n _delayedBatchReason = Math.max(_delayedBatchReason, sendReason);\r\n }\r\n return eventsQueued;\r\n }\r\n /**\r\n * This is the callback method is called as part of the manual flushing process.\r\n * @param callback\r\n * @param sendReason\r\n */\r\n function _flushImpl(callback, sendReason) {\r\n // Add any additional queued events and cause all queued events to be sent asynchronously\r\n _sendEventsForLatencyAndAbove(1 /* EventLatencyValue.Normal */, 0 /* EventSendType.Batched */, sendReason);\r\n // All events (should) have been queue -- lets just make sure the queue counts are correct to avoid queue exhaustion (previous bug #9685112)\r\n _resetQueueCounts();\r\n _waitForIdleManager(function () {\r\n // Only called AFTER the httpManager does not have any outstanding requests\r\n if (callback) {\r\n callback();\r\n }\r\n if (_flushCallbackQueue[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _flushCallbackTimer = _createTimer(function () {\r\n _flushCallbackTimer = null;\r\n _flushImpl(_flushCallbackQueue.shift(), sendReason);\r\n }, 0);\r\n }\r\n else {\r\n // No more flush requests\r\n _flushCallbackTimer = null;\r\n // Restart the normal timer schedule\r\n _scheduleTimer();\r\n }\r\n });\r\n }\r\n function _waitForIdleManager(callback) {\r\n if (_httpManager[_DYN_IS_COMPLETELY_IDLE /* @min:%2eisCompletelyIdle */]()) {\r\n callback();\r\n }\r\n else {\r\n _flushCallbackTimer = _createTimer(function () {\r\n _flushCallbackTimer = null;\r\n _waitForIdleManager(callback);\r\n }, FlushCheckTimer);\r\n }\r\n }\r\n /**\r\n * Resets the transmit profiles to the default profiles of Real Time, Near Real Time\r\n * and Best Effort. This removes all the custom profiles that were loaded.\r\n */\r\n function _resetTransmitProfiles() {\r\n _clearScheduledTimer();\r\n _initializeProfiles();\r\n _currentProfile = RT_PROFILE;\r\n _scheduleTimer();\r\n }\r\n function _initializeProfiles() {\r\n _profiles = {};\r\n _profiles[RT_PROFILE] = [2, 1, 0];\r\n _profiles[NRT_PROFILE] = [6, 3, 0];\r\n _profiles[BE_PROFILE] = [18, 9, 0];\r\n }\r\n /**\r\n * The notification handler for requeue events\r\n * @ignore\r\n */\r\n function _requeueEvents(batches, reason) {\r\n var droppedEvents = [];\r\n var maxSendAttempts = _maxEventSendAttempts;\r\n if (_isPageUnloadTriggered) {\r\n // If a page unlaod has been triggered reduce the number of times we try to \"retry\"\r\n maxSendAttempts = _maxUnloadEventSendAttempts;\r\n }\r\n arrForEach(batches, function (theBatch) {\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n arrForEach(theBatch[_DYN_EVENTS /* @min:%2eevents */](), function (theEvent) {\r\n if (theEvent) {\r\n // Check if the request being added back is for a sync event in which case mark it no longer a sync event\r\n if (theEvent[_DYN_SYNC /* @min:%2esync */]) {\r\n theEvent[_DYN_LATENCY /* @min:%2elatency */] = 4 /* EventLatencyValue.Immediate */;\r\n theEvent[_DYN_SYNC /* @min:%2esync */] = false;\r\n }\r\n if (theEvent[_DYN_SEND_ATTEMPT /* @min:%2esendAttempt */] < maxSendAttempts) {\r\n // Reset the event timings\r\n setProcessTelemetryTimings(theEvent, _self[_DYN_IDENTIFIER /* @min:%2eidentifier */]);\r\n _addEventToQueues(theEvent, false);\r\n }\r\n else {\r\n droppedEvents[_DYN_PUSH /* @min:%2epush */](theEvent);\r\n }\r\n }\r\n });\r\n }\r\n });\r\n if (droppedEvents[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _notifyEvents(strEventsDiscarded, droppedEvents, EventsDiscardedReason.NonRetryableStatus);\r\n }\r\n if (_isPageUnloadTriggered) {\r\n // Unload event has been received so we need to try and flush new events\r\n _releaseAllQueues(2 /* EventSendType.SendBeacon */, 2 /* SendRequestReason.Unload */);\r\n }\r\n }\r\n function _callNotification(evtName, theArgs) {\r\n var manager = (_notificationManager || {});\r\n var notifyFunc = manager[evtName];\r\n if (notifyFunc) {\r\n try {\r\n notifyFunc.apply(manager, theArgs);\r\n }\r\n catch (e) {\r\n _throwInternal(_self.diagLog(), 1 /* eLoggingSeverity.CRITICAL */, 74 /* _eInternalMessageId.NotificationException */, evtName + \" notification failed: \" + e);\r\n }\r\n }\r\n }\r\n function _notifyEvents(evtName, theEvents) {\r\n var extraArgs = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n extraArgs[_i - 2] = arguments[_i];\r\n }\r\n if (theEvents && theEvents[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _callNotification(evtName, [theEvents][_DYN_CONCAT /* @min:%2econcat */](extraArgs));\r\n }\r\n }\r\n function _notifyBatchEvents(evtName, batches) {\r\n var extraArgs = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n extraArgs[_i - 2] = arguments[_i];\r\n }\r\n if (batches && batches[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n arrForEach(batches, function (theBatch) {\r\n if (theBatch && theBatch[_DYN_COUNT /* @min:%2ecount */]() > 0) {\r\n _callNotification(evtName, [theBatch.events()][_DYN_CONCAT /* @min:%2econcat */](extraArgs));\r\n }\r\n });\r\n }\r\n }\r\n /**\r\n * The notification handler for when batches are about to be sent\r\n * @ignore\r\n */\r\n function _sendingEvent(batches, reason, isSyncRequest) {\r\n if (batches && batches[_DYN_LENGTH /* @min:%2elength */] > 0) {\r\n _callNotification(\"eventsSendRequest\", [(reason >= 1000 /* EventBatchNotificationReason.SendingUndefined */ && reason <= 1999 /* EventBatchNotificationReason.SendingEventMax */ ?\r\n reason - 1000 /* EventBatchNotificationReason.SendingUndefined */ :\r\n 0 /* SendRequestReason.Undefined */), isSyncRequest !== true]);\r\n }\r\n }\r\n /**\r\n * This event represents that a batch of events have been successfully sent and a response received\r\n * @param batches The notification handler for when the batches have been successfully sent\r\n * @param reason For this event the reason will always be EventBatchNotificationReason.Complete\r\n */\r\n function _eventsSentEvent(batches, reason) {\r\n _notifyBatchEvents(\"eventsSent\", batches, reason);\r\n // Try and schedule the processing timer if we have events\r\n _scheduleTimer();\r\n }\r\n function _eventsDropped(batches, reason) {\r\n _notifyBatchEvents(strEventsDiscarded, batches, (reason >= 8000 /* EventBatchNotificationReason.EventsDropped */ && reason <= 8999 /* EventBatchNotificationReason.EventsDroppedMax */ ?\r\n reason - 8000 /* EventBatchNotificationReason.EventsDropped */ :\r\n EventsDiscardedReason.Unknown));\r\n }\r\n function _eventsResponseFail(batches) {\r\n _notifyBatchEvents(strEventsDiscarded, batches, EventsDiscardedReason.NonRetryableStatus);\r\n // Try and schedule the processing timer if we have events\r\n _scheduleTimer();\r\n }\r\n function _otherEvent(batches, reason) {\r\n _notifyBatchEvents(strEventsDiscarded, batches, EventsDiscardedReason.Unknown);\r\n // Try and schedule the processing timer if we have events\r\n _scheduleTimer();\r\n }\r\n function _setAutoLimits() {\r\n if (!_disableAutoBatchFlushLimit) {\r\n _autoFlushBatchLimit = Math.max(MaxNumberEventPerBatch * (MaxConnections + 1), _queueSizeLimit / 6);\r\n }\r\n else {\r\n _autoFlushBatchLimit = 0;\r\n }\r\n }\r\n });\r\n return _this;\r\n }\r\n// Removed Stub for PostChannel.prototype.initialize.\r\n// Removed Stub for PostChannel.prototype.processTelemetry.\r\n// Removed Stub for PostChannel.prototype.setEventQueueLimits.\r\n// Removed Stub for PostChannel.prototype.pause.\r\n// Removed Stub for PostChannel.prototype.resume.\r\n// Removed Stub for PostChannel.prototype.addResponseHandler.\r\n// Removed Stub for PostChannel.prototype.flush.\r\n// Removed Stub for PostChannel.prototype.setMsaAuthTicket.\r\n// Removed Stub for PostChannel.prototype.setAuthPluginHeader.\r\n// Removed Stub for PostChannel.prototype.removeAuthPluginHeader.\r\n// Removed Stub for PostChannel.prototype.hasEvents.\r\n// Removed Stub for PostChannel.prototype._loadTransmitProfiles.\r\n// Removed Stub for PostChannel.prototype._setTransmitProfile.\r\n// Removed Stub for PostChannel.prototype._backOffTransmission.\r\n// Removed Stub for PostChannel.prototype._clearBackOff.\r\n// Removed Stub for PostChannel.prototype.getOfflineSupport.\r\n // This is a workaround for an IE bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n PostChannel.__ieDyn=1;\n\n return PostChannel;\r\n}(BaseTelemetryPlugin));\r\nexport { PostChannel };\r\n//# sourceMappingURL=PostChannel.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Utils.ts\r\n* @author Abhilash Panwar (abpanwar) Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2018\r\n* File containing utility functions.\r\n*/\r\nimport { getGlobal, isFunction, _throwInternal } from \"@microsoft/1ds-core-js\";\r\nvar _canUseLocalStorage;\r\n/**\r\n * Check if the browser supports local storage.\r\n *\r\n * @returns {boolean} True if local storage is supported.\r\n */\r\nexport function canUseLocalStorage() {\r\n if (_canUseLocalStorage === undefined) {\r\n _canUseLocalStorage = !!_getVerifiedStorageObject(0 /* StorageType.LocalStorage */);\r\n }\r\n return _canUseLocalStorage;\r\n}\r\n/**\r\n* Gets the localStorage object if available\r\n* @returns Returns the storage object if available else returns null\r\n*/\r\nfunction _getLocalStorageObject() {\r\n if (canUseLocalStorage()) {\r\n return _getVerifiedStorageObject(0 /* StorageType.LocalStorage */);\r\n }\r\n return null;\r\n}\r\n/**\r\n * Tests storage object (localStorage or sessionStorage) to verify that it is usable\r\n * More details here: https://mathiasbynens.be/notes/localstorage-pattern\r\n * @param storageType - Type of storage\r\n * @returns Returns storage object verified that it is usable\r\n */\r\nfunction _getVerifiedStorageObject(storageType) {\r\n var storage = null;\r\n var fail;\r\n var uid;\r\n try {\r\n var global_1 = getGlobal();\r\n if (!global_1) {\r\n return null;\r\n }\r\n uid = new Date();\r\n storage = storageType === 0 /* StorageType.LocalStorage */ ? global_1.localStorage : global_1.sessionStorage;\r\n if (storage && isFunction(storage.setItem)) {\r\n storage.setItem(uid, uid);\r\n fail = storage.getItem(uid) !== uid;\r\n storage.removeItem(uid);\r\n if (fail) {\r\n storage = null;\r\n }\r\n }\r\n }\r\n catch (exception) {\r\n storage = null;\r\n }\r\n return storage;\r\n}\r\n/**\r\n * Set the contents of an object in the browser's local storage\r\n *\r\n * @param name - the name of the object to set in storage\r\n * @param data - the contents of the object to set in storage\r\n * @returns True if the storage object could be written.\r\n */\r\nexport function setStorage(logger, name, data) {\r\n var storage = _getLocalStorageObject();\r\n if (storage !== null) {\r\n try {\r\n storage.setItem(name, data);\r\n return true;\r\n }\r\n catch (e) {\r\n _canUseLocalStorage = false;\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 504 /* _eExtendedInternalMessageId.BrowserCannotWriteLocalStorage */, \"Browser failed write to local storage. \" + e);\r\n }\r\n }\r\n return false;\r\n}\r\n/**\r\n * Get an object from the browser's local storage\r\n *\r\n * @param name - the name of the object to get from storage\r\n * @returns The contents of the storage object with the given name. Null if storage is not supported.\r\n */\r\nexport function getStorage(logger, name) {\r\n var storage = _getLocalStorageObject();\r\n if (storage !== null) {\r\n try {\r\n return storage.getItem(name);\r\n }\r\n catch (e) {\r\n _canUseLocalStorage = false;\r\n _throwInternal(logger, 1 /* eLoggingSeverity.CRITICAL */, 503 /* _eExtendedInternalMessageId.BrowserCannotReadLocalStorage */, \"Browser failed read of local storage. \" + e);\r\n }\r\n }\r\n return null;\r\n}\r\n//# sourceMappingURL=Utils.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* TelemetryContext.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\n// @skip-file-minify - Skip attempting to minify this file\r\nimport { createValueMap } from \"@microsoft/applicationinsights-core-js\";\r\nimport { STR_BROWSER, STR_BROWSER_VER, STR_DEVICE, STR_EVENT_FLAGS, STR_LOCALE, STR_NAME, STR_POP_SAMPLE, STR_SERVICE_NAME, STR_VER } from \"./InternalConstants\";\r\nexport var Extensions = createValueMap({\r\n UserExt: [0 /* eExtensions.UserExt */, \"user\"],\r\n DeviceExt: [1 /* eExtensions.DeviceExt */, STR_DEVICE],\r\n TraceExt: [2 /* eExtensions.TraceExt */, \"trace\"],\r\n WebExt: [3 /* eExtensions.WebExt */, \"web\"],\r\n AppExt: [4 /* eExtensions.AppExt */, \"app\"],\r\n OSExt: [5 /* eExtensions.OSExt */, \"os\"],\r\n SdkExt: [6 /* eExtensions.SdkExt */, \"sdk\"],\r\n IntWebExt: [7 /* eExtensions.IntWebExt */, \"intweb\"],\r\n UtcExt: [8 /* eExtensions.UtcExt */, \"utc\"],\r\n LocExt: [9 /* eExtensions.LocExt */, \"loc\"],\r\n CloudExt: [10 /* eExtensions.CloudExt */, \"cloud\"],\r\n DtExt: [11 /* eExtensions.DtExt */, \"dt\"]\r\n});\r\nexport var AppExtensionKeys = createValueMap({\r\n id: [0 /* eAppExtensionKeys.id */, \"id\"],\r\n ver: [1 /* eAppExtensionKeys.ver */, STR_VER],\r\n appName: [2 /* eAppExtensionKeys.appName */, STR_NAME],\r\n locale: [3 /* eAppExtensionKeys.locale */, STR_LOCALE],\r\n expId: [4 /* eAppExtensionKeys.expId */, \"expId\"],\r\n env: [5 /* eAppExtensionKeys.env */, \"env\"]\r\n});\r\nexport var WebExtensionKeys = createValueMap({\r\n domain: [0 /* eWebExtensionKeys.domain */, \"domain\"],\r\n browser: [1 /* eWebExtensionKeys.browser */, STR_BROWSER],\r\n browserVer: [2 /* eWebExtensionKeys.browserVer */, STR_BROWSER_VER],\r\n screenRes: [3 /* eWebExtensionKeys.screenRes */, \"screenRes\"],\r\n userConsent: [4 /* eWebExtensionKeys.userConsent */, \"userConsent\"],\r\n consentDetails: [5 /* eWebExtensionKeys.consentDetails */, \"consentDetails\"]\r\n});\r\nexport var UserExtensionKeys = createValueMap({\r\n locale: [0 /* eUserExtensionKeys.locale */, STR_LOCALE],\r\n localId: [1 /* eUserExtensionKeys.localId */, \"localId\"],\r\n id: [2 /* eUserExtensionKeys.id */, \"id\"]\r\n});\r\nexport var OSExtKeys = createValueMap({\r\n osName: [0 /* eOSExtKeys.osName */, STR_NAME],\r\n ver: [1 /* eOSExtKeys.ver */, STR_VER]\r\n});\r\nexport var SDKExtKeys = createValueMap({\r\n ver: [0 /* eSDKExtKeys.ver */, STR_VER],\r\n seq: [1 /* eSDKExtKeys.seq */, \"seq\"],\r\n installId: [2 /* eSDKExtKeys.installId */, \"installId\"],\r\n epoch: [3 /* eSDKExtKeys.epoch */, \"epoch\"]\r\n});\r\nexport var IntWebExtKeys = createValueMap({\r\n msfpc: [0 /* eIntWebExtKeys.msfpc */, \"msfpc\"],\r\n anid: [1 /* eIntWebExtKeys.anid */, \"anid\"],\r\n serviceName: [2 /* eIntWebExtKeys.serviceName */, STR_SERVICE_NAME]\r\n});\r\nexport var UtcExtKeys = createValueMap({\r\n popSample: [0 /* eUtcExtKeys.popSample */, STR_POP_SAMPLE],\r\n eventFlags: [1 /* eUtcExtKeys.eventFlags */, STR_EVENT_FLAGS]\r\n});\r\nexport var LocExtKeys = createValueMap({\r\n tz: [0 /* eLocExtKeys.tz */, \"tz\"]\r\n});\r\nexport var SessionExtKeys = createValueMap({\r\n sessionId: [0 /* eSessionExtKeys.sessionId */, \"sesId\"]\r\n});\r\nexport var DeviceExtKeys = createValueMap({\r\n localId: [0 /* eDeviceExtKeys.localId */, \"localId\"],\r\n deviceClass: [1 /* eDeviceExtKeys.deviceClass */, \"deviceClass\"],\r\n make: [2 /* eDeviceExtKeys.make */, \"make\"],\r\n model: [3 /* eDeviceExtKeys.model */, \"model\"]\r\n});\r\nexport var CloudExtKeys = createValueMap({\r\n role: [0 /* eCloudExtKeys.role */, \"role\"],\r\n roleInstance: [1 /* eCloudExtKeys.roleInstance */, \"roleInstance\"],\r\n roleVer: [2 /* eCloudExtKeys.roleVer */, \"roleVer\"]\r\n});\r\nexport var TraceExtKeys = createValueMap({\r\n traceId: [0 /* eTraceExtKeys.traceId */, \"traceID\"],\r\n traceName: [1 /* eTraceExtKeys.traceName */, STR_NAME],\r\n parentId: [2 /* eTraceExtKeys.parentId */, \"parentID\"]\r\n});\r\nexport var DistributedTraceExtKeys = createValueMap({\r\n traceId: [0 /* eDistributedTraceExtKeys.traceId */, \"traceId\"],\r\n spanId: [1 /* eDistributedTraceExtKeys.spanId */, \"spanId\"],\r\n traceFlags: [2 /* eDistributedTraceExtKeys.traceFlags */, \"traceFlags\"]\r\n});\r\n//# sourceMappingURL=ExtensionKeys.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n\r\n// Licensed under the MIT License.\r\nimport { strShimPrototype } from \"@microsoft/applicationinsights-shims\";\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nexport var STR_DEVICE = \"device\";\r\nexport var STR_LOCALE = \"locale\";\r\nexport var STR_VER = \"ver\";\r\nexport var STR_BROWSER = \"browser\";\r\nexport var STR_BROWSER_VER = \"browserVer\";\r\nexport var STR_POP_SAMPLE = \"popSample\";\r\nexport var STR_EVENT_FLAGS = \"eventFlags\";\r\nexport var STR_NAME = \"name\";\r\nexport var STR_SERVICE_NAME = \"serviceName\";\r\nexport var STR_LENGTH = \"length\";\r\nexport var STR_SESSION_EXPIRATION_MS = \"sessionExpirationMs\";\r\nexport var STR_SESSION_RENEWAL_MS = \"sessionRenewalMs\";\r\nexport var STR_USER_AGENT = \"userAgent\";\r\nexport var STR_USER_AGENT_DATA = \"userAgentData\";\r\nexport var STR_NAME_PREFIX = \"namePrefix\";\r\nexport var STR_PROTOTYPE = strShimPrototype;\r\n//# sourceMappingURL=InternalConstants.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Session.ts\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { isString } from \"@microsoft/1ds-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nfunction _getId() {\r\n return this.getId();\r\n}\r\nfunction _setId(id) {\r\n this.setId(id);\r\n}\r\nvar Session = /** @class */ (function () {\r\n function Session() {\r\n dynamicProto(Session, this, function (_self) {\r\n _self.setId = function (id) {\r\n _self.customId = id;\r\n };\r\n _self.getId = function () {\r\n if (isString(_self.customId)) {\r\n return _self.customId;\r\n }\r\n else {\r\n return _self.automaticId;\r\n }\r\n };\r\n });\r\n }\r\n// Removed Stub for Session.prototype.setId.\r\n// Removed Stub for Session.prototype.getId.\r\n /**\r\n * Static constructor, attempt to create accessors\r\n */\r\n Session._staticInit = (function () {\r\n // Dynamically create get/set property accessors\r\n objDefine(Session.prototype, \"id\", { g: _getId, s: _setId }); // change this\r\n })();\r\n return Session;\r\n}());\r\nexport { Session };\r\n//# sourceMappingURL=Session.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* SessionManager.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { _throwInternal, createGuid, isBoolean, isFunction, isUndefined, newId, onConfigChange, safeGetCookieMgr, safeGetLogger } from \"@microsoft/1ds-core-js\";\r\nimport { canUseLocalStorage, getStorage, setStorage } from \"./Utils\";\r\nimport { Session } from \"./context/Session\";\r\nvar cookieNameConst = \"ai_session\";\r\nvar SessionManager = /** @class */ (function () {\r\n function SessionManager(core, propConfig, unloadHookContainer) {\r\n var _cookieUpdatedTimestamp;\r\n var _logger = safeGetLogger(core);\r\n var cookieMgr = safeGetCookieMgr(core);\r\n var _storageNamePrefix;\r\n var _config;\r\n dynamicProto(SessionManager, this, function (_self) {\r\n var unloadHook = onConfigChange(propConfig, function () {\r\n _config = propConfig;\r\n _self.config = _config;\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n _storageNamePrefix = function () { return _self.config.namePrefix ? cookieNameConst + _self.config.namePrefix : cookieNameConst; };\r\n _self.automaticSession = new Session();\r\n _self.update = function () {\r\n if (!_self.automaticSession.getId()) {\r\n _initializeAutomaticSession();\r\n }\r\n var autoSession = _self.automaticSession;\r\n var config = _self.config;\r\n var now = new Date().getTime();\r\n var acquisitionExpired = now - autoSession.acquisitionDate > config.sessionExpirationMs;\r\n var renewalExpired = now - autoSession.renewalDate > config.sessionRenewalMs;\r\n // renew if acquisitionSpan or renewalSpan has ellapsed\r\n if (acquisitionExpired || renewalExpired) {\r\n // update automaticSession so session state has correct id\r\n _renew();\r\n }\r\n else {\r\n // do not update the cookie more often than cookieUpdateInterval\r\n var cookieUpdatedTimestamp = _cookieUpdatedTimestamp;\r\n if (!cookieUpdatedTimestamp || now - cookieUpdatedTimestamp > SessionManager.cookieUpdateInterval) {\r\n autoSession.renewalDate = now;\r\n _setCookie(autoSession.getId(), autoSession.acquisitionDate, autoSession.renewalDate);\r\n }\r\n }\r\n };\r\n _self.backup = function () {\r\n var automaticSession = _self.automaticSession;\r\n _setStorage(automaticSession.getId(), automaticSession.acquisitionDate, automaticSession.renewalDate);\r\n };\r\n /**\r\n * @ignore\r\n * Use config.namePrefix + ai_session cookie data or local storage data (when the cookie is unavailable) to\r\n * initialize the automatic session.\r\n */\r\n function _initializeAutomaticSession() {\r\n var cookie = cookieMgr.get(_storageNamePrefix());\r\n if (cookie && isFunction(cookie.split)) {\r\n _initializeAutomaticSessionWithData(cookie);\r\n }\r\n else {\r\n // There's no cookie, but we might have session data in local storage\r\n // This can happen if the session expired or the user actively deleted the cookie\r\n // We only want to recover data if the cookie is missing from expiry. We should respect the user's wishes if the cookie was deleted actively.\r\n // The User class handles this for us and deletes our local storage object if the persistent user cookie was removed.\r\n var storage = getStorage(_logger, _storageNamePrefix());\r\n if (storage) {\r\n _initializeAutomaticSessionWithData(storage);\r\n }\r\n }\r\n if (!_self.automaticSession.getId()) {\r\n _renew();\r\n }\r\n }\r\n /**\r\n * @ignore\r\n * Extract id, aquisitionDate, and renewalDate from an ai_session payload string and\r\n * use this data to initialize automaticSession.\r\n *\r\n * @param sessionData - The string stored in an ai_session cookie or local storage backup\r\n */\r\n function _initializeAutomaticSessionWithData(sessionData) {\r\n var automaticSession = _self.automaticSession;\r\n var params = sessionData.split(\"|\");\r\n if (params.length > 0) {\r\n automaticSession.setId(params[0]);\r\n }\r\n try {\r\n if (params.length > 1) {\r\n var acq = +params[1];\r\n automaticSession.acquisitionDate = +new Date(acq);\r\n automaticSession.acquisitionDate = automaticSession.acquisitionDate > 0 ? automaticSession.acquisitionDate : 0;\r\n }\r\n if (params.length > 2) {\r\n var renewal = +params[2];\r\n automaticSession.renewalDate = +new Date(renewal);\r\n automaticSession.renewalDate = automaticSession.renewalDate > 0 ? automaticSession.renewalDate : 0;\r\n }\r\n }\r\n catch (e) {\r\n _throwInternal(_logger, 1 /* eLoggingSeverity.CRITICAL */, 510 /* _eExtendedInternalMessageId.ErrorParsingAISessionCookie */, \"Error parsing ai_session cookie, session will be reset: \" + e);\r\n }\r\n if (automaticSession.renewalDate === 0) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 517 /* _eExtendedInternalMessageId.SessionRenewalDateIsZero */, \"AI session renewal date is 0, session will be reset.\");\r\n }\r\n }\r\n function _renew() {\r\n var automaticSession = _self.automaticSession;\r\n var now = new Date().getTime();\r\n var sessionAsGuid = _self.config.sessionAsGuid;\r\n if (!isUndefined(sessionAsGuid) && sessionAsGuid) {\r\n if (!isBoolean(sessionAsGuid)) {\r\n automaticSession.setId(createGuid(sessionAsGuid));\r\n }\r\n else {\r\n automaticSession.setId(createGuid());\r\n }\r\n }\r\n else {\r\n automaticSession.setId(newId(_config.idLength || 22));\r\n }\r\n automaticSession.acquisitionDate = now;\r\n automaticSession.renewalDate = now;\r\n _setCookie(automaticSession.getId(), automaticSession.acquisitionDate, automaticSession.renewalDate);\r\n // If this browser does not support local storage, fire an internal log to keep track of it at this point\r\n if (!canUseLocalStorage()) {\r\n _throwInternal(_logger, 2 /* eLoggingSeverity.WARNING */, 505 /* _eExtendedInternalMessageId.BrowserDoesNotSupportLocalStorage */, \"Browser does not support local storage. Session durations will be inaccurate.\");\r\n }\r\n }\r\n function _setCookie(guid, acq, renewal) {\r\n // Set cookie to expire after the session expiry time passes or the session renewal deadline, whichever is sooner\r\n // Expiring the cookie will cause the session to expire even if the user isn't on the page\r\n var acquisitionExpiry = acq + _self.config.sessionExpirationMs;\r\n var renewalExpiry = renewal + _self.config.sessionRenewalMs;\r\n var cookieExpiry = new Date();\r\n var cookie = [guid, acq, renewal];\r\n if (acquisitionExpiry < renewalExpiry) {\r\n cookieExpiry.setTime(acquisitionExpiry);\r\n }\r\n else {\r\n cookieExpiry.setTime(renewalExpiry);\r\n }\r\n var cookieDomain = _self.config.cookieDomain || null;\r\n cookieMgr.set(_storageNamePrefix(), cookie.join(\"|\") + \";expires=\" + cookieExpiry.toUTCString(), null, cookieDomain);\r\n _cookieUpdatedTimestamp = new Date().getTime();\r\n }\r\n function _setStorage(guid, acq, renewal) {\r\n // Keep data in local storage to retain the last session id, allowing us to cleanly end the session when it expires\r\n // Browsers that don't support local storage won't be able to end sessions cleanly from the client\r\n // The server will notice this and end the sessions itself, with loss of accurate session duration\r\n setStorage(_logger, _storageNamePrefix(), [guid, acq, renewal].join(\"|\"));\r\n }\r\n });\r\n }\r\n// Removed Stub for SessionManager.prototype.update.\r\n// Removed Stub for SessionManager.prototype.backup.\r\n SessionManager.cookieUpdateInterval = 60000; // 1 minute in ms\r\n return SessionManager;\r\n}());\r\nexport { SessionManager };\r\n//# sourceMappingURL=SessionManager.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Application.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { getCookieValue, getDocument, hasDocument, onConfigChange } from \"@microsoft/1ds-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nexport var defaultFlightIdNameSpaces = [\r\n \"AX\",\r\n \"EX\",\r\n \"SF\",\r\n \"CS\",\r\n \"CF\",\r\n \"CT\",\r\n \"CU\",\r\n \"DC\",\r\n \"DF\",\r\n \"H5\",\r\n \"HL\",\r\n \"WS\",\r\n \"WP\" // WINDOWSPHONE\r\n];\r\n/// Validate each flight id in appExpId against the app flight ID\r\n/// format and create a comma seperated appExpId with valid flight ids.Ignore invalid flight IDs< /summary>\r\n/// A list of comma seperated appExpId\r\n/// none\r\nfunction _validateAppExpId(appExpIdNew, flightIdNameSpaces) {\r\n if (flightIdNameSpaces === void 0) { flightIdNameSpaces = defaultFlightIdNameSpaces; }\r\n var appExpId = null;\r\n if (appExpIdNew) {\r\n var expIdArray = appExpIdNew.split(\",\");\r\n for (var i = 0; i < expIdArray.length; i++) {\r\n if (_isValidAppFlightId(expIdArray[i], flightIdNameSpaces)) {\r\n if (!appExpId) {\r\n appExpId = expIdArray[i];\r\n }\r\n else {\r\n appExpId += \",\" + expIdArray[i];\r\n }\r\n }\r\n else {\r\n // this._traceLogger.w('Unsupported flight id format for this app expId: ' + expIdArray[i]);\r\n }\r\n }\r\n }\r\n return appExpId;\r\n}\r\n/// Verify an expId against the CS2.1 spec\r\n/// expId to verify in string format\r\n/// true if expId is valid, false otherwise\r\nfunction _isValidAppFlightId(appFlightId, flightIdNameSpaces) {\r\n if (flightIdNameSpaces === void 0) { flightIdNameSpaces = defaultFlightIdNameSpaces; }\r\n if (!appFlightId || appFlightId.length < 4) {\r\n return false;\r\n }\r\n var isValid = false;\r\n var MAXFLIGHTIDLENGTH = 256;\r\n var curNameSpace = (appFlightId.substring(0, 3)).toString().toUpperCase();\r\n // The prefix check must include ':', else strings starting with prefixes will slip through\r\n for (var i = 0; i < flightIdNameSpaces.length; i++) {\r\n if (flightIdNameSpaces[i] + \":\" === curNameSpace && appFlightId.length <= MAXFLIGHTIDLENGTH) {\r\n isValid = true;\r\n break;\r\n }\r\n }\r\n return isValid;\r\n}\r\nfunction _getExpId() {\r\n return this.getExpId();\r\n}\r\nvar Application = /** @class */ (function () {\r\n function Application(propertiesConfig, core, unloadHookContainer) {\r\n var _appExpId = null;\r\n // Create a copy of the defaultNamespaces\r\n var flightIdNameSpaces = defaultFlightIdNameSpaces.slice(0);\r\n var expIdCookieName = \"Treatments\";\r\n var _cookieMgr;\r\n var _propertiesConfig = null;\r\n dynamicProto(Application, this, function (_self) {\r\n _populateDefaults(propertiesConfig);\r\n // Add app language\r\n if (hasDocument()) {\r\n var documentElement = getDocument().documentElement;\r\n if (documentElement) {\r\n _self.locale = documentElement.lang;\r\n }\r\n }\r\n _self.getExpId = function () {\r\n return _propertiesConfig.expId ? _readExpIdFromCoreData(_propertiesConfig.expId) : _readExpIdFromCookie();\r\n };\r\n /**\r\n * Retrieve a specified metadata tag value from the DOM.\r\n * @param prefix - Prefix to search the metatags with.\r\n * @returns Metadata collection/property bag\r\n */\r\n function _getMetaDataFromDOM(prefix) {\r\n var metaElements;\r\n var metaData = {};\r\n var doc = getDocument();\r\n if (doc) {\r\n metaElements = doc && doc.querySelectorAll(\"meta\");\r\n for (var i = 0; i < metaElements.length; i++) {\r\n var meta = metaElements[i];\r\n if (meta.name) {\r\n var mt = meta.name.toLowerCase();\r\n if (mt.indexOf(prefix) === 0) {\r\n var name = meta.name.replace(prefix, \"\");\r\n metaData[name] = meta.content;\r\n }\r\n }\r\n }\r\n }\r\n return metaData;\r\n }\r\n /// Validate each flight id in appExpId against the app flight ID\r\n /// format and create a comma seperated appExpId with valid flight ids.Ignore invalid flight IDs< /summary>\r\n /// A list of comma seperated appExpId\r\n /// none\r\n function _setAppExpId(appExpIdNew) {\r\n if (appExpIdNew === _appExpId) {\r\n return; // Nothing to do if seen before\r\n }\r\n // Reset to empty first. The new but invalid appExpId should not be logged and we cannot leave the old one hanging around\r\n // since it means old experiment id cannot represent the new experiment with an invalid appExpId.\r\n _appExpId = _validateAppExpId(appExpIdNew, flightIdNameSpaces);\r\n }\r\n function _readExpIdFromCookie() {\r\n var cookieValue = getCookieValue(_cookieMgr, expIdCookieName);\r\n _setAppExpId(cookieValue);\r\n return _appExpId;\r\n }\r\n function _readExpIdFromCoreData(expId) {\r\n _setAppExpId(expId);\r\n return _appExpId;\r\n }\r\n function _populateDefaults(config) {\r\n // This function will be re-called whenever any referenced configuration is changed\r\n var unloadHook = onConfigChange(config, function () {\r\n _cookieMgr = core && core.getCookieMgr();\r\n _propertiesConfig = config || {};\r\n // config.env default is set at properities plugin level with \"\"\r\n _self.env = _propertiesConfig.env || _getMetaDataFromDOM(\"awa-\")[\"env\"];\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n });\r\n }\r\n// Removed Stub for Application.prototype.getExpId.\r\n /// Validate each flight id in appExpId against the app flight ID\r\n /// format and create a comma seperated appExpId with valid flight ids.Ignore invalid flight IDs< /summary>\r\n /// A list of comma seperated appExpId\r\n /// none\r\n /**\r\n * Validate each flight id in appExpId against the app flight ID format and create\r\n * a comma seperated appExpId with valid flight ids.Ignore invalid flight IDs\r\n * @param appExpId - The current experiment id\r\n * @param appExpIdNew - The new experiment id to set (if valid)\r\n * @param flightIdNameSpaces - The valid set of flight id names\r\n * @returns The validated experiment id,\r\n */\r\n Application.validateAppExpId = _validateAppExpId;\r\n /**\r\n * Static constructor, attempt to create accessors\r\n */\r\n Application._staticInit = (function () {\r\n // Dynamically create get/set property accessors\r\n objDefine(Application.prototype, \"expId\", { g: _getExpId });\r\n })();\r\n return Application;\r\n}());\r\nexport { Application };\r\n//# sourceMappingURL=Application.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Cloud.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2020\r\n*/\r\nvar Cloud = /** @class */ (function () {\r\n function Cloud() {\r\n }\r\n return Cloud;\r\n}());\r\nexport { Cloud };\r\n//# sourceMappingURL=Cloud.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Device.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nvar Device = /** @class */ (function () {\r\n function Device() {\r\n }\r\n return Device;\r\n}());\r\nexport { Device };\r\n//# sourceMappingURL=Device.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* IntWeb.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { getCookieValue, onConfigChange } from \"@microsoft/1ds-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nfunction _getMsfpc() {\r\n return this.getMsfpc();\r\n}\r\nfunction _getAnid() {\r\n return this.getAnid();\r\n}\r\nvar IntWeb = /** @class */ (function () {\r\n function IntWeb(propertiesConfig, core, unloadHookContainer) {\r\n var _cookieMgr;\r\n dynamicProto(IntWeb, this, function (_self) {\r\n _populateDefaults(propertiesConfig);\r\n _self.getMsfpc = function () {\r\n return getCookieValue(_cookieMgr, \"MSFPC\");\r\n };\r\n _self.getAnid = function () {\r\n return getCookieValue(_cookieMgr, \"ANON\").slice(0, 34);\r\n };\r\n function _populateDefaults(config) {\r\n // This function will be re-called whenever any referenced configuration is changed\r\n var unloadHook = onConfigChange(config, function () {\r\n _cookieMgr = core && core.getCookieMgr();\r\n var _config = config || {};\r\n if (_config.serviceName) {\r\n _self.serviceName = _config.serviceName; // change serviceName only if incoming values is not null, undefined or \"\"\r\n }\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n });\r\n }\r\n// Removed Stub for IntWeb.prototype.getMsfpc.\r\n// Removed Stub for IntWeb.prototype.getAnid.\r\n /**\r\n * Static constructor, attempt to create accessors\r\n */\r\n IntWeb._staticInit = (function () {\r\n // Dynamically create get/set property accessors\r\n var proto = IntWeb.prototype;\r\n objDefine(proto, \"msfpc\", { g: _getMsfpc });\r\n objDefine(proto, \"anid\", { g: _getAnid });\r\n })();\r\n return IntWeb;\r\n}());\r\nexport { IntWeb };\r\n//# sourceMappingURL=IntWeb.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Loc.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nvar Loc = /** @class */ (function () {\r\n function Loc() {\r\n // Add time zone\r\n var timeZone = new Date().getTimezoneOffset();\r\n var minutes = timeZone % 60;\r\n var hours = (timeZone - minutes) / 60;\r\n var timeZonePrefix = \"+\";\r\n if (hours > 0) {\r\n timeZonePrefix = \"-\";\r\n }\r\n hours = Math.abs(hours);\r\n minutes = Math.abs(minutes);\r\n this.tz = timeZonePrefix + (hours < 10 ? \"0\" + hours : hours.toString()) + \":\"\r\n + (minutes < 10 ? \"0\" + minutes : minutes.toString());\r\n }\r\n return Loc;\r\n}());\r\nexport { Loc };\r\n//# sourceMappingURL=Loc.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* OperatingSystem.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport { getNavigator, isString, onConfigChange } from \"@microsoft/1ds-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nvar OSNAMEREGEX = {\r\n WIN: /(windows|win32)/i,\r\n WINRT: / arm;/i,\r\n WINPHONE: /windows\\sphone\\s\\d+\\.\\d+/i,\r\n OSX: /(macintosh|mac os x)/i,\r\n IOS: /(ipad|iphone|ipod)(?=.*like mac os x)/i,\r\n LINUX: /(linux|joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk)/i,\r\n ANDROID: /android/i,\r\n CROS: /CrOS/i\r\n};\r\nvar VERSION_MAPPINGS = {\r\n \"5.1\": \"XP\",\r\n \"6.0\": \"Vista\",\r\n \"6.1\": \"7\",\r\n \"6.2\": \"8\",\r\n \"6.3\": \"8.1\",\r\n \"10.0\": \"10\"\r\n};\r\nvar REGEX_VERSION = \"([\\\\d,.]+)\";\r\nvar REGEX_VERSION_MAC = \"([\\\\d,_,.]+)\";\r\nvar UNKNOWN = \"Unknown\";\r\nvar OSNAMES = [\r\n { r: OSNAMEREGEX.WINPHONE, os: \"Windows Phone\" },\r\n { r: OSNAMEREGEX.WINRT, os: \"Windows RT\" },\r\n { r: OSNAMEREGEX.WIN, os: \"Windows\" /* OPERATING_SYSTEMS.WINDOWS */ },\r\n { r: OSNAMEREGEX.IOS, os: \"iOS\" /* OPERATING_SYSTEMS.IOS */ },\r\n { r: OSNAMEREGEX.ANDROID, os: \"Android\" /* OPERATING_SYSTEMS.ANDROID */ },\r\n { r: OSNAMEREGEX.LINUX, os: \"Linux\" },\r\n { r: OSNAMEREGEX.CROS, os: \"Chrome OS\" },\r\n { s: \"x11\", os: \"Unix\" },\r\n { s: \"blackberry\", os: \"BlackBerry\" },\r\n { s: \"symbian\", os: \"Symbian\" },\r\n { s: \"nokia\", os: \"Nokia\" },\r\n { r: OSNAMEREGEX.OSX, os: \"Mac OS X\" /* OPERATING_SYSTEMS.MACOSX */ }\r\n];\r\nvar strSetSysName = \"setSysName\";\r\nvar strSetSysVer = \"setSysVer\";\r\nvar strGetSysName = \"getSysName\";\r\nvar strGetSysVer = \"getSysVer\";\r\nfunction _getOsName(lowerCaseUserAgent) {\r\n for (var lp = 0; lp < OSNAMES.length; lp++) {\r\n var match = OSNAMES[lp];\r\n if (match.r && lowerCaseUserAgent.match(match.r)) {\r\n return match.os;\r\n }\r\n else if (match.s && lowerCaseUserAgent.indexOf(match.s) !== -1) {\r\n return match.os;\r\n }\r\n }\r\n return UNKNOWN;\r\n}\r\nfunction _getOsVersion(userAgent, osName) {\r\n if (osName === \"Windows\" /* OPERATING_SYSTEMS.WINDOWS */) {\r\n return _getGenericOsVersion(userAgent, \"Windows NT\");\r\n }\r\n if (osName === \"Android\" /* OPERATING_SYSTEMS.ANDROID */) {\r\n return _getGenericOsVersion(userAgent, osName);\r\n }\r\n if (osName === \"Mac OS X\" /* OPERATING_SYSTEMS.MACOSX */) {\r\n return _getMacOsxVersion(userAgent);\r\n }\r\n if (osName === \"iOS\" /* OPERATING_SYSTEMS.IOS */) {\r\n return _getIosVersion(userAgent);\r\n }\r\n return UNKNOWN;\r\n}\r\nfunction _getGenericOsVersion(userAgent, osName) {\r\n var ntVersionMatches = userAgent.match(new RegExp(osName + \" \" + REGEX_VERSION));\r\n if (ntVersionMatches) {\r\n if (VERSION_MAPPINGS[ntVersionMatches[1]]) {\r\n return VERSION_MAPPINGS[ntVersionMatches[1]];\r\n }\r\n return ntVersionMatches[1];\r\n }\r\n return UNKNOWN;\r\n}\r\nfunction _getMacOsxVersion(userAgent) {\r\n var macOsxVersionInUserAgentMatches = userAgent.match(new RegExp(\"Mac OS X\" /* OPERATING_SYSTEMS.MACOSX */ + \" \" + REGEX_VERSION_MAC));\r\n if (macOsxVersionInUserAgentMatches) {\r\n var versionString = macOsxVersionInUserAgentMatches[1].replace(/_/g, \".\");\r\n if (versionString) {\r\n var delimiter = _getDelimiter(versionString);\r\n if (delimiter) {\r\n var components = versionString.split(delimiter);\r\n return components[0];\r\n }\r\n else {\r\n return versionString;\r\n }\r\n }\r\n }\r\n return UNKNOWN;\r\n}\r\nfunction _getIosVersion(userAgent) {\r\n var iosVersionInUserAgentMatches = userAgent.match(new RegExp(\"OS \" + REGEX_VERSION_MAC));\r\n if (iosVersionInUserAgentMatches) {\r\n var versionString = iosVersionInUserAgentMatches[1].replace(/_/g, \".\");\r\n if (versionString) {\r\n var delimiter = _getDelimiter(versionString);\r\n if (delimiter) {\r\n var components = versionString.split(delimiter);\r\n return components[0];\r\n }\r\n else {\r\n return versionString;\r\n }\r\n }\r\n }\r\n return UNKNOWN;\r\n}\r\nfunction _getDelimiter(versionString) {\r\n if (versionString.indexOf(\".\") > -1) {\r\n return \".\";\r\n }\r\n if (versionString.indexOf(\"_\") > -1) {\r\n return \"_\";\r\n }\r\n return null;\r\n}\r\nvar OperatingSystem = /** @class */ (function () {\r\n function OperatingSystem(propertiesConfig, unloadHookContainer) {\r\n var self = this;\r\n var _config;\r\n var _name = null;\r\n var _ver = null;\r\n var _userName = null; // save user defined name. If defined, this value will overwrite dynamic config values\r\n var _userVer = null; // save user defined ver. If defined, this value will overwrite dynamic config values\r\n var _setSysName = function (value) {\r\n _userName = value;\r\n };\r\n var _setSysVer = function (value) {\r\n _userVer = value;\r\n };\r\n var _getSysName = function () {\r\n return _userName || _name;\r\n };\r\n var _getSysVer = function () {\r\n return _userVer || _ver;\r\n };\r\n var unloadHook = onConfigChange(propertiesConfig, function () {\r\n _config = propertiesConfig || {};\r\n // if populateOperatingSystemInfo is set to false, previous name and ver will be used\r\n if (_config.populateOperatingSystemInfo) {\r\n var theNav = getNavigator() || {};\r\n var userAgent = propertiesConfig.userAgent || theNav.userAgent || \"\";\r\n var userAgentDataPlatform = (propertiesConfig.userAgentData || {}).platform || (theNav.userAgentData || {}).platform;\r\n if (userAgent) {\r\n var osName = _getOsName(userAgent.toLowerCase());\r\n _name = osName;\r\n _ver = _getOsVersion(userAgent, osName);\r\n }\r\n if ((!_name || _name === UNKNOWN) && isString(userAgentDataPlatform)) {\r\n _name = userAgentDataPlatform;\r\n }\r\n }\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n objDefine(self, \"name\", { s: _setSysName, g: _getSysName });\r\n objDefine(self, \"ver\", { s: _setSysVer, g: _getSysVer });\r\n }\r\n return OperatingSystem;\r\n}());\r\nexport { OperatingSystem };\r\n//# sourceMappingURL=OperatingSystem.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Sdk.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { getCookieValue, newGuid, onConfigChange, random32 } from \"@microsoft/1ds-core-js\";\r\nvar DEVICE_ID_COOKIE = \"MicrosoftApplicationsTelemetryDeviceId\";\r\nfunction _saveData(mgr, propertyStorage, name, value) {\r\n if (propertyStorage) {\r\n propertyStorage.setProperty(name, value);\r\n }\r\n else {\r\n // Expires in 365 days (365 * 24 * 60 * 60)\r\n mgr.set(name, value, 31536000);\r\n }\r\n}\r\nfunction _getData(mgr, propertyStorage, name) {\r\n if (propertyStorage) {\r\n return propertyStorage.getProperty(name) || \"\";\r\n }\r\n return getCookieValue(mgr, name);\r\n}\r\nvar Sdk = /** @class */ (function () {\r\n function Sdk(coreConfig, core, unloadHookContainer) {\r\n var _sequenceId = 0;\r\n var _cookieMgr;\r\n dynamicProto(Sdk, this, function (_self) {\r\n // Start sequence\r\n _self.seq = _sequenceId;\r\n _self.epoch = random32(false).toString();\r\n _self.getSequenceId = function () {\r\n return ++_sequenceId;\r\n };\r\n var unloadHook = onConfigChange(coreConfig, function (details) {\r\n _cookieMgr = core && core.getCookieMgr();\r\n var coreConfig = details.cfg;\r\n var propertyStorage = coreConfig.propertyStorageOverride;\r\n var cookieMgrEnabled = _cookieMgr.isEnabled();\r\n if (cookieMgrEnabled || propertyStorage) {\r\n // Only collect device id if it can be stored\r\n var deviceId = _getData(_cookieMgr, propertyStorage, DEVICE_ID_COOKIE);\r\n if (!deviceId) {\r\n deviceId = newGuid();\r\n }\r\n _saveData(_cookieMgr, propertyStorage, DEVICE_ID_COOKIE, deviceId);\r\n _self.installId = deviceId;\r\n }\r\n else {\r\n _cookieMgr.purge(DEVICE_ID_COOKIE);\r\n }\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n });\r\n }\r\n // Get seq value\r\n// Removed Stub for Sdk.prototype.getSequenceId.\r\n // This is a workaround for an IE8 bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n // this will be removed when ES3 support is dropped.\n Sdk.__ieDyn=1;\n\n return Sdk;\r\n}());\r\nexport { Sdk };\r\n//# sourceMappingURL=Sdk.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* AITrace.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport { generateW3CId, getLocation, onConfigChange } from \"@microsoft/1ds-core-js\";\r\nvar Trace = /** @class */ (function () {\r\n function Trace(propertiesConfig, id, parentId, name, unloadHookContainer) {\r\n var self = this;\r\n self.traceId = id || generateW3CId();\r\n var unloadHook = onConfigChange(propertiesConfig, function () {\r\n var _config = propertiesConfig;\r\n if (_config.enableDistributedTracing && !parentId) {\r\n // When dt is enabled, both the traceId and spanId are required\r\n parentId = generateW3CId().substring(0, 16);\r\n }\r\n self.parentId = self.parentId || parentId; // change parentId only if it was not set previously\r\n if (_config.enableApplicationInsightsTrace && !name) {\r\n var loc = getLocation();\r\n if (loc && loc.pathname) {\r\n name = loc.pathname;\r\n }\r\n }\r\n self.name = self.name || name; // change name only if it was not set previously\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n return Trace;\r\n}());\r\nexport { Trace };\r\n//# sourceMappingURL=Trace.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* User.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { getCookieValue, getISOString, isUndefined, newId, onConfigChange } from \"@microsoft/1ds-core-js\";\r\nimport { objDefine } from \"@nevware21/ts-utils\";\r\nvar strSetLocalId = \"setLocalId\";\r\nfunction _getLocalId() {\r\n return this.getLocalId();\r\n}\r\nfunction _setLocalId(value) {\r\n this[strSetLocalId](value);\r\n}\r\nvar User = /** @class */ (function () {\r\n function User(coreConfig, propertiesConfig, core, unloadHookContainer) {\r\n var _propertiesConfig;\r\n var _customLocalId;\r\n var _cookieMgr;\r\n dynamicProto(User, this, function (_self) {\r\n _populateDefaults(propertiesConfig);\r\n // Add user language\r\n if (typeof navigator !== \"undefined\") {\r\n var nav = navigator;\r\n _self.locale = nav.userLanguage || nav.language;\r\n }\r\n _self.getLocalId = function () {\r\n if (_customLocalId) {\r\n return _customLocalId;\r\n }\r\n return _populateMuidFromCookie();\r\n };\r\n _self[strSetLocalId] = function (value) {\r\n _customLocalId = value;\r\n };\r\n function _populateMuidFromCookie() {\r\n // Only add default local ID is hash or drop config are not enabled\r\n if (!_propertiesConfig.hashIdentifiers && !_propertiesConfig.dropIdentifiers) {\r\n var muidValue = getCookieValue(_cookieMgr, \"MUID\");\r\n if (muidValue) {\r\n _customLocalId = \"t:\" + muidValue;\r\n }\r\n }\r\n return _customLocalId;\r\n }\r\n function _populateDefaults(config) {\r\n // This function will be re-called whenever any referenced configuration is changed\r\n var unloadHook = onConfigChange(config, function () {\r\n _cookieMgr = core && core.getCookieMgr();\r\n _propertiesConfig = config;\r\n // reset it since this value is dependent on cookieMgr, config.hashIdentifiers and config.dropIdentifiers\r\n _customLocalId = null;\r\n if (_cookieMgr && _cookieMgr.isEnabled()) {\r\n _populateMuidFromCookie();\r\n if (_propertiesConfig.enableApplicationInsightsUser) {\r\n // get userId or create new one if none exists\r\n var aiUser = getCookieValue(_cookieMgr, User.userCookieName);\r\n if (aiUser) {\r\n var params = aiUser.split(User.cookieSeparator);\r\n if (params.length > 0) {\r\n _self.id = params[0];\r\n }\r\n }\r\n if (!_self.id) {\r\n _self.id = newId((coreConfig && !isUndefined(coreConfig.idLength)) ? coreConfig.idLength : 22);\r\n var acqStr = getISOString(new Date());\r\n _self.accountAcquisitionDate = acqStr;\r\n // without expiration, cookies expire at the end of the session\r\n // set it to 365 days from now\r\n // 365 * 24 * 60 * 60 * 1000 = 31536000\r\n var newCookie = [_self.id, acqStr];\r\n var cookieDomain = _propertiesConfig.cookieDomain ? _propertiesConfig.cookieDomain : undefined;\r\n _cookieMgr.set(User.userCookieName, newCookie.join(User.cookieSeparator), 31536000, cookieDomain);\r\n }\r\n }\r\n }\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n });\r\n }\r\n// Removed Stub for User.prototype.getLocalId.\r\n// Removed Stub for User.prototype.setLocalId.\r\n User.cookieSeparator = \"|\";\r\n User.userCookieName = \"ai_user\";\r\n /**\r\n * Static constructor, attempt to create accessors\r\n */\r\n User._staticInit = (function () {\r\n // Dynamically create get/set property accessors\r\n objDefine(User.prototype, \"localId\", { g: _getLocalId, s: _setLocalId });\r\n })();\r\n return User;\r\n}());\r\nexport { User };\r\n//# sourceMappingURL=User.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Utc.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport { onConfigChange } from \"@microsoft/1ds-core-js\";\r\n/**\r\n * See details {@link https://www.osgwiki.com/wiki/Telemetry#De-Identification_of_Telemetry_Events | here}.\r\n * Client has hashed or dropped any PII information in the event. Vortex will hash any server-supplied PII fields such\r\n * as PUID or Global Device ID. This value is used to populate the `ext.utc.eventFlags`.\r\n * See https://1dsdocs.azurewebsites.net/schema/PartA/utc.html#eventflags and\r\n * further details https://www.osgwiki.com/wiki/Telemetry#De-Identification_of_Telemetry_Events.\r\n */\r\nexport var HASH_IDENTIFIERS_FLAG = 0x100000;\r\n/**\r\n * See details {@link https://www.osgwiki.com/wiki/Telemetry#De-Identification_of_Telemetry_Events | here}.\r\n * Client has dropped any PII information in the event. Information contained within attached MSA token will not be inserted.\r\n * This value is used to populate the `ext.utc.eventFlags`.\r\n * See https://1dsdocs.azurewebsites.net/schema/PartA/utc.html#eventflags and\r\n * further details https://www.osgwiki.com/wiki/Telemetry#De-Identification_of_Telemetry_Events.\r\n */\r\nexport var DROP_IDENTIFIERS_FLAG = 0x200000;\r\n/**\r\n * See details {@link https://www.osgwiki.com/wiki/Telemetry#De-Identification_of_Telemetry_Events | here}. Collector to scrub `ext.ingest.clientIp`\r\n * field stamped server-side. This takes precedence over both Hash Identifier and Drop Identifier flags above, so as long as this bit is set,\r\n * the client IP will be scrubbed as \"xxx.xxx.xxx.*\" for IPv4 and will not be dropped. The main use case for this flag is Interchange customers\r\n * that need to use OriginalMessage feature but wish not to have IP info in Geneva data store. For more details on this scenario, please see link\r\n * here: {@link https://eng.ms/docs/products/geneva/connectors/asimov_to_geneva/management#default-commonschema | 1DS Interchange Default CommonSchema }\r\n * See also {@link https://www.osgwiki.com/wiki/CommonSchema/flags | CommonSchema/flags}\r\n * @since 3.2.11\r\n */\r\nexport var SCRUB_IP_FLAG = 0x400000;\r\nvar Utc = /** @class */ (function () {\r\n function Utc(propertiesConfig, unloadHookContainer) {\r\n var self = this;\r\n var _config;\r\n self.popSample = 100;\r\n var unloadHook = onConfigChange(propertiesConfig, function () {\r\n _config = propertiesConfig;\r\n self.eventFlags = 0;\r\n if (propertiesConfig.hashIdentifiers) {\r\n // set value when user didn't set values\r\n self.eventFlags = self.eventFlags | HASH_IDENTIFIERS_FLAG;\r\n }\r\n if (propertiesConfig.dropIdentifiers) {\r\n // set value when user didn't set values\r\n self.eventFlags = self.eventFlags | DROP_IDENTIFIERS_FLAG;\r\n }\r\n if (propertiesConfig.scrubIpOnly) {\r\n // set value when user didn't set values\r\n self.eventFlags = self.eventFlags | SCRUB_IP_FLAG;\r\n }\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n return Utc;\r\n}());\r\nexport { Utc };\r\n//# sourceMappingURL=Utc.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Web.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { getCookieValue, getLocation, getNavigator, getWindow, isArray, onConfigChange, safeGetCookieMgr } from \"@microsoft/1ds-core-js\";\r\nimport { isBoolean, objDefine, objDefineProps } from \"@nevware21/ts-utils\";\r\nvar USER_CONSENT_DETAILS = [\r\n \"Required\", \"Analytics\", \"SocialMedia\", \"Advertising\"\r\n];\r\nvar REGEX_VERSION = \"([\\\\d,.]+)\";\r\nvar UNKNOWN = \"Unknown\";\r\nvar EDGE_CHROMIUM = \"Edg/\";\r\nvar USER_AGENTS = [\r\n { ua: \"OPR/\", b: \"Opera\" /* BROWSERS.OPERA */ },\r\n { ua: \"PhantomJS\" /* BROWSERS.PHANTOMJS */, b: \"PhantomJS\" /* BROWSERS.PHANTOMJS */ },\r\n { ua: \"Edge\" /* BROWSERS.EDGE */, b: \"Edge\" /* BROWSERS.EDGE */ },\r\n { ua: EDGE_CHROMIUM, b: \"Edge\" /* BROWSERS.EDGE */ },\r\n { ua: \"Electron\" /* BROWSERS.ELECTRON */, b: \"Electron\" /* BROWSERS.ELECTRON */ },\r\n { ua: \"Chrome\" /* BROWSERS.CHROME */, b: \"Chrome\" /* BROWSERS.CHROME */ },\r\n { ua: \"Trident\", b: \"MSIE\" /* BROWSERS.MSIE */ },\r\n { ua: \"MSIE \", b: \"MSIE\" /* BROWSERS.MSIE */ },\r\n { ua: \"Firefox\" /* BROWSERS.FIREFOX */, b: \"Firefox\" /* BROWSERS.FIREFOX */ },\r\n { ua: \"Safari\" /* BROWSERS.SAFARI */, b: \"Safari\" /* BROWSERS.SAFARI */ },\r\n { ua: \"SkypeShell\" /* BROWSERS.SKYPE_SHELL */, b: \"SkypeShell\" /* BROWSERS.SKYPE_SHELL */ } // Check for Skype shell\r\n];\r\nvar BRANDS = [\r\n { br: \"Microsoft Edge\", b: \"Edge\" /* BROWSERS.EDGE */ },\r\n { br: \"Google Chrome\", b: \"Chrome\" /* BROWSERS.CHROME */ },\r\n { br: \"Opera\", b: \"Opera\" /* BROWSERS.OPERA */ }\r\n];\r\nfunction _userAgentContainsString(searchString, userAgent) {\r\n return userAgent.indexOf(searchString) > -1;\r\n}\r\nfunction _getBrandVersion(match, brands) {\r\n for (var lp = 0; lp < brands.length; lp++) {\r\n if (match == brands[lp].brand) {\r\n return brands[lp].version;\r\n }\r\n }\r\n return null;\r\n}\r\nfunction _getBrowserName(userAgent) {\r\n if (userAgent) {\r\n for (var lp = 0; lp < USER_AGENTS.length; lp++) {\r\n var ua = USER_AGENTS[lp].ua;\r\n if (_userAgentContainsString(ua, userAgent)) {\r\n return USER_AGENTS[lp].b;\r\n }\r\n }\r\n }\r\n return UNKNOWN;\r\n}\r\nfunction _getBrowserVersion(userAgent, browserName) {\r\n if (browserName === \"MSIE\" /* BROWSERS.MSIE */) {\r\n return _getIeVersion(userAgent);\r\n }\r\n return _getOtherVersion(browserName, userAgent);\r\n}\r\nfunction _getIeVersion(userAgent) {\r\n var classicIeVersionMatches = userAgent.match(new RegExp(\"MSIE\" /* BROWSERS.MSIE */ + \" \" + REGEX_VERSION));\r\n if (classicIeVersionMatches) {\r\n return classicIeVersionMatches[1];\r\n }\r\n var ieVersionMatches = userAgent.match(new RegExp(\"rv:\" + REGEX_VERSION));\r\n if (ieVersionMatches) {\r\n return ieVersionMatches[1];\r\n }\r\n}\r\nfunction _getOtherVersion(browserString, userAgent) {\r\n if (browserString === \"Safari\" /* BROWSERS.SAFARI */) {\r\n browserString = \"Version\";\r\n }\r\n else if (browserString === \"Edge\" /* BROWSERS.EDGE */) {\r\n if (_userAgentContainsString(EDGE_CHROMIUM, userAgent)) {\r\n browserString = \"Edg\";\r\n }\r\n }\r\n var matches = userAgent.match(new RegExp(browserString + \"/\" + REGEX_VERSION));\r\n if (matches) {\r\n return matches[1];\r\n }\r\n if (browserString === \"Opera\" /* BROWSERS.OPERA */) {\r\n matches = userAgent.match(new RegExp(\"OPR/\" + REGEX_VERSION));\r\n if (matches) {\r\n return matches[1];\r\n }\r\n }\r\n return UNKNOWN;\r\n}\r\n/**\r\n* Get Screen resolution\r\n* @returns {ScreenResolution} - Screen resolution\r\n*/\r\nfunction _getScreenResolution() {\r\n var screenRes = { h: 0, w: 0 };\r\n var win = getWindow();\r\n if (win && win.screen) {\r\n screenRes.h = screen.height;\r\n screenRes.w = screen.width;\r\n }\r\n return screenRes;\r\n}\r\nfunction _getUserConsent() {\r\n return this.getUserConsent();\r\n}\r\nvar Web = /** @class */ (function () {\r\n function Web(propertiesConfig, core, unloadHookContainer) {\r\n var _cookieMgr = safeGetCookieMgr(core);\r\n var _propertiesConfig = propertiesConfig || {};\r\n var _userAgent = null;\r\n var _userAgentBrands = null;\r\n var _userBrowser = null; // save user defined browser. If defined, this value will overwrite dynamic config values\r\n var _userBrowserVer = null; // save user defined browser ver. If defined, this value will overwrite dynamic config values\r\n var _browser = null;\r\n var _browserVer = null;\r\n var _gpcDataSharingOption = null;\r\n dynamicProto(Web, this, function (_self) {\r\n _populateDefaults(propertiesConfig);\r\n // Add the domain\r\n var windowLocation = getLocation();\r\n if (windowLocation) {\r\n var domain = windowLocation.hostname;\r\n if (domain) {\r\n _self.domain = windowLocation.protocol === \"file:\" ? \"local\" : domain;\r\n }\r\n }\r\n var screenRes = _getScreenResolution();\r\n _self.screenRes = screenRes.w + \"X\" + screenRes.h;\r\n _self.getUserConsent = function () {\r\n return _propertiesConfig.userConsented || (getCookieValue(_cookieMgr, _propertiesConfig.userConsentCookieName || \"MSCC\") ? true : false);\r\n };\r\n /**\r\n *\r\n ** Function to retrieve user consent details.\r\n * @param callback - Callback function to get user consent details\r\n * @returns IUserContentDetails stringified object\r\n */\r\n _self.getUserConsentDetails = function () {\r\n var consentDetails = null;\r\n try {\r\n var callback = _propertiesConfig.callback;\r\n if (callback && callback.userConsentDetails) {\r\n var result = callback.userConsentDetails();\r\n if (result) {\r\n if (_propertiesConfig.disableConsentDetailsSanitize) {\r\n consentDetails = result;\r\n }\r\n else {\r\n consentDetails = {};\r\n }\r\n // Apply default values if missing\r\n for (var lp = 0; lp < USER_CONSENT_DETAILS.length; lp++) {\r\n var key = USER_CONSENT_DETAILS[lp];\r\n consentDetails[key] = result[key] || false;\r\n }\r\n }\r\n }\r\n // Only set if the configuration was provided\r\n if (_gpcDataSharingOption !== null) {\r\n consentDetails = consentDetails || {};\r\n consentDetails.GPC_DataSharingOptIn = !!_gpcDataSharingOption;\r\n }\r\n return consentDetails ? JSON.stringify(consentDetails) : null;\r\n }\r\n catch (e) {\r\n // Unexpected - Just making sure we don't crash\r\n }\r\n };\r\n function _parseUserAgent(userAgent, userAgentBrands) {\r\n if (isArray(userAgentBrands)) {\r\n try {\r\n // Go through the ordered list of \"known\" brands and use the first matching value\r\n for (var lp = 0; lp < BRANDS.length; lp++) {\r\n var version = _getBrandVersion(BRANDS[lp].br, userAgentBrands);\r\n if (version) {\r\n _browser = BRANDS[lp].b;\r\n _browserVer = version;\r\n return;\r\n }\r\n }\r\n }\r\n catch (e) {\r\n // Unexpected - Just making sure we don't crash\r\n }\r\n }\r\n if (userAgent) {\r\n var browserName = _getBrowserName(userAgent);\r\n _browser = browserName;\r\n _browserVer = _getBrowserVersion(userAgent, browserName);\r\n }\r\n }\r\n function _setBrowser(value) {\r\n _userBrowser = value;\r\n }\r\n function _setBrowserVer(value) {\r\n _userBrowserVer = value;\r\n }\r\n function _getBrowser() {\r\n return _userBrowser || _browser;\r\n }\r\n function _getBrowserVer() {\r\n return _userBrowserVer || _browserVer;\r\n }\r\n var _getGpcDataSharing = function () {\r\n return _gpcDataSharingOption;\r\n };\r\n var _setGpcDataSharing = function (value) {\r\n // Setting directly, rather than waiting for the onConfigChange so that the new value is available immediately\r\n _gpcDataSharingOption = isBoolean(value) ? value : null;\r\n // Also update the configuration so any listeners are also notified in the next JS cycle\r\n _propertiesConfig.gpcDataSharingOptIn = _gpcDataSharingOption;\r\n };\r\n function _populateDefaults(config) {\r\n // This function will be re-called whenever any referenced configuration is changed\r\n var unloadHook = onConfigChange(config, function () {\r\n _propertiesConfig = config;\r\n // if populateBrowserInfo is set to false, it will use previous values (so, it will not reset)\r\n if (_propertiesConfig.populateBrowserInfo) {\r\n var userAgent = _propertiesConfig.userAgent;\r\n var userAgentBrands = (_propertiesConfig.userAgentData || {}).brands;\r\n if (userAgent !== _userAgent || userAgentBrands !== _userAgentBrands) {\r\n if (!userAgent || !userAgentBrands || userAgentBrands.length === 0) {\r\n // One or more values not specified so try and derive from the navigator (if available)\r\n var theNav = getNavigator();\r\n if (theNav) {\r\n userAgent = userAgent || theNav.userAgent || \"\";\r\n userAgentBrands = userAgentBrands || (theNav.userAgentData || {}).brands;\r\n }\r\n }\r\n _parseUserAgent(userAgent, userAgentBrands);\r\n _userAgent = userAgent;\r\n _userAgentBrands = userAgentBrands;\r\n }\r\n }\r\n // Only set if the configuration was provided\r\n _gpcDataSharingOption = isBoolean(_propertiesConfig.gpcDataSharingOptIn) ? _propertiesConfig.gpcDataSharingOptIn : null;\r\n });\r\n unloadHookContainer && unloadHookContainer.add(unloadHook);\r\n }\r\n // Remap this get userContext for this instance\r\n objDefineProps(_self, {\r\n \"userConsent\": { g: _self.getUserConsent },\r\n \"browser\": { s: _setBrowser, g: _getBrowser },\r\n \"browserVer\": { s: _setBrowserVer, g: _getBrowserVer },\r\n \"gpcDataSharingOptIn\": { g: _getGpcDataSharing, s: _setGpcDataSharing }\r\n });\r\n });\r\n }\r\n// Removed Stub for Web.prototype.getUserConsent.\r\n// Removed Stub for Web.prototype.getUserConsentDetails.\r\n /**\r\n * Static constructor, attempt to create accessors\r\n */\r\n Web._staticInit = (function () {\r\n // Dynamically create get/set property accessors\r\n //objDefineAccessors(Web.prototype, \"userConsent\", _getUserConsent);\r\n objDefine(Web.prototype, \"userConsent\", { g: _getUserConsent });\r\n })();\r\n return Web;\r\n}());\r\nexport { Web };\r\n//# sourceMappingURL=Web.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* TelemetryContext.ts\r\n* @author Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2019\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { isBoolean, isNullOrUndefined, isNumber, isString, isValidSpanId, isValidTraceId, objForEachKey } from \"@microsoft/1ds-core-js\";\r\nimport { AppExtensionKeys, CloudExtKeys, DeviceExtKeys, DistributedTraceExtKeys, Extensions, IntWebExtKeys, LocExtKeys, OSExtKeys, SDKExtKeys, SessionExtKeys, TraceExtKeys, UserExtensionKeys, UtcExtKeys, WebExtensionKeys } from \"./ExtensionKeys\";\r\nimport { SessionManager } from \"./SessionManager\";\r\nimport { Application } from \"./context/Application\";\r\nimport { Cloud } from \"./context/Cloud\";\r\nimport { Device } from \"./context/Device\";\r\nimport { IntWeb } from \"./context/IntWeb\";\r\nimport { Loc } from \"./context/Loc\";\r\nimport { OperatingSystem } from \"./context/OperatingSystem\";\r\nimport { Sdk } from \"./context/Sdk\";\r\nimport { Session } from \"./context/Session\";\r\nimport { Trace } from \"./context/Trace\";\r\nimport { User } from \"./context/User\";\r\nimport { Utc } from \"./context/Utc\";\r\nimport { Web } from \"./context/Web\";\r\nfunction _applyExtValues(extension, event, names, map, overwriteTarget) {\r\n var target = event.ext[Extensions[extension]];\r\n if (target) {\r\n try {\r\n objForEachKey(map, function (field, value) {\r\n if (isString(value) || isNumber(value) || isBoolean(value)) {\r\n var targetValue = target[names[field]];\r\n if (!overwriteTarget && (targetValue || isString(targetValue) || isNumber(targetValue) || isBoolean(targetValue))) {\r\n value = targetValue;\r\n }\r\n target[names[field]] = value;\r\n }\r\n });\r\n }\r\n catch (e) {\r\n // During unload some accesses may cause a TypeError due to accessing a dead object\r\n }\r\n }\r\n return target;\r\n}\r\nvar TelemetryContext = /** @class */ (function () {\r\n function TelemetryContext(coreConfig, propertiesConfig, core, unloadHookContainer) {\r\n dynamicProto(TelemetryContext, this, function (_self) {\r\n _self.app = new Application(propertiesConfig, core, unloadHookContainer);\r\n _self.cloud = new Cloud();\r\n _self.user = new User(coreConfig, propertiesConfig, core, unloadHookContainer);\r\n _self.os = new OperatingSystem(propertiesConfig, unloadHookContainer);\r\n _self.web = new Web(propertiesConfig, core, unloadHookContainer);\r\n var _sdk = new Sdk(coreConfig, core, unloadHookContainer);\r\n var _intWeb = new IntWeb(propertiesConfig, core, unloadHookContainer);\r\n var _utc = new Utc(propertiesConfig, unloadHookContainer);\r\n _self.loc = new Loc();\r\n _self.device = new Device();\r\n var _sessionManager = new SessionManager(core, propertiesConfig, unloadHookContainer);\r\n _self.session = new Session();\r\n var undefValue = undefined;\r\n var _distributedTraceCtx = createDistributedTraceContextFromTraceCtx(new Trace(propertiesConfig, undefValue, undefValue, undefValue, unloadHookContainer), _getTraceCtx());\r\n var _overwriteEventPartA = !(propertiesConfig || {}).eventContainExtFields;\r\n function _getSessionId() {\r\n var session = _self.session;\r\n if (session && isString(session.customId)) {\r\n return session.customId;\r\n }\r\n _sessionManager.update();\r\n var autoSession = _sessionManager.automaticSession;\r\n if (autoSession) {\r\n var autoId = autoSession.getId();\r\n if (autoId && isString(autoId)) {\r\n session.automaticId = autoId;\r\n }\r\n }\r\n return session.automaticId;\r\n }\r\n _self.getTraceCtx = function () {\r\n return _distributedTraceCtx;\r\n };\r\n _self.getSessionId = _getSessionId;\r\n _self.applyApplicationContext = function (event) {\r\n var _a;\r\n var app = _self.app;\r\n _applyExtValues(4 /* eExtensions.AppExt */, event, AppExtensionKeys, (_a = {},\r\n _a[0 /* eAppExtensionKeys.id */] = app.id,\r\n _a[1 /* eAppExtensionKeys.ver */] = app.ver,\r\n _a[2 /* eAppExtensionKeys.appName */] = app.name,\r\n _a[3 /* eAppExtensionKeys.locale */] = app.locale,\r\n _a[4 /* eAppExtensionKeys.expId */] = app.getExpId(),\r\n _a[5 /* eAppExtensionKeys.env */] = app.env,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyUserContext = function (event) {\r\n var _a;\r\n var user = _self.user;\r\n _applyExtValues(0 /* eExtensions.UserExt */, event, UserExtensionKeys, (_a = {},\r\n _a[1 /* eUserExtensionKeys.localId */] = user.getLocalId(),\r\n _a[0 /* eUserExtensionKeys.locale */] = user.locale,\r\n _a[2 /* eUserExtensionKeys.id */] = user.id,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyWebContext = function (event) {\r\n var _a;\r\n var web = _self.web;\r\n _applyExtValues(3 /* eExtensions.WebExt */, event, WebExtensionKeys, (_a = {},\r\n _a[0 /* eWebExtensionKeys.domain */] = web.domain,\r\n _a[1 /* eWebExtensionKeys.browser */] = web.browser,\r\n _a[2 /* eWebExtensionKeys.browserVer */] = web.browserVer,\r\n _a[3 /* eWebExtensionKeys.screenRes */] = web.screenRes,\r\n _a[5 /* eWebExtensionKeys.consentDetails */] = web.getUserConsentDetails(),\r\n _a[4 /* eWebExtensionKeys.userConsent */] = web.getUserConsent(),\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyOsContext = function (event) {\r\n var _a;\r\n var os = _self.os;\r\n _applyExtValues(5 /* eExtensions.OSExt */, event, OSExtKeys, (_a = {},\r\n _a[0 /* eOSExtKeys.osName */] = os.name,\r\n _a[1 /* eOSExtKeys.ver */] = os.ver,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applySdkContext = function (event) {\r\n var _a;\r\n _applyExtValues(6 /* eExtensions.SdkExt */, event, SDKExtKeys, (_a = {},\r\n _a[2 /* eSDKExtKeys.installId */] = _sdk.installId,\r\n _a[1 /* eSDKExtKeys.seq */] = _sdk.getSequenceId(),\r\n _a[3 /* eSDKExtKeys.epoch */] = _sdk.epoch,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyIntWebContext = function (event) {\r\n var _a;\r\n _applyExtValues(7 /* eExtensions.IntWebExt */, event, IntWebExtKeys, (_a = {},\r\n _a[0 /* eIntWebExtKeys.msfpc */] = _intWeb.getMsfpc(),\r\n _a[1 /* eIntWebExtKeys.anid */] = _intWeb.getAnid(),\r\n _a[2 /* eIntWebExtKeys.serviceName */] = _intWeb.serviceName,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyUtcContext = function (event) {\r\n var _a;\r\n var utcFields = (_a = {},\r\n _a[0 /* eUtcExtKeys.popSample */] = _utc.popSample,\r\n _a);\r\n if (_utc.eventFlags > 0) {\r\n utcFields[1 /* eUtcExtKeys.eventFlags */] = _utc.eventFlags;\r\n }\r\n _applyExtValues(8 /* eExtensions.UtcExt */, event, UtcExtKeys, utcFields, _overwriteEventPartA);\r\n };\r\n _self.applyLocContext = function (event) {\r\n var _a;\r\n _applyExtValues(9 /* eExtensions.LocExt */, event, LocExtKeys, (_a = {},\r\n _a[0 /* eLocExtKeys.tz */] = _self.loc.tz,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applySessionContext = function (event) {\r\n var _a;\r\n _applyExtValues(4 /* eExtensions.AppExt */, event, SessionExtKeys, (_a = {},\r\n _a[0 /* eSessionExtKeys.sessionId */] = _getSessionId(),\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyDeviceContext = function (event) {\r\n var _a;\r\n var device = _self.device;\r\n _applyExtValues(1 /* eExtensions.DeviceExt */, event, DeviceExtKeys, (_a = {},\r\n _a[0 /* eDeviceExtKeys.localId */] = device.localId,\r\n _a[2 /* eDeviceExtKeys.make */] = device.make,\r\n _a[3 /* eDeviceExtKeys.model */] = device.model,\r\n _a[1 /* eDeviceExtKeys.deviceClass */] = device.deviceClass,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyCloudContext = function (event) {\r\n var _a;\r\n var cloud = _self.cloud;\r\n _applyExtValues(10 /* eExtensions.CloudExt */, event, CloudExtKeys, (_a = {},\r\n _a[0 /* eCloudExtKeys.role */] = cloud.role,\r\n _a[1 /* eCloudExtKeys.roleInstance */] = cloud.roleInstance,\r\n _a[2 /* eCloudExtKeys.roleVer */] = cloud.roleVer,\r\n _a), _overwriteEventPartA);\r\n };\r\n _self.applyAITraceContext = function (event) {\r\n var _a;\r\n if (propertiesConfig.enableApplicationInsightsTrace) {\r\n var distributedTrace = _getTraceCtx();\r\n if (distributedTrace) {\r\n _applyExtValues(2 /* eExtensions.TraceExt */, event, TraceExtKeys, (_a = {},\r\n _a[0 /* eTraceExtKeys.traceId */] = distributedTrace.getTraceId(),\r\n _a[1 /* eTraceExtKeys.traceName */] = distributedTrace.getName(),\r\n _a[2 /* eTraceExtKeys.parentId */] = distributedTrace.getSpanId(),\r\n _a), false); // Always allow the event to define these values\r\n }\r\n }\r\n };\r\n _self.applyDistributedTraceContext = function (event) {\r\n var _a;\r\n var distributedTrace = _getTraceCtx();\r\n if (distributedTrace) {\r\n var traceFields = (_a = {},\r\n _a[0 /* eDistributedTraceExtKeys.traceId */] = distributedTrace.getTraceId(),\r\n _a[1 /* eDistributedTraceExtKeys.spanId */] = distributedTrace.getSpanId(),\r\n _a);\r\n var traceFlags = distributedTrace.getTraceFlags();\r\n if (!isNullOrUndefined(traceFlags)) {\r\n traceFields[2 /* eDistributedTraceExtKeys.traceFlags */] = traceFlags;\r\n }\r\n // Always allow the event to define these values\r\n _applyExtValues(11 /* eExtensions.DtExt */, event, DistributedTraceExtKeys, traceFields, false);\r\n }\r\n };\r\n function _getTraceCtx() {\r\n var traceCtx = _distributedTraceCtx;\r\n if (core && core.getTraceCtx) {\r\n traceCtx = core.getTraceCtx(false) || _distributedTraceCtx;\r\n }\r\n return traceCtx;\r\n }\r\n });\r\n }\r\n// Removed Stub for TelemetryContext.prototype.getTraceCtx.\r\n// Removed Stub for TelemetryContext.prototype.getSessionId.\r\n// Removed Stub for TelemetryContext.prototype.applyApplicationContext.\r\n// Removed Stub for TelemetryContext.prototype.applyUserContext.\r\n// Removed Stub for TelemetryContext.prototype.applyWebContext.\r\n// Removed Stub for TelemetryContext.prototype.applyOsContext.\r\n// Removed Stub for TelemetryContext.prototype.applySdkContext.\r\n// Removed Stub for TelemetryContext.prototype.applyIntWebContext.\r\n// Removed Stub for TelemetryContext.prototype.applyUtcContext.\r\n// Removed Stub for TelemetryContext.prototype.applyLocContext.\r\n// Removed Stub for TelemetryContext.prototype.applySessionContext.\r\n// Removed Stub for TelemetryContext.prototype.applyDeviceContext.\r\n// Removed Stub for TelemetryContext.prototype.applyCloudContext.\r\n// Removed Stub for TelemetryContext.prototype.applyAITraceContext.\r\n// Removed Stub for TelemetryContext.prototype.applyDistributedTraceContext.\r\n // This is a workaround for an IE8 bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n // this will be removed when ES3 support is dropped.\n TelemetryContext.__ieDyn=1;\n\n return TelemetryContext;\r\n}());\r\nexport { TelemetryContext };\r\n/**\r\n * Creates a IDistributedTraceContext from an optional telemetryTrace\r\n * @param traceContext - The ITraceContext instance that is being wrapped\r\n * @param parentCtx - An optional parent distributed trace instance, almost always undefined as this scenario is only used in the case of multiple property handlers.\r\n * @returns A new IDistributedTraceContext instance that is backed by the traceContext or temporary object\r\n */\r\nfunction createDistributedTraceContextFromTraceCtx(traceContext, parentCtx) {\r\n var trace = traceContext || {};\r\n return {\r\n getName: function () {\r\n return trace.name;\r\n },\r\n setName: function (newValue) {\r\n parentCtx && parentCtx.setName(newValue);\r\n trace.name = newValue;\r\n },\r\n getTraceId: function () {\r\n return trace.traceId;\r\n },\r\n setTraceId: function (newValue) {\r\n parentCtx && parentCtx.setTraceId(newValue);\r\n if (isValidTraceId(newValue)) {\r\n trace.traceId = newValue;\r\n }\r\n },\r\n getSpanId: function () {\r\n return trace.parentId;\r\n },\r\n setSpanId: function (newValue) {\r\n parentCtx && parentCtx.setSpanId(newValue);\r\n if (isValidSpanId(newValue)) {\r\n trace.parentId = newValue;\r\n }\r\n },\r\n getTraceFlags: function () {\r\n return trace.traceFlags;\r\n },\r\n setTraceFlags: function (newTraceFlags) {\r\n parentCtx && parentCtx.setTraceFlags(newTraceFlags);\r\n trace.traceFlags = newTraceFlags;\r\n }\r\n };\r\n}\r\n//# sourceMappingURL=TelemetryContext.js.map","/*\n * 1DS JS SDK Properties plugin, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\nimport { __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\n/**\r\n* PropertiesPlugin.ts\r\n* @author Abhilash Panwar (abpanwar) Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2018\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { BaseTelemetryPlugin, arrForEach, createProcessTelemetryContext, objForEachKey, objKeys, onConfigChange, setProcessTelemetryTimings } from \"@microsoft/1ds-core-js\";\r\nimport { cfgDfMerge, cfgDfString } from \"@microsoft/applicationinsights-core-js\";\r\nimport { objDeepFreeze } from \"@nevware21/ts-utils\";\r\nimport { Extensions } from \"./ExtensionKeys\";\r\nimport { TelemetryContext } from \"./TelemetryContext\";\r\nvar undefValue;\r\nvar extensions = [\r\n Extensions[4 /* eExtensions.AppExt */],\r\n Extensions[0 /* eExtensions.UserExt */],\r\n Extensions[3 /* eExtensions.WebExt */],\r\n Extensions[5 /* eExtensions.OSExt */],\r\n Extensions[6 /* eExtensions.SdkExt */],\r\n Extensions[7 /* eExtensions.IntWebExt */],\r\n Extensions[8 /* eExtensions.UtcExt */],\r\n Extensions[9 /* eExtensions.LocExt */],\r\n Extensions[1 /* eExtensions.DeviceExt */],\r\n Extensions[2 /* eExtensions.TraceExt */],\r\n Extensions[11 /* eExtensions.DtExt */],\r\n Extensions[10 /* eExtensions.CloudExt */]\r\n];\r\nvar defaultPropertyConfig = objDeepFreeze({\r\n populateBrowserInfo: false,\r\n populateOperatingSystemInfo: false,\r\n userAgent: cfgDfString(),\r\n userAgentData: cfgDfMerge({\r\n brands: undefValue,\r\n mobile: undefValue,\r\n platform: undefValue\r\n }),\r\n userConsentCookieName: cfgDfString(),\r\n userConsented: false,\r\n serviceName: cfgDfString(),\r\n env: cfgDfString(),\r\n expId: cfgDfString(),\r\n sessionRenewalMs: 1800000,\r\n sessionExpirationMs: 86400000,\r\n sessionAsGuid: null,\r\n cookieDomain: cfgDfString(),\r\n namePrefix: cfgDfString(),\r\n enableApplicationInsightsTrace: false,\r\n enableApplicationInsightsUser: false,\r\n hashIdentifiers: false,\r\n dropIdentifiers: false,\r\n scrubIpOnly: false,\r\n callback: cfgDfMerge({\r\n userConsentDetails: null\r\n }),\r\n gpcDataSharingOptIn: undefValue,\r\n idLength: 22,\r\n enableDistributedTracing: false,\r\n eventContainExtFields: false // Added in v3.2.5\r\n});\r\nvar PropertiesPlugin = /** @class */ (function (_super) {\r\n __extends(PropertiesPlugin, _super);\r\n function PropertiesPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = \"SystemPropertiesCollector\";\r\n _this.priority = 3;\r\n _this.version = '4.2.1';\r\n // Do not set default values here, set them in the _initDefaults() which is also called during teardown()\r\n var _context;\r\n var _properties;\r\n var _config;\r\n dynamicProto(PropertiesPlugin, _this, function (_self, _base) {\r\n _initDefaults();\r\n _self.initialize = function (coreConfig, core, extensions) {\r\n _base.initialize(coreConfig, core, extensions);\r\n _populateDefaults(coreConfig);\r\n };\r\n /**\r\n * Process the event and add part A fields to it.\r\n * @param event - The event that needs to be stored.\r\n * @param itemCtx - This is the context for the current request, ITelemetryPlugin instances\r\n * can optionally use this to access the current core instance or define / pass additional information\r\n * to later plugins (vs appending items to the telemetry item)\r\n */\r\n _self.processTelemetry = function (event, itemCtx) {\r\n setProcessTelemetryTimings(event, _self.identifier);\r\n itemCtx = _self._getTelCtx(itemCtx);\r\n var evtExt = event.ext = event.ext ? event.ext : {};\r\n event.data = event.data ? event.data : {};\r\n arrForEach(extensions, function (value) {\r\n evtExt[value] = evtExt[value] || {};\r\n });\r\n if (_context) {\r\n // Always apply the utc properties first as this sets the `ext.utc.eventFlags` which is required to tell\r\n // the collector to mask some fields\r\n _context.applyUtcContext(event);\r\n _context.applyApplicationContext(event);\r\n _context.applyUserContext(event);\r\n _context.applyWebContext(event);\r\n _context.applyOsContext(event);\r\n _context.applySdkContext(event);\r\n _context.applyIntWebContext(event);\r\n _context.applyLocContext(event);\r\n _context.applySessionContext(event);\r\n _context.applyDeviceContext(event);\r\n if (_config.enableApplicationInsightsTrace) {\r\n _context.applyAITraceContext(event);\r\n }\r\n if (_config.enableDistributedTracing) {\r\n _context.applyDistributedTraceContext(event);\r\n }\r\n _context.applyCloudContext(event);\r\n }\r\n // Delete empty ext fields\r\n arrForEach(objKeys(evtExt), function (key) {\r\n if (objKeys(evtExt[key]).length === 0) {\r\n delete evtExt[key];\r\n }\r\n });\r\n // Add custom properties\r\n _addPropertiesIfAbsent(_properties, event.data);\r\n _self.processNext(event, itemCtx);\r\n };\r\n /**\r\n * Get properties context to override or specify specific part A properties\r\n * @returns the Context\r\n */\r\n _self.getPropertiesContext = function () {\r\n return _context;\r\n };\r\n /**\r\n * Sets a custom property to be sent with every event. IEventProperty can be used to tag the property as\r\n * pii or customer content.\r\n * @param name - The name of the property.\r\n * @param value - The context property's value.\r\n */\r\n _self.setProperty = function (name, value) {\r\n _properties[name] = value;\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState) {\r\n var core = (unloadCtx || {}).core();\r\n if (core && core.getTraceCtx && _context) {\r\n var traceCtx = core.getTraceCtx(false);\r\n if (traceCtx && traceCtx === _context.getTraceCtx()) {\r\n core.setTraceCtx(null);\r\n }\r\n }\r\n _initDefaults();\r\n };\r\n _self[\"_getDbgPlgTargets\"] = function () {\r\n return [_config];\r\n };\r\n function _initDefaults() {\r\n _context = null;\r\n _properties = {};\r\n }\r\n function _populateDefaults(config) {\r\n var identifier = _self.identifier;\r\n var core = _self.core;\r\n // This function will be re-called whenever any referenced configuration is changed\r\n _self._addHook(onConfigChange(config, function () {\r\n var ctx = createProcessTelemetryContext(null, config, core);\r\n // Apply and re-apply defaults\r\n _config = ctx.getExtCfg(identifier, defaultPropertyConfig);\r\n }));\r\n // _context should be outside onConfigChange to avoid creating new instance every time\r\n _context = new TelemetryContext(config, _config, core, _self._unloadHooks);\r\n if (core && core.setTraceCtx) {\r\n core.setTraceCtx(_context.getTraceCtx());\r\n }\r\n }\r\n function _addPropertiesIfAbsent(inputMap, outputMap) {\r\n if (inputMap) {\r\n objForEachKey(inputMap, function (name, inputValue) {\r\n if (!outputMap[name]) {\r\n outputMap[name] = inputValue;\r\n }\r\n });\r\n }\r\n }\r\n });\r\n return _this;\r\n }\r\n// Removed Stub for PropertiesPlugin.prototype.initialize.\r\n// Removed Stub for PropertiesPlugin.prototype.processTelemetry.\r\n// Removed Stub for PropertiesPlugin.prototype.getPropertiesContext.\r\n// Removed Stub for PropertiesPlugin.prototype.setProperty.\r\n // This is a workaround for an IE8 bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n // this will be removed when ES3 support is dropped.\n PropertiesPlugin.__ieDyn=1;\n\n return PropertiesPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { PropertiesPlugin };\r\n//# sourceMappingURL=PropertiesPlugin.js.map","/*\n * 1DS JS SDK Analytics Web, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\nimport { __extendsFn as __extends } from \"@microsoft/applicationinsights-shims\";\r\n/**\r\n* ApplicationInsights.ts\r\n* @author Abhilash Panwar (abpanwar) and Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2018\r\n* Main class containing all the APIs.\r\n*/\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { AppInsightsCore, _throwInternal, arrIndexOf, createDynamicConfig, doPerf, dumpObj, isArray, isFunction, isNullOrUndefined, isString, objForEachKey, proxyAssign, proxyFunctions, throwError } from \"@microsoft/1ds-core-js\";\r\nimport { PostChannel } from \"@microsoft/1ds-post-js\";\r\nimport { PropertiesPlugin } from \"@microsoft/1ds-properties-js\";\r\nimport { ApplicationInsights as WebAnalytics } from \"@microsoft/1ds-wa-js\";\r\nimport { arrAppend, objDeepFreeze, objDefineProps } from \"@nevware21/ts-utils\";\r\n/**\r\n * The default settings for the config.\r\n * WE MUST include all defaults here to ensure that the config is created with all of the properties\r\n * defined as dynamic.\r\n */\r\nvar defaultConfig = objDeepFreeze({\r\n cookieCfg: { ref: true, v: {} },\r\n extensions: { rdOnly: true, ref: true, v: [] },\r\n channels: { rdOnly: true, ref: true, v: [] },\r\n extensionConfig: { ref: true, v: {} }\r\n});\r\n// This is an exclude list of properties that should not be updated during initialization\r\n// They include a combination of private and internal property names and properties\r\nvar _ignoreUpdateSnippetProperties = [\r\n \"snippet\", \"_webAnalytics\", \"_postChannel\", \"_propertyManager\", \"_extensions\"\r\n];\r\n// This is an exclude list of properties that may exist on both the snippet and the instance that\r\n// should not be updated during definition assignment\r\nvar _ignoreUpdateDefineSnippetProperties = [\r\n \"queue\", \"extensions\", \"version\", \"sv\"\r\n];\r\nvar ApplicationInsights = /** @class */ (function (_super) {\r\n __extends(ApplicationInsights, _super);\r\n function ApplicationInsights() {\r\n var _this = _super.call(this) || this;\r\n var _snippetVersion;\r\n var _webAnalytics;\r\n var _postChannel;\r\n var _propertyManager;\r\n dynamicProto(ApplicationInsights, _this, function (_self, _base) {\r\n _initDefaults();\r\n _self.initialize = function (config, extensions) {\r\n doPerf(_self, function () { return \"ApplicationInsights:initialize\"; }, function () {\r\n config = createDynamicConfig(config, defaultConfig, _self.logger, false).cfg;\r\n var plugins = [_propertyManager, _webAnalytics];\r\n if (extensions) {\r\n plugins = plugins.concat(extensions);\r\n }\r\n if (!config) {\r\n throwError(\"You must provide a config object!\");\r\n }\r\n if (config.channels && config.channels.length > 0) {\r\n // Add post channel to first fork if not available\r\n var postFound = false;\r\n for (var j = 0; j < config.channels[0].length; j++) {\r\n if (config.channels[0][j].identifier === _postChannel.identifier) {\r\n postFound = true;\r\n break;\r\n }\r\n }\r\n if (!postFound) {\r\n arrAppend(config.channels[0], _postChannel);\r\n }\r\n }\r\n else {\r\n // Push the subsequent channels\r\n config.channels.push([_postChannel]);\r\n }\r\n // Add configurations\r\n var extConfig = config.extensionConfig = config.extensionConfig || [];\r\n extConfig[_postChannel.identifier] = extConfig[_postChannel.identifier] || (config && config.channelConfiguration) || {};\r\n extConfig[_propertyManager.identifier] = extConfig[_propertyManager.identifier] || (config && config.propertyConfiguration) || {};\r\n extConfig[_webAnalytics.identifier] = extConfig[_webAnalytics.identifier] || (config && config.webAnalyticsConfiguration) || {};\r\n try {\r\n _base.initialize(config, plugins);\r\n if (_self.isInitialized()) {\r\n // Update the shared config to map the channelConfiguration and propertyConfiguration to return the extensionConfig values\r\n objDefineProps(config, {\r\n channelConfiguration: { g: function () { return config.extensionConfig[_postChannel.identifier]; } },\r\n propertyConfiguration: { g: function () { return config.extensionConfig[_propertyManager.identifier]; } },\r\n webAnalyticsConfiguration: { g: function () { return config.extensionConfig[_webAnalytics.identifier]; } }\r\n });\r\n }\r\n }\r\n catch (error) {\r\n _throwInternal(_self.logger, 1 /* eLoggingSeverity.CRITICAL */, 514 /* _eExtendedInternalMessageId.FailedToInitializeSDK */, \"Failed to initialize SDK.\" + dumpObj(error));\r\n }\r\n }, function () { return ({ config: config, extensions: extensions }); });\r\n };\r\n _self.getPropertyManager = function () {\r\n return _propertyManager;\r\n };\r\n _self.getPostChannel = function () {\r\n return _postChannel;\r\n };\r\n _self.getWebAnalyticsExtension = function () {\r\n return _webAnalytics;\r\n };\r\n // Expose these _webAnalytics functions directly on self\r\n proxyFunctions(_self, function () { return _webAnalytics; }, [\r\n \"trackEvent\",\r\n \"trackPageView\",\r\n \"trackPageAction\",\r\n \"trackContentUpdate\",\r\n \"trackPageUnload\",\r\n \"trackException\",\r\n \"trackPageViewPerformance\",\r\n \"capturePageView\",\r\n \"capturePageViewPerformance\",\r\n \"capturePageAction\",\r\n \"captureContentUpdate\",\r\n \"capturePageUnload\",\r\n \"_onerror\"\r\n ]);\r\n _self.emptySnippetQueue = function (snippet) {\r\n function _updateSnippetProperties() {\r\n if (snippet) {\r\n var snippetVer = \"\";\r\n if (!isNullOrUndefined(_snippetVersion)) {\r\n snippetVer += _snippetVersion;\r\n }\r\n // TODO (newylie): Need somewhere in Common Schema to put this value\r\n // let propManager = _self.getPropertyManager();\r\n // if (propManager) {\r\n // let context = propManager.getPropertiesContext();\r\n // if (_self.context && _self.context.internal) {\r\n // _self.context.internal.snippetVer = snippetVer || \"-\";\r\n // }\r\n // }\r\n // apply updated properties to the global instance (snippet)\r\n objForEachKey(_self, function (field, value) {\r\n if (isString(field) &&\r\n !isFunction(value) &&\r\n field && field[0] !== \"_\" && // Don't copy \"internal\" values\r\n arrIndexOf(_ignoreUpdateSnippetProperties, field) === -1) {\r\n try {\r\n snippet[field] = value;\r\n }\r\n catch (error) {\r\n // Unable to set the property -- so just ignore as it's probably a setter\r\n _throwInternal(_self.logger, 2 /* eLoggingSeverity.WARNING */, 514 /* _eExtendedInternalMessageId.FailedToInitializeSDK */, \"Failed to set [\" + field + \"] during initialization.\" + dumpObj(error));\r\n }\r\n }\r\n });\r\n }\r\n }\r\n // call functions that were queued before the main script was loaded\r\n try {\r\n _updateSnippetProperties();\r\n if (isArray(snippet.queue)) {\r\n // note: do not check length in the for-loop conditional in case something goes wrong and the stub methods are not overridden.\r\n var length = snippet.queue.length;\r\n for (var i = 0; i < length; i++) {\r\n var call = snippet.queue[i];\r\n call();\r\n }\r\n snippet.queue = undefined;\r\n delete snippet.queue;\r\n }\r\n }\r\n catch (exception) {\r\n var properties = {};\r\n if (exception && isFunction(exception.toString)) {\r\n properties.exception = exception.toString();\r\n }\r\n }\r\n };\r\n /**\r\n * Overwrite the lazy loaded fields of global window snippet to contain the\r\n * actual initialized API methods\r\n * @param snippet\r\n */\r\n _self.updateSnippetDefinitions = function (snippet) {\r\n var _self = _this;\r\n // Assign the snippet to this instance\r\n _self.snippet = snippet;\r\n _snippetVersion = \"\" + (snippet.sv || snippet.version || \"\");\r\n // The config (may) exist on both the snippet definition and the current instance, which by default would cause the\r\n // snippet version to be overwritten (even with a value of null or undefined - which is now the default to properly\r\n // support unloading\r\n var snipCfg = snippet.config;\r\n if (snipCfg) {\r\n // Update/Merge the existing config (if present)\r\n _self.updateCfg(snippet.config, true);\r\n }\r\n // apply full appInsights to the global instance\r\n // Note: This will be called BEFORE this instance has been initialized\r\n proxyAssign(snippet, _self, function (name) {\r\n // Not excluding names prefixed with \"_\" as we need to proxy some functions like _onError\r\n return name && arrIndexOf(_ignoreUpdateSnippetProperties, name) === -1 && arrIndexOf(_ignoreUpdateDefineSnippetProperties, name) === -1;\r\n });\r\n };\r\n _self.unload = function (isAsync, unloadComplete, cbTimeout) {\r\n if (isAsync === void 0) { isAsync = true; }\r\n return _base.unload(isAsync, function (unloadState) {\r\n _initDefaults();\r\n unloadComplete && unloadComplete(unloadState);\r\n }, cbTimeout);\r\n };\r\n });\r\n function _initDefaults() {\r\n // Initialize plugins\r\n _postChannel = new PostChannel();\r\n _propertyManager = new PropertiesPlugin();\r\n _webAnalytics = new WebAnalytics();\r\n }\r\n return _this;\r\n }\r\n// Removed Stub for ApplicationInsights.prototype.initialize.\r\n// Removed Stub for ApplicationInsights.prototype.getPropertyManager.\r\n// Removed Stub for ApplicationInsights.prototype.getPostChannel.\r\n// Removed Stub for ApplicationInsights.prototype.getWebAnalyticsExtension.\r\n// Removed Stub for ApplicationInsights.prototype.trackEvent.\r\n// Removed Stub for ApplicationInsights.prototype.trackPageView.\r\n// Removed Stub for ApplicationInsights.prototype.trackPageAction.\r\n// Removed Stub for ApplicationInsights.prototype.trackContentUpdate.\r\n// Removed Stub for ApplicationInsights.prototype.trackPageUnload.\r\n// Removed Stub for ApplicationInsights.prototype.trackException.\r\n// Removed Stub for ApplicationInsights.prototype.trackPageViewPerformance.\r\n// Removed Stub for ApplicationInsights.prototype.capturePageView.\r\n// Removed Stub for ApplicationInsights.prototype.capturePageViewPerformance.\r\n// Removed Stub for ApplicationInsights.prototype.capturePageAction.\r\n// Removed Stub for ApplicationInsights.prototype.captureContentUpdate.\r\n// Removed Stub for ApplicationInsights.prototype.capturePageUnload.\r\n// Removed Stub for ApplicationInsights.prototype._onerror.\r\n// Removed Stub for ApplicationInsights.prototype.emptySnippetQueue.\r\n// Removed Stub for ApplicationInsights.prototype.updateSnippetDefinitions.\r\n// Removed Stub for ApplicationInsights.prototype.unload.\r\n // This is a workaround for an IE8 bug when using dynamicProto() with classes that don't have any\n // non-dynamic functions or static properties/functions when using uglify-js to minify the resulting code.\n // this will be removed when ES3 support is dropped.\n ApplicationInsights.__ieDyn=1;\n\n return ApplicationInsights;\r\n}(AppInsightsCore));\r\nexport { ApplicationInsights };\r\n//# sourceMappingURL=ApplicationInsights.js.map","/*\n * 1DS JS SDK Analytics Web, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n/**\r\n* Index.ts\r\n* @author Abhilash Panwar (abpanwar) and Hector Hernandez (hectorh)\r\n* @copyright Microsoft 2018\r\n* File to export public classes, interfaces and enums.\r\n*/\r\nimport { AppInsightsCore, DiagnosticLogger, EventLatency, EventPersistence, EventsDiscardedReason, MinChannelPriorty, NotificationManager, TraceLevel, ValueKind, dumpObj, getGlobal } from \"@microsoft/1ds-core-js\";\r\nimport { BE_PROFILE, NRT_PROFILE, PostChannel, RT_PROFILE } from \"@microsoft/1ds-post-js\";\r\nimport { PropertiesPlugin } from \"@microsoft/1ds-properties-js\";\r\nimport { ActionType, ApplicationInsights as WebAnalytics, AutoCaptureHandler, Behavior } from \"@microsoft/1ds-wa-js\";\r\nimport { ApplicationInsights } from \"./ApplicationInsights\";\r\nexport { ApplicationInsights, MinChannelPriorty, ValueKind, EventLatency, EventPersistence, TraceLevel, NotificationManager, PropertiesPlugin, PostChannel, BE_PROFILE, NRT_PROFILE, RT_PROFILE, EventsDiscardedReason, DiagnosticLogger, ActionType, Behavior, WebAnalytics, AppInsightsCore, AutoCaptureHandler };\r\nvar Undefined = \"undefined\";\r\nfunction _logWarn(aiName, message) {\r\n // TODO: Find better place to warn to console when SDK initialization fails\r\n var _console = typeof console !== Undefined ? console : null;\r\n if (_console) {\r\n var func = \"warn\";\r\n if (!_console[func]) {\r\n func = \"log\";\r\n }\r\n _console[func](\"Failed to initialize AppInsights JS SDK for instance \" + (aiName || \"\") + \" - \" + message);\r\n }\r\n}\r\n(function () {\r\n // should be global function that should load as soon as SDK loads\r\n try {\r\n // E2E sku on load initializes core and pipeline using snippet as input for configuration\r\n var aiName = \"oneDSWeb\";\r\n var global = getGlobal();\r\n if (global) {\r\n if (typeof JSON !== \"undefined\") {\r\n // get snippet or initialize to an empty object\r\n aiName = global[\"onedsSDK\"] || aiName;\r\n if (global[aiName] !== undefined) {\r\n var snippet = global[aiName];\r\n var ai = new ApplicationInsights();\r\n ai.updateSnippetDefinitions(snippet);\r\n ai.initialize(snippet.config, snippet.extensions);\r\n // Update global instance\r\n global[aiName] = ai;\r\n ai.emptySnippetQueue(snippet);\r\n }\r\n }\r\n else {\r\n _logWarn(aiName, \"Missing JSON - you must supply a JSON polyfill!\");\r\n }\r\n }\r\n else {\r\n _logWarn(aiName, \"Missing global/window\");\r\n }\r\n }\r\n catch (e) {\r\n _logWarn(aiName, \"Unexpected Error: \" + dumpObj(e));\r\n }\r\n})();\r\n//# sourceMappingURL=Index.js.map","/**\n * The helper functions here will make the target element as modal to screen readers, by placing aria-hidden on elements\n * that are siblings to the target element and the target element's ancestors (because aria-hidden gets inherited).\n * That way, all other elements on the page are hidden to the screen reader.\n */\nimport { getDocument } from './dom/getDocument';\n/** Tag names to ignore when modalizing */\nvar tagsToIgnore = ['TEMPLATE', 'STYLE', 'SCRIPT'];\n/**\n * Call this on a target element to make it modal to screen readers.\n * Returns a function that undoes the changes it made.\n */\nexport function modalize(target) {\n var targetDocument = getDocument(target);\n if (!targetDocument) {\n // can't do this in SSR\n return function () { return undefined; };\n }\n var affectedNodes = [];\n // start at target, then recurse and do the same for parent, until we reach \n while (target !== targetDocument.body && target.parentElement) {\n // grab all siblings of current element\n for (var _i = 0, _a = target.parentElement.children; _i < _a.length; _i++) {\n var sibling = _a[_i];\n // but ignore elements that are already aria-hidden\n var ariaHidden = sibling.getAttribute('aria-hidden');\n if (sibling !== target && (ariaHidden === null || ariaHidden === void 0 ? void 0 : ariaHidden.toLowerCase()) !== 'true' && tagsToIgnore.indexOf(sibling.tagName) === -1) {\n affectedNodes.push([sibling, ariaHidden]);\n }\n }\n target = target.parentElement;\n }\n // take all those elements and set aria-hidden=true on them\n affectedNodes.forEach(function (_a) {\n var node = _a[0];\n node.setAttribute('aria-hidden', 'true');\n });\n return function () {\n unmodalize(affectedNodes);\n affectedNodes = []; // dispose\n };\n}\n/**\n * Undoes the changes that modalize() did.\n */\nfunction unmodalize(affectedNodes) {\n affectedNodes.forEach(function (_a) {\n var node = _a[0], originalValue = _a[1];\n // Restore the original value (false or unset)\n if (originalValue) {\n node.setAttribute('aria-hidden', originalValue);\n }\n else {\n node.removeAttribute('aria-hidden');\n }\n });\n}\n//# sourceMappingURL=modalize.js.map","import * as React from 'react';\nexport var CustomizerContext = React.createContext({\n customizations: {\n inCustomizerContext: false,\n settings: {},\n scopedSettings: {},\n },\n});\n//# sourceMappingURL=CustomizerContext.js.map","import { Depths } from './FluentDepths';\nexport var DefaultEffects = {\n elevation4: Depths.depth4,\n elevation8: Depths.depth8,\n elevation16: Depths.depth16,\n elevation64: Depths.depth64,\n roundedCorner2: '2px',\n roundedCorner4: '4px',\n roundedCorner6: '6px',\n};\n//# sourceMappingURL=DefaultEffects.js.map","export var SELECTION_CHANGE = 'change';\nexport var SELECTION_ITEMS_CHANGE = 'items-change';\n/**\n * {@docCategory Selection}\n */\nexport var SelectionMode;\n(function (SelectionMode) {\n SelectionMode[SelectionMode[\"none\"] = 0] = \"none\";\n SelectionMode[SelectionMode[\"single\"] = 1] = \"single\";\n SelectionMode[SelectionMode[\"multiple\"] = 2] = \"multiple\";\n})(SelectionMode || (SelectionMode = {}));\n/**\n * {@docCategory Selection}\n */\nexport var SelectionDirection;\n(function (SelectionDirection) {\n SelectionDirection[SelectionDirection[\"horizontal\"] = 0] = \"horizontal\";\n SelectionDirection[SelectionDirection[\"vertical\"] = 1] = \"vertical\";\n})(SelectionDirection || (SelectionDirection = {}));\n//# sourceMappingURL=Selection.types.js.map","var _baseUrl = '';\n/**\n * @deprecated Unused as of version 8\n */\nexport function getResourceUrl(url) {\n return _baseUrl + url;\n}\n/**\n * @deprecated Unused as of version 8\n */\nexport function setBaseUrl(baseUrl) {\n _baseUrl = baseUrl;\n}\n//# sourceMappingURL=resources.js.map","import { extendComponent } from './extendComponent';\n/**\n * Generates a function to be attached to a React component, which can be called\n * as a replacement to RAF. In-flight async calls will be auto canceled if the component\n * is unmounting before the async code is executed, preventing bugs where code\n * accesses things within the component after being unmounted.\n */\nexport var safeRequestAnimationFrame = function (component) {\n var activeTimeouts;\n return function (cb) {\n if (!activeTimeouts) {\n activeTimeouts = new Set();\n extendComponent(component, {\n componentWillUnmount: function () {\n activeTimeouts.forEach(function (id) { return cancelAnimationFrame(id); });\n },\n });\n }\n var timeoutId = requestAnimationFrame(function () {\n activeTimeouts.delete(timeoutId);\n cb();\n });\n activeTimeouts.add(timeoutId);\n };\n};\n//# sourceMappingURL=safeRequestAnimationFrame.js.map","import { createMemoizer } from '../memoize';\nfunction createComposedRenderFunction(outer) {\n var outerMemoizer = createMemoizer(function (inner) {\n var innerMemoizer = createMemoizer(function (defaultRender) {\n return function (innerProps) {\n return inner(innerProps, defaultRender);\n };\n });\n return function (outerProps, defaultRender) {\n return outer(outerProps, defaultRender ? innerMemoizer(defaultRender) : inner);\n };\n });\n return outerMemoizer;\n}\nvar memoizer = createMemoizer(createComposedRenderFunction);\n/**\n * Composes two 'render functions' to produce a final render function that renders\n * the outer function, passing the inner function as 'default render'. The inner function\n * is then passed the original 'default render' prop.\n * @public\n */\nexport function composeRenderFunction(outer, inner) {\n return memoizer(outer)(inner);\n}\n//# sourceMappingURL=composeRenderFunction.js.map","import { getWindow } from './dom/getWindow';\n/**\n * Bugs often appear in async code when stuff gets disposed, but async operations don't get canceled.\n * This Async helper class solves these issues by tying async code to the lifetime of a disposable object.\n *\n * Usage: Anything class extending from BaseModel can access this helper via this.async. Otherwise create a\n * new instance of the class and remember to call dispose() during your code's dispose handler.\n *\n * @public\n */\nvar Async = /** @class */ (function () {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function Async(parent, onError) {\n this._timeoutIds = null;\n this._immediateIds = null;\n this._intervalIds = null;\n this._animationFrameIds = null;\n this._isDisposed = false;\n this._parent = parent || null;\n this._onErrorHandler = onError;\n this._noop = function () {\n /* do nothing */\n };\n }\n /**\n * Dispose function, clears all async operations.\n */\n Async.prototype.dispose = function () {\n var id;\n this._isDisposed = true;\n this._parent = null;\n // Clear timeouts.\n if (this._timeoutIds) {\n for (id in this._timeoutIds) {\n if (this._timeoutIds.hasOwnProperty(id)) {\n this.clearTimeout(parseInt(id, 10));\n }\n }\n this._timeoutIds = null;\n }\n // Clear immediates.\n if (this._immediateIds) {\n for (id in this._immediateIds) {\n if (this._immediateIds.hasOwnProperty(id)) {\n this.clearImmediate(parseInt(id, 10));\n }\n }\n this._immediateIds = null;\n }\n // Clear intervals.\n if (this._intervalIds) {\n for (id in this._intervalIds) {\n if (this._intervalIds.hasOwnProperty(id)) {\n this.clearInterval(parseInt(id, 10));\n }\n }\n this._intervalIds = null;\n }\n // Clear animation frames.\n if (this._animationFrameIds) {\n for (id in this._animationFrameIds) {\n if (this._animationFrameIds.hasOwnProperty(id)) {\n this.cancelAnimationFrame(parseInt(id, 10));\n }\n }\n this._animationFrameIds = null;\n }\n };\n /**\n * SetTimeout override, which will auto cancel the timeout during dispose.\n * @param callback - Callback to execute.\n * @param duration - Duration in milliseconds.\n * @returns The setTimeout id.\n */\n Async.prototype.setTimeout = function (callback, duration) {\n var _this = this;\n var timeoutId = 0;\n if (!this._isDisposed) {\n if (!this._timeoutIds) {\n this._timeoutIds = {};\n }\n timeoutId = setTimeout(function () {\n // Time to execute the timeout, enqueue it as a foreground task to be executed.\n try {\n // Now delete the record and call the callback.\n if (_this._timeoutIds) {\n delete _this._timeoutIds[timeoutId];\n }\n callback.apply(_this._parent);\n }\n catch (e) {\n _this._logError(e);\n }\n }, duration);\n this._timeoutIds[timeoutId] = true;\n }\n return timeoutId;\n };\n /**\n * Clears the timeout.\n * @param id - Id to cancel.\n */\n Async.prototype.clearTimeout = function (id) {\n if (this._timeoutIds && this._timeoutIds[id]) {\n clearTimeout(id);\n delete this._timeoutIds[id];\n }\n };\n /**\n * SetImmediate override, which will auto cancel the immediate during dispose.\n * @param callback - Callback to execute.\n * @param targetElement - Optional target element to use for identifying the correct window.\n * @returns The setTimeout id.\n */\n Async.prototype.setImmediate = function (callback, targetElement) {\n var _this = this;\n var immediateId = 0;\n var win = getWindow(targetElement);\n if (!this._isDisposed) {\n if (!this._immediateIds) {\n this._immediateIds = {};\n }\n var setImmediateCallback = function () {\n // Time to execute the timeout, enqueue it as a foreground task to be executed.\n try {\n // Now delete the record and call the callback.\n if (_this._immediateIds) {\n delete _this._immediateIds[immediateId];\n }\n callback.apply(_this._parent);\n }\n catch (e) {\n _this._logError(e);\n }\n };\n immediateId = win.setTimeout(setImmediateCallback, 0);\n this._immediateIds[immediateId] = true;\n }\n return immediateId;\n };\n /**\n * Clears the immediate.\n * @param id - Id to cancel.\n * @param targetElement - Optional target element to use for identifying the correct window.\n */\n Async.prototype.clearImmediate = function (id, targetElement) {\n var win = getWindow(targetElement);\n if (this._immediateIds && this._immediateIds[id]) {\n win.clearTimeout(id);\n delete this._immediateIds[id];\n }\n };\n /**\n * SetInterval override, which will auto cancel the timeout during dispose.\n * @param callback - Callback to execute.\n * @param duration - Duration in milliseconds.\n * @returns The setTimeout id.\n */\n Async.prototype.setInterval = function (callback, duration) {\n var _this = this;\n var intervalId = 0;\n if (!this._isDisposed) {\n if (!this._intervalIds) {\n this._intervalIds = {};\n }\n intervalId = setInterval(function () {\n // Time to execute the interval callback, enqueue it as a foreground task to be executed.\n try {\n callback.apply(_this._parent);\n }\n catch (e) {\n _this._logError(e);\n }\n }, duration);\n this._intervalIds[intervalId] = true;\n }\n return intervalId;\n };\n /**\n * Clears the interval.\n * @param id - Id to cancel.\n */\n Async.prototype.clearInterval = function (id) {\n if (this._intervalIds && this._intervalIds[id]) {\n clearInterval(id);\n delete this._intervalIds[id];\n }\n };\n /**\n * Creates a function that, when executed, will only call the func function at most once per\n * every wait milliseconds. Provide an options object to indicate that func should be invoked\n * on the leading and/or trailing edge of the wait timeout. Subsequent calls to the throttled\n * function will return the result of the last func call.\n *\n * Note: If leading and trailing options are true func will be called on the trailing edge of\n * the timeout only if the throttled function is invoked more than once during the wait timeout.\n *\n * @param func - The function to throttle.\n * @param wait - The number of milliseconds to throttle executions to. Defaults to 0.\n * @param options - The options object.\n * @returns The new throttled function.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Async.prototype.throttle = function (func, wait, options) {\n var _this = this;\n if (this._isDisposed) {\n return this._noop;\n }\n var waitMS = wait || 0;\n var leading = true;\n var trailing = true;\n var lastExecuteTime = 0;\n var lastResult;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var lastArgs;\n var timeoutId = null;\n if (options && typeof options.leading === 'boolean') {\n leading = options.leading;\n }\n if (options && typeof options.trailing === 'boolean') {\n trailing = options.trailing;\n }\n var callback = function (userCall) {\n var now = Date.now();\n var delta = now - lastExecuteTime;\n var waitLength = leading ? waitMS - delta : waitMS;\n if (delta >= waitMS && (!userCall || leading)) {\n lastExecuteTime = now;\n if (timeoutId) {\n _this.clearTimeout(timeoutId);\n timeoutId = null;\n }\n lastResult = func.apply(_this._parent, lastArgs);\n }\n else if (timeoutId === null && trailing) {\n timeoutId = _this.setTimeout(callback, waitLength);\n }\n return lastResult;\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var resultFunction = (function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n lastArgs = args;\n return callback(true);\n });\n return resultFunction;\n };\n /**\n * Creates a function that will delay the execution of func until after wait milliseconds have\n * elapsed since the last time it was invoked. Provide an options object to indicate that func\n * should be invoked on the leading and/or trailing edge of the wait timeout. Subsequent calls\n * to the debounced function will return the result of the last func call.\n *\n * Note: If leading and trailing options are true func will be called on the trailing edge of\n * the timeout only if the debounced function is invoked more than once during the wait\n * timeout.\n *\n * @param func - The function to debounce.\n * @param wait - The number of milliseconds to delay.\n * @param options - The options object.\n * @returns The new debounced function.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Async.prototype.debounce = function (func, wait, options) {\n var _this = this;\n if (this._isDisposed) {\n var noOpFunction = (function () {\n /** Do nothing */\n });\n noOpFunction.cancel = function () {\n return;\n };\n noOpFunction.flush = (function () { return null; });\n noOpFunction.pending = function () { return false; };\n return noOpFunction;\n }\n var waitMS = wait || 0;\n var leading = false;\n var trailing = true;\n var maxWait = null;\n var lastCallTime = 0;\n var lastExecuteTime = Date.now();\n var lastResult;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var lastArgs;\n var timeoutId = null;\n if (options && typeof options.leading === 'boolean') {\n leading = options.leading;\n }\n if (options && typeof options.trailing === 'boolean') {\n trailing = options.trailing;\n }\n if (options && typeof options.maxWait === 'number' && !isNaN(options.maxWait)) {\n maxWait = options.maxWait;\n }\n var markExecuted = function (time) {\n if (timeoutId) {\n _this.clearTimeout(timeoutId);\n timeoutId = null;\n }\n lastExecuteTime = time;\n };\n var invokeFunction = function (time) {\n markExecuted(time);\n lastResult = func.apply(_this._parent, lastArgs);\n };\n var callback = function (userCall) {\n var now = Date.now();\n var executeImmediately = false;\n if (userCall) {\n if (leading && now - lastCallTime >= waitMS) {\n executeImmediately = true;\n }\n lastCallTime = now;\n }\n var delta = now - lastCallTime;\n var waitLength = waitMS - delta;\n var maxWaitDelta = now - lastExecuteTime;\n var maxWaitExpired = false;\n if (maxWait !== null) {\n // maxWait only matters when there is a pending callback\n if (maxWaitDelta >= maxWait && timeoutId) {\n maxWaitExpired = true;\n }\n else {\n waitLength = Math.min(waitLength, maxWait - maxWaitDelta);\n }\n }\n if (delta >= waitMS || maxWaitExpired || executeImmediately) {\n invokeFunction(now);\n }\n else if ((timeoutId === null || !userCall) && trailing) {\n timeoutId = _this.setTimeout(callback, waitLength);\n }\n return lastResult;\n };\n var pending = function () {\n return !!timeoutId;\n };\n var cancel = function () {\n if (pending()) {\n // Mark the debounced function as having executed\n markExecuted(Date.now());\n }\n };\n var flush = function () {\n if (pending()) {\n invokeFunction(Date.now());\n }\n return lastResult;\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var resultFunction = (function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n lastArgs = args;\n return callback(true);\n });\n resultFunction.cancel = cancel;\n resultFunction.flush = flush;\n resultFunction.pending = pending;\n return resultFunction;\n };\n Async.prototype.requestAnimationFrame = function (callback, targetElement) {\n var _this = this;\n var animationFrameId = 0;\n var win = getWindow(targetElement);\n if (!this._isDisposed) {\n if (!this._animationFrameIds) {\n this._animationFrameIds = {};\n }\n var animationFrameCallback = function () {\n try {\n // Now delete the record and call the callback.\n if (_this._animationFrameIds) {\n delete _this._animationFrameIds[animationFrameId];\n }\n callback.apply(_this._parent);\n }\n catch (e) {\n _this._logError(e);\n }\n };\n animationFrameId = win.requestAnimationFrame\n ? win.requestAnimationFrame(animationFrameCallback)\n : win.setTimeout(animationFrameCallback, 0);\n this._animationFrameIds[animationFrameId] = true;\n }\n return animationFrameId;\n };\n Async.prototype.cancelAnimationFrame = function (id, targetElement) {\n var win = getWindow(targetElement);\n if (this._animationFrameIds && this._animationFrameIds[id]) {\n win.cancelAnimationFrame ? win.cancelAnimationFrame(id) : win.clearTimeout(id);\n delete this._animationFrameIds[id];\n }\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Async.prototype._logError = function (e) {\n if (this._onErrorHandler) {\n this._onErrorHandler(e);\n }\n };\n return Async;\n}());\nexport { Async };\n//# sourceMappingURL=Async.js.map","import { appendFunction } from './appendFunction';\n/**\n * Extends a component's lifetime methods by appending new functions to the existing lifetime functions.\n */\nexport function extendComponent(parent, methods) {\n for (var name_1 in methods) {\n if (methods.hasOwnProperty(name_1)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n parent[name_1] = appendFunction(parent, parent[name_1], methods[name_1]);\n }\n }\n}\n//# sourceMappingURL=extendComponent.js.map","var toObjectMap = function () {\n var items = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n items[_i] = arguments[_i];\n }\n var result = {};\n for (var _a = 0, items_1 = items; _a < items_1.length; _a++) {\n var item = items_1[_a];\n var keys = Array.isArray(item) ? item : Object.keys(item);\n for (var _b = 0, keys_1 = keys; _b < keys_1.length; _b++) {\n var key = keys_1[_b];\n result[key] = 1;\n }\n }\n return result;\n};\n/**\n * An array of events that are allowed on every html element type.\n *\n * @public\n */\nexport var baseElementEvents = toObjectMap([\n 'onCopy',\n 'onCut',\n 'onPaste',\n 'onCompositionEnd',\n 'onCompositionStart',\n 'onCompositionUpdate',\n 'onFocus',\n 'onFocusCapture',\n 'onBlur',\n 'onBlurCapture',\n 'onChange',\n 'onInput',\n 'onSubmit',\n 'onLoad',\n 'onError',\n 'onKeyDown',\n 'onKeyDownCapture',\n 'onKeyPress',\n 'onKeyUp',\n 'onAbort',\n 'onCanPlay',\n 'onCanPlayThrough',\n 'onDurationChange',\n 'onEmptied',\n 'onEncrypted',\n 'onEnded',\n 'onLoadedData',\n 'onLoadedMetadata',\n 'onLoadStart',\n 'onPause',\n 'onPlay',\n 'onPlaying',\n 'onProgress',\n 'onRateChange',\n 'onSeeked',\n 'onSeeking',\n 'onStalled',\n 'onSuspend',\n 'onTimeUpdate',\n 'onVolumeChange',\n 'onWaiting',\n 'onClick',\n 'onClickCapture',\n 'onContextMenu',\n 'onDoubleClick',\n 'onDrag',\n 'onDragEnd',\n 'onDragEnter',\n 'onDragExit',\n 'onDragLeave',\n 'onDragOver',\n 'onDragStart',\n 'onDrop',\n 'onMouseDown',\n 'onMouseDownCapture',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onMouseUpCapture',\n 'onSelect',\n 'onTouchCancel',\n 'onTouchEnd',\n 'onTouchMove',\n 'onTouchStart',\n 'onScroll',\n 'onWheel',\n 'onPointerCancel',\n 'onPointerDown',\n 'onPointerEnter',\n 'onPointerLeave',\n 'onPointerMove',\n 'onPointerOut',\n 'onPointerOver',\n 'onPointerUp',\n 'onGotPointerCapture',\n 'onLostPointerCapture',\n]);\n/**\n * An array of element attributes which are allowed on every html element type.\n *\n * @public\n */\nexport var baseElementProperties = toObjectMap([\n 'accessKey',\n 'children',\n 'className',\n 'contentEditable',\n 'dir',\n 'draggable',\n 'hidden',\n 'htmlFor',\n 'id',\n 'lang',\n 'ref',\n 'role',\n 'style',\n 'tabIndex',\n 'title',\n 'translate',\n 'spellCheck',\n 'name', // global\n]);\n/**\n * An array of HTML element properties and events.\n *\n * @public\n */\nexport var htmlElementProperties = toObjectMap(baseElementProperties, baseElementEvents);\n/**\n * An array of LABEL tag properties and events.\n *\n * @public\n */\nexport var labelProperties = toObjectMap(htmlElementProperties, [\n 'form', // button, fieldset, input, label, meter, object, output, select, textarea\n]);\n/**\n * An array of AUDIO tag properties and events.\n\n * @public\n */\nexport var audioProperties = toObjectMap(htmlElementProperties, [\n 'height',\n 'loop',\n 'muted',\n 'preload',\n 'src',\n 'width', // canvas, embed, iframe, img, input, object, video\n]);\n/**\n * An array of VIDEO tag properties and events.\n *\n * @public\n */\nexport var videoProperties = toObjectMap(audioProperties, [\n 'poster', // video\n]);\n/**\n * An array of OL tag properties and events.\n *\n * @public\n */\nexport var olProperties = toObjectMap(htmlElementProperties, [\n 'start', // ol\n]);\n/**\n * An array of LI tag properties and events.\n *\n * @public\n */\nexport var liProperties = toObjectMap(htmlElementProperties, [\n 'value', // button, input, li, option, meter, progress, param\n]);\n/**\n * An array of A tag properties and events.\n *\n * @public\n */\nexport var anchorProperties = toObjectMap(htmlElementProperties, [\n 'download',\n 'href',\n 'hrefLang',\n 'media',\n 'rel',\n 'target',\n 'type', // a, button, input, link, menu, object, script, source, style\n]);\n/**\n * An array of BUTTON tag properties and events.\n *\n * @public\n */\nexport var buttonProperties = toObjectMap(htmlElementProperties, [\n 'autoFocus',\n 'disabled',\n 'form',\n 'formAction',\n 'formEncType',\n 'formMethod',\n 'formNoValidate',\n 'formTarget',\n 'type',\n 'value', // button, input, li, option, meter, progress, param,\n]);\n/**\n * An array of INPUT tag properties and events.\n *\n * @public\n */\nexport var inputProperties = toObjectMap(buttonProperties, [\n 'accept',\n 'alt',\n 'autoCapitalize',\n 'autoComplete',\n 'checked',\n 'dirname',\n 'form',\n 'height',\n 'inputMode',\n 'list',\n 'max',\n 'maxLength',\n 'min',\n 'minLength',\n 'multiple',\n 'pattern',\n 'placeholder',\n 'readOnly',\n 'required',\n 'src',\n 'step',\n 'size',\n 'type',\n 'value',\n 'width', // canvas, embed, iframe, img, input, object, video\n]);\n/**\n * An array of TEXTAREA tag properties and events.\n *\n * @public\n */\nexport var textAreaProperties = toObjectMap(buttonProperties, [\n 'autoCapitalize',\n 'cols',\n 'dirname',\n 'form',\n 'maxLength',\n 'minLength',\n 'placeholder',\n 'readOnly',\n 'required',\n 'rows',\n 'wrap', // textarea\n]);\n/**\n * An array of SELECT tag properties and events.\n *\n * @public\n */\nexport var selectProperties = toObjectMap(buttonProperties, [\n 'form',\n 'multiple',\n 'required', // input, select, textarea\n]);\nexport var optionProperties = toObjectMap(htmlElementProperties, [\n 'selected',\n 'value', // button, input, li, option, meter, progress, param\n]);\n/**\n * An array of TABLE tag properties and events.\n *\n * @public\n */\nexport var tableProperties = toObjectMap(htmlElementProperties, [\n 'cellPadding',\n 'cellSpacing', // table\n]);\n/**\n * An array of TR tag properties and events.\n *\n * @public\n */\nexport var trProperties = htmlElementProperties;\n/**\n * An array of TH tag properties and events.\n *\n * @public\n */\nexport var thProperties = toObjectMap(htmlElementProperties, [\n 'rowSpan',\n 'scope', // th\n]);\n/**\n * An array of TD tag properties and events.\n *\n * @public\n */\nexport var tdProperties = toObjectMap(htmlElementProperties, [\n 'colSpan',\n 'headers',\n 'rowSpan',\n 'scope', // th\n]);\nexport var colGroupProperties = toObjectMap(htmlElementProperties, [\n 'span', // col, colgroup\n]);\nexport var colProperties = toObjectMap(htmlElementProperties, [\n 'span', // col, colgroup\n]);\n/**\n * An array of FORM tag properties and events.\n *\n * @public\n */\nexport var formProperties = toObjectMap(htmlElementProperties, [\n 'acceptCharset',\n 'action',\n 'encType',\n 'encType',\n 'method',\n 'noValidate',\n 'target', // form\n]);\n/**\n * An array of IFRAME tag properties and events.\n *\n * @public\n */\nexport var iframeProperties = toObjectMap(htmlElementProperties, [\n 'allow',\n 'allowFullScreen',\n 'allowPaymentRequest',\n 'allowTransparency',\n 'csp',\n 'height',\n 'importance',\n 'referrerPolicy',\n 'sandbox',\n 'src',\n 'srcDoc',\n 'width', // canvas, embed, iframe, img, input, object, video,\n]);\n/**\n * An array of IMAGE tag properties and events.\n *\n * @public\n */\nexport var imgProperties = toObjectMap(htmlElementProperties, [\n 'alt',\n 'crossOrigin',\n 'height',\n 'src',\n 'srcSet',\n 'useMap',\n 'width', // canvas, embed, iframe, img, input, object, video\n]);\n/**\n * @deprecated Use imgProperties for img elements.\n */\nexport var imageProperties = imgProperties;\n/**\n * An array of DIV tag properties and events.\n *\n * @public\n */\nexport var divProperties = htmlElementProperties;\n/**\n * Gets native supported props for an html element provided the allowance set. Use one of the property\n * sets defined (divProperties, buttonPropertes, etc) to filter out supported properties from a given\n * props set. Note that all data- and aria- prefixed attributes will be allowed.\n * NOTE: getNativeProps should always be applied first when adding props to a react component. The\n * non-native props should be applied second. This will prevent getNativeProps from overriding your custom props.\n * For example, if props passed to getNativeProps has an onClick function and getNativeProps is added to\n * the component after an onClick function is added, then the getNativeProps onClick will override it.\n *\n * @public\n * @param props - The unfiltered input props\n * @param allowedPropsNames - The array or record of allowed prop names.\n * @returns The filtered props\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function getNativeProps(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nprops, allowedPropNames, excludedPropNames) {\n // It'd be great to properly type this while allowing 'aria-` and 'data-' attributes like TypeScript does for\n // JSX attributes, but that ability is hardcoded into the TS compiler with no analog in TypeScript typings.\n // Then we'd be able to enforce props extends native props (including aria- and data- attributes), and then\n // return native props.\n // We should be able to do this once this PR is merged: https://github.com/microsoft/TypeScript/pull/26797\n var isArray = Array.isArray(allowedPropNames);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var result = {};\n var keys = Object.keys(props);\n for (var _i = 0, keys_2 = keys; _i < keys_2.length; _i++) {\n var key = keys_2[_i];\n var isNativeProp = (!isArray && allowedPropNames[key]) ||\n (isArray && allowedPropNames.indexOf(key) >= 0) ||\n key.indexOf('data-') === 0 ||\n key.indexOf('aria-') === 0;\n if (isNativeProp && (!excludedPropNames || (excludedPropNames === null || excludedPropNames === void 0 ? void 0 : excludedPropNames.indexOf(key)) === -1)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n result[key] = props[key];\n }\n }\n return result;\n}\n//# sourceMappingURL=properties.js.map","import * as React from 'react';\nimport { Customizations } from './Customizations';\nimport { CustomizerContext } from './CustomizerContext';\n/**\n * Hook to get Customizations settings from Customizations singleton or CustomizerContext.\n * It will trigger component state update on settings change observed.\n */\nexport function useCustomizationSettings(properties, scopeName) {\n var forceUpdate = useForceUpdate();\n var customizations = React.useContext(CustomizerContext).customizations;\n var inCustomizerContext = customizations.inCustomizerContext;\n React.useEffect(function () {\n if (!inCustomizerContext) {\n Customizations.observe(forceUpdate);\n }\n return function () {\n if (!inCustomizerContext) {\n Customizations.unobserve(forceUpdate);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- exclude forceUpdate\n }, [inCustomizerContext]);\n return Customizations.getSettings(properties, scopeName, customizations);\n}\nfunction useForceUpdate() {\n var _a = React.useState(0), setValue = _a[1];\n return function () { return setValue(function (value) { return ++value; }); };\n}\n//# sourceMappingURL=useCustomizationSettings.js.map","/*\n * 1DS JS SDK Core, 4.2.1\n * Copyright (c) Microsoft and contributors. All rights reserved.\n * (Microsoft Internal Only)\n */\n\r\n// Licensed under the MIT License.\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Generally you should only put values that are used more than 2 times and then only if not already exposed as a constant (such as SdkCoreNames)\r\n// as when using \"short\" named values from here they will be will be minified smaller than the SdkCoreNames[eSdkCoreNames.xxxx] value.\r\nexport var STR_EMPTY = \"\";\r\nexport var STR_DEFAULT_ENDPOINT_URL = \"https://browser.events.data.microsoft.com/OneCollector/1.0/\";\r\nexport var STR_VERSION = \"version\";\r\nexport var STR_PROPERTIES = \"properties\";\r\n//# sourceMappingURL=InternalConstants.js.map","var REACT_LIFECYCLE_EXCLUSIONS = [\n 'setState',\n 'render',\n 'componentWillMount',\n 'UNSAFE_componentWillMount',\n 'componentDidMount',\n 'componentWillReceiveProps',\n 'UNSAFE_componentWillReceiveProps',\n 'shouldComponentUpdate',\n 'componentWillUpdate',\n 'getSnapshotBeforeUpdate',\n 'UNSAFE_componentWillUpdate',\n 'componentDidUpdate',\n 'componentWillUnmount',\n];\n/**\n * Allows you to hoist methods, except those in an exclusion set from a source object into a destination object.\n *\n * @public\n * @param destination - The instance of the object to hoist the methods onto.\n * @param source - The instance of the object where the methods are hoisted from.\n * @param exclusions - (Optional) What methods to exclude from being hoisted.\n * @returns An array of names of methods that were hoisted.\n */\nexport function hoistMethods(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ndestination, \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nsource, exclusions) {\n if (exclusions === void 0) { exclusions = REACT_LIFECYCLE_EXCLUSIONS; }\n var hoisted = [];\n var _loop_1 = function (methodName) {\n if (typeof source[methodName] === 'function' &&\n destination[methodName] === undefined &&\n (!exclusions || exclusions.indexOf(methodName) === -1)) {\n hoisted.push(methodName);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n destination[methodName] = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n source[methodName].apply(source, args);\n };\n }\n };\n for (var methodName in source) {\n _loop_1(methodName);\n }\n return hoisted;\n}\n/**\n * Provides a method for convenience to unhoist hoisted methods.\n *\n * @public\n * @param source - The source object upon which methods were hoisted.\n * @param methodNames - An array of method names to unhoist.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function unhoistMethods(source, methodNames) {\n methodNames.forEach(function (methodName) { return delete source[methodName]; });\n}\n//# sourceMappingURL=hoist.js.map","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { GLOBAL_STYLESHEET_KEY } from '@fluentui/merge-styles';\nimport { useMergeStylesHooks } from '../hooks/useMergeStylesHooks';\nexport var MergeStylesShadowRootContext = React.createContext(undefined);\n/**\n * Context for a shadow root.\n */\nexport var MergeStylesShadowRootProvider = function (_a) {\n var shadowRoot = _a.shadowRoot, props = __rest(_a, [\"shadowRoot\"]);\n var value = React.useMemo(function () {\n return {\n stylesheets: new Map(),\n shadowRoot: shadowRoot,\n };\n }, [shadowRoot]);\n return (React.createElement(MergeStylesShadowRootContext.Provider, __assign({ value: value }, props),\n React.createElement(GlobalStyles, null),\n props.children));\n};\nvar GlobalStyles = function (props) {\n var useAdoptedStylesheet = useMergeStylesHooks().useAdoptedStylesheet;\n useAdoptedStylesheet(GLOBAL_STYLESHEET_KEY);\n return null;\n};\n//# sourceMappingURL=MergeStylesShadowRootContext.js.map","/**\n * ARIA helper to concatenate attributes, returning undefined if all attributes\n * are undefined. (Empty strings are not a valid ARIA attribute value.)\n *\n * @param ariaAttributes - ARIA attributes to merge\n */\nexport function mergeAriaAttributeValues() {\n var ariaAttributes = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n ariaAttributes[_i] = arguments[_i];\n }\n var mergedAttribute = ariaAttributes\n .filter(function (arg) { return arg; })\n .join(' ')\n .trim();\n return mergedAttribute === '' ? undefined : mergedAttribute;\n}\n//# sourceMappingURL=aria.js.map","import { labelProperties, audioProperties, videoProperties, olProperties, liProperties, anchorProperties, buttonProperties, inputProperties, textAreaProperties, selectProperties, optionProperties, tableProperties, trProperties, thProperties, tdProperties, colGroupProperties, colProperties, formProperties, iframeProperties, imgProperties, htmlElementProperties, getNativeProps, } from './properties';\nvar nativeElementMap = {\n label: labelProperties,\n audio: audioProperties,\n video: videoProperties,\n ol: olProperties,\n li: liProperties,\n a: anchorProperties,\n button: buttonProperties,\n input: inputProperties,\n textarea: textAreaProperties,\n select: selectProperties,\n option: optionProperties,\n table: tableProperties,\n tr: trProperties,\n th: thProperties,\n td: tdProperties,\n colGroup: colGroupProperties,\n col: colProperties,\n form: formProperties,\n iframe: iframeProperties,\n img: imgProperties,\n};\n/**\n * Given an element tagname and user props, filters the props to only allowed props for the given\n * element type.\n * @param tagName - Tag name (e.g. \"div\")\n * @param props - Props object\n * @param excludedPropNames - List of props to disallow\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function getNativeElementProps(tagName, props, excludedPropNames) {\n var allowedPropNames = (tagName && nativeElementMap[tagName]) || htmlElementProperties;\n return getNativeProps(props, allowedPropNames, excludedPropNames);\n}\n//# sourceMappingURL=getNativeElementProps.js.map","/**\n * Determines the distance between two points.\n *\n * @public\n */\n/* eslint-disable deprecation/deprecation */\nexport function getDistanceBetweenPoints(point1, point2) {\n var left1 = point1.left || point1.x || 0;\n var top1 = point1.top || point1.y || 0;\n var left2 = point2.left || point2.x || 0;\n var top2 = point2.top || point2.y || 0;\n /* eslint-enable deprecation/deprecation */\n var distance = Math.sqrt(Math.pow(left1 - left2, 2) + Math.pow(top1 - top2, 2));\n return distance;\n}\n/**\n * Produces a proportionally-scaled version of an input content size when fit to a bounding size.\n * Given a `contentSize` and a `boundsSize`, this function scales `contentSize` proportionally\n * using either `contain` or `cover` fit behaviors.\n * Use this function to pre-calculate the layout for the CSS `object-fit` and `background-fit` behaviors.\n * With `contain`, the output size must be the largest it can be while completely within the `boundsSize`.\n * With `cover`, the output size must be the smallest it can be while completely around the `boundsSize`.\n * By default, there is a `maxScale` value of 1, which prevents the `contentSize` from being scaled larger.\n *\n * @param options - the options for the bounds fit operation\n */\nexport function fitContentToBounds(options) {\n var contentSize = options.contentSize, boundsSize = options.boundsSize, _a = options.mode, mode = _a === void 0 ? 'contain' : _a, _b = options.maxScale, maxScale = _b === void 0 ? 1 : _b;\n var contentAspectRatio = contentSize.width / contentSize.height;\n var boundsAspectRatio = boundsSize.width / boundsSize.height;\n var scale;\n if (mode === 'contain' ? contentAspectRatio > boundsAspectRatio : contentAspectRatio < boundsAspectRatio) {\n scale = boundsSize.width / contentSize.width;\n }\n else {\n scale = boundsSize.height / contentSize.height;\n }\n var finalScale = Math.min(maxScale, scale);\n return {\n width: contentSize.width * finalScale,\n height: contentSize.height * finalScale,\n };\n}\n/**\n * Calculates a number's precision based on the number of trailing\n * zeros if the number does not have a decimal indicated by a negative\n * precision. Otherwise, it calculates the number of digits after\n * the decimal point indicated by a positive precision.\n * @param value - the value to determine the precision of\n */\nexport function calculatePrecision(value) {\n /**\n * Group 1:\n * [1-9]([0]+$) matches trailing zeros\n * Group 2:\n * \\.([0-9]*) matches all digits after a decimal point.\n */\n var groups = /[1-9]([0]+$)|\\.([0-9]*)/.exec(String(value));\n if (!groups) {\n return 0;\n }\n if (groups[1]) {\n return -groups[1].length;\n }\n if (groups[2]) {\n return groups[2].length;\n }\n return 0;\n}\n/**\n * Rounds a number to a certain level of precision. Accepts negative precision.\n * @param value - The value that is being rounded.\n * @param precision - The number of decimal places to round the number to\n */\nexport function precisionRound(value, precision, base) {\n if (base === void 0) { base = 10; }\n var exp = Math.pow(base, precision);\n return Math.round(value * exp) / exp;\n}\n//# sourceMappingURL=math.js.map","/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * Returns a single function which will call each of the given functions in the context of the\n * parent.\n */\nexport function appendFunction(parent) {\n var functions = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n functions[_i - 1] = arguments[_i];\n }\n if (functions.length < 2) {\n return functions[0];\n }\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n functions.forEach(function (f) { return f && f.apply(parent, args); });\n };\n}\n//# sourceMappingURL=appendFunction.js.map","/**\n * @deprecated Use `canUseDOM` from `@fluentui/utilities` instead.\n */\nexport var _isSSR = false;\n/**\n * Helper to set ssr mode to simulate no window object returned from getWindow helper.\n *\n * @deprecated Use `canUseDOM` from `@fluentui/utilities` instead.\n */\nexport function setSSR(isEnabled) {\n throw new Error('setSSR has been deprecated and is not used in any utilities anymore.' +\n ' Use canUseDOM from @fluentui/utilities instead.');\n}\n//# sourceMappingURL=setSSR.js.map","import { EventGroup } from './EventGroup';\nimport { findScrollableParent } from './scroll';\nimport { getRect } from './dom/getRect';\nimport { getWindow } from './dom';\nvar SCROLL_ITERATION_DELAY = 16;\nvar SCROLL_GUTTER = 100;\nvar MAX_SCROLL_VELOCITY = 15;\n/**\n * AutoScroll simply hooks up mouse events given a parent element, and scrolls the container\n * up/down depending on how close the mouse is to the top/bottom of the container.\n *\n * Once you don't want autoscroll any more, just dispose the helper and it will unhook events.\n *\n * @public\n * {@docCategory AutoScroll}\n */\nvar AutoScroll = /** @class */ (function () {\n function AutoScroll(element, win) {\n var theWin = win !== null && win !== void 0 ? win : getWindow(element);\n this._events = new EventGroup(this);\n this._scrollableParent = findScrollableParent(element);\n this._incrementScroll = this._incrementScroll.bind(this);\n this._scrollRect = getRect(this._scrollableParent, theWin);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (this._scrollableParent === theWin) {\n this._scrollableParent = theWin.document.body;\n }\n if (this._scrollableParent) {\n this._events.on(theWin, 'mousemove', this._onMouseMove, true);\n this._events.on(theWin, 'touchmove', this._onTouchMove, true);\n }\n }\n AutoScroll.prototype.dispose = function () {\n this._events.dispose();\n this._stopScroll();\n };\n AutoScroll.prototype._onMouseMove = function (ev) {\n this._computeScrollVelocity(ev);\n };\n AutoScroll.prototype._onTouchMove = function (ev) {\n if (ev.touches.length > 0) {\n this._computeScrollVelocity(ev);\n }\n };\n AutoScroll.prototype._computeScrollVelocity = function (ev) {\n if (!this._scrollRect) {\n return;\n }\n var clientX;\n var clientY;\n if ('clientX' in ev) {\n clientX = ev.clientX;\n clientY = ev.clientY;\n }\n else {\n clientX = ev.touches[0].clientX;\n clientY = ev.touches[0].clientY;\n }\n var scrollRectTop = this._scrollRect.top;\n var scrollRectLeft = this._scrollRect.left;\n var scrollClientBottom = scrollRectTop + this._scrollRect.height - SCROLL_GUTTER;\n var scrollClientRight = scrollRectLeft + this._scrollRect.width - SCROLL_GUTTER;\n // variables to use for alternating scroll direction\n var scrollRect;\n var clientDirection;\n var scrollClient;\n // if either of these conditions are met we are scrolling vertically else horizontally\n if (clientY < scrollRectTop + SCROLL_GUTTER || clientY > scrollClientBottom) {\n clientDirection = clientY;\n scrollRect = scrollRectTop;\n scrollClient = scrollClientBottom;\n this._isVerticalScroll = true;\n }\n else {\n clientDirection = clientX;\n scrollRect = scrollRectLeft;\n scrollClient = scrollClientRight;\n this._isVerticalScroll = false;\n }\n // calculate scroll velocity and direction\n if (clientDirection < scrollRect + SCROLL_GUTTER) {\n this._scrollVelocity = Math.max(-MAX_SCROLL_VELOCITY, -MAX_SCROLL_VELOCITY * ((SCROLL_GUTTER - (clientDirection - scrollRect)) / SCROLL_GUTTER));\n }\n else if (clientDirection > scrollClient) {\n this._scrollVelocity = Math.min(MAX_SCROLL_VELOCITY, MAX_SCROLL_VELOCITY * ((clientDirection - scrollClient) / SCROLL_GUTTER));\n }\n else {\n this._scrollVelocity = 0;\n }\n if (this._scrollVelocity) {\n this._startScroll();\n }\n else {\n this._stopScroll();\n }\n };\n AutoScroll.prototype._startScroll = function () {\n if (!this._timeoutId) {\n this._incrementScroll();\n }\n };\n AutoScroll.prototype._incrementScroll = function () {\n if (this._scrollableParent) {\n if (this._isVerticalScroll) {\n this._scrollableParent.scrollTop += Math.round(this._scrollVelocity);\n }\n else {\n this._scrollableParent.scrollLeft += Math.round(this._scrollVelocity);\n }\n }\n this._timeoutId = setTimeout(this._incrementScroll, SCROLL_ITERATION_DELAY);\n };\n AutoScroll.prototype._stopScroll = function () {\n if (this._timeoutId) {\n clearTimeout(this._timeoutId);\n delete this._timeoutId;\n }\n };\n return AutoScroll;\n}());\nexport { AutoScroll };\n//# sourceMappingURL=AutoScroll.js.map","import { DEFAULT_SHADOW_CONFIG } from '@fluentui/merge-styles';\nimport * as React from 'react';\nexport var noop = function () { return false; };\nexport var noopShadow = function () { return DEFAULT_SHADOW_CONFIG; };\nexport var noopRootStylesheets = function () { return new Map(); };\nexport var noopUndefined = function () { return undefined; };\nexport var getNewContext = function () {\n return {\n stylesheets: new Map(),\n useAdoptedStylesheetEx: noop,\n useAdoptedStylesheet: noop,\n useShadowConfig: noopShadow,\n useMergeStylesShadowRootContext: noopUndefined,\n useHasMergeStylesShadowRootContext: noop,\n useMergeStylesRootStylesheets: noopRootStylesheets,\n useWindow: noopUndefined,\n useStyled: noopUndefined,\n };\n};\nexport var MergeStylesDefaultContext = React.createContext(getNewContext());\n//# sourceMappingURL=MergeStylesDefaultContext.js.map","import * as React from 'react';\nimport { MergeStylesDefaultContext } from '../contexts/MergeStylesDefaultContext';\nexport var useMergeStylesHooks = function () {\n var ctx = React.useContext(MergeStylesDefaultContext);\n return {\n useAdoptedStylesheet: ctx.useAdoptedStylesheet,\n useAdoptedStylesheetEx: ctx.useAdoptedStylesheetEx,\n useShadowConfig: ctx.useShadowConfig,\n useMergeStylesShadowRootContext: ctx.useMergeStylesShadowRootContext,\n useHasMergeStylesShadowRootContext: ctx.useHasMergeStylesShadowRootContext,\n useMergeStylesRootStylesheets: ctx.useMergeStylesRootStylesheets,\n useWindow: ctx.useWindow,\n useStyled: ctx.useStyled,\n };\n};\n//# sourceMappingURL=useMergeStylesHooks.js.map","import * as React from 'react';\nimport { MergeStylesShadowRootContext, } from '../contexts/MergeStylesShadowRootContext';\n/**\n * Test if a context is available.\n * @returns true if there is a context.\n */\nexport var useHasMergeStylesShadowRootContext = function () {\n return !!useMergeStylesShadowRootContext();\n};\n/**\n * Get a reference to the shadow root context.\n * @returns The context for the shadow root.\n */\nexport var useMergeStylesShadowRootContext = function () {\n return React.useContext(MergeStylesShadowRootContext);\n};\n//# sourceMappingURL=useMergeStylesShadowRoot.js.map","import { GLOBAL_STYLESHEET_KEY } from '@fluentui/merge-styles';\nimport { useMergeStylesHooks } from '../hooks/useMergeStylesHooks';\nimport { useMergeStylesShadowRootContext } from '../hooks/useMergeStylesShadowRoot';\nexport var MergeStylesShadowRootConsumer = function (_a) {\n var stylesheetKey = _a.stylesheetKey, children = _a.children;\n var _b = useMergeStylesHooks(), useAdoptedStylesheetEx = _b.useAdoptedStylesheetEx, useMergeStylesRootStylesheets = _b.useMergeStylesRootStylesheets, useWindow = _b.useWindow;\n var shadowCtx = useMergeStylesShadowRootContext();\n var rootMergeStyles = useMergeStylesRootStylesheets();\n var win = useWindow();\n useAdoptedStylesheetEx(GLOBAL_STYLESHEET_KEY, shadowCtx, rootMergeStyles, win);\n useAdoptedStylesheetEx(stylesheetKey, shadowCtx, rootMergeStyles, win);\n return children(!!shadowCtx);\n};\n//# sourceMappingURL=MergeStylesShadowRootConsumer.js.map","import { __assign, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { Customizations } from './Customizations';\nimport { hoistStatics } from '../hoistStatics';\nimport { CustomizerContext } from './CustomizerContext';\nimport { concatStyleSets, makeShadowConfig } from '@fluentui/merge-styles';\nimport { MergeStylesShadowRootConsumer } from '../shadowDom/contexts/MergeStylesShadowRootConsumer';\nimport { getWindow } from '../dom/getWindow';\nimport { WindowContext } from '@fluentui/react-window-provider';\nimport { memoizeFunction } from '../memoize';\nvar memoizedMakeShadowConfig = memoizeFunction(makeShadowConfig);\nvar mergeComponentStyles = memoizeFunction(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction (defaultStyles, componentStyles, shadowConfig) {\n var _a;\n var styles = (_a = componentStyles !== null && componentStyles !== void 0 ? componentStyles : defaultStyles) !== null && _a !== void 0 ? _a : {};\n styles.__shadowConfig__ = shadowConfig;\n return styles;\n});\nexport function customizable(scope, fields, concatStyles) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return function customizableFactory(ComposedComponent) {\n var _a;\n var resultClass = (_a = /** @class */ (function (_super) {\n __extends(ComponentWithInjectedProps, _super);\n function ComponentWithInjectedProps(props) {\n var _this = _super.call(this, props) || this;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _this._styleCache = {};\n _this._onSettingChanged = _this._onSettingChanged.bind(_this);\n return _this;\n }\n ComponentWithInjectedProps.prototype.componentDidMount = function () {\n Customizations.observe(this._onSettingChanged);\n };\n ComponentWithInjectedProps.prototype.componentWillUnmount = function () {\n Customizations.unobserve(this._onSettingChanged);\n };\n ComponentWithInjectedProps.prototype.render = function () {\n var _this = this;\n return (React.createElement(MergeStylesShadowRootConsumer, { stylesheetKey: scope }, function (inShadow) {\n return (React.createElement(CustomizerContext.Consumer, null, function (context) {\n var _a;\n var defaultProps = Customizations.getSettings(fields, scope, context.customizations);\n var win = (_a = _this.context.window) !== null && _a !== void 0 ? _a : getWindow();\n var shadowConfig = memoizedMakeShadowConfig(scope, inShadow, win);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var componentProps = _this.props;\n // If defaultProps.styles is a function, evaluate it before calling concatStyleSets\n if (defaultProps.styles && typeof defaultProps.styles === 'function') {\n defaultProps.styles = defaultProps.styles(__assign(__assign({}, defaultProps), componentProps));\n }\n // If concatStyles is true and custom styles have been defined compute those styles\n if (concatStyles && defaultProps.styles) {\n if (_this._styleCache.default !== defaultProps.styles ||\n _this._styleCache.component !== componentProps.styles) {\n var mergedStyles = concatStyleSets(defaultProps.styles, componentProps.styles);\n mergedStyles.__shadowConfig__ = shadowConfig;\n _this._styleCache.default = defaultProps.styles;\n _this._styleCache.component = componentProps.styles;\n _this._styleCache.merged = mergedStyles;\n }\n return (React.createElement(ComposedComponent, __assign({}, defaultProps, componentProps, { styles: _this._styleCache.merged })));\n }\n var styles = mergeComponentStyles(defaultProps.styles, componentProps.styles, shadowConfig);\n return React.createElement(ComposedComponent, __assign({}, defaultProps, componentProps, { styles: styles }));\n }));\n }));\n };\n ComponentWithInjectedProps.prototype._onSettingChanged = function () {\n this.forceUpdate();\n };\n return ComponentWithInjectedProps;\n }(React.Component)),\n _a.displayName = 'Customized' + scope,\n _a.contextType = WindowContext,\n _a);\n return hoistStatics(ComposedComponent, resultClass);\n };\n}\n//# sourceMappingURL=customizable.js.map","import { extendComponent } from './extendComponent';\n/**\n * Generates a function to be attached to a React component, which can be called\n * as a replacement to setTimeout. In-flight async calls will be auto canceled if the component\n * is unmounting before the async code is executed, preventing bugs where code\n * accesses things within the component after being unmounted.\n */\nexport var safeSetTimeout = function (component) {\n var activeTimeouts;\n return function (cb, duration) {\n if (!activeTimeouts) {\n activeTimeouts = new Set();\n extendComponent(component, {\n componentWillUnmount: function () {\n activeTimeouts.forEach(function (id) { return clearTimeout(id); });\n },\n });\n }\n var timeoutId = setTimeout(function () {\n activeTimeouts.delete(timeoutId);\n cb();\n }, duration);\n activeTimeouts.add(timeoutId);\n };\n};\n//# sourceMappingURL=safeSetTimeout.js.map","import { getDocument } from './dom/getDocument';\nimport * as localStorage from './localStorage';\nimport * as sessionStorage from './sessionStorage';\n// Default to undefined so that we initialize on first read.\nvar _language;\nvar STORAGE_KEY = 'language';\n/**\n * Gets the language set for the page.\n * @param persistenceType - Where to persist the value. Default is `sessionStorage` if available.\n */\nexport function getLanguage(persistenceType) {\n if (persistenceType === void 0) { persistenceType = 'sessionStorage'; }\n if (_language === undefined) {\n var doc = getDocument();\n var savedLanguage = persistenceType === 'localStorage'\n ? localStorage.getItem(STORAGE_KEY)\n : persistenceType === 'sessionStorage'\n ? sessionStorage.getItem(STORAGE_KEY)\n : undefined;\n if (savedLanguage) {\n _language = savedLanguage;\n }\n if (_language === undefined && doc) {\n _language = doc.documentElement.getAttribute('lang');\n }\n if (_language === undefined) {\n _language = 'en';\n }\n }\n return _language;\n}\nexport function setLanguage(language, persistenceParam) {\n var doc = getDocument();\n if (doc) {\n doc.documentElement.setAttribute('lang', language);\n }\n var persistenceType = persistenceParam === true ? 'none' : !persistenceParam ? 'sessionStorage' : persistenceParam;\n if (persistenceType === 'localStorage') {\n localStorage.setItem(STORAGE_KEY, language);\n }\n else if (persistenceType === 'sessionStorage') {\n sessionStorage.setItem(STORAGE_KEY, language);\n }\n _language = language;\n}\n//# sourceMappingURL=language.js.map","import { getWindow } from './dom/getWindow';\n/**\n * Fetches an item from local storage without throwing an exception\n * @param key The key of the item to fetch from local storage\n */\nexport function getItem(key) {\n var result = null;\n try {\n var win = getWindow();\n result = win ? win.localStorage.getItem(key) : null;\n }\n catch (e) {\n /* Eat the exception */\n }\n return result;\n}\n/**\n * Inserts an item into local storage without throwing an exception\n * @param key The key of the item to add to local storage\n * @param data The data to put into local storage\n */\nexport function setItem(key, data) {\n try {\n var win = getWindow();\n win && win.localStorage.setItem(key, data);\n }\n catch (e) {\n /* Eat the exception */\n }\n}\n//# sourceMappingURL=localStorage.js.map","import { getWindow } from './dom/getWindow';\nvar isMacResult;\n/**\n * Returns true if the user is on a Mac. Caches the result value.\n * @param reset - Reset the cached result value (mainly for testing).\n */\nexport function isMac(reset) {\n var _a;\n if (typeof isMacResult === 'undefined' || reset) {\n var win = getWindow();\n // In certain SSR frameworks, `window` will be defined even on the server but `navigator` will be undefined\n var userAgent = (_a = win === null || win === void 0 ? void 0 : win.navigator) === null || _a === void 0 ? void 0 : _a.userAgent;\n isMacResult = !!userAgent && userAgent.indexOf('Macintosh') !== -1;\n }\n return !!isMacResult;\n}\n//# sourceMappingURL=osDetector.js.map","/**\n * Compares a to b and b to a.\n *\n * @public\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function shallowCompare(a, b) {\n if (!a || !b) {\n // only return true if both a and b are falsy\n return !a && !b;\n }\n for (var propName in a) {\n if (a.hasOwnProperty(propName)) {\n if (!b.hasOwnProperty(propName) || b[propName] !== a[propName]) {\n return false;\n }\n }\n }\n for (var propName in b) {\n if (b.hasOwnProperty(propName)) {\n if (!a.hasOwnProperty(propName)) {\n return false;\n }\n }\n }\n return true;\n}\n/**\n * Makes a resulting merge of a bunch of objects. Pass in the target object followed by 1 or more\n * objects as arguments and they will be merged sequentially into the target. Note that this will\n * shallow merge; it will not create new cloned values for target members.\n *\n * @public\n * @param target - Target object to merge following object arguments into.\n * @param args - One or more objects that will be mixed into the target in the order they are provided.\n * @returns Resulting merged target.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function assign(target) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n return filteredAssign.apply(this, [null, target].concat(args));\n}\n/**\n * Makes a resulting merge of a bunch of objects, but allows a filter function to be passed in to filter\n * the resulting merges. This allows for scenarios where you want to merge \"everything except that one thing\"\n * or \"properties that start with data-\". Note that this will shallow merge; it will not create new cloned\n * values for target members.\n *\n * @public\n * @param isAllowed - Callback to determine if the given propName is allowed in the result.\n * @param target - Target object to merge following object arguments into.\n * @param args - One or more objects that will be mixed into the target in the order they are provided.\n * @returns Resulting merged target.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function filteredAssign(isAllowed, target) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n target = target || {};\n for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {\n var sourceObject = args_1[_a];\n if (sourceObject) {\n for (var propName in sourceObject) {\n if (sourceObject.hasOwnProperty(propName) && (!isAllowed || isAllowed(propName))) {\n target[propName] = sourceObject[propName];\n }\n }\n }\n }\n return target;\n}\n/**\n * Takes an enum and iterates over each value of the enum (as a string), running the callback on each,\n * returning a mapped array.\n * @param theEnum - Enum to iterate over\n * @param callback - The first parameter the name of the entry, and the second parameter is the value\n * of that entry, which is the value you'd normally use when using the enum (usually a number).\n */\nexport function mapEnumByName(\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntheEnum, callback) {\n // map to satisfy compiler since it doesn't realize we strip out undefineds in the .filter() call\n return Object.keys(theEnum)\n .map(function (p) {\n // map on each property name as a string\n if (String(Number(p)) !== p) {\n // if the property is not just a number (because enums in TypeScript will map both ways)\n return callback(p, theEnum[p]);\n }\n return undefined;\n })\n .filter(function (v) { return !!v; }); // only return elements with values\n}\n/**\n * Get all values in an object dictionary\n *\n * @param obj - The dictionary to get values for\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function values(obj) {\n return Object.keys(obj).reduce(function (arr, key) {\n arr.push(obj[key]);\n return arr;\n }, []);\n}\n/**\n * Tiny helper to do the minimal amount of work in duplicating an object but omitting some\n * props. This ends up faster than using object ...rest or reduce to filter.\n *\n * This behaves very much like filteredAssign, but does not merge many objects together,\n * uses an exclusion object map, and avoids spreads all for optimal performance.\n *\n * See perf test for background:\n * https://jsperf.com/omit-vs-rest-vs-reduce/1\n *\n * @param obj - The object to clone\n * @param exclusions - The array of keys to exclude\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function omit(obj, exclusions) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var result = {};\n for (var key in obj) {\n if (exclusions.indexOf(key) === -1 && obj.hasOwnProperty(key)) {\n result[key] = obj[key];\n }\n }\n return result;\n}\n//# sourceMappingURL=object.js.map","var _a;\nimport { KeyCodes } from './KeyCodes';\nvar DirectionalKeyCodes = (_a = {},\n _a[KeyCodes.up] = 1,\n _a[KeyCodes.down] = 1,\n _a[KeyCodes.left] = 1,\n _a[KeyCodes.right] = 1,\n _a[KeyCodes.home] = 1,\n _a[KeyCodes.end] = 1,\n _a[KeyCodes.tab] = 1,\n _a[KeyCodes.pageUp] = 1,\n _a[KeyCodes.pageDown] = 1,\n _a);\n/**\n * Returns true if the keycode is a directional keyboard key.\n */\nexport function isDirectionalKeyCode(which) {\n return !!DirectionalKeyCodes[which];\n}\n/**\n * Adds a keycode to the list of keys that, when pressed, should cause the focus outlines to be visible.\n * This can be used to add global shortcut keys that directionally move from section to section within\n * an app or between focus trap zones.\n */\nexport function addDirectionalKeyCode(which) {\n DirectionalKeyCodes[which] = 1;\n}\n/**\n * Removes a keycode to the list of keys that, when pressed, should cause the focus outlines to be visible.\n * This can be used to remove global shortcut keys that directionally move from section to section within\n * an app or between focus trap zones.\n */\nexport function removeDirectionalKeyCode(which) {\n delete DirectionalKeyCodes[which];\n}\n//# sourceMappingURL=keyboard.js.map","export function on(element, eventName, callback, options) {\n element.addEventListener(eventName, callback, options);\n return function () { return element.removeEventListener(eventName, callback, options); };\n}\n//# sourceMappingURL=on.js.map","// When adding or removing a color, make sure you keep this consistent with IColorClassNames\n// by adding the color variants.\nexport var DefaultPalette = {\n themeDarker: '#004578',\n themeDark: '#005a9e',\n themeDarkAlt: '#106ebe',\n themePrimary: '#0078d4',\n themeSecondary: '#2b88d8',\n themeTertiary: '#71afe5',\n themeLight: '#c7e0f4',\n themeLighter: '#deecf9',\n themeLighterAlt: '#eff6fc',\n black: '#000000',\n blackTranslucent40: 'rgba(0,0,0,.4)',\n neutralDark: '#201f1e',\n neutralPrimary: '#323130',\n neutralPrimaryAlt: '#3b3a39',\n neutralSecondary: '#605e5c',\n neutralSecondaryAlt: '#8a8886',\n neutralTertiary: '#a19f9d',\n neutralTertiaryAlt: '#c8c6c4',\n neutralQuaternary: '#d2d0ce',\n neutralQuaternaryAlt: '#e1dfdd',\n neutralLight: '#edebe9',\n neutralLighter: '#f3f2f1',\n neutralLighterAlt: '#faf9f8',\n accent: '#0078d4',\n white: '#ffffff',\n whiteTranslucent40: 'rgba(255,255,255,.4)',\n yellowDark: '#d29200',\n yellow: '#ffb900',\n yellowLight: '#fff100',\n orange: '#d83b01',\n orangeLight: '#ea4300',\n orangeLighter: '#ff8c00',\n redDark: '#a4262c',\n red: '#e81123',\n magentaDark: '#5c005c',\n magenta: '#b4009e',\n magentaLight: '#e3008c',\n purpleDark: '#32145a',\n purple: '#5c2d91',\n purpleLight: '#b4a0ff',\n blueDark: '#002050',\n blueMid: '#00188f',\n blue: '#0078d4',\n blueLight: '#00bcf2',\n tealDark: '#004b50',\n teal: '#008272',\n tealLight: '#00b294',\n greenDark: '#004b1c',\n green: '#107c10',\n greenLight: '#bad80a',\n};\n//# sourceMappingURL=DefaultPalette.js.map","import { fontFace } from '@fluentui/merge-styles';\nimport { FontWeights, LocalizedFontFamilies, LocalizedFontNames } from './FluentFonts';\nimport { createFontStyles } from './createFontStyles';\nimport { getLanguage, getWindow } from '@fluentui/utilities';\n// Default urls.\nvar DefaultBaseUrl = 'https://res-1.cdn.office.net/files/fabric-cdn-prod_20230815.002/assets';\n// Standard font styling.\nexport var DefaultFontStyles = createFontStyles(getLanguage());\nfunction _registerFontFace(fontFamily, url, fontWeight, localFontName) {\n fontFamily = \"'\".concat(fontFamily, \"'\");\n var localFontSrc = localFontName !== undefined ? \"local('\".concat(localFontName, \"'),\") : '';\n fontFace({\n fontFamily: fontFamily,\n src: localFontSrc + \"url('\".concat(url, \".woff2') format('woff2'),\") + \"url('\".concat(url, \".woff') format('woff')\"),\n fontWeight: fontWeight,\n fontStyle: 'normal',\n fontDisplay: 'swap',\n });\n}\nfunction _registerFontFaceSet(baseUrl, fontFamily, cdnFolder, cdnFontName, localFontName) {\n if (cdnFontName === void 0) { cdnFontName = 'segoeui'; }\n var urlBase = \"\".concat(baseUrl, \"/\").concat(cdnFolder, \"/\").concat(cdnFontName);\n _registerFontFace(fontFamily, urlBase + '-light', FontWeights.light, localFontName && localFontName + ' Light');\n _registerFontFace(fontFamily, urlBase + '-semilight', FontWeights.semilight, localFontName && localFontName + ' SemiLight');\n _registerFontFace(fontFamily, urlBase + '-regular', FontWeights.regular, localFontName);\n _registerFontFace(fontFamily, urlBase + '-semibold', FontWeights.semibold, localFontName && localFontName + ' SemiBold');\n _registerFontFace(fontFamily, urlBase + '-bold', FontWeights.bold, localFontName && localFontName + ' Bold');\n}\nexport function registerDefaultFontFaces(baseUrl) {\n if (baseUrl) {\n var fontUrl = \"\".concat(baseUrl, \"/fonts\");\n // Produce @font-face definitions for all supported web fonts.\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Thai, 'leelawadeeui-thai', 'leelawadeeui');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Arabic, 'segoeui-arabic');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Cyrillic, 'segoeui-cyrillic');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.EastEuropean, 'segoeui-easteuropean');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Greek, 'segoeui-greek');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Hebrew, 'segoeui-hebrew');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Vietnamese, 'segoeui-vietnamese');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.WestEuropean, 'segoeui-westeuropean', 'segoeui', 'Segoe UI');\n _registerFontFaceSet(fontUrl, LocalizedFontFamilies.Selawik, 'selawik', 'selawik');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Armenian, 'segoeui-armenian');\n _registerFontFaceSet(fontUrl, LocalizedFontNames.Georgian, 'segoeui-georgian');\n // Leelawadee UI (Thai) does not have a 'light' weight, so we override\n // the font-face generated above to use the 'semilight' weight instead.\n _registerFontFace('Leelawadee UI Web', \"\".concat(fontUrl, \"/leelawadeeui-thai/leelawadeeui-semilight\"), FontWeights.light);\n // Leelawadee UI (Thai) does not have a 'semibold' weight, so we override\n // the font-face generated above to use the 'bold' weight instead.\n _registerFontFace('Leelawadee UI Web', \"\".concat(fontUrl, \"/leelawadeeui-thai/leelawadeeui-bold\"), FontWeights.semibold);\n }\n}\n/**\n * Reads the fontBaseUrl from window.FabricConfig.fontBaseUrl or falls back to a default.\n */\nfunction _getFontBaseUrl() {\n var _a, _b;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var fabricConfig = (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.FabricConfig;\n return (_b = fabricConfig === null || fabricConfig === void 0 ? void 0 : fabricConfig.fontBaseUrl) !== null && _b !== void 0 ? _b : DefaultBaseUrl;\n}\n/**\n * Register the font faces.\n */\nregisterDefaultFontFaces(_getFontBaseUrl());\n//# sourceMappingURL=DefaultFontStyles.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { createMemoizer } from '../memoize';\nfunction createComposedComponent(outer) {\n var Outer = outer;\n var outerMemoizer = createMemoizer(function (inner) {\n if (outer === inner) {\n throw new Error('Attempted to compose a component with itself.');\n }\n var Inner = inner;\n var innerMemoizer = createMemoizer(function (defaultRender) {\n var InnerWithDefaultRender = function (innerProps) {\n return React.createElement(Inner, __assign({}, innerProps, { defaultRender: defaultRender }));\n };\n return InnerWithDefaultRender;\n });\n var OuterWithDefaultRender = function (outerProps) {\n var defaultRender = outerProps.defaultRender;\n return React.createElement(Outer, __assign({}, outerProps, { defaultRender: defaultRender ? innerMemoizer(defaultRender) : Inner }));\n };\n return OuterWithDefaultRender;\n });\n return outerMemoizer;\n}\nvar componentAsMemoizer = createMemoizer(createComposedComponent);\n/**\n * Composes two components which conform to the `IComponentAs` specification; that is, two\n * components which accept a `defaultRender` prop, which is a 'default' implementation of\n * a component which accepts the same overall props.\n *\n * @public\n */\nexport function composeComponentAs(outer, inner) {\n return componentAsMemoizer(outer)(inner);\n}\n//# sourceMappingURL=composeComponentAs.js.map","import { extendComponent } from './extendComponent';\n/**\n * Helper to manage componentRef resolution. Internally appends logic to\n * lifetime methods to resolve componentRef to the passed in object.\n *\n * Usage: call initializeComponentRef(this) in the constructor,\n */\nexport function initializeComponentRef(obj) {\n extendComponent(obj, {\n componentDidMount: _onMount,\n componentDidUpdate: _onUpdate,\n componentWillUnmount: _onUnmount,\n });\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _onMount() {\n _setComponentRef(this.props.componentRef, this);\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _onUpdate(prevProps) {\n if (prevProps.componentRef !== this.props.componentRef) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _setComponentRef(prevProps.componentRef, null);\n _setComponentRef(this.props.componentRef, this);\n }\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _onUnmount() {\n _setComponentRef(this.props.componentRef, null);\n}\nfunction _setComponentRef(componentRef, value) {\n if (componentRef) {\n if (typeof componentRef === 'object') {\n componentRef.current = value;\n }\n else if (typeof componentRef === 'function') {\n componentRef(value);\n }\n }\n}\n//# sourceMappingURL=initializeComponentRef.js.map","import { getDocument } from './dom';\nimport { assign } from './object';\n/** An instance of EventGroup allows anything with a handle to it to trigger events on it.\n * If the target is an HTMLElement, the event will be attached to the element and can be\n * triggered as usual (like clicking for onClick).\n * The event can be triggered by calling EventGroup.raise() here. If the target is an\n * HTMLElement, the event gets raised and is handled by the browser. Otherwise, it gets\n * handled here in EventGroup, and the handler is called in the context of the parent\n * (which is passed in in the constructor).\n *\n * @public\n * {@docCategory EventGroup}\n */\nexport var EventGroup = /** @class */ (function () {\n /** parent: the context in which events attached to non-HTMLElements are called */\n function EventGroup(parent) {\n this._id = EventGroup._uniqueId++;\n this._parent = parent;\n this._eventRecords = [];\n }\n /** For IE8, bubbleEvent is ignored here and must be dealt with by the handler.\n * Events raised here by default have bubbling set to false and cancelable set to true.\n * This applies also to built-in events being raised manually here on HTMLElements,\n * which may lead to unexpected behavior if it differs from the defaults.\n *\n */\n EventGroup.raise = function (target, eventName, eventArgs, bubbleEvent, doc) {\n var retVal;\n var theDoc = doc !== null && doc !== void 0 ? doc : getDocument();\n if (EventGroup._isElement(target)) {\n if (typeof theDoc !== 'undefined' && theDoc.createEvent) {\n var ev = theDoc.createEvent('HTMLEvents');\n // eslint-disable-next-line deprecation/deprecation\n ev.initEvent(eventName, bubbleEvent || false, true);\n assign(ev, eventArgs);\n retVal = target.dispatchEvent(ev);\n }\n else if (typeof theDoc !== 'undefined' && theDoc.createEventObject) {\n // IE8\n var evObj = theDoc.createEventObject(eventArgs);\n // cannot set cancelBubble on evObj, fireEvent will overwrite it\n target.fireEvent('on' + eventName, evObj);\n }\n }\n else {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore -- FIXME: strictBindCallApply error - https://github.com/microsoft/fluentui/issues/17331\n while (target && retVal !== false) {\n var events = target.__events__;\n var eventRecords = events ? events[eventName] : null;\n if (eventRecords) {\n for (var id in eventRecords) {\n if (eventRecords.hasOwnProperty(id)) {\n var eventRecordList = eventRecords[id];\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore -- FIXME: strictBindCallApply error - https://github.com/microsoft/fluentui/issues/17331\n for (var listIndex = 0; retVal !== false && listIndex < eventRecordList.length; listIndex++) {\n var record = eventRecordList[listIndex];\n if (record.objectCallback) {\n retVal = record.objectCallback.call(record.parent, eventArgs);\n }\n }\n }\n }\n }\n // If the target has a parent, bubble the event up.\n target = bubbleEvent ? target.parent : null;\n }\n }\n return retVal;\n };\n EventGroup.isObserved = function (target, eventName) {\n var events = target && target.__events__;\n return !!events && !!events[eventName];\n };\n /** Check to see if the target has declared support of the given event. */\n EventGroup.isDeclared = function (target, eventName) {\n var declaredEvents = target && target.__declaredEvents;\n return !!declaredEvents && !!declaredEvents[eventName];\n };\n EventGroup.stopPropagation = function (event) {\n if (event.stopPropagation) {\n event.stopPropagation();\n }\n else {\n // IE8\n event.cancelBubble = true;\n }\n };\n EventGroup._isElement = function (target) {\n return (!!target && (!!target.addEventListener || (typeof HTMLElement !== 'undefined' && target instanceof HTMLElement)));\n };\n EventGroup.prototype.dispose = function () {\n if (!this._isDisposed) {\n this._isDisposed = true;\n this.off();\n this._parent = null;\n }\n };\n /** On the target, attach a set of events, where the events object is a name to function mapping. */\n EventGroup.prototype.onAll = function (target, events, useCapture) {\n for (var eventName in events) {\n if (events.hasOwnProperty(eventName)) {\n this.on(target, eventName, events[eventName], useCapture);\n }\n }\n };\n /**\n * On the target, attach an event whose handler will be called in the context of the parent\n * of this instance of EventGroup.\n */\n EventGroup.prototype.on = function (target, eventName, callback, options) {\n var _this = this;\n if (eventName.indexOf(',') > -1) {\n var events = eventName.split(/[ ,]+/);\n for (var i = 0; i < events.length; i++) {\n this.on(target, events[i], callback, options);\n }\n }\n else {\n var parent_1 = this._parent;\n var eventRecord = {\n target: target,\n eventName: eventName,\n parent: parent_1,\n callback: callback,\n options: options,\n };\n // Initialize and wire up the record on the target, so that it can call the callback if the event fires.\n var events = (target.__events__ = target.__events__ || {});\n events[eventName] =\n events[eventName] ||\n {\n count: 0,\n };\n events[eventName][this._id] = events[eventName][this._id] || [];\n events[eventName][this._id].push(eventRecord);\n events[eventName].count++;\n if (EventGroup._isElement(target)) {\n var processElementEvent = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (_this._isDisposed) {\n return;\n }\n var result;\n try {\n result = callback.apply(parent_1, args);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore -- FIXME: strictBindCallApply error - https://github.com/microsoft/fluentui/issues/17331\n if (result === false && args[0]) {\n var e = args[0];\n if (e.preventDefault) {\n e.preventDefault();\n }\n if (e.stopPropagation) {\n e.stopPropagation();\n }\n e.cancelBubble = true;\n }\n }\n catch (e) {\n // ignore\n }\n return result;\n };\n eventRecord.elementCallback = processElementEvent;\n if (target.addEventListener) {\n target.addEventListener(eventName, processElementEvent, options);\n }\n else if (target.attachEvent) {\n // IE8\n target.attachEvent('on' + eventName, processElementEvent);\n }\n }\n else {\n var processObjectEvent = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (_this._isDisposed) {\n return;\n }\n return callback.apply(parent_1, args);\n };\n eventRecord.objectCallback = processObjectEvent;\n }\n // Remember the record locally, so that it can be removed.\n this._eventRecords.push(eventRecord);\n }\n };\n EventGroup.prototype.off = function (target, eventName, callback, options) {\n for (var i = 0; i < this._eventRecords.length; i++) {\n var eventRecord = this._eventRecords[i];\n if ((!target || target === eventRecord.target) &&\n (!eventName || eventName === eventRecord.eventName) &&\n (!callback || callback === eventRecord.callback) &&\n (typeof options !== 'boolean' || options === eventRecord.options)) {\n var events = eventRecord.target.__events__;\n var targetArrayLookup = events[eventRecord.eventName];\n var targetArray = targetArrayLookup ? targetArrayLookup[this._id] : null;\n // We may have already target's entries, so check for null.\n if (targetArray) {\n if (targetArray.length === 1 || !callback) {\n targetArrayLookup.count -= targetArray.length;\n delete events[eventRecord.eventName][this._id];\n }\n else {\n targetArrayLookup.count--;\n targetArray.splice(targetArray.indexOf(eventRecord), 1);\n }\n if (!targetArrayLookup.count) {\n delete events[eventRecord.eventName];\n }\n }\n if (eventRecord.elementCallback) {\n if (eventRecord.target.removeEventListener) {\n eventRecord.target.removeEventListener(eventRecord.eventName, eventRecord.elementCallback, eventRecord.options);\n }\n else if (eventRecord.target.detachEvent) {\n // IE8\n eventRecord.target.detachEvent('on' + eventRecord.eventName, eventRecord.elementCallback);\n }\n }\n this._eventRecords.splice(i--, 1);\n }\n }\n };\n /** Trigger the given event in the context of this instance of EventGroup. */\n EventGroup.prototype.raise = function (eventName, eventArgs, bubbleEvent) {\n return EventGroup.raise(this._parent, eventName, eventArgs, bubbleEvent);\n };\n /** Declare an event as being supported by this instance of EventGroup. */\n EventGroup.prototype.declare = function (event) {\n var declaredEvents = (this._parent.__declaredEvents = this._parent.__declaredEvents || {});\n if (typeof event === 'string') {\n declaredEvents[event] = true;\n }\n else {\n for (var i = 0; i < event.length; i++) {\n declaredEvents[event[i]] = true;\n }\n }\n };\n EventGroup._uniqueId = 0;\n return EventGroup;\n}());\n//# sourceMappingURL=EventGroup.js.map","/**\n * Simple deep merge function. Takes all arguments and returns a deep copy of the objects merged\n * together in the order provided. If an object creates a circular reference, it will assign the\n * original reference.\n */\nexport function merge(target) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {\n var arg = args_1[_a];\n _merge(target || {}, arg);\n }\n return target;\n}\n/**\n * The _merge helper iterates through all props on source and assigns them to target.\n * When the value is an object, we will create a deep clone of the object. However if\n * there is a circular reference, the value will not be deep cloned and will persist\n * the reference.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction _merge(target, source, circularReferences) {\n if (circularReferences === void 0) { circularReferences = []; }\n circularReferences.push(source);\n for (var name_1 in source) {\n if (source.hasOwnProperty(name_1)) {\n if (name_1 !== '__proto__' && name_1 !== 'constructor' && name_1 !== 'prototype') {\n var value = source[name_1];\n if (typeof value === 'object' && value !== null && !Array.isArray(value)) {\n var isCircularReference = circularReferences.indexOf(value) > -1;\n target[name_1] = (isCircularReference ? value : _merge(target[name_1] || {}, value, circularReferences));\n }\n else {\n target[name_1] = value;\n }\n }\n }\n }\n circularReferences.pop();\n return target;\n}\n//# sourceMappingURL=merge.js.map","/**\n * Verifies if an application can use DOM.\n */\nexport function canUseDOM() {\n return (\n // eslint-disable-next-line no-restricted-globals\n typeof window !== 'undefined' &&\n !!(\n // eslint-disable-next-line no-restricted-globals, deprecation/deprecation\n (window.document && window.document.createElement)));\n}\n//# sourceMappingURL=canUseDOM.js.map","import { __assign } from \"tslib\";\n/**\n * Merge new and old settings, giving priority to new settings.\n * New settings is optional in which case oldSettings is returned as-is.\n * @param oldSettings - Old settings to fall back to.\n * @param newSettings - New settings that will be merged over oldSettings.\n * @returns Merged settings.\n */\nexport function mergeSettings(oldSettings, newSettings) {\n if (oldSettings === void 0) { oldSettings = {}; }\n var mergeSettingsWith = _isSettingsFunction(newSettings) ? newSettings : _settingsMergeWith(newSettings);\n return mergeSettingsWith(oldSettings);\n}\nexport function mergeScopedSettings(oldSettings, newSettings) {\n if (oldSettings === void 0) { oldSettings = {}; }\n var mergeSettingsWith = _isSettingsFunction(newSettings) ? newSettings : _scopedSettingsMergeWith(newSettings);\n return mergeSettingsWith(oldSettings);\n}\nfunction _isSettingsFunction(settings) {\n return typeof settings === 'function';\n}\nfunction _settingsMergeWith(newSettings) {\n return function (settings) { return (newSettings ? __assign(__assign({}, settings), newSettings) : settings); };\n}\nfunction _scopedSettingsMergeWith(scopedSettingsFromProps) {\n if (scopedSettingsFromProps === void 0) { scopedSettingsFromProps = {}; }\n return function (oldScopedSettings) {\n var newScopedSettings = __assign({}, oldScopedSettings);\n for (var scopeName in scopedSettingsFromProps) {\n if (scopedSettingsFromProps.hasOwnProperty(scopeName)) {\n newScopedSettings[scopeName] = __assign(__assign({}, oldScopedSettings[scopeName]), scopedSettingsFromProps[scopeName]);\n }\n }\n return newScopedSettings;\n };\n}\n//# sourceMappingURL=mergeSettings.js.map","import { mergeCssSets, Stylesheet } from '@fluentui/merge-styles';\nimport { getRTL } from './rtl';\nimport { getWindow } from './dom';\nvar MAX_CACHE_COUNT = 50;\nvar DEFAULT_SPECIFICITY_MULTIPLIER = 5;\nvar _memoizedClassNames = 0;\nvar stylesheet = Stylesheet.getInstance();\nif (stylesheet && stylesheet.onReset) {\n stylesheet.onReset(function () { return _memoizedClassNames++; });\n}\n// Note that because of the caching nature within the classNames memoization,\n// I've disabled this rule to simply be able to work with any types.\n/* eslint-disable @typescript-eslint/no-explicit-any */\n// This represents a prop we attach to each Map to indicate the cached return value\n// associated with the graph node.\nvar retVal = '__retval__';\n/**\n * Creates a getClassNames function which calls getStyles given the props, and injects them\n * into mergeStyleSets.\n *\n * Note that the props you pass in on every render should be in the same order and\n * immutable (numbers, strings, and booleans). This will allow the results to be memoized. Violating\n * these will cause extra recalcs to occur.\n */\nexport function classNamesFunction(options) {\n // We build a trie where each node is a Map. The map entry key represents an argument\n // value, and the entry value is another node (Map). Each node has a `__retval__`\n // property which is used to hold the cached response.\n if (options === void 0) { options = {}; }\n // To derive the response, we can simply ensure the arguments are added or already\n // exist in the trie. At the last node, if there is a `__retval__` we return that. Otherwise\n // we call the `getStyles` api to evaluate, cache on the property, and return that.\n // let map: IRecursiveMemoNode = new Map();\n var windowMap = new Map();\n var styleCalcCount = 0;\n var getClassNamesCount = 0;\n var currentMemoizedClassNames = _memoizedClassNames;\n var getClassNames = function (styleFunctionOrObject, styleProps) {\n var _a;\n if (styleProps === void 0) { styleProps = {}; }\n // If useStaticStyles is true, styleFunctionOrObject returns slot to classname mappings.\n // If there is also no style overrides, we can skip merge styles completely and\n // simply return the result from the style funcion.\n if (options.useStaticStyles &&\n typeof styleFunctionOrObject === 'function' &&\n styleFunctionOrObject.__noStyleOverride__) {\n return styleFunctionOrObject(styleProps);\n }\n getClassNamesCount++;\n var shadowConfig = styleFunctionOrObject\n ? styleFunctionOrObject.__shadowConfig__\n : undefined;\n var key = shadowConfig && shadowConfig.window ? shadowConfig.window : '__default__';\n if (!windowMap.has(key)) {\n windowMap.set(key, new Map());\n }\n var current = windowMap.get(key);\n // let current: Map = map;\n var theme = styleProps.theme;\n var rtl = theme && theme.rtl !== undefined ? theme.rtl : getRTL();\n var disableCaching = options.disableCaching;\n // On reset of our stylesheet, reset memoized cache.\n if (currentMemoizedClassNames !== _memoizedClassNames) {\n currentMemoizedClassNames = _memoizedClassNames;\n // map = new Map();\n windowMap.set(key, new Map());\n current = windowMap.get(key);\n styleCalcCount = 0;\n }\n if (!options.disableCaching) {\n current = _traverseMap(windowMap.get(key), styleFunctionOrObject);\n current = _traverseMap(current, styleProps);\n }\n if (disableCaching || !current[retVal]) {\n if (styleFunctionOrObject === undefined) {\n current[retVal] = {};\n }\n else {\n current[retVal] = mergeCssSets([\n (typeof styleFunctionOrObject === 'function'\n ? styleFunctionOrObject(styleProps)\n : styleFunctionOrObject),\n ], {\n shadowConfig: styleFunctionOrObject.__shadowConfig__,\n rtl: !!rtl,\n specificityMultiplier: options.useStaticStyles ? DEFAULT_SPECIFICITY_MULTIPLIER : undefined,\n });\n }\n if (!disableCaching) {\n styleCalcCount++;\n }\n }\n if (styleCalcCount > (options.cacheSize || MAX_CACHE_COUNT)) {\n var win = getWindow();\n if ((_a = win === null || win === void 0 ? void 0 : win.FabricConfig) === null || _a === void 0 ? void 0 : _a.enableClassNameCacheFullWarning) {\n // eslint-disable-next-line no-console\n console.warn(\"Styles are being recalculated too frequently. Cache miss rate is \".concat(styleCalcCount, \"/\").concat(getClassNamesCount, \".\"));\n // eslint-disable-next-line no-console\n console.trace();\n }\n windowMap.get(key).clear();\n styleCalcCount = 0;\n // Mutate the options passed in, that's all we can do.\n options.disableCaching = true;\n }\n // Note: the retVal is an attached property on the Map; not a key in the Map. We use this attached property to\n // cache the return value for this branch of the graph.\n return current[retVal];\n };\n return getClassNames;\n}\nfunction _traverseEdge(current, value) {\n value = _normalizeValue(value);\n if (!current.has(value)) {\n current.set(value, new Map());\n }\n return current.get(value);\n}\nfunction _traverseMap(current, inputs) {\n if (typeof inputs === 'function') {\n var cachedInputsFromStyled = inputs.__cachedInputs__;\n if (cachedInputsFromStyled) {\n // The styled helper will generate the styles function and will attach the cached\n // inputs (consisting of the default styles, customzied styles, and user provided styles.)\n // These should be used as cache keys for deriving the memoized value.\n for (var _i = 0, _a = inputs.__cachedInputs__; _i < _a.length; _i++) {\n var input = _a[_i];\n current = _traverseEdge(current, input);\n }\n }\n else {\n current = _traverseEdge(current, inputs);\n }\n }\n else if (typeof inputs === 'object') {\n for (var propName in inputs) {\n if (inputs.hasOwnProperty(propName)) {\n current = _traverseEdge(current, inputs[propName]);\n }\n }\n }\n return current;\n}\nfunction _normalizeValue(value) {\n switch (value) {\n case undefined:\n return '__undefined__';\n case null:\n return '__null__';\n default:\n return value;\n }\n}\n//# sourceMappingURL=classNamesFunction.js.map","import { mergeSettings, mergeScopedSettings } from './mergeSettings';\n/**\n * Merge props and customizations giving priority to props over context.\n * NOTE: This function will always perform multiple merge operations. Use with caution.\n * @param props - New settings to merge in.\n * @param parentContext - Context containing current settings.\n * @returns Merged customizations.\n */\nexport function mergeCustomizations(props, parentContext) {\n var _a = (parentContext || {}).customizations, customizations = _a === void 0 ? { settings: {}, scopedSettings: {} } : _a;\n return {\n customizations: {\n settings: mergeSettings(customizations.settings, props.settings),\n scopedSettings: mergeScopedSettings(customizations.scopedSettings, props.scopedSettings),\n inCustomizerContext: true,\n },\n };\n}\n//# sourceMappingURL=mergeCustomizations.js.map","import { warn } from './warn';\n/**\n * Warns when props are required if a condition is met.\n *\n * @public\n * @param componentName - The name of the component being used.\n * @param props - The props passed into the component.\n * @param requiredProps - The name of the props that are required when the condition is met.\n * @param conditionalPropName - The name of the prop that the condition is based on.\n * @param condition - Whether the condition is met.\n */\nexport function warnConditionallyRequiredProps(componentName, props, requiredProps, conditionalPropName, condition) {\n if (condition === true && process.env.NODE_ENV !== 'production') {\n for (var _i = 0, requiredProps_1 = requiredProps; _i < requiredProps_1.length; _i++) {\n var requiredPropName = requiredProps_1[_i];\n if (!(requiredPropName in props)) {\n warn(\"\".concat(componentName, \" property '\").concat(requiredPropName, \"' is required when '\").concat(conditionalPropName, \"' is used.'\"));\n }\n }\n }\n}\n//# sourceMappingURL=warnConditionallyRequiredProps.js.map","import { __extends } from \"tslib\";\nimport * as React from 'react';\nimport { getWindow } from './dom/getWindow';\n/**\n * Utility component for delaying the render of a child component after a given delay. This component\n * requires a single child component; don't pass in many components. Wrap multiple components in a DIV\n * if necessary.\n *\n * @public\n * {@docCategory DelayedRender}\n */\nexport var DelayedRender = /** @class */ (function (_super) {\n __extends(DelayedRender, _super);\n function DelayedRender(props) {\n var _this = _super.call(this, props) || this;\n _this.state = {\n isRendered: getWindow() === undefined,\n };\n return _this;\n }\n DelayedRender.prototype.componentDidMount = function () {\n var _this = this;\n var delay = this.props.delay;\n // eslint-disable-next-line no-restricted-globals\n this._timeoutId = window.setTimeout(function () {\n _this.setState({\n isRendered: true,\n });\n }, delay);\n };\n DelayedRender.prototype.componentWillUnmount = function () {\n if (this._timeoutId) {\n clearTimeout(this._timeoutId);\n }\n };\n DelayedRender.prototype.render = function () {\n return this.state.isRendered ? React.Children.only(this.props.children) : null;\n };\n DelayedRender.defaultProps = {\n delay: 0,\n };\n return DelayedRender;\n}(React.Component));\n//# sourceMappingURL=DelayedRender.js.map","/**\n * Simulated enum for keycodes. These will get inlined by uglify when used much like an enum\n *\n * @public\n * {@docCategory KeyCodes}\n */\nexport var KeyCodes = {\n backspace: 8,\n tab: 9,\n enter: 13,\n shift: 16,\n ctrl: 17,\n alt: 18,\n pauseBreak: 19,\n capslock: 20,\n escape: 27,\n space: 32,\n pageUp: 33,\n pageDown: 34,\n end: 35,\n home: 36,\n left: 37,\n up: 38,\n right: 39,\n down: 40,\n insert: 45,\n del: 46,\n zero: 48,\n one: 49,\n two: 50,\n three: 51,\n four: 52,\n five: 53,\n six: 54,\n seven: 55,\n eight: 56,\n nine: 57,\n colon: 58,\n a: 65,\n b: 66,\n c: 67,\n d: 68,\n e: 69,\n f: 70,\n g: 71,\n h: 72,\n i: 73,\n j: 74,\n k: 75,\n l: 76,\n m: 77,\n n: 78,\n o: 79,\n p: 80,\n q: 81,\n r: 82,\n s: 83,\n t: 84,\n u: 85,\n v: 86,\n w: 87,\n x: 88,\n y: 89,\n z: 90,\n leftWindow: 91,\n rightWindow: 92,\n select: 93,\n /* eslint-disable @typescript-eslint/naming-convention */\n zero_numpad: 96,\n one_numpad: 97,\n two_numpad: 98,\n three_numpad: 99,\n four_numpad: 100,\n five_numpad: 101,\n six_numpad: 102,\n seven_numpad: 103,\n eight_numpad: 104,\n nine_numpad: 105,\n /* eslint-enable @typescript-eslint/naming-convention */\n multiply: 106,\n add: 107,\n subtract: 109,\n decimalPoint: 110,\n divide: 111,\n f1: 112,\n f2: 113,\n f3: 114,\n f4: 115,\n f5: 116,\n f6: 117,\n f7: 118,\n f8: 119,\n f9: 120,\n f10: 121,\n f11: 122,\n f12: 123,\n numlock: 144,\n scrollLock: 145,\n semicolon: 186,\n equalSign: 187,\n comma: 188,\n dash: 189,\n period: 190,\n forwardSlash: 191,\n graveAccent: 192,\n openBracket: 219,\n backSlash: 220,\n closeBracket: 221,\n singleQuote: 222,\n};\n//# sourceMappingURL=KeyCodes.js.map","import { arraysEqual } from './array';\n/**\n * Set up a ref resolver function given internal state managed for the ref.\n * @param local Set\n */\nvar createResolver = function (local) {\n return function (newValue) {\n for (var _i = 0, _a = local.refs; _i < _a.length; _i++) {\n var ref = _a[_i];\n if (typeof ref === 'function') {\n ref(newValue);\n }\n else if (ref) {\n // work around the immutability of the React.Ref type\n ref.current = newValue;\n }\n }\n };\n};\n/**\n * Helper to merge refs from within class components.\n */\nexport var createMergedRef = function (value) {\n var local = {\n refs: [],\n };\n return function () {\n var newRefs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newRefs[_i] = arguments[_i];\n }\n if (!local.resolver || !arraysEqual(local.refs, newRefs)) {\n local.resolver = createResolver(local);\n }\n local.refs = newRefs;\n return local.resolver;\n };\n};\n//# sourceMappingURL=createMergedRef.js.map","/**\n * Helper to find the index of an item within an array, using a callback to\n * determine the match.\n *\n * @public\n * @param array - Array to search.\n * @param cb - Callback which returns true on matches.\n * @param fromIndex - Optional index to start from (defaults to 0)\n */\nexport function findIndex(array, cb, fromIndex) {\n if (fromIndex === void 0) { fromIndex = 0; }\n var index = -1;\n for (var i = fromIndex; array && i < array.length; i++) {\n if (cb(array[i], i)) {\n index = i;\n break;\n }\n }\n return index;\n}\n/**\n * Helper to find the first item within an array that satisfies the callback.\n * @param array - Array to search\n * @param cb - Callback which returns true on matches\n */\nexport function find(array, cb) {\n var index = findIndex(array, cb);\n if (index < 0) {\n return undefined;\n }\n return array[index];\n}\n/**\n * Creates an array of a given size and helper method to populate.\n *\n * @public\n * @param size - Size of array.\n * @param getItem - Callback to populate given cell index.\n */\nexport function createArray(size, getItem) {\n var array = [];\n for (var i = 0; i < size; i++) {\n array.push(getItem(i));\n }\n return array;\n}\n/**\n * Convert the given array to a matrix with columnCount number\n * of columns.\n *\n * @public\n * @param items - The array to convert\n * @param columnCount - The number of columns for the resulting matrix\n * @returns A matrix of items\n */\nexport function toMatrix(items, columnCount) {\n return items.reduce(function (rows, currentValue, index) {\n if (index % columnCount === 0) {\n rows.push([currentValue]);\n }\n else {\n rows[rows.length - 1].push(currentValue);\n }\n return rows;\n }, []);\n}\n/**\n * Given an array, it returns a new array that does not contain the item at the given index.\n * @param array - The array to operate on\n * @param index - The index of the element to remove\n */\nexport function removeIndex(array, index) {\n return array.filter(function (_, i) { return index !== i; });\n}\n/**\n * Given an array, this function returns a new array where the element at a given index has been replaced.\n * @param array - The array to operate on\n * @param newElement - The element that will be placed in the new array\n * @param index - The index of the element that should be replaced\n */\nexport function replaceElement(array, newElement, index) {\n var copy = array.slice();\n copy[index] = newElement;\n return copy;\n}\n/**\n * Given an array, this function returns a new array where an element has been inserted at the given index.\n * @param array - The array to operate on\n * @param index - The index where an element should be inserted\n * @param itemToAdd - The element to insert\n */\nexport function addElementAtIndex(array, index, itemToAdd) {\n var copy = array.slice();\n copy.splice(index, 0, itemToAdd);\n return copy;\n}\n/**\n * Given an array where each element is of type T or T[], flatten it into an array of T\n * @param array - The array where each element can optionally also be an array\n */\nexport function flatten(array) {\n var result = [];\n array.forEach(function (item) { return (result = result.concat(item)); });\n return result;\n}\n/**\n * Returns a boolean indicating if the two given arrays are equal in length and values.\n *\n * @param array1 - First array to compare\n * @param array2 - Second array to compare\n * @returns True if the arrays are the same length and have the same values in the same positions, false otherwise.\n */\nexport function arraysEqual(array1, array2) {\n if (array1.length !== array2.length) {\n return false;\n }\n for (var i = 0; i < array1.length; i++) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n}\n//# sourceMappingURL=array.js.map","import { warn } from './warn';\n/**\n * Warns when two props which are mutually exclusive are both being used.\n *\n * @public\n * @param componentName - The name of the component being used.\n * @param props - The props passed into the component.\n * @param exclusiveMap - A map where the key is a parameter, and the value is the other parameter.\n */\nexport function warnMutuallyExclusive(componentName, props, exclusiveMap) {\n if (process.env.NODE_ENV !== 'production') {\n for (var propName in exclusiveMap) {\n if (props && props[propName] !== undefined) {\n var propInExclusiveMapValue = exclusiveMap[propName];\n if (propInExclusiveMapValue && props[propInExclusiveMapValue] !== undefined) {\n warn(\"\".concat(componentName, \" property '\").concat(propName, \"' is mutually exclusive with '\").concat(exclusiveMap[propName], \"'. \") +\n \"Use one or the other.\");\n }\n }\n }\n }\n}\n//# sourceMappingURL=warnMutuallyExclusive.js.map","// Font face names to be registered.\nexport var LocalizedFontNames;\n(function (LocalizedFontNames) {\n LocalizedFontNames.Arabic = 'Segoe UI Web (Arabic)';\n LocalizedFontNames.Cyrillic = 'Segoe UI Web (Cyrillic)';\n LocalizedFontNames.EastEuropean = 'Segoe UI Web (East European)';\n LocalizedFontNames.Greek = 'Segoe UI Web (Greek)';\n LocalizedFontNames.Hebrew = 'Segoe UI Web (Hebrew)';\n LocalizedFontNames.Thai = 'Leelawadee UI Web';\n LocalizedFontNames.Vietnamese = 'Segoe UI Web (Vietnamese)';\n LocalizedFontNames.WestEuropean = 'Segoe UI Web (West European)';\n LocalizedFontNames.Selawik = 'Selawik Web';\n LocalizedFontNames.Armenian = 'Segoe UI Web (Armenian)';\n LocalizedFontNames.Georgian = 'Segoe UI Web (Georgian)';\n})(LocalizedFontNames || (LocalizedFontNames = {}));\n// Font families with fallbacks, for the general regions.\nexport var LocalizedFontFamilies;\n(function (LocalizedFontFamilies) {\n LocalizedFontFamilies.Arabic = \"'\".concat(LocalizedFontNames.Arabic, \"'\");\n LocalizedFontFamilies.ChineseSimplified = \"'Microsoft Yahei UI', Verdana, Simsun\";\n LocalizedFontFamilies.ChineseTraditional = \"'Microsoft Jhenghei UI', Pmingliu\";\n LocalizedFontFamilies.Cyrillic = \"'\".concat(LocalizedFontNames.Cyrillic, \"'\");\n LocalizedFontFamilies.EastEuropean = \"'\".concat(LocalizedFontNames.EastEuropean, \"'\");\n LocalizedFontFamilies.Greek = \"'\".concat(LocalizedFontNames.Greek, \"'\");\n LocalizedFontFamilies.Hebrew = \"'\".concat(LocalizedFontNames.Hebrew, \"'\");\n LocalizedFontFamilies.Hindi = \"'Nirmala UI'\";\n LocalizedFontFamilies.Japanese = \"'Yu Gothic UI', 'Meiryo UI', Meiryo, 'MS Pgothic', Osaka\";\n LocalizedFontFamilies.Korean = \"'Malgun Gothic', Gulim\";\n LocalizedFontFamilies.Selawik = \"'\".concat(LocalizedFontNames.Selawik, \"'\");\n LocalizedFontFamilies.Thai = \"'Leelawadee UI Web', 'Kmer UI'\";\n LocalizedFontFamilies.Vietnamese = \"'\".concat(LocalizedFontNames.Vietnamese, \"'\");\n LocalizedFontFamilies.WestEuropean = \"'\".concat(LocalizedFontNames.WestEuropean, \"'\");\n LocalizedFontFamilies.Armenian = \"'\".concat(LocalizedFontNames.Armenian, \"'\");\n LocalizedFontFamilies.Georgian = \"'\".concat(LocalizedFontNames.Georgian, \"'\");\n})(LocalizedFontFamilies || (LocalizedFontFamilies = {}));\n// Standard font sizes.\nexport var FontSizes;\n(function (FontSizes) {\n FontSizes.size10 = '10px';\n FontSizes.size12 = '12px';\n FontSizes.size14 = '14px';\n FontSizes.size16 = '16px';\n FontSizes.size18 = '18px';\n FontSizes.size20 = '20px';\n FontSizes.size24 = '24px';\n FontSizes.size28 = '28px';\n FontSizes.size32 = '32px';\n FontSizes.size42 = '42px';\n FontSizes.size68 = '68px';\n FontSizes.mini = '10px';\n FontSizes.xSmall = '10px';\n FontSizes.small = '12px';\n FontSizes.smallPlus = '12px';\n FontSizes.medium = '14px';\n FontSizes.mediumPlus = '16px';\n FontSizes.icon = '16px';\n FontSizes.large = '18px';\n FontSizes.xLarge = '20px';\n FontSizes.xLargePlus = '24px';\n FontSizes.xxLarge = '28px';\n FontSizes.xxLargePlus = '32px';\n FontSizes.superLarge = '42px';\n FontSizes.mega = '68px';\n})(FontSizes || (FontSizes = {}));\n// Standard font weights.\nexport var FontWeights;\n(function (FontWeights) {\n FontWeights.light = 100;\n FontWeights.semilight = 300;\n FontWeights.regular = 400;\n FontWeights.semibold = 600;\n FontWeights.bold = 700;\n})(FontWeights || (FontWeights = {}));\n// Standard Icon Sizes.\nexport var IconFontSizes;\n(function (IconFontSizes) {\n IconFontSizes.xSmall = '10px';\n IconFontSizes.small = '12px';\n IconFontSizes.medium = '16px';\n IconFontSizes.large = '20px';\n})(IconFontSizes || (IconFontSizes = {}));\n//# sourceMappingURL=FluentFonts.js.map","/**\n * Allows you to hoist static functions in components.\n * Created for the purpose of fixing broken static functions in classes\n * that utilize decorators.\n *\n * @public\n * @param source - The object where the methods are hoisted from.\n * @param dest - The object to hoist the methods onto.\n * @returns The dest object with methods added\n */\nexport function hoistStatics(source, dest) {\n for (var name_1 in source) {\n if (source.hasOwnProperty(name_1)) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n dest[name_1] = source[name_1];\n }\n }\n return dest;\n}\n//# sourceMappingURL=hoistStatics.js.map","import { getDocument } from './getDocument';\n/** Raises a click event.\n * @deprecated Moved to `FocusZone` component since it was the only place internally using this function.\n */\nexport function raiseClick(target, doc) {\n var theDoc = doc !== null && doc !== void 0 ? doc : getDocument();\n var event = createNewEvent('MouseEvents', theDoc);\n // eslint-disable-next-line deprecation/deprecation\n event.initEvent('click', true, true);\n target.dispatchEvent(event);\n}\nfunction createNewEvent(eventName, doc) {\n var event;\n if (typeof Event === 'function') {\n // Chrome, Opera, Firefox\n event = new Event(eventName);\n }\n else {\n // IE\n event = doc.createEvent('Event');\n // eslint-disable-next-line deprecation/deprecation\n event.initEvent(eventName, true, true);\n }\n return event;\n}\n//# sourceMappingURL=raiseClick.js.map","import { __assign } from \"tslib\";\n/**\n * Function to apply default values to a component props object. This function is intended for function components,\n * to maintain parity with the `defaultProps` feature of class components. It accounts for properties that are\n * specified, but undefined.\n * @param defaultProps- An object with default values for various properties\n * @param propsWithoutDefaults- The props object passed into the component\n */\nexport function getPropsWithDefaults(defaultProps, propsWithoutDefaults) {\n var props = __assign({}, propsWithoutDefaults);\n for (var _i = 0, _a = Object.keys(defaultProps); _i < _a.length; _i++) {\n var key = _a[_i];\n if (props[key] === undefined) {\n props[key] = defaultProps[key];\n }\n }\n return props;\n}\n//# sourceMappingURL=getPropsWithDefaults.js.map","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { concatStyleSetsWithProps } from '@fluentui/merge-styles';\nimport { useMergeStylesHooks } from './shadowDom/index';\nimport { useCustomizationSettings } from './customizations/useCustomizationSettings';\nvar DefaultFields = ['theme', 'styles'];\nexport function styled(Component, baseStyles, getProps, customizable, pure) {\n customizable = customizable || { scope: '', fields: undefined };\n var scope = customizable.scope, _a = customizable.fields, fields = _a === void 0 ? DefaultFields : _a;\n var Wrapped = React.forwardRef(function (props, forwardedRef) {\n var styles = React.useRef();\n var settings = useCustomizationSettings(fields, scope);\n var customizedStyles = settings.styles, dir = settings.dir, rest = __rest(settings, [\"styles\", \"dir\"]);\n var additionalProps = getProps ? getProps(props) : undefined;\n var useStyled = useMergeStylesHooks().useStyled;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var cache = (styles.current && styles.current.__cachedInputs__) || [];\n var propStyles = props.styles;\n if (!styles.current || customizedStyles !== cache[1] || propStyles !== cache[2]) {\n // Using styled components as the Component arg will result in nested styling arrays.\n // The function can be cached and in order to prevent the props from being retained within it's closure\n // we pass in just the styles and not the entire props\n var concatenatedStyles = function (styleProps) {\n return concatStyleSetsWithProps(styleProps, baseStyles, customizedStyles, propStyles);\n };\n // The __cachedInputs__ array is attached to the function and consumed by the\n // classNamesFunction as a list of keys to include for memoizing classnames.\n concatenatedStyles.__cachedInputs__ = [\n baseStyles,\n customizedStyles,\n propStyles,\n ];\n concatenatedStyles.__noStyleOverride__ =\n !customizedStyles && !propStyles;\n styles.current = concatenatedStyles;\n }\n styles.current.__shadowConfig__ = useStyled(scope);\n return React.createElement(Component, __assign({ ref: forwardedRef }, rest, additionalProps, props, { styles: styles.current }));\n });\n // Function.prototype.name is an ES6 feature, so the cast to any is required until we're\n // able to drop IE 11 support and compile with ES6 libs\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Wrapped.displayName = \"Styled\".concat(Component.displayName || Component.name);\n // This preserves backwards compatibility.\n var pureComponent = pure ? React.memo(Wrapped) : Wrapped;\n // Check if the wrapper has a displayName after it has been memoized. Then assign it to the pure component.\n if (Wrapped.displayName) {\n pureComponent.displayName = Wrapped.displayName;\n }\n return pureComponent;\n}\n//# sourceMappingURL=styled.js.map","/**\n * Detects whether an element's content has horizontal overflow\n *\n * @public\n * @param element - Element to check for overflow\n * @returns True if element's content overflows\n */\nexport function hasHorizontalOverflow(element) {\n return element.clientWidth < element.scrollWidth;\n}\n/**\n * Detects whether an element's content has vertical overflow\n *\n * @public\n * @param element - Element to check for overflow\n * @returns True if element's content overflows\n */\nexport function hasVerticalOverflow(element) {\n return element.clientHeight < element.scrollHeight;\n}\n/**\n * Detects whether an element's content has overflow in any direction\n *\n * @public\n * @param element - Element to check for overflow\n * @returns True if element's content overflows\n */\nexport function hasOverflow(element) {\n return hasHorizontalOverflow(element) || hasVerticalOverflow(element);\n}\n//# sourceMappingURL=overflow.js.map","import { getWindow } from './dom/getWindow';\nimport { isDirectionalKeyCode } from './keyboard';\nimport { setFocusVisibility } from './setFocusVisibility';\n/**\n * Initializes the logic which:\n *\n * 1. Subscribes keydown and mousedown events. (It will only do it once per window,\n * so it's safe to call this method multiple times.)\n * 2. When the user presses directional keyboard keys, adds the 'ms-Fabric--isFocusVisible' classname\n * to the document body, removes the 'ms-Fabric-isFocusHidden' classname.\n * 3. When the user clicks a mouse button, adds the 'ms-Fabric-isFocusHidden' classname to the\n * document body, removes the 'ms-Fabric--isFocusVisible' classname.\n *\n * This logic allows components on the page to conditionally render focus treatments based on\n * the existence of global classnames, which simplifies logic overall.\n *\n * @param window - the window used to add the event listeners\n * @deprecated Use useFocusRects hook or FocusRects component instead.\n */\nexport function initializeFocusRects(window) {\n var _a;\n var win = (window || getWindow());\n if (!win || ((_a = win.FabricConfig) === null || _a === void 0 ? void 0 : _a.disableFocusRects) === true) {\n return;\n }\n if (!win.__hasInitializeFocusRects__) {\n win.__hasInitializeFocusRects__ = true;\n win.addEventListener('mousedown', _onMouseDown, true);\n win.addEventListener('pointerdown', _onPointerDown, true);\n win.addEventListener('keydown', _onKeyDown, true);\n }\n}\nfunction _onMouseDown(ev) {\n setFocusVisibility(false, ev.target);\n}\nfunction _onPointerDown(ev) {\n if (ev.pointerType !== 'mouse') {\n setFocusVisibility(false, ev.target);\n }\n}\nfunction _onKeyDown(ev) {\n // eslint-disable-next-line deprecation/deprecation\n isDirectionalKeyCode(ev.which) && setFocusVisibility(true, ev.target);\n}\n//# sourceMappingURL=initializeFocusRects.js.map","import { createTheme } from './createTheme';\nexport var FluentTheme = createTheme({});\n//# sourceMappingURL=FluentTheme.js.map","import { __assign } from \"tslib\";\nimport { GlobalSettings } from '../GlobalSettings';\nvar CustomizationsGlobalKey = 'customizations';\nvar NO_CUSTOMIZATIONS = { settings: {}, scopedSettings: {}, inCustomizerContext: false };\nvar _allSettings = GlobalSettings.getValue(CustomizationsGlobalKey, {\n settings: {},\n scopedSettings: {},\n inCustomizerContext: false,\n});\nvar _events = [];\nvar Customizations = /** @class */ (function () {\n function Customizations() {\n }\n Customizations.reset = function () {\n _allSettings.settings = {};\n _allSettings.scopedSettings = {};\n };\n /** Apply global Customization settings.\n * @example Customizations.applySettings(\\{ theme: \\{...\\} \\});\n */\n Customizations.applySettings = function (settings) {\n _allSettings.settings = __assign(__assign({}, _allSettings.settings), settings);\n Customizations._raiseChange();\n };\n /** Apply Customizations to a particular named scope, like a component.\n * @example Customizations.applyScopedSettings('Nav', \\{ styles: () =\\> \\{\\} \\});\n */\n Customizations.applyScopedSettings = function (scopeName, settings) {\n _allSettings.scopedSettings[scopeName] = __assign(__assign({}, _allSettings.scopedSettings[scopeName]), settings);\n Customizations._raiseChange();\n };\n Customizations.getSettings = function (properties, scopeName, localSettings) {\n if (localSettings === void 0) { localSettings = NO_CUSTOMIZATIONS; }\n var settings = {};\n var localScopedSettings = (scopeName && localSettings.scopedSettings[scopeName]) || {};\n var globalScopedSettings = (scopeName && _allSettings.scopedSettings[scopeName]) || {};\n for (var _i = 0, properties_1 = properties; _i < properties_1.length; _i++) {\n var property = properties_1[_i];\n settings[property] =\n localScopedSettings[property] ||\n localSettings.settings[property] ||\n globalScopedSettings[property] ||\n _allSettings.settings[property];\n }\n return settings;\n };\n /** Used to run some code that sets Customizations without triggering an update until the end.\n * Useful for applying Customizations that don't affect anything currently rendered, or for\n * applying many customizations at once.\n * @param suppressUpdate - Do not raise the change event at the end, preventing all updates\n */\n Customizations.applyBatchedUpdates = function (code, suppressUpdate) {\n Customizations._suppressUpdates = true;\n try {\n code();\n }\n catch (_a) {\n /* do nothing */\n }\n Customizations._suppressUpdates = false;\n if (!suppressUpdate) {\n Customizations._raiseChange();\n }\n };\n Customizations.observe = function (onChange) {\n _events.push(onChange);\n };\n Customizations.unobserve = function (onChange) {\n _events = _events.filter(function (cb) { return cb !== onChange; });\n };\n Customizations._raiseChange = function () {\n if (!Customizations._suppressUpdates) {\n _events.forEach(function (cb) { return cb(); });\n }\n };\n return Customizations;\n}());\nexport { Customizations };\n//# sourceMappingURL=Customizations.js.map","import { getDocument } from './dom/getDocument';\nimport { mergeStyles } from '@fluentui/merge-styles';\nimport { getWindow } from './dom/getWindow';\nvar _scrollbarWidth;\nvar _bodyScrollDisabledCount = 0;\nvar DisabledScrollClassName = mergeStyles({\n overflow: 'hidden !important',\n});\n/**\n * Placing this attribute on scrollable divs optimizes detection to know\n * if the div is scrollable or not (given we can avoid expensive operations\n * like getComputedStyle.)\n *\n * @public\n */\nexport var DATA_IS_SCROLLABLE_ATTRIBUTE = 'data-is-scrollable';\n/**\n * Allows the user to scroll within a element,\n * while preventing the user from scrolling the body\n */\nexport var allowScrollOnElement = function (element, events) {\n var window = getWindow(element);\n if (!element || !window) {\n return;\n }\n var _previousClientY = 0;\n var _element = null;\n var computedStyles = window.getComputedStyle(element);\n // remember the clientY for future calls of _preventOverscrolling\n var _saveClientY = function (event) {\n if (event.targetTouches.length === 1) {\n _previousClientY = event.targetTouches[0].clientY;\n }\n };\n // prevent the body from scrolling when the user attempts\n // to scroll past the top or bottom of the element\n var _preventOverscrolling = function (event) {\n // only respond to a single-finger touch\n if (event.targetTouches.length !== 1) {\n return;\n }\n // prevent the body touchmove handler from firing\n // so that scrolling is allowed within the element\n event.stopPropagation();\n if (!_element) {\n return;\n }\n var clientY = event.targetTouches[0].clientY - _previousClientY;\n var scrollableParent = findScrollableParent(event.target);\n if (scrollableParent && _element !== scrollableParent) {\n _element = scrollableParent;\n computedStyles = window.getComputedStyle(_element);\n }\n var scrollTop = _element.scrollTop;\n var isColumnReverse = (computedStyles === null || computedStyles === void 0 ? void 0 : computedStyles.flexDirection) === 'column-reverse';\n // if the element is scrolled to the top,\n // prevent the user from scrolling up\n if (scrollTop === 0 && (isColumnReverse ? clientY < 0 : clientY > 0)) {\n event.preventDefault();\n }\n // if the element is scrolled to the bottom,\n // prevent the user from scrolling down\n if (_element.scrollHeight - Math.abs(Math.ceil(scrollTop)) <= _element.clientHeight &&\n (isColumnReverse ? clientY > 0 : clientY < 0)) {\n event.preventDefault();\n }\n };\n events.on(element, 'touchstart', _saveClientY, { passive: false });\n events.on(element, 'touchmove', _preventOverscrolling, { passive: false });\n _element = element;\n};\n/**\n * Same as allowScrollOnElement but does not prevent overscrolling.\n */\nexport var allowOverscrollOnElement = function (element, events) {\n if (!element) {\n return;\n }\n var _allowElementScroll = function (event) {\n event.stopPropagation();\n };\n events.on(element, 'touchmove', _allowElementScroll, { passive: false });\n};\nvar _disableIosBodyScroll = function (event) {\n event.preventDefault();\n};\n/**\n * Disables the body scrolling.\n *\n * @public\n */\nexport function disableBodyScroll() {\n var doc = getDocument();\n if (doc && doc.body && !_bodyScrollDisabledCount) {\n doc.body.classList.add(DisabledScrollClassName);\n doc.body.addEventListener('touchmove', _disableIosBodyScroll, { passive: false, capture: false });\n }\n _bodyScrollDisabledCount++;\n}\n/**\n * Enables the body scrolling.\n *\n * @public\n */\nexport function enableBodyScroll() {\n if (_bodyScrollDisabledCount > 0) {\n var doc = getDocument();\n if (doc && doc.body && _bodyScrollDisabledCount === 1) {\n doc.body.classList.remove(DisabledScrollClassName);\n doc.body.removeEventListener('touchmove', _disableIosBodyScroll);\n }\n _bodyScrollDisabledCount--;\n }\n}\n/**\n * Calculates the width of a scrollbar for the browser/os.\n *\n * @public\n */\nexport function getScrollbarWidth(doc) {\n if (_scrollbarWidth === undefined) {\n var theDoc = doc !== null && doc !== void 0 ? doc : getDocument();\n var scrollDiv = theDoc.createElement('div');\n scrollDiv.style.setProperty('width', '100px');\n scrollDiv.style.setProperty('height', '100px');\n scrollDiv.style.setProperty('overflow', 'scroll');\n scrollDiv.style.setProperty('position', 'absolute');\n scrollDiv.style.setProperty('top', '-9999px');\n theDoc.body.appendChild(scrollDiv);\n // Get the scrollbar width\n _scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n // Delete the DIV\n theDoc.body.removeChild(scrollDiv);\n }\n return _scrollbarWidth;\n}\n/**\n * Traverses up the DOM for the element with the data-is-scrollable=true attribute, or returns\n * document.body.\n *\n * @public\n */\nexport function findScrollableParent(startingElement) {\n var el = startingElement;\n var doc = getDocument(startingElement);\n // First do a quick scan for the scrollable attribute.\n while (el && el !== doc.body) {\n if (el.getAttribute(DATA_IS_SCROLLABLE_ATTRIBUTE) === 'true') {\n return el;\n }\n el = el.parentElement;\n }\n // If we haven't found it, the use the slower method: compute styles to evaluate if overflow is set.\n el = startingElement;\n while (el && el !== doc.body) {\n if (el.getAttribute(DATA_IS_SCROLLABLE_ATTRIBUTE) !== 'false') {\n var computedStyles = getComputedStyle(el);\n var overflowY = computedStyles ? computedStyles.getPropertyValue('overflow-y') : '';\n if (overflowY && (overflowY === 'scroll' || overflowY === 'auto')) {\n return el;\n }\n }\n el = el.parentElement;\n }\n // Fall back to window scroll.\n if (!el || el === doc.body) {\n el = getWindow(startingElement);\n }\n return el;\n}\n//# sourceMappingURL=scroll.js.map"],"sourceRoot":""}