Skip to content

Commit

Permalink
feat: store message_text_updates_at field in the offline DB
Browse files Browse the repository at this point in the history
  • Loading branch information
khushal87 committed Jun 11, 2024
1 parent 95abb46 commit 57dda41
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 2 deletions.
2 changes: 2 additions & 0 deletions package/src/mock-builders/generator/message.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ export const generateMessage = (options = {}) => {
created_at: timestamp,
html: '<p>regular</p>',
id: uuidv4(),
message_text_updated_at: timestamp,
text: uuidv4(),
type: 'regular',
updated_at: timestamp.toString(),
Expand All @@ -24,6 +25,7 @@ export const generateStaticMessage = (seed, options, date) =>
generateMessage({
created_at: date || '2020-04-27T13:39:49.331742Z',
id: uuidv5(seed, StreamReactNativeNamespace),
message_text_updated_at: date || '2020-04-27T13:39:49.331742Z',
text: seed,
updated_at: date || '2020-04-27T13:39:49.331742Z',
...options,
Expand Down
2 changes: 1 addition & 1 deletion package/src/store/QuickSqliteClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ import type { PreparedQueries, Table } from './types';
*
*/
export class QuickSqliteClient {
static dbVersion = 4;
static dbVersion = 5;

static dbName = DB_NAME;
static dbLocation = DB_LOCATION;
Expand Down
2 changes: 2 additions & 0 deletions package/src/store/mappers/mapMessageToStorable.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ export const mapMessageToStorable = (
id,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
latest_reactions,
message_text_updated_at,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
own_reactions,
reaction_groups,
Expand All @@ -32,6 +33,7 @@ export const mapMessageToStorable = (
deletedAt: mapDateTimeToStorable(deleted_at),
extraData: JSON.stringify(extraData),
id,
messageTextUpdatedAt: mapDateTimeToStorable(message_text_updated_at),
reactionGroups: JSON.stringify(reaction_groups),
text,
type,
Expand Down
12 changes: 11 additions & 1 deletion package/src/store/mappers/mapStorableToMessage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,16 @@ export const mapStorableToMessage = <
messageRow: TableRowJoinedUser<'messages'>;
reactionRows: TableRowJoinedUser<'reactions'>[];
}): MessageResponse<StreamChatGenerics> => {
const { createdAt, deletedAt, extraData, reactionGroups, updatedAt, user, ...rest } = messageRow;
const {
createdAt,
deletedAt,
extraData,
messageTextUpdatedAt,
reactionGroups,
updatedAt,
user,
...rest
} = messageRow;
const latestReactions =
reactionRows?.map((reaction) => mapStorableToReaction<StreamChatGenerics>(reaction)) || [];

Expand All @@ -31,6 +40,7 @@ export const mapStorableToMessage = <
created_at: createdAt,
deleted_at: deletedAt,
latest_reactions: latestReactions,
message_text_updated_at: messageTextUpdatedAt,
own_reactions: ownReactions,
reaction_groups: reactionGroups ? JSON.parse(reactionGroups) : {},
updated_at: updatedAt,
Expand Down
2 changes: 2 additions & 0 deletions package/src/store/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,7 @@ export const tables: Tables = {
deletedAt: 'TEXT',
extraData: 'TEXT',
id: 'TEXT',
messageTextUpdatedAt: 'TEXT',
reactionGroups: 'TEXT',
text: "TEXT DEFAULT ''",
type: 'TEXT',
Expand Down Expand Up @@ -262,6 +263,7 @@ export type Schema = {
deletedAt: string;
extraData: string;
id: string;
messageTextUpdatedAt: string;
reactionGroups: string;
type: MessageLabel;
updatedAt: string;
Expand Down
1 change: 1 addition & 0 deletions package/src/utils/removeReservedFields.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ export const removeReservedFields = <
'reaction_groups',
'last_message_at',
'member_count',
'message_text_updated_at',
'type',
'updated_at',
'reply_count',
Expand Down

0 comments on commit 57dda41

Please sign in to comment.