1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-01-06 00:07:44 +01:00
unleash.unleash/frontend/src/hooks/useClearSWRCache.ts

15 lines
529 B
TypeScript
Raw Normal View History

import { useSWRConfig } from 'swr';
/**
With dynamic search and filter parameters we want to prevent cache from growing extensively.
We only keep the latest cache key `currentKey` and remove all other entries identified
by the `clearPrefix`
*/
export const useClearSWRCache = (currentKey: string, clearPrefix: string) => {
const { cache } = useSWRConfig();
const keys = [...cache.keys()];
keys.filter((key) => key !== currentKey && key.startsWith(clearPrefix)).map(
(key) => cache.delete(key),
);
};