@ssa-ui-kit/hooks 2.30.0 → 2.32.0-canary-b64be64-20251219
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.
|
@@ -5,4 +5,4 @@
|
|
|
5
5
|
* The hook doesn't enlarge the font size if the parent's
|
|
6
6
|
* width becomes wider.
|
|
7
7
|
* */
|
|
8
|
-
export declare const useTextSizeDecrease: (maxAttempts?: number, step?: number) => import("react").RefObject<HTMLElement>;
|
|
8
|
+
export declare const useTextSizeDecrease: (maxAttempts?: number, step?: number) => import("react").RefObject<HTMLElement | null>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
type ObserverRect = Omit<DOMRectReadOnly, 'toJSON'>;
|
|
2
|
-
export declare function useResizeObserver<T extends HTMLElement>(options?: ResizeObserverOptions): readonly [import("react").RefObject<T>, ObserverRect];
|
|
2
|
+
export declare function useResizeObserver<T extends HTMLElement>(options?: ResizeObserverOptions): readonly [import("react").RefObject<T | null>, ObserverRect];
|
|
3
3
|
export declare function useElementSize<T extends HTMLElement>(options?: ResizeObserverOptions): {
|
|
4
|
-
ref: import("react").RefObject<T>;
|
|
4
|
+
ref: import("react").RefObject<T | null>;
|
|
5
5
|
width: number;
|
|
6
6
|
height: number;
|
|
7
7
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://SSAHooks/webpack/universalModuleDefinition","webpack://SSAHooks/webpack/bootstrap","webpack://SSAHooks/webpack/runtime/define property getters","webpack://SSAHooks/webpack/runtime/hasOwnProperty shorthand","webpack://SSAHooks/webpack/runtime/make namespace object","webpack://SSAHooks/external commonjs \"react\"","webpack://SSAHooks/./src/hooks/useApi.tsx","webpack://SSAHooks/./src/hooks/useWindowResize.tsx","webpack://SSAHooks/./src/hooks/useClickOutside.tsx","webpack://SSAHooks/external commonjs \"@ssa-ui-kit/utils\"","webpack://SSAHooks/./src/hooks/pagination/usePaginationRange.tsx","webpack://SSAHooks/./src/hooks/text/useTextSizeDecrease.ts","webpack://SSAHooks/external commonjs \"usehooks-ts\"","webpack://SSAHooks/./src/hooks/useDeviceType.ts","webpack://SSAHooks/./src/hooks/useToggle.ts","webpack://SSAHooks/./src/hooks/useUncontrolled.ts","webpack://SSAHooks/./src/hooks/useSafeContext.tsx","webpack://SSAHooks/./src/hooks/useResizeObserver.tsx","webpack://SSAHooks/./src/hooks/useCallbackRef.ts","webpack://SSAHooks/./src/hooks/useDebouncedCallback.ts","webpack://SSAHooks/./src/hooks/useClipboard.ts","webpack://SSAHooks/./src/hooks/useThrottledCallback.ts","webpack://SSAHooks/./src/hooks/mediaQueries.ts","webpack://SSAHooks/./src/hooks/index.ts","webpack://SSAHooks/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"SSAHooks\"] = factory();\n\telse\n\t\troot[\"SSAHooks\"] = factory();\n})(self, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"react\");","import { useState } from 'react';\n\nexport function useApi<T extends unknown[], D>(\n fetcherFn: (...args: T) => Promise<D>,\n initialValue?: D,\n) {\n const [isLoading, setIsLoading] = useState<boolean>(false);\n const [error, setError] = useState<unknown | null>(null);\n const [data, setData] = useState<D | undefined>(initialValue);\n\n const query = async (...args: Parameters<typeof fetcherFn>) => {\n setIsLoading(true);\n setError(null);\n\n try {\n const respData = await fetcherFn(...args);\n setData(respData);\n } catch (err) {\n setError(err);\n } finally {\n setIsLoading(false);\n }\n };\n\n return {\n isLoading,\n error,\n // TODO: useApi users should use type guards instead of \"data as D\"\n data: data as D,\n query,\n };\n}\n","import { useEffect, useState } from 'react';\n\nexport const useWindowSize = () => {\n const [windowSize, setWindowSize] = useState({\n width: window.innerWidth,\n height: window.innerHeight,\n });\n\n useEffect(() => {\n function handleResize() {\n setWindowSize({ width: window.innerWidth, height: window.innerHeight });\n }\n\n window.addEventListener('resize', handleResize);\n\n handleResize();\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n return windowSize;\n};\n","import { useEffect } from 'react';\n\ntype UseClickOutsideType = (\n ref: React.RefObject<HTMLElement | null>,\n fn: (e: Event) => void,\n) => void;\n\nexport const useClickOutside: UseClickOutsideType = (ref, onClickOutside) => {\n const events = ['mousedown', 'touchstart'];\n\n useEffect(() => {\n const handler = (e: Event) => {\n if (\n ref.current == null ||\n ref.current.contains(e.target as HTMLElement)\n ) {\n return;\n }\n onClickOutside(e);\n };\n\n events.forEach((eventName) =>\n document.addEventListener(eventName, handler),\n );\n\n return () =>\n events.forEach((eventName) =>\n document.removeEventListener(eventName, handler),\n );\n }, [ref, onClickOutside]);\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@ssa-ui-kit/utils\");","import { useMemo } from 'react';\nimport { generateRange } from '@ssa-ui-kit/utils';\nimport { UsePaginationRangeProps } from './types';\n\nconst usePaginationRange = ({\n pagesCount,\n selectedPage,\n}: UsePaginationRangeProps) => {\n return useMemo(\n () => generateRange(pagesCount, selectedPage),\n [pagesCount, selectedPage],\n );\n};\n\nexport { usePaginationRange };\n","import { useEffect, useRef } from 'react';\nimport { useWindowSize } from '@hooks/useWindowResize';\n\nconst FONT_SIZE_REG_EXP = /(\\d+\\.?\\d+)(\\S+)/;\n\nconst isOverflowing = (\n el: HTMLElement,\n container: HTMLElement | null,\n): boolean => el.scrollWidth > Number(container?.clientWidth);\n\nconst resize = (el: HTMLElement, step: number) => {\n const fontSize = window.getComputedStyle(el).fontSize;\n const matchResults = fontSize.match(FONT_SIZE_REG_EXP);\n\n if (matchResults) {\n const [, fsValue, fsUnit] = matchResults;\n el.style.fontSize = `${Number(fsValue) - step}${fsUnit}`;\n }\n};\n\n/**\n * The hook does N attempts to decrease the font size\n * if its text content doesn't fit its parent's width.\n * If the text still overflows, it sets the `word-break` css rule.\n * The hook doesn't enlarge the font size if the parent's\n * width becomes wider.\n * */\nexport const useTextSizeDecrease = (maxAttempts = 5, step = 1) => {\n const textContainerRef = useRef<HTMLElement>(null);\n const attemptsRef = useRef<number>(0);\n const { width } = useWindowSize();\n\n const checkAndResize = () => {\n if (textContainerRef.current == null) {\n return;\n }\n\n const node = textContainerRef.current;\n const parentNode = node.parentNode as unknown as HTMLElement;\n\n let isLarger = isOverflowing(node, parentNode);\n\n while (attemptsRef.current < maxAttempts && isLarger) {\n resize(node, step);\n isLarger = isOverflowing(node, parentNode);\n ++attemptsRef.current;\n }\n\n if (isLarger) {\n node.style.wordBreak = 'break-all';\n }\n };\n\n useEffect(() => {\n checkAndResize();\n }, [textContainerRef, width]);\n\n return textContainerRef;\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"usehooks-ts\");","import { useMediaQuery } from 'usehooks-ts';\n\nexport const useDeviceType = () => {\n const isMD = useMediaQuery('(min-width: 900px)');\n const isLG = useMediaQuery('(min-width: 1440px)');\n const isXLG = useMediaQuery('(min-width: 1920px)');\n if (isXLG) {\n return 'xlg';\n }\n if (isLG) {\n return 'lg';\n }\n if (isMD) {\n return 'md';\n }\n return 'mobile';\n};\n","import { useReducer } from 'react';\n\nexport function useToggle<T = boolean>(\n options: readonly T[] = [false, true] as T[],\n) {\n const [[option], toggle] = useReducer(\n (state: T[], action: React.SetStateAction<T>) => {\n const value = action instanceof Function ? action(state[0]) : action;\n const index = Math.abs(state.indexOf(value));\n\n return state.slice(index).concat(state.slice(0, index));\n },\n options as T[],\n );\n\n return [option, toggle as (value?: React.SetStateAction<T>) => void] as const;\n}\n","import { useState } from 'react';\n\ninterface UseUncontrolledInput<T, P extends unknown[]> {\n value?: T;\n defaultValue?: T;\n finalValue?: T;\n onChange?: (value: T, ...payload: P) => void;\n}\n\nexport function useUncontrolled<T, P extends unknown[]>({\n value,\n defaultValue,\n finalValue,\n onChange = () => {},\n}: UseUncontrolledInput<T, P>): [\n T,\n (value: T, ...payload: P) => void,\n boolean,\n] {\n const [uncontrolledValue, setUncontrolledValue] = useState(\n defaultValue !== undefined ? defaultValue : finalValue,\n );\n\n const handleUncontrolledChange = (val: T, ...payload: P) => {\n setUncontrolledValue(val);\n onChange?.(val, ...payload);\n };\n\n if (value !== undefined) {\n return [value as T, onChange, true];\n }\n\n return [uncontrolledValue as T, handleUncontrolledChange, false];\n}\n","import { createContext, useContext, createElement } from 'react';\n\nexport function createSafeContext<ContextValue>(errorMessage: string) {\n const Context = createContext<ContextValue | null>(null);\n\n const useSafeContext = () => {\n const ctx = useContext(Context);\n if (ctx === null) {\n throw new Error(errorMessage);\n }\n return ctx;\n };\n\n const Provider = ({\n children,\n value,\n }: {\n value: ContextValue;\n children: React.ReactNode;\n }) => {\n return createElement(\n Context.Provider,\n {\n value,\n },\n children,\n );\n };\n\n return [Provider, useSafeContext] as const;\n}\n","import { useEffect, useMemo, useRef, useState } from 'react';\n\ntype ObserverRect = Omit<DOMRectReadOnly, 'toJSON'>;\n\nconst defaultState: ObserverRect = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n};\n\nexport function useResizeObserver<T extends HTMLElement>(\n options?: ResizeObserverOptions,\n) {\n const frameID = useRef(0);\n const ref = useRef<T>(null);\n\n const [rect, setRect] = useState<ObserverRect>(defaultState);\n\n const observer = useMemo(\n () =>\n typeof window !== 'undefined'\n ? new ResizeObserver((entries) => {\n const entry = entries[0];\n\n if (entry) {\n cancelAnimationFrame(frameID.current);\n\n frameID.current = requestAnimationFrame(() => {\n if (ref.current) {\n setRect(entry.contentRect);\n }\n });\n }\n })\n : null,\n [],\n );\n\n useEffect(() => {\n if (ref.current) {\n observer?.observe(ref.current, options);\n }\n\n return () => {\n observer?.disconnect();\n\n if (frameID.current) {\n cancelAnimationFrame(frameID.current);\n }\n };\n }, [ref.current]);\n\n return [ref, rect] as const;\n}\n\nexport function useElementSize<T extends HTMLElement>(\n options?: ResizeObserverOptions,\n) {\n const [ref, { width, height }] = useResizeObserver<T>(options);\n return { ref, width, height };\n}\n","import { useEffect, useMemo, useRef } from 'react';\n\nexport const useCallbackRef = <A extends unknown[], R>(\n callback: ((...args: A) => R) | undefined,\n): ((...args: A) => R) => {\n const callbackRef = useRef(callback);\n\n useEffect(() => {\n callbackRef.current = callback;\n });\n\n return useMemo(\n () => ((...args: A) => callbackRef.current?.(...args)) as (...args: A) => R,\n [],\n );\n};\n","import { useRef } from 'react';\nimport { useCallbackRef } from './useCallbackRef';\n\nexport const useDebouncedCallback = <T extends unknown[]>(\n func: (...args: T) => unknown,\n wait = 200,\n) => {\n const timeoutRef = useRef<NodeJS.Timeout | null>(null);\n const handleCallback = useCallbackRef(func);\n\n const executedFunction = (...args: T) => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n timeoutRef.current = setTimeout(() => {\n timeoutRef.current = null;\n handleCallback(...args);\n }, wait);\n };\n\n const cancel = function () {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n }\n };\n return [executedFunction, cancel, timeoutRef.current] as const;\n};\n","import { useState } from 'react';\n\nexport function useClipboard({ timeout = 2000 } = {}) {\n const [error, setError] = useState<Error | null>(null);\n const [copied, setCopied] = useState(false);\n const [copyTimeout, setCopyTimeout] = useState<number | null>(null);\n\n const handleCopyResult = (value: boolean) => {\n window.clearTimeout(copyTimeout!);\n setCopyTimeout(window.setTimeout(() => setCopied(false), timeout));\n setCopied(value);\n };\n\n const copy = (valueToCopy: string) => {\n if ('clipboard' in navigator) {\n navigator.clipboard\n .writeText(valueToCopy)\n .then(() => handleCopyResult(true))\n .catch((err) => setError(err));\n } else {\n setError(new Error('useClipboard: navigator.clipboard is not supported'));\n }\n };\n\n const reset = () => {\n setCopied(false);\n setError(null);\n window.clearTimeout(copyTimeout!);\n };\n\n return { copy, reset, error, copied };\n}\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useCallbackRef } from './useCallbackRef';\n\nexport function useThrottledCallbackWithClearTimeout<\n T extends (...args: never[]) => unknown,\n>(callback: T, wait: number) {\n const handleCallback = useCallbackRef(callback);\n const latestInArgsRef = useRef<Parameters<T> | null>(null);\n const latestOutArgsRef = useRef<Parameters<T> | null>(null);\n const active = useRef(true);\n const waitRef = useRef(wait);\n const timeoutRef = useRef<number>(-1);\n\n const clearTimeout = () => window.clearTimeout(timeoutRef.current);\n\n const callThrottledCallback = useCallback(\n (...args: Parameters<T>) => {\n handleCallback(...args);\n latestInArgsRef.current = args;\n latestOutArgsRef.current = args;\n active.current = false;\n },\n [handleCallback],\n );\n\n const timerCallback = useCallback(() => {\n if (\n latestInArgsRef.current &&\n latestInArgsRef.current !== latestOutArgsRef.current\n ) {\n callThrottledCallback(...latestInArgsRef.current);\n\n timeoutRef.current = window.setTimeout(timerCallback, waitRef.current);\n } else {\n active.current = true;\n }\n }, [callThrottledCallback]);\n\n const throttled = useCallback(\n (...args: Parameters<T>) => {\n if (active.current) {\n callThrottledCallback(...args);\n timeoutRef.current = window.setTimeout(timerCallback, waitRef.current);\n } else {\n latestInArgsRef.current = args;\n }\n },\n [callThrottledCallback, timerCallback],\n );\n\n useEffect(() => {\n waitRef.current = wait;\n }, [wait]);\n\n return [throttled, clearTimeout] as const;\n}\n\nexport function useThrottledCallback<T extends (...args: never[]) => unknown>(\n callback: T,\n wait: number,\n) {\n return useThrottledCallbackWithClearTimeout(callback, wait)[0];\n}\n","import { useMediaQuery } from 'usehooks-ts';\n\nexport const useXSMediaQuery = () => {\n return useMediaQuery('(max-width: 389.99px)');\n};\n\nexport const useSMMediaQuery = () => {\n return useMediaQuery('(min-width: 390px)');\n};\n\nexport const useUpToMDMediaQuery = () => {\n return useMediaQuery('(max-width: 899.99px)');\n};\n\nexport const useMinMDMediaQuery = () => {\n return useMediaQuery('(min-width: 900px)');\n};\n\nexport const useMinLGMediaQuery = () => {\n return useMediaQuery('(min-width: 1440px)');\n};\n\nexport const useMinXLGMediaQuery = () => {\n return useMediaQuery('(min-width: 1920px)');\n};\n","export { useApi } from './useApi';\nexport { useWindowSize } from './useWindowResize';\nexport { useClickOutside } from './useClickOutside';\nexport { usePaginationRange } from './pagination/usePaginationRange';\nexport { useTextSizeDecrease } from './text/useTextSizeDecrease';\nexport { useDeviceType } from './useDeviceType';\nexport { useToggle } from './useToggle';\nexport { useUncontrolled } from './useUncontrolled';\nexport { createSafeContext } from './useSafeContext';\nexport { useResizeObserver, useElementSize } from './useResizeObserver';\nexport { useCallbackRef } from './useCallbackRef';\nexport { useDebouncedCallback } from './useDebouncedCallback';\nexport { useClipboard } from './useClipboard';\nexport {\n useThrottledCallback,\n useThrottledCallbackWithClearTimeout,\n} from './useThrottledCallback';\nexport * from './mediaQueries';\n","export * from './hooks';\n"],"names":["useState","useApi","fetcherFn","initialValue","isLoading","setIsLoading","error","setError","data","setData","query","args","respData","err","useEffect","useWindowSize","windowSize","setWindowSize","width","window","innerWidth","height","innerHeight","handleResize","addEventListener","removeEventListener","useClickOutside","ref","onClickOutside","events","handler","e","current","contains","target","forEach","eventName","document","useMemo","generateRange","usePaginationRange","pagesCount","selectedPage","useRef","FONT_SIZE_REG_EXP","isOverflowing","el","container","scrollWidth","Number","clientWidth","resize","step","fontSize","getComputedStyle","matchResults","match","fsValue","fsUnit","style","useTextSizeDecrease","maxAttempts","textContainerRef","attemptsRef","checkAndResize","node","parentNode","isLarger","wordBreak","useMediaQuery","useDeviceType","isMD","isLG","isXLG","useReducer","useToggle","options","option","toggle","state","action","value","Function","index","Math","abs","indexOf","slice","concat","useUncontrolled","defaultValue","finalValue","onChange","uncontrolledValue","setUncontrolledValue","undefined","handleUncontrolledChange","val","payload","createContext","useContext","createElement","createSafeContext","errorMessage","Context","useSafeContext","ctx","Error","Provider","children","defaultState","x","y","top","left","bottom","right","useResizeObserver","frameID","rect","setRect","observer","ResizeObserver","entries","entry","cancelAnimationFrame","requestAnimationFrame","contentRect","observe","disconnect","useElementSize","useCallbackRef","callback","callbackRef","useDebouncedCallback","func","wait","timeoutRef","handleCallback","executedFunction","clearTimeout","setTimeout","cancel","useClipboard","timeout","copied","setCopied","copyTimeout","setCopyTimeout","handleCopyResult","copy","valueToCopy","navigator","clipboard","writeText","then","catch","reset","useCallback","useThrottledCallbackWithClearTimeout","latestInArgsRef","latestOutArgsRef","active","waitRef","callThrottledCallback","timerCallback","throttled","useThrottledCallback","useXSMediaQuery","useSMMediaQuery","useUpToMDMediaQuery","useMinMDMediaQuery","useMinLGMediaQuery","useMinXLGMediaQuery"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://SSAHooks/webpack/universalModuleDefinition","webpack://SSAHooks/webpack/bootstrap","webpack://SSAHooks/webpack/runtime/define property getters","webpack://SSAHooks/webpack/runtime/hasOwnProperty shorthand","webpack://SSAHooks/webpack/runtime/make namespace object","webpack://SSAHooks/external commonjs \"react\"","webpack://SSAHooks/./src/hooks/useApi.tsx","webpack://SSAHooks/./src/hooks/useWindowResize.tsx","webpack://SSAHooks/./src/hooks/useClickOutside.tsx","webpack://SSAHooks/external commonjs \"@ssa-ui-kit/utils\"","webpack://SSAHooks/./src/hooks/pagination/usePaginationRange.tsx","webpack://SSAHooks/./src/hooks/text/useTextSizeDecrease.ts","webpack://SSAHooks/external commonjs \"usehooks-ts\"","webpack://SSAHooks/./src/hooks/useDeviceType.ts","webpack://SSAHooks/./src/hooks/useToggle.ts","webpack://SSAHooks/./src/hooks/useUncontrolled.ts","webpack://SSAHooks/./src/hooks/useSafeContext.tsx","webpack://SSAHooks/./src/hooks/useResizeObserver.tsx","webpack://SSAHooks/./src/hooks/useCallbackRef.ts","webpack://SSAHooks/./src/hooks/useDebouncedCallback.ts","webpack://SSAHooks/./src/hooks/useClipboard.ts","webpack://SSAHooks/./src/hooks/useThrottledCallback.ts","webpack://SSAHooks/./src/hooks/mediaQueries.ts","webpack://SSAHooks/./src/hooks/index.ts","webpack://SSAHooks/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"SSAHooks\"] = factory();\n\telse\n\t\troot[\"SSAHooks\"] = factory();\n})(self, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"react\");","import { useState } from 'react';\n\nexport function useApi<T extends unknown[], D>(\n fetcherFn: (...args: T) => Promise<D>,\n initialValue?: D,\n) {\n const [isLoading, setIsLoading] = useState<boolean>(false);\n const [error, setError] = useState<unknown | null>(null);\n const [data, setData] = useState<D | undefined>(initialValue);\n\n const query = async (...args: Parameters<typeof fetcherFn>) => {\n setIsLoading(true);\n setError(null);\n\n try {\n const respData = await fetcherFn(...args);\n setData(respData);\n } catch (err) {\n setError(err);\n } finally {\n setIsLoading(false);\n }\n };\n\n return {\n isLoading,\n error,\n // TODO: useApi users should use type guards instead of \"data as D\"\n data: data as D,\n query,\n };\n}\n","import { useEffect, useState } from 'react';\n\nexport const useWindowSize = () => {\n const [windowSize, setWindowSize] = useState({\n width: window.innerWidth,\n height: window.innerHeight,\n });\n\n useEffect(() => {\n function handleResize() {\n setWindowSize({ width: window.innerWidth, height: window.innerHeight });\n }\n\n window.addEventListener('resize', handleResize);\n\n handleResize();\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n\n return windowSize;\n};\n","import { useEffect } from 'react';\n\ntype UseClickOutsideType = (\n ref: React.RefObject<HTMLElement | null>,\n fn: (e: Event) => void,\n) => void;\n\nexport const useClickOutside: UseClickOutsideType = (ref, onClickOutside) => {\n const events = ['mousedown', 'touchstart'];\n\n useEffect(() => {\n const handler = (e: Event) => {\n if (\n ref.current == null ||\n ref.current.contains(e.target as HTMLElement)\n ) {\n return;\n }\n onClickOutside(e);\n };\n\n events.forEach((eventName) =>\n document.addEventListener(eventName, handler),\n );\n\n return () =>\n events.forEach((eventName) =>\n document.removeEventListener(eventName, handler),\n );\n }, [ref, onClickOutside]);\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"@ssa-ui-kit/utils\");","import { useMemo } from 'react';\nimport { generateRange } from '@ssa-ui-kit/utils';\nimport { UsePaginationRangeProps } from './types';\n\nconst usePaginationRange = ({\n pagesCount,\n selectedPage,\n}: UsePaginationRangeProps) => {\n return useMemo(\n () => generateRange(pagesCount, selectedPage),\n [pagesCount, selectedPage],\n );\n};\n\nexport { usePaginationRange };\n","import { useEffect, useRef } from 'react';\nimport { useWindowSize } from '@hooks/useWindowResize';\n\nconst FONT_SIZE_REG_EXP = /(\\d+\\.?\\d+)(\\S+)/;\n\nconst isOverflowing = (\n el: HTMLElement,\n container: HTMLElement | null,\n): boolean => el.scrollWidth > Number(container?.clientWidth);\n\nconst resize = (el: HTMLElement, step: number) => {\n const fontSize = window.getComputedStyle(el).fontSize;\n const matchResults = fontSize.match(FONT_SIZE_REG_EXP);\n\n if (matchResults) {\n const [, fsValue, fsUnit] = matchResults;\n el.style.fontSize = `${Number(fsValue) - step}${fsUnit}`;\n }\n};\n\n/**\n * The hook does N attempts to decrease the font size\n * if its text content doesn't fit its parent's width.\n * If the text still overflows, it sets the `word-break` css rule.\n * The hook doesn't enlarge the font size if the parent's\n * width becomes wider.\n * */\nexport const useTextSizeDecrease = (maxAttempts = 5, step = 1) => {\n const textContainerRef = useRef<HTMLElement>(null);\n const attemptsRef = useRef<number>(0);\n const { width } = useWindowSize();\n\n const checkAndResize = () => {\n if (textContainerRef.current == null) {\n return;\n }\n\n const node = textContainerRef.current;\n const parentNode = node.parentNode as unknown as HTMLElement;\n\n let isLarger = isOverflowing(node, parentNode);\n\n while (attemptsRef.current < maxAttempts && isLarger) {\n resize(node, step);\n isLarger = isOverflowing(node, parentNode);\n ++attemptsRef.current;\n }\n\n if (isLarger) {\n node.style.wordBreak = 'break-all';\n }\n };\n\n useEffect(() => {\n checkAndResize();\n }, [textContainerRef, width]);\n\n return textContainerRef;\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"usehooks-ts\");","import { useMediaQuery } from 'usehooks-ts';\n\nexport const useDeviceType = () => {\n const isMD = useMediaQuery('(min-width: 900px)');\n const isLG = useMediaQuery('(min-width: 1440px)');\n const isXLG = useMediaQuery('(min-width: 1920px)');\n if (isXLG) {\n return 'xlg';\n }\n if (isLG) {\n return 'lg';\n }\n if (isMD) {\n return 'md';\n }\n return 'mobile';\n};\n","import { useReducer } from 'react';\n\nexport function useToggle<T = boolean>(\n options: readonly T[] = [false, true] as T[],\n) {\n const [[option], toggle] = useReducer(\n (state: T[], action: React.SetStateAction<T>) => {\n const value = action instanceof Function ? action(state[0]) : action;\n const index = Math.abs(state.indexOf(value));\n\n return state.slice(index).concat(state.slice(0, index));\n },\n options as T[],\n );\n\n return [option, toggle as (value?: React.SetStateAction<T>) => void] as const;\n}\n","import { useState } from 'react';\n\ninterface UseUncontrolledInput<T, P extends unknown[]> {\n value?: T;\n defaultValue?: T;\n finalValue?: T;\n onChange?: (value: T, ...payload: P) => void;\n}\n\nexport function useUncontrolled<T, P extends unknown[]>({\n value,\n defaultValue,\n finalValue,\n onChange = () => {},\n}: UseUncontrolledInput<T, P>): [\n T,\n (value: T, ...payload: P) => void,\n boolean,\n] {\n const [uncontrolledValue, setUncontrolledValue] = useState(\n defaultValue !== undefined ? defaultValue : finalValue,\n );\n\n const handleUncontrolledChange = (val: T, ...payload: P) => {\n setUncontrolledValue(val);\n onChange?.(val, ...payload);\n };\n\n if (value !== undefined) {\n return [value as T, onChange, true];\n }\n\n return [uncontrolledValue as T, handleUncontrolledChange, false];\n}\n","import { createContext, useContext, createElement } from 'react';\n\nexport function createSafeContext<ContextValue>(errorMessage: string) {\n const Context = createContext<ContextValue | null>(null);\n\n const useSafeContext = () => {\n const ctx = useContext(Context);\n if (ctx === null) {\n throw new Error(errorMessage);\n }\n return ctx;\n };\n\n const Provider = ({\n children,\n value,\n }: {\n value: ContextValue;\n children: React.ReactNode;\n }) => {\n return createElement(\n Context.Provider,\n {\n value,\n },\n children,\n );\n };\n\n return [Provider, useSafeContext] as const;\n}\n","import { useEffect, useMemo, useRef, useState } from 'react';\n\ntype ObserverRect = Omit<DOMRectReadOnly, 'toJSON'>;\n\nconst defaultState: ObserverRect = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n};\n\nexport function useResizeObserver<T extends HTMLElement>(\n options?: ResizeObserverOptions,\n) {\n const frameID = useRef(0);\n const ref = useRef<T>(null);\n\n const [rect, setRect] = useState<ObserverRect>(defaultState);\n\n const observer = useMemo(\n () =>\n typeof window !== 'undefined'\n ? new ResizeObserver((entries) => {\n const entry = entries[0];\n\n if (entry) {\n cancelAnimationFrame(frameID.current);\n\n frameID.current = requestAnimationFrame(() => {\n if (ref.current) {\n setRect(entry.contentRect);\n }\n });\n }\n })\n : null,\n [],\n );\n\n useEffect(() => {\n if (ref.current) {\n observer?.observe(ref.current, options);\n }\n\n return () => {\n observer?.disconnect();\n\n if (frameID.current) {\n cancelAnimationFrame(frameID.current);\n }\n };\n }, [ref.current]);\n\n return [ref, rect] as const;\n}\n\nexport function useElementSize<T extends HTMLElement>(\n options?: ResizeObserverOptions,\n) {\n const [ref, { width, height }] = useResizeObserver<T>(options);\n return { ref, width, height };\n}\n","import { useEffect, useMemo, useRef } from 'react';\n\nexport const useCallbackRef = <A extends unknown[], R>(\n callback: ((...args: A) => R) | undefined,\n): ((...args: A) => R) => {\n const callbackRef = useRef(callback);\n\n useEffect(() => {\n callbackRef.current = callback;\n });\n\n return useMemo(\n () => ((...args: A) => callbackRef.current?.(...args)) as (...args: A) => R,\n [],\n );\n};\n","import { useRef } from 'react';\nimport { useCallbackRef } from './useCallbackRef';\n\nexport const useDebouncedCallback = <T extends unknown[]>(\n func: (...args: T) => unknown,\n wait = 200,\n) => {\n const timeoutRef = useRef<NodeJS.Timeout>(null);\n const handleCallback = useCallbackRef(func);\n\n const executedFunction = (...args: T) => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n timeoutRef.current = setTimeout(() => {\n timeoutRef.current = null;\n handleCallback(...args);\n }, wait);\n };\n\n const cancel = function () {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n }\n };\n return [executedFunction, cancel, timeoutRef.current] as const;\n};\n","import { useState } from 'react';\n\nexport function useClipboard({ timeout = 2000 } = {}) {\n const [error, setError] = useState<Error | null>(null);\n const [copied, setCopied] = useState(false);\n const [copyTimeout, setCopyTimeout] = useState<number | null>(null);\n\n const handleCopyResult = (value: boolean) => {\n window.clearTimeout(copyTimeout!);\n setCopyTimeout(window.setTimeout(() => setCopied(false), timeout));\n setCopied(value);\n };\n\n const copy = (valueToCopy: string) => {\n if ('clipboard' in navigator) {\n navigator.clipboard\n .writeText(valueToCopy)\n .then(() => handleCopyResult(true))\n .catch((err) => setError(err));\n } else {\n setError(new Error('useClipboard: navigator.clipboard is not supported'));\n }\n };\n\n const reset = () => {\n setCopied(false);\n setError(null);\n window.clearTimeout(copyTimeout!);\n };\n\n return { copy, reset, error, copied };\n}\n","import { useCallback, useEffect, useRef } from 'react';\nimport { useCallbackRef } from './useCallbackRef';\n\nexport function useThrottledCallbackWithClearTimeout<\n T extends (...args: never[]) => unknown,\n>(callback: T, wait: number) {\n const handleCallback = useCallbackRef(callback);\n const latestInArgsRef = useRef<Parameters<T> | null>(null);\n const latestOutArgsRef = useRef<Parameters<T> | null>(null);\n const active = useRef(true);\n const waitRef = useRef(wait);\n const timeoutRef = useRef<number>(-1);\n\n const clearTimeout = () => window.clearTimeout(timeoutRef.current);\n\n const callThrottledCallback = useCallback(\n (...args: Parameters<T>) => {\n handleCallback(...args);\n latestInArgsRef.current = args;\n latestOutArgsRef.current = args;\n active.current = false;\n },\n [handleCallback],\n );\n\n const timerCallback = useCallback(() => {\n if (\n latestInArgsRef.current &&\n latestInArgsRef.current !== latestOutArgsRef.current\n ) {\n callThrottledCallback(...latestInArgsRef.current);\n\n timeoutRef.current = window.setTimeout(timerCallback, waitRef.current);\n } else {\n active.current = true;\n }\n }, [callThrottledCallback]);\n\n const throttled = useCallback(\n (...args: Parameters<T>) => {\n if (active.current) {\n callThrottledCallback(...args);\n timeoutRef.current = window.setTimeout(timerCallback, waitRef.current);\n } else {\n latestInArgsRef.current = args;\n }\n },\n [callThrottledCallback, timerCallback],\n );\n\n useEffect(() => {\n waitRef.current = wait;\n }, [wait]);\n\n return [throttled, clearTimeout] as const;\n}\n\nexport function useThrottledCallback<T extends (...args: never[]) => unknown>(\n callback: T,\n wait: number,\n) {\n return useThrottledCallbackWithClearTimeout(callback, wait)[0];\n}\n","import { useMediaQuery } from 'usehooks-ts';\n\nexport const useXSMediaQuery = () => {\n return useMediaQuery('(max-width: 389.99px)');\n};\n\nexport const useSMMediaQuery = () => {\n return useMediaQuery('(min-width: 390px)');\n};\n\nexport const useUpToMDMediaQuery = () => {\n return useMediaQuery('(max-width: 899.99px)');\n};\n\nexport const useMinMDMediaQuery = () => {\n return useMediaQuery('(min-width: 900px)');\n};\n\nexport const useMinLGMediaQuery = () => {\n return useMediaQuery('(min-width: 1440px)');\n};\n\nexport const useMinXLGMediaQuery = () => {\n return useMediaQuery('(min-width: 1920px)');\n};\n","export { useApi } from './useApi';\nexport { useWindowSize } from './useWindowResize';\nexport { useClickOutside } from './useClickOutside';\nexport { usePaginationRange } from './pagination/usePaginationRange';\nexport { useTextSizeDecrease } from './text/useTextSizeDecrease';\nexport { useDeviceType } from './useDeviceType';\nexport { useToggle } from './useToggle';\nexport { useUncontrolled } from './useUncontrolled';\nexport { createSafeContext } from './useSafeContext';\nexport { useResizeObserver, useElementSize } from './useResizeObserver';\nexport { useCallbackRef } from './useCallbackRef';\nexport { useDebouncedCallback } from './useDebouncedCallback';\nexport { useClipboard } from './useClipboard';\nexport {\n useThrottledCallback,\n useThrottledCallbackWithClearTimeout,\n} from './useThrottledCallback';\nexport * from './mediaQueries';\n","export * from './hooks';\n"],"names":["useState","useApi","fetcherFn","initialValue","isLoading","setIsLoading","error","setError","data","setData","query","args","respData","err","useEffect","useWindowSize","windowSize","setWindowSize","width","window","innerWidth","height","innerHeight","handleResize","addEventListener","removeEventListener","useClickOutside","ref","onClickOutside","events","handler","e","current","contains","target","forEach","eventName","document","useMemo","generateRange","usePaginationRange","pagesCount","selectedPage","useRef","FONT_SIZE_REG_EXP","isOverflowing","el","container","scrollWidth","Number","clientWidth","resize","step","fontSize","getComputedStyle","matchResults","match","fsValue","fsUnit","style","useTextSizeDecrease","maxAttempts","textContainerRef","attemptsRef","checkAndResize","node","parentNode","isLarger","wordBreak","useMediaQuery","useDeviceType","isMD","isLG","isXLG","useReducer","useToggle","options","option","toggle","state","action","value","Function","index","Math","abs","indexOf","slice","concat","useUncontrolled","defaultValue","finalValue","onChange","uncontrolledValue","setUncontrolledValue","undefined","handleUncontrolledChange","val","payload","createContext","useContext","createElement","createSafeContext","errorMessage","Context","useSafeContext","ctx","Error","Provider","children","defaultState","x","y","top","left","bottom","right","useResizeObserver","frameID","rect","setRect","observer","ResizeObserver","entries","entry","cancelAnimationFrame","requestAnimationFrame","contentRect","observe","disconnect","useElementSize","useCallbackRef","callback","callbackRef","useDebouncedCallback","func","wait","timeoutRef","handleCallback","executedFunction","clearTimeout","setTimeout","cancel","useClipboard","timeout","copied","setCopied","copyTimeout","setCopyTimeout","handleCopyResult","copy","valueToCopy","navigator","clipboard","writeText","then","catch","reset","useCallback","useThrottledCallbackWithClearTimeout","latestInArgsRef","latestOutArgsRef","active","waitRef","callThrottledCallback","timerCallback","throttled","useThrottledCallback","useXSMediaQuery","useSMMediaQuery","useUpToMDMediaQuery","useMinMDMediaQuery","useMinLGMediaQuery","useMinXLGMediaQuery"],"ignoreList":[],"sourceRoot":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ssa-ui-kit/hooks",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.32.0-canary-b64be64-20251219",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"private": false,
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
"dist"
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"usehooks-ts": "3.1.
|
|
26
|
-
"@ssa-ui-kit/utils": "^2.
|
|
25
|
+
"usehooks-ts": "3.1.1",
|
|
26
|
+
"@ssa-ui-kit/utils": "^2.32.0-canary-b64be64-20251219"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"react": "18.x"
|
|
29
|
+
"react": "18.x || 19.x"
|
|
30
30
|
},
|
|
31
31
|
"peerDependenciesMeta": {
|
|
32
32
|
"@types/react": {
|