Merge branch 'setttingssync' into shigusegubu-themes3
This commit is contained in:
commit
276caef91b
2 changed files with 23 additions and 17 deletions
|
|
@ -688,7 +688,7 @@ export const SYNC_DEFAULT_CONFIG_DEFINITIONS = {
|
||||||
description: 'Object containing mute filters',
|
description: 'Object containing mute filters',
|
||||||
type: 'object',
|
type: 'object',
|
||||||
default: {},
|
default: {},
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
export const SYNC_DEFAULT_CONFIG = convertDefinitions(
|
export const SYNC_DEFAULT_CONFIG = convertDefinitions(
|
||||||
SYNC_DEFAULT_CONFIG_DEFINITIONS,
|
SYNC_DEFAULT_CONFIG_DEFINITIONS,
|
||||||
|
|
@ -764,8 +764,14 @@ export const validateSetting = ({
|
||||||
validateObjects = true,
|
validateObjects = true,
|
||||||
}) => {
|
}) => {
|
||||||
const path = fullPath.replace(/^simple./, '')
|
const path = fullPath.replace(/^simple./, '')
|
||||||
if (validateObjects && definition.type === 'object' && path.split('.').length <= 1) {
|
if (
|
||||||
console.error(`attempt to set object ${fullPath} instead of its children. ignoring.`)
|
validateObjects &&
|
||||||
|
definition.type === 'object' &&
|
||||||
|
path.split('.').length <= 1
|
||||||
|
) {
|
||||||
|
console.error(
|
||||||
|
`attempt to set object ${fullPath} instead of its children. ignoring.`,
|
||||||
|
)
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -777,21 +777,21 @@ export const useSyncConfigStore = defineStore('sync_config', {
|
||||||
afterLoad(state) {
|
afterLoad(state) {
|
||||||
console.debug('Validating persisted state of SyncConfig')
|
console.debug('Validating persisted state of SyncConfig')
|
||||||
const newState = { ...state }
|
const newState = { ...state }
|
||||||
const newEntries = Object.entries(ROOT_CONFIG).map(
|
const newEntries = Object.entries(ROOT_CONFIG).map(([path, value]) => {
|
||||||
([path, value]) => {
|
const definition = ROOT_CONFIG_DEFINITIONS[path]
|
||||||
const definition = ROOT_CONFIG_DEFINITIONS[path]
|
const finalValue = validateSetting({
|
||||||
const finalValue = validateSetting({
|
path,
|
||||||
path,
|
value: newState.prefsStorage.simple[path],
|
||||||
value: newState.prefsStorage.simple[path],
|
definition,
|
||||||
definition,
|
throwError: false,
|
||||||
throwError: false,
|
validateObjects: false,
|
||||||
validateObjects: false,
|
defaultState: ROOT_CONFIG,
|
||||||
defaultState: ROOT_CONFIG,
|
})
|
||||||
})
|
|
||||||
|
|
||||||
return finalValue === undefined ? definition.default : [path, finalValue]
|
return finalValue === undefined
|
||||||
},
|
? definition.default
|
||||||
)
|
: [path, finalValue]
|
||||||
|
})
|
||||||
newState.prefsStorage.simple = Object.fromEntries(
|
newState.prefsStorage.simple = Object.fromEntries(
|
||||||
newEntries.filter((_) => _),
|
newEntries.filter((_) => _),
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue