Merge branch 'master' of github.com:hackersanddesigners/chatty-pub
This commit is contained in:
commit
80ebc50514
2 changed files with 27 additions and 16 deletions
|
|
@ -102,18 +102,18 @@ export default {
|
||||||
switch (event.type) {
|
switch (event.type) {
|
||||||
|
|
||||||
case 'message':
|
case 'message':
|
||||||
switch (event.message.subject) {
|
if (event.message.subject == 'rules') {
|
||||||
case 'content':
|
this.$store.commit('addRule', event.message)
|
||||||
this.$store.commit('addMessage', event.message)
|
} else {
|
||||||
break
|
this.$store.commit('addMessage', event.message)
|
||||||
case 'rules':
|
|
||||||
this.$store.commit('addRule', event.message)
|
|
||||||
break
|
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
|
|
||||||
case 'delete_message':
|
case 'delete_message':
|
||||||
this.$store.commit('deleteMessage', event.message_id)
|
this.$store.commit('deleteMessage', {
|
||||||
|
subject: event.topic,
|
||||||
|
mid: event.message_id
|
||||||
|
})
|
||||||
break
|
break
|
||||||
|
|
||||||
case 'update_message':
|
case 'update_message':
|
||||||
|
|
|
||||||
|
|
@ -115,20 +115,29 @@ export default createStore({
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
deleteMessage: (state, mid) => {
|
deleteMessage: (state, { mid, subject }) => {
|
||||||
const message = state.contents.find(m => m.id == mid)
|
const topic = state.topics.find(t => t.title == subject)
|
||||||
if (message) {
|
if (topic) {
|
||||||
state.contents.splice(state.contents.indexOf(message), 1)
|
const message = topic.messages.find(m => m.id == mid)
|
||||||
|
if (message) {
|
||||||
|
topic.messages.splice(topic.messages.indexOf(message), 1)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
addReaction: (state, { mid, reaction }) => {
|
addReaction: (state, { mid, reaction }) => {
|
||||||
const message = state.contents.find(m => m.id == mid)
|
const message = state.topics
|
||||||
|
.map(t => t.messages)
|
||||||
|
.flat()
|
||||||
|
.find(m => m.id == mid)
|
||||||
if (message) {
|
if (message) {
|
||||||
message.reactions.push(reaction)
|
message.reactions.push(reaction)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
removeReaction: (state, { mid, reaction }) => {
|
removeReaction: (state, { mid, reaction }) => {
|
||||||
const message = state.contents.find(m => m.id == mid)
|
const message = state.topics
|
||||||
|
.map(t => t.messages)
|
||||||
|
.flat()
|
||||||
|
.find(m => m.id == mid)
|
||||||
if (message) {
|
if (message) {
|
||||||
message.reactions.splice(message.reactions.indexOf(reaction), 1)
|
message.reactions.splice(message.reactions.indexOf(reaction), 1)
|
||||||
}
|
}
|
||||||
|
|
@ -145,13 +154,15 @@ export default createStore({
|
||||||
addRule: (state, rule) => {
|
addRule: (state, rule) => {
|
||||||
if (toCSS(rule) !== null) {
|
if (toCSS(rule) !== null) {
|
||||||
// state.rules.push(toCSS(rule, state.currentStream))
|
// state.rules.push(toCSS(rule, state.currentStream))
|
||||||
|
|
||||||
// vue will not update if i use rules.push(rule)
|
// vue will not update if i use rules.push(rule)
|
||||||
state.rules = [...state.rules,...[toCSS(rule, state.currentStream)]]
|
state.rules = [...state.rules,...[toCSS(rule, state.currentStream)]]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
editMessage: (state, { mid, content }) => {
|
editMessage: (state, { mid, content }) => {
|
||||||
const message = state.contents.find(m => m.id == mid)
|
const message = state.topics
|
||||||
|
.map(t => t.messages)
|
||||||
|
.flat()
|
||||||
|
.find(m => m.id == mid)
|
||||||
const rule = state.rules.find(r => r.id == mid)
|
const rule = state.rules.find(r => r.id == mid)
|
||||||
if (message) {
|
if (message) {
|
||||||
message.content = content
|
message.content = content
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue