2024-02-26 03:08:59 +01:00

28 lines
652 B
TypeScript

import {
payload,
type EndpointKey,
type EndpointRecorder,
type Language,
} from "src/shared/payload/payload-sdk";
type Cache = {
locales: Language[];
currencies: string[];
keys: EndpointKey[];
recorders: EndpointRecorder[];
};
const fetchNewData = async (): Promise<Cache> => ({
locales: (await payload.getLanguages()),
currencies: (await payload.getCurrencies()).map(({ id }) => id),
keys: await payload.getKeys(),
recorders: await payload.getRecorders(),
});
export let cache = await fetchNewData();
setInterval(async () => {
console.log("Refreshing cached Payload data");
cache = await fetchNewData();
}, 1000_000);