k2-im 0.1.28 → 0.1.29

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/dist/i18n.d.ts CHANGED
@@ -31,8 +31,8 @@ interface ConversationRef<TType extends ConversationType = ConversationType> {
31
31
  conversationType: TType;
32
32
  conversationId: string;
33
33
  }
34
- /** 消息内容类型。sticker=表情/贴图(BMessage contentType=7);call=单聊通话记录(contentType=10);transfer=转账(contentType=16);miniProgram=小程序分享卡(contentType=22);redPacket=红包卡(contentType=25);game=小游戏(contentType=27);未知 wire 正文统一归一为 unknown。 */
35
- type MessageContentType = 'text' | 'system' | 'image' | 'video' | 'voice' | 'file' | 'sticker' | 'contact' | 'miniProgram' | 'game' | 'transfer' | 'call' | 'redPacket' | 'mediaAlbum' | 'unknown';
34
+ /** 消息内容类型。sticker=表情/贴图(BMessage contentType=7);call=单聊通话记录(contentType=10);transfer=转账(contentType=16);robot=机器人卡片(contentType=18);miniProgram=小程序分享卡(contentType=22);redPacket=红包卡(contentType=25);game=小游戏(contentType=27);未知 wire 正文统一归一为 unknown。 */
35
+ type MessageContentType = 'text' | 'system' | 'image' | 'video' | 'voice' | 'file' | 'sticker' | 'contact' | 'miniProgram' | 'game' | 'transfer' | 'call' | 'redPacket' | 'mediaAlbum' | 'robot' | 'unknown';
36
36
  /**
37
37
  * 发送态(客户端态):消息从本地创建到服务端确认的生命周期。
38
38
  * `uploading` 仅媒体消息使用:文件上传阶段(uploading→pending→sending→sent);
@@ -94,6 +94,8 @@ type LastMessageSummary = {
94
94
  kind: 'contact';
95
95
  } | {
96
96
  kind: 'miniProgram';
97
+ } | {
98
+ kind: 'robot';
97
99
  } | {
98
100
  kind: 'game';
99
101
  gameType: ImGameType;
@@ -128,6 +130,13 @@ type LastMessageSummary = {
128
130
  firstItemKind?: 'image' | 'video';
129
131
  } | {
130
132
  kind: 'encrypted';
133
+ }
134
+ /**
135
+ * 密文解密失败/缺密钥占位。必须独立于 `encrypted`:后者只表示「还是密文」,
136
+ * 前者要对齐 iOS 解密失败长文案,不能再伪装成「[加密消息]」。
137
+ */
138
+ | {
139
+ kind: 'decrypt-failed';
131
140
  } | {
132
141
  kind: 'recalled';
133
142
  by: string;
@@ -182,8 +191,12 @@ interface ImVideoBody {
182
191
  thumbData?: Uint8Array;
183
192
  /** 视频文件 MD5(BMessage.MD5;Android 当前未赋值,保留可选)。 */
184
193
  md5?: string;
185
- /** 文件大小(字节;协议 BMessage.fileLength 单位 KB,mapping 层换算)。 */
194
+ /** 已确认的视频大小(字节),来自本地文件或合集;历史单视频的大小单位不明确时省略,下载总量由 HTTP 响应确定。 */
186
195
  size?: number;
196
+ /** SDK 本地字节值标记,供持久化读取区分旧版本曾按 KB 换算的记录。 */
197
+ sizeUnit?: 'bytes';
198
+ /** 未确认单位的历史大小,十进制无符号整数;SDK 仅用于原样转发,宿主不得将它用于显示大小或规划下载。 */
199
+ unverifiedFileLength?: string;
187
200
  /** 视频描述(BMessage.describe,可选)。 */
188
201
  describe?: string;
189
202
  /** 文件解密 TEA key 原始字节(仅密文视频有;接收端解 BContent 后从 BMessage.teaKey 得,用于解下载到的原视频文件)。 */
@@ -318,6 +331,53 @@ interface ImMiniProgramBody {
318
331
  /** 多语言子游戏名 JSON 字符串,例如 `{"ch":"...","en":"..."}`。 */
319
332
  subGameName?: string;
320
333
  }
334
+ /**
335
+ * 机器人卡片文本模块(wire `section`)。
336
+ *
337
+ * `content` 保留原文,可含 Markdown 链接与裸 URL;宿主负责展示层解析,不在 Core 拆成富文本树。
338
+ */
339
+ interface ImRobotTextModule {
340
+ type: 'section';
341
+ textType: string;
342
+ content: string;
343
+ }
344
+ /** 机器人卡片图片组;`src` 是明文 http(s),不走消息 TEA 文件通道。 */
345
+ interface ImRobotImageGroupModule {
346
+ type: 'image-group';
347
+ images: readonly string[];
348
+ }
349
+ /**
350
+ * 机器人卡片倒计时。
351
+ *
352
+ * `endTimeMs` 已归一为 epoch 毫秒;wire 秒/毫秒混用只在 mapper 转换,宿主不要再猜单位。
353
+ */
354
+ interface ImRobotCountdownModule {
355
+ type: 'countdown';
356
+ endTimeMs: number;
357
+ }
358
+ type ImRobotModule = ImRobotTextModule | ImRobotImageGroupModule | ImRobotCountdownModule;
359
+ /** 机器人卡片底部指令;`miniProgram` 仅打开小程序时存在。 */
360
+ interface ImRobotCommand {
361
+ menuName: string;
362
+ menuId?: string;
363
+ /** wire `msg_type`;`2` 表示打开小程序,其它走固定话术。第一期宿主可只展示。 */
364
+ messageType?: string;
365
+ miniProgram?: {
366
+ path?: string;
367
+ appId?: string;
368
+ domain?: string;
369
+ };
370
+ }
371
+ /**
372
+ * 机器人卡片正文(contentType==='robot',协议 BMessage.contentType=18)。
373
+ *
374
+ * @remarks 排版数据在 `BMessage.content` JSON。解析失败仍保留 robot 类型与空模块,
375
+ * 不能退化成 unknown——iOS 此时仍画出卡片头。divider 与未识别 module 在 mapper 丢弃。
376
+ */
377
+ interface ImRobotBody {
378
+ modules: readonly ImRobotModule[];
379
+ commands: readonly (readonly ImRobotCommand[])[];
380
+ }
321
381
  /** 转账状态。0 待领取 / 1 已收款 / 2 已退还 / 3 已过期(对齐 iOS IMTranferBody,过期 3 以客户端为准)。 */
322
382
  type ImTransferStatus = 0 | 1 | 2 | 3;
323
383
  /** 转账会话类型。1 个人 / 2 群(BMessage.sessionType)。 */
@@ -506,6 +566,8 @@ interface ImMessageBody {
506
566
  redPacket?: ImRedPacketBody;
507
567
  /** contentType==='mediaAlbum' 时的媒体合集正文(配文 + 1~9 个图片/视频项)。 */
508
568
  mediaAlbum?: ImMediaAlbumBody;
569
+ /** contentType==='robot' 时的机器人卡片。 */
570
+ robot?: ImRobotBody;
509
571
  /** contentType==='unknown' 时的稳定未知正文,不含原始 wire type。 */
510
572
  unknown?: UnknownMessageBody;
511
573
  }
@@ -565,7 +627,7 @@ interface ImMessageEncryption {
565
627
  encrypted: boolean;
566
628
  /** 扩展:加密方案标识,默认 'rsa-tea'。 */
567
629
  scheme?: 'rsa-tea';
568
- /** true=密文但解密失败/缺密钥(占位,非真实空正文):供 UI 显式「无法解密」提示,与明文空消息区分。 */
630
+ /** true=密文但解密失败/缺密钥(占位,非真实空正文):供 UI 显式渲染解密失败提示,与明文空消息、普通密文区分。 */
569
631
  decryptFailed?: boolean;
570
632
  }
571
633
  /** 单条消息领域模型(§4.1)。主键为客户端生成的 id(无 serverId)。 */
@@ -872,6 +934,8 @@ interface ImMediaCatalog {
872
934
  contact: string;
873
935
  /** 小程序卡片回复摘要,对齐 iOS `min_program_name`。 */
874
936
  miniProgram: string;
937
+ /** 机器人卡片回复摘要,对齐 iOS `reply_message`。 */
938
+ robot: string;
875
939
  /** 转账卡片回复摘要,对齐 iOS `chat_tranfer`。 */
876
940
  transfer: string;
877
941
  /** 语音通话记录回复摘要。 */
@@ -957,6 +1021,7 @@ interface ImFailureCatalog {
957
1021
  *
958
1022
  * 方括号只保留给**列表里不带类型图标**的那些:语音、文件、名片、小程序、转账、通话、红包、
959
1023
  * 小游戏、加密、不支持。它们没有图标,方括号是唯一能和「对方真的发了『语音』两个字」区分开的标记。
1024
+ * 解密失败例外:对齐 iOS 长句、不加方括号。
960
1025
  *
961
1026
  * 照片、视频、GIF、贴图和媒体合集在 PC/H5 会话列表里都带 16px 类型图标(设计稿 13328:305728),
962
1027
  * 图标已经表明类型,所以文案不带方括号、与回复摘要 `media.*` 用同一份词(决策 D26)。
@@ -975,6 +1040,8 @@ interface ImLastMessageCatalog {
975
1040
  contact: string;
976
1041
  /** 小程序卡片会话摘要,对齐 iOS `[%@]` + `min_program_name`。 */
977
1042
  miniProgram: string;
1043
+ /** 机器人卡片会话摘要,对齐 iOS `reply_message`。 */
1044
+ robot: string;
978
1045
  /** 转账会话摘要,对齐 iOS `[chat_tranfer]`。 */
979
1046
  transfer: string;
980
1047
  /** 语音通话记录会话摘要。 */
@@ -995,6 +1062,11 @@ interface ImLastMessageCatalog {
995
1062
  /** 媒体合集:图片与视频混合,参数 `{photoCount}` `{videoCount}`(各语言自行决定量词与连接符)。 */
996
1063
  mediaAlbumMixed: string;
997
1064
  encrypted: string;
1065
+ /**
1066
+ * 解密失败会话列表摘要,对齐 iOS `sz_conversation_message_decryption_failed`。
1067
+ * 与气泡同一条长文案,不加方括号;不含 iOS「查看原因」,Web 尚未做该入口。
1068
+ */
1069
+ decryptFailed: string;
998
1070
  /** 未注册或无法解析的正文。 */
999
1071
  unknown: string;
1000
1072
  /** 自己撤回。 */
package/dist/i18n.js CHANGED
@@ -1 +1 @@
1
- import'./chunk-SXY56EVC.js';export{a as DEFAULT_LOCALE,k as createImI18n,f as formatFailure,h as formatLastMessageSummary,i as formatMediaPlaceholder,j as formatMentionAll,l as formatServiceText,g as formatSystemMessage,c as getImTimeCatalog,b as normalizeImLocale,d as registerImCatalogOverrides,e as resetImCatalogOverrides}from'./chunk-BIFDS3MH.js';import'./chunk-O7GQQMEW.js';import'./chunk-WOT6VMZA.js';
1
+ import'./chunk-SXY56EVC.js';export{a as DEFAULT_LOCALE,k as createImI18n,f as formatFailure,h as formatLastMessageSummary,i as formatMediaPlaceholder,j as formatMentionAll,l as formatServiceText,g as formatSystemMessage,c as getImTimeCatalog,b as normalizeImLocale,d as registerImCatalogOverrides,e as resetImCatalogOverrides}from'./chunk-R6BJQWPW.js';import'./chunk-XICYFDN4.js';import'./chunk-WOT6VMZA.js';
package/dist/index.d.ts CHANGED
@@ -1,5 +1,13 @@
1
1
  /** 媒体业务类型:实现据此选对象存储逻辑桶;sticker 对应 app-sticker。 */
2
2
  type MediaKind = 'image' | 'video' | 'voice' | 'file' | 'sticker';
3
+ /** 传输进度(上传/下载共用)。percent=0-100 整数(UI 进度环);字节数供精确展示。 */
4
+ interface MediaTransferProgress {
5
+ percent: number;
6
+ bytesTransferred: number;
7
+ bytesTotal: number;
8
+ /** 上传专用阶段;finalizing 表示请求体已发完、正在等待对象存储成功响应。下载可省略。 */
9
+ phase?: 'transferring' | 'finalizing';
10
+ }
3
11
 
4
12
  /** 会话类型。P0 只用 direct / group。 */
5
13
  type ConversationType = 'direct' | 'group' | 'channel' | 'supergroup';
@@ -39,8 +47,8 @@ interface ConversationDraft$1 {
39
47
  attachments: readonly [];
40
48
  updatedAt: number;
41
49
  }
42
- /** 消息内容类型。sticker=表情/贴图(BMessage contentType=7);call=单聊通话记录(contentType=10);transfer=转账(contentType=16);miniProgram=小程序分享卡(contentType=22);redPacket=红包卡(contentType=25);game=小游戏(contentType=27);未知 wire 正文统一归一为 unknown。 */
43
- type MessageContentType = 'text' | 'system' | 'image' | 'video' | 'voice' | 'file' | 'sticker' | 'contact' | 'miniProgram' | 'game' | 'transfer' | 'call' | 'redPacket' | 'mediaAlbum' | 'unknown';
50
+ /** 消息内容类型。sticker=表情/贴图(BMessage contentType=7);call=单聊通话记录(contentType=10);transfer=转账(contentType=16);robot=机器人卡片(contentType=18);miniProgram=小程序分享卡(contentType=22);redPacket=红包卡(contentType=25);game=小游戏(contentType=27);未知 wire 正文统一归一为 unknown。 */
51
+ type MessageContentType = 'text' | 'system' | 'image' | 'video' | 'voice' | 'file' | 'sticker' | 'contact' | 'miniProgram' | 'game' | 'transfer' | 'call' | 'redPacket' | 'mediaAlbum' | 'robot' | 'unknown';
44
52
  /**
45
53
  * 发送态(客户端态):消息从本地创建到服务端确认的生命周期。
46
54
  * `uploading` 仅媒体消息使用:文件上传阶段(uploading→pending→sending→sent);
@@ -102,6 +110,8 @@ type LastMessageSummary = {
102
110
  kind: 'contact';
103
111
  } | {
104
112
  kind: 'miniProgram';
113
+ } | {
114
+ kind: 'robot';
105
115
  } | {
106
116
  kind: 'game';
107
117
  gameType: ImGameType;
@@ -136,6 +146,13 @@ type LastMessageSummary = {
136
146
  firstItemKind?: 'image' | 'video';
137
147
  } | {
138
148
  kind: 'encrypted';
149
+ }
150
+ /**
151
+ * 密文解密失败/缺密钥占位。必须独立于 `encrypted`:后者只表示「还是密文」,
152
+ * 前者要对齐 iOS 解密失败长文案,不能再伪装成「[加密消息]」。
153
+ */
154
+ | {
155
+ kind: 'decrypt-failed';
139
156
  } | {
140
157
  kind: 'recalled';
141
158
  by: string;
@@ -190,8 +207,12 @@ interface ImVideoBody {
190
207
  thumbData?: Uint8Array;
191
208
  /** 视频文件 MD5(BMessage.MD5;Android 当前未赋值,保留可选)。 */
192
209
  md5?: string;
193
- /** 文件大小(字节;协议 BMessage.fileLength 单位 KB,mapping 层换算)。 */
210
+ /** 已确认的视频大小(字节),来自本地文件或合集;历史单视频的大小单位不明确时省略,下载总量由 HTTP 响应确定。 */
194
211
  size?: number;
212
+ /** SDK 本地字节值标记,供持久化读取区分旧版本曾按 KB 换算的记录。 */
213
+ sizeUnit?: 'bytes';
214
+ /** 未确认单位的历史大小,十进制无符号整数;SDK 仅用于原样转发,宿主不得将它用于显示大小或规划下载。 */
215
+ unverifiedFileLength?: string;
195
216
  /** 视频描述(BMessage.describe,可选)。 */
196
217
  describe?: string;
197
218
  /** 文件解密 TEA key 原始字节(仅密文视频有;接收端解 BContent 后从 BMessage.teaKey 得,用于解下载到的原视频文件)。 */
@@ -326,6 +347,53 @@ interface ImMiniProgramBody {
326
347
  /** 多语言子游戏名 JSON 字符串,例如 `{"ch":"...","en":"..."}`。 */
327
348
  subGameName?: string;
328
349
  }
350
+ /**
351
+ * 机器人卡片文本模块(wire `section`)。
352
+ *
353
+ * `content` 保留原文,可含 Markdown 链接与裸 URL;宿主负责展示层解析,不在 Core 拆成富文本树。
354
+ */
355
+ interface ImRobotTextModule {
356
+ type: 'section';
357
+ textType: string;
358
+ content: string;
359
+ }
360
+ /** 机器人卡片图片组;`src` 是明文 http(s),不走消息 TEA 文件通道。 */
361
+ interface ImRobotImageGroupModule {
362
+ type: 'image-group';
363
+ images: readonly string[];
364
+ }
365
+ /**
366
+ * 机器人卡片倒计时。
367
+ *
368
+ * `endTimeMs` 已归一为 epoch 毫秒;wire 秒/毫秒混用只在 mapper 转换,宿主不要再猜单位。
369
+ */
370
+ interface ImRobotCountdownModule {
371
+ type: 'countdown';
372
+ endTimeMs: number;
373
+ }
374
+ type ImRobotModule = ImRobotTextModule | ImRobotImageGroupModule | ImRobotCountdownModule;
375
+ /** 机器人卡片底部指令;`miniProgram` 仅打开小程序时存在。 */
376
+ interface ImRobotCommand {
377
+ menuName: string;
378
+ menuId?: string;
379
+ /** wire `msg_type`;`2` 表示打开小程序,其它走固定话术。第一期宿主可只展示。 */
380
+ messageType?: string;
381
+ miniProgram?: {
382
+ path?: string;
383
+ appId?: string;
384
+ domain?: string;
385
+ };
386
+ }
387
+ /**
388
+ * 机器人卡片正文(contentType==='robot',协议 BMessage.contentType=18)。
389
+ *
390
+ * @remarks 排版数据在 `BMessage.content` JSON。解析失败仍保留 robot 类型与空模块,
391
+ * 不能退化成 unknown——iOS 此时仍画出卡片头。divider 与未识别 module 在 mapper 丢弃。
392
+ */
393
+ interface ImRobotBody {
394
+ modules: readonly ImRobotModule[];
395
+ commands: readonly (readonly ImRobotCommand[])[];
396
+ }
329
397
  /** 转账状态。0 待领取 / 1 已收款 / 2 已退还 / 3 已过期(对齐 iOS IMTranferBody,过期 3 以客户端为准)。 */
330
398
  type ImTransferStatus = 0 | 1 | 2 | 3;
331
399
  /** 转账会话类型。1 个人 / 2 群(BMessage.sessionType)。 */
@@ -520,6 +588,8 @@ interface ImMessageBody {
520
588
  redPacket?: ImRedPacketBody;
521
589
  /** contentType==='mediaAlbum' 时的媒体合集正文(配文 + 1~9 个图片/视频项)。 */
522
590
  mediaAlbum?: ImMediaAlbumBody;
591
+ /** contentType==='robot' 时的机器人卡片。 */
592
+ robot?: ImRobotBody;
523
593
  /** contentType==='unknown' 时的稳定未知正文,不含原始 wire type。 */
524
594
  unknown?: UnknownMessageBody;
525
595
  }
@@ -596,7 +666,7 @@ interface ImMessageEncryption {
596
666
  encrypted: boolean;
597
667
  /** 扩展:加密方案标识,默认 'rsa-tea'。 */
598
668
  scheme?: 'rsa-tea';
599
- /** true=密文但解密失败/缺密钥(占位,非真实空正文):供 UI 显式「无法解密」提示,与明文空消息区分。 */
669
+ /** true=密文但解密失败/缺密钥(占位,非真实空正文):供 UI 显式渲染解密失败提示,与明文空消息、普通密文区分。 */
600
670
  decryptFailed?: boolean;
601
671
  }
602
672
  /** 单条消息领域模型(§4.1)。主键为客户端生成的 id(无 serverId)。 */
@@ -3104,17 +3174,24 @@ interface MediaTransferAdapterConfig {
3104
3174
  /** 是否启用 S3 Transfer Acceleration(默认 true;`cn-` 分区没有加速端点,会强制关闭)。 */
3105
3175
  useAccelerateEndpoint?: boolean;
3106
3176
  /**
3107
- * 是否允许超过分片阈值(16MiB)的上传使用 S3 分片上传(默认 true)。
3177
+ * 统一允许 S3 分片上传和 Range 分段下载,默认 false(单次 PUT / 普通 GET)。
3178
+ * 显式 true 后仍按 16MiB 阈值及已确认下载大小选择策略,小资源不分片。
3179
+ * 开启前各桶须支持分片请求方法,并暴露上传 ETag、下载 Content-Range 与强 ETag。
3180
+ * @example { multipartTransfer: true } 同时允许大资源分片上传、下载。
3181
+ */
3182
+ multipartTransfer?: boolean;
3183
+ /**
3184
+ * 总开关开启后,是否允许超过分片阈值(16MiB)的上传使用 S3 分片上传。
3108
3185
  *
3109
3186
  * 分片相比单次 PUT 需要各物理桶的 CORS 额外放行 POST(Create/CompleteMultipartUpload)、
3110
3187
  * DELETE(AbortMultipartUpload)并 `ExposeHeaders: ETag`;未配齐时分片会直接失败。
3111
- * 部署可置 false 立即退回全量单次 PutObject(大文件回到单连接与整包内存的旧行为),无需发版。
3188
+ * @deprecated 优先使用 multipartTransfer 统一控制;本字段 false 仅进一步关闭上传,true 不能单独开启。
3112
3189
  */
3113
3190
  multipartUpload?: boolean;
3114
3191
  /**
3115
- * 大于 16MiB 的明文/simple 文件是否尝试 Range 并发下载(默认 true)。
3192
+ * 总开关开启后,大于 16MiB 的明文/simple 文件是否尝试 Range 并发下载。
3116
3193
  * 需要下载域名支持 Range,并暴露 Content-Range 与强 ETag;返回 200 时消费完整响应并记录诊断。
3117
- * 置 false 使用单次 GET。此开关不改变上传或整文件 TEA 的行为。
3194
+ * @deprecated 优先使用 multipartTransfer 统一控制;本字段 false 仅进一步关闭下载,true 不能单独开启。
3118
3195
  */
3119
3196
  rangeDownload?: boolean;
3120
3197
  /**
@@ -4684,6 +4761,8 @@ type ConversationLastMessageSummary = {
4684
4761
  kind: 'contact';
4685
4762
  } | {
4686
4763
  kind: 'miniProgram';
4764
+ } | {
4765
+ kind: 'robot';
4687
4766
  } | {
4688
4767
  kind: 'transfer';
4689
4768
  } | {
@@ -4714,6 +4793,10 @@ type ConversationLastMessageSummary = {
4714
4793
  firstItemKind?: 'image' | 'video';
4715
4794
  } | {
4716
4795
  kind: 'encrypted';
4796
+ }
4797
+ /** 密文解密失败占位;与 `encrypted` 分开,列表走独立 iOS 长文案。 */
4798
+ | {
4799
+ kind: 'decrypt-failed';
4717
4800
  } | {
4718
4801
  kind: 'recalled';
4719
4802
  by: string;
@@ -6232,15 +6315,16 @@ declare function resolveImEmojiToken(token: string): ImEmojiCatalogEntry | undef
6232
6315
  *
6233
6316
  * 形状 = im-browser `MediaTransferAdapterConfig`:必填 `getUploadCredentials`(按逻辑桶名向宿主自己的 BFF 申请
6234
6317
  * STS 临时凭证)+ 各 `MediaKind`(image/video/voice/file/sticker)的**逻辑桶名** + 可选 `channelBuckets`(社群会话
6235
- * 按类型覆盖)、`avatarBucket`、`useAccelerateEndpoint`、`multipartUpload`、`maxConcurrentUploads`。
6318
+ * 按类型覆盖)、`avatarBucket`、`useAccelerateEndpoint`、`multipartTransfer`、`maxConcurrentUploads`。
6236
6319
  *
6237
6320
  * 上传凭证由业务后端按登录态签发(与 iOS、prod H5 同一个接口),回包同时给出**物理桶**、区域、`key_prefix` 和
6238
6321
  * 公开访问域名;SDK 据此拼 object key 与消息体 URL,宿主 env 里配的只是申请凭证用的逻辑桶名。凭证缓存(本地
6239
6322
  * 1 小时、按服务端过期时间提前 5 分钟失效)、同桶单飞与失败重签由 SDK 负责,宿主只需提供「打一次接口」的纯函数。
6240
6323
  *
6241
- * ⚠ 各 bucket 需在对象存储侧配置 CORS 允许本站 origin 的 PUT + GET;超过 16MiB 的上传走 S3 分片,另需放行
6324
+ * 默认单次 PUT/GET;仅 multipartTransfer=true 才允许大资源分片上传、下载。
6325
+ * 各 bucket 需在对象存储侧配置 CORS 允许本站 origin 的 PUT + GET;开启分片后,超过 16MiB 的上传另需放行
6242
6326
  * POST(Create/CompleteMultipartUpload)、DELETE(AbortMultipartUpload)并 ExposeHeaders: ETag。CORS 未配齐时
6243
- * 可用 `multipartUpload: false` 退回全量单次 PutObject。
6327
+ * 下载还需暴露 Content-Range 与强 ETag;multipartTransfer=false 统一关闭分片上传和下载。
6244
6328
  * ⚠ 并发字段只由 SDK core 的媒体编排消费;adapter 会忽略该字段。高内存设备可设置 5-6,低内存设备建议 2-3。
6245
6329
  */
6246
6330
  type ImMediaConfig = MediaTransferAdapterConfig;
@@ -6859,6 +6943,65 @@ declare const IMAGE_MESSAGE_ACCEPT = "image/jpeg,image/png,image/webp";
6859
6943
  */
6860
6944
  declare function isSupportedImageFile(file: Blob): Promise<boolean>;
6861
6945
 
6946
+ /** 通用资源类型,只决定使用哪个宿主逻辑桶,不包含消息或会话语义。 */
6947
+ type ImResourceKind = MediaKind;
6948
+ /** 上传进度;请求体传完后仍需等待对象存储确认,成功响应后才报告 100%。 */
6949
+ type ImResourceUploadProgress = Readonly<MediaTransferProgress>;
6950
+ /** 复用 IM 的普通媒体桶和凭证合同;不采用社群覆盖桶,不需要认证或连接运行时。 */
6951
+ type ImResourceUploaderConfig = Pick<MediaTransferAdapterConfig, 'buckets' | 'getUploadCredentials' | 'useAccelerateEndpoint' | 'multipartTransfer' | 'multipartUpload'>;
6952
+ /** 上传原始资源的参数。文件选择、压缩、转码和缩略图生成由宿主决定。 */
6953
+ interface ImResourceUploadInput {
6954
+ /** 原始 File/Blob;直接交给传输层,不预读整个文件,不执行消息加密。 */
6955
+ file: Blob;
6956
+ /** 资源类型;使用 config.buckets[kind],缺少桶配置时明确失败。 */
6957
+ kind: ImResourceKind;
6958
+ /** 可覆盖 File.name;Blob 没有文件名时可提供扩展名。对象名由 SDK 生成。 */
6959
+ filename?: string;
6960
+ /** 主动取消会中断请求并清理未完成分片;不提供跨调用或刷新续传。 */
6961
+ signal?: AbortSignal;
6962
+ /** 只在本次上传仍有效时通知;回调应保持同步、无异常。 */
6963
+ onProgress?: (progress: ImResourceUploadProgress) => void;
6964
+ }
6965
+ /** 对象存储确认上传成功后的资源,不包含签名凭证或私有分片状态。 */
6966
+ interface ImResourceUploadResult {
6967
+ /** 服务端凭证中公开域名对应的资源 URL,可交给动态、资料等宿主业务。 */
6968
+ url: string;
6969
+ }
6970
+ /** 独立资源上传器;不创建消息、Outbox 项或 client.media 任务。 */
6971
+ interface ImResourceUploader {
6972
+ /**
6973
+ * 上传原始文件。默认单次 PUT;multipartTransfer=true 且 >16 MiB 才允许分片,沿用既有凭证刷新策略。
6974
+ * 失败会清理未完成分片并保留错误,显式重试须再次调用 upload;不会退回旧 HTTP 上传接口。
6975
+ * @throws 取消为 AbortError;若取消后的分片清理失败,仍报告 multipart-abort-failed。
6976
+ * 配置、凭证、S3 或清理失败直接拒绝;dispose 后不可再使用。
6977
+ */
6978
+ upload: (input: ImResourceUploadInput) => Promise<ImResourceUploadResult>;
6979
+ /**
6980
+ * 幂等释放:立即禁止新上传,取消并等待所有在途上传结束。
6981
+ * 具体上传/分片清理错误仍交给各自 upload Promise,dispose 本身不重复拒绝。
6982
+ */
6983
+ dispose: () => Promise<void>;
6984
+ }
6985
+ /**
6986
+ * 创建与 IM 会话无关的浏览器 S3 上传器,复用普通媒体桶、凭证缓存及分片执行器。
6987
+ *
6988
+ * 宿主应按账号/页面持有实例,在退出或切账号时 dispose,并为凭证回调校验账号身份。
6989
+ * 该实例不会读取宿主登录态;桶配置在创建时复制,凭证仅保存在实例内存中。
6990
+ * 不限制动态条目数量或业务文件大小,不创建 DOM/object URL,也不删除已成功上传的对象。
6991
+ *
6992
+ * @example
6993
+ * ```ts
6994
+ * const uploader = createImResourceUploader(mediaConfig);
6995
+ * try {
6996
+ * const { url } = await uploader.upload({ file, kind: 'video', signal });
6997
+ * await savePost({ videoUrl: url });
6998
+ * } finally {
6999
+ * await uploader.dispose();
7000
+ * }
7001
+ * ```
7002
+ */
7003
+ declare function createImResourceUploader(config: ImResourceUploaderConfig): ImResourceUploader;
7004
+
6862
7005
  /**
6863
7006
  * 频道 rel 能否打开:跨宿主纯决策。打开器、Toast、分享快照仍归 Host。
6864
7007
  * 置顶/悬浮游戏都要有 appId 和可拼地址;无 appId 的置顶游戏根本不会进入可见列表。
@@ -7104,6 +7247,8 @@ interface ImMediaCatalog {
7104
7247
  contact: string;
7105
7248
  /** 小程序卡片回复摘要,对齐 iOS `min_program_name`。 */
7106
7249
  miniProgram: string;
7250
+ /** 机器人卡片回复摘要,对齐 iOS `reply_message`。 */
7251
+ robot: string;
7107
7252
  /** 转账卡片回复摘要,对齐 iOS `chat_tranfer`。 */
7108
7253
  transfer: string;
7109
7254
  /** 语音通话记录回复摘要。 */
@@ -7189,6 +7334,7 @@ interface ImFailureCatalog {
7189
7334
  *
7190
7335
  * 方括号只保留给**列表里不带类型图标**的那些:语音、文件、名片、小程序、转账、通话、红包、
7191
7336
  * 小游戏、加密、不支持。它们没有图标,方括号是唯一能和「对方真的发了『语音』两个字」区分开的标记。
7337
+ * 解密失败例外:对齐 iOS 长句、不加方括号。
7192
7338
  *
7193
7339
  * 照片、视频、GIF、贴图和媒体合集在 PC/H5 会话列表里都带 16px 类型图标(设计稿 13328:305728),
7194
7340
  * 图标已经表明类型,所以文案不带方括号、与回复摘要 `media.*` 用同一份词(决策 D26)。
@@ -7207,6 +7353,8 @@ interface ImLastMessageCatalog {
7207
7353
  contact: string;
7208
7354
  /** 小程序卡片会话摘要,对齐 iOS `[%@]` + `min_program_name`。 */
7209
7355
  miniProgram: string;
7356
+ /** 机器人卡片会话摘要,对齐 iOS `reply_message`。 */
7357
+ robot: string;
7210
7358
  /** 转账会话摘要,对齐 iOS `[chat_tranfer]`。 */
7211
7359
  transfer: string;
7212
7360
  /** 语音通话记录会话摘要。 */
@@ -7227,6 +7375,11 @@ interface ImLastMessageCatalog {
7227
7375
  /** 媒体合集:图片与视频混合,参数 `{photoCount}` `{videoCount}`(各语言自行决定量词与连接符)。 */
7228
7376
  mediaAlbumMixed: string;
7229
7377
  encrypted: string;
7378
+ /**
7379
+ * 解密失败会话列表摘要,对齐 iOS `sz_conversation_message_decryption_failed`。
7380
+ * 与气泡同一条长文案,不加方括号;不含 iOS「查看原因」,Web 尚未做该入口。
7381
+ */
7382
+ decryptFailed: string;
7230
7383
  /** 未注册或无法解析的正文。 */
7231
7384
  unknown: string;
7232
7385
  /** 自己撤回。 */
@@ -9884,5 +10037,5 @@ declare function resampleWaveform(data: readonly number[], targetCount: number):
9884
10037
  */
9885
10038
  declare function placeholderWaveform(seed: string, count: number): number[];
9886
10039
 
9887
- export { DEFAULT_EMOJI_ASSET_BASE, DEFAULT_LOADING_MINIMUM_VISIBLE_MS, DEFAULT_LOADING_SHOW_DELAY_MS, DEFAULT_LOCALE, EDIT_WINDOW_MS, EMOJI_CATALOG, EMOJI_GAME_DICE_STABLE_KEY, EMOJI_GAME_RPS_STABLE_KEY, EMOJI_TOKEN_RE, IMAGE_MESSAGE_ACCEPT, IM_CHAT_FONT_SCALES, IM_DIAGNOSTIC_CATEGORIES, IM_EMOJI_CATALOG, ImPinnedMessageOperationError, MAX_BATCH_FILES, MAX_RECENT_EMOJI_COUNT, MEDIA_ALBUM_CAPTION_MAX_LENGTH, MEDIA_ALBUM_MAX_ITEMS, MINI_PROGRAM_LANG_NUMBERS, MediaTransferError, REACTION_SUPPORTED_CONTENT_TYPES, SPIKE_STEP, UNICODE_EMOJI_CATALOG, blockReasonForChannelSession, blockReasonForChannelState, blockReasonForGroupState, blockReasonForSession, buildSessionFavoritePlainBody, calculateMediaBox, canEditMessage, canPinChannelMessage, canPinGroupMessage, canPinMessage, canPromoteMediaPresentationSource, canReactToMessage, canRecallMessage, canTransmit, canTransmitByType, canTransmitContent, cancelMediaUpload, captureRuntimeClientOperation, captureRuntimeOperation, channelMiniProgramRelKey, classifyGifFile, classifyMediaFile, classifyStickerImageType, createChatRuntime, createDelayedLoadingIndicator, createEmojiMatcher, createFaceToFaceGroupQrPayload, createImClient, createImConsoleDiagnosticSink, createImDiagnosticMemoryBuffer, createImI18n, createImTextSearchMatcher, createLinkMatcher, createNewMessageBadgeController, createSdkDiagnosticWriter, createThreadItems, createVoicePlayer, createVoiceRecordingSession, csvIncludes, decideChannelMiniProgramRelOpen, decideConversationAction, decideMemberTargetAction, decideMessageAction, detectVoiceCapabilities, emojiAssetUrl, emojiUrlByCode, extractSearchText, fetchConversationFileBatch, fetchConversationImageBatch, fetchConversationMessageBatch, fetchConversationVideoBatch, fetchConversationVoiceBatch, fetchNextConversationSearchBatch, formatChatDateSeparator, formatConversationDisplayTime, formatFailure, formatFileSize, formatLastMessageSummary, formatMediaDuration, formatMediaPlaceholder, formatMentionAll, formatServiceText, formatSystemMessage, forward_service as forwardService, getFileExtension, getImTextSearchInitial, getImTimeCatalog, getLocalDayKey, hasEmojiCandidate, hasLinkCandidate, highlightSegments, isGifFile, isMessageLocateScrollProtected, isMessageTailChangeFromOlderWindowTrim, isMessageViewportMeasurable, isMessageVisibleForNewMessageBadge, isPinnedMessageProtected, isSupportedImageFile, isVoiceStorageConfigured, loadOlderUntilBoundary, mediaBatchBudgetBytes, media_service as mediaService, mediaTransferErrorCodeOf, message_service as messageService, migrateImCachePrefix, normalizeImLocale, normalizeLinkHref, normalizeMediaUploadCredentials, parseSessionFavoriteAlbumItems, parseUnicodeEmojiCode, pinnedMessage_service as pinnedMessageService, placeholderWaveform, prependRecentEmoji, profile_service as profileService, read_service as readService, refreshPrependMessageAnchorPosition, registerImCatalogOverrides, replaceInterruptedMediaFile, requiresConversationEncryption, requiresForwardTypeConfirmation, resampleWaveform, resetImCatalogOverrides, resolveBestMediaPresentationSource, resolveCenteredMessageScrollTop, resolveChannelAccess, resolveChannelMemberAvatarUrl, resolveChannelMemberDisplayName, resolveChannelMiniProgramRelIcon, resolveChannelMiniProgramRelName, resolveChannelMiniProgramRelOpenSurface, resolveChannelMiniProgramRelUrl, resolveChannelPinnedGameCopy, resolveConversationListPresentation, resolveDisplayTimestamp, resolveEmojiToken, resolveFriendDisplayName, resolveImEmojiToken, resolveImProfileAccessDestination, resolveImThreadActiveDate, resolveMediaAlbumSendContentType, resolveMediaPresentation, resolveMemberDisplayName, resolveMessageBodyKind, resolveMessageNotificationDecision, resolveMessageTimelineTimestamp, resolveMiniProgramFloatLinkUrl, resolveMiniProgramOpenUrl, resolvePrependMessageAnchor, resolvePrependMessageAnchorAdjustment, resolvePrependMessageAnchorPosition, resolvePublicNickname, resolveQuotedMessagePresentation, resolveSenderAvatarUrl, resolveSessionFavoriteAlbumCaption, resolveSessionFavoriteAlbumItemPreviewUrl, resolveSessionFavoriteKindFromMessage, resolveStandaloneEmojiMessage, resolveSurvivingMessageAnchorAdjustment, resolveTextSegments, resolveUnicodeEmoji, resolveVisibleChannelMiniProgramRels, resolveVisibleMessageAnchorPositions, retryMessage, runMediaSendBatch, sendAsFilesBatch, sendBlockReasonForDecision, sendMediaAlbum, sendMediaFile, sendMediaFilesBatch, sendText, sendVoice, shouldCompleteInitialViewport, shouldFillInitialHistoryViewport, shouldFollowIncomingMessage, shouldLoadNewerHistoryPage, shouldPrefetchOlderHistory, shouldRestoreMessageViewportFocus, shouldShowChatDateSeparator, shouldTrackRemoteMessageForBadge, sortChannelMiniProgramFloatingItems, sortSessions, spikeCountForDuration, sumSessionsUnread, supportsConversationMention, unicodeEmojiTextFromCode, voiceErrorCodeOf };
9888
- export type { ApplySessionResult, BrowseMessagesInput, CanPinMessageInput, CapabilityAvailability, CapabilityDecision, CapabilityReason, CenteredMessageScrollInput, ChannelAccessSnapshot, ChannelBaseSessionState, ChannelConversationCapabilities, ChannelConversationMessageApi, ChannelJoinApplication, ChannelJoinApplicationNotification, ChannelJoinApplicationPage, ChannelMember, ChannelMemberPage, ChannelMentionMember, ChannelMentionMemberPage, ChannelMiniProgramOpenGame, ChannelMiniProgramRel, ChannelMiniProgramRelConfigType, ChannelMiniProgramRelOpenDecision, ChannelMiniProgramRelOpenSurface, ChannelMuteReason, ChannelPermissionSet, ChannelProfile, ChannelRole, ChannelSessionState, ChatMediaMessageRef, ChatProfileAdapter, ChatRuntime, ChatRuntimeCredentials, ChatRuntimeFactories, ChatRuntimeHostDeps, ChatRuntimeOpResult, ContactCardInput, ContactMessageOptions, ConversationBackgroundPreset, ConversationBackgroundSelection, ConversationCapabilityAction, ConversationCapabilitySnapshot, ConversationDraft, ConversationDraftApi, ConversationEntryUnreadSnapshot, ConversationHandle, ConversationHandleSnapshot, ConversationInitialPosition, ConversationLastMessageSummary, ConversationListItem, ConversationListMention, ConversationListPresentation, ConversationListPresentationLabels, ConversationListPresentationOptions, ConversationListPreviewMediaKind, ConversationListPreviewSegment, ConversationMessageApi, ConversationOpenOptions, ConversationRef, ConversationSearchCategory, ConversationSearchPage, ConversationSearchResult, ConversationSystemSummary, ConversationType, CreateThreadItemsInput, DelayedLoadingIndicator, DelayedLoadingIndicatorOptions, DirectConversationCapabilities, DirectConversationMessageApi, DraftInput, EditTextOptions, EmojiEntry, EmojiRecentItem, EmojiSegment, ExpressionMessageOptions, FileMessageOptions, FormatFailureContext, FormatLastMessageContext, FormatMediaPlaceholderContext, FormatServiceTextContext, FormatSystemMessageContext, FormatTimeDisplayContext, ForwardCommandHooks, ForwardFailReason, ForwardItemStatus, ForwardMessageFailure, ForwardMessagesInput, ForwardMessagesResult, ForwardTarget, ForwardedMessageRef, GameMessageOptions, GifFileClassification, GifMessageOptions, GroupConversationCapabilities, GroupConversationMessageApi, GroupMemberItem, GroupProfile, HighlightSegment, ImAppearanceSettingsApi, ImApplicationItem, ImApplicationRef, ImApplicationsApi, ImAuthIssue, ImAuthProvider, ImCacheOptions, ImCachePrefixMigrationContext, ImCachePrefixMigrator, ImCallKind, ImCallOutcome, ImCallRecordBody, ImCatalog, ImCatalogOverrides, ImChannelConversationAccessSnapshot, ImChannelMemberPresentation, ImChannelMentionApi, ImChannelMentionPresentation, ImChannelMiniProgramRel, ImChannelPermissions, ImChannelPinnedMessage, ImChannelProfile, ImChannelProfilePresentation, ImChannelRole, ImChannelState, ImChannelsApi, ImChatFontScale, ImClientOptions, ImConnectionState, ImContactBody, ImContactKind, ImContactProfile, ImContactRelationship, ImContactRemarkPhone, ImContactSearchResult, ImContactsApi, ImConversationBackgroundApi, ImConversationCapabilitiesApi, ImConversationListApi, ImConversationListSnapshot, ImConversationListState, ImConversationSearchApi, ImCoreApiOptions, ImCreateChannelInput, ImCreateChannelResult, ImCreateFaceToFaceGroupResult, ImCreateGroupInput, ImCreateGroupResult, ImCreatedChannel, ImCreatedGroup, ImDebugOptions, ImDiagnosticCategory, ImDiagnosticError, ImDiagnosticLayer, ImDiagnosticLevel, ImDiagnosticMemoryBuffer, ImDiagnosticMemoryBufferFilter, ImDiagnosticMemoryBufferOptions, ImDiagnosticMemoryBufferSnapshot, ImDiagnosticMessage, ImDiagnosticRecord, ImDiagnosticSink, ImDiagnosticWriter, ImDirectCallAnswerResult, ImDirectCallFailReason, ImDirectCallHangupInput, ImDirectCallHangupReason, ImDirectCallInviteInput, ImDirectCallNotifyAudioInput, ImDirectCallTargetInput, ImDirectCallsApi, ImDirectReadReceiptSettings, ImDirectoryApi, ImDirectoryFieldMatch, ImDirectoryItem, ImDirectoryKind, ImDirectoryPage, ImDirectorySearchApi, ImDirectorySearchItem, ImDirectorySearchResult, ImDraftsApi, ImEmojiCatalogEntry, ImEndpointProvider, ImEventsApi, ImExpressionAsset, ImExpressionAssetInput, ImExpressionEmojiRecentInput, ImExpressionFavoriteKind, ImExpressionOptions, ImExpressionRecentInput, ImExpressionRecentItem, ImExpressionRecentItemKind, ImExpressionsApi, ImFaceToFaceGroup, ImFailureCatalog, ImFileBody, ImForwardOperationResult, ImFriendshipRequestResult, ImGameBody, ImGameType, ImGifAssetInput, ImGiphyAsset, ImGiphyPage, ImGiphyPageOptions, ImGroupCallAnswerInput, ImGroupCallBusyInput, ImGroupCallCreateInput, ImGroupCallJoinInput, ImGroupCallMeetingSnapshot, ImGroupCallMember, ImGroupCallMemberStatus, ImGroupCallStatusInput, ImGroupCallTargetInput, ImGroupCallsApi, ImGroupConversationState, ImGroupMemberPresentation, ImGroupMentionApi, ImGroupPinnedMessage, ImGroupProfile, ImGroupsApi, ImI18n, ImImageBody, ImLastMessageCatalog, ImLifecycleSnapshot, ImLocalDataApi, ImLocalDataInfo, ImLocale, ImLogoutOptions, ImMediaAlbumBody, ImMediaAlbumItem, ImMediaBatchSendResult, ImMediaCatalog, ImMediaConfig, ImMediaTask, ImMediaTasksApi, ImMembershipJoinResult, ImMentionCatalog, ImMessageActionResult, ImMessageBodyKind, ImMessageMention, ImMessageReactionAggregate, ImMessageReactions, ImMessageRef, ImMessageSearchApi, ImMessageView, ImMessageViewBody, ImMessagesByIdResult, ImMiniProgramBody, ImMiniProgramShowType, ImOutboxApi, ImOutboxItem, ImPageToken, ImPartialCatalog, ImPinnedMessageActionResult, ImPinnedMessageErrorKind, ImPinnedMessageOperation, ImPinnedMessageSnapshot, ImProductApplicationUpdate, ImProductAuthInvalidReason, ImProductClient, ImProductEvent, ImProductEventError, ImProductEventMap, ImProductMessage, ImProfileAccessDestination, ImPushApi, ImPushSnapshot, ImQuotedMessagePresentation, ImReactionChangeAction, ImReactionChangeResult, ImReadReceiptSettingsApi, ImRedPacketBody, ImRedPacketType, ImRequestError, ImRequestErrorHandler, ImSdkErrorCategory, ImSdkErrorShape, ImSearchApi, ImServiceCatalog, ImServiceTextKey, ImSessionApi, ImSessionFavoriteAlbumItem, ImSessionFavoriteItem, ImSessionFavoriteKind, ImSessionFavoritesApi, ImSessionLifecycleState, ImSettingsApi, ImStickerAssetInput, ImStickerBody, ImStickerPack, ImSupportedConversationRef, ImSystemCatalog, ImTextResolver, ImTextSearchMatch, ImTextSearchMatchOptions, ImTextSearchMatcher, ImTextSearchRange, ImThreadActiveDateSnapshot, ImThreadDateMarkerMetric, ImThreadDecoration, ImThreadEncryptionItem, ImThreadIntent, ImThreadItem, ImThreadPresentationAdapter, ImThreadReadActions, ImThreadReadTargetResolver, ImThreadViewportMetrics, ImTimeCatalog, ImTransferBody, ImTransferSessionType, ImTransferStatus, ImVideoBody, ImVoiceBody, ImWebPushSubscription, ImWeekdayKey, ImageMessageOptions, ImagePreviewMetadata, IncomingMessageFollowInput, InitialHistoryViewportFillInput, InitialViewportCompletionInput, LinkSegment, LocalConversationHistoryClearResult, LocalMessageDeletionResult, MediaAlbumItemInput, MediaAlbumMessageOptions, MediaBatchBudgetOptions, MediaBatchLimitInfo, MediaFileClassification, MediaLimitItem, MediaObjectUrlLease, MediaPresentationFit, MediaPresentationPolicy, MediaPresentationRule, MediaPresentationSourceCandidate, MediaPresentationSourceQuality, MediaSendBatchResult, MediaTransferErrorCode, MediaUploadCredentials, MediaUploadCredentialsProvider, MediaUploadCredentialsRequest, MemberTargetCapabilityAction, MemberTargetCapabilityInput, MentionCandidate, MentionCandidatePage, MentionInput, MessageCapabilityAction, MessageCapabilityInput, MessageContentType, MessageLocateScrollProtectionInput, MessageNotificationDecision, MessageNotificationInput, MessageWindowInfo, MessageWindowPage, MessagesByIdFailure, MigrateImCachePrefixInput, MiniProgramHostLocale, MiniProgramMessageOptions, MiniProgramOpenUrlInput, NewMessageBadgeController, NewMessageBadgeCountListener, NewMessageBadgeVisibilityInput, NewerHistoryPageTriggerInput, OlderHistoryPrefetchInput, PrependAnchorCandidate, PrependAnchorViewport, PrependMessageAnchorPosition, ProductConversationListType, ProductHandleConversationType, ProductMessageSearchPage, ProductMessageSearchResult, RemoteMessageBadgeTrackingInput, ResolveMediaPresentationInput, ResolveTextOptions, ResolvedConversationBackground, ResolvedMediaPresentation, RichExtraSegment, RuntimeClientOperation, RuntimeOperation, SearchBatchResult, SearchFilesInput, SearchMessagesInput, SearchTextMessagesInput, SegmentMatch, SegmentMatcher, SendCapabilityMode, SendCommandHooks, SendMessageResult, SendVoicePayload, SenderProfileEntry, ServiceNoteHooks, StandaloneEmojiMessage, StickerAssetKind, TextMessageOptions, TextSegment, TransferMessageOptions, UnicodeEmojiEntry, UnknownMessageBody, UserProfile, VideoMessageOptions, VideoPreviewMetadata, VisibleChannelMiniProgramRels, VoiceCapabilities, VoiceErrorCode, VoiceMessageMetadata, VoicePlayer, VoicePlayerOptions, VoicePlayerState, VoiceRecordingResult, VoiceRecordingSession, VoiceRecordingSessionOptions, VoiceRecordingState, VoiceToggleOptions };
10040
+ export { DEFAULT_EMOJI_ASSET_BASE, DEFAULT_LOADING_MINIMUM_VISIBLE_MS, DEFAULT_LOADING_SHOW_DELAY_MS, DEFAULT_LOCALE, EDIT_WINDOW_MS, EMOJI_CATALOG, EMOJI_GAME_DICE_STABLE_KEY, EMOJI_GAME_RPS_STABLE_KEY, EMOJI_TOKEN_RE, IMAGE_MESSAGE_ACCEPT, IM_CHAT_FONT_SCALES, IM_DIAGNOSTIC_CATEGORIES, IM_EMOJI_CATALOG, ImPinnedMessageOperationError, MAX_BATCH_FILES, MAX_RECENT_EMOJI_COUNT, MEDIA_ALBUM_CAPTION_MAX_LENGTH, MEDIA_ALBUM_MAX_ITEMS, MINI_PROGRAM_LANG_NUMBERS, MediaTransferError, REACTION_SUPPORTED_CONTENT_TYPES, SPIKE_STEP, UNICODE_EMOJI_CATALOG, blockReasonForChannelSession, blockReasonForChannelState, blockReasonForGroupState, blockReasonForSession, buildSessionFavoritePlainBody, calculateMediaBox, canEditMessage, canPinChannelMessage, canPinGroupMessage, canPinMessage, canPromoteMediaPresentationSource, canReactToMessage, canRecallMessage, canTransmit, canTransmitByType, canTransmitContent, cancelMediaUpload, captureRuntimeClientOperation, captureRuntimeOperation, channelMiniProgramRelKey, classifyGifFile, classifyMediaFile, classifyStickerImageType, createChatRuntime, createDelayedLoadingIndicator, createEmojiMatcher, createFaceToFaceGroupQrPayload, createImClient, createImConsoleDiagnosticSink, createImDiagnosticMemoryBuffer, createImI18n, createImResourceUploader, createImTextSearchMatcher, createLinkMatcher, createNewMessageBadgeController, createSdkDiagnosticWriter, createThreadItems, createVoicePlayer, createVoiceRecordingSession, csvIncludes, decideChannelMiniProgramRelOpen, decideConversationAction, decideMemberTargetAction, decideMessageAction, detectVoiceCapabilities, emojiAssetUrl, emojiUrlByCode, extractSearchText, fetchConversationFileBatch, fetchConversationImageBatch, fetchConversationMessageBatch, fetchConversationVideoBatch, fetchConversationVoiceBatch, fetchNextConversationSearchBatch, formatChatDateSeparator, formatConversationDisplayTime, formatFailure, formatFileSize, formatLastMessageSummary, formatMediaDuration, formatMediaPlaceholder, formatMentionAll, formatServiceText, formatSystemMessage, forward_service as forwardService, getFileExtension, getImTextSearchInitial, getImTimeCatalog, getLocalDayKey, hasEmojiCandidate, hasLinkCandidate, highlightSegments, isGifFile, isMessageLocateScrollProtected, isMessageTailChangeFromOlderWindowTrim, isMessageViewportMeasurable, isMessageVisibleForNewMessageBadge, isPinnedMessageProtected, isSupportedImageFile, isVoiceStorageConfigured, loadOlderUntilBoundary, mediaBatchBudgetBytes, media_service as mediaService, mediaTransferErrorCodeOf, message_service as messageService, migrateImCachePrefix, normalizeImLocale, normalizeLinkHref, normalizeMediaUploadCredentials, parseSessionFavoriteAlbumItems, parseUnicodeEmojiCode, pinnedMessage_service as pinnedMessageService, placeholderWaveform, prependRecentEmoji, profile_service as profileService, read_service as readService, refreshPrependMessageAnchorPosition, registerImCatalogOverrides, replaceInterruptedMediaFile, requiresConversationEncryption, requiresForwardTypeConfirmation, resampleWaveform, resetImCatalogOverrides, resolveBestMediaPresentationSource, resolveCenteredMessageScrollTop, resolveChannelAccess, resolveChannelMemberAvatarUrl, resolveChannelMemberDisplayName, resolveChannelMiniProgramRelIcon, resolveChannelMiniProgramRelName, resolveChannelMiniProgramRelOpenSurface, resolveChannelMiniProgramRelUrl, resolveChannelPinnedGameCopy, resolveConversationListPresentation, resolveDisplayTimestamp, resolveEmojiToken, resolveFriendDisplayName, resolveImEmojiToken, resolveImProfileAccessDestination, resolveImThreadActiveDate, resolveMediaAlbumSendContentType, resolveMediaPresentation, resolveMemberDisplayName, resolveMessageBodyKind, resolveMessageNotificationDecision, resolveMessageTimelineTimestamp, resolveMiniProgramFloatLinkUrl, resolveMiniProgramOpenUrl, resolvePrependMessageAnchor, resolvePrependMessageAnchorAdjustment, resolvePrependMessageAnchorPosition, resolvePublicNickname, resolveQuotedMessagePresentation, resolveSenderAvatarUrl, resolveSessionFavoriteAlbumCaption, resolveSessionFavoriteAlbumItemPreviewUrl, resolveSessionFavoriteKindFromMessage, resolveStandaloneEmojiMessage, resolveSurvivingMessageAnchorAdjustment, resolveTextSegments, resolveUnicodeEmoji, resolveVisibleChannelMiniProgramRels, resolveVisibleMessageAnchorPositions, retryMessage, runMediaSendBatch, sendAsFilesBatch, sendBlockReasonForDecision, sendMediaAlbum, sendMediaFile, sendMediaFilesBatch, sendText, sendVoice, shouldCompleteInitialViewport, shouldFillInitialHistoryViewport, shouldFollowIncomingMessage, shouldLoadNewerHistoryPage, shouldPrefetchOlderHistory, shouldRestoreMessageViewportFocus, shouldShowChatDateSeparator, shouldTrackRemoteMessageForBadge, sortChannelMiniProgramFloatingItems, sortSessions, spikeCountForDuration, sumSessionsUnread, supportsConversationMention, unicodeEmojiTextFromCode, voiceErrorCodeOf };
10041
+ export type { ApplySessionResult, BrowseMessagesInput, CanPinMessageInput, CapabilityAvailability, CapabilityDecision, CapabilityReason, CenteredMessageScrollInput, ChannelAccessSnapshot, ChannelBaseSessionState, ChannelConversationCapabilities, ChannelConversationMessageApi, ChannelJoinApplication, ChannelJoinApplicationNotification, ChannelJoinApplicationPage, ChannelMember, ChannelMemberPage, ChannelMentionMember, ChannelMentionMemberPage, ChannelMiniProgramOpenGame, ChannelMiniProgramRel, ChannelMiniProgramRelConfigType, ChannelMiniProgramRelOpenDecision, ChannelMiniProgramRelOpenSurface, ChannelMuteReason, ChannelPermissionSet, ChannelProfile, ChannelRole, ChannelSessionState, ChatMediaMessageRef, ChatProfileAdapter, ChatRuntime, ChatRuntimeCredentials, ChatRuntimeFactories, ChatRuntimeHostDeps, ChatRuntimeOpResult, ContactCardInput, ContactMessageOptions, ConversationBackgroundPreset, ConversationBackgroundSelection, ConversationCapabilityAction, ConversationCapabilitySnapshot, ConversationDraft, ConversationDraftApi, ConversationEntryUnreadSnapshot, ConversationHandle, ConversationHandleSnapshot, ConversationInitialPosition, ConversationLastMessageSummary, ConversationListItem, ConversationListMention, ConversationListPresentation, ConversationListPresentationLabels, ConversationListPresentationOptions, ConversationListPreviewMediaKind, ConversationListPreviewSegment, ConversationMessageApi, ConversationOpenOptions, ConversationRef, ConversationSearchCategory, ConversationSearchPage, ConversationSearchResult, ConversationSystemSummary, ConversationType, CreateThreadItemsInput, DelayedLoadingIndicator, DelayedLoadingIndicatorOptions, DirectConversationCapabilities, DirectConversationMessageApi, DraftInput, EditTextOptions, EmojiEntry, EmojiRecentItem, EmojiSegment, ExpressionMessageOptions, FileMessageOptions, FormatFailureContext, FormatLastMessageContext, FormatMediaPlaceholderContext, FormatServiceTextContext, FormatSystemMessageContext, FormatTimeDisplayContext, ForwardCommandHooks, ForwardFailReason, ForwardItemStatus, ForwardMessageFailure, ForwardMessagesInput, ForwardMessagesResult, ForwardTarget, ForwardedMessageRef, GameMessageOptions, GifFileClassification, GifMessageOptions, GroupConversationCapabilities, GroupConversationMessageApi, GroupMemberItem, GroupProfile, HighlightSegment, ImAppearanceSettingsApi, ImApplicationItem, ImApplicationRef, ImApplicationsApi, ImAuthIssue, ImAuthProvider, ImCacheOptions, ImCachePrefixMigrationContext, ImCachePrefixMigrator, ImCallKind, ImCallOutcome, ImCallRecordBody, ImCatalog, ImCatalogOverrides, ImChannelConversationAccessSnapshot, ImChannelMemberPresentation, ImChannelMentionApi, ImChannelMentionPresentation, ImChannelMiniProgramRel, ImChannelPermissions, ImChannelPinnedMessage, ImChannelProfile, ImChannelProfilePresentation, ImChannelRole, ImChannelState, ImChannelsApi, ImChatFontScale, ImClientOptions, ImConnectionState, ImContactBody, ImContactKind, ImContactProfile, ImContactRelationship, ImContactRemarkPhone, ImContactSearchResult, ImContactsApi, ImConversationBackgroundApi, ImConversationCapabilitiesApi, ImConversationListApi, ImConversationListSnapshot, ImConversationListState, ImConversationSearchApi, ImCoreApiOptions, ImCreateChannelInput, ImCreateChannelResult, ImCreateFaceToFaceGroupResult, ImCreateGroupInput, ImCreateGroupResult, ImCreatedChannel, ImCreatedGroup, ImDebugOptions, ImDiagnosticCategory, ImDiagnosticError, ImDiagnosticLayer, ImDiagnosticLevel, ImDiagnosticMemoryBuffer, ImDiagnosticMemoryBufferFilter, ImDiagnosticMemoryBufferOptions, ImDiagnosticMemoryBufferSnapshot, ImDiagnosticMessage, ImDiagnosticRecord, ImDiagnosticSink, ImDiagnosticWriter, ImDirectCallAnswerResult, ImDirectCallFailReason, ImDirectCallHangupInput, ImDirectCallHangupReason, ImDirectCallInviteInput, ImDirectCallNotifyAudioInput, ImDirectCallTargetInput, ImDirectCallsApi, ImDirectReadReceiptSettings, ImDirectoryApi, ImDirectoryFieldMatch, ImDirectoryItem, ImDirectoryKind, ImDirectoryPage, ImDirectorySearchApi, ImDirectorySearchItem, ImDirectorySearchResult, ImDraftsApi, ImEmojiCatalogEntry, ImEndpointProvider, ImEventsApi, ImExpressionAsset, ImExpressionAssetInput, ImExpressionEmojiRecentInput, ImExpressionFavoriteKind, ImExpressionOptions, ImExpressionRecentInput, ImExpressionRecentItem, ImExpressionRecentItemKind, ImExpressionsApi, ImFaceToFaceGroup, ImFailureCatalog, ImFileBody, ImForwardOperationResult, ImFriendshipRequestResult, ImGameBody, ImGameType, ImGifAssetInput, ImGiphyAsset, ImGiphyPage, ImGiphyPageOptions, ImGroupCallAnswerInput, ImGroupCallBusyInput, ImGroupCallCreateInput, ImGroupCallJoinInput, ImGroupCallMeetingSnapshot, ImGroupCallMember, ImGroupCallMemberStatus, ImGroupCallStatusInput, ImGroupCallTargetInput, ImGroupCallsApi, ImGroupConversationState, ImGroupMemberPresentation, ImGroupMentionApi, ImGroupPinnedMessage, ImGroupProfile, ImGroupsApi, ImI18n, ImImageBody, ImLastMessageCatalog, ImLifecycleSnapshot, ImLocalDataApi, ImLocalDataInfo, ImLocale, ImLogoutOptions, ImMediaAlbumBody, ImMediaAlbumItem, ImMediaBatchSendResult, ImMediaCatalog, ImMediaConfig, ImMediaTask, ImMediaTasksApi, ImMembershipJoinResult, ImMentionCatalog, ImMessageActionResult, ImMessageBodyKind, ImMessageMention, ImMessageReactionAggregate, ImMessageReactions, ImMessageRef, ImMessageSearchApi, ImMessageView, ImMessageViewBody, ImMessagesByIdResult, ImMiniProgramBody, ImMiniProgramShowType, ImOutboxApi, ImOutboxItem, ImPageToken, ImPartialCatalog, ImPinnedMessageActionResult, ImPinnedMessageErrorKind, ImPinnedMessageOperation, ImPinnedMessageSnapshot, ImProductApplicationUpdate, ImProductAuthInvalidReason, ImProductClient, ImProductEvent, ImProductEventError, ImProductEventMap, ImProductMessage, ImProfileAccessDestination, ImPushApi, ImPushSnapshot, ImQuotedMessagePresentation, ImReactionChangeAction, ImReactionChangeResult, ImReadReceiptSettingsApi, ImRedPacketBody, ImRedPacketType, ImRequestError, ImRequestErrorHandler, ImResourceKind, ImResourceUploadInput, ImResourceUploadProgress, ImResourceUploadResult, ImResourceUploader, ImResourceUploaderConfig, ImRobotBody, ImRobotCommand, ImRobotModule, ImSdkErrorCategory, ImSdkErrorShape, ImSearchApi, ImServiceCatalog, ImServiceTextKey, ImSessionApi, ImSessionFavoriteAlbumItem, ImSessionFavoriteItem, ImSessionFavoriteKind, ImSessionFavoritesApi, ImSessionLifecycleState, ImSettingsApi, ImStickerAssetInput, ImStickerBody, ImStickerPack, ImSupportedConversationRef, ImSystemCatalog, ImTextResolver, ImTextSearchMatch, ImTextSearchMatchOptions, ImTextSearchMatcher, ImTextSearchRange, ImThreadActiveDateSnapshot, ImThreadDateMarkerMetric, ImThreadDecoration, ImThreadEncryptionItem, ImThreadIntent, ImThreadItem, ImThreadPresentationAdapter, ImThreadReadActions, ImThreadReadTargetResolver, ImThreadViewportMetrics, ImTimeCatalog, ImTransferBody, ImTransferSessionType, ImTransferStatus, ImVideoBody, ImVoiceBody, ImWebPushSubscription, ImWeekdayKey, ImageMessageOptions, ImagePreviewMetadata, IncomingMessageFollowInput, InitialHistoryViewportFillInput, InitialViewportCompletionInput, LinkSegment, LocalConversationHistoryClearResult, LocalMessageDeletionResult, MediaAlbumItemInput, MediaAlbumMessageOptions, MediaBatchBudgetOptions, MediaBatchLimitInfo, MediaFileClassification, MediaLimitItem, MediaObjectUrlLease, MediaPresentationFit, MediaPresentationPolicy, MediaPresentationRule, MediaPresentationSourceCandidate, MediaPresentationSourceQuality, MediaSendBatchResult, MediaTransferErrorCode, MediaUploadCredentials, MediaUploadCredentialsProvider, MediaUploadCredentialsRequest, MemberTargetCapabilityAction, MemberTargetCapabilityInput, MentionCandidate, MentionCandidatePage, MentionInput, MessageCapabilityAction, MessageCapabilityInput, MessageContentType, MessageLocateScrollProtectionInput, MessageNotificationDecision, MessageNotificationInput, MessageWindowInfo, MessageWindowPage, MessagesByIdFailure, MigrateImCachePrefixInput, MiniProgramHostLocale, MiniProgramMessageOptions, MiniProgramOpenUrlInput, NewMessageBadgeController, NewMessageBadgeCountListener, NewMessageBadgeVisibilityInput, NewerHistoryPageTriggerInput, OlderHistoryPrefetchInput, PrependAnchorCandidate, PrependAnchorViewport, PrependMessageAnchorPosition, ProductConversationListType, ProductHandleConversationType, ProductMessageSearchPage, ProductMessageSearchResult, RemoteMessageBadgeTrackingInput, ResolveMediaPresentationInput, ResolveTextOptions, ResolvedConversationBackground, ResolvedMediaPresentation, RichExtraSegment, RuntimeClientOperation, RuntimeOperation, SearchBatchResult, SearchFilesInput, SearchMessagesInput, SearchTextMessagesInput, SegmentMatch, SegmentMatcher, SendCapabilityMode, SendCommandHooks, SendMessageResult, SendVoicePayload, SenderProfileEntry, ServiceNoteHooks, StandaloneEmojiMessage, StickerAssetKind, TextMessageOptions, TextSegment, TransferMessageOptions, UnicodeEmojiEntry, UnknownMessageBody, UserProfile, VideoMessageOptions, VideoPreviewMetadata, VisibleChannelMiniProgramRels, VoiceCapabilities, VoiceErrorCode, VoiceMessageMetadata, VoicePlayer, VoicePlayerOptions, VoicePlayerState, VoiceRecordingResult, VoiceRecordingSession, VoiceRecordingSessionOptions, VoiceRecordingState, VoiceToggleOptions };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import'./chunk-IDECJJXC.js';import'./chunk-SXY56EVC.js';export{p as DEFAULT_LOADING_MINIMUM_VISIBLE_MS,o as DEFAULT_LOADING_SHOW_DELAY_MS,d as MINI_PROGRAM_LANG_NUMBERS,H as SPIKE_STEP,D as calculateMediaBox,s as canPromoteMediaPresentationSource,u as captureRuntimeClientOperation,t as captureRuntimeOperation,m as channelMiniProgramRelKey,q as createDelayedLoadingIndicator,B as createLinkMatcher,e as csvIncludes,c as decideChannelMiniProgramRelOpen,F as formatFileSize,E as formatMediaDuration,G as getFileExtension,A as hasLinkCandidate,y as highlightSegments,v as mediaService,z as normalizeLinkHref,K as placeholderWaveform,w as readService,J as resampleWaveform,r as resolveBestMediaPresentationSource,g as resolveChannelMiniProgramRelIcon,f as resolveChannelMiniProgramRelName,i as resolveChannelMiniProgramRelOpenSurface,h as resolveChannelMiniProgramRelUrl,j as resolveChannelPinnedGameCopy,n as resolveConversationListPresentation,C as resolveMediaPresentation,b as resolveMiniProgramFloatLinkUrl,a as resolveMiniProgramOpenUrl,x as resolveQuotedMessagePresentation,l as resolveVisibleChannelMiniProgramRels,k as sortChannelMiniProgramFloatingItems,I as spikeCountForDuration}from'./chunk-D2FFU7J5.js';export{j as DEFAULT_EMOJI_ASSET_BASE,i as EMOJI_CATALOG,c as EMOJI_GAME_DICE_STABLE_KEY,b as EMOJI_GAME_RPS_STABLE_KEY,m as EMOJI_TOKEN_RE,L as MAX_BATCH_FILES,a as MAX_RECENT_EMOJI_COUNT,g as UNICODE_EMOJI_CATALOG,K as blockReasonForChannelSession,J as blockReasonForChannelState,R as blockReasonForGroupState,U as blockReasonForSession,E as canEditMessage,u as canPinChannelMessage,t as canPinGroupMessage,v as canPinMessage,D as canRecallMessage,ba as cancelMediaUpload,P as classifyGifFile,O as classifyMediaFile,s as createChatRuntime,p as createEmojiMatcher,G as decideConversationAction,I as decideMemberTargetAction,H as decideMessageAction,l as emojiAssetUrl,n as emojiUrlByCode,Ba as fetchConversationFileBatch,Ca as fetchConversationImageBatch,za as fetchConversationMessageBatch,Da as fetchConversationVideoBatch,Ea as fetchConversationVoiceBatch,Fa as fetchNextConversationSearchBatch,ea as forwardService,o as hasEmojiCandidate,Q as isGifFile,w as isPinnedMessageProtected,Y as isVoiceStorageConfigured,M as mediaBatchBudgetBytes,ja as messageService,e as parseUnicodeEmojiCode,oa as pinnedMessageService,d as prependRecentEmoji,ya as profileService,X as replaceInterruptedMediaFile,S as requiresConversationEncryption,z as resolveChannelMemberAvatarUrl,y as resolveChannelMemberDisplayName,k as resolveEmojiToken,C as resolveFriendDisplayName,pa as resolveImProfileAccessDestination,x as resolveMemberDisplayName,r as resolveMessageNotificationDecision,B as resolvePublicNickname,A as resolveSenderAvatarUrl,q as resolveStandaloneEmojiMessage,h as resolveUnicodeEmoji,ca as retryMessage,N as runMediaSendBatch,aa as sendAsFilesBatch,F as sendBlockReasonForDecision,_ as sendMediaAlbum,W as sendMediaFile,$ as sendMediaFilesBatch,V as sendText,Z as sendVoice,T as supportsConversationMention,f as unicodeEmojiTextFromCode}from'./chunk-H7AM5DTT.js';export{C as createNewMessageBadgeController,i as createThreadItems,f as formatChatDateSeparator,e as formatConversationDisplayTime,c as getLocalDayKey,l as isMessageLocateScrollProtected,v as isMessageTailChangeFromOlderWindowTrim,k as isMessageViewportMeasurable,B as isMessageVisibleForNewMessageBadge,x as loadOlderUntilBoundary,p as refreshPrependMessageAnchorPosition,j as resolveCenteredMessageScrollTop,a as resolveDisplayTimestamp,g as resolveImThreadActiveDate,h as resolveMessageBodyKind,b as resolveMessageTimelineTimestamp,n as resolvePrependMessageAnchor,q as resolvePrependMessageAnchorAdjustment,o as resolvePrependMessageAnchorPosition,s as resolveSurvivingMessageAnchorAdjustment,r as resolveVisibleMessageAnchorPositions,t as shouldCompleteInitialViewport,y as shouldFillInitialHistoryViewport,u as shouldFollowIncomingMessage,z as shouldLoadNewerHistoryPage,m as shouldPrefetchOlderHistory,w as shouldRestoreMessageViewportFocus,d as shouldShowChatDateSeparator,A as shouldTrackRemoteMessageForBadge}from'./chunk-YUPKU2L7.js';export{a as DEFAULT_LOCALE,k as createImI18n,f as formatFailure,h as formatLastMessageSummary,i as formatMediaPlaceholder,j as formatMentionAll,l as formatServiceText,g as formatSystemMessage,c as getImTimeCatalog,b as normalizeImLocale,d as registerImCatalogOverrides,e as resetImCatalogOverrides}from'./chunk-BIFDS3MH.js';export{e as IMAGE_MESSAGE_ACCEPT,n as IM_CHAT_FONT_SCALES,g as IM_DIAGNOSTIC_CATEGORIES,j as IM_EMOJI_CATALOG,c as ImPinnedMessageOperationError,m as buildSessionFavoritePlainBody,d as createFaceToFaceGroupQrPayload,o as createImClient,h as createImConsoleDiagnosticSink,r as createImDiagnosticMemoryBuffer,i as createSdkDiagnosticWriter,f as isSupportedImageFile,a as migrateImCachePrefix,k as resolveImEmojiToken,l as resolveSessionFavoriteKindFromMessage}from'./chunk-DVQGXZ6S.js';export{Ra as MediaTransferError,$a as createVoicePlayer,ab as createVoiceRecordingSession,Za as detectVoiceCapabilities,Sa as mediaTransferErrorCodeOf,Ta as normalizeMediaUploadCredentials,_a as voiceErrorCodeOf}from'./chunk-FQJBDSXT.js';export{na as EDIT_WINDOW_MS,o as MEDIA_ALBUM_CAPTION_MAX_LENGTH,p as MEDIA_ALBUM_MAX_ITEMS,va as REACTION_SUPPORTED_CONTENT_TYPES,wa as canReactToMessage,ra as canTransmit,pa as canTransmitByType,qa as canTransmitContent,s as classifyStickerImageType,ca as createImTextSearchMatcher,aa as extractSearchText,ba as getImTextSearchInitial,ob as parseSessionFavoriteAlbumItems,oa as requiresForwardTypeConfirmation,ya as resolveChannelAccess,q as resolveMediaAlbumSendContentType,pb as resolveSessionFavoriteAlbumCaption,nb as resolveSessionFavoriteAlbumItemPreviewUrl,ha as resolveTextSegments,Fa as sortSessions,Ga as sumSessionsUnread}from'./chunk-O7GQQMEW.js';import'./chunk-WOT6VMZA.js';
1
+ import'./chunk-IDECJJXC.js';import'./chunk-SXY56EVC.js';export{p as DEFAULT_LOADING_MINIMUM_VISIBLE_MS,o as DEFAULT_LOADING_SHOW_DELAY_MS,d as MINI_PROGRAM_LANG_NUMBERS,H as SPIKE_STEP,D as calculateMediaBox,s as canPromoteMediaPresentationSource,u as captureRuntimeClientOperation,t as captureRuntimeOperation,m as channelMiniProgramRelKey,q as createDelayedLoadingIndicator,B as createLinkMatcher,e as csvIncludes,c as decideChannelMiniProgramRelOpen,F as formatFileSize,E as formatMediaDuration,G as getFileExtension,A as hasLinkCandidate,y as highlightSegments,v as mediaService,z as normalizeLinkHref,K as placeholderWaveform,w as readService,J as resampleWaveform,r as resolveBestMediaPresentationSource,g as resolveChannelMiniProgramRelIcon,f as resolveChannelMiniProgramRelName,i as resolveChannelMiniProgramRelOpenSurface,h as resolveChannelMiniProgramRelUrl,j as resolveChannelPinnedGameCopy,n as resolveConversationListPresentation,C as resolveMediaPresentation,b as resolveMiniProgramFloatLinkUrl,a as resolveMiniProgramOpenUrl,x as resolveQuotedMessagePresentation,l as resolveVisibleChannelMiniProgramRels,k as sortChannelMiniProgramFloatingItems,I as spikeCountForDuration}from'./chunk-AULYARAI.js';export{j as DEFAULT_EMOJI_ASSET_BASE,i as EMOJI_CATALOG,c as EMOJI_GAME_DICE_STABLE_KEY,b as EMOJI_GAME_RPS_STABLE_KEY,m as EMOJI_TOKEN_RE,L as MAX_BATCH_FILES,a as MAX_RECENT_EMOJI_COUNT,g as UNICODE_EMOJI_CATALOG,K as blockReasonForChannelSession,J as blockReasonForChannelState,R as blockReasonForGroupState,U as blockReasonForSession,E as canEditMessage,u as canPinChannelMessage,t as canPinGroupMessage,v as canPinMessage,D as canRecallMessage,ba as cancelMediaUpload,P as classifyGifFile,O as classifyMediaFile,s as createChatRuntime,p as createEmojiMatcher,G as decideConversationAction,I as decideMemberTargetAction,H as decideMessageAction,l as emojiAssetUrl,n as emojiUrlByCode,Ba as fetchConversationFileBatch,Ca as fetchConversationImageBatch,za as fetchConversationMessageBatch,Da as fetchConversationVideoBatch,Ea as fetchConversationVoiceBatch,Fa as fetchNextConversationSearchBatch,ea as forwardService,o as hasEmojiCandidate,Q as isGifFile,w as isPinnedMessageProtected,Y as isVoiceStorageConfigured,M as mediaBatchBudgetBytes,ja as messageService,e as parseUnicodeEmojiCode,oa as pinnedMessageService,d as prependRecentEmoji,ya as profileService,X as replaceInterruptedMediaFile,S as requiresConversationEncryption,z as resolveChannelMemberAvatarUrl,y as resolveChannelMemberDisplayName,k as resolveEmojiToken,C as resolveFriendDisplayName,pa as resolveImProfileAccessDestination,x as resolveMemberDisplayName,r as resolveMessageNotificationDecision,B as resolvePublicNickname,A as resolveSenderAvatarUrl,q as resolveStandaloneEmojiMessage,h as resolveUnicodeEmoji,ca as retryMessage,N as runMediaSendBatch,aa as sendAsFilesBatch,F as sendBlockReasonForDecision,_ as sendMediaAlbum,W as sendMediaFile,$ as sendMediaFilesBatch,V as sendText,Z as sendVoice,T as supportsConversationMention,f as unicodeEmojiTextFromCode}from'./chunk-AFLOPH2O.js';export{C as createNewMessageBadgeController,i as createThreadItems,f as formatChatDateSeparator,e as formatConversationDisplayTime,c as getLocalDayKey,l as isMessageLocateScrollProtected,v as isMessageTailChangeFromOlderWindowTrim,k as isMessageViewportMeasurable,B as isMessageVisibleForNewMessageBadge,x as loadOlderUntilBoundary,p as refreshPrependMessageAnchorPosition,j as resolveCenteredMessageScrollTop,a as resolveDisplayTimestamp,g as resolveImThreadActiveDate,h as resolveMessageBodyKind,b as resolveMessageTimelineTimestamp,n as resolvePrependMessageAnchor,q as resolvePrependMessageAnchorAdjustment,o as resolvePrependMessageAnchorPosition,s as resolveSurvivingMessageAnchorAdjustment,r as resolveVisibleMessageAnchorPositions,t as shouldCompleteInitialViewport,y as shouldFillInitialHistoryViewport,u as shouldFollowIncomingMessage,z as shouldLoadNewerHistoryPage,m as shouldPrefetchOlderHistory,w as shouldRestoreMessageViewportFocus,d as shouldShowChatDateSeparator,A as shouldTrackRemoteMessageForBadge}from'./chunk-BZFBUHDE.js';export{a as DEFAULT_LOCALE,k as createImI18n,f as formatFailure,h as formatLastMessageSummary,i as formatMediaPlaceholder,j as formatMentionAll,l as formatServiceText,g as formatSystemMessage,c as getImTimeCatalog,b as normalizeImLocale,d as registerImCatalogOverrides,e as resetImCatalogOverrides}from'./chunk-R6BJQWPW.js';export{e as IMAGE_MESSAGE_ACCEPT,n as IM_CHAT_FONT_SCALES,g as IM_DIAGNOSTIC_CATEGORIES,j as IM_EMOJI_CATALOG,c as ImPinnedMessageOperationError,m as buildSessionFavoritePlainBody,d as createFaceToFaceGroupQrPayload,o as createImClient,h as createImConsoleDiagnosticSink,r as createImDiagnosticMemoryBuffer,s as createImResourceUploader,i as createSdkDiagnosticWriter,f as isSupportedImageFile,a as migrateImCachePrefix,k as resolveImEmojiToken,l as resolveSessionFavoriteKindFromMessage}from'./chunk-HZD2QAZB.js';export{Ra as MediaTransferError,$a as createVoicePlayer,ab as createVoiceRecordingSession,Za as detectVoiceCapabilities,Sa as mediaTransferErrorCodeOf,Ta as normalizeMediaUploadCredentials,_a as voiceErrorCodeOf}from'./chunk-TKWU3IO7.js';export{na as EDIT_WINDOW_MS,o as MEDIA_ALBUM_CAPTION_MAX_LENGTH,p as MEDIA_ALBUM_MAX_ITEMS,va as REACTION_SUPPORTED_CONTENT_TYPES,wa as canReactToMessage,ra as canTransmit,pa as canTransmitByType,qa as canTransmitContent,s as classifyStickerImageType,ca as createImTextSearchMatcher,aa as extractSearchText,ba as getImTextSearchInitial,ob as parseSessionFavoriteAlbumItems,oa as requiresForwardTypeConfirmation,ya as resolveChannelAccess,q as resolveMediaAlbumSendContentType,pb as resolveSessionFavoriteAlbumCaption,nb as resolveSessionFavoriteAlbumItemPreviewUrl,ha as resolveTextSegments,Fa as sortSessions,Ga as sumSessionsUnread}from'./chunk-XICYFDN4.js';import'./chunk-WOT6VMZA.js';