mirror of
https://github.com/Qortal/qortal-ui.git
synced 2025-02-11 17:55:51 +00:00
Merge pull request #78 from JustinWesleyFerrari/bugfix/new-messages-refactor
New Messages Refactored
This commit is contained in:
commit
04eda0354c
@ -314,7 +314,8 @@ class ChatPage extends LitElement {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async processMessages(messages, isInitial) {
|
async processMessages(messages, isInitial) {
|
||||||
|
|
||||||
if (isInitial) {
|
if (isInitial) {
|
||||||
|
|
||||||
this.messages = messages.map((eachMessage) => {
|
this.messages = messages.map((eachMessage) => {
|
||||||
@ -330,7 +331,10 @@ class ChatPage extends LitElement {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
this._messages = [...this.messages]
|
this._messages = [...this.messages].sort(function (a, b) {
|
||||||
|
return a.timestamp
|
||||||
|
- b.timestamp
|
||||||
|
})
|
||||||
|
|
||||||
const adjustMessages = () => {
|
const adjustMessages = () => {
|
||||||
|
|
||||||
@ -345,41 +349,27 @@ class ChatPage extends LitElement {
|
|||||||
|
|
||||||
this.messagesRendered = this._initialMessages
|
this.messagesRendered = this._initialMessages
|
||||||
|
|
||||||
// try {
|
|
||||||
// const viewElement = this.shadowRoot.querySelector('chat-scroller')
|
|
||||||
// console.log({viewElement})
|
|
||||||
// // viewElement.scrollTop = this.viewElement.scrollHeight + 50
|
|
||||||
// } catch (error) {
|
|
||||||
// console.error(error)
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
this.isLoadingMessages = false
|
this.isLoadingMessages = false
|
||||||
setTimeout(() => this.downElementObserver(), 500)
|
setTimeout(() => this.downElementObserver(), 500)
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
let _newMessages = messages.map((eachMessage) => {
|
messages.forEach((eachMessage) => {
|
||||||
if (eachMessage.isText === true) {
|
|
||||||
let _eachMessage = this.decodeMessage(eachMessage)
|
const _eachMessage = this.decodeMessage(eachMessage)
|
||||||
|
|
||||||
|
|
||||||
|
this.renderNewMessage(_eachMessage)
|
||||||
|
|
||||||
if (this.messageSignature !== eachMessage.signature) {
|
|
||||||
this.messageSignature = eachMessage.signature
|
|
||||||
// What are we waiting for, send in the message immediately...
|
|
||||||
this.renderNewMessage(_eachMessage)
|
|
||||||
}
|
|
||||||
return _eachMessage
|
|
||||||
} else {
|
|
||||||
let _eachMessage = this.decodeMessage(eachMessage)
|
|
||||||
|
|
||||||
if (this.messageSignature !== eachMessage.signature) {
|
|
||||||
this.messageSignature = eachMessage.signature
|
|
||||||
this.renderNewMessage(_eachMessage)
|
|
||||||
}
|
|
||||||
return _eachMessage
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
this.newMessages = this.newMessages.concat(_newMessages)
|
|
||||||
|
// this.newMessages = this.newMessages.concat(_newMessages)
|
||||||
|
this.messagesRendered = [...this.messagesRendered].sort(function (a, b) {
|
||||||
|
return a.timestamp
|
||||||
|
- b.timestamp
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -436,10 +426,6 @@ class ChatPage extends LitElement {
|
|||||||
async renderNewMessage(newMessage) {
|
async renderNewMessage(newMessage) {
|
||||||
|
|
||||||
const viewElement = this.shadowRoot.querySelector('chat-scroller').shadowRoot.getElementById('viewElement');
|
const viewElement = this.shadowRoot.querySelector('chat-scroller').shadowRoot.getElementById('viewElement');
|
||||||
const downObserver = this.shadowRoot.querySelector('chat-scroller').shadowRoot.getElementById('downObserver');
|
|
||||||
const li = document.createElement('li');
|
|
||||||
li.innerHTML = this.chatMessageTemplate(newMessage);
|
|
||||||
li.id = newMessage.signature;
|
|
||||||
|
|
||||||
if (newMessage.sender === this.selectedAddress.address) {
|
if (newMessage.sender === this.selectedAddress.address) {
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user