forked from AkkomaGang/akkoma-fe
Merge branch 'fix-themes-select' into 'develop'
Fix theme select not working See merge request pleroma/pleroma-fe!1393
This commit is contained in:
commit
425919a0d2
4 changed files with 26 additions and 14 deletions
|
@ -1,9 +1,9 @@
|
||||||
<template>
|
<template>
|
||||||
<div
|
<div
|
||||||
|
ref="root"
|
||||||
v-click-outside="onClickOutside"
|
v-click-outside="onClickOutside"
|
||||||
class="emoji-input"
|
class="emoji-input"
|
||||||
:class="{ 'with-picker': !hideEmojiButton }"
|
:class="{ 'with-picker': !hideEmojiButton }"
|
||||||
ref='root'
|
|
||||||
>
|
>
|
||||||
<slot />
|
<slot />
|
||||||
<template v-if="enableEmojiPicker">
|
<template v-if="enableEmojiPicker">
|
||||||
|
|
|
@ -73,7 +73,8 @@ export default {
|
||||||
getExportedObject: () => this.exportedTheme
|
getExportedObject: () => this.exportedTheme
|
||||||
}),
|
}),
|
||||||
availableStyles: [],
|
availableStyles: [],
|
||||||
selected: this.$store.getters.mergedConfig.theme,
|
selected: '',
|
||||||
|
selectedTheme: this.$store.getters.mergedConfig.theme,
|
||||||
themeWarning: undefined,
|
themeWarning: undefined,
|
||||||
tempImportFile: undefined,
|
tempImportFile: undefined,
|
||||||
engineVersion: 0,
|
engineVersion: 0,
|
||||||
|
@ -207,7 +208,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selectedVersion () {
|
selectedVersion () {
|
||||||
return Array.isArray(this.selected) ? 1 : 2
|
return Array.isArray(this.selectedTheme) ? 1 : 2
|
||||||
},
|
},
|
||||||
currentColors () {
|
currentColors () {
|
||||||
return Object.keys(SLOT_INHERITANCE)
|
return Object.keys(SLOT_INHERITANCE)
|
||||||
|
@ -745,6 +746,16 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selected () {
|
selected () {
|
||||||
|
this.selectedTheme = Object.entries(this.availableStyles).find(([k, s]) => {
|
||||||
|
if (Array.isArray(s)) {
|
||||||
|
console.log(s[0] === this.selected, this.selected)
|
||||||
|
return s[0] === this.selected
|
||||||
|
} else {
|
||||||
|
return s.name === this.selected
|
||||||
|
}
|
||||||
|
})[1]
|
||||||
|
},
|
||||||
|
selectedTheme () {
|
||||||
this.dismissWarning()
|
this.dismissWarning()
|
||||||
if (this.selectedVersion === 1) {
|
if (this.selectedVersion === 1) {
|
||||||
if (!this.keepRoundness) {
|
if (!this.keepRoundness) {
|
||||||
|
@ -762,17 +773,17 @@ export default {
|
||||||
if (!this.keepColor) {
|
if (!this.keepColor) {
|
||||||
this.clearV1()
|
this.clearV1()
|
||||||
|
|
||||||
this.bgColorLocal = this.selected[1]
|
this.bgColorLocal = this.selectedTheme[1]
|
||||||
this.fgColorLocal = this.selected[2]
|
this.fgColorLocal = this.selectedTheme[2]
|
||||||
this.textColorLocal = this.selected[3]
|
this.textColorLocal = this.selectedTheme[3]
|
||||||
this.linkColorLocal = this.selected[4]
|
this.linkColorLocal = this.selectedTheme[4]
|
||||||
this.cRedColorLocal = this.selected[5]
|
this.cRedColorLocal = this.selectedTheme[5]
|
||||||
this.cGreenColorLocal = this.selected[6]
|
this.cGreenColorLocal = this.selectedTheme[6]
|
||||||
this.cBlueColorLocal = this.selected[7]
|
this.cBlueColorLocal = this.selectedTheme[7]
|
||||||
this.cOrangeColorLocal = this.selected[8]
|
this.cOrangeColorLocal = this.selectedTheme[8]
|
||||||
}
|
}
|
||||||
} else if (this.selectedVersion >= 2) {
|
} else if (this.selectedVersion >= 2) {
|
||||||
this.normalizeLocalState(this.selected.theme, 2, this.selected.source)
|
this.normalizeLocalState(this.selectedTheme.theme, 2, this.selectedTheme.source)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,7 +63,7 @@
|
||||||
<option
|
<option
|
||||||
v-for="style in availableStyles"
|
v-for="style in availableStyles"
|
||||||
:key="style.name"
|
:key="style.name"
|
||||||
:value="style"
|
:value="style.name || style[0]"
|
||||||
:style="{
|
:style="{
|
||||||
backgroundColor: style[1] || (style.theme || style.source).colors.bg,
|
backgroundColor: style[1] || (style.theme || style.source).colors.bg,
|
||||||
color: style[3] || (style.theme || style.source).colors.text
|
color: style[3] || (style.theme || style.source).colors.text
|
||||||
|
|
|
@ -94,7 +94,8 @@ const config = {
|
||||||
const { defaultConfig } = rootGetters
|
const { defaultConfig } = rootGetters
|
||||||
return {
|
return {
|
||||||
...defaultConfig,
|
...defaultConfig,
|
||||||
...state
|
// Do not override with undefined
|
||||||
|
...Object.fromEntries(Object.entries(state).filter(([k, v]) => v !== undefined))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue