UNPKG

stream-chat-react-native-core

Version:

The official React Native and Expo components for Stream Chat, a service for building chat applications

56 lines 2.46 kB
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.mapStorableToMessage = void 0; var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _mapStorableToPoll = require("./mapStorableToPoll"); var _mapStorableToReaction = require("./mapStorableToReaction"); var _mapStorableToReminder = require("./mapStorableToReminder"); var _mapStorableToUser = require("./mapStorableToUser"); var _excluded = ["createdAt", "deletedAt", "deletedForMe", "extraData", "messageTextUpdatedAt", "poll_id", "reactionGroups", "shared_location", "updatedAt", "user"]; var mapStorableToMessage = ({ currentUserId, messageRow, pollRow, reactionRows, reminderRow }) => { var createdAt = messageRow.createdAt, deletedAt = messageRow.deletedAt, deletedForMe = messageRow.deletedForMe, extraData = messageRow.extraData, messageTextUpdatedAt = messageRow.messageTextUpdatedAt, poll_id = messageRow.poll_id, reactionGroups = messageRow.reactionGroups, shared_location = messageRow.shared_location, updatedAt = messageRow.updatedAt, user = messageRow.user, rest = (0, _objectWithoutProperties2.default)(messageRow, _excluded); var latestReactions = reactionRows?.map(reaction => (0, _mapStorableToReaction.mapStorableToReaction)(reaction)) || []; var ownReactions = latestReactions.filter(reaction => reaction.user?.id === currentUserId); return { ...rest, attachments: messageRow.attachments ? JSON.parse(messageRow.attachments) : [], created_at: createdAt, deleted_at: deletedAt, deleted_for_me: deletedForMe, latest_reactions: latestReactions, message_text_updated_at: messageTextUpdatedAt, own_reactions: ownReactions, poll_id, reaction_groups: reactionGroups ? JSON.parse(reactionGroups) : {}, shared_location: shared_location ? JSON.parse(shared_location) : null, updated_at: updatedAt, user: (0, _mapStorableToUser.mapStorableToUser)(user), ...(pollRow ? { poll: (0, _mapStorableToPoll.mapStorableToPoll)(pollRow) } : {}), ...(extraData ? JSON.parse(extraData) : {}), ...(reminderRow ? { reminder: (0, _mapStorableToReminder.mapStorableToReminder)(reminderRow) } : {}) }; }; exports.mapStorableToMessage = mapStorableToMessage; //# sourceMappingURL=mapStorableToMessage.js.map