@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.
Files changed (123) hide show
  1. package/docs/ar/dictionary/html.md +4 -2
  2. package/docs/ar/dictionary/insertion.md +113 -59
  3. package/docs/ar/intlayer_with_adonisjs.md +10 -0
  4. package/docs/ar/intlayer_with_express.md +10 -0
  5. package/docs/ar/intlayer_with_fastify.md +10 -0
  6. package/docs/ar/intlayer_with_hono.md +10 -0
  7. package/docs/ar/intlayer_with_nestjs.md +11 -1
  8. package/docs/de/dictionary/html.md +4 -2
  9. package/docs/de/dictionary/insertion.md +119 -18
  10. package/docs/de/intlayer_with_adonisjs.md +10 -0
  11. package/docs/de/intlayer_with_express.md +10 -0
  12. package/docs/de/intlayer_with_fastify.md +10 -0
  13. package/docs/de/intlayer_with_hono.md +10 -0
  14. package/docs/de/intlayer_with_nestjs.md +11 -1
  15. package/docs/en/dictionary/html.md +3 -1
  16. package/docs/en/dictionary/insertion.md +119 -65
  17. package/docs/en/intlayer_with_adonisjs.md +10 -0
  18. package/docs/en/intlayer_with_express.md +10 -0
  19. package/docs/en/intlayer_with_fastify.md +10 -0
  20. package/docs/en/intlayer_with_hono.md +10 -0
  21. package/docs/en/intlayer_with_nestjs.md +1 -1
  22. package/docs/en-GB/dictionary/html.md +4 -2
  23. package/docs/en-GB/dictionary/insertion.md +119 -65
  24. package/docs/en-GB/intlayer_with_adonisjs.md +10 -0
  25. package/docs/en-GB/intlayer_with_express.md +10 -0
  26. package/docs/en-GB/intlayer_with_fastify.md +10 -0
  27. package/docs/en-GB/intlayer_with_hono.md +10 -0
  28. package/docs/en-GB/intlayer_with_nestjs.md +11 -1
  29. package/docs/es/dictionary/html.md +4 -2
  30. package/docs/es/dictionary/insertion.md +113 -59
  31. package/docs/es/intlayer_with_adonisjs.md +10 -0
  32. package/docs/es/intlayer_with_express.md +10 -0
  33. package/docs/es/intlayer_with_fastify.md +10 -0
  34. package/docs/es/intlayer_with_hono.md +10 -0
  35. package/docs/es/intlayer_with_nestjs.md +11 -1
  36. package/docs/fr/dictionary/html.md +4 -2
  37. package/docs/fr/dictionary/insertion.md +113 -59
  38. package/docs/fr/intlayer_with_adonisjs.md +10 -0
  39. package/docs/fr/intlayer_with_express.md +10 -0
  40. package/docs/fr/intlayer_with_fastify.md +10 -0
  41. package/docs/fr/intlayer_with_hono.md +10 -0
  42. package/docs/fr/intlayer_with_nestjs.md +11 -1
  43. package/docs/hi/dictionary/html.md +4 -2
  44. package/docs/hi/dictionary/insertion.md +119 -17
  45. package/docs/hi/intlayer_with_adonisjs.md +10 -0
  46. package/docs/hi/intlayer_with_express.md +10 -0
  47. package/docs/hi/intlayer_with_fastify.md +10 -0
  48. package/docs/hi/intlayer_with_hono.md +10 -0
  49. package/docs/hi/intlayer_with_nestjs.md +11 -1
  50. package/docs/id/dictionary/html.md +4 -2
  51. package/docs/id/dictionary/insertion.md +119 -17
  52. package/docs/id/intlayer_with_adonisjs.md +10 -0
  53. package/docs/id/intlayer_with_express.md +10 -0
  54. package/docs/id/intlayer_with_fastify.md +10 -0
  55. package/docs/id/intlayer_with_hono.md +10 -0
  56. package/docs/it/dictionary/html.md +4 -2
  57. package/docs/it/dictionary/insertion.md +113 -59
  58. package/docs/it/intlayer_with_adonisjs.md +10 -0
  59. package/docs/it/intlayer_with_express.md +10 -0
  60. package/docs/it/intlayer_with_fastify.md +10 -0
  61. package/docs/it/intlayer_with_hono.md +10 -0
  62. package/docs/it/intlayer_with_nestjs.md +11 -1
  63. package/docs/ja/dictionary/html.md +4 -2
  64. package/docs/ja/dictionary/insertion.md +119 -65
  65. package/docs/ja/intlayer_with_adonisjs.md +10 -0
  66. package/docs/ja/intlayer_with_express.md +10 -0
  67. package/docs/ja/intlayer_with_fastify.md +10 -0
  68. package/docs/ja/intlayer_with_hono.md +10 -0
  69. package/docs/ja/intlayer_with_nestjs.md +11 -1
  70. package/docs/ko/dictionary/html.md +4 -2
  71. package/docs/ko/dictionary/insertion.md +119 -65
  72. package/docs/ko/intlayer_with_adonisjs.md +10 -0
  73. package/docs/ko/intlayer_with_express.md +10 -0
  74. package/docs/ko/intlayer_with_fastify.md +10 -0
  75. package/docs/ko/intlayer_with_hono.md +10 -0
  76. package/docs/ko/intlayer_with_nestjs.md +11 -1
  77. package/docs/pl/dictionary/html.md +4 -2
  78. package/docs/pl/dictionary/insertion.md +113 -15
  79. package/docs/pl/intlayer_with_adonisjs.md +10 -0
  80. package/docs/pl/intlayer_with_express.md +10 -0
  81. package/docs/pl/intlayer_with_fastify.md +10 -0
  82. package/docs/pl/intlayer_with_hono.md +10 -0
  83. package/docs/pt/dictionary/html.md +4 -2
  84. package/docs/pt/dictionary/insertion.md +119 -18
  85. package/docs/pt/intlayer_with_adonisjs.md +10 -0
  86. package/docs/pt/intlayer_with_express.md +10 -0
  87. package/docs/pt/intlayer_with_fastify.md +10 -0
  88. package/docs/pt/intlayer_with_hono.md +10 -0
  89. package/docs/pt/intlayer_with_nestjs.md +11 -1
  90. package/docs/ru/dictionary/html.md +4 -2
  91. package/docs/ru/dictionary/insertion.md +113 -59
  92. package/docs/ru/intlayer_with_adonisjs.md +10 -0
  93. package/docs/ru/intlayer_with_express.md +10 -0
  94. package/docs/ru/intlayer_with_fastify.md +10 -0
  95. package/docs/ru/intlayer_with_hono.md +10 -0
  96. package/docs/ru/intlayer_with_nestjs.md +11 -1
  97. package/docs/tr/dictionary/html.md +4 -2
  98. package/docs/tr/dictionary/insertion.md +113 -59
  99. package/docs/tr/intlayer_with_adonisjs.md +10 -0
  100. package/docs/tr/intlayer_with_express.md +10 -0
  101. package/docs/tr/intlayer_with_fastify.md +10 -0
  102. package/docs/tr/intlayer_with_hono.md +10 -0
  103. package/docs/tr/intlayer_with_nestjs.md +11 -1
  104. package/docs/uk/dictionary/html.md +4 -2
  105. package/docs/uk/dictionary/insertion.md +113 -59
  106. package/docs/uk/intlayer_with_adonisjs.md +10 -0
  107. package/docs/uk/intlayer_with_express.md +10 -0
  108. package/docs/uk/intlayer_with_fastify.md +10 -0
  109. package/docs/uk/intlayer_with_hono.md +10 -0
  110. package/docs/vi/dictionary/html.md +4 -2
  111. package/docs/vi/dictionary/insertion.md +113 -14
  112. package/docs/vi/intlayer_with_adonisjs.md +10 -0
  113. package/docs/vi/intlayer_with_express.md +10 -0
  114. package/docs/vi/intlayer_with_fastify.md +10 -0
  115. package/docs/vi/intlayer_with_hono.md +10 -0
  116. package/docs/zh/dictionary/html.md +4 -2
  117. package/docs/zh/dictionary/insertion.md +117 -63
  118. package/docs/zh/intlayer_with_adonisjs.md +10 -0
  119. package/docs/zh/intlayer_with_express.md +10 -0
  120. package/docs/zh/intlayer_with_fastify.md +10 -0
  121. package/docs/zh/intlayer_with_hono.md +10 -0
  122. package/docs/zh/intlayer_with_nestjs.md +11 -1
  123. package/package.json +6 -6
