forked from AkkomaGang/akkoma-fe
Fix merge conflict in CHANGELOG
# Conflicts: # CHANGELOG.md
This commit is contained in:
commit
f35e3d0f3f
12 changed files with 73 additions and 24 deletions
|
@ -10,8 +10,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
|||
- Added quick filters for notifications
|
||||
- Implemented user option to change sidebar position to the right side
|
||||
- Implemented user option to hide floating shout panel
|
||||
- Implemented "edit profile" button if viewing own profile which opens profile settings
|
||||
- Added Apply and Reset buttons to the bottom of theme tab to minimize UI travel
|
||||
|
||||
### Fixed
|
||||
- Fixed follow request count showing in the wrong location in mobile view
|
||||
|
||||
## [2.3.0] - 2021-03-01
|
||||
### Fixed
|
||||
|
|
|
@ -3,6 +3,7 @@ Contributors of this project.
|
|||
- Constance Variable (lambadalambda@social.heldscal.la): Code
|
||||
- Coco Snuss (cocosnuss@social.heldscal.la): Code
|
||||
- wakarimasen (wakarimasen@shitposter.club): NSFW hiding image
|
||||
- eris (eris@disqordia.space): Code
|
||||
- dtluna (dtluna@social.heldscal.la): Code
|
||||
- sonyam (sonyam@social.heldscal.la): Background images
|
||||
- hakui (hakui@freezepeach.xyz): CSS and styling
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
<template>
|
||||
<div
|
||||
ref="root"
|
||||
v-click-outside="onClickOutside"
|
||||
class="emoji-input"
|
||||
:class="{ 'with-picker': !hideEmojiButton }"
|
||||
ref='root'
|
||||
>
|
||||
<slot />
|
||||
<template v-if="enableEmojiPicker">
|
||||
|
|
|
@ -16,10 +16,18 @@ export default {
|
|||
return [firstSegment + 'DefaultValue', ...rest].join('.')
|
||||
},
|
||||
state () {
|
||||
return get(this.$parent, this.path)
|
||||
const value = get(this.$parent, this.path)
|
||||
if (value === undefined) {
|
||||
return this.defaultState
|
||||
} else {
|
||||
return value
|
||||
}
|
||||
},
|
||||
defaultState () {
|
||||
return get(this.$parent, this.pathDefault)
|
||||
},
|
||||
isChanged () {
|
||||
return get(this.$parent, this.path) !== get(this.$parent, this.pathDefault)
|
||||
return this.state !== this.defaultState
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -17,13 +17,18 @@ export default {
|
|||
return [firstSegment + 'DefaultValue', ...rest].join('.')
|
||||
},
|
||||
state () {
|
||||
return get(this.$parent, this.path)
|
||||
const value = get(this.$parent, this.path)
|
||||
if (value === undefined) {
|
||||
return this.defaultState
|
||||
} else {
|
||||
return value
|
||||
}
|
||||
},
|
||||
defaultState () {
|
||||
return get(this.$parent, this.pathDefault)
|
||||
},
|
||||
isChanged () {
|
||||
return get(this.$parent, this.path) !== get(this.$parent, this.pathDefault)
|
||||
return this.state !== this.defaultState
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -73,7 +73,8 @@ export default {
|
|||
getExportedObject: () => this.exportedTheme
|
||||
}),
|
||||
availableStyles: [],
|
||||
selected: this.$store.getters.mergedConfig.theme,
|
||||
selected: '',
|
||||
selectedTheme: this.$store.getters.mergedConfig.theme,
|
||||
themeWarning: undefined,
|
||||
tempImportFile: undefined,
|
||||
engineVersion: 0,
|
||||
|
@ -207,7 +208,7 @@ export default {
|
|||
}
|
||||
},
|
||||
selectedVersion () {
|
||||
return Array.isArray(this.selected) ? 1 : 2
|
||||
return Array.isArray(this.selectedTheme) ? 1 : 2
|
||||
},
|
||||
currentColors () {
|
||||
return Object.keys(SLOT_INHERITANCE)
|
||||
|
@ -745,6 +746,16 @@ export default {
|
|||
}
|
||||
},
|
||||
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()
|
||||
if (this.selectedVersion === 1) {
|
||||
if (!this.keepRoundness) {
|
||||
|
@ -762,17 +773,17 @@ export default {
|
|||
if (!this.keepColor) {
|
||||
this.clearV1()
|
||||
|
||||
this.bgColorLocal = this.selected[1]
|
||||
this.fgColorLocal = this.selected[2]
|
||||
this.textColorLocal = this.selected[3]
|
||||
this.linkColorLocal = this.selected[4]
|
||||
this.cRedColorLocal = this.selected[5]
|
||||
this.cGreenColorLocal = this.selected[6]
|
||||
this.cBlueColorLocal = this.selected[7]
|
||||
this.cOrangeColorLocal = this.selected[8]
|
||||
this.bgColorLocal = this.selectedTheme[1]
|
||||
this.fgColorLocal = this.selectedTheme[2]
|
||||
this.textColorLocal = this.selectedTheme[3]
|
||||
this.linkColorLocal = this.selectedTheme[4]
|
||||
this.cRedColorLocal = this.selectedTheme[5]
|
||||
this.cGreenColorLocal = this.selectedTheme[6]
|
||||
this.cBlueColorLocal = this.selectedTheme[7]
|
||||
this.cOrangeColorLocal = this.selectedTheme[8]
|
||||
}
|
||||
} 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
|
||||
v-for="style in availableStyles"
|
||||
:key="style.name"
|
||||
:value="style"
|
||||
:value="style.name || style[0]"
|
||||
:style="{
|
||||
backgroundColor: style[1] || (style.theme || style.source).colors.bg,
|
||||
color: style[3] || (style.theme || style.source).colors.text
|
||||
|
|
|
@ -273,9 +273,7 @@
|
|||
--icon: var(--popoverIcon, $fallback--icon);
|
||||
|
||||
.badge {
|
||||
position: absolute;
|
||||
right: 0.7rem;
|
||||
top: 1em;
|
||||
margin-left: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -12,14 +12,16 @@ import {
|
|||
faBell,
|
||||
faRss,
|
||||
faSearchPlus,
|
||||
faExternalLinkAlt
|
||||
faExternalLinkAlt,
|
||||
faEdit
|
||||
} from '@fortawesome/free-solid-svg-icons'
|
||||
|
||||
library.add(
|
||||
faRss,
|
||||
faBell,
|
||||
faSearchPlus,
|
||||
faExternalLinkAlt
|
||||
faExternalLinkAlt,
|
||||
faEdit
|
||||
)
|
||||
|
||||
export default {
|
||||
|
@ -153,6 +155,9 @@ export default {
|
|||
this.$store.state.instance.restrictedNicknames
|
||||
)
|
||||
},
|
||||
openProfileTab () {
|
||||
this.$store.dispatch('openSettingsModalTab', 'profile')
|
||||
},
|
||||
zoomAvatar () {
|
||||
const attachment = {
|
||||
url: this.user.profile_image_url_original,
|
||||
|
|
|
@ -53,6 +53,18 @@
|
|||
>
|
||||
{{ user.name }}
|
||||
</div>
|
||||
<button
|
||||
v-if="!isOtherUser && user.is_local"
|
||||
class="button-unstyled edit-profile-button"
|
||||
@click.stop="openProfileTab"
|
||||
>
|
||||
<FAIcon
|
||||
fixed-width
|
||||
class="icon"
|
||||
icon="edit"
|
||||
:title="$t('user_card.edit_profile')"
|
||||
/>
|
||||
</button>
|
||||
<button
|
||||
v-if="isOtherUser && !user.is_local"
|
||||
:href="user.statusnet_profile_url"
|
||||
|
@ -426,7 +438,7 @@
|
|||
}
|
||||
}
|
||||
|
||||
.external-link-button {
|
||||
.external-link-button, .edit-profile-button {
|
||||
cursor: pointer;
|
||||
width: 2.5em;
|
||||
text-align: center;
|
||||
|
@ -578,6 +590,10 @@
|
|||
}
|
||||
}
|
||||
|
||||
.sidebar .edit-profile-button {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.user-counts {
|
||||
display: flex;
|
||||
line-height:16px;
|
||||
|
|
|
@ -719,6 +719,7 @@
|
|||
"block": "Block",
|
||||
"blocked": "Blocked!",
|
||||
"deny": "Deny",
|
||||
"edit_profile": "Edit profile",
|
||||
"favorites": "Favorites",
|
||||
"follow": "Follow",
|
||||
"follow_sent": "Request sent!",
|
||||
|
|
|
@ -94,7 +94,8 @@ const config = {
|
|||
const { defaultConfig } = rootGetters
|
||||
return {
|
||||
...defaultConfig,
|
||||
...state
|
||||
// Do not override with undefined
|
||||
...Object.fromEntries(Object.entries(state).filter(([k, v]) => v !== undefined))
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue