node-karin 0.6.18 → 0.6.19

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 (101) hide show
  1. package/lib/adapter/index.d.ts +1 -1
  2. package/lib/adapter/index.js +1 -1
  3. package/lib/adapter/input/index.d.ts +16 -3
  4. package/lib/adapter/input/index.js +52 -38
  5. package/lib/adapter/kritor/grpc.d.ts +3 -2
  6. package/lib/adapter/kritor/grpc.js +80 -64
  7. package/lib/adapter/kritor/index.d.ts +35 -18
  8. package/lib/adapter/kritor/index.js +26 -10
  9. package/lib/adapter/onebot/11/convert.d.ts +11 -0
  10. package/lib/adapter/onebot/11/convert.js +168 -0
  11. package/lib/adapter/onebot/11/event.d.ts +25 -0
  12. package/lib/adapter/onebot/11/event.js +425 -0
  13. package/lib/adapter/onebot/11/index.d.ts +506 -0
  14. package/lib/adapter/onebot/11/index.js +1047 -0
  15. package/lib/cli/init.js +5 -0
  16. package/lib/core/karin.d.ts +3 -4
  17. package/lib/core/karin.js +3 -2
  18. package/lib/core/listener.d.ts +2 -2
  19. package/lib/core/listener.js +2 -2
  20. package/lib/core/plugin.app.js +2 -1
  21. package/lib/core/plugin.d.ts +4 -4
  22. package/lib/core/plugin.js +2 -1
  23. package/lib/core/plugin.loader.d.ts +3 -3
  24. package/lib/core/plugin.loader.js +2 -1
  25. package/lib/core/server.js +3 -3
  26. package/lib/event/event.handler.d.ts +5 -5
  27. package/lib/event/event.handler.js +6 -5
  28. package/lib/event/index.d.ts +0 -4
  29. package/lib/event/index.js +0 -4
  30. package/lib/event/message.handler.d.ts +3 -3
  31. package/lib/event/notice.handler.d.ts +3 -3
  32. package/lib/event/notice.handler.js +17 -16
  33. package/lib/event/request.handler.d.ts +3 -3
  34. package/lib/event/request.handler.js +4 -3
  35. package/lib/event/review.handler.d.ts +7 -8
  36. package/lib/index.js +1 -1
  37. package/lib/types/adapter/adapter.d.ts +564 -0
  38. package/lib/types/adapter/adapter.js +1 -0
  39. package/lib/types/{api.d.ts → adapter/api.d.ts} +103 -3
  40. package/lib/types/adapter/api.js +1 -0
  41. package/lib/types/element.d.ts +5 -4
  42. package/lib/types/event/contact.d.ts +28 -0
  43. package/lib/types/event/contact.js +13 -0
  44. package/lib/types/event/event.d.ts +390 -0
  45. package/lib/types/event/event.js +234 -0
  46. package/lib/types/event/index.d.ts +12 -0
  47. package/lib/types/event/index.js +7 -0
  48. package/lib/types/event/message.d.ts +104 -0
  49. package/lib/types/event/message.js +72 -0
  50. package/lib/types/event/notice.d.ts +513 -0
  51. package/lib/types/event/notice.js +52 -0
  52. package/lib/types/{reply.d.ts → event/reply.d.ts} +2 -2
  53. package/lib/types/event/reply.js +1 -0
  54. package/lib/types/event/request.d.ts +126 -0
  55. package/lib/types/event/request.js +52 -0
  56. package/lib/types/event/sender.d.ts +44 -0
  57. package/lib/types/event/sender.js +22 -0
  58. package/lib/types/index.d.ts +6 -5
  59. package/lib/types/index.js +6 -5
  60. package/lib/types/onebot11/api.d.ts +53 -0
  61. package/lib/types/onebot11/api.js +54 -0
  62. package/lib/types/onebot11/event.d.ts +619 -0
  63. package/lib/types/onebot11/event.js +56 -0
  64. package/lib/types/onebot11/index.d.ts +6 -0
  65. package/lib/types/onebot11/index.js +6 -0
  66. package/lib/types/onebot11/params.d.ts +609 -0
  67. package/lib/types/onebot11/params.js +7 -0
  68. package/lib/types/onebot11/response.d.ts +516 -0
  69. package/lib/types/onebot11/response.js +1 -0
  70. package/lib/types/onebot11/segment.d.ts +268 -0
  71. package/lib/types/onebot11/segment.js +30 -0
  72. package/lib/types/onebot11/sender.d.ts +59 -0
  73. package/lib/types/onebot11/sender.js +1 -0
  74. package/lib/types/plugin.d.ts +10 -11
  75. package/lib/utils/button.d.ts +2 -2
  76. package/lib/utils/common.d.ts +2 -2
  77. package/lib/utils/config.js +3 -3
  78. package/lib/utils/handler.d.ts +2 -2
  79. package/lib/utils/handler.js +1 -1
  80. package/lib/utils/init.d.ts +1 -1
  81. package/lib/utils/init.js +2 -1
  82. package/lib/utils/segment.d.ts +2 -2
  83. package/package.json +1 -1
  84. package/lib/adapter/onebot/onebot11.d.ts +0 -309
  85. package/lib/adapter/onebot/onebot11.js +0 -1285
  86. package/lib/event/event.d.ts +0 -140
  87. package/lib/event/event.js +0 -125
  88. package/lib/event/message.d.ts +0 -105
  89. package/lib/event/message.js +0 -70
  90. package/lib/event/notice.d.ts +0 -49
  91. package/lib/event/notice.js +0 -15
  92. package/lib/event/request.d.ts +0 -49
  93. package/lib/event/request.js +0 -15
  94. package/lib/types/adapter.d.ts +0 -581
  95. package/lib/types/adapter.js +0 -1
  96. package/lib/types/api.js +0 -1
  97. package/lib/types/event.d.ts +0 -789
  98. package/lib/types/event.js +0 -1
  99. package/lib/types/onebots11.d.ts +0 -1426
  100. package/lib/types/onebots11.js +0 -1
  101. package/lib/types/reply.js +0 -1
