diff --git a/index.html b/index.html index 143c02a..594a2af 100644 --- a/index.html +++ b/index.html @@ -1526,7 +1526,6 @@ } this.lastScrollHeight = this.lazyContainer.scrollHeight this.lastScrollTop = this.lazyContainer.scrollTop - console.log(this.updateStartIndex, this.updateEndIndex) this.arrayOfElements.slice(this.updateStartIndex, this.updateEndIndex).forEach((element) => { frag.append(this.renderFn(element)) }) @@ -1848,14 +1847,21 @@ messageContent.append(isEmoji(message)) } const messageDate = getFormattedTime(timestamp, 'date-only') - if (!renderedDates.hasOwnProperty(messageDate) || renderedDates[messageDate].timestamp > timestamp) { - renderedDates[messageDate] = { - timestamp, - isRendered: false + // rendering Date card when date changes after a message + let dateCard + if (!renderedDates.hasOwnProperty(messageDate) || renderedDates[messageDate] > timestamp) { + renderedDates[messageDate] = timestamp + const previousDateCard = getRef('messages_container').querySelector(`.date-card[data-date="${messageDate}"]`) + if (previousDateCard) { + dateCard = previousDateCard.cloneNode(true) + previousDateCard.remove() + } else { + dateCard = html.node`` } } const className = `message ${category} ${unconfirmed ? 'unconfirmed' : ''} ${senderName ? 'distinct-sender' : ''}` return html.node` + ${dateCard}