diff options
| author | Henry Jameson <me@hjkos.com> | 2019-03-21 22:11:02 +0200 |
|---|---|---|
| committer | Henry Jameson <me@hjkos.com> | 2019-03-21 22:11:02 +0200 |
| commit | faef769b40784c32b095db24d16a92c80ce7ea1f (patch) | |
| tree | de183d334a019c37138e5ae9524e972a24e17300 /src/modules/statuses.js | |
| parent | 6e2946f35290380cbd9e2147a570469f1be18ab6 (diff) | |
| parent | 66e60572bc5f3f35a902417547c1d38e3665fbb7 (diff) | |
Merge remote-tracking branch 'upstream/develop' into masto-api/direct
* upstream/develop: (47 commits)
#449 - fix auth token fetch issue
Make select tag use --inputText as text color
#444 - remote follow clean up
#444 - show `remote follow` button when logged out
Add button to save without cropping
post-merge fixes
[i18n] Update oc.json
after store: fix setting postFormats field
fix user-card avatar falling into permament failed state
fix flake id users not fetching correctly
fix console error
afterStoreSetup: Move log in and theme load to afterStoreSetup.
afterStoreSetup: Handle 404 cases.
afterStoreSetup: Emoji and nodeinfo refactor.
afterStoreSetup: refactor TOS and panel fetching, handle 404s.
afterStoreSetup: refactor.
Load persistedStated with async/await.
whoops
レインせんぱいにサンキュー
fix embedded relationship card parsing
...
Diffstat (limited to 'src/modules/statuses.js')
| -rw-r--r-- | src/modules/statuses.js | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/modules/statuses.js b/src/modules/statuses.js index 7571b62a..f14b8703 100644 --- a/src/modules/statuses.js +++ b/src/modules/statuses.js @@ -1,4 +1,4 @@ -import { remove, slice, each, find, maxBy, minBy, merge, first, last, isArray } from 'lodash' +import { remove, slice, each, find, maxBy, minBy, merge, first, last, isArray, omitBy } from 'lodash' import apiService from '../services/api/api.service.js' // import parse from '../services/status_parser/status_parser.js' @@ -72,7 +72,9 @@ const mergeOrAdd = (arr, obj, item) => { if (oldItem) { // We already have this, so only merge the new info. - merge(oldItem, item) + // We ignore null values to avoid overwriting existing properties with missing data + // we also skip 'user' because that is handled by users module + merge(oldItem, omitBy(item, (v, k) => v === null || k === 'user')) // Reactivity fix. oldItem.attachments.splice(oldItem.attachments.length) return {item: oldItem, new: false} @@ -333,6 +335,7 @@ export const mutations = { oldTimeline.newStatusCount = 0 oldTimeline.visibleStatuses = slice(oldTimeline.statuses, 0, 50) oldTimeline.minVisibleId = last(oldTimeline.visibleStatuses).id + oldTimeline.minId = oldTimeline.minVisibleId oldTimeline.visibleStatusesObject = {} each(oldTimeline.visibleStatuses, (status) => { oldTimeline.visibleStatusesObject[status.id] = status }) }, |
