コンテンツへスキップ

pivotick v3.0.0


ピボット / InterractionCallbacks / InterractionCallbacks

インターフェース: InterractionCallbacks<TElement> ​

定義: interfaces/InterractionCallbacks.ts:12

型パラメータ ​

TElement ​

TElement = unknown

プロパティ ​

isValidConnection()? ​

optional isValidConnection: (source, target) => boolean

定義: interfaces/InterractionCallbacks.ts:251

ライブ有効性述語は、* カーソルとしての接続ジェスチャ中に * を評価しました 候補ターゲットをホバーします (React Flow の isValidConnection のように)。戻る false は、ホバーされたターゲットを無効としてマークします。シャドウ エッジはレンダリングされます。 無効なスタイルであり、それを放したりクリックしても何も作成されません (その場合、 onBeforeEdgeCreate は参照されません)。ポインターが移動するたびに実行されるため、 同期的で安価でなければなりません。

パラメータ ​

source ​

Node | Note

target ​

Node

返品 ​

boolean


onBadgeClick()? ​

optional onBadgeClick: (event, node, badge, element) => void

定義: interfaces/InterractionCallbacks.ts:69

ノードのリム バッジのいずれかがクリックされたときに、そのバッジ自体がクリックされた後に呼び出されます。 onClick。すべてのバッジが共有する行動に使用します。 NodeBadge.onClickを使用してください 1 つのバッジ自身のアクションに対して。

これを宣言すると、すべてのバッジがポインタ カーソルを受け取り、そのクリックを消費するようになります。 その下のノードも選択されていません。

パラメータ ​

event ​

PointerEvent

node ​

Node

badge ​

NodeBadge

element ​

TElement

返品 ​

void


onBeforeDelete()? ​

optional onBeforeDelete: (context) => DeleteDecision | Promise<DeleteDecision>

定義: interfaces/InterractionCallbacks.ts:277

ユーザーがグラフ要素の削除を要求したときに呼び出されます。before はすべて 削除されました。ライブラリは、最初にエッジを含むターゲット セット全体を解決します。 ノードを削除するとそれに伴うもの (DeleteContext.cascadingEdges) — 消費者は完全なデータを永続化できます。 カスケードを再導出することなく、ジェスチャの結果を確認します。

  • false / { accept: false } を拒否権に戻します: 何も削除されません、いいえ nodeRemove/edgeRemove/noteRemove が発火し、選択範囲はそのまま残ります。
  • 要求された内容を正確に削除するには、true を返します。
  • { accept: true, nodes?, edges?, notes? } を narrow に戻し、削除を サブセット — 例:バックエンドが実際に削除したもののみを保持します。省略されたキー は「要求どおり」を意味するため、{ accept: true } は true と同等です。渡す 空の配列を使用すると、その種を完全に保存できます。の一部ではなかった要素 要求は無視されます。

非同期の場合があります (削除を維持してから決定します)。2 番目の削除ジェスチャは次のとおりです。 決定が保留されている間は無視されます。 DeleteContext.confirm で開きます 消費者が再構築しないように確認モーダルを追加します。

ユーザーが開始した削除のみがゲートされます: プログラムによる graph.removeNode() / graph.removeEdge() / noteManager.removeNote() はこのフックを呼び出すことはありません。 モデルを駆動するコンシューマー コードは、コンシューマー自身のゲートによってブロックされません。

パラメータ ​

context ​

DeleteContext

返品 ​

DeleteDecision | Promise<DeleteDecision>


onBeforeEdgeCreate()? ​

optional onBeforeEdgeCreate: (context) => EdgeCreateDecision | Promise<EdgeCreateDecision>

定義: interfaces/InterractionCallbacks.ts:241

ターゲット ノードが解決された後、接続ジェスチャ中に呼び出されますが、 前 エッジ (またはノートリンク) が作成されます。エッジに相当するものとして機能します。 onBeforeNodeEditCommit: 検証/強化/拒否権フック。

  • false / { accept: false } を拒否権に戻します: プレビューは削除されます。 何も追加されず、接続モードは有効な状態のままなので、ユーザーは再試行できます。
  • デフォルトで受け入れるには、true を返します。
  • { accept: true, data?, style?, id?, directed? } を返して受け入れてください 新しいエッジのペイロード/スタイル/ID/方向を指定します。

非同期の場合があります (例: 決定する前にバックエンドに永続化する)。シャドウエッジ プレビューは Promise が解決するまで継続し、新しい接続ジェスチャは行われません。 保留中は受け入れられます。クリックとドラッグによる接続の両方で発生します。 note→ノードリンク (EdgeCreateContext.kind 'note-link') に対しても起動されます。 ここで、決定のエッジ固有フィールドは無視されます。

