mirror of
https://github.com/immich-app/immich
synced 2025-11-07 17:27:20 +00:00
feat(server,web): server config (#4006)
* feat: server config * chore: open api * fix: redirect /map to /photos when disabled
This commit is contained in:
parent
3edade6761
commit
f1db257628
48 changed files with 1103 additions and 162 deletions
37
web/src/lib/stores/server-config.store.ts
Normal file
37
web/src/lib/stores/server-config.store.ts
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
import { api, ServerConfigDto, ServerFeaturesDto } from '@api';
|
||||
import { writable } from 'svelte/store';
|
||||
|
||||
export type FeatureFlags = ServerFeaturesDto & { loaded: boolean };
|
||||
|
||||
export const featureFlags = writable<FeatureFlags>({
|
||||
loaded: false,
|
||||
clipEncode: true,
|
||||
facialRecognition: true,
|
||||
sidecar: true,
|
||||
tagImage: true,
|
||||
map: true,
|
||||
search: true,
|
||||
oauth: false,
|
||||
oauthAutoLaunch: false,
|
||||
passwordLogin: true,
|
||||
configFile: false,
|
||||
});
|
||||
|
||||
export type ServerConfig = ServerConfigDto & { loaded: boolean };
|
||||
|
||||
export const serverConfig = writable<ServerConfig>({
|
||||
loaded: false,
|
||||
oauthButtonText: '',
|
||||
mapTileUrl: '',
|
||||
loginPageMessage: '',
|
||||
});
|
||||
|
||||
export const loadConfig = async () => {
|
||||
const [{ data: flags }, { data: config }] = await Promise.all([
|
||||
api.serverInfoApi.getServerFeatures(),
|
||||
api.serverInfoApi.getServerConfig(),
|
||||
]);
|
||||
|
||||
featureFlags.update(() => ({ ...flags, loaded: true }));
|
||||
serverConfig.update(() => ({ ...config, loaded: true }));
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue