> ## Documentation Index
> Fetch the complete documentation index at: https://tomee-mintlify-b25c6564.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Arborescence

> Utilisez le composant arbre pour afficher des structures hiérarchiques de fichiers et dossiers, avec nœuds repliables et coloration syntaxique des chemins.

Utilisez des composants arborescents pour afficher des structures hiérarchiques comme des systèmes de fichiers, des répertoires de projet ou du contenu imbriqué. Le composant d’arborescence prend en charge la navigation au clavier et les fonctionnalités d’accessibilité.

Vous pouvez créer des arborescences avec une liste Markdown ou avec les composants `Tree.Folder` et `Tree.File`. `<Tree>` et `<FileTree>` sont des alias : chaque balise fonctionne avec l’une ou l’autre des syntaxes.

<div id="markdown-list-syntax">
  ## Syntaxe de liste Markdown
</div>

Écrivez une liste Markdown imbriquée dans `<FileTree>` (ou `<Tree>`) pour décrire une structure de dossiers. Ajoutez une barre oblique à la fin pour indiquer un dossier, ou imbriquez des éléments en dessous. Les dossiers qui contiennent des éléments imbriqués sont développés par défaut.

<FileTree>
  * docs/
    * index.mdx
    * guides/
      * configuration.mdx
  * docs.config.ts
</FileTree>

```mdx File tree example theme={null}
<FileTree>

- docs/
  - index.mdx
  - guides/
    - configuration.mdx
- docs.config.ts

</FileTree>
```

Laissez une ligne vide après la balise d’ouverture et avant la balise de fermeture pour que la liste soit interprétée comme du Markdown. Les mises en forme en ligne telles que `` `code` ``, `**gras**` ou `_italique_` sont supprimées des noms ; ne les utilisez que si elles s’affichent correctement dans votre build.

<div id="basic-tree">
  ## Arborescence de base
</div>

<Tree>
  <Tree.Folder name="app" defaultOpen>
    <Tree.File name="layout.tsx" />

    <Tree.File name="page.tsx" />

    <Tree.File name="global.css" />
  </Tree.Folder>

  <Tree.Folder name="lib">
    <Tree.File name="utils.ts" />

    <Tree.File name="db.ts" />
  </Tree.Folder>

  <Tree.File name="package.json" />

  <Tree.File name="tsconfig.json" />
</Tree>

```mdx Tree example theme={null}
<Tree>
  <Tree.Folder name="app" defaultOpen>
    <Tree.File name="layout.tsx" />
    <Tree.File name="page.tsx" />
    <Tree.File name="global.css" />
  </Tree.Folder>
  <Tree.Folder name="lib">
    <Tree.File name="utils.ts" />
    <Tree.File name="db.ts" />
  </Tree.Folder>
  <Tree.File name="package.json" />
  <Tree.File name="tsconfig.json" />
</Tree>
```

<div id="nested-folders">
  ## Dossiers imbriqués
</div>

Créez des structures profondément imbriquées en imbriquant des composants `Tree.Folder` les uns dans les autres.

<Tree>
  <Tree.Folder name="app" defaultOpen>
    <Tree.File name="layout.tsx" />

    <Tree.File name="page.tsx" />

    <Tree.Folder name="api" defaultOpen>
      <Tree.Folder name="auth">
        <Tree.File name="route.ts" />
      </Tree.Folder>

      <Tree.File name="route.ts" />
    </Tree.Folder>

    <Tree.Folder name="components">
      <Tree.File name="button.tsx" />

      <Tree.File name="dialog.tsx" />

      <Tree.File name="tabs.tsx" />
    </Tree.Folder>
  </Tree.Folder>

  <Tree.File name="package.json" />
</Tree>

```mdx Nested folders example theme={null}
<Tree>
  <Tree.Folder name="app" defaultOpen>
    <Tree.File name="layout.tsx" />
    <Tree.File name="page.tsx" />
    <Tree.Folder name="api" defaultOpen>
      <Tree.Folder name="auth">
        <Tree.File name="route.ts" />
      </Tree.Folder>
      <Tree.File name="route.ts" />
    </Tree.Folder>
    <Tree.Folder name="components">
      <Tree.File name="button.tsx" />
      <Tree.File name="dialog.tsx" />
      <Tree.File name="tabs.tsx" />
    </Tree.Folder>
  </Tree.Folder>
  <Tree.File name="package.json" />
</Tree>
```

<div id="keyboard-navigation">
  ## Navigation au clavier
</div>

Le composant d’arborescence prend en charge la navigation au clavier.

* **Flèches directionnelles** : Parcourir les éléments visibles vers le haut et vers le bas.
* **Flèche droite** : Développer un dossier fermé ou passer au premier élément enfant d’un dossier ouvert.
* **Flèche gauche** : Réduire un dossier ouvert ou passer au dossier parent.
* **Home** : Aller au premier élément de l’arborescence.
* **End** : Aller au dernier élément visible de l’arborescence.
* **Entrée/Espace** : Basculer l’état ouvert/fermé d’un dossier.
* **\*** : Développer tous les dossiers au même niveau.
* **Recherche par saisie anticipée (type-ahead)** : Taper des caractères pour passer aux éléments qui commencent par ces caractères.

<div id="properties">
  ## Propriétés
</div>

<div id="treefolder">
  ### Tree.Folder
</div>

<ResponseField name="name" type="string" required>
  Le nom du dossier affiché dans l’arborescence.
</ResponseField>

<ResponseField name="defaultOpen" type="boolean" default="false">
  Indique si le dossier s'ouvre par défaut.
</ResponseField>

<ResponseField name="openable" type="boolean" default="true">
  Indique si les utilisateurs peuvent ouvrir et fermer le dossier. Réglez cette valeur sur false pour les dossiers non interactifs.
</ResponseField>

<div id="treefile">
  ### Tree.File
</div>

<ResponseField name="name" type="string" required>
  Le nom du fichier affiché dans l'arborescence.
</ResponseField>
