@intlayer/docs 8.4.5 → 8.4.6
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/dist/cjs/generated/docs.entry.cjs +20 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +20 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +1 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/configuration.md +520 -722
- package/docs/ar/intlayer_with_storybook.md +521 -0
- package/docs/bn/configuration.md +922 -0
- package/docs/bn/intlayer_with_hono.md +428 -0
- package/docs/de/configuration.md +369 -743
- package/docs/de/intlayer_with_storybook.md +521 -0
- package/docs/en/configuration.md +181 -507
- package/docs/en/intlayer_with_storybook.md +521 -0
- package/docs/en-GB/configuration.md +456 -657
- package/docs/en-GB/intlayer_with_storybook.md +521 -0
- package/docs/es/configuration.md +379 -754
- package/docs/es/intlayer_with_storybook.md +521 -0
- package/docs/fr/configuration.md +376 -757
- package/docs/fr/intlayer_with_storybook.md +521 -0
- package/docs/hi/configuration.md +532 -728
- package/docs/hi/intlayer_with_storybook.md +521 -0
- package/docs/id/configuration.md +371 -684
- package/docs/id/intlayer_with_storybook.md +521 -0
- package/docs/it/configuration.md +397 -775
- package/docs/it/intlayer_with_storybook.md +521 -0
- package/docs/ja/configuration.md +525 -724
- package/docs/ja/intlayer_with_storybook.md +521 -0
- package/docs/ko/configuration.md +525 -724
- package/docs/ko/intlayer_with_storybook.md +521 -0
- package/docs/pl/configuration.md +430 -734
- package/docs/pl/intlayer_with_storybook.md +521 -0
- package/docs/pt/configuration.md +375 -746
- package/docs/pt/intlayer_with_storybook.md +521 -0
- package/docs/ru/configuration.md +532 -701
- package/docs/ru/intlayer_with_storybook.md +521 -0
- package/docs/tr/configuration.md +527 -719
- package/docs/tr/intlayer_with_storybook.md +521 -0
- package/docs/uk/configuration.md +425 -744
- package/docs/uk/intlayer_with_storybook.md +521 -0
- package/docs/ur/configuration.md +922 -0
- package/docs/ur/intlayer_with_hono.md +428 -0
- package/docs/vi/configuration.md +412 -753
- package/docs/vi/intlayer_with_storybook.md +521 -0
- package/docs/zh/configuration.md +521 -714
- package/docs/zh/intlayer_with_storybook.md +521 -0
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +20 -0
package/docs/tr/configuration.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-08-13
|
|
3
|
-
updatedAt: 2026-03-
|
|
4
|
-
title: Yapılandırma
|
|
3
|
+
updatedAt: 2026-03-20
|
|
4
|
+
title: Yapılandırma (Configuration)
|
|
5
5
|
description: Uygulamanız için Intlayer'ı nasıl yapılandıracağınızı öğrenin. Intlayer'ı ihtiyaçlarınıza göre özelleştirmek için mevcut çeşitli ayarları ve seçenekleri anlayın.
|
|
6
6
|
keywords:
|
|
7
7
|
- Yapılandırma
|
|
@@ -14,27 +14,39 @@ slugs:
|
|
|
14
14
|
- concept
|
|
15
15
|
- configuration
|
|
16
16
|
history:
|
|
17
|
+
- version: 8.4.0
|
|
18
|
+
date: 2026-03-20
|
|
19
|
+
changes: 'compiler.output' ve 'dictionary.fill' için her dil için nesne notasyonu eklendi
|
|
17
20
|
- version: 8.3.0
|
|
18
21
|
date: 2026-03-11
|
|
19
|
-
changes: 'baseDir'
|
|
22
|
+
changes: 'baseDir', 'content' yapılandırmasından 'system' yapılandırmasına taşındı
|
|
20
23
|
- version: 8.2.0
|
|
21
24
|
date: 2026-03-09
|
|
22
|
-
changes: Derleyici
|
|
25
|
+
changes: Derleyici (compiler) seçenekleri güncellendi, 'output' ve 'noMetadata' desteği eklendi
|
|
23
26
|
- version: 8.1.7
|
|
24
27
|
date: 2026-02-25
|
|
25
|
-
changes: Derleyici
|
|
28
|
+
changes: Derleyici seçenekleri güncellendi
|
|
29
|
+
- version: 8.1.5
|
|
30
|
+
date: 2026-02-23
|
|
31
|
+
changes: Derleyici seçeneği 'build-only' ve sözlük öneki eklendi
|
|
26
32
|
- version: 8.0.6
|
|
27
33
|
date: 2026-02-12
|
|
28
|
-
changes: Open Router, Alibaba, Amazon, Google Vertex Bedrock, Fireworks, Groq, Hugging Face ve Together.ai sağlayıcıları için destek
|
|
34
|
+
changes: Open Router, Alibaba, Amazon, Google Vertex Bedrock, Fireworks, Groq, Hugging Face ve Together.ai sağlayıcıları için destek eklendi
|
|
29
35
|
- version: 8.0.5
|
|
30
36
|
date: 2026-02-06
|
|
31
|
-
changes:
|
|
37
|
+
changes: Yapay zeka yapılandırmasına `dataSerialization` eklendi
|
|
38
|
+
- version: 8.0.0
|
|
39
|
+
date: 2026-01-24
|
|
40
|
+
changes: Temel mekanizmayı daha iyi tanımlamak için `live` içe aktarma modu `fetch` olarak yeniden adlandırıldı.
|
|
41
|
+
- version: 8.0.0
|
|
42
|
+
date: 2026-01-22
|
|
43
|
+
changes: Derleme yapılandırması `importMode`, `dictionary` yapılandırmasına taşındı.
|
|
32
44
|
- version: 8.0.0
|
|
33
45
|
date: 2026-01-22
|
|
34
|
-
changes:
|
|
46
|
+
changes: Yönlendirme yapılandırmasına `rewrite` seçeneği eklendi
|
|
35
47
|
- version: 8.0.0
|
|
36
48
|
date: 2026-01-18
|
|
37
|
-
changes: Sistem
|
|
49
|
+
changes: Sistem yapılandırması içerik yapılandırmasından ayrıldı. Dahili yollar `system` özelliğine taşındı. İçerik dosyalarını ve kod dönüşümünü ayırmak için `codeDir` eklendi.
|
|
38
50
|
- version: 8.0.0
|
|
39
51
|
date: 2026-01-18
|
|
40
52
|
changes: Sözlük seçenekleri `location` ve `schema` eklendi
|
|
@@ -44,31 +56,46 @@ history:
|
|
|
44
56
|
- version: 7.5.0
|
|
45
57
|
date: 2025-12-17
|
|
46
58
|
changes: `buildMode` seçeneği eklendi
|
|
59
|
+
- version: 7.0.0
|
|
60
|
+
date: 2025-10-25
|
|
61
|
+
changes: `dictionary` yapılandırması eklendi
|
|
62
|
+
- version: 7.0.0
|
|
63
|
+
date: 2025-10-21
|
|
64
|
+
changes: `middleware`, yönlendirme yapılandırması `routing` ile değiştirildi
|
|
65
|
+
- version: 7.0.0
|
|
66
|
+
date: 2025-10-12
|
|
67
|
+
changes: `formatCommand` seçeneği eklendi
|
|
68
|
+
- version: 6.2.0
|
|
69
|
+
date: 2025-10-12
|
|
70
|
+
changes: `excludedPath` seçeneği güncellendi
|
|
71
|
+
- version: 6.0.2
|
|
72
|
+
date: 2025-09-23
|
|
73
|
+
changes: `outputFormat` seçeneği eklendi
|
|
47
74
|
- version: 6.0.0
|
|
48
|
-
date: 2025-09-
|
|
49
|
-
changes: `
|
|
75
|
+
date: 2025-09-21
|
|
76
|
+
changes: `dictionaryOutput` alanı ve `i18nextResourcesDir` alanı kaldırıldı
|
|
50
77
|
- version: 6.0.0
|
|
51
78
|
date: 2025-09-16
|
|
52
|
-
changes: `live`
|
|
79
|
+
changes: `live` içe aktarma modu eklendi
|
|
53
80
|
- version: 6.0.0
|
|
54
81
|
date: 2025-09-04
|
|
55
|
-
changes: `hotReload` alanı `liveSync` ile değiştirildi ve `liveSyncPort`
|
|
82
|
+
changes: `hotReload` alanı `liveSync` ile değiştirildi ve `liveSyncPort` ve `liveSyncURL` alanları eklendi
|
|
56
83
|
- version: 5.6.1
|
|
57
84
|
date: 2025-07-25
|
|
58
|
-
changes: `activateDynamicImport
|
|
85
|
+
changes: `activateDynamicImport`, `importMode` seçeneği ile değiştirildi
|
|
59
86
|
- version: 5.6.0
|
|
60
87
|
date: 2025-07-13
|
|
61
|
-
changes: Varsayılan contentDir `['src']`
|
|
88
|
+
changes: Varsayılan contentDir `['src']` yerine `['.']` olarak değiştirildi
|
|
62
89
|
- version: 5.5.11
|
|
63
90
|
date: 2025-06-29
|
|
64
91
|
changes: `docs` komutları eklendi
|
|
65
92
|
---
|
|
66
93
|
|
|
67
|
-
# Intlayer Yapılandırma
|
|
94
|
+
# Intlayer Yapılandırma Belgeleri
|
|
68
95
|
|
|
69
96
|
## Genel Bakış
|
|
70
97
|
|
|
71
|
-
Intlayer yapılandırma dosyaları, uluslararasılaştırma, ara
|
|
98
|
+
Intlayer yapılandırma dosyaları, eklentinin uluslararasılaştırma (internationalization), ara yazılım (middleware) ve içerik işleme gibi çeşitli yönlerini özelleştirmenize olanak tanır. Bu belge, yapılandırmadaki her bir özelliğin derinlemesine açıklamasını sağlar.
|
|
72
99
|
|
|
73
100
|
---
|
|
74
101
|
|
|
@@ -78,9 +105,9 @@ Intlayer yapılandırma dosyaları, uluslararasılaştırma, ara katman (middlew
|
|
|
78
105
|
|
|
79
106
|
---
|
|
80
107
|
|
|
81
|
-
## Yapılandırma Dosyası
|
|
108
|
+
## Desteklenen Yapılandırma Dosyası Formatları
|
|
82
109
|
|
|
83
|
-
Intlayer
|
|
110
|
+
Intlayer JSON, JS, MJS ve TS yapılandırma dosyası formatlarını kabul eder:
|
|
84
111
|
|
|
85
112
|
- `intlayer.config.ts`
|
|
86
113
|
- `intlayer.config.js`
|
|
@@ -93,7 +120,7 @@ Intlayer, JSON, JS, MJS ve TS yapılandırma dosyası formatlarını kabul eder:
|
|
|
93
120
|
|
|
94
121
|
---
|
|
95
122
|
|
|
96
|
-
##
|
|
123
|
+
## Yapılandırma Dosyası Örneği
|
|
97
124
|
|
|
98
125
|
````typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
99
126
|
import { Locales, type IntlayerConfig } from "intlayer";
|
|
@@ -101,108 +128,108 @@ import { nextjsRewrite } from "intlayer/routing";
|
|
|
101
128
|
import { z } from "zod";
|
|
102
129
|
|
|
103
130
|
/**
|
|
104
|
-
*
|
|
131
|
+
* Mevcut tüm seçenekleri gösteren Intlayer yapılandırma dosyası örneği.
|
|
105
132
|
*/
|
|
106
133
|
const config: IntlayerConfig = {
|
|
107
134
|
/**
|
|
108
|
-
*
|
|
135
|
+
* Uluslararasılaştırma ayarları yapılandırması.
|
|
109
136
|
*/
|
|
110
137
|
internationalization: {
|
|
111
138
|
/**
|
|
112
|
-
*
|
|
113
|
-
*
|
|
139
|
+
* Uygulamada desteklenen dillerin (locales) listesi.
|
|
140
|
+
* Varsayılan: [Locales.ENGLISH]
|
|
114
141
|
*/
|
|
115
142
|
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
|
|
116
143
|
|
|
117
144
|
/**
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
145
|
+
* Her sözlükte tanımlanması gereken zorunlu dillerin listesi.
|
|
146
|
+
* Boşsa, `strict` modunda tüm diller zorunludur.
|
|
147
|
+
* Varsayılan: []
|
|
121
148
|
*/
|
|
122
149
|
requiredLocales: [Locales.ENGLISH],
|
|
123
150
|
|
|
124
151
|
/**
|
|
125
|
-
*
|
|
126
|
-
* - "strict":
|
|
127
|
-
* - "inclusive":
|
|
128
|
-
* - "loose":
|
|
129
|
-
*
|
|
152
|
+
* Uluslararasılaştırılmış içerik için katılik düzeyi.
|
|
153
|
+
* - "strict": Bildirilen herhangi bir dil eksikse veya bildirilmemişse hata verir.
|
|
154
|
+
* - "inclusive": Bildirilen bir dil eksikse uyarı verir.
|
|
155
|
+
* - "loose": Mevcut olan her dili kabul eder.
|
|
156
|
+
* Varsayılan: "inclusive"
|
|
130
157
|
*/
|
|
131
158
|
strictMode: "inclusive",
|
|
132
159
|
|
|
133
160
|
/**
|
|
134
|
-
*
|
|
135
|
-
*
|
|
161
|
+
* İstenen dil bulunamadığında geri dönüş (fallback) olarak kullanılan varsayılan dil.
|
|
162
|
+
* Varsayılan: Locales.ENGLISH
|
|
136
163
|
*/
|
|
137
164
|
defaultLocale: Locales.ENGLISH,
|
|
138
165
|
},
|
|
139
166
|
|
|
140
167
|
/**
|
|
141
|
-
*
|
|
168
|
+
* Sözlük işlemlerini ve geri dönüş davranışını kontrol eden ayarlar.
|
|
142
169
|
*/
|
|
143
170
|
dictionary: {
|
|
144
171
|
/**
|
|
145
|
-
*
|
|
146
|
-
* - "static":
|
|
147
|
-
* - "dynamic":
|
|
148
|
-
* - "fetch":
|
|
149
|
-
*
|
|
172
|
+
* Sözlüklerin nasıl içe aktarılacağını kontrol eder.
|
|
173
|
+
* - "static": Derleme zamanında statik olarak içe aktarılır.
|
|
174
|
+
* - "dynamic": Suspense kullanılarak dinamik olarak içe aktarılır.
|
|
175
|
+
* - "fetch": Live Sync API aracılığıyla dinamik olarak çekilir.
|
|
176
|
+
* Varsayılan: "static"
|
|
150
177
|
*/
|
|
151
178
|
importMode: "static",
|
|
152
179
|
|
|
153
180
|
/**
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
*
|
|
181
|
+
* Yapay zeka kullanarak eksik çevirileri otomatik olarak doldurma stratejisi.
|
|
182
|
+
* Mantıksal bir değer veya doldurulan içeriği kaydetmek için bir yol deseni olabilir.
|
|
183
|
+
* Varsayılan: true
|
|
157
184
|
*/
|
|
158
185
|
fill: true,
|
|
159
186
|
|
|
160
187
|
/**
|
|
161
|
-
*
|
|
162
|
-
* - "local":
|
|
163
|
-
* - "remote":
|
|
164
|
-
* - "hybrid":
|
|
165
|
-
* - "plugin" (
|
|
166
|
-
*
|
|
188
|
+
* Sözlük dosyalarının fiziksel konumu.
|
|
189
|
+
* - "local": Yerel dosya sisteminde saklanır.
|
|
190
|
+
* - "remote": Intlayer CMS'te saklanır.
|
|
191
|
+
* - "hybrid": Hem yerel hem de Intlayer CMS'te saklanır.
|
|
192
|
+
* - "plugin" (veya herhangi bir özel dize): Bir eklenti veya özel kaynak tarafından sağlanır.
|
|
193
|
+
* Varsayılan: "local"
|
|
167
194
|
*/
|
|
168
195
|
location: "local",
|
|
169
196
|
|
|
170
197
|
/**
|
|
171
|
-
*
|
|
172
|
-
*
|
|
198
|
+
* İçeriğin otomatik olarak dönüştürülüp dönüştürülmeyeceği (ör. Markdown'dan HTML'e).
|
|
199
|
+
* Varsayılan: false
|
|
173
200
|
*/
|
|
174
201
|
contentAutoTransformation: false,
|
|
175
202
|
},
|
|
176
203
|
|
|
177
204
|
/**
|
|
178
|
-
*
|
|
205
|
+
* Yönlendirme ve ara yazılım yapılandırması.
|
|
179
206
|
*/
|
|
180
207
|
routing: {
|
|
181
208
|
/**
|
|
182
|
-
*
|
|
183
|
-
* - "prefix-no-default":
|
|
184
|
-
* - "prefix-all":
|
|
185
|
-
* - "no-prefix":
|
|
186
|
-
* - "search-params":
|
|
187
|
-
*
|
|
209
|
+
* Dil yönlendirme stratejisi.
|
|
210
|
+
* - "prefix-no-default": Varsayılan dışındaki herkese ön ek ekler (ör. /dashboard, /fr/dashboard).
|
|
211
|
+
* - "prefix-all": Tüm dillere ön ek ekler (ör. /en/dashboard, /fr/dashboard).
|
|
212
|
+
* - "no-prefix": URL'de dil yok.
|
|
213
|
+
* - "search-params": ?locale=... kullanır
|
|
214
|
+
* Varsayılan: "prefix-no-default"
|
|
188
215
|
*/
|
|
189
216
|
mode: "prefix-no-default",
|
|
190
217
|
|
|
191
218
|
/**
|
|
192
|
-
*
|
|
193
|
-
*
|
|
194
|
-
*
|
|
219
|
+
* Kullanıcı tarafından seçilen dilin nerede saklanacağı.
|
|
220
|
+
* Seçenekler: 'cookie', 'localStorage', 'sessionStorage', 'header' veya bunların bir dizisi.
|
|
221
|
+
* Varsayılan: ['cookie', 'header']
|
|
195
222
|
*/
|
|
196
223
|
storage: ["cookie", "header"],
|
|
197
224
|
|
|
198
225
|
/**
|
|
199
|
-
*
|
|
200
|
-
*
|
|
226
|
+
* Uygulama URL'leri için temel yol.
|
|
227
|
+
* Varsayılan: ""
|
|
201
228
|
*/
|
|
202
229
|
basePath: "",
|
|
203
230
|
|
|
204
231
|
/**
|
|
205
|
-
*
|
|
232
|
+
* Dil bazlı belirli yollar için özel URL yeniden yazma (rewrite) kuralları.
|
|
206
233
|
*/
|
|
207
234
|
rewrite: nextjsRewrite({
|
|
208
235
|
"/[locale]/about": {
|
|
@@ -213,130 +240,130 @@ const config: IntlayerConfig = {
|
|
|
213
240
|
},
|
|
214
241
|
|
|
215
242
|
/**
|
|
216
|
-
*
|
|
243
|
+
* İçerik dosyası bulma ve işleme ile ilgili ayarlar.
|
|
217
244
|
*/
|
|
218
245
|
content: {
|
|
219
246
|
/**
|
|
220
|
-
*
|
|
221
|
-
*
|
|
247
|
+
* Sözlükleri taramak için dosya uzantıları.
|
|
248
|
+
* Varsayılan: ['.content.ts', '.content.js', '.content.json', vb.]
|
|
222
249
|
*/
|
|
223
250
|
fileExtensions: [".content.ts", ".content.js", ".content.json"],
|
|
224
251
|
|
|
225
252
|
/**
|
|
226
|
-
*
|
|
227
|
-
*
|
|
253
|
+
* .content dosyalarının bulunduğu dizinler.
|
|
254
|
+
* Varsayılan: ["."]
|
|
228
255
|
*/
|
|
229
256
|
contentDir: ["src"],
|
|
230
257
|
|
|
231
258
|
/**
|
|
232
|
-
*
|
|
233
|
-
*
|
|
234
|
-
*
|
|
259
|
+
* Kaynak kodun bulunduğu yer.
|
|
260
|
+
* Derleme optimizasyonu ve kod dönüşümü için kullanılır.
|
|
261
|
+
* Varsayılan: ["."]
|
|
235
262
|
*/
|
|
236
263
|
codeDir: ["src"],
|
|
237
264
|
|
|
238
265
|
/**
|
|
239
|
-
*
|
|
240
|
-
*
|
|
266
|
+
* Taramadan hariç tutulan desenler.
|
|
267
|
+
* Varsayılan: ['node_modules', '.intlayer', vb.]
|
|
241
268
|
*/
|
|
242
269
|
excludedPath: ["node_modules"],
|
|
243
270
|
|
|
244
271
|
/**
|
|
245
|
-
*
|
|
246
|
-
*
|
|
272
|
+
* Geliştirme sırasında değişikliklerin izlenip izlenmeyeceği ve sözlüklerin yeniden oluşturulup oluşturulmayacağı.
|
|
273
|
+
* Varsayılan: Geliştirme ortamında true
|
|
247
274
|
*/
|
|
248
275
|
watch: true,
|
|
249
276
|
|
|
250
277
|
/**
|
|
251
|
-
*
|
|
278
|
+
* Yeni oluşturulan / güncellenen .content dosyalarını biçimlendirmek için kullanılan komut.
|
|
252
279
|
*/
|
|
253
280
|
formatCommand: 'npx prettier --write "{{file}}"',
|
|
254
281
|
},
|
|
255
282
|
|
|
256
283
|
/**
|
|
257
|
-
* Visual Editor
|
|
284
|
+
* Görsel Düzenleyici (Visual Editor) yapılandırması.
|
|
258
285
|
*/
|
|
259
286
|
editor: {
|
|
260
287
|
/**
|
|
261
|
-
*
|
|
262
|
-
*
|
|
288
|
+
* Görsel düzenleyicinin etkin olup olmadığı.
|
|
289
|
+
* Varsayılan: false
|
|
263
290
|
*/
|
|
264
291
|
enabled: true,
|
|
265
292
|
|
|
266
293
|
/**
|
|
267
|
-
*
|
|
268
|
-
*
|
|
294
|
+
* Kaynak doğrulama (origin validation) için uygulamanızın URL'si.
|
|
295
|
+
* Varsayılan: ""
|
|
269
296
|
*/
|
|
270
297
|
applicationURL: "http://localhost:3000",
|
|
271
298
|
|
|
272
299
|
/**
|
|
273
|
-
*
|
|
274
|
-
*
|
|
300
|
+
* Yerel düzenleyici sunucusu için bağlantı noktası.
|
|
301
|
+
* Varsayılan: 8000
|
|
275
302
|
*/
|
|
276
303
|
port: 8000,
|
|
277
304
|
|
|
278
305
|
/**
|
|
279
|
-
*
|
|
280
|
-
*
|
|
306
|
+
* Düzenleyici için genel URL.
|
|
307
|
+
* Varsayılan: "http://localhost:8000"
|
|
281
308
|
*/
|
|
282
309
|
editorURL: "http://localhost:8000",
|
|
283
310
|
|
|
284
311
|
/**
|
|
285
|
-
* Intlayer CMS URL.
|
|
286
|
-
*
|
|
312
|
+
* Intlayer CMS URL'si.
|
|
313
|
+
* Varsayılan: "https://app.intlayer.org"
|
|
287
314
|
*/
|
|
288
315
|
cmsURL: "https://app.intlayer.org",
|
|
289
316
|
|
|
290
317
|
/**
|
|
291
|
-
*
|
|
292
|
-
*
|
|
318
|
+
* Arka uç API URL'si.
|
|
319
|
+
* Varsayılan: "https://back.intlayer.org"
|
|
293
320
|
*/
|
|
294
321
|
backendURL: "https://back.intlayer.org",
|
|
295
322
|
|
|
296
323
|
/**
|
|
297
|
-
*
|
|
298
|
-
*
|
|
324
|
+
* Gerçek zamanlı içerik senkronizasyonunun etkinleştirilip etkinleştirilmeyeceği.
|
|
325
|
+
* Varsayılan: false
|
|
299
326
|
*/
|
|
300
327
|
liveSync: true,
|
|
301
328
|
},
|
|
302
329
|
|
|
303
330
|
/**
|
|
304
|
-
*
|
|
331
|
+
* Yapay zeka tabanlı çeviri ve oluşturma ayarları.
|
|
305
332
|
*/
|
|
306
333
|
ai: {
|
|
307
334
|
/**
|
|
308
|
-
*
|
|
309
|
-
*
|
|
310
|
-
*
|
|
335
|
+
* Kullanılacak yapay zeka sağlayıcısı.
|
|
336
|
+
* Seçenekler: 'openai', 'anthropic', 'mistral', 'deepseek', 'gemini', 'ollama', 'openrouter', 'alibaba', 'fireworks', 'groq', 'huggingface', 'bedrock', 'googlevertex', 'togetherai'
|
|
337
|
+
* Varsayılan: 'openai'
|
|
311
338
|
*/
|
|
312
339
|
provider: "openai",
|
|
313
340
|
|
|
314
341
|
/**
|
|
315
|
-
*
|
|
342
|
+
* Kullanılacak seçili sağlayıcının modeli.
|
|
316
343
|
*/
|
|
317
344
|
model: "gpt-4o",
|
|
318
345
|
|
|
319
346
|
/**
|
|
320
|
-
*
|
|
347
|
+
* Sağlayıcı API anahtarı.
|
|
321
348
|
*/
|
|
322
349
|
apiKey: process.env.OPENAI_API_KEY,
|
|
323
350
|
|
|
324
351
|
/**
|
|
325
|
-
*
|
|
352
|
+
* Çeviriler oluşturulurken yapay zekayı yönlendirmek için genel bağlam.
|
|
326
353
|
*/
|
|
327
|
-
applicationContext: "
|
|
354
|
+
applicationContext: "Bu bir gezi rezervasyon uygulamasıdır.",
|
|
328
355
|
|
|
329
356
|
/**
|
|
330
|
-
*
|
|
357
|
+
* Yapay zeka API'si için temel yol URL'si.
|
|
331
358
|
*/
|
|
332
359
|
baseURL: "http://localhost:3000",
|
|
333
360
|
|
|
334
361
|
/**
|
|
335
|
-
* Veri Serileştirme
|
|
362
|
+
* Veri Serileştirme (Data Serialization)
|
|
336
363
|
*
|
|
337
364
|
* Seçenekler:
|
|
338
|
-
* - "json":
|
|
339
|
-
* - "toon": Daha az
|
|
365
|
+
* - "json": Varsayılan, sağlam; daha fazla belirteç tüketir.
|
|
366
|
+
* - "toon": Daha az belirteç tüketir, JSON kadar tutarlı olmayabilir.
|
|
340
367
|
*
|
|
341
368
|
* Varsayılan: "json"
|
|
342
369
|
*/
|
|
@@ -344,123 +371,123 @@ const config: IntlayerConfig = {
|
|
|
344
371
|
},
|
|
345
372
|
|
|
346
373
|
/**
|
|
347
|
-
*
|
|
374
|
+
* Derleme ve optimizasyon ayarları.
|
|
348
375
|
*/
|
|
349
376
|
build: {
|
|
350
377
|
/**
|
|
351
|
-
*
|
|
352
|
-
* - "auto":
|
|
353
|
-
* - "manual":
|
|
354
|
-
*
|
|
378
|
+
* Derleme yürütme modu.
|
|
379
|
+
* - "auto": Uygulama derlemesi sırasında otomatik olarak derlenir.
|
|
380
|
+
* - "manual": Açık bir derleme komutu gerektirir.
|
|
381
|
+
* Varsayılan: "auto"
|
|
355
382
|
*/
|
|
356
383
|
mode: "auto",
|
|
357
384
|
|
|
358
385
|
/**
|
|
359
|
-
*
|
|
360
|
-
*
|
|
386
|
+
* Kullanılmayan sözlükleri kaldırarak nihai paketi optimize edip etmeyeceği.
|
|
387
|
+
* Varsayılan: Üretim ortamında true
|
|
361
388
|
*/
|
|
362
389
|
optimize: true,
|
|
363
390
|
|
|
364
391
|
/**
|
|
365
|
-
*
|
|
366
|
-
*
|
|
392
|
+
* Oluşturulan sözlük dosyaları için çıktı formatı.
|
|
393
|
+
* Varsayılan: ['cjs', 'esm']
|
|
367
394
|
*/
|
|
368
|
-
outputFormat: ["esm"],
|
|
395
|
+
outputFormat: ["cjs", "esm"],
|
|
369
396
|
|
|
370
397
|
/**
|
|
371
|
-
*
|
|
372
|
-
*
|
|
398
|
+
* Derlemenin TypeScript türlerini (types) kontrol edip etmeyeceğini belirtir.
|
|
399
|
+
* Varsayılan: false
|
|
373
400
|
*/
|
|
374
401
|
checkTypes: false,
|
|
375
402
|
},
|
|
376
403
|
|
|
377
404
|
/**
|
|
378
|
-
* Logger
|
|
405
|
+
* Günlükçü (Logger) yapılandırması.
|
|
379
406
|
*/
|
|
380
407
|
log: {
|
|
381
408
|
/**
|
|
382
|
-
*
|
|
383
|
-
* - "default":
|
|
384
|
-
* - "verbose":
|
|
385
|
-
* - "disabled":
|
|
386
|
-
*
|
|
409
|
+
* Günlükleme düzeyi.
|
|
410
|
+
* - "default": Standart günlükleme.
|
|
411
|
+
* - "verbose": Derinlemesine hata ayıklama günlüğü.
|
|
412
|
+
* - "disabled": Günlüklemeyi devre dışı bırakır.
|
|
413
|
+
* Varsayılan: "default"
|
|
387
414
|
*/
|
|
388
415
|
mode: "default",
|
|
389
416
|
|
|
390
417
|
/**
|
|
391
|
-
*
|
|
392
|
-
*
|
|
418
|
+
* Tüm günlük mesajları için ön ek.
|
|
419
|
+
* Varsayılan: "[intlayer]"
|
|
393
420
|
*/
|
|
394
421
|
prefix: "[intlayer]",
|
|
395
422
|
},
|
|
396
423
|
|
|
397
424
|
/**
|
|
398
|
-
*
|
|
425
|
+
* Sistem yapılandırması (Gelişmiş kullanım için)
|
|
399
426
|
*/
|
|
400
427
|
system: {
|
|
401
428
|
/**
|
|
402
|
-
*
|
|
429
|
+
* Yerelleştirilmiş sözlükleri saklamak için dizin.
|
|
403
430
|
*/
|
|
404
431
|
dictionariesDir: ".intlayer/dictionary",
|
|
405
432
|
|
|
406
433
|
/**
|
|
407
|
-
*
|
|
434
|
+
* TypeScript modül genişletme (module augmentation) için dizin.
|
|
408
435
|
*/
|
|
409
436
|
moduleAugmentationDir: ".intlayer/types",
|
|
410
437
|
|
|
411
438
|
/**
|
|
412
|
-
*
|
|
439
|
+
* Birleştirilmemiş sözlükleri saklamak için dizin.
|
|
413
440
|
*/
|
|
414
441
|
unmergedDictionariesDir: ".intlayer/unmerged_dictionary",
|
|
415
442
|
|
|
416
443
|
/**
|
|
417
|
-
*
|
|
444
|
+
* Sözlük türlerini saklamak için dizin.
|
|
418
445
|
*/
|
|
419
446
|
typesDir: ".intlayer/types",
|
|
420
447
|
|
|
421
448
|
/**
|
|
422
|
-
*
|
|
449
|
+
* Ana uygulama dosyalarının saklandığı dizin.
|
|
423
450
|
*/
|
|
424
451
|
mainDir: ".intlayer/main",
|
|
425
452
|
|
|
426
453
|
/**
|
|
427
|
-
*
|
|
454
|
+
* Yapılandırma dosyalarının saklandığı dizin.
|
|
428
455
|
*/
|
|
429
456
|
configDir: ".intlayer/config",
|
|
430
457
|
|
|
431
458
|
/**
|
|
432
|
-
*
|
|
459
|
+
* Önbellek dosyalarının saklandığı dizin.
|
|
433
460
|
*/
|
|
434
461
|
cacheDir: ".intlayer/cache",
|
|
435
462
|
},
|
|
436
463
|
|
|
437
464
|
/**
|
|
438
|
-
* Compiler
|
|
465
|
+
* Derleyici (Compiler) yapılandırması (Gelişmiş kullanım için)
|
|
439
466
|
*/
|
|
440
467
|
compiler: {
|
|
441
468
|
/**
|
|
442
|
-
* Derleyicinin
|
|
469
|
+
* Derleyicinin etkin olup olmayacağını belirtir.
|
|
443
470
|
*
|
|
444
|
-
* - false
|
|
445
|
-
* - true
|
|
446
|
-
* - "build-only"
|
|
471
|
+
* - false: Derleyiciyi devre dışı bırakır.
|
|
472
|
+
* - true: Derleyiciyi etkinleştirir.
|
|
473
|
+
* - "build-only": Geliştirme sırasında derleyiciyi atlar ve başlatma süresini hızlandırır.
|
|
447
474
|
*
|
|
448
|
-
* Varsayılan
|
|
475
|
+
* Varsayılan: false
|
|
449
476
|
*/
|
|
450
477
|
enabled: true,
|
|
451
478
|
|
|
452
479
|
/**
|
|
453
|
-
* Çıktı
|
|
480
|
+
* Çıktı dosyaları için yolu tanımlar. `outputDir`'in yerini alır.
|
|
454
481
|
*
|
|
455
482
|
* - `./` ile başlayan yollar bileşen dizinine göre çözümlenir.
|
|
456
|
-
* - `/` ile başlayan yollar
|
|
483
|
+
* - `/` ile başlayan yollar proje köküne (`baseDir`) göre çözümlenir.
|
|
457
484
|
*
|
|
458
|
-
* - Yola `{{locale}}` değişkenini dahil etmek,
|
|
485
|
+
* - Yola `{{locale}}` değişkenini dahil etmek, her dil için ayrı sözlüklerin oluşturulmasını tetikleyecektir.
|
|
459
486
|
*
|
|
460
487
|
* Örnek:
|
|
461
488
|
* ```ts
|
|
462
489
|
* {
|
|
463
|
-
* // Bileşenin
|
|
490
|
+
* // Bileşenin yanında çok dilli .content.ts dosyaları oluşturun
|
|
464
491
|
* output: ({ fileName, extension }) => `./${fileName}${extension}`,
|
|
465
492
|
*
|
|
466
493
|
* // output: './{{fileName}}{{extension}}', // Şablon dizesi kullanarak eşdeğer
|
|
@@ -469,7 +496,7 @@ const config: IntlayerConfig = {
|
|
|
469
496
|
*
|
|
470
497
|
* ```ts
|
|
471
498
|
* {
|
|
472
|
-
* // Proje kökünde
|
|
499
|
+
* // Proje kökünde dil başına merkezi JSON'lar oluşturun
|
|
473
500
|
* output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
|
|
474
501
|
*
|
|
475
502
|
* // output: '/locales/{{locale}}/{{key}}.content.json', // Şablon dizesi kullanarak eşdeğer
|
|
@@ -478,7 +505,7 @@ const config: IntlayerConfig = {
|
|
|
478
505
|
*
|
|
479
506
|
* Değişken listesi:
|
|
480
507
|
* - `fileName`: Dosya adı.
|
|
481
|
-
* - `key`: İçerik
|
|
508
|
+
* - `key`: İçerik anahtarı (key).
|
|
482
509
|
* - `locale`: İçerik dili.
|
|
483
510
|
* - `extension`: Dosya uzantısı.
|
|
484
511
|
* - `componentFileName`: Bileşen dosya adı.
|
|
@@ -491,23 +518,23 @@ const config: IntlayerConfig = {
|
|
|
491
518
|
|
|
492
519
|
/**
|
|
493
520
|
* Bileşenlerin dönüştürüldükten sonra kaydedilip kaydedilmeyeceğini belirtir.
|
|
494
|
-
* Bu şekilde, derleyici
|
|
521
|
+
* Bu şekilde, derleyici uygulamanızı dönüştürmek için yalnızca bir kez çalışabilir ve ardından kaldırılabilir.
|
|
495
522
|
*/
|
|
496
523
|
saveComponents: false,
|
|
497
524
|
|
|
498
525
|
/**
|
|
499
|
-
* Oluşturulan dosyaya yalnızca içeriği
|
|
526
|
+
* Oluşturulan dosyaya yalnızca içeriği ekler. i18next veya ICU MessageFormat formatı için dil başına JSON çıktısı için yararlıdır.
|
|
500
527
|
*/
|
|
501
528
|
noMetadata: false,
|
|
502
529
|
|
|
503
530
|
/**
|
|
504
|
-
* Sözlük
|
|
531
|
+
* Sözlük anahtarı ön eki
|
|
505
532
|
*/
|
|
506
|
-
dictionaryKeyPrefix: "", // Ayıklanan sözlük
|
|
533
|
+
dictionaryKeyPrefix: "", // Ayıklanan sözlük anahtarlarına isteğe bağlı bir ön ek ekleyin
|
|
507
534
|
},
|
|
508
535
|
|
|
509
536
|
/**
|
|
510
|
-
*
|
|
537
|
+
* Sözlük içeriğini doğrulamak için özel şemalar (Schemas).
|
|
511
538
|
*/
|
|
512
539
|
schemas: {
|
|
513
540
|
"my-schema": z.object({
|
|
@@ -516,7 +543,7 @@ const config: IntlayerConfig = {
|
|
|
516
543
|
},
|
|
517
544
|
|
|
518
545
|
/**
|
|
519
|
-
*
|
|
546
|
+
* Eklenti yapılandırması.
|
|
520
547
|
*/
|
|
521
548
|
plugins: [],
|
|
522
549
|
};
|
|
@@ -524,591 +551,372 @@ const config: IntlayerConfig = {
|
|
|
524
551
|
export default config;
|
|
525
552
|
````
|
|
526
553
|
|
|
527
|
-
|
|
554
|
+
---
|
|
555
|
+
|
|
556
|
+
## Yapılandırma Referansı (Configuration Reference)
|
|
557
|
+
|
|
558
|
+
Aşağıdaki bölümler, Intlayer'da mevcut olan çeşitli yapılandırma seçeneklerini açıklamaktadır.
|
|
559
|
+
|
|
560
|
+
---
|
|
561
|
+
|
|
562
|
+
### Uluslararasılaştırma Yapılandırması (Internationalization Configuration)
|
|
563
|
+
|
|
564
|
+
Uygulama için mevcut diller ve varsayılan dil dahil olmak üzere uluslararasılaştırma ile ilgili ayarları tanımlar.
|
|
565
|
+
|
|
566
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
567
|
+
| ----------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------ | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
568
|
+
| `locales` | `string[]` | Uygulamada destekleyen dillerin listesi. Varsayılan: `[Locales.ENGLISH]` | `['en', 'fr', 'es']` | |
|
|
569
|
+
| `requiredLocales` | `string[]` | Uygulamada gerekli dillerin listesi. Varsayılan: `[]` | `[]` | Boşsa, `strict` modunda tüm diller gereklidir. Gerekli dillerin `locales` alanında da tanımlandığından emin olun. |
|
|
570
|
+
| `strictMode` | `string` | TypeScript kullanımı yoluyla uluslararasılaştırılmış içeriğin sağlam bir şekilde uygulanmasını sağlar. Varsayılan: `inclusive` | | `"strict"` ise: `t` fonksiyonu bildirilen her dilin tanımlanmasını gerektirir — herhangi biri eksikse veya bildirilmemişse hata verir. `"inclusive"` ise: eksik diller için uyarır ancak bildirilmeyen dilleri kabul eder. `"loose"` ise: mevcut olan her dili kabul eder. |
|
|
571
|
+
| `defaultLocale` | `string` | İstenen dil bulunamadığında geri dönüş olarak kullanılan varsayılan dil. Varsayılan: `Locales.ENGLISH` | `'en'` | URL'de, tanımlama bilgisinde veya başlıkta belirtilmediğinde dili belirlemek için kullanılır. |
|
|
572
|
+
|
|
573
|
+
---
|
|
574
|
+
|
|
575
|
+
### Düzenleyici Yapılandırması (Editor Configuration)
|
|
576
|
+
|
|
577
|
+
Sunucu bağlantı noktası ve etkinlik durumu dahil olmak üzere entegre düzenleyici ile ilgili ayarları tanımlar.
|
|
578
|
+
|
|
579
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
580
|
+
| ---------------------------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
581
|
+
| `applicationURL` | `string` | Uygulamanızın URL'si. Varsayılan: `''` | `'http://localhost:3000'`, `'https://example.com'`, `process.env.INTLAYER_EDITOR_URL` | Güvenlik nedenleriyle düzenleyicinin kaynaklarını (origins) kısıtlamak için kullanılır. `'*'` olarak ayarlanırsa, düzenleyiciye herhangi bir kaynaktan erişilebilir. |
|
|
582
|
+
| `port` | `number` | Görsel Düzenleyici sunucusu tarafından kullanılan bağlantı noktası. Varsayılan: `8000` | | |
|
|
583
|
+
| `editorURL` | `string` | Düzenleyici sunucu URL'si. Varsayılan: `'http://localhost:8000'` | `'http://localhost:3000'`, `'https://example.com'`, `process.env.INTLAYER_EDITOR_URL` | Uygulama ile etkileşime girebilen kaynakları kısıtlamak için kullanılır. `'*'` olarak ayarlanırsa, herhangi bir kaynaktan erişilebilir. Bağlantı noktasını değiştirirseniz veya düzenleyici başka bir alanda barındırılıyorsa ayarlanmalıdır. |
|
|
584
|
+
| `cmsURL` | `string` | Intlayer CMS URL'si. Varsayılan: `'https://intlayer.org'` | `'https://intlayer.org'` | |
|
|
585
|
+
| `backendURL` | `string` | Arka uç sunucu URL'si. Varsayılan: `https://back.intlayer.org` | `http://localhost:4000` | |
|
|
586
|
+
| `enabled` | `boolean` | Uygulamanın görsel düzenleyici ile etkileşime girip girmeyeceğini belirtir. Varsayılan: `true` | `process.env.NODE_ENV !== 'production'` | `false` ise, düzenleyici uygulama ile etkileşime giremez. Belirli ortamlar için devre dışı bırakılması güvenliği artırır. |
|
|
587
|
+
| `clientId` | `string | undefined` | oAuth2 kullanarak arka uçla kimlik doğrulaması yapmak için intlayer paketlerini etkinleştirir. Bir erişim belirteci almak için [intlayer.org/project](https://app.intlayer.org/project) adresine gidin. Varsayılan: `undefined` | | Gizli tutun; ortam değişkenlerinde saklayın. |
|
|
588
|
+
| `clientSecret` | `string | undefined` | oAuth2 kullanarak arka uçla kimlik doğrulaması yapmak için intlayer paketlerini etkinleştirir. Bir erişim belirteci almak için [intlayer.org/project](https://app.intlayer.org/project) adresine gidin. Varsayılan: `undefined` | | Gizli tutun; ortam değişkenlerinde saklayın. |
|
|
589
|
+
| `dictionaryPriorityStrategy` | `string` | Hem yerel hem de uzak sözlükler mevcut olduğunda sözlük önceliklendirme stratejisi. Varsayılan: `'local_first'` | `'distant_first'` | `'distant_first'`: Uzak sözlüklere yerel olanlara göre öncelik verir. `'local_first'`: Yerel sözlüklere uzak olanlara göre öncelik verir. |
|
|
590
|
+
| `liveSync` | `boolean` | CMS / Görsel Düzenleyici / Arka Uçta bir değişiklik algılandığında uygulama sunucusunun içeriği sıcak olarak yeniden yükleyip yüklemeyeceğini belirtir. Varsayılan: `true` | `true` | Bir sözlük eklendiğinde/güncellendiğinde uygulama sayfa içeriğini günceller. Canlı senkronizasyon (live sync), içeriği başka bir sunucuya dış kaynaklardan aktarır ve bu da performansı biraz etkileyebilir. Her ikisinin de aynı makinede barındırılması önerilir. |
|
|
591
|
+
| `liveSyncPort` | `number` | Canlı senkronizasyon sunucu bağlantı noktası. Varsayılan: `4000` | `4000` | |
|
|
592
|
+
| `liveSyncURL` | `string` | Canlı senkronizasyon sunucu URL'si. Varsayılan: `'http://localhost:{liveSyncPort}'` | `'https://example.com'` | Varsayılan olarak localhost'u gösterir; uzak bir canlı senkronizasyon sunucusuna değiştirilebilir. |
|
|
593
|
+
|
|
594
|
+
### Yönlendirme Yapılandırması (Routing Configuration)
|
|
595
|
+
|
|
596
|
+
URL yapısı, dil depolama ve ara yazılım işleme dahil olmak üzere yönlendirme davranışını kontrol eden ayarlar.
|
|
597
|
+
|
|
598
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
599
|
+
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
600
|
+
| `mode` | `'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'` | Dil işleme için URL yönlendirme modu. Varsayılan: `'prefix-no-default'` | `'prefix-no-default'`: `/dashboard` (en) veya `/fr/dashboard` (fr). `'prefix-all'`: `/en/dashboard`. `'no-prefix'`: dil başka yollarla işlenir. `'search-params'`: `/dashboard?locale=fr` kullanır | Tanımlama bilgisi veya dil depolama yönetimini etkilemez. |
|
|
601
|
+
| `storage` | `false | 'cookie' | 'localStorage' | 'sessionStorage' | 'header' | CookiesAttributes | StorageAttributes | Array` | Dili istemcide saklamak için yapılandırma. Varsayılan: `['cookie', 'header']` | `'localStorage'`, `[{ type: 'cookie', name: 'custom-locale', secure: true }]` | Aşağıdaki Depolama Seçenekleri tablosuna bakın. |
|
|
602
|
+
| `basePath` | `string` | Uygulama URL'leri için temel yol. Varsayılan: `''` | `'/my-app'` | Uygulama `https://example.com/my-app` üzerindeyse, basePath `'/my-app'` olur ve URL'ler `https://example.com/my-app/en` gibi olur. |
|
|
603
|
+
| `rewrite` | `Record<string, StrictModeLocaleMap<string>>` | Belirli yollar için varsayılan yönlendirme modunu geçersiz kılan özel URL yeniden yazma kuralları. Dinamik parametreleri `[param]` destekler. Varsayılan: `undefined` | Aşağıdaki örneğe bakın | Yeniden yazma kuralları `mode` üzerinde önceliğe sahiptir. Next.js ve Vite ile çalışır. `getLocalizedUrl()` eşleşen kuralları otomatik olarak uygular. [Özel URL Yeniden Yazmaları](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/custom_url_rewrites.md) konusuna bakın. |
|
|
604
|
+
|
|
605
|
+
**`rewrite` örneği**:
|
|
606
|
+
|
|
607
|
+
```typescript
|
|
608
|
+
routing: {
|
|
609
|
+
mode: "prefix-no-default", // Geri dönüş stratejisi
|
|
610
|
+
rewrite: nextjsRewrite({
|
|
611
|
+
"/about": {
|
|
612
|
+
en: "/about",
|
|
613
|
+
fr: "/a-propos",
|
|
614
|
+
},
|
|
615
|
+
"/product/[slug]": {
|
|
616
|
+
en: "/product/[slug]",
|
|
617
|
+
fr: "/produit/[slug]",
|
|
618
|
+
},
|
|
619
|
+
"/blog/[category]/[id]": {
|
|
620
|
+
en: "/blog/[category]/[id]",
|
|
621
|
+
fr: "/journal/[category]/[id]",
|
|
622
|
+
},
|
|
623
|
+
}),
|
|
624
|
+
}
|
|
625
|
+
```
|
|
626
|
+
|
|
627
|
+
#### Depolama Seçenekleri (Storage Options)
|
|
628
|
+
|
|
629
|
+
| Değer | Açıklama | Not |
|
|
630
|
+
| ------------------ | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
631
|
+
| `'cookie'` | Dili tanımlama bilgilerinde saklar — hem istemci hem de sunucu tarafından erişilebilir. | GDPR uyumluluğu için uygun kullanıcı onayının alındığından emin olun. `CookiesAttributes` aracılığıyla özelleştirilebilir (`{ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }`). |
|
|
632
|
+
| `'localStorage'` | Dili son kullanma tarihi olmadan tarayıcıda saklar — yalnızca istemci tarafı. | Açıkça temizlenene kadar süresi dolmaz. Intlayer proxy'si buna erişemez. `StorageAttributes` aracılığıyla özelleştirilebilir (`{ type: 'localStorage', name: 'custom-locale' }`). |
|
|
633
|
+
| `'sessionStorage'` | Dili sayfa oturumu süresince saklar — yalnızca istemci tarafı. | Sekme/pencere kapatıldığında temizlenir. Intlayer proxy'si buna erişemez. `StorageAttributes` aracılığıyla özelleştirilebilir (`{ type: 'sessionStorage', name: 'custom-locale' }`). |
|
|
634
|
+
| `'header'` | Dili HTTP başlıkları aracılığıyla saklar veya iletir — yalnızca sunucu tarafı. | API çağrıları için yararlıdır. İstemci tarafı erişemez. `StorageAttributes` aracılığıyla özelleştirilebilir (`{ type: 'header', name: 'custom-locale' }`). |
|
|
635
|
+
|
|
636
|
+
#### Tanımlama Bilgisi Özellikleri (Cookie Attributes)
|
|
637
|
+
|
|
638
|
+
Tanımlama bilgisi depolamasını kullanırken ek tanımlama bilgisi özelliklerini yapılandırabilirsiniz:
|
|
639
|
+
|
|
640
|
+
| Alan | Tür | Açıklama |
|
|
641
|
+
| ---------- | ------------------------------------- | ------------------------------------------------------------ |
|
|
642
|
+
| `name` | `string` | Tanımlama bilgisinin adı. Varsayılan: `'INTLAYER_LOCALE'` |
|
|
643
|
+
| `domain` | `string` | Tanımlama bilgisi alanı. Varsayılan: `undefined` |
|
|
644
|
+
| `path` | `string` | Tanımlama bilgisi yolu. Varsayılan: `undefined` |
|
|
645
|
+
| `secure` | `boolean` | HTTPS gerektirir. Varsayılan: `undefined` |
|
|
646
|
+
| `httpOnly` | `boolean` | HTTP-only bayrağı. Varsayılan: `undefined` |
|
|
647
|
+
| `sameSite` | `'strict' | 'lax' | 'none'` | SameSite politikası. |
|
|
648
|
+
| `expires` | `Date | number` | Son kullanma tarihi veya gün sayısı. Varsayılan: `undefined` |
|
|
649
|
+
|
|
650
|
+
#### Dil Depolama Özellikleri (Locale Storage Attributes)
|
|
651
|
+
|
|
652
|
+
localStorage veya sessionStorage kullanırken:
|
|
653
|
+
|
|
654
|
+
| Alan | Tür | Açıklama |
|
|
655
|
+
| ------ | ---------------------------------------- | ------------------------------------------------------ |
|
|
656
|
+
| `type` | `'localStorage' | 'sessionStorage'` | Depolama türü. |
|
|
657
|
+
| `name` | `string` | Depolama anahtarı adı. Varsayılan: `'INTLAYER_LOCALE'` |
|
|
658
|
+
|
|
659
|
+
#### Yapılandırma Örnekleri
|
|
660
|
+
|
|
661
|
+
İşte yeni v7 yönlendirme yapısı için bazı yaygın yapılandırma örnekleri:
|
|
662
|
+
|
|
663
|
+
**Temel Yapılandırma (Varsayılan)**:
|
|
664
|
+
|
|
665
|
+
```typescript
|
|
666
|
+
import { Locales, type IntlayerConfig } from "intlayer";
|
|
667
|
+
// intlayer.config.ts
|
|
668
|
+
const config: IntlayerConfig = {
|
|
669
|
+
internationalization: {
|
|
670
|
+
locales: ["en", "fr", "es"],
|
|
671
|
+
defaultLocale: "en",
|
|
672
|
+
},
|
|
673
|
+
routing: {
|
|
674
|
+
mode: "prefix-no-default",
|
|
675
|
+
storage: "localStorage",
|
|
676
|
+
basePath: "",
|
|
677
|
+
},
|
|
678
|
+
};
|
|
679
|
+
|
|
680
|
+
export default config;
|
|
681
|
+
```
|
|
682
|
+
|
|
683
|
+
**GDPR Uyumlu Yapılandırma**:
|
|
684
|
+
|
|
685
|
+
```typescript
|
|
686
|
+
import { Locales, type IntlayerConfig } from "intlayer";
|
|
687
|
+
// intlayer.config.ts
|
|
688
|
+
const config: IntlayerConfig = {
|
|
689
|
+
internationalization: {
|
|
690
|
+
locales: ["en", "fr", "es"],
|
|
691
|
+
defaultLocale: "en",
|
|
692
|
+
},
|
|
693
|
+
routing: {
|
|
694
|
+
mode: "prefix-no-default",
|
|
695
|
+
storage: [
|
|
696
|
+
{
|
|
697
|
+
type: "localStorage",
|
|
698
|
+
name: "user-locale",
|
|
699
|
+
},
|
|
700
|
+
{
|
|
701
|
+
type: "cookie",
|
|
702
|
+
name: "user-locale",
|
|
703
|
+
secure: true,
|
|
704
|
+
sameSite: "strict",
|
|
705
|
+
httpOnly: false,
|
|
706
|
+
},
|
|
707
|
+
],
|
|
708
|
+
basePath: "",
|
|
709
|
+
},
|
|
710
|
+
};
|
|
711
|
+
|
|
712
|
+
export default config;
|
|
713
|
+
```
|
|
714
|
+
|
|
715
|
+
**Arama Parametreleri Modu (Search Parameters Mode)**:
|
|
716
|
+
|
|
717
|
+
```typescript
|
|
718
|
+
import { Locales, type IntlayerConfig } from "intlayer";
|
|
719
|
+
// intlayer.config.ts
|
|
720
|
+
const config: IntlayerConfig = {
|
|
721
|
+
internationalization: {
|
|
722
|
+
locales: ["en", "fr", "es"],
|
|
723
|
+
defaultLocale: "en",
|
|
724
|
+
},
|
|
725
|
+
routing: {
|
|
726
|
+
mode: "search-params",
|
|
727
|
+
storage: "localStorage",
|
|
728
|
+
basePath: "",
|
|
729
|
+
},
|
|
730
|
+
};
|
|
731
|
+
|
|
732
|
+
export default config;
|
|
733
|
+
```
|
|
734
|
+
|
|
735
|
+
**Özel Depolama ile Ön Eki Olmayan Mod (No Prefix Mode)**:
|
|
736
|
+
|
|
737
|
+
```typescript
|
|
738
|
+
import { Locales, type IntlayerConfig } from "intlayer";
|
|
739
|
+
// intlayer.config.ts
|
|
740
|
+
const config: IntlayerConfig = {
|
|
741
|
+
internationalization: {
|
|
742
|
+
locales: ["en", "fr", "es"],
|
|
743
|
+
defaultLocale: "en",
|
|
744
|
+
},
|
|
745
|
+
routing: {
|
|
746
|
+
mode: "no-prefix",
|
|
747
|
+
storage: {
|
|
748
|
+
type: "sessionStorage",
|
|
749
|
+
name: "app-locale",
|
|
750
|
+
},
|
|
751
|
+
basePath: "/my-app",
|
|
752
|
+
},
|
|
753
|
+
};
|
|
754
|
+
|
|
755
|
+
export default config;
|
|
756
|
+
```
|
|
757
|
+
|
|
758
|
+
**Dinamik Yollarla Özel URL Yeniden Yazma**:
|
|
759
|
+
|
|
760
|
+
```typescript
|
|
761
|
+
// intlayer.config.ts
|
|
762
|
+
import { nextjsRewrite } from "intlayer/routing";
|
|
763
|
+
|
|
764
|
+
const config: IntlayerConfig = {
|
|
765
|
+
internationalization: {
|
|
766
|
+
locales: ["en", "fr"],
|
|
767
|
+
defaultLocale: "en",
|
|
768
|
+
},
|
|
769
|
+
routing: {
|
|
770
|
+
mode: "prefix-no-default", // Yeniden yazılmayan yollar için geri dönüş stratejisi
|
|
771
|
+
storage: "cookie",
|
|
772
|
+
rewrite: nextjsRewrite({
|
|
773
|
+
"/about": {
|
|
774
|
+
en: "/about",
|
|
775
|
+
fr: "/a-propos",
|
|
776
|
+
},
|
|
777
|
+
"/product/[slug]": {
|
|
778
|
+
en: "/product/[slug]",
|
|
779
|
+
fr: "/produit/[slug]",
|
|
780
|
+
},
|
|
781
|
+
"/blog/[category]/[id]": {
|
|
782
|
+
en: "/blog/[category]/[id]",
|
|
783
|
+
fr: "/journal/[category]/[id]",
|
|
784
|
+
},
|
|
785
|
+
}),
|
|
786
|
+
},
|
|
787
|
+
};
|
|
528
788
|
|
|
529
|
-
|
|
789
|
+
export default config;
|
|
790
|
+
```
|
|
530
791
|
|
|
531
792
|
---
|
|
532
793
|
|
|
533
|
-
###
|
|
534
|
-
|
|
535
|
-
Uygulama
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
- **requiredLocales**:
|
|
546
|
-
- _Tür_: `string[]`
|
|
547
|
-
- _Varsayılan_: `[]`
|
|
548
|
-
- _Açıklama_: Uygulamada zorunlu olan yerel ayarların listesi.
|
|
549
|
-
- _Örnek_: `[]`
|
|
550
|
-
- _Not_: Boşsa, `strict` modda tüm yerel ayarlar gereklidir.
|
|
551
|
-
- _Not_: Gereken yerel ayarların `locales` alanında da tanımlandığından emin olun.
|
|
552
|
-
- **strictMode**:
|
|
553
|
-
- _Tür_: `string`
|
|
554
|
-
- _Varsayılan_: `inclusive`
|
|
555
|
-
- _Açıklama_: Typescript kullanarak uluslararasılaştırılmış içeriğin güçlü uygulamalarını sağlar.
|
|
556
|
-
- _Not_: "strict" olarak ayarlanırsa, çeviri `t` fonksiyonu her bildirilen yerel ayarın tanımlanmasını gerektirir. Bir yerel ayar eksikse veya yapılandırmanızda bildirilmemişse, hata verir.
|
|
557
|
-
- _Not_: "inclusive" olarak ayarlanırsa, çeviri `t` fonksiyonu her bildirilen yerel ayarın tanımlanmasını gerektirir. Bir yerel ayar eksikse uyarı verir. Ancak yapılandırmanızda bildirilmemiş ama mevcut olan bir yerel ayarı kabul eder.
|
|
558
|
-
- _Not_: "loose" olarak ayarlanırsa, çeviri `t` fonksiyonu mevcut olan herhangi bir yerel ayarı kabul edecektir.
|
|
559
|
-
|
|
560
|
-
- **defaultLocale**:
|
|
561
|
-
- _Tür_: `string`
|
|
562
|
-
- _Varsayılan_: `'en'`
|
|
563
|
-
- _Açıklama_: İstenen yerel ayar bulunamadığında kullanılan varsayılan yerel ayar.
|
|
564
|
-
- _Örnek_: `'en'`
|
|
565
|
-
- _Not_: URL, çerez veya başlıkta yerel ayar belirtilmediğinde kullanılacak yerel ayarı belirlemek için kullanılır.
|
|
794
|
+
### İçerik Yapılandırması (Content Configuration)
|
|
795
|
+
|
|
796
|
+
Uygulama içindeki içerik işleme ile ilgili ayarlar (dizin adları, dosya uzantıları ve türetilmiş yapılandırmalar).
|
|
797
|
+
|
|
798
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
799
|
+
| ---------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
800
|
+
| `watch` | `boolean` | Intlayer'ın sözlükleri yeniden oluşturmak için içerik bildirim dosyalarındaki değişiklikleri izleyip izlemeyeceğini belirtir. Varsayılan: `process.env.NODE_ENV === 'development'` | | |
|
|
801
|
+
| `fileExtensions` | `string[]` | İçerik bildirim dosyalarını taramak için kullanılan dosya uzantıları. Varsayılan: `['.content.ts', '.content.js', '.content.mjs', '.content.cjs', '.content.json', '.content.json5', '.content.jsonc']` | `['.content.ts', '.content.js']` | |
|
|
802
|
+
| `contentDir` | `string[]` | İçerik bildirim dosyalarının bulunduğu dizinlerin yolları. Varsayılan: `['.']` | `['src/content']` | |
|
|
803
|
+
| `codeDir` | `string[]` | Uygulamanızın kaynak kod dosyalarının bulunduğu dizinlerin yolları. Varsayılan: `['.']` | `['src']` | Derlemeyi optimize etmek ve kod dönüşümü ve sıcak yeniden yüklemenin (hot reload) yalnızca gerekli dosyalara uygulanmasını sağlamak için kullanılır. |
|
|
804
|
+
| `excludedPath` | `string[]` | İçerik taramasından hariç tutulan yollar. Varsayılan: `['node_modules', '.intlayer', '.next', 'dist', 'build']` | `['src/styles']` | |
|
|
805
|
+
| `formatCommand` | `string` | Yeni oluşturulan veya güncellenen içerik dosyalarını biçimlendirmek için çalıştırılacak komut. Varsayılan: `undefined` | `'npx prettier --write "{{file}}"'` | İçerik ayıklama sırasında veya görsel düzenleyici aracılığıyla kullanılır. |
|
|
566
806
|
|
|
567
807
|
---
|
|
568
808
|
|
|
569
|
-
###
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
- **cmsURL**:
|
|
600
|
-
- _Tür_: `string`
|
|
601
|
-
- _Varsayılan_: `'https://intlayer.org'`
|
|
602
|
-
- _Açıklama_: Intlayer CMS'nin URL'si.
|
|
603
|
-
- _Örnek_: `'https://intlayer.org'`
|
|
604
|
-
- _Not_: Intlayer CMS'nin URL'si.
|
|
605
|
-
|
|
606
|
-
- **backendURL**:
|
|
607
|
-
- _Tür_: `string`
|
|
608
|
-
- _Varsayılan_: `https://back.intlayer.org`
|
|
609
|
-
- _Açıklama_: Backend sunucusunun URL'si.
|
|
610
|
-
- _Örnek_: `http://localhost:4000`
|
|
611
|
-
|
|
612
|
-
- **enabled**:
|
|
613
|
-
- _Tür_: `boolean`
|
|
614
|
-
- _Varsayılan_: `true`
|
|
615
|
-
- _Açıklama_: Uygulamanın görsel editörle etkileşimde bulunup bulunmadığını belirtir.
|
|
616
|
-
- _Örnek_: `process.env.NODE_ENV !== 'production'`
|
|
617
|
-
- _Not_: Eğer true ise, editör uygulamayla etkileşimde bulunabilir. Eğer false ise, editör uygulamayla etkileşimde bulunamaz. Her durumda, editör yalnızca görsel editör tarafından etkinleştirilebilir. Belirli ortamlar için editörün devre dışı bırakılması, güvenliği sağlamak için bir yöntemdir.
|
|
618
|
-
|
|
619
|
-
- **clientId**:
|
|
620
|
-
- _Tür_: `string` | `undefined`
|
|
621
|
-
- _Varsayılan_: `undefined`
|
|
622
|
-
- _Açıklama_: clientId ve clientSecret, intlayer paketlerinin backend ile oAuth2 kimlik doğrulaması kullanarak kimlik doğrulaması yapmasını sağlar. Bir erişim belirteci, projeyle ilişkili kullanıcıyı doğrulamak için kullanılır. Bir erişim belirteci almak için https://app.intlayer.org/project adresine gidip bir hesap oluşturun.
|
|
623
|
-
- _Örnek_: `true`
|
|
624
|
-
- _Not_: Önemli: clientId ve clientSecret gizli tutulmalı ve kamuya açık şekilde paylaşılmamalıdır. Lütfen bunları ortam değişkenleri gibi güvenli bir yerde sakladığınızdan emin olun.
|
|
625
|
-
|
|
626
|
-
- **clientSecret**:
|
|
627
|
-
- _Tür_: `string` | `undefined`
|
|
628
|
-
- _Varsayılan_: `undefined`
|
|
629
|
-
- _Açıklama_: clientId ve clientSecret, intlayer paketlerinin backend ile oAuth2 kimlik doğrulaması kullanarak doğrulanmasını sağlar. Bir erişim belirteci, projeyle ilişkili kullanıcıyı doğrulamak için kullanılır. Bir erişim belirteci almak için https://app.intlayer.org/project adresine gidip bir hesap oluşturun.
|
|
630
|
-
- _Örnek_: `true`
|
|
631
|
-
- _Not_: Önemli: clientId ve clientSecret gizli tutulmalı ve kamuya açık şekilde paylaşılmamalıdır. Lütfen bunları ortam değişkenleri gibi güvenli bir yerde sakladığınızdan emin olun.
|
|
632
|
-
|
|
633
|
-
- **dictionaryPriorityStrategy**:
|
|
634
|
-
- _Tür_: `string`
|
|
635
|
-
- _Varsayılan_: `'local_first'`
|
|
636
|
-
- _Açıklama_: Hem yerel hem de uzak sözlüklerin mevcut olduğu durumlarda sözlüklerin önceliklendirilme stratejisi. `'distant_first'` olarak ayarlanırsa, uygulama uzak sözlüklere yerel sözlüklerden daha fazla öncelik verir. `'local_first'` olarak ayarlanırsa, uygulama yerel sözlüklere uzak sözlüklerden daha fazla öncelik verir.
|
|
637
|
-
- _Örnek_: `'distant_first'`
|
|
638
|
-
|
|
639
|
-
- **liveSync**:
|
|
640
|
-
- _Tür_: `boolean`
|
|
641
|
-
- _Varsayılan_: `false`
|
|
642
|
-
- _Açıklama_: CMS / Görsel Editör / Backend üzerinde bir değişiklik algılandığında uygulama sunucusunun içeriği sıcak yeniden yükleyip yüklemeyeceğini belirtir.
|
|
643
|
-
- _Örnek_: `true`
|
|
644
|
-
- _Not_: Örneğin, yeni bir sözlük eklendiğinde veya güncellendiğinde, uygulama sayfada görüntülenecek içeriği günceller.
|
|
645
|
-
- _Not_: Canlı senkronizasyon, uygulamanın içeriğini başka bir sunucuya dışa aktarmayı gerektirir. Bu, uygulamanın performansını biraz etkileyebilir. Bunu sınırlamak için, uygulamanın ve canlı senkronizasyon sunucusunun aynı makinede barındırılmasını öneriyoruz. Ayrıca, canlı senkronizasyon ile `optimize` kombinasyonu, canlı senkronizasyon sunucusuna önemli sayıda istek gönderebilir. Altyapınıza bağlı olarak, her iki seçeneği ve kombinasyonlarını test etmenizi öneririz.
|
|
646
|
-
|
|
647
|
-
- **liveSyncPort**:
|
|
648
|
-
- _Tür_: `number`
|
|
649
|
-
- _Varsayılan_: `4000`
|
|
650
|
-
- _Açıklama_: Canlı senkronizasyon sunucusunun portu.
|
|
651
|
-
- _Örnek_: `4000`
|
|
652
|
-
- _Not_: Canlı senkronizasyon sunucusunun portu.
|
|
653
|
-
|
|
654
|
-
- **liveSyncURL**:
|
|
655
|
-
- _Tür_: `string`
|
|
656
|
-
- _Varsayılan_: `'http://localhost:{liveSyncPort}'`
|
|
657
|
-
- _Açıklama_: Canlı senkronizasyon sunucusunun URL'si.
|
|
658
|
-
- _Örnek_: `'https://example.com'`
|
|
659
|
-
- _Not_: Varsayılan olarak localhost'a işaret eder ancak uzak bir canlı senkronizasyon sunucusu durumunda herhangi bir URL'ye değiştirilebilir.
|
|
660
|
-
|
|
661
|
-
### Ara Katman (Middleware) Yapılandırması
|
|
662
|
-
|
|
663
|
-
Uygulamanın çerezleri, başlıkları ve yerel yönetimi için URL öneklerini nasıl yönettiğini kontrol eden ayarlar.
|
|
664
|
-
|
|
665
|
-
#### Özellikler
|
|
666
|
-
|
|
667
|
-
- **headerName**:
|
|
668
|
-
- _Tür_: `string`
|
|
669
|
-
- _Varsayılan_: `'x-intlayer-locale'`
|
|
670
|
-
- _Açıklama_: Yerel ayarı belirlemek için kullanılan HTTP başlığının adı.
|
|
671
|
-
- _Örnek_: `'x-custom-locale'`
|
|
672
|
-
- _Not_: API tabanlı yerel belirleme için faydalıdır.
|
|
673
|
-
|
|
674
|
-
- **cookieName**:
|
|
675
|
-
- _Tür_: `string`
|
|
676
|
-
- _Varsayılan_: `'intlayer-locale'`
|
|
677
|
-
- _Açıklama_: Yerel ayarı saklamak için kullanılan çerezin adı.
|
|
678
|
-
- _Örnek_: `'custom-locale'`
|
|
679
|
-
- _Not_: Oturumlar arasında yerel ayarın korunması için kullanılır.
|
|
680
|
-
|
|
681
|
-
- **prefixDefault**:
|
|
682
|
-
- _Tür_: `boolean`
|
|
683
|
-
- _Varsayılan_: `false`
|
|
684
|
-
- _Açıklama_: Varsayılan yerel ayarın URL'de dahil edilip edilmeyeceği.
|
|
685
|
-
- _Örnek_: `true`
|
|
686
|
-
- _Not_:
|
|
687
|
-
- Eğer `true` ve `defaultLocale = 'en'` ise: yol = `/en/dashboard` veya `/fr/dashboard`
|
|
688
|
-
- Eğer `false` ve `defaultLocale = 'en'` ise: yol = `/dashboard` veya `/fr/dashboard`
|
|
689
|
-
|
|
690
|
-
- **basePath**:
|
|
691
|
-
- _Tür_: `string`
|
|
692
|
-
- _Varsayılan_: `''`
|
|
693
|
-
- _Açıklama_: Uygulama URL'leri için temel yol.
|
|
694
|
-
- _Örnek_: `'/my-app'`
|
|
695
|
-
- _Not_:
|
|
696
|
-
- Uygulama `https://example.com/my-app` adresinde barındırılıyorsa
|
|
697
|
-
- Temel yol `'/my-app'` olur
|
|
698
|
-
- URL `https://example.com/my-app/en` olacaktır
|
|
699
|
-
- Eğer base path ayarlanmazsa, URL `https://example.com/en` olacaktır.
|
|
700
|
-
|
|
701
|
-
- **rewrite**:
|
|
702
|
-
- _Tür_: `Record<string, StrictModeLocaleMap<string>>`
|
|
703
|
-
- _Varsayılan_: `undefined`
|
|
704
|
-
- _Açıklama_: Belirli yollar için varsayılan yönlendirme modunu geçersiz kılan özel URL yeniden yazma kuralları. Standart yönlendirme davranışından farklı dil-spesifik yollar tanımlamanıza olanak tanır. `[param]` sözdizimini kullanarak dinamik rota parametrelerini destekler.
|
|
705
|
-
- _Örnek_:
|
|
706
|
-
```typescript
|
|
707
|
-
routing: {
|
|
708
|
-
mode: "prefix-no-default", // Yedek strateji
|
|
709
|
-
rewrite: nextjsRewrite({
|
|
710
|
-
"/[locale]/about": {
|
|
711
|
-
en: "/[locale]/about",
|
|
712
|
-
fr: "/[locale]/a-propos",
|
|
713
|
-
},
|
|
714
|
-
"/[locale]/product/[slug]": {
|
|
715
|
-
en: "/[locale]/product/[slug]",
|
|
716
|
-
fr: "/[locale]/produit/[slug]",
|
|
717
|
-
},
|
|
718
|
-
"/[locale]/blog/[category]/[id]": {
|
|
719
|
-
en: "/[locale]/blog/[category]/[id]",
|
|
720
|
-
fr: "/[locale]/journal/[category]/[id]",
|
|
721
|
-
},
|
|
722
|
-
}),
|
|
723
|
-
}
|
|
724
|
-
```
|
|
725
|
-
- _Not_: Yeniden yazma kuralları varsayılan `mode` davranışından önceliklidir. Bir yol bir yeniden yazma kuralıyla eşleşirse, standart dil öneki yerine yeniden yazma yapılandırmasından yerelleştirilmiş yol kullanılacaktır.
|
|
726
|
-
- _Not_: Dinamik rota parametreleri köşeli ayraç gösterimi (örneğin, `[slug]`, `[id]`) kullanılarak desteklenir. Parametre değerleri URL'den otomatik olarak çıkarılır ve yeniden yazılan yola eklenir.
|
|
727
|
-
- _Not_: Next.js ve Vite uygulamalarıyla çalışır. Middleware/proxy, gelen istekleri iç rota yapısıyla eşleşecek şekilde otomatik olarak yeniden yazacaktır.
|
|
728
|
-
- _Not_: `getLocalizedUrl()` ile URL oluştururken, sağlanan yolla eşleşirlerse yeniden yazma kuralları otomatik olarak uygulanır.
|
|
729
|
-
- _Referans_: Daha fazla bilgi için, [Özel URL Yeniden Yazma](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/custom_url_rewrites.md) konusuna bakın.
|
|
730
|
-
|
|
731
|
-
- **serverSetCookie**:
|
|
732
|
-
- _Tür_: `string`
|
|
733
|
-
- _Varsayılan_: `'always'`
|
|
734
|
-
- _Açıklama_: Sunucuda locale çerezinin ayarlanma kuralı.
|
|
735
|
-
- _Seçenekler_: `'always'`, `'never'`
|
|
736
|
-
- _Örnek_: `'never'`
|
|
737
|
-
- _Not_: Locale çerezinin her istekte mi yoksa hiç mi ayarlanacağını kontrol eder.
|
|
738
|
-
|
|
739
|
-
- **noPrefix**:
|
|
740
|
-
- _Tür_: `boolean`
|
|
741
|
-
- _Varsayılan_: `false`
|
|
742
|
-
- _Açıklama_: URL'lerden locale önekinin çıkarılıp çıkarılmayacağı.
|
|
743
|
-
- _Örnek_: `true`
|
|
744
|
-
- _Not_:
|
|
745
|
-
- Eğer `true` ise: URL'de önek olmaz
|
|
746
|
-
- Eğer `false` ise: URL'de önek olur
|
|
747
|
-
- `basePath = '/my-app'` örneği:
|
|
748
|
-
- Eğer `noPrefix = false` ise: URL `https://example.com/my-app/en` olur
|
|
749
|
-
- Eğer `noPrefix = true` ise: URL `https://example.com` olur
|
|
809
|
+
### Sözlük Yapılandırması (Dictionary Configuration)
|
|
810
|
+
|
|
811
|
+
Otomatik doldurma davranışı ve içerik oluşturma dahil olmak üzere sözlük işlemlerini kontrol eden ayarlar.
|
|
812
|
+
|
|
813
|
+
Bu sözlük yapılandırmasının iki ana amacı vardır:
|
|
814
|
+
|
|
815
|
+
1. **Varsayılan değerler**: İçerik bildirim dosyaları oluştururken varsayılan değerleri tanımlamak.
|
|
816
|
+
2. **Geri dönüş davranışı**: Belirli alanlar tanımlanmadığında geri dönüş değerleri sağlayarak sözlük işlemlerinin davranışını küresel olarak ayarlamanıza olanak tanır.
|
|
817
|
+
|
|
818
|
+
İçerik bildirim dosyaları ve yapılandırma değerlerinin nasıl uygulandığı hakkında daha fazla bilgi için [içerik dosyası belgelerine](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/dictionary/content_file.md) bakın.
|
|
819
|
+
|
|
820
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
821
|
+
| --------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
822
|
+
| `fill` | `boolean | FilePathPattern | Partial<Record<Locale, boolean | FilePathPattern>>` | Otomatik doldurma (AI çevirisi) çıktı dosyalarının nasıl oluşturulduğunu kontrol eder. Varsayılan: `true` | Aşağıdaki örneğe bakın | `true`: Varsayılan yol (kaynakla aynı dosya). `false`: Devre dışı. Dize/fonksiyon şablonları dil başına dosyalar oluşturur. Dil başına nesne: her dil kendi desenine eşlenir; `false` o dili atlar. `{{locale}}` değişkeninin dahil edilmesi dil başına oluşturmayı tetikler. Sözlük düzeyindeki `fill` her zaman bu küresel yapılandırmadan önceliklidir. |
|
|
823
|
+
| `importMode` | `'static' | 'dynamic' | 'fetch'` | Sözlüklerin nasıl içe aktarıldığını kontrol eder. Varsayılan: `'static'` | `'dynamic'` | `'static'`: Statik olarak içe aktarılır. `'dynamic'`: Suspense aracılığıyla dinamik olarak içe aktarılır. `'fetch'`: Live Sync API aracılığıyla dinamik olarak çekilir. `getIntlayer`, `getDictionary`, `useDictionary` vb. etkilemez. |
|
|
824
|
+
| `location` | `'local' | 'remote' | 'hybrid' | string` | Sözlüklerin nerede saklandığı. Varsayılan: `'local'` | `'remote'` | `'local'`: dosya sistemi. `'remote'`: Intlayer CMS. `'hybrid'`: her ikisi de. |
|
|
825
|
+
| `contentAutoTransformation` | `boolean` | İçerik dosyalarının otomatik olarak dönüştürülüp dönüştürülmeyeceği (ör. Markdown'dan HTML'e). Varsayılan: `false` | `true` | @intlayer/markdown aracılığıyla Markdown alanlarını işlemek için yararlıdır. |
|
|
826
|
+
|
|
827
|
+
**`fill` örneği**:
|
|
828
|
+
|
|
829
|
+
```ts
|
|
830
|
+
dictionary: {
|
|
831
|
+
fill: {
|
|
832
|
+
en: '/locales/en/{{key}}.content.json',
|
|
833
|
+
fr: ({ key }) => `/locales/fr/${key}.content.json`,
|
|
834
|
+
es: false,
|
|
835
|
+
}
|
|
836
|
+
}
|
|
837
|
+
```
|
|
750
838
|
|
|
751
839
|
---
|
|
752
840
|
|
|
753
|
-
###
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
- _Örnek_: `{ fr: './{{fileName}}.fr.content.json', es: './{{fileName}}.es.content.json' }`
|
|
766
|
-
- _Not_: Otomatik doldurma yapılandırması. Şunlar olabilir:
|
|
767
|
-
- boolean: Tüm yereller için otomatik doldurmayı etkinleştirir
|
|
768
|
-
- string: Değişkenler içeren tek bir dosya yolu veya şablon
|
|
769
|
-
- object: Yerel bazında dosya yolları
|
|
770
|
-
|
|
771
|
-
- **watch**:
|
|
772
|
-
- _Tür_: `boolean`
|
|
773
|
-
- _Varsayılan_: `process.env.NODE_ENV === 'development'`
|
|
774
|
-
- _Açıklama_: Intlayer'ın uygulamadaki içerik beyan dosyalarındaki değişiklikleri izleyip ilgili sözlükleri yeniden oluşturup oluşturmayacağını belirtir.
|
|
775
|
-
|
|
776
|
-
- **fileExtensions**:
|
|
777
|
-
- _Tür_: `string[]`
|
|
778
|
-
- _Varsayılan_: `['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.tsx', '.content.jsx']`
|
|
779
|
-
- _Açıklama_: Sözlükler oluşturulurken aranacak dosya uzantıları.
|
|
780
|
-
- _Örnek_: `['.data.ts', '.data.js', '.data.json']`
|
|
781
|
-
- _Not_: Dosya uzantılarının özelleştirilmesi çakışmaları önlemeye yardımcı olabilir.
|
|
782
|
-
|
|
783
|
-
- **dictionaryOutput**:
|
|
784
|
-
- _Tür_: `string[]`
|
|
785
|
-
- _Varsayılan_: `['intlayer']`
|
|
786
|
-
- _Açıklama_: Kullanılacak sözlük çıktısı türü, örn. `'intlayer'` veya `'i18next'`.
|
|
787
|
-
|
|
788
|
-
- **contentDir**:
|
|
789
|
-
- _Tür_: `string[]`
|
|
790
|
-
- _Varsayılan_: `['.']`
|
|
791
|
-
- _Örnek_: `['src', '../../ui-library', require.resolve("@my-package/content")]`
|
|
792
|
-
- _Açıklama_: İçerik tanım dosyalarının (`.content.*`) depolandığı dizin yolu.
|
|
793
|
-
- _Not_: Bu, sözlükleri yeniden oluşturmak için içerik dosyalarını izlemek için kullanılır.
|
|
794
|
-
|
|
795
|
-
- **codeDir**:
|
|
796
|
-
- _Tür_: `string[]`
|
|
797
|
-
- _Varsayılan_: `['.']`
|
|
798
|
-
- _Örnek_: `['src', '../../ui-library']`
|
|
799
|
-
- _Açıklama_: Kodun depolandığı dizin yolu, temel dizine göre.
|
|
800
|
-
- _Not_: Bu, kod dosyalarını dönüştürmek (budama, optimizasyon) için izlemek için kullanılır. Bunu `contentDir`'den ayrı tutmak, içerik dosyalarının gereksiz taramalarından kaçınarak derleme performansını artırabilir.
|
|
841
|
+
### Yapay Zeka Yapılandırması (AI Configuration)
|
|
842
|
+
|
|
843
|
+
Derleme çevirisi gibi Intlayer'ın yapay zeka destekli özellikleri için ayarları tanımlar.
|
|
844
|
+
|
|
845
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
846
|
+
| -------------------- | ---------------------- | ------------------------------------------------------------------------------- | ------------------------------------------- | -------------------------------------------------------------------------------------------------- |
|
|
847
|
+
| `provider` | `string` | Kullanılacak yapay zeka sağlayıcısı. | `'openai'`, `'anthropic'`, `'googlevertex'` | |
|
|
848
|
+
| `model` | `string` | Kullanılacak yapay zeka modeli. | `'gpt-4o'`, `'claude-3-5-sonnet-20240620'` | |
|
|
849
|
+
| `apiKey` | `string` | Seçilen sağlayıcı için API anahtarı. | `process.env.OPENAI_API_KEY` | |
|
|
850
|
+
| `applicationContext` | `string` | Yapay zeka çeviri doğruluğunu iyileştirmek için uygulamanız hakkında ek bağlam. | `'Çocuklar için bir çalışma platformu.'` | |
|
|
851
|
+
| `baseURL` | `string` | API çağrıları için isteğe bağlı temel yol URL'si. | | Bir proxy veya yerel yapay zeka dağıtımı kullanıyorsanız yararlıdır. |
|
|
852
|
+
| `dataSerialization` | `'json' | 'toon'` | Yapay zekaya verilerin nasıl gönderileceğini tanımlar. Varsayılan: `'json'` | `'json'` | `'json'`: daha sağlam ve kesin. `'toon'`: daha az belirteç tüketir ancak daha az kararlı olabilir. |
|
|
801
853
|
|
|
802
854
|
---
|
|
803
855
|
|
|
804
|
-
###
|
|
805
|
-
|
|
806
|
-
Intlayer
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
- _Örnek_: `'/path/to/project'`
|
|
815
|
-
- _Not_: Tüm Intlayer ile ilgili dizinlerin çözülmesinde kullanılır.
|
|
816
|
-
|
|
817
|
-
- **dictionariesDir**:
|
|
818
|
-
- _Tür_: `string`
|
|
819
|
-
- _Varsayılan_: `'.intlayer/dictionary'`
|
|
820
|
-
- _Açıklama_: Yerelleştirme sözlüklerinin saklandığı dizin.
|
|
821
|
-
- _Örnek_: `'translations'`
|
|
822
|
-
|
|
823
|
-
- **moduleAugmentationDir**:
|
|
824
|
-
- _Tür_: `string`
|
|
825
|
-
- _Varsayılan_: `'.intlayer/types'`
|
|
826
|
-
- _Açıklama_: Modül genişletme için dizin, daha iyi IDE önerileri ve tip kontrolü sağlar.
|
|
827
|
-
- _Örnek_: `'intlayer-types'`
|
|
828
|
-
- _Not_: Bunu `tsconfig.json` dosyanıza eklediğinizden emin olun.
|
|
829
|
-
|
|
830
|
-
- **unmergedDictionariesDir**:
|
|
831
|
-
- _Tür_: `string`
|
|
832
|
-
- _Varsayılan_: `'.intlayer/unmerged_dictionary'`
|
|
833
|
-
- _Açıklama_: Birleştirilmemiş sözlüklerin depolanacağı dizin.
|
|
834
|
-
- _Örnek_: `'translations'`
|
|
835
|
-
|
|
836
|
-
- **typesDir**:
|
|
837
|
-
- _Tür_: `string`
|
|
838
|
-
- _Varsayılan_: `'types'`
|
|
839
|
-
- _Açıklama_: Sözlük türlerinin saklandığı dizin.
|
|
840
|
-
- _Örnek_: `'intlayer-types'`
|
|
841
|
-
|
|
842
|
-
- **mainDir**:
|
|
843
|
-
- _Tür_: `string`
|
|
844
|
-
- _Varsayılan_: `'main'`
|
|
845
|
-
- _Açıklama_: Ana uygulama dosyalarının saklandığı dizin.
|
|
846
|
-
- _Örnek_: `'intlayer-main'`
|
|
847
|
-
|
|
848
|
-
- **excludedPath**:
|
|
849
|
-
- _Tür_: `string[]`
|
|
850
|
-
- _Varsayılan_: `['node_modules']`
|
|
851
|
-
- _Açıklama_: İçerik aramasından hariç tutulan dizinler.
|
|
852
|
-
- _Not_: Bu ayar henüz kullanılmamaktadır, ancak gelecekte uygulanması planlanmaktadır.
|
|
853
|
-
|
|
854
|
-
### Sözlük Yapılandırması
|
|
855
|
-
|
|
856
|
-
Sözlük işlemlerini kontrol eden ayarlar, otomatik doldurma davranışı ve içerik oluşturma dahil.
|
|
857
|
-
|
|
858
|
-
Bu sözlük yapılandırması iki ana amaç için hizmet eder:
|
|
859
|
-
|
|
860
|
-
1. **Varsayılan Değerler**: İçerik bildirimi dosyaları oluştururken varsayılan değerleri tanımlayın
|
|
861
|
-
2. **Yedek Davranış**: Belirli alanlar tanımlanmadığında yedek değerler sağlayın, böylece sözlük işlem davranışını genel olarak tanımlayabilirsiniz
|
|
862
|
-
|
|
863
|
-
İçerik bildirimi dosyaları ve yapılandırma değerlerinin nasıl uygulandığı hakkında daha fazla bilgi için, [İçerik Dosyası Dokümantasyonu](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/dictionary/content_file.md) bölümüne bakın.
|
|
864
|
-
|
|
865
|
-
#### Özellikler
|
|
866
|
-
|
|
867
|
-
- **fill**
|
|
868
|
-
- **description**
|
|
869
|
-
- **locale**
|
|
870
|
-
- **location**
|
|
871
|
-
- **importMode**:
|
|
872
|
-
- _Not_: **Deprecated**: Use `dictionary.importMode` instead.
|
|
873
|
-
- _Tip_: `'static' | 'dynamic' | 'fetch'`
|
|
874
|
-
- _Varsayılan_: `'static'`
|
|
875
|
-
- _Açıklama_: Controls how dictionaries are imported.
|
|
876
|
-
- _Örnek_: `'dynamic'`
|
|
877
|
-
- **priority**
|
|
878
|
-
- **live**
|
|
879
|
-
- **schema**
|
|
880
|
-
- **title**
|
|
881
|
-
- **tags**
|
|
882
|
-
- **version**
|
|
856
|
+
### Derleme Yapılandırması (Build Configuration)
|
|
857
|
+
|
|
858
|
+
Intlayer derleme süreci ve optimizasyon ayarları.
|
|
859
|
+
|
|
860
|
+
| Alan | Tür | Açıklama | Örnek | Not |
|
|
861
|
+
| -------------- | ------------------------ | ---------------------------------------------------------------------------------------------------------------------------- | ----- | --- |
|
|
862
|
+
| `mode` | `'auto' | 'manual'` | Uygulamanın ön derleme adımları sırasında Intlayer'ın otomatik olarak çalışıp çalışmayacağını belirtir. Varsayılan: `'auto'` | | |
|
|
863
|
+
| `optimize` | `boolean` | Derlenmiş sözlüklerin çalışma zamanı için optimize edilip edilmeyeceğini belirtir. Varsayılan: Üretim ortamında `true` | | |
|
|
864
|
+
| `outputFormat` | `('cjs' | 'esm')[]` | Oluşturulan sözlük dosyaları için çıktı formatı. Varsayılan: `['cjs', 'esm']` | | |
|
|
865
|
+
| `checkTypes` | `boolean` | Intlayer'ın oluşturulan dosyalardaki türleri kontrol edip etmeyeceğini belirtir. Varsayılan: `false` | | |
|
|
883
866
|
|
|
884
867
|
---
|
|
885
868
|
|
|
886
|
-
###
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
- **prefix**:
|
|
901
|
-
- _Tür_: `string`
|
|
902
|
-
- _Varsayılan_: `'[intlayer] '`
|
|
903
|
-
- _Açıklama_: Logger'ın öneki.
|
|
904
|
-
- _Örnek_: `'[my custom prefix] '`
|
|
905
|
-
- _Not_: Günlüğün ön eki.
|
|
906
|
-
|
|
907
|
-
### AI Yapılandırması
|
|
908
|
-
|
|
909
|
-
Intlayer'ın AI özelliklerini kontrol eden ayarlar, sağlayıcı, model ve API anahtarı dahil.
|
|
910
|
-
|
|
911
|
-
Bu yapılandırma, bir erişim anahtarı kullanarak [Intlayer Kontrol Paneli](https://app.intlayer.org/project) üzerinden kayıtlıysanız isteğe bağlıdır. Intlayer, ihtiyaçlarınız için en verimli ve maliyet-etkin AI çözümünü otomatik olarak yönetecektir. Varsayılan seçenekleri kullanmak, Intlayer'ın en uygun modelleri kullanmak için sürekli güncellenmesi nedeniyle uzun vadeli bakım kolaylığı sağlar.
|
|
912
|
-
|
|
913
|
-
Kendi API anahtarınızı veya belirli bir modeli kullanmayı tercih ediyorsanız, özel AI yapılandırmanızı tanımlayabilirsiniz.
|
|
914
|
-
Bu AI yapılandırması, Intlayer ortamınız genelinde kullanılacaktır. CLI komutları, bu ayarları komutlar için varsayılan olarak kullanacaktır (örneğin `fill`), ayrıca SDK, Görsel Editör ve CMS de bu ayarları kullanır. Belirli kullanım durumları için bu varsayılan değerleri komut parametreleriyle geçersiz kılabilirsiniz.
|
|
915
|
-
|
|
916
|
-
Intlayer, artırılmış esneklik ve seçenek için birden fazla AI sağlayıcısını destekler. Şu anda desteklenen sağlayıcılar şunlardır:
|
|
917
|
-
|
|
918
|
-
- **OpenAI** (varsayılan)
|
|
919
|
-
- **Anthropic Claude**
|
|
920
|
-
- **Mistral AI**
|
|
921
|
-
- **DeepSeek**
|
|
922
|
-
- **Google Gemini**
|
|
923
|
-
- **Meta Llama**
|
|
924
|
-
- **Ollama**
|
|
925
|
-
- **OpenRouter**
|
|
926
|
-
- **Alibaba Cloud**
|
|
927
|
-
- **Fireworks**
|
|
928
|
-
- **Hugging Face**
|
|
929
|
-
- **Groq**
|
|
930
|
-
- **Amazon Bedrock**
|
|
931
|
-
- **Google AI Studio**
|
|
932
|
-
- **Google Vertex**
|
|
933
|
-
- **Together.ai**
|
|
934
|
-
- **ollama**
|
|
935
|
-
|
|
936
|
-
#### Özellikler
|
|
937
|
-
|
|
938
|
-
- **provider**:
|
|
939
|
-
- _Tür_: `string`
|
|
940
|
-
- _Varsayılan_: `'openai'`
|
|
941
|
-
- _Açıklama_: Intlayer'ın AI özellikleri için kullanılacak sağlayıcı.
|
|
942
|
-
- _Seçenekler_: `'openai'`, `'anthropic'`, `'mistral'`, `'deepseek'`, `'gemini'`, `'ollama'`, `'openrouter'`, `'alibaba'`, `'fireworks'`, `'groq'`, `'huggingface'`, `'bedrock'`, `'googleaistudio'`, `'googlevertex'`, `'togetherai'`
|
|
943
|
-
- _Örnek_: `'anthropic'`
|
|
944
|
-
- _Not_: Farklı sağlayıcılar farklı API anahtarları gerektirebilir ve farklı fiyatlandırma modellerine sahip olabilir.
|
|
945
|
-
|
|
946
|
-
- **model**:
|
|
947
|
-
- _Tür_: `string`
|
|
948
|
-
- _Varsayılan_: Yok
|
|
949
|
-
- _Açıklama_: Intlayer'ın yapay zeka özellikleri için kullanılacak model.
|
|
950
|
-
- _Örnek_: `'gpt-4o-2024-11-20'`
|
|
951
|
-
- _Not_: Kullanılacak spesifik model sağlayıcıya göre değişir.
|
|
952
|
-
|
|
953
|
-
- **temperature**:
|
|
954
|
-
- _Tür_: `number`
|
|
955
|
-
- _Varsayılan_: Yok
|
|
956
|
-
- _Açıklama_: Sıcaklık, yapay zekanın yanıtlarının rastgeleliğini kontrol eder.
|
|
957
|
-
- _Örnek_: `0.1`
|
|
958
|
-
- _Not_: Daha yüksek bir sıcaklık, yapay zekayı daha yaratıcı ve daha az tahmin edilebilir yapar.
|
|
959
|
-
|
|
960
|
-
- **apiKey**:
|
|
961
|
-
- _Tür_: `string`
|
|
962
|
-
- _Varsayılan_: Yok
|
|
963
|
-
- _Açıklama_: Seçilen sağlayıcı için API anahtarınız.
|
|
964
|
-
- _Not_: Önemli: API anahtarları gizli tutulmalı ve kamuya açık şekilde paylaşılmamalıdır. Lütfen bunları ortam değişkenleri gibi güvenli bir yerde sakladığınızdan emin olun.
|
|
965
|
-
|
|
966
|
-
- **applicationContext**:
|
|
967
|
-
- _Tür_: `string`
|
|
968
|
-
- _Varsayılan_: Yok
|
|
969
|
-
- _Açıklama_: AI modeline uygulamanız hakkında ek bağlam sağlar, böylece daha doğru ve bağlama uygun çeviriler oluşturmasına yardımcı olur. Bu, uygulamanızın alanı, hedef kitlesi, tonu veya belirli terminolojisi hakkında bilgiler içerebilir.
|
|
970
|
-
|
|
971
|
-
- **baseURL**:
|
|
972
|
-
- _Tür_: `string`
|
|
973
|
-
- _Varsayılan_: Yok
|
|
974
|
-
- _Açıklama_: AI API için temel URL.
|
|
975
|
-
- _Örnek_: `'https://api.openai.com/v1'`
|
|
976
|
-
- _Not_: Yerel veya özel bir AI API uç noktasını işaret etmek için kullanılabilir.
|
|
977
|
-
|
|
978
|
-
- **dataSerialization**:
|
|
979
|
-
- _Tür_: `'json' | 'toon'`
|
|
980
|
-
- _Varsayılan_: `'json'`
|
|
981
|
-
- _Açıklama_: Intlayer'ın AI özellikleri için kullanılacak veri serileştirme formatı.
|
|
982
|
-
- _Örnek_: `'toon'`
|
|
983
|
-
- _Not_: `json`: Standart, güvenilir; daha fazla jeton kullanır. `toon`: Daha az jeton, JSON'dan daha az tutarlı.
|
|
984
|
-
|
|
985
|
-
### Derleme Yapılandırması
|
|
986
|
-
|
|
987
|
-
Intlayer'ın uygulamanızın uluslararasılaştırmasını nasıl optimize edip derleyeceğini kontrol eden ayarlar.
|
|
988
|
-
|
|
989
|
-
Derleme seçenekleri `@intlayer/babel` ve `@intlayer/swc` eklentilerine uygulanır.
|
|
990
|
-
|
|
991
|
-
> Geliştirme modunda, Intlayer geliştirme deneyimini basitleştirmek için sözlüklerde statik importlar kullanır.
|
|
992
|
-
|
|
993
|
-
> Optimize edildiğinde, Intlayer chunking'i optimize etmek için sözlük çağrılarını değiştirir, böylece nihai paket yalnızca gerçekten kullanılan sözlükleri import eder.
|
|
994
|
-
|
|
995
|
-
#### Özellikler
|
|
996
|
-
|
|
997
|
-
- **mode**:
|
|
998
|
-
- _Tür_: `'auto' | 'manual'`
|
|
999
|
-
- _Varsayılan_: `'auto'`
|
|
1000
|
-
- _Açıklama_: Derleme modunu kontrol eder.
|
|
1001
|
-
- _Örnek_: `'manual'`
|
|
1002
|
-
- _Not_: 'auto' ise, uygulama derlendiğinde derleme otomatik olarak etkinleştirilir.
|
|
1003
|
-
- _Not_: 'manual' ise, derleme yalnızca derleme komutu çalıştırıldığında ayarlanır.
|
|
1004
|
-
- _Not_: Sözlük derlemesini devre dışı bırakmak için kullanılabilir, örneğin Node.js ortamında yürütmeden kaçınılması gerektiğinde.
|
|
1005
|
-
|
|
1006
|
-
- **checkTypes**:
|
|
1007
|
-
- _Tip_: `boolean`
|
|
1008
|
-
- _Varsayılan_: `false`
|
|
1009
|
-
- _Açıklama_: Derlemenin TypeScript türlerini kontrol edip etmeyeceğini ve hataları kaydedip kaydetmeyeceğini belirtir.
|
|
1010
|
-
- _Not_: Bu, derleme işlemini yavaşlatabilir.
|
|
1011
|
-
|
|
1012
|
-
- **optimize**:
|
|
1013
|
-
- _Tür_: `boolean`
|
|
1014
|
-
- _Varsayılan_: `process.env.NODE_ENV === 'production'`
|
|
1015
|
-
- _Açıklama_: Derlemenin optimize edilip edilmeyeceğini kontrol eder.
|
|
1016
|
-
- _Örnek_: `true`
|
|
1017
|
-
- _Not_: Etkinleştirildiğinde, Intlayer chunking'i optimize etmek için tüm sözlük çağrılarını değiştirir. Böylece nihai paket yalnızca kullanılan sözlükleri import eder. Tüm importlar, sözlüklerin yüklenmesi sırasında asenkron işlemi önlemek için statik import olarak kalır.
|
|
1018
|
-
- _Not_: Intlayer, `useIntlayer` çağrılarının tümünü `importMode` seçeneği ile tanımlanan moda ve `getIntlayer` çağrılarını `getDictionary` ile değiştirir.
|
|
1019
|
-
- _Not_: Bu seçenek `@intlayer/babel` ve `@intlayer/swc` eklentilerine dayanır.
|
|
1020
|
-
- _Not_: `useIntlayer` çağrılarında tüm anahtarların statik olarak tanımlandığından emin olun. Örneğin `useIntlayer('navbar')`.
|
|
1021
|
-
|
|
1022
|
-
- **outputFormat**:
|
|
1023
|
-
- _Tür_: `'esm' | 'cjs'`
|
|
1024
|
-
- _Varsayılan_: `'esm'`
|
|
1025
|
-
- _Açıklama_: Sözlüklerin çıktı biçimini kontrol eder.
|
|
1026
|
-
- _Örnek_: `'cjs'`
|
|
1027
|
-
- _Not_: Sözlüklerin çıktı biçimi.
|
|
1028
|
-
|
|
1029
|
-
- **traversePattern**:
|
|
1030
|
-
- _Tür_: `string[]`
|
|
1031
|
-
- _Varsayılan_: `['**\/*.{js,ts,mjs,cjs,jsx,tsx}', '!**\/node_modules/**']`
|
|
1032
|
-
- _Açıklama_: Optimizasyon sırasında hangi dosyaların taranacağını tanımlayan desenler.
|
|
1033
|
-
- _Örnek_: `['src/**\/*.{ts,tsx}', '../ui-library/**\/*.{ts,tsx}', '!**/node_modules/**']`
|
|
1034
|
-
- _Not_: Optimizasyonu ilgili kod dosyalarıyla sınırlamak ve derleme performansını artırmak için bunu kullanın.
|
|
1035
|
-
- _Not_: Bu seçenek `optimize` devre dışı bırakılırsa dikkate alınmaz.
|
|
1036
|
-
- _Not_: Glob deseni kullanın.
|
|
869
|
+
### Sistem Yapılandırması (System Configuration)
|
|
870
|
+
|
|
871
|
+
Bu ayarlar gelişmiş kullanım durumları ve Intlayer'ın dahili yapılandırması içindir.
|
|
872
|
+
|
|
873
|
+
| Alan | Tür | Açıklama | Varsayılan |
|
|
874
|
+
| ------------------------- | -------- | ---------------------------------------- | --------------------------------- |
|
|
875
|
+
| `dictionariesDir` | `string` | Derlenmiş sözlükler dizini. | `'.intlayer/dictionary'` |
|
|
876
|
+
| `moduleAugmentationDir` | `string` | TypeScript modül genişletme dizini. | `'.intlayer/types'` |
|
|
877
|
+
| `unmergedDictionariesDir` | `string` | Birleştirilmemiş sözlükler dizini. | `'.intlayer/unmerged_dictionary'` |
|
|
878
|
+
| `typesDir` | `string` | Oluşturulan türler dizini. | `'.intlayer/types'` |
|
|
879
|
+
| `mainDir` | `string` | Ana Intlayer dosyası dizini. | `'.intlayer/main'` |
|
|
880
|
+
| `configDir` | `string` | Derlenmiş yapılandırma dosyaları dizini. | `'.intlayer/config'` |
|
|
881
|
+
| `cacheDir` | `string` | Önbellek dosyaları dizini. | `'.intlayer/cache'` |
|
|
1037
882
|
|
|
1038
883
|
---
|
|
1039
884
|
|
|
1040
|
-
### Derleyici Yapılandırması
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
- **output**:
|
|
1080
|
-
- _Tür_: `FilePathPattern`
|
|
1081
|
-
- _Varsayılan_: `undefined`
|
|
1082
|
-
- _Açıklama_: Çıktı dosyalarının yolunu tanımlar. `outputDir` yerine geçer. Şablon dizeleri veya bir fonksiyon aracılığıyla dinamik değişkenleri işler. Desteklenen değişkenler: `{{fileName}}`, `{{key}}`, `{{locale}}`, `{{extension}}`, `{{componentFileName}}`, `{{componentExtension}}`, `{{format}}`, `{{componentFormat}}` ve `{{componentDirPath}}`.
|
|
1083
|
-
- _Not_: `./` ile başlayan yollar bileşen dizinine göre çözümlenir. `/` ile başlayan yollar projenin kök dizinine (`baseDir`) göre çözümlenir.
|
|
1084
|
-
- _Not_: Yola `{{locale}}` değişkenini dahil etmek, dile göre ayrılmış sözlüklerin oluşturulmasını etkinleştirir.
|
|
1085
|
-
- _Örnek_:
|
|
1086
|
-
- **Bileşenin yanında çok dilli dosyalar oluşturun**:
|
|
1087
|
-
- Dize: `'./{{fileName}}{{extension}}'`
|
|
1088
|
-
- Fonksiyon: `({ fileName, extension }) => \`./${fileName}${extension}\``
|
|
1089
|
-
|
|
1090
|
-
- **Dil başına merkezi JSON dosyaları çıktılayın**:
|
|
1091
|
-
- Dize: `'/locales/{{locale}}/{{key}}.content.json'`
|
|
1092
|
-
- Fonksiyon: `({ key, locale }) => \`/locales/${locale}/${key}.content.json\``
|
|
1093
|
-
|
|
1094
|
-
- **noMetadata**:
|
|
1095
|
-
- _Tür_: `boolean`
|
|
1096
|
-
- _Varsayılan_: `false`
|
|
1097
|
-
- _Açıklama_: Meta verilerin dosyaya kaydedilip kaydedilmeyeceğini belirtir. Doğruysa, derleyici sözlüklerin meta verilerini (anahtar, içerik sarmalayıcı) kaydetmez. Dil başına i18next veya ICU MessageFormat JSON çıktıları için kullanışlıdır.
|
|
1098
|
-
- _Not_: `loadJSON` eklentisi ile kullanıldığında kullanışlıdır.
|
|
1099
|
-
- _Örnek_:
|
|
1100
|
-
Eğer `true` ise :
|
|
1101
|
-
```json
|
|
1102
|
-
{
|
|
1103
|
-
"key": "value"
|
|
1104
|
-
}
|
|
1105
|
-
```
|
|
1106
|
-
Eğer `false` ise :
|
|
1107
|
-
```json
|
|
1108
|
-
{
|
|
1109
|
-
"key": "value",
|
|
1110
|
-
"content": {
|
|
1111
|
-
"key": "value"
|
|
1112
|
-
}
|
|
1113
|
-
}
|
|
1114
|
-
```
|
|
885
|
+
### Derleyici Yapılandırması (Compiler Configuration)
|
|
886
|
+
|
|
887
|
+
Intlayer derleyicisi (`intlayer compiler`) için ayarlar.
|
|
888
|
+
|
|
889
|
+
| Alan | Tür | Açıklama | Varsayılan |
|
|
890
|
+
| --------------------- | ------------------------ | ----------------------------------------------------------------------------------------------- | ---------- |
|
|
891
|
+
| `enabled` | `boolean` | Derleyicinin aktif olup olmadığını belirtir. | `false` |
|
|
892
|
+
| `output` | `string | Function` | Ayıklanan sözlükler için çıktı yolu. | |
|
|
893
|
+
| `saveComponents` | `boolean` | Orijinal kaynak dosyaların dönüştürülmüş sürümlerle değiştirilip değiştirilmeyeceğini belirtir. | `false` |
|
|
894
|
+
| `noMetadata` | `boolean` | `true` ise, derleyici oluşturulan dosyalara meta verileri dahil etmez. | `false` |
|
|
895
|
+
| `dictionaryKeyPrefix` | `string` | İsteğe bağlı sözlük anahtarı ön eki. | `''` |
|
|
896
|
+
|
|
897
|
+
---
|
|
898
|
+
|
|
899
|
+
### Günlükçü Yapılandırması (Logger Configuration)
|
|
900
|
+
|
|
901
|
+
Intlayer günlük çıktısını özelleştirmek için ayarlar.
|
|
902
|
+
|
|
903
|
+
| Alan | Tür | Açıklama | Varsayılan |
|
|
904
|
+
| -------- | ---------------------------------------------- | --------------------- | -------------- |
|
|
905
|
+
| `mode` | `'default' | 'verbose' | 'disabled'` | Günlükleme modu. | `'default'` |
|
|
906
|
+
| `prefix` | `string` | Günlük mesajı ön eki. | `'[intlayer]'` |
|
|
907
|
+
|
|
908
|
+
---
|
|
909
|
+
|
|
910
|
+
### Özel Şemalar (Custom Schemas)
|
|
911
|
+
|
|
912
|
+
| Alan | Tür | Açıklama |
|
|
913
|
+
| --------- | --------------------------- | --------------------------------------------------------------------------------- |
|
|
914
|
+
| `schemas` | `Record<string, ZodSchema>` | Sözlüklerinizin yapısını doğrulamak için Zod şemaları tanımlamanıza olanak tanır. |
|
|
915
|
+
|
|
916
|
+
---
|
|
917
|
+
|
|
918
|
+
### Eklentiler (Plugins)
|
|
919
|
+
|
|
920
|
+
| Alan | Tür | Açıklama |
|
|
921
|
+
| --------- | ------------------ | -------------------------------------------------- |
|
|
922
|
+
| `plugins` | `IntlayerPlugin[]` | Etkinleştirilecek Intlayer eklentilerinin listesi. |
|