@@ -35,65 +35,119 @@ Quando integrato con React Intlayer o Next Intlayer, puoi semplicemente fornire
35
35
 
36
36
  ## Configurare il Contenuto di Inserimento
37
37
 
38
- Per configurare il contenuto di inserimento nel tuo progetto Intlayer, crea un modulo di contenuto che includa le tue definizioni di inserimento. Di seguito sono riportati esempi in vari formati.
39
-
40
- ```typescript fileName="**/*.content.ts" contentDeclarationFormat="typescript"
41
- import { insert, type Dictionary } from "intlayer";
42
-
43
- const myInsertionContent = {
44
- key: "my_key",
45
- content: {
46
- myInsertion: insert("Ciao, mi chiamo {{name}} e ho {{age}} anni!"),
47
- myInsertion2: "Ciao, mi chiamo {{name}} e ho {{age}} anni!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
48
- },
49
- } satisfies Dictionary;
50
-
51
- export default myInsertionContent;
52
- ```
53
-
54
- ```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
55
- import { insert } from "intlayer";
56
-
57
- /** @type {import('intlayer').Dictionary} */
58
- const myInsertionContent = {
59
- key: "my_key",
60
- content: {
61
- myInsertion: insert("Ciao, mi chiamo {{name}} e ho {{age}} anni!"),
62
- myInsertion2: "Ciao, mi chiamo {{name}} e ho {{age}} anni!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
63
- },
64
- };
65
-
66
- export default myInsertionContent;
67
- ```
68
-
69
- ```javascript fileName="**/*.content.cjs" contentDeclarationFormat="commonjs"
70
- const { insert } = require("intlayer");
71
-
72
- /** @type {import('intlayer').Dictionary} */
73
- const myInsertionContent = {
74
- key: "my_key",
75
- content: {
76
- myInsertion: insert("Ciao, mi chiamo {{name}} e ho {{age}} anni!"),
77
- myInsertion2: "Ciao, mi chiamo {{name}} e ho {{age}} anni!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
78
- },
79
- };
80
-
81
- module.exports = myInsertionContent;
82
- ```
83
-
84
- ```json5 fileName="**/*.content.json" contentDeclarationFormat="json"
85
- {
86
- "$schema": "https://intlayer.org/schema.json",
87
- "key": "my_key",
88
- "content": {
89
- "myInsertion": {
90
- "nodeType": "insertion",
91
- "insertion": "Ciao, mi chiamo {{name}} e ho {{age}} anni!",
92
- },
93
- "myInsertion2": "Ciao, mi chiamo {{name}} e ho {{age}} anni!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
94
- },
95
- }
96
- ```
38
+ Per configurare il contenuto di inserimento nel tuo progetto Intlayer, crea un modulo di contenuto che includa le tue definizioni di inserimento.
39
+
40
+ <Tabs>
41
+ <Tab label="Avvolgimento manuale" value="manual-wrapping">
42
+ Usa la funzione `insert` per dichiarare esplicitamente il contenuto dell'inserimento.
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("Ciao, mi chiamo {{name}} e ho {{age}} anni!"),
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("Ciao, mi chiamo {{name}} e ho {{age}} anni!"),
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("Ciao, mi chiamo {{name}} e ho {{age}} anni!"),
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": "Ciao, mi chiamo {{name}} e ho {{age}} anni!",
93
+ },
94
+ },
95
+ }
96
+ ```
97
+
98
+ </Tab>
99
+ <Tab label="Rilevamento automatico" value="automatic-detection">
100
+ Se la stringa contiene indicatori di inserimento comuni (come `{{name}}`), Intlayer la trasformerà automaticamente.
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: "Ciao, mi chiamo {{name}} e ho {{age}} anni!",
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: "Ciao, mi chiamo {{name}} e ho {{age}} anni!",
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: "Ciao, mi chiamo {{name}} e ho {{age}} anni!",
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": "Ciao, mi chiamo {{name}} e ho {{age}} anni!",
145
+ },
146
+ }
147
+ ```
148
+
149
+ </Tab>
150
+ </Tabs>
97
151
 
