{"version":3,"file":"static/js/vendor.fluentui.react~6dbad1a4.fefd6ee9.js","mappings":"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","sources":["../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/version.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useAsync.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useConstCallback.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useControllableValue.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useMergedRefs.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useMount.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useMountSync.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useOnEvent.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useRefEffect.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useSetInterval.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useSetTimeout.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useTarget.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useUnmount.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useWarnings.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useBoolean.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useConst.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useForceUpdate.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useId.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.3.6_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/usePrevious.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useAsync.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useBoolean.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useConst.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useControllableValue.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useId.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useMergedRefs.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useOnEvent.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/usePrevious.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useRefEffect.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useSetTimeout.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useTarget.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useUnmount.js","../../../../node_modules/.pnpm/@fluentui+react-hooks@8.8.16_@types+react@17.0.69_react@17.0.1/node_modules/@fluentui/react-hooks/lib/useWarnings.js"],"sourcesContent":["// Do not modify this file; it is generated as part of publish.\n// The checked in version is a placeholder only and will not be updated.\nimport { setVersion } from '@fluentui/set-version';\nsetVersion('@fluentui/react-hooks', '8.3.6');\n//# sourceMappingURL=version.js.map","import { Async } from '@fluentui/utilities';\nimport * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Hook to provide an Async instance that is automatically cleaned up on dismount.\n */\nexport function useAsync() {\n var async = useConst(function () { return new Async(); });\n // Function that returns a function in order to dispose the async instance on unmount\n React.useEffect(function () { return function () { return async.dispose(); }; }, [async]);\n return async;\n}\n//# sourceMappingURL=useAsync.js.map","import * as React from 'react';\n/**\n * @deprecated Deprecated due to potential for misuse (see package readme).\n * Use `React.useCallback` instead.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function useConstCallback(callback) {\n var ref = React.useRef();\n if (!ref.current) {\n ref.current = callback;\n }\n return ref.current;\n}\n//# sourceMappingURL=useConstCallback.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\nexport function useControllableValue(controlledValue, defaultUncontrolledValue, onChange) {\n var _a = React.useState(defaultUncontrolledValue), value = _a[0], setValue = _a[1];\n var isControlled = useConst(controlledValue !== undefined);\n var currentValue = isControlled ? controlledValue : value;\n // Duplicate the current value and onChange in refs so they're accessible from\n // setValueOrCallOnChange without creating a new callback every time\n var valueRef = React.useRef(currentValue);\n var onChangeRef = React.useRef(onChange);\n React.useEffect(function () {\n valueRef.current = currentValue;\n onChangeRef.current = onChange;\n });\n // To match the behavior of the setter returned by React.useState, this callback's identity\n // should never change. This means it MUST NOT directly reference variables that can change.\n var setValueOrCallOnChange = useConst(function () { return function (update, ev) {\n // Assuming here that TValue is not a function, because a controllable value will typically\n // be something a user can enter as input\n var newValue = typeof update === 'function' ? update(valueRef.current) : update;\n if (onChangeRef.current) {\n onChangeRef.current(ev, newValue);\n }\n if (!isControlled) {\n setValue(newValue);\n }\n }; });\n return [currentValue, setValueOrCallOnChange];\n}\n//# sourceMappingURL=useControllableValue.js.map","import { __spreadArrays } from \"tslib\";\nimport * as React from 'react';\n/**\n * React hook to merge multiple React refs (either MutableRefObjects or ref callbacks) into a single ref callback that\n * updates all provided refs\n * @param refs - Refs to collectively update with one ref value.\n * @returns A function with an attached \"current\" prop, so that it can be treated like a RefObject.\n */\nexport function useMergedRefs() {\n var refs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n refs[_i] = arguments[_i];\n }\n var mergedCallback = React.useCallback(function (value) {\n // Update the \"current\" prop hanging on the function.\n mergedCallback.current = value;\n for (var _i = 0, refs_1 = refs; _i < refs_1.length; _i++) {\n var ref = refs_1[_i];\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n // work around the immutability of the React.Ref type\n ref.current = value;\n }\n }\n }, __spreadArrays(refs));\n return mergedCallback;\n}\n//# sourceMappingURL=useMergedRefs.js.map","import * as React from 'react';\n/**\n * Hook which asynchronously executes a callback once the component has been mounted.\n *\n * @param callback - Function to call before mount.\n */\nexport var useMount = function (callback) {\n var mountRef = React.useRef(callback);\n mountRef.current = callback;\n React.useEffect(function () {\n var _a;\n (_a = mountRef.current) === null || _a === void 0 ? void 0 : _a.call(mountRef);\n }, []);\n};\n//# sourceMappingURL=useMount.js.map","import * as React from 'react';\n/**\n * Hook which synchronously executes a callback once the component has been mounted.\n *\n * `WARNING` This should only be used if you need to perform an action after the component has been mounted and\n * before the browser paints. useMountSync will trigger debug warnings in server-rendered scenarios and should be used\n * sparingly.\n *\n * @deprecated Consider to use React.useEffect() or React.useLayoutEffect() directly based on a use case\n *\n * @param callback - Function to call once the component has been mounted.\n */\nexport var useMountSync = function (callback) {\n var mountRef = React.useRef(callback);\n mountRef.current = callback;\n // eslint-disable-next-line no-restricted-properties\n React.useLayoutEffect(function () {\n var _a;\n (_a = mountRef.current) === null || _a === void 0 ? void 0 : _a.call(mountRef);\n }, []);\n};\n//# sourceMappingURL=useMountSync.js.map","import { on } from '@fluentui/utilities';\nimport * as React from 'react';\n/**\n * Hook to attach an event handler on mount and handle cleanup.\n * @param element - Element (or ref to an element) to attach the event handler to\n * @param eventName - The event to attach a handler for\n * @param callback - The handler for the event\n * @param useCapture - Whether or not to attach the handler for the capture phase\n */\nexport function useOnEvent(element, eventName, callback, useCapture) {\n // Use a ref for the callback to prevent repeatedly attaching/unattaching callbacks that are unstable across renders\n var callbackRef = React.useRef(callback);\n callbackRef.current = callback;\n React.useEffect(function () {\n var actualElement = element && 'current' in element ? element.current : element;\n if (!actualElement) {\n return;\n }\n var dispose = on(actualElement, eventName, function (ev) { return callbackRef.current(ev); }, useCapture);\n return dispose;\n }, [element, eventName, useCapture]);\n}\n//# sourceMappingURL=useOnEvent.js.map","import * as React from 'react';\n/**\n * Creates a ref, and calls a callback whenever the ref changes to a non-null value. The callback can optionally return\n * a cleanup function that'll be called before the value changes, and when the ref is unmounted.\n *\n * This can be used to work around a limitation that useEffect cannot depend on `ref.current` (see\n * https://github.com/facebook/react/issues/14387#issuecomment-503616820).\n *\n * Usage example:\n * ```ts\n * const myRef = useRefEffect(element => {\n * ...\n * return () => { ... cleanup ... };\n * });\n * ```\n * ```jsx\n *
\n * ```\n *\n * @param callback - Called whenever the ref's value changes to non-null. Can optionally return a cleanup function.\n * @param initial - (Optional) The initial value for the ref.\n *\n * @returns A function that should be called to set the ref's value. The object also has a `.current` member that can be\n * used to access the ref's value (like a normal RefObject). It can be hooked up to an element's `ref` property.\n */\nexport function useRefEffect(callback, initial) {\n if (initial === void 0) { initial = null; }\n var createRefCallback = function () {\n var refCallback = function (value) {\n if (data.ref.current !== value) {\n if (data.cleanup) {\n data.cleanup();\n data.cleanup = undefined;\n }\n data.ref.current = value;\n if (value !== null) {\n data.cleanup = data.callback(value);\n }\n }\n };\n refCallback.current = initial;\n return refCallback;\n };\n var data = React.useRef({\n ref: createRefCallback(),\n callback: callback,\n }).current;\n data.callback = callback;\n return data.ref;\n}\n//# sourceMappingURL=useRefEffect.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Returns a wrapper function for `setInterval` which automatically handles disposal.\n */\nexport var useSetInterval = function () {\n var intervalIds = useConst({});\n React.useEffect(function () { return function () {\n for (var _i = 0, _a = Object.keys(intervalIds); _i < _a.length; _i++) {\n var id = _a[_i];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n clearInterval(id);\n }\n }; }, \n // useConst ensures this will never change, but react-hooks/exhaustive-deps doesn't know that\n [intervalIds]);\n return useConst({\n setInterval: function (func, duration) {\n var id = setInterval(func, duration);\n intervalIds[id] = 1;\n return id;\n },\n clearInterval: function (id) {\n delete intervalIds[id];\n clearInterval(id);\n },\n });\n};\n//# sourceMappingURL=useSetInterval.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Returns a wrapper function for `setTimeout` which automatically handles disposal.\n */\nexport var useSetTimeout = function () {\n var timeoutIds = useConst({});\n // Cleanup function.\n React.useEffect(function () { return function () {\n for (var _i = 0, _a = Object.keys(timeoutIds); _i < _a.length; _i++) {\n var id = _a[_i];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n clearTimeout(id);\n }\n }; }, \n // useConst ensures this will never change, but react-hooks/exhaustive-deps doesn't know that\n [timeoutIds]);\n // Return wrapper which will auto cleanup.\n return useConst({\n setTimeout: function (func, duration) {\n var id = setTimeout(func, duration);\n timeoutIds[id] = 1;\n return id;\n },\n clearTimeout: function (id) {\n delete timeoutIds[id];\n clearTimeout(id);\n },\n });\n};\n//# sourceMappingURL=useSetTimeout.js.map","import { getDocument } from '@fluentui/utilities';\nimport * as React from 'react';\nimport { useWindow } from '@fluentui/react-window-provider';\n/**\n * Hook to calculate and cache the target element specified by the given target attribute,\n * as well as the target element's (or host element's) parent window\n * @param target- Target selector passed to the component as a property, describing the element that\n * the callout should target\n * @param hostElement- The callout's host element, used for determining the parent window.\n */\nexport function useTarget(target, hostElement) {\n var previousTargetProp = React.useRef();\n var targetRef = React.useRef(null);\n /**\n * Stores an instance of Window, used to check\n * for server side rendering and if focus was lost.\n */\n var targetWindow = useWindow();\n // If the target element changed, find the new one. If we are tracking\n // target with class name, always find element because we do not know if\n // fabric has rendered a new element and disposed the old element.\n if (!target || target !== previousTargetProp.current || typeof target === 'string') {\n var currentElement = hostElement === null || hostElement === void 0 ? void 0 : hostElement.current;\n if (target) {\n if (typeof target === 'string') {\n var currentDoc = getDocument(currentElement);\n targetRef.current = currentDoc ? currentDoc.querySelector(target) : null;\n }\n else if ('stopPropagation' in target) {\n targetRef.current = target;\n }\n else if ('getBoundingClientRect' in target) {\n targetRef.current = target;\n }\n else if ('current' in target) {\n targetRef.current = target.current;\n }\n else {\n targetRef.current = target;\n }\n }\n previousTargetProp.current = target;\n }\n return [targetRef, targetWindow];\n}\n//# sourceMappingURL=useTarget.js.map","import * as React from 'react';\n/**\n * Hook which synchronously executes a callback when the component is about to unmount.\n *\n * @param callback - Function to call during unmount.\n */\nexport var useUnmount = function (callback) {\n var unmountRef = React.useRef(callback);\n unmountRef.current = callback;\n React.useEffect(function () { return function () {\n var _a;\n (_a = unmountRef.current) === null || _a === void 0 ? void 0 : _a.call(unmountRef);\n }; }, []);\n};\n//# sourceMappingURL=useUnmount.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { warn, warnControlledUsage, warnConditionallyRequiredProps, warnDeprecations, warnMutuallyExclusive, } from '@fluentui/utilities/lib/warn';\nimport { usePrevious } from './usePrevious';\nimport { useConst } from './useConst';\nvar warningId = 0;\n/**\n * Only in development mode, display console warnings when certain conditions are met.\n * Note that all warnings except `controlledUsage` will only be shown on first render\n * (new `controlledUsage` warnings may be shown later due to prop changes).\n */\nexport function useWarnings(options) {\n if (process.env.NODE_ENV !== 'production') {\n var name_1 = options.name, props = options.props, _a = options.other, other = _a === void 0 ? [] : _a, conditionallyRequired = options.conditionallyRequired, deprecations = options.deprecations, mutuallyExclusive = options.mutuallyExclusive, controlledUsage = options.controlledUsage;\n /* eslint-disable react-hooks/rules-of-hooks -- build-time conditional */\n var hasWarnedRef = React.useRef(false);\n var componentId = useConst(function () { return \"useWarnings_\" + warningId++; });\n var oldProps = usePrevious(props);\n /* eslint-enable react-hooks/rules-of-hooks */\n // Warn synchronously (not in useEffect) on first render to make debugging easier.\n if (!hasWarnedRef.current) {\n hasWarnedRef.current = true;\n for (var _i = 0, other_1 = other; _i < other_1.length; _i++) {\n var warning = other_1[_i];\n warn(warning);\n }\n if (conditionallyRequired) {\n for (var _b = 0, conditionallyRequired_1 = conditionallyRequired; _b < conditionallyRequired_1.length; _b++) {\n var req = conditionallyRequired_1[_b];\n warnConditionallyRequiredProps(name_1, props, req.requiredProps, req.conditionalPropName, req.condition);\n }\n }\n deprecations && warnDeprecations(name_1, props, deprecations);\n mutuallyExclusive && warnMutuallyExclusive(name_1, props, mutuallyExclusive);\n }\n // Controlled usage warnings may be displayed on either first or subsequent renders due to\n // prop changes. Note that it's safe to run this synchronously (not in useEffect) even in\n // concurrent mode because `warnControlledUsage` internally tracks which warnings have been\n // displayed for each component instance (so nothing will be displayed twice).\n controlledUsage && warnControlledUsage(__assign(__assign({}, controlledUsage), { componentId: componentId, props: props, componentName: name_1, oldProps: oldProps }));\n }\n}\n//# sourceMappingURL=useWarnings.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Hook to store a value and generate callbacks for setting the value to true or false.\n * The identity of the callbacks will always stay the same.\n *\n * @param initialState - Initial value\n * @returns Array with the current value and an object containing the updater callbacks.\n */\nexport function useBoolean(initialState) {\n var _a = React.useState(initialState), value = _a[0], setValue = _a[1];\n var setTrue = useConst(function () { return function () {\n setValue(true);\n }; });\n var setFalse = useConst(function () { return function () {\n setValue(false);\n }; });\n var toggle = useConst(function () { return function () {\n setValue(function (currentValue) { return !currentValue; });\n }; });\n return [value, { setTrue: setTrue, setFalse: setFalse, toggle: toggle }];\n}\n//# sourceMappingURL=useBoolean.js.map","import * as React from 'react';\n/**\n * Hook to initialize and return a constant value. Unlike `React.useMemo`, this is guaranteed to\n * always return the same value (and if the initializer is a function, only call it once).\n * This is similar to setting a private member in a class constructor.\n *\n * If the value should ever change based on dependencies, use `React.useMemo` instead.\n *\n * @param initialValue - Initial value, or function to get the initial value. Similar to `useState`,\n * only the value/function passed in the first time this is called is respected.\n * @returns The value. The identity of this value will always be the same.\n */\nexport function useConst(initialValue) {\n // Use useRef to store the value because it's the least expensive built-in hook that works here\n // (we could also use `const [value] = React.useState(initialValue)` but that's more expensive\n // internally due to reducer handling which we don't need)\n var ref = React.useRef();\n if (ref.current === undefined) {\n // Box the value in an object so we can tell if it's initialized even if the initializer\n // returns/is undefined\n ref.current = {\n value: typeof initialValue === 'function' ? initialValue() : initialValue,\n };\n }\n return ref.current.value;\n}\n//# sourceMappingURL=useConst.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Hook to force update a function component by updating a dummy state.\n */\nexport function useForceUpdate() {\n var _a = React.useState(0), setValue = _a[1];\n var forceUpdate = useConst(function () { return function () { return setValue(function (value) { return ++value; }); }; });\n return forceUpdate;\n}\n//# sourceMappingURL=useForceUpdate.js.map","import * as React from 'react';\nimport { getId } from '@fluentui/utilities/lib/getId';\n/**\n * Hook to generate a unique ID in the global scope (spanning across duplicate copies of the same library).\n *\n * @param prefix - Optional prefix for the ID\n * @param providedId - Optional id provided by a parent component. Defaults to the provided value if present,\n * without conditioning the hook call\n * @returns The ID\n */\nexport function useId(prefix, providedId) {\n // getId should only be called once since it updates the global constant for the next ID value.\n // (While an extra update isn't likely to cause problems in practice, it's better to avoid it.)\n var ref = React.useRef(providedId);\n if (!ref.current) {\n ref.current = getId(prefix);\n }\n return ref.current;\n}\n//# sourceMappingURL=useId.js.map","import { useRef, useEffect } from 'react';\n/**\n * Hook keeping track of a given value from a previous execution of the component the Hook is used in.\n *\n * See [React Hooks FAQ](https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state)\n */\nexport function usePrevious(value) {\n var ref = useRef();\n useEffect(function () {\n ref.current = value;\n });\n return ref.current;\n}\n//# sourceMappingURL=usePrevious.js.map","import { Async } from '@fluentui/utilities';\nimport * as React from 'react';\n/**\n * Hook to provide an Async instance that is automatically cleaned up on dismount.\n */\nexport function useAsync() {\n var asyncRef = React.useRef();\n if (!asyncRef.current) {\n asyncRef.current = new Async();\n }\n React.useEffect(function () {\n return function () {\n var _a;\n (_a = asyncRef.current) === null || _a === void 0 ? void 0 : _a.dispose();\n asyncRef.current = undefined;\n };\n }, []);\n return asyncRef.current;\n}\n//# sourceMappingURL=useAsync.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Hook to store a value and generate callbacks for setting the value to true or false.\n * The identity of the callbacks will always stay the same.\n *\n * @param initialState - Initial value\n * @returns Array with the current value and an object containing the updater callbacks.\n */\nexport function useBoolean(initialState) {\n var _a = React.useState(initialState), value = _a[0], setValue = _a[1];\n var setTrue = useConst(function () { return function () {\n setValue(true);\n }; });\n var setFalse = useConst(function () { return function () {\n setValue(false);\n }; });\n var toggle = useConst(function () { return function () {\n setValue(function (currentValue) { return !currentValue; });\n }; });\n return [value, { setTrue: setTrue, setFalse: setFalse, toggle: toggle }];\n}\n//# sourceMappingURL=useBoolean.js.map","import * as React from 'react';\n/**\n * Hook to initialize and return a constant value. Unlike `React.useMemo`, this is guaranteed to\n * always return the same value (and if the initializer is a function, only call it once).\n * This is similar to setting a private member in a class constructor.\n *\n * If the value should ever change based on dependencies, use `React.useMemo` instead.\n *\n * @param initialValue - Initial value, or function to get the initial value. Similar to `useState`,\n * only the value/function passed in the first time this is called is respected.\n * @returns The value. The identity of this value will always be the same.\n */\nexport function useConst(initialValue) {\n // Use useRef to store the value because it's the least expensive built-in hook that works here\n // (we could also use `const [value] = React.useState(initialValue)` but that's more expensive\n // internally due to reducer handling which we don't need)\n var ref = React.useRef();\n if (ref.current === undefined) {\n // Box the value in an object so we can tell if it's initialized even if the initializer\n // returns/is undefined\n ref.current = {\n value: typeof initialValue === 'function' ? initialValue() : initialValue,\n };\n }\n return ref.current.value;\n}\n//# sourceMappingURL=useConst.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\nexport function useControllableValue(controlledValue, defaultUncontrolledValue, onChange) {\n var _a = React.useState(defaultUncontrolledValue), value = _a[0], setValue = _a[1];\n var isControlled = useConst(controlledValue !== undefined);\n var currentValue = isControlled ? controlledValue : value;\n // Duplicate the current value and onChange in refs so they're accessible from\n // setValueOrCallOnChange without creating a new callback every time\n var valueRef = React.useRef(currentValue);\n var onChangeRef = React.useRef(onChange);\n React.useEffect(function () {\n valueRef.current = currentValue;\n onChangeRef.current = onChange;\n });\n // To match the behavior of the setter returned by React.useState, this callback's identity\n // should never change. This means it MUST NOT directly reference variables that can change.\n var setValueOrCallOnChange = useConst(function () { return function (update, ev) {\n // Assuming here that TValue is not a function, because a controllable value will typically\n // be something a user can enter as input\n var newValue = typeof update === 'function' ? update(valueRef.current) : update;\n if (onChangeRef.current) {\n onChangeRef.current(ev, newValue);\n }\n if (!isControlled) {\n setValue(newValue);\n }\n }; });\n return [currentValue, setValueOrCallOnChange];\n}\n//# sourceMappingURL=useControllableValue.js.map","import * as React from 'react';\nimport { getId } from '@fluentui/utilities';\n/**\n * Hook to generate a unique ID in the global scope (spanning across duplicate copies of the same library).\n *\n * @param prefix - Optional prefix for the ID\n * @param providedId - Optional id provided by a parent component. Defaults to the provided value if present,\n * without conditioning the hook call\n * @returns The ID\n */\nexport function useId(prefix, providedId) {\n // getId should only be called once since it updates the global constant for the next ID value.\n // (While an extra update isn't likely to cause problems in practice, it's better to avoid it.)\n var ref = React.useRef(providedId);\n if (!ref.current) {\n ref.current = getId(prefix);\n }\n return ref.current;\n}\n//# sourceMappingURL=useId.js.map","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\n/**\n * React hook to merge multiple React refs (either MutableRefObjects or ref callbacks) into a single ref callback that\n * updates all provided refs\n * @param refs - Refs to collectively update with one ref value.\n * @returns A function with an attached \"current\" prop, so that it can be treated like a RefObject.\n */\nexport function useMergedRefs() {\n var refs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n refs[_i] = arguments[_i];\n }\n var mergedCallback = React.useCallback(function (value) {\n // Update the \"current\" prop hanging on the function.\n mergedCallback.current = value;\n for (var _i = 0, refs_1 = refs; _i < refs_1.length; _i++) {\n var ref = refs_1[_i];\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n // work around the immutability of the React.Ref type\n ref.current = value;\n }\n }\n }, __spreadArray([], refs, true));\n return mergedCallback;\n}\n//# sourceMappingURL=useMergedRefs.js.map","import { on } from '@fluentui/utilities';\nimport * as React from 'react';\n/**\n * Hook to attach an event handler on mount and handle cleanup.\n * @param element - Element (or ref to an element) to attach the event handler to\n * @param eventName - The event to attach a handler for\n * @param callback - The handler for the event\n * @param useCapture - Whether or not to attach the handler for the capture phase\n */\nexport function useOnEvent(element, eventName, callback, useCapture) {\n // Use a ref for the callback to prevent repeatedly attaching/unattaching callbacks that are unstable across renders\n var callbackRef = React.useRef(callback);\n callbackRef.current = callback;\n React.useEffect(function () {\n var actualElement = element && 'current' in element ? element.current : element;\n if (!actualElement || !actualElement.addEventListener) {\n return;\n }\n var dispose = on(actualElement, eventName, function (ev) { return callbackRef.current(ev); }, useCapture);\n return dispose;\n }, [element, eventName, useCapture]);\n}\n//# sourceMappingURL=useOnEvent.js.map","import { useRef, useEffect } from 'react';\n/**\n * Hook keeping track of a given value from a previous execution of the component the Hook is used in.\n *\n * See [React Hooks FAQ](https://reactjs.org/docs/hooks-faq.html#how-to-get-the-previous-props-or-state)\n */\nexport function usePrevious(value) {\n var ref = useRef();\n useEffect(function () {\n ref.current = value;\n });\n return ref.current;\n}\n//# sourceMappingURL=usePrevious.js.map","import * as React from 'react';\n/**\n * Creates a ref, and calls a callback whenever the ref changes to a non-null value. The callback can optionally return\n * a cleanup function that'll be called before the value changes, and when the ref is unmounted.\n *\n * This can be used to work around a limitation that useEffect cannot depend on `ref.current` (see\n * https://github.com/facebook/react/issues/14387#issuecomment-503616820).\n *\n * Usage example:\n * ```ts\n * const myRef = useRefEffect(element => {\n * ...\n * return () => { ... cleanup ... };\n * });\n * ```\n * ```jsx\n *
\n * ```\n *\n * @param callback - Called whenever the ref's value changes to non-null. Can optionally return a cleanup function.\n * @param initial - (Optional) The initial value for the ref.\n *\n * @returns A function that should be called to set the ref's value. The object also has a `.current` member that can be\n * used to access the ref's value (like a normal RefObject). It can be hooked up to an element's `ref` property.\n */\nexport function useRefEffect(callback, initial) {\n if (initial === void 0) { initial = null; }\n var createRefCallback = function () {\n var refCallback = function (value) {\n if (data.ref.current !== value) {\n if (data.cleanup) {\n data.cleanup();\n data.cleanup = undefined;\n }\n data.ref.current = value;\n if (value !== null) {\n data.cleanup = data.callback(value);\n }\n }\n };\n refCallback.current = initial;\n return refCallback;\n };\n var data = React.useRef({\n ref: createRefCallback(),\n callback: callback,\n }).current;\n data.callback = callback;\n return data.ref;\n}\n//# sourceMappingURL=useRefEffect.js.map","import * as React from 'react';\nimport { useConst } from './useConst';\n/**\n * Returns a wrapper function for `setTimeout` which automatically handles disposal.\n */\nexport var useSetTimeout = function () {\n var timeoutIds = useConst({});\n // Cleanup function.\n React.useEffect(function () { return function () {\n for (var _i = 0, _a = Object.keys(timeoutIds); _i < _a.length; _i++) {\n var id = _a[_i];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n clearTimeout(id);\n }\n }; }, \n // useConst ensures this will never change, but react-hooks/exhaustive-deps doesn't know that\n [timeoutIds]);\n // Return wrapper which will auto cleanup.\n return useConst({\n setTimeout: function (func, duration) {\n var id = setTimeout(func, duration);\n timeoutIds[id] = 1;\n return id;\n },\n clearTimeout: function (id) {\n delete timeoutIds[id];\n clearTimeout(id);\n },\n });\n};\n//# sourceMappingURL=useSetTimeout.js.map","import { getDocument } from '@fluentui/utilities';\nimport * as React from 'react';\nimport { useWindow } from '@fluentui/react-window-provider';\n/**\n * Hook to calculate and cache the target element specified by the given target attribute,\n * as well as the target element's (or host element's) parent window\n * @param target- Target selector passed to the component as a property, describing the element that\n * the callout should target\n * @param hostElement- The callout's host element, used for determining the parent window.\n */\nexport function useTarget(target, hostElement) {\n var _a, _b, _c;\n var previousTargetProp = React.useRef();\n var targetRef = React.useRef(null);\n /**\n * Stores an instance of Window, used to check\n * for server side rendering and if focus was lost.\n */\n var targetWindow = useWindow();\n // If the target element changed, find the new one. If we are tracking\n // target with class name, always find element because we do not know if\n // fabric has rendered a new element and disposed the old element.\n if (!target || target !== previousTargetProp.current || typeof target === 'string') {\n var currentElement = hostElement === null || hostElement === void 0 ? void 0 : hostElement.current;\n if (target) {\n if (typeof target === 'string') {\n // If element is part of shadow dom, then querySelector on shadow root, else query on document\n if ((_a = currentElement === null || currentElement === void 0 ? void 0 : currentElement.getRootNode()) === null || _a === void 0 ? void 0 : _a.host) {\n targetRef.current = (_c = (_b = currentElement === null || currentElement === void 0 ? void 0 : currentElement.getRootNode()) === null || _b === void 0 ? void 0 : _b.querySelector(target)) !== null && _c !== void 0 ? _c : null;\n }\n else {\n var currentDoc = getDocument(currentElement);\n targetRef.current = currentDoc ? currentDoc.querySelector(target) : null;\n }\n }\n else if ('stopPropagation' in target) {\n targetRef.current = target;\n }\n else if ('getBoundingClientRect' in target) {\n targetRef.current = target;\n }\n else if ('current' in target) {\n targetRef.current = target.current;\n }\n else {\n targetRef.current = target;\n }\n }\n previousTargetProp.current = target;\n }\n return [targetRef, targetWindow];\n}\n//# sourceMappingURL=useTarget.js.map","import * as React from 'react';\n/**\n * Hook which synchronously executes a callback when the component is about to unmount.\n *\n * @param callback - Function to call during unmount.\n */\nexport var useUnmount = function (callback) {\n var unmountRef = React.useRef(callback);\n unmountRef.current = callback;\n React.useEffect(function () { return function () {\n var _a;\n (_a = unmountRef.current) === null || _a === void 0 ? void 0 : _a.call(unmountRef);\n }; }, []);\n};\n//# sourceMappingURL=useUnmount.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { warn, warnControlledUsage, warnConditionallyRequiredProps, warnDeprecations, warnMutuallyExclusive, } from '@fluentui/utilities';\nimport { usePrevious } from './usePrevious';\nimport { useConst } from './useConst';\nvar warningId = 0;\n/**\n * Only in development mode, display console warnings when certain conditions are met.\n * Note that all warnings except `controlledUsage` will only be shown on first render\n * (new `controlledUsage` warnings may be shown later due to prop changes).\n */\nexport function useWarnings(options) {\n if (process.env.NODE_ENV !== 'production') {\n var name_1 = options.name, props = options.props, _a = options.other, other = _a === void 0 ? [] : _a, conditionallyRequired = options.conditionallyRequired, deprecations = options.deprecations, mutuallyExclusive = options.mutuallyExclusive, controlledUsage = options.controlledUsage;\n /* eslint-disable react-hooks/rules-of-hooks -- build-time conditional */\n var hasWarnedRef = React.useRef(false);\n var componentId = useConst(function () { return \"useWarnings_\".concat(warningId++); });\n var oldProps = usePrevious(props);\n /* eslint-enable react-hooks/rules-of-hooks */\n // Warn synchronously (not in useEffect) on first render to make debugging easier.\n if (!hasWarnedRef.current) {\n hasWarnedRef.current = true;\n for (var _i = 0, other_1 = other; _i < other_1.length; _i++) {\n var warning = other_1[_i];\n warn(warning);\n }\n if (conditionallyRequired) {\n for (var _b = 0, conditionallyRequired_1 = conditionallyRequired; _b < conditionallyRequired_1.length; _b++) {\n var req = conditionallyRequired_1[_b];\n warnConditionallyRequiredProps(name_1, props, req.requiredProps, req.conditionalPropName, req.condition);\n }\n }\n deprecations && warnDeprecations(name_1, props, deprecations);\n mutuallyExclusive && warnMutuallyExclusive(name_1, props, mutuallyExclusive);\n }\n // Controlled usage warnings may be displayed on either first or subsequent renders due to\n // prop changes. Note that it's safe to run this synchronously (not in useEffect) even in\n // concurrent mode because `warnControlledUsage` internally tracks which warnings have been\n // displayed for each component instance (so nothing will be displayed twice).\n controlledUsage && warnControlledUsage(__assign(__assign({}, controlledUsage), { componentId: componentId, props: props, componentName: name_1, oldProps: oldProps }));\n }\n}\n//# sourceMappingURL=useWarnings.js.map"],"names":["useAsync","async","useConst","Async","dispose","useConstCallback","callback","ref","current","useControllableValue","controlledValue","defaultUncontrolledValue","onChange","_a","value","setValue","isControlled","undefined","currentValue","valueRef","onChangeRef","setValueOrCallOnChange","update","ev","newValue","useMergedRefs","refs","_i","arguments","length","mergedCallback","refs_1","useMount","mountRef","call","useMountSync","useOnEvent","element","eventName","useCapture","callbackRef","actualElement","on","useRefEffect","initial","data","refCallback","cleanup","createRefCallback","useSetInterval","intervalIds","Object","keys","id","clearInterval","setInterval","func","duration","useSetTimeout","timeoutIds","clearTimeout","setTimeout","useTarget","target","hostElement","previousTargetProp","targetRef","targetWindow","currentElement","currentDoc","getDocument","querySelector","useUnmount","unmountRef","useWarnings","options","useBoolean","initialState","setTrue","setFalse","toggle","initialValue","useForceUpdate","useId","prefix","providedId","usePrevious","useRef","useEffect","asyncRef","addEventListener","_b","_c","getRootNode","host"],"sourceRoot":""}