# gt-node: General Translation Node.js SDK: derive
URL: https://generaltranslation.com/fr/docs/node/reference/functions/derive.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Marque le contenu calculé comme dérivable pour l’extraction de General Translation. Référence de l’API pour derive.

Le contenu dérivable est calculé dans le code source, mais correspond à un ensemble fixe de valeurs que la CLI peut traduire. Utilisez `derive` lorsqu’une chaîne traduite inclut par interpolation une valeur qui doit être détectée lors de l’extraction plutôt que traitée comme une variable d’exécution.

## Vue d’ensemble [#overview]

Encapsulez une expression calculée avec `derive` dans une chaîne traduite. Le CLI résout l’expression en chacune des valeurs statiques possibles et inclut ces valeurs dans le contenu source à traduire. À l’exécution, `derive` renvoie son argument tel quel.

```ts
import { derive, getGT } from 'gt-node';

const gt = await getGT();
const message = gt(`My name is ${derive(getSubject())}`);
```

Signature :

```ts
derive<T extends string | boolean | number | null | undefined>(content: T): T
```

*Remarque : `derive` est un marqueur utilisé à la compilation. Exécutez [`gt validate`](/docs/cli/reference/commands/validate) après avoir ajouté ou modifié des appels à `derive` pour vérifier que le CLI peut résoudre chaque expression dérivable.*

## Fonctionnement [#how-it-works]

* **Indication d’extraction.** Le CLI tente de résoudre l’expression enveloppée en toutes ses valeurs statiques possibles et les ajoute au contenu envoyé en traduction.
* **Transparence à l’exécution.** À l’exécution, `derive` renvoie exactement ce qu’il a reçu ; il n’a donc aucun effet sur la valeur.
* **Valeurs non dérivables.** Lorsqu’une expression ne peut pas être analysée statiquement, enveloppez-la avec [`declareVar`](/docs/node/reference/functions/declare-var) dans l’appel à `derive`.

## Paramètres [#parameters]

| Paramètre             | Description                           | Type                                               | Facultatif | Par défaut |
| --------------------- | ------------------------------------- | -------------------------------------------------- | ---------- | ---------- |
| [`content`](#content) | Le contenu à marquer comme dérivable. | `string \| boolean \| number \| null \| undefined` | Non        | —          |

### `content` [#content]

**Type** `string | boolean | number | null | undefined` · **Obligatoire**

Le contenu à marquer comme dérivable pour l’extraction des traductions.

## Renvoie [#returns]

**Type** `T`

Le même contenu, inchangé à l’exécution.

## Exemples [#examples]

```ts
import { derive, getGT } from 'gt-node';

function getSubject() {
  return Math.random() > 0.5 ? 'Alice' : 'Brian';
}

const gt = await getGT();
const greeting = gt(`My name is ${derive(getSubject())}`);
```

## Remarques [#notes]

* `derive` n’affecte que l’extraction ; il ne modifie jamais la valeur à l’exécution.
* À utiliser avec [`declareVar`](/docs/node/reference/functions/declare-var) pour les valeurs qui ne peuvent pas être résolues statiquement.

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
