Merge branch 'develop' into 'master'

Update master with 2.0.0

See merge request pleroma/pleroma-fe!1080
This commit is contained in:
Shpuld Shpludson 2020-03-04 15:42:37 +00:00
commit 83d8343777
8 changed files with 24 additions and 6 deletions

View file

@ -28,6 +28,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Notifications column now cleans itself up to optimize performance when tab is left open for a long time - Notifications column now cleans itself up to optimize performance when tab is left open for a long time
- 403 messaging - 403 messaging
### Fixed ### Fixed
- Fixed loader-spinner not disappearing when a status preview fails to load
- anon viewers won't get theme data saved to local storage, so admin changing default theme will have an effect for users coming back to instance. - anon viewers won't get theme data saved to local storage, so admin changing default theme will have an effect for users coming back to instance.
- Single notifications left unread when hitting read on another device/tab - Single notifications left unread when hitting read on another device/tab
- Registration fixed - Registration fixed

View file

@ -5,6 +5,11 @@ const StatusPopover = {
props: [ props: [
'statusId' 'statusId'
], ],
data () {
return {
error: false
}
},
computed: { computed: {
status () { status () {
return find(this.$store.state.statuses.allStatuses, { id: this.statusId }) return find(this.$store.state.statuses.allStatuses, { id: this.statusId })
@ -18,6 +23,8 @@ const StatusPopover = {
enter () { enter () {
if (!this.status) { if (!this.status) {
this.$store.dispatch('fetchStatus', this.statusId) this.$store.dispatch('fetchStatus', this.statusId)
.then(data => (this.error = false))
.catch(e => (this.error = true))
} }
} }
} }

View file

@ -17,9 +17,15 @@
:statusoid="status" :statusoid="status"
:compact="true" :compact="true"
/> />
<div
v-else-if="error"
class="status-preview-no-content faint"
>
{{ $t('status.status_unavailable') }}
</div>
<div <div
v-else v-else
class="status-preview-loading" class="status-preview-no-content"
> >
<i class="icon-spin4 animate-spin" /> <i class="icon-spin4 animate-spin" />
</div> </div>
@ -50,7 +56,7 @@
border: none; border: none;
} }
.status-preview-loading { .status-preview-no-content {
padding: 1em; padding: 1em;
text-align: center; text-align: center;

View file

@ -615,7 +615,8 @@
"reply_to": "Reply to", "reply_to": "Reply to",
"replies_list": "Replies:", "replies_list": "Replies:",
"mute_conversation": "Mute conversation", "mute_conversation": "Mute conversation",
"unmute_conversation": "Unmute conversation" "unmute_conversation": "Unmute conversation",
"status_unavailable": "Status unavailable"
}, },
"user_card": { "user_card": {
"approve": "Approve", "approve": "Approve",

View file

@ -289,7 +289,8 @@
"reply_to": "Vastaus", "reply_to": "Vastaus",
"replies_list": "Vastaukset:", "replies_list": "Vastaukset:",
"mute_conversation": "Hiljennä keskustelu", "mute_conversation": "Hiljennä keskustelu",
"unmute_conversation": "Poista hiljennys" "unmute_conversation": "Poista hiljennys",
"status_unavailable": "Viesti ei saatavissa"
}, },
"user_card": { "user_card": {
"approve": "Hyväksy", "approve": "Hyväksy",

View file

@ -102,6 +102,7 @@ const config = {
setPreset(value) setPreset(value)
break break
case 'customTheme': case 'customTheme':
case 'customThemeSource':
applyTheme(value) applyTheme(value)
} }
} }

View file

@ -616,7 +616,7 @@ const statuses = {
commit('setNotificationsSilence', { value }) commit('setNotificationsSilence', { value })
}, },
fetchStatus ({ rootState, dispatch }, id) { fetchStatus ({ rootState, dispatch }, id) {
rootState.api.backendInteractor.fetchStatus({ id }) return rootState.api.backendInteractor.fetchStatus({ id })
.then((status) => dispatch('addNewStatuses', { statuses: [status] })) .then((status) => dispatch('addNewStatuses', { statuses: [status] }))
}, },
deleteStatus ({ rootState, commit }, status) { deleteStatus ({ rootState, commit }, status) {

View file

@ -352,7 +352,8 @@ export const getColors = (sourceColors, sourceOpacity) => SLOT_ORDERED.reduce(({
} }
const opacitySlot = getOpacitySlot(key) const opacitySlot = getOpacitySlot(key)
const ownOpacitySlot = value.opacity const ownOpacitySlot = value.opacity
if (opacitySlot && (outputColor.a === undefined || ownOpacitySlot)) { const opacityOverriden = ownOpacitySlot && sourceOpacity[opacitySlot] !== undefined
if (opacitySlot && (outputColor.a === undefined || opacityOverriden)) {
const dependencySlot = deps[0] const dependencySlot = deps[0]
if (dependencySlot && colors[dependencySlot] === 'transparent') { if (dependencySlot && colors[dependencySlot] === 'transparent') {
outputColor.a = 0 outputColor.a = 0