From ce76303a3278a6e51435867c988fdd25044fb263 Mon Sep 17 00:00:00 2001
From: shamoon <4887959+shamoon@users.noreply.github.com>
Date: Sat, 14 Jun 2025 19:14:51 -0700
Subject: [PATCH] Feature: add Persian translation (#10183)
---
src-ui/angular.json | 1 +
src-ui/messages.xlf | 41 ++++++++++--------
src-ui/setup-jest.ts | 2 +
src-ui/src/app/services/settings.service.ts | 6 +++
src-ui/src/main.ts | 2 +
src/locale/en_US/LC_MESSAGES/django.po | 48 +++++++++++----------
src/paperless/settings.py | 1 +
7 files changed, 62 insertions(+), 39 deletions(-)
diff --git a/src-ui/angular.json b/src-ui/angular.json
index 60c91c3a1..643d6bda0 100644
--- a/src-ui/angular.json
+++ b/src-ui/angular.json
@@ -27,6 +27,7 @@
"el-GR": "src/locale/messages.el_GR.xlf",
"en-GB": "src/locale/messages.en_GB.xlf",
"es-ES": "src/locale/messages.es_ES.xlf",
+ "fa-IR": "src/locale/messages.fa_IR.xlf",
"fi-FI": "src/locale/messages.fi_FI.xlf",
"fr-FR": "src/locale/messages.fr_FR.xlf",
"hu-HU": "src/locale/messages.hu_HU.xlf",
diff --git a/src-ui/messages.xlf b/src-ui/messages.xlf
index a5bff1cd1..623758456 100644
--- a/src-ui/messages.xlf
+++ b/src-ui/messages.xlf
@@ -9805,123 +9805,130 @@
171
+
+ Persian
+
+ src/app/services/settings.service.ts
+ 177
+
+
Polish
src/app/services/settings.service.ts
- 177
+ 183
Portuguese (Brazil)
src/app/services/settings.service.ts
- 183
+ 189
Portuguese
src/app/services/settings.service.ts
- 189
+ 195
Romanian
src/app/services/settings.service.ts
- 195
+ 201
Russian
src/app/services/settings.service.ts
- 201
+ 207
Slovak
src/app/services/settings.service.ts
- 207
+ 213
Slovenian
src/app/services/settings.service.ts
- 213
+ 219
Serbian
src/app/services/settings.service.ts
- 219
+ 225
Swedish
src/app/services/settings.service.ts
- 225
+ 231
Turkish
src/app/services/settings.service.ts
- 231
+ 237
Ukrainian
src/app/services/settings.service.ts
- 237
+ 243
Chinese Simplified
src/app/services/settings.service.ts
- 243
+ 249
Chinese Traditional
src/app/services/settings.service.ts
- 249
+ 255
ISO 8601
src/app/services/settings.service.ts
- 257
+ 263
Successfully completed one-time migratration of settings to the database!
src/app/services/settings.service.ts
- 590
+ 596
Unable to migrate settings to the database, please try saving manually.
src/app/services/settings.service.ts
- 591
+ 597
You can restart the tour from the settings page.
src/app/services/settings.service.ts
- 664
+ 670
diff --git a/src-ui/setup-jest.ts b/src-ui/setup-jest.ts
index 6ac94a275..fbbb624db 100644
--- a/src-ui/setup-jest.ts
+++ b/src-ui/setup-jest.ts
@@ -20,6 +20,7 @@ import localeDe from '@angular/common/locales/de'
import localeEl from '@angular/common/locales/el'
import localeEnGb from '@angular/common/locales/en-GB'
import localeEs from '@angular/common/locales/es'
+import localeFa from '@angular/common/locales/fa'
import localeFi from '@angular/common/locales/fi'
import localeFr from '@angular/common/locales/fr'
import localeHu from '@angular/common/locales/hu'
@@ -53,6 +54,7 @@ registerLocaleData(localeDe)
registerLocaleData(localeEl)
registerLocaleData(localeEnGb)
registerLocaleData(localeEs)
+registerLocaleData(localeFa)
registerLocaleData(localeFi)
registerLocaleData(localeFr)
registerLocaleData(localeHu)
diff --git a/src-ui/src/app/services/settings.service.ts b/src-ui/src/app/services/settings.service.ts
index 454ddc04a..5d9ab9802 100644
--- a/src-ui/src/app/services/settings.service.ts
+++ b/src-ui/src/app/services/settings.service.ts
@@ -172,6 +172,12 @@ const LANGUAGE_OPTIONS = [
englishName: 'Norwegian',
dateInputFormat: 'dd.mm.yyyy',
},
+ {
+ code: 'fa-ir',
+ name: $localize`Persian`,
+ englishName: 'Persian',
+ dateInputFormat: 'yyyy-mm-dd',
+ },
{
code: 'pl-pl',
name: $localize`Polish`,
diff --git a/src-ui/src/main.ts b/src-ui/src/main.ts
index ae6f80915..3e7846dfd 100644
--- a/src-ui/src/main.ts
+++ b/src-ui/src/main.ts
@@ -162,6 +162,7 @@ import localeDe from '@angular/common/locales/de'
import localeEl from '@angular/common/locales/el'
import localeEnGb from '@angular/common/locales/en-GB'
import localeEs from '@angular/common/locales/es'
+import localeFa from '@angular/common/locales/fa'
import localeFi from '@angular/common/locales/fi'
import localeFr from '@angular/common/locales/fr'
import localeHu from '@angular/common/locales/hu'
@@ -198,6 +199,7 @@ registerLocaleData(localeDe)
registerLocaleData(localeEl)
registerLocaleData(localeEnGb)
registerLocaleData(localeEs)
+registerLocaleData(localeFa)
registerLocaleData(localeFi)
registerLocaleData(localeFr)
registerLocaleData(localeHu)
diff --git a/src/locale/en_US/LC_MESSAGES/django.po b/src/locale/en_US/LC_MESSAGES/django.po
index e3f752f2a..819aceea7 100644
--- a/src/locale/en_US/LC_MESSAGES/django.po
+++ b/src/locale/en_US/LC_MESSAGES/django.po
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-05-24 17:14+0000\n"
+"POT-Creation-Date: 2025-06-14 19:08-0700\n"
"PO-Revision-Date: 2022-02-17 04:17\n"
"Last-Translator: \n"
"Language-Team: English\n"
@@ -1694,90 +1694,94 @@ msgid "Spanish"
msgstr ""
#: paperless/settings.py:766
-msgid "Finnish"
+msgid "Persian"
msgstr ""
#: paperless/settings.py:767
-msgid "French"
+msgid "Finnish"
msgstr ""
#: paperless/settings.py:768
-msgid "Hungarian"
+msgid "French"
msgstr ""
#: paperless/settings.py:769
-msgid "Italian"
+msgid "Hungarian"
msgstr ""
#: paperless/settings.py:770
-msgid "Japanese"
+msgid "Italian"
msgstr ""
#: paperless/settings.py:771
-msgid "Korean"
+msgid "Japanese"
msgstr ""
#: paperless/settings.py:772
-msgid "Luxembourgish"
+msgid "Korean"
msgstr ""
#: paperless/settings.py:773
-msgid "Norwegian"
+msgid "Luxembourgish"
msgstr ""
#: paperless/settings.py:774
-msgid "Dutch"
+msgid "Norwegian"
msgstr ""
#: paperless/settings.py:775
-msgid "Polish"
+msgid "Dutch"
msgstr ""
#: paperless/settings.py:776
-msgid "Portuguese (Brazil)"
+msgid "Polish"
msgstr ""
#: paperless/settings.py:777
-msgid "Portuguese"
+msgid "Portuguese (Brazil)"
msgstr ""
#: paperless/settings.py:778
-msgid "Romanian"
+msgid "Portuguese"
msgstr ""
#: paperless/settings.py:779
-msgid "Russian"
+msgid "Romanian"
msgstr ""
#: paperless/settings.py:780
-msgid "Slovak"
+msgid "Russian"
msgstr ""
#: paperless/settings.py:781
-msgid "Slovenian"
+msgid "Slovak"
msgstr ""
#: paperless/settings.py:782
-msgid "Serbian"
+msgid "Slovenian"
msgstr ""
#: paperless/settings.py:783
-msgid "Swedish"
+msgid "Serbian"
msgstr ""
#: paperless/settings.py:784
-msgid "Turkish"
+msgid "Swedish"
msgstr ""
#: paperless/settings.py:785
-msgid "Ukrainian"
+msgid "Turkish"
msgstr ""
#: paperless/settings.py:786
-msgid "Chinese Simplified"
+msgid "Ukrainian"
msgstr ""
#: paperless/settings.py:787
+msgid "Chinese Simplified"
+msgstr ""
+
+#: paperless/settings.py:788
msgid "Chinese Traditional"
msgstr ""
diff --git a/src/paperless/settings.py b/src/paperless/settings.py
index 1eaf93920..41f9f0ce3 100644
--- a/src/paperless/settings.py
+++ b/src/paperless/settings.py
@@ -763,6 +763,7 @@ LANGUAGES = [
("el-gr", _("Greek")),
("en-gb", _("English (GB)")),
("es-es", _("Spanish")),
+ ("fa-ir", _("Persian")),
("fi-fi", _("Finnish")),
("fr-fr", _("French")),
("hu-hu", _("Hungarian")),