{"version":3,"file":"static/js/6096_260371259b07a3510dcd.js","mappings":"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ie,EAAOD,EAAQhe,GAEVyO,EAAK,EAAGyP,EADN5H,MAAMuF,QAAQoC,GAAQA,EAAOrmB,OAAO2gB,KAAK0F,GACpBxP,EAAKyP,EAAOjpB,OAAQwZ,IAAM,CAEtD9Q,EADUugB,EAAOzP,IACH,CAClB,CAEJ,OAAO9Q,CACX,EAMWwgB,EAAoBL,EAAY,CACvC,SACA,QACA,UACA,mBACA,qBACA,sBACA,UACA,iBACA,SACA,gBACA,WACA,UACA,WACA,SACA,UACA,YACA,mBACA,aACA,UACA,UACA,YACA,mBACA,mBACA,YACA,cACA,UACA,eACA,mBACA,cACA,UACA,SACA,YACA,aACA,eACA,WACA,YACA,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,yBAOOM,EAAwBN,EAAY,CAC3C,YACA,WACA,YACA,kBACA,MACA,YACA,SACA,UACA,KACA,OACA,MACA,OACA,QACA,WACA,QACA,YACA,aACA,SAOOO,EAAwBP,EAAYM,EAAuBD,GAM3DG,EAAkBR,EAAYO,EAAuB,CAC5D,SAOOE,EAAkBT,EAAYO,EAAuB,CAC5D,SACA,OACA,QACA,UACA,MACA,UAOOG,EAAkBV,EAAYS,EAAiB,CACtD,WAOOE,EAAeX,EAAYO,EAAuB,CACzD,UAOOK,EAAeZ,EAAYO,EAAuB,CACzD,UAOOM,EAAmBb,EAAYO,EAAuB,CAC7D,WACA,OACA,WACA,QACA,MACA,SACA,SAOOO,EAAmBd,EAAYO,EAAuB,CAC7D,YACA,WACA,OACA,aACA,cACA,aACA,iBACA,aACA,OACA,UAOOQ,EAAkBf,EAAYc,EAAkB,CACvD,SACA,MACA,iBACA,eACA,UACA,UACA,OACA,SACA,YACA,OACA,MACA,YACA,MACA,YACA,WACA,UACA,cACA,WACA,WACA,MACA,OACA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","sources":["file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/Async.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/BaseComponent.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/DelayedRender.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/EventGroup.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/FocusRectsProvider.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/GlobalSettings.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/KeyCodes.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/Rectangle.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/aria.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/array.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/classNamesFunction.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/componentAs/composeComponentAs.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/controlled.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/createMergedRef.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/css.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/Customizations.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/mergeSettings.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/Customizer.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/mergeCustomizations.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/CustomizerContext.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/shadowDom/contexts/MergeStylesShadowRootConsumer.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/customizable.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/hoistStatics.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/customizations/useCustomizationSettings.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/dom/canUseDOM.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/dom/getDocument.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/dom/getWindow.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/dom/on.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/appendFunction.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/extendComponent.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/focus.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/getId.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/getNativeElementProps.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/getPropsWithDefaults.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/ie11Detector.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/initializeComponentRef.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/initials.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/language.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/localStorage.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/memoize.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/merge.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/mobileDetector.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/modalize.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/object.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/osDetector.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/overflow.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/properties.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/renderFunction/composeRenderFunction.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/rtl.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/safeRequestAnimationFrame.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/scroll.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/sessionStorage.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/setFocusVisibility.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/shadowDom/contexts/MergeStylesShadowRootContext.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/shadowDom/contexts/MergeStylesDefaultContext.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/shadowDom/hooks/useMergeStylesHooks.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/shadowDom/hooks/useMergeStylesShadowRoot.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/string.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/styled.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/keyboard.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/useFocusRects.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/useIsomorphicLayoutEffect.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/warn/warn.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/warn/warnConditionallyRequiredProps.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/warn/warnControlledUsage.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/@fluentui+utilities@8.15.19_z4qn5m62jnw5xrigtnmlk62un4/node_modules/@fluentui/utilities/lib/warn/warnDeprecations.js"],"sourcesContent":["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 { __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 { __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","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","import * as React from 'react';\nimport { FocusRectsContext } from './useFocusRects';\nexport var FocusRectsProvider = function (props) {\n var providerRef = props.providerRef, layerRoot = props.layerRoot;\n var registeredProviders = React.useState([])[0];\n var parentContext = React.useContext(FocusRectsContext);\n // Inherit the parent context if it exists, unless this is a layer root.\n // This allows the topmost provider element in the DOM tree to handle the focus events.\n // Since layers are in a separate HTML tree from their parent, they shouldn't use the parent's providerRef.\n var inheritParentContext = parentContext !== undefined && !layerRoot;\n var context = React.useMemo(function () {\n return inheritParentContext\n ? undefined\n : {\n providerRef: providerRef,\n registeredProviders: registeredProviders,\n registerProvider: function (ref) {\n // Register this child provider with the current context, and any parent contexts\n registeredProviders.push(ref);\n parentContext === null || parentContext === void 0 ? void 0 : parentContext.registerProvider(ref);\n },\n unregisterProvider: function (ref) {\n parentContext === null || parentContext === void 0 ? void 0 : parentContext.unregisterProvider(ref);\n var i = registeredProviders.indexOf(ref);\n if (i >= 0) {\n registeredProviders.splice(i, 1);\n }\n },\n };\n }, [providerRef, registeredProviders, parentContext, inheritParentContext]);\n React.useEffect(function () {\n if (context) {\n context.registerProvider(context.providerRef);\n return function () { return context.unregisterProvider(context.providerRef); };\n }\n }, [context]);\n // Create a new context provider if this is not inheriting from the parent.\n if (context) {\n return React.createElement(FocusRectsContext.Provider, { value: context }, props.children);\n }\n else {\n return React.createElement(React.Fragment, null, props.children);\n }\n};\n//# sourceMappingURL=FocusRectsProvider.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","/**\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","/**\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","/**\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","/**\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 { 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 { __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","/**\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","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 * 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","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 { __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 { __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","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 * 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 { 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","/**\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 * 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 * 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 { 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 { 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","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","/* 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","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","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","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","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","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 { 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 { 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","/**\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","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 { 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","/**\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 * 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","/**\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","/**\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","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 * 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","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 { 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 { 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 { 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 { 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","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 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 { __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","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","// 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 { __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","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","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","import * as React from 'react';\nimport { canUseDOM } from './dom/canUseDOM';\n/**\n * React currently throws a warning when using `useLayoutEffect` on the server. To get around it,\n * this hook calls `useEffect` on the server (no-op) and `useLayoutEffect` in the browser.\n *\n * Prefer `useEffect` unless you have a specific need to do something after mount and before paint,\n * such as to avoid a render flash for certain operations.\n *\n * Server-side rendering is detected based on `canUseDOM` from `@fluentui/utilities`.\n *\n * https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\n * https://github.com/reduxjs/react-redux/blob/master/src/utils/useIsomorphicLayoutEffect.js\n */\n// eslint-disable-next-line no-restricted-properties\nexport var useIsomorphicLayoutEffect = canUseDOM() ? React.useLayoutEffect : React.useEffect;\n//# sourceMappingURL=useIsomorphicLayoutEffect.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 { 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 { 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","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"],"names":["Async","parent","onError","this","_timeoutIds","_immediateIds","_intervalIds","_animationFrameIds","_isDisposed","_parent","_onErrorHandler","_noop","prototype","dispose","id","hasOwnProperty","clearTimeout","parseInt","clearImmediate","clearInterval","cancelAnimationFrame","setTimeout","callback","duration","_this","timeoutId","apply","e","_logError","setImmediate","targetElement","immediateId","win","setInterval","intervalId","throttle","func","wait","options","lastResult","lastArgs","waitMS","leading","trailing","lastExecuteTime","userCall","now","Date","delta","waitLength","args","_i","arguments","length","debounce","noOpFunction","cancel","flush","pending","maxWait","lastCallTime","isNaN","markExecuted","time","invokeFunction","executeImmediately","maxWaitDelta","maxWaitExpired","Math","min","resultFunction","requestAnimationFrame","animationFrameId","animationFrameCallback","_super","BaseComponent","props","context","call","obj","methodNames","i","len","_makeSafe","_makeAllSafe","componentDidUpdate","prevProps","prevState","_updateComponentRef","componentDidMount","_setComponentRef","componentRef","componentWillUnmount","__disposables","_disposables","disposable","Object","defineProperty","get","__className","results","exec","constructor","toString","enumerable","configurable","__async","push","__events","EventGroup","_resolveRef","refName","__resolves","ref","currentProps","newProps","_warnDeprecations","deprecationMap","warnDeprecations","className","_warnMutuallyExclusive","mutuallyExclusiveMap","_warnConditionallyRequiredProps","requiredProps","conditionalPropName","condition","warnConditionallyRequiredProps","w","value","_skipComponentRefResolution","current","methodName","classMethod","prototypeMethod","retVal","nullRender","DelayedRender","state","isRendered","undefined","delay","_timeoutId","window","setState","render","children","defaultProps","_id","_uniqueId","_eventRecords","raise","target","eventName","eventArgs","bubbleEvent","doc","theDoc","_isElement","createEvent","ev","initEvent","dispatchEvent","createEventObject","evObj","fireEvent","events","__events__","eventRecords","eventRecordList","listIndex","record","objectCallback","isObserved","isDeclared","declaredEvents","__declaredEvents","stopPropagation","event","cancelBubble","addEventListener","HTMLElement","off","onAll","useCapture","on","indexOf","split","parent_1","eventRecord","count","processElementEvent","result","preventDefault","elementCallback","attachEvent","targetArrayLookup","targetArray","splice","removeEventListener","detachEvent","declare","FocusRectsProvider","providerRef","layerRoot","registeredProviders","parentContext","inheritParentContext","registerProvider","unregisterProvider","GLOBAL_SETTINGS_PROP_NAME","CALLBACK_STATE_PROP_NAME","_counter","GlobalSettings","getValue","key","defaultValue","globalSettings","_getGlobalSettings","setValue","callbacks","oldValue","changeDescription","addChangeListener","cb","__id__","_getCallbacks","String","removeChangeListener","_a","globalObj","KeyCodes","backspace","tab","enter","shift","ctrl","alt","pauseBreak","capslock","escape","space","pageUp","pageDown","end","home","left","up","right","down","insert","del","zero","one","two","three","four","five","six","seven","eight","nine","colon","a","b","c","d","f","g","h","j","k","l","m","n","o","p","q","r","s","t","u","v","x","y","z","leftWindow","rightWindow","select","zero_numpad","one_numpad","two_numpad","three_numpad","four_numpad","five_numpad","six_numpad","seven_numpad","eight_numpad","nine_numpad","multiply","add","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","Rectangle","top","bottom","equals","rect","parseFloat","toFixed","mergeAriaAttributeValues","ariaAttributes","mergedAttribute","filter","arg","join","trim","findIndex","array","fromIndex","index","addElementAtIndex","itemToAdd","copy","slice","arraysEqual","array1","array2","MAX_CACHE_COUNT","DEFAULT_SPECIFICITY_MULTIPLIER","_memoizedClassNames","stylesheet","onReset","classNamesFunction","windowMap","Map","styleCalcCount","getClassNamesCount","currentMemoizedClassNames","styleFunctionOrObject","styleProps","useStaticStyles","__noStyleOverride__","shadowConfig","__shadowConfig__","has","set","theme","rtl","disableCaching","_traverseMap","specificityMultiplier","cacheSize","FabricConfig","enableClassNameCacheFullWarning","console","warn","concat","trace","clear","_traverseEdge","_normalizeValue","inputs","__cachedInputs__","propName","componentAsMemoizer","outer","Outer","inner","Error","Inner","innerMemoizer","defaultRender","innerProps","outerProps","composeComponentAs","isControlled","valueProp","createMergedRef","local","refs","newRefs","resolver","newValue","createResolver","css","classes","args_1","NO_CUSTOMIZATIONS","settings","scopedSettings","inCustomizerContext","_allSettings","_events","Customizations","reset","applySettings","_raiseChange","applyScopedSettings","scopeName","getSettings","properties","localSettings","localScopedSettings","globalScopedSettings","properties_1","property","applyBatchedUpdates","code","suppressUpdate","_suppressUpdates","observe","onChange","unobserve","forEach","mergeSettings","oldSettings","newSettings","mergeSettingsWith","_isSettingsFunction","_settingsMergeWith","mergeScopedSettings","scopedSettingsFromProps","oldScopedSettings","newScopedSettings","_scopedSettingsMergeWith","Customizer","_onCustomizationChange","forceUpdate","contextTransform","CustomizerContext","newContext","customizations","mergeCustomizations","MergeStylesShadowRootConsumer","stylesheetKey","_b","useMergeStylesHooks","useAdoptedStylesheetEx","useMergeStylesRootStylesheets","useWindow","shadowCtx","useMergeStylesShadowRoot","rootMergeStyles","memoizedMakeShadowConfig","memoize","mergeComponentStyles","defaultStyles","componentStyles","styles","customizable","scope","fields","concatStyles","ComposedComponent","resultClass","ComponentWithInjectedProps","_styleCache","_onSettingChanged","bind","inShadow","getWindow","componentProps","default","component","mergedStyles","concatStyleSets","merged","displayName","contextType","source","dest","name_1","hoistStatics","useCustomizationSettings","canUseDOM","document","createElement","getDocument","rootElement","el","ownerDocument","_window","defaultView","element","appendFunction","functions","extendComponent","methods","IS_FOCUSABLE_ATTRIBUTE","IS_VISIBLE_ATTRIBUTE","FOCUSZONE_ID_ATTRIBUTE","FOCUSZONE_SUB_ATTRIBUTE","getFirstFocusable","currentElement","includeElementsInFocusZones","includeShadowRoots","getNextElement","getLastFocusable","getPreviousElement","getFirstTabbable","checkNode","getLastTabbable","focusFirstChild","bypassHiddenElements","focusAsync","suppressParentTraversal","traverseChildren","allowFocusRoot","tabbable","isCurrentElementVisible","isElementVisible","isElementFocusZone","isElementFocusSubZone","childMatch","lastElementChild","shadowRoot","isElementTabbable","childMatchSiblingMatch","previousElementSibling","childMatchParent","parentElement","childMatchParentMatch","siblingMatch","suppressChildTraversal","isElementVisibleAndNotHidden","firstElementChild","nextElementSibling","getAttribute","visibilityAttribute","offsetHeight","offsetParent","isVisible","theWin","hidden","getComputedStyle","visibility","checkTabIndex","checkShadowRoot","disabled","tabIndex","tabIndexAttributeValue","isFocusableAttribute","isTabIndexSet","delegatesFocus","tagName","doesElementContainFocus","currentActiveElement","activeElement","shouldWrapFocus","noWrapDataAttribute","animationId","focus","getFocusableByIndexPath","path","path_1","nextChild","getElementIndexPath","fromElement","toElement","unshift","Array","CURRENT_ID_PROPERTY","DEFAULT_ID_STRING","_global","_initializedStylesheetResets","getId","prefix","resetIds","counter","nativeElementMap","label","audio","video","ol","li","button","input","textarea","option","table","tr","th","td","colGroup","col","form","iframe","img","getNativeElementProps","excludedPropNames","allowedPropNames","getPropsWithDefaults","propsWithoutDefaults","keys","isIE11","navigator","userAgent","initializeComponentRef","_onMount","_onUpdate","_onUnmount","UNWANTED_ENCLOSURES_REGEX","UNWANTED_CHARS_REGEX","PHONENUMBER_REGEX","MULTIPLE_WHITESPACES_REGEX","UNSUPPORTED_TEXT_REGEX","getInitials","isRtl","allowPhoneInitials","replace","cleanupDisplayName","test","initials","splits","charAt","toUpperCase","getInitialsLatin","_language","STORAGE_KEY","getLanguage","persistenceType","savedLanguage","localStorage","getItem","documentElement","_resetCounter","_emptyObject","empty","_dictionary","_weakMap","WeakMap","resetMemoizations","memoizeFunction","maxCacheSize","ignoreNullOrUndefinedResult","rootNode","localResetCounter","currentNode","_createNode","_normalizeArg","map","createMemoizer","cache","val","merge","_merge","circularReferences","isArray","isCircularReference","pop","isIOS","tagsToIgnore","modalize","targetDocument","affectedNodes","body","sibling","ariaHidden","toLowerCase","setAttribute","node","originalValue","removeAttribute","unmodalize","shallowCompare","assign","filteredAssign","isAllowed","sourceObject","omit","exclusions","isMacResult","isMac","hasOverflow","clientWidth","scrollWidth","hasHorizontalOverflow","clientHeight","scrollHeight","hasVerticalOverflow","toObjectMap","items","items_1","item","keys_1","baseElementEvents","baseElementProperties","htmlElementProperties","labelProperties","audioProperties","videoProperties","olProperties","liProperties","anchorProperties","buttonProperties","inputProperties","textAreaProperties","selectProperties","optionProperties","tableProperties","trProperties","thProperties","tdProperties","colGroupProperties","colProperties","formProperties","iframeProperties","imgProperties","divProperties","getNativeProps","keys_2","memoizer","composeRenderFunction","_isRTL","RTL_LOCAL_STORAGE_KEY","getRTL","savedRTL","isRTL","persistSetting","setRTL","safeRequestAnimationFrame","activeTimeouts","Set","delete","_scrollbarWidth","_bodyScrollDisabledCount","DisabledScrollClassName","overflow","DATA_IS_SCROLLABLE_ATTRIBUTE","allowScrollOnElement","_previousClientY","_element","computedStyles","targetTouches","clientY","passive","scrollableParent","findScrollableParent","scrollTop","isColumnReverse","flexDirection","abs","ceil","allowOverscrollOnElement","_disableIosBodyScroll","disableBodyScroll","classList","capture","enableBodyScroll","remove","getScrollbarWidth","scrollDiv","style","setProperty","appendChild","offsetWidth","removeChild","startingElement","overflowY","getPropertyValue","sessionStorage","setItem","data","IsFocusVisibleClassName","IsFocusHiddenClassName","updateClassList","enabled","setFocusVisibility","MergeStylesShadowRootContext","noop","noopShadow","noopRootStylesheets","noopUndefined","MergeStylesDefaultContext","stylesheets","useAdoptedStylesheet","useShadowConfig","useMergeStylesShadowRootContext","useHasMergeStylesShadowRootContext","useStyled","ctx","FORMAT_ARGS_REGEX","FORMAT_REGEX","format","values","match","replacement","DefaultFields","styled","Component","baseStyles","getProps","pure","Wrapped","forwardedRef","customizedStyles","rest","dir","additionalProps","propStyles","concatenatedStyles","name","pureComponent","DirectionalKeyCodes","isDirectionalKeyCode","which","mountCounters","callbackMap","setMountCounters","currValue","setCallbackMap","onMouseDown","_onMouseDown","onPointerDown","_onPointerDown","onKeyDown","_onKeyDown","onKeyUp","_onKeyUp","FocusRectsContext","useFocusRects","rootRef","_c","_d","disableFocusRects","FocusRects","pointerType","useIsomorphicLayoutEffect","message","componentName","warnControlledUsage","params"],"sourceRoot":""}