You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
14 lines
574 B
14 lines
574 B
import { createOpenmeteoClient } from '../integration/weather/openmeteo';
|
|
import { WeatherProvider } from '../integration/weather/types';
|
|
import { createCachedDataProvider } from '../storage/cache';
|
|
import { createKeyValueStorage } from '../storage/inMemoryDB';
|
|
|
|
export const createOpenmeteoClientWithCache = (): WeatherProvider => {
|
|
return {
|
|
getCurrentWeather: createCachedDataProvider({
|
|
cacheStorage: createKeyValueStorage(20),
|
|
getNewValue: createOpenmeteoClient().getCurrentWeather,
|
|
ttlMs: 7_200_000,
|
|
}),
|
|
};
|
|
};
|
|
|