mirror of
https://github.com/nikdoof/pocket-id.git
synced 2025-12-13 23:02:17 +00:00
28 lines
904 B
TypeScript
28 lines
904 B
TypeScript
import AppConfigService from '$lib/services/app-config-service';
|
|
import type { AppVersionInformation } from '$lib/types/application-configuration';
|
|
import type { LayoutServerLoad } from './$types';
|
|
|
|
let versionInformation: AppVersionInformation;
|
|
let versionInformationLastUpdated: number;
|
|
|
|
export const load: LayoutServerLoad = async () => {
|
|
const appConfigService = new AppConfigService();
|
|
|
|
// Cache the version information for 3 hours
|
|
const cacheExpired =
|
|
versionInformationLastUpdated &&
|
|
Date.now() - versionInformationLastUpdated > 1000 * 60 * 60 * 3;
|
|
|
|
if (!versionInformation || cacheExpired) {
|
|
versionInformation = await appConfigService.getVersionInformation();
|
|
if (versionInformation.newestVersion == null) {
|
|
console.error('Failed to fetch version information. Trying again in 3 hours.');
|
|
}
|
|
versionInformationLastUpdated = Date.now();
|
|
}
|
|
|
|
return {
|
|
versionInformation
|
|
};
|
|
};
|