diff --git a/addons/mail/models/mail_link_preview.py b/addons/mail/models/mail_link_preview.py index 1166383d884..07e9c9e0b49 100644 --- a/addons/mail/models/mail_link_preview.py +++ b/addons/mail/models/mail_link_preview.py @@ -90,7 +90,7 @@ class LinkPreview(models.Model): def _link_preview_format(self): return [{ 'id': preview.id, - 'message': {'id': preview.message_id.id}, + 'message_id': preview.message_id.id, 'image_mimetype': preview.image_mimetype, 'og_description': preview.og_description, 'og_image': preview.og_image, diff --git a/addons/mail/static/src/core/common/link_preview_model.js b/addons/mail/static/src/core/common/link_preview_model.js index b484c927c80..4d864d6db9d 100644 --- a/addons/mail/static/src/core/common/link_preview_model.js +++ b/addons/mail/static/src/core/common/link_preview_model.js @@ -9,7 +9,7 @@ export class LinkPreview extends Record { * @returns {LinkPreview} */ static insert(data) { - const message = this.store.Message.get(data.message.id); + const message = this.store.Message.get(data.message_id); let linkPreview = message?.linkPreviews.find((lp) => lp.id === data.id); if (linkPreview) { return Object.assign(linkPreview, data); @@ -22,8 +22,8 @@ export class LinkPreview extends Record { /** @type {number} */ id; - /** @type {Object} */ - message; + /** @type {number} */ + message_id; /** @type {string} */ image_mimetype; /** @type {string} */ diff --git a/addons/mail/static/src/core/common/record.js b/addons/mail/static/src/core/common/record.js index 469d5ef42c2..2ab6de49bde 100644 --- a/addons/mail/static/src/core/common/record.js +++ b/addons/mail/static/src/core/common/record.js @@ -105,7 +105,7 @@ export class Record { Model; delete() { - delete this.Model.records[this.localId]; + delete this.Model?.records[this.localId]; this.Model = null; } diff --git a/addons/mail/static/tests/helpers/mock_server/models/mail_link_preview.js b/addons/mail/static/tests/helpers/mock_server/models/mail_link_preview.js index 81de4b7edde..caddaca9439 100644 --- a/addons/mail/static/tests/helpers/mock_server/models/mail_link_preview.js +++ b/addons/mail/static/tests/helpers/mock_server/models/mail_link_preview.js @@ -13,7 +13,7 @@ patch(MockServer.prototype, { _mockMailLinkPreviewFormat(linkPreview) { return { id: linkPreview.id, - message: { id: linkPreview.message_id[0] }, + message_id: linkPreview.message_id[0], image_mimetype: linkPreview.image_mimetype, og_description: linkPreview.og_description, og_image: linkPreview.og_image, diff --git a/addons/mail/tests/test_link_preview.py b/addons/mail/tests/test_link_preview.py index ee4108f1aa6..790ea367164 100644 --- a/addons/mail/tests/test_link_preview.py +++ b/addons/mail/tests/test_link_preview.py @@ -108,7 +108,7 @@ class TestLinkPreview(MailCommon): 'payload': { 'LinkPreview': [{ 'id': link_preview.id, - 'message': {'id': message.id}, + 'message_id': message.id, 'image_mimetype': False, 'og_description': self.og_description, 'og_image': self.og_image,