@anoki/fse-ui 1.0.718 → 1.0.719

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/dist/components/ui/DeclarantsSelect/DeclarantsSelect.css +1 -1
  2. package/dist/index.cjs117.js +1 -1
  3. package/dist/index.cjs117.js.map +1 -1
  4. package/dist/index.cjs216.js +1 -1
  5. package/dist/index.cjs223.js +1 -1
  6. package/dist/index.cjs265.js +1 -1
  7. package/dist/index.cjs278.js +1 -1
  8. package/dist/index.cjs279.js +1 -1
  9. package/dist/index.cjs283.js +1 -1
  10. package/dist/index.cjs288.js +1 -1
  11. package/dist/index.cjs290.js +1 -1
  12. package/dist/index.cjs378.js +1 -1
  13. package/dist/index.cjs379.js +1 -1
  14. package/dist/index.cjs380.js +27 -1
  15. package/dist/index.cjs380.js.map +1 -1
  16. package/dist/index.cjs381.js +1 -2
  17. package/dist/index.cjs381.js.map +1 -1
  18. package/dist/index.cjs382.js +1 -27
  19. package/dist/index.cjs382.js.map +1 -1
  20. package/dist/index.cjs383.js +1 -1
  21. package/dist/index.cjs383.js.map +1 -1
  22. package/dist/index.cjs384.js +2 -1
  23. package/dist/index.cjs384.js.map +1 -1
  24. package/dist/index.cjs388.js +1 -1
  25. package/dist/index.cjs390.js +1 -1
  26. package/dist/index.cjs391.js +1 -1
  27. package/dist/index.cjs397.js +1 -1
  28. package/dist/index.cjs398.js +1 -1
  29. package/dist/{index.cjs400.js → index.cjs402.js} +1 -1
  30. package/dist/index.cjs402.js.map +1 -0
  31. package/dist/{index.cjs401.js → index.cjs403.js} +1 -1
  32. package/dist/index.cjs403.js.map +1 -0
  33. package/dist/index.cjs404.js +1 -1
  34. package/dist/index.cjs405.js +1 -1
  35. package/dist/index.cjs406.js +1 -1
  36. package/dist/{index.cjs399.js → index.cjs414.js} +1 -1
  37. package/dist/{index.cjs399.js.map → index.cjs414.js.map} +1 -1
  38. package/dist/index.cjs420.js +1 -1
  39. package/dist/index.cjs420.js.map +1 -1
  40. package/dist/index.cjs421.js +1 -1
  41. package/dist/index.cjs421.js.map +1 -1
  42. package/dist/index.cjs422.js +1 -1
  43. package/dist/index.cjs422.js.map +1 -1
  44. package/dist/index.cjs423.js +2 -0
  45. package/dist/index.cjs423.js.map +1 -0
  46. package/dist/index.cjs424.js +2 -0
  47. package/dist/index.cjs424.js.map +1 -0
  48. package/dist/index.cjs425.js +2 -0
  49. package/dist/index.cjs425.js.map +1 -0
  50. package/dist/index.cjs430.js +1 -1
  51. package/dist/index.cjs461.js +1 -1
  52. package/dist/index.cjs468.js +1 -1
  53. package/dist/index.cjs483.js +1 -1
  54. package/dist/index.es117.js +23 -23
  55. package/dist/index.es117.js.map +1 -1
  56. package/dist/index.es216.js +1 -1
  57. package/dist/index.es223.js +2 -2
  58. package/dist/index.es265.js +1 -1
  59. package/dist/index.es278.js +1 -1
  60. package/dist/index.es279.js +1 -1
  61. package/dist/index.es283.js +1 -1
  62. package/dist/index.es288.js +1 -1
  63. package/dist/index.es290.js +1 -1
  64. package/dist/index.es378.js +1 -1
  65. package/dist/index.es379.js +1 -1
  66. package/dist/index.es380.js +3674 -5
  67. package/dist/index.es380.js.map +1 -1
  68. package/dist/index.es381.js +5 -520
  69. package/dist/index.es381.js.map +1 -1
  70. package/dist/index.es382.js +2 -3675
  71. package/dist/index.es382.js.map +1 -1
  72. package/dist/index.es383.js +5 -5
  73. package/dist/index.es383.js.map +1 -1
  74. package/dist/index.es384.js +521 -2
  75. package/dist/index.es384.js.map +1 -1
  76. package/dist/index.es388.js +1 -1
  77. package/dist/index.es390.js +5 -5
  78. package/dist/index.es391.js +1 -1
  79. package/dist/index.es397.js +1 -1
  80. package/dist/index.es398.js +1 -1
  81. package/dist/{index.es400.js → index.es402.js} +1 -1
  82. package/dist/index.es402.js.map +1 -0
  83. package/dist/{index.es401.js → index.es403.js} +1 -1
  84. package/dist/index.es403.js.map +1 -0
  85. package/dist/index.es404.js +1 -1
  86. package/dist/index.es405.js +1 -1
  87. package/dist/index.es406.js +1 -1
  88. package/dist/{index.es399.js → index.es414.js} +1 -1
  89. package/dist/{index.es399.js.map → index.es414.js.map} +1 -1
  90. package/dist/index.es420.js +10 -217
  91. package/dist/index.es420.js.map +1 -1
  92. package/dist/index.es421.js +41 -173
  93. package/dist/index.es421.js.map +1 -1
  94. package/dist/index.es422.js +7 -3
  95. package/dist/index.es422.js.map +1 -1
  96. package/dist/index.es423.js +221 -0
  97. package/dist/index.es423.js.map +1 -0
  98. package/dist/index.es424.js +181 -0
  99. package/dist/index.es424.js.map +1 -0
  100. package/dist/index.es425.js +7 -0
  101. package/dist/index.es425.js.map +1 -0
  102. package/dist/index.es430.js +1 -1
  103. package/dist/index.es461.js +1 -1
  104. package/dist/index.es468.js +3 -3
  105. package/dist/index.es483.js +1 -1
  106. package/package.json +1 -1
  107. package/dist/index.cjs400.js.map +0 -1
  108. package/dist/index.cjs401.js.map +0 -1
  109. package/dist/index.cjs417.js +0 -2
  110. package/dist/index.cjs417.js.map +0 -1
  111. package/dist/index.cjs418.js +0 -2
  112. package/dist/index.cjs418.js.map +0 -1
  113. package/dist/index.cjs419.js +0 -2
  114. package/dist/index.cjs419.js.map +0 -1
  115. package/dist/index.es400.js.map +0 -1
  116. package/dist/index.es401.js.map +0 -1
  117. package/dist/index.es417.js +0 -14
  118. package/dist/index.es417.js.map +0 -1
  119. package/dist/index.es418.js +0 -49
  120. package/dist/index.es418.js.map +0 -1
  121. package/dist/index.es419.js +0 -11
  122. package/dist/index.es419.js.map +0 -1
  123. /package/dist/components/ui/{DoctorConfirmModal/DoctorConfirmModalContent/DoctorConfirmModalContent.css → ConsentModal/ConsentModalContent/ConsentModalContent.css} +0 -0
  124. /package/dist/components/ui/{DoctorModal/DoctorModalFooter/DoctorModalFooter.css → ConsentModal/ConsentModalFooter/ConsentModalFooter.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs399.js","sources":["../node_modules/usehooks-ts/dist/index.js"],"sourcesContent":["import { useState, useCallback, useLayoutEffect, useEffect, useRef, useMemo } from 'react';\nimport debounce from 'lodash.debounce';\n\n// src/useBoolean/useBoolean.ts\nfunction useBoolean(defaultValue = false) {\n if (typeof defaultValue !== \"boolean\") {\n throw new Error(\"defaultValue must be `true` or `false`\");\n }\n const [value, setValue] = useState(defaultValue);\n const setTrue = useCallback(() => {\n setValue(true);\n }, []);\n const setFalse = useCallback(() => {\n setValue(false);\n }, []);\n const toggle = useCallback(() => {\n setValue((x) => !x);\n }, []);\n return { value, setValue, setTrue, setFalse, toggle };\n}\nvar useIsomorphicLayoutEffect = typeof window !== \"undefined\" ? useLayoutEffect : useEffect;\n\n// src/useEventListener/useEventListener.ts\nfunction useEventListener(eventName, handler, element, options) {\n const savedHandler = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n savedHandler.current = handler;\n }, [handler]);\n useEffect(() => {\n const targetElement = (element == null ? void 0 : element.current) ?? window;\n if (!(targetElement && targetElement.addEventListener))\n return;\n const listener = (event) => {\n savedHandler.current(event);\n };\n targetElement.addEventListener(eventName, listener, options);\n return () => {\n targetElement.removeEventListener(eventName, listener, options);\n };\n }, [eventName, element, options]);\n}\n\n// src/useClickAnyWhere/useClickAnyWhere.ts\nfunction useClickAnyWhere(handler) {\n useEventListener(\"click\", (event) => {\n handler(event);\n });\n}\nfunction useCopyToClipboard() {\n const [copiedText, setCopiedText] = useState(null);\n const copy = useCallback(async (text) => {\n if (!(navigator == null ? void 0 : navigator.clipboard)) {\n console.warn(\"Clipboard not supported\");\n return false;\n }\n try {\n await navigator.clipboard.writeText(text);\n setCopiedText(text);\n return true;\n } catch (error) {\n console.warn(\"Copy failed\", error);\n setCopiedText(null);\n return false;\n }\n }, []);\n return [copiedText, copy];\n}\nfunction useCounter(initialValue) {\n const [count, setCount] = useState(initialValue ?? 0);\n const increment = useCallback(() => {\n setCount((x) => x + 1);\n }, []);\n const decrement = useCallback(() => {\n setCount((x) => x - 1);\n }, []);\n const reset = useCallback(() => {\n setCount(initialValue ?? 0);\n }, [initialValue]);\n return {\n count,\n increment,\n decrement,\n reset,\n setCount\n };\n}\nfunction useInterval(callback, delay) {\n const savedCallback = useRef(callback);\n useIsomorphicLayoutEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n useEffect(() => {\n if (delay === null) {\n return;\n }\n const id = setInterval(() => {\n savedCallback.current();\n }, delay);\n return () => {\n clearInterval(id);\n };\n }, [delay]);\n}\n\n// src/useCountdown/useCountdown.ts\nfunction useCountdown({\n countStart,\n countStop = 0,\n intervalMs = 1e3,\n isIncrement = false\n}) {\n const {\n count,\n increment,\n decrement,\n reset: resetCounter\n } = useCounter(countStart);\n const {\n value: isCountdownRunning,\n setTrue: startCountdown,\n setFalse: stopCountdown\n } = useBoolean(false);\n const resetCountdown = useCallback(() => {\n stopCountdown();\n resetCounter();\n }, [stopCountdown, resetCounter]);\n const countdownCallback = useCallback(() => {\n if (count === countStop) {\n stopCountdown();\n return;\n }\n if (isIncrement) {\n increment();\n } else {\n decrement();\n }\n }, [count, countStop, decrement, increment, isIncrement, stopCountdown]);\n useInterval(countdownCallback, isCountdownRunning ? intervalMs : null);\n return [count, { startCountdown, stopCountdown, resetCountdown }];\n}\nfunction useEventCallback(fn) {\n const ref = useRef(() => {\n throw new Error(\"Cannot call an event handler while rendering.\");\n });\n useIsomorphicLayoutEffect(() => {\n ref.current = fn;\n }, [fn]);\n return useCallback((...args) => {\n var _a;\n return (_a = ref.current) == null ? void 0 : _a.call(ref, ...args);\n }, [ref]);\n}\n\n// src/useLocalStorage/useLocalStorage.ts\nvar IS_SERVER = typeof window === \"undefined\";\nfunction useLocalStorage(key, initialValue, options = {}) {\n const { initializeWithValue = true } = options;\n const serializer = useCallback(\n (value) => {\n if (options.serializer) {\n return options.serializer(value);\n }\n return JSON.stringify(value);\n },\n [options]\n );\n const deserializer = useCallback(\n (value) => {\n if (options.deserializer) {\n return options.deserializer(value);\n }\n if (value === \"undefined\") {\n return void 0;\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n let parsed;\n try {\n parsed = JSON.parse(value);\n } catch (error) {\n console.error(\"Error parsing JSON:\", error);\n return defaultValue;\n }\n return parsed;\n },\n [options, initialValue]\n );\n const readValue = useCallback(() => {\n const initialValueToUse = initialValue instanceof Function ? initialValue() : initialValue;\n if (IS_SERVER) {\n return initialValueToUse;\n }\n try {\n const raw = window.localStorage.getItem(key);\n return raw ? deserializer(raw) : initialValueToUse;\n } catch (error) {\n console.warn(`Error reading localStorage key \\u201C${key}\\u201D:`, error);\n return initialValueToUse;\n }\n }, [initialValue, key, deserializer]);\n const [storedValue, setStoredValue] = useState(() => {\n if (initializeWithValue) {\n return readValue();\n }\n return initialValue instanceof Function ? initialValue() : initialValue;\n });\n const setValue = useEventCallback((value) => {\n if (IS_SERVER) {\n console.warn(\n `Tried setting localStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n try {\n const newValue = value instanceof Function ? value(readValue()) : value;\n window.localStorage.setItem(key, serializer(newValue));\n setStoredValue(newValue);\n window.dispatchEvent(new StorageEvent(\"local-storage\", { key }));\n } catch (error) {\n console.warn(`Error setting localStorage key \\u201C${key}\\u201D:`, error);\n }\n });\n const removeValue = useEventCallback(() => {\n if (IS_SERVER) {\n console.warn(\n `Tried removing localStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n window.localStorage.removeItem(key);\n setStoredValue(defaultValue);\n window.dispatchEvent(new StorageEvent(\"local-storage\", { key }));\n });\n useEffect(() => {\n setStoredValue(readValue());\n }, [key]);\n const handleStorageChange = useCallback(\n (event) => {\n if (event.key && event.key !== key) {\n return;\n }\n setStoredValue(readValue());\n },\n [key, readValue]\n );\n useEventListener(\"storage\", handleStorageChange);\n useEventListener(\"local-storage\", handleStorageChange);\n return [storedValue, setValue, removeValue];\n}\nvar IS_SERVER2 = typeof window === \"undefined\";\nfunction useMediaQuery(query, {\n defaultValue = false,\n initializeWithValue = true\n} = {}) {\n const getMatches = (query2) => {\n if (IS_SERVER2) {\n return defaultValue;\n }\n return window.matchMedia(query2).matches;\n };\n const [matches, setMatches] = useState(() => {\n if (initializeWithValue) {\n return getMatches(query);\n }\n return defaultValue;\n });\n function handleChange() {\n setMatches(getMatches(query));\n }\n useIsomorphicLayoutEffect(() => {\n const matchMedia = window.matchMedia(query);\n handleChange();\n if (matchMedia.addListener) {\n matchMedia.addListener(handleChange);\n } else {\n matchMedia.addEventListener(\"change\", handleChange);\n }\n return () => {\n if (matchMedia.removeListener) {\n matchMedia.removeListener(handleChange);\n } else {\n matchMedia.removeEventListener(\"change\", handleChange);\n }\n };\n }, [query]);\n return matches;\n}\n\n// src/useDarkMode/useDarkMode.ts\nvar COLOR_SCHEME_QUERY = \"(prefers-color-scheme: dark)\";\nvar LOCAL_STORAGE_KEY = \"usehooks-ts-dark-mode\";\nfunction useDarkMode(options = {}) {\n const {\n defaultValue,\n localStorageKey = LOCAL_STORAGE_KEY,\n initializeWithValue = true\n } = options;\n const isDarkOS = useMediaQuery(COLOR_SCHEME_QUERY, {\n initializeWithValue,\n defaultValue\n });\n const [isDarkMode, setDarkMode] = useLocalStorage(\n localStorageKey,\n defaultValue ?? isDarkOS ?? false,\n { initializeWithValue }\n );\n useIsomorphicLayoutEffect(() => {\n if (isDarkOS !== isDarkMode) {\n setDarkMode(isDarkOS);\n }\n }, [isDarkOS]);\n return {\n isDarkMode,\n toggle: () => {\n setDarkMode((prev) => !prev);\n },\n enable: () => {\n setDarkMode(true);\n },\n disable: () => {\n setDarkMode(false);\n },\n set: (value) => {\n setDarkMode(value);\n }\n };\n}\nfunction useUnmount(func) {\n const funcRef = useRef(func);\n funcRef.current = func;\n useEffect(\n () => () => {\n funcRef.current();\n },\n []\n );\n}\n\n// src/useDebounceCallback/useDebounceCallback.ts\nfunction useDebounceCallback(func, delay = 500, options) {\n const debouncedFunc = useRef();\n useUnmount(() => {\n if (debouncedFunc.current) {\n debouncedFunc.current.cancel();\n }\n });\n const debounced = useMemo(() => {\n const debouncedFuncInstance = debounce(func, delay, options);\n const wrappedFunc = (...args) => {\n return debouncedFuncInstance(...args);\n };\n wrappedFunc.cancel = () => {\n debouncedFuncInstance.cancel();\n };\n wrappedFunc.isPending = () => {\n return !!debouncedFunc.current;\n };\n wrappedFunc.flush = () => {\n return debouncedFuncInstance.flush();\n };\n return wrappedFunc;\n }, [func, delay, options]);\n useEffect(() => {\n debouncedFunc.current = debounce(func, delay, options);\n }, [func, delay, options]);\n return debounced;\n}\nfunction useDebounceValue(initialValue, delay, options) {\n const eq = (options == null ? void 0 : options.equalityFn) ?? ((left, right) => left === right);\n const unwrappedInitialValue = initialValue instanceof Function ? initialValue() : initialValue;\n const [debouncedValue, setDebouncedValue] = useState(unwrappedInitialValue);\n const previousValueRef = useRef(unwrappedInitialValue);\n const updateDebouncedValue = useDebounceCallback(\n setDebouncedValue,\n delay,\n options\n );\n if (!eq(previousValueRef.current, unwrappedInitialValue)) {\n updateDebouncedValue(unwrappedInitialValue);\n previousValueRef.current = unwrappedInitialValue;\n }\n return [debouncedValue, updateDebouncedValue];\n}\nfunction useDocumentTitle(title, options = {}) {\n const { preserveTitleOnUnmount = true } = options;\n const defaultTitle = useRef(null);\n useIsomorphicLayoutEffect(() => {\n defaultTitle.current = window.document.title;\n }, []);\n useIsomorphicLayoutEffect(() => {\n window.document.title = title;\n }, [title]);\n useUnmount(() => {\n if (!preserveTitleOnUnmount && defaultTitle.current) {\n window.document.title = defaultTitle.current;\n }\n });\n}\nfunction useHover(elementRef) {\n const [value, setValue] = useState(false);\n const handleMouseEnter = () => {\n setValue(true);\n };\n const handleMouseLeave = () => {\n setValue(false);\n };\n useEventListener(\"mouseenter\", handleMouseEnter, elementRef);\n useEventListener(\"mouseleave\", handleMouseLeave, elementRef);\n return value;\n}\nfunction useIntersectionObserver({\n threshold = 0,\n root = null,\n rootMargin = \"0%\",\n freezeOnceVisible = false,\n initialIsIntersecting = false,\n onChange\n} = {}) {\n var _a;\n const [ref, setRef] = useState(null);\n const [state, setState] = useState(() => ({\n isIntersecting: initialIsIntersecting,\n entry: void 0\n }));\n const callbackRef = useRef();\n callbackRef.current = onChange;\n const frozen = ((_a = state.entry) == null ? void 0 : _a.isIntersecting) && freezeOnceVisible;\n useEffect(() => {\n if (!ref)\n return;\n if (!(\"IntersectionObserver\" in window))\n return;\n if (frozen)\n return;\n let unobserve;\n const observer = new IntersectionObserver(\n (entries) => {\n const thresholds = Array.isArray(observer.thresholds) ? observer.thresholds : [observer.thresholds];\n entries.forEach((entry) => {\n const isIntersecting = entry.isIntersecting && thresholds.some((threshold2) => entry.intersectionRatio >= threshold2);\n setState({ isIntersecting, entry });\n if (callbackRef.current) {\n callbackRef.current(isIntersecting, entry);\n }\n if (isIntersecting && freezeOnceVisible && unobserve) {\n unobserve();\n unobserve = void 0;\n }\n });\n },\n { threshold, root, rootMargin }\n );\n observer.observe(ref);\n return () => {\n observer.disconnect();\n };\n }, [\n ref,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n JSON.stringify(threshold),\n root,\n rootMargin,\n frozen,\n freezeOnceVisible\n ]);\n const prevRef = useRef(null);\n useEffect(() => {\n var _a2;\n if (!ref && ((_a2 = state.entry) == null ? void 0 : _a2.target) && !freezeOnceVisible && !frozen && prevRef.current !== state.entry.target) {\n prevRef.current = state.entry.target;\n setState({ isIntersecting: initialIsIntersecting, entry: void 0 });\n }\n }, [ref, state.entry, freezeOnceVisible, frozen, initialIsIntersecting]);\n const result = [\n setRef,\n !!state.isIntersecting,\n state.entry\n ];\n result.ref = result[0];\n result.isIntersecting = result[1];\n result.entry = result[2];\n return result;\n}\nfunction useIsClient() {\n const [isClient, setClient] = useState(false);\n useEffect(() => {\n setClient(true);\n }, []);\n return isClient;\n}\nfunction useIsMounted() {\n const isMounted = useRef(false);\n useEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return useCallback(() => isMounted.current, []);\n}\nfunction useMap(initialState = /* @__PURE__ */ new Map()) {\n const [map, setMap] = useState(new Map(initialState));\n const actions = {\n set: useCallback((key, value) => {\n setMap((prev) => {\n const copy = new Map(prev);\n copy.set(key, value);\n return copy;\n });\n }, []),\n setAll: useCallback((entries) => {\n setMap(() => new Map(entries));\n }, []),\n remove: useCallback((key) => {\n setMap((prev) => {\n const copy = new Map(prev);\n copy.delete(key);\n return copy;\n });\n }, []),\n reset: useCallback(() => {\n setMap(() => /* @__PURE__ */ new Map());\n }, [])\n };\n return [map, actions];\n}\n\n// src/useOnClickOutside/useOnClickOutside.ts\nfunction useOnClickOutside(ref, handler, eventType = \"mousedown\", eventListenerOptions = {}) {\n useEventListener(\n eventType,\n (event) => {\n const target = event.target;\n if (!target || !target.isConnected) {\n return;\n }\n const isOutside = Array.isArray(ref) ? ref.filter((r) => Boolean(r.current)).every((r) => r.current && !r.current.contains(target)) : ref.current && !ref.current.contains(target);\n if (isOutside) {\n handler(event);\n }\n },\n void 0,\n eventListenerOptions\n );\n}\nvar IS_SERVER3 = typeof window === \"undefined\";\nfunction useReadLocalStorage(key, options = {}) {\n let { initializeWithValue = true } = options;\n if (IS_SERVER3) {\n initializeWithValue = false;\n }\n const deserializer = useCallback(\n (value) => {\n if (options.deserializer) {\n return options.deserializer(value);\n }\n if (value === \"undefined\") {\n return void 0;\n }\n let parsed;\n try {\n parsed = JSON.parse(value);\n } catch (error) {\n console.error(\"Error parsing JSON:\", error);\n return null;\n }\n return parsed;\n },\n [options]\n );\n const readValue = useCallback(() => {\n if (IS_SERVER3) {\n return null;\n }\n try {\n const raw = window.localStorage.getItem(key);\n return raw ? deserializer(raw) : null;\n } catch (error) {\n console.warn(`Error reading localStorage key \\u201C${key}\\u201D:`, error);\n return null;\n }\n }, [key, deserializer]);\n const [storedValue, setStoredValue] = useState(() => {\n if (initializeWithValue) {\n return readValue();\n }\n return void 0;\n });\n useEffect(() => {\n setStoredValue(readValue());\n }, [key]);\n const handleStorageChange = useCallback(\n (event) => {\n if (event.key && event.key !== key) {\n return;\n }\n setStoredValue(readValue());\n },\n [key, readValue]\n );\n useEventListener(\"storage\", handleStorageChange);\n useEventListener(\"local-storage\", handleStorageChange);\n return storedValue;\n}\nvar initialSize = {\n width: void 0,\n height: void 0\n};\nfunction useResizeObserver(options) {\n const { ref, box = \"content-box\" } = options;\n const [{ width, height }, setSize] = useState(initialSize);\n const isMounted = useIsMounted();\n const previousSize = useRef({ ...initialSize });\n const onResize = useRef(void 0);\n onResize.current = options.onResize;\n useEffect(() => {\n if (!ref.current)\n return;\n if (typeof window === \"undefined\" || !(\"ResizeObserver\" in window))\n return;\n const observer = new ResizeObserver(([entry]) => {\n const boxProp = box === \"border-box\" ? \"borderBoxSize\" : box === \"device-pixel-content-box\" ? \"devicePixelContentBoxSize\" : \"contentBoxSize\";\n const newWidth = extractSize(entry, boxProp, \"inlineSize\");\n const newHeight = extractSize(entry, boxProp, \"blockSize\");\n const hasChanged = previousSize.current.width !== newWidth || previousSize.current.height !== newHeight;\n if (hasChanged) {\n const newSize = { width: newWidth, height: newHeight };\n previousSize.current.width = newWidth;\n previousSize.current.height = newHeight;\n if (onResize.current) {\n onResize.current(newSize);\n } else {\n if (isMounted()) {\n setSize(newSize);\n }\n }\n }\n });\n observer.observe(ref.current, { box });\n return () => {\n observer.disconnect();\n };\n }, [box, ref, isMounted]);\n return { width, height };\n}\nfunction extractSize(entry, box, sizeType) {\n if (!entry[box]) {\n if (box === \"contentBoxSize\") {\n return entry.contentRect[sizeType === \"inlineSize\" ? \"width\" : \"height\"];\n }\n return void 0;\n }\n return Array.isArray(entry[box]) ? entry[box][0][sizeType] : (\n // @ts-ignore Support Firefox's non-standard behavior\n entry[box][sizeType]\n );\n}\nvar IS_SERVER4 = typeof window === \"undefined\";\nfunction useScreen(options = {}) {\n let { initializeWithValue = true } = options;\n if (IS_SERVER4) {\n initializeWithValue = false;\n }\n const readScreen = () => {\n if (IS_SERVER4) {\n return void 0;\n }\n return window.screen;\n };\n const [screen, setScreen] = useState(() => {\n if (initializeWithValue) {\n return readScreen();\n }\n return void 0;\n });\n const debouncedSetScreen = useDebounceCallback(\n setScreen,\n options.debounceDelay\n );\n function handleSize() {\n const newScreen = readScreen();\n const setSize = options.debounceDelay ? debouncedSetScreen : setScreen;\n if (newScreen) {\n const {\n width,\n height,\n availHeight,\n availWidth,\n colorDepth,\n orientation,\n pixelDepth\n } = newScreen;\n setSize({\n width,\n height,\n availHeight,\n availWidth,\n colorDepth,\n orientation,\n pixelDepth\n });\n }\n }\n useEventListener(\"resize\", handleSize);\n useIsomorphicLayoutEffect(() => {\n handleSize();\n }, []);\n return screen;\n}\nvar cachedScriptStatuses = /* @__PURE__ */ new Map();\nfunction getScriptNode(src) {\n const node = document.querySelector(\n `script[src=\"${src}\"]`\n );\n const status = node == null ? void 0 : node.getAttribute(\"data-status\");\n return {\n node,\n status\n };\n}\nfunction useScript(src, options) {\n const [status, setStatus] = useState(() => {\n if (!src || (options == null ? void 0 : options.shouldPreventLoad)) {\n return \"idle\";\n }\n if (typeof window === \"undefined\") {\n return \"loading\";\n }\n return cachedScriptStatuses.get(src) ?? \"loading\";\n });\n useEffect(() => {\n if (!src || (options == null ? void 0 : options.shouldPreventLoad)) {\n return;\n }\n const cachedScriptStatus = cachedScriptStatuses.get(src);\n if (cachedScriptStatus === \"ready\" || cachedScriptStatus === \"error\") {\n setStatus(cachedScriptStatus);\n return;\n }\n const script = getScriptNode(src);\n let scriptNode = script.node;\n if (!scriptNode) {\n scriptNode = document.createElement(\"script\");\n scriptNode.src = src;\n scriptNode.async = true;\n if (options == null ? void 0 : options.id) {\n scriptNode.id = options.id;\n }\n scriptNode.setAttribute(\"data-status\", \"loading\");\n document.body.appendChild(scriptNode);\n const setAttributeFromEvent = (event) => {\n const scriptStatus = event.type === \"load\" ? \"ready\" : \"error\";\n scriptNode == null ? void 0 : scriptNode.setAttribute(\"data-status\", scriptStatus);\n };\n scriptNode.addEventListener(\"load\", setAttributeFromEvent);\n scriptNode.addEventListener(\"error\", setAttributeFromEvent);\n } else {\n setStatus(script.status ?? cachedScriptStatus ?? \"loading\");\n }\n const setStateFromEvent = (event) => {\n const newStatus = event.type === \"load\" ? \"ready\" : \"error\";\n setStatus(newStatus);\n cachedScriptStatuses.set(src, newStatus);\n };\n scriptNode.addEventListener(\"load\", setStateFromEvent);\n scriptNode.addEventListener(\"error\", setStateFromEvent);\n return () => {\n if (scriptNode) {\n scriptNode.removeEventListener(\"load\", setStateFromEvent);\n scriptNode.removeEventListener(\"error\", setStateFromEvent);\n }\n if (scriptNode && (options == null ? void 0 : options.removeOnUnmount)) {\n scriptNode.remove();\n cachedScriptStatuses.delete(src);\n }\n };\n }, [src, options == null ? void 0 : options.shouldPreventLoad, options == null ? void 0 : options.removeOnUnmount, options == null ? void 0 : options.id]);\n return status;\n}\nvar IS_SERVER5 = typeof window === \"undefined\";\nfunction useScrollLock(options = {}) {\n const { autoLock = true, lockTarget, widthReflow = true } = options;\n const [isLocked, setIsLocked] = useState(false);\n const target = useRef(null);\n const originalStyle = useRef(null);\n const lock = () => {\n if (target.current) {\n const { overflow, paddingRight } = target.current.style;\n originalStyle.current = { overflow, paddingRight };\n if (widthReflow) {\n const offsetWidth = target.current === document.body ? window.innerWidth : target.current.offsetWidth;\n const currentPaddingRight = parseInt(window.getComputedStyle(target.current).paddingRight, 10) || 0;\n const scrollbarWidth = offsetWidth - target.current.scrollWidth;\n target.current.style.paddingRight = `${scrollbarWidth + currentPaddingRight}px`;\n }\n target.current.style.overflow = \"hidden\";\n setIsLocked(true);\n }\n };\n const unlock = () => {\n if (target.current && originalStyle.current) {\n target.current.style.overflow = originalStyle.current.overflow;\n if (widthReflow) {\n target.current.style.paddingRight = originalStyle.current.paddingRight;\n }\n }\n setIsLocked(false);\n };\n useIsomorphicLayoutEffect(() => {\n if (IS_SERVER5)\n return;\n if (lockTarget) {\n target.current = typeof lockTarget === \"string\" ? document.querySelector(lockTarget) : lockTarget;\n }\n if (!target.current) {\n target.current = document.body;\n }\n if (autoLock) {\n lock();\n }\n return () => {\n unlock();\n };\n }, [autoLock, lockTarget, widthReflow]);\n return { isLocked, lock, unlock };\n}\nvar IS_SERVER6 = typeof window === \"undefined\";\nfunction useSessionStorage(key, initialValue, options = {}) {\n const { initializeWithValue = true } = options;\n const serializer = useCallback(\n (value) => {\n if (options.serializer) {\n return options.serializer(value);\n }\n return JSON.stringify(value);\n },\n [options]\n );\n const deserializer = useCallback(\n (value) => {\n if (options.deserializer) {\n return options.deserializer(value);\n }\n if (value === \"undefined\") {\n return void 0;\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n let parsed;\n try {\n parsed = JSON.parse(value);\n } catch (error) {\n console.error(\"Error parsing JSON:\", error);\n return defaultValue;\n }\n return parsed;\n },\n [options, initialValue]\n );\n const readValue = useCallback(() => {\n const initialValueToUse = initialValue instanceof Function ? initialValue() : initialValue;\n if (IS_SERVER6) {\n return initialValueToUse;\n }\n try {\n const raw = window.sessionStorage.getItem(key);\n return raw ? deserializer(raw) : initialValueToUse;\n } catch (error) {\n console.warn(`Error reading sessionStorage key \\u201C${key}\\u201D:`, error);\n return initialValueToUse;\n }\n }, [initialValue, key, deserializer]);\n const [storedValue, setStoredValue] = useState(() => {\n if (initializeWithValue) {\n return readValue();\n }\n return initialValue instanceof Function ? initialValue() : initialValue;\n });\n const setValue = useEventCallback((value) => {\n if (IS_SERVER6) {\n console.warn(\n `Tried setting sessionStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n try {\n const newValue = value instanceof Function ? value(readValue()) : value;\n window.sessionStorage.setItem(key, serializer(newValue));\n setStoredValue(newValue);\n window.dispatchEvent(new StorageEvent(\"session-storage\", { key }));\n } catch (error) {\n console.warn(`Error setting sessionStorage key \\u201C${key}\\u201D:`, error);\n }\n });\n const removeValue = useEventCallback(() => {\n if (IS_SERVER6) {\n console.warn(\n `Tried removing sessionStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n window.sessionStorage.removeItem(key);\n setStoredValue(defaultValue);\n window.dispatchEvent(new StorageEvent(\"session-storage\", { key }));\n });\n useEffect(() => {\n setStoredValue(readValue());\n }, [key]);\n const handleStorageChange = useCallback(\n (event) => {\n if (event.key && event.key !== key) {\n return;\n }\n setStoredValue(readValue());\n },\n [key, readValue]\n );\n useEventListener(\"storage\", handleStorageChange);\n useEventListener(\"session-storage\", handleStorageChange);\n return [storedValue, setValue, removeValue];\n}\nfunction useStep(maxStep) {\n const [currentStep, setCurrentStep] = useState(1);\n const canGoToNextStep = currentStep + 1 <= maxStep;\n const canGoToPrevStep = currentStep - 1 > 0;\n const setStep = useCallback(\n (step) => {\n const newStep = step instanceof Function ? step(currentStep) : step;\n if (newStep >= 1 && newStep <= maxStep) {\n setCurrentStep(newStep);\n return;\n }\n throw new Error(\"Step not valid\");\n },\n [maxStep, currentStep]\n );\n const goToNextStep = useCallback(() => {\n if (canGoToNextStep) {\n setCurrentStep((step) => step + 1);\n }\n }, [canGoToNextStep]);\n const goToPrevStep = useCallback(() => {\n if (canGoToPrevStep) {\n setCurrentStep((step) => step - 1);\n }\n }, [canGoToPrevStep]);\n const reset = useCallback(() => {\n setCurrentStep(1);\n }, []);\n return [\n currentStep,\n {\n goToNextStep,\n goToPrevStep,\n canGoToNextStep,\n canGoToPrevStep,\n setStep,\n reset\n }\n ];\n}\n\n// src/useTernaryDarkMode/useTernaryDarkMode.ts\nvar COLOR_SCHEME_QUERY2 = \"(prefers-color-scheme: dark)\";\nvar LOCAL_STORAGE_KEY2 = \"usehooks-ts-ternary-dark-mode\";\nfunction useTernaryDarkMode({\n defaultValue = \"system\",\n localStorageKey = LOCAL_STORAGE_KEY2,\n initializeWithValue = true\n} = {}) {\n const isDarkOS = useMediaQuery(COLOR_SCHEME_QUERY2, { initializeWithValue });\n const [mode, setMode] = useLocalStorage(localStorageKey, defaultValue, {\n initializeWithValue\n });\n const isDarkMode = mode === \"dark\" || mode === \"system\" && isDarkOS;\n const toggleTernaryDarkMode = () => {\n const modes = [\"light\", \"system\", \"dark\"];\n setMode((prevMode) => {\n const nextIndex = (modes.indexOf(prevMode) + 1) % modes.length;\n return modes[nextIndex];\n });\n };\n return {\n isDarkMode,\n ternaryDarkMode: mode,\n setTernaryDarkMode: setMode,\n toggleTernaryDarkMode\n };\n}\nfunction useTimeout(callback, delay) {\n const savedCallback = useRef(callback);\n useIsomorphicLayoutEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n useEffect(() => {\n if (!delay && delay !== 0) {\n return;\n }\n const id = setTimeout(() => {\n savedCallback.current();\n }, delay);\n return () => {\n clearTimeout(id);\n };\n }, [delay]);\n}\nfunction useToggle(defaultValue) {\n const [value, setValue] = useState(!!defaultValue);\n const toggle = useCallback(() => {\n setValue((x) => !x);\n }, []);\n return [value, toggle, setValue];\n}\nvar IS_SERVER7 = typeof window === \"undefined\";\nfunction useWindowSize(options = {}) {\n let { initializeWithValue = true } = options;\n if (IS_SERVER7) {\n initializeWithValue = false;\n }\n const [windowSize, setWindowSize] = useState(() => {\n if (initializeWithValue) {\n return {\n width: window.innerWidth,\n height: window.innerHeight\n };\n }\n return {\n width: void 0,\n height: void 0\n };\n });\n const debouncedSetWindowSize = useDebounceCallback(\n setWindowSize,\n options.debounceDelay\n );\n function handleSize() {\n const setSize = options.debounceDelay ? debouncedSetWindowSize : setWindowSize;\n setSize({\n width: window.innerWidth,\n height: window.innerHeight\n });\n }\n useEventListener(\"resize\", handleSize);\n useIsomorphicLayoutEffect(() => {\n handleSize();\n }, []);\n return windowSize;\n}\n\nexport { useBoolean, useClickAnyWhere, useCopyToClipboard, useCountdown, useCounter, useDarkMode, useDebounceCallback, useDebounceValue, useDocumentTitle, useEventCallback, useEventListener, useHover, useIntersectionObserver, useInterval, useIsClient, useIsMounted, useIsomorphicLayoutEffect, useLocalStorage, useMap, useMediaQuery, useOnClickOutside, useReadLocalStorage, useResizeObserver, useScreen, useScript, useScrollLock, useSessionStorage, useStep, useTernaryDarkMode, useTimeout, useToggle, useUnmount, useWindowSize };\n"],"names":["useCopyToClipboard","copiedText","setCopiedText","useState","copy","useCallback","text","error"],"mappings":"sIAgDA,SAASA,GAAqB,CAC5B,KAAM,CAACC,EAAYC,CAAa,EAAIC,EAAAA,SAAS,IAAI,EAC3CC,EAAOC,cAAY,MAAOC,GAAS,CACvC,GAAI,EAAE,WAAa,MAAgB,UAAU,WAC3C,eAAQ,KAAK,yBAAyB,EAC/B,GAET,GAAI,CACF,aAAM,UAAU,UAAU,UAAUA,CAAI,EACxCJ,EAAcI,CAAI,EACX,EACR,OAAQC,EAAO,CACd,eAAQ,KAAK,cAAeA,CAAK,EACjCL,EAAc,IAAI,EACX,EACb,CACG,EAAE,EAAE,EACL,MAAO,CAACD,EAAYG,CAAI,CAC1B","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs414.js","sources":["../node_modules/usehooks-ts/dist/index.js"],"sourcesContent":["import { useState, useCallback, useLayoutEffect, useEffect, useRef, useMemo } from 'react';\nimport debounce from 'lodash.debounce';\n\n// src/useBoolean/useBoolean.ts\nfunction useBoolean(defaultValue = false) {\n if (typeof defaultValue !== \"boolean\") {\n throw new Error(\"defaultValue must be `true` or `false`\");\n }\n const [value, setValue] = useState(defaultValue);\n const setTrue = useCallback(() => {\n setValue(true);\n }, []);\n const setFalse = useCallback(() => {\n setValue(false);\n }, []);\n const toggle = useCallback(() => {\n setValue((x) => !x);\n }, []);\n return { value, setValue, setTrue, setFalse, toggle };\n}\nvar useIsomorphicLayoutEffect = typeof window !== \"undefined\" ? useLayoutEffect : useEffect;\n\n// src/useEventListener/useEventListener.ts\nfunction useEventListener(eventName, handler, element, options) {\n const savedHandler = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n savedHandler.current = handler;\n }, [handler]);\n useEffect(() => {\n const targetElement = (element == null ? void 0 : element.current) ?? window;\n if (!(targetElement && targetElement.addEventListener))\n return;\n const listener = (event) => {\n savedHandler.current(event);\n };\n targetElement.addEventListener(eventName, listener, options);\n return () => {\n targetElement.removeEventListener(eventName, listener, options);\n };\n }, [eventName, element, options]);\n}\n\n// src/useClickAnyWhere/useClickAnyWhere.ts\nfunction useClickAnyWhere(handler) {\n useEventListener(\"click\", (event) => {\n handler(event);\n });\n}\nfunction useCopyToClipboard() {\n const [copiedText, setCopiedText] = useState(null);\n const copy = useCallback(async (text) => {\n if (!(navigator == null ? void 0 : navigator.clipboard)) {\n console.warn(\"Clipboard not supported\");\n return false;\n }\n try {\n await navigator.clipboard.writeText(text);\n setCopiedText(text);\n return true;\n } catch (error) {\n console.warn(\"Copy failed\", error);\n setCopiedText(null);\n return false;\n }\n }, []);\n return [copiedText, copy];\n}\nfunction useCounter(initialValue) {\n const [count, setCount] = useState(initialValue ?? 0);\n const increment = useCallback(() => {\n setCount((x) => x + 1);\n }, []);\n const decrement = useCallback(() => {\n setCount((x) => x - 1);\n }, []);\n const reset = useCallback(() => {\n setCount(initialValue ?? 0);\n }, [initialValue]);\n return {\n count,\n increment,\n decrement,\n reset,\n setCount\n };\n}\nfunction useInterval(callback, delay) {\n const savedCallback = useRef(callback);\n useIsomorphicLayoutEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n useEffect(() => {\n if (delay === null) {\n return;\n }\n const id = setInterval(() => {\n savedCallback.current();\n }, delay);\n return () => {\n clearInterval(id);\n };\n }, [delay]);\n}\n\n// src/useCountdown/useCountdown.ts\nfunction useCountdown({\n countStart,\n countStop = 0,\n intervalMs = 1e3,\n isIncrement = false\n}) {\n const {\n count,\n increment,\n decrement,\n reset: resetCounter\n } = useCounter(countStart);\n const {\n value: isCountdownRunning,\n setTrue: startCountdown,\n setFalse: stopCountdown\n } = useBoolean(false);\n const resetCountdown = useCallback(() => {\n stopCountdown();\n resetCounter();\n }, [stopCountdown, resetCounter]);\n const countdownCallback = useCallback(() => {\n if (count === countStop) {\n stopCountdown();\n return;\n }\n if (isIncrement) {\n increment();\n } else {\n decrement();\n }\n }, [count, countStop, decrement, increment, isIncrement, stopCountdown]);\n useInterval(countdownCallback, isCountdownRunning ? intervalMs : null);\n return [count, { startCountdown, stopCountdown, resetCountdown }];\n}\nfunction useEventCallback(fn) {\n const ref = useRef(() => {\n throw new Error(\"Cannot call an event handler while rendering.\");\n });\n useIsomorphicLayoutEffect(() => {\n ref.current = fn;\n }, [fn]);\n return useCallback((...args) => {\n var _a;\n return (_a = ref.current) == null ? void 0 : _a.call(ref, ...args);\n }, [ref]);\n}\n\n// src/useLocalStorage/useLocalStorage.ts\nvar IS_SERVER = typeof window === \"undefined\";\nfunction useLocalStorage(key, initialValue, options = {}) {\n const { initializeWithValue = true } = options;\n const serializer = useCallback(\n (value) => {\n if (options.serializer) {\n return options.serializer(value);\n }\n return JSON.stringify(value);\n },\n [options]\n );\n const deserializer = useCallback(\n (value) => {\n if (options.deserializer) {\n return options.deserializer(value);\n }\n if (value === \"undefined\") {\n return void 0;\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n let parsed;\n try {\n parsed = JSON.parse(value);\n } catch (error) {\n console.error(\"Error parsing JSON:\", error);\n return defaultValue;\n }\n return parsed;\n },\n [options, initialValue]\n );\n const readValue = useCallback(() => {\n const initialValueToUse = initialValue instanceof Function ? initialValue() : initialValue;\n if (IS_SERVER) {\n return initialValueToUse;\n }\n try {\n const raw = window.localStorage.getItem(key);\n return raw ? deserializer(raw) : initialValueToUse;\n } catch (error) {\n console.warn(`Error reading localStorage key \\u201C${key}\\u201D:`, error);\n return initialValueToUse;\n }\n }, [initialValue, key, deserializer]);\n const [storedValue, setStoredValue] = useState(() => {\n if (initializeWithValue) {\n return readValue();\n }\n return initialValue instanceof Function ? initialValue() : initialValue;\n });\n const setValue = useEventCallback((value) => {\n if (IS_SERVER) {\n console.warn(\n `Tried setting localStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n try {\n const newValue = value instanceof Function ? value(readValue()) : value;\n window.localStorage.setItem(key, serializer(newValue));\n setStoredValue(newValue);\n window.dispatchEvent(new StorageEvent(\"local-storage\", { key }));\n } catch (error) {\n console.warn(`Error setting localStorage key \\u201C${key}\\u201D:`, error);\n }\n });\n const removeValue = useEventCallback(() => {\n if (IS_SERVER) {\n console.warn(\n `Tried removing localStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n window.localStorage.removeItem(key);\n setStoredValue(defaultValue);\n window.dispatchEvent(new StorageEvent(\"local-storage\", { key }));\n });\n useEffect(() => {\n setStoredValue(readValue());\n }, [key]);\n const handleStorageChange = useCallback(\n (event) => {\n if (event.key && event.key !== key) {\n return;\n }\n setStoredValue(readValue());\n },\n [key, readValue]\n );\n useEventListener(\"storage\", handleStorageChange);\n useEventListener(\"local-storage\", handleStorageChange);\n return [storedValue, setValue, removeValue];\n}\nvar IS_SERVER2 = typeof window === \"undefined\";\nfunction useMediaQuery(query, {\n defaultValue = false,\n initializeWithValue = true\n} = {}) {\n const getMatches = (query2) => {\n if (IS_SERVER2) {\n return defaultValue;\n }\n return window.matchMedia(query2).matches;\n };\n const [matches, setMatches] = useState(() => {\n if (initializeWithValue) {\n return getMatches(query);\n }\n return defaultValue;\n });\n function handleChange() {\n setMatches(getMatches(query));\n }\n useIsomorphicLayoutEffect(() => {\n const matchMedia = window.matchMedia(query);\n handleChange();\n if (matchMedia.addListener) {\n matchMedia.addListener(handleChange);\n } else {\n matchMedia.addEventListener(\"change\", handleChange);\n }\n return () => {\n if (matchMedia.removeListener) {\n matchMedia.removeListener(handleChange);\n } else {\n matchMedia.removeEventListener(\"change\", handleChange);\n }\n };\n }, [query]);\n return matches;\n}\n\n// src/useDarkMode/useDarkMode.ts\nvar COLOR_SCHEME_QUERY = \"(prefers-color-scheme: dark)\";\nvar LOCAL_STORAGE_KEY = \"usehooks-ts-dark-mode\";\nfunction useDarkMode(options = {}) {\n const {\n defaultValue,\n localStorageKey = LOCAL_STORAGE_KEY,\n initializeWithValue = true\n } = options;\n const isDarkOS = useMediaQuery(COLOR_SCHEME_QUERY, {\n initializeWithValue,\n defaultValue\n });\n const [isDarkMode, setDarkMode] = useLocalStorage(\n localStorageKey,\n defaultValue ?? isDarkOS ?? false,\n { initializeWithValue }\n );\n useIsomorphicLayoutEffect(() => {\n if (isDarkOS !== isDarkMode) {\n setDarkMode(isDarkOS);\n }\n }, [isDarkOS]);\n return {\n isDarkMode,\n toggle: () => {\n setDarkMode((prev) => !prev);\n },\n enable: () => {\n setDarkMode(true);\n },\n disable: () => {\n setDarkMode(false);\n },\n set: (value) => {\n setDarkMode(value);\n }\n };\n}\nfunction useUnmount(func) {\n const funcRef = useRef(func);\n funcRef.current = func;\n useEffect(\n () => () => {\n funcRef.current();\n },\n []\n );\n}\n\n// src/useDebounceCallback/useDebounceCallback.ts\nfunction useDebounceCallback(func, delay = 500, options) {\n const debouncedFunc = useRef();\n useUnmount(() => {\n if (debouncedFunc.current) {\n debouncedFunc.current.cancel();\n }\n });\n const debounced = useMemo(() => {\n const debouncedFuncInstance = debounce(func, delay, options);\n const wrappedFunc = (...args) => {\n return debouncedFuncInstance(...args);\n };\n wrappedFunc.cancel = () => {\n debouncedFuncInstance.cancel();\n };\n wrappedFunc.isPending = () => {\n return !!debouncedFunc.current;\n };\n wrappedFunc.flush = () => {\n return debouncedFuncInstance.flush();\n };\n return wrappedFunc;\n }, [func, delay, options]);\n useEffect(() => {\n debouncedFunc.current = debounce(func, delay, options);\n }, [func, delay, options]);\n return debounced;\n}\nfunction useDebounceValue(initialValue, delay, options) {\n const eq = (options == null ? void 0 : options.equalityFn) ?? ((left, right) => left === right);\n const unwrappedInitialValue = initialValue instanceof Function ? initialValue() : initialValue;\n const [debouncedValue, setDebouncedValue] = useState(unwrappedInitialValue);\n const previousValueRef = useRef(unwrappedInitialValue);\n const updateDebouncedValue = useDebounceCallback(\n setDebouncedValue,\n delay,\n options\n );\n if (!eq(previousValueRef.current, unwrappedInitialValue)) {\n updateDebouncedValue(unwrappedInitialValue);\n previousValueRef.current = unwrappedInitialValue;\n }\n return [debouncedValue, updateDebouncedValue];\n}\nfunction useDocumentTitle(title, options = {}) {\n const { preserveTitleOnUnmount = true } = options;\n const defaultTitle = useRef(null);\n useIsomorphicLayoutEffect(() => {\n defaultTitle.current = window.document.title;\n }, []);\n useIsomorphicLayoutEffect(() => {\n window.document.title = title;\n }, [title]);\n useUnmount(() => {\n if (!preserveTitleOnUnmount && defaultTitle.current) {\n window.document.title = defaultTitle.current;\n }\n });\n}\nfunction useHover(elementRef) {\n const [value, setValue] = useState(false);\n const handleMouseEnter = () => {\n setValue(true);\n };\n const handleMouseLeave = () => {\n setValue(false);\n };\n useEventListener(\"mouseenter\", handleMouseEnter, elementRef);\n useEventListener(\"mouseleave\", handleMouseLeave, elementRef);\n return value;\n}\nfunction useIntersectionObserver({\n threshold = 0,\n root = null,\n rootMargin = \"0%\",\n freezeOnceVisible = false,\n initialIsIntersecting = false,\n onChange\n} = {}) {\n var _a;\n const [ref, setRef] = useState(null);\n const [state, setState] = useState(() => ({\n isIntersecting: initialIsIntersecting,\n entry: void 0\n }));\n const callbackRef = useRef();\n callbackRef.current = onChange;\n const frozen = ((_a = state.entry) == null ? void 0 : _a.isIntersecting) && freezeOnceVisible;\n useEffect(() => {\n if (!ref)\n return;\n if (!(\"IntersectionObserver\" in window))\n return;\n if (frozen)\n return;\n let unobserve;\n const observer = new IntersectionObserver(\n (entries) => {\n const thresholds = Array.isArray(observer.thresholds) ? observer.thresholds : [observer.thresholds];\n entries.forEach((entry) => {\n const isIntersecting = entry.isIntersecting && thresholds.some((threshold2) => entry.intersectionRatio >= threshold2);\n setState({ isIntersecting, entry });\n if (callbackRef.current) {\n callbackRef.current(isIntersecting, entry);\n }\n if (isIntersecting && freezeOnceVisible && unobserve) {\n unobserve();\n unobserve = void 0;\n }\n });\n },\n { threshold, root, rootMargin }\n );\n observer.observe(ref);\n return () => {\n observer.disconnect();\n };\n }, [\n ref,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n JSON.stringify(threshold),\n root,\n rootMargin,\n frozen,\n freezeOnceVisible\n ]);\n const prevRef = useRef(null);\n useEffect(() => {\n var _a2;\n if (!ref && ((_a2 = state.entry) == null ? void 0 : _a2.target) && !freezeOnceVisible && !frozen && prevRef.current !== state.entry.target) {\n prevRef.current = state.entry.target;\n setState({ isIntersecting: initialIsIntersecting, entry: void 0 });\n }\n }, [ref, state.entry, freezeOnceVisible, frozen, initialIsIntersecting]);\n const result = [\n setRef,\n !!state.isIntersecting,\n state.entry\n ];\n result.ref = result[0];\n result.isIntersecting = result[1];\n result.entry = result[2];\n return result;\n}\nfunction useIsClient() {\n const [isClient, setClient] = useState(false);\n useEffect(() => {\n setClient(true);\n }, []);\n return isClient;\n}\nfunction useIsMounted() {\n const isMounted = useRef(false);\n useEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return useCallback(() => isMounted.current, []);\n}\nfunction useMap(initialState = /* @__PURE__ */ new Map()) {\n const [map, setMap] = useState(new Map(initialState));\n const actions = {\n set: useCallback((key, value) => {\n setMap((prev) => {\n const copy = new Map(prev);\n copy.set(key, value);\n return copy;\n });\n }, []),\n setAll: useCallback((entries) => {\n setMap(() => new Map(entries));\n }, []),\n remove: useCallback((key) => {\n setMap((prev) => {\n const copy = new Map(prev);\n copy.delete(key);\n return copy;\n });\n }, []),\n reset: useCallback(() => {\n setMap(() => /* @__PURE__ */ new Map());\n }, [])\n };\n return [map, actions];\n}\n\n// src/useOnClickOutside/useOnClickOutside.ts\nfunction useOnClickOutside(ref, handler, eventType = \"mousedown\", eventListenerOptions = {}) {\n useEventListener(\n eventType,\n (event) => {\n const target = event.target;\n if (!target || !target.isConnected) {\n return;\n }\n const isOutside = Array.isArray(ref) ? ref.filter((r) => Boolean(r.current)).every((r) => r.current && !r.current.contains(target)) : ref.current && !ref.current.contains(target);\n if (isOutside) {\n handler(event);\n }\n },\n void 0,\n eventListenerOptions\n );\n}\nvar IS_SERVER3 = typeof window === \"undefined\";\nfunction useReadLocalStorage(key, options = {}) {\n let { initializeWithValue = true } = options;\n if (IS_SERVER3) {\n initializeWithValue = false;\n }\n const deserializer = useCallback(\n (value) => {\n if (options.deserializer) {\n return options.deserializer(value);\n }\n if (value === \"undefined\") {\n return void 0;\n }\n let parsed;\n try {\n parsed = JSON.parse(value);\n } catch (error) {\n console.error(\"Error parsing JSON:\", error);\n return null;\n }\n return parsed;\n },\n [options]\n );\n const readValue = useCallback(() => {\n if (IS_SERVER3) {\n return null;\n }\n try {\n const raw = window.localStorage.getItem(key);\n return raw ? deserializer(raw) : null;\n } catch (error) {\n console.warn(`Error reading localStorage key \\u201C${key}\\u201D:`, error);\n return null;\n }\n }, [key, deserializer]);\n const [storedValue, setStoredValue] = useState(() => {\n if (initializeWithValue) {\n return readValue();\n }\n return void 0;\n });\n useEffect(() => {\n setStoredValue(readValue());\n }, [key]);\n const handleStorageChange = useCallback(\n (event) => {\n if (event.key && event.key !== key) {\n return;\n }\n setStoredValue(readValue());\n },\n [key, readValue]\n );\n useEventListener(\"storage\", handleStorageChange);\n useEventListener(\"local-storage\", handleStorageChange);\n return storedValue;\n}\nvar initialSize = {\n width: void 0,\n height: void 0\n};\nfunction useResizeObserver(options) {\n const { ref, box = \"content-box\" } = options;\n const [{ width, height }, setSize] = useState(initialSize);\n const isMounted = useIsMounted();\n const previousSize = useRef({ ...initialSize });\n const onResize = useRef(void 0);\n onResize.current = options.onResize;\n useEffect(() => {\n if (!ref.current)\n return;\n if (typeof window === \"undefined\" || !(\"ResizeObserver\" in window))\n return;\n const observer = new ResizeObserver(([entry]) => {\n const boxProp = box === \"border-box\" ? \"borderBoxSize\" : box === \"device-pixel-content-box\" ? \"devicePixelContentBoxSize\" : \"contentBoxSize\";\n const newWidth = extractSize(entry, boxProp, \"inlineSize\");\n const newHeight = extractSize(entry, boxProp, \"blockSize\");\n const hasChanged = previousSize.current.width !== newWidth || previousSize.current.height !== newHeight;\n if (hasChanged) {\n const newSize = { width: newWidth, height: newHeight };\n previousSize.current.width = newWidth;\n previousSize.current.height = newHeight;\n if (onResize.current) {\n onResize.current(newSize);\n } else {\n if (isMounted()) {\n setSize(newSize);\n }\n }\n }\n });\n observer.observe(ref.current, { box });\n return () => {\n observer.disconnect();\n };\n }, [box, ref, isMounted]);\n return { width, height };\n}\nfunction extractSize(entry, box, sizeType) {\n if (!entry[box]) {\n if (box === \"contentBoxSize\") {\n return entry.contentRect[sizeType === \"inlineSize\" ? \"width\" : \"height\"];\n }\n return void 0;\n }\n return Array.isArray(entry[box]) ? entry[box][0][sizeType] : (\n // @ts-ignore Support Firefox's non-standard behavior\n entry[box][sizeType]\n );\n}\nvar IS_SERVER4 = typeof window === \"undefined\";\nfunction useScreen(options = {}) {\n let { initializeWithValue = true } = options;\n if (IS_SERVER4) {\n initializeWithValue = false;\n }\n const readScreen = () => {\n if (IS_SERVER4) {\n return void 0;\n }\n return window.screen;\n };\n const [screen, setScreen] = useState(() => {\n if (initializeWithValue) {\n return readScreen();\n }\n return void 0;\n });\n const debouncedSetScreen = useDebounceCallback(\n setScreen,\n options.debounceDelay\n );\n function handleSize() {\n const newScreen = readScreen();\n const setSize = options.debounceDelay ? debouncedSetScreen : setScreen;\n if (newScreen) {\n const {\n width,\n height,\n availHeight,\n availWidth,\n colorDepth,\n orientation,\n pixelDepth\n } = newScreen;\n setSize({\n width,\n height,\n availHeight,\n availWidth,\n colorDepth,\n orientation,\n pixelDepth\n });\n }\n }\n useEventListener(\"resize\", handleSize);\n useIsomorphicLayoutEffect(() => {\n handleSize();\n }, []);\n return screen;\n}\nvar cachedScriptStatuses = /* @__PURE__ */ new Map();\nfunction getScriptNode(src) {\n const node = document.querySelector(\n `script[src=\"${src}\"]`\n );\n const status = node == null ? void 0 : node.getAttribute(\"data-status\");\n return {\n node,\n status\n };\n}\nfunction useScript(src, options) {\n const [status, setStatus] = useState(() => {\n if (!src || (options == null ? void 0 : options.shouldPreventLoad)) {\n return \"idle\";\n }\n if (typeof window === \"undefined\") {\n return \"loading\";\n }\n return cachedScriptStatuses.get(src) ?? \"loading\";\n });\n useEffect(() => {\n if (!src || (options == null ? void 0 : options.shouldPreventLoad)) {\n return;\n }\n const cachedScriptStatus = cachedScriptStatuses.get(src);\n if (cachedScriptStatus === \"ready\" || cachedScriptStatus === \"error\") {\n setStatus(cachedScriptStatus);\n return;\n }\n const script = getScriptNode(src);\n let scriptNode = script.node;\n if (!scriptNode) {\n scriptNode = document.createElement(\"script\");\n scriptNode.src = src;\n scriptNode.async = true;\n if (options == null ? void 0 : options.id) {\n scriptNode.id = options.id;\n }\n scriptNode.setAttribute(\"data-status\", \"loading\");\n document.body.appendChild(scriptNode);\n const setAttributeFromEvent = (event) => {\n const scriptStatus = event.type === \"load\" ? \"ready\" : \"error\";\n scriptNode == null ? void 0 : scriptNode.setAttribute(\"data-status\", scriptStatus);\n };\n scriptNode.addEventListener(\"load\", setAttributeFromEvent);\n scriptNode.addEventListener(\"error\", setAttributeFromEvent);\n } else {\n setStatus(script.status ?? cachedScriptStatus ?? \"loading\");\n }\n const setStateFromEvent = (event) => {\n const newStatus = event.type === \"load\" ? \"ready\" : \"error\";\n setStatus(newStatus);\n cachedScriptStatuses.set(src, newStatus);\n };\n scriptNode.addEventListener(\"load\", setStateFromEvent);\n scriptNode.addEventListener(\"error\", setStateFromEvent);\n return () => {\n if (scriptNode) {\n scriptNode.removeEventListener(\"load\", setStateFromEvent);\n scriptNode.removeEventListener(\"error\", setStateFromEvent);\n }\n if (scriptNode && (options == null ? void 0 : options.removeOnUnmount)) {\n scriptNode.remove();\n cachedScriptStatuses.delete(src);\n }\n };\n }, [src, options == null ? void 0 : options.shouldPreventLoad, options == null ? void 0 : options.removeOnUnmount, options == null ? void 0 : options.id]);\n return status;\n}\nvar IS_SERVER5 = typeof window === \"undefined\";\nfunction useScrollLock(options = {}) {\n const { autoLock = true, lockTarget, widthReflow = true } = options;\n const [isLocked, setIsLocked] = useState(false);\n const target = useRef(null);\n const originalStyle = useRef(null);\n const lock = () => {\n if (target.current) {\n const { overflow, paddingRight } = target.current.style;\n originalStyle.current = { overflow, paddingRight };\n if (widthReflow) {\n const offsetWidth = target.current === document.body ? window.innerWidth : target.current.offsetWidth;\n const currentPaddingRight = parseInt(window.getComputedStyle(target.current).paddingRight, 10) || 0;\n const scrollbarWidth = offsetWidth - target.current.scrollWidth;\n target.current.style.paddingRight = `${scrollbarWidth + currentPaddingRight}px`;\n }\n target.current.style.overflow = \"hidden\";\n setIsLocked(true);\n }\n };\n const unlock = () => {\n if (target.current && originalStyle.current) {\n target.current.style.overflow = originalStyle.current.overflow;\n if (widthReflow) {\n target.current.style.paddingRight = originalStyle.current.paddingRight;\n }\n }\n setIsLocked(false);\n };\n useIsomorphicLayoutEffect(() => {\n if (IS_SERVER5)\n return;\n if (lockTarget) {\n target.current = typeof lockTarget === \"string\" ? document.querySelector(lockTarget) : lockTarget;\n }\n if (!target.current) {\n target.current = document.body;\n }\n if (autoLock) {\n lock();\n }\n return () => {\n unlock();\n };\n }, [autoLock, lockTarget, widthReflow]);\n return { isLocked, lock, unlock };\n}\nvar IS_SERVER6 = typeof window === \"undefined\";\nfunction useSessionStorage(key, initialValue, options = {}) {\n const { initializeWithValue = true } = options;\n const serializer = useCallback(\n (value) => {\n if (options.serializer) {\n return options.serializer(value);\n }\n return JSON.stringify(value);\n },\n [options]\n );\n const deserializer = useCallback(\n (value) => {\n if (options.deserializer) {\n return options.deserializer(value);\n }\n if (value === \"undefined\") {\n return void 0;\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n let parsed;\n try {\n parsed = JSON.parse(value);\n } catch (error) {\n console.error(\"Error parsing JSON:\", error);\n return defaultValue;\n }\n return parsed;\n },\n [options, initialValue]\n );\n const readValue = useCallback(() => {\n const initialValueToUse = initialValue instanceof Function ? initialValue() : initialValue;\n if (IS_SERVER6) {\n return initialValueToUse;\n }\n try {\n const raw = window.sessionStorage.getItem(key);\n return raw ? deserializer(raw) : initialValueToUse;\n } catch (error) {\n console.warn(`Error reading sessionStorage key \\u201C${key}\\u201D:`, error);\n return initialValueToUse;\n }\n }, [initialValue, key, deserializer]);\n const [storedValue, setStoredValue] = useState(() => {\n if (initializeWithValue) {\n return readValue();\n }\n return initialValue instanceof Function ? initialValue() : initialValue;\n });\n const setValue = useEventCallback((value) => {\n if (IS_SERVER6) {\n console.warn(\n `Tried setting sessionStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n try {\n const newValue = value instanceof Function ? value(readValue()) : value;\n window.sessionStorage.setItem(key, serializer(newValue));\n setStoredValue(newValue);\n window.dispatchEvent(new StorageEvent(\"session-storage\", { key }));\n } catch (error) {\n console.warn(`Error setting sessionStorage key \\u201C${key}\\u201D:`, error);\n }\n });\n const removeValue = useEventCallback(() => {\n if (IS_SERVER6) {\n console.warn(\n `Tried removing sessionStorage key \\u201C${key}\\u201D even though environment is not a client`\n );\n }\n const defaultValue = initialValue instanceof Function ? initialValue() : initialValue;\n window.sessionStorage.removeItem(key);\n setStoredValue(defaultValue);\n window.dispatchEvent(new StorageEvent(\"session-storage\", { key }));\n });\n useEffect(() => {\n setStoredValue(readValue());\n }, [key]);\n const handleStorageChange = useCallback(\n (event) => {\n if (event.key && event.key !== key) {\n return;\n }\n setStoredValue(readValue());\n },\n [key, readValue]\n );\n useEventListener(\"storage\", handleStorageChange);\n useEventListener(\"session-storage\", handleStorageChange);\n return [storedValue, setValue, removeValue];\n}\nfunction useStep(maxStep) {\n const [currentStep, setCurrentStep] = useState(1);\n const canGoToNextStep = currentStep + 1 <= maxStep;\n const canGoToPrevStep = currentStep - 1 > 0;\n const setStep = useCallback(\n (step) => {\n const newStep = step instanceof Function ? step(currentStep) : step;\n if (newStep >= 1 && newStep <= maxStep) {\n setCurrentStep(newStep);\n return;\n }\n throw new Error(\"Step not valid\");\n },\n [maxStep, currentStep]\n );\n const goToNextStep = useCallback(() => {\n if (canGoToNextStep) {\n setCurrentStep((step) => step + 1);\n }\n }, [canGoToNextStep]);\n const goToPrevStep = useCallback(() => {\n if (canGoToPrevStep) {\n setCurrentStep((step) => step - 1);\n }\n }, [canGoToPrevStep]);\n const reset = useCallback(() => {\n setCurrentStep(1);\n }, []);\n return [\n currentStep,\n {\n goToNextStep,\n goToPrevStep,\n canGoToNextStep,\n canGoToPrevStep,\n setStep,\n reset\n }\n ];\n}\n\n// src/useTernaryDarkMode/useTernaryDarkMode.ts\nvar COLOR_SCHEME_QUERY2 = \"(prefers-color-scheme: dark)\";\nvar LOCAL_STORAGE_KEY2 = \"usehooks-ts-ternary-dark-mode\";\nfunction useTernaryDarkMode({\n defaultValue = \"system\",\n localStorageKey = LOCAL_STORAGE_KEY2,\n initializeWithValue = true\n} = {}) {\n const isDarkOS = useMediaQuery(COLOR_SCHEME_QUERY2, { initializeWithValue });\n const [mode, setMode] = useLocalStorage(localStorageKey, defaultValue, {\n initializeWithValue\n });\n const isDarkMode = mode === \"dark\" || mode === \"system\" && isDarkOS;\n const toggleTernaryDarkMode = () => {\n const modes = [\"light\", \"system\", \"dark\"];\n setMode((prevMode) => {\n const nextIndex = (modes.indexOf(prevMode) + 1) % modes.length;\n return modes[nextIndex];\n });\n };\n return {\n isDarkMode,\n ternaryDarkMode: mode,\n setTernaryDarkMode: setMode,\n toggleTernaryDarkMode\n };\n}\nfunction useTimeout(callback, delay) {\n const savedCallback = useRef(callback);\n useIsomorphicLayoutEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n useEffect(() => {\n if (!delay && delay !== 0) {\n return;\n }\n const id = setTimeout(() => {\n savedCallback.current();\n }, delay);\n return () => {\n clearTimeout(id);\n };\n }, [delay]);\n}\nfunction useToggle(defaultValue) {\n const [value, setValue] = useState(!!defaultValue);\n const toggle = useCallback(() => {\n setValue((x) => !x);\n }, []);\n return [value, toggle, setValue];\n}\nvar IS_SERVER7 = typeof window === \"undefined\";\nfunction useWindowSize(options = {}) {\n let { initializeWithValue = true } = options;\n if (IS_SERVER7) {\n initializeWithValue = false;\n }\n const [windowSize, setWindowSize] = useState(() => {\n if (initializeWithValue) {\n return {\n width: window.innerWidth,\n height: window.innerHeight\n };\n }\n return {\n width: void 0,\n height: void 0\n };\n });\n const debouncedSetWindowSize = useDebounceCallback(\n setWindowSize,\n options.debounceDelay\n );\n function handleSize() {\n const setSize = options.debounceDelay ? debouncedSetWindowSize : setWindowSize;\n setSize({\n width: window.innerWidth,\n height: window.innerHeight\n });\n }\n useEventListener(\"resize\", handleSize);\n useIsomorphicLayoutEffect(() => {\n handleSize();\n }, []);\n return windowSize;\n}\n\nexport { useBoolean, useClickAnyWhere, useCopyToClipboard, useCountdown, useCounter, useDarkMode, useDebounceCallback, useDebounceValue, useDocumentTitle, useEventCallback, useEventListener, useHover, useIntersectionObserver, useInterval, useIsClient, useIsMounted, useIsomorphicLayoutEffect, useLocalStorage, useMap, useMediaQuery, useOnClickOutside, useReadLocalStorage, useResizeObserver, useScreen, useScript, useScrollLock, useSessionStorage, useStep, useTernaryDarkMode, useTimeout, useToggle, useUnmount, useWindowSize };\n"],"names":["useCopyToClipboard","copiedText","setCopiedText","useState","copy","useCallback","text","error"],"mappings":"sIAgDA,SAASA,GAAqB,CAC5B,KAAM,CAACC,EAAYC,CAAa,EAAIC,EAAAA,SAAS,IAAI,EAC3CC,EAAOC,cAAY,MAAOC,GAAS,CACvC,GAAI,EAAE,WAAa,MAAgB,UAAU,WAC3C,eAAQ,KAAK,yBAAyB,EAC/B,GAET,GAAI,CACF,aAAM,UAAU,UAAU,UAAUA,CAAI,EACxCJ,EAAcI,CAAI,EACX,EACR,OAAQC,EAAO,CACd,eAAQ,KAAK,cAAeA,CAAK,EACjCL,EAAc,IAAI,EACX,EACb,CACG,EAAE,EAAE,EACL,MAAO,CAACD,EAAYG,CAAI,CAC1B","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pe=require("react"),l=require("./index.cjs431.js"),ye=require("./index.cjs432.js"),Z=require("./index.cjs386.js"),Ae=require("./index.cjs387.js"),G=require("./index.cjs389.js"),ve=require("./index.cjs417.js"),L=require("./index.cjs422.js"),Ce=require("./index.cjs397.js"),u=require("./index.cjs212.js"),be=require("./index.cjs433.js");function Re(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const s=Re(Pe);var _="Popper",[J,Oe]=Ae.createContextScope(_),[Se,K]=J(_),$=e=>{const{__scopePopper:o,children:t}=e,[r,a]=s.useState(null);return u.jsxRuntimeExports.jsx(Se,{scope:o,anchor:r,onAnchorChange:a,children:t})};$.displayName=_;var Q="PopperAnchor",N=s.forwardRef((e,o)=>{const{__scopePopper:t,virtualRef:r,...a}=e,n=K(Q,t),i=s.useRef(null),w=Z.useComposedRefs(o,i);return s.useEffect(()=>{n.onAnchorChange((r==null?void 0:r.current)||i.current)}),r?null:u.jsxRuntimeExports.jsx(G.Primitive.div,{...a,ref:w})});N.displayName=Q;var q="PopperContent",[je,Ee]=J(q),H=s.forwardRef((e,o)=>{var T,X,k,F,z,B;const{__scopePopper:t,side:r="bottom",sideOffset:a=0,align:n="center",alignOffset:i=0,arrowPadding:w=0,avoidCollisions:c=!0,collisionBoundary:p=[],collisionPadding:P=0,sticky:x="partial",hideWhenDetached:A=!1,updatePositionStrategy:v="optimized",onPlaced:f,...d}=e,C=K(q,t),[m,b]=s.useState(null),te=Z.useComposedRefs(o,y=>b(y)),[E,re]=s.useState(null),h=Ce.useSize(E),oe=(h==null?void 0:h.width)??0,M=(h==null?void 0:h.height)??0,ne=r+(n!=="center"?"-"+n:""),ie=typeof P=="number"?P:{top:0,right:0,bottom:0,left:0,...P},W=Array.isArray(p)?p:[p],ae=W.length>0,R={padding:ie,boundary:W.filter($e),altBoundary:ae},{refs:se,floatingStyles:I,placement:ce,isPositioned:O,middlewareData:g}=l.useFloating({strategy:"fixed",placement:ne,whileElementsMounted:(...y)=>be.autoUpdate(...y,{animationFrame:v==="always"}),elements:{reference:C.anchor},middleware:[l.offset({mainAxis:a+M,alignmentAxis:i}),c&&l.shift({mainAxis:!0,crossAxis:!1,limiter:x==="partial"?l.limitShift():void 0,...R}),c&&l.flip({...R}),l.size({...R,apply:({elements:y,rects:U,availableWidth:me,availableHeight:he})=>{const{width:ge,height:we}=U.reference,j=y.floating.style;j.setProperty("--radix-popper-available-width",`${me}px`),j.setProperty("--radix-popper-available-height",`${he}px`),j.setProperty("--radix-popper-anchor-width",`${ge}px`),j.setProperty("--radix-popper-anchor-height",`${we}px`)}}),E&&l.arrow({element:E,padding:w}),Ne({arrowWidth:oe,arrowHeight:M}),A&&l.hide({strategy:"referenceHidden",...R})]}),[Y,pe]=ee(ce),S=ve.useCallbackRef(f);L.useLayoutEffect(()=>{O&&(S==null||S())},[O,S]);const de=(T=g.arrow)==null?void 0:T.x,le=(X=g.arrow)==null?void 0:X.y,fe=((k=g.arrow)==null?void 0:k.centerOffset)!==0,[ue,xe]=s.useState();return L.useLayoutEffect(()=>{m&&xe(window.getComputedStyle(m).zIndex)},[m]),u.jsxRuntimeExports.jsx("div",{ref:se.setFloating,"data-radix-popper-content-wrapper":"",style:{...I,transform:O?I.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ue,"--radix-popper-transform-origin":[(F=g.transformOrigin)==null?void 0:F.x,(z=g.transformOrigin)==null?void 0:z.y].join(" "),...((B=g.hide)==null?void 0:B.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:u.jsxRuntimeExports.jsx(je,{scope:t,placedSide:Y,onArrowChange:re,arrowX:de,arrowY:le,shouldHideArrow:fe,children:u.jsxRuntimeExports.jsx(G.Primitive.div,{"data-side":Y,"data-align":pe,...d,ref:te,style:{...d.style,animation:O?void 0:"none"}})})})});H.displayName=q;var V="PopperArrow",_e={top:"bottom",right:"left",bottom:"top",left:"right"},D=s.forwardRef(function(o,t){const{__scopePopper:r,...a}=o,n=Ee(V,r),i=_e[n.placedSide];return u.jsxRuntimeExports.jsx("span",{ref:n.onArrowChange,style:{position:"absolute",left:n.arrowX,top:n.arrowY,[i]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[n.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[n.placedSide],visibility:n.shouldHideArrow?"hidden":void 0},children:u.jsxRuntimeExports.jsx(ye.Root,{...a,ref:t,style:{...a.style,display:"block"}})})});D.displayName=V;function $e(e){return e!==null}var Ne=e=>({name:"transformOrigin",options:e,fn(o){var C,m,b;const{placement:t,rects:r,middlewareData:a}=o,i=((C=a.arrow)==null?void 0:C.centerOffset)!==0,w=i?0:e.arrowWidth,c=i?0:e.arrowHeight,[p,P]=ee(t),x={start:"0%",center:"50%",end:"100%"}[P],A=(((m=a.arrow)==null?void 0:m.x)??0)+w/2,v=(((b=a.arrow)==null?void 0:b.y)??0)+c/2;let f="",d="";return p==="bottom"?(f=i?x:`${A}px`,d=`${-c}px`):p==="top"?(f=i?x:`${A}px`,d=`${r.floating.height+c}px`):p==="right"?(f=`${-c}px`,d=i?x:`${v}px`):p==="left"&&(f=`${r.floating.width+c}px`,d=i?x:`${v}px`),{data:{x:f,y:d}}}});function ee(e){const[o,t="center"]=e.split("-");return[o,t]}var qe=$,He=N,De=H,Me=D;exports.Anchor=He;exports.Arrow=Me;exports.Content=De;exports.Popper=$;exports.PopperAnchor=N;exports.PopperArrow=D;exports.PopperContent=H;exports.Root=qe;exports.createPopperScope=Oe;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react");function o(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const u=o(c);function s(e){const t=u.useRef(e);return u.useEffect(()=>{t.current=e}),u.useMemo(()=>(...r)=>{var n;return(n=t.current)==null?void 0:n.call(t,...r)},[])}exports.useCallbackRef=s;
2
2
  //# sourceMappingURL=index.cjs420.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs420.js","sources":["../node_modules/@radix-ui/react-popper/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/popper/src/popper.tsx\nimport * as React from \"react\";\nimport {\n useFloating,\n autoUpdate,\n offset,\n shift,\n limitShift,\n hide,\n arrow as floatingUIarrow,\n flip,\n size\n} from \"@floating-ui/react-dom\";\nimport * as ArrowPrimitive from \"@radix-ui/react-arrow\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { jsx } from \"react/jsx-runtime\";\nvar SIDE_OPTIONS = [\"top\", \"right\", \"bottom\", \"left\"];\nvar ALIGN_OPTIONS = [\"start\", \"center\", \"end\"];\nvar POPPER_NAME = \"Popper\";\nvar [createPopperContext, createPopperScope] = createContextScope(POPPER_NAME);\nvar [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);\nvar Popper = (props) => {\n const { __scopePopper, children } = props;\n const [anchor, setAnchor] = React.useState(null);\n return /* @__PURE__ */ jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });\n};\nPopper.displayName = POPPER_NAME;\nvar ANCHOR_NAME = \"PopperAnchor\";\nvar PopperAnchor = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopper, virtualRef, ...anchorProps } = props;\n const context = usePopperContext(ANCHOR_NAME, __scopePopper);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n context.onAnchorChange(virtualRef?.current || ref.current);\n });\n return virtualRef ? null : /* @__PURE__ */ jsx(Primitive.div, { ...anchorProps, ref: composedRefs });\n }\n);\nPopperAnchor.displayName = ANCHOR_NAME;\nvar CONTENT_NAME = \"PopperContent\";\nvar [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME);\nvar PopperContent = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopePopper,\n side = \"bottom\",\n sideOffset = 0,\n align = \"center\",\n alignOffset = 0,\n arrowPadding = 0,\n avoidCollisions = true,\n collisionBoundary = [],\n collisionPadding: collisionPaddingProp = 0,\n sticky = \"partial\",\n hideWhenDetached = false,\n updatePositionStrategy = \"optimized\",\n onPlaced,\n ...contentProps\n } = props;\n const context = usePopperContext(CONTENT_NAME, __scopePopper);\n const [content, setContent] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const [arrow, setArrow] = React.useState(null);\n const arrowSize = useSize(arrow);\n const arrowWidth = arrowSize?.width ?? 0;\n const arrowHeight = arrowSize?.height ?? 0;\n const desiredPlacement = side + (align !== \"center\" ? \"-\" + align : \"\");\n const collisionPadding = typeof collisionPaddingProp === \"number\" ? collisionPaddingProp : { top: 0, right: 0, bottom: 0, left: 0, ...collisionPaddingProp };\n const boundary = Array.isArray(collisionBoundary) ? collisionBoundary : [collisionBoundary];\n const hasExplicitBoundaries = boundary.length > 0;\n const detectOverflowOptions = {\n padding: collisionPadding,\n boundary: boundary.filter(isNotNull),\n // with `strategy: 'fixed'`, this is the only way to get it to respect boundaries\n altBoundary: hasExplicitBoundaries\n };\n const { refs, floatingStyles, placement, isPositioned, middlewareData } = useFloating({\n // default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues\n strategy: \"fixed\",\n placement: desiredPlacement,\n whileElementsMounted: (...args) => {\n const cleanup = autoUpdate(...args, {\n animationFrame: updatePositionStrategy === \"always\"\n });\n return cleanup;\n },\n elements: {\n reference: context.anchor\n },\n middleware: [\n offset({ mainAxis: sideOffset + arrowHeight, alignmentAxis: alignOffset }),\n avoidCollisions && shift({\n mainAxis: true,\n crossAxis: false,\n limiter: sticky === \"partial\" ? limitShift() : void 0,\n ...detectOverflowOptions\n }),\n avoidCollisions && flip({ ...detectOverflowOptions }),\n size({\n ...detectOverflowOptions,\n apply: ({ elements, rects, availableWidth, availableHeight }) => {\n const { width: anchorWidth, height: anchorHeight } = rects.reference;\n const contentStyle = elements.floating.style;\n contentStyle.setProperty(\"--radix-popper-available-width\", `${availableWidth}px`);\n contentStyle.setProperty(\"--radix-popper-available-height\", `${availableHeight}px`);\n contentStyle.setProperty(\"--radix-popper-anchor-width\", `${anchorWidth}px`);\n contentStyle.setProperty(\"--radix-popper-anchor-height\", `${anchorHeight}px`);\n }\n }),\n arrow && floatingUIarrow({ element: arrow, padding: arrowPadding }),\n transformOrigin({ arrowWidth, arrowHeight }),\n hideWhenDetached && hide({ strategy: \"referenceHidden\", ...detectOverflowOptions })\n ]\n });\n const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);\n const handlePlaced = useCallbackRef(onPlaced);\n useLayoutEffect(() => {\n if (isPositioned) {\n handlePlaced?.();\n }\n }, [isPositioned, handlePlaced]);\n const arrowX = middlewareData.arrow?.x;\n const arrowY = middlewareData.arrow?.y;\n const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;\n const [contentZIndex, setContentZIndex] = React.useState();\n useLayoutEffect(() => {\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [content]);\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: refs.setFloating,\n \"data-radix-popper-content-wrapper\": \"\",\n style: {\n ...floatingStyles,\n transform: isPositioned ? floatingStyles.transform : \"translate(0, -200%)\",\n // keep off the page when measuring\n minWidth: \"max-content\",\n zIndex: contentZIndex,\n [\"--radix-popper-transform-origin\"]: [\n middlewareData.transformOrigin?.x,\n middlewareData.transformOrigin?.y\n ].join(\" \"),\n // hide the content if using the hide middleware and should be hidden\n // set visibility to hidden and disable pointer events so the UI behaves\n // as if the PopperContent isn't there at all\n ...middlewareData.hide?.referenceHidden && {\n visibility: \"hidden\",\n pointerEvents: \"none\"\n }\n },\n dir: props.dir,\n children: /* @__PURE__ */ jsx(\n PopperContentProvider,\n {\n scope: __scopePopper,\n placedSide,\n onArrowChange: setArrow,\n arrowX,\n arrowY,\n shouldHideArrow: cannotCenterArrow,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-side\": placedSide,\n \"data-align\": placedAlign,\n ...contentProps,\n ref: composedRefs,\n style: {\n ...contentProps.style,\n // if the PopperContent hasn't been placed yet (not all measurements done)\n // we prevent animations so that users's animation don't kick in too early referring wrong sides\n animation: !isPositioned ? \"none\" : void 0\n }\n }\n )\n }\n )\n }\n );\n }\n);\nPopperContent.displayName = CONTENT_NAME;\nvar ARROW_NAME = \"PopperArrow\";\nvar OPPOSITE_SIDE = {\n top: \"bottom\",\n right: \"left\",\n bottom: \"top\",\n left: \"right\"\n};\nvar PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {\n const { __scopePopper, ...arrowProps } = props;\n const contentContext = useContentContext(ARROW_NAME, __scopePopper);\n const baseSide = OPPOSITE_SIDE[contentContext.placedSide];\n return (\n // we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)\n // doesn't report size as we'd expect on SVG elements.\n // it reports their bounding box which is effectively the largest path inside the SVG.\n /* @__PURE__ */ jsx(\n \"span\",\n {\n ref: contentContext.onArrowChange,\n style: {\n position: \"absolute\",\n left: contentContext.arrowX,\n top: contentContext.arrowY,\n [baseSide]: 0,\n transformOrigin: {\n top: \"\",\n right: \"0 0\",\n bottom: \"center 0\",\n left: \"100% 0\"\n }[contentContext.placedSide],\n transform: {\n top: \"translateY(100%)\",\n right: \"translateY(50%) rotate(90deg) translateX(-50%)\",\n bottom: `rotate(180deg)`,\n left: \"translateY(50%) rotate(-90deg) translateX(50%)\"\n }[contentContext.placedSide],\n visibility: contentContext.shouldHideArrow ? \"hidden\" : void 0\n },\n children: /* @__PURE__ */ jsx(\n ArrowPrimitive.Root,\n {\n ...arrowProps,\n ref: forwardedRef,\n style: {\n ...arrowProps.style,\n // ensures the element can be measured correctly (mostly for if SVG)\n display: \"block\"\n }\n }\n )\n }\n )\n );\n});\nPopperArrow.displayName = ARROW_NAME;\nfunction isNotNull(value) {\n return value !== null;\n}\nvar transformOrigin = (options) => ({\n name: \"transformOrigin\",\n options,\n fn(data) {\n const { placement, rects, middlewareData } = data;\n const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;\n const isArrowHidden = cannotCenterArrow;\n const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;\n const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;\n const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);\n const noArrowAlign = { start: \"0%\", center: \"50%\", end: \"100%\" }[placedAlign];\n const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;\n const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;\n let x = \"\";\n let y = \"\";\n if (placedSide === \"bottom\") {\n x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;\n y = `${-arrowHeight}px`;\n } else if (placedSide === \"top\") {\n x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;\n y = `${rects.floating.height + arrowHeight}px`;\n } else if (placedSide === \"right\") {\n x = `${-arrowHeight}px`;\n y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;\n } else if (placedSide === \"left\") {\n x = `${rects.floating.width + arrowHeight}px`;\n y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;\n }\n return { data: { x, y } };\n }\n});\nfunction getSideAndAlignFromPlacement(placement) {\n const [side, align = \"center\"] = placement.split(\"-\");\n return [side, align];\n}\nvar Root2 = Popper;\nvar Anchor = PopperAnchor;\nvar Content = PopperContent;\nvar Arrow = PopperArrow;\nexport {\n ALIGN_OPTIONS,\n Anchor,\n Arrow,\n Content,\n Popper,\n PopperAnchor,\n PopperArrow,\n PopperContent,\n Root2 as Root,\n SIDE_OPTIONS,\n createPopperScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["POPPER_NAME","createPopperContext","createPopperScope","createContextScope","PopperProvider","usePopperContext","Popper","props","__scopePopper","children","anchor","setAnchor","React","jsx","ANCHOR_NAME","PopperAnchor","forwardedRef","virtualRef","anchorProps","context","ref","composedRefs","useComposedRefs","Primitive","CONTENT_NAME","PopperContentProvider","useContentContext","PopperContent","side","sideOffset","align","alignOffset","arrowPadding","avoidCollisions","collisionBoundary","collisionPaddingProp","sticky","hideWhenDetached","updatePositionStrategy","onPlaced","contentProps","content","setContent","node","arrow","setArrow","arrowSize","useSize","arrowWidth","arrowHeight","desiredPlacement","collisionPadding","boundary","hasExplicitBoundaries","detectOverflowOptions","isNotNull","refs","floatingStyles","placement","isPositioned","middlewareData","useFloating","args","autoUpdate","offset","shift","limitShift","flip","size","elements","rects","availableWidth","availableHeight","anchorWidth","anchorHeight","contentStyle","floatingUIarrow","transformOrigin","hide","placedSide","placedAlign","getSideAndAlignFromPlacement","handlePlaced","useCallbackRef","useLayoutEffect","arrowX","_a","arrowY","_b","cannotCenterArrow","_c","contentZIndex","setContentZIndex","_d","_e","_f","ARROW_NAME","OPPOSITE_SIDE","PopperArrow","arrowProps","contentContext","baseSide","ArrowPrimitive.Root","value","options","data","isArrowHidden","noArrowAlign","arrowXCenter","arrowYCenter","x","y","Root2","Anchor","Content","Arrow"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs420.js","sources":["../node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs"],"sourcesContent":["// packages/react/use-callback-ref/src/use-callback-ref.tsx\nimport * as React from \"react\";\nfunction useCallbackRef(callback) {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => (...args) => callbackRef.current?.(...args), []);\n}\nexport {\n useCallbackRef\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useCallbackRef","callback","callbackRef","React","args","_a"],"mappings":"mYAEA,SAASA,EAAeC,EAAU,CAChC,MAAMC,EAAcC,EAAM,OAAOF,CAAQ,EACzCE,OAAAA,EAAM,UAAU,IAAM,CACpBD,EAAY,QAAUD,CAC1B,CAAG,EACME,EAAM,QAAQ,IAAM,IAAIC,WAAS,OAAAC,EAAAH,EAAY,UAAZ,YAAAG,EAAA,KAAAH,EAAsB,GAAGE,IAAO,EAAE,CAC5E","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const H=require("react"),m=require("./index.cjs385.js"),B=require("./index.cjs418.js"),Y=require("./index.cjs386.js"),z=require("./index.cjs387.js"),V=require("./index.cjs391.js"),D=require("./index.cjs389.js"),J=require("./index.cjs417.js"),Q=require("./index.cjs388.js"),W=require("./index.cjs419.js"),f=require("./index.cjs212.js");function X(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const t=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,t.get?t:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const c=X(H);var _="rovingFocusGroup.onEntryFocus",Z={bubbles:!1,cancelable:!0},g="RovingFocusGroup",[j,G,ee]=B.createCollection(g),[te,oe]=z.createContextScope(g,[ee]),[re,ne]=te(g),A=c.forwardRef((e,o)=>f.jsxRuntimeExports.jsx(j.Provider,{scope:e.__scopeRovingFocusGroup,children:f.jsxRuntimeExports.jsx(j.Slot,{scope:e.__scopeRovingFocusGroup,children:f.jsxRuntimeExports.jsx(se,{...e,ref:o})})}));A.displayName=g;var se=c.forwardRef((e,o)=>{const{__scopeRovingFocusGroup:r,orientation:t,loop:R=!1,dir:I,currentTabStopId:x,defaultCurrentTabStopId:F,onCurrentTabStopIdChange:p,onEntryFocus:u,preventScrollOnEntryFocus:E=!1,...S}=e,v=c.useRef(null),b=Y.useComposedRefs(o,v),n=W.useDirection(I),[l=null,w]=Q.useControllableState({prop:x,defaultProp:F,onChange:p}),[i,a]=c.useState(!1),T=J.useCallbackRef(u),M=G(r),C=c.useRef(!1),[K,O]=c.useState(0);return c.useEffect(()=>{const s=v.current;if(s)return s.addEventListener(_,T),()=>s.removeEventListener(_,T)},[T]),f.jsxRuntimeExports.jsx(re,{scope:r,orientation:t,dir:n,loop:R,currentTabStopId:l,onItemFocus:c.useCallback(s=>w(s),[w]),onItemShiftTab:c.useCallback(()=>a(!0),[]),onFocusableItemAdd:c.useCallback(()=>O(s=>s+1),[]),onFocusableItemRemove:c.useCallback(()=>O(s=>s-1),[]),children:f.jsxRuntimeExports.jsx(D.Primitive.div,{tabIndex:i||K===0?-1:0,"data-orientation":t,...S,ref:b,style:{outline:"none",...e.style},onMouseDown:m.composeEventHandlers(e.onMouseDown,()=>{C.current=!0}),onFocus:m.composeEventHandlers(e.onFocus,s=>{const k=!C.current;if(s.target===s.currentTarget&&k&&!i){const P=new CustomEvent(_,Z);if(s.currentTarget.dispatchEvent(P),!P.defaultPrevented){const y=M().filter(d=>d.focusable),L=y.find(d=>d.active),U=y.find(d=>d.id===l),$=[L,U,...y].filter(Boolean).map(d=>d.ref.current);q($,E)}}C.current=!1}),onBlur:m.composeEventHandlers(e.onBlur,()=>a(!1))})})}),N="RovingFocusGroupItem",h=c.forwardRef((e,o)=>{const{__scopeRovingFocusGroup:r,focusable:t=!0,active:R=!1,tabStopId:I,...x}=e,F=V.useId(),p=I||F,u=ne(N,r),E=u.currentTabStopId===p,S=G(r),{onFocusableItemAdd:v,onFocusableItemRemove:b}=u;return c.useEffect(()=>{if(t)return v(),()=>b()},[t,v,b]),f.jsxRuntimeExports.jsx(j.ItemSlot,{scope:r,id:p,focusable:t,active:R,children:f.jsxRuntimeExports.jsx(D.Primitive.span,{tabIndex:E?0:-1,"data-orientation":u.orientation,...x,ref:o,onMouseDown:m.composeEventHandlers(e.onMouseDown,n=>{t?u.onItemFocus(p):n.preventDefault()}),onFocus:m.composeEventHandlers(e.onFocus,()=>u.onItemFocus(p)),onKeyDown:m.composeEventHandlers(e.onKeyDown,n=>{if(n.key==="Tab"&&n.shiftKey){u.onItemShiftTab();return}if(n.target!==n.currentTarget)return;const l=ie(n,u.orientation,u.dir);if(l!==void 0){if(n.metaKey||n.ctrlKey||n.altKey||n.shiftKey)return;n.preventDefault();let i=S().filter(a=>a.focusable).map(a=>a.ref.current);if(l==="last")i.reverse();else if(l==="prev"||l==="next"){l==="prev"&&i.reverse();const a=i.indexOf(n.currentTarget);i=u.loop?ae(i,a+1):i.slice(a+1)}setTimeout(()=>q(i))}})})})});h.displayName=N;var ce={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function ue(e,o){return o!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function ie(e,o,r){const t=ue(e.key,r);if(!(o==="vertical"&&["ArrowLeft","ArrowRight"].includes(t))&&!(o==="horizontal"&&["ArrowUp","ArrowDown"].includes(t)))return ce[t]}function q(e,o=!1){const r=document.activeElement;for(const t of e)if(t===r||(t.focus({preventScroll:o}),document.activeElement!==r))return}function ae(e,o){return e.map((r,t)=>e[(o+t)%e.length])}var le=A,de=h;exports.Item=de;exports.Root=le;exports.RovingFocusGroup=A;exports.RovingFocusGroupItem=h;exports.createRovingFocusGroupScope=oe;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react"),v=require("./index.cjs387.js"),I=require("./index.cjs386.js"),M=require("./index.cjs410.js"),f=require("./index.cjs212.js");function _(s){const u=s+"CollectionProvider",[E,A]=v.createContextScope(u),[N,d]=E(u,{collectionRef:{current:null},itemMap:new Map}),p=c=>{const{scope:e,children:l}=c,t=r.useRef(null),o=r.useRef(new Map).current;return f.jsxRuntimeExports.jsx(N,{scope:e,itemMap:o,collectionRef:t,children:l})};p.displayName=u;const a=s+"CollectionSlot",T=M.createSlot(a),C=r.forwardRef((c,e)=>{const{scope:l,children:t}=c,o=d(a,l),n=I.useComposedRefs(e,o.collectionRef);return f.jsxRuntimeExports.jsx(T,{ref:n,children:t})});C.displayName=a;const m=s+"CollectionItemSlot",x="data-radix-collection-item",j=M.createSlot(m),R=r.forwardRef((c,e)=>{const{scope:l,children:t,...o}=c,n=r.useRef(null),S=I.useComposedRefs(e,n),i=d(m,l);return r.useEffect(()=>(i.itemMap.set(n,{ref:n,...o}),()=>void i.itemMap.delete(n))),f.jsxRuntimeExports.jsx(j,{[x]:"",ref:S,children:t})});R.displayName=m;function y(c){const e=d(s+"CollectionConsumer",c);return r.useCallback(()=>{const t=e.collectionRef.current;if(!t)return[];const o=Array.from(t.querySelectorAll(`[${x}]`));return Array.from(e.itemMap.values()).sort((i,O)=>o.indexOf(i.ref.current)-o.indexOf(O.ref.current))},[e.collectionRef,e.itemMap])}return[{Provider:p,Slot:C,ItemSlot:R},y,A]}exports.createCollection=_;
2
2
  //# sourceMappingURL=index.cjs421.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs421.js","sources":["../node_modules/@radix-ui/react-roving-focus/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/roving-focus/src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId = null, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId,\n onChange: onCurrentTabStopIdChange\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n })\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["ENTRY_FOCUS","EVENT_OPTIONS","GROUP_NAME","Collection","useCollection","createCollectionScope","createCollection","createRovingFocusGroupContext","createRovingFocusGroupScope","createContextScope","RovingFocusProvider","useRovingFocusContext","RovingFocusGroup","React","props","forwardedRef","jsx","RovingFocusGroupImpl","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","preventScrollOnEntryFocus","groupProps","ref","composedRefs","useComposedRefs","direction","useDirection","currentTabStopId","setCurrentTabStopId","useControllableState","isTabbingBackOut","setIsTabbingBackOut","handleEntryFocus","useCallbackRef","getItems","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","node","tabStopId","prevCount","Primitive","composeEventHandlers","event","isKeyboardFocus","entryFocusEvent","items","item","activeItem","currentItem","candidateNodes","focusFirst","ITEM_NAME","RovingFocusGroupItem","focusable","active","itemProps","autoId","useId","id","context","isCurrentTabStop","onFocusableItemAdd","onFocusableItemRemove","focusIntent","getFocusIntent","currentIndex","wrapArray","MAP_KEY_TO_FOCUS_INTENT","getDirectionAwareKey","key","candidates","preventScroll","PREVIOUSLY_FOCUSED_ELEMENT","candidate","array","startIndex","_","index","Root","Item"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs421.js","sources":["../node_modules/@radix-ui/react-collection/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/collection/src/collection.tsx\nimport React from \"react\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createCollection(name) {\n const PROVIDER_NAME = name + \"CollectionProvider\";\n const [createCollectionContext, createCollectionScope] = createContextScope(PROVIDER_NAME);\n const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(\n PROVIDER_NAME,\n { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }\n );\n const CollectionProvider = (props) => {\n const { scope, children } = props;\n const ref = React.useRef(null);\n const itemMap = React.useRef(/* @__PURE__ */ new Map()).current;\n return /* @__PURE__ */ jsx(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });\n };\n CollectionProvider.displayName = PROVIDER_NAME;\n const COLLECTION_SLOT_NAME = name + \"CollectionSlot\";\n const CollectionSlotImpl = createSlot(COLLECTION_SLOT_NAME);\n const CollectionSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children } = props;\n const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);\n const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);\n return /* @__PURE__ */ jsx(CollectionSlotImpl, { ref: composedRefs, children });\n }\n );\n CollectionSlot.displayName = COLLECTION_SLOT_NAME;\n const ITEM_SLOT_NAME = name + \"CollectionItemSlot\";\n const ITEM_DATA_ATTR = \"data-radix-collection-item\";\n const CollectionItemSlotImpl = createSlot(ITEM_SLOT_NAME);\n const CollectionItemSlot = React.forwardRef(\n (props, forwardedRef) => {\n const { scope, children, ...itemData } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const context = useCollectionContext(ITEM_SLOT_NAME, scope);\n React.useEffect(() => {\n context.itemMap.set(ref, { ref, ...itemData });\n return () => void context.itemMap.delete(ref);\n });\n return /* @__PURE__ */ jsx(CollectionItemSlotImpl, { ...{ [ITEM_DATA_ATTR]: \"\" }, ref: composedRefs, children });\n }\n );\n CollectionItemSlot.displayName = ITEM_SLOT_NAME;\n function useCollection(scope) {\n const context = useCollectionContext(name + \"CollectionConsumer\", scope);\n const getItems = React.useCallback(() => {\n const collectionNode = context.collectionRef.current;\n if (!collectionNode) return [];\n const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n const items = Array.from(context.itemMap.values());\n const orderedItems = items.sort(\n (a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current)\n );\n return orderedItems;\n }, [context.collectionRef, context.itemMap]);\n return getItems;\n }\n return [\n { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },\n useCollection,\n createCollectionScope\n ];\n}\nexport {\n createCollection\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createCollection","name","PROVIDER_NAME","createCollectionContext","createCollectionScope","createContextScope","CollectionProviderImpl","useCollectionContext","CollectionProvider","props","scope","children","ref","React","itemMap","jsx","COLLECTION_SLOT_NAME","CollectionSlotImpl","createSlot","CollectionSlot","forwardedRef","context","composedRefs","useComposedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlotImpl","CollectionItemSlot","itemData","useCollection","collectionNode","orderedNodes","a","b"],"mappings":"qOAQA,SAASA,EAAiBC,EAAM,CAC9B,MAAMC,EAAgBD,EAAO,qBACvB,CAACE,EAAyBC,CAAqB,EAAIC,EAAAA,mBAAmBH,CAAa,EACnF,CAACI,EAAwBC,CAAoB,EAAIJ,EACrDD,EACA,CAAE,cAAe,CAAE,QAAS,IAAI,EAAI,QAAyB,IAAI,GAAK,CACvE,EACKM,EAAsBC,GAAU,CACpC,KAAM,CAAE,MAAAC,EAAO,SAAAC,CAAQ,EAAKF,EACtBG,EAAMC,EAAM,OAAO,IAAI,EACvBC,EAAUD,EAAM,OAAuB,IAAI,GAAK,EAAE,QACxD,OAAuBE,EAAG,kBAAA,IAACT,EAAwB,CAAE,MAAAI,EAAO,QAAAI,EAAS,cAAeF,EAAK,SAAAD,EAAU,CACpG,EACDH,EAAmB,YAAcN,EACjC,MAAMc,EAAuBf,EAAO,iBAC9BgB,EAAqBC,EAAU,WAACF,CAAoB,EACpDG,EAAiBN,EAAM,WAC3B,CAACJ,EAAOW,IAAiB,CACvB,KAAM,CAAE,MAAAV,EAAO,SAAAC,CAAQ,EAAKF,EACtBY,EAAUd,EAAqBS,EAAsBN,CAAK,EAC1DY,EAAeC,EAAe,gBAACH,EAAcC,EAAQ,aAAa,EACxE,OAAuBN,EAAAA,kBAAAA,IAAIE,EAAoB,CAAE,IAAKK,EAAc,SAAAX,CAAQ,CAAE,CACpF,CACG,EACDQ,EAAe,YAAcH,EAC7B,MAAMQ,EAAiBvB,EAAO,qBACxBwB,EAAiB,6BACjBC,EAAyBR,EAAU,WAACM,CAAc,EAClDG,EAAqBd,EAAM,WAC/B,CAACJ,EAAOW,IAAiB,CACvB,KAAM,CAAE,MAAAV,EAAO,SAAAC,EAAU,GAAGiB,CAAU,EAAGnB,EACnCG,EAAMC,EAAM,OAAO,IAAI,EACvBS,EAAeC,EAAAA,gBAAgBH,EAAcR,CAAG,EAChDS,EAAUd,EAAqBiB,EAAgBd,CAAK,EAC1D,OAAAG,EAAM,UAAU,KACdQ,EAAQ,QAAQ,IAAIT,EAAK,CAAE,IAAAA,EAAK,GAAGgB,EAAU,EACtC,IAAM,KAAKP,EAAQ,QAAQ,OAAOT,CAAG,EAC7C,EACsBG,wBAAIW,EAAwB,CAAO,CAACD,CAAc,EAAG,GAAM,IAAKH,EAAc,SAAAX,EAAU,CACrH,CACG,EACDgB,EAAmB,YAAcH,EACjC,SAASK,EAAcnB,EAAO,CAC5B,MAAMW,EAAUd,EAAqBN,EAAO,qBAAsBS,CAAK,EAWvE,OAViBG,EAAM,YAAY,IAAM,CACvC,MAAMiB,EAAiBT,EAAQ,cAAc,QAC7C,GAAI,CAACS,EAAgB,MAAO,CAAE,EAC9B,MAAMC,EAAe,MAAM,KAAKD,EAAe,iBAAiB,IAAIL,CAAc,GAAG,CAAC,EAKtF,OAJc,MAAM,KAAKJ,EAAQ,QAAQ,QAAQ,EACtB,KACzB,CAACW,EAAGC,IAAMF,EAAa,QAAQC,EAAE,IAAI,OAAO,EAAID,EAAa,QAAQE,EAAE,IAAI,OAAO,CACnF,CAEF,EAAE,CAACZ,EAAQ,cAAeA,EAAQ,OAAO,CAAC,CAE/C,CACE,MAAO,CACL,CAAE,SAAUb,EAAoB,KAAMW,EAAgB,SAAUQ,CAAoB,EACpFE,EACAzB,CACD,CACH","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react");function u(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const a=u(r);var n=globalThis!=null&&globalThis.document?a.useLayoutEffect:()=>{};exports.useLayoutEffect=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react");require("./index.cjs212.js");function i(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const o=i(c);var u=o.createContext(void 0);function a(e){const t=o.useContext(u);return e||t||"ltr"}exports.useDirection=a;
2
2
  //# sourceMappingURL=index.cjs422.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs422.js","sources":["../node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs"],"sourcesContent":["// packages/react/use-layout-effect/src/use-layout-effect.tsx\nimport * as React from \"react\";\nvar useLayoutEffect2 = globalThis?.document ? React.useLayoutEffect : () => {\n};\nexport {\n useLayoutEffect2 as useLayoutEffect\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useLayoutEffect2","React"],"mappings":"mYAEG,IAACA,EAAmB,6BAAY,SAAWC,EAAM,gBAAkB,IAAM,CAC5E","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs422.js","sources":["../node_modules/@radix-ui/react-direction/dist/index.mjs"],"sourcesContent":["// packages/react/direction/src/direction.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DirectionContext = React.createContext(void 0);\nvar DirectionProvider = (props) => {\n const { dir, children } = props;\n return /* @__PURE__ */ jsx(DirectionContext.Provider, { value: dir, children });\n};\nfunction useDirection(localDir) {\n const globalDir = React.useContext(DirectionContext);\n return localDir || globalDir || \"ltr\";\n}\nvar Provider = DirectionProvider;\nexport {\n DirectionProvider,\n Provider,\n useDirection\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["DirectionContext","React","useDirection","localDir","globalDir"],"mappings":"gaAGA,IAAIA,EAAmBC,EAAM,cAAc,MAAM,EAKjD,SAASC,EAAaC,EAAU,CAC9B,MAAMC,EAAYH,EAAM,WAAWD,CAAgB,EACnD,OAAOG,GAAYC,GAAa,KAClC","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Pe=require("react"),l=require("./index.cjs431.js"),ye=require("./index.cjs432.js"),Z=require("./index.cjs386.js"),Ae=require("./index.cjs387.js"),G=require("./index.cjs389.js"),ve=require("./index.cjs420.js"),L=require("./index.cjs425.js"),Ce=require("./index.cjs397.js"),u=require("./index.cjs212.js"),be=require("./index.cjs433.js");function Re(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const s=Re(Pe);var _="Popper",[J,Oe]=Ae.createContextScope(_),[Se,K]=J(_),$=e=>{const{__scopePopper:o,children:t}=e,[r,a]=s.useState(null);return u.jsxRuntimeExports.jsx(Se,{scope:o,anchor:r,onAnchorChange:a,children:t})};$.displayName=_;var Q="PopperAnchor",N=s.forwardRef((e,o)=>{const{__scopePopper:t,virtualRef:r,...a}=e,n=K(Q,t),i=s.useRef(null),w=Z.useComposedRefs(o,i);return s.useEffect(()=>{n.onAnchorChange((r==null?void 0:r.current)||i.current)}),r?null:u.jsxRuntimeExports.jsx(G.Primitive.div,{...a,ref:w})});N.displayName=Q;var q="PopperContent",[je,Ee]=J(q),H=s.forwardRef((e,o)=>{var T,X,k,F,z,B;const{__scopePopper:t,side:r="bottom",sideOffset:a=0,align:n="center",alignOffset:i=0,arrowPadding:w=0,avoidCollisions:c=!0,collisionBoundary:p=[],collisionPadding:P=0,sticky:x="partial",hideWhenDetached:A=!1,updatePositionStrategy:v="optimized",onPlaced:f,...d}=e,C=K(q,t),[m,b]=s.useState(null),te=Z.useComposedRefs(o,y=>b(y)),[E,re]=s.useState(null),h=Ce.useSize(E),oe=(h==null?void 0:h.width)??0,M=(h==null?void 0:h.height)??0,ne=r+(n!=="center"?"-"+n:""),ie=typeof P=="number"?P:{top:0,right:0,bottom:0,left:0,...P},W=Array.isArray(p)?p:[p],ae=W.length>0,R={padding:ie,boundary:W.filter($e),altBoundary:ae},{refs:se,floatingStyles:I,placement:ce,isPositioned:O,middlewareData:g}=l.useFloating({strategy:"fixed",placement:ne,whileElementsMounted:(...y)=>be.autoUpdate(...y,{animationFrame:v==="always"}),elements:{reference:C.anchor},middleware:[l.offset({mainAxis:a+M,alignmentAxis:i}),c&&l.shift({mainAxis:!0,crossAxis:!1,limiter:x==="partial"?l.limitShift():void 0,...R}),c&&l.flip({...R}),l.size({...R,apply:({elements:y,rects:U,availableWidth:me,availableHeight:he})=>{const{width:ge,height:we}=U.reference,j=y.floating.style;j.setProperty("--radix-popper-available-width",`${me}px`),j.setProperty("--radix-popper-available-height",`${he}px`),j.setProperty("--radix-popper-anchor-width",`${ge}px`),j.setProperty("--radix-popper-anchor-height",`${we}px`)}}),E&&l.arrow({element:E,padding:w}),Ne({arrowWidth:oe,arrowHeight:M}),A&&l.hide({strategy:"referenceHidden",...R})]}),[Y,pe]=ee(ce),S=ve.useCallbackRef(f);L.useLayoutEffect(()=>{O&&(S==null||S())},[O,S]);const de=(T=g.arrow)==null?void 0:T.x,le=(X=g.arrow)==null?void 0:X.y,fe=((k=g.arrow)==null?void 0:k.centerOffset)!==0,[ue,xe]=s.useState();return L.useLayoutEffect(()=>{m&&xe(window.getComputedStyle(m).zIndex)},[m]),u.jsxRuntimeExports.jsx("div",{ref:se.setFloating,"data-radix-popper-content-wrapper":"",style:{...I,transform:O?I.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ue,"--radix-popper-transform-origin":[(F=g.transformOrigin)==null?void 0:F.x,(z=g.transformOrigin)==null?void 0:z.y].join(" "),...((B=g.hide)==null?void 0:B.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:u.jsxRuntimeExports.jsx(je,{scope:t,placedSide:Y,onArrowChange:re,arrowX:de,arrowY:le,shouldHideArrow:fe,children:u.jsxRuntimeExports.jsx(G.Primitive.div,{"data-side":Y,"data-align":pe,...d,ref:te,style:{...d.style,animation:O?void 0:"none"}})})})});H.displayName=q;var V="PopperArrow",_e={top:"bottom",right:"left",bottom:"top",left:"right"},D=s.forwardRef(function(o,t){const{__scopePopper:r,...a}=o,n=Ee(V,r),i=_e[n.placedSide];return u.jsxRuntimeExports.jsx("span",{ref:n.onArrowChange,style:{position:"absolute",left:n.arrowX,top:n.arrowY,[i]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[n.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[n.placedSide],visibility:n.shouldHideArrow?"hidden":void 0},children:u.jsxRuntimeExports.jsx(ye.Root,{...a,ref:t,style:{...a.style,display:"block"}})})});D.displayName=V;function $e(e){return e!==null}var Ne=e=>({name:"transformOrigin",options:e,fn(o){var C,m,b;const{placement:t,rects:r,middlewareData:a}=o,i=((C=a.arrow)==null?void 0:C.centerOffset)!==0,w=i?0:e.arrowWidth,c=i?0:e.arrowHeight,[p,P]=ee(t),x={start:"0%",center:"50%",end:"100%"}[P],A=(((m=a.arrow)==null?void 0:m.x)??0)+w/2,v=(((b=a.arrow)==null?void 0:b.y)??0)+c/2;let f="",d="";return p==="bottom"?(f=i?x:`${A}px`,d=`${-c}px`):p==="top"?(f=i?x:`${A}px`,d=`${r.floating.height+c}px`):p==="right"?(f=`${-c}px`,d=i?x:`${v}px`):p==="left"&&(f=`${r.floating.width+c}px`,d=i?x:`${v}px`),{data:{x:f,y:d}}}});function ee(e){const[o,t="center"]=e.split("-");return[o,t]}var qe=$,He=N,De=H,Me=D;exports.Anchor=He;exports.Arrow=Me;exports.Content=De;exports.Popper=$;exports.PopperAnchor=N;exports.PopperArrow=D;exports.PopperContent=H;exports.Root=qe;exports.createPopperScope=Oe;
2
+ //# sourceMappingURL=index.cjs423.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs423.js","sources":["../node_modules/@radix-ui/react-popper/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/popper/src/popper.tsx\nimport * as React from \"react\";\nimport {\n useFloating,\n autoUpdate,\n offset,\n shift,\n limitShift,\n hide,\n arrow as floatingUIarrow,\n flip,\n size\n} from \"@floating-ui/react-dom\";\nimport * as ArrowPrimitive from \"@radix-ui/react-arrow\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { useSize } from \"@radix-ui/react-use-size\";\nimport { jsx } from \"react/jsx-runtime\";\nvar SIDE_OPTIONS = [\"top\", \"right\", \"bottom\", \"left\"];\nvar ALIGN_OPTIONS = [\"start\", \"center\", \"end\"];\nvar POPPER_NAME = \"Popper\";\nvar [createPopperContext, createPopperScope] = createContextScope(POPPER_NAME);\nvar [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);\nvar Popper = (props) => {\n const { __scopePopper, children } = props;\n const [anchor, setAnchor] = React.useState(null);\n return /* @__PURE__ */ jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });\n};\nPopper.displayName = POPPER_NAME;\nvar ANCHOR_NAME = \"PopperAnchor\";\nvar PopperAnchor = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopePopper, virtualRef, ...anchorProps } = props;\n const context = usePopperContext(ANCHOR_NAME, __scopePopper);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n context.onAnchorChange(virtualRef?.current || ref.current);\n });\n return virtualRef ? null : /* @__PURE__ */ jsx(Primitive.div, { ...anchorProps, ref: composedRefs });\n }\n);\nPopperAnchor.displayName = ANCHOR_NAME;\nvar CONTENT_NAME = \"PopperContent\";\nvar [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME);\nvar PopperContent = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopePopper,\n side = \"bottom\",\n sideOffset = 0,\n align = \"center\",\n alignOffset = 0,\n arrowPadding = 0,\n avoidCollisions = true,\n collisionBoundary = [],\n collisionPadding: collisionPaddingProp = 0,\n sticky = \"partial\",\n hideWhenDetached = false,\n updatePositionStrategy = \"optimized\",\n onPlaced,\n ...contentProps\n } = props;\n const context = usePopperContext(CONTENT_NAME, __scopePopper);\n const [content, setContent] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const [arrow, setArrow] = React.useState(null);\n const arrowSize = useSize(arrow);\n const arrowWidth = arrowSize?.width ?? 0;\n const arrowHeight = arrowSize?.height ?? 0;\n const desiredPlacement = side + (align !== \"center\" ? \"-\" + align : \"\");\n const collisionPadding = typeof collisionPaddingProp === \"number\" ? collisionPaddingProp : { top: 0, right: 0, bottom: 0, left: 0, ...collisionPaddingProp };\n const boundary = Array.isArray(collisionBoundary) ? collisionBoundary : [collisionBoundary];\n const hasExplicitBoundaries = boundary.length > 0;\n const detectOverflowOptions = {\n padding: collisionPadding,\n boundary: boundary.filter(isNotNull),\n // with `strategy: 'fixed'`, this is the only way to get it to respect boundaries\n altBoundary: hasExplicitBoundaries\n };\n const { refs, floatingStyles, placement, isPositioned, middlewareData } = useFloating({\n // default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues\n strategy: \"fixed\",\n placement: desiredPlacement,\n whileElementsMounted: (...args) => {\n const cleanup = autoUpdate(...args, {\n animationFrame: updatePositionStrategy === \"always\"\n });\n return cleanup;\n },\n elements: {\n reference: context.anchor\n },\n middleware: [\n offset({ mainAxis: sideOffset + arrowHeight, alignmentAxis: alignOffset }),\n avoidCollisions && shift({\n mainAxis: true,\n crossAxis: false,\n limiter: sticky === \"partial\" ? limitShift() : void 0,\n ...detectOverflowOptions\n }),\n avoidCollisions && flip({ ...detectOverflowOptions }),\n size({\n ...detectOverflowOptions,\n apply: ({ elements, rects, availableWidth, availableHeight }) => {\n const { width: anchorWidth, height: anchorHeight } = rects.reference;\n const contentStyle = elements.floating.style;\n contentStyle.setProperty(\"--radix-popper-available-width\", `${availableWidth}px`);\n contentStyle.setProperty(\"--radix-popper-available-height\", `${availableHeight}px`);\n contentStyle.setProperty(\"--radix-popper-anchor-width\", `${anchorWidth}px`);\n contentStyle.setProperty(\"--radix-popper-anchor-height\", `${anchorHeight}px`);\n }\n }),\n arrow && floatingUIarrow({ element: arrow, padding: arrowPadding }),\n transformOrigin({ arrowWidth, arrowHeight }),\n hideWhenDetached && hide({ strategy: \"referenceHidden\", ...detectOverflowOptions })\n ]\n });\n const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);\n const handlePlaced = useCallbackRef(onPlaced);\n useLayoutEffect(() => {\n if (isPositioned) {\n handlePlaced?.();\n }\n }, [isPositioned, handlePlaced]);\n const arrowX = middlewareData.arrow?.x;\n const arrowY = middlewareData.arrow?.y;\n const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;\n const [contentZIndex, setContentZIndex] = React.useState();\n useLayoutEffect(() => {\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [content]);\n return /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: refs.setFloating,\n \"data-radix-popper-content-wrapper\": \"\",\n style: {\n ...floatingStyles,\n transform: isPositioned ? floatingStyles.transform : \"translate(0, -200%)\",\n // keep off the page when measuring\n minWidth: \"max-content\",\n zIndex: contentZIndex,\n [\"--radix-popper-transform-origin\"]: [\n middlewareData.transformOrigin?.x,\n middlewareData.transformOrigin?.y\n ].join(\" \"),\n // hide the content if using the hide middleware and should be hidden\n // set visibility to hidden and disable pointer events so the UI behaves\n // as if the PopperContent isn't there at all\n ...middlewareData.hide?.referenceHidden && {\n visibility: \"hidden\",\n pointerEvents: \"none\"\n }\n },\n dir: props.dir,\n children: /* @__PURE__ */ jsx(\n PopperContentProvider,\n {\n scope: __scopePopper,\n placedSide,\n onArrowChange: setArrow,\n arrowX,\n arrowY,\n shouldHideArrow: cannotCenterArrow,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-side\": placedSide,\n \"data-align\": placedAlign,\n ...contentProps,\n ref: composedRefs,\n style: {\n ...contentProps.style,\n // if the PopperContent hasn't been placed yet (not all measurements done)\n // we prevent animations so that users's animation don't kick in too early referring wrong sides\n animation: !isPositioned ? \"none\" : void 0\n }\n }\n )\n }\n )\n }\n );\n }\n);\nPopperContent.displayName = CONTENT_NAME;\nvar ARROW_NAME = \"PopperArrow\";\nvar OPPOSITE_SIDE = {\n top: \"bottom\",\n right: \"left\",\n bottom: \"top\",\n left: \"right\"\n};\nvar PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {\n const { __scopePopper, ...arrowProps } = props;\n const contentContext = useContentContext(ARROW_NAME, __scopePopper);\n const baseSide = OPPOSITE_SIDE[contentContext.placedSide];\n return (\n // we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)\n // doesn't report size as we'd expect on SVG elements.\n // it reports their bounding box which is effectively the largest path inside the SVG.\n /* @__PURE__ */ jsx(\n \"span\",\n {\n ref: contentContext.onArrowChange,\n style: {\n position: \"absolute\",\n left: contentContext.arrowX,\n top: contentContext.arrowY,\n [baseSide]: 0,\n transformOrigin: {\n top: \"\",\n right: \"0 0\",\n bottom: \"center 0\",\n left: \"100% 0\"\n }[contentContext.placedSide],\n transform: {\n top: \"translateY(100%)\",\n right: \"translateY(50%) rotate(90deg) translateX(-50%)\",\n bottom: `rotate(180deg)`,\n left: \"translateY(50%) rotate(-90deg) translateX(50%)\"\n }[contentContext.placedSide],\n visibility: contentContext.shouldHideArrow ? \"hidden\" : void 0\n },\n children: /* @__PURE__ */ jsx(\n ArrowPrimitive.Root,\n {\n ...arrowProps,\n ref: forwardedRef,\n style: {\n ...arrowProps.style,\n // ensures the element can be measured correctly (mostly for if SVG)\n display: \"block\"\n }\n }\n )\n }\n )\n );\n});\nPopperArrow.displayName = ARROW_NAME;\nfunction isNotNull(value) {\n return value !== null;\n}\nvar transformOrigin = (options) => ({\n name: \"transformOrigin\",\n options,\n fn(data) {\n const { placement, rects, middlewareData } = data;\n const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;\n const isArrowHidden = cannotCenterArrow;\n const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;\n const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;\n const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);\n const noArrowAlign = { start: \"0%\", center: \"50%\", end: \"100%\" }[placedAlign];\n const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;\n const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;\n let x = \"\";\n let y = \"\";\n if (placedSide === \"bottom\") {\n x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;\n y = `${-arrowHeight}px`;\n } else if (placedSide === \"top\") {\n x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;\n y = `${rects.floating.height + arrowHeight}px`;\n } else if (placedSide === \"right\") {\n x = `${-arrowHeight}px`;\n y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;\n } else if (placedSide === \"left\") {\n x = `${rects.floating.width + arrowHeight}px`;\n y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;\n }\n return { data: { x, y } };\n }\n});\nfunction getSideAndAlignFromPlacement(placement) {\n const [side, align = \"center\"] = placement.split(\"-\");\n return [side, align];\n}\nvar Root2 = Popper;\nvar Anchor = PopperAnchor;\nvar Content = PopperContent;\nvar Arrow = PopperArrow;\nexport {\n ALIGN_OPTIONS,\n Anchor,\n Arrow,\n Content,\n Popper,\n PopperAnchor,\n PopperArrow,\n PopperContent,\n Root2 as Root,\n SIDE_OPTIONS,\n createPopperScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["POPPER_NAME","createPopperContext","createPopperScope","createContextScope","PopperProvider","usePopperContext","Popper","props","__scopePopper","children","anchor","setAnchor","React","jsx","ANCHOR_NAME","PopperAnchor","forwardedRef","virtualRef","anchorProps","context","ref","composedRefs","useComposedRefs","Primitive","CONTENT_NAME","PopperContentProvider","useContentContext","PopperContent","side","sideOffset","align","alignOffset","arrowPadding","avoidCollisions","collisionBoundary","collisionPaddingProp","sticky","hideWhenDetached","updatePositionStrategy","onPlaced","contentProps","content","setContent","node","arrow","setArrow","arrowSize","useSize","arrowWidth","arrowHeight","desiredPlacement","collisionPadding","boundary","hasExplicitBoundaries","detectOverflowOptions","isNotNull","refs","floatingStyles","placement","isPositioned","middlewareData","useFloating","args","autoUpdate","offset","shift","limitShift","flip","size","elements","rects","availableWidth","availableHeight","anchorWidth","anchorHeight","contentStyle","floatingUIarrow","transformOrigin","hide","placedSide","placedAlign","getSideAndAlignFromPlacement","handlePlaced","useCallbackRef","useLayoutEffect","arrowX","_a","arrowY","_b","cannotCenterArrow","_c","contentZIndex","setContentZIndex","_d","_e","_f","ARROW_NAME","OPPOSITE_SIDE","PopperArrow","arrowProps","contentContext","baseSide","ArrowPrimitive.Root","value","options","data","isArrowHidden","noArrowAlign","arrowXCenter","arrowYCenter","x","y","Root2","Anchor","Content","Arrow"],"mappings":"ksBAyBA,IAAIA,EAAc,SACd,CAACC,EAAqBC,EAAiB,EAAIC,GAAAA,mBAAmBH,CAAW,EACzE,CAACI,GAAgBC,CAAgB,EAAIJ,EAAoBD,CAAW,EACpEM,EAAUC,GAAU,CACtB,KAAM,CAAE,cAAAC,EAAe,SAAAC,CAAQ,EAAKF,EAC9B,CAACG,EAAQC,CAAS,EAAIC,EAAM,SAAS,IAAI,EAC/C,OAAuBC,EAAG,kBAAA,IAACT,GAAgB,CAAE,MAAOI,EAAe,OAAAE,EAAQ,eAAgBC,EAAW,SAAAF,EAAU,CAClH,EACAH,EAAO,YAAcN,EACrB,IAAIc,EAAc,eACdC,EAAeH,EAAM,WACvB,CAACL,EAAOS,IAAiB,CACvB,KAAM,CAAE,cAAAR,EAAe,WAAAS,EAAY,GAAGC,CAAa,EAAGX,EAChDY,EAAUd,EAAiBS,EAAaN,CAAa,EACrDY,EAAMR,EAAM,OAAO,IAAI,EACvBS,EAAeC,EAAAA,gBAAgBN,EAAcI,CAAG,EACtDR,OAAAA,EAAM,UAAU,IAAM,CACpBO,EAAQ,gBAAeF,GAAA,YAAAA,EAAY,UAAWG,EAAI,OAAO,CAC/D,CAAK,EACMH,EAAa,KAAuBJ,EAAAA,kBAAAA,IAAIU,EAAS,UAAC,IAAK,CAAE,GAAGL,EAAa,IAAKG,EAAc,CACvG,CACA,EACAN,EAAa,YAAcD,EAC3B,IAAIU,EAAe,gBACf,CAACC,GAAuBC,EAAiB,EAAIzB,EAAoBuB,CAAY,EAC7EG,EAAgBf,EAAM,WACxB,CAACL,EAAOS,IAAiB,iBACvB,KAAM,CACJ,cAAAR,EACA,KAAAoB,EAAO,SACP,WAAAC,EAAa,EACb,MAAAC,EAAQ,SACR,YAAAC,EAAc,EACd,aAAAC,EAAe,EACf,gBAAAC,EAAkB,GAClB,kBAAAC,EAAoB,CAAE,EACtB,iBAAkBC,EAAuB,EACzC,OAAAC,EAAS,UACT,iBAAAC,EAAmB,GACnB,uBAAAC,EAAyB,YACzB,SAAAC,EACA,GAAGC,CACT,EAAQjC,EACEY,EAAUd,EAAiBmB,EAAchB,CAAa,EACtD,CAACiC,EAASC,CAAU,EAAI9B,EAAM,SAAS,IAAI,EAC3CS,GAAeC,EAAAA,gBAAgBN,EAAe2B,GAASD,EAAWC,CAAI,CAAC,EACvE,CAACC,EAAOC,EAAQ,EAAIjC,EAAM,SAAS,IAAI,EACvCkC,EAAYC,GAAO,QAACH,CAAK,EACzBI,IAAaF,GAAA,YAAAA,EAAW,QAAS,EACjCG,GAAcH,GAAA,YAAAA,EAAW,SAAU,EACnCI,GAAmBtB,GAAQE,IAAU,SAAW,IAAMA,EAAQ,IAC9DqB,GAAmB,OAAOhB,GAAyB,SAAWA,EAAuB,CAAE,IAAK,EAAG,MAAO,EAAG,OAAQ,EAAG,KAAM,EAAG,GAAGA,CAAsB,EACtJiB,EAAW,MAAM,QAAQlB,CAAiB,EAAIA,EAAoB,CAACA,CAAiB,EACpFmB,GAAwBD,EAAS,OAAS,EAC1CE,EAAwB,CAC5B,QAASH,GACT,SAAUC,EAAS,OAAOG,EAAS,EAEnC,YAAaF,EACd,EACK,CAAE,KAAAG,GAAM,eAAAC,EAAgB,UAAAC,GAAW,aAAAC,EAAc,eAAAC,CAAgB,EAAGC,cAAY,CAEpF,SAAU,QACV,UAAWX,GACX,qBAAsB,IAAIY,IACRC,cAAW,GAAGD,EAAM,CAClC,eAAgBxB,IAA2B,QACrD,CAAS,EAGH,SAAU,CACR,UAAWnB,EAAQ,MACpB,EACD,WAAY,CACV6C,EAAM,OAAC,CAAE,SAAUnC,EAAaoB,EAAa,cAAelB,EAAa,EACzEE,GAAmBgC,EAAAA,MAAM,CACvB,SAAU,GACV,UAAW,GACX,QAAS7B,IAAW,UAAY8B,EAAAA,WAAY,EAAG,OAC/C,GAAGZ,CACb,CAAS,EACDrB,GAAmBkC,EAAI,KAAC,CAAE,GAAGb,EAAuB,EACpDc,OAAK,CACH,GAAGd,EACH,MAAO,CAAC,CAAE,SAAAe,EAAU,MAAAC,EAAO,eAAAC,GAAgB,gBAAAC,EAAe,IAAO,CAC/D,KAAM,CAAE,MAAOC,GAAa,OAAQC,EAAY,EAAKJ,EAAM,UACrDK,EAAeN,EAAS,SAAS,MACvCM,EAAa,YAAY,iCAAkC,GAAGJ,EAAc,IAAI,EAChFI,EAAa,YAAY,kCAAmC,GAAGH,EAAe,IAAI,EAClFG,EAAa,YAAY,8BAA+B,GAAGF,EAAW,IAAI,EAC1EE,EAAa,YAAY,+BAAgC,GAAGD,EAAY,IAAI,CACxF,CACA,CAAS,EACD9B,GAASgC,EAAe,MAAC,CAAE,QAAShC,EAAO,QAASZ,EAAc,EAClE6C,GAAgB,CAAE,WAAA7B,GAAY,YAAAC,EAAa,EAC3CZ,GAAoByC,EAAAA,KAAK,CAAE,SAAU,kBAAmB,GAAGxB,CAAuB,CAAA,CAC1F,CACA,CAAK,EACK,CAACyB,EAAYC,EAAW,EAAIC,GAA6BvB,EAAS,EAClEwB,EAAeC,GAAc,eAAC5C,CAAQ,EAC5C6C,EAAAA,gBAAgB,IAAM,CAChBzB,IACFuB,GAAA,MAAAA,IAER,EAAO,CAACvB,EAAcuB,CAAY,CAAC,EAC/B,MAAMG,IAASC,EAAA1B,EAAe,QAAf,YAAA0B,EAAsB,EAC/BC,IAASC,EAAA5B,EAAe,QAAf,YAAA4B,EAAsB,EAC/BC,KAAoBC,EAAA9B,EAAe,QAAf,YAAA8B,EAAsB,gBAAiB,EAC3D,CAACC,GAAeC,EAAgB,EAAIhF,EAAM,SAAU,EAC1DwE,OAAAA,EAAAA,gBAAgB,IAAM,CAChB3C,GAASmD,GAAiB,OAAO,iBAAiBnD,CAAO,EAAE,MAAM,CAC3E,EAAO,CAACA,CAAO,CAAC,EACW5B,EAAG,kBAAA,IACxB,MACA,CACE,IAAK2C,GAAK,YACV,oCAAqC,GACrC,MAAO,CACL,GAAGC,EACH,UAAWE,EAAeF,EAAe,UAAY,sBAErD,SAAU,cACV,OAAQkC,GACP,kCAAoC,EACnCE,EAAAjC,EAAe,kBAAf,YAAAiC,EAAgC,GAChCC,EAAAlC,EAAe,kBAAf,YAAAkC,EAAgC,CAC5C,EAAY,KAAK,GAAG,EAIV,KAAGC,EAAAnC,EAAe,OAAf,YAAAmC,EAAqB,kBAAmB,CACzC,WAAY,SACZ,cAAe,MAC3B,CACS,EACD,IAAKxF,EAAM,IACX,SAA0BM,EAAG,kBAAA,IAC3BY,GACA,CACE,MAAOjB,EACP,WAAAuE,EACA,cAAelC,GACf,OAAAwC,GACA,OAAAE,GACA,gBAAiBE,GACjB,SAA0B5E,EAAG,kBAAA,IAC3BU,EAAAA,UAAU,IACV,CACE,YAAawD,EACb,aAAcC,GACd,GAAGxC,EACH,IAAKnB,GACL,MAAO,CACL,GAAGmB,EAAa,MAGhB,UAAYmB,EAAwB,OAAT,MAC7C,CACA,CACA,CACA,CACA,CACA,CACK,CACL,CACA,EACAhC,EAAc,YAAcH,EAC5B,IAAIwE,EAAa,cACbC,GAAgB,CAClB,IAAK,SACL,MAAO,OACP,OAAQ,MACR,KAAM,OACR,EACIC,EAActF,EAAM,WAAW,SAAsBL,EAAOS,EAAc,CAC5E,KAAM,CAAE,cAAAR,EAAe,GAAG2F,CAAU,EAAK5F,EACnC6F,EAAiB1E,GAAkBsE,EAAYxF,CAAa,EAC5D6F,EAAWJ,GAAcG,EAAe,UAAU,EACxD,OAIkBvF,EAAG,kBAAA,IACjB,OACA,CACE,IAAKuF,EAAe,cACpB,MAAO,CACL,SAAU,WACV,KAAMA,EAAe,OACrB,IAAKA,EAAe,OACpB,CAACC,CAAQ,EAAG,EACZ,gBAAiB,CACf,IAAK,GACL,MAAO,MACP,OAAQ,WACR,KAAM,QAClB,EAAYD,EAAe,UAAU,EAC3B,UAAW,CACT,IAAK,mBACL,MAAO,iDACP,OAAQ,iBACR,KAAM,gDAClB,EAAYA,EAAe,UAAU,EAC3B,WAAYA,EAAe,gBAAkB,SAAW,MACzD,EACD,SAA0BvF,EAAG,kBAAA,IAC3ByF,GAAmB,KACnB,CACE,GAAGH,EACH,IAAKnF,EACL,MAAO,CACL,GAAGmF,EAAW,MAEd,QAAS,OACvB,CACA,CACA,CACA,CACA,CAEA,CAAC,EACDD,EAAY,YAAcF,EAC1B,SAASzC,GAAUgD,EAAO,CACxB,OAAOA,IAAU,IACnB,CACA,IAAI1B,GAAmB2B,IAAa,CAClC,KAAM,kBACN,QAAAA,EACA,GAAGC,EAAM,WACP,KAAM,CAAE,UAAA/C,EAAW,MAAAY,EAAO,eAAAV,CAAgB,EAAG6C,EAEvCC,IADoBpB,EAAA1B,EAAe,QAAf,YAAA0B,EAAsB,gBAAiB,EAE3DtC,EAAa0D,EAAgB,EAAIF,EAAQ,WACzCvD,EAAcyD,EAAgB,EAAIF,EAAQ,YAC1C,CAACzB,EAAYC,CAAW,EAAIC,GAA6BvB,CAAS,EAClEiD,EAAe,CAAE,MAAO,KAAM,OAAQ,MAAO,IAAK,MAAQ,EAAC3B,CAAW,EACtE4B,KAAgBpB,EAAA5B,EAAe,QAAf,YAAA4B,EAAsB,IAAK,GAAKxC,EAAa,EAC7D6D,KAAgBnB,EAAA9B,EAAe,QAAf,YAAA8B,EAAsB,IAAK,GAAKzC,EAAc,EACpE,IAAI6D,EAAI,GACJC,EAAI,GACR,OAAIhC,IAAe,UACjB+B,EAAIJ,EAAgBC,EAAe,GAAGC,CAAY,KAClDG,EAAI,GAAG,CAAC9D,CAAW,MACV8B,IAAe,OACxB+B,EAAIJ,EAAgBC,EAAe,GAAGC,CAAY,KAClDG,EAAI,GAAGzC,EAAM,SAAS,OAASrB,CAAW,MACjC8B,IAAe,SACxB+B,EAAI,GAAG,CAAC7D,CAAW,KACnB8D,EAAIL,EAAgBC,EAAe,GAAGE,CAAY,MACzC9B,IAAe,SACxB+B,EAAI,GAAGxC,EAAM,SAAS,MAAQrB,CAAW,KACzC8D,EAAIL,EAAgBC,EAAe,GAAGE,CAAY,MAE7C,CAAE,KAAM,CAAE,EAAAC,EAAG,EAAAC,CAAC,CAAI,CAC7B,CACA,GACA,SAAS9B,GAA6BvB,EAAW,CAC/C,KAAM,CAAC9B,EAAME,EAAQ,QAAQ,EAAI4B,EAAU,MAAM,GAAG,EACpD,MAAO,CAAC9B,EAAME,CAAK,CACrB,CACG,IAACkF,GAAQ1G,EACR2G,GAASlG,EACTmG,GAAUvF,EACVwF,GAAQjB","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const H=require("react"),m=require("./index.cjs385.js"),B=require("./index.cjs421.js"),Y=require("./index.cjs386.js"),z=require("./index.cjs387.js"),V=require("./index.cjs391.js"),D=require("./index.cjs389.js"),J=require("./index.cjs420.js"),Q=require("./index.cjs388.js"),W=require("./index.cjs422.js"),f=require("./index.cjs212.js");function X(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const t=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,t.get?t:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const c=X(H);var _="rovingFocusGroup.onEntryFocus",Z={bubbles:!1,cancelable:!0},g="RovingFocusGroup",[j,G,ee]=B.createCollection(g),[te,oe]=z.createContextScope(g,[ee]),[re,ne]=te(g),A=c.forwardRef((e,o)=>f.jsxRuntimeExports.jsx(j.Provider,{scope:e.__scopeRovingFocusGroup,children:f.jsxRuntimeExports.jsx(j.Slot,{scope:e.__scopeRovingFocusGroup,children:f.jsxRuntimeExports.jsx(se,{...e,ref:o})})}));A.displayName=g;var se=c.forwardRef((e,o)=>{const{__scopeRovingFocusGroup:r,orientation:t,loop:R=!1,dir:I,currentTabStopId:x,defaultCurrentTabStopId:F,onCurrentTabStopIdChange:p,onEntryFocus:u,preventScrollOnEntryFocus:E=!1,...S}=e,v=c.useRef(null),b=Y.useComposedRefs(o,v),n=W.useDirection(I),[l=null,w]=Q.useControllableState({prop:x,defaultProp:F,onChange:p}),[i,a]=c.useState(!1),T=J.useCallbackRef(u),M=G(r),C=c.useRef(!1),[K,O]=c.useState(0);return c.useEffect(()=>{const s=v.current;if(s)return s.addEventListener(_,T),()=>s.removeEventListener(_,T)},[T]),f.jsxRuntimeExports.jsx(re,{scope:r,orientation:t,dir:n,loop:R,currentTabStopId:l,onItemFocus:c.useCallback(s=>w(s),[w]),onItemShiftTab:c.useCallback(()=>a(!0),[]),onFocusableItemAdd:c.useCallback(()=>O(s=>s+1),[]),onFocusableItemRemove:c.useCallback(()=>O(s=>s-1),[]),children:f.jsxRuntimeExports.jsx(D.Primitive.div,{tabIndex:i||K===0?-1:0,"data-orientation":t,...S,ref:b,style:{outline:"none",...e.style},onMouseDown:m.composeEventHandlers(e.onMouseDown,()=>{C.current=!0}),onFocus:m.composeEventHandlers(e.onFocus,s=>{const k=!C.current;if(s.target===s.currentTarget&&k&&!i){const P=new CustomEvent(_,Z);if(s.currentTarget.dispatchEvent(P),!P.defaultPrevented){const y=M().filter(d=>d.focusable),L=y.find(d=>d.active),U=y.find(d=>d.id===l),$=[L,U,...y].filter(Boolean).map(d=>d.ref.current);q($,E)}}C.current=!1}),onBlur:m.composeEventHandlers(e.onBlur,()=>a(!1))})})}),N="RovingFocusGroupItem",h=c.forwardRef((e,o)=>{const{__scopeRovingFocusGroup:r,focusable:t=!0,active:R=!1,tabStopId:I,...x}=e,F=V.useId(),p=I||F,u=ne(N,r),E=u.currentTabStopId===p,S=G(r),{onFocusableItemAdd:v,onFocusableItemRemove:b}=u;return c.useEffect(()=>{if(t)return v(),()=>b()},[t,v,b]),f.jsxRuntimeExports.jsx(j.ItemSlot,{scope:r,id:p,focusable:t,active:R,children:f.jsxRuntimeExports.jsx(D.Primitive.span,{tabIndex:E?0:-1,"data-orientation":u.orientation,...x,ref:o,onMouseDown:m.composeEventHandlers(e.onMouseDown,n=>{t?u.onItemFocus(p):n.preventDefault()}),onFocus:m.composeEventHandlers(e.onFocus,()=>u.onItemFocus(p)),onKeyDown:m.composeEventHandlers(e.onKeyDown,n=>{if(n.key==="Tab"&&n.shiftKey){u.onItemShiftTab();return}if(n.target!==n.currentTarget)return;const l=ie(n,u.orientation,u.dir);if(l!==void 0){if(n.metaKey||n.ctrlKey||n.altKey||n.shiftKey)return;n.preventDefault();let i=S().filter(a=>a.focusable).map(a=>a.ref.current);if(l==="last")i.reverse();else if(l==="prev"||l==="next"){l==="prev"&&i.reverse();const a=i.indexOf(n.currentTarget);i=u.loop?ae(i,a+1):i.slice(a+1)}setTimeout(()=>q(i))}})})})});h.displayName=N;var ce={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function ue(e,o){return o!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function ie(e,o,r){const t=ue(e.key,r);if(!(o==="vertical"&&["ArrowLeft","ArrowRight"].includes(t))&&!(o==="horizontal"&&["ArrowUp","ArrowDown"].includes(t)))return ce[t]}function q(e,o=!1){const r=document.activeElement;for(const t of e)if(t===r||(t.focus({preventScroll:o}),document.activeElement!==r))return}function ae(e,o){return e.map((r,t)=>e[(o+t)%e.length])}var le=A,de=h;exports.Item=de;exports.Root=le;exports.RovingFocusGroup=A;exports.RovingFocusGroupItem=h;exports.createRovingFocusGroupScope=oe;
2
+ //# sourceMappingURL=index.cjs424.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs424.js","sources":["../node_modules/@radix-ui/react-roving-focus/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// packages/react/roving-focus/src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId = null, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId,\n onChange: onCurrentTabStopIdChange\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n })\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["ENTRY_FOCUS","EVENT_OPTIONS","GROUP_NAME","Collection","useCollection","createCollectionScope","createCollection","createRovingFocusGroupContext","createRovingFocusGroupScope","createContextScope","RovingFocusProvider","useRovingFocusContext","RovingFocusGroup","React","props","forwardedRef","jsx","RovingFocusGroupImpl","__scopeRovingFocusGroup","orientation","loop","dir","currentTabStopIdProp","defaultCurrentTabStopId","onCurrentTabStopIdChange","onEntryFocus","preventScrollOnEntryFocus","groupProps","ref","composedRefs","useComposedRefs","direction","useDirection","currentTabStopId","setCurrentTabStopId","useControllableState","isTabbingBackOut","setIsTabbingBackOut","handleEntryFocus","useCallbackRef","getItems","isClickFocusRef","focusableItemsCount","setFocusableItemsCount","node","tabStopId","prevCount","Primitive","composeEventHandlers","event","isKeyboardFocus","entryFocusEvent","items","item","activeItem","currentItem","candidateNodes","focusFirst","ITEM_NAME","RovingFocusGroupItem","focusable","active","itemProps","autoId","useId","id","context","isCurrentTabStop","onFocusableItemAdd","onFocusableItemRemove","focusIntent","getFocusIntent","currentIndex","wrapArray","MAP_KEY_TO_FOCUS_INTENT","getDirectionAwareKey","key","candidates","preventScroll","PREVIOUSLY_FOCUSED_ELEMENT","candidate","array","startIndex","_","index","Root","Item"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react");function u(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const c=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,c.get?c:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const a=u(r);var n=globalThis!=null&&globalThis.document?a.useLayoutEffect:()=>{};exports.useLayoutEffect=n;
2
+ //# sourceMappingURL=index.cjs425.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs425.js","sources":["../node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs"],"sourcesContent":["// packages/react/use-layout-effect/src/use-layout-effect.tsx\nimport * as React from \"react\";\nvar useLayoutEffect2 = globalThis?.document ? React.useLayoutEffect : () => {\n};\nexport {\n useLayoutEffect2 as useLayoutEffect\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useLayoutEffect2","React"],"mappings":"mYAEG,IAACA,EAAmB,6BAAY,SAAWC,EAAM,gBAAkB,IAAM,CAC5E","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),a=require("./index.cjs417.js");function s(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const u=s(o);function i(e,t=globalThis==null?void 0:globalThis.document){const n=a.useCallbackRef(e);u.useEffect(()=>{const r=c=>{c.key==="Escape"&&n(c)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}exports.useEscapeKeydown=i;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react"),a=require("./index.cjs420.js");function s(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const u=s(o);function i(e,t=globalThis==null?void 0:globalThis.document){const n=a.useCallbackRef(e);u.useEffect(()=>{const r=c=>{c.key==="Escape"&&n(c)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}exports.useEscapeKeydown=i;
2
2
  //# sourceMappingURL=index.cjs430.js.map
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("./index.cjs383.js"),r=require("./index.cjs473.js");var s=r.__require();const t=e.getDefaultExportFromCjs(s);module.exports=t;
1
+ "use strict";const e=require("./index.cjs381.js"),r=require("./index.cjs473.js");var s=r.__require();const t=e.getDefaultExportFromCjs(s);module.exports=t;
2
2
  //# sourceMappingURL=index.cjs461.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),j=require("./index.cjs389.js"),N=require("./index.cjs398.js"),se=require("./index.cjs387.js"),A=require("./index.cjs386.js"),g=require("./index.cjs417.js"),ce=require("./index.cjs419.js"),ie=require("./index.cjs422.js"),ae=require("./index.cjs481.js"),E=require("./index.cjs385.js"),m=require("./index.cjs212.js");function ue(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const s=ue(le);function de(e,o){return s.useReducer((r,n)=>o[r][n]??r,e)}var Y="ScrollArea",[K,fe]=se.createContextScope(Y),[he,v]=K(Y),V=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,type:n="hover",dir:t,scrollHideDelay:l=600,...c}=e,[i,a]=s.useState(null),[f,u]=s.useState(null),[h,d]=s.useState(null),[b,S]=s.useState(null),[T,M]=s.useState(null),[R,_]=s.useState(0),[X,L]=s.useState(0),[D,y]=s.useState(!1),[H,O]=s.useState(!1),p=A.useComposedRefs(o,P=>a(P)),x=ce.useDirection(t);return m.jsxRuntimeExports.jsx(he,{scope:r,type:n,dir:x,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:u,content:h,onContentChange:d,scrollbarX:b,onScrollbarXChange:S,scrollbarXEnabled:D,onScrollbarXEnabledChange:y,scrollbarY:T,onScrollbarYChange:M,scrollbarYEnabled:H,onScrollbarYEnabledChange:O,onCornerWidthChange:_,onCornerHeightChange:L,children:m.jsxRuntimeExports.jsx(j.Primitive.div,{dir:x,...c,ref:p,style:{position:"relative","--radix-scroll-area-corner-width":R+"px","--radix-scroll-area-corner-height":X+"px",...e.style}})})});V.displayName=Y;var Q="ScrollAreaViewport",U=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,children:n,nonce:t,...l}=e,c=v(Q,r),i=s.useRef(null),a=A.useComposedRefs(o,i,c.onViewportChange);return m.jsxRuntimeExports.jsxs(m.jsxRuntimeExports.Fragment,{children:[m.jsxRuntimeExports.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:t}),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:c.scrollbarXEnabled?"scroll":"hidden",overflowY:c.scrollbarYEnabled?"scroll":"hidden",...e.style},children:m.jsxRuntimeExports.jsx("div",{ref:c.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});U.displayName=Q;var w="ScrollAreaScrollbar",q=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:c}=t,i=e.orientation==="horizontal";return s.useEffect(()=>(i?l(!0):c(!0),()=>{i?l(!1):c(!1)}),[i,l,c]),t.type==="hover"?m.jsxRuntimeExports.jsx(me,{...n,ref:o,forceMount:r}):t.type==="scroll"?m.jsxRuntimeExports.jsx(be,{...n,ref:o,forceMount:r}):t.type==="auto"?m.jsxRuntimeExports.jsx(Z,{...n,ref:o,forceMount:r}):t.type==="always"?m.jsxRuntimeExports.jsx(B,{...n,ref:o}):null});q.displayName=w;var me=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),[l,c]=s.useState(!1);return s.useEffect(()=>{const i=t.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),c(!0)},u=()=>{a=window.setTimeout(()=>c(!1),t.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",u),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",u)}}},[t.scrollArea,t.scrollHideDelay]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||l,children:m.jsxRuntimeExports.jsx(Z,{"data-state":l?"visible":"hidden",...n,ref:o})})}),be=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),l=e.orientation==="horizontal",c=I(()=>a("SCROLL_END"),100),[i,a]=de("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return s.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),t.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,t.scrollHideDelay,a]),s.useEffect(()=>{const f=t.viewport,u=l?"scrollLeft":"scrollTop";if(f){let h=f[u];const d=()=>{const b=f[u];h!==b&&(a("SCROLL"),c()),h=b};return f.addEventListener("scroll",d),()=>f.removeEventListener("scroll",d)}},[t.viewport,l,a,c]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||i!=="hidden",children:m.jsxRuntimeExports.jsx(B,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:o,onPointerEnter:E.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:E.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),Z=s.forwardRef((e,o)=>{const r=v(w,e.__scopeScrollArea),{forceMount:n,...t}=e,[l,c]=s.useState(!1),i=e.orientation==="horizontal",a=I(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;c(i?f:u)}},10);return C(r.viewport,a),C(r.content,a),m.jsxRuntimeExports.jsx(N.Presence,{present:n||l,children:m.jsxRuntimeExports.jsx(B,{"data-state":l?"visible":"hidden",...t,ref:o})})}),B=s.forwardRef((e,o)=>{const{orientation:r="vertical",...n}=e,t=v(w,e.__scopeScrollArea),l=s.useRef(null),c=s.useRef(0),[i,a]=s.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=te(i.viewport,i.content),u={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:d=>l.current=d,onThumbPointerUp:()=>c.current=0,onThumbPointerDown:d=>c.current=d};function h(d,b){return Re(d,c.current,i,b)}return r==="horizontal"?m.jsxRuntimeExports.jsx(pe,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollLeft,b=J(d,i,t.dir);l.current.style.transform=`translate3d(${b}px, 0, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollLeft=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollLeft=h(d,t.dir))}}):r==="vertical"?m.jsxRuntimeExports.jsx(Se,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollTop,b=J(d,i);l.current.style.transform=`translate3d(0, ${b}px, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollTop=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollTop=h(d))}}):null}),pe=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarXChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"horizontal",...t,ref:f,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":k(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollLeft+u.deltaX;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:z(c.paddingLeft),paddingEnd:z(c.paddingRight)}})}})}),Se=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarYChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"vertical",...t,ref:f,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":k(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollTop+u.deltaY;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:z(c.paddingTop),paddingEnd:z(c.paddingBottom)}})}})}),[ve,ee]=K(w),re=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:t,onThumbChange:l,onThumbPointerUp:c,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:u,onResize:h,...d}=e,b=v(w,r),[S,T]=s.useState(null),M=A.useComposedRefs(o,p=>T(p)),R=s.useRef(null),_=s.useRef(""),X=b.viewport,L=n.content-n.viewport,D=g.useCallbackRef(u),y=g.useCallbackRef(a),H=I(h,10);function O(p){if(R.current){const x=p.clientX-R.current.left,P=p.clientY-R.current.top;f({x,y:P})}}return s.useEffect(()=>{const p=x=>{const P=x.target;(S==null?void 0:S.contains(P))&&D(x,L)};return document.addEventListener("wheel",p,{passive:!1}),()=>document.removeEventListener("wheel",p,{passive:!1})},[X,S,L,D]),s.useEffect(y,[n,y]),C(S,H),C(b.content,H),m.jsxRuntimeExports.jsx(ve,{scope:r,scrollbar:S,hasThumb:t,onThumbChange:g.useCallbackRef(l),onThumbPointerUp:g.useCallbackRef(c),onThumbPositionChange:y,onThumbPointerDown:g.useCallbackRef(i),children:m.jsxRuntimeExports.jsx(j.Primitive.div,{...d,ref:M,style:{position:"absolute",...d.style},onPointerDown:E.composeEventHandlers(e.onPointerDown,p=>{p.button===0&&(p.target.setPointerCapture(p.pointerId),R.current=S.getBoundingClientRect(),_.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",b.viewport&&(b.viewport.style.scrollBehavior="auto"),O(p))}),onPointerMove:E.composeEventHandlers(e.onPointerMove,O),onPointerUp:E.composeEventHandlers(e.onPointerUp,p=>{const x=p.target;x.hasPointerCapture(p.pointerId)&&x.releasePointerCapture(p.pointerId),document.body.style.webkitUserSelect=_.current,b.viewport&&(b.viewport.style.scrollBehavior=""),R.current=null})})})}),W="ScrollAreaThumb",F=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=ee(W,e.__scopeScrollArea);return m.jsxRuntimeExports.jsx(N.Presence,{present:r||t.hasThumb,children:m.jsxRuntimeExports.jsx(xe,{ref:o,...n})})}),xe=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,style:n,...t}=e,l=v(W,r),c=ee(W,r),{onThumbPositionChange:i}=c,a=A.useComposedRefs(o,h=>c.onThumbChange(h)),f=s.useRef(void 0),u=I(()=>{f.current&&(f.current(),f.current=void 0)},100);return s.useEffect(()=>{const h=l.viewport;if(h){const d=()=>{if(u(),!f.current){const b=ge(h,i);f.current=b,i()}};return i(),h.addEventListener("scroll",d),()=>h.removeEventListener("scroll",d)}},[l.viewport,u,i]),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-state":c.hasThumb?"visible":"hidden",...t,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:E.composeEventHandlers(e.onPointerDownCapture,h=>{const b=h.target.getBoundingClientRect(),S=h.clientX-b.left,T=h.clientY-b.top;c.onThumbPointerDown({x:S,y:T})}),onPointerUp:E.composeEventHandlers(e.onPointerUp,c.onThumbPointerUp)})});F.displayName=W;var $="ScrollAreaCorner",G=s.forwardRef((e,o)=>{const r=v($,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?m.jsxRuntimeExports.jsx(we,{...e,ref:o}):null});G.displayName=$;var we=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,...n}=e,t=v($,r),[l,c]=s.useState(0),[i,a]=s.useState(0),f=!!(l&&i);return C(t.scrollbarX,()=>{var h;const u=((h=t.scrollbarX)==null?void 0:h.offsetHeight)||0;t.onCornerHeightChange(u),a(u)}),C(t.scrollbarY,()=>{var h;const u=((h=t.scrollbarY)==null?void 0:h.offsetWidth)||0;t.onCornerWidthChange(u),c(u)}),f?m.jsxRuntimeExports.jsx(j.Primitive.div,{...n,ref:o,style:{width:l,height:i,position:"absolute",right:t.dir==="ltr"?0:void 0,left:t.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function te(e,o){const r=e/o;return isNaN(r)?0:r}function k(e){const o=te(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*o;return Math.max(n,18)}function Re(e,o,r,n="ltr"){const t=k(r),l=t/2,c=o||l,i=t-c,a=r.scrollbar.paddingStart+c,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,u=r.content-r.viewport,h=n==="ltr"?[0,u]:[u*-1,0];return oe([a,f],h)(e)}function J(e,o,r="ltr"){const n=k(o),t=o.scrollbar.paddingStart+o.scrollbar.paddingEnd,l=o.scrollbar.size-t,c=o.content-o.viewport,i=l-n,a=r==="ltr"?[0,c]:[c*-1,0],f=ae.clamp(e,a);return oe([0,c],[0,i])(f)}function oe(e,o){return r=>{if(e[0]===e[1]||o[0]===o[1])return o[0];const n=(o[1]-o[0])/(e[1]-e[0]);return o[0]+n*(r-e[0])}}function ne(e,o){return e>0&&e<o}var ge=(e,o=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function t(){const l={left:e.scrollLeft,top:e.scrollTop},c=r.left!==l.left,i=r.top!==l.top;(c||i)&&o(),r=l,n=window.requestAnimationFrame(t)}(),()=>window.cancelAnimationFrame(n)};function I(e,o){const r=g.useCallbackRef(e),n=s.useRef(0);return s.useEffect(()=>()=>window.clearTimeout(n.current),[]),s.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,o)},[r,o])}function C(e,o){const r=g.useCallbackRef(o);ie.useLayoutEffect(()=>{let n=0;if(e){const t=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return t.observe(e),()=>{window.cancelAnimationFrame(n),t.unobserve(e)}}},[e,r])}var Ee=V,Pe=U,Ce=q,Ae=F,Te=G;exports.Corner=Te;exports.Root=Ee;exports.ScrollArea=V;exports.ScrollAreaCorner=G;exports.ScrollAreaScrollbar=q;exports.ScrollAreaThumb=F;exports.ScrollAreaViewport=U;exports.Scrollbar=Ce;exports.Thumb=Ae;exports.Viewport=Pe;exports.createScrollAreaScope=fe;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),j=require("./index.cjs389.js"),N=require("./index.cjs398.js"),se=require("./index.cjs387.js"),A=require("./index.cjs386.js"),g=require("./index.cjs420.js"),ce=require("./index.cjs422.js"),ie=require("./index.cjs425.js"),ae=require("./index.cjs481.js"),E=require("./index.cjs385.js"),m=require("./index.cjs212.js");function ue(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const s=ue(le);function de(e,o){return s.useReducer((r,n)=>o[r][n]??r,e)}var Y="ScrollArea",[K,fe]=se.createContextScope(Y),[he,v]=K(Y),V=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,type:n="hover",dir:t,scrollHideDelay:l=600,...c}=e,[i,a]=s.useState(null),[f,u]=s.useState(null),[h,d]=s.useState(null),[b,S]=s.useState(null),[T,M]=s.useState(null),[R,_]=s.useState(0),[X,L]=s.useState(0),[D,y]=s.useState(!1),[H,O]=s.useState(!1),p=A.useComposedRefs(o,P=>a(P)),x=ce.useDirection(t);return m.jsxRuntimeExports.jsx(he,{scope:r,type:n,dir:x,scrollHideDelay:l,scrollArea:i,viewport:f,onViewportChange:u,content:h,onContentChange:d,scrollbarX:b,onScrollbarXChange:S,scrollbarXEnabled:D,onScrollbarXEnabledChange:y,scrollbarY:T,onScrollbarYChange:M,scrollbarYEnabled:H,onScrollbarYEnabledChange:O,onCornerWidthChange:_,onCornerHeightChange:L,children:m.jsxRuntimeExports.jsx(j.Primitive.div,{dir:x,...c,ref:p,style:{position:"relative","--radix-scroll-area-corner-width":R+"px","--radix-scroll-area-corner-height":X+"px",...e.style}})})});V.displayName=Y;var Q="ScrollAreaViewport",U=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,children:n,nonce:t,...l}=e,c=v(Q,r),i=s.useRef(null),a=A.useComposedRefs(o,i,c.onViewportChange);return m.jsxRuntimeExports.jsxs(m.jsxRuntimeExports.Fragment,{children:[m.jsxRuntimeExports.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:t}),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-radix-scroll-area-viewport":"",...l,ref:a,style:{overflowX:c.scrollbarXEnabled?"scroll":"hidden",overflowY:c.scrollbarYEnabled?"scroll":"hidden",...e.style},children:m.jsxRuntimeExports.jsx("div",{ref:c.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});U.displayName=Q;var w="ScrollAreaScrollbar",q=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:c}=t,i=e.orientation==="horizontal";return s.useEffect(()=>(i?l(!0):c(!0),()=>{i?l(!1):c(!1)}),[i,l,c]),t.type==="hover"?m.jsxRuntimeExports.jsx(me,{...n,ref:o,forceMount:r}):t.type==="scroll"?m.jsxRuntimeExports.jsx(be,{...n,ref:o,forceMount:r}):t.type==="auto"?m.jsxRuntimeExports.jsx(Z,{...n,ref:o,forceMount:r}):t.type==="always"?m.jsxRuntimeExports.jsx(B,{...n,ref:o}):null});q.displayName=w;var me=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),[l,c]=s.useState(!1);return s.useEffect(()=>{const i=t.scrollArea;let a=0;if(i){const f=()=>{window.clearTimeout(a),c(!0)},u=()=>{a=window.setTimeout(()=>c(!1),t.scrollHideDelay)};return i.addEventListener("pointerenter",f),i.addEventListener("pointerleave",u),()=>{window.clearTimeout(a),i.removeEventListener("pointerenter",f),i.removeEventListener("pointerleave",u)}}},[t.scrollArea,t.scrollHideDelay]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||l,children:m.jsxRuntimeExports.jsx(Z,{"data-state":l?"visible":"hidden",...n,ref:o})})}),be=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=v(w,e.__scopeScrollArea),l=e.orientation==="horizontal",c=I(()=>a("SCROLL_END"),100),[i,a]=de("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return s.useEffect(()=>{if(i==="idle"){const f=window.setTimeout(()=>a("HIDE"),t.scrollHideDelay);return()=>window.clearTimeout(f)}},[i,t.scrollHideDelay,a]),s.useEffect(()=>{const f=t.viewport,u=l?"scrollLeft":"scrollTop";if(f){let h=f[u];const d=()=>{const b=f[u];h!==b&&(a("SCROLL"),c()),h=b};return f.addEventListener("scroll",d),()=>f.removeEventListener("scroll",d)}},[t.viewport,l,a,c]),m.jsxRuntimeExports.jsx(N.Presence,{present:r||i!=="hidden",children:m.jsxRuntimeExports.jsx(B,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:o,onPointerEnter:E.composeEventHandlers(e.onPointerEnter,()=>a("POINTER_ENTER")),onPointerLeave:E.composeEventHandlers(e.onPointerLeave,()=>a("POINTER_LEAVE"))})})}),Z=s.forwardRef((e,o)=>{const r=v(w,e.__scopeScrollArea),{forceMount:n,...t}=e,[l,c]=s.useState(!1),i=e.orientation==="horizontal",a=I(()=>{if(r.viewport){const f=r.viewport.offsetWidth<r.viewport.scrollWidth,u=r.viewport.offsetHeight<r.viewport.scrollHeight;c(i?f:u)}},10);return C(r.viewport,a),C(r.content,a),m.jsxRuntimeExports.jsx(N.Presence,{present:n||l,children:m.jsxRuntimeExports.jsx(B,{"data-state":l?"visible":"hidden",...t,ref:o})})}),B=s.forwardRef((e,o)=>{const{orientation:r="vertical",...n}=e,t=v(w,e.__scopeScrollArea),l=s.useRef(null),c=s.useRef(0),[i,a]=s.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),f=te(i.viewport,i.content),u={...n,sizes:i,onSizesChange:a,hasThumb:f>0&&f<1,onThumbChange:d=>l.current=d,onThumbPointerUp:()=>c.current=0,onThumbPointerDown:d=>c.current=d};function h(d,b){return Re(d,c.current,i,b)}return r==="horizontal"?m.jsxRuntimeExports.jsx(pe,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollLeft,b=J(d,i,t.dir);l.current.style.transform=`translate3d(${b}px, 0, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollLeft=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollLeft=h(d,t.dir))}}):r==="vertical"?m.jsxRuntimeExports.jsx(Se,{...u,ref:o,onThumbPositionChange:()=>{if(t.viewport&&l.current){const d=t.viewport.scrollTop,b=J(d,i);l.current.style.transform=`translate3d(0, ${b}px, 0)`}},onWheelScroll:d=>{t.viewport&&(t.viewport.scrollTop=d)},onDragScroll:d=>{t.viewport&&(t.viewport.scrollTop=h(d))}}):null}),pe=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarXChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"horizontal",...t,ref:f,sizes:r,style:{bottom:0,left:l.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:l.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":k(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.x),onDragScroll:u=>e.onDragScroll(u.x),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollLeft+u.deltaX;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollWidth,viewport:l.viewport.offsetWidth,scrollbar:{size:a.current.clientWidth,paddingStart:z(c.paddingLeft),paddingEnd:z(c.paddingRight)}})}})}),Se=s.forwardRef((e,o)=>{const{sizes:r,onSizesChange:n,...t}=e,l=v(w,e.__scopeScrollArea),[c,i]=s.useState(),a=s.useRef(null),f=A.useComposedRefs(o,a,l.onScrollbarYChange);return s.useEffect(()=>{a.current&&i(getComputedStyle(a.current))},[a]),m.jsxRuntimeExports.jsx(re,{"data-orientation":"vertical",...t,ref:f,sizes:r,style:{top:0,right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":k(r)+"px",...e.style},onThumbPointerDown:u=>e.onThumbPointerDown(u.y),onDragScroll:u=>e.onDragScroll(u.y),onWheelScroll:(u,h)=>{if(l.viewport){const d=l.viewport.scrollTop+u.deltaY;e.onWheelScroll(d),ne(d,h)&&u.preventDefault()}},onResize:()=>{a.current&&l.viewport&&c&&n({content:l.viewport.scrollHeight,viewport:l.viewport.offsetHeight,scrollbar:{size:a.current.clientHeight,paddingStart:z(c.paddingTop),paddingEnd:z(c.paddingBottom)}})}})}),[ve,ee]=K(w),re=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,sizes:n,hasThumb:t,onThumbChange:l,onThumbPointerUp:c,onThumbPointerDown:i,onThumbPositionChange:a,onDragScroll:f,onWheelScroll:u,onResize:h,...d}=e,b=v(w,r),[S,T]=s.useState(null),M=A.useComposedRefs(o,p=>T(p)),R=s.useRef(null),_=s.useRef(""),X=b.viewport,L=n.content-n.viewport,D=g.useCallbackRef(u),y=g.useCallbackRef(a),H=I(h,10);function O(p){if(R.current){const x=p.clientX-R.current.left,P=p.clientY-R.current.top;f({x,y:P})}}return s.useEffect(()=>{const p=x=>{const P=x.target;(S==null?void 0:S.contains(P))&&D(x,L)};return document.addEventListener("wheel",p,{passive:!1}),()=>document.removeEventListener("wheel",p,{passive:!1})},[X,S,L,D]),s.useEffect(y,[n,y]),C(S,H),C(b.content,H),m.jsxRuntimeExports.jsx(ve,{scope:r,scrollbar:S,hasThumb:t,onThumbChange:g.useCallbackRef(l),onThumbPointerUp:g.useCallbackRef(c),onThumbPositionChange:y,onThumbPointerDown:g.useCallbackRef(i),children:m.jsxRuntimeExports.jsx(j.Primitive.div,{...d,ref:M,style:{position:"absolute",...d.style},onPointerDown:E.composeEventHandlers(e.onPointerDown,p=>{p.button===0&&(p.target.setPointerCapture(p.pointerId),R.current=S.getBoundingClientRect(),_.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",b.viewport&&(b.viewport.style.scrollBehavior="auto"),O(p))}),onPointerMove:E.composeEventHandlers(e.onPointerMove,O),onPointerUp:E.composeEventHandlers(e.onPointerUp,p=>{const x=p.target;x.hasPointerCapture(p.pointerId)&&x.releasePointerCapture(p.pointerId),document.body.style.webkitUserSelect=_.current,b.viewport&&(b.viewport.style.scrollBehavior=""),R.current=null})})})}),W="ScrollAreaThumb",F=s.forwardRef((e,o)=>{const{forceMount:r,...n}=e,t=ee(W,e.__scopeScrollArea);return m.jsxRuntimeExports.jsx(N.Presence,{present:r||t.hasThumb,children:m.jsxRuntimeExports.jsx(xe,{ref:o,...n})})}),xe=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,style:n,...t}=e,l=v(W,r),c=ee(W,r),{onThumbPositionChange:i}=c,a=A.useComposedRefs(o,h=>c.onThumbChange(h)),f=s.useRef(void 0),u=I(()=>{f.current&&(f.current(),f.current=void 0)},100);return s.useEffect(()=>{const h=l.viewport;if(h){const d=()=>{if(u(),!f.current){const b=ge(h,i);f.current=b,i()}};return i(),h.addEventListener("scroll",d),()=>h.removeEventListener("scroll",d)}},[l.viewport,u,i]),m.jsxRuntimeExports.jsx(j.Primitive.div,{"data-state":c.hasThumb?"visible":"hidden",...t,ref:a,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:E.composeEventHandlers(e.onPointerDownCapture,h=>{const b=h.target.getBoundingClientRect(),S=h.clientX-b.left,T=h.clientY-b.top;c.onThumbPointerDown({x:S,y:T})}),onPointerUp:E.composeEventHandlers(e.onPointerUp,c.onThumbPointerUp)})});F.displayName=W;var $="ScrollAreaCorner",G=s.forwardRef((e,o)=>{const r=v($,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?m.jsxRuntimeExports.jsx(we,{...e,ref:o}):null});G.displayName=$;var we=s.forwardRef((e,o)=>{const{__scopeScrollArea:r,...n}=e,t=v($,r),[l,c]=s.useState(0),[i,a]=s.useState(0),f=!!(l&&i);return C(t.scrollbarX,()=>{var h;const u=((h=t.scrollbarX)==null?void 0:h.offsetHeight)||0;t.onCornerHeightChange(u),a(u)}),C(t.scrollbarY,()=>{var h;const u=((h=t.scrollbarY)==null?void 0:h.offsetWidth)||0;t.onCornerWidthChange(u),c(u)}),f?m.jsxRuntimeExports.jsx(j.Primitive.div,{...n,ref:o,style:{width:l,height:i,position:"absolute",right:t.dir==="ltr"?0:void 0,left:t.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function te(e,o){const r=e/o;return isNaN(r)?0:r}function k(e){const o=te(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*o;return Math.max(n,18)}function Re(e,o,r,n="ltr"){const t=k(r),l=t/2,c=o||l,i=t-c,a=r.scrollbar.paddingStart+c,f=r.scrollbar.size-r.scrollbar.paddingEnd-i,u=r.content-r.viewport,h=n==="ltr"?[0,u]:[u*-1,0];return oe([a,f],h)(e)}function J(e,o,r="ltr"){const n=k(o),t=o.scrollbar.paddingStart+o.scrollbar.paddingEnd,l=o.scrollbar.size-t,c=o.content-o.viewport,i=l-n,a=r==="ltr"?[0,c]:[c*-1,0],f=ae.clamp(e,a);return oe([0,c],[0,i])(f)}function oe(e,o){return r=>{if(e[0]===e[1]||o[0]===o[1])return o[0];const n=(o[1]-o[0])/(e[1]-e[0]);return o[0]+n*(r-e[0])}}function ne(e,o){return e>0&&e<o}var ge=(e,o=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return function t(){const l={left:e.scrollLeft,top:e.scrollTop},c=r.left!==l.left,i=r.top!==l.top;(c||i)&&o(),r=l,n=window.requestAnimationFrame(t)}(),()=>window.cancelAnimationFrame(n)};function I(e,o){const r=g.useCallbackRef(e),n=s.useRef(0);return s.useEffect(()=>()=>window.clearTimeout(n.current),[]),s.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,o)},[r,o])}function C(e,o){const r=g.useCallbackRef(o);ie.useLayoutEffect(()=>{let n=0;if(e){const t=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return t.observe(e),()=>{window.cancelAnimationFrame(n),t.unobserve(e)}}},[e,r])}var Ee=V,Pe=U,Ce=q,Ae=F,Te=G;exports.Corner=Te;exports.Root=Ee;exports.ScrollArea=V;exports.ScrollAreaCorner=G;exports.ScrollAreaScrollbar=q;exports.ScrollAreaThumb=F;exports.ScrollAreaViewport=U;exports.Scrollbar=Ce;exports.Thumb=Ae;exports.Viewport=Pe;exports.createScrollAreaScope=fe;
2
2
  //# sourceMappingURL=index.cjs468.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./index.cjs383.js");var h,E;function V(){if(E)return h;E=1;var L="Expected a function",O=NaN,G="[object Symbol]",M=/^\s+|\s+$/g,q=/^[-+]0x[0-9a-f]+$/i,C=/^0b[01]+$/i,N=/^0o[0-7]+$/i,R=parseInt,W=typeof g.commonjsGlobal=="object"&&g.commonjsGlobal&&g.commonjsGlobal.Object===Object&&g.commonjsGlobal,$=typeof self=="object"&&self&&self.Object===Object&&self,A=W||$||Function("return this")(),B=Object.prototype,F=B.toString,P=Math.max,H=Math.min,y=function(){return A.Date.now()};function D(e,r,i){var a,u,l,c,t,f,s=0,S=!1,d=!1,p=!0;if(typeof e!="function")throw new TypeError(L);r=I(r)||0,j(i)&&(S=!!i.leading,d="maxWait"in i,l=d?P(I(i.maxWait)||0,r):l,p="trailing"in i?!!i.trailing:p);function v(n){var o=a,m=u;return a=u=void 0,s=n,c=e.apply(m,o),c}function z(n){return s=n,t=setTimeout(b,r),S?v(n):c}function J(n){var o=n-f,m=n-s,k=r-o;return d?H(k,l-m):k}function x(n){var o=n-f,m=n-s;return f===void 0||o>=r||o<0||d&&m>=l}function b(){var n=y();if(x(n))return _(n);t=setTimeout(b,J(n))}function _(n){return t=void 0,p&&a?v(n):(a=u=void 0,c)}function K(){t!==void 0&&clearTimeout(t),s=0,a=f=u=t=void 0}function Q(){return t===void 0?c:_(y())}function T(){var n=y(),o=x(n);if(a=arguments,u=this,f=n,o){if(t===void 0)return z(f);if(d)return t=setTimeout(b,r),v(f)}return t===void 0&&(t=setTimeout(b,r)),c}return T.cancel=K,T.flush=Q,T}function j(e){var r=typeof e;return!!e&&(r=="object"||r=="function")}function U(e){return!!e&&typeof e=="object"}function X(e){return typeof e=="symbol"||U(e)&&F.call(e)==G}function I(e){if(typeof e=="number")return e;if(X(e))return O;if(j(e)){var r=typeof e.valueOf=="function"?e.valueOf():e;e=j(r)?r+"":r}if(typeof e!="string")return e===0?e:+e;e=e.replace(M,"");var i=C.test(e);return i||N.test(e)?R(e.slice(2),i?2:8):q.test(e)?O:+e}return h=D,h}exports.__require=V;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./index.cjs381.js");var h,E;function V(){if(E)return h;E=1;var L="Expected a function",O=NaN,G="[object Symbol]",M=/^\s+|\s+$/g,q=/^[-+]0x[0-9a-f]+$/i,C=/^0b[01]+$/i,N=/^0o[0-7]+$/i,R=parseInt,W=typeof g.commonjsGlobal=="object"&&g.commonjsGlobal&&g.commonjsGlobal.Object===Object&&g.commonjsGlobal,$=typeof self=="object"&&self&&self.Object===Object&&self,A=W||$||Function("return this")(),B=Object.prototype,F=B.toString,P=Math.max,H=Math.min,y=function(){return A.Date.now()};function D(e,r,i){var a,u,l,c,t,f,s=0,S=!1,d=!1,p=!0;if(typeof e!="function")throw new TypeError(L);r=I(r)||0,j(i)&&(S=!!i.leading,d="maxWait"in i,l=d?P(I(i.maxWait)||0,r):l,p="trailing"in i?!!i.trailing:p);function v(n){var o=a,m=u;return a=u=void 0,s=n,c=e.apply(m,o),c}function z(n){return s=n,t=setTimeout(b,r),S?v(n):c}function J(n){var o=n-f,m=n-s,k=r-o;return d?H(k,l-m):k}function x(n){var o=n-f,m=n-s;return f===void 0||o>=r||o<0||d&&m>=l}function b(){var n=y();if(x(n))return _(n);t=setTimeout(b,J(n))}function _(n){return t=void 0,p&&a?v(n):(a=u=void 0,c)}function K(){t!==void 0&&clearTimeout(t),s=0,a=f=u=t=void 0}function Q(){return t===void 0?c:_(y())}function T(){var n=y(),o=x(n);if(a=arguments,u=this,f=n,o){if(t===void 0)return z(f);if(d)return t=setTimeout(b,r),v(f)}return t===void 0&&(t=setTimeout(b,r)),c}return T.cancel=K,T.flush=Q,T}function j(e){var r=typeof e;return!!e&&(r=="object"||r=="function")}function U(e){return!!e&&typeof e=="object"}function X(e){return typeof e=="symbol"||U(e)&&F.call(e)==G}function I(e){if(typeof e=="number")return e;if(X(e))return O;if(j(e)){var r=typeof e.valueOf=="function"?e.valueOf():e;e=j(r)?r+"":r}if(typeof e!="string")return e===0?e:+e;e=e.replace(M,"");var i=C.test(e);return i||N.test(e)?R(e.slice(2),i?2:8):q.test(e)?O:+e}return h=D,h}exports.__require=V;
2
2
  //# sourceMappingURL=index.cjs483.js.map