Passa al contenuto principale

Riferimento API

Nucleo: TreeNode<TMetadata>​

interface TreeNode<TMetadata = unknown> {
id: string;
name: string;
order?: number;
children?: TreeNode<TMetadata>[];
metadata?: TMetadata;
}

Adattatori​

buildOpenApiTree(document, options?)​

Crea un albero di navigazione OpenAPI.

OpzioneTipoValore predefinitoDescrizione
showInternalbooleanfalseMostra i nodi marcati x-internal o x-scalar-ignore quando l’opzione è attiva
showComponentsbooleantrueMostra la sezione dei componenti
showWebhooksbooleantrueMostra i webhook
defaultExpandDepthnumber2Profondità di espansione predefinita

Priorità di navigazione: tag annidati nativi OAS 3.2 → x-tagGroups → tag piatti.

buildSchemaTree(schema, options?)​

OpzioneTipoValore predefinitoDescrizione
maxDepthnumber8Profondità massima di annidamento
showDeprecatedbooleantrueMostra proprietà deprecate
expandCombinatorsbooleantrueEspande oneOf/anyOf/allOf
showArrayItemsbooleantrueEspande gli elementi degli array

buildDocTree(document, options?)​

Albero di documentazione in stile Stripe in cui ogni operazione si espande per mostrare parametri, corpo della richiesta e risposte.

Componente React <Tree />​

Proprietà principali​

ProprietàTipoValore predefinitoDescrizione
nodesTreeNode[]obbligatorioNodi radice da visualizzare
onSelect(node) => void—Richiamata quando viene selezionato un nodo
searchablebooleanfalseMostra il campo di ricerca
defaultExpandDepthnumber1Profondità iniziale di espansione
showExpandAllbooleanfalseComando per espandere o comprimere tutto
draggablebooleanfalseAbilita il riordinamento tramite trascinamento
onReorder(result: ReorderResult) => void—Richiamata al riordinamento sotto lo stesso genitore
onMove(nodes, movedNode, targetParentId) => void—Richiamata allo spostamento tra livelli
canDrag(node) => boolean—Controlla quali nodi possono essere trascinati
canDrop(dragged, target, position) => boolean—Controlla le destinazioni di rilascio consentite
contextMenuItems(node) => ContextMenuItem[]—Voci del menu contestuale
onPatch(ops, context) => void—Operazioni di patch RFC 6902 al riordinamento
maxHeightnumber | string—Altezza massima prima dello scorrimento
size"xs" | "sm" | "md""sm"Variante di dimensione

Controllo imperativo (tramite ref)​

MetodoDescrizione
expandAll()Espande tutti i nodi
collapseAll()Comprime tutti i nodi
expandToDepth(depth)Espande fino a una profondità specifica
getExpandedIds()Ottiene gli ID dei nodi espansi
getSelectedNode()Ottiene il nodo selezionato
scrollToNode(id)Scorre fino a rendere visibile un nodo
locateNode(predicate)Trova un nodo, espande gli antenati, lo seleziona e lo porta nell’area visibile

Utilità principali​

FunzioneDescrizione
findNode(nodes, id)Trova un nodo per ID
findPath(nodes, id)Trova il percorso completo dalla radice
getLeaves(nodes)Ottiene tutti i nodi foglia
countNodes(nodes)Conta tutti i nodi
filterTree(nodes, { query })Filtra in base alla ricerca
flattenTree(nodes)Appiattisce in un elenco in preordine
updateNode(nodes, id, updater)Aggiorna un nodo senza modificare l’originale
removeNode(nodes, id)Rimuove un nodo senza modificare l’originale