@napuketto/adapter 0.0.2 → 0.0.4

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.
@@ -1,20 +1,8 @@
1
1
  import { l as ErrorCodeMap, o as ActionRegistry, r as ProtocolConfig, t as BaseProtocolAdapter } from "../index-CmhGncOe.mjs";
2
2
  import "../gray-tip-CcpfI1Og.mjs";
3
- import { CanonicalElement, FriendApi, GroupApi, GroupCache, GroupNotifyApi, MsgApi, MsgEventChannel, Peer, ProfileApi, ProfileLikeApi, RichMediaApi, TicketApi, WebApi } from "@napuketto/kernel";
3
+ import { CanonicalElement, ChatType, FriendApi, GroupApi, GroupCache, GroupNotifyApi, MsgApi, MsgEventChannel, Peer, ProfileApi, ProfileLikeApi, RichMediaApi, TicketApi, WebApi } from "@napuketto/kernel";
4
4
  import { z } from "zod";
5
5
  import { EventBroadcaster, TransportAdapter } from "@napuketto/network";
6
- //#region src/onebot11/action/error-map.d.ts
7
- /** OB11 错误码映射表(send_msg 等所有 OB11 动作共用)。 */
8
- declare const ob11ErrorCodeMap: ErrorCodeMap;
9
- //#endregion
10
- //#region src/onebot11/action/group/get-group-at-all-remain.d.ts
11
- /** @全体剩余次数返回结构。 */
12
- interface AtAllRemainInfo {
13
- can_at_all: boolean;
14
- remain_at_all_count_for_uin: number;
15
- remain_at_all_count_for_group: number;
16
- }
17
- //#endregion
18
6
  //#region src/onebot11/helper/message-unique.d.ts
