@intlayer/docs 7.5.11 → 7.5.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/intlayer_with_i18next.md +0 -2
- package/blog/ar/intlayer_with_next-i18next.md +0 -2
- package/blog/ar/intlayer_with_react-i18next.md +0 -2
- package/blog/de/intlayer_with_i18next.md +0 -45
- package/blog/de/intlayer_with_next-i18next.md +0 -46
- package/blog/de/intlayer_with_react-i18next.md +0 -2
- package/blog/en/intlayer_with_i18next.md +0 -46
- package/blog/en/intlayer_with_next-i18next.md +0 -48
- package/blog/en/intlayer_with_next-intl.md +0 -44
- package/blog/en/intlayer_with_react-i18next.md +0 -44
- package/blog/en/intlayer_with_react-intl.md +0 -42
- package/blog/en/intlayer_with_vue-i18n.md +0 -44
- package/blog/en-GB/intlayer_with_i18next.md +0 -45
- package/blog/en-GB/intlayer_with_next-i18next.md +0 -47
- package/blog/en-GB/intlayer_with_next-intl.md +0 -42
- package/blog/en-GB/intlayer_with_react-i18next.md +0 -43
- package/blog/en-GB/intlayer_with_react-intl.md +0 -42
- package/blog/en-GB/intlayer_with_vue-i18n.md +0 -46
- package/blog/es/intlayer_with_i18next.md +0 -45
- package/blog/es/intlayer_with_next-i18next.md +0 -47
- package/blog/es/intlayer_with_next-intl.md +0 -42
- package/blog/es/intlayer_with_react-i18next.md +0 -43
- package/blog/es/intlayer_with_react-intl.md +0 -42
- package/blog/es/intlayer_with_vue-i18n.md +0 -46
- package/blog/fr/intlayer_with_i18next.md +0 -45
- package/blog/fr/intlayer_with_next-i18next.md +0 -47
- package/blog/fr/intlayer_with_next-intl.md +0 -42
- package/blog/fr/intlayer_with_react-i18next.md +0 -43
- package/blog/fr/intlayer_with_react-intl.md +0 -42
- package/blog/fr/intlayer_with_vue-i18n.md +0 -46
- package/blog/hi/intlayer_with_i18next.md +0 -2
- package/blog/hi/intlayer_with_next-i18next.md +0 -2
- package/blog/hi/intlayer_with_react-i18next.md +0 -2
- package/blog/id/intlayer_with_i18next.md +0 -2
- package/blog/id/intlayer_with_next-i18next.md +0 -2
- package/blog/id/intlayer_with_react-i18next.md +0 -2
- package/blog/it/intlayer_with_i18next.md +0 -2
- package/blog/it/intlayer_with_next-i18next.md +0 -2
- package/blog/it/intlayer_with_react-i18next.md +0 -2
- package/blog/ja/intlayer_with_i18next.md +0 -45
- package/blog/ja/intlayer_with_next-i18next.md +0 -46
- package/blog/ja/intlayer_with_next-intl.md +0 -42
- package/blog/ja/intlayer_with_react-i18next.md +0 -42
- package/blog/ja/intlayer_with_react-intl.md +0 -42
- package/blog/ja/intlayer_with_vue-i18n.md +0 -46
- package/blog/ko/intlayer_with_i18next.md +0 -2
- package/blog/ko/intlayer_with_next-i18next.md +0 -2
- package/blog/ko/intlayer_with_react-i18next.md +0 -1
- package/blog/pl/intlayer_with_i18next.md +0 -45
- package/blog/pl/intlayer_with_next-i18next.md +0 -46
- package/blog/pl/intlayer_with_next-intl.md +0 -42
- package/blog/pl/intlayer_with_react-i18next.md +0 -43
- package/blog/pl/intlayer_with_react-intl.md +0 -42
- package/blog/pl/intlayer_with_vue-i18n.md +0 -46
- package/blog/pt/intlayer_with_i18next.md +0 -2
- package/blog/pt/intlayer_with_next-i18next.md +0 -2
- package/blog/pt/intlayer_with_react-i18next.md +0 -2
- package/blog/ru/intlayer_with_i18next.md +0 -45
- package/blog/ru/intlayer_with_next-i18next.md +0 -47
- package/blog/ru/intlayer_with_next-intl.md +0 -42
- package/blog/ru/intlayer_with_react-i18next.md +0 -43
- package/blog/ru/intlayer_with_react-intl.md +0 -42
- package/blog/ru/intlayer_with_vue-i18n.md +0 -46
- package/blog/tr/intlayer_with_i18next.md +0 -2
- package/blog/tr/intlayer_with_next-i18next.md +0 -1
- package/blog/tr/intlayer_with_react-i18next.md +0 -2
- package/blog/vi/intlayer_with_i18next.md +0 -2
- package/blog/vi/intlayer_with_next-i18next.md +0 -2
- package/blog/vi/intlayer_with_react-i18next.md +0 -2
- package/blog/zh/intlayer_with_i18next.md +0 -2
- package/blog/zh/intlayer_with_next-i18next.md +0 -2
- package/blog/zh/intlayer_with_react-i18next.md +0 -2
- package/blog/zh/intlayer_with_vue-i18n.md +0 -46
- package/dist/cjs/generated/blog.entry.cjs +58 -29
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +218 -99
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +30 -15
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +4 -2
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +58 -29
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +218 -99
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +30 -15
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +4 -2
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/generated/blog.entry.d.ts.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/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/intlayer_with_next-i18next.md +0 -1
- package/docs/ar/intlayer_with_nextjs_14.md +28 -0
- package/docs/ar/intlayer_with_nextjs_15.md +28 -0
- package/docs/ar/intlayer_with_nextjs_16.md +28 -0
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1159 -0
- package/docs/ar/plugins/sync-json.md +6 -2
- package/docs/de/intlayer_with_next-i18next.md +0 -1
- package/docs/de/intlayer_with_nextjs_14.md +28 -0
- package/docs/de/intlayer_with_nextjs_15.md +28 -0
- package/docs/de/intlayer_with_nextjs_16.md +28 -0
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +1152 -0
- package/docs/de/plugins/sync-json.md +6 -2
- package/docs/en/intlayer_with_next-i18next.md +0 -1
- package/docs/en/intlayer_with_nextjs_14.md +28 -0
- package/docs/en/intlayer_with_nextjs_15.md +28 -0
- package/docs/en/intlayer_with_nextjs_16.md +31 -1
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +1132 -0
- package/docs/en/plugins/sync-json.md +6 -2
- package/docs/en-GB/intlayer_with_next-i18next.md +0 -1
- package/docs/en-GB/intlayer_with_nextjs_14.md +28 -0
- package/docs/en-GB/intlayer_with_nextjs_15.md +28 -0
- package/docs/en-GB/intlayer_with_nextjs_16.md +28 -0
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +1154 -0
- package/docs/en-GB/plugins/sync-json.md +6 -2
- package/docs/es/intlayer_with_next-i18next.md +0 -1
- package/docs/es/intlayer_with_nextjs_14.md +28 -0
- package/docs/es/intlayer_with_nextjs_15.md +28 -0
- package/docs/es/intlayer_with_nextjs_16.md +28 -0
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +1143 -0
- package/docs/es/plugins/sync-json.md +6 -2
- package/docs/fr/intlayer_with_next-i18next.md +0 -1
- package/docs/fr/intlayer_with_nextjs_14.md +28 -0
- package/docs/fr/intlayer_with_nextjs_15.md +28 -0
- package/docs/fr/intlayer_with_nextjs_16.md +28 -0
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1174 -0
- package/docs/fr/plugins/sync-json.md +9 -5
- package/docs/hi/intlayer_with_next-i18next.md +0 -1
- package/docs/hi/intlayer_with_nextjs_14.md +28 -0
- package/docs/hi/intlayer_with_nextjs_15.md +28 -0
- package/docs/hi/intlayer_with_nextjs_16.md +28 -0
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1151 -0
- package/docs/hi/plugins/sync-json.md +6 -2
- package/docs/id/intlayer_with_next-i18next.md +0 -1
- package/docs/id/intlayer_with_nextjs_14.md +28 -0
- package/docs/id/intlayer_with_nextjs_15.md +28 -0
- package/docs/id/intlayer_with_nextjs_16.md +28 -0
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +1154 -0
- package/docs/id/plugins/sync-json.md +6 -2
- package/docs/it/intlayer_with_next-i18next.md +0 -1
- package/docs/it/intlayer_with_nextjs_14.md +28 -0
- package/docs/it/intlayer_with_nextjs_15.md +28 -0
- package/docs/it/intlayer_with_nextjs_16.md +28 -0
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +1148 -0
- package/docs/it/plugins/sync-json.md +6 -2
- package/docs/ja/intlayer_with_next-i18next.md +0 -1
- package/docs/ja/intlayer_with_nextjs_14.md +28 -0
- package/docs/ja/intlayer_with_nextjs_15.md +28 -0
- package/docs/ja/intlayer_with_nextjs_16.md +28 -0
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1222 -0
- package/docs/ja/plugins/sync-json.md +6 -2
- package/docs/ko/intlayer_with_next-i18next.md +0 -1
- package/docs/ko/intlayer_with_nextjs_14.md +28 -0
- package/docs/ko/intlayer_with_nextjs_15.md +28 -0
- package/docs/ko/intlayer_with_nextjs_16.md +28 -0
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1205 -0
- package/docs/ko/plugins/sync-json.md +6 -2
- package/docs/pl/intlayer_with_next-i18next.md +0 -1
- package/docs/pl/intlayer_with_nextjs_14.md +28 -0
- package/docs/pl/intlayer_with_nextjs_15.md +28 -0
- package/docs/pl/intlayer_with_nextjs_16.md +28 -0
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +1149 -0
- package/docs/pl/plugins/sync-json.md +6 -2
- package/docs/pt/intlayer_with_next-i18next.md +0 -1
- package/docs/pt/intlayer_with_nextjs_14.md +28 -0
- package/docs/pt/intlayer_with_nextjs_15.md +28 -0
- package/docs/pt/intlayer_with_nextjs_16.md +28 -0
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +1152 -0
- package/docs/pt/plugins/sync-json.md +6 -2
- package/docs/ru/intlayer_with_next-i18next.md +0 -1
- package/docs/ru/intlayer_with_nextjs_14.md +28 -0
- package/docs/ru/intlayer_with_nextjs_15.md +28 -0
- package/docs/ru/intlayer_with_nextjs_16.md +28 -0
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1204 -0
- package/docs/ru/plugins/sync-json.md +6 -2
- package/docs/tr/intlayer_with_next-i18next.md +0 -1
- package/docs/tr/intlayer_with_nextjs_14.md +28 -0
- package/docs/tr/intlayer_with_nextjs_15.md +28 -0
- package/docs/tr/intlayer_with_nextjs_16.md +28 -0
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1159 -0
- package/docs/tr/plugins/sync-json.md +6 -2
- package/docs/uk/compiler.md +133 -0
- package/docs/uk/component_i18n.md +194 -0
- package/docs/uk/intlayer_with_nextjs_14.md +1646 -0
- package/docs/uk/intlayer_with_nextjs_15.md +1910 -0
- package/docs/uk/intlayer_with_nextjs_16.md +1763 -0
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1159 -0
- package/docs/uk/intlayer_with_react_native+expo.md +715 -0
- package/docs/uk/packages/intlayer/getConfiguration.md +145 -0
- package/docs/uk/vs_code_extension.md +133 -0
- package/docs/vi/intlayer_with_next-i18next.md +0 -1
- package/docs/vi/intlayer_with_nextjs_14.md +28 -0
- package/docs/vi/intlayer_with_nextjs_15.md +28 -0
- package/docs/vi/intlayer_with_nextjs_16.md +28 -0
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1151 -0
- package/docs/vi/plugins/sync-json.md +6 -2
- package/docs/zh/intlayer_with_next-i18next.md +0 -1
- package/docs/zh/intlayer_with_nextjs_14.md +28 -0
- package/docs/zh/intlayer_with_nextjs_15.md +28 -0
- package/docs/zh/intlayer_with_nextjs_16.md +28 -0
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1206 -0
- package/docs/zh/plugins/sync-json.md +9 -5
- package/frequent_questions/ar/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/de/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/en/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/en-GB/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/es/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/fr/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/hi/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/id/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/it/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/ja/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/ko/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/pl/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/pt/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/ru/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/tr/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/vi/SSR_Next_no_[locale].md +1 -1
- package/frequent_questions/zh/SSR_Next_no_[locale].md +1 -1
- package/package.json +6 -6
- package/src/generated/blog.entry.ts +29 -0
- package/src/generated/docs.entry.ts +119 -0
- package/src/generated/frequentQuestions.entry.ts +15 -0
- package/src/generated/legal.entry.ts +2 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2025-08-23
|
|
3
|
+
updatedAt: 2025-08-23
|
|
4
|
+
title: Документація функції getConfiguration | intlayer
|
|
5
|
+
description: Дізнайтесь, як використовувати функцію getConfiguration для пакета intlayer
|
|
6
|
+
keywords:
|
|
7
|
+
- getConfiguration
|
|
8
|
+
- переклад
|
|
9
|
+
- Intlayer
|
|
10
|
+
- intlayer
|
|
11
|
+
- інтернаціоналізація
|
|
12
|
+
- документація
|
|
13
|
+
- Next.js
|
|
14
|
+
- JavaScript
|
|
15
|
+
- React
|
|
16
|
+
slugs:
|
|
17
|
+
- doc
|
|
18
|
+
- packages
|
|
19
|
+
- intlayer
|
|
20
|
+
- getConfiguration
|
|
21
|
+
history:
|
|
22
|
+
- version: 5.5.10
|
|
23
|
+
date: 2025-06-29
|
|
24
|
+
changes: Ініціалізація історії
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
# Документація: функція `getConfiguration` у `intlayer`
|
|
28
|
+
|
|
29
|
+
## Опис
|
|
30
|
+
|
|
31
|
+
Функція `getConfiguration` отримує повну конфігурацію для застосунку `intlayer`, витягуючи змінні оточення. Ця функція дає змогу використовувати одну й ту саму конфігурацію як на клієнтській, так і на серверній стороні, забезпечуючи узгодженість по всьому застосунку.
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Параметри
|
|
36
|
+
|
|
37
|
+
Функція не приймає жодних параметрів. Замість цього вона використовує змінні оточення для налаштування.
|
|
38
|
+
|
|
39
|
+
### Повертає
|
|
40
|
+
|
|
41
|
+
- **Тип**: `IntlayerConfig`
|
|
42
|
+
- **Опис**: Об'єкт, що містить повну конфігурацію для `intlayer`. Конфігурація включає такі розділи:
|
|
43
|
+
- `internationalization`: Налаштування, пов'язані з локалями та strict mode.
|
|
44
|
+
- `middleware`: Налаштування, пов'язані з керуванням URL та cookie.
|
|
45
|
+
- `content`: Налаштування, пов'язані з файлами контенту, директоріями та шаблонами.
|
|
46
|
+
- `editor`: Налаштування, специфічні для редактора.
|
|
47
|
+
|
|
48
|
+
Див. [документацію з конфігурації Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md) для отримання додаткової інформації.
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## Приклад використання
|
|
53
|
+
|
|
54
|
+
### Отримання повної конфігурації
|
|
55
|
+
|
|
56
|
+
```typescript codeFormat="typescript"
|
|
57
|
+
import { getConfiguration } from "intlayer";
|
|
58
|
+
|
|
59
|
+
const config = getConfiguration();
|
|
60
|
+
console.log(config);
|
|
61
|
+
// Вивід:
|
|
62
|
+
// {
|
|
63
|
+
// internationalization: { ... },
|
|
64
|
+
// middleware: { ... },
|
|
65
|
+
// content: { ... },
|
|
66
|
+
// editor: { ... }
|
|
67
|
+
// }
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
```javascript codeFormat="esm"
|
|
71
|
+
import { getConfiguration } from "intlayer";
|
|
72
|
+
|
|
73
|
+
const config = getConfiguration();
|
|
74
|
+
console.log(config);
|
|
75
|
+
// Вивід:
|
|
76
|
+
// {
|
|
77
|
+
// internationalization: { ... },
|
|
78
|
+
// middleware: { ... },
|
|
79
|
+
// content: { ... },
|
|
80
|
+
// editor: { ... }
|
|
81
|
+
// }
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
```javascript codeFormat="commonjs"
|
|
85
|
+
const { getConfiguration } = require("intlayer");
|
|
86
|
+
|
|
87
|
+
const config = getConfiguration();
|
|
88
|
+
console.log(config);
|
|
89
|
+
// Вивід:
|
|
90
|
+
// {
|
|
91
|
+
// internationalization: { ... },
|
|
92
|
+
// middleware: { ... },
|
|
93
|
+
// content: { ... },
|
|
94
|
+
// editor: { ... }
|
|
95
|
+
// }
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Отримання `availableLocales` та `defaultLocale`
|
|
99
|
+
|
|
100
|
+
Розділ `internationalization` конфігурації надає налаштування, пов'язані з локалями, такі як `locales` (доступні локалі) та `defaultLocale` (мова за замовчуванням).
|
|
101
|
+
|
|
102
|
+
```typescript codeFormat="typescript"
|
|
103
|
+
import { getConfiguration } from "intlayer";
|
|
104
|
+
|
|
105
|
+
const { internationalization, middleware } = getConfiguration();
|
|
106
|
+
const { locales: availableLocales, defaultLocale } = internationalization;
|
|
107
|
+
const { cookieName } = middleware;
|
|
108
|
+
|
|
109
|
+
console.log(availableLocales); // Приклад виводу: ["en", "fr", "es"]
|
|
110
|
+
console.log(defaultLocale); // Приклад виводу: "en"
|
|
111
|
+
console.log(cookieName); // Вивід: "INTLAYER_LOCALE"
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
```javascript codeFormat="esm"
|
|
115
|
+
import { getConfiguration } from "intlayer";
|
|
116
|
+
|
|
117
|
+
const { internationalization, middleware } = getConfiguration();
|
|
118
|
+
const { locales: availableLocales, defaultLocale } = internationalization;
|
|
119
|
+
const { cookieName } = middleware;
|
|
120
|
+
|
|
121
|
+
console.log(availableLocales); // Приклад виводу: ["en", "fr", "es"]
|
|
122
|
+
console.log(defaultLocale); // Приклад виводу: "en"
|
|
123
|
+
console.log(cookieName); // Вивід: "INTLAYER_LOCALE"
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
```javascript codeFormat="commonjs"
|
|
127
|
+
const { getConfiguration } = require("intlayer");
|
|
128
|
+
|
|
129
|
+
const { internationalization, middleware } = getConfiguration();
|
|
130
|
+
const { locales: availableLocales, defaultLocale } = internationalization;
|
|
131
|
+
const { cookieName } = middleware;
|
|
132
|
+
|
|
133
|
+
console.log(availableLocales); // Приклад виводу: ["en", "fr", "es"]
|
|
134
|
+
console.log(defaultLocale); // Приклад виводу: "en"
|
|
135
|
+
console.log(cookieName); // Вивід: "INTLAYER_LOCALE"
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Примітки
|
|
139
|
+
|
|
140
|
+
- Переконайтеся, що всі необхідні змінні середовища правильно встановлені перед викликом цієї функції. Відсутні змінні спричинять помилки під час ініціалізації.
|
|
141
|
+
- Цю функцію можна використовувати як на клієнті, так і на сервері, що робить її універсальним інструментом для керування конфігураціями в уніфікований спосіб.
|
|
142
|
+
|
|
143
|
+
## Використання в застосунках
|
|
144
|
+
|
|
145
|
+
Функція `getConfiguration` є ключовою утилітою для ініціалізації та керування конфігурацією застосунку `intlayer`. Надаючи доступ до налаштувань, таких як locales, middleware та content directories, вона забезпечує узгодженість і масштабованість багатомовних і контент-орієнтованих застосунків.
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2025-03-17
|
|
3
|
+
updatedAt: 2025-09-30
|
|
4
|
+
title: Офіційне розширення VS Code
|
|
5
|
+
description: Дізнайтеся, як використовувати розширення Intlayer у VS Code для покращення робочого процесу розробки. Швидко переходьте між локалізованим контентом і ефективно керуйте своїми словниками.
|
|
6
|
+
keywords:
|
|
7
|
+
- Розширення VS Code
|
|
8
|
+
- Intlayer
|
|
9
|
+
- Локалізація
|
|
10
|
+
- Інструменти розробки
|
|
11
|
+
- React
|
|
12
|
+
- Next.js
|
|
13
|
+
- JavaScript
|
|
14
|
+
- TypeScript
|
|
15
|
+
slugs:
|
|
16
|
+
- doc
|
|
17
|
+
- vs-code-extension
|
|
18
|
+
history:
|
|
19
|
+
- version: 7.3.0
|
|
20
|
+
date: 2025-11-25
|
|
21
|
+
changes: Додано команду Extract Content
|
|
22
|
+
- version: 6.1.5
|
|
23
|
+
date: 2025-09-30
|
|
24
|
+
changes: Додано демонстраційний GIF
|
|
25
|
+
- version: 6.1.0
|
|
26
|
+
date: 2025-09-24
|
|
27
|
+
changes: Додано розділ вибору середовища
|
|
28
|
+
- version: 6.0.0
|
|
29
|
+
date: 2025-09-22
|
|
30
|
+
changes: Вкладка Intlayer / команди Fill & Test
|
|
31
|
+
- version: 5.5.10
|
|
32
|
+
date: 2025-06-29
|
|
33
|
+
changes: Ініціалізація історії
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
# Офіційне розширення VS Code
|
|
37
|
+
|
|
38
|
+
## Огляд
|
|
39
|
+
|
|
40
|
+
[**Intlayer**](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) — офіційне розширення Visual Studio Code для **Intlayer**, створене для покращення досвіду розробника під час роботи з локалізованим контентом у ваших проєктах.
|
|
41
|
+
|
|
42
|
+

|
|
43
|
+
|
|
44
|
+
Посилання на розширення: [https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension)
|
|
45
|
+
|
|
46
|
+
## Особливості
|
|
47
|
+
|
|
48
|
+

|
|
49
|
+
|
|
50
|
+
- **Витяг вмісту** – Витягує вміст із ваших компонентів React / Vue / Svelte
|
|
51
|
+
|
|
52
|
+

|
|
53
|
+
|
|
54
|
+
- **Миттєва навігація** – Швидко переходьте до відповідного файлу вмісту, натиснувши на ключ `useIntlayer`.
|
|
55
|
+
- **Заповнення словників** – Заповнює словники вмістом із вашого проєкту.
|
|
56
|
+
|
|
57
|
+

|
|
58
|
+
|
|
59
|
+
- **Простий доступ до команд Intlayer** – Build, push, pull, fill, test словників вмісту з легкістю.
|
|
60
|
+
|
|
61
|
+

|
|
62
|
+
|
|
63
|
+
- **Генератор декларацій вмісту** – Створюйте файли словників вмісту в різних форматах (`.ts`, `.esm`, `.cjs`, `.json`).
|
|
64
|
+
|
|
65
|
+

|
|
66
|
+
|
|
67
|
+
- **Тестування словників** – Перевірка словників на наявність відсутніх перекладів.
|
|
68
|
+
|
|
69
|
+

