# General Translation Changelog: gt 2.12.0: Derivazione di oggetti e dizionari
URL: https://generaltranslation.com/it/blog/gt-cli_v2_12_0.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 
Authors: Ernest McCarter
Published: 2026-03-19

## Panoramica

[`derive()`](/docs/react/reference/functions/derive) ora può ricavare valori da oggetti e array, non solo dai valori restituiti dalle funzioni. Lo stesso supporto è disponibile anche per [`derive()`](/docs/python/reference/functions/derive) in Python con dizionari ed elenchi. Questo significa che la CLI può estrarre staticamente tutte le possibili varianti di stringa dalle strutture dati in fase di build, creando una voce di traduzione separata per ciascuna.

Questo si basa sul [supporto alle tagged template literal per `derive()`](/devlog/gt-react_v10_15_0) aggiunto in gt-react@10.15.0.

## Accesso a oggetti e array

Dato un oggetto contenente varianti di stringa, [`derive()`](/docs/react/reference/functions/derive) estrae tutti i valori:

```tsx
const labels = { success: "Saved", error: "Failed", pending: "Saving..." };

t`Status: ${derive(labels[status])}`;
```

La CLI risolve tutti e tre i valori e registra voci di traduzione distinte per ciascuno.

Funziona sia con l&#39;accesso indicizzato (`obj[key]`) sia con l&#39;accesso statico (`obj.prop`) e supporta l&#39;annidamento:

```tsx
const messages = {
  greeting: { formal: "Good evening", casual: "Hey" },
  farewell: { formal: "Goodbye", casual: "See ya" },
};

t`${derive(messages[category][tone])}`;
```

Gli array funzionano allo stesso modo:

```tsx
const ranks = ["Bronze", "Silver", "Gold", "Platinum"];

t`Your rank: ${derive(ranks[level])}`;
```

## Python

La stessa risoluzione di oggetto/array funziona in Python con dizionari ed elenchi:

```python
from gt_flask import t, derive

labels = { "success": "Saved", "error": "Failed" }

t(derive(labels[status_key]))
```

```python
from gt_flask import t, derive

ranks = ["Bronze", "Silver", "Gold", "Platinum"]

t(derive(ranks[level]))
```

Passa l&#39;espressione derivata come primo argomento, oppure inseriscila in una f-string passata come tale argomento. Inserirla nel valore di un&#39;interpolazione con parola chiave non estrae le voci del dizionario o dell&#39;elenco.

## Requisiti

* Gli oggetti e gli array devono essere dichiarati con `const` (TypeScript) o a livello di modulo (Python).
* La sintassi spread (`...base`) è supportata e viene espansa al momento dell&#39;estrazione.
* Le annotazioni TypeScript (`as const`, `satisfies`) vengono rimosse automaticamente.
* Gli spread circolari vengono rilevati e generano un avviso invece di mandare il processo in stallo.

## Link

* [Precedente: `derive()` nelle tagged template literal (gt-react@10.15.0)](/devlog/gt-react_v10_15_0)
* [Riferimento API per `derive()`](/docs/react/reference/functions/derive)
* [PR #1137](https://github.com/generaltranslation/gt/pull/1137)

## Sitemap

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