@intlayer/docs 5.5.8 → 5.5.10

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 (172) hide show
  1. package/ar/autoFill.md +1 -2
  2. package/ar/intlayer_with_create_react_app.md +1 -14
  3. package/ar/intlayer_with_nextjs_14.md +1 -14
  4. package/ar/intlayer_with_nextjs_15.md +1 -14
  5. package/ar/intlayer_with_nextjs_page_router.md +1 -13
  6. package/ar/intlayer_with_nuxt.md +792 -0
  7. package/ar/intlayer_with_react_native+expo.md +6 -3
  8. package/ar/intlayer_with_vite+preact.md +7 -18
  9. package/ar/intlayer_with_vite+react.md +7 -17
  10. package/ar/intlayer_with_vite+vue.md +25 -5
  11. package/ar/packages/nuxt-intlayer/index.md +29 -0
  12. package/ar/roadmap.md +11 -11
  13. package/de/autoFill.md +1 -2
  14. package/de/how_works_intlayer.md +1 -1
  15. package/de/intlayer_with_create_react_app.md +1 -14
  16. package/de/intlayer_with_nextjs_14.md +1 -14
  17. package/de/intlayer_with_nextjs_15.md +1 -14
  18. package/de/intlayer_with_nextjs_page_router.md +1 -13
  19. package/de/intlayer_with_nuxt.md +791 -0
  20. package/de/intlayer_with_react_native+expo.md +6 -3
  21. package/de/intlayer_with_vite+preact.md +7 -18
  22. package/de/intlayer_with_vite+react.md +7 -17
  23. package/de/intlayer_with_vite+vue.md +84 -62
  24. package/de/packages/nuxt-intlayer/index.md +29 -0
  25. package/de/roadmap.md +11 -11
  26. package/en/autoFill.md +1 -2
  27. package/en/how_works_intlayer.md +17 -3
  28. package/en/intlayer_with_angular.md +535 -6
  29. package/en/intlayer_with_create_react_app.md +1 -14
  30. package/en/intlayer_with_nextjs_14.md +193 -59
  31. package/en/intlayer_with_nextjs_15.md +192 -61
  32. package/en/intlayer_with_nextjs_page_router.md +396 -61
  33. package/en/intlayer_with_nuxt.md +737 -0
  34. package/en/intlayer_with_react_native+expo.md +6 -3
  35. package/en/intlayer_with_vite+preact.md +8 -27
  36. package/en/intlayer_with_vite+react.md +7 -17
  37. package/en/intlayer_with_vite+solid.md +6 -3
  38. package/en/intlayer_with_vite+svelte.md +6 -3
  39. package/en/intlayer_with_vite+vue.md +17 -6
  40. package/en/packages/nuxt-intlayer/index.md +31 -0
  41. package/en/roadmap.md +13 -13
  42. package/en/t.md +5 -5
  43. package/en-GB/how_works_intlayer.md +16 -4
  44. package/en-GB/intlayer_with_create_react_app.md +1 -14
  45. package/en-GB/intlayer_with_nextjs_14.md +1 -14
  46. package/en-GB/intlayer_with_nextjs_15.md +1 -14
  47. package/en-GB/intlayer_with_nextjs_page_router.md +1 -13
  48. package/en-GB/intlayer_with_nuxt.md +795 -0
  49. package/en-GB/intlayer_with_react_native+expo.md +6 -3
  50. package/en-GB/intlayer_with_vite+preact.md +7 -18
  51. package/en-GB/intlayer_with_vite+react.md +6 -9
  52. package/en-GB/intlayer_with_vite+vue.md +65 -59
  53. package/en-GB/packages/nuxt-intlayer/index.md +31 -0
  54. package/en-GB/roadmap.md +11 -11
  55. package/es/autoFill.md +1 -2
  56. package/es/how_works_intlayer.md +1 -1
  57. package/es/intlayer_with_create_react_app.md +1 -14
  58. package/es/intlayer_with_nextjs_14.md +1 -14
  59. package/es/intlayer_with_nextjs_15.md +1 -14
  60. package/es/intlayer_with_nextjs_page_router.md +1 -13
  61. package/es/intlayer_with_nuxt.md +731 -0
  62. package/es/intlayer_with_react_native+expo.md +6 -3
  63. package/es/intlayer_with_vite+preact.md +7 -18
  64. package/es/intlayer_with_vite+react.md +7 -17
  65. package/es/intlayer_with_vite+vue.md +64 -51
  66. package/es/packages/nuxt-intlayer/index.md +29 -0
  67. package/fr/autoFill.md +1 -2
  68. package/fr/how_works_intlayer.md +1 -1
  69. package/fr/intlayer_with_create_react_app.md +1 -14
  70. package/fr/intlayer_with_nextjs_14.md +1 -14
  71. package/fr/intlayer_with_nextjs_15.md +1 -14
  72. package/fr/intlayer_with_nextjs_page_router.md +1 -13
  73. package/fr/intlayer_with_nuxt.md +731 -0
  74. package/fr/intlayer_with_react_native+expo.md +6 -3
  75. package/fr/intlayer_with_vite+preact.md +7 -18
  76. package/fr/intlayer_with_vite+react.md +7 -17
  77. package/fr/intlayer_with_vite+vue.md +30 -15
  78. package/fr/packages/nuxt-intlayer/index.md +29 -0
  79. package/fr/roadmap.md +11 -11
  80. package/hi/autoFill.md +1 -2
  81. package/hi/how_works_intlayer.md +1 -1
  82. package/hi/intlayer_with_create_react_app.md +1 -14
  83. package/hi/intlayer_with_nextjs_14.md +1 -14
  84. package/hi/intlayer_with_nextjs_15.md +1 -14
  85. package/hi/intlayer_with_nextjs_page_router.md +1 -13
  86. package/hi/intlayer_with_nuxt.md +784 -0
  87. package/hi/intlayer_with_react_native+expo.md +6 -3
  88. package/hi/intlayer_with_vite+preact.md +7 -18
  89. package/hi/intlayer_with_vite+react.md +7 -17
  90. package/hi/intlayer_with_vite+vue.md +59 -47
  91. package/hi/packages/nuxt-intlayer/index.md +29 -0
  92. package/hi/roadmap.md +11 -11
  93. package/index.cjs +30 -0
  94. package/index.d.ts +2 -0
  95. package/it/autoFill.md +1 -2
  96. package/it/how_works_intlayer.md +1 -1
  97. package/it/intlayer_with_create_react_app.md +0 -6
  98. package/it/intlayer_with_nextjs_14.md +1 -14
  99. package/it/intlayer_with_nextjs_15.md +1 -14
  100. package/it/intlayer_with_nextjs_page_router.md +1 -13
  101. package/it/intlayer_with_nuxt.md +793 -0
  102. package/it/intlayer_with_react_native+expo.md +6 -3
  103. package/it/intlayer_with_vite+preact.md +7 -18
  104. package/it/intlayer_with_vite+react.md +7 -17
  105. package/it/intlayer_with_vite+vue.md +26 -17
  106. package/it/packages/nuxt-intlayer/index.md +29 -0
  107. package/it/roadmap.md +11 -11
  108. package/ja/autoFill.md +1 -2
  109. package/ja/how_works_intlayer.md +1 -1
  110. package/ja/intlayer_with_create_react_app.md +1 -14
  111. package/ja/intlayer_with_nextjs_14.md +1 -14
  112. package/ja/intlayer_with_nextjs_15.md +1 -14
  113. package/ja/intlayer_with_nextjs_page_router.md +1 -13
  114. package/ja/intlayer_with_nuxt.md +792 -0
  115. package/ja/intlayer_with_react_native+expo.md +6 -3
  116. package/ja/intlayer_with_vite+preact.md +7 -18
  117. package/ja/intlayer_with_vite+react.md +7 -17
  118. package/ja/intlayer_with_vite+vue.md +68 -63
  119. package/ja/packages/nuxt-intlayer/index.md +29 -0
  120. package/ja/roadmap.md +11 -11
  121. package/ko/autoFill.md +1 -2
  122. package/ko/how_works_intlayer.md +1 -1
  123. package/ko/intlayer_with_create_react_app.md +1 -14
  124. package/ko/intlayer_with_nextjs_14.md +1 -14
  125. package/ko/intlayer_with_nextjs_15.md +1 -14
  126. package/ko/intlayer_with_nextjs_page_router.md +1 -13
  127. package/ko/intlayer_with_nuxt.md +784 -0
  128. package/ko/intlayer_with_react_native+expo.md +6 -3
  129. package/ko/intlayer_with_vite+preact.md +7 -18
  130. package/ko/intlayer_with_vite+react.md +7 -17
  131. package/ko/intlayer_with_vite+vue.md +69 -59
  132. package/ko/packages/nuxt-intlayer/index.md +31 -0
  133. package/ko/roadmap.md +11 -11
  134. package/package.json +4 -4
  135. package/pt/autoFill.md +1 -2
  136. package/pt/how_works_intlayer.md +1 -1
  137. package/pt/intlayer_with_create_react_app.md +1 -14
  138. package/pt/intlayer_with_nextjs_14.md +1 -14
  139. package/pt/intlayer_with_nextjs_15.md +1 -14
  140. package/pt/intlayer_with_nextjs_page_router.md +1 -13
  141. package/pt/intlayer_with_nuxt.md +792 -0
  142. package/pt/intlayer_with_react_native+expo.md +6 -3
  143. package/pt/intlayer_with_vite+preact.md +7 -18
  144. package/pt/intlayer_with_vite+react.md +7 -17
  145. package/pt/intlayer_with_vite+vue.md +23 -19
  146. package/pt/packages/nuxt-intlayer/index.md +29 -0
  147. package/pt/roadmap.md +11 -11
  148. package/ru/autoFill.md +1 -2
  149. package/ru/how_works_intlayer.md +1 -1
  150. package/ru/intlayer_with_create_react_app.md +1 -14
  151. package/ru/intlayer_with_nextjs_14.md +1 -14
  152. package/ru/intlayer_with_nextjs_15.md +1 -14
  153. package/ru/intlayer_with_nextjs_page_router.md +1 -13
  154. package/ru/intlayer_with_nuxt.md +792 -0
  155. package/ru/intlayer_with_react_native+expo.md +6 -3
  156. package/ru/intlayer_with_vite+preact.md +7 -18
  157. package/ru/intlayer_with_vite+react.md +7 -17
  158. package/ru/intlayer_with_vite+vue.md +25 -17
  159. package/ru/packages/nuxt-intlayer/index.md +31 -0
  160. package/ru/roadmap.md +11 -11
  161. package/zh/autoFill.md +1 -2
  162. package/zh/intlayer_with_create_react_app.md +1 -14
  163. package/zh/intlayer_with_nextjs_14.md +1 -14
  164. package/zh/intlayer_with_nextjs_15.md +1 -14
  165. package/zh/intlayer_with_nextjs_page_router.md +1 -13
  166. package/zh/intlayer_with_nuxt.md +784 -0
  167. package/zh/intlayer_with_react_native+expo.md +6 -3
  168. package/zh/intlayer_with_vite+preact.md +7 -18
  169. package/zh/intlayer_with_vite+react.md +7 -17
  170. package/zh/intlayer_with_vite+vue.md +68 -57
  171. package/zh/packages/nuxt-intlayer/index.md +31 -0
  172. package/zh/roadmap.md +11 -11
