From 90878fc7df413f71c52ac85e8cd7f9dc2719af6c Mon Sep 17 00:00:00 2001 From: MiaoWoo Date: Wed, 1 Apr 2020 11:08:57 +0800 Subject: [PATCH] feat: merge decorators meta interface Signed-off-by: MiaoWoo --- packages/client/package.json | 3 +-- packages/plugin/src/decorators.ts | 4 ++-- packages/plugin/src/interfaces.ts | 6 ------ packages/plugin/src/utils.ts | 4 ++-- 4 files changed, 5 insertions(+), 12 deletions(-) diff --git a/packages/client/package.json b/packages/client/package.json index 2ec0f4fb..beb645cc 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -28,8 +28,7 @@ "minecraft-protocol": "^1.11.0" }, "devDependencies": { - "@nestjs/cli": "^6.14.2", "rimraf": "^3.0.2", "typescript": "^3.8.3" } -} +} \ No newline at end of file diff --git a/packages/plugin/src/decorators.ts b/packages/plugin/src/decorators.ts index be71a1a3..76e2acd1 100644 --- a/packages/plugin/src/decorators.ts +++ b/packages/plugin/src/decorators.ts @@ -37,13 +37,13 @@ export function cmd(metadata: interfaces.CommandMetadata = {}) { * MiaoScript TabComplete * @param metadata TabCompleterMetadata */ -export function tab(metadata: interfaces.TabCompleterMetadata = {}) { +export function tab(metadata: interfaces.CommandMetadata = {}) { return function(target: any, key: string, value: any) { metadata.name = metadata.name || (key.startsWith('tab') ? key.split('tab', 2)[1] : key); if (!metadata.name) { return; } metadata.executor = key; metadata.paramtypes = Reflect.getMetadata("design:paramtypes", target, key) - const previousMetadata: Map = getPluginTabCompleterMetadata(target) + const previousMetadata: Map = getPluginTabCompleterMetadata(target) previousMetadata.set(metadata.name, metadata) Reflect.defineMetadata(METADATA_KEY.tab, previousMetadata, target.constructor); }; diff --git a/packages/plugin/src/interfaces.ts b/packages/plugin/src/interfaces.ts index a8c3ac36..7eb6ba17 100644 --- a/packages/plugin/src/interfaces.ts +++ b/packages/plugin/src/interfaces.ts @@ -67,12 +67,6 @@ export namespace interfaces { */ paramtypes?: string[]; } - export interface TabCompleterMetadata extends ExecMetadata { - /** - * 参数列表 - */ - paramtypes?: string[]; - } export interface ListenerMetadata extends ExecMetadata { } export interface ConfigMetadata extends BaseMetadata { diff --git a/packages/plugin/src/utils.ts b/packages/plugin/src/utils.ts index 3dbd6f1b..c8daf459 100644 --- a/packages/plugin/src/utils.ts +++ b/packages/plugin/src/utils.ts @@ -34,10 +34,10 @@ function getPluginCommandMetadata(target: any) { } function getPluginTabCompleterMetadata(target: any) { - let tabcompleterMetadata: Map = Reflect.getMetadata( + let tabcompleterMetadata: Map = Reflect.getMetadata( METADATA_KEY.tab, target.constructor - ) || new Map(); + ) || new Map(); return tabcompleterMetadata; }