kook-client 1.0.0 → 1.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.
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Channel = void 0;
4
- const contact_1 = require("../entries/contact");
5
- const _1 = require("..");
6
- const event_1 = require("../event");
7
- class Channel extends contact_1.Contact {
1
+ import { Contact } from "./contact.js";
2
+ import { Message } from "../index.js";
3
+ import { ChannelMessageEvent } from "../event/index.js";
4
+ export class Channel extends Contact {
8
5
  constructor(c, info) {
9
6
  super(c);
10
7
  this.info = info;
@@ -44,7 +41,7 @@ class Channel extends contact_1.Contact {
44
41
  msg_id: message_id
45
42
  }
46
43
  });
47
- return event_1.ChannelMessageEvent.fromDetail(this.c, this.info.id, data);
44
+ return ChannelMessageEvent.fromDetail(this.c, this.info.id, data);
48
45
  }
49
46
  async getUserList() {
50
47
  const { data } = await this.c.request.get('/v3/channel/user-list', {
@@ -66,11 +63,11 @@ class Channel extends contact_1.Contact {
66
63
  page_size: len
67
64
  });
68
65
  return (result?.data?.items || []).map((item) => {
69
- return event_1.ChannelMessageEvent.fromDetail(this.c, this.info.id, item);
66
+ return ChannelMessageEvent.fromDetail(this.c, this.info.id, item);
70
67
  });
71
68
  }
72
69
  async sendMsg(message, quote) {
73
- const [content, quoteObj, type] = await _1.Message.processMessage.call(this.c, message, quote);
70
+ const [content, quoteObj, type] = await Message.processMessage.call(this.c, message, quote);
74
71
  const { data } = await this.c.request.post('/v3/message/create', {
75
72
  target_id: this.info.id,
76
73
  content, // 处理后的内容(图片URL / 文本 / Markdown / Card JSON)
@@ -89,7 +86,7 @@ class Channel extends contact_1.Contact {
89
86
  return result['code'] === 0;
90
87
  }
91
88
  async updateMsg(message_id, newMessage, quote) {
92
- [newMessage, quote] = await _1.Message.processMessage.call(this.c, newMessage, quote);
89
+ [newMessage, quote] = await Message.processMessage.call(this.c, newMessage, quote);
93
90
  const result = await this.c.request.post('/v3/message/update', {
94
91
  msg_id: message_id,
95
92
  content: newMessage,
@@ -120,7 +117,6 @@ class Channel extends contact_1.Contact {
120
117
  });
121
118
  }
122
119
  }
123
- exports.Channel = Channel;
124
120
  (function (Channel) {
125
121
  Channel.map = new WeakMap();
126
122
  function as(channel_id) {
@@ -134,4 +130,4 @@ exports.Channel = Channel;
134
130
  return channel;
135
131
  }
136
132
  Channel.as = as;
137
- })(Channel || (exports.Channel = Channel = {}));
133
+ })(Channel || (Channel = {}));
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChannelMember = void 0;
4
- const user_1 = require("../entries/user");
5
- class ChannelMember extends user_1.User {
1
+ import { User } from "./user.js";
2
+ export class ChannelMember extends User {
6
3
  constructor(c, channel_id, info) {
7
4
  super(c, info);
8
5
  this.channel_id = channel_id;
@@ -14,7 +11,6 @@ class ChannelMember extends user_1.User {
14
11
  return this.channel.addUsers([this.info.id]);
15
12
  }
16
13
  }
17
- exports.ChannelMember = ChannelMember;
18
14
  (function (ChannelMember) {
19
15
  ChannelMember.map = new WeakMap();
20
16
  function as(channel_id, user_id) {
@@ -28,4 +24,4 @@ exports.ChannelMember = ChannelMember;
28
24
  return member;
29
25
  }
30
26
  ChannelMember.as = as;
31
- })(ChannelMember || (exports.ChannelMember = ChannelMember = {}));
27
+ })(ChannelMember || (ChannelMember = {}));
@@ -1,9 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Contact = void 0;
4
- class Contact {
1
+ export class Contact {
5
2
  constructor(c) {
6
3
  this.c = c;
7
4
  }
8
5
  }
9
- exports.Contact = Contact;
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Guild = void 0;
4
- const contact_1 = require("../entries/contact");
5
- const constans_1 = require("../constans");
6
- class Guild extends contact_1.Contact {
1
+ import { Contact } from "./contact.js";
2
+ import { UnsupportedMethodError } from "../constans.js";
3
+ export class Guild extends Contact {
7
4
  constructor(c, info) {
8
5
  super(c);
9
6
  this.info = info;
@@ -79,19 +76,18 @@ class Guild extends contact_1.Contact {
79
76
  return data;
80
77
  }
81
78
  async sendMsg(message, quote) {
82
- throw constans_1.UnsupportedMethodError;
79
+ throw UnsupportedMethodError;
83
80
  }
84
81
  recallMsg(message_id) {
85
- throw constans_1.UnsupportedMethodError;
82
+ throw UnsupportedMethodError;
86
83
  }
87
84
  updateMsg(message_id, newMessage) {
88
- throw constans_1.UnsupportedMethodError;
85
+ throw UnsupportedMethodError;
89
86
  }
90
87
  getMsg(message_id) {
91
- throw constans_1.UnsupportedMethodError;
88
+ throw UnsupportedMethodError;
92
89
  }
93
90
  }
94
- exports.Guild = Guild;
95
91
  (function (Guild) {
96
92
  Guild.map = new WeakMap();
97
93
  function as(guild_id) {
@@ -136,4 +132,4 @@ exports.Guild = Guild;
136
132
  Permission[Permission["UpdateOtherUserNickname"] = 67108864] = "UpdateOtherUserNickname";
137
133
  Permission[Permission["PlayMusic"] = 134217728] = "PlayMusic";
138
134
  })(Permission = Guild.Permission || (Guild.Permission = {}));
139
- })(Guild || (exports.Guild = Guild = {}));
135
+ })(Guild || (Guild = {}));
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GuildMember = void 0;
4
- const user_1 = require("../entries/user");
5
- class GuildMember extends user_1.User {
1
+ import { User } from "./user.js";
2
+ export class GuildMember extends User {
6
3
  constructor(c, guild_id, info) {
7
4
  super(c, info);
8
5
  this.guild_id = guild_id;
@@ -56,7 +53,6 @@ class GuildMember extends user_1.User {
56
53
  return this.guild.kick(this.info.id);
57
54
  }
58
55
  }
59
- exports.GuildMember = GuildMember;
60
56
  (function (GuildMember) {
61
57
  GuildMember.map = new WeakMap();
62
58
  function as(guild_id, user_id) {
@@ -70,4 +66,4 @@ exports.GuildMember = GuildMember;
70
66
  return member;
71
67
  }
72
68
  GuildMember.as = as;
73
- })(GuildMember || (exports.GuildMember = GuildMember = {}));
69
+ })(GuildMember || (GuildMember = {}));
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.User = void 0;
4
- const contact_1 = require("../entries/contact");
5
- const _1 = require("..");
6
- const event_1 = require("../event");
7
- class User extends contact_1.Contact {
1
+ import { Contact } from "./contact.js";
2
+ import { Message } from "../index.js";
3
+ import { PrivateMessageEvent } from "../event/index.js";
4
+ export class User extends Contact {
8
5
  constructor(c, info) {
9
6
  super(c);
10
7
  this.info = info;
@@ -12,7 +9,7 @@ class User extends contact_1.Contact {
12
9
  async sendMsg(message, quote) {
13
10
  let isCard;
14
11
  // [message,quote,isCard]=await Message.processMessage.call(this.c,message,quote)
15
- const [content, quoteObj, type] = await _1.Message.processMessage.call(this.c, message, quote);
12
+ const [content, quoteObj, type] = await Message.processMessage.call(this.c, message, quote);
16
13
  const { data } = await this.c.request.post('/v3/direct-message/create', {
17
14
  target_id: this.info.id,
18
15
  content, // 处理后的内容(图片URL / 文本 / Markdown / Card JSON)
@@ -53,7 +50,7 @@ class User extends contact_1.Contact {
53
50
  });
54
51
  }
55
52
  async updateMsg(message_id, newMessage, quote) {
56
- [newMessage, quote] = await _1.Message.processMessage.call(this.c, newMessage, quote);
53
+ [newMessage, quote] = await Message.processMessage.call(this.c, newMessage, quote);
57
54
  const result = await this.c.request.post('/v3/direct-message/update', {
58
55
  msg_id: message_id,
59
56
  content: newMessage,
@@ -73,7 +70,7 @@ class User extends contact_1.Contact {
73
70
  page_size: len
74
71
  });
75
72
  return (result?.data?.items || []).map((item) => {
76
- return event_1.PrivateMessageEvent.fromDetail(this.c, this.info.id, item);
73
+ return PrivateMessageEvent.fromDetail(this.c, this.info.id, item);
77
74
  });
78
75
  }
79
76
  async getMsg(message_id) {
@@ -82,7 +79,7 @@ class User extends contact_1.Contact {
82
79
  msg_id: message_id
83
80
  }
84
81
  });
85
- return event_1.PrivateMessageEvent.fromDetail(this.c, this.info.id, data);
82
+ return PrivateMessageEvent.fromDetail(this.c, this.info.id, data);
86
83
  }
87
84
  asGuildMember(guild_id) {
88
85
  return this.c.pickGuildMember(guild_id, this.info.id);
@@ -91,7 +88,6 @@ class User extends contact_1.Contact {
91
88
  return this.c.pickChannelMember(channel_id, this.info.id);
92
89
  }
93
90
  }
94
- exports.User = User;
95
91
  (function (User) {
96
92
  User.map = new WeakMap();
97
93
  function as(user_id, from_id) {
@@ -112,4 +108,4 @@ exports.User = User;
112
108
  Permission[Permission["owner"] = 4] = "owner";
113
109
  Permission[Permission["channelAdmin"] = 5] = "channelAdmin";
114
110
  })(Permission = User.Permission || (User.Permission = {}));
115
- })(User || (exports.User = User = {}));
111
+ })(User || (User = {}));
@@ -1,17 +1 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./message"), exports);
1
+ export * from "./message.js";
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChannelMessageEvent = exports.PrivateMessageEvent = void 0;
4
- const message_1 = require("../message");
5
- const constans_1 = require("../constans");
6
- class PrivateMessageEvent extends message_1.Message {
1
+ import { Message } from "../message.js";
2
+ import { ChannelType } from "../constans.js";
3
+ export class PrivateMessageEvent extends Message {
7
4
  constructor(client, payload) {
8
5
  super(client, payload);
9
6
  this.message_type = 'private';
@@ -13,7 +10,7 @@ class PrivateMessageEvent extends message_1.Message {
13
10
  target_id: client.self_id === detail.author.id ? user_id : client.self_id,
14
11
  author_id: detail.author.id,
15
12
  type: detail.type,
16
- channel_type: constans_1.ChannelType.Private,
13
+ channel_type: ChannelType.Private,
17
14
  msg_id: detail.id,
18
15
  msg_timestamp: detail.create_at,
19
16
  content: detail.content,
@@ -40,8 +37,7 @@ class PrivateMessageEvent extends message_1.Message {
40
37
  return this.author.sendMsg(message, quote && this);
41
38
  }
42
39
  }
43
- exports.PrivateMessageEvent = PrivateMessageEvent;
44
- class ChannelMessageEvent extends message_1.Message {
40
+ export class ChannelMessageEvent extends Message {
45
41
  constructor(client, payload) {
46
42
  super(client, payload);
47
43
  this.channel_id = payload.target_id;
@@ -53,7 +49,7 @@ class ChannelMessageEvent extends message_1.Message {
53
49
  target_id: channel_id,
54
50
  author_id: detail.author.id,
55
51
  type: detail.type,
56
- channel_type: constans_1.ChannelType.Channel,
52
+ channel_type: ChannelType.Channel,
57
53
  msg_id: detail.id,
58
54
  msg_timestamp: detail.create_at,
59
55
  content: detail.content,
@@ -83,4 +79,3 @@ class ChannelMessageEvent extends message_1.Message {
83
79
  return this.channel.deleteMsgReaction(this.message_id, emoji, user_id);
84
80
  }
85
81
  }
86
- exports.ChannelMessageEvent = ChannelMessageEvent;
package/lib/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import * as log4js from 'log4js';
2
1
  import { EventEmitter } from 'events';
3
2
  import { BinaryLike } from 'crypto';
4
3
  import { Stream } from 'node:stream';
5
4
  import { AxiosInstance } from 'axios';
5
+ import log4js from 'log4js';
6
6
  export type Dict<T = any, K extends string | symbol = string> = Record<K, T>;
7
7
  export type LogLevel = "trace" | "debug" | "info" | "warn" | "error" | "fatal" | "mark" | "off";
8
8
  export enum OpCode {
@@ -792,7 +792,13 @@ export interface EventMap {
792
792
  'message.channel'(e: ChannelMessageEvent): void;
793
793
  'message.private'(e: PrivateMessageEvent): void;
794
794
  }
795
- export class BaseClient extends EventEmitter {
795
+ export interface EventMaps {
796
+ 'message': [PrivateMessageEvent | ChannelMessageEvent];
797
+ 'message.channel': [ChannelMessageEvent];
798
+ 'message.private': [PrivateMessageEvent];
799
+ }
800
+ import type { EventMaps } from "event/index";
801
+ export class BaseClient extends EventEmitter<EventMaps> {
796
802
  request: AxiosInstance;
797
803
  self_id: string;
798
804
  nickname: string;
@@ -810,24 +816,6 @@ export class BaseClient extends EventEmitter {
810
816
  uploadMedia(data: string | Buffer): Promise<string>;
811
817
  em(event: string, payload: Dict): void;
812
818
  }
813
- export interface KookClient {
814
- on<T extends keyof EventMap>(event: T, callback: EventMap[T]): this;
815
- on<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, callback: (...args: any[]) => void): this;
816
- once<T extends keyof EventMap>(event: T, callback: EventMap[T]): this;
817
- once<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, callback: (...args: any[]) => void): this;
818
- off<T extends keyof EventMap>(event: T, callback?: EventMap[T]): this;
819
- off<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, callback?: (...args: any[]) => void): this;
820
- emit<T extends keyof EventMap>(event: T, ...args: Parameters<EventMap[T]>): boolean;
821
- emit<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, ...args: any[]): boolean;
822
- addListener<T extends keyof EventMap>(event: T, callback: EventMap[T]): this;
823
- addListener<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, callback: (...args: any[]) => void): this;
824
- addListenerOnce<T extends keyof EventMap>(event: T, callback: EventMap[T]): this;
825
- addListenerOnce<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, callback: (...args: any[]) => void): this;
826
- removeListener<T extends keyof EventMap>(event: T, callback?: EventMap[T]): this;
827
- removeListener<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>, callback?: (...args: any[]) => void): this;
828
- removeAllListeners<T extends keyof EventMap>(event: T): this;
829
- removeAllListeners<S extends string | symbol>(event: S & Exclude<string | symbol, keyof EventMap>): this;
830
- }
831
819
  export namespace BaseClient {
832
820
  const defaultConfig: Partial<Config>;
833
821
  interface Config {
package/lib/index.js CHANGED
@@ -1,23 +1,7 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./core/baseClient"), exports);
18
- __exportStar(require("./core/receivers"), exports);
19
- __exportStar(require("./client"), exports);
20
- __exportStar(require("./elements"), exports);
21
- __exportStar(require("./types"), exports);
22
- __exportStar(require("./utils"), exports);
23
- __exportStar(require("./message"), exports);
1
+ export * from './core/baseClient.js';
2
+ export * from './core/receivers/index.js';
3
+ export * from './client.js';
4
+ export * from './elements.js';
5
+ export * from './types.js';
6
+ export * from './utils.js';
7
+ export * from './message.js';
package/lib/message.js CHANGED
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Message = void 0;
4
- const elements_1 = require("./elements");
5
- const baseClient_1 = require("./core/baseClient");
6
- class Message {
1
+ import { segment, validateCard } from "./elements.js";
2
+ import { BaseClient } from "./core/baseClient.js";
3
+ export class Message {
7
4
  get self_id() {
8
5
  return this.client.self_id;
9
6
  }
@@ -26,31 +23,30 @@ class Message {
26
23
  toJSON() {
27
24
  return Object.fromEntries(Object.keys(this)
28
25
  .filter(key => {
29
- return typeof this[key] !== "function" && !(this[key] instanceof baseClient_1.BaseClient);
26
+ return typeof this[key] !== "function" && !(this[key] instanceof BaseClient);
30
27
  })
31
28
  .map(key => [key, this[key]]));
32
29
  }
33
30
  }
34
- exports.Message = Message;
35
31
  (function (Message) {
36
32
  function convertMessage(content, extra) {
37
33
  if (extra.type === 1)
38
- return [elements_1.segment.text(content)];
34
+ return [segment.text(content)];
39
35
  if (extra.type === 2)
40
- return [elements_1.segment.image(content)];
36
+ return [segment.image(content)];
41
37
  if (extra.type === 3)
42
- return [elements_1.segment.video(content)];
38
+ return [segment.video(content)];
43
39
  if (extra.type === 4)
44
- return [elements_1.segment.file(content)];
40
+ return [segment.file(content)];
45
41
  if (extra.type === 8)
46
- return [elements_1.segment.audio(content)];
42
+ return [segment.audio(content)];
47
43
  if (extra.type === 10)
48
44
  return JSON.parse(content);
49
45
  const segments = [];
50
46
  const pushAtInfo = (atMatch) => {
51
47
  const idx = content.indexOf(atMatch[0]);
52
- segments.push(elements_1.segment.markdown(content.slice(0, idx)));
53
- segments.push(elements_1.segment.at(atMatch[1]));
48
+ segments.push(segment.markdown(content.slice(0, idx)));
49
+ segments.push(segment.at(atMatch[1]));
54
50
  content = content.slice(idx + atMatch[0].length);
55
51
  };
56
52
  while (content.length) {
@@ -61,7 +57,7 @@ exports.Message = Message;
61
57
  break;
62
58
  }
63
59
  if (content.length)
64
- segments.push(elements_1.segment.markdown(content));
60
+ segments.push(segment.markdown(content));
65
61
  return segments;
66
62
  }
67
63
  Message.convertMessage = convertMessage;
@@ -102,7 +98,7 @@ exports.Message = Message;
102
98
  }
103
99
  };
104
100
  await processImages(card);
105
- (0, elements_1.validateCard)(card);
101
+ validateCard(card);
106
102
  result = JSON.stringify([card]);
107
103
  messageType = 10;
108
104
  break;
@@ -111,7 +107,7 @@ exports.Message = Message;
111
107
  if (typeof seg === 'object' && seg.__isCard) {
112
108
  const { __isCard, ...cardData } = seg;
113
109
  // 最终验证(确保在发送前)
114
- (0, elements_1.validateCard)(cardData);
110
+ validateCard(cardData);
115
111
  // 将卡片包装在数组中
116
112
  result = JSON.stringify([cardData]);
117
113
  messageType = 10;
@@ -142,7 +138,7 @@ exports.Message = Message;
142
138
  throw new Error(`can't send file`);
143
139
  case "card":
144
140
  // 最终验证(确保在发送前)
145
- (0, elements_1.validateCard)(seg);
141
+ validateCard(seg);
146
142
  // 将卡片包装在数组中
147
143
  result = JSON.stringify([seg]);
148
144
  messageType = 10;
@@ -170,4 +166,4 @@ exports.Message = Message;
170
166
  return [result, quote, messageType];
171
167
  }
172
168
  Message.processMessage = processMessage;
173
- })(Message || (exports.Message = Message = {}));
169
+ })(Message || (Message = {}));