mirror of
https://github.com/XFox111/TabsAsideExtension.git
synced 2026-04-22 07:58:01 +03:00
28 lines
675 B
TypeScript
28 lines
675 B
TypeScript
export default function useStorageInfo(): StorageInfoHook
|
|
{
|
|
const [bytesInUse, setBytesInUse] = useState<number>(0);
|
|
|
|
useEffect(() =>
|
|
{
|
|
const updateValue = async () =>
|
|
setBytesInUse(await browser.storage.sync.getBytesInUse());
|
|
|
|
updateValue();
|
|
browser.storage.sync.onChanged.addListener(updateValue);
|
|
return () => browser.storage.sync.onChanged.removeListener(updateValue);
|
|
}, []);
|
|
|
|
return {
|
|
bytesInUse,
|
|
storageQuota: chrome.storage.sync.QUOTA_BYTES ?? 102400,
|
|
usedStorageRatio: bytesInUse / (chrome.storage.sync.QUOTA_BYTES ?? 102400)
|
|
};
|
|
}
|
|
|
|
export type StorageInfoHook =
|
|
{
|
|
bytesInUse: number;
|
|
storageQuota: number;
|
|
usedStorageRatio: number;
|
|
};
|