98
152
  ## Utilizzo del contenuto di inserimento con React Intlayer
99
153
 
@@ -41,6 +41,16 @@ Internazionalizzando il backend, la tua applicazione non solo rispetta le differ
41
41
 
42
42
  ## Iniziare
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
  ### Installazione
45
55
 
46
56
  Per iniziare a usare `adonis-intlayer`, installa il pacchetto usando npm:
@@ -47,6 +47,16 @@ Internazionalizzando il backend, la tua applicazione non solo rispetta le differ
47
47
 
48
48
  ## Iniziare
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
  ### Installazione
51
61
 
52
62
  Per iniziare a utilizzare `express-intlayer`, installa il pacchetto utilizzando npm:
@@ -40,6 +40,16 @@ Internationalizzando il backend, la tua applicazione non solo rispetta le differ
40
40
 
41
41
  ## Per iniziare
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
  ### Installazione
44
54
 
45
55
  Per iniziare a utilizzare `fastify-intlayer`, installa il pacchetto usando npm:
@@ -44,6 +44,16 @@ Internazionalizzando il backend, la tua applicazione non solo rispetta le differ
44
44
 
45
45
  ## Iniziare
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
  ### Installazione
48
58
 
49
59
  Per iniziare a usare `hono-intlayer`, installa il pacchetto usando npm:
