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/browser.js +1 -1
- package/dist/chat-kit-pinia.d.ts +87 -11
- package/dist/chat-kit-pinia.js +1 -1
- package/dist/chat-kit-vue.d.ts +81 -11
- package/dist/chat-kit-vue.js +1 -1
- package/dist/chat-kit.d.ts +87 -11
- package/dist/chat-kit.js +1 -1
- package/dist/{chunk-H7AM5DTT.js → chunk-AFLOPH2O.js} +1 -1
- package/dist/{chunk-D2FFU7J5.js → chunk-AULYARAI.js} +1 -1
- package/dist/chunk-BZFBUHDE.js +1 -0
- package/dist/chunk-HZD2QAZB.js +2 -0
- package/dist/chunk-R6BJQWPW.js +1 -0
- package/dist/chunk-TKWU3IO7.js +7 -0
- package/dist/chunk-XICYFDN4.js +2 -0
- package/dist/i18n.d.ts +76 -4
- package/dist/i18n.js +1 -1
- package/dist/index.d.ts +166 -13
- package/dist/index.js +1 -1
- package/dist/sdk.d.ts +156 -13
- package/dist/sdk.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-BIFDS3MH.js +0 -1
- package/dist/chunk-DVQGXZ6S.js +0 -2
- package/dist/chunk-FQJBDSXT.js +0 -7
- package/dist/chunk-O7GQQMEW.js +0 -2
- package/dist/chunk-YUPKU2L7.js +0 -1
package/dist/browser.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{A as createLazyBrowserApiProtocolClient}from'./chunk-
|
|
1
|
+
export{A as createLazyBrowserApiProtocolClient}from'./chunk-TKWU3IO7.js';import'./chunk-XICYFDN4.js';import'./chunk-WOT6VMZA.js';
|
package/dist/chat-kit-pinia.d.ts
CHANGED
|
@@ -42,8 +42,8 @@ interface ConversationDraft$1 {
|
|
|
42
42
|
attachments: readonly [];
|
|
43
43
|
updatedAt: number;
|
|
44
44
|
}
|
|
45
|
-
/** 消息内容类型。sticker=表情/贴图(BMessage contentType=7);call=单聊通话记录(contentType=10);transfer=转账(contentType=16);miniProgram=小程序分享卡(contentType=22);redPacket=红包卡(contentType=25);game=小游戏(contentType=27);未知 wire 正文统一归一为 unknown。 */
|
|
46
|
-
type MessageContentType = 'text' | 'system' | 'image' | 'video' | 'voice' | 'file' | 'sticker' | 'contact' | 'miniProgram' | 'game' | 'transfer' | 'call' | 'redPacket' | 'mediaAlbum' | 'unknown';
|
|
45
|
+
/** 消息内容类型。sticker=表情/贴图(BMessage contentType=7);call=单聊通话记录(contentType=10);transfer=转账(contentType=16);robot=机器人卡片(contentType=18);miniProgram=小程序分享卡(contentType=22);redPacket=红包卡(contentType=25);game=小游戏(contentType=27);未知 wire 正文统一归一为 unknown。 */
|
|
46
|
+
type MessageContentType = 'text' | 'system' | 'image' | 'video' | 'voice' | 'file' | 'sticker' | 'contact' | 'miniProgram' | 'game' | 'transfer' | 'call' | 'redPacket' | 'mediaAlbum' | 'robot' | 'unknown';
|
|
47
47
|
/**
|
|
48
48
|
* 发送态(客户端态):消息从本地创建到服务端确认的生命周期。
|
|
49
49
|
* `uploading` 仅媒体消息使用:文件上传阶段(uploading→pending→sending→sent);
|
|
@@ -105,6 +105,8 @@ type LastMessageSummary = {
|
|
|
105
105
|
kind: 'contact';
|
|
106
106
|
} | {
|
|
107
107
|
kind: 'miniProgram';
|
|
108
|
+
} | {
|
|
109
|
+
kind: 'robot';
|
|
108
110
|
} | {
|
|
109
111
|
kind: 'game';
|
|
110
112
|
gameType: ImGameType;
|
|
@@ -139,6 +141,13 @@ type LastMessageSummary = {
|
|
|
139
141
|
firstItemKind?: 'image' | 'video';
|
|
140
142
|
} | {
|
|
141
143
|
kind: 'encrypted';
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* 密文解密失败/缺密钥占位。必须独立于 `encrypted`:后者只表示「还是密文」,
|
|
147
|
+
* 前者要对齐 iOS 解密失败长文案,不能再伪装成「[加密消息]」。
|
|
148
|
+
*/
|
|
149
|
+
| {
|
|
150
|
+
kind: 'decrypt-failed';
|
|
142
151
|
} | {
|
|
143
152
|
kind: 'recalled';
|
|
144
153
|
by: string;
|
|
@@ -193,8 +202,12 @@ interface ImVideoBody {
|
|
|
193
202
|
thumbData?: Uint8Array;
|
|
194
203
|
/** 视频文件 MD5(BMessage.MD5;Android 当前未赋值,保留可选)。 */
|
|
195
204
|
md5?: string;
|
|
196
|
-
/**
|
|
205
|
+
/** 已确认的视频大小(字节),来自本地文件或合集;历史单视频的大小单位不明确时省略,下载总量由 HTTP 响应确定。 */
|
|
197
206
|
size?: number;
|
|
207
|
+
/** SDK 本地字节值标记,供持久化读取区分旧版本曾按 KB 换算的记录。 */
|
|
208
|
+
sizeUnit?: 'bytes';
|
|
209
|
+
/** 未确认单位的历史大小,十进制无符号整数;SDK 仅用于原样转发,宿主不得将它用于显示大小或规划下载。 */
|
|
210
|
+
unverifiedFileLength?: string;
|
|
198
211
|
/** 视频描述(BMessage.describe,可选)。 */
|
|
199
212
|
describe?: string;
|
|
200
213
|
/** 文件解密 TEA key 原始字节(仅密文视频有;接收端解 BContent 后从 BMessage.teaKey 得,用于解下载到的原视频文件)。 */
|
|
@@ -329,6 +342,53 @@ interface ImMiniProgramBody {
|
|
|
329
342
|
/** 多语言子游戏名 JSON 字符串,例如 `{"ch":"...","en":"..."}`。 */
|
|
330
343
|
subGameName?: string;
|
|
331
344
|
}
|
|
345
|
+
/**
|
|
346
|
+
* 机器人卡片文本模块(wire `section`)。
|
|
347
|
+
*
|
|
348
|
+
* `content` 保留原文,可含 Markdown 链接与裸 URL;宿主负责展示层解析,不在 Core 拆成富文本树。
|
|
349
|
+
*/
|
|
350
|
+
interface ImRobotTextModule {
|
|
351
|
+
type: 'section';
|
|
352
|
+
textType: string;
|
|
353
|
+
content: string;
|
|
354
|
+
}
|
|
355
|
+
/** 机器人卡片图片组;`src` 是明文 http(s),不走消息 TEA 文件通道。 */
|
|
356
|
+
interface ImRobotImageGroupModule {
|
|
357
|
+
type: 'image-group';
|
|
358
|
+
images: readonly string[];
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* 机器人卡片倒计时。
|
|
362
|
+
*
|
|
363
|
+
* `endTimeMs` 已归一为 epoch 毫秒;wire 秒/毫秒混用只在 mapper 转换,宿主不要再猜单位。
|
|
364
|
+
*/
|
|
365
|
+
interface ImRobotCountdownModule {
|
|
366
|
+
type: 'countdown';
|
|
367
|
+
endTimeMs: number;
|
|
368
|
+
}
|
|
369
|
+
type ImRobotModule = ImRobotTextModule | ImRobotImageGroupModule | ImRobotCountdownModule;
|
|
370
|
+
/** 机器人卡片底部指令;`miniProgram` 仅打开小程序时存在。 */
|
|
371
|
+
interface ImRobotCommand {
|
|
372
|
+
menuName: string;
|
|
373
|
+
menuId?: string;
|
|
374
|
+
/** wire `msg_type`;`2` 表示打开小程序,其它走固定话术。第一期宿主可只展示。 */
|
|
375
|
+
messageType?: string;
|
|
376
|
+
miniProgram?: {
|
|
377
|
+
path?: string;
|
|
378
|
+
appId?: string;
|
|
379
|
+
domain?: string;
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* 机器人卡片正文(contentType==='robot',协议 BMessage.contentType=18)。
|
|
384
|
+
*
|
|
385
|
+
* @remarks 排版数据在 `BMessage.content` JSON。解析失败仍保留 robot 类型与空模块,
|
|
386
|
+
* 不能退化成 unknown——iOS 此时仍画出卡片头。divider 与未识别 module 在 mapper 丢弃。
|
|
387
|
+
*/
|
|
388
|
+
interface ImRobotBody {
|
|
389
|
+
modules: readonly ImRobotModule[];
|
|
390
|
+
commands: readonly (readonly ImRobotCommand[])[];
|
|
391
|
+
}
|
|
332
392
|
/** 转账状态。0 待领取 / 1 已收款 / 2 已退还 / 3 已过期(对齐 iOS IMTranferBody,过期 3 以客户端为准)。 */
|
|
333
393
|
type ImTransferStatus = 0 | 1 | 2 | 3;
|
|
334
394
|
/** 转账会话类型。1 个人 / 2 群(BMessage.sessionType)。 */
|
|
@@ -523,6 +583,8 @@ interface ImMessageBody {
|
|
|
523
583
|
redPacket?: ImRedPacketBody;
|
|
524
584
|
/** contentType==='mediaAlbum' 时的媒体合集正文(配文 + 1~9 个图片/视频项)。 */
|
|
525
585
|
mediaAlbum?: ImMediaAlbumBody;
|
|
586
|
+
/** contentType==='robot' 时的机器人卡片。 */
|
|
587
|
+
robot?: ImRobotBody;
|
|
526
588
|
/** contentType==='unknown' 时的稳定未知正文,不含原始 wire type。 */
|
|
527
589
|
unknown?: UnknownMessageBody;
|
|
528
590
|
}
|
|
@@ -599,7 +661,7 @@ interface ImMessageEncryption {
|
|
|
599
661
|
encrypted: boolean;
|
|
600
662
|
/** 扩展:加密方案标识,默认 'rsa-tea'。 */
|
|
601
663
|
scheme?: 'rsa-tea';
|
|
602
|
-
/** true=密文但解密失败/缺密钥(占位,非真实空正文):供 UI
|
|
664
|
+
/** true=密文但解密失败/缺密钥(占位,非真实空正文):供 UI 显式渲染解密失败提示,与明文空消息、普通密文区分。 */
|
|
603
665
|
decryptFailed?: boolean;
|
|
604
666
|
}
|
|
605
667
|
/** 单条消息领域模型(§4.1)。主键为客户端生成的 id(无 serverId)。 */
|
|
@@ -2700,17 +2762,24 @@ interface MediaTransferAdapterConfig {
|
|
|
2700
2762
|
/** 是否启用 S3 Transfer Acceleration(默认 true;`cn-` 分区没有加速端点,会强制关闭)。 */
|
|
2701
2763
|
useAccelerateEndpoint?: boolean;
|
|
2702
2764
|
/**
|
|
2703
|
-
*
|
|
2765
|
+
* 统一允许 S3 分片上传和 Range 分段下载,默认 false(单次 PUT / 普通 GET)。
|
|
2766
|
+
* 显式 true 后仍按 16MiB 阈值及已确认下载大小选择策略,小资源不分片。
|
|
2767
|
+
* 开启前各桶须支持分片请求方法,并暴露上传 ETag、下载 Content-Range 与强 ETag。
|
|
2768
|
+
* @example { multipartTransfer: true } 同时允许大资源分片上传、下载。
|
|
2769
|
+
*/
|
|
2770
|
+
multipartTransfer?: boolean;
|
|
2771
|
+
/**
|
|
2772
|
+
* 总开关开启后,是否允许超过分片阈值(16MiB)的上传使用 S3 分片上传。
|
|
2704
2773
|
*
|
|
2705
2774
|
* 分片相比单次 PUT 需要各物理桶的 CORS 额外放行 POST(Create/CompleteMultipartUpload)、
|
|
2706
2775
|
* DELETE(AbortMultipartUpload)并 `ExposeHeaders: ETag`;未配齐时分片会直接失败。
|
|
2707
|
-
*
|
|
2776
|
+
* @deprecated 优先使用 multipartTransfer 统一控制;本字段 false 仅进一步关闭上传,true 不能单独开启。
|
|
2708
2777
|
*/
|
|
2709
2778
|
multipartUpload?: boolean;
|
|
2710
2779
|
/**
|
|
2711
|
-
*
|
|
2780
|
+
* 总开关开启后,大于 16MiB 的明文/simple 文件是否尝试 Range 并发下载。
|
|
2712
2781
|
* 需要下载域名支持 Range,并暴露 Content-Range 与强 ETag;返回 200 时消费完整响应并记录诊断。
|
|
2713
|
-
*
|
|
2782
|
+
* @deprecated 优先使用 multipartTransfer 统一控制;本字段 false 仅进一步关闭下载,true 不能单独开启。
|
|
2714
2783
|
*/
|
|
2715
2784
|
rangeDownload?: boolean;
|
|
2716
2785
|
/**
|
|
@@ -4046,6 +4115,8 @@ type ConversationLastMessageSummary = {
|
|
|
4046
4115
|
kind: 'contact';
|
|
4047
4116
|
} | {
|
|
4048
4117
|
kind: 'miniProgram';
|
|
4118
|
+
} | {
|
|
4119
|
+
kind: 'robot';
|
|
4049
4120
|
} | {
|
|
4050
4121
|
kind: 'transfer';
|
|
4051
4122
|
} | {
|
|
@@ -4076,6 +4147,10 @@ type ConversationLastMessageSummary = {
|
|
|
4076
4147
|
firstItemKind?: 'image' | 'video';
|
|
4077
4148
|
} | {
|
|
4078
4149
|
kind: 'encrypted';
|
|
4150
|
+
}
|
|
4151
|
+
/** 密文解密失败占位;与 `encrypted` 分开,列表走独立 iOS 长文案。 */
|
|
4152
|
+
| {
|
|
4153
|
+
kind: 'decrypt-failed';
|
|
4079
4154
|
} | {
|
|
4080
4155
|
kind: 'recalled';
|
|
4081
4156
|
by: string;
|
|
@@ -5562,15 +5637,16 @@ interface ImSettingsApi {
|
|
|
5562
5637
|
*
|
|
5563
5638
|
* 形状 = im-browser `MediaTransferAdapterConfig`:必填 `getUploadCredentials`(按逻辑桶名向宿主自己的 BFF 申请
|
|
5564
5639
|
* STS 临时凭证)+ 各 `MediaKind`(image/video/voice/file/sticker)的**逻辑桶名** + 可选 `channelBuckets`(社群会话
|
|
5565
|
-
* 按类型覆盖)、`avatarBucket`、`useAccelerateEndpoint`、`
|
|
5640
|
+
* 按类型覆盖)、`avatarBucket`、`useAccelerateEndpoint`、`multipartTransfer`、`maxConcurrentUploads`。
|
|
5566
5641
|
*
|
|
5567
5642
|
* 上传凭证由业务后端按登录态签发(与 iOS、prod H5 同一个接口),回包同时给出**物理桶**、区域、`key_prefix` 和
|
|
5568
5643
|
* 公开访问域名;SDK 据此拼 object key 与消息体 URL,宿主 env 里配的只是申请凭证用的逻辑桶名。凭证缓存(本地
|
|
5569
5644
|
* 1 小时、按服务端过期时间提前 5 分钟失效)、同桶单飞与失败重签由 SDK 负责,宿主只需提供「打一次接口」的纯函数。
|
|
5570
5645
|
*
|
|
5571
|
-
*
|
|
5646
|
+
* 默认单次 PUT/GET;仅 multipartTransfer=true 才允许大资源分片上传、下载。
|
|
5647
|
+
* 各 bucket 需在对象存储侧配置 CORS 允许本站 origin 的 PUT + GET;开启分片后,超过 16MiB 的上传另需放行
|
|
5572
5648
|
* POST(Create/CompleteMultipartUpload)、DELETE(AbortMultipartUpload)并 ExposeHeaders: ETag。CORS 未配齐时
|
|
5573
|
-
*
|
|
5649
|
+
* 下载还需暴露 Content-Range 与强 ETag;multipartTransfer=false 统一关闭分片上传和下载。
|
|
5574
5650
|
* ⚠ 并发字段只由 SDK core 的媒体编排消费;adapter 会忽略该字段。高内存设备可设置 5-6,低内存设备建议 2-3。
|
|
5575
5651
|
*/
|
|
5576
5652
|
type ImMediaConfig = MediaTransferAdapterConfig;
|