]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Feature: Chinese Traditional translation (#9076)
authorLokiHung <80607635+LokiHung@users.noreply.github.com>
Wed, 12 Feb 2025 02:56:24 +0000 (10:56 +0800)
committerGitHub <noreply@github.com>
Wed, 12 Feb 2025 02:56:24 +0000 (02:56 +0000)
---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
src-ui/angular.json
src-ui/messages.xlf
src-ui/setup-jest.ts
src-ui/src/app/services/settings.service.ts
src-ui/src/main.ts
src/locale/en_US/LC_MESSAGES/django.po
src/paperless/settings.py

index c9377086057867bdd008ea12047e7a6955361634..4c7fb6c12f46c50f0770ac4212098dfa9dfdb87d 100644 (file)
@@ -47,7 +47,8 @@
           "sv-SE": "src/locale/messages.sv_SE.xlf",
           "tr-TR": "src/locale/messages.tr_TR.xlf",
           "uk-UA": "src/locale/messages.uk_UA.xlf",
-          "zh-CN": "src/locale/messages.zh_CN.xlf"
+          "zh-CN": "src/locale/messages.zh_CN.xlf",
+          "zh-TW": "src/locale/messages.zh_TW.xlf"
         }
       },
       "architect": {
index a578445c532fe1b4e62f4d953d262cf40ff78a28..b9af58af361663e90152f3c7ba57e08189a38d6b 100644 (file)
           <context context-type="linenumber">243</context>
         </context-group>
       </trans-unit>
+      <trans-unit id="8082606363137705994" datatype="html">
+        <source>Chinese Traditional</source>
+        <context-group purpose="location">
+          <context context-type="sourcefile">src/app/services/settings.service.ts</context>
+          <context context-type="linenumber">249</context>
+        </context-group>
+      </trans-unit>
       <trans-unit id="4912706592792948707" datatype="html">
         <source>ISO 8601</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/services/settings.service.ts</context>
-          <context context-type="linenumber">251</context>
+          <context context-type="linenumber">257</context>
         </context-group>
       </trans-unit>
       <trans-unit id="313643372755303297" datatype="html">
         <source>Successfully completed one-time migratration of settings to the database!</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/services/settings.service.ts</context>
-          <context context-type="linenumber">584</context>
+          <context context-type="linenumber">590</context>
         </context-group>
       </trans-unit>
       <trans-unit id="5558341108007064934" datatype="html">
         <source>Unable to migrate settings to the database, please try saving manually.</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/services/settings.service.ts</context>
-          <context context-type="linenumber">585</context>
+          <context context-type="linenumber">591</context>
         </context-group>
       </trans-unit>
       <trans-unit id="1168781785897678748" datatype="html">
         <source>You can restart the tour from the settings page.</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/services/settings.service.ts</context>
-          <context context-type="linenumber">661</context>
+          <context context-type="linenumber">667</context>
         </context-group>
       </trans-unit>
       <trans-unit id="3852289441366561594" datatype="html">
index 52dccaf021731d49db339ff730c33eb69c911a91..a688f4a6e832f4735a2df62179a748e2c4ef063e 100644 (file)
@@ -40,6 +40,7 @@ import localeSv from '@angular/common/locales/sv'
 import localeTr from '@angular/common/locales/tr'
 import localeUk from '@angular/common/locales/uk'
 import localeZh from '@angular/common/locales/zh'
+import localeZhHant from '@angular/common/locales/zh-Hant'
 
 registerLocaleData(localeAf)
 registerLocaleData(localeAr)
@@ -73,6 +74,7 @@ registerLocaleData(localeSv)
 registerLocaleData(localeTr)
 registerLocaleData(localeUk)
 registerLocaleData(localeZh)
+registerLocaleData(localeZhHant)
 
 /* global mocks for jsdom */
 const mock = () => {
index 9e1b3e360e42e75edf71c5099d1dd3b8d0835bd3..80e3b347479bc92fd636e06b18c8f16a8bac308b 100644 (file)
@@ -244,6 +244,12 @@ const LANGUAGE_OPTIONS = [
     englishName: 'Chinese Simplified',
     dateInputFormat: 'yyyy-mm-dd',
   },
+  {
+    code: 'zh-tw',
+    name: $localize`Chinese Traditional`,
+    englishName: 'Chinese Traditional',
+    dateInputFormat: 'yyyy/mm/dd',
+  },
 ]
 
 const ISO_LANGUAGE_OPTION: LanguageOption = {
index 484a77c8212e90d8f35a1bb40b01908158c4c280..a9d446891b2aa9470dfcaef0f51e16f9f46849ae 100644 (file)
@@ -181,6 +181,7 @@ import localeSv from '@angular/common/locales/sv'
 import localeTr from '@angular/common/locales/tr'
 import localeUk from '@angular/common/locales/uk'
 import localeZh from '@angular/common/locales/zh'
+import localeZhHant from '@angular/common/locales/zh-Hant'
 import { CorrespondentNamePipe } from './app/pipes/correspondent-name.pipe'
 import { DocumentTypeNamePipe } from './app/pipes/document-type-name.pipe'
 import { StoragePathNamePipe } from './app/pipes/storage-path-name.pipe'
@@ -217,6 +218,7 @@ registerLocaleData(localeSv)
 registerLocaleData(localeTr)
 registerLocaleData(localeUk)
 registerLocaleData(localeZh)
+registerLocaleData(localeZhHant)
 
 function initializeApp(settings: SettingsService) {
   return () => {
index 57494a5c25e389a7f1e30322683014906a44c3af..32d60ac196abd3bd10224e7ac657111b1ddade30 100644 (file)
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: paperless-ngx\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-01-28 12:17-0800\n"
+"POT-Creation-Date: 2025-02-11 18:43-0800\n"
 "PO-Revision-Date: 2022-02-17 04:17\n"
 "Last-Translator: \n"
 "Language-Team: English\n"
@@ -21,67 +21,67 @@ msgstr ""
 msgid "Documents"
 msgstr ""
 
-#: documents/filters.py:344
+#: documents/filters.py:369
 msgid "Value must be valid JSON."
 msgstr ""
 
-#: documents/filters.py:363
+#: documents/filters.py:388
 msgid "Invalid custom field query expression"
 msgstr ""
 
-#: documents/filters.py:373
+#: documents/filters.py:398
 msgid "Invalid expression list. Must be nonempty."
 msgstr ""
 
-#: documents/filters.py:394
+#: documents/filters.py:419
 msgid "Invalid logical operator {op!r}"
 msgstr ""
 
-#: documents/filters.py:408
+#: documents/filters.py:433
 msgid "Maximum number of query conditions exceeded."
 msgstr ""
 
-#: documents/filters.py:473
+#: documents/filters.py:498
 msgid "{name!r} is not a valid custom field."
 msgstr ""
 
-#: documents/filters.py:510
+#: documents/filters.py:535
 msgid "{data_type} does not support query expr {expr!r}."
 msgstr ""
 
-#: documents/filters.py:618
+#: documents/filters.py:643
 msgid "Maximum nesting depth exceeded."
 msgstr ""
 
-#: documents/filters.py:785
+#: documents/filters.py:813
 msgid "Custom field not found"
 msgstr ""
 
-#: documents/models.py:41 documents/models.py:801
+#: documents/models.py:41 documents/models.py:806
 msgid "owner"
 msgstr ""
 
-#: documents/models.py:58 documents/models.py:1012
+#: documents/models.py:58 documents/models.py:1017
 msgid "None"
 msgstr ""
 
-#: documents/models.py:59 documents/models.py:1013
+#: documents/models.py:59 documents/models.py:1018
 msgid "Any word"
 msgstr ""
 
-#: documents/models.py:60 documents/models.py:1014
+#: documents/models.py:60 documents/models.py:1019
 msgid "All words"
 msgstr ""
 
-#: documents/models.py:61 documents/models.py:1015
+#: documents/models.py:61 documents/models.py:1020
 msgid "Exact match"
 msgstr ""
 
-#: documents/models.py:62 documents/models.py:1016
+#: documents/models.py:62 documents/models.py:1021
 msgid "Regular expression"
 msgstr ""
 
-#: documents/models.py:63 documents/models.py:1017
+#: documents/models.py:63 documents/models.py:1022
 msgid "Fuzzy word"
 msgstr ""
 
@@ -89,20 +89,20 @@ msgstr ""
 msgid "Automatic"
 msgstr ""
 
-#: documents/models.py:67 documents/models.py:433 documents/models.py:1493
+#: documents/models.py:67 documents/models.py:433 documents/models.py:1498
 #: paperless_mail/models.py:23 paperless_mail/models.py:143
 msgid "name"
 msgstr ""
 
-#: documents/models.py:69 documents/models.py:1080
+#: documents/models.py:69 documents/models.py:1085
 msgid "match"
 msgstr ""
 
-#: documents/models.py:72 documents/models.py:1083
+#: documents/models.py:72 documents/models.py:1088
 msgid "matching algorithm"
 msgstr ""
 
-#: documents/models.py:77 documents/models.py:1088
+#: documents/models.py:77 documents/models.py:1093
 msgid "is insensitive"
 msgstr ""
 
@@ -168,7 +168,7 @@ msgstr ""
 msgid "title"
 msgstr ""
 
-#: documents/models.py:175 documents/models.py:715
+#: documents/models.py:175 documents/models.py:720
 msgid "content"
 msgstr ""
 
@@ -206,8 +206,8 @@ msgstr ""
 msgid "The number of pages of the document."
 msgstr ""
 
-#: documents/models.py:221 documents/models.py:401 documents/models.py:721
-#: documents/models.py:759 documents/models.py:830 documents/models.py:888
+#: documents/models.py:221 documents/models.py:401 documents/models.py:726
+#: documents/models.py:764 documents/models.py:835 documents/models.py:893
 msgid "created"
 msgstr ""
 
@@ -255,8 +255,8 @@ msgstr ""
 msgid "The position of this document in your physical document archive."
 msgstr ""
 
-#: documents/models.py:295 documents/models.py:732 documents/models.py:786
-#: documents/models.py:1536
+#: documents/models.py:295 documents/models.py:737 documents/models.py:791
+#: documents/models.py:1541
 msgid "document"
 msgstr ""
 
@@ -320,11 +320,11 @@ msgstr ""
 msgid "Title"
 msgstr ""
 
-#: documents/models.py:420 documents/models.py:1032
+#: documents/models.py:420 documents/models.py:1037
 msgid "Created"
 msgstr ""
 
-#: documents/models.py:421 documents/models.py:1031
+#: documents/models.py:421 documents/models.py:1036
 msgid "Added"
 msgstr ""
 
@@ -392,7 +392,7 @@ msgstr ""
 msgid "Document display fields"
 msgstr ""
 
-#: documents/models.py:473 documents/models.py:531
+#: documents/models.py:473 documents/models.py:536
 msgid "saved view"
 msgstr ""
 
@@ -572,579 +572,599 @@ msgstr ""
 msgid "custom fields query"
 msgstr ""
 
-#: documents/models.py:534
+#: documents/models.py:525
+msgid "created to"
+msgstr ""
+
+#: documents/models.py:526
+msgid "created from"
+msgstr ""
+
+#: documents/models.py:527
+msgid "added to"
+msgstr ""
+
+#: documents/models.py:528
+msgid "added from"
+msgstr ""
+
+#: documents/models.py:529
+msgid "mime type is"
+msgstr ""
+
+#: documents/models.py:539
 msgid "rule type"
 msgstr ""
 
-#: documents/models.py:536
+#: documents/models.py:541
 msgid "value"
 msgstr ""
 
-#: documents/models.py:539
+#: documents/models.py:544
 msgid "filter rule"
 msgstr ""
 
-#: documents/models.py:540
+#: documents/models.py:545
 msgid "filter rules"
 msgstr ""
 
-#: documents/models.py:651
+#: documents/models.py:656
 msgid "Task ID"
 msgstr ""
 
-#: documents/models.py:652
+#: documents/models.py:657
 msgid "Celery ID for the Task that was run"
 msgstr ""
 
-#: documents/models.py:657
+#: documents/models.py:662
 msgid "Acknowledged"
 msgstr ""
 
-#: documents/models.py:658
+#: documents/models.py:663
 msgid "If the task is acknowledged via the frontend or API"
 msgstr ""
 
-#: documents/models.py:664
+#: documents/models.py:669
 msgid "Task Filename"
 msgstr ""
 
-#: documents/models.py:665
+#: documents/models.py:670
 msgid "Name of the file which the Task was run for"
 msgstr ""
 
-#: documents/models.py:671
+#: documents/models.py:676
 msgid "Task Name"
 msgstr ""
 
-#: documents/models.py:672
+#: documents/models.py:677
 msgid "Name of the Task which was run"
 msgstr ""
 
-#: documents/models.py:679
+#: documents/models.py:684
 msgid "Task State"
 msgstr ""
 
-#: documents/models.py:680
+#: documents/models.py:685
 msgid "Current state of the task being run"
 msgstr ""
 
-#: documents/models.py:685
+#: documents/models.py:690
 msgid "Created DateTime"
 msgstr ""
 
-#: documents/models.py:686
+#: documents/models.py:691
 msgid "Datetime field when the task result was created in UTC"
 msgstr ""
 
-#: documents/models.py:691
+#: documents/models.py:696
 msgid "Started DateTime"
 msgstr ""
 
-#: documents/models.py:692
+#: documents/models.py:697
 msgid "Datetime field when the task was started in UTC"
 msgstr ""
 
-#: documents/models.py:697
+#: documents/models.py:702
 msgid "Completed DateTime"
 msgstr ""
 
-#: documents/models.py:698
+#: documents/models.py:703
 msgid "Datetime field when the task was completed in UTC"
 msgstr ""
 
-#: documents/models.py:703
+#: documents/models.py:708
 msgid "Result Data"
 msgstr ""
 
-#: documents/models.py:705
+#: documents/models.py:710
 msgid "The data returned by the task"
 msgstr ""
 
-#: documents/models.py:717
+#: documents/models.py:722
 msgid "Note for the document"
 msgstr ""
 
-#: documents/models.py:741
+#: documents/models.py:746
 msgid "user"
 msgstr ""
 
-#: documents/models.py:746
+#: documents/models.py:751
 msgid "note"
 msgstr ""
 
-#: documents/models.py:747
+#: documents/models.py:752
 msgid "notes"
 msgstr ""
 
-#: documents/models.py:755
+#: documents/models.py:760
 msgid "Archive"
 msgstr ""
 
-#: documents/models.py:756
+#: documents/models.py:761
 msgid "Original"
 msgstr ""
 
-#: documents/models.py:767 paperless_mail/models.py:75
+#: documents/models.py:772 paperless_mail/models.py:75
 msgid "expiration"
 msgstr ""
 
-#: documents/models.py:774
+#: documents/models.py:779
 msgid "slug"
 msgstr ""
 
-#: documents/models.py:806
+#: documents/models.py:811
 msgid "share link"
 msgstr ""
 
-#: documents/models.py:807
+#: documents/models.py:812
 msgid "share links"
 msgstr ""
 
-#: documents/models.py:819
+#: documents/models.py:824
 msgid "String"
 msgstr ""
 
-#: documents/models.py:820
+#: documents/models.py:825
 msgid "URL"
 msgstr ""
 
-#: documents/models.py:821
+#: documents/models.py:826
 msgid "Date"
 msgstr ""
 
-#: documents/models.py:822
+#: documents/models.py:827
 msgid "Boolean"
 msgstr ""
 
-#: documents/models.py:823
+#: documents/models.py:828
 msgid "Integer"
 msgstr ""
 
-#: documents/models.py:824
+#: documents/models.py:829
 msgid "Float"
 msgstr ""
 
-#: documents/models.py:825
+#: documents/models.py:830
 msgid "Monetary"
 msgstr ""
 
-#: documents/models.py:826
+#: documents/models.py:831
 msgid "Document Link"
 msgstr ""
 
-#: documents/models.py:827
+#: documents/models.py:832
 msgid "Select"
 msgstr ""
 
-#: documents/models.py:839
+#: documents/models.py:844
 msgid "data type"
 msgstr ""
 
-#: documents/models.py:846
+#: documents/models.py:851
 msgid "extra data"
 msgstr ""
 
-#: documents/models.py:850
+#: documents/models.py:855
 msgid "Extra data for the custom field, such as select options"
 msgstr ""
 
-#: documents/models.py:856
+#: documents/models.py:861
 msgid "custom field"
 msgstr ""
 
-#: documents/models.py:857
+#: documents/models.py:862
 msgid "custom fields"
 msgstr ""
 
-#: documents/models.py:954
+#: documents/models.py:959
 msgid "custom field instance"
 msgstr ""
 
-#: documents/models.py:955
+#: documents/models.py:960
 msgid "custom field instances"
 msgstr ""
 
-#: documents/models.py:1020
+#: documents/models.py:1025
 msgid "Consumption Started"
 msgstr ""
 
-#: documents/models.py:1021
+#: documents/models.py:1026
 msgid "Document Added"
 msgstr ""
 
-#: documents/models.py:1022
+#: documents/models.py:1027
 msgid "Document Updated"
 msgstr ""
 
-#: documents/models.py:1023
+#: documents/models.py:1028
 msgid "Scheduled"
 msgstr ""
 
-#: documents/models.py:1026
+#: documents/models.py:1031
 msgid "Consume Folder"
 msgstr ""
 
-#: documents/models.py:1027
+#: documents/models.py:1032
 msgid "Api Upload"
 msgstr ""
 
-#: documents/models.py:1028
+#: documents/models.py:1033
 msgid "Mail Fetch"
 msgstr ""
 
-#: documents/models.py:1033
+#: documents/models.py:1038
 msgid "Modified"
 msgstr ""
 
-#: documents/models.py:1034
+#: documents/models.py:1039
 msgid "Custom Field"
 msgstr ""
 
-#: documents/models.py:1037
+#: documents/models.py:1042
 msgid "Workflow Trigger Type"
 msgstr ""
 
-#: documents/models.py:1049
+#: documents/models.py:1054
 msgid "filter path"
 msgstr ""
 
-#: documents/models.py:1054
+#: documents/models.py:1059
 msgid ""
 "Only consume documents with a path that matches this if specified. Wildcards "
 "specified as * are allowed. Case insensitive."
 msgstr ""
 
-#: documents/models.py:1061
+#: documents/models.py:1066
 msgid "filter filename"
 msgstr ""
 
-#: documents/models.py:1066 paperless_mail/models.py:200
+#: documents/models.py:1071 paperless_mail/models.py:200
 msgid ""
 "Only consume documents which entirely match this filename if specified. "
 "Wildcards such as *.pdf or *invoice* are allowed. Case insensitive."
 msgstr ""
 
-#: documents/models.py:1077
+#: documents/models.py:1082
 msgid "filter documents from this mail rule"
 msgstr ""
 
-#: documents/models.py:1093
+#: documents/models.py:1098
 msgid "has these tag(s)"
 msgstr ""
 
-#: documents/models.py:1101
+#: documents/models.py:1106
 msgid "has this document type"
 msgstr ""
 
-#: documents/models.py:1109
+#: documents/models.py:1114
 msgid "has this correspondent"
 msgstr ""
 
-#: documents/models.py:1113
+#: documents/models.py:1118
 msgid "schedule offset days"
 msgstr ""
 
-#: documents/models.py:1116
+#: documents/models.py:1121
 msgid "The number of days to offset the schedule trigger by."
 msgstr ""
 
-#: documents/models.py:1121
+#: documents/models.py:1126
 msgid "schedule is recurring"
 msgstr ""
 
-#: documents/models.py:1124
+#: documents/models.py:1129
 msgid "If the schedule should be recurring."
 msgstr ""
 
-#: documents/models.py:1129
+#: documents/models.py:1134
 msgid "schedule recurring delay in days"
 msgstr ""
 
-#: documents/models.py:1133
+#: documents/models.py:1138
 msgid "The number of days between recurring schedule triggers."
 msgstr ""
 
-#: documents/models.py:1138
+#: documents/models.py:1143
 msgid "schedule date field"
 msgstr ""
 
-#: documents/models.py:1143
+#: documents/models.py:1148
 msgid "The field to check for a schedule trigger."
 msgstr ""
 
-#: documents/models.py:1152
+#: documents/models.py:1157
 msgid "schedule date custom field"
 msgstr ""
 
-#: documents/models.py:1156
+#: documents/models.py:1161
 msgid "workflow trigger"
 msgstr ""
 
-#: documents/models.py:1157
+#: documents/models.py:1162
 msgid "workflow triggers"
 msgstr ""
 
-#: documents/models.py:1165
+#: documents/models.py:1170
 msgid "email subject"
 msgstr ""
 
-#: documents/models.py:1169
+#: documents/models.py:1174
 msgid ""
 "The subject of the email, can include some placeholders, see documentation."
 msgstr ""
 
-#: documents/models.py:1175
+#: documents/models.py:1180
 msgid "email body"
 msgstr ""
 
-#: documents/models.py:1178
+#: documents/models.py:1183
 msgid ""
 "The body (message) of the email, can include some placeholders, see "
 "documentation."
 msgstr ""
 
-#: documents/models.py:1184
+#: documents/models.py:1189
 msgid "emails to"
 msgstr ""
 
-#: documents/models.py:1187
+#: documents/models.py:1192
 msgid "The destination email addresses, comma separated."
 msgstr ""
 
-#: documents/models.py:1193
+#: documents/models.py:1198
 msgid "include document in email"
 msgstr ""
 
-#: documents/models.py:1202
+#: documents/models.py:1207
 msgid "webhook url"
 msgstr ""
 
-#: documents/models.py:1204
+#: documents/models.py:1209
 msgid "The destination URL for the notification."
 msgstr ""
 
-#: documents/models.py:1209
+#: documents/models.py:1214
 msgid "use parameters"
 msgstr ""
 
-#: documents/models.py:1214
+#: documents/models.py:1219
 msgid "send as JSON"
 msgstr ""
 
-#: documents/models.py:1218
+#: documents/models.py:1223
 msgid "webhook parameters"
 msgstr ""
 
-#: documents/models.py:1221
+#: documents/models.py:1226
 msgid "The parameters to send with the webhook URL if body not used."
 msgstr ""
 
-#: documents/models.py:1225
+#: documents/models.py:1230
 msgid "webhook body"
 msgstr ""
 
-#: documents/models.py:1228
+#: documents/models.py:1233
 msgid "The body to send with the webhook URL if parameters not used."
 msgstr ""
 
-#: documents/models.py:1232
+#: documents/models.py:1237
 msgid "webhook headers"
 msgstr ""
 
-#: documents/models.py:1235
+#: documents/models.py:1240
 msgid "The headers to send with the webhook URL."
 msgstr ""
 
-#: documents/models.py:1240
+#: documents/models.py:1245
 msgid "include document in webhook"
 msgstr ""
 
-#: documents/models.py:1251
+#: documents/models.py:1256
 msgid "Assignment"
 msgstr ""
 
-#: documents/models.py:1255
+#: documents/models.py:1260
 msgid "Removal"
 msgstr ""
 
-#: documents/models.py:1259 documents/templates/account/password_reset.html:15
+#: documents/models.py:1264 documents/templates/account/password_reset.html:15
 msgid "Email"
 msgstr ""
 
-#: documents/models.py:1263
+#: documents/models.py:1268
 msgid "Webhook"
 msgstr ""
 
-#: documents/models.py:1267
+#: documents/models.py:1272
 msgid "Workflow Action Type"
 msgstr ""
 
-#: documents/models.py:1273
+#: documents/models.py:1278
 msgid "assign title"
 msgstr ""
 
-#: documents/models.py:1278
+#: documents/models.py:1283
 msgid ""
 "Assign a document title, can include some placeholders, see documentation."
 msgstr ""
 
-#: documents/models.py:1287 paperless_mail/models.py:274
+#: documents/models.py:1292 paperless_mail/models.py:274
 msgid "assign this tag"
 msgstr ""
 
-#: documents/models.py:1296 paperless_mail/models.py:282
+#: documents/models.py:1301 paperless_mail/models.py:282
 msgid "assign this document type"
 msgstr ""
 
-#: documents/models.py:1305 paperless_mail/models.py:296
+#: documents/models.py:1310 paperless_mail/models.py:296
 msgid "assign this correspondent"
 msgstr ""
 
-#: documents/models.py:1314
+#: documents/models.py:1319
 msgid "assign this storage path"
 msgstr ""
 
-#: documents/models.py:1323
+#: documents/models.py:1328
 msgid "assign this owner"
 msgstr ""
 
-#: documents/models.py:1330
+#: documents/models.py:1335
 msgid "grant view permissions to these users"
 msgstr ""
 
-#: documents/models.py:1337
+#: documents/models.py:1342
 msgid "grant view permissions to these groups"
 msgstr ""
 
-#: documents/models.py:1344
+#: documents/models.py:1349
 msgid "grant change permissions to these users"
 msgstr ""
 
-#: documents/models.py:1351
+#: documents/models.py:1356
 msgid "grant change permissions to these groups"
 msgstr ""
 
-#: documents/models.py:1358
+#: documents/models.py:1363
 msgid "assign these custom fields"
 msgstr ""
 
-#: documents/models.py:1365
+#: documents/models.py:1370
 msgid "remove these tag(s)"
 msgstr ""
 
-#: documents/models.py:1370
+#: documents/models.py:1375
 msgid "remove all tags"
 msgstr ""
 
-#: documents/models.py:1377
+#: documents/models.py:1382
 msgid "remove these document type(s)"
 msgstr ""
 
-#: documents/models.py:1382
+#: documents/models.py:1387
 msgid "remove all document types"
 msgstr ""
 
-#: documents/models.py:1389
+#: documents/models.py:1394
 msgid "remove these correspondent(s)"
 msgstr ""
 
-#: documents/models.py:1394
+#: documents/models.py:1399
 msgid "remove all correspondents"
 msgstr ""
 
-#: documents/models.py:1401
+#: documents/models.py:1406
 msgid "remove these storage path(s)"
 msgstr ""
 
-#: documents/models.py:1406
+#: documents/models.py:1411
 msgid "remove all storage paths"
 msgstr ""
 
-#: documents/models.py:1413
+#: documents/models.py:1418
 msgid "remove these owner(s)"
 msgstr ""
 
-#: documents/models.py:1418
+#: documents/models.py:1423
 msgid "remove all owners"
 msgstr ""
 
-#: documents/models.py:1425
+#: documents/models.py:1430
 msgid "remove view permissions for these users"
 msgstr ""
 
-#: documents/models.py:1432
+#: documents/models.py:1437
 msgid "remove view permissions for these groups"
 msgstr ""
 
-#: documents/models.py:1439
+#: documents/models.py:1444
 msgid "remove change permissions for these users"
 msgstr ""
 
-#: documents/models.py:1446
+#: documents/models.py:1451
 msgid "remove change permissions for these groups"
 msgstr ""
 
-#: documents/models.py:1451
+#: documents/models.py:1456
 msgid "remove all permissions"
 msgstr ""
 
-#: documents/models.py:1458
+#: documents/models.py:1463
 msgid "remove these custom fields"
 msgstr ""
 
-#: documents/models.py:1463
+#: documents/models.py:1468
 msgid "remove all custom fields"
 msgstr ""
 
-#: documents/models.py:1472
+#: documents/models.py:1477
 msgid "email"
 msgstr ""
 
-#: documents/models.py:1481
+#: documents/models.py:1486
 msgid "webhook"
 msgstr ""
 
-#: documents/models.py:1485
+#: documents/models.py:1490
 msgid "workflow action"
 msgstr ""
 
-#: documents/models.py:1486
+#: documents/models.py:1491
 msgid "workflow actions"
 msgstr ""
 
-#: documents/models.py:1495 paperless_mail/models.py:145
+#: documents/models.py:1500 paperless_mail/models.py:145
 msgid "order"
 msgstr ""
 
-#: documents/models.py:1501
+#: documents/models.py:1506
 msgid "triggers"
 msgstr ""
 
-#: documents/models.py:1508
+#: documents/models.py:1513
 msgid "actions"
 msgstr ""
 
-#: documents/models.py:1511 paperless_mail/models.py:154
+#: documents/models.py:1516 paperless_mail/models.py:154
 msgid "enabled"
 msgstr ""
 
-#: documents/models.py:1522
+#: documents/models.py:1527
 msgid "workflow"
 msgstr ""
 
-#: documents/models.py:1526
+#: documents/models.py:1531
 msgid "workflow trigger type"
 msgstr ""
 
-#: documents/models.py:1540
+#: documents/models.py:1545
 msgid "date run"
 msgstr ""
 
-#: documents/models.py:1546
+#: documents/models.py:1551
 msgid "workflow run"
 msgstr ""
 
-#: documents/models.py:1547
+#: documents/models.py:1552
 msgid "workflow runs"
 msgstr ""
 
@@ -1153,16 +1173,16 @@ msgstr ""
 msgid "Invalid regular expression: %(error)s"
 msgstr ""
 
-#: documents/serialisers.py:474
+#: documents/serialisers.py:553
 msgid "Invalid color."
 msgstr ""
 
-#: documents/serialisers.py:1559
+#: documents/serialisers.py:1554
 #, python-format
 msgid "File type %(type)s not supported"
 msgstr ""
 
-#: documents/serialisers.py:1648
+#: documents/serialisers.py:1643
 msgid "Invalid variable detected."
 msgstr ""
 
@@ -1545,139 +1565,143 @@ msgstr ""
 msgid "paperless application settings"
 msgstr ""
 
-#: paperless/settings.py:698
+#: paperless/settings.py:721
 msgid "English (US)"
 msgstr ""
 
-#: paperless/settings.py:699
+#: paperless/settings.py:722
 msgid "Arabic"
 msgstr ""
 
-#: paperless/settings.py:700
+#: paperless/settings.py:723
 msgid "Afrikaans"
 msgstr ""
 
-#: paperless/settings.py:701
+#: paperless/settings.py:724
 msgid "Belarusian"
 msgstr ""
 
-#: paperless/settings.py:702
+#: paperless/settings.py:725
 msgid "Bulgarian"
 msgstr ""
 
-#: paperless/settings.py:703
+#: paperless/settings.py:726
 msgid "Catalan"
 msgstr ""
 
-#: paperless/settings.py:704
+#: paperless/settings.py:727
 msgid "Czech"
 msgstr ""
 
-#: paperless/settings.py:705
+#: paperless/settings.py:728
 msgid "Danish"
 msgstr ""
 
-#: paperless/settings.py:706
+#: paperless/settings.py:729
 msgid "German"
 msgstr ""
 
-#: paperless/settings.py:707
+#: paperless/settings.py:730
 msgid "Greek"
 msgstr ""
 
-#: paperless/settings.py:708
+#: paperless/settings.py:731
 msgid "English (GB)"
 msgstr ""
 
-#: paperless/settings.py:709
+#: paperless/settings.py:732
 msgid "Spanish"
 msgstr ""
 
-#: paperless/settings.py:710
+#: paperless/settings.py:733
 msgid "Finnish"
 msgstr ""
 
-#: paperless/settings.py:711
+#: paperless/settings.py:734
 msgid "French"
 msgstr ""
 
-#: paperless/settings.py:712
+#: paperless/settings.py:735
 msgid "Hungarian"
 msgstr ""
 
-#: paperless/settings.py:713
+#: paperless/settings.py:736
 msgid "Italian"
 msgstr ""
 
-#: paperless/settings.py:714
+#: paperless/settings.py:737
 msgid "Japanese"
 msgstr ""
 
-#: paperless/settings.py:715
+#: paperless/settings.py:738
 msgid "Korean"
 msgstr ""
 
-#: paperless/settings.py:716
+#: paperless/settings.py:739
 msgid "Luxembourgish"
 msgstr ""
 
-#: paperless/settings.py:717
+#: paperless/settings.py:740
 msgid "Norwegian"
 msgstr ""
 
-#: paperless/settings.py:718
+#: paperless/settings.py:741
 msgid "Dutch"
 msgstr ""
 
-#: paperless/settings.py:719
+#: paperless/settings.py:742
 msgid "Polish"
 msgstr ""
 
-#: paperless/settings.py:720
+#: paperless/settings.py:743
 msgid "Portuguese (Brazil)"
 msgstr ""
 
-#: paperless/settings.py:721
+#: paperless/settings.py:744
 msgid "Portuguese"
 msgstr ""
 
-#: paperless/settings.py:722
+#: paperless/settings.py:745
 msgid "Romanian"
 msgstr ""
 
-#: paperless/settings.py:723
+#: paperless/settings.py:746
 msgid "Russian"
 msgstr ""
 
-#: paperless/settings.py:724
+#: paperless/settings.py:747
 msgid "Slovak"
 msgstr ""
 
-#: paperless/settings.py:725
+#: paperless/settings.py:748
 msgid "Slovenian"
 msgstr ""
 
-#: paperless/settings.py:726
+#: paperless/settings.py:749
 msgid "Serbian"
 msgstr ""
 
-#: paperless/settings.py:727
+#: paperless/settings.py:750
 msgid "Swedish"
 msgstr ""
 
-#: paperless/settings.py:728
+#: paperless/settings.py:751
 msgid "Turkish"
 msgstr ""
 
-#: paperless/settings.py:729
+#: paperless/settings.py:752
 msgid "Ukrainian"
 msgstr ""
 
-#: paperless/settings.py:730
+#: paperless/settings.py:753
 msgid "Chinese Simplified"
 msgstr ""
 
-#: paperless/urls.py:341
+#: paperless/settings.py:754
+msgid "Chinese Traditional"
+msgstr ""
+
+#: paperless/urls.py:364
 msgid "Paperless-ngx administration"
 msgstr ""
 
index e92d9dc5a7d2dba2e80ade5b7655992f2d5e23b8..8072f694e44a1661d7d6fccce02783cc56f38817 100644 (file)
@@ -751,6 +751,7 @@ LANGUAGES = [
     ("tr-tr", _("Turkish")),
     ("uk-ua", _("Ukrainian")),
     ("zh-cn", _("Chinese Simplified")),
+    ("zh-tw", _("Chinese Traditional")),
 ]
 
 LOCALE_PATHS = [os.path.join(BASE_DIR, "locale")]