@intlayer/docs 8.4.6 → 8.4.8
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.
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
- package/docs/ar/configuration.md +300 -264
- package/docs/cs/configuration.md +958 -0
- package/docs/de/configuration.md +285 -249
- package/docs/en/configuration.md +115 -137
- package/docs/en-GB/configuration.md +272 -237
- package/docs/es/configuration.md +161 -125
- package/docs/fr/configuration.md +137 -101
- package/docs/it/configuration.md +294 -259
- package/docs/ja/configuration.md +269 -233
- package/docs/nl/configuration.md +958 -0
- package/docs/pt/configuration.md +311 -275
- package/docs/ru/configuration.md +287 -272
- package/docs/tr/configuration.md +265 -229
- package/package.json +6 -6
- package/docs/bn/configuration.md +0 -922
- package/docs/hi/configuration.md +0 -922
- package/docs/id/configuration.md +0 -922
- package/docs/ko/configuration.md +0 -922
- package/docs/pl/configuration.md +0 -922
- package/docs/uk/configuration.md +0 -922
- package/docs/ur/configuration.md +0 -922
- package/docs/vi/configuration.md +0 -922
- package/docs/zh/configuration.md +0 -922
package/docs/fr/configuration.md
CHANGED
|
@@ -563,12 +563,12 @@ Les sections suivantes décrivent les différents paramètres de configuration d
|
|
|
563
563
|
|
|
564
564
|
Définit les paramètres liés à l'internationalisation, y compris les locales disponibles et la locale par défaut de l'application.
|
|
565
565
|
|
|
566
|
-
| Champ | Type |
|
|
567
|
-
| ----------------- | ---------- |
|
|
568
|
-
| `locales` |
|
|
569
|
-
| `requiredLocales` |
|
|
570
|
-
| `strictMode` |
|
|
571
|
-
| `defaultLocale` |
|
|
566
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
567
|
+
| ----------------- | ------------------------------------------------------------------------------------------------------- | ---------- | ------------------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
568
|
+
| `locales` | La liste des locales supportées dans l'application. | `string[]` | `[Locales.ENGLISH]` | `['en', 'fr', 'es']` | |
|
|
569
|
+
| `requiredLocales` | La liste des locales obligatoires dans l'application. | `string[]` | `[]` | `[]` | • Si vide, toutes les locales sont obligatoires en mode `strict`.<br/>• Assurez-vous que les locales obligatoires sont également définies dans le champ `locales`. |
|
|
570
|
+
| `strictMode` | Garantit une implémentation robuste du contenu internationalisé en utilisant TypeScript. | `string` | `'inclusive'` | | • Si `"strict"`: la fonction `t` nécessite que chaque locale déclarée soit définie — lève une erreur si l'une d'elles est manquante ou non déclarée.<br/>• Si `"inclusive"`: avertit des locales manquantes mais accepte celles non déclarées qui existent.<br/>• Si `"loose"`: accepte n'importe quelle locale existante. |
|
|
571
|
+
| `defaultLocale` | La locale par défaut utilisée comme solution de secours si la locale demandée n'est pas trouvée. | `string` | `Locales.ENGLISH` | `'en'` | Utilisé pour déterminer la locale lorsqu'aucune n'est spécifiée dans l'URL, le cookie ou l'en-tête. |
|
|
572
572
|
|
|
573
573
|
---
|
|
574
574
|
|
|
@@ -576,31 +576,33 @@ Définit les paramètres liés à l'internationalisation, y compris les locales
|
|
|
576
576
|
|
|
577
577
|
Définit les paramètres liés à l'éditeur intégré, y compris le port du serveur et l'état d'activité.
|
|
578
578
|
|
|
579
|
-
| Champ | Type
|
|
580
|
-
| ---------------------------- |
|
|
581
|
-
| `applicationURL` |
|
|
582
|
-
| `port` |
|
|
583
|
-
| `editorURL` |
|
|
584
|
-
| `cmsURL` |
|
|
585
|
-
| `backendURL` |
|
|
586
|
-
| `enabled` |
|
|
587
|
-
| `clientId` |
|
|
588
|
-
| `clientSecret` |
|
|
589
|
-
| `dictionaryPriorityStrategy` |
|
|
590
|
-
| `liveSync` |
|
|
591
|
-
| `liveSyncPort` |
|
|
592
|
-
| `liveSyncURL` |
|
|
579
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
580
|
+
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | ----------------------------------- | ----------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
581
|
+
| `applicationURL` | L'URL de l'application. | `string` | `undefined` | `'http://localhost:3000'` <br/> `'https://example.com'` <br/> `process.env.INTLAYER_EDITOR_URL` | • Utilisé pour restreindre l'origine de l'éditeur pour des raisons de sécurité.<br/>• Si défini sur `'*'`, l'éditeur est accessible depuis n'importe quelle origine. |
|
|
582
|
+
| `port` | Le port utilisé par le serveur de l'éditeur visuel. | `number` | `8000` | | |
|
|
583
|
+
| `editorURL` | L'URL du serveur de l'éditeur. | `string` | `'http://localhost:8000'` | `'http://localhost:3000'` <br/> `'https://example.com'` <br/> `process.env.INTLAYER_EDITOR_URL` | • Utilisé pour restreindre les origines pouvant interagir avec l'application.<br/>• Si défini sur `'*'`, accessible depuis n'importe quelle origine.<br/>• Doit être défini si le port est changé ou si l'éditeur est hébergé sur un domaine différent. |
|
|
584
|
+
| `cmsURL` | L'URL de l'Intlayer CMS. | `string` | `'https://app.intlayer.org'` | `'https://app.intlayer.org'` | |
|
|
585
|
+
| `backendURL` | L'URL du serveur backend. | `string` | `https://back.intlayer.org` | `http://localhost:4000` | |
|
|
586
|
+
| `enabled` | Indique si l'application interagit avec l'éditeur visuel. | `boolean` | `false` | `process.env.NODE_ENV !== 'production'` | • Si `false`, l'éditeur ne peut pas interagir avec l'application.<br/>• La désactivation pour des environnements spécifiques renforce la sécurité. |
|
|
587
|
+
| `clientId` | Permet aux paquets intlayer de s'authentifier auprès du backend via oAuth2. Pour obtenir un jeton d'accès, rendez-vous sur [intlayer.org/project](https://app.intlayer.org/project). | `string` | <br/> `undefined` | `undefined` | | Garder secret ; stocker dans les variables d'environnement. |
|
|
588
|
+
| `clientSecret` | Permet aux paquets intlayer de s'authentifier auprès du backend via oAuth2. Pour obtenir un jeton d'accès, rendez-vous sur [intlayer.org/project](https://app.intlayer.org/project). | `string` | <br/> `undefined` | `undefined` | | Garder secret ; stocker dans les variables d'environnement. |
|
|
589
|
+
| `dictionaryPriorityStrategy` | Stratégie de priorité des dictionnaires lorsque le local et le distant sont présents. | `string` | `'local_first'` | `'distant_first'` | • `'distant_first'`: donne la priorité au distant sur le local.<br/>• `'local_first'`: donne la priorité au local sur le distant. |
|
|
590
|
+
| `liveSync` | Indique si le serveur de l'application doit recharger le contenu à chaud lorsqu'un changement est détecté sur le CMS <br/> Éditeur Visuel <br/> Backend. | `boolean` | `true` | `true` | • Lorsqu'un dictionnaire est ajouté/mis à jour, l'application met à jour le contenu de la page.<br/>• La synchronisation en direct externalise le contenu, ce qui peut impacter légèrement les performances.<br/>• Recommandé d'héberger les deux sur la même machine. |
|
|
591
|
+
| `liveSyncPort` | Le port du serveur de synchronisation en direct. | `number` | `4000` | `4000` | |
|
|
592
|
+
| `liveSyncURL` | L'URL du serveur de synchronisation en direct. | `string` | `'http://localhost:{liveSyncPort}'` | `'https://example.com'` | Pointe vers localhost par défaut ; peut être changé pour un serveur de synchronisation en direct distant. |
|
|
593
|
+
|
|
594
|
+
---
|
|
593
595
|
|
|
594
596
|
### Configuration du Routage (Routing Configuration)
|
|
595
597
|
|
|
596
598
|
Paramètres contrôlant le comportement du routage, y compris la structure des URL, le stockage des locales et la gestion du middleware.
|
|
597
599
|
|
|
598
|
-
| Champ | Type
|
|
599
|
-
| ---------- |
|
|
600
|
-
| `mode` | `'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'`
|
|
601
|
-
| `storage` | `false | 'cookie' | 'localStorage' | 'sessionStorage' | 'header' | CookiesAttributes | StorageAttributes | Array` |
|
|
602
|
-
| `basePath` |
|
|
603
|
-
| `rewrite` |
|
|
600
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
601
|
+
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
602
|
+
| `mode` | Mode de routage d'URL pour la gestion des locales. | `'prefix-no-default'` | <br/> `'prefix-all'` | <br/> `'no-prefix'` | <br/> `'search-params'` | `'prefix-no-default'` | `'prefix-no-default'`: `/dashboard` (en) ou `/fr/dashboard` (fr). `'prefix-all'`: `/en/dashboard`. `'no-prefix'`: locale gérée par d'autres moyens. `'search-params'`: `/dashboard?locale=fr` | N'impacte pas la gestion des cookies ou du stockage des locales. |
|
|
603
|
+
| `storage` | Configuration pour stocker la locale sur le client. | `false` | <br/> `'cookie'` | <br/> `'localStorage'` | <br/> `'sessionStorage'` | <br/> `'header'` | <br/> `CookiesAttributes` | <br/> `StorageAttributes` | <br/> `Array` | `['cookie', 'header']` | `'localStorage'` <br/> `[{ type: 'cookie', name: 'custom-locale', secure: true }]` | Voir le tableau des Options de Stockage ci-dessous. |
|
|
604
|
+
| `basePath` | Le chemin de base pour les URL de l'application. | `string` | `''` | `'/my-app'` | Si l'application est sur `https://example.com/my-app`, basePath est `'/my-app'` et les URL deviennent `https://example.com/my-app/en`. |
|
|
605
|
+
| `rewrite` | Règles de réécriture d'URL personnalisées qui surchargent le mode de routage par défaut pour des chemins spécifiques. Supporte les paramètres dynamiques `[param]`. | `Record<string, StrictModeLocaleMap<string>>` | `undefined` | Voir l'exemple ci-dessous | • Les règles de réécriture ont la priorité sur le `mode`.<br/>• Fonctionne avec Next.js et Vite.<br/>• `getLocalizedUrl()` applique automatiquement les règles correspondantes.<br/>• Voir [Réécritures d'URL Personnalisées](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/custom_url_rewrites.md). |
|
|
604
606
|
|
|
605
607
|
**Exemple de `rewrite`** :
|
|
606
608
|
|
|
@@ -795,14 +797,14 @@ export default config;
|
|
|
795
797
|
|
|
796
798
|
Paramètres relatifs au traitement du contenu dans l'application (noms de répertoires, extensions de fichiers et configurations dérivées).
|
|
797
799
|
|
|
798
|
-
| Champ | Type |
|
|
799
|
-
| ---------------- | ---------- |
|
|
800
|
-
| `watch` |
|
|
801
|
-
| `fileExtensions` |
|
|
802
|
-
| `contentDir` |
|
|
803
|
-
| `codeDir` |
|
|
804
|
-
| `excludedPath` |
|
|
805
|
-
| `formatCommand` |
|
|
800
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
801
|
+
| ---------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
802
|
+
| `watch` | Indique si Intlayer doit surveiller les modifications des fichiers de déclaration de contenu pour reconstruire les dictionnaires. | `boolean` | `true` | | |
|
|
803
|
+
| `fileExtensions` | Extensions de fichiers à rechercher lors du build des dictionnaires. | `string[]` | `['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.json5', '.content.jsonc', '.content.tsx', '.content.jsx']` | `['.data.ts', '.data.js', '.data.json']` | La personnalisation peut aider à éviter les conflits. |
|
|
804
|
+
| `contentDir` | Chemin du répertoire où sont stockés les fichiers de définition de contenu (`.content.*`). | `string[]` | `['.']` | `['src', '../../ui-library', require.resolve("@my-package/content")]` | Utilisé pour surveiller les fichiers de contenu afin de reconstruire les dictionnaires. |
|
|
805
|
+
| `codeDir` | Chemin du répertoire où le code est stocké, relatif au répertoire de base. | `string[]` | `['.']` | `['src', '../../ui-library']` | • Utilisé pour surveiller les fichiers de code à transformer (élagage, optimisation).<br/>• Séparer de `contentDir` peut améliorer les performances de build. |
|
|
806
|
+
| `excludedPath` | Répertoires exclus de la recherche de contenu. | `string[]` | `['**/node_modules/**', '**/dist/**', '**/build/**', '**/.intlayer/**', '**/.next/**', '**/.nuxt/**', '**/.expo/**', '**/.vercel/**', '**/.turbo/**', '**/.tanstack/**']` | | Pas encore utilisé ; prévu pour une implémentation future. |
|
|
807
|
+
| `formatCommand` | Commande pour formater les fichiers de contenu lorsque Intlayer les écrit localement. | `string` | `undefined` | `'npx prettier --write "{{file}}" --log-level silent'` (Prettier), `'npx biome format "{{file}}" --write --log-level none'` (Biome), `'npx eslint --fix "{{file}}" --quiet'` (ESLint) | • `{{file}}` est remplacé par le chemin du fichier.<br/>• Si non défini, Intlayer auto-détecte (essaie prettier, biome, eslint). |
|
|
806
808
|
|
|
807
809
|
---
|
|
808
810
|
|
|
@@ -810,113 +812,147 @@ Paramètres relatifs au traitement du contenu dans l'application (noms de réper
|
|
|
810
812
|
|
|
811
813
|
Paramètres contrôlant les opérations de dictionnaire, y compris le comportement de remplissage automatique et la génération de contenu.
|
|
812
814
|
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
|
821
|
-
|
|
|
822
|
-
| `
|
|
823
|
-
| `
|
|
824
|
-
| `
|
|
825
|
-
| `
|
|
815
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
816
|
+
| --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | -------------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
817
|
+
| `fill` | Contrôle la manière dont les fichiers de sortie de remplissage automatique (traduction par IA) sont générés. | `boolean` | <br/> `FilePathPattern` | <br/> `Partial<Record<Locale, boolean | FilePathPattern>>` | `true` | `{ en: '/locales/en/{{key}}.json', fr: ({ key }) => '/locales/fr/${key}.json', es: false }` | • `true`: chemin par défaut (même fichier que la source).<br/>• `false`: désactiver.<br/>• Le modèle string/fonction génère des fichiers par locale.<br/>• Objet par locale : chaque locale correspond à son propre modèle ; `false` ignore cette locale.<br/>• L'inclusion de `{{locale}}` déclenche la génération par locale.<br/>• Le `fill` au niveau du dictionnaire a toujours la priorité sur cette configuration globale. |
|
|
818
|
+
| `description` | Aide à comprendre l'objectif du dictionnaire dans l'éditeur et le CMS. Également utilisé comme contexte pour la génération de traductions par IA. | `string` | `undefined` | `'User profile section'` | |
|
|
819
|
+
| `locale` | Transforme le dictionnaire en un format par locale. Chaque champ déclaré devient un nœud de traduction. Si absent, le dictionnaire est traité comme multilingue. | `LocalesValues` | `undefined` | `'en'` | Utilisez ceci lorsque le dictionnaire est spécifique à une seule locale plutôt que de contenir des traductions pour plusieurs locales. |
|
|
820
|
+
| `contentAutoTransformation` | Transforme automatiquement les chaînes de contenu en nœuds typés (markdown, HTML ou insertion). | `boolean` | <br/> `{ markdown?: boolean; html?: boolean; insertion?: boolean }` | `false` | `true` | • Markdown : `### Title` → `md('### Title')`.<br/>• HTML : `<div>Title</div>` → `html('<div>Title</div>')`.<br/>• Insertion : `Hello {{name}}` → `insert('Hello {{name}}')`. |
|
|
821
|
+
| `location` | Indique où les fichiers de dictionnaire sont stockés et leur mode de synchronisation avec le CMS. | `'local'` | <br/> `'remote'` | <br/> `'hybrid'` | <br/> `'plugin'` | <br/> `string` | `'local'` | `'hybrid'` | • `'local'` : géré localement uniquement.<br/>• `'remote'` : géré à distance uniquement (CMS).<br/>• `'hybrid'` : géré à la fois localement et à distance.<br/>• `'plugin'` ou chaîne personnalisée : géré par un plugin ou une source personnalisée. |
|
|
822
|
+
| `importMode` | Contrôle la manière dont les dictionnaires sont importés. | `'static'` | <br/> `'dynamic'` | <br/> `'fetch'` | `'static'` | `'dynamic'` | • `'static'`: importé statiquement (remplace `useIntlayer` par `useDictionary`).<br/>• `'dynamic'`: importé dynamiquement via Suspense (remplace par `useDictionaryDynamic`).<br/>• `'fetch'`: récupéré via l'API live sync ; retombe sur `'dynamic'` en cas d'échec.<br/>• Repose sur les plugins `@intlayer/babel` et `@intlayer/swc`.<br/>• Les clés doivent être déclarées statiquement.<br/>• Ignoré si `optimize` est désactivé.<br/>• N'affecte pas `getIntlayer`, `getDictionary`, etc. |
|
|
823
|
+
| `priority` | Priorité du dictionnaire. Les valeurs les plus élevées l'emportent sur les plus basses lors de la résolution des conflits entre dictionnaires. | `number` | `undefined` | `1` | |
|
|
824
|
+
| `live` | Déprécié — utilisez plutôt `importMode: 'fetch'`. Indiquait si le contenu du dictionnaire était récupéré dynamiquement via l'API live sync. | `boolean` | `undefined` | | Renommé en `importMode: 'fetch'` dans la v8.0.0. |
|
|
825
|
+
| `schema` | Généré automatiquement par Intlayer pour la validation du schéma JSON. | `'https://intlayer.org/schema.json'` | auto-généré | | Ne pas modifier manuellement. |
|
|
826
|
+
| `title` | Aide à identifier le dictionnaire dans l'éditeur et le CMS. | `string` | `undefined` | `'User Profile'` | |
|
|
827
|
+
| `tags` | Catégorise les dictionnaires et fournit du contexte ou des instructions pour l'éditeur et l'IA. | `string[]` | `undefined` | `['user', 'profile']` | |
|
|
828
|
+
| `version` | Version du dictionnaire distant ; aide à suivre la version actuellement utilisée. | `string` | `undefined` | `'1.0.0'` | • Gérable sur le CMS.<br/>• Ne pas modifier localement. |
|
|
826
829
|
|
|
827
830
|
**Exemple de `fill`** :
|
|
828
831
|
|
|
829
832
|
```ts
|
|
830
833
|
dictionary: {
|
|
831
834
|
fill: {
|
|
832
|
-
en:
|
|
835
|
+
en: "/locales/en/{{key}}.content.json",
|
|
833
836
|
fr: ({ key }) => `/locales/fr/${key}.content.json`,
|
|
834
837
|
es: false,
|
|
835
|
-
}
|
|
836
|
-
}
|
|
838
|
+
},
|
|
839
|
+
};
|
|
837
840
|
```
|
|
838
841
|
|
|
839
842
|
---
|
|
840
843
|
|
|
841
|
-
### Configuration
|
|
844
|
+
### Configuration du Logger (Logger Configuration)
|
|
842
845
|
|
|
843
|
-
|
|
846
|
+
Paramètres pour personnaliser la sortie des logs d'Intlayer.
|
|
844
847
|
|
|
845
|
-
| Champ
|
|
846
|
-
|
|
|
847
|
-
| `
|
|
848
|
-
| `
|
|
849
|
-
| `apiKey` | `string` | Clé API pour le fournisseur sélectionné. | `process.env.OPENAI_API_KEY` | |
|
|
850
|
-
| `applicationContext` | `string` | Contexte supplémentaire sur votre application pour améliorer la précision de la traduction par l'IA. | `'Une plateforme d'apprentissage pour les enfants.'` | |
|
|
851
|
-
| `baseURL` | `string` | URL de base optionnelle pour les appels d'API. | | Utile si vous utilisez un proxy ou un déploiement d'IA local. |
|
|
852
|
-
| `dataSerialization` | `'json' | 'toon'` | Définit comment les données sont envoyées à l'IA. Par défaut : `'json'` | `'json'` | `'json'`: plus robuste et précis. `'toon'`: consomme moins de tokens mais peut être moins stable. |
|
|
848
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
849
|
+
| -------- | -------------------------------------- | -------------------------------------------------------------- | ---------------- | ----------------------- | ------------------------------------------------------------------------------------------------------ |
|
|
850
|
+
| `mode` | Indique le mode du logger. | `'default'` | <br/> `'verbose'` | <br/> `'disabled'` | `'default'` | `'verbose'` | • `'verbose'`: log plus d'infos pour le débogage.<br/>• `'disabled'`: désactive complètement le logger. |
|
|
851
|
+
| `prefix` | Le préfixe du logger. | `string` | `'[intlayer] '` | `'[my custom prefix] '` | |
|
|
853
852
|
|
|
854
853
|
---
|
|
855
854
|
|
|
856
|
-
### Configuration
|
|
855
|
+
### Configuration AI
|
|
856
|
+
|
|
857
|
+
Paramètres qui contrôlent les fonctionnalités IA d'Intlayer, y compris le fournisseur, le modèle et la clé API.
|
|
858
|
+
|
|
859
|
+
Cette configuration est optionnelle si vous êtes inscrit sur le [Tableau de bord Intlayer](https://app.intlayer.org/project) en utilisant une clé d'accès. Intlayer gérera automatiquement la solution IA la plus efficace et la plus rentable pour vos besoins. L'utilisation des options par défaut garantit une meilleure maintenabilité à long terme car Intlayer se met continuellement à jour pour utiliser les modèles les plus pertinents.
|
|
860
|
+
|
|
861
|
+
Si vous préférez utiliser votre propre clé API ou un modèle spécifique, vous pouvez définir votre configuration IA personnalisée.
|
|
862
|
+
Cette configuration IA sera utilisée globalement dans votre environnement Intlayer. Les commandes CLI utiliseront ces paramètres par défaut pour les commandes (ex: `fill`), ainsi que le SDK, l'Éditeur Visuel et le CMS. Vous pouvez surcharger ces valeurs par défaut pour des cas d'utilisation spécifiques via les paramètres de commande.
|
|
863
|
+
|
|
864
|
+
Intlayer supporte plusieurs fournisseurs d'IA pour une flexibilité accrue. Les fournisseurs actuellement supportés sont :
|
|
865
|
+
|
|
866
|
+
- **OpenAI** (par défaut)
|
|
867
|
+
- **Anthropic Claude**
|
|
868
|
+
- **Mistral AI**
|
|
869
|
+
- **DeepSeek**
|
|
870
|
+
- **Google Gemini**
|
|
871
|
+
- **Google AI Studio**
|
|
872
|
+
- **Google Vertex**
|
|
873
|
+
- **Meta Llama**
|
|
874
|
+
- **Ollama**
|
|
875
|
+
- **OpenRouter**
|
|
876
|
+
- **Alibaba Cloud**
|
|
877
|
+
- **Fireworks**
|
|
878
|
+
- **Hugging Face**
|
|
879
|
+
- **Groq**
|
|
880
|
+
- **Amazon Bedrock**
|
|
881
|
+
- **Together.ai**
|
|
882
|
+
|
|
883
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
884
|
+
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
885
|
+
| `provider` | Le fournisseur à utiliser pour les fonctionnalités IA d'Intlayer. | `'openai'` | <br/> `'anthropic'` | <br/> `'mistral'` | <br/> `'deepseek'` | <br/> `'gemini'` | <br/> `'ollama'` | <br/> `'openrouter'` | <br/> `'alibaba'` | <br/> `'fireworks'` | <br/> `'groq'` | <br/> `'huggingface'` | <br/> `'bedrock'` | <br/> `'googleaistudio'` | <br/> `'googlevertex'` | <br/> `'togetherai'` | `undefined` | `'anthropic'` | Les différents fournisseurs nécessitent des clés API différentes et ont des tarifs variés. |
|
|
886
|
+
| `model` | Le modèle à utiliser pour les fonctionnalités IA. | `string` | Aucun | `'gpt-4o-2024-11-20'` | Le modèle spécifique varie selon le fournisseur. |
|
|
887
|
+
| `temperature` | Contrôle le caractère aléatoire des réponses de l'IA. | `number` | Aucun | `0.1` | Température plus élevée = plus créatif et moins prévisible. |
|
|
888
|
+
| `apiKey` | Votre clé API pour le fournisseur sélectionné. | `string` | Aucun | `process.env.OPENAI_API_KEY` | Garder secret ; stocker dans les variables d'environnement. |
|
|
889
|
+
| `applicationContext` | Contexte supplémentaire sur votre application pour aider l'IA à générer des traductions plus précises (domaine, audience, ton, terminologie). | `string` | Aucun | `'Mon contexte d'application'` | Peut être utilisé pour ajouter des règles (ex: `"Vous ne devez pas transformer les urls"`). |
|
|
890
|
+
| `baseURL` | L'URL de base pour l'API IA. | `string` | Aucun | `'https://api.openai.com/v1'` <br/> `'http://localhost:5000'` | Peut pointer vers un point de terminaison d'API IA local ou personnalisé. |
|
|
891
|
+
| `dataSerialization` | Format de sérialisation des données pour les fonctionnalités IA. | `'json'` | <br/> `'toon'` | `undefined` | `'toon'` | • `'json'`: standard, fiable ; utilise plus de tokens.<br/>• `'toon'`: moins de tokens, moins cohérent.<br/>• Des paramètres supplémentaires sont passés au modèle comme contexte (effort de raisonnement, etc.). |
|
|
857
892
|
|
|
858
|
-
|
|
893
|
+
---
|
|
859
894
|
|
|
860
|
-
|
|
861
|
-
| -------------- | ------------------------ | --------------------------------------------------------------------------------------------------------------------------- | ------- | ---- |
|
|
862
|
-
| `mode` | `'auto' | 'manual'` | Indique si Intlayer doit s'exécuter automatiquement pendant les étapes de pré-build de l'application. Par défaut : `'auto'` | | |
|
|
863
|
-
| `optimize` | `boolean` | Indique si les dictionnaires compilés doivent être optimisés pour l'exécution. Par défaut : `true` en production | | |
|
|
864
|
-
| `outputFormat` | `('cjs' | 'esm')[]` | Format de sortie pour les fichiers de dictionnaire générés. Par défaut : `['cjs', 'esm']` | | |
|
|
865
|
-
| `checkTypes` | `boolean` | Indique si Intlayer doit vérifier les types dans les fichiers générés. Par défaut : `false` | | |
|
|
895
|
+
### Configuration de Build
|
|
866
896
|
|
|
867
|
-
|
|
897
|
+
Paramètres qui contrôlent comment Intlayer optimise et construit l'internationalisation de votre application.
|
|
868
898
|
|
|
869
|
-
|
|
899
|
+
Les options de build s'appliquent aux plugins `@intlayer/babel` et `@intlayer/swc`.
|
|
870
900
|
|
|
871
|
-
|
|
901
|
+
> En mode développement, Intlayer utilise des imports statiques pour les dictionnaires afin de simplifier l'expérience de développement.
|
|
902
|
+
|
|
903
|
+
> Lorsqu'il est optimisé, Intlayer remplacera les appels de dictionnaire pour optimiser le chunking, de sorte que le bundle final n'importe que les dictionnaires réellement utilisés.
|
|
872
904
|
|
|
873
|
-
| Champ
|
|
874
|
-
|
|
|
875
|
-
| `
|
|
876
|
-
| `
|
|
877
|
-
| `
|
|
878
|
-
| `
|
|
879
|
-
| `
|
|
880
|
-
| `configDir` | `string` | Répertoire des fichiers de configuration compilés. | `'.intlayer/config'` |
|
|
881
|
-
| `cacheDir` | `string` | Répertoire des fichiers de cache. | `'.intlayer/cache'` |
|
|
905
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
906
|
+
| ----------------- | ----------------------------------------------------------------------------------------------------- | -------------------------------- | --------------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
907
|
+
| `mode` | Contrôle le mode du build. | `'auto'` | <br/> `'manual'` | `'auto'` | `'manual'` | • `'auto'`: build activé automatiquement lors du build de l'application.<br/>• `'manual'`: ne s'exécute que lorsque la commande de build est exécutée.<br/>• Peut être utilisé pour désactiver les builds de dictionnaires (ex: pour éviter l'exécution dans des environnements Node.js). |
|
|
908
|
+
| `optimize` | Contrôle si le build doit être optimisé. | `boolean` | `undefined` | `process.env.NODE_ENV === 'production'` | • Si non défini, l'optimisation est déclenchée lors du build du framework (Vite/Next.js).<br/>• `true` force l'optimisation y compris en mode dev.<br/>• `false` la désactive.<br/>• Une fois activé, remplace les appels de dictionnaire pour optimiser le chunking.<br/>• Repose sur les plugins `@intlayer/babel` et `@intlayer/swc`. |
|
|
909
|
+
| `checkTypes` | Indique si le build doit vérifier les types TypeScript et loguer les erreurs. | `boolean` | `false` | | Peut ralentir le build. |
|
|
910
|
+
| `outputFormat` | Contrôle le format de sortie des dictionnaires. | `('esm' | 'cjs')[]` | `['esm', 'cjs']` | `['cjs']` | |
|
|
911
|
+
| `traversePattern` | Motifs définissant quels fichiers parcourir lors de l'optimisation. | `string[]` | `['**/*.{tsx,ts,js,mjs,cjs,jsx,vue,svelte,svte}', '!**/node_modules/**', '!**/dist/**', '!**/.intlayer/**', '!**/*.config.*', '!**/*.test.*', '!**/*.spec.*', '!**/*.stories.*']` | `['src/**/*.{ts,tsx}', '../ui-library/**/*.{ts,tsx}', '!**/node_modules/**']` | • Limitez l'optimisation aux fichiers pertinents pour améliorer les performances de build.<br/>• Ignoré si `optimize` est désactivé.<br/>• Utilise des motifs glob. |
|
|
882
912
|
|
|
883
913
|
---
|
|
884
914
|
|
|
885
|
-
### Configuration
|
|
915
|
+
### Configuration Système (System Configuration)
|
|
886
916
|
|
|
887
|
-
|
|
917
|
+
Ces paramètres sont destinés aux cas d'utilisation avancés et à la configuration interne d'Intlayer.
|
|
888
918
|
|
|
889
|
-
| Champ
|
|
890
|
-
|
|
|
891
|
-
| `
|
|
892
|
-
| `
|
|
893
|
-
| `
|
|
894
|
-
| `
|
|
895
|
-
| `
|
|
919
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
920
|
+
| ------------------------- | ------------------------------------------------------ | -------- | --------------------------------- | ------- | ---- |
|
|
921
|
+
| `dictionariesDir` | Répertoire des dictionnaires compilés. | `string` | `'.intlayer/dictionary'` | | |
|
|
922
|
+
| `moduleAugmentationDir` | Répertoire d'augmentation de modules TypeScript. | `string` | `'.intlayer/types'` | | |
|
|
923
|
+
| `unmergedDictionariesDir` | Répertoire des dictionnaires non fusionnés. | `string` | `'.intlayer/unmerged_dictionary'` | | |
|
|
924
|
+
| `typesDir` | Répertoire des types générés. | `string` | `'.intlayer/types'` | | |
|
|
925
|
+
| `mainDir` | Répertoire du fichier principal d'Intlayer. | `string` | `'.intlayer/main'` | | |
|
|
926
|
+
| `configDir` | Répertoire des fichiers de configuration compilés. | `string` | `'.intlayer/config'` | | |
|
|
927
|
+
| `cacheDir` | Répertoire des fichiers de cache. | `string` | `'.intlayer/cache'` | | |
|
|
896
928
|
|
|
897
929
|
---
|
|
898
930
|
|
|
899
|
-
### Configuration du
|
|
931
|
+
### Configuration du Compilateur
|
|
900
932
|
|
|
901
|
-
Paramètres
|
|
933
|
+
Paramètres qui contrôlent le compilateur Intlayer, qui extrait les dictionnaires directement de vos composants.
|
|
902
934
|
|
|
903
|
-
| Champ
|
|
904
|
-
|
|
|
905
|
-
| `
|
|
906
|
-
| `
|
|
935
|
+
| Champ | Description | Type | Par défaut | Exemple | Note |
|
|
936
|
+
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
937
|
+
| `enabled` | Indique si le compilateur doit être activé pour extraire les dictionnaires. | `boolean` | <br/> `'build-only'` | `true` | `'build-only'` | `'build-only'` ignore le compilateur pendant le développement pour accélérer les builds ; ne s'exécute que lors des commandes de build. |
|
|
938
|
+
| `dictionaryKeyPrefix` | Préfixe pour les clés de dictionnaire extraites. | `string` | `''` | `'ma-clé-'` | Ajouté à la clé générée (basée sur le nom du fichier) pour éviter les conflits. |
|
|
939
|
+
| `saveComponents` | Indique si les composants doivent être sauvegardés après avoir été transformés. | `boolean` | `false` | | • Si `true`, remplace les fichiers originaux par les fichiers transformés.<br/>• Le compilateur peut ensuite être supprimé après une exécution. |
|
|
940
|
+
| `output` | Définit le chemin des fichiers de sortie. Remplace `outputDir`. Supporte les variables de modèle : `{{fileName}}`, <br/> `{{key}}`, <br/> `{{locale}}`, <br/> `{{extension}}`, <br/> `{{componentFileName}}`, <br/> `{{componentExtension}}`, <br/> `{{format}}`, <br/> `{{componentFormat}}`, <br/> `{{componentDirPath}}`. | `boolean` | <br/> `FilePathPattern` | <br/> `Partial<Record<Locale, boolean | FilePathPattern>>` | `undefined` | `'./{{fileName}}{{extension}}'` <br/> `'/locales/{{locale}}/{{key}}.json'` <br/> `{ en: ({ key }) => './locales/en/${key}.json', fr: '...', es: false }` | • Les chemins `./` sont résolus par rapport au répertoire du composant.<br/>• Les chemins `/` par rapport à la racine.<br/>• `{{locale}}` déclenche la génération séparée par locale.<br/>• Supporte la notation objet par locale. |
|
|
941
|
+
| `noMetadata` | Si `true`, le compilateur omet les métadonnées du dictionnaire (clé, wrapper de contenu) de la sortie. | `boolean` | `false` | `false` → `{"key":"ma-clé","content":{"key":"valeur"}}` <br/> `true` → `{"key":"valeur"}` | • Utile pour les sorties JSON i18next ou ICU MessageFormat.<br/>• Fonctionne bien avec le plugin `loadJSON`. |
|
|
942
|
+
| `dictionaryKeyPrefix` | Préfixe de clé de dictionnaire | `string` | `''` | | Ajoute un préfixe optionnel aux clés de dictionnaire extraites |
|
|
907
943
|
|
|
908
944
|
---
|
|
909
945
|
|
|
910
946
|
### Schémas Personnalisés (Custom Schemas)
|
|
911
947
|
|
|
912
|
-
| Champ | Type |
|
|
913
|
-
| --------- |
|
|
914
|
-
| `schemas` |
|
|
948
|
+
| Champ | Description | Type |
|
|
949
|
+
| --------- | --------------------------------------------------------------------------------- | --------------------------- |
|
|
950
|
+
| `schemas` | Permet de définir des schémas Zod pour valider la structure de vos dictionnaires. | `Record<string, ZodSchema>` |
|
|
915
951
|
|
|
916
952
|
---
|
|
917
953
|
|
|
918
954
|
### Plugins
|
|
919
955
|
|
|
920
|
-
| Champ | Type |
|
|
921
|
-
| --------- |
|
|
922
|
-
| `plugins` |
|
|
956
|
+
| Champ | Description | Type |
|
|
957
|
+
| --------- | ------------------------------------- | ------------------ |
|
|
958
|
+
| `plugins` | Liste des plugins Intlayer à activer. | `IntlayerPlugin[]` |
|