@@ -0,0 +1,52 @@
1
+ import { EventType, NoticeSubType } from './event.js';
2
+ /**
3
+ * - 创建一个通知事件
4
+ */
5
+ export class KarinNotice {
6
+ self_id;
7
+ user_id;
8
+ group_id;
9
+ event;
10
+ sub_event;
11
+ event_id;
12
+ time;
13
+ contact;
14
+ sender;
15
+ isMaster;
16
+ isAdmin;
17
+ isPrivate;
18
+ isGroup;
19
+ isGuild;
20
+ isGroupTemp;
21
+ logFnc;
22
+ logText;
23
+ store;
24
+ raw_message;
25
+ raw_event;
26
+ reply;
27
+ replyCallback;
28
+ bot;
29
+ content;
30
+ constructor({ event_id, self_id, user_id, group_id = '', time, contact, sender, sub_event, content, }) {
31
+ this.self_id = self_id;
32
+ this.user_id = user_id;
33
+ this.group_id = contact.scene === 'group' ? (contact.peer || group_id) : group_id;
34
+ this.time = time;
35
+ this.event = EventType.Notice;
36
+ this.event_id = event_id;
37
+ this.contact = contact;
38
+ this.sender = sender;
39
+ this.sub_event = sub_event;
40
+ this.isMaster = false;
41
+ this.isAdmin = false;
42
+ this.isPrivate = false;
43
+ this.isGroup = false;
44
+ this.isGuild = false;
45
+ this.isGroupTemp = false;
46
+ this.logFnc = '';
47
+ this.logText = '';
48
+ this.store = new Map();
49
+ this.raw_message = '';
50
+ this.content = content;
51
+ }
52
+ }
@@ -1,4 +1,4 @@
1
- import { KarinElement, KarinNodeElement } from './element.js';
1
+ import { KarinElement, NodeElement } from '../element.js';
2
2
  export type Reply = (
3
3
  /**
4
4
  * 发送的消息
@@ -38,6 +38,6 @@ elements: KarinElement[],
38
38
  retry_count?: number) => Promise<{
39
39
  message_id?: string;
40
40
  }>;
41
- export type replyForward = (msg: KarinNodeElement[]) => Promise<{
41
+ export type replyForward = (msg: NodeElement[]) => Promise<{
42
42
  message_id?: string;
43
43
  }>;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,126 @@
1
+ import { KarinEventType, BaseEventDataType, EventType, RequestSubType } from './event.js';
2
+ /**
3
+ * - 好友申请
4
+ */
5
+ export interface PrivateApplyType {
6
+ /**
7
+ * - 申请者uid
8
+ */
9
+ applier_uid: string;
10
+ /**
11
+ * - 申请者uin
12
+ */
13
+ applier_uin: string;
14
+ /**
15
+ * - 申请理由
16
+ */
17
+ message: string;
18
+ }
19
+ /**
20
+ * - 群申请
21
+ */
22
+ export interface GroupApply {
23
+ /**
24
+ * - 群ID
25
+ */
26
+ group_id: string;
27
+ /**
28
+ * - 申请者uid
29
+ */
30
+ applier_uid: string;
31
+ /**
32
+ * - 申请者uin
33
+ */
34
+ applier_uin: string;
35
+ /**
36
+ * - 邀请者uid
37
+ */
38
+ inviter_uid: string;
39
+ /**
40
+ * - 邀请者uin
41
+ */
42
+ inviter_uin: string;
43
+ /**
44
+ * - 申请理由
45
+ */
46
+ reason: string;
47
+ }
48
+ /**
49
+ * - 邀请入群
50
+ */
51
+ export interface GroupInvite {
52
+ /**
53
+ * - 群ID
54
+ */
55
+ group_id: string;
56
+ /**
57
+ * - 邀请者uid
58
+ */
59
+ inviter_uid: string;
60
+ /**
61
+ * - 邀请者uin
62
+ */
63
+ inviter_uin: string;
64
+ }
65
+ /**
66
+ * - 通知事件子类型
67
+ */
68
+ export interface RequestType {
69
+ [RequestSubType.PrivateApply]: PrivateApplyType;
70
+ [RequestSubType.GroupApply]: GroupApply;
71
+ [RequestSubType.InvitedGroup]: GroupInvite;
72
+ }
73
+ /**
74
+ * - 请求事件基类
75
+ */
76
+ export interface KarinRequestEventBase extends KarinEventType {
77
+ event: EventType.Request;
78
+ }
79
+ /**
80
+ * - 辅助类型,用于生成 KarinRequestEvent 的联合类型来自动推导content的类型
81
+ */
82
+ type RequestEvent<T extends RequestSubType> = KarinRequestEventBase & {
83
+ sub_event: T;
84
+ content: RequestType[T];
85
+ };
86
+ /**
87
+ * - 请求事件定义
88
+ */
89
+ export type KarinRequestType = RequestEvent<RequestSubType.GroupApply> | RequestEvent<RequestSubType.InvitedGroup> | RequestEvent<RequestSubType.PrivateApply>;
90
+ /**
91
+ * - 创建一个请求事件
92
+ */
93
+ export declare class KarinRequest implements KarinRequestEventBase {
94
+ self_id: KarinRequestType['self_id'];
95
+ user_id: KarinRequestType['user_id'];
96
+ group_id: KarinRequestType['group_id'];
97
+ event: KarinRequestType['event'];
98
+ sub_event: KarinRequestType['sub_event'];
99
+ event_id: KarinRequestType['event_id'];
100
+ time: KarinRequestType['time'];
101
+ contact: KarinRequestType['contact'];
102
+ sender: KarinRequestType['sender'];
103
+ isMaster: KarinRequestType['isMaster'];
104
+ isAdmin: KarinRequestType['isAdmin'];
105
+ isPrivate: KarinRequestType['isPrivate'];
106
+ isGroup: KarinRequestType['isGroup'];
107
+ isGuild: KarinRequestType['isGuild'];
108
+ isGroupTemp: KarinRequestType['isGroupTemp'];
109
+ logFnc: KarinRequestType['logFnc'];
110
+ logText: KarinRequestType['logText'];
111
+ store: KarinRequestType['store'];
112
+ raw_message: KarinRequestType['raw_message'];
113
+ reply: KarinRequestType['reply'];
114
+ replyCallback: KarinRequestType['replyCallback'];
115
+ bot: KarinRequestType['bot'];
116
+ content: RequestType[RequestSubType];
117
+ raw_event: KarinRequestType['raw_event'];
118
+ constructor({ self_id, user_id, group_id, time, contact, sender, sub_event, event_id, content, }: BaseEventDataType & {
119
+ sub_event: KarinRequestType['sub_event'];
120
+ /**
121
+ * - 事件对应的内容参数
122
+ */
123
+ content: KarinRequestType['content'];
124
+ });
125
+ }
126
+ export {};
@@ -0,0 +1,52 @@
1
+ import { EventType, RequestSubType } from './event.js';
2
+ /**
3
+ * - 创建一个请求事件
4
+ */
5
+ export class KarinRequest {
6
+ self_id;
7
+ user_id;
8
+ group_id;
9
+ event;
10
+ sub_event;
11
+ event_id;
12
+ time;
13
+ contact;
14
+ sender;
15
+ isMaster;
16
+ isAdmin;
17
+ isPrivate;
18
+ isGroup;
19
+ isGuild;
20
+ isGroupTemp;
21
+ logFnc;
22
+ logText;
23
+ store;
24
+ raw_message;
25
+ reply;
26
+ replyCallback;
27
+ bot;
28
+ content;
29
+ raw_event;
30
+ constructor({ self_id, user_id, group_id = '', time, contact, sender, sub_event, event_id, content, }) {
31
+ this.self_id = self_id;
32
+ this.user_id = user_id;
33
+ this.group_id = contact.scene === 'group' ? (contact.peer || group_id) : group_id;
34
+ this.time = time;
35
+ this.event = EventType.Request;
36
+ this.event_id = event_id;
37
+ this.contact = contact;
38
+ this.sender = sender;
39
+ this.sub_event = sub_event;
40
+ this.content = content;
41
+ this.isMaster = false;
42
+ this.isAdmin = false;
43
+ this.isPrivate = false;
44
+ this.isGroup = false;
45
+ this.isGuild = false;
46
+ this.isGroupTemp = false;
47
+ this.logFnc = '';
48
+ this.logText = '';
49
+ this.store = new Map();
50
+ this.raw_message = '';
51
+ }
52
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * - 群身份枚举 值不存在时为unknown
3
+ */
4
+ export declare enum Role {
5
+ Owner = "owner",
6
+ Admin = "admin",
7
+ Member = "member",
8
+ Unknown = "unknown"
9
+ }
10
+ /**
11
+ * - 权限类型枚举
12
+ */
13
+ export declare enum Permission {
14
+ All = "all",
15
+ Master = "master",
16
+ Admin = "admin",
17
+ GroupOwner = "group.owner",
18
+ GroupAdmin = "group.admin"
19
+ }
20
+ /**
21
+ * - 权限类型 纯文本
22
+ */
23
+ export type PermissionType = 'all' | 'master' | 'admin' | 'group.owner' | 'group.admin';
24
+ /**
25
+ * - 事件发送者信息
26
+ */
27
+ export interface Sender {
28
+ /**
29
+ * - 发送者uid
30
+ */
31
+ uid: string;
32
+ /**
33
+ * - 发送者uin
34
+ */
35
+ uin: string;
36
+ /**
37
+ * - 发送者昵称
38
+ */
39
+ nick: string | '';
40
+ /**
41
+ * - 发送者在群的角色身份
42
+ */
43
+ role: Role;
44
+ }
@@ -0,0 +1,22 @@
1
+ /* eslint-disable no-unused-vars */
2
+ /**
3
+ * - 群身份枚举 值不存在时为unknown
4
+ */
5
+ export var Role;
6
+ (function (Role) {
7
+ Role["Owner"] = "owner";
8
+ Role["Admin"] = "admin";
9
+ Role["Member"] = "member";
10
+ Role["Unknown"] = "unknown";
11
+ })(Role || (Role = {}));
12
+ /**
13
+ * - 权限类型枚举
14
+ */
15
+ export var Permission;
16
+ (function (Permission) {
17
+ Permission["All"] = "all";
18
+ Permission["Master"] = "master";
19
+ Permission["Admin"] = "admin";
20
+ Permission["GroupOwner"] = "group.owner";
21
+ Permission["GroupAdmin"] = "group.admin";
22
+ })(Permission || (Permission = {}));
@@ -1,10 +1,11 @@
1
- export * from './adapter.js';
1
+ export * from './adapter/adapter.js';
2
2
  export * from './config.js';
3
3
  export * from './element.js';
4
- export * from './event.js';
4
+ export * from './event/index.js';
5
5
  export * from './logger.js';
6
- export * from './onebots11.js';
7
6
  export * from './render.js';
8
7
  export * from './plugin.js';
9
- export * from './reply.js';
10
- export * from './api.js';
8
+ export * from './event/reply.js';
9
+ export * from './adapter/api.js';
10
+ export * from './onebot11/index.js';
11
+ export * from './event/index.js';
@@ -1,10 +1,11 @@
1
- export * from './adapter.js'
1
+ export * from './adapter/adapter.js'
2
2
  export * from './config.js'
3
3
  export * from './element.js'
4
- export * from './event.js'
4
+ export * from './event/index.js'
5
5
  export * from './logger.js'
6
- export * from './onebots11.js'
7
6
  export * from './render.js'
8
7
  export * from './plugin.js'
9
- export * from './reply.js'
10
- export * from './api.js'
8
+ export * from './event/reply.js'
9
+ export * from './adapter/api.js'
10
+ export * from './onebot11/index.js'
11
+ export * from './event/index.js'
@@ -0,0 +1,53 @@
1
+ /**
2
+ * - OneBot11公开Api
3
+ */
4
+ export declare enum OB11Api {
5
+ 'send_private_msg' = "send_private_msg",
6
+ 'send_group_msg' = "send_group_msg",
7
+ 'send_msg' = "send_msg",
8
+ 'delete_msg' = "delete_msg",
9
+ 'get_msg' = "get_msg",
10
+ 'get_forward_msg' = "get_forward_msg",
11
+ 'send_like' = "send_like",
12
+ 'set_group_kick' = "set_group_kick",
13
+ 'set_group_ban' = "set_group_ban",
14
+ 'set_group_anonymous_ban' = "set_group_anonymous_ban",
15
+ 'set_group_whole_ban' = "set_group_whole_ban",
16
+ 'set_group_admin' = "set_group_admin",
17
+ 'set_group_anonymous' = "set_group_anonymous",
18
+ 'set_group_card' = "set_group_card",
19
+ 'set_group_name' = "set_group_name",
20
+ 'set_group_leave' = "set_group_leave",
21
+ 'set_group_special_title' = "set_group_special_title",
22
+ 'set_friend_add_request' = "set_friend_add_request",
23
+ 'set_group_add_request' = "set_group_add_request",
24
+ 'get_login_info' = "get_login_info",
25
+ 'get_stranger_info' = "get_stranger_info",
26
+ 'get_friend_list' = "get_friend_list",
27
+ 'get_group_info' = "get_group_info",
28
+ 'get_group_list' = "get_group_list",
29
+ 'get_group_member_info' = "get_group_member_info",
30
+ 'get_group_member_list' = "get_group_member_list",
31
+ 'get_group_honor_info' = "get_group_honor_info",
32
+ 'get_cookies' = "get_cookies",
33
+ 'get_csrf_token' = "get_csrf_token",
34
+ 'get_credentials' = "get_credentials",
35
+ 'get_record' = "get_record",
36
+ 'get_image' = "get_image",
37
+ 'can_send_image' = "can_send_image",
38
+ 'can_send_record' = "can_send_record",
39
+ 'get_status' = "get_status",
40
+ 'get_version_info' = "get_version_info",
41
+ 'set_restart' = "set_restart",
42
+ 'clean_cache' = "clean_cache",
43
+ 'get_version' = "get_version",
44
+ 'send_forward_msg' = "send_forward_msg",
45
+ 'get_friend_msg_history' = "get_friend_msg_history",
46
+ 'get_group_msg_history' = "get_group_msg_history",
47
+ 'set_msg_emoji_like' = "set_msg_emoji_like",
48
+ 'upload_group_file' = "upload_group_file",
49
+ 'upload_private_file' = "upload_private_file",
50
+ 'get_essence_msg_list' = "get_essence_msg_list",
51
+ 'set_essence_msg' = "set_essence_msg",
52
+ 'delete_essence_msg' = "delete_essence_msg"
53
+ }
@@ -0,0 +1,54 @@
1
+ /**
2
+ * - OneBot11公开Api
3
+ */
4
+ export var OB11Api;
5
+ (function (OB11Api) {
6
+ OB11Api["send_private_msg"] = "send_private_msg";
7
+ OB11Api["send_group_msg"] = "send_group_msg";
8
+ OB11Api["send_msg"] = "send_msg";
9
+ OB11Api["delete_msg"] = "delete_msg";
10
+ OB11Api["get_msg"] = "get_msg";
11
+ OB11Api["get_forward_msg"] = "get_forward_msg";
12
+ OB11Api["send_like"] = "send_like";
13
+ OB11Api["set_group_kick"] = "set_group_kick";
14
+ OB11Api["set_group_ban"] = "set_group_ban";
15
+ OB11Api["set_group_anonymous_ban"] = "set_group_anonymous_ban";
16
+ OB11Api["set_group_whole_ban"] = "set_group_whole_ban";
17
+ OB11Api["set_group_admin"] = "set_group_admin";
18
+ OB11Api["set_group_anonymous"] = "set_group_anonymous";
19
+ OB11Api["set_group_card"] = "set_group_card";
20
+ OB11Api["set_group_name"] = "set_group_name";
21
+ OB11Api["set_group_leave"] = "set_group_leave";
22
+ OB11Api["set_group_special_title"] = "set_group_special_title";
23
+ OB11Api["set_friend_add_request"] = "set_friend_add_request";
24
+ OB11Api["set_group_add_request"] = "set_group_add_request";
25
+ OB11Api["get_login_info"] = "get_login_info";
26
+ OB11Api["get_stranger_info"] = "get_stranger_info";
27
+ OB11Api["get_friend_list"] = "get_friend_list";
28
+ OB11Api["get_group_info"] = "get_group_info";
29
+ OB11Api["get_group_list"] = "get_group_list";
30
+ OB11Api["get_group_member_info"] = "get_group_member_info";
31
+ OB11Api["get_group_member_list"] = "get_group_member_list";
32
+ OB11Api["get_group_honor_info"] = "get_group_honor_info";
33
+ OB11Api["get_cookies"] = "get_cookies";
34
+ OB11Api["get_csrf_token"] = "get_csrf_token";
35
+ OB11Api["get_credentials"] = "get_credentials";
36
+ OB11Api["get_record"] = "get_record";
37
+ OB11Api["get_image"] = "get_image";
38
+ OB11Api["can_send_image"] = "can_send_image";
39
+ OB11Api["can_send_record"] = "can_send_record";
40
+ OB11Api["get_status"] = "get_status";
41
+ OB11Api["get_version_info"] = "get_version_info";
42
+ OB11Api["set_restart"] = "set_restart";
43
+ OB11Api["clean_cache"] = "clean_cache";
44
+ OB11Api["get_version"] = "get_version";
45
+ OB11Api["send_forward_msg"] = "send_forward_msg";
46
+ OB11Api["get_friend_msg_history"] = "get_friend_msg_history";
47
+ OB11Api["get_group_msg_history"] = "get_group_msg_history";
48
+ OB11Api["set_msg_emoji_like"] = "set_msg_emoji_like";
49
+ OB11Api["upload_group_file"] = "upload_group_file";
50
+ OB11Api["upload_private_file"] = "upload_private_file";
51
+ OB11Api["get_essence_msg_list"] = "get_essence_msg_list";
52
+ OB11Api["set_essence_msg"] = "set_essence_msg";
53
+ OB11Api["delete_essence_msg"] = "delete_essence_msg";
54
+ })(OB11Api || (OB11Api = {}));