パラメータ ​

context ​

EdgeCreateContext

返品 ​

EdgeCreateDecision | Promise<EdgeCreateDecision>

接続を作成するかどうか (オプションでそのデータも含めて)。


onBeforeEdgeEditCommit()? ​

optional onBeforeEdgeEditCommit: (context) => boolean | Promise<boolean>

定義: interfaces/InterractionCallbacks.ts:320

エッジ編集セッションがコミットされようとしているときに呼び出されます。として機能します 検証/永続化/拒否権フック、ミラーリング onBeforeNodeEditCommit: return false (またはその約束) を拒否し、エッジのデータを残します そのままでモーダルが開きます。成功すると、エッジのデータが置き換えられ、 edgeChange はデータバス上で起動します。

パラメータ ​

context ​

EdgeEditCommitContext

返品 ​

boolean | Promise<boolean>

コミットを続行するかどうか


onBeforeIngest()? ​

optional onBeforeIngest: (context) => IngestDecision | Promise<IngestDecision>

定義: interfaces/InterractionCallbacks.ts:300

ピボットが候補セットを取り込む直前に、候補セット全体で 1 回呼び出されます。 取り込みパイプライン上の 1 つのゲート。

  • false / { accept: false } を拒否権に戻します。何も着地せず、ランが行われます。 'vetoed' が報告します。
  • 選択したものを正確に取り込むには、true を返します。
  • 取り込みを { accept: true, nodes?, edges? } から narrow に戻します サブセット — 例:バックエンドが確認したもののみ。省略されたキーは「として」を意味します 要求された」ため、{ accept: true } は true と同等です。空を渡す そのようなものは何も着地しないように配列します。

候補ごとではなく、バッチ全体の取り込みごとに 1 回呼び出されます: ピボット 1,800 個の相関が見つかった場合は、1,800 個のフック呼び出しになってはなりません。 ジェスチャごとの書き込みパス フック (onBeforeEdgeCreate、onBeforeDelete) プログラムによるマージではなく、ユーザーのジェスチャーを意図的に考慮しています。それはゲートします autoIngest もピボットし、それが彼らを統治し続けるのです。

非同期の場合があります (持続してから決定します)。 IngestContext.confirm で開きます 共有確認モーダル。

パラメータ ​

context ​

IngestContext

返品 ​

IngestDecision | Promise<IngestDecision>


onBeforeNodeCreate()? ​

optional onBeforeNodeCreate: (context) => NodeCreateDecision | Promise<NodeCreateDecision>

定義: interfaces/InterractionCallbacks.ts:342

ユーザーが対話的にノードを作成するときに呼び出されます ([作成] ▸ [ノードの追加]、または グラフ空間の位置がわかったら、キャンバスのコンテキスト メニューの「ここにノードを追加」) ノードが追加される前。ミラー onBeforeEdgeCreate:

  • false / { accept: false } を拒否権に戻します — 何も追加されません。
  • true を返して、ライブラリのデフォルト ノードを受け入れます。
  • 新しいものを受け入れて供給するには、{ accept: true, id?, data?, style? } を返します ノードの ID / ペイロード / スタイル。

非同期である可能性があり、NodeCreateContext.promptData も同じように開きます エッジフックが使用する宣言形式またはカスタムHTML モーダル。このフックがないと、 このツールは引き続き機能します。デフォルトの名前のないノードが作成されるだけです。プログラマティック graph.addNode() は決してゲートされません。

パラメータ ​

context ​

NodeCreateContext

返品 ​

NodeCreateDecision | Promise<NodeCreateDecision>


onBeforeNodeEditCommit()? ​

optional onBeforeNodeEditCommit: (context) => boolean | Promise<boolean>

定義: interfaces/InterractionCallbacks.ts:216

ノード編集セッションがコミットされようとしているときに呼び出されます。として機能します 検証/永続化/拒否フック: false (またはその約束) を返す 拒否すると、ノードのデータは変更されず、モーダルが開いたままになります。成功すると、 ノードのデータが置き換えられ、データ バス上で nodeChange が起動されます。

パラメータ ​

context ​

NodeEditCommitContext

返品 ​

boolean | Promise<boolean>

コミットを続行するかどうかを示すブール値


onCanvasBeforeZoom()? ​

optional onCanvasBeforeZoom: (event) => void

定義: interfaces/InterractionCallbacks.ts:176

キャンバスがズームされようとしているときに呼び出されます。

パラメータ ​

event ​

unknown

返品 ​

void


onCanvasClick()? ​

optional onCanvasClick: (event) => void

