fix: improve performance of setting patterning

This commit is contained in:
Felix Roos 2023-08-27 15:35:44 +02:00
parent 88651149d3
commit 6f6def34f7

View File

@ -38,13 +38,15 @@ export const setLatestCode = (code) => settingsMap.setKey('latestCode', code);
export const setIsZen = (active) => settingsMap.setKey('isZen', !!active); export const setIsZen = (active) => settingsMap.setKey('isZen', !!active);
const patternSetting = (key) => const patternSetting = (key) =>
register(key, (value, pat) => { register(key, (value, pat) =>
value = Array.isArray(value) ? value.join(' ') : value; pat.onTrigger(() => {
if (value !== settingsMap.get()[key]) { value = Array.isArray(value) ? value.join(' ') : value;
settingsMap.setKey(key, value); if (value !== settingsMap.get()[key]) {
} settingsMap.setKey(key, value);
return pat; }
}); return pat;
}, false),
);
export const theme = patternSetting('theme'); export const theme = patternSetting('theme');
export const fontFamily = patternSetting('fontFamily'); export const fontFamily = patternSetting('fontFamily');