19
7
  declare class MessageUnique {
20
8
  /** NT msgId → OB11 message_id。 */
@@ -130,85 +118,17 @@ declare class OneBotApi {
130
118
  uidToUin(uids: string[]): Promise<Map<string, string>>;
131
119
  }
132
120
  //#endregion
133
- //#region src/onebot11/action/index.d.ts
134
- /** 动作注册表依赖(P2-16:动作只依赖一个聚合对象)。 */
135
- interface Ob11ActionDeps {
136
- /** OneBotApi 聚合(9 个 kernel apis + messageUnique + self/system)。 */
137
- api: OneBotApi;
138
- }
139
- /** 构建 OB11 动作注册表(所有 OB11 动作在此注册,按组拆分控制行数)。 */
140
- declare function createOb11ActionRegistry(deps: Ob11ActionDeps): ActionRegistry;
141
- //#endregion
142
- //#region src/onebot11/helper/config.d.ts
143
- /** OB11 配置 schema。 */
144
- declare const ob11ConfigSchema: z.ZodObject<{
145
- token: z.ZodOptional<z.ZodString>;
146
- heartbeatInterval: z.ZodDefault<z.ZodNumber>;
147
- reportSelfMessage: z.ZodDefault<z.ZodBoolean>;
148
- messagePostFormat: z.ZodDefault<z.ZodEnum<{
149
- array: "array";
150
- string: "string";
151
- }>>;
152
- httpServers: z.ZodDefault<z.ZodArray<z.ZodObject<{
153
- enabled: z.ZodDefault<z.ZodBoolean>;
154
- host: z.ZodDefault<z.ZodString>;
155
- port: z.ZodDefault<z.ZodNumber>;
156
- token: z.ZodOptional<z.ZodString>;
157
- }, z.core.$strip>>>;
158
- httpPostUrls: z.ZodDefault<z.ZodArray<z.ZodObject<{
159
- enabled: z.ZodDefault<z.ZodBoolean>;
160
- url: z.ZodOptional<z.ZodString>;
161
- token: z.ZodOptional<z.ZodString>;
162
- timeoutMs: z.ZodOptional<z.ZodNumber>;
163
- }, z.core.$strip>>>;
164
- wsServers: z.ZodDefault<z.ZodArray<z.ZodObject<{
165
- enabled: z.ZodDefault<z.ZodBoolean>;
166
- host: z.ZodDefault<z.ZodString>;
167
- port: z.ZodDefault<z.ZodNumber>;
168
- token: z.ZodOptional<z.ZodString>;
169
- heartbeatInterval: z.ZodDefault<z.ZodNumber>;
170
- }, z.core.$strip>>>;
171
- wsReverseUrls: z.ZodDefault<z.ZodArray<z.ZodObject<{
172
- enabled: z.ZodDefault<z.ZodBoolean>;
173
- url: z.ZodOptional<z.ZodString>;
174
- token: z.ZodOptional<z.ZodString>;
175
- reconnectDelayMs: z.ZodDefault<z.ZodNumber>;
176
- maxReconnectAttempts: z.ZodOptional<z.ZodNumber>;
177
- rejectUnauthorized: z.ZodDefault<z.ZodBoolean>;
178
- heartbeatInterval: z.ZodDefault<z.ZodNumber>;
179
- }, z.core.$strip>>>;
180
- }, z.core.$strip>;
181
- /** OB11 配置类型(由 schema 推导)。 */
182
- type OB11Config = z.infer<typeof ob11ConfigSchema>;
121
+ //#region src/onebot11/action/error-map.d.ts
122
+ /** OB11 错误码映射表(send_msg 等所有 OB11 动作共用)。 */
123
+ declare const ob11ErrorCodeMap: ErrorCodeMap;
183
124
  //#endregion
184
- //#region src/onebot11/helper/cqcode.d.ts
185
- /**
186
- * CQ 码编解码(OneBot 11 消息段序列化格式)
187
- *
188
- * 纯函数、无 OB11 类型依赖:本文件只处理「文本 ↔ CQ 码片段」的通用编解码,
189
- * segment 级别的映射在 data.ts(OB11Constructor)。
190
- *
191
- * 转义规则(OneBot 11 规范):
192
- * - 纯文本:& → &amp;,[ → &#91;,] → &#93;
193
- * - 参数值:额外 , → &#44;
194
- */
195
- /** CQ 码片段([CQ:type,key=value,...] 的结构化表示)。 */
196
- interface CqCode {
197
- type: string;
198
- params: Record<string, string>;
125
+ //#region src/onebot11/action/group/get-group-at-all-remain.d.ts
126
+ /** @全体剩余次数返回结构。 */
127
+ interface AtAllRemainInfo {
128
+ can_at_all: boolean;
129
+ remain_at_all_count_for_uin: number;
130
+ remain_at_all_count_for_group: number;
199
131
  }
200
- /** 转义纯文本(& [ ];& 必须先转,避免二次转义)。 */
201
- declare function escapeCqText(text: string): string;
202
- /** 转义 CQ 码参数值(& [ ] ,)。 */
203
- declare function escapeCqParam(value: string): string;
204
- /** 反转义(&#44; &#93; &#91; &amp;;&amp; 必须最后解,避免二次转义误伤)。 */
205
- declare function unescapeCqText(text: string): string;
206
- /** 编码单个 CQ 码(undefined 参数自动省略)。 */
207
- declare function encodeCqCode(type: string, params: Record<string, string | number | undefined>): string;
208
- /** 解析一条消息文本 → 文本片段与 CQ 码片段的混合数组(文本已反转义)。 */
209
- declare function parseCqMessage(text: string): Array<string | CqCode>;
210
- /** 将混合片段数组序列化回消息文本(parseCqMessage 的逆操作)。 */
211
- declare function serializeCqParts(parts: Array<string | CqCode>): string;
212
132
  //#endregion
213
133
  //#region src/onebot11/types/index.d.ts
214
134
  /**
@@ -405,18 +325,6 @@ interface VersionInfo {
405
325
  walle_version?: string;
406
326
  }
407
327
  //#endregion
408
- //#region src/onebot11/helper/data.d.ts
409
- /** canonical 元素数组 → OB11 segment 数组(无法表达的元素静默跳过)。 */
410
- declare function canonicalToSegments(elements: CanonicalElement[]): OB11MessageSegment[];
411
- /** OB11 segment 数组 → canonical 元素数组。 */
412
- declare function segmentsToCanonical(segments: OB11MessageSegment[]): CanonicalElement[];
413
- /** CQ 码字符串 → OB11 segment 数组(未知 CQ 类型保留为 text 段原文)。 */
414
- declare function cqMessageToSegments(text: string): OB11MessageSegment[];
415
- /** canonical 元素数组 → CQ 码字符串。 */
416
- declare function canonicalToCqMessage(elements: CanonicalElement[]): string;
417
- /** CQ 码字符串 → canonical 元素数组。 */
418
- declare function cqMessageToCanonical(text: string): CanonicalElement[];
419
- //#endregion
420
328
  //#region src/onebot11/event/base.d.ts
421
329
  /**
422
330
  * OneBot 11 事件基类(OB11 公开协议规范,自研描述)
@@ -686,10 +594,102 @@ type OB11RequestEvent = OB11FriendRequestEvent | OB11GroupRequestEvent;
686
594
  /** OB11 事件联合(所有事件共用 time/self_id/post_type,按 post_type 收窄)。 */
687
595
  type OB11Event = OB11MessageEvent | OB11NoticeEvent | OB11RequestEvent | OB11MetaEvent;
688
596
  //#endregion
689
- //#region src/onebot11/helper/segment.d.ts
597
+ //#region src/onebot11/action/index.d.ts
598
+ /** 动作注册表依赖(P2-16:动作只依赖一个聚合对象)。 */
599
+ interface Ob11ActionDeps {
600
+ /** OneBotApi 聚合(9 个 kernel apis + messageUnique + self/system)。 */
601
+ api: OneBotApi;
602
+ }
603
+ /** 构建 OB11 动作注册表(所有 OB11 动作在此注册,按组拆分控制行数)。 */
604
+ declare function createOb11ActionRegistry(deps: Ob11ActionDeps): ActionRegistry;
605
+ //#endregion
606
+ //#region src/onebot11/helper/codec/cqcode.d.ts
607
+ /**
608
+ * CQ 码编解码(OneBot 11 消息段序列化格式)
609
+ *
610
+ * 纯函数、无 OB11 类型依赖:本文件只处理「文本 ↔ CQ 码片段」的通用编解码,
611
+ * segment 级别的映射在 data.ts(OB11Constructor)。
612
+ *
613
+ * 转义规则(OneBot 11 规范):
614
+ * - 纯文本:& → &amp;,[ → &#91;,] → &#93;
615
+ * - 参数值:额外 , → &#44;
616
+ */
617
+ /** CQ 码片段([CQ:type,key=value,...] 的结构化表示)。 */
618
+ interface CqCode {
619
+ type: string;
620
+ params: Record<string, string>;
621
+ }
622
+ /** 转义纯文本(& [ ];& 必须先转,避免二次转义)。 */
623
+ declare function escapeCqText(text: string): string;
624
+ /** 转义 CQ 码参数值(& [ ] ,)。 */
625
+ declare function escapeCqParam(value: string): string;
626
+ /** 反转义(&#44; &#93; &#91; &amp;;&amp; 必须最后解,避免二次转义误伤)。 */
627
+ declare function unescapeCqText(text: string): string;
628
+ /** 编码单个 CQ 码(undefined 参数自动省略)。 */
629
+ declare function encodeCqCode(type: string, params: Record<string, string | number | undefined>): string;
630
+ /** 解析一条消息文本 → 文本片段与 CQ 码片段的混合数组(文本已反转义)。 */
631
+ declare function parseCqMessage(text: string): Array<string | CqCode>;
632
+ /** 将混合片段数组序列化回消息文本(parseCqMessage 的逆操作)。 */
633
+ declare function serializeCqParts(parts: Array<string | CqCode>): string;
634
+ //#endregion
635
+ //#region src/onebot11/helper/codec/segment.d.ts
690
636
  /** OB11 segment 数组 → CQ 码字符串(text 段转义拼接,特殊段编码)。 */
691
637
  declare function segmentsToCqMessage(segments: OB11MessageSegment[]): string;
692
638
  //#endregion
639
+ //#region src/onebot11/helper/config.d.ts
640
+ /** OB11 配置 schema。 */
641
+ declare const ob11ConfigSchema: z.ZodObject<{
642
+ token: z.ZodOptional<z.ZodString>;
643
+ heartbeatInterval: z.ZodDefault<z.ZodNumber>;
644
+ reportSelfMessage: z.ZodDefault<z.ZodBoolean>;
645
+ messagePostFormat: z.ZodDefault<z.ZodEnum<{
646
+ array: "array";
647
+ string: "string";
648
+ }>>;
649
+ httpServers: z.ZodDefault<z.ZodArray<z.ZodObject<{
650
+ enabled: z.ZodDefault<z.ZodBoolean>;
651
+ host: z.ZodDefault<z.ZodString>;
652
+ port: z.ZodDefault<z.ZodNumber>;
653
+ token: z.ZodOptional<z.ZodString>;
654
+ }, z.core.$strip>>>;
655
+ httpPostUrls: z.ZodDefault<z.ZodArray<z.ZodObject<{
656
+ enabled: z.ZodDefault<z.ZodBoolean>;
657
+ url: z.ZodOptional<z.ZodString>;
658
+ token: z.ZodOptional<z.ZodString>;
659
+ timeoutMs: z.ZodOptional<z.ZodNumber>;
660
+ }, z.core.$strip>>>;
661
+ wsServers: z.ZodDefault<z.ZodArray<z.ZodObject<{
662
+ enabled: z.ZodDefault<z.ZodBoolean>;
663
+ host: z.ZodDefault<z.ZodString>;
664
+ port: z.ZodDefault<z.ZodNumber>;
665
+ token: z.ZodOptional<z.ZodString>;
666
+ heartbeatInterval: z.ZodDefault<z.ZodNumber>;
667
+ }, z.core.$strip>>>;
668
+ wsReverseUrls: z.ZodDefault<z.ZodArray<z.ZodObject<{
669
+ enabled: z.ZodDefault<z.ZodBoolean>;
670
+ url: z.ZodOptional<z.ZodString>;
671
+ token: z.ZodOptional<z.ZodString>;
672
+ reconnectDelayMs: z.ZodDefault<z.ZodNumber>;
673
+ maxReconnectAttempts: z.ZodOptional<z.ZodNumber>;
674
+ rejectUnauthorized: z.ZodDefault<z.ZodBoolean>;
675
+ heartbeatInterval: z.ZodDefault<z.ZodNumber>;
676
+ }, z.core.$strip>>>;
677
+ }, z.core.$strip>;
678
+ /** OB11 配置类型(由 schema 推导)。 */
679
+ type OB11Config = z.infer<typeof ob11ConfigSchema>;
680
+ //#endregion
681
+ //#region src/onebot11/helper/data.d.ts
682
+ /** canonical 元素数组 → OB11 segment 数组(无法表达的元素静默跳过)。 */
683
+ declare function canonicalToSegments(elements: CanonicalElement[]): OB11MessageSegment[];
684
+ /** OB11 segment 数组 → canonical 元素数组。 */
685
+ declare function segmentsToCanonical(segments: OB11MessageSegment[]): CanonicalElement[];
686
+ /** CQ 码字符串 → OB11 segment 数组(未知 CQ 类型保留为 text 段原文)。 */
687
+ declare function cqMessageToSegments(text: string): OB11MessageSegment[];
688
+ /** canonical 元素数组 → CQ 码字符串。 */
689
+ declare function canonicalToCqMessage(elements: CanonicalElement[]): string;
690
+ /** CQ 码字符串 → canonical 元素数组。 */
691
+ declare function cqMessageToCanonical(text: string): CanonicalElement[];
692
+ //#endregion
693
693
  //#region src/onebot11/adapter.d.ts
694
694
  /** 适配器构造参数(api 相关字段继承 OneBotApiOptions,P2-16 聚合)。 */
695
695
  interface OneBot11AdapterOptions extends OneBotApiOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/onebot11/action/error-map.ts","../../src/onebot11/action/group/get-group-at-all-remain.ts","../../src/onebot11/helper/message-unique.ts","../../src/onebot11/api/one-bot-api.ts","../../src/onebot11/action/index.ts","../../src/onebot11/helper/config.ts","../../src/onebot11/helper/cqcode.ts","../../src/onebot11/types/index.ts","../../src/onebot11/helper/data.ts","../../src/onebot11/event/base.ts","../../src/onebot11/event/message.ts","../../src/onebot11/event/meta.ts","../../src/onebot11/event/notice.ts","../../src/onebot11/event/request.ts","../../src/onebot11/event/index.ts","../../src/onebot11/helper/segment.ts","../../src/onebot11/adapter.ts","../../src/onebot11/transport.ts"],"mappings":";;;;;;;cAUa,kBAAkB;;;;UCMd;EACb;EACA;EACA;;;;cCDS;;mBAEQ;;mBAEA;;mBAEA;;UAET;;mBAES;;;;;EAMjB,MAAM,eAAe,OAAO;;EAmB5B,SAAS;;EAKT,aAAa;;EAKb,QAAQ,gBAAgB;;EAKxB,QAAQ;;UAYA;;;;;UCvDK;;EAEb;;EAEA,mBAAmB;;EAEnB;;EAEA,aAAa;;EAEb,gBAAgB;;;UAIH;EACb,QAAQ;EACR,UAAU;EACV,gBAAgB;EAChB,WAAW;EACX,WAAW;EACX,cAAc;EACd,YAAY;EACZ,gBAAgB;EAChB,QAAQ;;EAER;IAAQ;IAAa;;;EAErB,QAAQ;;EAER,aAAa;;;;;;cAOJ;;WAEA,QAAQ;;WAER,UAAU;;WAEV,gBAAgB;;WAEhB,WAAW;;WAEX,WAAW;;WAEX,cAAc;;WAEd,YAAY;;WAEZ,gBAAgB;;WAEhB,QAAQ;;WAER,YAAY;;WAEZ,eAAe;;WAEf;IAAQ;IAAa;;;WAErB;;WAEA;;WAEA,mBAAmB;;WAEnB;;WAEA,aAAa;;WAEb,gBAAgB;EAEzB,YAAY,MAAM;;EAsBlB,SAAS,iBAAiB,QAAQ;;EAKlC,SAAS,iBAAiB,QAAQ;;;;;UC3BrB;;EAEb,KAAK;;;iBAIO,yBAAyB,MAAM,iBAAiB;;;;cC5CnD,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiB3B,EAAA,KAAA;;KAGU,aAAa,EAAE,aAAa;;;;;;;;;;;;;;UC9CvB;EACb;EACA,QAAQ;;;iBAII,aAAa;;iBAKb,cAAc;;iBAKd,eAAe;;iBASf,aACZ,cACA,QAAQ;;iBAeI,eAAe,eAAe,eAAe;;iBAkB7C,iBAAiB,OAAO,eAAe;;;;;;;;UCzFtC,WAAW;EACxB;EACA;EACA,MAAM;EACN;EACA;;;KAIQ;EACJ;EAAc;IAAQ;;;EACtB;EAAY;IAAQ;IAAY;;;EAChC;EAAc;IAAQ;;;EACtB;EAAe;IAAQ;IAAc;;;EACrC;EAAgB;IAAQ;IAAc;;;EACtC;EAAe;IAAQ;IAAc;;;EACrC;EAAe;IAAQ;;;EACvB;EAAiB;IAAQ;;;EACzB;EAAc;IAAQ;;;EACtB;EAAa;IAAQ;;;EACrB;EAAgB;IAAQ;;;;KAGpB,uBAAuB;;UAGlB;EACb;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;EACA;;;UAIa;EACb;EACA;;;UAIa;EACb;EACA;EACA;EACA;IACI;IACA;IACA;IACA;;EAEJ;EACA,SAAS;EACT;EACA;EACA;;;KAIQ;;UAGK;EACb;EACA;EACA;EACA;EACA,MAAM;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa;EACb;EACA;EACA,MAAM;EACN;;EAEA;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa;EACb;EACA,oBAAoB;EACpB,gBAAgB;EAChB,gBAAgB;EAChB,aAAa;EACb,oBAAoB;EACpB,cAAc;;;UAID;EACb;EACA;EACA;;EAEA;EACA;EACA;EACA,eAAe;EACf,gBAAgB;EAChB;;;;;iBCtIY,oBAAoB,UAAU,qBAAqB;;iBAYnD,oBAAoB,UAAU,uBAAuB;;iBAuHrD,oBAAoB,eAAe;;iBAkBnC,qBAAqB,UAAU;;iBAK/B,qBAAqB,eAAe;;;;;;;;;;;KCzKxC;;UAGK;;EAEb;;EAEA;;EAEA,WAAW;;;;;UCPE;EACb;EACA;EACA;;;UAIa,oBAAoB;EACjC;EACA;;;UAIa,8BAA8B;EAC3C;EACA;;EAEA;EACA;EACA;EACA;EACA,SAAS;EACT;EACA;EACA,QAAQ;EACR,YAAY;;;UAIC,gCAAgC;EAC7C;EACA;;EAEA;EACA;EACA;EACA,SAAS;EACT;EACA;EACA,QAAQ;;EAER;;;KAIQ,mBAAmB,wBAAwB;;;;UC9CtC;EACb;EACA;GACC;;;UAIY,+BAA+B;EAC5C;EACA;EACA;;;UAIa,+BAA+B;EAC5C;EACA;;EAEA;EACA,QAAQ;;;KAIA,gBAAgB,yBAAyB;;;;UCvBpC;EACb;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa,mCAAmC;EAChD;EACA;EACA;EACA;EACA,MAAM;;;UAIO,kCAAkC;EAC/C;EACA;EACA;EACA;EACA;;;UAIa,qCAAqC;EAClD;EACA;EACA;EACA;EACA;EACA;;;UAIa,qCAAqC;EAClD;EACA;EACA;EACA;EACA;EACA;;;UAIa,gCAAgC;EAC7C;EACA;EACA;EACA;EACA;EACA;;EAEA;;;UAIa,iCAAiC;EAC9C;EACA;EACA;;;UAIa,mCAAmC;EAChD;EACA;EACA;EACA;EACA;EACA;;;UAIa,oCAAoC;EACjD;EACA;EACA;EACA;;;UAIa,iCAAiC;EAC9C;EACA;EACA;EACA;EACA;EACA;;;UAIa,oCAAoC;EACjD;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIa,8BAA8B;EAC3C;EACA;EACA;EACA;EACA;EACA;;EAEA;;;UAIa,mCAAmC;EAChD;EACA;EACA;EACA,MAAM;;;UAIO,iCAAiC;EAC9C;EACA;EACA;EACA;;;UAIa,oCAAoC;EACjD;EACA;EACA;EACA;EACA;EACA,OAAO;;;UAIM,kCAAkC;EAC/C;EACA;EACA;EACA;EACA;;;KAIQ,kBACN,6BACA,4BACA,+BACA,+BACA,0BACA,2BACA,6BACA,8BACA,2BACA,8BACA,wBACA,6BACA,2BACA,8BACA;;;;UCpLW,+BAA+B;EAC5C;EACA;EACA;;EAEA;;EAEA;;;UAIa,8BAA8B;EAC3C;EACA;;EAEA;EACA;EACA;EACA;EACA;;;KAIQ,mBAAmB,yBAAyB;;;;KCiB5C,YAAY,mBAAoB,kBAAmB,mBAAoB;;;;iBCuHnE,oBAAoB,UAAU;;;;UCnI7B,+BAA+B;;EAE5C,QAAQ,eAAe;;EAEvB,aAAa;;EAEb,YAAY;;;cAIH,iCAAiC,oBAAoB;WACrD;WACA,4BAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAAoB;mBAExB;mBACA;mBACA;mBACA;UACT;UACA;UACA;UACA;UACA;EAER,YAAY,MAAM;;UAoBJ;;UAsCN;;UAiBM;;UAaN;;;;;;UA4BM;;UA2BA;;UAaN;;;;;EASF,cAAc,cAAc,UAAU,wBAAwB;;;;;UCvKvD;;EAEb,SAAS;;EAET,YAAY;;EAEZ,aAAa;;;UAIA;;EAEb,QAAQ;;EAER,aAAa;;EAEb,gBAAgB,cAAc,UAAU;;EAExC;;;iBAiBY,uBAAuB,MAAM,gCAAgC"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/onebot11/helper/message-unique.ts","../../src/onebot11/api/one-bot-api.ts","../../src/onebot11/action/error-map.ts","../../src/onebot11/action/group/get-group-at-all-remain.ts","../../src/onebot11/types/index.ts","../../src/onebot11/event/base.ts","../../src/onebot11/event/message.ts","../../src/onebot11/event/meta.ts","../../src/onebot11/event/notice.ts","../../src/onebot11/event/request.ts","../../src/onebot11/event/index.ts","../../src/onebot11/action/index.ts","../../src/onebot11/helper/codec/cqcode.ts","../../src/onebot11/helper/codec/segment.ts","../../src/onebot11/helper/config.ts","../../src/onebot11/helper/data.ts","../../src/onebot11/adapter.ts","../../src/onebot11/transport.ts"],"mappings":";;;;;;cAkBa;;mBAEQ;;mBAEA;;mBAEA;;UAET;;mBAES;;;;;EAMjB,MAAM,eAAe,OAAO;;EAmB5B,SAAS;;EAKT,aAAa;;EAKb,QAAQ,gBAAgB;;EAKxB,QAAQ;;UAYA;;;;;UCvDK;;EAEb;;EAEA,mBAAmB;;EAEnB;;EAEA,aAAa;;EAEb,gBAAgB;;;UAIH;EACb,QAAQ;EACR,UAAU;EACV,gBAAgB;EAChB,WAAW;EACX,WAAW;EACX,cAAc;EACd,YAAY;EACZ,gBAAgB;EAChB,QAAQ;;EAER;IAAQ;IAAa;;;EAErB,QAAQ;;EAER,aAAa;;;;;;cAOJ;;WAEA,QAAQ;;WAER,UAAU;;WAEV,gBAAgB;;WAEhB,WAAW;;WAEX,WAAW;;WAEX,cAAc;;WAEd,YAAY;;WAEZ,gBAAgB;;WAEhB,QAAQ;;WAER,YAAY;;WAEZ,eAAe;;WAEf;IAAQ;IAAa;;;WAErB;;WAEA;;WAEA,mBAAmB;;WAEnB;;WAEA,aAAa;;WAEb,gBAAgB;EAEzB,YAAY,MAAM;;EAsBlB,SAAS,iBAAiB,QAAQ;;EAKlC,SAAS,iBAAiB,QAAQ;;;;;cCpHzB,kBAAkB;;;;UCMd;EACb;EACA;EACA;;;;;;;;;UCba,WAAW;EACxB;EACA;EACA,MAAM;EACN;EACA;;;KAIQ;EACJ;EAAc;IAAQ;;;EACtB;EAAY;IAAQ;IAAY;;;EAChC;EAAc;IAAQ;;;EACtB;EAAe;IAAQ;IAAc;;;EACrC;EAAgB;IAAQ;IAAc;;;EACtC;EAAe;IAAQ;IAAc;;;EACrC;EAAe;IAAQ;;;EACvB;EAAiB;IAAQ;;;EACzB;EAAc;IAAQ;;;EACtB;EAAa;IAAQ;;;EACrB;EAAgB;IAAQ;;;;KAGpB,uBAAuB;;UAGlB;EACb;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;EACA;;;UAIa;EACb;EACA;;;UAIa;EACb;EACA;EACA;EACA;IACI;IACA;IACA;IACA;;EAEJ;EACA,SAAS;EACT;EACA;EACA;;;KAIQ;;UAGK;EACb;EACA;EACA;EACA;EACA,MAAM;EACN;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa;EACb;EACA;EACA,MAAM;EACN;;EAEA;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa;EACb;EACA,oBAAoB;EACpB,gBAAgB;EAChB,gBAAgB;EAChB,aAAa;EACb,oBAAoB;EACpB,cAAc;;;UAID;EACb;EACA;EACA;;EAEA;EACA;EACA;EACA,eAAe;EACf,gBAAgB;EAChB;;;;;;;;;;;;KCrJQ;;UAGK;;EAEb;;EAEA;;EAEA,WAAW;;;;;UCPE;EACb;EACA;EACA;;;UAIa,oBAAoB;EACjC;EACA;;;UAIa,8BAA8B;EAC3C;EACA;;EAEA;EACA;EACA;EACA;EACA,SAAS;EACT;EACA;EACA,QAAQ;EACR,YAAY;;;UAIC,gCAAgC;EAC7C;EACA;;EAEA;EACA;EACA;EACA,SAAS;EACT;EACA;EACA,QAAQ;;EAER;;;KAIQ,mBAAmB,wBAAwB;;;;UC9CtC;EACb;EACA;GACC;;;UAIY,+BAA+B;EAC5C;EACA;EACA;;;UAIa,+BAA+B;EAC5C;EACA;;EAEA;EACA,QAAQ;;;KAIA,gBAAgB,yBAAyB;;;;UCvBpC;EACb;EACA;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa;EACb;EACA;EACA;;;UAIa,mCAAmC;EAChD;EACA;EACA;EACA;EACA,MAAM;;;UAIO,kCAAkC;EAC/C;EACA;EACA;EACA;EACA;;;UAIa,qCAAqC;EAClD;EACA;EACA;EACA;EACA;EACA;;;UAIa,qCAAqC;EAClD;EACA;EACA;EACA;EACA;EACA;;;UAIa,gCAAgC;EAC7C;EACA;EACA;EACA;EACA;EACA;;EAEA;;;UAIa,iCAAiC;EAC9C;EACA;EACA;;;UAIa,mCAAmC;EAChD;EACA;EACA;EACA;EACA;EACA;;;UAIa,oCAAoC;EACjD;EACA;EACA;EACA;;;UAIa,iCAAiC;EAC9C;EACA;EACA;EACA;EACA;EACA;;;UAIa,oCAAoC;EACjD;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIa,8BAA8B;EAC3C;EACA;EACA;EACA;EACA;EACA;;EAEA;;;UAIa,mCAAmC;EAChD;EACA;EACA;EACA,MAAM;;;UAIO,iCAAiC;EAC9C;EACA;EACA;EACA;;;UAIa,oCAAoC;EACjD;EACA;EACA;EACA;EACA;EACA,OAAO;;;UAIM,kCAAkC;EAC/C;EACA;EACA;EACA;EACA;;;KAIQ,kBACN,6BACA,4BACA,+BACA,+BACA,0BACA,2BACA,6BACA,8BACA,2BACA,8BACA,wBACA,6BACA,2BACA,8BACA;;;;UCpLW,+BAA+B;EAC5C;EACA;EACA;;EAEA;;EAEA;;;UAIa,8BAA8B;EAC3C;EACA;;EAEA;EACA;EACA;EACA;EACA;;;KAIQ,mBAAmB,yBAAyB;;;;KCiB5C,YAAY,mBAAoB,kBAAmB,mBAAoB;;;;UCyDlE;;EAEb,KAAK;;;iBAIO,yBAAyB,MAAM,iBAAiB;;;;;;;;;;;;;;UC9E/C;EACb;EACA,QAAQ;;;iBAII,aAAa;;iBAKb,cAAc;;iBAKd,eAAe;;iBASf,aACZ,cACA,QAAQ;;iBAeI,eAAe,eAAe,eAAe;;iBAkB7C,iBAAiB,OAAO,eAAe;;;;iBC4GvC,oBAAoB,UAAU;;;;cC9IjC,kBAAgB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiB3B,EAAA,KAAA;;KAGU,aAAa,EAAE,aAAa;;;;iBCzDxB,oBAAoB,UAAU,qBAAqB;;iBAYnD,oBAAoB,UAAU,uBAAuB;;iBAuHrD,oBAAoB,eAAe;;iBAkBnC,qBAAqB,UAAU;;iBAK/B,qBAAqB,eAAe;;;;UC5InC,+BAA+B;;EAE5C,QAAQ,eAAe;;EAEvB,aAAa;;EAEb,YAAY;;;cAIH,iCAAiC,oBAAoB;WACrD;WACA,4BAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAAoB;mBAExB;mBACA;mBACA;mBACA;UACT;UACA;UACA;UACA;UACA;EAER,YAAY,MAAM;;UAoBJ;;UAsCN;;UAiBM;;UAaN;;;;;;UA4BM;;UA2BA;;UAaN;;;;;EASF,cAAc,cAAc,UAAU,wBAAwB;;;;;UCvKvD;;EAEb,SAAS;;EAET,YAAY;;EAEZ,aAAa;;;UAIA;;EAEb,QAAQ;;EAER,aAAa;;EAEb,gBAAgB,cAAc,UAAU;;EAExC;;;iBAiBY,uBAAuB,MAAM,gCAAgC"}
