next-auto-i18n 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +35 -3
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -51,6 +51,7 @@ Et en quelques secondes :
51
51
  - Genere `i18n/routing.ts` + `i18n/request.ts` (requis pour les Server Components)
52
52
  - Cree la structure `app/[locale]/` requise par le App Router next-intl
53
53
  - Injecte un **Language Switcher flottant** (personnalisable) pour changer de langue
54
+ - Detecte les strings dans les `const` module-scope et vous guide pour les integrer manuellement
54
55
 
55
56
  ## Commandes
56
57
 
@@ -66,12 +67,24 @@ next-auto-i18n init --locale en,es,de # langues cibles en ligne de commande
66
67
 
67
68
  ### `next-auto-i18n sync`
68
69
 
69
- Rescanne le projet et traduit les nouvelles strings (mode incrementiel).
70
+ Rescanne le projet, integre les nouvelles strings et synchronise toutes les traductions (mode incrementiel — les cles existantes sont preservees).
70
71
 
71
72
  ```bash
72
73
  next-auto-i18n sync
73
74
  ```
74
75
 
76
+ ### `next-auto-i18n extract`
77
+
78
+ Traduit toutes les strings et genere un **guide d'integration Markdown** — sans modifier aucun fichier source. Utile pour garder le controle sur la reecriture du code.
79
+
80
+ ```bash
81
+ next-auto-i18n extract # guide genere dans i18n-guide.md
82
+ next-auto-i18n extract --out docs/i18n-guide.md # chemin personnalise
83
+ next-auto-i18n extract --locale en,es # langues cibles (si pas de config)
84
+ ```
85
+
86
+ Le guide genere inclut : exemples d'utilisation Client/Server Component, tableaux par fichier (ligne, type, cle, code a copier-coller), section dedicee aux strings module-scope.
87
+
75
88
  ### `next-auto-i18n add-locale <locale>`
76
89
 
77
90
  Ajoute une nouvelle langue et traduit toutes les cles existantes.
@@ -133,9 +146,10 @@ Chaque string devient une cle i18n normalisee :
133
146
 
134
147
  ### 3. Traduction DeepL
135
148
 
136
- - Appel batch avec protection des placeholders (`{name}` -> `<x>name</x>`)
149
+ - Appel batch avec protection des placeholders (`{name}` `<x>name</x>`)
137
150
  - Mode incrementiel : seules les cles manquantes sont traduites
138
151
  - Compatible DeepL Free (500k chars/mois) et Pro
152
+ - Restauration automatique des entites HTML (`&apos;`, `&#39;`, etc.)
139
153
 
140
154
  ### 4. Reecriture des composants
141
155
 
@@ -147,6 +161,24 @@ Chaque string devient une cle i18n normalisee :
147
161
 
148
162
  - Server Components : `await getTranslations()` (next-intl/server)
149
163
  - Client Components : `useTranslations()` (next-intl)
164
+ - Les strings dans des `const` module-scope (hors composant) sont **detectees et signalees** avec le fichier + numero de ligne — elles sont traduites dans les JSON mais pas reecrites automatiquement (voir section suivante)
165
+
166
+ ### Strings module-scope
167
+
168
+ Les `const` declarees au niveau module (hors fonction/composant) ne peuvent pas utiliser `t()` directement. next-auto-i18n les detecte, les traduit, et vous indique quoi faire :
169
+
170
+ ```tsx
171
+ // ❌ avant — const module-scope, t() inaccessible ici
172
+ const items = ['Accueil', 'A propos', 'Contact'];
173
+
174
+ // ✅ apres — deplacez la const dans le composant
175
+ export function Nav() {
176
+ const t = useTranslations();
177
+ const items = [t('accueil'), t('a_propos'), t('contact')];
178
+ }
179
+ ```
180
+
181
+ Utilisez `next-auto-i18n extract` pour obtenir un guide complet avec tous les cas a corriger.
150
182
 
151
183
  ### 5. Injection config Next.js
152
184
 
@@ -182,4 +214,4 @@ npm run dev -- init # test local
182
214
 
183
215
  ## Licence
184
216
 
185
- MIT
217
+ MIT — [Steven KOULO](https://github.com/stvekoulo)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "next-auto-i18n",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "Automatically translate your Next.js project in under 5 minutes",
5
5
  "type": "module",
6
6
  "main": "./dist/cli/index.js",