fixed tests, review fixes, now storing local users with downcase screen name for

better compatibility
This commit is contained in:
Henry Jameson 2019-03-11 02:17:49 +02:00
parent 489f840d84
commit 06d39b62a8
5 changed files with 19 additions and 12 deletions

View file

@ -68,7 +68,7 @@ const UserProfile = {
},
userInStore () {
const routeParams = this.$route.params
return this.$store.getters.findUser(routeParams.name || routeParams.iid)
return this.$store.getters.findUser(routeParams.name || routeParams.id)
},
user () {
if (this.timeline.statuses[0]) {
@ -135,13 +135,14 @@ const UserProfile = {
}
},
watch: {
userId (newVal, oldVal) {
// userId can be undefined if we don't know it yet
userId (newVal) {
if (newVal) {
this.cleanUp()
this.startUp()
}
},
userName (newVal, oldVal) {
userName () {
if (this.$route.params.name) {
this.fetchUserId()
this.cleanUp()

View file

@ -73,7 +73,7 @@ const mergeOrAdd = (arr, obj, item) => {
if (oldItem) {
// We already have this, so only merge the new info.
// We ignore null values to avoid overwriting existing properties with missing data
// we also skip 'used' because that is handled by users module
// 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)

View file

@ -18,7 +18,7 @@ export const mergeOrAdd = (arr, obj, item) => {
arr.push(item)
obj[item.id] = item
if (item.screen_name && !item.screen_name.includes('@')) {
obj[item.screen_name] = item
obj[item.screen_name.toLowerCase()] = item
}
return { item, new: true }
}
@ -132,7 +132,7 @@ export const mutations = {
}
export const getters = {
findUser: state => query => state.usersObject[query]
findUser: state => query => state.usersObject[typeof query === 'string' ? query.toLowerCase() : query]
}
export const defaultState = {