diff --git a/src/assets/locale/fa/chrome.json b/src/assets/locale/fa/chrome.json
new file mode 100644
index 0000000..307388b
--- /dev/null
+++ b/src/assets/locale/fa/chrome.json
@@ -0,0 +1,13 @@
+{
+ "heading": "تنظیمات AI کروم",
+ "status": {
+ "label": "فعال یا غیر فعال کردن پشتیبانی از AI کروم"
+ },
+ "error": {
+ "browser_not_supported": "این نسخه از کروم توسط مدل Gemini Nano پشتیبانی نمی شود. لطفا به نسخه ۱۲۷ یا بالاتر به روزرسانی کنید.",
+ "ai_not_supported": "تنظیم chrome://flags/#prompt-api-for-gemini-nano فعال نشده است. لطفا فعالش کنید..",
+ "ai_not_ready": "Gemini Nano هنوز آماده نیست; تنظیمات کروم را مجددا بررسی کنید.",
+ "internal_error": "یک خطای داخلی رخ داد. لطفا بعدا مجددا تلاش نمایید."
+ },
+ "errorDescription": "برای استفاده از AI کروم، به نسخه مرورگر بالاتر از ۱۲۷ احتیاج دارید که اکنون در کانال های Dev و Canary در دسترس است. بعد از دریافت نسخه پشتیبانی شده این گام ها را دنبال کنید: \n\n۱. به `chrome://flags/#prompt-api-for-gemini-nano` بروید و \"Enable\" را انتخاب کنید.\n۲. به `chrome://flags/#optimization-guide-on-device-model` بروید و \"EnabledBypassPrefRequirement\" را انتخاب کنید.\n۳. به `chrome://components` بروید و \"Optimization Guide On Device Model\" را جستجو کنید، بر روی \"Check for Update\" کلیک کنید. این کار مدل را دریافت خواهد کرد. اگر این تنظیمات را نمی بینید، گام های ۱ و ۲ را تکرار و مرورگر را مجددا اجرا کنید."
+}
diff --git a/src/assets/locale/fa/common.json b/src/assets/locale/fa/common.json
new file mode 100644
index 0000000..3c02c21
--- /dev/null
+++ b/src/assets/locale/fa/common.json
@@ -0,0 +1,88 @@
+{
+ "pageAssist": "دستیار صفحه",
+ "selectAModel": "یک مدل انتخاب کنید",
+ "save": "ذخیره",
+ "saved": "ذخیره شد",
+ "cancel": "لغو",
+ "retry": "تلاش مجدد",
+ "share": {
+ "tooltip": {
+ "share": "اشتراک گذاری"
+ },
+ "modal": {
+ "title": "اشتراک گذاری لینک به گپ"
+ },
+ "form": {
+ "defaultValue": {
+ "name": "ناشناس",
+ "title": "گپ بی نام"
+ },
+ "title": {
+ "label": "عنوان گپ",
+ "placeholder": "عنوان گپ را وارد کنید",
+ "required": "وارد کردن عنوان چت الزامی است"
+ },
+ "name": {
+ "label": "نام شما",
+ "placeholder": "نام خود را وارد کنید",
+ "required": "وارد کردن نام الزامی است"
+ },
+ "btn": {
+ "save": "ایجاد لینک",
+ "saving": "در حال ایجاد لینک..."
+ }
+ },
+ "notification": {
+ "successGenerate": "پیوند در کلیپ بورد کپی شد",
+ "failGenerate": "پیوند ایجاد نشد"
+ }
+ },
+ "copyToClipboard": "کپی به کلیپ بورد",
+ "webSearch": "جستجوی وب",
+ "regenerate": "ایجاد مجدد",
+ "edit": "ویرایش",
+ "saveAndSubmit": "ذخیره و ارسال",
+ "editMessage": {
+ "placeholder": "یک پیام وارد کنید..."
+ },
+ "submit": "ارسال",
+ "noData": "اطلاعاتی وجود ندارد",
+ "noHistory": "تاریخچه گپ وجود ندارد",
+ "chatWithCurrentPage": "گپ زدن با این صفحه",
+ "beta": "بتا",
+ "tts": "بلند بخوان",
+ "currentChatModelSettings": "تنظیمات مدل گپ فعلی",
+ "modelSettings": {
+ "label": "تنظیمات مدل",
+ "description": "گزینه های مدل را به صورت کلی برای همه گپ ها تنظیم کنید",
+ "form": {
+ "keepAlive": {
+ "label": "Keep Alive",
+ "help": "کنترل می کند که چه مدت مدل پس از درخواست در حافظه باقی می ماند (پیش فرض: 5 دقیقه)",
+ "placeholder": "مدت زمان Keep Alive را وارد کنید (مثلا 5m, 10m, 1h)"
+ },
+ "temperature": {
+ "label": "Temperature",
+ "placeholder": "مقدار Temperature را وارد کنید (مثلا 0.7, 1.0)"
+ },
+ "numCtx": {
+ "label": "Number of Contexts",
+ "placeholder": "مقدار Number of Contexts را وارد کنید (پیش فرض: 2048)"
+ },
+ "seed": {
+ "label": "Seed",
+ "placeholder": "مقدار Seed را وارد کنید (e.g. 1234)",
+ "help": "تکرارپذیری خروجی مدل"
+ },
+ "topK": {
+ "label": "Top K",
+ "placeholder": "مقدار Top K را وارد کنید (مثلا 40, 100)"
+ },
+ "topP": {
+ "label": "Top P",
+ "placeholder": "مقدار Top P را وارد کنید (مثلا 0.9, 0.95)"
+ }
+ },
+ "advanced": "تنظیمات بیشتر مدل"
+ }
+}
diff --git a/src/assets/locale/fa/knowledge.json b/src/assets/locale/fa/knowledge.json
new file mode 100644
index 0000000..c955226
--- /dev/null
+++ b/src/assets/locale/fa/knowledge.json
@@ -0,0 +1,43 @@
+{
+ "addBtn": "افزودن دانش جدید",
+ "columns": {
+ "title": "عنوان",
+ "status": "وضعیت",
+ "embeddings": "مدل جاسازی",
+ "createdAt": "ایجاد شده در",
+ "action": "اقدامات"
+ },
+ "expandedColumns": {
+ "name": "نام"
+ },
+ "tooltip": {
+ "delete": "حذف"
+ },
+ "confirm": {
+ "delete": "آیا مطمئن هستید که می خواهید این دانش را حذف کنید؟"
+ },
+ "deleteSuccess": "دانش با موفقیت حذف شد",
+ "status": {
+ "pending": "انتظار",
+ "finished": "تمام",
+ "processing": "در حال پردازش",
+ "failed": "ناموفق"
+ },
+ "addKnowledge": "دانش را اضافه کنید",
+ "form": {
+ "title": {
+ "label": "عنوان دانش",
+ "placeholder": "عنوان دانش را وارد کنید",
+ "required": "وارد کردن عنوان دانش الزامی است"
+ },
+ "uploadFile": {
+ "label": "آپلود فایل",
+ "uploadText": "یک فایل را در اینجا بکشید و رها کنید یا برای آپلود کلیک کنید",
+ "uploadHint": "انواع فایل های پشتیبانی شده: .pdf, .csv, .txt, .md, .docx",
+ "required": "وارد کردن فایل مورد نیاز است"
+ },
+ "submit": "ارسال",
+ "success": "دانش با موفقیت اضافه شد"
+ },
+ "noEmbeddingModel": "لطفا ابتدا یک مدل جاسازی را از صفحه تنظیمات RAG اضافه کنید"
+}
diff --git a/src/assets/locale/fa/option.json b/src/assets/locale/fa/option.json
new file mode 100644
index 0000000..9188710
--- /dev/null
+++ b/src/assets/locale/fa/option.json
@@ -0,0 +1,12 @@
+{
+ "newChat": "گپ جدید",
+ "selectAPrompt": "یک پرامپت را انتخاب کنید",
+ "githubRepository": "مخزن GitHub",
+ "settings": "تنظیمات",
+ "sidebarTitle": "تاریخچه گپ",
+ "error": "خطا",
+ "somethingWentWrong": "مشکلی پیش آمد",
+ "validationSelectModel": "لطفا یک مدل را برای ادامه انتخاب کنید",
+ "deleteHistoryConfirmation": "آیا مطمئن هستید که می خواهید این تاریخچه را حذف کنید؟",
+ "editHistoryTitle": "یک عنوان جدید وارد کنید"
+}
diff --git a/src/assets/locale/fa/playground.json b/src/assets/locale/fa/playground.json
new file mode 100644
index 0000000..e9161a7
--- /dev/null
+++ b/src/assets/locale/fa/playground.json
@@ -0,0 +1,29 @@
+{
+ "ollamaState": {
+ "searching": "در حال جستجوی Ollama شما 🦙",
+ "running": "Ollama در حال اجرا است 🦙",
+ "notRunning": "امکان اتصال به Ollama وجود ندارد 🦙",
+ "connectionError": "به نظر می رسد که خطای اتصال دارید. لطفا برای عیب یابی به این مستندات مراجعه کنید."
+ },
+ "formError": {
+ "noModel": "لطفا یک مدل را انتخاب کنید",
+ "noEmbeddingModel": "لطفا یک مدل جاسازی در صفحه تنظیمات > RAG تنظیم کنید"
+ },
+ "form": {
+ "textarea": {
+ "placeholder": "یک پیام تایپ کنید..."
+ },
+ "webSearch": {
+ "on": "روشن",
+ "off": "خاموش"
+ }
+ },
+ "tooltip": {
+ "searchInternet": "جستجوی اینترنت",
+ "speechToText": "گفتار به متن",
+ "uploadImage": "آپلود تصویر",
+ "stopStreaming": "توقف Streaming",
+ "knowledge": "دانش"
+ },
+ "sendWhenEnter": "با فشار دادن Enter ارسال شود"
+}
diff --git a/src/assets/locale/fa/settings.json b/src/assets/locale/fa/settings.json
new file mode 100644
index 0000000..0cbafdc
--- /dev/null
+++ b/src/assets/locale/fa/settings.json
@@ -0,0 +1,328 @@
+{
+ "generalSettings": {
+ "title": "تنظیمات عمومی",
+ "settings": {
+ "heading": "تنظیمات رابط کاربری وب",
+ "speechRecognitionLang": {
+ "label": "زبان تشخیص گفتار",
+ "placeholder": "یک زبان را انتخاب کنید"
+ },
+ "language": {
+ "label": "زبان",
+ "placeholder": "یک زبان را انتخاب کنید"
+ },
+ "darkMode": {
+ "label": "تغییر تم",
+ "options": {
+ "light": "روشن",
+ "dark": "تیره"
+ }
+ },
+ "copilotResumeLastChat": {
+ "label": "آخرین گفتگو را هنگام باز کردن SidePanel (Copilot) از سر بگیر"
+ },
+ "hideCurrentChatModelSettings": {
+ "label": "مخفی کردن تنظیمات مدل گپ فعلی را"
+ },
+ "restoreLastChatModel": {
+ "label": "بازیابی آخرین مدل استفاده شده برای گپهای قبلی"
+ },
+ "sendNotificationAfterIndexing": {
+ "label": "ارسال نوتیفیکیشن پس از اتمام پردازش پایگاه دانش"
+ }
+ },
+ "sidepanelRag": {
+ "heading": "تنظیمات گپ Copilot با وب سایت",
+ "ragEnabled": {
+ "label": "چت با وب سایت با استفاده از بردارهای جاسازی"
+ },
+ "maxWebsiteContext": {
+ "label": "اندازه محتوای وب سایت حالت عادی",
+ "placeholder": "اندازه محتوا (پیش فرض 4028)"
+ }
+ },
+ "webSearch": {
+ "heading": "مدیریت جستجوی وب",
+ "searchMode": {
+ "label": "انجام جستجوی ساده اینترنتی"
+ },
+ "provider": {
+ "label": "موتور جستجو",
+ "placeholder": "یک موتور جستجو را انتخاب کنید"
+ },
+ "totalSearchResults": {
+ "label": "مجموع نتایج جستجو",
+ "placeholder": "کل نتایج جستجو را وارد کنید"
+ },
+ "visitSpecificWebsite": {
+ "label": "مراجعه به وب سایت ذکر شده در پیام"
+ }
+ },
+ "system": {
+ "heading": "تنظیمات سیستم",
+ "deleteChatHistory": {
+ "label": "حذف تاریخچه گفتگو",
+ "button": "حذف",
+ "confirm": "آیا مطمئن هستید که می خواهید تاریخچه گفتگوهای خود را حذف کنید؟ این عمل قابل برگشت نیست."
+ },
+ "export": {
+ "label": "تاریخچه گپ، پایگاه دانش و پرامپتها را اکسپورت کنید",
+ "button": "اکسپورت دادهها",
+ "success": "موفقیت در اکسپورت"
+ },
+ "import": {
+ "label": "تاریخچه گپ، پایگاه دانش و پرامپتها را ایمپورت کنید",
+ "button": "ایمپورت دادهها",
+ "success": "موفقیت در ایمپورت",
+ "error": "خطا در ایمپورت"
+ }
+ },
+ "tts": {
+ "heading": "تنظیمات تبدیل متن به گفتار",
+ "ttsEnabled": {
+ "label": "فعال کردن تبدیل متن به گفتار"
+ },
+ "ttsProvider": {
+ "label": "ارائه دهنده تبدیل متن به گفتار",
+ "placeholder": "یک ارائه دهنده را انتخاب کنید"
+ },
+ "ttsVoice": {
+ "label": "صدای تبدیل متن به گفتار",
+ "placeholder": "صدا را انتخاب کنید"
+ },
+ "ssmlEnabled": {
+ "label": "فعال کردن SSML (Speech Synthesis Markup Language)"
+ }
+ }
+ },
+ "manageModels": {
+ "title": "مدیریت مدلها",
+ "addBtn": "افزودن مدل جدید",
+ "columns": {
+ "name": "نام",
+ "digest": "هضم",
+ "modifiedAt": "اصلاح شده در",
+ "size": "اندازه",
+ "actions": "اقدامات"
+ },
+ "expandedColumns": {
+ "parentModel": "مدل والد",
+ "format": "فرمت",
+ "family": "خانواده",
+ "parameterSize": "اندازه پارامترها",
+ "quantizationLevel": "سطح کوانتیزاسیون"
+ },
+ "tooltip": {
+ "delete": "حذف مدل",
+ "repull": "دریافت دوباره مدل"
+ },
+ "confirm": {
+ "delete": "آیا مطمئن هستید که می خواهید این مدل را حذف کنید؟",
+ "repull": "آیا مطمئن هستید که می خواهید این مدل را دوباره دریافت کنید؟"
+ },
+ "modal": {
+ "title": "افزودن مدل جدید",
+ "placeholder": "نام مدل را وارد کنید",
+ "pull": "دریافت مدل"
+ },
+ "notification": {
+ "pullModel": "در حال دریافت مدل",
+ "pullModelDescription": "در حال دریافت مدل {{modelName}}. برای جزئیات بیشتر، آیکون افزونه را بررسی کنید.",
+ "success": "موفقیت",
+ "error": "خطا",
+ "successDescription": "مدل با موفقیت دریافت شد",
+ "successDeleteDescription": "مدل با موفقیت حذف شد",
+ "someError": "مشکلی پیش آمد. لطفا بعدا دوباره امتحان کنید"
+ }
+ },
+ "managePrompts": {
+ "title": "مدیریت پرامپتها",
+ "addBtn": "اضافه کردن پرامپت جدید",
+ "option1": "عادی",
+ "option2": "RAG",
+ "questionPrompt": "سوال پرامپت",
+ "columns": {
+ "title": "عنولن",
+ "prompt": "پرامپت",
+ "type": "نوع پرامپت",
+ "actions": "اقدامات"
+ },
+ "systemPrompt": "پرامپت سیستم ",
+ "quickPrompt": "پرامپت سریع",
+ "tooltip": {
+ "delete": "پاک کردن پرامپت",
+ "edit": "ویرایش پرامپت"
+ },
+ "confirm": {
+ "delete": "آیا مطمئن هستید که می خواهید این پرامپت را حذف کنید؟ این عمل قابل برگشت نیست."
+ },
+ "modal": {
+ "addTitle": "اضافه کردن پرامپت جدید",
+ "editTitle": "ویرایش پرامپت"
+ },
+ "form": {
+ "title": {
+ "label": "عنوان",
+ "placeholder": "پرامپت عالی من",
+ "required": "لطفا یک عنوان وارد کنید"
+ },
+ "prompt": {
+ "label": "پرامپت",
+ "placeholder": "پرامپت وارد کنید",
+ "required": "لطفا یک پرامپت وارد کنید",
+ "help": "می توانید از {key} به عنوان متغیر در درخواست خود استفاده کنید."
+ },
+ "isSystem": {
+ "label": "یک پرامپت سیستمی باشد"
+ },
+ "btnSave": {
+ "saving": "در حال اضافه کردن پرامپت...",
+ "save": "اضافه کردن پرامپت"
+ },
+ "btnEdit": {
+ "saving": "در حال به روزرسانی پرامپت...",
+ "save": "به روزرسانی پرامپت"
+ }
+ },
+ "notification": {
+ "addSuccess": "پرامپت اضافه شد",
+ "addSuccessDesc": "پرامپت با موفقیت اضافه شد",
+ "error": "خطا",
+ "someError": "مشکلی پیش آمد. لطفا بعدا دوباره امتحان کنید",
+ "updatedSuccess": "پرامپت به روز شد",
+ "updatedSuccessDesc": "پرامپت با موفقیت به روز شد",
+ "deletedSuccess": "پرامپت حذف شد",
+ "deletedSuccessDesc": "پرامپت با موفقیت حذف شد"
+ }
+ },
+ "manageShare": {
+ "title": "مدیریت اشتراک گذاری",
+ "heading": "پیکربندی URL اشتراک گذاری صفحه",
+ "form": {
+ "url": {
+ "label": "آدرس اشتراک گذاری صفحه",
+ "placeholder": "URL اشتراک گذاری صفحه را وارد کنید",
+ "required": "لطفا URL اشتراک گذاری صفحه خود را وارد کنید!",
+ "help": "به دلایل حفظ حریم خصوصی، می توانید اشتراک گذاری صفحه را خودتان میزبانی کنید و URL را در اینجا ارائه دهید. بیشتر بدانید."
+ }
+ },
+ "webshare": {
+ "heading": "اشتراک گذاری وب",
+ "columns": {
+ "title": "عنوان",
+ "url": "URL",
+ "actions": "اقدامات"
+ },
+ "tooltip": {
+ "delete": "حذف اشتراک گذاری"
+ },
+ "confirm": {
+ "delete": "آیا مطمئن هستید که می خواهید این اشتراک گذاری را حذف کنید؟ این عمل قابل برگشت نیست."
+ },
+ "label": "مدیریت اشتراک گذاری صفحه",
+ "description": "ویژگی اشتراک گذاری صفحه را فعال یا غیرفعال کنید"
+ },
+ "notification": {
+ "pageShareSuccess": "URL اشتراک گذاری صفحه با موفقیت به روز شد",
+ "someError": "مشکلی پیش آمد. لطفا بعدا دوباره امتحان کنید",
+ "webShareDeleteSuccess": "اشتراک گذاری وب با موفقیت حذف شد"
+ }
+ },
+ "ollamaSettings": {
+ "title": "تنظیمات Ollama",
+ "heading": "پیکربندی Ollama",
+ "settings": {
+ "ollamaUrl": {
+ "label": "آدرس Ollama",
+ "placeholder": "URL Ollama را وارد کنید"
+ },
+ "advanced": {
+ "label": "پیکربندی پیشرفته URL Ollama",
+ "urlRewriteEnabled": {
+ "label": "URL مبدا سفارشی را فعال یا غیرفعال کنید"
+ },
+ "rewriteUrl": {
+ "label": "URL مبدا سفارشی",
+ "placeholder": "URL مبدا سفارشی را وارد کنید"
+ },
+ "headers": {
+ "label": "هدرهای سفارشی",
+ "add": "افزودن هدر",
+ "key": {
+ "label": "کلید هدر",
+ "placeholder": "Authorization"
+ },
+ "value": {
+ "label": "مقدار هدر",
+ "placeholder": "Bearer token"
+ }
+ },
+ "help": "اگر با Ollama در Page Assist مشکل اتصال دارید، می توانید یک URL اصلی سفارشی پیکربندی کنید. برای کسب اطلاعات بیشتر در مورد پیکربندی، اینجا را کلیک کنید."
+ }
+ }
+ },
+ "manageSearch": {
+ "title": "مدیریت جستجوی وب",
+ "heading": "پیکربندی جستجوی وب"
+ },
+ "about": {
+ "title": "درباره",
+ "heading": "درباره",
+ "chromeVersion": "نسخه دستیار صفحه",
+ "ollamaVersion": "نسخه Ollama",
+ "support": "شما می توانید با کمک مالی یا حمایت مالی از طریق پلتفرم های زیر از پروژه Page Assist حمایت کنید:",
+ "koFi": "پشتیبانی در Ko-fi",
+ "githubSponsor": "حمایت مالی در GitHub",
+ "githubRepo": "مخزن GitHub"
+ },
+ "manageKnowledge": {
+ "title": "مدیریت دانش",
+ "heading": "پیکربندی پایگاه دانش"
+ },
+ "rag": {
+ "title": "تنظیمات RAG",
+ "ragSettings": {
+ "label": "تنظیمات RAG",
+ "model": {
+ "label": "مدل جاسازی",
+ "required": "لطفا یک مدل را انتخاب کنید",
+ "help": "به شدت توصیه می شود از مدل های جاسازی مانند `nomic-embed-text` استفاده کنید.",
+ "placeholder": "یک مدل را انتخاب کنید"
+ },
+ "chunkSize": {
+ "label": "اندازه تکه",
+ "placeholder": "اندازه تکه را وارد کنید",
+ "required": "لطفا اندازه تکه را وارد کنید"
+ },
+ "chunkOverlap": {
+ "label": "همپوشانی تکه",
+ "placeholder": "داخل تکه همپوشانی شوید",
+ "required": "لطفا یک همپوشانی تکه ای وارد کنید"
+ },
+ "totalFilePerKB": {
+ "label": "محدودیت فایل پیش فرض پایگاه دانش",
+ "placeholder": "محدودیت فایل پیش فرض را وارد کنید (به عنوان مثال، 10)",
+ "required": "لطفا محدودیت پیش فرض فایل را وارد کنید"
+ }
+ },
+ "prompt": {
+ "label": "پیکربندی پرامپت RAG",
+ "option1": "عادی",
+ "option2": "وب",
+ "alert": "پیکربندی اعلان سیستم در اینجا منسوخ شده است. لطفا از بخش مدیریت پرامپتها برای افزودن یا ویرایش درخواستها استفاده کنید. این بخش در نسخه بعدی حذف خواهد شد",
+ "systemPrompt": "پرامپت سیستم",
+ "systemPromptPlaceholder": "پرامپت سیستم را وارد کنید",
+ "webSearchPrompt": "پرامپت جستجوی وب",
+ "webSearchPromptHelp": "«{search_results}» را از پرامپت حذف نکنید.",
+ "webSearchPromptError": "لطفا یک پرامپت جستجوی وب وارد کنید",
+ "webSearchPromptPlaceholder": "پرامپت جستجوی وب را وارد کنید",
+ "webSearchFollowUpPrompt": "پرامپت پیگیری جستجوی وب",
+ "webSearchFollowUpPromptHelp": "«{chat_history}» و «{question}» را از پرامپت حذف نکنید.",
+ "webSearchFollowUpPromptError": "لطفا پرامپت پیگیری جستجوی وب خود را وارد کنید!",
+ "webSearchFollowUpPromptPlaceholder": "پرامپت پیگیری جستجوی وب شما"
+ }
+ },
+ "chromeAiSettings": {
+ "title": "تنظیمات هوش مصنوعی کروم"
+ }
+}
diff --git a/src/assets/locale/fa/sidepanel.json b/src/assets/locale/fa/sidepanel.json
new file mode 100644
index 0000000..8ef8579
--- /dev/null
+++ b/src/assets/locale/fa/sidepanel.json
@@ -0,0 +1,7 @@
+{
+ "tooltip": {
+ "embed": "ممکن است چند دقیقه طول بکشد تا صفحه جاسازی شود. لطفاً منتظر بمانید...",
+ "clear": "پاک کردن تاریخچه گپ",
+ "history": "تاریخچه گپ"
+ }
+}
diff --git a/src/entries/options/App.tsx b/src/entries/options/App.tsx
index 620b183..b385df8 100644
--- a/src/entries/options/App.tsx
+++ b/src/entries/options/App.tsx
@@ -1,5 +1,6 @@
import { QueryClient, QueryClientProvider } from "@tanstack/react-query"
import { MemoryRouter } from "react-router-dom"
+import { useEffect } from "react"
const queryClient = new QueryClient()
import { ConfigProvider, Empty, theme } from "antd"
import { StyleProvider } from "@ant-design/cssinjs"
@@ -12,6 +13,14 @@ import { PageAssistProvider } from "@/components/Common/PageAssistProvider"
function IndexOption() {
const { mode } = useDarkMode()
const { t, i18n } = useTranslation()
+
+ useEffect(() => {
+ if (i18n.resolvedLanguage) {
+ document.documentElement.lang = i18n.resolvedLanguage;
+ document.documentElement.dir = i18n.dir(i18n.resolvedLanguage);
+ }
+ }, [i18n, i18n.resolvedLanguage]);
+
return (
{
+ if (i18n.resolvedLanguage) {
+ document.documentElement.lang = i18n.resolvedLanguage;
+ document.documentElement.dir = i18n.dir(i18n.resolvedLanguage);
+ }
+ }, [i18n, i18n.resolvedLanguage]);
+
return (