@@ -14,7 +14,7 @@ slugs:
14
14
  - doc
15
15
  - environment
16
16
  - nest
17
- applicationTemplate: https://github.com/AydinTheFirst/nestjs-intlayer
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 @@ Internazionalizzando il backend, la tua applicazione non solo rispetta le differ
49
49
 
50
50
  ## Iniziare
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
  ### Creare un nuovo progetto NestJS
53
63
 
54
64
  ```bash packageManager="npm"
@@ -44,8 +44,9 @@ HTML コンテンツは `html` 関数を使って宣言するか、単に文字
44
44
 
45
45
  const htmlDictionary = {
46
46
  key: "app",
47
+ contentAutoTransformation: true, // 設定ファイルで設定可能
47
48
  content: {
48
- myHtmlContent: html("<p>Hello <strong>World</strong></p>"),
49
+ myHtmlContent: html("<p>Hello <strong>World</strong></p>"),
49
50
  },
50
51
  } satisfies Dictionary;
51
52
 
@@ -59,8 +60,9 @@ HTML コンテンツは `html` 関数を使って宣言するか、単に文字
59
60
  ```typescript fileName="htmlDictionary.content.ts"
60
61
  export default {
61
62
  key: "app",
63
+ contentAutoTransformation: true, // 設定ファイルで設定可能
62
64
  content: {
63
- myHtmlContent: "<p>Hello <strong>World</strong></p>",
65
+ myHtmlContent: "<p>Hello <strong>World</strong></p>",
64
66
  },
65
67
  };
