このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
APIリファレンス
サーバーサイド
サーバーサイドのパッケージ構造で利用できるAPIは、以下のコードで示されています。
PluginWorkflowServer
ワークフロープラグインのクラスです。
通常、アプリケーションの実行時に、アプリケーションインスタンスの app を取得できる場所であればどこでも、app.pm.get<PluginWorkflowServer>(PluginWorkflowServer) を呼び出してワークフロープラグインのインスタンスを取得できます(以降、このインスタンスを plugin と表記します)。
registerTrigger()
新しいトリガータイプを拡張して登録します。
シグネチャ
registerTrigger(type: string, trigger: typeof Trigger | Trigger })
パラメーター
例
registerInstruction()
新しいノードタイプを拡張して登録します。
シグネチャ
registerInstruction(type: string, instruction: typeof Instruction | Instruction })
パラメーター
例
trigger()
特定のワークフローをトリガーします。これは主に、カスタムトリガーで特定のカスタムイベントをリッスンしたときに、対応するワークフローをトリガーするために使用されます。
シグネチャ
trigger(workflow: Workflow, context: any)
パラメーター
現在、context は必須項目です。提供されない場合、ワークフローはトリガーされません。
例
resume()
特定のノードタスクで一時停止中のワー クフローの実行を再開します。
- 一時停止状態(
EXECUTION_STATUS.STARTED)にあるワークフローのみが実行を再開できます。 - 保留状態(
JOB_STATUS.PENDING)にあるノードタスクのみが実行を再開できます。
シグネチャ
resume(job: JobModel)
パラメーター
渡されるジョブオブジェクトは通常、更新されたオブジェクトであり、status は通常 JOB_STATUS.PENDING 以外の値に更新されます。そうしないと、引き続き一時停止状態になります。
例
詳細はソースコードを参照してください。
Trigger
カスタムトリガータイプを拡張するためのトリガー基底クラスです。
on / off は、ワークフローの有効化/無効化時にイベントリスナーを登録/登録解除するために使用されます。渡されるパラメーターは、対応するトリガーのワークフローインスタンスであり、関連する設定に基づいて処理できます。一部のトリガータイプでは、すでにグローバルにイベントをリッスンしている場合、これらの2つのメソッドを実装する必要はありません。例えば、タイマートリガーでは、on でタイマーを登録し、off でタイマーを登録解除できます。
Instruction
カスタムInstructionタイプを拡張するためのInstruction基底クラスです。
関連タイプ
getScope については、ループノードの実装を参照してください。これは、ブランチのローカル変数コンテンツを提供するために使用されます。
EXECUTION_STATUS
ワークフロー実行プランのステータス定数テーブルで、対応する実行プランの現在のステータスを識別するために使用されます。
最初の3つを除き、その他はすべて失敗状態を表しますが、異なる失敗理由を表現するために使用できます。
JOB_STATUS
ワークフローノードジョブのステータス定数テーブルで、対応するノードジョブの現在のステータスを識別するために使用されます。ノードによって生成されたステータスは、実行プラン全体のステータスにも影響を与えます。
クライアントサイド
クライアントサイドのパッケージ構造で利用できるAPIは、以下のコードで示されています。
PluginWorkflowClient
registerTrigger()
トリガータイプに対応する設定パネルを登録します。
シグネチャ
registerTrigger(type: string, trigger: typeof Trigger | Trigger): void
パラメーター
registerInstruction()
ノードタイプに対応する設定パネルを登録します。
シグネチャ
registerInstruction(type: string, instruction: typeof Instruction | Instruction): void
パラメーター
registerInstructionGroup()
ノードタイプのグループを登録します。NocoBaseはデフォルトで以下の4つのノードタイプグループを提供しています。
'control':制御系'collection':コレクション操作系'manual':手動処理系'extended':その他の拡張系
他のグループを拡張する必要がある場合は、このメソッドを使用して登録できます。
シグネチャ
registerInstructionGroup(type: string, group: { label: string }): void
パラメーター
例
Trigger
カスタムトリガータイプを拡張するためのトリガー基底クラスです。
useVariablesが設定されていない場合、このタイプのトリガーは値取得機能を提供せず、ワークフローのノードでトリガーのコンテキストデータを選択することはできません。
Instruction
カスタムノードタイプを拡張するためのInstruction基底クラスです。
関連タイプ
useVariablesが設定されていない場合、このノードタイプは値取得機能を提供せず、ワークフローのノードでこのタイプのノードの結果データを選択することはできません。結果値が単一(選択不可)の場合、対応する情報を表現する静的なコンテンツを返せば十分です(参照:計算ノードのソースコード)。選択可能にする必要がある場合(例:オブジェクト内の特定のプロパティ)、対応する選択コンポーネントの出力をカスタマイズできます(参照:データ追加ノードのソースコード)。Componentはノードのカスタムレンダリングコンポーネントです。デフォルトのノードレンダリングでは不十分な場合、完全に上書きしてカスタムノードビューのレンダリングに使用できます。例えば、ブランチタイプの開始ノードに対して、より多くの操作ボタンやその他のインタラクションを提供したい場合は、このメソッドを使用する必要があります(参照:並列ブランチのソースコード)。useInitializersは、初期化ブロックを提供するためのメソッドです。例えば、手動ノードでは、上流ノードに基づいて関連するユーザーブロックを初期化できます。このメソッドが提供されている場合、手動ノードのインターフェース設定でブロックを初期化する際に利用可能になります(参照:データ追加ノードのソースコード)。isAvailableは、ノードが現在の環境で使用(追加)できるかどうかを判断するために主に使用されます。現在の環境には、現在のワークフロー、上流ノード、現在のブランチインデックスなどが含まれます。

