node-karin 0.12.0 → 0.12.2-5.pr.206.027f2f2

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 (254) hide show
  1. package/CHANGELOG.md +1029 -0
  2. package/default/comment/config.json +34 -0
  3. package/default/comment/friendDirect.json +10 -0
  4. package/default/comment/groupGuild.json +11 -0
  5. package/default/comment/server.json +17 -0
  6. package/default/config/adapter.json +28 -0
  7. package/default/config/config.json +47 -0
  8. package/default/config/groups.json +47 -0
  9. package/default/config/groups.yaml +70 -0
  10. package/default/config/pm2.json +16 -0
  11. package/default/config/privates.json +23 -0
  12. package/default/config/privates.yaml +31 -0
  13. package/default/config/redis.json +10 -0
  14. package/default/config/render.json +19 -0
  15. package/default/view/group.yaml +73 -0
  16. package/dist/index.d.ts +9869 -0
  17. package/dist/index.js +12643 -0
  18. package/dist/module/art-template.cjs +11 -0
  19. package/dist/module/art-template.d.ts +1 -0
  20. package/dist/module/axios.cjs +22 -0
  21. package/dist/module/axios.d.ts +2 -0
  22. package/dist/module/chalk.cjs +22 -0
  23. package/dist/module/chalk.d.ts +2 -0
  24. package/dist/module/chokidar.cjs +22 -0
  25. package/dist/module/chokidar.d.ts +2 -0
  26. package/dist/module/commander.cjs +35 -0
  27. package/dist/module/commander.d.ts +3 -0
  28. package/dist/module/commander.js +3 -0
  29. package/dist/module/dotenv.cjs +22 -0
  30. package/dist/module/dotenv.d.ts +2 -0
  31. package/dist/module/dotenv.js +2 -0
  32. package/dist/module/express.cjs +112 -0
  33. package/dist/module/express.d.ts +1 -0
  34. package/dist/module/express.js +1 -0
  35. package/dist/module/level.cjs +22 -0
  36. package/dist/module/level.d.ts +2 -0
  37. package/dist/module/lodash.cjs +11 -0
  38. package/dist/module/lodash.d.ts +1 -0
  39. package/dist/module/log4js.cjs +22 -0
  40. package/dist/module/log4js.d.ts +2 -0
  41. package/dist/module/moment.cjs +11 -0
  42. package/dist/module/moment.d.ts +1 -0
  43. package/dist/module/node-schedule.cjs +22 -0
  44. package/dist/module/node-schedule.d.ts +2 -0
  45. package/dist/module/redis.cjs +22 -0
  46. package/dist/module/redis.d.ts +2 -0
  47. package/dist/module/ws.cjs +28 -0
  48. package/dist/module/ws.d.ts +1 -0
  49. package/dist/module/ws.js +1 -0
  50. package/dist/module/yaml.cjs +22 -0
  51. package/dist/module/yaml.d.ts +2 -0
  52. package/dist/root.d.ts +40 -0
  53. package/dist/root.js +44 -0
  54. package/package.json +142 -128
  55. package/LICENSE +0 -674
  56. package/README.md +0 -56
  57. package/config/defSet/App.yaml +0 -42
  58. package/config/defSet/config.yaml +0 -65
  59. package/config/defSet/group.yaml +0 -56
  60. package/config/defSet/pm2.yaml +0 -21
  61. package/config/defSet/redis.yaml +0 -18
  62. package/config/defSet/server.yaml +0 -42
  63. package/config/view/group.yaml +0 -92
  64. package/lib/adapter/index.d.ts +0 -2
  65. package/lib/adapter/index.js +0 -2
  66. package/lib/adapter/input/index.d.ts +0 -78
  67. package/lib/adapter/input/index.js +0 -205
  68. package/lib/adapter/onebot/11/convert.d.ts +0 -12
  69. package/lib/adapter/onebot/11/convert.js +0 -167
  70. package/lib/adapter/onebot/11/event.d.ts +0 -25
  71. package/lib/adapter/onebot/11/event.js +0 -442
  72. package/lib/adapter/onebot/11/index.d.ts +0 -508
  73. package/lib/adapter/onebot/11/index.js +0 -1047
  74. package/lib/cli/index.d.ts +0 -92
  75. package/lib/cli/index.js +0 -307
  76. package/lib/cli/init.d.ts +0 -2
  77. package/lib/cli/init.js +0 -22
  78. package/lib/cli/karin.d.ts +0 -2
  79. package/lib/cli/karin.js +0 -16
  80. package/lib/cli/pkg.d.ts +0 -4
  81. package/lib/cli/pkg.js +0 -14
  82. package/lib/cli/start.d.ts +0 -1
  83. package/lib/cli/start.js +0 -8
  84. package/lib/core/index.d.ts +0 -10
  85. package/lib/core/index.js +0 -10
  86. package/lib/core/init/config.d.ts +0 -43
  87. package/lib/core/init/config.js +0 -201
  88. package/lib/core/init/dir.d.ts +0 -4
  89. package/lib/core/init/dir.js +0 -7
  90. package/lib/core/init/init.d.ts +0 -1
  91. package/lib/core/init/init.js +0 -47
  92. package/lib/core/karin/karin.d.ts +0 -198
  93. package/lib/core/karin/karin.js +0 -226
  94. package/lib/core/listener/listener.d.ts +0 -145
  95. package/lib/core/listener/listener.js +0 -235
  96. package/lib/core/plugin/base.d.ts +0 -156
  97. package/lib/core/plugin/base.js +0 -131
  98. package/lib/core/plugin/loader.d.ts +0 -141
  99. package/lib/core/plugin/loader.js +0 -618
  100. package/lib/core/process/process.d.ts +0 -18
  101. package/lib/core/process/process.js +0 -96
  102. package/lib/core/server/server.d.ts +0 -25
  103. package/lib/core/server/server.js +0 -295
  104. package/lib/db/index.d.ts +0 -2
  105. package/lib/db/index.js +0 -2
  106. package/lib/db/level/level.d.ts +0 -19
  107. package/lib/db/level/level.js +0 -36
  108. package/lib/db/redis/redis.d.ts +0 -2
  109. package/lib/db/redis/redis.js +0 -135
  110. package/lib/db/redis/redis_level.d.ts +0 -112
  111. package/lib/db/redis/redis_level.js +0 -281
  112. package/lib/event/handler/base.d.ts +0 -42
  113. package/lib/event/handler/base.js +0 -200
  114. package/lib/event/handler/message.d.ts +0 -29
  115. package/lib/event/handler/message.js +0 -307
  116. package/lib/event/handler/notice.d.ts +0 -18
  117. package/lib/event/handler/notice.js +0 -214
  118. package/lib/event/handler/request.d.ts +0 -18
  119. package/lib/event/handler/request.js +0 -115
  120. package/lib/event/handler/review.d.ts +0 -55
  121. package/lib/event/handler/review.js +0 -386
  122. package/lib/event/index.d.ts +0 -5
  123. package/lib/event/index.js +0 -5
  124. package/lib/index.d.ts +0 -8
  125. package/lib/index.js +0 -8
  126. package/lib/modules/art-template.d.ts +0 -1
  127. package/lib/modules/axios.d.ts +0 -2
  128. package/lib/modules/chalk.d.ts +0 -2
  129. package/lib/modules/chokidar.d.ts +0 -2
  130. package/lib/modules/commander.d.ts +0 -2
  131. package/lib/modules/commander.js +0 -2
  132. package/lib/modules/express.d.ts +0 -3
  133. package/lib/modules/express.js +0 -3
  134. package/lib/modules/level.d.ts +0 -2
  135. package/lib/modules/lodash.d.ts +0 -1
  136. package/lib/modules/log4js.d.ts +0 -2
  137. package/lib/modules/moment.d.ts +0 -1
  138. package/lib/modules/node-schedule.d.ts +0 -2
  139. package/lib/modules/redis.d.ts +0 -2
  140. package/lib/modules/ws.d.ts +0 -3
  141. package/lib/modules/ws.js +0 -3
  142. package/lib/modules/yaml.d.ts +0 -2
  143. package/lib/modules.d.ts +0 -15
  144. package/lib/modules.js +0 -15
  145. package/lib/render/app.d.ts +0 -56
  146. package/lib/render/app.js +0 -120
  147. package/lib/render/base.d.ts +0 -30
  148. package/lib/render/base.js +0 -69
  149. package/lib/render/client.d.ts +0 -41
  150. package/lib/render/client.js +0 -238
  151. package/lib/render/http.d.ts +0 -19
  152. package/lib/render/http.js +0 -50
  153. package/lib/render/index.d.ts +0 -6
  154. package/lib/render/index.js +0 -6
  155. package/lib/render/server.d.ts +0 -25
  156. package/lib/render/server.js +0 -101
  157. package/lib/render/wormhole.d.ts +0 -1
  158. package/lib/render/wormhole.js +0 -156
  159. package/lib/types/adapter/api.d.ts +0 -399
  160. package/lib/types/adapter/api.js +0 -1
  161. package/lib/types/adapter/base.d.ts +0 -560
  162. package/lib/types/adapter/base.js +0 -1
  163. package/lib/types/config/config.d.ts +0 -379
  164. package/lib/types/config/config.js +0 -1
  165. package/lib/types/element/element.d.ts +0 -565
  166. package/lib/types/element/element.js +0 -1
  167. package/lib/types/element/qqbot.d.ts +0 -123
  168. package/lib/types/element/qqbot.js +0 -1
  169. package/lib/types/event/contact.d.ts +0 -28
  170. package/lib/types/event/contact.js +0 -1
  171. package/lib/types/event/event.d.ts +0 -305
  172. package/lib/types/event/event.js +0 -1
  173. package/lib/types/event/index.d.ts +0 -12
  174. package/lib/types/event/index.js +0 -7
  175. package/lib/types/event/message.d.ts +0 -109
  176. package/lib/types/event/message.js +0 -74
  177. package/lib/types/event/notice.d.ts +0 -513
  178. package/lib/types/event/notice.js +0 -52
  179. package/lib/types/event/reply.d.ts +0 -50
  180. package/lib/types/event/reply.js +0 -1
  181. package/lib/types/event/request.d.ts +0 -126
  182. package/lib/types/event/request.js +0 -52
  183. package/lib/types/event/sender.d.ts +0 -44
  184. package/lib/types/event/sender.js +0 -1
  185. package/lib/types/index.d.ts +0 -13
  186. package/lib/types/index.js +0 -13
  187. package/lib/types/logger/logger.d.ts +0 -110
  188. package/lib/types/logger/logger.js +0 -1
  189. package/lib/types/onebot11/api.d.ts +0 -53
  190. package/lib/types/onebot11/api.js +0 -1
  191. package/lib/types/onebot11/event.d.ts +0 -619
  192. package/lib/types/onebot11/event.js +0 -2
  193. package/lib/types/onebot11/index.d.ts +0 -6
  194. package/lib/types/onebot11/index.js +0 -6
  195. package/lib/types/onebot11/params.d.ts +0 -609
  196. package/lib/types/onebot11/params.js +0 -1
  197. package/lib/types/onebot11/response.d.ts +0 -516
  198. package/lib/types/onebot11/response.js +0 -1
  199. package/lib/types/onebot11/segment.d.ts +0 -269
  200. package/lib/types/onebot11/segment.js +0 -1
  201. package/lib/types/onebot11/sender.d.ts +0 -59
  202. package/lib/types/onebot11/sender.js +0 -1
  203. package/lib/types/plugin/app.d.ts +0 -71
  204. package/lib/types/plugin/app.js +0 -1
  205. package/lib/types/plugin/plugin.d.ts +0 -473
  206. package/lib/types/plugin/plugin.js +0 -1
  207. package/lib/types/render/render.d.ts +0 -118
  208. package/lib/types/render/render.js +0 -1
  209. package/lib/types/type/global.d.ts +0 -25
  210. package/lib/types/type/global.js +0 -1
  211. package/lib/utils/common/common.d.ts +0 -236
  212. package/lib/utils/common/common.js +0 -708
  213. package/lib/utils/config/config.d.ts +0 -193
  214. package/lib/utils/config/config.js +0 -328
  215. package/lib/utils/config/updateVersion.d.ts +0 -33
  216. package/lib/utils/config/updateVersion.js +0 -145
  217. package/lib/utils/config/yamlEditor.d.ts +0 -101
  218. package/lib/utils/config/yamlEditor.js +0 -330
  219. package/lib/utils/core/handler.d.ts +0 -18
  220. package/lib/utils/core/handler.js +0 -46
  221. package/lib/utils/core/logger.d.ts +0 -3
  222. package/lib/utils/core/logger.js +0 -105
  223. package/lib/utils/core/segment.d.ts +0 -279
  224. package/lib/utils/core/segment.js +0 -451
  225. package/lib/utils/index.d.ts +0 -13
  226. package/lib/utils/index.js +0 -13
  227. package/lib/utils/tools/button.d.ts +0 -2
  228. package/lib/utils/tools/button.js +0 -27
  229. package/lib/utils/tools/exec.d.ts +0 -20
  230. package/lib/utils/tools/exec.js +0 -54
  231. package/lib/utils/tools/ffmpeg.d.ts +0 -12
  232. package/lib/utils/tools/ffmpeg.js +0 -25
  233. package/lib/utils/tools/restart.d.ts +0 -15
  234. package/lib/utils/tools/restart.js +0 -39
  235. package/lib/utils/tools/stop.d.ts +0 -7
  236. package/lib/utils/tools/stop.js +0 -13
  237. package/lib/utils/tools/update.d.ts +0 -67
  238. package/lib/utils/tools/update.js +0 -151
  239. /package/{config → default}/view/App.yaml +0 -0
  240. /package/{config → default}/view/config.yaml +0 -0
  241. /package/{config → default}/view/pm2.yaml +0 -0
  242. /package/{config → default}/view/redis.yaml +0 -0
  243. /package/{config → default}/view/server.yaml +0 -0
  244. /package/{lib/modules → dist/module}/art-template.js +0 -0
  245. /package/{lib/modules → dist/module}/axios.js +0 -0
  246. /package/{lib/modules → dist/module}/chalk.js +0 -0
  247. /package/{lib/modules → dist/module}/chokidar.js +0 -0
  248. /package/{lib/modules → dist/module}/level.js +0 -0
  249. /package/{lib/modules → dist/module}/lodash.js +0 -0
  250. /package/{lib/modules → dist/module}/log4js.js +0 -0
  251. /package/{lib/modules → dist/module}/moment.js +0 -0
  252. /package/{lib/modules → dist/module}/node-schedule.js +0 -0
  253. /package/{lib/modules → dist/module}/redis.js +0 -0
  254. /package/{lib/modules → dist/module}/yaml.js +0 -0
