# Référence React API

<PageBadges />

Toutes les exportations JavaScript prises en charge sont disponibles à partir de `form0-react`, sauf si un autre chemin est affiché.

## Rendu

- `FormRenderer` — rend et gère un formulaire piloté par schema.
- `ThemeProvider`, `ThemeContext`, `useThemeClass` — fournissent ou lisent la classe de thème active.

Voir [FormRenderer](/fr/bindings/react/form-renderer) et
[Thèmes et styles](/fr/bindings/react/themes-styling).

## Registre sur le terrain

- `FieldRegistryProvider`, `FieldRegistryContext`, `useFieldRegistry`
- `createFieldRegistry`, `defaultFieldRegistry`
- `registerFieldComponent`, `unregisterFieldComponent`, `resetFieldComponents`
- `getFieldComponent`, `listRegisteredFieldTypes`, `getMissingFieldComponentTypes`
- `KNOWN_FIELD_TYPES`

Voir [Champ personnalisé renderers](/fr/bindings/react/custom-renderers).

## Schema utilities

- `cloneDeep(value)` et `cloneSchema(schema)` créent des copies détachées.
- `ensureSchemaKeys(elements)` ajoute des clés stables si nécessaire et indique s'il a changé le
  entrée.
- `prepareSchema(schema)` clone un schema et assure les clés des éléments sur la copie.

## Intégration spécialisée

- `useBuildingPlanController(options)` coordonne l’interface utilisateur de la section
  données reproductibles. Il est spécialisé plutôt qu'un crochet de forme-état général.

Le client interne `useFormEngine`, worker, les composants individuels par défaut renderer, et
`FieldRenderer` ne sont pas des exportations de paquets. L'importation de fichiers internes n'est pas prise en charge par le paquet
export map.

Les jetons de thème sont exportés séparément de `form0-react/theme.css.js`. La feuille de style compilée est
disponible en tant que `form0-react/index.css`.
