メインコンテンツまでスキップ
バージョン: v2 Next 🚧

クラス: CommandStore

定義: src/command/CommandStore.ts:26

Command コンポーネントのストア。commands/ を走査します。

コマンドのランタイムも担います: インタラクション / メッセージの ディスパッチ、権限・Precondition ゲート、アプリケーションコマンド同期。

拡張

コンストラクター

コンストラクター

new CommandStore(): CommandStore;

定義: src/command/CommandStore.ts:30

戻り値

CommandStore

上書き

ComponentStore.constructor

プロパティ

base

readonly base: AbstractComponentClass<Command>;

定義: src/component/ComponentStore.ts:50

この種別のコンポーネントが継承する基底クラス。

継承元

ComponentStore.base


container

readonly container: Container;

定義: src/component/ComponentStore.ts:56

コンテナ。レジストリへの登録時に割り当てられます。

継承元

ComponentStore.container


logger

readonly logger: Logger;

定義: src/component/ComponentStore.ts:59

このストア用の子ロガー。登録時に割り当てられます。

継承元

ComponentStore.logger


name

readonly name: string;

定義: src/component/ComponentStore.ts:47

ストア名(= 自動探索ディレクトリ名)。

継承元

ComponentStore.name


suffix

readonly suffix: string;

定義: src/component/ComponentStore.ts:53

クラス名から取り除く接尾辞(ComponentStoreOptions.suffix)。

継承元

ComponentStore.suffix

メソッド

applyOptions()

protected applyOptions(command, options): void;

定義: src/command/CommandStore.ts:39

解決済みメタデータをインスタンスへ適用します — 種別固有フィールドの 割り当てと必須項目の検証はここで行います。ロード時に弾く場合は (ComponentLoadError を推奨)例外を投げてください。

パラメータ

command

Command

options

CommandOptions

戻り値

void

上書き

ComponentStore.applyOptions


bind()

protected bind(command): void;

定義: src/command/CommandStore.ts:67

ロード済みコンポーネントをランタイムへ配線します(例: リスナーの イベント購読)。onLoad の後、ストアに追加された状態で呼ばれます。

パラメータ

command

Command

戻り値

void

上書き

ComponentStore.bind


deriveName()

protected deriveName(className): string;

定義: src/component/ComponentStore.ts:229

クラス名からコンポーネント名を導出します: 種別サフィックス (ComponentStore.suffix)を取り除き、ケバブケース化します (UserInfoCommanduser-info)。 カスタム種別で慣例を変えたい場合はオーバーライドしてください。

パラメータ

className

string

戻り値

string

継承元

ComponentStore.deriveName


dispatchAutocomplete()

dispatchAutocomplete(interaction): Promise<void>;

定義: src/command/CommandStore.ts:121

autocomplete インタラクションを担当コマンドへルーティングします。

パラメータ

interaction

AutocompleteInteraction

戻り値

Promise<void>


dispatchChatInput()

dispatchChatInput(interaction): Promise<void>;

定義: src/command/CommandStore.ts:104

スラッシュコマンドのインタラクションを担当コマンドへルーティングします。

パラメータ

interaction

ChatInputCommandInteraction

戻り値

Promise<void>


dispatchMessage()

dispatchMessage(message, prefixes): Promise<void>;

定義: src/command/CommandStore.ts:140

メッセージからプレフィックスコマンドを解析して実行します。解決済み プレフィックスはクライアントが渡します。Bot と Webhook は無視されます。

パラメータ

message

Message

prefixes

readonly string[]

戻り値

Promise<void>


load()

load(cls, location?): Promise<Command>;

定義: src/component/ComponentStore.ts:122

単一のコンポーネントクラスを構築・初期化・追加します。 同じクラスの二重ロードは既存インスタンスを返すだけで無害です。 別の クラスが既存の名前に解決された場合は ComponentLoadError を投げます。

パラメータ

cls

ComponentClass<Command>

location?

string | null

戻り値

Promise<Command>

継承元

ComponentStore.load


loadAll()

loadAll(baseDirectory): Promise<void>;

定義: src/component/ComponentStore.ts:95

この種別のすべてのコンポーネントをロードします: 先に明示登録分、 次に <baseDirectory>/<name> のファイル自動探索(baseDirectory 設定時)。 クライアント起動時にレジストリから呼ばれます。

パラメータ

baseDirectory

string | null

戻り値

Promise<void>

継承元

ComponentStore.loadAll


lookup()

lookup(name): Command | undefined;

定義: src/command/CommandStore.ts:35

名前または別名でコマンドを検索します(大文字小文字を区別しません)。

パラメータ

name

string

戻り値

Command | undefined


register()

register(...classes): this;

定義: src/component/ComponentStore.ts:77

コンポーネントクラスを明示登録します(ファイル自動探索の代替)。 ComponentStore.loadAll 前ならキューに積まれ、後なら即座に ロードされます(fire-and-forget — インスタンスを待つ場合は ComponentStore.load を使ってください)。

パラメータ

classes

...ComponentClass<Command>[]

戻り値

this

継承元

ComponentStore.register


syncApplicationCommands()

syncApplicationCommands(defaultGuildIds?): Promise<CommandsSyncedResult>;

定義: src/command/CommandStore.ts:174

すべてのスラッシュ対応コマンドを一括上書きで Discord に登録します。 guildIds(またはクライアント既定の applicationGuildIds)を持つ コマンドはギルド毎に、それ以外はグローバルに登録されます。 無効化しない限り ready 時に自動実行されます。

パラメータ

defaultGuildIds?

readonly string[]

戻り値

Promise<CommandsSyncedResult>


unbind()

protected unbind(command): void;

定義: src/command/CommandStore.ts:80

ComponentStore.bind の逆操作。アンロード時に呼ばれます。

パラメータ

command

Command

戻り値

void

上書き

ComponentStore.unbind


unload()

unload(resolvable): Promise<Command>;

定義: src/component/ComponentStore.ts:200

コンポーネントを取り除きます(ComponentStore.unbindonUnload を実行)。

パラメータ

resolvable

string | Command

戻り値

Promise<Command>

継承元

ComponentStore.unload


unloadAll()

unloadAll(): Promise<void>;

定義: src/component/ComponentStore.ts:217

このストアのすべてのコンポーネントをアンロードします(クライアント終了時に使用)。

戻り値

Promise<void>

継承元

ComponentStore.unloadAll


validateReferences()

validateReferences(preconditions): void;

定義: src/command/CommandStore.ts:90

ロードされていない Precondition を参照するコマンドを起動時に検出します。 全ストアのロード完了後にクライアントが呼びます。

パラメータ

preconditions

PreconditionStore

戻り値

void