@zhin.js/adapter-kook 5.0.0 → 5.0.2

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.
Files changed (97) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +1 -0
  3. package/{skills/kook → agent}/PERMITS.md +1 -1
  4. package/agent/tools/blacklist.ts +33 -0
  5. package/agent/tools/create_role.ts +25 -0
  6. package/agent/tools/delete_role.ts +21 -0
  7. package/agent/tools/grant_role.ts +22 -0
  8. package/agent/tools/list_roles.ts +27 -0
  9. package/agent/tools/revoke_role.ts +22 -0
  10. package/dist/index.js +2 -2
  11. package/lib/agent/tools/blacklist.js +33 -0
  12. package/lib/agent/tools/blacklist.js.map +1 -0
  13. package/lib/agent/tools/create_role.js +25 -0
  14. package/lib/agent/tools/create_role.js.map +1 -0
  15. package/lib/agent/tools/delete_role.js +21 -0
  16. package/lib/agent/tools/delete_role.js.map +1 -0
  17. package/lib/agent/tools/grant_role.js +22 -0
  18. package/lib/agent/tools/grant_role.js.map +1 -0
  19. package/lib/agent/tools/list_roles.js +27 -0
  20. package/lib/agent/tools/list_roles.js.map +1 -0
  21. package/lib/agent/tools/revoke_role.js +22 -0
  22. package/lib/agent/tools/revoke_role.js.map +1 -0
  23. package/lib/{adapter.js → src/adapter.js} +4 -3
  24. package/lib/src/adapter.js.map +1 -0
  25. package/lib/{endpoint.js → src/endpoint.js} +93 -59
  26. package/lib/src/endpoint.js.map +1 -0
  27. package/lib/src/index.js +197 -0
  28. package/lib/src/index.js.map +1 -0
  29. package/lib/src/kook-agent-deps.js +10 -0
  30. package/lib/src/kook-agent-deps.js.map +1 -0
  31. package/lib/src/kook-asset-upload.js.map +1 -0
  32. package/lib/src/kook-inbound.js.map +1 -0
  33. package/lib/src/kook-msg-route.js.map +1 -0
  34. package/lib/{kook-side-events.js → src/kook-side-events.js} +52 -33
  35. package/lib/src/kook-side-events.js.map +1 -0
  36. package/lib/src/outbound-keyboard.js +66 -0
  37. package/lib/src/outbound-keyboard.js.map +1 -0
  38. package/lib/{outbound-media.js → src/outbound-media.js} +4 -1
  39. package/lib/src/outbound-media.js.map +1 -0
  40. package/lib/{outbound-sendable.js → src/outbound-sendable.js} +9 -0
  41. package/lib/src/outbound-sendable.js.map +1 -0
  42. package/lib/{platform-permit.js → src/platform-permit.js} +5 -2
  43. package/lib/src/platform-permit.js.map +1 -0
  44. package/lib/src/segment-mapper.js +2 -0
  45. package/lib/src/segment-mapper.js.map +1 -0
  46. package/lib/src/types.js.map +1 -0
  47. package/package.json +26 -16
  48. package/src/adapter.ts +5 -5
  49. package/src/endpoint.ts +97 -66
  50. package/src/index.ts +14 -168
  51. package/src/kook-agent-deps.ts +22 -0
  52. package/src/kook-side-events.ts +66 -38
  53. package/src/outbound-keyboard.ts +77 -0
  54. package/src/outbound-media.ts +1 -8
  55. package/src/outbound-sendable.ts +13 -1
  56. package/src/platform-permit.ts +5 -6
  57. package/src/segment-mapper.ts +1 -0
  58. package/src/types.ts +1 -2
  59. package/lib/adapter.d.ts +0 -29
  60. package/lib/adapter.d.ts.map +0 -1
  61. package/lib/adapter.js.map +0 -1
  62. package/lib/endpoint.d.ts +0 -155
  63. package/lib/endpoint.d.ts.map +0 -1
  64. package/lib/endpoint.js.map +0 -1
  65. package/lib/index.d.ts +0 -18
  66. package/lib/index.d.ts.map +0 -1
  67. package/lib/index.js +0 -350
  68. package/lib/index.js.map +0 -1
  69. package/lib/kook-asset-upload.d.ts +0 -12
  70. package/lib/kook-asset-upload.d.ts.map +0 -1
  71. package/lib/kook-asset-upload.js.map +0 -1
  72. package/lib/kook-inbound.d.ts +0 -6
  73. package/lib/kook-inbound.d.ts.map +0 -1
  74. package/lib/kook-inbound.js.map +0 -1
  75. package/lib/kook-msg-route.d.ts +0 -34
  76. package/lib/kook-msg-route.d.ts.map +0 -1
  77. package/lib/kook-msg-route.js.map +0 -1
  78. package/lib/kook-side-events.d.ts +0 -43
  79. package/lib/kook-side-events.d.ts.map +0 -1
  80. package/lib/kook-side-events.js.map +0 -1
  81. package/lib/outbound-media.d.ts +0 -10
  82. package/lib/outbound-media.d.ts.map +0 -1
  83. package/lib/outbound-media.js.map +0 -1
  84. package/lib/outbound-sendable.d.ts +0 -11
  85. package/lib/outbound-sendable.d.ts.map +0 -1
  86. package/lib/outbound-sendable.js.map +0 -1
  87. package/lib/platform-permit.d.ts +0 -14
  88. package/lib/platform-permit.d.ts.map +0 -1
  89. package/lib/platform-permit.js.map +0 -1
  90. package/lib/types.d.ts +0 -54
  91. package/lib/types.d.ts.map +0 -1
  92. package/lib/types.js.map +0 -1
  93. /package/{skills/kook/SKILL.md → agent/skills/kook.md} +0 -0
  94. /package/lib/{kook-asset-upload.js → src/kook-asset-upload.js} +0 -0
  95. /package/lib/{kook-inbound.js → src/kook-inbound.js} +0 -0
  96. /package/lib/{kook-msg-route.js → src/kook-msg-route.js} +0 -0
  97. /package/lib/{types.js → src/types.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,39 @@
1
1
  # @zhin.js/adapter-kook
2
2
 
3
+ ## 5.0.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 872c583: Slack 适配器 Phase 1/2:mrkdwn 出站、长消息切分、斜杠/按钮 ephemeral 反馈、入站 mrkdwn→Markdown、editMessage 对齐 core。
8
+
9
+ Logger 表格日志与 string-width 列宽;Agent AI Handler 框线表格与 introspection/MCP 导出;Core side-event 归一化;Schedule 时区规划;多适配器 side-event 与 API surface 更新。
10
+
11
+ - 872c583: fix: 代码格式优化
12
+ - Updated dependencies [872c583]
13
+ - Updated dependencies [872c583]
14
+ - @zhin.js/agent@1.0.3
15
+ - @zhin.js/client@2.0.5
16
+ - @zhin.js/contract@1.0.3
17
+ - @zhin.js/host-api@2.0.5
18
+ - @zhin.js/host-router@2.0.3
19
+ - @zhin.js/logger@1.0.74
20
+ - zhin.js@4.1.2
21
+
22
+ ## 5.0.1
23
+
24
+ ### Patch Changes
25
+
26
+ - 5cc9c03: fix: ai 优化
27
+ - b9b3881: fix: 增加游戏引擎以及部分游戏
28
+ - Updated dependencies [5cc9c03]
29
+ - Updated dependencies [7700903]
30
+ - @zhin.js/logger@1.0.73
31
+ - @zhin.js/client@2.0.4
32
+ - @zhin.js/contract@1.0.2
33
+ - @zhin.js/host-api@2.0.4
34
+ - @zhin.js/host-router@2.0.2
35
+ - zhin.js@4.1.1
36
+
3
37
  ## 5.0.0
4
38
 
5
39
  ### Patch Changes
package/README.md CHANGED
@@ -286,6 +286,7 @@ await endpoint.$removeReaction(message.$id, reactionId)
286
286
 
287
287
  ## 🔧 频道管理工具(AI 可调用)
288
288
 
289
+
289
290
  适配器自动注册了一系列频道管理工具,这些工具可以被 AI 调用,实现智能化的频道管理。
290
291
 
291
292
  ### 权限要求
@@ -20,4 +20,4 @@ KOOK `permission`:1=成员,2=管理员,4=频道主,5=频道管理员(
20
20
 
21
21
  ## 工厂映射
22
22
 
23
- `group_admin` → `guild_admin` · `group_owner` → `guild_owner`
23
+ `scene_admin` → `guild_admin` · `scene_owner` → `guild_owner`
@@ -0,0 +1,33 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+
6
+ export default defineTool<{ endpoint_id: string; guild_id: string; action: 'add' | 'remove'; user_id: string; remark?: string }>({
7
+ description: 'KOOK 服务器黑名单管理:添加/移除',
8
+ inputSchema: z.object({
9
+ endpoint_id: z.string().describe('Endpoint 名称'),
10
+ guild_id: z.string().describe('服务器 ID'),
11
+ action: z.enum(['add', 'remove']).describe('add|remove'),
12
+ user_id: z.string().describe('用户 ID'),
13
+ remark: z.string().optional().describe('备注(add 可选)'),
14
+ }),
15
+ platforms: ['kook'],
16
+ tags: ['kook'],
17
+ permissions: [platformPermit('guild_admin')],
18
+ async execute({ endpoint_id, guild_id, action, user_id, remark }: { endpoint_id: string; guild_id: string; action: 'add' | 'remove'; user_id: string; remark?: string }) {
19
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
20
+ switch (action) {
21
+ case 'add': {
22
+ const success = await endpoint.addToBlacklist(guild_id, user_id, remark);
23
+ return { success, message: success ? `已将 ${user_id} 加入黑名单` : '操作失败' };
24
+ }
25
+ case 'remove': {
26
+ const success = await endpoint.removeFromBlacklist(guild_id, user_id);
27
+ return { success, message: success ? `已将 ${user_id} 从黑名单移除` : '操作失败' };
28
+ }
29
+ default:
30
+ return { success: false, message: `未知操作: ${action}` };
31
+ }
32
+ },
33
+ });
@@ -0,0 +1,25 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+
6
+ export default defineTool<{ endpoint_id: string; guild_id: string; name: string }>({
7
+ description: '在 KOOK 服务器中创建新角色',
8
+ inputSchema: z.object({
9
+ endpoint_id: z.string().describe('Endpoint 名称'),
10
+ guild_id: z.string().describe('服务器 ID'),
11
+ name: z.string().describe('角色名称'),
12
+ }),
13
+ platforms: ['kook'],
14
+ tags: ['kook'],
15
+ permissions: [platformPermit('guild_owner')],
16
+ async execute({ endpoint_id, guild_id, name }: { endpoint_id: string; guild_id: string; name: string }) {
17
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
18
+ const role = await endpoint.createRole(guild_id, name);
19
+ return {
20
+ success: true,
21
+ message: `已创建角色 "${name}"`,
22
+ role: { id: role.role_id, name: role.name },
23
+ };
24
+ },
25
+ });
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+
6
+ export default defineTool<{ endpoint_id: string; guild_id: string; role_id: string }>({
7
+ description: '删除 KOOK 服务器中的角色',
8
+ inputSchema: z.object({
9
+ endpoint_id: z.string().describe('Endpoint 名称'),
10
+ guild_id: z.string().describe('服务器 ID'),
11
+ role_id: z.string().describe('角色 ID'),
12
+ }),
13
+ platforms: ['kook'],
14
+ tags: ['kook'],
15
+ permissions: [platformPermit('guild_owner')],
16
+ async execute({ endpoint_id, guild_id, role_id }: { endpoint_id: string; guild_id: string; role_id: string }) {
17
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
18
+ const success = await endpoint.deleteRole(guild_id, role_id);
19
+ return { success, message: success ? `已删除角色 ${role_id}` : '删除角色失败' };
20
+ },
21
+ });
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+
6
+ export default defineTool<{ endpoint_id: string; guild_id: string; user_id: string; role_id: string }>({
7
+ description: '给用户授予 KOOK 服务器角色',
8
+ inputSchema: z.object({
9
+ endpoint_id: z.string().describe('Endpoint 名称'),
10
+ guild_id: z.string().describe('服务器 ID'),
11
+ user_id: z.string().describe('用户 ID'),
12
+ role_id: z.string().describe('角色 ID'),
13
+ }),
14
+ platforms: ['kook'],
15
+ tags: ['kook'],
16
+ permissions: [platformPermit('manage_roles')],
17
+ async execute({ endpoint_id, guild_id, user_id, role_id }: { endpoint_id: string; guild_id: string; user_id: string; role_id: string }) {
18
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
19
+ const success = await endpoint.grantRole(guild_id, user_id, role_id);
20
+ return { success, message: success ? `已授予用户 ${user_id} 角色 ${role_id}` : '授予角色失败' };
21
+ },
22
+ });
@@ -0,0 +1,27 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
4
+
5
+ export default defineTool<{ endpoint_id: string; guild_id: string }>({
6
+ description: '获取 KOOK 服务器的角色列表',
7
+ inputSchema: z.object({
8
+ endpoint_id: z.string().describe('Endpoint 名称'),
9
+ guild_id: z.string().describe('服务器 ID'),
10
+ }),
11
+ platforms: ['kook'],
12
+ tags: ['kook'],
13
+ async execute({ endpoint_id, guild_id }: { endpoint_id: string; guild_id: string }) {
14
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
15
+ const roles = await endpoint.getRoleList(guild_id);
16
+ return {
17
+ roles: roles.map((r) => ({
18
+ id: String(r.role_id),
19
+ name: r.name,
20
+ color: r.color,
21
+ position: r.position,
22
+ permissions: r.permissions,
23
+ })),
24
+ count: roles.length,
25
+ };
26
+ },
27
+ });
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+
6
+ export default defineTool<{ endpoint_id: string; guild_id: string; user_id: string; role_id: string }>({
7
+ description: '撤销用户的 KOOK 服务器角色',
8
+ inputSchema: z.object({
9
+ endpoint_id: z.string().describe('Endpoint 名称'),
10
+ guild_id: z.string().describe('服务器 ID'),
11
+ user_id: z.string().describe('用户 ID'),
12
+ role_id: z.string().describe('角色 ID'),
13
+ }),
14
+ platforms: ['kook'],
15
+ tags: ['kook'],
16
+ permissions: [platformPermit('manage_roles')],
17
+ async execute({ endpoint_id, guild_id, user_id, role_id }: { endpoint_id: string; guild_id: string; user_id: string; role_id: string }) {
18
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
19
+ const success = await endpoint.revokeRole(guild_id, user_id, role_id);
20
+ return { success, message: success ? `已撤销用户 ${user_id} 的角色 ${role_id}` : '撤销角色失败' };
21
+ },
22
+ });
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import{useEffect as Fe,useState as p,useCallback as De}from"react";var Y="zhin_api_token",se="zhin_api_base";function re(){let t=localStorage.getItem(se)?.trim();return t?t.replace(/\/$/,""):typeof window<"u"?window.location.origin:""}function ie(){return localStorage.getItem(Y)}async function S(t,u){let f=ie(),s=new Headers(u?.headers);f&&s.set("Authorization",`Bearer ${f}`);let m=re(),l=typeof t=="string"&&t.startsWith("/")?`${m}${t}`:t,L=await fetch(l,{...u,headers:s});return L.status===401&&(localStorage.removeItem(Y),window.dispatchEvent(new CustomEvent("zhin:auth-required"))),L}import{forwardRef as Le,createElement as Ie}from"react";var O=(...t)=>t.filter((u,f,s)=>!!u&&u.trim()!==""&&s.indexOf(u)===f).join(" ").trim();var ee=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var ae=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(u,f,s)=>s?s.toUpperCase():f.toLowerCase());var E=t=>{let u=ae(t);return u.charAt(0).toUpperCase()+u.slice(1)};import{forwardRef as me,createElement as ue}from"react";var H={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var te=t=>{for(let u in t)if(u.startsWith("aria-")||u==="role"||u==="title")return!0;return!1};import{createContext as ce,useContext as ne,useMemo as We,createElement as Ee}from"react";var pe=ce({});var oe=()=>ne(pe);var de=me(({color:t,size:u,strokeWidth:f,absoluteStrokeWidth:s,className:m="",children:l,iconNode:L,...g},b)=>{let{size:C=24,strokeWidth:r=2,absoluteStrokeWidth:G=!1,color:c="currentColor",className:W=""}=oe()??{},h=s??G?Number(f??r)*24/Number(u??C):f??r;return ue("svg",{ref:b,...H,width:u??C??H.width,height:u??C??H.height,stroke:t??c,strokeWidth:h,className:O("lucide",W,m),...!l&&!te(g)&&{"aria-hidden":"true"},...g},[...L.map(([k,x])=>ue(k,x)),...Array.isArray(l)?l:[l]])});var d=(t,u)=>{let f=Le(({className:s,...m},l)=>Ie(de,{ref:l,iconNode:u,className:O(`lucide-${ee(E(t))}`,`lucide-${t}`,s),...m}));return f.displayName=E(t),f};var xe=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],n=d("loader-circle",xe);var Ce=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],w=d("plus",Ce);var he=[["path",{d:"M18.36 6.64A9 9 0 0 1 20.77 15",key:"dxknvb"}],["path",{d:"M6.16 6.16a9 9 0 1 0 12.68 12.68",key:"1x7qb5"}],["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],P=d("power-off",he);var Se=[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]],A=d("power",Se);var ge=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],B=d("refresh-cw",ge);var ke=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],M=d("server",ke);var we=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],F=d("shield",we);var Pe=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],D=d("trash-2",Pe);var Ae=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],y=d("wifi-off",Ae);var Be=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],R=d("wifi",Be);var Me=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],T=d("x",Me);import{Fragment as ye,jsx as a,jsxs as o}from"react/jsx-runtime";function V(){let[t,u]=p([]),[f,s]=p(!0),[m,l]=p(""),[L,g]=p("overview"),[b,C]=p({}),[r,G]=p(""),[c,W]=p(""),[h,k]=p([]),[x,N]=p(!1),[q,z]=p(""),[X,K]=p(!1),[Z,Q]=p(null),v=De(async()=>{s(!0),l("");try{let i=await(await S("/api/kook/endpoints")).json();i.success?u(i.data):l(i.error||"\u83B7\u53D6\u6570\u636E\u5931\u8D25")}catch{l("\u65E0\u6CD5\u8FDE\u63A5\u670D\u52A1\u5668")}finally{s(!1)}},[]);Fe(()=>{v()},[v]);let le=async(e,i)=>{C(I=>({...I,[e]:!0}));try{let I=i?"disconnect":"connect",U=await(await S(`/api/kook/endpoints/${encodeURIComponent(e)}/${I}`,{method:"POST"})).json();U.success||l(U.error||"\u64CD\u4F5C\u5931\u8D25"),await v()}catch{l("\u64CD\u4F5C\u5931\u8D25")}finally{C(I=>({...I,[e]:!1}))}},J=async()=>{if(!(!r||!c)){N(!0),k([]);try{let i=await(await S(`/api/kook/endpoints/${encodeURIComponent(r)}/guilds/${encodeURIComponent(c)}/roles`)).json();i.success?k(i.data):l(i.error||"\u83B7\u53D6\u89D2\u8272\u5931\u8D25")}catch{l("\u83B7\u53D6\u89D2\u8272\u5931\u8D25")}finally{N(!1)}}},_=async()=>{if(!(!r||!c||!q.trim())){K(!0);try{let i=await(await S(`/api/kook/endpoints/${encodeURIComponent(r)}/guilds/${encodeURIComponent(c)}/roles`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:q.trim()})})).json();i.success?(z(""),await J()):l(i.error||"\u521B\u5EFA\u89D2\u8272\u5931\u8D25")}catch{l("\u521B\u5EFA\u89D2\u8272\u5931\u8D25")}finally{K(!1)}}},fe=async e=>{if(!(!r||!c)){Q(e);try{let I=await(await S(`/api/kook/endpoints/${encodeURIComponent(r)}/guilds/${encodeURIComponent(c)}/roles/${encodeURIComponent(e)}`,{method:"DELETE"})).json();I.success?k($=>$.filter(U=>U.id!==e)):l(I.error||"\u5220\u9664\u89D2\u8272\u5931\u8D25")}catch{l("\u5220\u9664\u89D2\u8272\u5931\u8D25")}finally{Q(null)}}},j=t.filter(e=>e.connected);return o("div",{className:"p-6 max-w-5xl mx-auto",children:[o("div",{className:"flex items-center justify-between mb-6",children:[o("h1",{className:"text-2xl font-bold flex items-center gap-2",children:[a(M,{className:"w-6 h-6"})," KOOK \u673A\u5668\u4EBA"]}),o("button",{onClick:v,disabled:f,className:"flex items-center gap-1 px-3 py-1.5 rounded bg-sky-500 text-white hover:bg-sky-600 disabled:opacity-50 text-sm",children:[a(B,{className:`w-4 h-4 ${f?"animate-spin":""}`})," \u5237\u65B0"]})]}),m&&o("div",{className:"mb-4 p-3 bg-red-50 text-red-600 rounded border border-red-200 flex items-center justify-between",children:[a("span",{children:m}),a("button",{onClick:()=>l(""),className:"text-red-400 hover:text-red-600",children:a(T,{className:"w-4 h-4"})})]}),o("div",{className:"flex gap-1 mb-6 border-b",children:[a("button",{onClick:()=>g("overview"),className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors ${L==="overview"?"border-sky-500 text-sky-600":"border-transparent text-gray-500 hover:text-gray-700"}`,children:"\u6982\u89C8"}),a("button",{onClick:()=>g("roles"),className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors ${L==="roles"?"border-sky-500 text-sky-600":"border-transparent text-gray-500 hover:text-gray-700"}`,children:"\u89D2\u8272\u7BA1\u7406"})]}),L==="overview"&&o(ye,{children:[!f&&!t.length&&!m&&a("div",{className:"text-center text-gray-500 py-12",children:"\u6682\u65E0 KOOK Endpoint \u5B9E\u4F8B"}),a("div",{className:"grid gap-4 md:grid-cols-2",children:t.map(e=>o("div",{className:"border rounded-lg p-4 bg-card shadow-sm",children:[o("div",{className:"flex items-center justify-between mb-3",children:[a("span",{className:"font-medium text-lg",children:e.name}),e.connected?o("span",{className:"flex items-center gap-1 text-green-600 text-sm",children:[a(R,{className:"w-4 h-4"})," \u5728\u7EBF"]}):o("span",{className:"flex items-center gap-1 text-gray-400 text-sm",children:[a(y,{className:"w-4 h-4"})," \u79BB\u7EBF"]})]}),a("div",{className:"text-sm text-gray-600 mb-3",children:o("div",{className:"flex justify-between",children:[a("span",{children:"\u670D\u52A1\u5668"}),a("span",{className:"font-mono",children:e.guildCount})]})}),o("button",{onClick:()=>le(e.name,e.connected),disabled:b[e.name],className:`flex items-center gap-1 px-3 py-1.5 rounded text-sm text-white ${e.connected?"bg-red-500 hover:bg-red-600":"bg-green-500 hover:bg-green-600"} disabled:opacity-50`,children:[b[e.name]?a(n,{className:"w-3.5 h-3.5 animate-spin"}):e.connected?a(P,{className:"w-3.5 h-3.5"}):a(A,{className:"w-3.5 h-3.5"}),e.connected?"\u65AD\u5F00":"\u8FDE\u63A5"]})]},e.name))})]}),L==="roles"&&o("div",{className:"space-y-4",children:[o("div",{className:"flex flex-wrap items-end gap-3",children:[o("div",{children:[a("label",{className:"block text-xs text-gray-500 mb-1",children:"\u673A\u5668\u4EBA"}),o("select",{value:r,onChange:e=>G(e.target.value),className:"border rounded px-2 py-1.5 text-sm min-w-[140px]",children:[a("option",{value:"",children:"--"}),j.map(e=>a("option",{value:e.name,children:e.name},e.name))]})]}),o("div",{children:[a("label",{className:"block text-xs text-gray-500 mb-1",children:"\u670D\u52A1\u5668 ID"}),a("input",{value:c,onChange:e=>W(e.target.value),placeholder:"\u8F93\u5165\u670D\u52A1\u5668 ID",className:"border rounded px-2 py-1.5 text-sm w-[180px]"})]}),o("button",{onClick:J,disabled:!r||!c||x,className:"px-3 py-1.5 rounded bg-sky-500 text-white text-sm hover:bg-sky-600 disabled:opacity-50 flex items-center gap-1",children:[x?a(n,{className:"w-3.5 h-3.5 animate-spin"}):a(F,{className:"w-3.5 h-3.5"})," \u67E5\u8BE2\u89D2\u8272"]})]}),!j.length&&a("div",{className:"text-center text-gray-500 py-4",children:"\u6682\u65E0\u5728\u7EBF Endpoint"}),r&&c&&h.length>0&&o("div",{className:"flex items-center gap-2",children:[a("input",{value:q,onChange:e=>z(e.target.value),placeholder:"\u65B0\u89D2\u8272\u540D\u79F0",className:"border rounded px-2 py-1.5 text-sm flex-1 max-w-[240px]",onKeyDown:e=>e.key==="Enter"&&_()}),o("button",{onClick:_,disabled:X||!q.trim(),className:"px-3 py-1.5 rounded bg-green-500 text-white text-sm hover:bg-green-600 disabled:opacity-50 flex items-center gap-1",children:[X?a(n,{className:"w-3.5 h-3.5 animate-spin"}):a(w,{className:"w-3.5 h-3.5"})," \u521B\u5EFA"]})]}),x&&a("div",{className:"flex justify-center py-8",children:a(n,{className:"w-6 h-6 animate-spin text-sky-500"})}),!x&&h.length>0&&a("div",{className:"border rounded-lg bg-card shadow-sm divide-y",children:h.map(e=>o("div",{className:"flex items-center px-4 py-2.5 hover:bg-gray-50",children:[a("div",{className:"w-3 h-3 rounded-full mr-3",style:{backgroundColor:e.color?`#${e.color.toString(16).padStart(6,"0")}`:"#999"}}),a("span",{className:"font-medium text-sm flex-1",children:e.name}),o("span",{className:"text-xs text-gray-400 mr-4",children:["ID: ",e.id]}),a("button",{onClick:()=>fe(e.id),disabled:Z===e.id,className:"text-gray-400 hover:text-red-500 disabled:opacity-50",children:Z===e.id?a(n,{className:"w-4 h-4 animate-spin"}):a(D,{className:"w-4 h-4"})})]},e.id))}),!x&&r&&c&&!h.length&&a("div",{className:"text-center text-gray-400 py-6",children:"\u6682\u65E0\u89D2\u8272\u6570\u636E\uFF0C\u8BF7\u5148\u67E5\u8BE2"})]})]})}function Ea(t){t.addRoute({path:"/kook",name:"KOOK",element:t.React.createElement(V,{hostReact:t.React})}),t.addTool({id:"kook",name:"KOOK",path:"/kook"})}export{Ea as register};
1
+ import{useEffect as De,useState as p,useCallback as Fe}from"react";var Y="zhin_api_token",se="zhin_api_base";function re(){let t=localStorage.getItem(se)?.trim();return t?t.replace(/\/$/,""):typeof window<"u"?window.location.origin:""}function ie(){return localStorage.getItem(Y)}async function S(t,u){let f=ie(),s=new Headers(u?.headers);f&&s.set("Authorization",`Bearer ${f}`);let m=re(),l=typeof t=="string"&&t.startsWith("/")?`${m}${t}`:t,L=await fetch(l,{...u,headers:s});return L.status===401&&(localStorage.removeItem(Y),window.dispatchEvent(new CustomEvent("zhin:auth-required"))),L}import{forwardRef as Le,createElement as Ie}from"react";var O=(...t)=>t.filter((u,f,s)=>!!u&&u.trim()!==""&&s.indexOf(u)===f).join(" ").trim();var ee=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var ae=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(u,f,s)=>s?s.toUpperCase():f.toLowerCase());var E=t=>{let u=ae(t);return u.charAt(0).toUpperCase()+u.slice(1)};import{forwardRef as me,createElement as ue}from"react";var H={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var te=t=>{for(let u in t)if(u.startsWith("aria-")||u==="role"||u==="title")return!0;return!1};import{createContext as ce,useContext as ne,useMemo as We,createElement as Ee}from"react";var pe=ce({});var oe=()=>ne(pe);var de=me(({color:t,size:u,strokeWidth:f,absoluteStrokeWidth:s,className:m="",children:l,iconNode:L,...g},b)=>{let{size:C=24,strokeWidth:r=2,absoluteStrokeWidth:G=!1,color:c="currentColor",className:W=""}=oe()??{},h=s??G?Number(f??r)*24/Number(u??C):f??r;return ue("svg",{ref:b,...H,width:u??C??H.width,height:u??C??H.height,stroke:t??c,strokeWidth:h,className:O("lucide",W,m),...!l&&!te(g)&&{"aria-hidden":"true"},...g},[...L.map(([k,x])=>ue(k,x)),...Array.isArray(l)?l:[l]])});var d=(t,u)=>{let f=Le(({className:s,...m},l)=>Ie(de,{ref:l,iconNode:u,className:O(`lucide-${ee(E(t))}`,`lucide-${t}`,s),...m}));return f.displayName=E(t),f};var xe=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],n=d("loader-circle",xe);var Ce=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],w=d("plus",Ce);var he=[["path",{d:"M18.36 6.64A9 9 0 0 1 20.77 15",key:"dxknvb"}],["path",{d:"M6.16 6.16a9 9 0 1 0 12.68 12.68",key:"1x7qb5"}],["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],P=d("power-off",he);var Se=[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]],A=d("power",Se);var ge=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],B=d("refresh-cw",ge);var ke=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],M=d("server",ke);var we=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],D=d("shield",we);var Pe=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],F=d("trash-2",Pe);var Ae=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],y=d("wifi-off",Ae);var Be=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],R=d("wifi",Be);var Me=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],T=d("x",Me);import{Fragment as ye,jsx as a,jsxs as o}from"react/jsx-runtime";function V(){let[t,u]=p([]),[f,s]=p(!0),[m,l]=p(""),[L,g]=p("overview"),[b,C]=p({}),[r,G]=p(""),[c,W]=p(""),[h,k]=p([]),[x,N]=p(!1),[q,z]=p(""),[X,K]=p(!1),[Z,Q]=p(null),v=Fe(async()=>{s(!0),l("");try{let i=await(await S("/api/kook/endpoints")).json();i.success?u(i.data):l(i.error||"\u83B7\u53D6\u6570\u636E\u5931\u8D25")}catch{l("\u65E0\u6CD5\u8FDE\u63A5\u670D\u52A1\u5668")}finally{s(!1)}},[]);De(()=>{v()},[v]);let le=async(e,i)=>{C(I=>({...I,[e]:!0}));try{let I=i?"disconnect":"connect",U=await(await S(`/api/kook/endpoints/${encodeURIComponent(e)}/${I}`,{method:"POST"})).json();U.success||l(U.error||"\u64CD\u4F5C\u5931\u8D25"),await v()}catch{l("\u64CD\u4F5C\u5931\u8D25")}finally{C(I=>({...I,[e]:!1}))}},J=async()=>{if(!(!r||!c)){N(!0),k([]);try{let i=await(await S(`/api/kook/endpoints/${encodeURIComponent(r)}/guilds/${encodeURIComponent(c)}/roles`)).json();i.success?k(i.data):l(i.error||"\u83B7\u53D6\u89D2\u8272\u5931\u8D25")}catch{l("\u83B7\u53D6\u89D2\u8272\u5931\u8D25")}finally{N(!1)}}},_=async()=>{if(!(!r||!c||!q.trim())){K(!0);try{let i=await(await S(`/api/kook/endpoints/${encodeURIComponent(r)}/guilds/${encodeURIComponent(c)}/roles`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:q.trim()})})).json();i.success?(z(""),await J()):l(i.error||"\u521B\u5EFA\u89D2\u8272\u5931\u8D25")}catch{l("\u521B\u5EFA\u89D2\u8272\u5931\u8D25")}finally{K(!1)}}},fe=async e=>{if(!(!r||!c)){Q(e);try{let I=await(await S(`/api/kook/endpoints/${encodeURIComponent(r)}/guilds/${encodeURIComponent(c)}/roles/${encodeURIComponent(e)}`,{method:"DELETE"})).json();I.success?k($=>$.filter(U=>U.id!==e)):l(I.error||"\u5220\u9664\u89D2\u8272\u5931\u8D25")}catch{l("\u5220\u9664\u89D2\u8272\u5931\u8D25")}finally{Q(null)}}},j=t.filter(e=>e.connected);return o("div",{className:"p-6 max-w-5xl mx-auto",children:[o("div",{className:"flex items-center justify-between mb-6",children:[o("h1",{className:"text-2xl font-bold flex items-center gap-2",children:[a(M,{className:"w-6 h-6"})," KOOK \u673A\u5668\u4EBA"]}),o("button",{onClick:v,disabled:f,className:"flex items-center gap-1 px-3 py-1.5 rounded bg-sky-500 text-white hover:bg-sky-600 disabled:opacity-50 text-sm",children:[a(B,{className:`w-4 h-4 ${f?"animate-spin":""}`})," \u5237\u65B0"]})]}),m&&o("div",{className:"mb-4 p-3 bg-red-50 text-red-600 rounded border border-red-200 flex items-center justify-between",children:[a("span",{children:m}),a("button",{onClick:()=>l(""),className:"text-red-400 hover:text-red-600",children:a(T,{className:"w-4 h-4"})})]}),o("div",{className:"flex gap-1 mb-6 border-b",children:[a("button",{onClick:()=>g("overview"),className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors ${L==="overview"?"border-sky-500 text-sky-600":"border-transparent text-gray-500 hover:text-gray-700"}`,children:"\u6982\u89C8"}),a("button",{onClick:()=>g("roles"),className:`px-4 py-2 text-sm font-medium border-b-2 transition-colors ${L==="roles"?"border-sky-500 text-sky-600":"border-transparent text-gray-500 hover:text-gray-700"}`,children:"\u89D2\u8272\u7BA1\u7406"})]}),L==="overview"&&o(ye,{children:[!f&&!t.length&&!m&&a("div",{className:"text-center text-gray-500 py-12",children:"\u6682\u65E0 KOOK Endpoint \u5B9E\u4F8B"}),a("div",{className:"grid gap-4 md:grid-cols-2",children:t.map(e=>o("div",{className:"border rounded-lg p-4 bg-card shadow-sm",children:[o("div",{className:"flex items-center justify-between mb-3",children:[a("span",{className:"font-medium text-lg",children:e.name}),e.connected?o("span",{className:"flex items-center gap-1 text-green-600 text-sm",children:[a(R,{className:"w-4 h-4"})," \u5728\u7EBF"]}):o("span",{className:"flex items-center gap-1 text-gray-400 text-sm",children:[a(y,{className:"w-4 h-4"})," \u79BB\u7EBF"]})]}),a("div",{className:"text-sm text-gray-600 mb-3",children:o("div",{className:"flex justify-between",children:[a("span",{children:"\u670D\u52A1\u5668"}),a("span",{className:"font-mono",children:e.guildCount})]})}),o("button",{onClick:()=>le(e.name,e.connected),disabled:b[e.name],className:`flex items-center gap-1 px-3 py-1.5 rounded text-sm text-white ${e.connected?"bg-red-500 hover:bg-red-600":"bg-green-500 hover:bg-green-600"} disabled:opacity-50`,children:[b[e.name]?a(n,{className:"w-3.5 h-3.5 animate-spin"}):e.connected?a(P,{className:"w-3.5 h-3.5"}):a(A,{className:"w-3.5 h-3.5"}),e.connected?"\u65AD\u5F00":"\u8FDE\u63A5"]})]},e.name))})]}),L==="roles"&&o("div",{className:"space-y-4",children:[o("div",{className:"flex flex-wrap items-end gap-3",children:[o("div",{children:[a("label",{className:"block text-xs text-gray-500 mb-1",children:"\u673A\u5668\u4EBA"}),o("select",{value:r,onChange:e=>G(e.target.value),className:"border rounded px-2 py-1.5 text-sm min-w-[140px]",children:[a("option",{value:"",children:"--"}),j.map(e=>a("option",{value:e.name,children:e.name},e.name))]})]}),o("div",{children:[a("label",{className:"block text-xs text-gray-500 mb-1",children:"\u670D\u52A1\u5668 ID"}),a("input",{value:c,onChange:e=>W(e.target.value),placeholder:"\u8F93\u5165\u670D\u52A1\u5668 ID",className:"border rounded px-2 py-1.5 text-sm w-[180px]"})]}),o("button",{onClick:J,disabled:!r||!c||x,className:"px-3 py-1.5 rounded bg-sky-500 text-white text-sm hover:bg-sky-600 disabled:opacity-50 flex items-center gap-1",children:[x?a(n,{className:"w-3.5 h-3.5 animate-spin"}):a(D,{className:"w-3.5 h-3.5"})," \u67E5\u8BE2\u89D2\u8272"]})]}),!j.length&&a("div",{className:"text-center text-gray-500 py-4",children:"\u6682\u65E0\u5728\u7EBF Endpoint"}),r&&c&&h.length>0&&o("div",{className:"flex items-center gap-2",children:[a("input",{value:q,onChange:e=>z(e.target.value),placeholder:"\u65B0\u89D2\u8272\u540D\u79F0",className:"border rounded px-2 py-1.5 text-sm flex-1 max-w-[240px]",onKeyDown:e=>e.key==="Enter"&&_()}),o("button",{onClick:_,disabled:X||!q.trim(),className:"px-3 py-1.5 rounded bg-green-500 text-white text-sm hover:bg-green-600 disabled:opacity-50 flex items-center gap-1",children:[X?a(n,{className:"w-3.5 h-3.5 animate-spin"}):a(w,{className:"w-3.5 h-3.5"})," \u521B\u5EFA"]})]}),x&&a("div",{className:"flex justify-center py-8",children:a(n,{className:"w-6 h-6 animate-spin text-sky-500"})}),!x&&h.length>0&&a("div",{className:"border rounded-lg bg-card shadow-sm divide-y",children:h.map(e=>o("div",{className:"flex items-center px-4 py-2.5 hover:bg-gray-50",children:[a("div",{className:"w-3 h-3 rounded-full mr-3",style:{backgroundColor:e.color?`#${e.color.toString(16).padStart(6,"0")}`:"#999"}}),a("span",{className:"font-medium text-sm flex-1",children:e.name}),o("span",{className:"text-xs text-gray-400 mr-4",children:["ID: ",e.id]}),a("button",{onClick:()=>fe(e.id),disabled:Z===e.id,className:"text-gray-400 hover:text-red-500 disabled:opacity-50",children:Z===e.id?a(n,{className:"w-4 h-4 animate-spin"}):a(F,{className:"w-4 h-4"})})]},e.id))}),!x&&r&&c&&!h.length&&a("div",{className:"text-center text-gray-400 py-6",children:"\u6682\u65E0\u89D2\u8272\u6570\u636E\uFF0C\u8BF7\u5148\u67E5\u8BE2"})]})]})}function Ea(t){t.addRoute({path:"/kook",name:"KOOK",element:t.React.createElement(V,{hostReact:t.React})}),t.addTool({id:"kook",name:"KOOK",path:"/kook"})}export{Ea as register};
2
2
  /*! Bundled license information:
3
3
 
4
4
  lucide-react/dist/esm/shared/src/utils/mergeClasses.mjs:
@@ -23,7 +23,7 @@ lucide-react/dist/esm/icons/wifi.mjs:
23
23
  lucide-react/dist/esm/icons/x.mjs:
24
24
  lucide-react/dist/esm/lucide-react.mjs:
25
25
  (**
26
- * @license lucide-react v1.21.0 - ISC
26
+ * @license lucide-react v1.23.0 - ISC
27
27
  *
28
28
  * This source code is licensed under the ISC license.
29
29
  * See the LICENSE file in the root directory of this source tree.
@@ -0,0 +1,33 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+ export default defineTool({
6
+ description: 'KOOK 服务器黑名单管理:添加/移除',
7
+ inputSchema: z.object({
8
+ endpoint_id: z.string().describe('Endpoint 名称'),
9
+ guild_id: z.string().describe('服务器 ID'),
10
+ action: z.enum(['add', 'remove']).describe('add|remove'),
11
+ user_id: z.string().describe('用户 ID'),
12
+ remark: z.string().optional().describe('备注(add 可选)'),
13
+ }),
14
+ platforms: ['kook'],
15
+ tags: ['kook'],
16
+ permissions: [platformPermit('guild_admin')],
17
+ async execute({ endpoint_id, guild_id, action, user_id, remark }) {
18
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
19
+ switch (action) {
20
+ case 'add': {
21
+ const success = await endpoint.addToBlacklist(guild_id, user_id, remark);
22
+ return { success, message: success ? `已将 ${user_id} 加入黑名单` : '操作失败' };
23
+ }
24
+ case 'remove': {
25
+ const success = await endpoint.removeFromBlacklist(guild_id, user_id);
26
+ return { success, message: success ? `已将 ${user_id} 从黑名单移除` : '操作失败' };
27
+ }
28
+ default:
29
+ return { success: false, message: `未知操作: ${action}` };
30
+ }
31
+ },
32
+ });
33
+ //# sourceMappingURL=blacklist.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blacklist.js","sourceRoot":"","sources":["../../../agent/tools/blacklist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAe,UAAU,CAAwG;IAC/H,WAAW,EAAE,qBAAqB;IAClC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;QACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QACrC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;KACrD,CAAC;IACF,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5C,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAyG;QACrK,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;gBACzE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YACxE,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACtE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;YACzE,CAAC;YACD;gBACE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC;QAC1D,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+ export default defineTool({
6
+ description: '在 KOOK 服务器中创建新角色',
7
+ inputSchema: z.object({
8
+ endpoint_id: z.string().describe('Endpoint 名称'),
9
+ guild_id: z.string().describe('服务器 ID'),
10
+ name: z.string().describe('角色名称'),
11
+ }),
12
+ platforms: ['kook'],
13
+ tags: ['kook'],
14
+ permissions: [platformPermit('guild_owner')],
15
+ async execute({ endpoint_id, guild_id, name }) {
16
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
17
+ const role = await endpoint.createRole(guild_id, name);
18
+ return {
19
+ success: true,
20
+ message: `已创建角色 "${name}"`,
21
+ role: { id: role.role_id, name: role.name },
22
+ };
23
+ },
24
+ });
25
+ //# sourceMappingURL=create_role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create_role.js","sourceRoot":"","sources":["../../../agent/tools/create_role.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAe,UAAU,CAA0D;IACjF,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;KAClC,CAAC;IACF,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5C,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAA4D;QACrG,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACvD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,UAAU,IAAI,GAAG;YAC1B,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;SAC5C,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+ export default defineTool({
6
+ description: '删除 KOOK 服务器中的角色',
7
+ inputSchema: z.object({
8
+ endpoint_id: z.string().describe('Endpoint 名称'),
9
+ guild_id: z.string().describe('服务器 ID'),
10
+ role_id: z.string().describe('角色 ID'),
11
+ }),
12
+ platforms: ['kook'],
13
+ tags: ['kook'],
14
+ permissions: [platformPermit('guild_owner')],
15
+ async execute({ endpoint_id, guild_id, role_id }) {
16
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
17
+ const success = await endpoint.deleteRole(guild_id, role_id);
18
+ return { success, message: success ? `已删除角色 ${role_id}` : '删除角色失败' };
19
+ },
20
+ });
21
+ //# sourceMappingURL=delete_role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete_role.js","sourceRoot":"","sources":["../../../agent/tools/delete_role.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAe,UAAU,CAA6D;IACpF,WAAW,EAAE,iBAAiB;IAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;KACtC,CAAC;IACF,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5C,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAA+D;QAC3G,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvE,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+ export default defineTool({
6
+ description: '给用户授予 KOOK 服务器角色',
7
+ inputSchema: z.object({
8
+ endpoint_id: z.string().describe('Endpoint 名称'),
9
+ guild_id: z.string().describe('服务器 ID'),
10
+ user_id: z.string().describe('用户 ID'),
11
+ role_id: z.string().describe('角色 ID'),
12
+ }),
13
+ platforms: ['kook'],
14
+ tags: ['kook'],
15
+ permissions: [platformPermit('manage_roles')],
16
+ async execute({ endpoint_id, guild_id, user_id, role_id }) {
17
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
18
+ const success = await endpoint.grantRole(guild_id, user_id, role_id);
19
+ return { success, message: success ? `已授予用户 ${user_id} 角色 ${role_id}` : '授予角色失败' };
20
+ },
21
+ });
22
+ //# sourceMappingURL=grant_role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grant_role.js","sourceRoot":"","sources":["../../../agent/tools/grant_role.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAe,UAAU,CAA8E;IACrG,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;KACtC,CAAC;IACF,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IAC7C,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAgF;QACrI,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,OAAO,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrF,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
4
+ export default defineTool({
5
+ description: '获取 KOOK 服务器的角色列表',
6
+ inputSchema: z.object({
7
+ endpoint_id: z.string().describe('Endpoint 名称'),
8
+ guild_id: z.string().describe('服务器 ID'),
9
+ }),
10
+ platforms: ['kook'],
11
+ tags: ['kook'],
12
+ async execute({ endpoint_id, guild_id }) {
13
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
14
+ const roles = await endpoint.getRoleList(guild_id);
15
+ return {
16
+ roles: roles.map((r) => ({
17
+ id: String(r.role_id),
18
+ name: r.name,
19
+ color: r.color,
20
+ position: r.position,
21
+ permissions: r.permissions,
22
+ })),
23
+ count: roles.length,
24
+ };
25
+ },
26
+ });
27
+ //# sourceMappingURL=list_roles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list_roles.js","sourceRoot":"","sources":["../../../agent/tools/list_roles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAe,UAAU,CAA4C;IACnE,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACxC,CAAC;IACF,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,QAAQ,EAA8C;QACjF,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACnD,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvB,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;gBACrB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC;YACH,KAAK,EAAE,KAAK,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { defineTool } from '@zhin.js/agent/tools';
2
+ import { z } from 'zod';
3
+ import { platformPermit } from '../../src/platform-permit.js';
4
+ import { getKookAgentDeps } from '../../src/kook-agent-deps.js';
5
+ export default defineTool({
6
+ description: '撤销用户的 KOOK 服务器角色',
7
+ inputSchema: z.object({
8
+ endpoint_id: z.string().describe('Endpoint 名称'),
9
+ guild_id: z.string().describe('服务器 ID'),
10
+ user_id: z.string().describe('用户 ID'),
11
+ role_id: z.string().describe('角色 ID'),
12
+ }),
13
+ platforms: ['kook'],
14
+ tags: ['kook'],
15
+ permissions: [platformPermit('manage_roles')],
16
+ async execute({ endpoint_id, guild_id, user_id, role_id }) {
17
+ const endpoint = getKookAgentDeps().getEndpoint(endpoint_id);
18
+ const success = await endpoint.revokeRole(guild_id, user_id, role_id);
19
+ return { success, message: success ? `已撤销用户 ${user_id} 的角色 ${role_id}` : '撤销角色失败' };
20
+ },
21
+ });
22
+ //# sourceMappingURL=revoke_role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revoke_role.js","sourceRoot":"","sources":["../../../agent/tools/revoke_role.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,eAAe,UAAU,CAA8E;IACrG,WAAW,EAAE,kBAAkB;IAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;QACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;KACtC,CAAC;IACF,SAAS,EAAE,CAAC,MAAM,CAAC;IACnB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IAC7C,KAAK,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAgF;QACrI,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACtE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,OAAO,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACtF,CAAC;CACF,CAAC,CAAC"}
@@ -10,14 +10,15 @@ export class KookAdapter extends Adapter {
10
10
  html: 'image',
11
11
  markdown: 'origin',
12
12
  };
13
+ static interactivePolicy = 'native';
13
14
  constructor(plugin) {
14
15
  super(plugin, "kook", []);
15
16
  }
16
17
  createEndpoint(config) {
17
18
  return new KookEndpoint(this, config);
18
19
  }
19
- // ── IGroupManagement 标准群管方法 ──────────────────────────────────
20
- async kickMember(endpointId, sceneId, userId) {
20
+ // ── ISceneManagement 标准群管方法 ──────────────────────────────────
21
+ async removeMember(endpointId, sceneId, userId) {
21
22
  const endpoint = this.endpoints.get(endpointId);
22
23
  if (!endpoint)
23
24
  throw new Error(`Endpoint ${endpointId} 不存在`);
@@ -60,7 +61,7 @@ export class KookAdapter extends Adapter {
60
61
  }
61
62
  async stop() {
62
63
  await super.stop();
63
- this.plugin.logger.info(formatCompact({ op: "stop" }));
64
+ this.plugin.logger.debug(formatCompact({ op: "stop" }));
64
65
  }
65
66
  }
66
67
  //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}