diff --git a/qortal-ui-core/package.json b/qortal-ui-core/package.json index 5515942d..16b78477 100644 --- a/qortal-ui-core/package.json +++ b/qortal-ui-core/package.json @@ -17,9 +17,9 @@ "author": "QORTAL ", "license": "GPL-3.0", "dependencies": { - "@hapi/hapi": "21.2.0", + "@hapi/hapi": "21.2.1", "@hapi/inert": "7.0.0", - "sass": "1.57.1" + "sass": "1.58.0" }, "devDependencies": { "@babel/core": "7.20.12", @@ -58,22 +58,23 @@ "@rollup/plugin-commonjs": "24.0.1", "@rollup/plugin-node-resolve": "15.0.1", "@rollup/plugin-replace": "5.0.2", - "@rollup/plugin-terser": "0.3.0", - "@vaadin/button": "23.3.5", - "@vaadin/grid": "23.3.5", - "@vaadin/icons": "23.3.5", - "@vaadin/password-field": "23.3.5", - "@vaadin/tooltip": "23.3.5", + "@rollup/plugin-terser": "0.4.0", + "@vaadin/button": "23.3.7", + "@vaadin/grid": "23.3.7", + "@vaadin/icons": "23.3.7", + "@vaadin/password-field": "23.3.7", + "@vaadin/tooltip": "23.3.7", "asmcrypto.js": "2.3.2", "bcryptjs": "2.4.3", "epml": "0.3.3", "file-saver": "2.0.5", "lit": "2.6.1", "lit-translate": "2.0.1", + "localforage": "1.10.0", "pwa-helpers": "0.9.1", - "redux": "4.2.0", + "redux": "4.2.1", "redux-thunk": "2.4.2", - "rollup": "3.10.1", + "rollup": "3.14.0", "rollup-plugin-node-globals": "1.4.0", "rollup-plugin-progress": "1.1.2", "rollup-plugin-scss": "3.0.0", @@ -82,4 +83,4 @@ "engines": { "node": ">=16.17.1" } -} \ No newline at end of file +} diff --git a/qortal-ui-plugins/package.json b/qortal-ui-plugins/package.json index 7ab1011d..19a1297e 100644 --- a/qortal-ui-plugins/package.json +++ b/qortal-ui-plugins/package.json @@ -20,13 +20,14 @@ "@lit-labs/motion": "1.0.3", "@material/mwc-list": "0.27.0", "@material/mwc-select": "0.27.0", - "@tiptap/core": "2.0.0-beta.209", - "@tiptap/extension-highlight": "2.0.0-beta.209", - "@tiptap/extension-image": "2.0.0-beta.209", - "@tiptap/extension-placeholder": "2.0.0-beta.209", - "@tiptap/extension-underline": "2.0.0-beta.209", - "@tiptap/html": "2.0.0-beta.209", - "@tiptap/starter-kit": "2.0.0-beta.209", + "@tiptap/pm": "2.0.0-beta.212", + "@tiptap/core": "2.0.0-beta.212", + "@tiptap/extension-highlight": "2.0.0-beta.212", + "@tiptap/extension-image": "2.0.0-beta.212", + "@tiptap/extension-placeholder": "2.0.0-beta.212", + "@tiptap/extension-underline": "2.0.0-beta.212", + "@tiptap/html": "2.0.0-beta.212", + "@tiptap/starter-kit": "2.0.0-beta.212", "asmcrypto.js": "2.3.2", "compressorjs": "1.1.1", "emoji-picker-js": "https://github.com/Qortal/emoji-picker-js", @@ -69,19 +70,19 @@ "@rollup/plugin-commonjs": "24.0.1", "@rollup/plugin-node-resolve": "15.0.1", "@rollup/plugin-replace": "5.0.2", - "@rollup/plugin-terser": "0.3.0", - "@vaadin/avatar": "23.3.5", - "@vaadin/button": "23.3.5", - "@vaadin/grid": "23.3.5", - "@vaadin/icons": "23.3.5", - "@vaadin/tooltip": "23.3.5", + "@rollup/plugin-terser": "0.4.0", + "@vaadin/avatar": "23.3.7", + "@vaadin/button": "23.3.7", + "@vaadin/grid": "23.3.7", + "@vaadin/icons": "23.3.7", + "@vaadin/tooltip": "23.3.7", "epml": "0.3.3", "file-saver": "2.0.5", "highcharts": "10.3.3", "html-escaper": "3.0.3", "lit": "2.6.1", "lit-translate": "2.0.1", - "rollup": "3.10.1", + "rollup": "3.14.0", "rollup-plugin-node-globals": "1.4.0", "rollup-plugin-progress": "1.1.2", "rollup-plugin-web-worker-loader": "1.6.1", diff --git a/qortal-ui-plugins/plugins/core/components/ChatPage.js b/qortal-ui-plugins/plugins/core/components/ChatPage.js index 5a374a4d..820799cf 100644 --- a/qortal-ui-plugins/plugins/core/components/ChatPage.js +++ b/qortal-ui-plugins/plugins/core/components/ChatPage.js @@ -991,7 +991,7 @@ class ChatPage extends LitElement { ${this.repliedToMessageObj.version.toString() === '1' ? html` ${this.repliedToMessageObj.message} ` : ''} - ${this.repliedToMessageObj.version.toString() === '2' + ${+this.repliedToMessageObj.version > 1 ? html` ${unsafeHTML(generateHTML(this.repliedToMessageObj.message, [ @@ -2730,7 +2730,7 @@ class ChatPage extends LitElement { }], isImageDeleted: false, repliedTo: '', - version: 2 + version: 3 }; const stringifyMessageObject = JSON.stringify(messageObject); this.sendMessage(stringifyMessageObject, typeMessage); @@ -2804,7 +2804,7 @@ class ChatPage extends LitElement { messageText: trimmedMessage, images: [''], repliedTo: chatReference, - version: 2 + version: 3 } const stringifyMessageObject = JSON.stringify(messageObject); this.sendMessage(stringifyMessageObject, typeMessage); @@ -2836,7 +2836,7 @@ class ChatPage extends LitElement { messageText: trimmedMessage, images: [''], repliedTo: '', - version: 2 + version: 3 } const stringifyMessageObject = JSON.stringify(messageObject) diff --git a/qortal-ui-plugins/plugins/core/components/ChatScroller.js b/qortal-ui-plugins/plugins/core/components/ChatScroller.js index 30d8cf70..cff2e0b5 100644 --- a/qortal-ui-plugins/plugins/core/components/ChatScroller.js +++ b/qortal-ui-plugins/plugins/core/components/ChatScroller.js @@ -371,7 +371,8 @@ class MessageTemplate extends LitElement { let isEdited = false try { const parsedMessageObj = JSON.parse(this.messageObj.decodedMessage); - if(parsedMessageObj.version.toString() === '2'){ + console.log({parsedMessageObj}, +parsedMessageObj.version, +parsedMessageObj.version > 1) + if(+parsedMessageObj.version > 1){ messageVersion2 = generateHTML(parsedMessageObj.messageText, [ StarterKit, @@ -574,7 +575,7 @@ class MessageTemplate extends LitElement { ${version.toString() === '1' ? html` ${repliedToData.decodedMessage.messageText} ` : ''} - ${version.toString() === '2' ? html` + ${+version > 1 ? html` ${unsafeHTML(generateHTML(repliedToData.decodedMessage.messageText, [ StarterKit, Underline, @@ -627,7 +628,7 @@ class MessageTemplate extends LitElement { id="messageContent" class="message" style=${(image && replacedMessage !== "") &&"margin-top: 15px;"}> - ${version.toString() === '2' ? html` + ${+version > 1 ? html` ${unsafeHTML(messageVersion2)} ` : ''} ${version.toString() === '1' ? html` diff --git a/qortal-ui-plugins/plugins/core/components/ChatTextEditor.js b/qortal-ui-plugins/plugins/core/components/ChatTextEditor.js index aff7c185..e7879324 100644 --- a/qortal-ui-plugins/plugins/core/components/ChatTextEditor.js +++ b/qortal-ui-plugins/plugins/core/components/ChatTextEditor.js @@ -667,7 +667,7 @@ mwc-checkbox::shadow .mdc-checkbox::after, mwc-checkbox::shadow .mdc-checkbox::b messageText: trimmedMessage, images: [''], repliedTo: chatReference, - version: 2 + version: 3 } } else if (this.editedMessageObj) { let message = ""; @@ -690,14 +690,14 @@ mwc-checkbox::shadow .mdc-checkbox::after, mwc-checkbox::shadow .mdc-checkbox::b identifier: '123456' }], repliedTo: '', - version: 2 + version: 3 }; } else { messageObject = { messageText: trimmedMessage, images: [''], repliedTo: '', - version: 2 + version: 3 }; } diff --git a/qortal-ui-plugins/plugins/core/messaging/q-chat/q-chat.src.js b/qortal-ui-plugins/plugins/core/messaging/q-chat/q-chat.src.js index a8b268e5..4b62cbf5 100644 --- a/qortal-ui-plugins/plugins/core/messaging/q-chat/q-chat.src.js +++ b/qortal-ui-plugins/plugins/core/messaging/q-chat/q-chat.src.js @@ -533,7 +533,7 @@ class Chat extends LitElement { messageText: trimmedMessage, images: [''], repliedTo: '', - version: 2 + version: 3 } const stringifyMessageObject = JSON.stringify(messageObject) this.sendMessage(stringifyMessageObject); diff --git a/qortal-ui-plugins/plugins/utils/replace-messages-edited.js b/qortal-ui-plugins/plugins/utils/replace-messages-edited.js index db45d8e8..82045e6b 100644 --- a/qortal-ui-plugins/plugins/utils/replace-messages-edited.js +++ b/qortal-ui-plugins/plugins/utils/replace-messages-edited.js @@ -50,24 +50,36 @@ export const replaceMessagesEdited = async ({ msgQuery = `&txGroupId=${msg.txGroupId}` } if (parsedMessageObj.repliedTo) { - const originalReply = await parentEpml.request("apiCall", { - type: "api", - url: `/chat/messages?signature=${parsedMessageObj.repliedTo}&reverse=true${msgQuery}`, - }) + console.log({parsedMessageObj}) + let originalReply + if(+parsedMessageObj.version > 2){ + originalReply = await parentEpml.request("apiCall", { + type: "api", + url: `/chat/message/${parsedMessageObj.repliedTo}`, + }) + } + if(+parsedMessageObj.version < 3){ + originalReply = await parentEpml.request("apiCall", { + type: "api", + url: `/chat/messages?reference=${parsedMessageObj.repliedTo}&reverse=true${msgQuery}`, + }) + } + + const response = await parentEpml.request("apiCall", { type: "api", url: `/chat/messages?chatreference=${parsedMessageObj.repliedTo}&reverse=true${msgQuery}`, }) + + const originalReplyMessage = originalReply.timestamp ? originalReply : originalReply.length !== 0 ? originalReply[0] : null if ( - originalReply && - Array.isArray(originalReply) && - originalReply.length !== 0 && + originalReplyMessage && response && Array.isArray(response) && response.length !== 0 ) { - const decodeOriginalReply = decodeMessageFunc(originalReply[0], isReceipient, _publicKey) + const decodeOriginalReply = decodeMessageFunc(originalReplyMessage, isReceipient, _publicKey) const decodeUpdatedReply = decodeMessageFunc(response[0], isReceipient, _publicKey) const formattedRepliedToData = { @@ -83,14 +95,12 @@ export const replaceMessagesEdited = async ({ if ( - originalReply && - Array.isArray(originalReply) && - originalReply.length !== 0 + originalReplyMessage ) { msgItem = { ...msg, - repliedToData: decodeMessageFunc(originalReply[0], isReceipient, _publicKey), + repliedToData: decodeMessageFunc(originalReplyMessage, isReceipient, _publicKey), } } }