@@ -614,21 +614,28 @@ var GetGroupInfoAction = class extends BaseAction {
614
614
  };
615
615
  //#endregion
616
616
  //#region src/onebot11/action/group/get-group-list.ts
617
+ /**
618
+ * get_group_list 动作:获取群列表(P2-4 接 kernel GroupApi + GroupCache)
619
+ *
620
+ * ⚠️ 实测校准(2026-08-08 端到端联调):原生 getGroupList 返回值无数据
621
+ * (仅 { result, errMsg }),列表经 onGroupListUpdate 事件推送 → GroupCache
622
+ * 维护——列表一律从缓存读,no_cache=true 仅触发原生刷新。
623
+ */
617
624
  const getGroupListSchema = z.object({
618
625
  /** 是否忽略缓存(go-cqhttp 扩展)。 */
619
626
  no_cache: z.boolean().optional() });
620
- /** 获取群列表(P2-4 接 kernel apis/group)。 */
627
+ /** 获取群列表(P2-4 接 kernel apis/group;群列表数据经事件推送,从 GroupCache 读)。 */
621
628
  var GetGroupListAction = class extends BaseAction {
622
629
  name = "get_group_list";
623
630
  schema = getGroupListSchema;
624
631
  errorCodeMap = ob11ErrorCodeMap;
625
- groupApi;
626
- constructor(groupApi) {
632
+ deps;
633
+ constructor(deps) {
627
634
  super();
628
- this.groupApi = groupApi;
635
+ this.deps = deps;
629
636
  }
630
637
  async _handle(payload) {
631
- return (await this.groupApi.getGroupList(payload.no_cache === true)).map(toOb11GroupInfo);
638
+ return (this.deps.groupCache === void 0 ? await this.deps.groupApi.getGroupList(true) : payload.no_cache === true ? await this.deps.groupCache.listGroupsRefreshed() : this.deps.groupCache.listGroups()).map(toOb11GroupInfo);
632
639
  }
633
640
  };
634
641
  //#endregion
@@ -1396,78 +1403,7 @@ var ForwardFriendSingleMsgAction = class extends ForwardSingleMsgBase {
1396
1403
  schema = forwardSingleMsgSchema;
1397
1404
  };
1398
1405
  //#endregion
1399
- //#region src/onebot11/helper/config.ts
1400
- /**
1401
- * OneBot 11 协议配置(zod schema,归属本包,ADR-012)
1402
- * 协议配置 schema 在各自协议包,kernel 只提供 ConfigBase 基类。
1403
- *
1404
- * 2026-08-07 多实例化(P2-18):对齐 NapCat——httpServers / httpPostUrls / wsServers /
1405
- * wsReverseUrls 四个数组实例(每实例可覆盖全局 token);旧单对象字段 http/httpPost/ws/
1406
- * wsReverse 废弃(zod strip 静默忽略,不兼容迁移)。
1407
- */
1408
- /** HTTP 反向服务器默认端口。 */
1409
- const DEFAULT_HTTP_PORT = 3e3;
1410
- /** 反向 WS server 默认端口。 */
1411
- const DEFAULT_WS_PORT = 3001;
1412
- /** 心跳 meta 事件默认间隔(毫秒)。 */
1413
- const DEFAULT_HEARTBEAT_INTERVAL_MS = 3e3;
1414
- /** WS 传输 ping 默认间隔(毫秒)。 */
1415
- const DEFAULT_WS_HEARTBEAT_MS = 3e4;
1416
- /** WS 反向断线重连默认延迟(毫秒)。 */
1417
- const DEFAULT_RECONNECT_DELAY_MS = 5e3;
1418
- /** 消息内容格式(NapCat messagePostFormat)。 */
1419
- const MESSAGE_FORMATS = ["array", "string"];
1420
- /** HTTP 反向服务器实例(第三方 POST 指令入口)。 */
1421
- const httpServerSchema = createHttpServerSchema(DEFAULT_HTTP_PORT);
1422
- /** HTTP 正向上报实例(Webhook 事件推送)。 */
1423
- const httpPostSchema = z.object({
1424
- enabled: z.boolean().default(false),
1425
- url: z.string().optional(),
1426
- /** 实例级 token,覆盖全局 token(缺省继承全局)。 */
1427
- token: z.string().optional(),
1428
- /** 上报超时(毫秒),缺省不超时。 */
1429
- timeoutMs: z.number().int().optional()
1430
- });
1431
- /** 反向 WS server 实例(第三方 WS 连入,带 WS ping 间隔扩展字段)。 */
1432
- const wsServerSchema = createWsServerSchema(DEFAULT_WS_PORT).extend({
1433
- /** WS ping 间隔(毫秒)。 */
1434
- heartbeatInterval: z.number().int().default(DEFAULT_WS_HEARTBEAT_MS) });
1435
- /** 正向 WS client 实例(主动连接第三方,双向)。 */
1436
- const wsReverseSchema = z.object({
1437
- enabled: z.boolean().default(false),
1438
- url: z.string().optional(),
1439
- /** 实例级 token,覆盖全局 token(缺省继承全局)。 */
1440
- token: z.string().optional(),
1441
- /** 断线重连延迟(毫秒)。 */
1442
- reconnectDelayMs: z.number().int().default(DEFAULT_RECONNECT_DELAY_MS),
1443
- /** 最大重连次数(缺省无限)。 */
1444
- maxReconnectAttempts: z.number().int().optional(),
1445
- /** wss:// 是否校验证书(自签证书场景设 false,对齐 NapCat enableSelfSigned)。 */
1446
- rejectUnauthorized: z.boolean().default(true),
1447
- /** WS ping 间隔(毫秒)。 */
1448
- heartbeatInterval: z.number().int().default(DEFAULT_WS_HEARTBEAT_MS)
1449
- });
1450
- /** OB11 配置 schema。 */
1451
- const ob11ConfigSchema = z.object({
1452
- /** 鉴权 token(全局默认,实例未指定时继承)。 */
1453
- token: z.string().optional(),
1454
- /** 心跳 meta 事件间隔(毫秒),0 关闭心跳。 */
1455
- heartbeatInterval: z.number().int().default(DEFAULT_HEARTBEAT_INTERVAL_MS),
1456
- /** 是否上报机器人自己发的消息(缺省 false = OB11 规范行为)。 */
1457
- reportSelfMessage: z.boolean().default(false),
1458
- /** 消息内容格式:array = 消息段数组(标准),string = CQ 码字符串。 */
1459
- messagePostFormat: z.enum(MESSAGE_FORMATS).default("array"),
1460
- /** HTTP 反向服务器列表。 */
1461
- httpServers: z.array(httpServerSchema).default([]),
1462
- /** HTTP 正向上报列表。 */
1463
- httpPostUrls: z.array(httpPostSchema).default([]),
1464
- /** 反向 WS server 列表。 */
1465
- wsServers: z.array(wsServerSchema).default([]),
1466
- /** 正向 WS client 列表。 */
1467
- wsReverseUrls: z.array(wsReverseSchema).default([])
1468
- });
1469
- //#endregion
1470
- //#region src/onebot11/helper/cqcode.ts
1406
+ //#region src/onebot11/helper/codec/cqcode.ts
1471
1407
  /**
1472
1408
  * CQ 码编解码(OneBot 11 消息段序列化格式)
1473
1409
  *
@@ -1536,7 +1472,7 @@ function serializeCqParts(parts) {
1536
1472
  return out;
1537
1473
  }
1538
1474
  //#endregion
1539
- //#region src/onebot11/helper/segment.ts
1475
+ //#region src/onebot11/helper/codec/segment.ts
1540
1476
  /** OB11 媒体段 data(image/record/video 共用,url 可选)。 */
1541
1477
  function mediaData(file, url) {
1542
1478
  const data = { file };
@@ -1572,80 +1508,95 @@ function rawToString(raw) {
1572
1508
  if (typeof raw === "string") return raw;
1573
1509
  return JSON.stringify(raw);
1574
1510
  }
1575
- /** canonical 元素 → OB11 segment(null = OB11 无法表达,跳过)。 */
1576
- function canonicalToSegment(el) {
1577
- if (el.type === "text") return {
1511
+ /** canonical 元素 → OB11 segment 转换器(键 = canonical type,判别字段收窄)。 */
1512
+ const CANONICAL_TO_SEGMENT = {
1513
+ text: (el) => ({
1578
1514
  type: "text",
1579
1515
  data: { text: el.text }
1580
- };
1581
- if (el.type === "at") return {
1516
+ }),
1517
+ at: (el) => ({
1582
1518
  type: "at",
1583
1519
  data: atData(el.target, el.display)
1584
- };
1585
- if (el.type === "image") return {
1520
+ }),
1521
+ image: (el) => ({
1586
1522
  type: "image",
1587
1523
  data: mediaData(el.path, el.url)
1588
- };
1589
- if (el.type === "face") return {
1524
+ }),
1525
+ face: (el) => ({
1590
1526
  type: "face",
1591
1527
  data: { id: el.id }
1592
- };
1593
- if (el.type === "voice") return {
1528
+ }),
1529
+ voice: (el) => ({
1594
1530
  type: "record",
1595
1531
  data: mediaData(el.path, el.url)
1596
- };
1597
- if (el.type === "video") return {
1532
+ }),
1533
+ video: (el) => ({
1598
1534
  type: "video",
1599
1535
  data: mediaData(el.path, el.url)
1600
- };
1601
- if (el.type === "reply") return {
1536
+ }),
1537
+ reply: (el) => ({
1602
1538
  type: "reply",
1603
1539
  data: { id: el.messageId }
1604
- };
1605
- if (el.type === "forward") return {
1540
+ }),
1541
+ forward: (el) => ({
1606
1542
  type: "forward",
1607
1543
  data: { id: el.messageIds[0] ?? "" }
1608
- };
1609
- if (el.type === "json") return {
1544
+ }),
1545
+ json: (el) => ({
1610
1546
  type: "json",
1611
1547
  data: { data: rawToString(el.raw) }
1612
- };
1613
- if (el.type === "xml") return {
1548
+ }),
1549
+ xml: (el) => ({
1614
1550
  type: "xml",
1615
1551
  data: { data: rawToString(el.raw) }
1616
- };
1617
- return null;
1552
+ })
1553
+ };
1554
+ /** canonical 元素 → OB11 segment(null = OB11 无法表达,跳过)。 */
1555
+ function canonicalToSegment(el) {
1556
+ const builder = CANONICAL_TO_SEGMENT[el.type];
1557
+ return builder === void 0 ? null : builder(el);
1618
1558
  }
1619
- /** OB11 segment → canonical 元素。 */
1620
- function segmentToCanonical(seg) {
1621
- if (seg.type === "text" || seg.type === "string") return {
1559
+ /** OB11 segment → canonical 元素转换器(键 = segment type)。 */
1560
+ const SEGMENT_TO_CANONICAL = {
1561
+ text: (seg) => ({
1622
1562
  type: "text",
1623
1563
  text: seg.data.text
1624
- };
1625
- if (seg.type === "at") return canonicalAt(seg.data.qq, seg.data.name);
1626
- if (seg.type === "face") return {
1564
+ }),
1565
+ string: (seg) => ({
1566
+ type: "text",
1567
+ text: seg.data.text
1568
+ }),
1569
+ at: (seg) => canonicalAt(seg.data.qq, seg.data.name),
1570
+ face: (seg) => ({
1627
1571
  type: "face",
1628
1572
  id: seg.data.id
1629
- };
1630
- if (seg.type === "image") return canonicalMedia("image", seg.data.file, seg.data.url);
1631
- if (seg.type === "record") return canonicalMedia("voice", seg.data.file, seg.data.url);
1632
- if (seg.type === "video") return canonicalMedia("video", seg.data.file, seg.data.url);
1633
- if (seg.type === "reply") return {
1573
+ }),
1574
+ image: (seg) => canonicalMedia("image", seg.data.file, seg.data.url),
1575
+ record: (seg) => canonicalMedia("voice", seg.data.file, seg.data.url),
1576
+ video: (seg) => canonicalMedia("video", seg.data.file, seg.data.url),
1577
+ reply: (seg) => ({
1634
1578
  type: "reply",
1635
1579
  messageId: seg.data.id
1636
- };
1637
- if (seg.type === "forward") return {
1580
+ }),
1581
+ forward: (seg) => ({
1638
1582
  type: "forward",
1639
1583
  messageIds: [seg.data.id]
1640
- };
1641
- if (seg.type === "json") return {
1584
+ }),
1585
+ json: (seg) => ({
1642
1586
  type: "json",
1643
1587
  raw: seg.data.data
1644
- };
1645
- return {
1588
+ }),
1589
+ xml: (seg) => ({
1646
1590
  type: "xml",
1647
1591
  raw: seg.data.data
1648
- };
1592
+ })
1593
+ };
1594
+ /** OB11 segment → canonical 元素(未知 type 兜底按 xml 处理,保持既有行为)。 */
1595
+ function segmentToCanonical(seg) {
1596
+ const builder = SEGMENT_TO_CANONICAL[seg.type];
1597
+ if (builder !== void 0) return builder(seg);
1598
+ const xmlBuilder = SEGMENT_TO_CANONICAL["xml"];
1599
+ return xmlBuilder === void 0 ? null : xmlBuilder(seg);
1649
1600
  }
1650
1601
  /** 已知 CQ 类型 → segment 构造器。 */
1651
1602
  const CQ_SEGMENT_BUILDERS = {
@@ -1707,6 +1658,77 @@ function segmentsToCqMessage(segments) {
1707
1658
  return out;
1708
1659
  }
1709
1660
  //#endregion
1661
+ //#region src/onebot11/helper/config.ts
1662
+ /**
1663
+ * OneBot 11 协议配置(zod schema,归属本包,ADR-012)
1664
+ * 协议配置 schema 在各自协议包,kernel 只提供 ConfigBase 基类。
1665
+ *
1666
+ * 2026-08-07 多实例化(P2-18):对齐 NapCat——httpServers / httpPostUrls / wsServers /
1667
+ * wsReverseUrls 四个数组实例(每实例可覆盖全局 token);旧单对象字段 http/httpPost/ws/
1668
+ * wsReverse 废弃(zod strip 静默忽略,不兼容迁移)。
1669
+ */
1670
+ /** HTTP 反向服务器默认端口。 */
1671
+ const DEFAULT_HTTP_PORT = 3e3;
1672
+ /** 反向 WS server 默认端口。 */
1673
+ const DEFAULT_WS_PORT = 3001;
1674
+ /** 心跳 meta 事件默认间隔(毫秒)。 */
1675
+ const DEFAULT_HEARTBEAT_INTERVAL_MS = 3e3;
1676
+ /** WS 传输 ping 默认间隔(毫秒)。 */
1677
+ const DEFAULT_WS_HEARTBEAT_MS = 3e4;
1678
+ /** WS 反向断线重连默认延迟(毫秒)。 */
1679
+ const DEFAULT_RECONNECT_DELAY_MS = 5e3;
1680
+ /** 消息内容格式(NapCat messagePostFormat)。 */
1681
+ const MESSAGE_FORMATS = ["array", "string"];
1682
+ /** HTTP 反向服务器实例(第三方 POST 指令入口)。 */
1683
+ const httpServerSchema = createHttpServerSchema(DEFAULT_HTTP_PORT);
1684
+ /** HTTP 正向上报实例(Webhook 事件推送)。 */
1685
+ const httpPostSchema = z.object({
1686
+ enabled: z.boolean().default(false),
1687
+ url: z.string().optional(),
1688
+ /** 实例级 token,覆盖全局 token(缺省继承全局)。 */
1689
+ token: z.string().optional(),
1690
+ /** 上报超时(毫秒),缺省不超时。 */
1691
+ timeoutMs: z.number().int().optional()
1692
+ });
1693
+ /** 反向 WS server 实例(第三方 WS 连入,带 WS ping 间隔扩展字段)。 */
1694
+ const wsServerSchema = createWsServerSchema(DEFAULT_WS_PORT).extend({
1695
+ /** WS ping 间隔(毫秒)。 */
1696
+ heartbeatInterval: z.number().int().default(DEFAULT_WS_HEARTBEAT_MS) });
1697
+ /** 正向 WS client 实例(主动连接第三方,双向)。 */
1698
+ const wsReverseSchema = z.object({
1699
+ enabled: z.boolean().default(false),
1700
+ url: z.string().optional(),
1701
+ /** 实例级 token,覆盖全局 token(缺省继承全局)。 */
1702
+ token: z.string().optional(),
1703
+ /** 断线重连延迟(毫秒)。 */
1704
+ reconnectDelayMs: z.number().int().default(DEFAULT_RECONNECT_DELAY_MS),
1705
+ /** 最大重连次数(缺省无限)。 */
1706
+ maxReconnectAttempts: z.number().int().optional(),
1707
+ /** wss:// 是否校验证书(自签证书场景设 false,对齐 NapCat enableSelfSigned)。 */
1708
+ rejectUnauthorized: z.boolean().default(true),
1709
+ /** WS ping 间隔(毫秒)。 */
1710
+ heartbeatInterval: z.number().int().default(DEFAULT_WS_HEARTBEAT_MS)
1711
+ });
1712
+ /** OB11 配置 schema。 */
1713
+ const ob11ConfigSchema = z.object({
1714
+ /** 鉴权 token(全局默认,实例未指定时继承)。 */
1715
+ token: z.string().optional(),
1716
+ /** 心跳 meta 事件间隔(毫秒),0 关闭心跳。 */
1717
+ heartbeatInterval: z.number().int().default(DEFAULT_HEARTBEAT_INTERVAL_MS),
1718
+ /** 是否上报机器人自己发的消息(缺省 false = OB11 规范行为)。 */
1719
+ reportSelfMessage: z.boolean().default(false),
1720
+ /** 消息内容格式:array = 消息段数组(标准),string = CQ 码字符串。 */
1721
+ messagePostFormat: z.enum(MESSAGE_FORMATS).default("array"),
1722
+ /** HTTP 反向服务器列表。 */
1723
+ httpServers: z.array(httpServerSchema).default([]),
1724
+ /** HTTP 正向上报列表。 */
1725
+ httpPostUrls: z.array(httpPostSchema).default([]),
1726
+ /** 反向 WS server 列表。 */
1727
+ wsServers: z.array(wsServerSchema).default([]),
1728
+ /** 正向 WS client 列表。 */
1729
+ wsReverseUrls: z.array(wsReverseSchema).default([])
1730
+ });
1731
+ //#endregion
1710
1732
  //#region src/onebot11/helper/data.ts
1711
1733
  /** canonical 元素数组 → OB11 segment 数组(无法表达的元素静默跳过)。 */
1712
1734
  function canonicalToSegments(elements) {
@@ -3080,6 +3102,9 @@ var TranslateEn2ZhAction = class extends BaseAction {
3080
3102
  * OneBot 11 动作注册表(ADR-013 延伸)
3081
3103
  * 各协议维护自己的 ActionRegistry,由协议 adapter 挂到请求分发。
3082
3104
  * P2-16:deps 收敛为 { api: OneBotApi } 单聚合对象(基础设施第一项)。
3105
+ *
3106
+ * 同时是 action 域 barrel:re-export 全部动作类 + error-map + resolve-uid,
3107
+ * 协议外部只从本入口消费动作面。
3083
3108
  */
3084
3109
  /** 构建 OB11 动作注册表(所有 OB11 动作在此注册,按组拆分控制行数)。 */
3085
3110
  function createOb11ActionRegistry(deps) {
@@ -3170,7 +3195,7 @@ function registerMsgActions(registry, deps) {
3170
3195
  function registerQueryActions(registry, deps) {
3171
3196
  registry.register(new GetLoginInfoAction(deps.api.self));
3172
3197
  registry.register(new GetGroupInfoAction(deps.api));
3173
- registry.register(new GetGroupListAction(deps.api.groupApi));
3198
+ registry.register(new GetGroupListAction(deps.api));
3174
3199
  registry.register(new GetGroupMemberInfoAction(deps.api));
3175
3200
  registry.register(new GetGroupMemberListAction(deps.api));
3176
3201
  registry.register(new GetFriendListAction(deps.api.friendApi));