UNPKG

@grafana/ui

Version:
1 lines 1.14 kB
{"version":3,"file":"hooks.cjs","sources":["../../../../src/components/List/hooks.ts"],"sourcesContent":["import { type Dispatch, type SetStateAction, useEffect, useRef, useState } from 'react';\n\nexport function useLimit(providedLimit: number): [number, Dispatch<SetStateAction<number>>] {\n const [curLimit, setLimit] = useState(providedLimit);\n const lastProvidedLimit = useRef(providedLimit);\n useEffect(() => {\n if (lastProvidedLimit.current !== providedLimit && curLimit !== providedLimit) {\n setLimit(providedLimit);\n lastProvidedLimit.current = providedLimit;\n }\n }, [providedLimit, curLimit]);\n return [curLimit, setLimit];\n}\n"],"names":["useState","useRef","useEffect"],"mappings":";;;;;;;AAEO,SAAS,SAAS,aAAA,EAAmE;AAC1F,EAAA,MAAM,CAAC,QAAA,EAAU,QAAQ,CAAA,GAAIA,eAAS,aAAa,CAAA;AACnD,EAAA,MAAM,iBAAA,GAAoBC,aAAO,aAAa,CAAA;AAC9C,EAAAC,eAAA,CAAU,MAAM;AACd,IAAA,IAAI,iBAAA,CAAkB,OAAA,KAAY,aAAA,IAAiB,QAAA,KAAa,aAAA,EAAe;AAC7E,MAAA,QAAA,CAAS,aAAa,CAAA;AACtB,MAAA,iBAAA,CAAkB,OAAA,GAAU,aAAA;AAAA,IAC9B;AAAA,EACF,CAAA,EAAG,CAAC,aAAA,EAAe,QAAQ,CAAC,CAAA;AAC5B,EAAA,OAAO,CAAC,UAAU,QAAQ,CAAA;AAC5B;;;;"}