定義: interfaces/InterractionCallbacks.ts:162

キャンバスをクリックすると呼び出されます。

パラメータ ​

event ​

PointerEvent

返品 ​

void


onCanvasContextmenu()? ​

optional onCanvasContextmenu: (event) => void

定義: interfaces/InterractionCallbacks.ts:186

キャンバスを右クリックすると呼び出されます。

パラメータ ​

event ​

PointerEvent

返品 ​

void


onCanvasMousemove()? ​

optional onCanvasMousemove: (event) => void

定義: interfaces/InterractionCallbacks.ts:191

マウスがキャンバス上を移動すると呼び出されます。

パラメータ ​

event ​

MouseEvent

返品 ​

void


onCanvasPointerDown()? ​

optional onCanvasPointerDown: (event) => void

定義: interfaces/InterractionCallbacks.ts:167

ユーザーがキャンバス上にポインタを置いたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

返品 ​

void


onCanvasPointerUp()? ​

optional onCanvasPointerUp: (event) => void

定義: interfaces/InterractionCallbacks.ts:171

ユーザーがキャンバス上にポインタを置いたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

返品 ​

void


onCanvasZoom()? ​

optional onCanvasZoom: (event) => void

定義: interfaces/InterractionCallbacks.ts:181

キャンバスがズームされるときに呼び出されます。

パラメータ ​

event ​

unknown

返品 ​

void


onEdgeBlur()? ​

optional onEdgeBlur: (edge, element) => void

定義: interfaces/InterractionCallbacks.ts:102

ユーザーがエッジの選択を解除したときに呼び出されます。

パラメータ ​

edge ​

Edge

element ​

TElement

返品 ​

void


onEdgeClick()? ​

optional onEdgeClick: (event, edge, element) => void

定義: interfaces/InterractionCallbacks.ts:84

ユーザーがエッジを選択すると呼び出されます。

パラメータ ​

event ​

PointerEvent

edge ​

Edge

element ​

TElement

返品 ​

void


onEdgeContextmenu()? ​

optional onEdgeContextmenu: (event, edge, element) => void

定義: interfaces/InterractionCallbacks.ts:92

エッジが右クリックされたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

edge ​

Edge

element ​

TElement

返品 ​

void


onEdgeDbclick()? ​

optional onEdgeDbclick: (event, edge, element) => void

定義: interfaces/InterractionCallbacks.ts:88

ユーザーがエッジを選択すると呼び出されます。

パラメータ ​

event ​

PointerEvent

edge ​

Edge

element ​

TElement

返品 ​

void


onEdgeEdit()? ​

optional onEdgeEdit: (session) => HTMLDivElement

定義: interfaces/InterractionCallbacks.ts:310

エッジ編集セッションの開始時に呼び出されます。 UIフック、ミラーリングとして機能します。 onNodeEdit: 編集モーダルに挿入するボディを返します。カスタム 本体がドラフトを所有します — session.draft をミューテートします (または session.setDraft を呼び出します)。 ライブラリには送信時に読み取るフォームがないため、ユーザーが入力します。

パラメータ ​

session ​

EdgeEditSession

エッジ編集セッション

返品 ​

HTMLDivElement

モーダルの本体に注入される HTML Div


onEdgeEditCancel()? ​

optional onEdgeEditCancel: (edge) => void

定義: interfaces/InterractionCallbacks.ts:325

エッジ編集セッションがキャンセルされたときに呼び出されます。

パラメータ ​

edge ​

Edge

返品 ​

void


onEdgeHoverIn()? ​

optional onEdgeHoverIn: (event, edge, element) => void

定義: interfaces/InterractionCallbacks.ts:107

ユーザーがエッジの上にマウスを置いたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

edge ​

Edge

element ​

TElement

返品 ​

void


onEdgeHoverOut()? ​

optional onEdgeHoverOut: (event, edge, element) => void

定義: interfaces/InterractionCallbacks.ts:111

ユーザーがエッジの上にマウスを置いたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

edge ​

Edge

element ​

TElement

返品 ​

void


onEdgeSelect()? ​

optional onEdgeSelect: (edge, element) => void

定義: interfaces/InterractionCallbacks.ts:97

ユーザーがエッジを選択すると呼び出されます。

パラメータ ​

edge ​

Edge

element ​

TElement

返品 ​

void


onNodeBlur()? ​

optional onNodeBlur: (node, element) => void

定義: interfaces/InterractionCallbacks.ts:59

ユーザーがノードの選択を解除したときに呼び出されます。

パラメータ ​

node ​

Node

element ​

TElement

返品 ​

void


onNodeClick()? ​

optional onNodeClick: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:16

