@napuketto/adapter 0.0.12 → 0.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/dist/core/index.d.mts +2 -2
- package/dist/core/index.mjs +2 -2
- package/dist/{core-DE2jZQR7.mjs → core-of7sLiQX.mjs} +36 -2
- package/dist/core-of7sLiQX.mjs.map +1 -0
- package/dist/{index-Dv6QGLkY.d.mts → index-CDKj-jus.d.mts} +9 -2
- package/dist/index-CDKj-jus.d.mts.map +1 -0
- package/dist/onebot11/index.d.mts +1 -1
- package/dist/onebot11/index.mjs +12 -1
- package/dist/onebot11/index.mjs.map +1 -1
- package/dist/satori/index.d.mts +1 -1
- package/dist/satori/index.d.mts.map +1 -1
- package/dist/satori/index.mjs +33 -25
- package/dist/satori/index.mjs.map +1 -1
- package/package.json +4 -4
- package/dist/core-DE2jZQR7.mjs.map +0 -1
- package/dist/index-Dv6QGLkY.d.mts.map +0 -1
package/dist/satori/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as ProtocolConfig, n as BaseProtocolAdapter, s as ActionRegistry } from "../index-CDKj-jus.mjs";
|
|
2
2
|
import "../gray-tip-CcpfI1Og.mjs";
|
|
3
3
|
import { CanonicalElement, FriendApi, GroupApi, GroupCache, GroupNotifyApi, KernelErrorCode, MsgApi, MsgEventChannel, Peer, ProfileApi } from "@napuketto/kernel";
|
|
4
4
|
import { ZodType, z } from "zod";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/satori/action/base-action.ts","../../src/satori/helper/element/element.ts","../../src/satori/helper/element/canonical.ts","../../src/satori/helper/element/deps.ts","../../src/satori/helper/element/element-convert.ts","../../src/satori/api/satori-api.ts","../../src/satori/action/registry.ts","../../src/satori/action/index.ts","../../src/satori/helper/config.ts","../../src/satori/helper/error.ts","../../src/satori/types/resource.ts","../../src/satori/helper/translate.ts","../../src/satori/adapter.ts","../../src/satori/event/translate.ts","../../src/satori/types/api.ts","../../src/satori/types/event.ts","../../src/satori/transport.ts"],"mappings":";;;;;;;cAYa,0BAA0B;WAC1B;EAET,YAAY,gBAAgB;;;;;;uBAeV,iBAAiB,UAAU;;oBAE3B;;oBAEA,QAAQ,QAAQ;;EAG5B,IAAI,mBAAmB,QAAQ;;qBAyBlB,QAAQ,SAAS,WAAW,QAAQ;;;;;UC3C1C;EACb;EACA,QAAQ;EACR,WAAW;EACX;;;;;;iBAsJY,cAAc,iBAAiB;;iBA4C/B,eAAe,UAAU;;;;UC/MxB;;EAEb,YAAY,mBAAmB,QAAQ;;;;;;iBAgGrB,0BAClB,UAAU,oBACV,OAAM,wBACP,QAAQ;;;;;;;;;;;UCtGM;;EAEb,WAAW,mBAAmB,QAAQ;;EAEtC;;;;;iBCOkB,0BAClB,UAAU,iBACV,MAAM,wBACP,QAAQ;;iBA2HW,wBAClB,iBACA,MAAM,wBACP,QAAQ;;;;UChIM;EACb,QAAQ;EACR,UAAU;EACV,gBAAgB;EAChB,WAAW;EACX,YAAY;;EAEZ;IAAQ;IAAa;;;EAErB;;EAEA,aAAa;;;cAIJ;WACA,QAAQ;WACR,UAAU;WACV,gBAAgB;WAChB,WAAW;WACX,YAAY;WACZ;IAAQ;IAAa;;WACrB;WACA;WACA,YAAY;;;;;mBAMJ;EAEjB,YAAY,MAAM;;EAalB,eAAe,mBAAmB;;;;;;EAS5B,YAAY,oBAAoB,QAAQ;;UAoBhC;;EAOd,SAAS,iBAAiB,QAAQ;;EAKlC,SAAS,iBAAiB,QAAQ;;EAKlC,mBAAmB;;;;;KCxGX,uBAAuB,eAAe;;;;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/satori/action/base-action.ts","../../src/satori/helper/element/element.ts","../../src/satori/helper/element/canonical.ts","../../src/satori/helper/element/deps.ts","../../src/satori/helper/element/element-convert.ts","../../src/satori/api/satori-api.ts","../../src/satori/action/registry.ts","../../src/satori/action/index.ts","../../src/satori/helper/config.ts","../../src/satori/helper/error.ts","../../src/satori/types/resource.ts","../../src/satori/helper/translate.ts","../../src/satori/adapter.ts","../../src/satori/event/translate.ts","../../src/satori/types/api.ts","../../src/satori/types/event.ts","../../src/satori/transport.ts"],"mappings":"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"}
|
package/dist/satori/index.mjs
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { o as ActionRegistry, r as BaseProtocolAdapter, t as ensureSilk } from "../core-of7sLiQX.mjs";
|
|
2
2
|
import { i as createWsServerSchema, n as collectGrayTipUids, r as createHttpServerSchema, t as forEachRawMessage } from "../raw-message-DfHdOVHi.mjs";
|
|
3
3
|
import { ChatType, GrayTipSubType, NTGroupRequestOperateTypes, TipGroupElementType, isKernelError, kernelError, toCanonicalElements } from "@napuketto/kernel";
|
|
4
|
+
import { mkdir, writeFile } from "node:fs/promises";
|
|
4
5
|
import { z } from "zod";
|
|
5
6
|
import { join } from "node:path";
|
|
6
7
|
import { HttpServer, WsServer } from "@napuketto/network";
|
|
7
|
-
import { mkdir, open, writeFile } from "node:fs/promises";
|
|
8
|
-
import { encodePcmToSilk } from "@napuketto/media";
|
|
9
8
|
//#region src/satori/helper/config.ts
|
|
10
9
|
/**
|
|
11
10
|
* Satori 协议配置(zod schema,归属本包,ADR-012)
|
|
@@ -538,7 +537,7 @@ function renderElement(el) {
|
|
|
538
537
|
* Satori 发方向资源处理(从 element-convert.ts 拆分,2026-08-08 FTA 优化)
|
|
539
538
|
*
|
|
540
539
|
* - resolveAsset:internal: 路径 / http(s) 下载 / 本地路径原样
|
|
541
|
-
* - ensureSilk
|
|
540
|
+
* - ensureSilk 已上移到 adapter core(core/media.ts,onebot11/satori 共用)
|
|
542
541
|
*/
|
|
543
542
|
/** internal:{platform}/{user.id}/{path} → 本地路径(取 _tmp 之后的路径,回落 cacheDir)。 */
|
|
544
543
|
function resolveInternalPath(src) {
|
|
@@ -576,26 +575,6 @@ async function downloadAsset(url, cacheDir) {
|
|
|
576
575
|
await writeFile(filePath, buf);
|
|
577
576
|
return filePath;
|
|
578
577
|
}
|
|
579
|
-
/** 语音转码:非 silk 输入(任意音频格式,经 media 归一化)转 silk(QQ 语音格式)。 */
|
|
580
|
-
async function ensureSilk(path) {
|
|
581
|
-
try {
|
|
582
|
-
if ((await readFileHead(path)).startsWith("#!SILK")) return path;
|
|
583
|
-
return await encodePcmToSilk(path);
|
|
584
|
-
} catch {
|
|
585
|
-
return path;
|
|
586
|
-
}
|
|
587
|
-
}
|
|
588
|
-
/** 读文件头 8 字节(判断格式)。 */
|
|
589
|
-
async function readFileHead(path) {
|
|
590
|
-
const handle = await open(path, "r");
|
|
591
|
-
try {
|
|
592
|
-
const buf = Buffer.alloc(8);
|
|
593
|
-
await handle.read(buf, 0, 8, 0);
|
|
594
|
-
return buf.toString("utf8");
|
|
595
|
-
} finally {
|
|
596
|
-
await handle.close();
|
|
597
|
-
}
|
|
598
|
-
}
|
|
599
578
|
//#endregion
|
|
600
579
|
//#region src/satori/helper/element/media-convert.ts
|
|
601
580
|
/** 解析元素媒体 src(空 → null 忽略),返回本地路径。 */
|
|
@@ -1081,6 +1060,35 @@ var GuildMemberKickAction = class extends BaseSatoriAction {
|
|
|
1081
1060
|
await this.deps.groupApi.kickMember(guildId, [uid], permanent === true);
|
|
1082
1061
|
}
|
|
1083
1062
|
};
|
|
1063
|
+
/** 毫秒 → 秒(QQ setMemberShutUp 单位;向下取整,0 解除禁言)。 */
|
|
1064
|
+
function msToSeconds(ms) {
|
|
1065
|
+
return Math.max(0, Math.floor(ms / 1e3));
|
|
1066
|
+
}
|
|
1067
|
+
/** guild.member.mute 参数。 */
|
|
1068
|
+
const guildMemberMuteSchema = z.object({
|
|
1069
|
+
guild_id: z.string(),
|
|
1070
|
+
user_id: z.string(),
|
|
1071
|
+
/** 禁言时长(毫秒,Satori 规范);0 解除禁言。 */
|
|
1072
|
+
duration: z.number()
|
|
1073
|
+
});
|
|
1074
|
+
/** 群成员禁言(Satori duration 毫秒 → kernel setMemberShutUp 秒)。 */
|
|
1075
|
+
var GuildMemberMuteAction = class extends BaseSatoriAction {
|
|
1076
|
+
name = "guild.member.mute";
|
|
1077
|
+
schema = guildMemberMuteSchema;
|
|
1078
|
+
deps;
|
|
1079
|
+
constructor(deps) {
|
|
1080
|
+
super();
|
|
1081
|
+
this.deps = deps;
|
|
1082
|
+
}
|
|
1083
|
+
async _handle(payload) {
|
|
1084
|
+
const { guild_id: guildId, user_id: userId, duration } = payload;
|
|
1085
|
+
const uid = (await this.deps.uinToUid([userId])).get(userId) ?? userId;
|
|
1086
|
+
await this.deps.groupApi.setMemberShutUp(guildId, [{
|
|
1087
|
+
uid,
|
|
1088
|
+
duration: msToSeconds(duration)
|
|
1089
|
+
}]);
|
|
1090
|
+
}
|
|
1091
|
+
};
|
|
1084
1092
|
/** guild.member.approve 参数(处理加群申请)。 */
|
|
1085
1093
|
const guildMemberApproveSchema = z.object({
|
|
1086
1094
|
message_id: z.string(),
|
|
@@ -1391,7 +1399,6 @@ const NOT_IMPLEMENTED = [
|
|
|
1391
1399
|
"channel.update",
|
|
1392
1400
|
"channel.delete",
|
|
1393
1401
|
"channel.mute",
|
|
1394
|
-
"guild.member.mute",
|
|
1395
1402
|
"guild.member.role.set",
|
|
1396
1403
|
"guild.member.role.unset",
|
|
1397
1404
|
"guild.role.list",
|
|
@@ -1423,6 +1430,7 @@ function createSatoriActionRegistry(deps) {
|
|
|
1423
1430
|
registry.register(new GuildMemberGetAction(guildDeps));
|
|
1424
1431
|
registry.register(new GuildMemberListAction(guildDeps));
|
|
1425
1432
|
registry.register(new GuildMemberKickAction(guildDeps));
|
|
1433
|
+
registry.register(new GuildMemberMuteAction(guildDeps));
|
|
1426
1434
|
registry.register(new GuildMemberApproveAction(guildDeps));
|
|
1427
1435
|
const friendDeps = api;
|
|
1428
1436
|
registry.register(new FriendListAction(friendDeps));
|