import type { ResponseDetailsType } from "managers"; import type { RequestInstance } from "request"; import type { ExtractAdapterResolvedType } from "types"; export const getCacheData = ( previousResponse: ExtractAdapterResolvedType | undefined, response: ExtractAdapterResolvedType & ResponseDetailsType, ): ExtractAdapterResolvedType & ResponseDetailsType => { const { data, success } = response; const previousData = !success && previousResponse ? previousResponse.data : null; const computedData = data || previousData; return { ...response, data: computedData }; }; export const getInvalidateKey = (): string => { return `invalidate`; }; export const getInvalidateByKey = (key: string): string => { return `${key}_invalidate`; }; export const getDeleteKey = (): string => { return `delete`; }; export const getDeleteByKey = (key: string): string => { return `${key}_delete`; }; export const getCacheByKey = (key: string): string => { return `${key}_cache`; }; export const getCacheKey = (): string => { return `cache`; };