UNPKG

1.29 kBSource Map (JSON)View Raw
1{"version":3,"sources":["useLocalStorage.js"],"names":["useLocalStorage","localStorageKey","defaultValue","window","localStorage","getItem","JSON","stringify","value","setValue","setItem"],"mappings":";;;;;;;AAAA;;AACA;;;;;;;;;;;;AAKA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,eAAD,EAAkBC,YAAlB,EAAmC;AAAA,kBAC/B,qBACxB,iCACEC,MAAM,CAACC,YAAP,CAAoBC,OAApB,CAA4BJ,eAA5B,KACGK,IAAI,CAACC,SAAL,CAAeL,YAAf,CAFL,CADwB,CAD+B;AAAA;AAAA,MAClDM,KADkD;AAAA,MAC3CC,QAD2C;;AAQzD,wBAAU,YAAM;AACdN,IAAAA,MAAM,CAACC,YAAP,CAAoBM,OAApB,CAA4BT,eAA5B,EAA6CK,IAAI,CAACC,SAAL,CAAeC,KAAf,CAA7C;AACD,GAFD,EAEG,CAACP,eAAD,EAAkBO,KAAlB,CAFH;AAIA,SAAO,CAACA,KAAD,EAAQC,QAAR,CAAP;AACD,CAbD;;eAeeT,e","sourcesContent":["import { useState, useEffect } from 'react';\nimport safelyParseJson from './utils/safelyParseJson';\n\n/**\n * Save a value on local storage\n */\nconst useLocalStorage = (localStorageKey, defaultValue) => {\n const [value, setValue] = useState(\n safelyParseJson(\n window.localStorage.getItem(localStorageKey)\n || JSON.stringify(defaultValue),\n ),\n );\n\n useEffect(() => {\n window.localStorage.setItem(localStorageKey, JSON.stringify(value));\n }, [localStorageKey, value]);\n\n return [value, setValue];\n};\n\nexport default useLocalStorage;\n"],"file":"useLocalStorage.js"}
\No newline at end of file