UNPKG

@transkripid/flowbite-react

Version:

Official React components built for Flowbite and Tailwind CSS - Transkrip.id fork

1 lines 1.64 kB
{"version":3,"file":"use-watch-localstorage-value.mjs","sources":["../../src/hooks/use-watch-localstorage-value.ts"],"sourcesContent":["'use client';\n\nimport { useEffect } from 'react';\n\n/**\n * Triggers `onChange` when another browser tab instance mutates the LS value.\n */\nexport const useWatchLocalStorageValue = ({\n key: watchKey,\n onChange,\n}: {\n key: string;\n onChange(newValue: string | null): void;\n}) => {\n function handleStorageChange({ key, newValue }: StorageEvent) {\n if (key === watchKey) onChange(newValue);\n }\n\n useEffect(() => {\n window.addEventListener('storage', handleStorageChange);\n return () => window.removeEventListener('storage', handleStorageChange);\n }, []); // eslint-disable-line\n};\n"],"names":["useWatchLocalStorageValue","t0","$","_c","key","watchKey","onChange","t1","t2","newValue","handleStorageChange","addEventListener","window","removeEventListener","t3","Symbol","for","useEffect"],"mappings":";;AAOO,MAAMA,IAA4BC,CAAAA,MAAA;AAAAC,QAAAA,IAAAC,EAAA,CAAA,GAAC;AAAA,IAAAC,KAAAC;AAAAA,IAAAC,UAAAA;AAAAA,EAAAL,IAAAA;AAMzCM,MAAAA;AAAA,EAAAL,EAAAI,CAAAA,MAAAA,KAAAJ,SAAAG,KACCE,IAAA,SAAAC,GAAA;AAA6B,UAAA;AAAA,MAAAJ,KAAAA;AAAAA,MAAAK,UAAAA;AAAAA,IAAAD,IAAAA;AAA+B,IACtDJ,MAAQC,KAAUC,EAASG,CAAQ;AAAA,EAAC,GACzCP,OAAAI,GAAAJ,OAAAG,GAAAH,OAAAK,KAAAA,IAAAL,EAAA,CAAA;AAFD,QAAAQ,IAAAH;AAECC,MAAAA;AAAAN,EAAAA,SAAAQ,KAESF,IAAAA,OACRG,OAAAA,iBAAwB,WAAWD,CAAmB,GAAC,MAC1CE,OAAAC,oBAA2B,WAAWH,CAAmB,IACvER,OAAAQ,GAAAR,OAAAM,KAAAA,IAAAN,EAAA,CAAA;AAAAY,MAAAA;AAAA,EAAAZ,EAAA,CAAA,MAAAa,OAAAC,IAAA,2BAAA,KAAEF,IAAA,CAAA,GAAEZ,OAAAY,KAAAA,IAAAZ,EAAA,CAAA,GAHLe,EAAUT,GAGPM,CAAE;AAAC;"}