@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.
Files changed (33) hide show
  1. package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  2. package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  3. package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  4. package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  5. package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  6. package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  7. package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  8. package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  9. package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  10. package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +1 -3
  11. package/docs/ar/configuration.md +300 -264
  12. package/docs/cs/configuration.md +958 -0
  13. package/docs/de/configuration.md +285 -249
  14. package/docs/en/configuration.md +115 -137
  15. package/docs/en-GB/configuration.md +272 -237
  16. package/docs/es/configuration.md +161 -125
  17. package/docs/fr/configuration.md +137 -101
  18. package/docs/it/configuration.md +294 -259
  19. package/docs/ja/configuration.md +269 -233
  20. package/docs/nl/configuration.md +958 -0
  21. package/docs/pt/configuration.md +311 -275
  22. package/docs/ru/configuration.md +287 -272
  23. package/docs/tr/configuration.md +265 -229
  24. package/package.json +6 -6
  25. package/docs/bn/configuration.md +0 -922
  26. package/docs/hi/configuration.md +0 -922
  27. package/docs/id/configuration.md +0 -922
  28. package/docs/ko/configuration.md +0 -922
  29. package/docs/pl/configuration.md +0 -922
  30. package/docs/uk/configuration.md +0 -922
  31. package/docs/ur/configuration.md +0 -922
  32. package/docs/vi/configuration.md +0 -922
  33. package/docs/zh/configuration.md +0 -922
@@ -2,7 +2,7 @@
2
2
  createdAt: 2024-08-13
3
3
  updatedAt: 2026-03-20
4
4
  title: Konfiguration (Configuration)
5
- description: Erfahren Sie, wie Sie Intlayer für Ihre Anwendung konfigurieren. Verstehen Sie die verschiedenen Einstellungen und Optionen, die zur Anpassung von Intlayer an Ihre Bedürfnisse zur Verfügung stehen.
5
+ description: Erfahren Sie, wie Sie Intlayer für Ihre Anwendung konfigurieren. Verstehen Sie die verschiedenen Einstellungen und Optionen, um Intlayer an Ihre Bedürfnisse anzupassen.
6
6
  keywords:
7
7
  - Konfiguration
8
8
  - Einstellungen
@@ -16,10 +16,10 @@ slugs:
16
16
  history:
17
17
  - version: 8.4.0
18
18
  date: 2026-03-20
19
- changes: Pro-Locale Objektnotation für 'compiler.output' und 'dictionary.fill' hinzugefügt
19
+ changes: Objektweise Notation pro Sprache für 'compiler.output' und 'dictionary.fill' hinzugefügt
20
20
  - version: 8.3.0
21
21
  date: 2026-03-11
22
- changes: 'baseDir' von Content-Konfiguration in System-Konfiguration verschoben
22
+ changes: 'baseDir' von 'content' in die 'system' Konfiguration verschoben
23
23
  - version: 8.2.0
24
24
  date: 2026-03-09
25
25
  changes: Compiler-Optionen aktualisiert, Unterstützung für 'output' und 'noMetadata' hinzugefügt
@@ -34,34 +34,34 @@ history:
34
34
  changes: Unterstützung für Open Router, Alibaba, Amazon, Google Vertex Bedrock, Fireworks, Groq, Hugging Face und Together.ai Anbieter hinzugefügt
35
35
  - version: 8.0.5
36
36
  date: 2026-02-06
37
- changes: `dataSerialization` zur AI-Konfiguration hinzugefügt
37
+ changes: `dataSerialization` zur KI-Konfiguration hinzugefügt
38
38
  - version: 8.0.0
39
39
  date: 2026-01-24
40
40
  changes: Import-Modus `live` in `fetch` umbenannt, um den zugrunde liegenden Mechanismus besser zu beschreiben.
41
41
  - version: 8.0.0
42
42
  date: 2026-01-22
43
- changes: Build-Konfiguration `importMode` in die Dictionary-Konfiguration verschoben.
43
+ changes: Build-Konfiguration `importMode` in die `dictionary` Konfiguration verschoben.
44
44
  - version: 8.0.0
45
45
  date: 2026-01-22
46
- changes: Option `rewrite` zur Routing-Konfiguration hinzugefügt
46
+ changes: `rewrite` Option zur Routing-Konfiguration hinzugefügt
47
47
  - version: 8.0.0
48
48
  date: 2026-01-18
49
- changes: Systemkonfiguration von Content-Konfiguration getrennt. Interne Pfade in die Eigenschaft `system` verschoben. `codeDir` hinzugefügt, um Content-Dateien und Code-Transformation zu trennen.
49
+ changes: Systemkonfiguration von der Inhaltskonfiguration getrennt. Interne Pfade in die Eigenschaft `system` verschoben. `codeDir` hinzugefügt, um Inhaltsdateien von der Codetransformation zu trennen.
50
50
  - version: 8.0.0
51
51
  date: 2026-01-18
52
- changes: Dictionary-Optionen `location` und `schema` hinzugefügt
52
+ changes: Wörterbuch-Optionen `location` und `schema` hinzugefügt
53
53
  - version: 7.5.1
54
54
  date: 2026-01-10
55
- changes: Unterstützung für JSON5- und JSONC-Dateiformate hinzugefügt
55
+ changes: Unterstützung für JSON5 und JSONC Dateiformate hinzugefügt
56
56
  - version: 7.5.0
57
57
  date: 2025-12-17
58
58
  changes: Option `buildMode` hinzugefügt
59
59
  - version: 7.0.0
60
60
  date: 2025-10-25
61
- changes: Konfiguration `dictionary` hinzugefügt
61
+ changes: `dictionary` Konfiguration hinzugefügt
62
62
  - version: 7.0.0
63
63
  date: 2025-10-21
64
- changes: `middleware` durch Routing-Konfiguration `routing` ersetzt
64
+ changes: `middleware` durch `routing` Konfiguration ersetzt
65
65
  - version: 7.0.0
66
66
  date: 2025-10-12
67
67
  changes: Option `formatCommand` hinzugefügt
@@ -79,23 +79,23 @@ history:
79
79
  changes: Import-Modus `live` hinzugefügt
80
80
  - version: 6.0.0
81
81
  date: 2025-09-04
82
- changes: Feld `hotReload` durch `liveSync` ersetzt, und Felder `liveSyncPort` und `liveSyncURL` hinzugefügt
82
+ changes: Feld `hotReload` durch `liveSync` ersetzt und die Felder `liveSyncPort` und `liveSyncURL` hinzugefügt
83
83
  - version: 5.6.1
84
84
  date: 2025-07-25
85
85
  changes: `activateDynamicImport` durch die Option `importMode` ersetzt
86
86
  - version: 5.6.0
87
87
  date: 2025-07-13
88
- changes: Standardmäßiges Verbzeichnis `contentDir` von `['src']` auf `['.']` geändert
88
+ changes: Standard `contentDir` von `['src']` zu `['.']` geändert
89
89
  - version: 5.5.11
90
90
  date: 2025-06-29
91
91
  changes: `docs` Befehle hinzugefügt
92
92
  ---
93
93
 
94
- # Intlayer Konfigurations-Dokumentation
94
+ # Intlayer Konfigurationsdokumentation
95
95
 
96
96
  ## Überblick
97
97
 
98
- Die Intlayer-Konfigurationsdateien ermöglichen es Ihnen, verschiedene Aspekte des Plugins anzupassen, wie z. B. die Internationalisierung (internationalization), die Middleware und die Inhaltsverarbeitung. Diese Dokumentation enthält eine detaillierte Beschreibung jeder Eigenschaft in der Konfiguration.
98
+ Intlayer-Konfigurationsdateien ermöglichen die Anpassung verschiedener Aspekte des Plugins, wie Internationalisierung, Middleware und Inhaltsverarbeitung. Dieses Dokument bietet eine detaillierte Beschreibung jeder Eigenschaft in der Konfiguration.
99
99
 
100
100
  ---
101
101
 
@@ -105,9 +105,9 @@ Die Intlayer-Konfigurationsdateien ermöglichen es Ihnen, verschiedene Aspekte d
105
105
 
106
106
  ---
107
107
 
108
- ## Unterstützte Dateiformate für die Konfiguration
108
+ ## Unterstützung von Konfigurationsdateien
109
109
 
110
- Intlayer akzeptiert die Konfigurations-Dateiformate JSON, JS, MJS und TS:
110
+ Intlayer akzeptiert die Konfigurationsdateiformate JSON, JS, MJS und TS:
111
111
 
112
112
  - `intlayer.config.ts`
113
113
  - `intlayer.config.js`
@@ -120,7 +120,7 @@ Intlayer akzeptiert die Konfigurations-Dateiformate JSON, JS, MJS und TS:
120
120
 
121
121
  ---
122
122
 
123
- ## Beispiel einer Konfigurationsdatei
123
+ ## Beispiel-Konfigurationsdatei
124
124
 
125
125
  ````typescript fileName="intlayer.config.ts" codeFormat="typescript"
126
126
  import { Locales, type IntlayerConfig } from "intlayer";
@@ -128,7 +128,7 @@ import { nextjsRewrite } from "intlayer/routing";
128
128
  import { z } from "zod";
129
129
 
130
130
  /**
131
- * Beispiel für eine Intlayer-Konfigurationsdatei mit allen verfügbaren Optionen.
131
+ * Beispiel für eine Intlayer-Konfigurationsdatei, die alle verfügbaren Optionen zeigt.
132
132
  */