|
|
70
|
+
|
|
71
|
+
- **Тримайте свої словники в актуальному стані** – Оновлюйте словники останнім вмістом з вашого проєкту.
|
|
72
|
+
|
|
73
|
+

|
|
74
|
+
|
|
75
|
+
- **Вкладка Intlayer (Панель активності)** – Оглядайте та шукайте словники у виділеній бічній вкладці з панеллю інструментів і контекстними діями (Build, Pull, Push, Fill, Refresh, Test, Create File).
|
|
76
|
+
|
|
77
|
+
## Використання
|
|
78
|
+
|
|
79
|
+
### Швидка навігація
|
|
80
|
+
|
|
81
|
+
1. Відкрийте проєкт, що використовує **react-intlayer**.
|
|
82
|
+
2. Знайдіть виклик `useIntlayer()`, наприклад:
|
|
83
|
+
|
|
84
|
+
```tsx
|
|
85
|
+
const content = useIntlayer("app");
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
3. **Command-click** (`⌘+Click` на macOS) або **Ctrl+Click** (на Windows/Linux) по ключу (наприклад, `"app"`).
|
|
89
|
+
4. VS Code автоматично відкриє відповідний файл словника, наприклад, `src/app.content.ts`.
|
|
90
|
+
|
|
91
|
+
### Вкладка Intlayer (Панель активності)
|
|
92
|
+
|
|
93
|
+
Використовуйте бічну вкладку для перегляду та керування словниками:
|
|
94
|
+
|
|
95
|
+
- Відкрийте значок Intlayer на Панелі активності.
|
|
96
|
+
- У **Search** введіть текст, щоб у реальному часі фільтрувати словники та записи.
|
|
97
|
+
- У **Dictionaries** переглядайте середовища, словники та файли. Використовуйте панель інструментів для Build, Pull, Push, Fill, Refresh, Test та Create Dictionary File. Натисніть правою кнопкою для контекстних дій (Pull/Push для словників, Fill для файлів). Поточний файл у редакторі автоматично відображається в дереві, коли це доречно.
|
|
98
|
+
|
|
99
|
+
### Доступ до команд
|
|
100
|
+
|
|
101
|
+
Ви можете викликати команди через **Command Palette**.
|
|
102
|
+
|
|
103
|
+
```sh
|
|
104
|
+
Cmd + Shift + P (macOS) / Ctrl + Shift + P (Windows/Linux)
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
- **Build Dictionaries**
|
|
108
|
+
- **Надіслати словники**
|
|
109
|
+
- **Отримати словники**
|
|
110
|
+
- **Заповнити словники**
|
|
111
|
+
- **Тестувати словники**
|
|
112
|
+
- **Створити файл словника**
|
|
113
|
+
|
|
114
|
+
### Завантаження змінних оточення
|
|
115
|
+
|
|
116
|
+
Intlayer рекомендує зберігати ваші AI API keys, а також Intlayer client ID і secret у змінних оточення.
|
|
117
|
+
|
|
118
|
+
Розширення може завантажувати змінні оточення з вашого робочого простору, щоб виконувати команди Intlayer у правильному контексті.
|
|
119
|
+
|
|
120
|
+
- **Порядок завантаження (за пріоритетом)**: `.env.<env>.local` → `.env.<env>` → `.env.local` → `.env`
|
|
121
|
+
- **Недеструктивно**: існуючі значення `process.env` не перезаписуються.
|
|
122
|
+
- **Область застосування**: файли визначаються з налаштованого базового каталогу (за замовчуванням — корінь робочого простору).
|
|
123
|
+
|
|
124
|
+
#### Вибір активного середовища
|
|
125
|
+
|
|
126
|
+
- **Палітра команд**: відкрийте палітру та виконайте `Intlayer: Select Environment`, потім оберіть середовище (наприклад, `development`, `staging`, `production`). Розширення намагатиметься завантажити перший доступний файл зі списку пріоритетів вище та покаже повідомлення на кшталт «Завантажено env з .env.<env>.local».
|
|
127
|
+
- **Налаштування**: перейдіть у `Settings → Extensions → Intlayer` та встановіть:
|
|
128
|
+
- **Environment**: назва середовища, яка використовується для визначення файлів `.env.<env>*`.
|
|
129
|
+
- (Необов'язково) **Env File**: явний шлях до файлу `.env`. Якщо вказано, він має пріоритет над виведеним вище списком.
|
|
130
|
+
|
|
131
|
+
#### Монорепозиторії та власні каталоги
|
|
132
|
+
|
|
133
|
+
Якщо ваші файли `.env` розташовані поза коренем робочого простору, встановіть **Базовий каталог** у `Settings → Extensions → Intlayer`. Завантажувач шукатиме файли `.env` відносно цього каталогу.
|
|
@@ -105,6 +105,34 @@ bunx intlayer init
|
|
|
105
105
|
|
|
106
106
|
### Bước 2: Cấu hình Dự án của Bạn
|
|
107
107
|
|
|
108
|
+
Here is the final structure that we will make:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
.
|
|
112
|
+
├── src
|
|
113
|
+
│ ├── app
|
|
114
|
+
│ │ ├── [locale]
|
|
115
|
+
│ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
|
|
116
|
+
│ │ │ ├── page.content.ts
|
|
117
|
+
│ │ │ └── page.tsx
|
|
118
|
+
│ │ └── layout.tsx # Root layout for style and global providers
|
|
119
|
+
│ ├── components
|
|
120
|
+
│ │ ├── client-component-example.content.ts
|
|
121
|
+
│ │ ├── ClientComponentExample.tsx
|
|
122
|
+
│ │ ├── LocaleSwitcher
|
|
123
|
+
│ │ │ ├── localeSwitcher.content.ts
|
|
124
|
+
│ │ │ └── LocaleSwitcher.tsx
|
|
125
|
+
│ │ ├── server-component-example.content.ts
|
|
126
|
+
│ │ └── ServerComponentExample.tsx
|
|
127
|
+
│ └── middleware.ts
|
|
128
|
+
├── intlayer.config.ts
|
|
129
|
+
├── next.config.ts
|
|
130
|
+
├── package.json
|
|
131
|
+
└── tsconfig.json
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
> If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
|
|
135
|
+
|
|
108
136
|
Tạo một file cấu hình để cấu hình các ngôn ngữ cho ứng dụng của bạn:
|
|
109
137
|
|
|
110
138
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
@@ -137,6 +137,34 @@ bunx intlayer init
|
|
|
137
137
|
|
|
138
138
|
### Bước 2: Cấu hình Dự án của Bạn
|
|
139
139
|
|
|
140
|
+
Here is the final structure that we will make:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
.
|
|
144
|
+
├── src
|
|
145
|
+
│ ├── app
|
|
146
|
+
│ │ ├── [locale]
|
|
147
|
+
│ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
|
|
148
|
+
│ │ │ ├── page.content.ts
|
|
149
|
+
│ │ │ └── page.tsx
|
|
150
|
+
│ │ └── layout.tsx # Root layout for style and global providers
|
|
151
|
+
│ ├── components
|
|
152
|
+
│ │ ├── client-component-example.content.ts
|
|
153
|
+
│ │ ├── ClientComponentExample.tsx
|
|
154
|
+
│ │ ├── LocaleSwitcher
|
|
155
|
+
│ │ │ ├── localeSwitcher.content.ts
|
|
156
|
+
│ │ │ └── LocaleSwitcher.tsx
|
|
157
|
+
│ │ ├── server-component-example.content.ts
|
|
158
|
+
│ │ └── ServerComponentExample.tsx
|
|
159
|
+
│ └── middleware.ts
|
|
160
|
+
├── intlayer.config.ts
|
|
161
|
+
├── next.config.ts
|
|
162
|
+
├── package.json
|
|
163
|
+
└── tsconfig.json
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
> If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
|
|
167
|
+
|
|
140
168
|
Tạo một file cấu hình để cấu hình các ngôn ngữ của ứng dụng của bạn:
|
|
141
169
|
|
|
142
170
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|
|
@@ -104,6 +104,34 @@ bunx intlayer init
|
|
|
104
104
|
|
|
105
105
|
### Bước 2: Cấu hình Dự án của Bạn
|
|
106
106
|
|
|
107
|
+
Here is the final structure that we will make:
|
|
108
|
+
|
|
109
|
+
```bash
|
|
110
|
+
.
|
|
111
|
+
├── src
|
|
112
|
+
│ ├── app
|
|
113
|
+
│ │ ├── [locale]
|
|
114
|
+
│ │ │ ├── layout.tsx # Locale layout for the Intlayer provider
|
|
115
|
+
│ │ │ ├── page.content.ts
|
|
116
|
+
│ │ │ └── page.tsx
|
|
117
|
+
│ │ └── layout.tsx # Root layout for style and global providers
|
|
118
|
+
│ ├── components
|
|
119
|
+
│ │ ├── client-component-example.content.ts
|
|
120
|
+
│ │ ├── ClientComponentExample.tsx
|
|
121
|
+
│ │ ├── LocaleSwitcher
|
|
122
|
+
│ │ │ ├── localeSwitcher.content.ts
|
|
123
|
+
│ │ │ └── LocaleSwitcher.tsx
|
|
124
|
+
│ │ ├── server-component-example.content.ts
|
|
125
|
+
│ │ └── ServerComponentExample.tsx
|
|
126
|
+
│ └── proxy.ts
|
|
127
|
+
├── intlayer.config.ts
|
|
128
|
+
├── next.config.ts
|
|
129
|
+
├── package.json
|
|
130
|
+
└── tsconfig.json
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
> If you don't want locale routing, intlayer can be used as a simple provider / hook. See [this guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md) for more details.
|
|
134
|
+
|
|
107
135
|
Tạo một file cấu hình để cấu hình các ngôn ngữ của ứng dụng của bạn:
|
|
108
136
|
|
|
109
137
|
```typescript fileName="intlayer.config.ts" codeFormat="typescript"
|