@intlayer/docs 8.0.1 → 8.0.2
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/docs/ar/dictionary/html.md +4 -2
- package/docs/ar/dictionary/insertion.md +113 -59
- package/docs/ar/intlayer_with_adonisjs.md +10 -0
- package/docs/ar/intlayer_with_express.md +10 -0
- package/docs/ar/intlayer_with_fastify.md +10 -0
- package/docs/ar/intlayer_with_hono.md +10 -0
- package/docs/ar/intlayer_with_nestjs.md +11 -1
- package/docs/de/dictionary/html.md +4 -2
- package/docs/de/dictionary/insertion.md +119 -18
- package/docs/de/intlayer_with_adonisjs.md +10 -0
- package/docs/de/intlayer_with_express.md +10 -0
- package/docs/de/intlayer_with_fastify.md +10 -0
- package/docs/de/intlayer_with_hono.md +10 -0
- package/docs/de/intlayer_with_nestjs.md +11 -1
- package/docs/en/dictionary/html.md +3 -1
- package/docs/en/dictionary/insertion.md +119 -65
- package/docs/en/intlayer_with_adonisjs.md +10 -0
- package/docs/en/intlayer_with_express.md +10 -0
- package/docs/en/intlayer_with_fastify.md +10 -0
- package/docs/en/intlayer_with_hono.md +10 -0
- package/docs/en/intlayer_with_nestjs.md +1 -1
- package/docs/en-GB/dictionary/html.md +4 -2
- package/docs/en-GB/dictionary/insertion.md +119 -65
- package/docs/en-GB/intlayer_with_adonisjs.md +10 -0
- package/docs/en-GB/intlayer_with_express.md +10 -0
- package/docs/en-GB/intlayer_with_fastify.md +10 -0
- package/docs/en-GB/intlayer_with_hono.md +10 -0
- package/docs/en-GB/intlayer_with_nestjs.md +11 -1
- package/docs/es/dictionary/html.md +4 -2
- package/docs/es/dictionary/insertion.md +113 -59
- package/docs/es/intlayer_with_adonisjs.md +10 -0
- package/docs/es/intlayer_with_express.md +10 -0
- package/docs/es/intlayer_with_fastify.md +10 -0
- package/docs/es/intlayer_with_hono.md +10 -0
- package/docs/es/intlayer_with_nestjs.md +11 -1
- package/docs/fr/dictionary/html.md +4 -2
- package/docs/fr/dictionary/insertion.md +113 -59
- package/docs/fr/intlayer_with_adonisjs.md +10 -0
- package/docs/fr/intlayer_with_express.md +10 -0
- package/docs/fr/intlayer_with_fastify.md +10 -0
- package/docs/fr/intlayer_with_hono.md +10 -0
- package/docs/fr/intlayer_with_nestjs.md +11 -1
- package/docs/hi/dictionary/html.md +4 -2
- package/docs/hi/dictionary/insertion.md +119 -17
- package/docs/hi/intlayer_with_adonisjs.md +10 -0
- package/docs/hi/intlayer_with_express.md +10 -0
- package/docs/hi/intlayer_with_fastify.md +10 -0
- package/docs/hi/intlayer_with_hono.md +10 -0
- package/docs/hi/intlayer_with_nestjs.md +11 -1
- package/docs/id/dictionary/html.md +4 -2
- package/docs/id/dictionary/insertion.md +119 -17
- package/docs/id/intlayer_with_adonisjs.md +10 -0
- package/docs/id/intlayer_with_express.md +10 -0
- package/docs/id/intlayer_with_fastify.md +10 -0
- package/docs/id/intlayer_with_hono.md +10 -0
- package/docs/it/dictionary/html.md +4 -2
- package/docs/it/dictionary/insertion.md +113 -59
- package/docs/it/intlayer_with_adonisjs.md +10 -0
- package/docs/it/intlayer_with_express.md +10 -0
- package/docs/it/intlayer_with_fastify.md +10 -0
- package/docs/it/intlayer_with_hono.md +10 -0
- package/docs/it/intlayer_with_nestjs.md +11 -1
- package/docs/ja/dictionary/html.md +4 -2
- package/docs/ja/dictionary/insertion.md +119 -65
- package/docs/ja/intlayer_with_adonisjs.md +10 -0
- package/docs/ja/intlayer_with_express.md +10 -0
- package/docs/ja/intlayer_with_fastify.md +10 -0
- package/docs/ja/intlayer_with_hono.md +10 -0
- package/docs/ja/intlayer_with_nestjs.md +11 -1
- package/docs/ko/dictionary/html.md +4 -2
- package/docs/ko/dictionary/insertion.md +119 -65
- package/docs/ko/intlayer_with_adonisjs.md +10 -0
- package/docs/ko/intlayer_with_express.md +10 -0
- package/docs/ko/intlayer_with_fastify.md +10 -0
- package/docs/ko/intlayer_with_hono.md +10 -0
- package/docs/ko/intlayer_with_nestjs.md +11 -1
- package/docs/pl/dictionary/html.md +4 -2
- package/docs/pl/dictionary/insertion.md +113 -15
- package/docs/pl/intlayer_with_adonisjs.md +10 -0
- package/docs/pl/intlayer_with_express.md +10 -0
- package/docs/pl/intlayer_with_fastify.md +10 -0
- package/docs/pl/intlayer_with_hono.md +10 -0
- package/docs/pt/dictionary/html.md +4 -2
- package/docs/pt/dictionary/insertion.md +119 -18
- package/docs/pt/intlayer_with_adonisjs.md +10 -0
- package/docs/pt/intlayer_with_express.md +10 -0
- package/docs/pt/intlayer_with_fastify.md +10 -0
- package/docs/pt/intlayer_with_hono.md +10 -0
- package/docs/pt/intlayer_with_nestjs.md +11 -1
- package/docs/ru/dictionary/html.md +4 -2
- package/docs/ru/dictionary/insertion.md +113 -59
- package/docs/ru/intlayer_with_adonisjs.md +10 -0
- package/docs/ru/intlayer_with_express.md +10 -0
- package/docs/ru/intlayer_with_fastify.md +10 -0
- package/docs/ru/intlayer_with_hono.md +10 -0
- package/docs/ru/intlayer_with_nestjs.md +11 -1
- package/docs/tr/dictionary/html.md +4 -2
- package/docs/tr/dictionary/insertion.md +113 -59
- package/docs/tr/intlayer_with_adonisjs.md +10 -0
- package/docs/tr/intlayer_with_express.md +10 -0
- package/docs/tr/intlayer_with_fastify.md +10 -0
- package/docs/tr/intlayer_with_hono.md +10 -0
- package/docs/tr/intlayer_with_nestjs.md +11 -1
- package/docs/uk/dictionary/html.md +4 -2
- package/docs/uk/dictionary/insertion.md +113 -59
- package/docs/uk/intlayer_with_adonisjs.md +10 -0
- package/docs/uk/intlayer_with_express.md +10 -0
- package/docs/uk/intlayer_with_fastify.md +10 -0
- package/docs/uk/intlayer_with_hono.md +10 -0
- package/docs/vi/dictionary/html.md +4 -2
- package/docs/vi/dictionary/insertion.md +113 -14
- package/docs/vi/intlayer_with_adonisjs.md +10 -0
- package/docs/vi/intlayer_with_express.md +10 -0
- package/docs/vi/intlayer_with_fastify.md +10 -0
- package/docs/vi/intlayer_with_hono.md +10 -0
- package/docs/zh/dictionary/html.md +4 -2
- package/docs/zh/dictionary/insertion.md +117 -63
- package/docs/zh/intlayer_with_adonisjs.md +10 -0
- package/docs/zh/intlayer_with_express.md +10 -0
- package/docs/zh/intlayer_with_fastify.md +10 -0
- package/docs/zh/intlayer_with_hono.md +10 -0
- package/docs/zh/intlayer_with_nestjs.md +11 -1
- package/package.json +6 -6
|
@@ -35,24 +35,125 @@ Quando integrado com React Intlayer ou Next Intlayer, você pode simplesmente fo
|
|
|
35
35
|
|
|
36
36
|
## Configurando Conteúdo de Inserção
|
|
37
37
|
|
|
38
|
-
Para configurar conteúdo de inserção no seu projeto Intlayer, crie um módulo de conteúdo que inclua suas definições de inserção.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
38
|
+
Para configurar conteúdo de inserção no seu projeto Intlayer, crie um módulo de conteúdo que inclua suas definições de inserção.
|
|
39
|
+
|
|
40
|
+
<Tabs>
|
|
41
|
+
<Tab label="Envolvimento Manual" value="manual-wrapping">
|
|
42
|
+
Use a função `insert` para declarar explicitamente o conteúdo de inserção.
|
|
43
|
+
|
|
44
|
+
```typescript fileName="**/*.content.ts" contentDeclarationFormat="typescript"
|
|
45
|
+
import { insert, type Dictionary } from "intlayer";
|
|
46
|
+
|
|
47
|
+
const myInsertionContent = {
|
|
48
|
+
key: "my_key",
|
|
49
|
+
content: {
|
|
50
|
+
myInsertion: insert(
|
|
51
|
+
"Hello, my name is {{name}} and I am {{age}} years old!"
|
|
52
|
+
),
|
|
53
|
+
},
|
|
54
|
+
} satisfies Dictionary;
|
|
55
|
+
|
|
56
|
+
export default myInsertionContent;
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
|
|
60
|
+
import { insert } from "intlayer";
|
|
61
|
+
|
|
62
|
+
/** @type {import('intlayer').Dictionary} */
|
|
63
|
+
const myInsertionContent = {
|
|
64
|
+
key: "my_key",
|
|
65
|
+
content: {
|
|
66
|
+
myInsertion: insert(
|
|
67
|
+
"Hello, my name is {{name}} and I am {{age}} years old!"
|
|
68
|
+
),
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
export default myInsertionContent;
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
```javascript fileName="**/*.content.cjs" contentDeclarationFormat="commonjs"
|
|
76
|
+
const { insert } = require("intlayer");
|
|
77
|
+
|
|
78
|
+
/** @type {import('intlayer').Dictionary} */
|
|
79
|
+
const myInsertionContent = {
|
|
80
|
+
key: "my_key",
|
|
81
|
+
content: {
|
|
82
|
+
myInsertion: insert(
|
|
83
|
+
"Hello, my name is {{name}} and I am {{age}} years old!"
|
|
84
|
+
),
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
module.exports = myInsertionContent;
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
```json5 fileName="**/*.content.json" contentDeclarationFormat="json"
|
|
92
|
+
{
|
|
93
|
+
"$schema": "https://intlayer.org/schema.json",
|
|
94
|
+
"key": "my_key",
|
|
95
|
+
"content": {
|
|
96
|
+
"myInsertion": {
|
|
97
|
+
"nodeType": "insertion",
|
|
98
|
+
"insertion": "Hello, my name is {{name}} and I am {{age}} years old!",
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
</Tab>
|
|
105
|
+
<Tab label="Detecção Automática" value="automatic-detection">
|
|
106
|
+
Se a string contiver indicadores de inserção comuns (como `{{name}}`), o Intlayer irá transformá-la automaticamente.
|
|
107
|
+
|
|
108
|
+
```typescript fileName="**/*.content.ts" contentDeclarationFormat="typescript"
|
|
109
|
+
import { type Dictionary } from "intlayer";
|
|
110
|
+
|
|
111
|
+
const myInsertionContent = {
|
|
112
|
+
key: "my_key",
|
|
113
|
+
content: {
|
|
114
|
+
myInsertion: "Hello, my name is {{name}} and I am {{age}} years old!",
|
|
115
|
+
},
|
|
116
|
+
} satisfies Dictionary;
|
|
117
|
+
|
|
118
|
+
export default myInsertionContent;
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
|
|
122
|
+
/** @type {import('intlayer').Dictionary} */
|
|
123
|
+
const myInsertionContent = {
|
|
124
|
+
key: "my_key",
|
|
125
|
+
content: {
|
|
126
|
+
myInsertion: "Hello, my name is {{name}} and I am {{age}} years old!",
|
|
127
|
+
},
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
export default myInsertionContent;
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
```javascript fileName="**/*.content.cjs" contentDeclarationFormat="commonjs"
|
|
134
|
+
/** @type {import('intlayer').Dictionary} */
|
|
135
|
+
const myInsertionContent = {
|
|
136
|
+
key: "my_key",
|
|
137
|
+
content: {
|
|
138
|
+
myInsertion: "Hello, my name is {{name}} and I am {{age}} years old!",
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
module.exports = myInsertionContent;
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
```json5 fileName="**/*.content.json" contentDeclarationFormat="json"
|
|
146
|
+
{
|
|
147
|
+
"$schema": "https://intlayer.org/schema.json",
|
|
148
|
+
"key": "my_key",
|
|
149
|
+
"content": {
|
|
150
|
+
"myInsertion": "Hello, my name is {{name}} and I am {{age}} years old!",
|
|
151
|
+
},
|
|
152
|
+
}
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
</Tab>
|
|
156
|
+
</Tabs>
|
|
56
157
|
|
|
57
158
|
```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
|
|
58
159
|
import { insert } from "intlayer";
|
|
@@ -41,6 +41,16 @@ Ao internacionalizar o backend, sua aplicação não apenas respeita as diferen
|
|
|
41
41
|
|
|
42
42
|
## Primeiros Passos
|
|
43
43
|
|
|
44
|
+
<iframe
|
|
45
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-adonisjs-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
46
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
47
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
48
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
49
|
+
loading="lazy"
|
|
50
|
+
/>
|
|
51
|
+
|
|
52
|
+
See [Application Template](https://github.com/aymericzip/intlayer-adonisjs-template) on GitHub.
|
|
53
|
+
|
|
44
54
|
### Instalação
|
|
45
55
|
|
|
46
56
|
Para começar a usar o `adonis-intlayer`, instale o pacote usando o npm:
|
|
@@ -46,6 +46,16 @@ Internacionalizar seu backend é essencial para atender a um público global de
|
|
|
46
46
|
|
|
47
47
|
## Começando
|
|
48
48
|
|
|
49
|
+
<iframe
|
|
50
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-express-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
51
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
52
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
53
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
54
|
+
loading="lazy"
|
|
55
|
+
/>
|
|
56
|
+
|
|
57
|
+
See [Application Template](https://github.com/aymericzip/intlayer-express-template) on GitHub.
|
|
58
|
+
|
|
49
59
|
### Instalação
|
|
50
60
|
|
|
51
61
|
Para começar a usar o `express-intlayer`, instale o pacote usando npm:
|
|
@@ -40,6 +40,16 @@ Ao internacionalizar o backend, sua aplicação não apenas respeita as diferen
|
|
|
40
40
|
|
|
41
41
|
## Primeiros Passos
|
|
42
42
|
|
|
43
|
+
<iframe
|
|
44
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-fastify-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
45
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
46
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
47
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
48
|
+
loading="lazy"
|
|
49
|
+
/>
|
|
50
|
+
|
|
51
|
+
See [Application Template](https://github.com/aymericzip/intlayer-fastify-template) on GitHub.
|
|
52
|
+
|
|
43
53
|
### Instalação
|
|
44
54
|
|
|
45
55
|
Para começar a usar `fastify-intlayer`, instale o pacote usando npm:
|
|
@@ -44,6 +44,16 @@ Ao internacionalizar o back-end, sua aplicação não apenas respeita as diferen
|
|
|
44
44
|
|
|
45
45
|
## Primeiros Passos
|
|
46
46
|
|
|
47
|
+
<iframe
|
|
48
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-hono-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
49
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
50
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
51
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
52
|
+
loading="lazy"
|
|
53
|
+
/>
|
|
54
|
+
|
|
55
|
+
See [Application Template](https://github.com/aymericzip/intlayer-hono-template) on GitHub.
|
|
56
|
+
|
|
47
57
|
### Instalação
|
|
48
58
|
|
|
49
59
|
Para começar a usar o `hono-intlayer`, instale o pacote usando o npm:
|
|
@@ -14,7 +14,7 @@ slugs:
|
|
|
14
14
|
- doc
|
|
15
15
|
- environment
|
|
16
16
|
- nest
|
|
17
|
-
applicationTemplate: https://github.com/
|
|
17
|
+
applicationTemplate: https://github.com/aymericzip/intlayer-nestjs-template
|
|
18
18
|
author: AydinTheFirst
|
|
19
19
|
history:
|
|
20
20
|
- version: 7.5.9
|
|
@@ -49,6 +49,16 @@ Ao internacionalizar o backend, sua aplicação não apenas respeita as diferen
|
|
|
49
49
|
|
|
50
50
|
## Começando
|
|
51
51
|
|
|
52
|
+
<iframe
|
|
53
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-nestjs-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
54
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
55
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
56
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
57
|
+
loading="lazy"
|
|
58
|
+
/>
|
|
59
|
+
|
|
60
|
+
See [Application Template](https://github.com/aymericzip/intlayer-nestjs-template) on GitHub.
|
|
61
|
+
|
|
52
62
|
### Criar um novo projeto NestJS
|
|
53
63
|
|
|
54
64
|
```bash packageManager="npm"
|
|
@@ -46,8 +46,9 @@ Intlayer поддерживает HTML-контент, позволяя встр
|
|
|
46
46
|
|
|
47
47
|
const htmlDictionary = {
|
|
48
48
|
key: "app",
|
|
49
|
+
contentAutoTransformation: true, // можно задать в файле конфигурации
|
|
49
50
|
content: {
|
|
50
|
-
myHtmlContent:
|
|
51
|
+
myHtmlContent: html("<p>Привет <strong>Мир</strong></p>"),
|
|
51
52
|
},
|
|
52
53
|
} satisfies Dictionary;
|
|
53
54
|
|
|
@@ -61,8 +62,9 @@ Intlayer поддерживает HTML-контент, позволяя встр
|
|
|
61
62
|
```typescript fileName="htmlDictionary.content.ts"
|
|
62
63
|
export default {
|
|
63
64
|
key: "app",
|
|
65
|
+
contentAutoTransformation: true, // можно задать в файле конфигурации
|
|
64
66
|
content: {
|
|
65
|
-
myHtmlContent:
|
|
67
|
+
myHtmlContent: "<p>Привет <strong>Мир</strong></p>",
|
|
66
68
|
},
|
|
67
69
|
};
|
|
68
70
|
```
|
|
@@ -35,65 +35,119 @@ history:
|
|
|
35
35
|
|
|
36
36
|
## Настройка вставки контента
|
|
37
37
|
|
|
38
|
-
Чтобы настроить вставку контента в вашем проекте Intlayer, создайте модуль контента, который включает ваши определения вставок.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
```
|
|
38
|
+
Чтобы настроить вставку контента в вашем проекте Intlayer, создайте модуль контента, который включает ваши определения вставок.
|
|
39
|
+
|
|
40
|
+
<Tabs>
|
|
41
|
+
<Tab label="Ручная обертка" value="manual-wrapping">
|
|
42
|
+
Используйте функцию `insert` для явного объявления контента для вставки.
|
|
43
|
+
|
|
44
|
+
```typescript fileName="**/*.content.ts" contentDeclarationFormat="typescript"
|
|
45
|
+
import { insert, type Dictionary } from "intlayer";
|
|
46
|
+
|
|
47
|
+
const myInsertionContent = {
|
|
48
|
+
key: "my_key",
|
|
49
|
+
content: {
|
|
50
|
+
myInsertion: insert("Привет, меня зовут {{name}} и мне {{age}} лет!"),
|
|
51
|
+
},
|
|
52
|
+
} satisfies Dictionary;
|
|
53
|
+
|
|
54
|
+
export default myInsertionContent;
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
|
|
58
|
+
import { insert } from "intlayer";
|
|
59
|
+
|
|
60
|
+
/** @type {import('intlayer').Dictionary} */
|
|
61
|
+
const myInsertionContent = {
|
|
62
|
+
key: "my_key",
|
|
63
|
+
content: {
|
|
64
|
+
myInsertion: insert("Привет, меня зовут {{name}} и мне {{age}} лет!"),
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
export default myInsertionContent;
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
```javascript fileName="**/*.content.cjs" contentDeclarationFormat="commonjs"
|
|
72
|
+
const { insert } = require("intlayer");
|
|
73
|
+
|
|
74
|
+
/** @type {import('intlayer').Dictionary} */
|
|
75
|
+
const myInsertionContent = {
|
|
76
|
+
key: "my_key",
|
|
77
|
+
content: {
|
|
78
|
+
myInsertion: insert("Привет, меня зовут {{name}} и мне {{age}} лет!"),
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
module.exports = myInsertionContent;
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
```json5 fileName="**/*.content.json" contentDeclarationFormat="json"
|
|
86
|
+
{
|
|
87
|
+
"$schema": "https://intlayer.org/schema.json",
|
|
88
|
+
"key": "my_key",
|
|
89
|
+
"content": {
|
|
90
|
+
"myInsertion": {
|
|
91
|
+
"nodeType": "insertion",
|
|
92
|
+
"insertion": "Привет, меня зовут {{name}} и мне {{age}} лет!",
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
}
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
</Tab>
|
|
99
|
+
<Tab label="Автоматическое обнаружение" value="automatic-detection">
|
|
100
|
+
Если строка содержит общие индикаторы вставки (например, `{{name}}`), Intlayer автоматически преобразует ее.
|
|
101
|
+
|
|
102
|
+
```typescript fileName="**/*.content.ts" contentDeclarationFormat="typescript"
|
|
103
|
+
import { type Dictionary } from "intlayer";
|
|
104
|
+
|
|
105
|
+
const myInsertionContent = {
|
|
106
|
+
key: "my_key",
|
|
107
|
+
content: {
|
|
108
|
+
myInsertion: "Привет, меня зовут {{name}} и мне {{age}} лет!",
|
|
109
|
+
},
|
|
110
|
+
} satisfies Dictionary;
|
|
111
|
+
|
|
112
|
+
export default myInsertionContent;
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
|
|
116
|
+
/** @type {import('intlayer').Dictionary} */
|
|
117
|
+
const myInsertionContent = {
|
|
118
|
+
key: "my_key",
|
|
119
|
+
content: {
|
|
120
|
+
myInsertion: "Привет, меня зовут {{name}} и мне {{age}} лет!",
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
export default myInsertionContent;
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
```javascript fileName="**/*.content.cjs" contentDeclarationFormat="commonjs"
|
|
128
|
+
/** @type {import('intlayer').Dictionary} */
|
|
129
|
+
const myInsertionContent = {
|
|
130
|
+
key: "my_key",
|
|
131
|
+
content: {
|
|
132
|
+
myInsertion: "Привет, меня зовут {{name}} и мне {{age}} лет!",
|
|
133
|
+
},
|
|
134
|
+
};
|
|
135
|
+
|
|
136
|
+
module.exports = myInsertionContent;
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
```json5 fileName="**/*.content.json" contentDeclarationFormat="json"
|
|
140
|
+
{
|
|
141
|
+
"$schema": "https://intlayer.org/schema.json",
|
|
142
|
+
"key": "my_key",
|
|
143
|
+
"content": {
|
|
144
|
+
"myInsertion": "Привет, меня зовут {{name}} и мне {{age}} лет!",
|
|
145
|
+
},
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
</Tab>
|
|
150
|
+
</Tabs>
|
|
97
151
|
|
|
98
152
|
## Использование вставочного контента с React Intlayer
|
|
99
153
|
|
|
@@ -41,6 +41,16 @@ history:
|
|
|
41
41
|
|
|
42
42
|
## Начало работы
|
|
43
43
|
|
|
44
|
+
<iframe
|
|
45
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-adonisjs-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
46
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
47
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
48
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
49
|
+
loading="lazy"
|
|
50
|
+
/>
|
|
51
|
+
|
|
52
|
+
See [Application Template](https://github.com/aymericzip/intlayer-adonisjs-template) on GitHub.
|
|
53
|
+
|
|
44
54
|
### Установка
|
|
45
55
|
|
|
46
56
|
Чтобы начать использовать `adonis-intlayer`, установите пакет с помощью npm:
|
|
@@ -47,6 +47,16 @@ history:
|
|
|
47
47
|
|
|
48
48
|
## Начало работы
|
|
49
49
|
|
|
50
|
+
<iframe
|
|
51
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-express-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
52
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
53
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
54
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
55
|
+
loading="lazy"
|
|
56
|
+
/>
|
|
57
|
+
|
|
58
|
+
See [Application Template](https://github.com/aymericzip/intlayer-express-template) on GitHub.
|
|
59
|
+
|
|
50
60
|
### Установка
|
|
51
61
|
|
|
52
62
|
Чтобы начать использовать `express-intlayer`, установите пакет с помощью npm:
|
|
@@ -40,6 +40,16 @@ history:
|
|
|
40
40
|
|
|
41
41
|
## Начало работы
|
|
42
42
|
|
|
43
|
+
<iframe
|
|
44
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-fastify-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
45
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
46
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
47
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
48
|
+
loading="lazy"
|
|
49
|
+
/>
|
|
50
|
+
|
|
51
|
+
See [Application Template](https://github.com/aymericzip/intlayer-fastify-template) on GitHub.
|
|
52
|
+
|
|
43
53
|
### Установка
|
|
44
54
|
|
|
45
55
|
Чтобы начать использовать `fastify-intlayer`, установите пакет с помощью npm:
|
|
@@ -44,6 +44,16 @@ history:
|
|
|
44
44
|
|
|
45
45
|
## Начало работы
|
|
46
46
|
|
|
47
|
+
<iframe
|
|
48
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-hono-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
49
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
50
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
51
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
52
|
+
loading="lazy"
|
|
53
|
+
/>
|
|
54
|
+
|
|
55
|
+
See [Application Template](https://github.com/aymericzip/intlayer-hono-template) on GitHub.
|
|
56
|
+
|
|
47
57
|
### Установка
|
|
48
58
|
|
|
49
59
|
Чтобы начать использовать `hono-intlayer`, установите пакет с помощью npm:
|
|
@@ -14,7 +14,7 @@ slugs:
|
|
|
14
14
|
- doc
|
|
15
15
|
- environment
|
|
16
16
|
- nest
|
|
17
|
-
applicationTemplate: https://github.com/
|
|
17
|
+
applicationTemplate: https://github.com/aymericzip/intlayer-nestjs-template
|
|
18
18
|
author: AydinTheFirst
|
|
19
19
|
history:
|
|
20
20
|
- version: 7.5.9
|
|
@@ -49,6 +49,16 @@ history:
|
|
|
49
49
|
|
|
50
50
|
## Начало работы
|
|
51
51
|
|
|
52
|
+
<iframe
|
|
53
|
+
src="https://stackblitz.com/github/aymericzip/intlayer-nestjs-template?embed=1&ctl=1&file=intlayer.config.ts"
|
|
54
|
+
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
55
|
+
title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
|
|
56
|
+
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
57
|
+
loading="lazy"
|
|
58
|
+
/>
|
|
59
|
+
|
|
60
|
+
See [Application Template](https://github.com/aymericzip/intlayer-nestjs-template) on GitHub.
|
|
61
|
+
|
|
52
62
|
### Создание нового проекта NestJS
|
|
53
63
|
|
|
54
64
|
```bash packageManager="npm"
|
|
@@ -46,8 +46,9 @@ HTML içeriğini `html` fonksiyonunu kullanarak veya basitçe bir string olarak
|
|
|
46
46
|
|
|
47
47
|
const htmlDictionary = {
|
|
48
48
|
key: "app",
|
|
49
|
+
contentAutoTransformation: true, // yapılandırma dosyasında ayarlanabilir
|
|
49
50
|
content: {
|
|
50
|
-
myHtmlContent:
|
|
51
|
+
myHtmlContent: html("<p>Merhaba <strong>Dünya</strong></p>"),
|
|
51
52
|
},
|
|
52
53
|
} satisfies Dictionary;
|
|
53
54
|
|
|
@@ -61,8 +62,9 @@ HTML içeriğini `html` fonksiyonunu kullanarak veya basitçe bir string olarak
|
|
|
61
62
|
```typescript fileName="htmlDictionary.content.ts"
|
|
62
63
|
export default {
|
|
63
64
|
key: "app",
|
|
65
|
+
contentAutoTransformation: true, // yapılandırma dosyasında ayarlanabilir
|
|
64
66
|
content: {
|
|
65
|
-
myHtmlContent:
|
|
67
|
+
myHtmlContent: "<p>Merhaba <strong>Dünya</strong></p>",
|
|
66
68
|
},
|
|
67
69
|
};
|
|
68
70
|
```
|