@grafana/ui
Version:
Grafana Components Library
1 lines • 1.1 kB
Source Map (JSON)
{"version":3,"file":"hooks.mjs","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":[],"mappings":";;;AAEO,SAAS,SAAS,aAAA,EAAmE;AAC1F,EAAA,MAAM,CAAC,QAAA,EAAU,QAAQ,CAAA,GAAI,SAAS,aAAa,CAAA;AACnD,EAAA,MAAM,iBAAA,GAAoB,OAAO,aAAa,CAAA;AAC9C,EAAA,SAAA,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;;;;"}