ノードをクリックすると呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodeContextmenu()? ​

optional onNodeContextmenu: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:26

ノードを右クリックすると呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodeDbclick()? ​

optional onNodeDbclick: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:21

ノードがダブルクリックされると呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodeDragended()? ​

optional onNodeDragended: (event, node) => void

定義: interfaces/InterractionCallbacks.ts:79

ノードのドラッグが終了すると呼び出されます。

パラメータ ​

event ​

MouseEvent

node ​

Node

返品 ​

void


onNodeDragging()? ​

optional onNodeDragging: (event, node) => void

定義: interfaces/InterractionCallbacks.ts:74

ノードがドラッグされたときに呼び出されます。

パラメータ ​

event ​

MouseEvent

node ​

Node

返品 ​

void


onNodeEdit()? ​

optional onNodeEdit: (session) => HTMLDivElement

定義: interfaces/InterractionCallbacks.ts:208

ノード編集セッションの開始時に呼び出されます。 UI フックとして機能します。

パラメータ ​

session ​

NodeEditSession

ノード編集セッション

返品 ​

HTMLDivElement

モーダルの本体に注入される HTML Div


onNodeEditCancel()? ​

optional onNodeEditCancel: (node) => void

定義: interfaces/InterractionCallbacks.ts:220

ノード編集セッションがキャンセルされたときに呼び出されます

パラメータ ​

node ​

Node

返品 ​

void


onNodeHoverIn()? ​

optional onNodeHoverIn: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:31

ユーザーがノード上にマウスを移動すると呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodeHoverOut()? ​

optional onNodeHoverOut: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:35

ユーザーがノードからホバリングしたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodePointerDown()? ​

optional onNodePointerDown: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:40

ユーザーがノードを下にポインターすると呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodePointerUp()? ​

optional onNodePointerUp: (event, node, element) => void

定義: interfaces/InterractionCallbacks.ts:44

ユーザーがノードを上にポインタしたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

node ​

Node

element ​

TElement

返品 ​

void


onNodeSelect()? ​

optional onNodeSelect: (node, element) => void

定義: interfaces/InterractionCallbacks.ts:49

ユーザーがノードを選択すると呼び出されます。

パラメータ ​

node ​

Node

element ​

TElement

返品 ​

void


onNodesSelect()? ​

optional onNodesSelect: (selection) => void

定義: interfaces/InterractionCallbacks.ts:54

ユーザーがノードを選択すると呼び出されます。

パラメータ ​

selection ​

NodeSelection<TElement>[]

返品 ​

void


onNoteClick()? ​

optional onNoteClick: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:116

メモをクリックすると呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onNoteContextmenu()? ​

optional onNoteContextmenu: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:126

ノートを右クリックすると呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onNoteDbclick()? ​

optional onNoteDbclick: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:121

ノートがダブルクリックされると呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onNoteDragging()? ​

optional onNoteDragging: (event, note) => void

定義: interfaces/InterractionCallbacks.ts:157

ユーザーがノードを上にポインタしたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

返品 ​

void


onNoteHandleClick()? ​

optional onNoteHandleClick: (event, note, handle) => void

定義: interfaces/InterractionCallbacks.ts:149

ユーザーがノードを下にポインターすると呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

handle ​

HTMLElement

返品 ​

void


onNoteHandlePointerDown()? ​

optional onNoteHandlePointerDown: (event, note, handle) => void

定義: interfaces/InterractionCallbacks.ts:153

ユーザーがノードを上にポインタしたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

handle ​

HTMLElement

返品 ​

void


onNoteHoverIn()? ​

optional onNoteHoverIn: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:131

ユーザーがメモの上にマウスを移動すると呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onNoteHoverOut()? ​

optional onNoteHoverOut: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:135

ユーザーがメモからマウスを移動したときに呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onNotePointerDown()? ​

optional onNotePointerDown: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:140

ユーザーがノードを下にポインターすると呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onNotePointerUp()? ​

optional onNotePointerUp: (event, note, element) => void

定義: interfaces/InterractionCallbacks.ts:144

ユーザーがノードを上にポインタしたときに呼び出されます。

パラメータ ​

event ​

PointerEvent

note ​

Note

element ​

TElement

返品 ​

void


onSimulationSlowTick()? ​

optional onSimulationSlowTick: () => void

定義: interfaces/InterractionCallbacks.ts:201

シミュレーションの 10 分の 1 ごとに呼び出されます。

返品 ​

void


onSimulationTick()? ​

optional onSimulationTick: () => void

定義: interfaces/InterractionCallbacks.ts:196

シミュレーションが開始されると呼び出されます。

返品 ​

void