forked from AkkomaGang/admin-fe
Parse and wrap atoms
This commit is contained in:
parent
bb2a78ae52
commit
191199a41c
2 changed files with 17 additions and 4 deletions
|
@ -80,7 +80,9 @@ const wrapValues = settings => {
|
||||||
return Object.keys(settings).map(setting => {
|
return Object.keys(settings).map(setting => {
|
||||||
const [type, value] = settings[setting]
|
const [type, value] = settings[setting]
|
||||||
if (type === 'keyword') {
|
if (type === 'keyword') {
|
||||||
return { 'tuple': [setting, wrapValues(setting, value)] }
|
return { 'tuple': [setting, wrapValues(value)] }
|
||||||
|
} else if (type === 'atom') {
|
||||||
|
return { 'tuple': [setting, `:${value}`] }
|
||||||
} else {
|
} else {
|
||||||
return { 'tuple': [setting, value] }
|
return { 'tuple': [setting, value] }
|
||||||
}
|
}
|
||||||
|
|
|
@ -259,6 +259,8 @@ export default {
|
||||||
} else if ((this.settingGroup.group === ':logger' && this.setting.key === ':backends') ||
|
} else if ((this.settingGroup.group === ':logger' && this.setting.key === ':backends') ||
|
||||||
this.setting.key === 'Pleroma.Web.Auth.Authenticator') {
|
this.setting.key === 'Pleroma.Web.Auth.Authenticator') {
|
||||||
return this.data.value
|
return this.data.value
|
||||||
|
} else if (this.setting.type === 'atom') {
|
||||||
|
return this.data[this.setting.key] && this.data[this.setting.key][0] === ':' ? this.data[this.setting.key].substr(1) : this.data[this.setting.key]
|
||||||
} else {
|
} else {
|
||||||
return this.data[this.setting.key]
|
return this.data[this.setting.key]
|
||||||
}
|
}
|
||||||
|
@ -303,6 +305,12 @@ export default {
|
||||||
},
|
},
|
||||||
rewritePolicyValue() {
|
rewritePolicyValue() {
|
||||||
return typeof this.data[this.setting.key] === 'string' ? [this.data[this.setting.key]] : this.data[this.setting.key]
|
return typeof this.data[this.setting.key] === 'string' ? [this.data[this.setting.key]] : this.data[this.setting.key]
|
||||||
|
},
|
||||||
|
settings() {
|
||||||
|
return this.$store.state.settings.settings
|
||||||
|
},
|
||||||
|
updatedSettings() {
|
||||||
|
return this.$store.state.settings.updatedSettings
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -408,9 +416,12 @@ export default {
|
||||||
processAutoLinker(value, tab, inputName, childName) {
|
processAutoLinker(value, tab, inputName, childName) {
|
||||||
},
|
},
|
||||||
processNestedData(value, group, key, parentInput, parentType, childInput, childType) {
|
processNestedData(value, group, key, parentInput, parentType, childInput, childType) {
|
||||||
const updatedValueForState = { ...this.$store.state.settings.settings[group][key][parentInput], ...{ [childInput]: value }}
|
const valueExists = value => value[group] && value[group][key] && value[group][key][parentInput]
|
||||||
const updatedValue = this.$store.state.settings.updatedSettings[group]
|
const updatedValueForState = valueExists(this.settings)
|
||||||
? { ...this.$store.state.settings.updatedSettings[group][key][parentInput][1], ...{ [childInput]: [childType, value] }}
|
? { ...this.settings[group][key][parentInput], ...{ [childInput]: value }}
|
||||||
|
: { [childInput]: value }
|
||||||
|
const updatedValue = valueExists(this.updatedSettings)
|
||||||
|
? { ...this.updatedSettings[group][key][parentInput][1], ...{ [childInput]: [childType, value] }}
|
||||||
: { [childInput]: [childType, value] }
|
: { [childInput]: [childType, value] }
|
||||||
this.$store.dispatch('UpdateSettings', { group, key, input: parentInput, value: updatedValue, type: parentType })
|
this.$store.dispatch('UpdateSettings', { group, key, input: parentInput, value: updatedValue, type: parentType })
|
||||||
this.$store.dispatch('UpdateState', { group, key, input: parentInput, value: updatedValueForState })
|
this.$store.dispatch('UpdateState', { group, key, input: parentInput, value: updatedValueForState })
|
||||||
|
|
Loading…
Reference in a new issue