# frozen_string_literal: true class UserChatMessageBookmarkSerializer < UserBookmarkBaseSerializer attr_reader :chat_message def title fancy_title end def fancy_title @fancy_title ||= chat_message.chat_channel.title(scope.user) end def cooked chat_message.cooked end def bookmarkable_user @bookmarkable_user ||= chat_message.user end def bookmarkable_url chat_message.url end def excerpt return nil unless cooked @excerpt ||= PrettyText.excerpt(cooked, 300, keep_emoji_images: true) end private def chat_message object.bookmarkable end end