mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2025-12-19 13:10:16 +08:00
Remove unnecessary ts-ignore comments and improve typings
Removed redundant // @ts-ignore comments from converter.ts and http-server.ts. Enhanced type safety in event.ts by refining generic parameters for createListenerFunction and createEventFunction.
This commit is contained in:
parent
b85f9197e3
commit
bc183ae002
@ -78,15 +78,18 @@ export class NTEventWrapper {
|
|||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
createListenerFunction<T> (listenerMainName: string, uniqueCode: string = ''): T {
|
createListenerFunction<T, Listener extends keyof ListenerNamingMapping,
|
||||||
|
ListenerMethod extends FuncKeys<ListenerNamingMapping[Listener]>> (listenerMainName: string, uniqueCode: string = ''): T {
|
||||||
const existListener = this.listenerManager.get(listenerMainName + uniqueCode);
|
const existListener = this.listenerManager.get(listenerMainName + uniqueCode);
|
||||||
if (!existListener) {
|
if (!existListener) {
|
||||||
const Listener = this.createProxyDispatch(listenerMainName);
|
const Listener = this.createProxyDispatch(listenerMainName);
|
||||||
const ServiceSubName = /^NodeIKernel(.*?)Listener$/.exec(listenerMainName)![1];
|
const ServiceSubName = /^NodeIKernel(.*?)Listener$/.exec(listenerMainName)![1];
|
||||||
const Service = `NodeIKernel${ServiceSubName}Service/addKernel${ServiceSubName}Listener`;
|
const Service = `NodeIKernel${ServiceSubName}Service/addKernel${ServiceSubName}Listener` as `${Listener}/${ListenerMethod}`;
|
||||||
|
this.createEventFunction<
|
||||||
// @ts-ignore
|
keyof ServiceNamingMapping,
|
||||||
this.createEventFunction(Service)(Listener as T);
|
FuncKeys<ServiceNamingMapping[keyof ServiceNamingMapping]>,
|
||||||
|
(...args: any[]) => any
|
||||||
|
>(Service as `${keyof ServiceNamingMapping}/${FuncKeys<ServiceNamingMapping[keyof ServiceNamingMapping]>}`);
|
||||||
this.listenerManager.set(listenerMainName + uniqueCode, Listener);
|
this.listenerManager.set(listenerMainName + uniqueCode, Listener);
|
||||||
return Listener as T;
|
return Listener as T;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -132,7 +132,6 @@ export class PacketMsgConverter {
|
|||||||
time: msg.time,
|
time: msg.time,
|
||||||
msg: msg.msg.map((element) => {
|
msg: msg.msg.map((element) => {
|
||||||
if (!this.isValidElementType(element.elementType)) return null;
|
if (!this.isValidElementType(element.elementType)) return null;
|
||||||
// @ts-ignore
|
|
||||||
return this.rawToPacketMsgConverters[element.elementType](element as MessageElement);
|
return this.rawToPacketMsgConverters[element.elementType](element as MessageElement);
|
||||||
}).filter((e) => e !== null),
|
}).filter((e) => e !== null),
|
||||||
};
|
};
|
||||||
|
|||||||
@ -72,7 +72,6 @@ export class OB11HttpServerAdapter extends IOB11NetworkAdapter<HttpServerConfig>
|
|||||||
return res.status(400).send('Invalid JSON');
|
return res.status(400).send('Invalid JSON');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
// @ts-ignore
|
|
||||||
this.app.use((req, res, next) => this.authorize(this.config.token, req, res, next));
|
this.app.use((req, res, next) => this.authorize(this.config.token, req, res, next));
|
||||||
this.app.use(async (req, res) => {
|
this.app.use(async (req, res) => {
|
||||||
await this.handleRequest(req, res);
|
await this.handleRequest(req, res);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user