mirror of
https://github.com/wukko/cobalt.git
synced 2025-06-12 13:17:45 +02:00
web/api: send parameters to server only if they differ from defaults
This commit is contained in:
14
web/src/lib/settings/lazy-get.ts
Normal file
14
web/src/lib/settings/lazy-get.ts
Normal file
@ -0,0 +1,14 @@
|
||||
import type { CobaltSettings } from "$lib/types/settings";
|
||||
import defaults from "./defaults";
|
||||
|
||||
export default function lazySettingGetter(settings: CobaltSettings) {
|
||||
// Returns the setting value only if it differs from the default.
|
||||
return <
|
||||
Context extends Exclude<keyof CobaltSettings, 'schemaVersion'>,
|
||||
Id extends keyof CobaltSettings[Context]
|
||||
>(context: Context, key: Id) => {
|
||||
if (defaults[context][key] !== settings[context][key]) {
|
||||
return settings[context][key];
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user