66
68
  ```
@@ -35,71 +35,125 @@ React IntlayerやNext Intlayerと統合すると、各プレースホルダー
35
35
 
36
36
  ## 挿入コンテンツの設定
37
37
 
38
- Intlayerプロジェクトで挿入コンテンツを設定するには、挿入定義を含むコンテンツモジュールを作成します。以下に様々な形式の例を示します。
39
-
40
- ```typescript fileName="**/*.content.ts" contentDeclarationFormat="typescript"
41
- import { insert, type Dictionary } from "intlayer";
42
-
43
- const myInsertionContent = {
44
- key: "my_key",
45
- content: {
46
- myInsertion: insert(
47
- "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!"
48
- ),
49
- myInsertion2: "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
50
- },
51
- } satisfies Dictionary;
52
-
53
- export default myInsertionContent;
54
- ```
55
-
56
- ```javascript fileName="**/*.content.mjs" contentDeclarationFormat="esm"
57
- import { insert } from "intlayer";
58
-
59
- /** @type {import('intlayer').Dictionary} */
60
- const myInsertionContent = {
61
- key: "my_key",
62
- content: {
63
- myInsertion: insert(
64
- "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!"
65
- ),
66
- myInsertion2: "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
67
- },
68
- };
69
-
70
- export default myInsertionContent;
71
- ```
72
-
73
- ```javascript fileName="**/*.content.cjs" contentDeclarationFormat="commonjs"
74
- const { insert } = require("intlayer");
75
-
76
- /** @type {import('intlayer').Dictionary} */
77
- const myInsertionContent = {
78
- key: "my_key",
79
- content: {
80
- myInsertion: insert(
81
- "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!"
82
- ),
83
- myInsertion2: "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
84
- },
85
- };
86
-
87
- module.exports = myInsertionContent;
88
- ```
89
-
90
- ```json5 fileName="**/*.content.json" contentDeclarationFormat="json"
91
- {
92
- "$schema": "https://intlayer.org/schema.json",
93
- "key": "my_key",
94
- "content": {
95
- "myInsertion": {
96
- "nodeType": "insertion",
97
- "insertion": "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!",
98
- },
99
- "myInsertion2": "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!", // Since intlayer v8, insertion function is not required anymore. The content will be automatically decorated.
100
- },
101
- }
102
- ```
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(
51
+ "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!"
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
+ "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!"
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
+ "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!"
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": "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!",
99
+ },
100
+ },
101
+ }
102
+ ```
103
+
104
+ </Tab>
105
+ <Tab label="自動検出" value="automatic-detection">
106
+ 文字列に一般的な挿入インジケーター(`{{name}}` など)が含まれている場合、Intlayer はそれを自動的に変換します。
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: "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!",
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: "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!",
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: "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!",
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": "こんにちは、私の名前は{{name}}で、年齢は{{age}}歳です!",
151
+ },
152
+ }
153
+ ```
154
+
155
+ </Tab>
156
+ </Tabs>
103
157
 
104
158
  ## React Intlayerでの挿入コンテンツの使用
105
159
 
@@ -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 を使用してパッケージをインストールします。
@@ -46,6 +46,16 @@ history:
46
46
 
47
47
  ## 始めるにあたって
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
  ### インストール
50
60
 
51
61
  `express-intlayer` を使用するには、npmを使用してパッケージをインストールします:
@@ -47,6 +47,16 @@ history:
47
47
 
48
48
  ## はじめに
49
49
 
50
+ <iframe
51
+ src="https://stackblitz.com/github/aymericzip/intlayer-fastify-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-fastify-template) on GitHub.
59
+
50
60
  ### インストール
51
61
 
52
62
  `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/AydinTheFirst/nestjs-intlayer
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"
@@ -44,8 +44,9 @@ HTML 콘텐츠는 `html` 함수를 사용하거나 단순 문자열로 선언할
44
44
 
45
45
  const htmlDictionary = {
46
46
  key: "app",
47
+ contentAutoTransformation: true, // 설정 파일에서 설정할 수 있음
47
48
  content: {
48
- myHtmlContent: html("<p>Hello <strong>World</strong></p>"),
49
+ myHtmlContent: html("<p>Hello <strong>World</strong></p>"),
49
50
  },
50
51
  } satisfies Dictionary;
51
52
 
@@ -59,8 +60,9 @@ HTML 콘텐츠는 `html` 함수를 사용하거나 단순 문자열로 선언할
59
60
  ```typescript fileName="htmlDictionary.content.ts"
60
61
  export default {
61
62
  key: "app",
63
+ contentAutoTransformation: true, // 설정 파일에서 설정할 수 있음
62
64
  content: {
63
- myHtmlContent: "<p>Hello <strong>World</strong></p>",
65
+ myHtmlContent: "<p>Hello <strong>World</strong></p>",
64
66
  },
65
67
  };
66
68
  ```