133
133
  const config: IntlayerConfig = {
134
134
  /**
@@ -136,59 +136,59 @@ const config: IntlayerConfig = {
136
136
  */
137
137
  internationalization: {
138
138
  /**
139
- * Liste der in der Anwendung unterstützten Gebietsschemata (locales).
139
+ * Liste der unterstützten Sprachen in der Anwendung.
140
140
  * Standard: [Locales.ENGLISH]
141
141
  */
142
142
  locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
143
143
 
144
144
  /**
145
- * Liste der obligatorischen Gebietsschemata, die in jedem Wörterbuch definiert sein müssen.
146
- * Wenn leer, sind im `strict`-Modus alle Gebietsschemata obligatorisch.
145
+ * Liste der erforderlichen Sprachen, die in jedem Wörterbuch definiert sein müssen.
146
+ * Wenn leer, sind im `strict` Modus alle Sprachen erforderlich.
147
147
  * Standard: []
148
148
  */
149
149
  requiredLocales: [Locales.ENGLISH],
150
150
 
151
151
  /**
152
- * Die Strenge-Ebene für internationalisierte Inhalte.
153
- * - "strict": Fehler, wenn ein deklariertes Gebietsschema fehlt oder nicht deklariert ist.
154
- * - "inclusive": Warnung, wenn ein deklariertes Gebietsschema fehlt.
155
- * - "loose": Akzeptiert jedes vorhandene Gebietsschema.
152
+ * Strengegrad für internationalisierte Inhalte.
153
+ * - "strict": Fehler, wenn eine deklarierte Sprache fehlt oder nicht deklariert ist.
154
+ * - "inclusive": Warnungen, wenn eine deklarierte Sprache fehlt.
155
+ * - "loose": Akzeptiert jede vorhandene Sprache.
156
156
  * Standard: "inclusive"
157
157
  */
158
158
  strictMode: "inclusive",
159
159
 
160
160
  /**
161
- * Das Standard-Gebietsschema, das als Fallback verwendet wird, wenn das angeforderte Gebietsschema nicht gefunden wird.
161
+ * Standardsprache, die als Fallback verwendet wird, wenn die angeforderte Sprache nicht gefunden wird.
162
162
  * Standard: Locales.ENGLISH
163
163
  */
164
164
  defaultLocale: Locales.ENGLISH,
165
165
  },
166
166
 
167
167
  /**
168
- * Einstellungen zur Steuerung der Wörterbuchoperationen und des Fallback-Verhaltens.
168
+ * Einstellungen, die Wörterbuchoperationen und Fallback-Verhalten steuern.
169
169
  */
170
170
  dictionary: {
171
171
  /**
172
172
  * Steuert, wie Wörterbücher importiert werden.
173
173
  * - "static": Statisch zur Build-Zeit importiert.
174
- * - "dynamic": Dynamisch importiert unter Verwendung von Suspense.
175
- * - "fetch": Dynamisch abgerufen über die Live Sync API.
174
+ * - "dynamic": Dynamisch mit Suspense importiert.
175
+ * - "fetch": Dynamisch über die Live Sync API abgerufen.
176
176
  * Standard: "static"
177
177
  */
178
178
  importMode: "static",
179
179
 
180
180
  /**
181
- * Strategie zum automatischen Ausfüllen fehlender Übersetzungen mittels KI.
181
+ * Strategie für das automatische Ausfüllen fehlender Übersetzungen mittels KI.
182
182
  * Kann ein boolescher Wert oder ein Pfadmuster zum Speichern der ausgefüllten Inhalte sein.
183
183
  * Standard: true
184
184
  */
185
185
  fill: true,
186
186
 
187
187
  /**
188
- * Der physische Speicherort der Wörterbuchdateien.
188
+ * Physischer Speicherort der Wörterbuchdateien.
189
189
  * - "local": Im lokalen Dateisystem gespeichert.
190
190
  * - "remote": Im Intlayer CMS gespeichert.
191
- * - "hybrid": Sowohl lokal als auch im Intlayer CMS gespeichert.
191
+ * - "hybrid": Im lokalen Dateisystem und im Intlayer CMS gespeichert.
192
192
  * - "plugin" (oder ein beliebiger benutzerdefinierter String): Von einem Plugin oder einer benutzerdefinierten Quelle bereitgestellt.
193
193
  * Standard: "local"
194
194
  */
@@ -206,30 +206,30 @@ const config: IntlayerConfig = {
206
206
  */
207
207
  routing: {
208
208
  /**
209
- * Strategie für das Locale-Routing.
210
- * - "prefix-no-default": Stellt allen Locales außer der Standard-Locale ein Präfix voran (z. B. /dashboard, /fr/dashboard).
211
- * - "prefix-all": Stellt allen Locales ein Präfix voran (z. B. /en/dashboard, /fr/dashboard).
212
- * - "no-prefix": Keine Locale in der URL.
213
- * - "search-params": Verwendet ?locale=...
209
+ * Strategie für das Sprachrouting.
210
+ * - "prefix-no-default": Präfix für alle außer der Standardsprache (z. B. /dashboard, /fr/dashboard).
211
+ * - "prefix-all": Präfix für alle Sprachen (z. B. /en/dashboard, /fr/dashboard).
212
+ * - "no-prefix": Keine Sprache in der URL.
213
+ * - "search-params": Verwendung von ?locale=...
214
214
  * Standard: "prefix-no-default"
215
215
  */
216
216
  mode: "prefix-no-default",
217
217
 
218
218
  /**
219
- * Wo die vom Benutzer gewählte Locale gespeichert werden soll.
219
+ * Wo die vom Benutzer gewählte Sprache gespeichert werden soll.
220
220
  * Optionen: 'cookie', 'localStorage', 'sessionStorage', 'header' oder ein Array davon.
221
221
  * Standard: ['cookie', 'header']
222
222
  */
223
223
  storage: ["cookie", "header"],
224
224
 
225
225
  /**
226
- * Der Basispfad für die URLs der Anwendung.
226
+ * Basispfad für die Anwendungs-URLs.
227
227
  * Standard: ""
228
228
  */
229
229
  basePath: "",
230
230
 
231
231
  /**
232
- * Benutzerdefinierte URL-Rewrite-Regeln für bestimmte Pfade pro Gebietsschema.
232
+ * Benutzerdefinierte URL-Rewrite-Regeln für sprachspezifische Pfade.
233
233
  */
234
234
  rewrite: nextjsRewrite({
235
235
  "/[locale]/about": {
@@ -240,37 +240,37 @@ const config: IntlayerConfig = {
240
240
  },
241
241
 
242
242
  /**
243
- * Einstellungen in Bezug auf die Suche und Verarbeitung von Inhaltsdateien.
243
+ * Einstellungen zum Finden und Verarbeiten von Inhaltsdateien.
244
244
  */
245
245
  content: {
246
246
  /**
247
- * Dateierweiterungen zum Scannen von Wörterbüchern.
248
- * Standard: ['.content.ts', '.content.js', '.content.json', usw.]
247
+ * Dateierweiterungen, nach denen nach Wörterbüchern gesucht wird.
248
+ * Standard: ['.content.ts', '.content.js', '.content.json', etc.]
249
249
  */
250
250
  fileExtensions: [".content.ts", ".content.js", ".content.json"],
251
251
 
252
252
  /**
253
- * Verzeichnisse, in denen sich die .content-Dateien befinden.
253
+ * Verzeichnisse, in denen sich .content-Dateien befinden.
254
254
  * Standard: ["."]
255
255
  */
256
256
  contentDir: ["src"],
257
257
 
258
258
  /**
259
- * Wo sich der Quellcode befindet.
260
- * Wird für die Build-Optimierung und Code-Transformation verwendet.
259
+ * Verzeichnisse, in denen sich der Quellcode befindet.
260
+ * Wird für Build-Optimierung und Codetransformation verwendet.
261
261
  * Standard: ["."]
262
262
  */
263
263
  codeDir: ["src"],
264
264
 
265
265
  /**
266
- * Muster, die vom Scan ausgeschlossen sind.
267
- * Standard: ['node_modules', '.intlayer', usw.]
266
+ * Muster, die vom Scannen ausgeschlossen werden sollen.
267
+ * Standard: ['node_modules', '.intlayer', etc.]
268
268
  */
269
269
  excludedPath: ["node_modules"],
270
270
 
271
271
  /**
272
272
  * Ob Änderungen überwacht und Wörterbücher während der Entwicklung neu erstellt werden sollen.
273
- * Standard: true im Entwicklungsmodus
273
+ * Standard: true in der Entwicklung
274
274
  */
275
275
  watch: true,
276
276
 
@@ -281,7 +281,7 @@ const config: IntlayerConfig = {
281
281
  },
282
282
 
283
283
  /**
284
- * Konfiguration für den Visuellen Editor (Visual Editor).
284
+ * Konfiguration des visuellen Editors.
285
285
  */
286
286
  editor: {
287
287
  /**
@@ -291,7 +291,7 @@ const config: IntlayerConfig = {
291
291
  enabled: true,
292
292
 
293
293
  /**
294
- * Die URL Ihrer Anwendung für die Origin-Validierung.
294
+ * URL Ihrer Anwendung zur Validierung der Herkunft.
295
295
  * Standard: ""
296
296
  */
297
297
  applicationURL: "http://localhost:3000",
@@ -303,67 +303,67 @@ const config: IntlayerConfig = {
303
303
  port: 8000,
304
304
 
305
305
  /**
306
- * Die öffentliche URL für den Editor.
306
+ * Öffentliche URL für den Editor.
307
307
  * Standard: "http://localhost:8000"
308
308
  */
309
309
  editorURL: "http://localhost:8000",
310
310
 
311
311
  /**
312
- * URL des Intlayer CMS.
312
+ * Intlayer CMS URL.
313
313
  * Standard: "https://app.intlayer.org"
314
314
  */
315
315
  cmsURL: "https://app.intlayer.org",
316
316
 
317
317
  /**
318
- * Backend-API-URL.
318
+ * Backend API URL.
319
319
  * Standard: "https://back.intlayer.org"
320
320
  */
321
321
  backendURL: "https://back.intlayer.org",
322
322
 
323
323
  /**
324
- * Ob die Inhalts-Synchronisierung in Echtzeit aktiviert werden soll.
324
+ * Ob Echtzeit-Inhaltssynchronisierung aktiviert werden soll.
325
325
  * Standard: false
326
326
  */
327
327
  liveSync: true,
328
328
  },
329
329
 
330
330
  /**
331
- * AI-basierte Einstellungen für Übersetzung und Erstellung.
331
+ * KI-gestützte Übersetzungs- und Generierungseinstellungen.
332
332
  */
333
333
  ai: {
334
334
  /**
335
- * Der zu verwendende AI-Anbieter.
335
+ * Zu verwendender KI-Anbieter.
336
336
  * Optionen: 'openai', 'anthropic', 'mistral', 'deepseek', 'gemini', 'ollama', 'openrouter', 'alibaba', 'fireworks', 'groq', 'huggingface', 'bedrock', 'googlevertex', 'togetherai'
337
337
  * Standard: 'openai'
338
338
  */
339
339
  provider: "openai",
340
340
 
341
341
  /**
342
- * Modell des gewählten Anbieters zur Verwendung.
342
+ * Zu verwendendes Modell des ausgewählten Anbieters.
343
343
  */
344
344
  model: "gpt-4o",
345
345
 
346
346
  /**
347
- * API-Key des Anbieters.
347
+ * API-Schlüssel des Anbieters.
348
348
  */
349
349
  apiKey: process.env.OPENAI_API_KEY,
350
350
 
351
351
  /**
352
- * Globaler Kontext zur Anleitung der KI beim Erstellen von Übersetzungen.
352
+ * Globaler Kontext, um die KI beim Generieren von Übersetzungen zu unterstützen.
353
353
  */
354
354
  applicationContext: "Dies ist eine Reisebuchungsanwendung.",
355
355
 
356
356
  /**
357
- * Basis-URL für die AI-API.
357
+ * Basis-URL für die KI-API.
358
358
  */
359
359
  baseURL: "http://localhost:3000",
360
360
 
361
361
  /**
362
- * Datenserialisierung (Data Serialization)
362
+ * Datenserialisierung
363
363
  *
364
364
  * Optionen:
365
- * - "json": Standard, robust; verbraucht mehr Token.
366
- * - "toon": Verbraucht weniger Token, ist möglicherweise nicht so konsistent wie JSON.
365
+ * - "json": Standard, zuverlässig; verbraucht mehr Tokens.
366
+ * - "toon": Weniger Tokens, weniger konsistent als JSON.
367
367
  *
368
368
  * Standard: "json"
369
369
  */
@@ -375,8 +375,8 @@ const config: IntlayerConfig = {
375
375
  */
376
376
  build: {
377
377
  /**
378
- * Modus für die Build-Ausführung.
379
- * - "auto": Wird automatisch während des Builds der Anwendung erstellt.
378
+ * Modus der Build-Ausführung.
379
+ * - "auto": Automatischer Build während des App-Builds.
380
380
  * - "manual": Erfordert einen expliziten Build-Befehl.
381
381
  * Standard: "auto"
382
382
  */
@@ -384,12 +384,12 @@ const config: IntlayerConfig = {
384
384
 
385
385
  /**
386
386
  * Ob das finale Bundle durch Entfernen ungenutzter Wörterbücher optimiert werden soll.
387
- * Standard: true in Produktion
387
+ * Standard: true in der Produktion
388
388
  */
389
389
  optimize: true,
390
390
 
391
391
  /**
392
- * Ausgabeformat für die generierten Wörterbuchdateien.
392
+ * Ausgabeformat für generierte Wörterbuchdateien.
393
393
  * Standard: ['cjs', 'esm']
394
394
  */
395
395
  outputFormat: ["cjs", "esm"],
@@ -406,10 +406,10 @@ const config: IntlayerConfig = {
406
406
  */
407
407
  log: {
408
408
  /**
409
- * Logging-Ebene.
410
- * - "default": Standardmäßiges Logging.
409
+ * Logging-Level.
410
+ * - "default": Standard-Logging.
411
411
  * - "verbose": Detailliertes Debug-Logging.
412
- * - "disabled": Deaktiviert das Logging.
412
+ * - "disabled": Kein Logging.
413
413
  * Standard: "default"
414
414
  */
415
415
  mode: "default",
@@ -422,7 +422,7 @@ const config: IntlayerConfig = {
422
422
  },
423
423
 
424
424
  /**
425
- * Systemkonfiguration (Für fortgeschrittene Nutzung)
425
+ * Systemkonfiguration (Erweiterte Anwendungsfälle)
426
426
  */
427
427
  system: {
428
428
  /**
@@ -431,12 +431,12 @@ const config: IntlayerConfig = {
431
431
  dictionariesDir: ".intlayer/dictionary",
432
432
 
433
433
  /**
434
- * Verzeichnis für TypeScript Module Augmentation.
434
+ * Verzeichnis für die Modul-Augmentierung.
435
435
  */
436
436
  moduleAugmentationDir: ".intlayer/types",
437
437
 
438
438
  /**
439
- * Verzeichnis zum Speichern nicht zusammengeführter (unmerged) Wörterbücher.
439
+ * Verzeichnis zum Speichern nicht zusammengeführter Wörterbücher.
440
440
  */
441
441
  unmergedDictionariesDir: ".intlayer/unmerged_dictionary",
442
442
 
@@ -456,85 +456,85 @@ const config: IntlayerConfig = {
456
456
  configDir: ".intlayer/config",
457
457
 
458
458
  /**
459
- * Verzeichnis, in dem Cache-Dateien gespeichert sind.
459
+ * Verzeichnis, in dem die Cache-Dateien gespeichert sind.
460
460
  */
461
461
  cacheDir: ".intlayer/cache",
462
462
  },
463
463
 
464
464
  /**
465
- * Compiler-Konfiguration (Für fortgeschrittene Nutzung)
465
+ * Compiler-Konfiguration (Erweiterte Anwendungsfälle)
466
466
  */
467
467
  compiler: {
468
468
  /**
469
469
  * Gibt an, ob der Compiler aktiviert sein soll.
470
470
  *
471
- * - false: Deaktiviert den Compiler.
472
- * - true: Aktiviert den Compiler.
473
- * - "build-only": Überspringt den Compiler während der Entwicklung und beschleunigt die Startzeit.
471
+ * - false: Compiler deaktivieren.
472
+ * - true: Compiler aktivieren.
473
+ * - "build-only": Compiler während der Entwicklung überspringen, um Startzeiten zu beschleunigen.
474
474
  *
475
475
  * Standard: false
476
476
  */
477
477
  enabled: true,
478
478
 
479
479
  /**
480
- * Definiert den Pfad für Ausgabedateien. Ersetzt `outputDir`.
480
+ * Definiert den Pfad für die Ausgabedateien. Ersetzt `outputDir`.
481
481
  *
482
- * - Pfade mit `./` werden relativ zum Komponentenverzeichnis aufgelöst.
483
- * - Pfade mit `/` werden relativ zum Projektstamm (`baseDir`) aufgelöst.
482
+ * - `./` Pfade werden relativ zum Komponentenverzeichnis aufgelöst.
483
+ * - `/` Pfade werden relativ zum Projektstamm (`baseDir`) aufgelöst.
484
484
  *
485
- * - Die Einbeziehung der Variable `{{locale}}` im Pfad löst die Erstellung separater Wörterbücher pro Sprache aus.
485
+ * - Wenn die Variable `{{locale}}` im Pfad enthalten ist, wird die Generierung separater Wörterbücher pro Sprache ausgelöst.
486
486
  *
487
487
  * Beispiel:
488
488
  * ```ts
489
489
  * {
490
- * // Erstelle mehrsprachige .content.ts-Dateien neben der Komponente
490
+ * // Mehrsprachige .content.ts Dateien in der Nähe der Komponente erstellen
491
491
  * output: ({ fileName, extension }) => `./${fileName}${extension}`,
492
492
  *
493
- * // output: './{{fileName}}{{extension}}', // Entspricht der Verwendung eines Template-Strings
493
+ * // output: './{{fileName}}{{extension}}', // Äquivalent mit Template-String
494
494
  * }
495
495
  * ```
496
496
  *
497
497
  * ```ts
498
498
  * {
499
- * // Erstelle zentralisierte JSON-Dateien pro Sprache im Projektstamm
499
+ * // Zentralisierte pro-Sprache JSON-Dateien im Stammverzeichnis des Projekts erstellen
500
500
  * output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
501
501
  *
502
- * // output: '/locales/{{locale}}/{{key}}.content.json', // Entspricht der Verwendung eines Template-Strings
502
+ * // output: '/locales/{{locale}}/{{key}}.content.json', // Äquivalent mit Template-String
503
503
  * }
504
504
  * ```
505
505
  *
506
506
  * Liste der Variablen:
507
- * - `fileName`: Dateiname.
508
- * - `key`: Content-Key.
509
- * - `locale`: Content-Locale.
510
- * - `extension`: Dateierweiterung.
511
- * - `componentFileName`: Dateiname der Komponente.
512
- * - `componentExtension`: Dateierweiterung der Komponente.
513
- * - `format`: Wörterbuchformat.
514
- * - `componentFormat`: Wörterbuchformat der Komponente.
515
- * - `componentDirPath`: Pfad zum Komponentenverzeichnis.
507
+ * - `fileName`: Name der Datei.
508
+ * - `key`: Schlüssel des Inhalts.
509
+ * - `locale`: Sprache des Inhalts.
510
+ * - `extension`: Erweiterung der Datei.
511
+ * - `componentFileName`: Name der Komponentendatei.
512
+ * - `componentExtension`: Erweiterung der Komponentendatei.
513
+ * - `format`: Format des Wörterbuchs.
514
+ * - `componentFormat`: Format des Komponentenwörterbuchs.
515
+ * - `componentDirPath`: Verzeichnispfad der Komponente.
516
516
  */
517
517
  output: ({ locale, key }) => `compiler/${locale}/${key}.json`,
518
518
 
519
519
  /**
520
- * Gibt an, ob Komponenten nach der Transformation gespeichert werden sollen.
521
- * Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die Anwendung zu transformieren, und kann dann entfernt werden.
520
+ * Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen.
521
+ * Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
522
522
  */
523
523
  saveComponents: false,
524
524
 
525
525
  /**
526
- * Fügt nur den Inhalt in die generierte Datei ein. Nützlich für die JSON-Ausgabe pro Sprache für i18next oder ICU MessageFormat.
526
+ * Nur Inhalte in die generierte Datei einfügen. Nützlich für pro-Sprache i18next oder ICU MessageFormat JSON-Ausgaben.
527
527
  */
528
528
  noMetadata: false,
529
529
 
530
530
  /**
531
- * Dictionary-Key-Präfix
531
+ * Wörterbuch-Schlüsselpräfix
532
532
  */
533
- dictionaryKeyPrefix: "", // Fügen Sie den extrahierten Dictionary-Keys ein optionales Präfix hinzu
533
+ dictionaryKeyPrefix: "", // Optionales Präfix für die extrahierten Wörterbuchschlüssel hinzufügen
534
534
  },
535
535
 
536
536
  /**
537
- * Benutzerdefinierte Schemas (Schemas) zur Validierung der Wörterbuchinhalte.
537
+ * Benutzerdefinierte Schemata zum Validieren des Inhalts der Wörterbücher.
538
538
  */
539
539
  schemas: {
540
540
  "my-schema": z.object({
@@ -543,7 +543,7 @@ const config: IntlayerConfig = {
543
543
  },
544
544
 
545
545
  /**
546
- * Plugin-Konfiguration (Plugins).
546
+ * Plugin-Konfiguration.
547
547
  */
548
548
  plugins: [],
549
549
  };
@@ -553,56 +553,58 @@ export default config;
553
553
 
554
554
  ---
555
555
 
556
- ## Referenz zur Konfiguration (Configuration Reference)
556
+ ## Konfigurationsreferenz
557
557
 
558
- In den folgenden Abschnitten werden die verschiedenen in Intlayer verfügbaren Konfigurationsoptionen beschrieben.
558
+ Die folgenden Abschnitte beschreiben die verschiedenen für Intlayer verfügbaren Konfigurationseinstellungen.
559
559
 
560
560
  ---
561
561
 
562
- ### Konfiguration für Internationalisierung (Internationalization Configuration)
562
+ ### Internationalisierungskonfiguration
563
563
 
564
- Definiert Einstellungen in Bezug auf die Internationalisierung, einschließlich der verfügbaren Locales und der Standard-Locale für die Anwendung.
564
+ Definiert Einstellungen zur Internationalisierung, einschließlich der verfügbaren Sprachen und der Standardsprache für die Anwendung.
565
565
 
566
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
567
- | ----------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
568
- | `locales` | `string[]` | Liste der in der Anwendung unterstützten Locales. Standard: `[Locales.ENGLISH]` | `['en', 'fr', 'es']` | |
569
- | `requiredLocales` | `string[]` | Liste der obligatorischen Locales in der Anwendung. Standard: `[]` | `[]` | Wenn leer, sind im `strict`-Modus alle Locales obligatorisch. Stellen Sie sicher, dass obligatorische Locales auch im Feld `locales` definiert sind. |
570
- | `strictMode` | `string` | Gewährleistet eine robuste Implementierung internationalisierter Inhalte unter Verwendung von TypeScript. Standard: `inclusive` | | Wenn `"strict"`: Die `t`-Funktion erfordert, dass jede deklarierte Locale definiert ist — gibt einen Fehler aus, wenn eine fehlt oder nicht deklariert ist. Wenn `"inclusive"`: Warnt bei fehlenden Locales, akzeptiert aber vorhandene nicht deklarierte. Wenn `"loose"`: Akzeptiert jede vorhandene Locale. |
571
- | `defaultLocale` | `string` | Standard-Locale, die als Fallback verwendet wird, wenn die angeforderte Locale nicht gefunden wird. Standard: `Locales.ENGLISH` | `'en'` | Wird verwendet, um die Locale zu bestimmen, wenn keine in der URL, im Cookie oder im Header angegeben ist. |
566
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
567
+ | ---------------- | -------------------------------------------------------------------------------------------------- | ---------- | ------------------- | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
568
+ | `locales` | Die Liste der unterstützten Sprachen in der Anwendung. | `string[]` | `[Locales.ENGLISH]` | `['en', 'fr', 'es']` | |
569
+ | `requiredLocales` | Die Liste der erforderlichen Sprachen in der Anwendung. | `string[]` | `[]` | `[]` | Wenn leer, sind alle Sprachen im `strict` Modus erforderlich.<br/>• Stellen Sie sicher, dass erforderliche Sprachen auch im `locales` Feld definiert sind. |
570
+ | `strictMode` | Gewährleistet eine starke Implementierung von internationalisierten Inhalten mittels TypeScript. | `string` | `'inclusive'` | | Wenn `"strict"`: Die `t`-Funktion erfordert, dass jede deklarierte Sprache definiert ist — wirft einen Fehler, wenn eine fehlt oder nicht deklariert ist.<br/>• Wenn `"inclusive"`: Warnt vor fehlenden Sprachen, akzeptiert aber vorhandene, nicht deklarierte.<br/>• Wenn `"loose"`: Akzeptiert jede vorhandene Sprache. |
571
+ | `defaultLocale` | Die Standardsprache, die als Fallback verwendet wird, wenn die angeforderte Sprache nicht gefunden wird. | `string` | `Locales.ENGLISH` | `'en'` | Wird verwendet, um die Sprache zu bestimmen, wenn keine in der URL, im Cookie oder im Header angegeben ist. |
572
572
 
573
573
  ---
574
574
 
575
- ### Konfiguration für den Editor (Editor Configuration)
575
+ ### Editorkonfiguration
576
+
577
+ Definiert Einstellungen für den integrierten Editor, einschließlich Server-Port und Aktivierungsstatus.
578
+
579
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
580
+ | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | ----------------------------------- | ---------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
581
+ | `applicationURL` | Die URL der Anwendung. | `string` | `undefined` | `'http://localhost:3000'` <br/> `'https://example.com'` <br/> `process.env.INTLAYER_EDITOR_URL` | • Wird aus Sicherheitsgründen verwendet, um die Herkunft des Editors einzuschränken.<br/>• Wenn auf `'*'` gesetzt, ist der Editor von jeder Quelle zugänglich. |
582
+ | `port` | Der vom visuellen Editor-Server verwendete Port. | `number` | `8000` | | |
583
+ | `editorURL` | Die URL des Editor-Servers. | `string` | `'http://localhost:8000'` | `'http://localhost:3000'` <br/> `'https://example.com'` <br/> `process.env.INTLAYER_EDITOR_URL` | • Wird verwendet, um die Quellen einzuschränken, die mit der Anwendung interagieren können.<br/>• Wenn auf `'*'` gesetzt, von jeder Quelle zugänglich.<br/>• Sollte festgelegt werden, wenn der Port geändert wird oder der Editor auf einer anderen Domain gehostet wird. |
584
+ | `cmsURL` | Die URL des Intlayer CMS. | `string` | `'https://app.intlayer.org'` | `'https://app.intlayer.org'` | |
585
+ | `backendURL` | Die URL des Backend-Servers. | `string` | `https://back.intlayer.org` | `http://localhost:4000` | |
586
+ | `enabled` | Gibt an, ob die Anwendung mit dem visuellen Editor interagiert. | `boolean` | `false` | `process.env.NODE_ENV !== 'production'` | • Wenn `false`, kann der Editor nicht mit der Anwendung interagieren.<br/>• Deaktivierung für bestimmte Umgebungen erhöht die Sicherheit. |
587
+ | `clientId` | Erlaubt Intlayer-Paketen die Authentifizierung beim Backend mittels oAuth2. Um ein Zugriffstoken zu erhalten, gehen Sie zu [intlayer.org/project](https://app.intlayer.org/project). | `string` &#124; <br/> `undefined` | `undefined` | | Geheim halten; in Umgebungsvariablen speichern. |
588
+ | `clientSecret` | Erlaubt Intlayer-Paketen die Authentifizierung beim Backend mittels oAuth2. Um ein Zugriffstoken zu erhalten, gehen Sie zu [intlayer.org/project](https://app.intlayer.org/project). | `string` &#124; <br/> `undefined` | `undefined` | | Geheim halten; in Umgebungsvariablen speichern. |
589
+ | `dictionaryPriorityStrategy` | Strategie zur Priorisierung von Wörterbüchern, wenn sowohl lokale als auch entfernte vorhanden sind. | `string` | `'local_first'` | `'distant_first'` | • `'distant_first'`: Priorisiert entfernte vor lokalen.<br/>• `'local_first'`: Priorisiert lokale vor entfernten. |
590
+ | `liveSync` | Gibt an, ob der App-Server Inhalte im Hot-Reload-Verfahren aktualisieren soll, wenn eine Änderung im CMS <br/> Visual Editor <br/> Backend erkannt wird. | `boolean` | `true` | `true` | • Wenn ein Wörterbuch hinzugefügt/aktualisiert wird, aktualisiert die App den Seiteninhalt.<br/>• Live Sync verlagert Inhalte auf einen anderen Server, was die Leistung geringfügig beeinflussen kann.<br/>• Es wird empfohlen, beides auf derselben Maschine zu hosten. |
591
+ | `liveSyncPort` | Der Port des Live Sync Servers. | `number` | `4000` | `4000` | |
592
+ | `liveSyncURL` | Die URL des Live Sync Servers. | `string` | `'http://localhost:{liveSyncPort}'` | `'https://example.com'` | Zeigt standardmäßig auf localhost; kann für einen entfernten Live Sync Server geändert werden. |
576
593
 
577
- Definiert Einstellungen im Zusammenhang mit dem integrierten Editor, einschließlich Serverport und Aktivitätsstatus.
578
-
579
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
580
- | ---------------------------- | ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
581
- | `applicationURL` | `string` | Die URL Ihrer Anwendung. Standard: `''` | `'http://localhost:3000'`, `'https://example.com'`, `process.env.INTLAYER_EDITOR_URL` | Wird verwendet, um die Ursprünge (Origins) des Editors aus Sicherheitsgründen einzuschränken. Wenn auf `'*'` gesetzt, kann von jedem Origin aus auf den Editor zugegriffen werden. |
582
- | `port` | `number` | Port, der vom Visual Editor-Server verwendet wird. Standard: `8000` | | |
583
- | `editorURL` | `string` | URL des Editor-Servers. Standard: `'http://localhost:8000'` | `'http://localhost:3000'`, `'https://example.com'`, `process.env.INTLAYER_EDITOR_URL` | Wird verwendet, um die Origins einzuschränken, die mit der Anwendung interagieren können. Wenn auf `'*'` gesetzt, von jedem Origin aus zugänglich. Muss gesetzt werden, wenn der Port geändert wird oder der Editor auf einer anderen Domain gehostet wird. |
584
- | `cmsURL` | `string` | URL des Intlayer CMS. Standard: `'https://intlayer.org'` | `'https://intlayer.org'` | |
585
- | `backendURL` | `string` | Backend-Server-URL. Standard: `https://back.intlayer.org` | `http://localhost:4000` | |
586
- | `enabled` | `boolean` | Gibt an, ob die App mit dem visuellen Editor interagiert. Standard: `true` | `process.env.NODE_ENV !== 'production'` | Wenn `false`, kann der Editor nicht mit der App interagieren. Die Deaktivierung für bestimmte Umgebungen erhöht die Sicherheit. |
587
- | `clientId` | `string &#124; undefined` | Ermöglicht es Intlayer-Paketen, sich über oAuth2 am Backend zu authentifizieren. Um einen Zugriffstoken zu erhalten, gehen Sie zu [intlayer.org/project](https://app.intlayer.org/project). Standard: `undefined` | | Geheim halten; in Umgebungsvariablen speichern. |
588
- | `clientSecret` | `string &#124; undefined` | Ermöglicht es Intlayer-Paketen, sich über oAuth2 am Backend zu authentifizieren. Um einen Zugriffstoken zu erhalten, gehen Sie zu [intlayer.org/project](https://app.intlayer.org/project). Standard: `undefined` | | Geheim halten; in Umgebungsvariablen speichern. |
589
- | `dictionaryPriorityStrategy` | `string` | Strategie zur Priorisierung von Wörterbüchern, wenn sowohl lokale als auch entfernte Wörterbücher vorhanden sind. Standard: `'local_first'` | `'distant_first'` | `'distant_first'`: Priorisiert entfernte (Remote) vor lokalen. `'local_first'`: Priorisiert lokale vor entfernten. |
590
- | `liveSync` | `boolean` | Gibt an, ob der Anwendungsserver Inhalte neu laden soll, wenn eine Änderung im CMS / Visual Editor / Backend erkannt wird. Standard: `true` | `true` | Wenn ein Wörterbuch hinzugefügt/aktualisiert wird, aktualisiert die App den Seiteninhalt. Live Sync lagert den Inhalt auf einen anderen Server aus, was die Leistung geringfügig beeinträchtigen kann. Es wird empfohlen, beides auf derselben Maschine zu hosten. |
591
- | `liveSyncPort` | `number` | Port des Live Sync Servers. Standard: `4000` | `4000` | |
592
- | `liveSyncURL` | `string` | URL des Live Sync Servers. Standard: `'http://localhost:{liveSyncPort}'` | `'https://example.com'` | Zeigt standardmäßig auf localhost; kann auf einen entfernten Live Sync Server geändert werden. |
594
+ ---
593
595
 
594
- ### Konfiguration für Routing (Routing Configuration)
596
+ ### Routing-Konfiguration
595
597
 
596
- Einstellungen, die das Routing-Verhalten steuern, einschließlich URL-Struktur, Locale-Speicherung und Middleware-Handhabung.
598
+ Einstellungen, die das Routing-Verhalten steuern, einschließlich URL-Struktur, Sprachspeicherung und Middleware-Handhabung.
597
599
 
598
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
599
- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
600
- | `mode` | `'prefix-no-default' &#124; 'prefix-all' &#124; 'no-prefix' &#124; 'search-params'` | URL-Routing-Modus für die Behandlung von Locales. Standard: `'prefix-no-default'` | `'prefix-no-default'`: `/dashboard` (en) oder `/fr/dashboard` (fr). `'prefix-all'`: `/en/dashboard`. `'no-prefix'`: Locale wird auf andere Weise behandelt. `'search-params'`: Verwendet `/dashboard?locale=fr` | Beeinflusst nicht die Verwaltung von Cookies oder Locale Storage. |
601
- | `storage` | `false &#124; 'cookie' &#124; 'localStorage' &#124; 'sessionStorage' &#124; 'header' &#124; CookiesAttributes &#124; StorageAttributes &#124; Array` | Konfiguration zum Speichern der Locale auf dem Client. Standard: `['cookie', 'header']` | `'localStorage'`, `[{ type: 'cookie', name: 'custom-locale', secure: true }]` | Siehe die Tabelle Speicheroptionen unten. |
602
- | `basePath` | `string` | Der Basispfad für die URLs der Anwendung. Standard: `''` | `'/my-app'` | Wenn sich die Anwendung unter `https://example.com/my-app` befindet, ist basePath `'/my-app'` und URLs werden zu `https://example.com/my-app/en`. |
603
- | `rewrite` | `Record<string, StrictModeLocaleMap<string>>` | Benutzerdefinierte URL-Rewrite-Regeln, die den Standard-Routing-Modus für bestimmte Pfade überschreiben. Unterstützt dynamische Parameter `[param]`. Standard: `undefined` | Beispiel siehe unten | Rewrite-Regeln haben Priorität über `mode`. Funktioniert mit Next.js und Vite. `getLocalizedUrl()` wendet passende Regeln automatisch an. Siehe [Benutzerdefinierte URL-Rewrites](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/custom_url_rewrites.md). |
600
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
601
+ | ---------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
602
+ | `mode` | URL-Routing-Modus für die Sprachbehandlung. | `'prefix-no-default'` &#124; <br/> `'prefix-all'` &#124; <br/> `'no-prefix'` &#124; <br/> `'search-params'` | `'prefix-no-default'` | `'prefix-no-default'`: `/dashboard` (en) oder `/fr/dashboard` (fr). `'prefix-all'`: `/en/dashboard`. `'no-prefix'`: Sprache wird anderweitig behandelt. `'search-params'`: `/dashboard?locale=fr` | Beeinflusst nicht das Cookie- oder Sprachspeicher-Management. |
603
+ | `storage` | Konfiguration für die Speicherung der Sprache im Client. | `false` &#124; <br/> `'cookie'` &#124; <br/> `'localStorage'` &#124; <br/> `'sessionStorage'` &#124; <br/> `'header'` &#124; <br/> `CookiesAttributes` &#124; <br/> `StorageAttributes` &#124; <br/> `Array` | `['cookie', 'header']` | `'localStorage'` <br/> `[{ type: 'cookie', name: 'custom-locale', secure: true }]` | Siehe Tabelle Speicheroptionen unten. |
604
+ | `basePath` | Der Basispfad für die Anwendungs-URLs. | `string` | `''` | `'/my-app'` | Wenn die App unter `https://example.com/my-app` erreichbar ist, ist basePath `'/my-app'` und URLs werden zu `https://example.com/my-app/en`. |
605
+ | `rewrite` | Benutzerdefinierte URL-Rewrite-Regeln, die den Standard-Routing-Modus für bestimmte Pfade überschreiben. Unterstützt dynamische `[param]` Parameter. | `Record<string, StrictModeLocaleMap<string>>` | `undefined` | Siehe Beispiel unten | Rewrite-Regeln haben Vorrang vor `mode`.<br/>• Funktioniert mit Next.js und Vite.<br/>• `getLocalizedUrl()` wendet passende Regeln automatisch an.<br/>• Siehe [Benutzerdefinierte URL-Rewrites](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/custom_url_rewrites.md). |
604
606
 
605
- **Beispiel für `rewrite`**:
607
+ **`rewrite` Beispiel**:
606
608
 
607
609
  ```typescript
608
610
  routing: {
@@ -624,41 +626,41 @@ routing: {
624
626
  }
625
627
  ```
626
628
 
627
- #### Speicheroptionen (Storage Options)
629
+ #### Speicheroptionen
628
630
 
629
- | Wert | Beschreibung | Hinweis |
630
- | ------------------ | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
631
- | `'cookie'` | Speichert die Locale in Cookies — sowohl client- als auch serverseitig zugänglich. | Stellen Sie für die DSGVO-Konformität sicher, dass die entsprechende Zustimmung des Benutzers eingeholt wurde. Anpassbar über `CookiesAttributes` (`{ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }`). |
632
- | `'localStorage'` | Speichert die Locale im Browser ohne Ablaufdatum — nur clientseitig. | Läuft erst ab, wenn explizit gelöscht. Der Intlayer-Proxy kann darauf nicht zugreifen. Anpassbar über `StorageAttributes` (`{ type: 'localStorage', name: 'custom-locale' }`). |
633
- | `'sessionStorage'` | Speichert die Locale für die Dauer der Seitensitzung — nur clientseitig. | Wird beim Schließen des Tabs/Fensters gelöscht. Der Intlayer-Proxy kann darauf nicht zugreifen. Anpassbar über `StorageAttributes` (`{ type: 'sessionStorage', name: 'custom-locale' }`). |
634
- | `'header'` | Speichert oder überträgt die Locale über HTTP-Header — nur serverseitig. | Nützlich für API-Aufrufe. Die Clientseite kann darauf nicht zugreifen. Anpassbar über `StorageAttributes` (`{ type: 'header', name: 'custom-locale' }`). |
631
+ | Wert | Hinweis | Beschreibung |
632
+ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
633
+ | `'cookie'` | Stellen Sie für die DSGVO-Konformität eine ordnungsgemäße Benutzereinwilligung sicher.<br/>• Anpassbar über `CookiesAttributes` (`{ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }`). | Speichert die Sprache in Cookies — zugänglich sowohl auf Client- als auch auf Serverseite. |
634
+ | `'localStorage'` | Kein Ablauf, außer explizit gelöscht.<br/>• Der Intlayer-Proxy kann nicht darauf zugreifen.<br/>• Anpassbar über `StorageAttributes` (`{ type: 'localStorage', name: 'custom-locale' }`). | Speichert die Sprache im Browser ohne Ablauf — nur Clientseite. |
635
+ | `'sessionStorage'` | Gelöscht, wenn Tab/Fenster geschlossen wird.<br/>• Der Intlayer-Proxy kann nicht darauf zugreifen.<br/>• Anpassbar über `StorageAttributes` (`{ type: 'sessionStorage', name: 'custom-locale' }`). | Speichert die Sprache für die Dauer der Seitensitzung — nur Clientseite. |
636
+ | `'header'` | Nützlich für API-Aufrufe.<br/>• Clientseite kann nicht darauf zugreifen.<br/>• Anpassbar über `StorageAttributes` (`{ type: 'header', name: 'custom-locale' }`). | Überträgt die Sprache über HTTP-Header — nur Serverseite. |
635
637
 
636
- #### Cookie-Attribute (Cookie Attributes)
638
+ #### Cookie-Attribute
637
639
 
638
- Bei der Speicherung über Cookies können Sie zusätzliche Cookie-Attribute konfigurieren:
640
+ Wenn Sie Cookie-Speicherung verwenden, können Sie zusätzliche Cookie-Attribute konfigurieren:
639
641
 
640
- | Feld | Typ | Beschreibung |
641
- | ---------- | ------------------------------------- | ------------------------------------------------------- |
642
- | `name` | `string` | Cookie-Name. Standard: `'INTLAYER_LOCALE'` |
643
- | `domain` | `string` | Cookie-Domain. Standard: `undefined` |
644
- | `path` | `string` | Cookie-Pfad. Standard: `undefined` |
645
- | `secure` | `boolean` | Benötigt HTTPS. Standard: `undefined` |
646
- | `httpOnly` | `boolean` | HTTP-only Flag. Standard: `undefined` |
647
- | `sameSite` | `'strict' &#124; 'lax' &#124; 'none'` | SameSite-Richtlinie. |
648
- | `expires` | `Date &#124; number` | Ablaufdatum oder Anzahl der Tage. Standard: `undefined` |
642
+ | Feld | Beschreibung | Typ |
643
+ | ---------- | --------------------------------------------- | ----------------------------------------------------- |
644
+ | `name` | Cookie-Name. Standard: `'INTLAYER_LOCALE'` | `string` |
645
+ | `domain` | Cookie-Domain. Standard: `undefined` | `string` |
646
+ | `path` | Cookie-Pfad. Standard: `undefined` | `string` |
647
+ | `secure` | HTTPS erforderlich. Standard: `undefined` | `boolean` |
648
+ | `httpOnly` | HTTP-only Flag. Standard: `undefined` | `boolean` |
649
+ | `sameSite` | SameSite-Richtlinie. | `'strict'` &#124; <br/> `'lax'` &#124; <br/> `'none'` |
650
+ | `expires` | Ablaufdatum oder Tage. Standard: `undefined` | `Date` &#124; <br/> `number` |
649
651
 
650
- #### Locale Storage-Attribute (Locale Storage Attributes)
652
+ #### Sprachspeicher-Attribute
651
653
 
652
654
  Bei Verwendung von localStorage oder sessionStorage:
653
655
 
654
- | Feld | Typ | Beschreibung |
655
- | ------ | ---------------------------------------- | ---------------------------------------------------------- |
656
- | `type` | `'localStorage' &#124; 'sessionStorage'` | Speichertyp. |
657
- | `name` | `string` | Name des Speicherschlüssels. Standard: `'INTLAYER_LOCALE'` |
656
+ | Feld | Beschreibung | Typ |
657
+ | ------ | ---------------------------------------------- | ------------------------------------------------ |
658
+ | `type` | Speichertyp. | `'localStorage'` &#124; <br/> `'sessionStorage'` |
659
+ | `name` | Speicher-Schlüsselname. Standard: `'INTLAYER_LOCALE'` | `string` |
658
660
 
659
661
  #### Konfigurationsbeispiele
660
662
 
661
- Hier sind einige gängige Konfigurationsbeispiele für die neue v7-Routing-Struktur:
663
+ Hier sind einige gängige Konfigurationsbeispiele für die neue Routing-Struktur von v7:
662
664
 
663
665
  **Basiskonfiguration (Standard)**:
664
666
 
@@ -712,7 +714,7 @@ const config: IntlayerConfig = {
712
714
  export default config;
713
715
  ```
714
716
 
715
- **Suchparameter-Modus (Search Parameters Mode)**:
717
+ **Suchparameter-Modus**:
716
718
 
717
719
  ```typescript
718
720
  import { Locales, type IntlayerConfig } from "intlayer";
@@ -732,7 +734,7 @@ const config: IntlayerConfig = {
732
734
  export default config;
733
735
  ```
734
736
 
735
- **Präfixfreier Modus (No Prefix Mode) mit benutzerdefiniertem Speicher**:
737
+ **Modus ohne Präfix mit benutzerdefiniertem Speicher**:
736
738
 
737
739
  ```typescript
738
740
  import { Locales, type IntlayerConfig } from "intlayer";
@@ -755,7 +757,7 @@ const config: IntlayerConfig = {
755
757
  export default config;
756
758
  ```
757
759
 
758
- **Benutzerdefinierter URL-Rewrite mit dynamischen Pfaden**:
760
+ **Benutzerdefiniertes URL-Rewriting mit dynamischen Routen**:
759
761
 
760
762
  ```typescript
761
763
  // intlayer.config.ts
@@ -767,7 +769,7 @@ const config: IntlayerConfig = {
767
769
  defaultLocale: "en",
768
770
  },
769
771
  routing: {
770
- mode: "prefix-no-default", // Fallback für Pfade ohne Rewrite
772
+ mode: "prefix-no-default", // Fallback für nicht umgeschriebene Pfade
771
773
  storage: "cookie",
772
774
  rewrite: nextjsRewrite({
773
775
  "/about": {
@@ -791,132 +793,166 @@ export default config;
791
793
 
792
794
  ---
793
795
 
794
- ### Konfiguration für Content (Content Configuration)
796
+ ### Inhaltskonfiguration
795
797
 
796
- Einstellungen in Bezug auf die Verarbeitung von Inhalten innerhalb der Anwendung (Verzeichnisnamen, Dateierweiterungen und abgeleitete Konfigurationen).
798
+ Einstellungen für die Inhaltsbehandlung in der Anwendung, einschließlich Verzeichnisnamen, Dateierweiterungen und abgeleiteter Konfigurationen.
797
799
 
798
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
799
- | ---------------- | ---------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
800
- | `watch` | `boolean` | Gibt an, ob Intlayer Änderungen an Inhaltsdeklarationsdateien überwachen soll, um Wörterbücher neu zu erstellen. Standard: `process.env.NODE_ENV === 'development'` | | |
801
- | `fileExtensions` | `string[]` | Dateierweiterungen, die zum Scannen von Inhaltsdeklarationsdateien verwendet werden. Standard: `['.content.ts', '.content.js', '.content.mjs', '.content.cjs', '.content.json', '.content.json5', '.content.jsonc']` | `['.content.ts', '.content.js']` | |
802
- | `contentDir` | `string[]` | Pfade zu Verzeichnissen, in denen sich die Inhaltsdeklarationsdateien befinden. Standard: `['.']` | `['src/content']` | |
803
- | `codeDir` | `string[]` | Pfade zu Verzeichnissen, in denen sich die Quellcodedateien Ihrer Anwendung befinden. Standard: `['.']` | `['src']` | Wird zur Optimierung des Builds verwendet und stellt sicher, dass Code-Transformation und Hot Reload nur auf die erforderlichen Dateien angewendet werden. |
804
- | `excludedPath` | `string[]` | Pfade, die vom Inhalts-Scan ausgeschlossen sind. Standard: `['node_modules', '.intlayer', '.next', 'dist', 'build']` | `['src/styles']` | |
805
- | `formatCommand` | `string` | Befehl, der ausgeführt wird, um neu erstellte oder aktualisierte Inhaltsdateien zu formatieren. Standard: `undefined` | `'npx prettier --write "{{file}}"'` | Wird während der Inhalts-Extraktion oder über den visuellen Editor verwendet. |
800
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
801
+ | ---------------- | ---------------------------------------------------------------------------------------------------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
802
+ | `watch` | Gibt an, ob Intlayer auf Änderungen in Inhaltsdeklarationsdateien achten soll, um Wörterbücher neu zu erstellen. | `boolean` | `true` | | |
803
+ | `fileExtensions` | Dateierweiterungen, die beim Kompilieren von Wörterbüchern gescannt werden sollen. | `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']` | Die Anpassung kann helfen, Konflikte zu vermeiden. |
804
+ | `contentDir` | Der Verzeichnispfad, in dem Inhaltsdefinitionsdateien (`.content.*`) gespeichert sind. | `string[]` | `['.']` | `['src', '../../ui-library', require.resolve("@my-package/content")]` | Wird verwendet, um nach Inhaltsdateien zu suchen und Wörterbücher neu zu erstellen. |
805
+ | `codeDir` | Der Verzeichnispfad, in dem der Code gespeichert ist, relativ zum Basisverzeichnis. | `string[]` | `['.']` | `['src', '../../ui-library']` | Wird verwendet, um nach Codedateien für die Transformation (Pruning, Optimierung) zu suchen.<br/>• Die Trennung von `contentDir` kann die Leistung verbessern. |
806
+ | `excludedPath` | Verzeichnisse, die vom Scannen nach Inhalten ausgeschlossen werden sollen. | `string[]` | `['**/node_modules/**', '**/dist/**', '**/build/**', '**/.intlayer/**', '**/.next/**', '**/.nuxt/**', '**/.expo/**', '**/.vercel/**', '**/.turbo/**', '**/.tanstack/**']` | | Wird noch nicht verwendet; für zukünftige Implementierung vorgesehen. |
807
+ | `formatCommand` | Befehl zum Formatieren von Inhaltsdateien, wenn Intlayer sie lokal schreibt. | `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}}` wird durch den Dateipfad ersetzt.<br/>• Wenn nicht definiert, erkennt Intlayer dies automatisch (testet Prettier, Biome, ESLint). |
806
808
 
807
809
  ---
808
810
 
809
- ### Konfiguration für Wörterbücher (Dictionary Configuration)
810
-
811
- Einstellungen, die den Betrieb von Wörterbüchern steuern, einschließlich des Verhaltens beim automatischen Ausfüllen und der Inhaltsgenerierung.
812
-
813
- Diese Wörterbuchkonfiguration hat zwei Hauptzwecke:
811
+ ### Wörterbuchkonfiguration
814
812
 
815
- 1. **Standardwerte**: Definieren von Standardwerten beim Erstellen von Inhaltsdeklarationsdateien.
816
- 2. **Fallback-Verhalten**: Bereitstellung von Fallback-Werten, wenn bestimmte Felder nicht definiert sind, sodass Sie das Verhalten von Wörterbuchoperationen global definieren können.
813
+ Einstellungen, die Wörterbuchoperationen steuern, einschließlich automatischem Ausfüllverhalten und Inhaltsgenerierung.
817
814
 
818
- Weitere Informationen zu Inhaltsdeklarationsdateien und zur Anwendung von Konfigurationswerten finden Sie in der [Dokumentation zu Inhaltsdateien](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/dictionary/content_file.md).
815
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
816
+ | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
817
+ | `fill` | Steuert, wie die Ausgabedateien für das automatische Ausfüllen (KI-Übersetzung) generiert werden. | `boolean` &#124; <br/> `FilePathPattern` &#124; <br/> `Partial<Record<Locale, boolean &#124; FilePathPattern>>` | `true` | `{ en: '/locales/en/{{key}}.json', fr: ({ key }) => '/locales/fr/${key}.json', es: false }` | • `true`: Standardpfad (gleiche Datei wie Quelle).<br/>• `false`: Deaktivieren.<br/>• String-/Funktionsmuster erzeugt Dateien pro Sprache.<br/>• Objekt pro Sprache: Jede Sprache entspricht ihrem eigenen Muster; `false` ignoriert diese Sprache.<br/>• Das Einschließen von `{{locale}}` aktiviert die Pro-Sprache-Generierung.<br/>• `fill` auf Wörterbuchebene hat immer Vorrang vor dieser globalen Einstellung. |
818
+ | `description` | Hilft dem Editor und dem CMS, den Zweck des Wörterbuchs zu verstehen. Wird auch als Kontext für die KI-gestützte Übersetzungsgenerierung verwendet. | `string` | `undefined` | `'Benutzerprofil-Abschnitt'` | |
819
+ | `locale` | Transformiert das Wörterbuch in ein Pro-Sprache-Format. Jedes deklarierte Feld wird zu einem Übersetzungsknoten. Wenn nicht vorhanden, wird das Wörterbuch als mehrsprachig behandelt. | `LocalesValues` | `undefined` | `'en'` | Verwenden Sie dies, wenn das Wörterbuch spezifisch für eine einzelne Sprache ist, anstatt Übersetzungen für mehrere zu enthalten. |
820
+ | `contentAutoTransformation` | Transformiert Inhaltsstrings automatisch in typisierte Knoten (Markdown, HTML oder Insertion). | `boolean` &#124; <br/> `{ markdown?: boolean; html?: boolean; insertion?: boolean }` | `false` | `true` | • Markdown : `### Title` → `md('### Title')`.<br/>• HTML : `<div>Title</div>` → `html('<div>Title</div>')`.<br/>• Insertion : `Hallo {{name}}` → `insert('Hallo {{name}}')`. |
821
+ | `location` | Gibt an, wo Wörterbuchdateien gespeichert werden und wie sie mit dem CMS synchronisiert werden. | `'local'` &#124; <br/> `'remote'` &#124; <br/> `'hybrid'` &#124; <br/> `'plugin'` &#124; <br/> `string` | `'local'` | `'hybrid'` | • `'local'`: Nur lokal verwaltet.<br/>• `'remote'`: Nur remote verwaltet (CMS).<br/>• `'hybrid'`: Sowohl lokal als auch remote verwaltet.<br/>• `'plugin'` oder benutzerdefinierter String: Von einem Plugin oder einer benutzerdefinierten Quelle verwaltet. |
822
+ | `importMode` | Steuert, wie Wörterbücher importiert werden. | `'static'` &#124; <br/> `'dynamic'` &#124; <br/> `'fetch'` | `'static'` | `'dynamic'` | • `'static'`: Statisch importiert.<br/>• `'dynamic'`: Dynamisch mittels Suspense importiert.<br/>• `'fetch'`: Über Live Sync API abgerufen; Fallback auf `'dynamic'`, falls fehlgeschlagen.<br/>• Erfordert `@intlayer/babel` und `@intlayer/swc` Plugins.<br/>• Schlüssel müssen statisch deklariert sein.<br/>• Wird ignoriert, wenn `optimize` deaktiviert ist.<br/>• Beeinflusst nicht `getIntlayer`, `getDictionary`, etc. |
823
+ | `priority` | Priorität des Wörterbuchs. Höhere Werte gewinnen beim Lösen von Konflikten zwischen Wörterbüchern. | `number` | `undefined` | `1` | |
824
+ | `live` | Veraltet — stattdessen `importMode: 'fetch'` verwenden. Gibt an, ob Wörterbuchinhalte dynamisch über die Live Sync API abgerufen werden sollen. | `boolean` | `undefined` | | In v8.0.0 in `importMode: 'fetch'` umbenannt. |
825
+ | `schema` | Wird automatisch von Intlayer für die JSON-Schema-Validierung generiert. | `'https://intlayer.org/schema.json'` | automatisch generiert | | Nicht manuell bearbeiten. |
826
+ | `title` | Hilft bei der Identifizierung des Wörterbuchs im Editor und CMS. | `string` | `undefined` | `'Benutzerprofil'` | |
827
+ | `tags` | Kategorisiert Wörterbücher und bietet Kontext oder Anweisungen für den Editor und die KI. | `string[]` | `undefined` | `['benutzer', 'profil']` | |
828
+ | `version` | Version des entfernten Wörterbuchs; hilft bei der Verfolgung der aktuell verwendeten Version. | `string` | `undefined` | `'1.0.0'` | • Verwaltbar im CMS.<br/>• Nicht lokal bearbeiten. |
819
829
 
820
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
821
- | --------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
822
- | `fill` | `boolean &#124; FilePathPattern &#124; Partial<Record<Locale, boolean &#124; FilePathPattern>>` | Steuert, wie die Ausgabedateien für das automatische Ausfüllen (KI-Übersetzung) generiert werden. Standard: `true` | Siehe Beispiel unten | `true`: Standardpfad (gleiche Datei wie die Quelle). `false`: Deaktiviert. String-/Funktions-Templates generieren Dateien pro Locale. Pro-Locale-Objekt: Jedes Locale wird einem eigenen Muster zugeordnet; `false` überspringt dieses Locale. Die Einbeziehung von `{{locale}}` löst die Generierung pro Locale aus. Das `fill` auf Wörterbuchebene hat immer Vorrang vor dieser globalen Konfiguration. |
823
- | `importMode` | `'static' &#124; 'dynamic' &#124; 'fetch'` | Steuert, wie Wörterbücher importiert werden. Standard: `'static'` | `'dynamic'` | `'static'`: Statisch importiert. `'dynamic'`: Dynamisch über Suspense importiert. `'fetch'`: Dynamisch über die Live Sync API abgerufen. Beeinflusst nicht `getIntlayer`, `getDictionary`, `useDictionary` usw. |
824
- | `location` | `'local' &#124; 'remote' &#124; 'hybrid' &#124; string` | Wo die Wörterbücher gespeichert werden. Standard: `'local'` | `'remote'` | `'local'`: Dateisystem. `'remote'`: Intlayer CMS. `'hybrid'`: Beides. |
825
- | `contentAutoTransformation` | `boolean` | Ob Inhaltsdateien automatisch transformiert werden sollen (z. B. von Markdown zu HTML). Standard: `false` | `true` | Nützlich für die Verarbeitung von Markdown-Feldern über @intlayer/markdown. |
826
-
827
- **Beispiel für `fill`**:
830
+ **`fill` Beispiel**:
828
831
 
829
832
  ```ts
830
833
  dictionary: {
831
834
  fill: {
832
- en: '/locales/en/{{key}}.content.json',
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
- ### AI-Konfiguration (AI Configuration)
844
+ ### Logger-Konfiguration
842
845
 
843
- Definiert Einstellungen für die KI-gestützten Funktionen von Intlayer, wie z. B. die Erstellung von Übersetzungen.
846
+ Einstellungen zur Anpassung der Protokollausgabe (Logs) von Intlayer.
844
847
 
845
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
846
- | -------------------- | ---------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------- | --------------------------------------------------------------------------------------------------- |
847
- | `provider` | `string` | Der zu verwendende AI-Anbieter. | `'openai'`, `'anthropic'`, `'googlevertex'` | |
848
- | `model` | `string` | Das zu verwendende AI-Modell. | `'gpt-4o'`, `'claude-3-5-sonnet-20240620'` | |
849
- | `apiKey` | `string` | API-Key für den gewählten Anbieter. | `process.env.OPENAI_API_KEY` | |
850
- | `applicationContext` | `string` | Zusätzlicher Kontext über Ihre App zur Verbesserung der Genauigkeit der KI-Übersetzung. | `'Lernplattform für Kinder.'` | |
851
- | `baseURL` | `string` | Optionale Basis-URL für API-Aufrufe. | | Nützlich, wenn Sie einen Proxy oder ein lokales KI-Deployment verwenden. |
852
- | `dataSerialization` | `'json' &#124; 'toon'` | Definiert, wie Daten an die KI gesendet werden. Standard: `'json'` | `'json'` | `'json'`: Robuster und präziser. `'toon'`: Verbraucht weniger Token, kann aber weniger stabil sein. |
848
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
849
+ | -------- | --------------------------------------- | -------------------------------------------------------------- | ---------------- | ----------------------- | ----------------------------------------------------------------------------------------------------------------------- |
850
+ | `mode` | Steuert den Modus des Loggers. | `'default'` &#124; <br/> `'verbose'` &#124; <br/> `'disabled'` | `'default'` | `'verbose'` | `'verbose'`: Protokolliert mehr Informationen für das Debugging.<br/>• `'disabled'`: Deaktiviert den Logger vollständig. |
851
+ | `prefix` | Das Präfix für Protokollnachrichten. | `string` | `'[intlayer] '` | `'[mein präfix] '` | |
853
852
 
854
853
  ---
855
854
 
856
- ### Konfiguration für Build (Build Configuration)
855
+ ### KI-Konfiguration
856
+
857
+ Einstellungen, die die KI-Funktionen von Intlayer steuern, einschließlich Anbieter, Modell und API-Schlüssel.
858
+
859
+ Diese Konfiguration ist optional, wenn Sie im [Intlayer Dashboard](https://app.intlayer.org/project) mit einem Zugangsschlüssel registriert sind. Intlayer verwaltet automatisch die effizienteste und kostengünstigste KI-Lösung für Ihre Bedürfnisse. Die Verwendung der Standardoptionen gewährleistet eine bessere langfristige Wartbarkeit, da Intlayer kontinuierlich aktualisiert wird, um die relevantesten Modelle zu verwenden.
860
+
861
+ Wenn Sie lieber Ihren eigenen API-Schlüssel oder ein bestimmtes Modell verwenden möchten, können Sie Ihre benutzerdefinierte KI-Konfiguration definieren.
862
+ Diese KI-Konfiguration wird global in Ihrer Intlayer-Umgebung verwendet. Die CLI-Befehle verwenden diese Einstellungen standardmäßig für Befehle wie `fill`, ebenso wie das SDK, der visuelle Editor und das CMS. Sie können diese Standardwerte für spezifische Anwendungsfälle über Befehlsparameter überschreiben.
863
+
864
+ Intlayer unterstützt mehrere KI-Anbieter für maximale Flexibilität. Derzeit unterstützte Anbieter sind:
865
+
866
+ - **OpenAI** (Standard)
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
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
884
+ | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- | -------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
885
+ | `provider` | Der für Intlayer KI-Funktionen zu verwendende Anbieter. | `'openai'` &#124; <br/> `'anthropic'` &#124; <br/> `'mistral'` &#124; <br/> `'deepseek'` &#124; <br/> `'gemini'` &#124; <br/> `'ollama'` &#124; <br/> `'openrouter'` &#124; <br/> `'alibaba'` &#124; <br/> `'fireworks'` &#124; <br/> `'groq'` &#124; <br/> `'huggingface'` &#124; <br/> `'bedrock'` &#124; <br/> `'googleaistudio'` &#124; <br/> `'googlevertex'` &#124; <br/> `'togetherai'` | `undefined` | `'anthropic'` | Verschiedene Anbieter erfordern unterschiedliche API-Schlüssel und haben unterschiedliche Preismodelle. |
886
+ | `model` | Das für die KI-Funktionen zu verwendende Modell. | `string` | Keines | `'gpt-4o-2024-11-20'` | Das spezifische Modell variiert je nach Anbieter. |
887
+ | `temperature` | Steuert den Zufallsfaktor der KI-Antworten. | `number` | Keines | `0.1` | Höhere Temperatur = kreativer und weniger vorhersehbar. |
888
+ | `apiKey` | Ihr API-Schlüssel für den ausgewählten Anbieter. | `string` | Keines | `process.env.OPENAI_API_KEY` | Geheim halten; in Umgebungsvariablen speichern. |
889
+ | `applicationContext` | Zusätzlicher Kontext über Ihre Anwendung, um der KI zu helfen, genauere Übersetzungen zu generieren (Domain, Zielgruppe, Tonfall, Terminologie). | `string` | Keines | `'Mein Anwendungskontext'` | Kann verwendet werden, um Regeln hinzuzufügen (z. B.: `"URLs dürfen nicht verändert werden"`). |
890
+ | `baseURL` | Die Basis-URL für die KI-API. | `string` | Keines | `'https://api.openai.com/v1'` <br/> `'http://localhost:5000'` | Kann auf einen lokalen oder benutzerdefinierten KI-API-Endpunkt zeigen. |
891
+ | `dataSerialization` | Datenserialisierungsformat für die KI-Funktionen. | `'json'` &#124; <br/> `'toon'` | `undefined` | `'toon'` | • `'json'`: Standard, zuverlässig; verbraucht mehr Tokens.<br/>• `'toon'`: Weniger Tokens, weniger konsistent.<br/>• Zusätzliche Parameter werden an das Modell als Kontext übergeben (Abstraktionsaufwand etc.). |
857
892
 
858
- Einstellungen für den Build-Prozess und die Optimierung von Intlayer.
893
+ ---
859
894
 
860
- | Feld | Typ | Beschreibung | Beispiel | Hinweis |
861
- | -------------- | ------------------------ | ------------------------------------------------------------------------------------------------------------------ | -------- | ------- |
862
- | `mode` | `'auto' &#124; 'manual'` | Gibt an, ob Intlayer während der Pre-Build-Schritte der App automatisch ausgeführt werden soll. Standard: `'auto'` | | |
863
- | `optimize` | `boolean` | Gibt an, ob kompilierte Wörterbücher für die Laufzeit optimiert werden sollen. Standard: `true` in Produktion | | |
864
- | `outputFormat` | `('cjs' &#124; 'esm')[]` | Ausgabeformat für die generierten Wörterbuchdateien. Standard: `['cjs', 'esm']` | | |
865
- | `checkTypes` | `boolean` | Gibt an, ob Intlayer die Typen in den generierten Dateien prüfen soll. Standard: `false` | | |
895
+ ### Build-Konfiguration
866
896
 
867
- ---
897
+ Einstellungen, die steuern, wie Intlayer die Internationalisierung Ihrer Anwendung optimiert und erstellt.
868
898
 
869
- ### Systemkonfiguration (System Configuration)
899
+ Die Build-Optionen gelten für die Plugins `@intlayer/babel` und `@intlayer/swc`.
870
900
 
871
- Diese Einstellungen sind für fortgeschrittene Anwendungsfälle und die interne Konfiguration von Intlayer gedacht.
901
+ > Im Entwicklungsmodus verwendet Intlayer statische Importe für Wörterbücher, um die Entwicklung zu vereinfachen.
902
+
903
+ > Bei der Optimierung ersetzt Intlayer Wörterbuch-Aufrufe, um das Chunking zu optimieren, sodass das finale Bundle nur die tatsächlich verwendeten Wörterbücher importiert.
872
904
 
873
- | Feld | Typ | Beschreibung | Standard |
874
- | ------------------------- | -------- | ----------------------------------------------------- | --------------------------------- |
875
- | `dictionariesDir` | `string` | Verzeichnis der kompilierten Wörterbücher. | `'.intlayer/dictionary'` |
876
- | `moduleAugmentationDir` | `string` | Verzeichnis für TypeScript Module Augmentation. | `'.intlayer/types'` |
877
- | `unmergedDictionariesDir` | `string` | Verzeichnis der nicht zusammengeführten Wörterbücher. | `'.intlayer/unmerged_dictionary'` |
878
- | `typesDir` | `string` | Verzeichnis der generierten Typen. | `'.intlayer/types'` |
879
- | `mainDir` | `string` | Hauptverzeichnis der Intlayer-Dateien. | `'.intlayer/main'` |
880
- | `configDir` | `string` | Verzeichnis der kompilierten Konfigurationsdateien. | `'.intlayer/config'` |
881
- | `cacheDir` | `string` | Verzeichnis der Cache-Dateien. | `'.intlayer/cache'` |
905
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
906
+ | ----------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------- | --------------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
907
+ | `mode` | Steuert den Build-Modus. | `'auto'` &#124; <br/> `'manual'` | `'auto'` | `'manual'` | • `'auto'`: Build wird automatisch während des App-Builds ausgelöst.<br/>• `'manual'`: Wird nur ausgeführt, wenn der Build-Befehl explizit aufgerufen wird.<br/>• Kann verwendet werden, um Wörterbuch-Builds zu deaktivieren (z. B. um die Ausführung in Node.js-Umgebungen zu vermeiden). |
908
+ | `optimize` | Steuert, ob der Build optimiert werden soll. | `boolean` | `undefined` | `process.env.NODE_ENV === 'production'` | Wenn nicht definiert, wird die Optimierung beim Build des Frameworks (Vite/Next.js) ausgelöst.<br/>• `true` erzwingt die Optimierung auch im Dev-Modus.<br/>• `false` deaktiviert sie.<br/>• Wenn aktiv, ersetzt es Wörterbuch-Aufrufe zur Chunking-Optimierung.<br/>• Erfordert `@intlayer/babel` und `@intlayer/swc` Plugins. |
909
+ | `checkTypes` | Gibt an, ob der Build TypeScript-Typen prüfen und Fehler protokollieren soll. | `boolean` | `false` | | Kann den Build-Prozess verlangsamen. |
910
+ | `outputFormat` | Steuert das Ausgabeformat der Wörterbücher. | `('esm' &#124; 'cjs')[]` | `['esm', 'cjs']` | `['cjs']` | |
911
+ | `traversePattern` | Muster, die definieren, welche Dateien während der Optimierung durchlaufen werden sollen. | `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/**']` | • Begrenzen Sie die Optimierung auf relevante Dateien, um die Build-Leistung zu verbessern.<br/>• Wird ignoriert, wenn `optimize` deaktiviert ist.<br/>• Verwendet Glob-Muster. |
882
912
 
883
913
  ---
884
914
 
885
- ### Compiler-Konfiguration (Compiler Configuration)
915
+ ### Systemkonfiguration
886
916
 
887
- Einstellungen für den Intlayer Compiler (`intlayer compiler`).
917
+ Diese Einstellungen sind für fortgeschrittene Anwendungsfälle und die interne Konfiguration von Intlayer gedacht.
888
918
 
889
- | Feld | Typ | Beschreibung | Standard |
890
- | --------------------- | ------------------------ | ---------------------------------------------------------------------------------------------------- | -------- |
891
- | `enabled` | `boolean` | Gibt an, ob der Compiler aktiv ist. | `false` |
892
- | `output` | `string &#124; Function` | Ausgabepfad für extrahierte Wörterbücher. | |
893
- | `saveComponents` | `boolean` | Gibt an, ob die Original-Quelldateien mit den transformierten Versionen überschrieben werden sollen. | `false` |
894
- | `noMetadata` | `boolean` | Wenn `true`, fügt der Compiler keine Metadaten in die generierten Dateien ein. | `false` |
895
- | `dictionaryKeyPrefix` | `string` | Optionales Dictionary-Key-Präfix. | `''` |
919
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
920
+ | ------------------------- | ---------------------------------------------------- | -------- | --------------------------------- | -------- | ------- |
921
+ | `dictionariesDir` | Verzeichnis für kompilierte Wörterbücher. | `string` | `'.intlayer/dictionary'` | | |
922
+ | `moduleAugmentationDir` | Verzeichnis für die TypeScript-Modul-Augmentierung. | `string` | `'.intlayer/types'` | | |
923
+ | `unmergedDictionariesDir` | Verzeichnis für nicht zusammengeführte Wörterbücher. | `string` | `'.intlayer/unmerged_dictionary'` | | |
924
+ | `typesDir` | Verzeichnis für generierte Typen. | `string` | `'.intlayer/types'` | | |
925
+ | `mainDir` | Verzeichnis für die Intlayer-Hauptdatei. | `string` | `'.intlayer/main'` | | |
926
+ | `configDir` | Verzeichnis für kompilierte Konfigurationsdateien. | `string` | `'.intlayer/config'` | | |
927
+ | `cacheDir` | Verzeichnis für Cache-Dateien. | `string` | `'.intlayer/cache'` | | |
896
928
 
897
929
  ---
898
930
 
899
- ### Logger-Konfiguration (Logger Configuration)
931
+ ### Compiler-Konfiguration
900
932
 
901
- Einstellungen zur Anpassung der Log-Ausgabe von Intlayer.
933
+ Einstellungen, die den Intlayer-Compiler steuern, der Wörterbücher direkt aus Ihren Komponenten extrahiert.
902
934
 
903
- | Feld | Typ | Beschreibung | Standard |
904
- | -------- | ---------------------------------------------- | --------------------------- | -------------- |
905
- | `mode` | `'default' &#124; 'verbose' &#124; 'disabled'` | Logging-Modus. | `'default'` |
906
- | `prefix` | `string` | Präfix für Log-Nachrichten. | `'[intlayer]'` |
935
+ | Feld | Beschreibung | Typ | Standard | Beispiel | Hinweis |
936
+ | --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
937
+ | `enabled` | Gibt an, ob der Compiler für die Extraktion von Wörterbüchern aktiviert sein soll. | `boolean` &#124; <br/> `'build-only'` | `true` | `'build-only'` | `'build-only'` überspringt den Compiler während der Entwicklung, um Builds zu beschleunigen; wird nur bei Build-Befehlen ausgeführt. |
938
+ | `dictionaryKeyPrefix` | Präfix für extrahierte Wörterbuch-Schlüssel. | `string` | `''` | `'mein-präfix-'` | Wird dem generierten Schlüssel (basierend auf dem Dateinamen) vorangestellt, um Konflikte zu vermeiden. |
939
+ | `saveComponents` | Gibt an, ob Komponenten nach der Transformation gespeichert werden sollen. | `boolean` | `false` | | • Wenn `true`, werden Originaldateien durch transformierte Versionen ersetzt.<br/>• Der Compiler kann nach einem Durchlauf entfernt werden. |
940
+ | `output` | Definiert den Pfad für Ausgabedateien. Ersetzt `outputDir`. Unterstützt Template-Variablen: `{{fileName}}`, <br/> `{{key}}`, <br/> `{{locale}}`, <br/> `{{extension}}`, <br/> `{{componentFileName}}`, <br/> `{{componentExtension}}`, <br/> `{{format}}`, <br/> `{{componentFormat}}`, <br/> `{{componentDirPath}}`. | `boolean` &#124; <br/> `FilePathPattern` &#124; <br/> `Partial<Record<Locale, boolean &#124; FilePathPattern>>` | `undefined` | `'./{{fileName}}{{extension}}'` <br/> `'/locales/{{locale}}/{{key}}.json'` <br/> `{ en: ({ key }) => './locales/en/${key}.json', fr: '...', es: false }` | • `./` Pfade werden relativ zum Komponentenverzeichnis aufgelöst.<br/>• `/` Pfade relativ zum Stamm.<br/>• `{{locale}}` löst die Pro-Sprache-Generierung aus.<br/>• Unterstützt objektweise Notation pro Sprache. |
941
+ | `noMetadata` | Wenn `true`, lässt der Compiler die Metadaten des Wörterbuchs (Schlüssel, Inhalts-Wrapper) in der Ausgabe weg. | `boolean` | `false` | `false` → `{"key":"mein-schlüssel","content":{"key":"wert"}}` <br/> `true` → `{"key":"wert"}` | • Nützlich für i18next oder ICU MessageFormat JSON-Ausgaben.<br/>• Funktioniert gut mit dem `loadJSON` Plugin. |
942
+ | `dictionaryKeyPrefix` | Wörterbuch-Schlüsselpräfix | `string` | `''` | | Fügen Sie ein optionales Präfix für die extrahierten Wörterbuchschlüssel hinzu |
907
943
 
908
944
  ---
909
945
 
910
- ### Benutzerdefinierte Schemas (Custom Schemas)
946
+ ### Benutzerdefinierte Schemata (Custom Schemas)
911
947
 
912
- | Feld | Typ | Beschreibung |
913
- | --------- | --------------------------- | -------------------------------------------------------------------------------------------- |
914
- | `schemas` | `Record<string, ZodSchema>` | Erlaubt es Ihnen, Zod-Schemas zur Validierung der Struktur Ihrer Wörterbücher zu definieren. |
948
+ | Feld | Beschreibung | Typ |
949
+ | --------- | ---------------------------------------------------------------------------------- | --------------------------- |
950
+ | `schemas` | Erlaubt die Definition von Zod-Schemata zur Validierung der Struktur Ihrer Wörterbücher. | `Record<string, ZodSchema>` |
915
951
 
916
952
  ---
917
953
 
918
954
  ### Plugins
919
955
 
920
- | Feld | Typ | Beschreibung |
921
- | --------- | ------------------ | -------------------------------------------- |
922
- | `plugins` | `IntlayerPlugin[]` | Liste der zu aktivierenden Intlayer-Plugins. |
956
+ | Feld | Beschreibung | Typ |
957
+ | --------- | -------------------------------------- | ------------------ |
958
+ | `plugins` | Liste der zu aktivierenden Intlayer-Plugins. | `IntlayerPlugin[]` |