koishi-core
Advanced tools
Comparing version 1.4.0 to 1.5.0
@@ -84,3 +84,3 @@ "use strict"; | ||
let capture; | ||
let atMe = false, nickname = false, prefix = null; | ||
let atMe = false, nickname = '', prefix = null; | ||
let message = koishi_utils_1.simplify(meta.message.trim()); | ||
@@ -90,7 +90,7 @@ let parsedArgv; | ||
atMe = true; | ||
nickname = true; | ||
nickname = capture[0]; | ||
message = message.slice(capture[0].length); | ||
} | ||
if ((_a = (capture = message.match(this.nicknameRE))) === null || _a === void 0 ? void 0 : _a[0].length) { | ||
nickname = true; | ||
nickname = capture[0]; | ||
message = message.slice(capture[0].length); | ||
@@ -103,2 +103,4 @@ } | ||
} | ||
// store parsed message | ||
meta.$stripped = { atMe, nickname, prefix, message }; | ||
// parse as command | ||
@@ -195,3 +197,3 @@ if (prefix !== null || nickname || meta.messageType === 'private') { | ||
if (!this._middlewareSet.has(counter)) { | ||
return this.receiver.emit('error', new Error(messages_1.errors.ISOLATED_NEXT)); | ||
return this.logger().warn(new Error(messages_1.errors.ISOLATED_NEXT)); | ||
} | ||
@@ -211,2 +213,3 @@ if (fallback) | ||
this._middlewareSet.delete(counter); | ||
this.emitEvent(meta, 'after-middleware', meta); | ||
// flush user & group data | ||
@@ -213,0 +216,0 @@ await ((_a = meta.$user) === null || _a === void 0 ? void 0 : _a._update()); |
@@ -97,2 +97,3 @@ /// <reference types="node" /> | ||
'after-command'(argv: ParsedCommandLine): any; | ||
'after-middleware'(meta: Meta<'message'>): any; | ||
'error'(error: Error): any; | ||
@@ -99,0 +100,0 @@ 'error/command'(error: Error): any; |
@@ -115,3 +115,3 @@ "use strict"; | ||
if (this.app._middlewares.length >= maxMiddlewares) { | ||
this.app.receiver.emit('error', new Error(util_1.format(messages_1.errors.MAX_MIDDLEWARES, maxMiddlewares))); | ||
this.logger().warn(new Error(util_1.format(messages_1.errors.MAX_MIDDLEWARES, maxMiddlewares))); | ||
} | ||
@@ -126,3 +126,3 @@ else { | ||
if (this.app._middlewares.length >= maxMiddlewares) { | ||
this.app.receiver.emit('error', new Error(util_1.format(messages_1.errors.MAX_MIDDLEWARES, maxMiddlewares))); | ||
this.logger().warn(new Error(util_1.format(messages_1.errors.MAX_MIDDLEWARES, maxMiddlewares))); | ||
} | ||
@@ -129,0 +129,0 @@ else { |
@@ -36,2 +36,8 @@ import { User, Group } from './database'; | ||
} | ||
export interface StrippedMessage { | ||
atMe?: boolean; | ||
nickname?: string; | ||
prefix?: string; | ||
message?: string; | ||
} | ||
/** CQHTTP Meta Information */ | ||
@@ -43,2 +49,3 @@ export interface Meta<T extends PostType = PostType> { | ||
$ctxType?: ContextType; | ||
$stripped?: StrippedMessage; | ||
$response?: (payload: ResponsePayload) => void; | ||
@@ -58,8 +65,8 @@ $delete?: () => Promise<void>; | ||
subType?: SubTypeMap[T]; | ||
messageId?: number; | ||
selfId?: number; | ||
userId?: number; | ||
selfId?: number; | ||
groupId?: number; | ||
discussId?: number; | ||
operatorId?: number; | ||
time?: number; | ||
messageId?: number; | ||
message?: string; | ||
@@ -70,6 +77,7 @@ rawMessage?: string; | ||
anonymous?: AnonymousInfo; | ||
operatorId?: number; | ||
duration?: number; | ||
file?: FileInfo; | ||
comment?: string; | ||
flag?: string; | ||
time?: number; | ||
status?: StatusInfo; | ||
@@ -76,0 +84,0 @@ interval?: number; |
@@ -65,3 +65,3 @@ "use strict"; | ||
} | ||
// polyfill CQHTTP 3.x events | ||
// polyfill CQHTTP 3.x events and array form of message | ||
// https://cqhttp.cc/docs/4.12/#/UpgradeGuide | ||
@@ -68,0 +68,0 @@ /* eslint-disable dot-notation */ |
{ | ||
"name": "koishi-core", | ||
"description": "Core features for Koishi", | ||
"version": "1.4.0", | ||
"version": "1.5.0", | ||
"main": "dist/index.js", | ||
@@ -36,5 +36,6 @@ "typings": "dist/index.d.ts", | ||
"@types/debug": "^4.1.5", | ||
"@types/ws": "^6.0.4", | ||
"get-port": "^5.1.0", | ||
"koishi-test-utils": "^1.2.2" | ||
"@types/ws": "^7.2.0", | ||
"get-port": "^5.1.1", | ||
"koishi-database-memory": "^1.0.0", | ||
"koishi-test-utils": "^2.0.0" | ||
}, | ||
@@ -41,0 +42,0 @@ "dependencies": { |
118758
2936
5