Merge branch 'bugfix/settings-parser' into 'develop'
Fix bug in settings parser See merge request pleroma/admin-fe!283
This commit is contained in:
commit
3b2fe8e3e2
3 changed files with 13 additions and 8 deletions
|
@ -22,13 +22,13 @@
|
|||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/PanJiaChen/vue-element-admin.git"
|
||||
"url": "git+https://git.pleroma.social/pleroma/admin-fe.git"
|
||||
},
|
||||
"resolutions": {
|
||||
"prosemirror-model": "1.18.1"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/PanJiaChen/vue-element-admin/issues"
|
||||
"url": "https://git.pleroma.social/pleroma/admin-fe/-/issues"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/runtime": "7.18.9",
|
||||
|
|
|
@ -28,7 +28,7 @@ const getCurrentValue = (type, value, path) => {
|
|||
}
|
||||
|
||||
const getValueWithoutKey = (key, [type, value]) => {
|
||||
if (prependWithСolon(type, value)) {
|
||||
if (prependWithColon(type, value)) {
|
||||
return `:${value}`
|
||||
} else if (key === ':backends') {
|
||||
const index = value.findIndex(el => el === ':ex_syslogger')
|
||||
|
@ -117,8 +117,8 @@ export const parseTuples = (tuples, key) => {
|
|||
accum[item.tuple[0]] = parseNonTuples(item.tuple[0], item.tuple[1])
|
||||
} else if (item.tuple[0] === ':ip_whitelist') {
|
||||
accum[item.tuple[0]] = item.tuple[1].map(ip => typeof ip === 'string' ? ip : ip.tuple.join('.'))
|
||||
} else if (Array.isArray(item.tuple[1]) &&
|
||||
(typeof item.tuple[1][0] === 'object' && !Array.isArray(item.tuple[1][0])) && item.tuple[1][0]['tuple']) {
|
||||
} else if (Array.isArray(item.tuple[1]) && (item.tuple[1][0] !== null &&
|
||||
typeof item.tuple[1][0] === 'object' && !Array.isArray(item.tuple[1][0])) && item.tuple[1][0]['tuple']) {
|
||||
accum[item.tuple[0]] = parseTuples(item.tuple[1], item.tuple[0])
|
||||
} else if (Array.isArray(item.tuple[1])) {
|
||||
accum[item.tuple[0]] = item.tuple[1]
|
||||
|
@ -171,7 +171,7 @@ const parseStringOrTupleValue = (key, value) => {
|
|||
}
|
||||
}
|
||||
|
||||
const prependWithСolon = (type, value) => {
|
||||
const prependWithColon = (type, value) => {
|
||||
return (type === 'atom' && value.length > 0) ||
|
||||
(Array.isArray(type) && type.includes('boolean') && type.includes('atom') && typeof value === 'string')
|
||||
}
|
||||
|
@ -260,7 +260,7 @@ const wrapValues = (settings, currentState) => {
|
|||
))
|
||||
) {
|
||||
return { 'tuple': [setting, wrapValues(value, currentState)] }
|
||||
} else if (prependWithСolon(type, value)) {
|
||||
} else if (prependWithColon(type, value)) {
|
||||
return { 'tuple': [setting, `:${value}`] }
|
||||
} else if (type.includes('tuple') &&
|
||||
(type.includes('string') || type.includes('atom') || type.includes('boolean'))) {
|
||||
|
|
|
@ -55,7 +55,12 @@ export default {
|
|||
},
|
||||
async handleOpen($event) {
|
||||
if ($event === '/settings') {
|
||||
if (!localStorage.getItem('settingsTabs')) {
|
||||
let settingsTabs = localStorage.getItem('settingsTabs')
|
||||
if (settingsTabs === '[]') {
|
||||
localStorage.removeItem('settingsTabs')
|
||||
settingsTabs = null
|
||||
}
|
||||
if (!settingsTabs) {
|
||||
await this.$store.dispatch('FetchSettings')
|
||||
const menuItems = this.tabs
|
||||
localStorage.setItem('settingsTabs', JSON.stringify(menuItems))
|
||||
|
|
Loading…
Reference in a new issue