Renamed SaveSettingsStep to more logical SaveSettingStatus

This commit is contained in:
the-djmaze 2022-09-26 14:02:30 +02:00
parent 0864d306d6
commit 118558cdfd
8 changed files with 36 additions and 36 deletions

View file

@ -29,11 +29,11 @@ UploadErrorCode = {
/** /**
* @enum {number} * @enum {number}
*/ */
SaveSettingsStep = { SaveSettingStatus = {
Animate: -2, Saving: -2,
Idle: -1, Idle: -1,
TrueResult: 1, Success: 1,
FalseResult: 0 Failed: 0
}, },
/** /**

View file

@ -1,4 +1,4 @@
import { SaveSettingsStep } from 'Common/Enums'; import { SaveSettingStatus } from 'Common/Enums';
import { elementById } from 'Common/Globals'; import { elementById } from 'Common/Globals';
let __themeTimer = 0, let __themeTimer = 0,
@ -40,14 +40,14 @@ export const
changeTheme = (value, themeTrigger = ()=>0) => { changeTheme = (value, themeTrigger = ()=>0) => {
const themeStyle = elementById('app-theme-style'), const themeStyle = elementById('app-theme-style'),
clearTimer = () => { clearTimer = () => {
__themeTimer = setTimeout(() => themeTrigger(SaveSettingsStep.Idle), 1000); __themeTimer = setTimeout(() => themeTrigger(SaveSettingStatus.Idle), 1000);
__themeJson = null; __themeJson = null;
}, },
url = themeStyle.dataset.href.replace(/(Admin|User)\/-\/[^/]+\//, '$1/-/' + value + '/') + 'Json/'; url = themeStyle.dataset.href.replace(/(Admin|User)\/-\/[^/]+\//, '$1/-/' + value + '/') + 'Json/';
clearTimeout(__themeTimer); clearTimeout(__themeTimer);
themeTrigger(SaveSettingsStep.Animate); themeTrigger(SaveSettingStatus.Saving);
if (__themeJson) { if (__themeJson) {
__themeJson.abort(); __themeJson.abort();
@ -61,7 +61,7 @@ export const
.then(data => { .then(data => {
if (2 === arrayLength(data)) { if (2 === arrayLength(data)) {
themeStyle.textContent = data[1]; themeStyle.textContent = data[1];
themeTrigger(SaveSettingsStep.TrueResult); themeTrigger(SaveSettingStatus.Success);
} }
}) })
.then(clearTimer, clearTimer); .then(clearTimer, clearTimer);

View file

@ -1,6 +1,6 @@
import ko from 'ko'; import ko from 'ko';
import { pInt } from 'Common/Utils'; import { pInt } from 'Common/Utils';
import { SaveSettingsStep } from 'Common/Enums'; import { SaveSettingStatus } from 'Common/Enums';
import { koComputable } from 'External/ko'; import { koComputable } from 'External/ko';
import { dispose } from 'External/ko'; import { dispose } from 'External/ko';
@ -23,10 +23,10 @@ export class AbstractInput {
classForTrigger = ko.observable(''), classForTrigger = ko.observable(''),
setTriggerState = value => { setTriggerState = value => {
switch (pInt(value)) { switch (pInt(value)) {
case SaveSettingsStep.TrueResult: case SaveSettingStatus.Success:
classForTrigger('success'); classForTrigger('success');
break; break;
case SaveSettingsStep.FalseResult: case SaveSettingStatus.Failed:
classForTrigger('error'); classForTrigger('error');
break; break;
default: default:

12
dev/External/ko.js vendored
View file

@ -1,7 +1,7 @@
import ko from 'ko'; import ko from 'ko';
import { i18nToNodes } from 'Common/Translator'; import { i18nToNodes } from 'Common/Translator';
import { doc, createElement } from 'Common/Globals'; import { doc, createElement } from 'Common/Globals';
import { SaveSettingsStep } from 'Common/Enums'; import { SaveSettingStatus } from 'Common/Enums';
import { isFunction, forEachObjectEntry } from 'Common/Utils'; import { isFunction, forEachObjectEntry } from 'Common/Utils';
export const export const
@ -146,13 +146,13 @@ Object.assign(ko.bindingHandlers, {
const value = parseInt(ko.unwrap(fValueAccessor()),10); const value = parseInt(ko.unwrap(fValueAccessor()),10);
let cl = (element.saveTriggerIcon || element).classList; let cl = (element.saveTriggerIcon || element).classList;
if (element.saveTriggerIcon) { if (element.saveTriggerIcon) {
cl.toggle('saving', value === SaveSettingsStep.Animate); cl.toggle('saving', value === SaveSettingStatus.Saving);
cl.toggle('success', value === SaveSettingsStep.TrueResult); cl.toggle('success', value === SaveSettingStatus.Success);
cl.toggle('error', value === SaveSettingsStep.FalseResult); cl.toggle('error', value === SaveSettingStatus.Failed);
} }
cl = element.classList; cl = element.classList;
cl.toggle('success', value === SaveSettingsStep.TrueResult); cl.toggle('success', value === SaveSettingStatus.Success);
cl.toggle('error', value === SaveSettingsStep.FalseResult); cl.toggle('error', value === SaveSettingStatus.Failed);
} }
} }
}); });

View file

@ -4,7 +4,7 @@ import { addObservablesTo, addComputablesTo, addSubscribablesTo } from 'External
import { keyScope, SettingsGet, leftPanelDisabled, elementById } from 'Common/Globals'; import { keyScope, SettingsGet, leftPanelDisabled, elementById } from 'Common/Globals';
import { ViewTypePopup, showScreenPopup } from 'Knoin/Knoin'; import { ViewTypePopup, showScreenPopup } from 'Knoin/Knoin';
import { SaveSettingsStep } from 'Common/Enums'; import { SaveSettingStatus } from 'Common/Enums';
class AbstractView { class AbstractView {
constructor(templateID, type) constructor(templateID, type)
@ -123,16 +123,16 @@ export class AbstractViewSettings
trigger = prop + 'Trigger'; trigger = prop + 'Trigger';
addObservablesTo(this, { addObservablesTo(this, {
[prop]: SettingsGet(name), [prop]: SettingsGet(name),
[trigger]: SaveSettingsStep.Idle, [trigger]: SaveSettingStatus.Idle,
}); });
addSubscribablesTo(this, { addSubscribablesTo(this, {
[prop]: (value => { [prop]: (value => {
this[trigger](SaveSettingsStep.Animate); this[trigger](SaveSettingStatus.Saving);
valueCb?.(value); valueCb?.(value);
rl.app.Remote.saveSetting(name, value, rl.app.Remote.saveSetting(name, value,
iError => { iError => {
this[trigger](iError ? SaveSettingsStep.FalseResult : SaveSettingsStep.TrueResult); this[trigger](iError ? SaveSettingStatus.Failed : SaveSettingStatus.Success);
setTimeout(() => this[trigger](SaveSettingsStep.Idle), 1000); setTimeout(() => this[trigger](SaveSettingStatus.Idle), 1000);
} }
); );
}).debounce(999), }).debounce(999),

View file

@ -8,7 +8,7 @@ import {
import { addObservablesTo, addSubscribablesTo, addComputablesTo } from 'External/ko'; import { addObservablesTo, addSubscribablesTo, addComputablesTo } from 'External/ko';
import { SaveSettingsStep } from 'Common/Enums'; import { SaveSettingStatus } from 'Common/Enums';
import { Settings, SettingsGet, SettingsCapa } from 'Common/Globals'; import { Settings, SettingsGet, SettingsCapa } from 'Common/Globals';
import { translatorReload, convertLangName } from 'Common/Translator'; import { translatorReload, convertLangName } from 'Common/Translator';
@ -38,8 +38,8 @@ export class AdminSettingsGeneral extends AbstractViewSettings {
this.addSettings(['AllowLanguagesOnSettings','NewMoveToFolder']); this.addSettings(['AllowLanguagesOnSettings','NewMoveToFolder']);
addObservablesTo(this, { addObservablesTo(this, {
attachmentLimitTrigger: SaveSettingsStep.Idle, attachmentLimitTrigger: SaveSettingStatus.Idle,
themeTrigger: SaveSettingsStep.Idle, themeTrigger: SaveSettingStatus.Idle,
capaThemes: SettingsCapa('Themes'), capaThemes: SettingsCapa('Themes'),
capaUserBackground: SettingsCapa('UserBackground'), capaUserBackground: SettingsCapa('UserBackground'),
capaAdditionalAccounts: SettingsCapa('AdditionalAccounts'), capaAdditionalAccounts: SettingsCapa('AdditionalAccounts'),
@ -82,19 +82,19 @@ export class AdminSettingsGeneral extends AbstractViewSettings {
languageAdminFullName: () => convertLangName(this.languageAdmin()) languageAdminFullName: () => convertLangName(this.languageAdmin())
}); });
this.languageAdminTrigger = ko.observable(SaveSettingsStep.Idle).extend({ debounce: 100 }); this.languageAdminTrigger = ko.observable(SaveSettingStatus.Idle).extend({ debounce: 100 });
const fReloadLanguageHelper = (saveSettingsStep) => () => { const fReloadLanguageHelper = (saveSettingsStep) => () => {
this.languageAdminTrigger(saveSettingsStep); this.languageAdminTrigger(saveSettingsStep);
setTimeout(() => this.languageAdminTrigger(SaveSettingsStep.Idle), 1000); setTimeout(() => this.languageAdminTrigger(SaveSettingStatus.Idle), 1000);
}, },
fSaveHelper = key => value => Remote.saveSetting(key, value); fSaveHelper = key => value => Remote.saveSetting(key, value);
addSubscribablesTo(this, { addSubscribablesTo(this, {
languageAdmin: value => { languageAdmin: value => {
this.languageAdminTrigger(SaveSettingsStep.Animate); this.languageAdminTrigger(SaveSettingStatus.Saving);
translatorReload(true, value) translatorReload(true, value)
.then(fReloadLanguageHelper(SaveSettingsStep.TrueResult), fReloadLanguageHelper(SaveSettingsStep.FalseResult)) .then(fReloadLanguageHelper(SaveSettingStatus.Success), fReloadLanguageHelper(SaveSettingStatus.Failed))
.then(() => Remote.saveSetting('LanguageAdmin', value)); .then(() => Remote.saveSetting('LanguageAdmin', value));
}, },

View file

@ -1,7 +1,7 @@
import ko from 'ko'; import ko from 'ko';
import { SMAudio } from 'Common/Audio'; import { SMAudio } from 'Common/Audio';
import { SaveSettingsStep } from 'Common/Enums'; import { SaveSettingStatus } from 'Common/Enums';
import { EditorDefaultType, Layout } from 'Common/EnumsUser'; import { EditorDefaultType, Layout } from 'Common/EnumsUser';
import { Settings, SettingsGet } from 'Common/Globals'; import { Settings, SettingsGet } from 'Common/Globals';
import { isArray } from 'Common/Utils'; import { isArray } from 'Common/Utils';
@ -48,7 +48,7 @@ export class UserSettingsGeneral extends AbstractViewSettings {
this.allowLanguagesOnSettings = !!SettingsGet('AllowLanguagesOnSettings'); this.allowLanguagesOnSettings = !!SettingsGet('AllowLanguagesOnSettings');
this.languageTrigger = ko.observable(SaveSettingsStep.Idle); this.languageTrigger = ko.observable(SaveSettingStatus.Idle);
this.identities = IdentityUserStore; this.identities = IdentityUserStore;
@ -103,14 +103,14 @@ export class UserSettingsGeneral extends AbstractViewSettings {
const fReloadLanguageHelper = (saveSettingsStep) => () => { const fReloadLanguageHelper = (saveSettingsStep) => () => {
this.languageTrigger(saveSettingsStep); this.languageTrigger(saveSettingsStep);
setTimeout(() => this.languageTrigger(SaveSettingsStep.Idle), 1000); setTimeout(() => this.languageTrigger(SaveSettingStatus.Idle), 1000);
}; };
addSubscribablesTo(this, { addSubscribablesTo(this, {
language: value => { language: value => {
this.languageTrigger(SaveSettingsStep.Animate); this.languageTrigger(SaveSettingStatus.Saving);
translatorReload(false, value) translatorReload(false, value)
.then(fReloadLanguageHelper(SaveSettingsStep.TrueResult), fReloadLanguageHelper(SaveSettingsStep.FalseResult)) .then(fReloadLanguageHelper(SaveSettingStatus.Success), fReloadLanguageHelper(SaveSettingStatus.Failed))
.then(() => Remote.saveSetting('Language', value)); .then(() => Remote.saveSetting('Language', value));
}, },

View file

@ -1,6 +1,6 @@
import { addObservablesTo } from 'External/ko'; import { addObservablesTo } from 'External/ko';
import { SaveSettingsStep, UploadErrorCode } from 'Common/Enums'; import { SaveSettingStatus, UploadErrorCode } from 'Common/Enums';
import { changeTheme, convertThemeName } from 'Common/Utils'; import { changeTheme, convertThemeName } from 'Common/Utils';
import { themePreviewLink, serverRequest } from 'Common/Links'; import { themePreviewLink, serverRequest } from 'Common/Links';
import { i18n } from 'Common/Translator'; import { i18n } from 'Common/Translator';
@ -29,7 +29,7 @@ export class UserSettingsThemes /*extends AbstractViewSettings*/ {
themeBackground.enabled = SettingsCapa('UserBackground'); themeBackground.enabled = SettingsCapa('UserBackground');
this.background = themeBackground; this.background = themeBackground;
this.themeTrigger = ko.observable(SaveSettingsStep.Idle).extend({ debounce: 100 }); this.themeTrigger = ko.observable(SaveSettingStatus.Idle).extend({ debounce: 100 });
ThemeStore.theme.subscribe(value => { ThemeStore.theme.subscribe(value => {
this.themesObjects.forEach(theme => { this.themesObjects.forEach(theme => {