@antzsoft/chat-core 1.4.2 → 1.4.3
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.
- package/README.md +9 -3
- package/dist/index.cjs +10 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -5
- package/dist/index.d.ts +17 -5
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/internal.d.cts +1 -1
- package/dist/internal.d.ts +1 -1
- package/dist/{storage-BqygfDAK.d.cts → storage-D7GPq-Mm.d.cts} +3 -1
- package/dist/{storage-BqygfDAK.d.ts → storage-D7GPq-Mm.d.ts} +3 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { R as ResolvedCompressionConfig, L as LoginCredentials, A as AuthResponse, a as RegisterData, b as AuthTokens, U as User, C as CrossConversationSyncResponse, c as ConversationSyncResponse, d as AppConfig, S as SendMessagePayload, M as Message, e as CursorPaginatedResponse, f as MessageReactionsResponse, P as PaginatedResponse, g as MessageReceiptsResponse, h as ConversationListParams, i as Conversation, j as Participant, k as ConversationUnreadCount, l as UnreadSummary, m as UserPreferences, n as ResolvedConfig, o as PersistStorage, p as PresignedUrlRequest, q as PresignedUrlResponse, F as FileResponse, r as CompletedPart, s as FileType, t as AntzChatConfig, u as UploadableFile, B as BatchUploadResult } from './storage-
|
|
2
|
-
export { v as Attachment, w as CompressedFile, x as CompressionAlgorithm, y as CompressionConfig, z as ConversationType, D as ConversationUpdatedEvent, E as FileSizeLimits, G as LastReaction, H as MENTION_ALL_ID, I as MessageAckEvent, J as MessageContent, K as MessageDeletedEvent, N as MessageDeletedForMeEvent, O as MessageDeliveredEvent, Q as MessageForwardReference, T as MessageMetadata, V as MessageReaction, W as MessageReceiptEntry, X as MessageReplyReference, Y as MessageStarUpdatedEvent, Z as MessageUpdatedEvent, _ as MessagesDeliveredEvent, $ as MultipartPartUrl, a0 as MultipartUploadInfo, a1 as NewMessageEvent, a2 as OptimisticAttachment, a3 as PlatformCompressFn, a4 as PlatformUploadFn, a5 as PlatformUploadPartFn, a6 as QuietHours, a7 as ReactionGroup, a8 as ReactionUpdatedEvent, a9 as ReactionUser, aa as ReadReceiptEvent, ab as ReplyAttachmentSnapshot, ac as ResolvedFileSizeLimits, ad as SendMessageAttachment, ae as SyncDeletedForMe, af as SyncDeliveredReceipt, ag as SyncParticipantChange, ah as SyncReactionEntry, ai as SyncReactions, aj as SyncReadReceipt, ak as SyncStarEntry, al as SystemMessageMetadata, am as TypingIndicatorEvent, an as UploadConfig, ao as UploadProgress, ap as UserStatusEvent, aq as resolveConfig, ar as storageApi, as as uploadBatch } from './storage-
|
|
1
|
+
import { R as ResolvedCompressionConfig, L as LoginCredentials, A as AuthResponse, a as RegisterData, b as AuthTokens, U as User, C as CrossConversationSyncResponse, c as ConversationSyncResponse, d as AppConfig, S as SendMessagePayload, M as Message, e as CursorPaginatedResponse, f as MessageReactionsResponse, P as PaginatedResponse, g as MessageReceiptsResponse, h as ConversationListParams, i as Conversation, j as Participant, k as ConversationUnreadCount, l as UnreadSummary, m as UserPreferences, n as ResolvedConfig, o as PersistStorage, p as PresignedUrlRequest, q as PresignedUrlResponse, F as FileResponse, r as CompletedPart, s as FileType, t as AntzChatConfig, u as UploadableFile, B as BatchUploadResult } from './storage-D7GPq-Mm.cjs';
|
|
2
|
+
export { v as Attachment, w as CompressedFile, x as CompressionAlgorithm, y as CompressionConfig, z as ConversationType, D as ConversationUpdatedEvent, E as FileSizeLimits, G as LastReaction, H as MENTION_ALL_ID, I as MessageAckEvent, J as MessageContent, K as MessageDeletedEvent, N as MessageDeletedForMeEvent, O as MessageDeliveredEvent, Q as MessageForwardReference, T as MessageMetadata, V as MessageReaction, W as MessageReceiptEntry, X as MessageReplyReference, Y as MessageStarUpdatedEvent, Z as MessageUpdatedEvent, _ as MessagesDeliveredEvent, $ as MultipartPartUrl, a0 as MultipartUploadInfo, a1 as NewMessageEvent, a2 as OptimisticAttachment, a3 as PlatformCompressFn, a4 as PlatformUploadFn, a5 as PlatformUploadPartFn, a6 as QuietHours, a7 as ReactionGroup, a8 as ReactionUpdatedEvent, a9 as ReactionUser, aa as ReadReceiptEvent, ab as ReplyAttachmentSnapshot, ac as ResolvedFileSizeLimits, ad as SendMessageAttachment, ae as SyncDeletedForMe, af as SyncDeliveredReceipt, ag as SyncParticipantChange, ah as SyncReactionEntry, ai as SyncReactions, aj as SyncReadReceipt, ak as SyncStarEntry, al as SystemMessageMetadata, am as TypingIndicatorEvent, an as UploadConfig, ao as UploadProgress, ap as UserStatusEvent, aq as resolveConfig, ar as storageApi, as as uploadBatch } from './storage-D7GPq-Mm.cjs';
|
|
3
3
|
import { AxiosInstance } from 'axios';
|
|
4
4
|
import { Socket } from 'socket.io-client';
|
|
5
5
|
import * as zustand_middleware from 'zustand/middleware';
|
|
@@ -77,6 +77,13 @@ interface SendData {
|
|
|
77
77
|
}
|
|
78
78
|
/** Matches the server-enforced cap in messages/dto/create-message.dto.ts (MAX_FORWARD_TARGETS). */
|
|
79
79
|
declare const MAX_FORWARD_TARGETS = 5;
|
|
80
|
+
/**
|
|
81
|
+
* Matches the server's HIGHLY_FORWARDED_DEPTH_THRESHOLD in messages.service.ts — the
|
|
82
|
+
* same forwardDepth value that triggers the server's fan-out-to-1 cap. Also used as
|
|
83
|
+
* the "Forwarded many times" label threshold so the label and the cap agree on what
|
|
84
|
+
* "highly forwarded" means; do not use a different number for the label alone.
|
|
85
|
+
*/
|
|
86
|
+
declare const HIGHLY_FORWARDED_DEPTH_THRESHOLD = 5;
|
|
80
87
|
interface ForwardResult {
|
|
81
88
|
conversationId: string;
|
|
82
89
|
success: boolean;
|
|
@@ -115,8 +122,13 @@ declare const messagesApi: {
|
|
|
115
122
|
* per call, also enforced server-side). Each target is independent — one failing
|
|
116
123
|
* (e.g. no longer a participant) does not block the others; check `success`/`error`
|
|
117
124
|
* per entry in the returned array.
|
|
125
|
+
*
|
|
126
|
+
* Pass `attachmentIds` to forward only a subset of the source message's attachments
|
|
127
|
+
* (e.g. one image out of a multi-image message) — omit it to forward the whole
|
|
128
|
+
* message, including all its attachments, unchanged. An ID not present on the
|
|
129
|
+
* source message is ignored server-side.
|
|
118
130
|
*/
|
|
119
|
-
forward(messageId: string, targetConversationIds: string[]): Promise<ForwardResult[]>;
|
|
131
|
+
forward(messageId: string, targetConversationIds: string[], attachmentIds?: string[]): Promise<ForwardResult[]>;
|
|
120
132
|
};
|
|
121
133
|
|
|
122
134
|
declare function normalizeConversation(conv: any): Conversation;
|
|
@@ -676,7 +688,7 @@ declare class AntzChatClient {
|
|
|
676
688
|
unpin(messageId: string): Promise<Message>;
|
|
677
689
|
getPinned(conversationId: string): Promise<Message[]>;
|
|
678
690
|
getReceipts(messageId: string): Promise<MessageReceiptsResponse>;
|
|
679
|
-
forward(messageId: string, targetConversationIds: string[]): Promise<ForwardResult[]>;
|
|
691
|
+
forward(messageId: string, targetConversationIds: string[], attachmentIds?: string[]): Promise<ForwardResult[]>;
|
|
680
692
|
};
|
|
681
693
|
readonly conversations: {
|
|
682
694
|
list(params?: ConversationListParams): Promise<PaginatedResponse<Conversation>>;
|
|
@@ -752,4 +764,4 @@ declare class AntzChatClient {
|
|
|
752
764
|
uploadIcon(conversationId: string, file: UploadableFile): Promise<Conversation>;
|
|
753
765
|
}
|
|
754
766
|
|
|
755
|
-
export { AntzChatAuthError, AntzChatClient, AntzChatConfig, AntzChatError, AntzChatNetworkError, AntzChatPermissionError, AntzChatServerError, AntzChatValidationError, AppConfig, AuthResponse, AuthTokens, BatchUploadResult, CompletedPart, Conversation, ConversationListParams, ConversationSyncResponse, ConversationUnreadCount, type CreateDirectData, type CreateGroupData, CrossConversationSyncResponse, CursorPaginatedResponse, FileResponse, FileType, type ForwardResult, type LastReadEntry, type ListMessagesParams, LoginCredentials, MAX_FORWARD_TARGETS, type MentionPart, type MentionSegment, Message, MessageReactionsResponse, MessageReceiptsResponse, type MobileDeviceToken, PaginatedResponse, type ParsedMention, Participant, PersistStorage, PresignedUrlRequest, PresignedUrlResponse, RegisterData, type RegisterDeviceTokenPayload, ResolvedCompressionConfig, ResolvedConfig, type SearchParams, type SendData, SendMessagePayload, type SocketStatus, type StatusListener, type TokenStore, UnreadSummary, type UpdateConversationData, type UpdateProfilePayload, UploadableFile, User, UserPreferences, type WebPushDeviceToken, appConfigApi, authApi, buildMentionText, connectSocket, conversationsApi, createAuthStore, createRestTransitSession, decryptPayload, devicesApi, disconnectSocket, encryptPayload, extractMentionIds, fetchServerKeys, generateEphemeralKey, getApiClient, getAuthStore, getCompressionStrategy, getSessionId, getSessionKey, getSocket, getSocketStatus, initApiClient, initAuthStore, isMentionAll, isTransitEnvelope, messagesApi, normalizeAxiosError, normalizeConversation, onSocketStatus, parseMentions, performHandshake, reconnectSocket, refreshSocketAuth, renderMentionParts, resetAuthStore, resolveSystemMessageText, setApiClientInstance, setTransitSession, socketEmit, syncApi, tryGetSocket, useChatStore, usersApi };
|
|
767
|
+
export { AntzChatAuthError, AntzChatClient, AntzChatConfig, AntzChatError, AntzChatNetworkError, AntzChatPermissionError, AntzChatServerError, AntzChatValidationError, AppConfig, AuthResponse, AuthTokens, BatchUploadResult, CompletedPart, Conversation, ConversationListParams, ConversationSyncResponse, ConversationUnreadCount, type CreateDirectData, type CreateGroupData, CrossConversationSyncResponse, CursorPaginatedResponse, FileResponse, FileType, type ForwardResult, HIGHLY_FORWARDED_DEPTH_THRESHOLD, type LastReadEntry, type ListMessagesParams, LoginCredentials, MAX_FORWARD_TARGETS, type MentionPart, type MentionSegment, Message, MessageReactionsResponse, MessageReceiptsResponse, type MobileDeviceToken, PaginatedResponse, type ParsedMention, Participant, PersistStorage, PresignedUrlRequest, PresignedUrlResponse, RegisterData, type RegisterDeviceTokenPayload, ResolvedCompressionConfig, ResolvedConfig, type SearchParams, type SendData, SendMessagePayload, type SocketStatus, type StatusListener, type TokenStore, UnreadSummary, type UpdateConversationData, type UpdateProfilePayload, UploadableFile, User, UserPreferences, type WebPushDeviceToken, appConfigApi, authApi, buildMentionText, connectSocket, conversationsApi, createAuthStore, createRestTransitSession, decryptPayload, devicesApi, disconnectSocket, encryptPayload, extractMentionIds, fetchServerKeys, generateEphemeralKey, getApiClient, getAuthStore, getCompressionStrategy, getSessionId, getSessionKey, getSocket, getSocketStatus, initApiClient, initAuthStore, isMentionAll, isTransitEnvelope, messagesApi, normalizeAxiosError, normalizeConversation, onSocketStatus, parseMentions, performHandshake, reconnectSocket, refreshSocketAuth, renderMentionParts, resetAuthStore, resolveSystemMessageText, setApiClientInstance, setTransitSession, socketEmit, syncApi, tryGetSocket, useChatStore, usersApi };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { R as ResolvedCompressionConfig, L as LoginCredentials, A as AuthResponse, a as RegisterData, b as AuthTokens, U as User, C as CrossConversationSyncResponse, c as ConversationSyncResponse, d as AppConfig, S as SendMessagePayload, M as Message, e as CursorPaginatedResponse, f as MessageReactionsResponse, P as PaginatedResponse, g as MessageReceiptsResponse, h as ConversationListParams, i as Conversation, j as Participant, k as ConversationUnreadCount, l as UnreadSummary, m as UserPreferences, n as ResolvedConfig, o as PersistStorage, p as PresignedUrlRequest, q as PresignedUrlResponse, F as FileResponse, r as CompletedPart, s as FileType, t as AntzChatConfig, u as UploadableFile, B as BatchUploadResult } from './storage-
|
|
2
|
-
export { v as Attachment, w as CompressedFile, x as CompressionAlgorithm, y as CompressionConfig, z as ConversationType, D as ConversationUpdatedEvent, E as FileSizeLimits, G as LastReaction, H as MENTION_ALL_ID, I as MessageAckEvent, J as MessageContent, K as MessageDeletedEvent, N as MessageDeletedForMeEvent, O as MessageDeliveredEvent, Q as MessageForwardReference, T as MessageMetadata, V as MessageReaction, W as MessageReceiptEntry, X as MessageReplyReference, Y as MessageStarUpdatedEvent, Z as MessageUpdatedEvent, _ as MessagesDeliveredEvent, $ as MultipartPartUrl, a0 as MultipartUploadInfo, a1 as NewMessageEvent, a2 as OptimisticAttachment, a3 as PlatformCompressFn, a4 as PlatformUploadFn, a5 as PlatformUploadPartFn, a6 as QuietHours, a7 as ReactionGroup, a8 as ReactionUpdatedEvent, a9 as ReactionUser, aa as ReadReceiptEvent, ab as ReplyAttachmentSnapshot, ac as ResolvedFileSizeLimits, ad as SendMessageAttachment, ae as SyncDeletedForMe, af as SyncDeliveredReceipt, ag as SyncParticipantChange, ah as SyncReactionEntry, ai as SyncReactions, aj as SyncReadReceipt, ak as SyncStarEntry, al as SystemMessageMetadata, am as TypingIndicatorEvent, an as UploadConfig, ao as UploadProgress, ap as UserStatusEvent, aq as resolveConfig, ar as storageApi, as as uploadBatch } from './storage-
|
|
1
|
+
import { R as ResolvedCompressionConfig, L as LoginCredentials, A as AuthResponse, a as RegisterData, b as AuthTokens, U as User, C as CrossConversationSyncResponse, c as ConversationSyncResponse, d as AppConfig, S as SendMessagePayload, M as Message, e as CursorPaginatedResponse, f as MessageReactionsResponse, P as PaginatedResponse, g as MessageReceiptsResponse, h as ConversationListParams, i as Conversation, j as Participant, k as ConversationUnreadCount, l as UnreadSummary, m as UserPreferences, n as ResolvedConfig, o as PersistStorage, p as PresignedUrlRequest, q as PresignedUrlResponse, F as FileResponse, r as CompletedPart, s as FileType, t as AntzChatConfig, u as UploadableFile, B as BatchUploadResult } from './storage-D7GPq-Mm.js';
|
|
2
|
+
export { v as Attachment, w as CompressedFile, x as CompressionAlgorithm, y as CompressionConfig, z as ConversationType, D as ConversationUpdatedEvent, E as FileSizeLimits, G as LastReaction, H as MENTION_ALL_ID, I as MessageAckEvent, J as MessageContent, K as MessageDeletedEvent, N as MessageDeletedForMeEvent, O as MessageDeliveredEvent, Q as MessageForwardReference, T as MessageMetadata, V as MessageReaction, W as MessageReceiptEntry, X as MessageReplyReference, Y as MessageStarUpdatedEvent, Z as MessageUpdatedEvent, _ as MessagesDeliveredEvent, $ as MultipartPartUrl, a0 as MultipartUploadInfo, a1 as NewMessageEvent, a2 as OptimisticAttachment, a3 as PlatformCompressFn, a4 as PlatformUploadFn, a5 as PlatformUploadPartFn, a6 as QuietHours, a7 as ReactionGroup, a8 as ReactionUpdatedEvent, a9 as ReactionUser, aa as ReadReceiptEvent, ab as ReplyAttachmentSnapshot, ac as ResolvedFileSizeLimits, ad as SendMessageAttachment, ae as SyncDeletedForMe, af as SyncDeliveredReceipt, ag as SyncParticipantChange, ah as SyncReactionEntry, ai as SyncReactions, aj as SyncReadReceipt, ak as SyncStarEntry, al as SystemMessageMetadata, am as TypingIndicatorEvent, an as UploadConfig, ao as UploadProgress, ap as UserStatusEvent, aq as resolveConfig, ar as storageApi, as as uploadBatch } from './storage-D7GPq-Mm.js';
|
|
3
3
|
import { AxiosInstance } from 'axios';
|
|
4
4
|
import { Socket } from 'socket.io-client';
|
|
5
5
|
import * as zustand_middleware from 'zustand/middleware';
|
|
@@ -77,6 +77,13 @@ interface SendData {
|
|
|
77
77
|
}
|
|
78
78
|
/** Matches the server-enforced cap in messages/dto/create-message.dto.ts (MAX_FORWARD_TARGETS). */
|
|
79
79
|
declare const MAX_FORWARD_TARGETS = 5;
|
|
80
|
+
/**
|
|
81
|
+
* Matches the server's HIGHLY_FORWARDED_DEPTH_THRESHOLD in messages.service.ts — the
|
|
82
|
+
* same forwardDepth value that triggers the server's fan-out-to-1 cap. Also used as
|
|
83
|
+
* the "Forwarded many times" label threshold so the label and the cap agree on what
|
|
84
|
+
* "highly forwarded" means; do not use a different number for the label alone.
|
|
85
|
+
*/
|
|
86
|
+
declare const HIGHLY_FORWARDED_DEPTH_THRESHOLD = 5;
|
|
80
87
|
interface ForwardResult {
|
|
81
88
|
conversationId: string;
|
|
82
89
|
success: boolean;
|
|
@@ -115,8 +122,13 @@ declare const messagesApi: {
|
|
|
115
122
|
* per call, also enforced server-side). Each target is independent — one failing
|
|
116
123
|
* (e.g. no longer a participant) does not block the others; check `success`/`error`
|
|
117
124
|
* per entry in the returned array.
|
|
125
|
+
*
|
|
126
|
+
* Pass `attachmentIds` to forward only a subset of the source message's attachments
|
|
127
|
+
* (e.g. one image out of a multi-image message) — omit it to forward the whole
|
|
128
|
+
* message, including all its attachments, unchanged. An ID not present on the
|
|
129
|
+
* source message is ignored server-side.
|
|
118
130
|
*/
|
|
119
|
-
forward(messageId: string, targetConversationIds: string[]): Promise<ForwardResult[]>;
|
|
131
|
+
forward(messageId: string, targetConversationIds: string[], attachmentIds?: string[]): Promise<ForwardResult[]>;
|
|
120
132
|
};
|
|
121
133
|
|
|
122
134
|
declare function normalizeConversation(conv: any): Conversation;
|
|
@@ -676,7 +688,7 @@ declare class AntzChatClient {
|
|
|
676
688
|
unpin(messageId: string): Promise<Message>;
|
|
677
689
|
getPinned(conversationId: string): Promise<Message[]>;
|
|
678
690
|
getReceipts(messageId: string): Promise<MessageReceiptsResponse>;
|
|
679
|
-
forward(messageId: string, targetConversationIds: string[]): Promise<ForwardResult[]>;
|
|
691
|
+
forward(messageId: string, targetConversationIds: string[], attachmentIds?: string[]): Promise<ForwardResult[]>;
|
|
680
692
|
};
|
|
681
693
|
readonly conversations: {
|
|
682
694
|
list(params?: ConversationListParams): Promise<PaginatedResponse<Conversation>>;
|
|
@@ -752,4 +764,4 @@ declare class AntzChatClient {
|
|
|
752
764
|
uploadIcon(conversationId: string, file: UploadableFile): Promise<Conversation>;
|
|
753
765
|
}
|
|
754
766
|
|
|
755
|
-
export { AntzChatAuthError, AntzChatClient, AntzChatConfig, AntzChatError, AntzChatNetworkError, AntzChatPermissionError, AntzChatServerError, AntzChatValidationError, AppConfig, AuthResponse, AuthTokens, BatchUploadResult, CompletedPart, Conversation, ConversationListParams, ConversationSyncResponse, ConversationUnreadCount, type CreateDirectData, type CreateGroupData, CrossConversationSyncResponse, CursorPaginatedResponse, FileResponse, FileType, type ForwardResult, type LastReadEntry, type ListMessagesParams, LoginCredentials, MAX_FORWARD_TARGETS, type MentionPart, type MentionSegment, Message, MessageReactionsResponse, MessageReceiptsResponse, type MobileDeviceToken, PaginatedResponse, type ParsedMention, Participant, PersistStorage, PresignedUrlRequest, PresignedUrlResponse, RegisterData, type RegisterDeviceTokenPayload, ResolvedCompressionConfig, ResolvedConfig, type SearchParams, type SendData, SendMessagePayload, type SocketStatus, type StatusListener, type TokenStore, UnreadSummary, type UpdateConversationData, type UpdateProfilePayload, UploadableFile, User, UserPreferences, type WebPushDeviceToken, appConfigApi, authApi, buildMentionText, connectSocket, conversationsApi, createAuthStore, createRestTransitSession, decryptPayload, devicesApi, disconnectSocket, encryptPayload, extractMentionIds, fetchServerKeys, generateEphemeralKey, getApiClient, getAuthStore, getCompressionStrategy, getSessionId, getSessionKey, getSocket, getSocketStatus, initApiClient, initAuthStore, isMentionAll, isTransitEnvelope, messagesApi, normalizeAxiosError, normalizeConversation, onSocketStatus, parseMentions, performHandshake, reconnectSocket, refreshSocketAuth, renderMentionParts, resetAuthStore, resolveSystemMessageText, setApiClientInstance, setTransitSession, socketEmit, syncApi, tryGetSocket, useChatStore, usersApi };
|
|
767
|
+
export { AntzChatAuthError, AntzChatClient, AntzChatConfig, AntzChatError, AntzChatNetworkError, AntzChatPermissionError, AntzChatServerError, AntzChatValidationError, AppConfig, AuthResponse, AuthTokens, BatchUploadResult, CompletedPart, Conversation, ConversationListParams, ConversationSyncResponse, ConversationUnreadCount, type CreateDirectData, type CreateGroupData, CrossConversationSyncResponse, CursorPaginatedResponse, FileResponse, FileType, type ForwardResult, HIGHLY_FORWARDED_DEPTH_THRESHOLD, type LastReadEntry, type ListMessagesParams, LoginCredentials, MAX_FORWARD_TARGETS, type MentionPart, type MentionSegment, Message, MessageReactionsResponse, MessageReceiptsResponse, type MobileDeviceToken, PaginatedResponse, type ParsedMention, Participant, PersistStorage, PresignedUrlRequest, PresignedUrlResponse, RegisterData, type RegisterDeviceTokenPayload, ResolvedCompressionConfig, ResolvedConfig, type SearchParams, type SendData, SendMessagePayload, type SocketStatus, type StatusListener, type TokenStore, UnreadSummary, type UpdateConversationData, type UpdateProfilePayload, UploadableFile, User, UserPreferences, type WebPushDeviceToken, appConfigApi, authApi, buildMentionText, connectSocket, conversationsApi, createAuthStore, createRestTransitSession, decryptPayload, devicesApi, disconnectSocket, encryptPayload, extractMentionIds, fetchServerKeys, generateEphemeralKey, getApiClient, getAuthStore, getCompressionStrategy, getSessionId, getSessionKey, getSocket, getSocketStatus, initApiClient, initAuthStore, isMentionAll, isTransitEnvelope, messagesApi, normalizeAxiosError, normalizeConversation, onSocketStatus, parseMentions, performHandshake, reconnectSocket, refreshSocketAuth, renderMentionParts, resetAuthStore, resolveSystemMessageText, setApiClientInstance, setTransitSession, socketEmit, syncApi, tryGetSocket, useChatStore, usersApi };
|
package/dist/index.js
CHANGED
|
@@ -301,6 +301,7 @@ function resolveSystemMessageText(message, currentUserId) {
|
|
|
301
301
|
|
|
302
302
|
// src/api/messages.ts
|
|
303
303
|
var MAX_FORWARD_TARGETS = 5;
|
|
304
|
+
var HIGHLY_FORWARDED_DEPTH_THRESHOLD = 5;
|
|
304
305
|
var messagesApi = {
|
|
305
306
|
async list(conversationId, params = {}) {
|
|
306
307
|
const { cursor, direction, ...rest } = params;
|
|
@@ -400,11 +401,16 @@ var messagesApi = {
|
|
|
400
401
|
* per call, also enforced server-side). Each target is independent — one failing
|
|
401
402
|
* (e.g. no longer a participant) does not block the others; check `success`/`error`
|
|
402
403
|
* per entry in the returned array.
|
|
404
|
+
*
|
|
405
|
+
* Pass `attachmentIds` to forward only a subset of the source message's attachments
|
|
406
|
+
* (e.g. one image out of a multi-image message) — omit it to forward the whole
|
|
407
|
+
* message, including all its attachments, unchanged. An ID not present on the
|
|
408
|
+
* source message is ignored server-side.
|
|
403
409
|
*/
|
|
404
|
-
async forward(messageId, targetConversationIds) {
|
|
410
|
+
async forward(messageId, targetConversationIds, attachmentIds) {
|
|
405
411
|
const { data } = await getApiClient().post(
|
|
406
412
|
`/messages/${messageId}/forward`,
|
|
407
|
-
{ targetConversationIds }
|
|
413
|
+
{ targetConversationIds, ...attachmentIds ? { attachmentIds } : {} }
|
|
408
414
|
);
|
|
409
415
|
return data;
|
|
410
416
|
}
|
|
@@ -1222,6 +1228,7 @@ export {
|
|
|
1222
1228
|
AntzChatPermissionError,
|
|
1223
1229
|
AntzChatServerError,
|
|
1224
1230
|
AntzChatValidationError,
|
|
1231
|
+
HIGHLY_FORWARDED_DEPTH_THRESHOLD,
|
|
1225
1232
|
MAX_FORWARD_TARGETS,
|
|
1226
1233
|
MENTION_ALL_ID,
|
|
1227
1234
|
appConfigApi,
|