@@ -1,473 +0,0 @@
1
- import schedule from 'node-schedule';
2
- import { Plugin } from '../../core/index.js';
3
- import { Reply, replyCallback, replyForward } from '../event/reply.js';
4
- import { KarinNoticeType, KarinRequestType, AllListenEvent, KarinMessageType, PermissionType, AllMessageSubType, Contact, AllNoticeSubType, AllRequestSubType } from '../event/index.js';
5
- import { KarinElement } from '../element/element.js';
6
- /**
7
- * - 插件根目录名称
8
- * - 例如: karin-plugin-example
9
- * - 例如: karin-plugin-example/apps
10
- * - ### npm包类型: `string`
11
- * - ### git插件类型: `karin-plugin-${string}`
12
- */
13
- export type dirName = `karin-plugin-${string}` | string;
14
- /**
15
- * - 插件名称
16
- * - 例如: index.js index.ts
17
- */
18
- export type fileName = `${string}.js` | `${string}.ts`;
19
- /**
20
- * 插件类型枚举
21
- */
22
- export declare const enum AppsType {
23
- /** git插件 */
24
- Git = "git",
25
- /** npm插件 */
26
- Npm = "npm",
27
- /** 单个app插件 */
28
- Js = "js"
29
- }
30
- /**
31
- * 插件实现方法类型
32
- */
33
- export declare const enum MethodType {
34
- /** 函数 */
35
- Function = "function",
36
- /** 类 */
37
- Class = "class"
38
- }
39
- /**
40
- * plugin基本信息
41
- */
42
- export interface PluginInfoType {
43
- /** 插件包类型 */
44
- type: `${AppsType}`;
45
- /** 插件包名称 例: `karin-plugin-example` `@karinjs/adapter-qqbot` */
46
- plugin: string;
47
- /** 插件路径 在type为js下,path为空 */
48
- path: string;
49
- /** 插件文件名称 index.js index.ts */
50
- file: string;
51
- }
52
- /**
53
- * Command规则集信息
54
- */
55
- export interface PluginCommandInfoType {
56
- /** 插件基本信息的映射key */
57
- key: number;
58
- /** 插件包名称 */
59
- name: string;
60
- /** 插件正则 */
61
- reg: RegExp;
62
- /** 插件执行方法 */
63
- fn: (e: KarinMessageType) => Promise<boolean>;
64
- /** 插件执行方法名称 */
65
- fnname: string;
66
- /** 插件类型 */
67
- type: `${MethodType}`;
68
- /** 在type为class的时候 data为class 否则为空字符串 */
69
- data: (() => PluginType) | undefined;
70
- /** 插件执行权限 */
71
- perm: `${PermissionType}`;
72
- /** 执行打印日志方法 */
73
- log: Function;
74
- /** 监听的子事件 高于父事件 */
75
- event: AllMessageSubType;
76
- /** 优先级 */
77
- rank: number;
78
- }
79
- /**
80
- * accept规则集信息
81
- */
82
- export interface PluginAcceptInfoType {
83
- /** 插件基本信息的映射key */
84
- key: number;
85
- /** 插件包名称 */
86
- name: string;
87
- /** 插件执行方法 */
88
- fn: (e: KarinNoticeType | KarinRequestType) => Promise<boolean>;
89
- /** 优先级 */
90
- rank: number;
91
- /** 监听事件 */
92
- event: AllNoticeSubType | AllRequestSubType;
93
- /** 执行打印日志方法 */
94
- log: Function;
95
- }
96
- /**
97
- * task规则集信息
98
- */
99
- export interface PluginTaskInfoType {
100
- /** 插件基本信息的映射key */
101
- key: number;
102
- /** 插件包名称 */
103
- name: string;
104
- /** 任务名称 */
105
- taskname: string;
106
- /** cron表达式 */
107
- cron: string;
108
- /** 任务执行方法 */
109
- fn: Function;
110
- /** 在type为class的时候 data为class 否则为空字符串 */
111
- data: (() => PluginType) | undefined;
112
- /** 执行打印日志方法 */
113
- log: Function;
114
- /** 停止函数 */
115
- schedule: schedule.Job;
116
- }
117
- /**
118
- * button规则集信息
119
- */
120
- export interface PluginButtonInfoType {
121
- /** 插件基本信息的映射key */
122
- key: number;
123
- /** 插件包名称 */
124
- name: string;
125
- /** 插件正则 */
126
- reg: RegExp;
127
- /** 插件执行方法 */
128
- fn: (reject: Function, e?: KarinMessageType) => Promise<any>;
129
- /** 优先级 */
130
- rank: number;
131
- }
132
- /**
133
- * handler规则集信息
134
- */
135
- export interface PluginHandlerInfoType {
136
- /** 插件基本信息的映射key */
137
- key: number;
138
- /** 插件包名称 */
139
- name: string;
140
- /** handler的处理方法 */
141
- fn: (args: any, reject: (msg?: string) => void) => Promise<any>;
142
- /** 优先级 */
143
- rank: number;
144
- }
145
- /**
146
- * 中间件规则集信息
147
- */
148
- export interface PluginMiddlewareInfoType {
149
- /** 初始化消息前 */
150
- recvMsg: Array<{
151
- /** 插件基本信息的映射key */
152
- key: number;
153
- /** 插件包名称 */
154
- name: string;
155
- /** 插件执行方法 */
156
- fn: (
157
- /** 消息事件方法 */
158
- e: KarinMessageType,
159
- /** 是否继续执行下一个中间件 */
160
- next: Function,
161
- /** 是否退出此条消息 不再执行匹配插件 */
162
- exit: Function) => Promise<boolean>;
163
- /** 优先级 */
164
- rank: number;
165
- }>;
166
- /** 回复消息前 */
167
- replyMsg: Array<{
168
- /** 插件基本信息的映射key */
169
- key: number;
170
- /** 插件包名称 */
171
- name: string;
172
- /** 插件执行方法 */
173
- fn: (
174
- /** 消息事件方法 */
175
- e: KarinMessageType,
176
- /** 回复的消息体 */
177
- element: KarinElement[],
178
- /** 是否继续执行下一个中间件 */
179
- next: Function,
180
- /** 是否不发送此条消息 */
181
- exit: Function) => Promise<boolean>;
182
- /** 优先级 */
183
- rank: number;
184
- }>;
185
- /** 发送主动消息前 */
186
- sendMsg: Array<{
187
- /** 插件基本信息的映射key */
188
- key: number;
189
- /** 插件包名称 */
190
- name: string;
191
- /** 插件执行方法 */
192
- fn: (
193
- /** 发送的bot */
194
- uid: string,
195
- /** 发送目标 */
196
- contact: Contact,
197
- /** 发送的消息体 */
198
- element: KarinElement[],
199
- /** 是否继续执行下一个中间件 */
200
- next: Function,
201
- /** 是否不发送此条消息 */
202
- exit: Function) => Promise<boolean>;
203
- /** 优先级 */
204
- rank: number;
205
- }>;
206
- }
207
- /**
208
- * 上下文状态
209
- */
210
- export interface stateArrType {
211
- [key: string]: {
212
- type: 'fnc';
213
- fnc: Function;
214
- } | {
215
- type: 'class';
216
- fnc: Plugin;
217
- name: string;
218
- } | {
219
- type: 'ctx';
220
- };
221
- }
222
- /**
223
- * - 插件规则
224
- */
225
- export interface PluginRule {
226
- /**
227
- * - 命令正则
228
- */
229
- reg: string | RegExp;
230
- /**
231
- * - 命令执行方法名称
232
- */
233
- fnc: string | Function;
234
- /**
235
- * - 监听子事件
236
- */
237
- event?: AllMessageSubType;
238
- /**
239
- * - 优先级 默认为10000
240
- */
241
- priority?: number;
242
- /**
243
- * 权限
244
- */
245
- permission?: PermissionType;
246
- /**
247
- * - 打印日志 默认为true
248
- */
249
- log?: boolean | Function;
250
- }
251
- /**
252
- * - 定时任务规则
253
- */
254
- export interface PluginTask {
255
- /**
256
- * - 任务名称
257
- */
258
- name: string;
259
- /**
260
- * - cron表达式
261
- */
262
- cron: string;
263
- /**
264
- * - 执行方法名称或对应函数
265
- */
266
- fnc: string | Function;
267
- /**
268
- * - 是否显示执行日志 默认为true
269
- */
270
- log: boolean | Function;
271
- /**
272
- * - 停止函数
273
- */
274
- schedule?: schedule.Job;
275
- }
276
- /**
277
- * - 按钮规则
278
- */
279
- export interface PluginButton {
280
- /**
281
- * - 按钮命令正则
282
- */
283
- reg: string | RegExp;
284
- /**
285
- * - 执行方法名称
286
- */
287
- fnc: string | Function;
288
- }
289
- /**
290
- * - handler规则
291
- */
292
- export interface PluginHandler {
293
- /**
294
- * - handler支持的事件key
295
- */
296
- key: string;
297
- /**
298
- * - handler的处理方法名称
299
- */
300
- fnc: string | Function;
301
- /**
302
- * - handler优先级 不填默认为主优先度
303
- */
304
- priority: number;
305
- }
306
- /**
307
- * - 插件信息
308
- */
309
- export interface AppInfo {
310
- /**
311
- * - 插件根目录名称
312
- * - karin-plugin-example
313
- * - karin-plugin-example/apps
314
- * - karin-plugin-example/src/apps
315
- * - karin-plugin-example/dist/apps
316
- */
317
- dir: dirName;
318
- /**
319
- * - 插件名称 例如: index.js index.ts
320
- */
321
- name: fileName;
322
- }
323
- /**
324
- * - 定义一个条件类型,根据是否存在accept方法来决定类型
325
- */
326
- export type EType<T> = T extends {
327
- accept: (e: KarinNoticeType | KarinRequestType) => Promise<void>;
328
- } ? KarinNoticeType | KarinRequestType : KarinMessageType;
329
- /**
330
- * - 插件基类
331
- */
332
- export interface PluginType {
333
- /**
334
- * - 插件名称
335
- */
336
- name: string;
337
- /**
338
- * - 插件描述
339
- */
340
- desc: string;
341
- /**
342
- * - 监听事件 默认为message
343
- */
344
- event: AllMessageSubType;
345
- /**
346
- * - 优先级 默认为10000
347
- */
348
- priority: number;
349
- /**
350
- * - 定时任务
351
- */
352
- task: Array<PluginTask>;
353
- /**
354
- * - 命令规则
355
- */
356
- rule: Array<PluginRule>;
357
- /**
358
- * - handler
359
- */
360
- handler: Array<PluginHandler>;
361
- /**
362
- * - 用户ID 一般上下文使用
363
- */
364
- userId?: number;
365
- /**
366
- * - 上下文超时
367
- */
368
- timeout: NodeJS.Timeout | undefined;
369
- /**
370
- * - 上报事件
371
- */
372
- e: EType<this>;
373
- init?: () => Promise<any>;
374
- /**
375
- * - 快速回复
376
- */
377
- reply: Reply;
378
- /**
379
- * - 快速回复内部方法 由适配器实现
380
- */
381
- replyCallback: replyCallback;
382
- /**
383
- * - 快速回复合并转发
384
- */
385
- replyForward: replyForward;
386
- /**
387
- * - 构建上下文键
388
- */
389
- conKey: () => string;
390
- /**
391
- * - 设置上下文状态
392
- */
393
- setContext: (
394
- /**
395
- * - 执行方法名称
396
- */
397
- fnc: string,
398
- /**
399
- * - 超时后是否回复
400
- */
401
- reply?: boolean,
402
- /**
403
- * - 下文超时时间 默认120秒
404
- */
405
- time?: number) => void;
406
- /**
407
- * - 获取上下文状态
408
- */
409
- getContext: () => stateArrType[string];
410
- /**
411
- * - accept标准方法 给通知、请求事件使用
412
- */
413
- accept?(e: KarinNoticeType | KarinRequestType): Promise<void>;
414
- }
415
- /**
416
- * - Apps
417
- */
418
- export interface PluginApps {
419
- /**
420
- * - 插件文件信息
421
- */
422
- file: AppInfo & {
423
- /**
424
- * - 插件类型
425
- */
426
- type: 'function' | 'class';
427
- /**
428
- * - 插件方法
429
- */
430
- Fnc: '' | (new () => PluginType);
431
- };
432
- /**
433
- * - 插件名称
434
- */
435
- name: string;
436
- /**
437
- * - 插件事件
438
- */
439
- event: AllListenEvent;
440
- /**
441
- * - 插件优先级
442
- * @default 10000
443
- */
444
- priority: number;
445
- /**
446
- * - accept函数
447
- */
448
- accept: boolean | Function;
449
- /**
450
- * - accept函数触发是否打印日志
451
- */
452
- log: boolean;
453
- /**
454
- * - 命令规则
455
- */
456
- rule: Array<PluginRule>;
457
- /**
458
- * - 定时任务
459
- */
460
- task: Array<PluginTask>;
461
- /**
462
- * - 按钮
463
- */
464
- button: Array<PluginButton>;
465
- /**
466
- * - handler
467
- */
468
- handler: Array<PluginHandler>;
469
- }
470
- /**
471
- * 未实例化的插件
472
- */
473
- export type NewMessagePlugin = new (e?: KarinMessageType) => Plugin;
@@ -1 +0,0 @@
1
- export {};
@@ -1,118 +0,0 @@
1
- import chokidar from 'chokidar';
2
- /**
3
- * 渲染标准方法传参
4
- */
5
- export interface KarinRenderType {
6
- /**
7
- * - 渲染文件路径或HTTP地址 与vue二选一
8
- */
9
- file: string;
10
- /**
11
- * - vue文件路径 与file二选一
12
- */
13
- vue?: boolean;
14
- props?: any;
15
- /**
16
- * - 模板名称
17
- */
18
- name?: string;
19
- /**
20
- * - art-template后的文件名
21
- */
22
- fileID?: string;
23
- /**
24
- * - 传递给模板的数据 template.render(data)
25
- */
26
- data?: object;
27
- /**
28
- * - 截图类型 默认'webp'
29
- */
30
- type?: 'png' | 'jpeg' | 'webp';
31
- /**
32
- * - 截图质量 默认90 1-100
33
- */
34
- quality?: number;
35
- /**
36
- * - 是否隐藏背景 默认false
37
- */
38
- omitBackground?: boolean;
39
- /**
40
- * - 设置视窗大小和设备像素比 默认1920*1080、1
41
- */
42
- setViewport?: {
43
- /**
44
- * - 视窗宽度
45
- */
46
- width?: number;
47
- /**
48
- * - 视窗高度
49
- */
50
- height?: number;
51
- /**
52
- * - 设备像素比
53
- */
54
- deviceScaleFactor?: number;
55
- };
56
- /**
57
- * - 分页截图 传递数字则视为视窗高度 返回数组
58
- */
59
- multiPage?: number | boolean;
60
- /**
61
- * - 页面goto时的参数
62
- */
63
- pageGotoParams?: {
64
- /**
65
- * - 页面加载超时时间
66
- */
67
- timeout?: number;
68
- /**
69
- * - 页面加载状态
70
- */
71
- waitUntil?: 'load' | 'domcontentloaded' | 'networkidle0' | 'networkidle2';
72
- [key: string]: any;
73
- };
74
- }
75
- /**
76
- * 渲染结果
77
- */
78
- export type RenderResult<T> = T extends {
79
- multiPage: true | number;
80
- } ? Array<string> : string;
81
- /**
82
- * 渲染基类
83
- */
84
- export interface KarinRender {
85
- dir: './temp/html';
86
- html: {
87
- [key: string]: string;
88
- };
89
- watcher: {
90
- [key: string]: chokidar.FSWatcher;
91
- };
92
- /**
93
- * 模板渲染
94
- * @param options - 渲染参数
95
- * @param isAbs - 是否返回绝对路径 默认true
96
- */
97
- dealTpl(options: KarinRenderType, isAbs: boolean): string;
98
- /**
99
- * 监听模板文件
100
- * @param tplFile 模板文件路径
101
- */
102
- watch(tplFile: string): void;
103
- /**
104
- * 渲染
105
- * @param options - 标准渲染方法
106
- */
107
- render: <T extends KarinRenderType>(options: T, id?: string) => Promise<RenderResult<T>>;
108
- }
109
- /**
110
- * 渲染器管理
111
- */
112
- export interface KarinRenderApp {
113
- index: number;
114
- id: string;
115
- type: string;
116
- time: number;
117
- render: KarinRender['render'];
118
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,25 +0,0 @@
1
- import { Logger as LoggerType } from 'log4js';
2
- import { Logger } from '../../types/index.js';
3
- import { Lang, Mode, Runner } from '../../cli/index.js';
4
- declare global {
5
- namespace NodeJS {
6
- interface ProcessEnv {
7
- /** 重启次数 */
8
- karin_app_start_count: string;
9
- /** 是否为监听模式 yes=true no=false */
10
- karin_app_watch: string;
11
- /** 运行模式 "dev" | "prod" */
12
- karin_app_mode: `${Mode}`;
13
- /** 语言环境 "js" | "ts" */
14
- karin_app_lang: `${Lang}`;
15
- /** 运行器 "node" | "tsx" | "pm2" */
16
- karin_app_runner: `${Runner}`;
17
- /** 版本 */
18
- karin_app_version: string;
19
- }
20
- }
21
- }
22
- declare global {
23
- var logger: LoggerType & Logger;
24
- }
25
- export {};
@@ -1 +0,0 @@
1
- export {};