@@ -0,0 +1,784 @@
1
+ # इंटलेयर और Nuxt के साथ अंतर्राष्ट्रीयकरण (i18n) शुरू करना
2
+
3
+ [एप्लिकेशन टेम्पलेट](https://github.com/aymericzip/intlayer-nuxt-template) को GitHub पर देखें।
4
+
5
+ ## इंटलेयर क्या है?
6
+
7
+ **इंटलेयर** एक अभिनव, ओपन-सोर्स अंतर्राष्ट्रीयकरण (i18n) लाइब्रेरी है जिसे आधुनिक वेब अनुप्रयोगों में बहुभाषी समर्थन को सरल बनाने के लिए डिज़ाइन किया गया है।
8
+
9
+ इंटलेयर के साथ, आप कर सकते हैं:
10
+
11
+ - **अनुवादों को आसानी से प्रबंधित करें** घटक स्तर पर घोषणात्मक शब्दकोशों का उपयोग करके।
12
+ - **मेटाडेटा, रूट्स और सामग्री को गतिशील रूप से स्थानीयकृत करें**।
13
+ - **टाइपस्क्रिप्ट समर्थन सुनिश्चित करें** स्वचालित रूप से उत्पन्न प्रकारों के साथ, ऑटोकंप्लीशन और त्रुटि पहचान में सुधार करते हुए।
14
+ - **उन्नत सुविधाओं का लाभ उठाएं**, जैसे गतिशील लोकेल पहचान और स्विचिंग।
15
+
16
+ ---
17
+
18
+ ## Nuxt एप्लिकेशन में इंटलेयर सेटअप करने के लिए चरण-दर-चरण गाइड
19
+
20
+ ### चरण 1: निर्भरताएँ स्थापित करें
21
+
22
+ npm का उपयोग करके आवश्यक पैकेज स्थापित करें:
23
+
24
+ ```bash packageManager="npm"
25
+ npm install intlayer vue-intlayer
26
+ npm install --save-dev nuxt-intlayer
27
+ ```
28
+
29
+ ```bash packageManager="pnpm"
30
+ pnpm add intlayer vue-intlayer
31
+ pnpm add --save-dev nuxt-intlayer
32
+ ```
33
+
34
+ ```bash packageManager="yarn"
35
+ yarn add intlayer vue-intlayer
36
+ yarn add --save-dev nuxt-intlayer
37
+ ```
38
+
39
+ - **intlayer**
40
+
41
+ यह मुख्य पैकेज है जो कॉन्फ़िगरेशन प्रबंधन, अनुवाद, [सामग्री घोषणा](https://github.com/aymericzip/intlayer/blob/main/docs/hi/dictionary/get_started.md), ट्रांसपिलेशन, और [CLI कमांड्स](https://github.com/aymericzip/intlayer/blob/main/docs/hi/intlayer_cli.md) के लिए अंतर्राष्ट्रीयकरण उपकरण प्रदान करता है।
42
+
43
+ - **vue-intlayer**
44
+ यह पैकेज Vue एप्लिकेशन के साथ इंटलेयर को एकीकृत करता है। यह Vue घटकों के लिए कॉम्पोज़ेबल्स प्रदान करता है।
45
+
46
+ - **nuxt-intlayer**
47
+ यह Nuxt मॉड्यूल है जो Nuxt अनुप्रयोगों के साथ इंटलेयर को एकीकृत करता है। यह स्वचालित सेटअप, लोकेल पहचान के लिए मिडलवेयर, कुकी प्रबंधन, और URL रीडायरेक्शन प्रदान करता है।
48
+
49
+ ### चरण 2: अपने प्रोजेक्ट का कॉन्फ़िगरेशन
50
+
51
+ अपने एप्लिकेशन की भाषाओं को कॉन्फ़िगर करने के लिए एक कॉन्फ़िग फ़ाइल बनाएँ:
52
+
53
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
54
+ import { Locales, type IntlayerConfig } from "intlayer";
55
+
56
+ const config: IntlayerConfig = {
57
+ internationalization: {
58
+ locales: [
59
+ Locales.ENGLISH,
60
+ Locales.FRENCH,
61
+ Locales.SPANISH,
62
+ // आपकी अन्य भाषाएँ
63
+ ],
64
+ defaultLocale: Locales.ENGLISH,
65
+ },
66
+ };
67
+
68
+ export default config;
69
+ ```
70
+
71
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
72
+ import { Locales } from "intlayer";
73
+
74
+ /** @type {import('intlayer').IntlayerConfig} */
75
+ const config = {
76
+ internationalization: {
77
+ locales: [
78
+ Locales.ENGLISH,
79
+ Locales.FRENCH,
80
+ Locales.SPANISH,
81
+ // आपकी अन्य भाषाएँ
82
+ ],
83
+ defaultLocale: Locales.ENGLISH,
84
+ },
85
+ };
86
+
87
+ export default config;
88
+ ```
89
+
90
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
91
+ const { Locales } = require("intlayer");
92
+
93
+ /** @type {import('intlayer').IntlayerConfig} */
94
+ const config = {
95
+ internationalization: {
96
+ locales: [
97
+ Locales.ENGLISH,
98
+ Locales.FRENCH,
99
+ Locales.SPANISH,
100
+ // आपकी अन्य भाषाएँ
101
+ ],
102
+ defaultLocale: Locales.ENGLISH,
103
+ },
104
+ };
105
+
106
+ module.exports = config;
107
+ ```
108
+
109
+ > इस कॉन्फ़िगरेशन फ़ाइल के माध्यम से, आप स्थानीयकृत URLs, मिडलवेयर रीडायरेक्शन, कुकी नाम, आपकी सामग्री घोषणाओं का स्थान और एक्सटेंशन, कंसोल में इंटलेयर लॉग्स को अक्षम करना, और अधिक सेट कर सकते हैं। उपलब्ध सभी पैरामीटरों की पूरी सूची के लिए [कॉन्फ़िगरेशन दस्तावेज़](https://github.com/aymericzip/intlayer/blob/main/docs/hi/configuration.md) देखें।
110
+
111
+ ### चरण 3: अपने Nuxt कॉन्फ़िगरेशन में इंटलेयर को एकीकृत करें
112
+
113
+ अपने Nuxt कॉन्फ़िगरेशन में इंटलेयर मॉड्यूल जोड़ें:
114
+
115
+ ```typescript fileName="nuxt.config.ts"
116
+ import { defineNuxtConfig } from "nuxt/config";
117
+
118
+ export default defineNuxtConfig({
119
+ // ... आपका मौजूदा Nuxt कॉन्फ़िगरेशन
120
+ modules: ["nuxt-intlayer"],
121
+ });
122
+ ```
123
+
124
+ > `nuxt-intlayer` मॉड्यूल स्वचालित रूप से Nuxt के साथ इंटलेयर के एकीकरण को संभालता है। यह सामग्री घोषणा निर्माण सेट करता है, विकास मोड में फ़ाइलों की निगरानी करता है, लोकेल पहचान के लिए मिडलवेयर प्रदान करता है, और स्थानीयकृत रूटिंग का प्रबंधन करता है।
125
+
126
+ ### चरण 4: अपनी सामग्री घोषित करें
127
+
128
+ अनुवादों को संग्रहीत करने के लिए अपनी सामग्री घोषणाएँ बनाएँ और प्रबंधित करें:
129
+
130
+ ```tsx fileName="components/helloWorld.content.ts" contentDeclarationFormat="typescript"
131
+ import { t, type Dictionary } from "intlayer";
132
+
133
+ const helloWorldContent = {
134
+ key: "helloworld",
135
+ content: {
136
+ count: t({
137
+ hi: "गिनती है ",
138
+ en: "count is ",
139
+ fr: "le compte est ",
140
+ es: "el recuento es ",
141
+ }),
142
+ edit: t({
143
+ hi: "<code>components/HelloWorld.vue</code> संपादित करें और HMR का परीक्षण करने के लिए सहेजें",
144
+ en: "Edit <code>components/HelloWorld.vue</code> and save to test HMR",
145
+ fr: "Éditez <code>components/HelloWorld.vue</code> et enregistrez pour tester HMR",
146
+ es: "Edita <code>components/HelloWorld.vue</code> y guarda para probar HMR",
147
+ }),
148
+ checkOut: t({
149
+ hi: "जाँच करें ",
150
+ en: "Check out ",
151
+ fr: "Vérifiez ",
152
+ es: "Compruebe ",
153
+ }),
154
+ nuxtIntlayer: t({
155
+ hi: "Nuxt Intlayer दस्तावेज़ीकरण",
156
+ en: "Nuxt Intlayer documentation",
157
+ fr: "Documentation de Nuxt Intlayer",
158
+ es: "Documentación de Nuxt Intlayer",
159
+ }),
160
+ learnMore: t({
161
+ hi: "Nuxt के बारे में और जानें ",
162
+ en: "Learn more about Nuxt in the ",
163
+ fr: "En savoir plus sur Nuxt dans la ",
164
+ es: "Aprenda más sobre Nuxt en la ",
165
+ }),
166
+ nuxtDocs: t({
167
+ hi: "Nuxt दस्तावेज़ीकरण",
168
+ en: "Nuxt Documentation",
169
+ fr: "Documentation Nuxt",
170
+ es: "Documentación de Nuxt",
171
+ }),
172
+ readTheDocs: t({
173
+ hi: "अधिक जानने के लिए Nuxt लोगो पर क्लिक करें",
174
+ en: "Click on the Nuxt logo to learn more",
175
+ fr: "Cliquez sur le logo Nuxt pour en savoir plus",
176
+ es: "Haga clic en el logotipo de Nuxt para obtener más información",
177
+ }),
178
+ },
179
+ } satisfies Dictionary;
180
+
181
+ export default helloWorldContent;
182
+ ```
183
+
184
+ ```javascript fileName="components/helloWorld.content.mjs" contentDeclarationFormat="esm"
185
+ import { t } from "intlayer";
186
+
187
+ /** @type {import('intlayer').Dictionary} */
188
+ const helloWorldContent = {
189
+ key: "helloworld",
190
+ content: {
191
+ count: t({
192
+ hi: "गिनती है ",
193
+ en: "count is ",
194
+ fr: "le compte est ",
195
+ es: "el recuento es ",
196
+ }),
197
+ edit: t({
198
+ hi: "<code>components/HelloWorld.vue</code> संपादित करें और HMR का परीक्षण करने के लिए सहेजें",
199
+ en: "Edit <code>components/HelloWorld.vue</code> and save to test HMR",
200
+ fr: "Éditez <code>components/HelloWorld.vue</code> et enregistrez pour tester HMR",
201
+ es: "Edita <code>components/HelloWorld.vue</code> y guarda para probar HMR",
202
+ }),
203
+ checkOut: t({
204
+ hi: "जाँच करें ",
205
+ en: "Check out ",
206
+ fr: "Vérifiez ",
207
+ es: "Compruebe ",
208
+ }),
209
+ nuxtIntlayer: t({
210
+ hi: "Nuxt Intlayer दस्तावेज़ीकरण",
211
+ en: "Nuxt Intlayer documentation",
212
+ fr: "Documentation de Nuxt Intlayer",
213
+ es: "Documentación de Nuxt Intlayer",
214
+ }),
215
+ learnMore: t({
216
+ hi: "Nuxt के बारे में और जानें ",
217
+ en: "Learn more about Nuxt in the ",
218
+ fr: "En savoir plus sur Nuxt dans la ",
219
+ es: "Aprenda más sobre Nuxt en la ",
220
+ }),
221
+ nuxtDocs: t({
222
+ hi: "Nuxt दस्तावेज़ीकरण",
223
+ en: "Nuxt Documentation",
224
+ fr: "Documentation Nuxt",
225
+ es: "Documentación de Nuxt",
226
+ }),
227
+ readTheDocs: t({
228
+ hi: "अधिक जानने के लिए Nuxt लोगो पर क्लिक करें",
229
+ en: "Click on the Nuxt logo to learn more",
230
+ fr: "Cliquez sur le logo Nuxt pour en savoir plus",
231
+ es: "Haga clic en el logotipo de Nuxt para obtener más información",
232
+ }),
233
+ },
234
+ };
235
+
236
+ export default helloWorldContent;
237
+ ```
238
+
239
+ ```javascript fileName="components/helloWorld.content.cjs" contentDeclarationFormat="commonjs"
240
+ const { t } = require("intlayer");
241
+
242
+ /** @type {import('intlayer').Dictionary} */
243
+ const helloWorldContent = {
244
+ key: "helloworld",
245
+ content: {
246
+ count: t({
247
+ hi: "गिनती है ",
248
+ en: "count is ",
249
+ fr: "le compte est ",
250
+ es: "el recuento es ",
251
+ }),
252
+ edit: t({
253
+ hi: "<code>components/HelloWorld.vue</code> संपादित करें और HMR का परीक्षण करने के लिए सहेजें",
254
+ en: "Edit <code>components/HelloWorld.vue</code> and save to test HMR",
255
+ fr: "Éditez <code>components/HelloWorld.vue</code> et enregistrez pour tester HMR",
256
+ es: "Edita <code>components/HelloWorld.vue</code> y guarda para probar HMR",
257
+ }),
258
+ checkOut: t({
259
+ hi: "जाँच करें ",
260
+ en: "Check out ",
261
+ fr: "Vérifiez ",
262
+ es: "Compruebe ",
263
+ }),
264
+ nuxtIntlayer: t({
265
+ hi: "Nuxt Intlayer दस्तावेज़ीकरण",
266
+ en: "Nuxt Intlayer documentation",
267
+ fr: "Documentation de Nuxt Intlayer",
268
+ es: "Documentación de Nuxt Intlayer",
269
+ }),
270
+ learnMore: t({
271
+ hi: "Nuxt के बारे में और जानें ",
272
+ en: "Learn more about Nuxt in the ",
273
+ fr: "En savoir plus sur Nuxt dans la ",
274
+ es: "Aprenda más sobre Nuxt en la ",
275
+ }),
276
+ nuxtDocs: t({
277
+ hi: "Nuxt दस्तावेज़ीकरण",
278
+ en: "Nuxt Documentation",
279
+ fr: "Documentation Nuxt",
280
+ es: "Documentación de Nuxt",
281
+ }),
282
+ readTheDocs: t({
283
+ hi: "अधिक जानने के लिए Nuxt लोगो पर क्लिक करें",
284
+ en: "Click on the Nuxt logo to learn more",
285
+ fr: "Cliquez sur le logo Nuxt pour en savoir plus",
286
+ es: "Haga clic en el logotipo de Nuxt para obtener más información",
287
+ }),
288
+ },
289
+ };
290
+
291
+ module.exports = helloWorldContent;
292
+ ```
293
+
294
+ ```json fileName="components/helloWorld.content.json" contentDeclarationFormat="json"
295
+ {
296
+ "$schema": "https://intlayer.org/schema.json",
297
+ "key": "helloworld",
298
+ "content": {
299
+ "count": {
300
+ "nodeType": "translation",
301
+ "translation": {
302
+ "hi": "गणना है ",
303
+ "en": "count is ",
304
+ "fr": "le compte est ",
305
+ "es": "el recuento es "
306
+ }
307
+ },
308
+ "edit": {
309
+ "nodeType": "translation",
310
+ "translation": {
311
+ "hi": "संपादित करें <code>components/HelloWorld.vue</code> और HMR का परीक्षण करने के लिए सहेजें",
312
+ "en": "Edit <code>components/HelloWorld.vue</code> and save to test HMR",
313
+ "fr": "Éditez <code>components/HelloWorld.vue</code> et enregistrez pour tester HMR",
314
+ "es": "Edita <code>components/HelloWorld.vue</code> y guarda para probar HMR"
315
+ }
316
+ },
317
+ "checkOut": {
318
+ "nodeType": "translation",
319
+ "translation": {
320
+ "hi": "जांचें ",
321
+ "en": "Check out ",
322
+ "fr": "Vérifiez ",
323
+ "es": "Compruebe "
324
+ }
325
+ },
326
+ "nuxtIntlayer": {
327
+ "nodeType": "translation",
328
+ "translation": {
329
+ "hi": "Nuxt Intlayer प्रलेखन",
330
+ "en": "Nuxt Intlayer documentation",
331
+ "fr": "Documentation de Nuxt Intlayer",
332
+ "es": "Documentación de Nuxt Intlayer"
333
+ }
334
+ },
335
+ "learnMore": {
336
+ "nodeType": "translation",
337
+ "translation": {
338
+ "hi": "Nuxt के बारे में और जानें ",
339
+ "en": "Learn more about Nuxt in the ",
340
+ "fr": "En savoir plus sur Nuxt dans la ",
341
+ "es": "Aprenda más sobre Nuxt en la "
342
+ }
343
+ },
344
+ "nuxtDocs": {
345
+ "nodeType": "translation",
346
+ "translation": {
347
+ "hi": "Nuxt प्रलेखन",
348
+ "en": "Nuxt Documentation",
349
+ "fr": "Documentation Nuxt",
350
+ "es": "Documentación de Nuxt"
351
+ }
352
+ },
353
+ "readTheDocs": {
354
+ "nodeType": "translation",
355
+ "translation": {
356
+ "hi": "अधिक जानने के लिए Nuxt लोगो पर क्लिक करें",
357
+ "en": "Click on the Nuxt logo to learn more",
358
+ "fr": "Cliquez sur le logo Nuxt pour en savoir plus",
359
+ "es": "Haga clic en el logotipo de Nuxt para obtener más información"
360
+ }
361
+ }
362
+ }
363
+ }
364
+ ```
365
+
366
+ > आपकी सामग्री घोषणाएँ आपके एप्लिकेशन में कहीं भी परिभाषित की जा सकती हैं, जब तक कि वे `contentDir` निर्देशिका (डिफ़ॉल्ट रूप से, `./src`) में शामिल हों। और सामग्री घोषणा फ़ाइल एक्सटेंशन से मेल खाती हैं (डिफ़ॉल्ट रूप से, `.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`)।
367
+
368
+ > अधिक विवरण के लिए, [सामग्री घोषणा प्रलेखन](https://github.com/aymericzip/intlayer/blob/main/docs/hi/dictionary/get_started.md) देखें।
369
+
370
+ ### चरण 5: अपने कोड में Intlayer का उपयोग करें
371
+
372
+ अपने Nuxt एप्लिकेशन में `useIntlayer` कॉम्पोज़ेबल का उपयोग करके अपनी सामग्री डिक्शनरीज़ तक पहुंचें:
373
+
374
+ ```vue fileName="components/HelloWorld.vue"
375
+ <script setup lang="ts">
376
+ import { ref } from "vue";
377
+ import { useIntlayer } from "vue-intlayer";
378
+
379
+ defineProps({
380
+ msg: String,
381
+ });
382
+
383
+ const {
384
+ count,
385
+ edit,
386
+ checkOut,
387
+ nuxtIntlayer,
388
+ learnMore,
389
+ nuxtDocs,
390
+ readTheDocs,
391
+ } = useIntlayer("helloworld");
392
+ const countRef = ref(0);
393
+ </script>
394
+
395
+ <template>
396
+ <h1>{{ msg }}</h1>
397
+
398
+ <div class="card">
399
+ <button type="button" @click="countRef++">
400
+ <count />
401
+ {{ countRef }}
402
+ </button>
403
+ <p v-html="edit"></p>
404
+ </div>
405
+
406
+ <p>
407
+ <checkOut />
408
+ <a href="https://nuxt.com/docs/getting-started/introduction" target="_blank"
409
+ >Nuxt</a
410
+ >, <nuxtIntlayer />
411
+ </p>
412
+ <p>
413
+ <learnMore />
414
+ <a href="https://nuxt.com" target="_blank"><nuxtDocs /></a>.
415
+ </p>
416
+ <p class="read-the-docs"><readTheDocs /></p>
417
+ <p class="read-the-docs">{{ readTheDocs }}</p>
418
+ </template>
419
+ ```
420
+
421
+ #### Intlayer में सामग्री तक पहुंचना
422
+
423
+ Intlayer आपकी सामग्री तक पहुंचने के लिए दो API प्रदान करता है:
424
+
425
+ - **कंपोनेंट-आधारित सिंटैक्स** (अनुशंसित):
426
+ सामग्री को Intlayer नोड के रूप में प्रस्तुत करने के लिए `<myContent />` सिंटैक्स का उपयोग करें। यह [विज़ुअल एडिटर](https://github.com/aymericzip/intlayer/blob/main/docs/hi/intlayer_visual_editor.md) और [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/hi/intlayer_CMS.md) के साथ सहजता से एकीकृत होता है।
427
+
428
+ - **स्ट्रिंग-आधारित सिंटैक्स**:
429
+ सामग्री को सादे पाठ के रूप में प्रस्तुत करने के लिए `{{ myContent }}` का उपयोग करें, बिना किसी इंटरैक्टिविटी के।
430
+
431
+ ### (वैकल्पिक) चरण 6: अपनी सामग्री की भाषा बदलें
432
+
433
+ अपनी सामग्री की भाषा बदलने के लिए, आप `useLocale` कॉम्पोज़ेबल द्वारा प्रदान किए गए `setLocale` फ़ंक्शन का उपयोग कर सकते हैं। यह फ़ंक्शन एप्लिकेशन की लोकेल सेट करने और सामग्री को तदनुसार अपडेट करने की अनुमति देता है।
434
+
435
+ भाषाओं के बीच स्विच करने के लिए एक कंपोनेंट बनाएं:
436
+
437
+ ```vue fileName="components/LocaleSwitcher.vue"
438
+ <template>
439
+ <div class="locale-switcher">
440
+ <select v-model="selectedLocale" @change="changeLocale">
441
+ <option v-for="loc in availableLocales" :key="loc" :value="loc">
442
+ {{ getLocaleName(loc) }}
443
+ </option>
444
+ </select>
445
+ </div>
446
+ </template>
447
+
448
+ <script setup lang="ts">
449
+ import { ref, watch } from "vue";
450
+ import { getLocaleName } from "intlayer";
451
+ import { useLocale } from "vue-intlayer";
452
+
453
+ // लोकेल जानकारी और setLocale फ़ंक्शन प्राप्त करें
454
+ const { locale, availableLocales, setLocale } = useLocale();
455
+
456
+ // चयनित लोकेल को ट्रैक करने के लिए एक ref
457
+ const selectedLocale = ref(locale.value);
458
+
459
+ // चयन बदलने पर लोकेल अपडेट करें
460
+ const changeLocale = () => setLocale(selectedLocale.value);
461
+
462
+ // चयनित लोकेल को वैश्विक लोकेल के साथ सिंक में रखें
463
+ watch(
464
+ () => locale.value,
465
+ (newLocale) => {
466
+ selectedLocale.value = newLocale;
467
+ }
468
+ );
469
+ </script>
470
+ </template>
471
+
472
+ <style scoped>
473
+ .locale-switcher {
474
+ margin: 1rem 0;
475
+ }
476
+
477
+ select {
478
+ padding: 0.5rem;
479
+ border-radius: 0.25rem;
480
+ border: 1px solid #ccc;
481
+ }
482
+ </style>
483
+ ```
484
+
485
+ फिर, इस कंपोनेंट का उपयोग अपने पेज या लेआउट में करें:
486
+
487
+ ```vue fileName="app.vue"
488
+ <script setup lang="ts">
489
+ import { useIntlayer } from "vue-intlayer";
490
+ import LocaleSwitcher from "~/components/LocaleSwitcher.vue";
491
+
492
+ const content = useIntlayer("app"); // संबंधित intlayer घोषणा फ़ाइल बनाएं
493
+ </script>
494
+
495
+ <template>
496
+ <div>
497
+ <header>
498
+ <LocaleSwitcher />
499
+ </header>
500
+ <main>
501
+ <NuxtPage />
502
+ </main>
503
+ </div>
504
+ </template>
505
+ ```
506
+
507
+ ### (वैकल्पिक) चरण 7: अपने एप्लिकेशन में स्थानीयकृत रूटिंग जोड़ें
508
+
509
+ Nuxt स्वचालित रूप से `nuxt-intlayer` मॉड्यूल का उपयोग करते समय स्थानीयकृत रूटिंग को संभालता है। यह आपके पेज निर्देशिका संरचना के आधार पर प्रत्येक भाषा के लिए स्वचालित रूप से रूट बनाता है।
510
+
511
+ उदाहरण:
512
+
513
+ ```plaintext
514
+ pages/
515
+ ├── index.vue → /, /hi, /es
516
+ ├── about.vue → /about, /hi/about, /es/about
517
+ └── contact/
518
+ └── index.vue → /contact, /hi/contact, /es/contact
519
+ ```
520
+
521
+ स्थानीयकृत पेज बनाने के लिए, बस अपने Vue फाइलों को `pages/` निर्देशिका में बनाएं:
522
+
523
+ ```vue fileName="pages/about.vue"
524
+ <script setup lang="ts">
525
+ import { useIntlayer } from "vue-intlayer";
526
+
527
+ const content = useIntlayer("about");
528
+ </script>
529
+
530
+ <template>
531
+ <div>
532
+ <h1>{{ content.title }}</h1>
533
+ <p>{{ content.description }}</p>
534
+ </div>
535
+ </template>
536
+ ```
537
+
538
+ `nuxt-intlayer` मॉड्यूल स्वचालित रूप से निम्नलिखित करेगा:
539
+
540
+ - उपयोगकर्ता की पसंदीदा लोकेल का पता लगाएं
541
+ - URL के माध्यम से लोकेल स्विचिंग को संभालें
542
+ - उचित `<html lang="">` विशेषता सेट करें
543
+ - लोकेल कुकीज़ प्रबंधित करें
544
+ - उपयोगकर्ताओं को उपयुक्त स्थानीयकृत URL पर रीडायरेक्ट करें
545
+
546
+ ### (वैकल्पिक) चरण 8: एक स्थानीयकृत लिंक कंपोनेंट बनाना
547
+
548
+ यह सुनिश्चित करने के लिए कि आपके एप्लिकेशन का नेविगेशन वर्तमान लोकेल का सम्मान करता है, आप एक कस्टम `LocalizedLink` कंपोनेंट बना सकते हैं। यह कंपोनेंट स्वचालित रूप से आंतरिक URL को वर्तमान भाषा के साथ प्रीफिक्स करता है।
549
+
550
+ ```vue fileName="components/LocalizedLink.vue"
551
+ <template>
552
+ <NuxtLink :to="localizedHref" v-bind="$attrs">
553
+ <slot />
554
+ </NuxtLink>
555
+ </template>
556
+
557
+ <script setup lang="ts">
558
+ import { computed } from "vue";
559
+ import { getLocalizedUrl } from "intlayer";
560
+ import { useLocale } from "vue-intlayer";
561
+
562
+ const props = defineProps({
563
+ to: {
564
+ type: String,
565
+ required: true,
566
+ },
567
+ });
568
+
569
+ const { locale } = useLocale();
570
+
571
+ // जांचें कि लिंक बाहरी है या नहीं
572
+ const isExternalLink = computed(() => /^https?:\/\//.test(props.to || ""));
573
+
574
+ // आंतरिक लिंक के लिए एक स्थानीयकृत href बनाएं
575
+ const localizedHref = computed(() =>
576
+ isExternalLink.value ? props.to : getLocalizedUrl(props.to, locale.value)
577
+ );
578
+ </script>
579
+ ```
580
+
581
+ फिर इस कंपोनेंट का उपयोग अपने एप्लिकेशन में करें:
582
+
583
+ ```vue fileName="pages/index.vue"
584
+ <template>
585
+ <div>
586
+ <LocalizedLink to="/about">
587
+ {{ content.aboutLink }}
588
+ </LocalizedLink>
589
+
590
+ <LocalizedLink to="/hi/contact">
591
+ {{ content.contactLink }}
592
+ </LocalizedLink>
593
+ </div>
594
+ </template>
595
+
596
+ <script setup lang="ts">
597
+ import { useIntlayer } from "vue-intlayer";
598
+ import LocalizedLink from "~/components/LocalizedLink.vue";
599
+
600
+ const content = useIntlayer("home");
601
+ </script>
602
+ ```
603
+
604
+ ### (वैकल्पिक) चरण 9: मेटाडेटा और SEO को संभालें
605
+
606
+ Nuxt उत्कृष्ट SEO क्षमताएँ प्रदान करता है। आप Intlayer का उपयोग करके स्थानीयकृत मेटाडेटा को संभाल सकते हैं:
607
+
608
+ ```vue fileName="pages/about.vue"
609
+ <script setup lang="ts">
610
+ import { useSeoMeta } from "nuxt/app";
611
+ import { getIntlayer } from "intlayer";
612
+ import { useLocale } from "vue-intlayer";
613
+
614
+ const { locale } = useLocale();
615
+ const content = getIntlayer("about-meta", locale.value);
616
+
617
+ useSeoMeta({
618
+ title: content.title,
619
+ description: content.description,
620
+ });
621
+ </script>
622
+
623
+ <template>
624
+ <div>
625
+ <h1>{{ content.pageTitle }}</h1>
626
+ <p>{{ content.pageContent }}</p>
627
+ </div>
628
+ </template>
629
+ ```
630
+
631
+ संबंधित सामग्री घोषणा बनाएँ:
632
+
633
+ ```typescript fileName="pages/about-meta.content.ts" contentDeclarationFormat="typescript"
634
+ import { t, type Dictionary } from "intlayer";
635
+ import type { useSeoMeta } from "nuxt/app";
636
+
637
+ const aboutMetaContent = {
638
+ key: "about-meta",
639
+ content: {
640
+ title: t({
641
+ hi: "हमारे बारे में - मेरी कंपनी",
642
+ en: "About Us - My Company",
643
+ fr: "À Propos - Ma Société",
644
+ es: "Acerca de Nosotros - Mi Empresa",
645
+ }),
646
+ description: t({
647
+ hi: "हमारी कंपनी और हमारे मिशन के बारे में अधिक जानें",
648
+ en: "Learn more about our company and our mission",
649
+ fr: "En savoir plus sur notre société et notre mission",
650
+ es: "Conozca más sobre nuestra empresa y nuestra misión",
651
+ }),
652
+ },
653
+ } satisfies Dictionary<Parameters<typeof useSeoMeta>[0]>;
654
+
655
+ export default aboutMetaContent;
656
+ ```
657
+
658
+ ```typescript fileName="pages/about-meta.content.mjs" contentDeclarationFormat="esm"
659
+ import { t } from "intlayer";
660
+
661
+ /** @type {import('intlayer').Dictionary} */
662
+ const aboutMetaContent = {
663
+ key: "about-meta",
664
+ content: {
665
+ title: t({
666
+ hi: "हमारे बारे में - मेरी कंपनी",
667
+ en: "About Us - My Company",
668
+ fr: "À Propos - Ma Société",
669
+ es: "Acerca de Nosotros - Mi Empresa",
670
+ }),
671
+ description: t({
672
+ hi: "हमारी कंपनी और हमारे मिशन के बारे में अधिक जानें",
673
+ en: "Learn more about our company and our mission",
674
+ fr: "En savoir plus sur notre société et notre mission",
675
+ es: "Conozca más sobre nuestra empresa y nuestra misión",
676
+ }),
677
+ },
678
+ };
679
+
680
+ export default aboutMetaContent;
681
+ ```
682
+
683
+ ```typescript fileName="pages/about-meta.content.js" contentDeclarationFormat="cjs"
684
+ const { t } = require("intlayer");
685
+
686
+ /** @type {import('intlayer').Dictionary} */
687
+ const aboutMetaContent = {
688
+ key: "about-meta",
689
+ content: {
690
+ title: t({
691
+ hi: "हमारे बारे में - मेरी कंपनी",
692
+ en: "About Us - My Company",
693
+ fr: "À Propos - Ma Société",
694
+ es: "Acerca de Nosotros - Mi Empresa",
695
+ }),
696
+ description: t({
697
+ hi: "हमारी कंपनी और हमारे मिशन के बारे में अधिक जानें",
698
+ en: "Learn more about our company and our mission",
699
+ fr: "En savoir plus sur notre société et notre mission",
700
+ es: "Conozca más sobre nuestra empresa y nuestra misión",
701
+ }),
702
+ },
703
+ };
704
+
705
+ module.exports = aboutMetaContent;
706
+ ```
707
+
708
+ ```json fileName="pages/about-meta.content.json" contentDeclarationFormat="json"
709
+ {
710
+ "key": "about-meta",
711
+ "content": {
712
+ "title": {
713
+ "nodeType": "translation",
714
+ "translations": {
715
+ "hi": "हमारे बारे में - मेरी कंपनी",
716
+ "en": "About Us - My Company",
717
+ "fr": "À Propos - Ma Société",
718
+ "es": "Acerca de Nosotros - Mi Empresa"
719
+ }
720
+ },
721
+ "description": {
722
+ "nodeType": "translation",
723
+ "translations": {
724
+ "hi": "हमारी कंपनी और हमारे मिशन के बारे में अधिक जानें",
725
+ "en": "Learn more about our company and our mission",
726
+ "fr": "En savoir plus sur notre société et notre mission",
727
+ "es": "Conozca más sobre nuestra empresa y nuestra misión"
728
+ }
729
+ }
730
+ }
731
+ }
732
+ ```
733
+
734
+ ### टाइपस्क्रिप्ट कॉन्फ़िगर करें
735
+
736
+ Intlayer टाइपस्क्रिप्ट के लाभ प्राप्त करने और आपके कोडबेस को मजबूत बनाने के लिए मॉड्यूल वृद्धि का उपयोग करता है।
737
+
738
+ ![alt text](https://github.com/aymericzip/intlayer/blob/main/docs/assets/autocompletion.png)
739
+
740
+ ![alt text](https://github.com/aymericzip/intlayer/blob/main/docs/assets/translation_error.png)
741
+
742
+ सुनिश्चित करें कि आपकी टाइपस्क्रिप्ट कॉन्फ़िगरेशन में स्वचालित रूप से उत्पन्न प्रकार शामिल हैं।
743
+
744
+ ```json5 fileName="tsconfig.json"
745
+ {
746
+ // ... आपकी मौजूदा टाइपस्क्रिप्ट कॉन्फ़िगरेशन
747
+ "include": [
748
+ // ... आपकी मौजूदा टाइपस्क्रिप्ट कॉन्फ़िगरेशन
749
+ ".intlayer/**/*.ts", // स्वचालित रूप से उत्पन्न प्रकार शामिल करें
750
+ ],
751
+ }
752
+ ```
753
+
754
+ ### गिट कॉन्फ़िगरेशन
755
+
756
+ Intlayer द्वारा उत्पन्न फ़ाइलों को अनदेखा करना अनुशंसित है। यह आपको उन्हें अपने गिट रिपॉजिटरी में कमिट करने से बचने की अनुमति देता है।
757
+
758
+ इसके लिए, आप अपनी `.gitignore` फ़ाइल में निम्न निर्देश जोड़ सकते हैं:
759
+
760
+ ```plaintext fileName=".gitignore"
761
+ # Intlayer द्वारा उत्पन्न फ़ाइलों को अनदेखा करें
762
+ .intlayer
763
+ ```
764
+
765
+ ### VS कोड एक्सटेंशन
766
+
767
+ Intlayer के साथ अपने विकास अनुभव को बेहतर बनाने के लिए, आप आधिकारिक **Intlayer VS कोड एक्सटेंशन** इंस्टॉल कर सकते हैं।
768
+
769
+ [VS कोड मार्केटप्लेस से इंस्टॉल करें](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
770
+
771
+ यह एक्सटेंशन प्रदान करता है:
772
+
773
+ - अनुवाद कुंजियों के लिए **ऑटोकम्प्लीशन**।
774
+ - गायब अनुवादों के लिए **रीयल-टाइम त्रुटि पहचान**।
775
+ - अनुवादित सामग्री के **इनलाइन पूर्वावलोकन**।
776
+ - अनुवादों को आसानी से बनाने और अपडेट करने के लिए **त्वरित क्रियाएँ**।
777
+
778
+ एक्सटेंशन का उपयोग करने के तरीके पर अधिक जानकारी के लिए, [Intlayer VS कोड एक्सटेंशन दस्तावेज़](https://intlayer.org/doc/vs-code-extension) देखें।
779
+
780
+ ---
781
+
782
+ ### आगे बढ़ें
783
+
784
+ ## आगे बढ़ने के लिए, आप [विज़ुअल एडिटर](https://github.com/aymericzip/intlayer/blob/main/docs/hi/intlayer_visual_editor.md) को लागू कर सकते हैं या [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/hi/intlayer_CMS.md) का उपयोग करके अपनी सामग्री को बाहरी बना सकते हैं।