feat(server,web): system config for admin (#959)

* feat: add admin config module for user configured config, uses it for ffmpeg

* feat: add api endpoint to retrieve admin config settings and values

* feat: add settings panel to admin page on web (wip)

* feat: add api endpoint to update the admin config

* chore: re-generate openapi spec after rebase

* refactor: move from admin config to system config naming

* chore: move away from UseGuards to new @Authenticated decorator

* style: dark mode styling for lists and fix conflicting colors

* wip: 2 column design, no edit button

* refactor: system config

* chore: generate open api

* chore: rm broken test

* chore: cleanup types

* refactor: config module names

Co-authored-by: Zack Pollard <zackpollard@ymail.com>
Co-authored-by: Zack Pollard <zack.pollard@moonpig.com>
This commit is contained in:
Jason Rasmussen 2022-11-14 23:39:32 -05:00 committed by GitHub
parent d3c35ec9c5
commit b5d75e2016
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
52 changed files with 2062 additions and 38 deletions

View file

@ -8,6 +8,7 @@ import {
JobApi,
OAuthApi,
ServerInfoApi,
SystemConfigApi,
UserApi
} from './open-api';
@ -20,6 +21,7 @@ class ImmichApi {
public deviceInfoApi: DeviceInfoApi;
public serverInfoApi: ServerInfoApi;
public jobApi: JobApi;
public systemConfigApi: SystemConfigApi;
private config = new Configuration({ basePath: '/api' });
@ -32,6 +34,7 @@ class ImmichApi {
this.deviceInfoApi = new DeviceInfoApi(this.config);
this.serverInfoApi = new ServerInfoApi(this.config);
this.jobApi = new JobApi(this.config);
this.systemConfigApi = new SystemConfigApi(this.config);
}
public setAccessToken(accessToken: string) {