@antzsoft/chat-core 1.2.8 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -150,6 +150,7 @@ interface Message {
150
150
  pinnedBy?: string;
151
151
  pinnedAt?: string;
152
152
  uploadProgress?: number;
153
+ seq?: number;
153
154
  sentAt: string;
154
155
  createdAt: string;
155
156
  sender?: User;
@@ -200,6 +201,8 @@ interface Conversation {
200
201
  isPinned?: boolean;
201
202
  isMuted?: boolean;
202
203
  mutedUntil?: string;
204
+ /** Last message sequence number in this conversation — use as afterSeq cursor for sync */
205
+ lastSeq?: number;
203
206
  }
204
207
  interface AppConfig {
205
208
  maxPinnedConversations: number;
@@ -333,6 +336,15 @@ interface NewMessageEvent {
333
336
  senderAvatarUrl?: string;
334
337
  message: Message;
335
338
  }
339
+ interface ConversationUpdatedEvent {
340
+ id: string;
341
+ lastMessage?: Partial<Message> | null;
342
+ unreadCount?: number;
343
+ updatedAt?: string;
344
+ /** Updated when a new message is sent — use to keep sync cursor up to date */
345
+ lastSeq?: number;
346
+ participants?: Participant[];
347
+ }
336
348
  interface MessageUpdatedEvent {
337
349
  messageId: string;
338
350
  conversationId: string;
@@ -389,6 +401,8 @@ interface MessageAckEvent {
389
401
  tempId: string;
390
402
  messageId: string;
391
403
  status: MessageStatus;
404
+ /** Present when server supports seq — monotonic counter for this conversation. */
405
+ seq?: number;
392
406
  }
393
407
  interface MessageDeliveredEvent {
394
408
  messageId: string;
@@ -458,6 +472,10 @@ interface CrossConversationSyncResponse {
458
472
  }
459
473
  interface ConversationSyncResponse {
460
474
  syncedAt: string;
475
+ /** Present when server supports seq-based sync. Use as afterSeq in next call. */
476
+ nextSeq?: number;
477
+ /** True when more pages are available — call again with updated afterSeq. */
478
+ hasMore?: boolean;
461
479
  messages: Message[];
462
480
  deletedForMe: SyncDeletedForMe[];
463
481
  reactions: SyncReactions;
@@ -759,4 +777,4 @@ declare function uploadBatchWithSlots(files: UploadableFile[], platformUploadFn:
759
777
  slotToFile: Map<string, FileResponse>;
760
778
  }>;
761
779
 
762
- export { type PlatformCompressFn as $, type AuthResponse as A, type BatchUploadResult as B, type CrossConversationSyncResponse as C, type LastReaction as D, type MessageAckEvent as E, type FileResponse as F, type MessageContent as G, type MessageDeletedEvent as H, type MessageDeletedForMeEvent as I, type MessageDeliveredEvent as J, type MessageMetadata as K, type LoginCredentials as L, type Message as M, type MessageReaction as N, type MessageReceiptEntry as O, type PaginatedResponse as P, type MessageReplyReference as Q, type ResolvedCompressionConfig as R, type SendMessagePayload as S, type MessageStarUpdatedEvent as T, type User as U, type MessageUpdatedEvent as V, type MessagesDeliveredEvent as W, type MultipartPartUrl as X, type MultipartUploadInfo as Y, type NewMessageEvent as Z, type OptimisticAttachment as _, type RegisterData as a, type PlatformUploadFn as a0, type PlatformUploadPartFn as a1, type QuietHours as a2, type ReactionUpdatedEvent as a3, type ReadReceiptEvent as a4, type ReplyAttachmentSnapshot as a5, type ResolvedFileSizeLimits as a6, type SendMessageAttachment as a7, type SyncDeletedForMe as a8, type SyncParticipantChange as a9, type SyncReactions as aa, type SyncReadReceipt as ab, type SyncStarEntry as ac, type SystemMessageMetadata as ad, type TypingIndicatorEvent as ae, type UploadConfig as af, type UploadProgress as ag, type UserStatusEvent as ah, resolveConfig as ai, storageApi as aj, uploadBatch as ak, uploadBatchWithSlots as al, type AuthTokens as b, type ConversationSyncResponse as c, type AppConfig as d, type CursorPaginatedResponse as e, type MessageReceiptsResponse as f, type ConversationListParams as g, type Conversation as h, type Participant as i, type ConversationUnreadCount as j, type UnreadSummary as k, type UserPreferences as l, type ResolvedConfig as m, type PersistStorage as n, type PresignedUrlRequest as o, type PresignedUrlResponse as p, type CompletedPart as q, type FileType as r, type AntzChatConfig as s, type UploadableFile as t, type Attachment as u, type CompressedFile as v, type CompressionAlgorithm as w, type CompressionConfig as x, type ConversationType as y, type FileSizeLimits as z };
780
+ export { type OptimisticAttachment as $, type AuthResponse as A, type BatchUploadResult as B, type CrossConversationSyncResponse as C, type FileSizeLimits as D, type LastReaction as E, type FileResponse as F, type MessageAckEvent as G, type MessageContent as H, type MessageDeletedEvent as I, type MessageDeletedForMeEvent as J, type MessageDeliveredEvent as K, type LoginCredentials as L, type Message as M, type MessageMetadata as N, type MessageReaction as O, type PaginatedResponse as P, type MessageReceiptEntry as Q, type ResolvedCompressionConfig as R, type SendMessagePayload as S, type MessageReplyReference as T, type User as U, type MessageStarUpdatedEvent as V, type MessageUpdatedEvent as W, type MessagesDeliveredEvent as X, type MultipartPartUrl as Y, type MultipartUploadInfo as Z, type NewMessageEvent as _, type RegisterData as a, type PlatformCompressFn as a0, type PlatformUploadFn as a1, type PlatformUploadPartFn as a2, type QuietHours as a3, type ReactionUpdatedEvent as a4, type ReadReceiptEvent as a5, type ReplyAttachmentSnapshot as a6, type ResolvedFileSizeLimits as a7, type SendMessageAttachment as a8, type SyncDeletedForMe as a9, type SyncParticipantChange as aa, type SyncReactions as ab, type SyncReadReceipt as ac, type SyncStarEntry as ad, type SystemMessageMetadata as ae, type TypingIndicatorEvent as af, type UploadConfig as ag, type UploadProgress as ah, type UserStatusEvent as ai, resolveConfig as aj, storageApi as ak, uploadBatch as al, uploadBatchWithSlots as am, type AuthTokens as b, type ConversationSyncResponse as c, type AppConfig as d, type CursorPaginatedResponse as e, type MessageReceiptsResponse as f, type ConversationListParams as g, type Conversation as h, type Participant as i, type ConversationUnreadCount as j, type UnreadSummary as k, type UserPreferences as l, type ResolvedConfig as m, type PersistStorage as n, type PresignedUrlRequest as o, type PresignedUrlResponse as p, type CompletedPart as q, type FileType as r, type AntzChatConfig as s, type UploadableFile as t, type Attachment as u, type CompressedFile as v, type CompressionAlgorithm as w, type CompressionConfig as x, type ConversationType as y, type ConversationUpdatedEvent as z };
@@ -150,6 +150,7 @@ interface Message {
150
150
  pinnedBy?: string;
151
151
  pinnedAt?: string;
152
152
  uploadProgress?: number;
153
+ seq?: number;
153
154
  sentAt: string;
154
155
  createdAt: string;
155
156
  sender?: User;
@@ -200,6 +201,8 @@ interface Conversation {
200
201
  isPinned?: boolean;
201
202
  isMuted?: boolean;
202
203
  mutedUntil?: string;
204
+ /** Last message sequence number in this conversation — use as afterSeq cursor for sync */
205
+ lastSeq?: number;
203
206
  }
204
207
  interface AppConfig {
205
208
  maxPinnedConversations: number;
@@ -333,6 +336,15 @@ interface NewMessageEvent {
333
336
  senderAvatarUrl?: string;
334
337
  message: Message;
335
338
  }
339
+ interface ConversationUpdatedEvent {
340
+ id: string;
341
+ lastMessage?: Partial<Message> | null;
342
+ unreadCount?: number;
343
+ updatedAt?: string;
344
+ /** Updated when a new message is sent — use to keep sync cursor up to date */
345
+ lastSeq?: number;
346
+ participants?: Participant[];
347
+ }
336
348
  interface MessageUpdatedEvent {
337
349
  messageId: string;
338
350
  conversationId: string;
@@ -389,6 +401,8 @@ interface MessageAckEvent {
389
401
  tempId: string;
390
402
  messageId: string;
391
403
  status: MessageStatus;
404
+ /** Present when server supports seq — monotonic counter for this conversation. */
405
+ seq?: number;
392
406
  }
393
407
  interface MessageDeliveredEvent {
394
408
  messageId: string;
@@ -458,6 +472,10 @@ interface CrossConversationSyncResponse {
458
472
  }
459
473
  interface ConversationSyncResponse {
460
474
  syncedAt: string;
475
+ /** Present when server supports seq-based sync. Use as afterSeq in next call. */
476
+ nextSeq?: number;
477
+ /** True when more pages are available — call again with updated afterSeq. */
478
+ hasMore?: boolean;
461
479
  messages: Message[];
462
480
  deletedForMe: SyncDeletedForMe[];
463
481
  reactions: SyncReactions;
@@ -759,4 +777,4 @@ declare function uploadBatchWithSlots(files: UploadableFile[], platformUploadFn:
759
777
  slotToFile: Map<string, FileResponse>;
760
778
  }>;
761
779
 
762
- export { type PlatformCompressFn as $, type AuthResponse as A, type BatchUploadResult as B, type CrossConversationSyncResponse as C, type LastReaction as D, type MessageAckEvent as E, type FileResponse as F, type MessageContent as G, type MessageDeletedEvent as H, type MessageDeletedForMeEvent as I, type MessageDeliveredEvent as J, type MessageMetadata as K, type LoginCredentials as L, type Message as M, type MessageReaction as N, type MessageReceiptEntry as O, type PaginatedResponse as P, type MessageReplyReference as Q, type ResolvedCompressionConfig as R, type SendMessagePayload as S, type MessageStarUpdatedEvent as T, type User as U, type MessageUpdatedEvent as V, type MessagesDeliveredEvent as W, type MultipartPartUrl as X, type MultipartUploadInfo as Y, type NewMessageEvent as Z, type OptimisticAttachment as _, type RegisterData as a, type PlatformUploadFn as a0, type PlatformUploadPartFn as a1, type QuietHours as a2, type ReactionUpdatedEvent as a3, type ReadReceiptEvent as a4, type ReplyAttachmentSnapshot as a5, type ResolvedFileSizeLimits as a6, type SendMessageAttachment as a7, type SyncDeletedForMe as a8, type SyncParticipantChange as a9, type SyncReactions as aa, type SyncReadReceipt as ab, type SyncStarEntry as ac, type SystemMessageMetadata as ad, type TypingIndicatorEvent as ae, type UploadConfig as af, type UploadProgress as ag, type UserStatusEvent as ah, resolveConfig as ai, storageApi as aj, uploadBatch as ak, uploadBatchWithSlots as al, type AuthTokens as b, type ConversationSyncResponse as c, type AppConfig as d, type CursorPaginatedResponse as e, type MessageReceiptsResponse as f, type ConversationListParams as g, type Conversation as h, type Participant as i, type ConversationUnreadCount as j, type UnreadSummary as k, type UserPreferences as l, type ResolvedConfig as m, type PersistStorage as n, type PresignedUrlRequest as o, type PresignedUrlResponse as p, type CompletedPart as q, type FileType as r, type AntzChatConfig as s, type UploadableFile as t, type Attachment as u, type CompressedFile as v, type CompressionAlgorithm as w, type CompressionConfig as x, type ConversationType as y, type FileSizeLimits as z };
780
+ export { type OptimisticAttachment as $, type AuthResponse as A, type BatchUploadResult as B, type CrossConversationSyncResponse as C, type FileSizeLimits as D, type LastReaction as E, type FileResponse as F, type MessageAckEvent as G, type MessageContent as H, type MessageDeletedEvent as I, type MessageDeletedForMeEvent as J, type MessageDeliveredEvent as K, type LoginCredentials as L, type Message as M, type MessageMetadata as N, type MessageReaction as O, type PaginatedResponse as P, type MessageReceiptEntry as Q, type ResolvedCompressionConfig as R, type SendMessagePayload as S, type MessageReplyReference as T, type User as U, type MessageStarUpdatedEvent as V, type MessageUpdatedEvent as W, type MessagesDeliveredEvent as X, type MultipartPartUrl as Y, type MultipartUploadInfo as Z, type NewMessageEvent as _, type RegisterData as a, type PlatformCompressFn as a0, type PlatformUploadFn as a1, type PlatformUploadPartFn as a2, type QuietHours as a3, type ReactionUpdatedEvent as a4, type ReadReceiptEvent as a5, type ReplyAttachmentSnapshot as a6, type ResolvedFileSizeLimits as a7, type SendMessageAttachment as a8, type SyncDeletedForMe as a9, type SyncParticipantChange as aa, type SyncReactions as ab, type SyncReadReceipt as ac, type SyncStarEntry as ad, type SystemMessageMetadata as ae, type TypingIndicatorEvent as af, type UploadConfig as ag, type UploadProgress as ah, type UserStatusEvent as ai, resolveConfig as aj, storageApi as ak, uploadBatch as al, uploadBatchWithSlots as am, type AuthTokens as b, type ConversationSyncResponse as c, type AppConfig as d, type CursorPaginatedResponse as e, type MessageReceiptsResponse as f, type ConversationListParams as g, type Conversation as h, type Participant as i, type ConversationUnreadCount as j, type UnreadSummary as k, type UserPreferences as l, type ResolvedConfig as m, type PersistStorage as n, type PresignedUrlRequest as o, type PresignedUrlResponse as p, type CompletedPart as q, type FileType as r, type AntzChatConfig as s, type UploadableFile as t, type Attachment as u, type CompressedFile as v, type CompressionAlgorithm as w, type CompressionConfig as x, type ConversationType as y, type ConversationUpdatedEvent as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antzsoft/chat-core",
3
- "version": "1.2.8",
3
+ "version": "1.3.0",
4
4
  "description": "Platform-agnostic core for Antz Chat — API, socket, stores, types. Works in browser, React Native (Expo or bare), and Node.js.",
5
5
  "author": "Antz",
6
6
  "license": "MIT",