अपने प्रश्न को पूछें और दस्तावेज़ का सारांश प्राप्त करें, इस पृष्ठ और आपके चुने हुए AI प्रदाता का उपयोग करके
संस्करण इतिहास
- "LM Studio प्रदाता के लिए समर्थन जोड़ें"v8.9.412/5/2026
- "बिल्ड कॉन्फ़िगरेशन में `prune` और `minify` विकल्प जोड़े गए"v8.7.08/4/2026
- "`currentDomain` विकल्प जोड़ा गया"v8.7.03/4/2026
- "'compiler.output' और 'dictionary.fill' के लिए प्रति लोकेल ऑब्जेक्ट नोटेशन जोड़ा गया"v8.4.020/3/2026
- "'baseDir' को 'content' कॉन्फ़िगरेशन से 'system' कॉन्फ़िगरेशन में स्थानांतरित किया गया"v8.3.011/3/2026
- "कंपाइलर विकल्पों को अपडेट किया गया, 'output' और 'noMetadata' के लिए समर्थन जोड़ा गया"v8.2.09/3/2026
- "कंपाइलर विकल्पों को अपडेट किया गया"v8.1.725/2/2026
- "'build-only' कंपाइलर विकल्प और डिक्शनरी प्रीफिक्स जोड़ा गया"v8.1.523/2/2026
- "ओपन राउटर, अलीबाबा, अमेज़ॅन, गूगल वर्टेक्स बेडरॉक, फायरवर्क्स, ग्रोक, हगिंग फेस और टुगेदर.एआई प्रदाताओं के लिए समर्थन जोड़ा गया"v8.0.612/2/2026
- "AI कॉन्फ़िगरेशन में `dataSerialization` जोड़ा गया"v8.0.56/2/2026
- "अंतर्निहित तंत्र को बेहतर ढंग से वर्णित करने के लिए `live` आयात मोड का नाम बदलकर `fetch` कर दिया गया।"v8.0.024/1/2026
- "बिल्ड कॉन्फ़िगरेशन `importMode` को `dictionary` कॉन्फ़िगरेशन में स्थानांतरित किया गया।"v8.0.022/1/2026
- "राउटींग कॉन्फ़िगरेशन में `rewrite` विकल्प जोड़ा गया"v8.0.022/1/2026
- "सिस्टम कॉन्फ़िगरेशन को कंटेंट कॉन्फ़िगरेशन से अलग किया गया। आंतरिक पथों को `system` प्रॉपर्टी में स्थानांतरित किया गया। कंटेंट फ़ाइलों को कोड ट्रांसफ़ॉर्मेशन से अलग करने के लिए `codeDir` जोड़ा गया।"v8.0.018/1/2026
- "डिक्शनरी विकल्प `location` और `schema` जोड़े गए"v8.0.018/1/2026
- "JSON5 और JSONC फ़ाइल स्वरूपों के लिए समर्थन जोड़ा गया"v7.5.110/1/2026
- "`buildMode` विकल्प जोड़ा गया"v7.5.017/12/2025
- "`dictionary` कॉन्फ़िगरेशन जोड़ा गया"v7.0.025/10/2025
- "`middleware` को `routing` कॉन्फ़िगरेशन से बदल दिया गया"v7.0.021/10/2025
- "`formatCommand` विकल्प जोड़ा गया"v7.0.012/10/2025
- "`excludedPath` विकल्प को अपडेट किया गया"v6.2.012/10/2025
- "`outputFormat` विकल्प जोड़ा गया"v6.0.223/9/2025
- "`dictionaryOutput` और `i18nextResourcesDir` फ़ील्ड हटा दिए गए"v6.0.021/9/2025
- "`live` आयात मोड जोड़ा गया"v6.0.016/9/2025
- "`hotReload` फ़ील्ड को `liveSync` से बदल दिया गया और `liveSyncPort`, `liveSyncURL` फ़ील्ड जोड़े गए"v6.0.04/9/2025
- "`activateDynamicImport` को `importMode` विकल्प से बदल दिया गया"v5.6.125/7/2025
- "डिफ़ॉल्ट `contentDir` को `['src']` से बदलकर `['.']` कर दिया गया"v5.6.013/7/2025
- "`docs` कमांड जोड़े गए"v5.5.1129/6/2025
इस पृष्ठ की सामग्री एक AI द्वारा अनुवादित की गई है।
अंग्रेजी में मूल सामग्री के अंतिम संस्करण देखेंअगर आपके पास इस दस्तावेज़ को सुधारने के लिए कोई विचार है, तो कृपया GitHub पर एक पुल अनुरोध सबमिट करके योगदान देने में संकोच न करें।
दस्तावेज़ के लिए GitHub लिंकदस्तावेज़ का Markdown को क्लिपबोर्ड पर कॉपी करें
Intlayer कॉन्फ़िगरेशन दस्तावेज़
अवलोकन
Intlayer कॉन्फ़िगरेशन फ़ाइलें आपको प्लगइन के विभिन्न पहलुओं को अनुकूलित करने की अनुमति देती हैं, जैसे अंतर्राष्ट्रीयकरण, मिडलवेयर और कंटेंट प्रबंधन। यह दस्तावेज़ कॉन्फ़िगरेशन की प्रत्येक प्रॉपर्टी का विस्तृत विवरण प्रदान करता है।
विषय सूची
कॉन्फ़िगरेशन फ़ाइल समर्थन
Intlayer JSON, JS, MJS और TS कॉन्फ़िगरेशन फ़ाइल स्वरूपों को स्वीकार करता है:
intlayer.config.tsintlayer.config.jsintlayer.config.jsonintlayer.config.json5intlayer.config.jsoncintlayer.config.cjsintlayer.config.mjs.intlayerrc
कॉन्फ़िगरेशन फ़ाइल उदाहरण
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";import { nextjsRewrite } from "intlayer/routing";import { z } from "zod";/** * सभी उपलब्ध विकल्पों के साथ Intlayer कॉन्फ़िगरेशन फ़ाइल का उदाहरण। */const config: IntlayerConfig = { /** * अंतर्राष्ट्रीयकरण सेटिंग्स कॉन्फ़िगरेशन। */ internationalization: { /** * एप्लिकेशन में समर्थित लोकेल की सूची। * डिफ़ॉल्ट: [Locales.ENGLISH] */ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], /** * आवश्यक लोकेल की सूची जिन्हें प्रत्येक डिक्शनरी में परिभाषित किया जाना चाहिए। * यदि खाली है, तो `strict` मोड में सभी लोकेल आवश्यक हैं। * डिफ़ॉल्ट: [] */ requiredLocales: [Locales.ENGLISH], /** * अंतर्राष्ट्रीयकृत कंटेंट के लिए सख्ती का स्तर। * - "strict": यदि कोई घोषित लोकेल अनुपस्थित है या घोषित नहीं है, तो त्रुटि उत्पन्न करता है। * - "inclusive": यदि घोषित लोकेल अनुपस्थित है, तो चेतावनी देता है। * - "loose": किसी भी मौजूदा लोकेल को स्वीकार करता है। * डिफ़ॉल्ट: "inclusive" */ strictMode: "inclusive", /** * अनुरोधित लोकेल नहीं मिलने की स्थिति में फ़ालबैक के रूप में उपयोग किया जाने वाला डिफ़ॉल्ट लोकेल। * डिफ़ॉल्ट: Locales.ENGLISH */ defaultLocale: Locales.ENGLISH, }, /** * डिक्शनरी संचालन और अनुपस्थित कंटेंट व्यवहार को नियंत्रित करने वाली सेटिंग्स। */ dictionary: { /** * डिक्शनरी कैसे आयात की जाती है, इसे नियंत्रित करता है। * - "static": बिल्ड के दौरान स्थिर आयात। * - "dynamic": Suspense का उपयोग करके गतिशील आयात। * - "fetch": लाइव सिंक API के माध्यम से गतिशील फ़ेचिंग। * डिफ़ॉल्ट: "static" */ importMode: "static", /** * AI का उपयोग करके अनुपस्थित अनुवादों को स्वचालित रूप से भरने की रणनीति। * एक बूलियन या भरे हुए कंटेंट को सहेजने के लिए एक पथ पैटर्न हो सकता है। * डिफ़ॉल्ट: true */ fill: true, /** * डिक्शनरी फ़ाइलों का भौतिक स्थान। * - "local": स्थानीय फ़ाइल सिस्टम पर संग्रहीत। * - "remote": Intlayer CMS में संग्रहीत। * - "hybrid": स्थानीय और Intlayer CMS दोनों में संग्रहीत। * - "plugin" (या कोई कस्टम स्ट्रिंग): प्लगइन या कस्टम स्रोत द्वारा प्रदान किया गया। * डिफ़ॉल्ट: "local" */ location: "local", /** * कंटेंट को स्वचालित रूप से रूपांतरित करना है या नहीं (जैसे मार्कडाउन को HTML में)। * डिफ़ॉल्ट: false */ contentAutoTransformation: false, }, /** * राउटींग और मिडलवेयर कॉन्फ़िगरेशन। */ routing: { /** * प्रति-लोकेल राउटींग रणनीति। * - "prefix-no-default": डिफ़ॉल्ट को छोड़कर सभी लोकेल के लिए प्रीफिक्स (जैसे /dashboard, /fr/dashboard)। * - "prefix-all": सभी लोकेल के लिए प्रीफिक्स (जैसे /en/dashboard, /fr/dashboard)। * - "no-prefix": URL में कोई लोकेल नहीं। * - "search-params": ?locale=... का उपयोग करें * डिफ़ॉल्ट: "prefix-no-default" */ mode: "prefix-no-default", /** * उपयोगकर्ता द्वारा चुने गए लोकेल को कहाँ संग्रहीत करना है। * विकल्प: 'cookie', 'localStorage', 'sessionStorage', 'header' या इनका सरणी। * डिफ़ॉल्ट: ['cookie', 'header'] */ storage: ["cookie", "header"], /** * एप्लिकेशन URL का बेस पाथ। * डिफ़ॉल्ट: "" */ basePath: "", /** * विशिष्ट लोकेल में पाथ के लिए कस्टम URL पुनर्लेखन नियम। */ rewrite: nextjsRewrite({ "/[locale]/about": { en: "/[locale]/about", fr: "/[locale]/a-propos", }, }), /** * डोमेन-आधारित रूटिंग के लिए लोकेल को डोमेन होस्टनामों से मैप करता है। * इन लोकेल के लिए URL पूर्ण (absolute) होंगे (जैसे, https://intlayer.cn/)। * डोमेन लोकेल को दर्शाता है, इसलिए पाथ में कोई लोकेल प्रीफिक्स नहीं जोड़ा जाता है। * डिफ़ॉल्ट: undefined */ domains: { en: "intlayer.org", zh: "intlayer.cn", }, }, /** * कंटेंट फ़ाइलों की खोज और प्रक्रिया के लिए सेटिंग्स। */ content: { /** * डिक्शनरी स्कैन करने के लिए फ़ाइल एक्सटेंशन। * डिफ़ॉल्ट: ['.content.ts', '.content.js', '.content.json', आदि] */ fileExtensions: [".content.ts", ".content.js", ".content.json"], /** * वे निर्देशिकाएँ जहाँ .content फ़ाइलें स्थित हैं। * डिफ़ॉल्ट: ["."] */ contentDir: ["src"], /** * स्रोत कोड निर्देशिका। * बिल्ड ऑप्टिमाइज़ेशन और कोड ट्रांसफ़ॉर्मेशन के लिए उपयोग किया जाता है। * डिफ़ॉल्ट: ["."] */ codeDir: ["src"], /** * स्कैनिंग से बाहर किए जाने वाले पैटर्न। * डिफ़ॉल्ट: ['node_modules', '.intlayer', आदि] */ excludedPath: ["node_modules"], /** * विकास के दौरान परिवर्तनों को ट्रैक करना और डिक्शनरी को पुन: उत्पन्न करना है या नहीं। * डिफ़ॉल्ट: डेवलपमेंट मोड में true */ watch: true, /** * नई बनाई गई / अपडेट की गई .content फ़ाइलों को फ़ॉर्मेट करने के लिए कमांड। */ formatCommand: 'npx prettier --write "{{file}}"', }, /** * विजुअल एडिटर कॉन्फ़िगरेशन। */ editor: { /** * विजुअल एडिटर सक्षम है या नहीं। * डिफ़ॉल्ट: false */ enabled: true, /** * ओरिजिन सत्यापन के लिए आपके एप्लिकेशन का URL। * डिफ़ॉल्ट: "" */ applicationURL: "http://localhost:3000", /** * स्थानीय एडिटर सर्वर के लिए पोर्ट। * डिफ़ॉल्ट: 8000 */ port: 8000, /** * एडिटर के लिए सार्वजनिक URL। * डिफ़ॉल्ट: "http://localhost:8000" */ editorURL: "http://localhost:8000", /** * Intlayer CMS का URL। * डिफ़ॉल्ट: "https://app.intlayer.org" */ cmsURL: "https://app.intlayer.org", /** * बैकएंड API सर्वर का URL। * डिफ़ॉल्ट: "https://back.intlayer.org" */ backendURL: "https://back.intlayer.org", /** * वास्तविक समय में कंटेंट सिंक सक्षम करना है या नहीं। * डिफ़ॉल्ट: false */ liveSync: true, }, /** * AI का उपयोग करके अनुवाद और जनरेशन के लिए सेटिंग्स। */ ai: { /** * उपयोग किया गया AI प्रदाता। * विकल्प: 'openai', 'anthropic', 'mistral', 'deepseek', 'gemini', 'ollama', 'openrouter', 'alibaba', 'fireworks', 'groq', 'huggingface', 'bedrock', 'googlevertex', 'togetherai', 'lmstudio' * डिफ़ॉल्ट: 'openai' */ provider: "openai", /** * चुने गए प्रदाता का इस्तेमाल किया गया मॉडल। */ model: "gpt-4o", /** * प्रदाता की API की। */ apiKey: process.env.OPENAI_API_KEY, /** * अनुवाद उत्पन्न करते समय AI का मार्गदर्शन करने के लिए वैश्विक संदर्भ। */ applicationContext: "यह यात्रा बुकिंग के लिए एक एप्लिकेशन है।", /** * AI API के लिए बेस URL। */ baseURL: "http://localhost:3000", /** * डेटा सीरियलाइज़ेशन * * विकल्प: * - "json": डिफ़ॉल्ट, विश्वसनीय; अधिक टोकन का उपयोग करता है। * - "toon": कम टोकन, JSON की तुलना में कम स्थिर। * * डिफ़ॉल्ट: "json" */ dataSerialization: "json", }, /** * बिल्ड और ऑप्टिमाइज़ेशन सेटिंग्स। */ build: { /** * बिल्ड निष्पादन मोड। * - "auto": एप्लिकेशन बिल्ड के दौरान स्वचालित बिल्ड। * - "manual": स्पष्ट बिल्ड कमांड की आवश्यकता होती है। * डिफ़ॉल्ट: "auto" */ mode: "auto", /** * अप्रयुक्त डिक्शनरी को हटाकर परिणामी बंडल को ऑप्टिमाइज़ करना है या नहीं। * डिफ़ॉल्ट: प्रोडक्शन में true */ optimize: true, /** * बंडल आकार कम करने के लिए डिक्शनरी को मिनिअफ़ाइ (minify) करना है या नहीं। * डिफ़ॉल्ट: true */ minify: true, /** * डिक्शनरी में अप्रयुक्त कीज़ (unused keys) को हटाना है या नहीं। * डिफ़ॉल्ट: true */ prune: true, /** * जेनरेट की गई डिक्शनरी फ़ाइलों के लिए आउटपुट स्वरूप। * डिफ़ॉल्ट: ['cjs', 'esm'] */ outputFormat: ["cjs", "esm"], /** * बिल्ड को TypeScript टाइप्स की जाँच करनी चाहिए या नहीं। * डिफ़ॉल्ट: false */ checkTypes: false, }, /** * लॉगर कॉन्फ़िगरेशन। */ log: { /** * लॉग स्तर। * - "default": मानक लॉगिंग। * - "verbose": विस्तृत डिबग लॉगिंग। * - "disabled": कोई लॉगिंग नहीं। * डिफ़ॉल्ट: "default" */ mode: "default", /** * लॉग में सभी संदेशों के लिए प्रीफिक्स। * डिफ़ॉल्ट: "[intlayer]" */ prefix: "[intlayer]", }, /** * सिस्टम कॉन्फ़िगरेशन (उन्नत उपयोग के मामले) */ system: { /** * स्थानीयकृत डिक्शनरी संग्रहीत करने के लिए निर्देशिका। */ dictionariesDir: ".intlayer/dictionary", /** * मॉड्यूल ऑगमेंटेशन (module augmentation) के लिए निर्देशिका। */ moduleAugmentationDir: ".intlayer/types", /** * बिना मर्ज किए गए डिक्शनरी संग्रहीत करने के लिए निर्देशिका। */ unmergedDictionariesDir: ".intlayer/unmerged_dictionary", /** * डिक्शनरी टाइप्स संग्रहीत करने के लिए निर्देशिका। */ typesDir: ".intlayer/types", /** * एप्लिकेशन की मुख्य फ़ाइलें जहाँ रखी जाती हैं। */ mainDir: ".intlayer/main", /** * संकलित कॉन्फ़िगरेशन फ़ाइलें जहाँ रखी जाती हैं। */ configDir: ".intlayer/config", /** * कैश फ़ाइलों के लिए निर्देशिका। */ cacheDir: ".intlayer/cache", }, /** * कंपाइलर कॉन्फ़िगरेशन (उन्नत उपयोग के मामले) */ compiler: { /** * कंपाइलर सक्षम करना है या नहीं। * * - false: कंपाइलर अक्षम करें। * - true: कंपाइलर सक्षम करें। * - "build-only": तेज़ स्टार्टअप के लिए विकास के दौरान कंपाइलर को छोड़ दें। * * डिफ़ॉल्ट: false */ enabled: true, /** * आउटपुट फ़ाइलों के लिए पथ परिभाषित करता है। `outputDir` को प्रतिस्थापित करता है। * * - `./` पथ घटक निर्देशिका के सापेक्ष हल किए जाते हैं। * - `/` पथ प्रोजेक्ट बेस निर्देशिका (`baseDir`) के सापेक्ष हल किए जाते हैं। * * - पथ में `{{locale}}` चर की उपस्थिति प्रत्येक लोकेल के लिए अलग डिक्शनरी जनरेशन को सक्रिय करती है। * * उदाहरण: * ```ts * { * // घटक के बगल में बहुभाषी .content.ts फ़ाइलें बनाएँ * output: ({ fileName, extension }) => `./${fileName}${extension}`, * * // output: './{{fileName}}{{extension}}', // टेम्पलेट स्ट्रिंग के माध्यम से समकक्ष * } * ``` * * ```ts * { * // प्रोजेक्ट बेस में लोकेल के अनुसार केंद्रीकृत JSON बनाएँ * output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`, * * // output: '/locales/{{locale}}/{{key}}.content.json', // टेम्पलेट स्ट्रिंग के माध्यम से समकक्ष * } * ``` * * चरों की सूची: * - `fileName`: फ़ाइल का नाम। * - `key`: कंटेंट की। * - `locale`: कंटेंट लोकेल। * - `extension`: फ़ाइल एक्सटेंशन। * - `componentFileName`: घटक फ़ाइल का नाम। * - `componentExtension`: घटक फ़ाइल एक्सटेंशन। * - `format`: डिक्शनरी स्वरूप। * - `componentFormat`: घटक डिक्शनरी स्वरूप। * - `componentDirPath`: घटक निर्देशिका का पथ। */ output: ({ locale, key }) => `compiler/${locale}/${key}.json`, /** * घटकों को उनके रूपांतरण के बाद सहेजना है या नहीं। * इस तरह, एप्लिकेशन रूपांतरण के लिए कंपाइलर को एक बार चलाया जा सकता है और फिर हटाया जा सकता है। */ saveComponents: false, /** * जेनरेट की गई फ़ाइल में केवल कंटेंट डालें। प्रति लोकेल i18next स्वरूप या ICU MessageFormat JSON आउटपुट के लिए उपयोगी। */ noMetadata: false, /** * डिक्शनरी की प्रीफिक्स */ dictionaryKeyPrefix: "", // निकाले गए डिक्शनरी कीज़ के लिए वैकल्पिक प्रीफिक्स जोड़ें }, /** * डिक्शनरी सामग्री सत्यापन के लिए कस्टम स्कीमा। */ schemas: { "my-schema": z.object({ title: z.string(), }), }, /** * प्लगइन्स कॉन्फ़िगरेशन। */ plugins: [],};export default config;कॉन्फ़िगरेशन संदर्भ गाइड
नीचे Intlayer में उपलब्ध विभिन्न कॉन्फ़िगरेशन मापदंडों का विवरण दिया गया है।
अंतर्राष्ट्रीयकरण कॉन्फ़िगरेशन (Internationalization)
अंतर्राष्ट्रीयकरण से संबंधित सेटिंग्स को परिभाषित करता है, जिसमें उपलब्ध लोकेल और डिफ़ॉल्ट लोकेल शामिल हैं।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
locales | एप्लिकेशन में समर्थित लोकेल की सूची। | string[] | [Locales.ENGLISH] | ['en', 'fr', 'es'] | |
requiredLocales | एप्लिकेशन में आवश्यक लोकेल की सूची। | string[] | [] | [] | • यदि खाली है, तो strict मोड में सभी लोकेल आवश्यक हैं।• सुनिश्चित करें कि आवश्यक लोकेल भी locales फ़ील्ड में परिभाषित हैं। |
strictMode | TypeScript का उपयोग करके अंतर्राष्ट्रीयकृत कंटेंट का एक मजबूत कार्यान्वयन सुनिश्चित करता है। | string | 'inclusive' | • यदि "strict": t फ़ंक्शन को प्रत्येक घोषित लोकेल की परिभाषा की आवश्यकता होती है - यदि कोई अनुपस्थित है या घोषित नहीं है, तो त्रुटि उत्पन्न करता है।• यदि "inclusive": अनुपस्थित लोकेल के लिए चेतावनी देता है लेकिन मौजूदा अघोषित लोकेल के उपयोग की अनुमति देता है।• यदि "loose": किसी भी मौजूदा लोकेल को स्वीकार करता है। | |
defaultLocale | अनुरोधित लोकेल नहीं मिलने की स्थिति में फ़ालबैक के रूप में उपयोग किया जाने वाला डिफ़ॉल्ट लोकेल। | string | Locales.ENGLISH | 'en' | लोकेल निर्धारित करने के लिए उपयोग किया जाता है जब इसे URL, कुकी या हेडर में निर्दिष्ट नहीं किया जाता है। |
एडिटर कॉन्फ़िगरेशन (Editor)
अंतर्निहित विजुअल एडिटर के लिए सेटिंग्स को परिभाषित करता है, जिसमें सर्वर पोर्ट और इनेबल स्टेटस शामिल है।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
applicationURL | एप्लिकेशन का URL। | string | undefined | 'http://localhost:3000''https://example.com'process.env.INTLAYER_EDITOR_URL | • सुरक्षा कारणों से एडिटर के ओरिजिन को प्रतिबंधित करने के लिए उपयोग किया जाता है। • यदि '*' पर सेट है, तो एडिटर किसी भी ओरिजिन से सुलभ है। |
port | विजुअल एडिटर सर्वर द्वारा उपयोग किया जाने वाला पोर्ट। | number | 8000 | ||
editorURL | एडिटर सर्वर का URL। | string | 'http://localhost:8000' | 'http://localhost:3000''https://example.com'process.env.INTLAYER_EDITOR_URL | • उन ओरिजिन को प्रतिबंधित करने के लिए उपयोग किया जाता है जो एप्लिकेशन के साथ संवाद कर सकते हैं। • यदि '*' पर सेट है, तो यह किसी भी ओरिजिन से सुलभ है।• यदि पोर्ट बदल दिया गया है या एडिटर किसी अन्य डोमेन पर होस्ट किया गया है, तो इसे सेट किया जाना चाहिए। |
cmsURL | Intlayer CMS का URL। | string | 'https://app.intlayer.org' | 'https://app.intlayer.org' | |
backendURL | बैकएंड सर्वर का URL। | string | https://back.intlayer.org | http://localhost:4000 | |
enabled | एप्लिकेशन को विजुअल एडिटर के साथ संवाद करना चाहिए या नहीं। | boolean | false | process.env.NODE_ENV !== 'production' | • यदि false, एडिटर एप्लिकेशन के साथ संवाद नहीं कर सकता।• कुछ परिवेशों के लिए अक्षम करना सुरक्षा बढ़ाता है। |
clientId | intlayer पैकेजों को oAuth2 के माध्यम से बैकएंड पर प्रमाणित करने की अनुमति देता है। अपना एक्सेस टोकन प्राप्त करने के लिए intlayer.org/project पर जाएँ। | string | undefined | undefined | इसे गुप्त रखा जाना चाहिए; पर्यावरण चरों (environment variables) का उपयोग करें। | |
clientSecret | intlayer पैकेजों को oAuth2 के माध्यम से बैकएंड पर प्रमाणित करने की अनुमति देता है। अपना एक्सेस टोकन प्राप्त करने के लिए intlayer.org/project पर जाएँ। | string | undefined | undefined | इसे गुप्त रखा जाना चाहिए; पर्यावरण चरों (environment variables) का उपयोग करें। | |
dictionaryPriorityStrategy | डिक्शनरी प्राथमिकता रणनीति जब स्थानीय और दूरस्थ डिक्शनरी दोनों मौजूद हों। | string | 'local_first' | 'distant_first' | • 'distant_first': स्थानीय डिक्शनरी पर दूरस्थ डिक्शनरी को प्राथमिकता देता है।• 'local_first': दूरस्थ डिक्शनरी पर स्थानीय डिक्शनरी को प्राथमिकता देता है। |
liveSync | एप्लिकेशन सर्वर को CMS विजुअल एडिटर बैकएंड सर्वर में परिवर्तनों का पता चलने पर तुरंत कंटेंट को पुनः लोड करना चाहिए या नहीं। | boolean | true | true | • डिक्शनरी जोड़ने/अपडेट करने पर एप्लिकेशन पेज कंटेंट को रिफ्रेश करता है। • लाइव सिंक कंटेंट को दूसरे सर्वर पर ले जाता है, जो प्रदर्शन को थोड़ा प्रभावित कर सकता है। • दोनों को एक ही मशीन पर होस्ट करने की अनुशंसा की जाती है। |
liveSyncPort | लाइव सिंक सर्वर का पोर्ट। | number | 4000 | 4000 | |
liveSyncURL | लाइव सिंक सर्वर का URL। | string | 'http://localhost:{liveSyncPort}' | 'https://example.com' | डिफ़ॉल्ट रूप से localhost की ओर इशारा करता है; दूरस्थ लाइव सिंक सर्वर की ओर इशारा करने के लिए बदला जा सकता है। |
राउटींग कॉन्फ़िगरेशन (Routing)
URL संरचना, लोकेल स्टोरेज और मिडलवेयर प्रबंधन सहित राउटींग व्यवहार को नियंत्रित करने वाली सेटिंग्स।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
mode | लोकेल प्रबंधन के लिए URL राउटींग मोड। | 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' | 'prefix-no-default' | 'prefix-no-default': /dashboard (en) या /fr/dashboard (fr)। 'prefix-all': /en/dashboard । 'no-prefix': लोकेल अन्य तरीकों से प्रबंधित किया जाता है। 'search-params': /dashboard?locale=fr | कुकी प्रबंधन या लोकेल स्टोरेज को प्रभावित नहीं करता है। |
storage | क्लाइंट पर लोकेल स्टोरेज का कॉन्फ़िगरेशन। | false | 'cookie' | 'localStorage' | 'sessionStorage' | 'header' | CookiesAttributes | StorageAttributes | Array | ['cookie', 'header'] | 'localStorage'[{ type: 'cookie', name: 'custom-locale', secure: true }] | नीचे स्टोरेज मापदंडों की तालिका देखें। |
basePath | एप्लिकेशन URL के लिए बेस पाथ। | string | '' | '/my-app' | यदि एप्लिकेशन https://example.com/my-app पते पर चलता है, तो basePath '/my-app' है और URL https://example.com/my-app/en बन जाते हैं। |
rewrite | कस्टम URL पुनर्लेखन नियम जो विशिष्ट पाथ के लिए डिफ़ॉल्ट राउटींग मोड को ओवरराइड करते हैं। गतिशील मापदंडों [param] का समर्थन करता है। | Record<string, StrictModeLocaleMap<string>> | undefined | नीचे उदाहरण देखें | • पुनर्लेखन नियमों को mode पर प्राथमिकता दी जाती है।• Next.js और Vite के साथ काम करता है। • getLocalizedUrl() स्वचालित रूप से उचित नियमों को लागू करता है।• कस्टम URL पुनर्लेखन देखें। |
domains | डोमेन-आधारित रूटिंग के लिए लोकेल को डोमेन होस्टनामों से मैप करता है। सेट होने पर, उस लोकेल के लिए URL इस डोमेन को बेस (पूर्ण URL) के रूप में उपयोग करते हैं और पाथ में कोई लोकेल प्रीफिक्स नहीं जोड़ा जाता है। | Partial<Record<Locale, string>> | undefined | { zh: 'intlayer.zh', fr: 'intlayer.org' } | • होस्टनाम में शामिल न होने पर डिफ़ॉल्ट प्रोटोकॉल https:// है।• डोमेन स्वयं लोकेल की पहचान करता है, इसलिए /zh/ प्रीफिक्स नहीं जोड़ा जाता है।• getLocalizedUrl('/', 'zh'), https://intlayer.zh/ लौटाता है। |
rewrite उदाहरण:
कोड को क्लिपबोर्ड पर कॉपी करें
routing: { mode: "prefix-no-default", // फ़ालबैक रणनीति rewrite: nextjsRewrite({ "/about": { en: "/about", fr: "/a-propos", }, "/product/[slug]": { en: "/product/[slug]", fr: "/produit/[slug]", }, "/blog/[category]/[id]": { en: "/blog/[category]/[id]", fr: "/journal/[category]/[id]", }, }),}स्टोरेज मापदंड (Storage)
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| मान | टिप्पणी | विवरण |
|---|---|---|
'cookie' | • GDPR अनुपालन के लिए समुचित उपयोगकर्ता सहमति सुनिश्चित करें। • CookiesAttributes ({ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }) के माध्यम से कॉन्फ़िगर करने योग्य। | लोकेल को कुकीज़ में संग्रहीत करता है - क्लाइंट और सर्वर दोनों पर सुलभ। |
'localStorage' | • जब तक स्पष्ट रूप से हटाया न जाए, तब तक समाप्त नहीं होता। • Intlayer Proxy की इस तक पहुँच नहीं है। • StorageAttributes ({ type: 'localStorage', name: 'custom-locale' }) के माध्यम से कॉन्फ़िगर करने योग्य। | बिना किसी समय सीमा के ब्राउज़र में लोकेल संग्रहीत करता है - केवल क्लाइंट-साइड। |
'sessionStorage' | • टैब/विंडो बंद करने पर हटा दिया जाता है। • Intlayer Proxy की इस तक पहुँच नहीं है। • StorageAttributes ({ type: 'sessionStorage', name: 'custom-locale' }) के माध्यम से कॉन्फ़िगर करने योग्य। | पेज सत्र की अवधि के लिए लोकेल संग्रहीत करता है - केवल क्लाइंट-साइड। |
'header' | • API कॉल के लिए उपयोगी। • क्लाइंट-साइड की इस तक पहुँच नहीं है। • StorageAttributes ({ type: 'header', name: 'custom-locale' }) के माध्यम से कॉन्फ़िगर करने योग्य। | HTTP हेडर के माध्यम से लोकेल संग्रहीत करता है या पास करता है - केवल सर्वर-साइड। |
कुकीज़ गुण (Cookies Attributes)
कुकीज़ में स्टोरेज का उपयोग करते समय, अतिरिक्त गुण सेट किए जा सकते हैं:
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
name | कुकी का नाम। डिफ़ॉल्ट: 'INTLAYER_LOCALE' | string |
domain | कुकी डोमेन। डिफ़ॉल्ट: undefined | string |
path | कुकी पाथ। डिफ़ॉल्ट: undefined | string |
secure | HTTPS की आवश्यकता। डिफ़ॉल्ट: undefined | boolean |
httpOnly | HTTP-only फ़्लैग। डिफ़ॉल्ट: undefined | boolean |
sameSite | SameSite पॉलिसी। | 'strict' | 'lax' | 'none' |
expires | समाप्ति तिथि या दिनों की संख्या। डिफ़ॉल्ट: undefined | Date | number |
स्टोरेज गुण (Storage Attributes)
localStorage या sessionStorage का उपयोग करते समय:
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
type | स्टोरेज का प्रकार। | 'localStorage' | 'sessionStorage' |
name | स्टोरेज में की (key) का नाम। डिफ़ॉल्ट: 'INTLAYER_LOCALE' | string |
कॉन्फ़िगरेशन उदाहरण
यहाँ नए v7 राउटींग संरचना के लिए कुछ सामान्य कॉन्फ़िगरेशन उदाहरण दिए गए हैं:
मूल कॉन्फ़िगरेशन (डिफ़ॉल्ट):
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";// intlayer.config.tsconst config: IntlayerConfig = { internationalization: { locales: ["en", "fr", "es"], defaultLocale: "en", }, routing: { mode: "prefix-no-default", storage: "localStorage", basePath: "", },};export default config;GDPR अनुपालन के साथ कॉन्फ़िगरेशन:
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";// intlayer.config.tsconst config: IntlayerConfig = { internationalization: { locales: ["en", "fr", "es"], defaultLocale: "en", }, routing: { mode: "prefix-no-default", storage: [ { type: "localStorage", name: "user-locale", }, { type: "cookie", name: "user-locale", secure: true, sameSite: "strict", httpOnly: false, }, ], basePath: "", },};export default config;सर्च पैरामीटर्स (Search Params) मोड:
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";// intlayer.config.tsconst config: IntlayerConfig = { internationalization: { locales: ["en", "fr", "es"], defaultLocale: "en", }, routing: { mode: "search-params", storage: "localStorage", basePath: "", },};export default config;कस्टम स्टोरेज के साथ नो-प्रीफिक्स मोड:
कोड को क्लिपबोर्ड पर कॉपी करें
import { Locales, type IntlayerConfig } from "intlayer";// intlayer.config.tsconst config: IntlayerConfig = { internationalization: { locales: ["en", "fr", "es"], defaultLocale: "en", }, routing: { mode: "no-prefix", storage: { type: "sessionStorage", name: "app-locale", }, basePath: "/my-app", },};export default config;गतिशील पाथ के साथ कस्टम URL पुनर्लेखन:
कोड को क्लिपबोर्ड पर कॉपी करें
// intlayer.config.tsimport { nextjsRewrite } from "intlayer/routing";const config: IntlayerConfig = { internationalization: { locales: ["en", "fr"], defaultLocale: "en", }, routing: { mode: "prefix-no-default", // बिना पुनर्लेखन वाले पाथ के लिए फ़ालबैक storage: "cookie", rewrite: nextjsRewrite({ "/about": { en: "/about", fr: "/a-propos", }, "/product/[slug]": { en: "/product/[slug]", fr: "/produit/[slug]", }, "/blog/[category]/[id]": { en: "/blog/[category]/[id]", fr: "/journal/[category]/[id]", }, }), },};export default config;कंटेंट कॉन्फ़िगरेशन (Content)
एप्लिकेशन में कंटेंट को कैसे प्रबंधित किया जाता है, निर्देशिका नाम, फ़ाइल एक्सटेंशन और व्युत्पन्न कॉन्फ़िगरेशन सहित सेटिंग्स।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
watch | इंगित करता है कि डिक्शनरी के पुनर्जन्म के लिए कंटेंट घोषणा फ़ाइलों में परिवर्तनों को Intlayer द्वारा ट्रैक किया जाना चाहिए या नहीं। | boolean | true | ||
fileExtensions | डिक्शनरी संकलित करते समय स्कैन करने के लिए फ़ाइल एक्सटेंशन। | string[] | ['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.json5', '.content.jsonc', '.content.tsx', '.content.jsx'] | ['.data.ts', '.data.js', '.data.json'] | अनुकूलन संघर्षों से बचने में मदद कर सकता है। |
contentDir | उस निर्देशिका का पाथ जहाँ कंटेंट परिभाषा फ़ाइलें (.content.*) रखी जाती हैं। | string[] | ['.'] | ['src', '../../ui-library', require.resolve("@my-package/content"), '@my-package/content'] | कंटेंट फ़ाइलों की ट्रैकिंग और डिक्शनरी के पुनर्जन्म के लिए उपयोग किया जाता है। |
codeDir | उस निर्देशिका का पाथ जहाँ कोड रखा जाता है, बेस निर्देशिका के सापेक्ष। | string[] | ['.'] | ['src', '../../ui-library'] | • ट्रांसफ़ॉर्मेशन (अनावश्यक हटाना, ऑप्टिमाइज़ेशन) के लिए कोड फ़ाइलों की ट्रैकिंग के लिए उपयोग किया जाता है। • contentDir से अलग करने से प्रदर्शन बढ़ सकता है। |
excludedPath | कंटेंट स्कैनिंग से बाहर रखी गई निर्देशिकाएँ। | string[] | ['**/node_modules/**', '**/dist/**', '**/build/**', '**/.intlayer/**', '**/.next/**', '**/.nuxt/**', '**/.expo/**', '**/.vercel/**', '**/.turbo/**', '**/.tanstack/**'] | वर्तमान में उपयोग नहीं किया गया है; भविष्य के लिए नियोजित है। | |
formatCommand | Intlayer द्वारा स्थानीय रूप से कंटेंट फ़ाइलें लिखने समय उन्हें फ़ॉर्मेट करने का कमांड। | string | undefined | 'npx prettier --write "{{file}}" --log-level silent' (Prettier), 'npx biome format "{{file}}" --write --log-level none' (Biome), 'npx eslint --fix "{{file}}" --quiet' (ESLint) | • {{file}} को फ़ाइल पाथ से बदल दिया जाएगा।• यदि परिभाषित नहीं है, तो Intlayer स्वचालित रूप से निर्धारित करता है (prettier, biome, eslint का परीक्षण करता है)। |
डिक्शनरी कॉन्फ़िगरेशन (Dictionary)
डिक्शनरी संचालन को नियंत्रित करने वाले मापदंड, जिसमें ऑटो-फिल व्यवहार और कंटेंट जनरेशन शामिल है।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
fill | नियंत्रित करता है कि ऑटो-फिल (AI अनुवाद) आउटपुट फ़ाइलें कैसे उत्पन्न होती हैं। | boolean | FilePathPattern | Partial<Record<Locale, boolean | FilePathPattern>> | true | { en: '/locales/en/{{key}}.json', fr: ({ key }) => '/locales/fr/${key}.json', es: false } | • true: डिफ़ॉल्ट पाथ (स्रोत के समान फ़ाइल)।• false: अक्षम करें।• टेम्पलेट स्ट्रिंग/फ़ंक्शन प्रति लोकेल फ़ाइलें उत्पन्न करता है। • प्रति लोकेल ऑब्जेक्ट: प्रत्येक लोकेल अपने टेम्पलेट से मेल खाता है; false उस लोकेल को अनदेखा करता है।• {{locale}} का समावेश प्रति लोकेल जनरेशन को सक्रिय करता है।• डिक्शनरी स्तर पर fill हमेशा इस वैश्विक सेटिंग पर प्राथमिकता लेता है। |
description | एडिटर और CMS को डिक्शनरी के उद्देश्य को समझने में मदद करता है। AI का उपयोग करके अनुवाद उत्पन्न करने के लिए संदर्भ के रूप में भी उपयोग किया जाता है। | string | undefined | 'User profile section' | |
locale | डिक्शनरी को किसी विशिष्ट लोकेल के प्रारूप में बदल देता है। प्रत्येक घोषित फ़ील्ड एक अनुवाद नोड बन जाता है। यदि अनुपस्थित है, तो डिक्शनरी को बहुभाषी माना जाता है। | LocalesValues | undefined | 'en' | यदि डिक्शनरी कई अनुवादों के बजाय एक विशिष्ट लोकेल के लिए है, तो इसका उपयोग करें। |
contentAutoTransformation | कंटेंट स्ट्रिंग्स को स्वचालित रूप से टाइप किए गए नोड्स (मार्कडाउन, HTML या सम्मिलन) में रूपांतरित करता है। | boolean | { markdown?: boolean; html?: boolean; insertion?: boolean } | false | true | • मार्कडाउन : ### Title → md('### Title') ।• HTML : <div>Title</div> → html('<div>Title</div>') ।• सम्मिलन : Hello {{name}} → insert('Hello {{name}}') । |
location | इंगित करता है कि डिक्शनरी फ़ाइलें कहाँ संग्रहीत हैं और वे CMS के साथ कैसे सिंक की जाती हैं। | 'local' | 'remote' | 'hybrid' | 'plugin' | string | 'local' | 'hybrid' | • 'local': केवल स्थानीय प्रबंधन।• 'remote': केवल दूरस्थ प्रबंधन (CMS)।• 'hybrid': स्थानीय और दूरस्थ प्रबंधन दोनों।• 'plugin' या कस्टम स्ट्रिंग: प्लगइन या कस्टम स्रोत द्वारा प्रबंधन। |
importMode | डिक्शनरी कैसे आयात की जाती है, इसे नियंत्रित करता है। | 'static' | 'dynamic' | 'fetch' | 'static' | 'dynamic' | • 'static': स्थिर आयात।• 'dynamic': Suspense के माध्यम से गतिशील आयात।• 'fetch': लाइव सिंक API के माध्यम से फ़ेच; विफल होने पर 'dynamic' पर वापस जाना।• @intlayer/babel और @intlayer/swc प्लगइन्स की आवश्यकता होती है।• की (keys) को स्थिर रूप से घोषित किया जाना चाहिए। • यदि optimize बंद है, तो अनदेखा किया जाता है।• getIntlayer, getDictionary आदि को प्रभावित नहीं करता है। |
priority | डिक्शनरी प्राथमिकता। डिक्शनरी के बीच संघर्षों को सुलझाने के दौरान उच्च मान निम्न मानों पर जीतते हैं। | number | undefined | 1 | |
live | अप्रचलित - importMode: 'fetch' का उपयोग करें। इंगित किया गया कि डिक्शनरी कंटेंट को लाइव सिंक API के माध्यम से गतिशील रूप से फ़ेच किया जाना चाहिए या नहीं। | boolean | undefined | v8.0.0 में नाम बदलकर importMode: 'fetch' कर दिया गया। | |
schema | JSON स्कीमा सत्यापन के लिए Intlayer द्वारा स्वचालित रूप से जेनरेट किया गया। | 'https://intlayer.org/schema.json' | ऑटो-जनरेशन | मैन्युअल रूप से संपादित न करें। | |
title | एडिटर और CMS में डिक्शनरी की पहचान करने में मदद करता है। | string | undefined | 'User Profile' | |
tags | डिक्शनरी को श्रेणीबद्ध करता है और एडिटर और AI के लिए संदर्भ या निर्देश प्रदान करता है। | string[] | undefined | ['user', 'profile'] | |
version | दूरस्थ डिक्शनरी का संस्करण; वर्तमान में उपयोग किए जा रहे संस्करण को ट्रैक करने में मदद करता है। | string | undefined | '1.0.0' | • CMS में प्रबंधित। • स्थानीय रूप से संपादित न करें। |
fill उदाहरण:
कोड को क्लिपबोर्ड पर कॉपी करें
dictionary: { fill: { en: "/locales/en/{{key}}.content.json", fr: ({ key }) => `/locales/fr/${key}.content.json`, es: false, },};लॉगर कॉन्फ़िगरेशन (Log)
Intlayer लॉग आउटपुट को अनुकूलित करने के लिए मापदंड।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
mode | लॉगर मोड इंगित करता है। | 'default' | 'verbose' | 'disabled' | 'default' | 'verbose' | • 'verbose': डिबगिंग के लिए अधिक जानकारी लॉग करता है।• 'disabled': लॉगर को पूरी तरह से बंद कर देता है। |
prefix | लॉग में सभी संदेशों के लिए प्रीफिक्स। | string | '[intlayer] ' | '[my prefix] ' |
AI कॉन्फ़िगरेशन (AI)
Intlayer की AI सुविधाओं को नियंत्रित करने वाली सेटिंग्स, जिनमें प्रदाता, मॉडल और API की (key) शामिल हैं।
यह कॉन्फ़िगरेशन वैकल्पिक है यदि आप एक्सेस की (key) के साथ Intlayer Dashboard पर पंजीकृत हैं। Intlayer आपकी आवश्यकताओं के लिए सबसे कुशल और लागत प्रभावी AI समाधान को स्वचालित रूप से प्रबंधित करेगा। डिफ़ॉल्ट विकल्पों का उपयोग करना सबसे अच्छा दीर्घकालिक समर्थन की गारंटी देता है क्योंकि Intlayer को सबसे अद्यतित मॉडल का उपयोग करने के लिए लगातार अपडेट किया जाता है।
यदि आप अपनी स्वयं की API की या किसी विशिष्ट मॉडल का उपयोग करना पसंद करते हैं, तो आप अपना AI कॉन्फ़िगरेशन परिभाषित कर सकते हैं।
यह AI कॉन्फ़िगरेशन आपके Intlayer परिवेश में विश्व स्तर पर उपयोग किया जाएगा। CLI कमांड इन सेटिंग्स का उपयोग fill जैसे कमांड के लिए डिफ़ॉल्ट रूप से करेंगे, साथ ही SDK, विजुअल एडिटर और CMS भी। आप इन डिफ़ॉल्ट मानों को कमांड मापदंडों के माध्यम से विशिष्ट उपयोग के मामलों के लिए ओवरराइड कर सकते हैं।
Intlayer अधिकतम लचीलेपन के लिए कई AI प्रदाताओं का समर्थन करता है। वर्तमान में, समर्थित प्रदाता हैं:
- OpenAI (डिफ़ॉल्ट)
- Anthropic Claude
- Mistral AI
- DeepSeek
- Google Gemini
- Google AI Studio
- Google Vertex
- Meta Llama
- Ollama
- OpenRouter
- Alibaba Cloud
- Fireworks
- Hugging Face
- Groq
- Amazon Bedrock
- Together.ai
- LM Studio
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
provider | Intlayer AI सुविधाओं के लिए उपयोग किया जाने वाला प्रदाता। | 'openai' | 'anthropic' | 'mistral' | 'deepseek' | 'gemini' | 'ollama' | 'openrouter' | 'alibaba' | 'fireworks' | 'groq' | 'huggingface' | 'bedrock' | 'googleaistudio' | 'googlevertex' | 'togetherai' | 'lmstudio' | undefined | 'anthropic' | विभिन्न प्रदाताओं को विभिन्न API की की आवश्यकता होती है और उनकी कीमतें अलग होती हैं। |
model | AI सुविधाओं के लिए उपयोग किया जाने वाला मॉडल। | string | कोई नहीं | 'gpt-4o-2024-11-20' | विशिष्ट मॉडल प्रदाता पर निर्भर करता है। |
temperature | AI प्रतिक्रियाओं की यादृच्छिकता (randomness) को नियंत्रित करता है। | number | कोई नहीं | 0.1 | उच्च तापमान = अधिक रचनात्मक और कम पूर्वानुमेय। |
apiKey | चुने गए प्रदाता के लिए आपकी API की। | string | कोई नहीं | process.env.OPENAI_API_KEY | इसे गुप्त रखा जाना चाहिए; पर्यावरण चरों का उपयोग करें। |
applicationContext | AI को अधिक सटीक अनुवाद उत्पन्न करने में मदद करने के लिए आपके एप्लिकेशन के बारे में अतिरिक्त संदर्भ (डोमेन, लक्षित दर्शक, टोन, शब्दावली)। | string | कोई नहीं | 'मेरा अपना एप्लिकेशन संदर्भ' | नियम जोड़ने के लिए उपयोग किया जा सकता है (जैसे: "आपको URL को रूपांतरित नहीं करना चाहिए" )। |
baseURL | AI API के लिए बेस URL। | string | कोई नहीं | 'https://api.openai.com/v1''http://localhost:5000' | स्थानीय या कस्टम AI API एंडपॉइंट की ओर इशारा कर सकता है। |
dataSerialization | AI सुविधाओं के लिए डेटा सीरियलाइज़ेशन प्रारूप। | 'json' | 'toon' | undefined | 'toon' | • 'json': डिफ़ॉल्ट, विश्वसनीय; अधिक टोकन का उपयोग करता है।• 'toon': कम टोकन, कम स्थिर।• अतिरिक्त मापदंड संदर्भ के रूप में मॉडल को पास किए जाते हैं (तर्क प्रयास आदि)। |
बिल्ड कॉन्फ़िगरेशन (Build)
Intlayer आपके एप्लिकेशन के अंतर्राष्ट्रीयकरण को कैसे ऑप्टिमाइज़ और संकलित करता है, इसे नियंत्रित करने वाले मापदंड।
बिल्ड विकल्प @intlayer/babel और @intlayer/swc प्लगइन्स पर लागू होते हैं।
डेवलपमेंट मोड में, Intlayer विकास प्रक्रिया को सरल बनाने के लिए डिक्शनरी के स्थिर आयात का उपयोग करता है।
ऑप्टिमाइज़ेशन के दौरान, Intlayer कोड स्प्लिटिंग (chunking) को ऑप्टिमाइज़ करने के लिए डिक्शनरी कॉल को बदल देगा ताकि परिणामी बंडल केवल उन्हीं डिक्शनरी को आयात करे जो वास्तव में उपयोग की जाती हैं।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
mode | बिल्ड मोड को नियंत्रित करता है। | 'auto' | 'manual' | 'auto' | 'manual' | • 'auto': एप्लिकेशन बिल्ड के दौरान बिल्ड स्वचालित रूप से शुरू होता है।• 'manual': केवल एक स्पष्ट बिल्ड कमांड पर निष्पादित होता है।• डिक्शनरी बिल्ड को बंद करने के लिए उपयोग किया जा सकता है (जैसे Node.js परिवेशों में चलने से बचने के लिए)। |
optimize | नियंत्रित करता है कि बिल्ड ऑप्टिमाइज़ेशन होना चाहिए या नहीं। | boolean | undefined | process.env.NODE_ENV === 'production' | • यदि परिभाषित नहीं है, तो फ्रेमवर्क बिल्ड (Vite/Next.js) के दौरान ऑप्टिमाइज़ेशन शुरू होता है। • true देव मोड में भी ऑप्टिमाइज़ेशन को बाध्य करता है।• false इसे बंद कर देता है।• चालू होने पर, चंकिंग ऑप्टिमाइज़ेशन के लिए डिक्शनरी कॉल को बदल देता है। • @intlayer/babel और @intlayer/swc प्लगइन्स की आवश्यकता होती है। |
minify | इंगित करता है कि बंडल के आकार को कम करने के लिए डिक्शनरी को मिनिअफ़ाइ किया जाना चाहिए या नहीं। | boolean | false | • बंडल को मिनिअफ़ाइ किया जाना चाहिए या नहीं। • डिफ़ॉल्ट: प्रोडक्शन में true।• optimize अक्षम होने पर यह विकल्प अनदेखा किया जाएगा।• editor.enabled सत्य होने पर यह विकल्प अनदेखा किया जाएगा। | |
prune | इंगित करता है कि डिक्शनरी में अप्रयुक्त कीज़ (unused keys) को हटाया जाना चाहिए या नहीं। | boolean | true | • बंडल को छोटा (pruned) किया जाना चाहिए या नहीं। • डिफ़ॉल्ट: प्रोडक्शन में true।• optimize अक्षम होने पर यह विकल्प अनदेखा किया जाएगा। | |
checkTypes | इंगित करता है कि बिल्ड को TypeScript टाइप्स की जाँच करनी चाहिए और त्रुटियों को लॉग करना चाहिए या नहीं। | boolean | false | बिल्ड प्रक्रिया को धीमा कर सकता है। | |
outputFormat | डिक्शनरी के आउटपुट स्वरूप को नियंत्रित करता है। | ('esm' | 'cjs')[] | ['esm', 'cjs'] | ['cjs'] | |
traversePattern | उन फ़ाइलों को परिभाषित करने वाले पैटर्न जिन्हें ऑप्टिमाइज़ेशन के दौरान स्कैन किया जाना चाहिए। | string[] | ['**/*.{tsx,ts,js,mjs,cjs,jsx,vue,svelte,svte}', '!**/node_modules/**', '!**/dist/**', '!**/.intlayer/**', '!**/*.config.*', '!**/*.test.*', '!**/*.spec.*', '!**/*.stories.*'] | ['src/**/*.{ts,tsx}', '../ui-library/**/*.{ts,tsx}', '!**/node_modules/**'] | • बिल्ड प्रदर्शन बढ़ाने के लिए ऑप्टिमाइज़ेशन को प्रासंगिक फ़ाइलों तक सीमित करें। • यदि optimize बंद होता, तो अनदेखा कर दिया जाता।• ग्लोब पैटर्न का उपयोग करता है। |
सिस्टम कॉन्फ़िगरेशन (System)
ये सेटिंग्स उन्नत उपयोग के मामलों और Intlayer के आंतरिक कॉन्फ़िगरेशन के लिए अभिप्रेत हैं।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
dictionariesDir | संकलित डिक्शनरी के लिए निर्देशिका। | string | '.intlayer/dictionary' | ||
moduleAugmentationDir | TypeScript मॉड्यूल ऑगमेंटेशन के लिए निर्देशिका। | string | '.intlayer/types' | ||
unmergedDictionariesDir | बिना मर्ज किए गए डिक्शनरी संग्रहीत करने के लिए निर्देशिका। | string | '.intlayer/unmerged_dictionary' | ||
typesDir | जेनरेट किए गए टाइप्स के लिए निर्देशिका। | string | '.intlayer/types' | ||
mainDir | Intlayer की मुख्य फ़ाइल की निर्देशिका। | string | '.intlayer/main' | ||
configDir | संकलित कॉन्फ़िगरेशन फ़ाइलों की निर्देशिका। | string | '.intlayer/config' | ||
cacheDir | कैश फ़ाइलों के लिए निर्देशिका। | string | '.intlayer/cache' |
कंपाइलर कॉन्फ़िगरेशन (Compiler)
Intlayer कंपाइलर को नियंत्रित करने वाली सेटिंग्स, जो आपके घटकों से सीधे डिक्शनरी निकालती है।
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप | डिफ़ॉल्ट | उदाहरण | टिप्पणी |
|---|---|---|---|---|---|
enabled | इंगित करता है कि डिक्शनरी निकालने के लिए कंपाइलर सक्षम होना चाहिए या नहीं। | boolean | 'build-only' | true | 'build-only' | 'build-only' तेज़ बिल्ड के लिए विकास के दौरान कंपाइलर को छोड़ देता है; केवल बिल्ड कमांड के दौरान निष्पादित होता है। |
dictionaryKeyPrefix | निकाली गई डिक्शनरी कीज़ के लिए प्रीफिक्स। | string | '' | 'my-prefix-' | संघर्षों से बचने के लिए जेनरेट की गई की (key) (फ़ाइल नाम के आधार पर) में जोड़ा जाता है। |
saveComponents | घटकों को उनके रूपांतरण के बाद सहेजना है या नहीं। | boolean | false | • यदि true, मूल फ़ाइलों को उनके रूपांतरित संस्करणों के साथ अधिलेखित (overwrite) कर देता है।• कंपाइलर को एक बार चलाने के बाद हटाया जा सकता है। | |
output | आउटपुट फ़ाइलों के लिए पथ परिभाषित करता है। outputDir को प्रतिस्थापित करता है। टेम्पलेट चरों का समर्थन करता है: {{fileName}}, {{key}}, {{locale}}, {{extension}}, {{componentFileName}}, {{componentExtension}}, {{format}}, {{componentFormat}}, {{componentDirPath}} । | boolean | FilePathPattern | Partial<Record<Locale, boolean | FilePathPattern>> | undefined | './{{fileName}}{{extension}}''/locales/{{locale}}/{{key}}.json'{ en: ({ key }) => './locales/en/${key}.json', fr: '...', es: false } | • ./ पथ घटक निर्देशिका के सापेक्ष हल किए जाते हैं।• / पथ प्रोजेक्ट बेस के सापेक्ष।• {{locale}} प्रति लोकेल जनरेशन को शामिल करता है।• प्रति लोकेल ऑब्जेक्ट नोटेशन का समर्थन करता है। |
noMetadata | यदि true, कंपाइलर आउटपुट से डिक्शनरी मेटाडेटा (की (key), कंटेंट रैपर) हटा देता है। | boolean | false | false → {"key":"my-key","content":{"key":"value"}}true → {"key":"value"} | • i18next स्वरूप या ICU MessageFormat JSON आउटपुट के लिए उपयोगी। • loadJSON प्लगइन के साथ अच्छी तरह काम करता है। |
dictionaryKeyPrefix | डिक्शनरी की प्रीफिक्स | string | '' | निकाले गए डिक्शनरी कीज़ के लिए वैकल्पिक प्रीफिक्स जोड़ें |
कस्टम स्कीमा (Custom Schemas)
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
schemas | आपको अपनी डिक्शनरी की संरचना को मान्य करने के लिए Zod स्कीमा को परिभाषित करने की अनुमति देता है। | Record<string, ZodSchema> |
प्लगइन्स (Plugins)
सभी डेटा सामग्री को स्पष्ट रूप से देखने के लिए तालिका को मोडल में खोलें
| फ़ील्ड | विवरण | टाइप |
|---|---|---|
plugins | शामिल करने के लिए Intlayer प्लगइन्स की सूची। | IntlayerPlugin[] |