Compare commits

...
6 Commits
112 changed files with 46122 additions and 33089 deletions

No files matched your search

+11
View File
@@ -162,6 +162,17 @@ including `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), and `range`.
Lastly, document link fields support a `contains` operator that behaves
like a "is superset of" check.
Date fields also accept relative expressions supported by
[dateparser](https://dateparser.readthedocs.io/en/stable/), such as `today`,
`in 30 days`, or `1 month ago`. For example, dates within the next 30 days:
```json
["expiry", "range", ["today", "in 30 days"]]
```
Expressions resolve each time the query runs, using `PAPERLESS_TIME_ZONE` and
`PAPERLESS_DATE_PARSER_LANGUAGES` (automatic language detection when unset).
### `/api/search/autocomplete/`
Get auto completions for a partial search term.
+1
View File
@@ -726,6 +726,7 @@ applied. You can use the following placeholders in the template with any trigger
- `{{added_time}}`: added time in HH:MM format
- `{{original_filename}}`: original file name without extension
- `{{filename}}`: current file name without extension (for "added" workflows this may not be final yet, you can use `{{original_filename}}`)
- `{{custom_fields}}`: Custom field names mapped to their type and value, as in [file name templates](advanced_usage.md#additional-variables). For example, `{{ custom_fields.Invoice.value }}` or `{{ custom_fields | get_cf_value("Invoice", "") }}` for a fallback when the field is missing. In title assignments, fields assigned by the same action are available.
- `{{doc_title}}`: current document title (cannot be used in title assignment)
The following placeholders are only available for "added" or "updated" triggers
+142 -18
View File
@@ -2048,7 +2048,7 @@
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">167,168</context>
<context context-type="linenumber">201,202</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/filterable-dropdown/filterable-dropdown.component.html</context>
@@ -4414,11 +4414,68 @@
<context context-type="linenumber">96</context>
</context-group>
</trans-unit>
<trans-unit id="3625677668275605418" datatype="html">
<source>Date mode</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">38</context>
</context-group>
</trans-unit>
<trans-unit id="7572800523712857519" datatype="html">
<source>Fixed date</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">39</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">40</context>
</context-group>
</trans-unit>
<trans-unit id="4108478337308251505" datatype="html">
<source>Fixed</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">41,42</context>
</context-group>
</trans-unit>
<trans-unit id="8283919074858117329" datatype="html">
<source>Relative date</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
</trans-unit>
<trans-unit id="2731996625798485199" datatype="html">
<source>Relative</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">45,46</context>
</context-group>
</trans-unit>
<trans-unit id="6533918067030990396" datatype="html">
<source>Amount</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">51</context>
</context-group>
</trans-unit>
<trans-unit id="8932917860978648376" datatype="html">
<source>Unit</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">56,57</context>
</context-group>
</trans-unit>
<trans-unit id="9138811584797805840" datatype="html">
<source>Open date picker</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">42</context>
<context context-type="linenumber">72</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/date/date.component.html</context>
@@ -4429,7 +4486,11 @@
<source>Today</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">47,48</context>
<context context-type="linenumber">77,78</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">329</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/dates-dropdown/dates-dropdown.component.html</context>
@@ -4460,7 +4521,7 @@
<source>Close</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">48,49</context>
<context context-type="linenumber">78,79</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/dates-dropdown/dates-dropdown.component.html</context>
@@ -4499,55 +4560,62 @@
<source>True</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">55,56</context>
<context context-type="linenumber">88,89</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">107,108</context>
<context context-type="linenumber">141,142</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">113,114</context>
<context context-type="linenumber">147,148</context>
</context-group>
</trans-unit>
<trans-unit id="3800326155195149498" datatype="html">
<source>False</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">56,57</context>
<context context-type="linenumber">89,90</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">108,109</context>
<context context-type="linenumber">142,143</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">114,115</context>
<context context-type="linenumber">148,149</context>
</context-group>
</trans-unit>
<trans-unit id="7551700625201096185" datatype="html">
<source>Search docs...</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">73</context>
<context context-type="linenumber">106</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">130</context>
<context context-type="linenumber">164</context>
</context-group>
</trans-unit>
<trans-unit id="1179184907489210406" datatype="html">
<source>Operator</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">119,120</context>
</context-group>
</trans-unit>
<trans-unit id="2328549728463836983" datatype="html">
<source>Remove query</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">154</context>
<context context-type="linenumber">189</context>
</context-group>
</trans-unit>
<trans-unit id="3184700926171002527" datatype="html">
<source>Any</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">165,166</context>
<context context-type="linenumber">199,200</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/filterable-dropdown/filterable-dropdown.component.html</context>
@@ -4558,28 +4626,84 @@
<source>Not</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">170,171</context>
<context context-type="linenumber">204,205</context>
</context-group>
</trans-unit>
<trans-unit id="6548676277933116532" datatype="html">
<source>Add query</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">189</context>
<context context-type="linenumber">223</context>
</context-group>
</trans-unit>
<trans-unit id="5599577087865387184" datatype="html">
<source>Add expression</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">192</context>
<context context-type="linenumber">226</context>
</context-group>
</trans-unit>
<trans-unit id="7394978038852129121" datatype="html">
<source>Remove expression</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.html</context>
<context context-type="linenumber">196</context>
<context context-type="linenumber">230</context>
</context-group>
</trans-unit>
<trans-unit id="5620397708418210833" datatype="html">
<source>days ago</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">330</context>
</context-group>
</trans-unit>
<trans-unit id="2871318661796659216" datatype="html">
<source>weeks ago</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">331</context>
</context-group>
</trans-unit>
<trans-unit id="6041340836190906216" datatype="html">
<source>months ago</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">332</context>
</context-group>
</trans-unit>
<trans-unit id="963494111451627204" datatype="html">
<source>years ago</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">333</context>
</context-group>
</trans-unit>
<trans-unit id="5555905617885007774" datatype="html">
<source>days from now</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">334</context>
</context-group>
</trans-unit>
<trans-unit id="4298377021616940216" datatype="html">
<source>weeks from now</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">335</context>
</context-group>
</trans-unit>
<trans-unit id="2772874767134148305" datatype="html">
<source>months from now</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">336</context>
</context-group>
</trans-unit>
<trans-unit id="6363533917780225967" datatype="html">
<source>years from now</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/custom-fields-query-dropdown/custom-fields-query-dropdown.component.ts</context>
<context context-type="linenumber">337</context>
</context-group>
</trans-unit>
<trans-unit id="6630533861307510614" datatype="html">
+228 -35
View File
@@ -4,6 +4,10 @@ settings:
autoInstallPeers: false
excludeLinksFromLockfile: false
overrides:
vite@>=8.3.0 <8.3.3: ^8.3.3
zod@<4.6.6: ^4.6.6
importers:
.:
@@ -1650,6 +1654,9 @@ packages:
'@oxc-project/types@0.150.0':
resolution: {integrity: sha512-rDS5/31E9HfPl/CIzGrn0DOlvBbXFseQ5URJ9sYMfstbKLD/c6Gm9vmRzRGDdAXyOIL4zmO37lc9RIwYqVruZw==}
'@oxc-project/types@0.155.0':
resolution: {integrity: sha512-SeE8JPwW1xs1tHeNycjUtUBdhorRa8o4jlvjwk49R7/Z291i+4DQa7JJIgOm/TaYQZx+QrPQbVJ/9c8dMIZN8Q==}
'@parcel/watcher-android-arm64@2.6.0':
resolution: {integrity: sha512-trgpLSCKRC/huFjXX/Smh+0sWe4+YtKfktIToiMl59ghz7z+qkH6kMvNnUbLyRs9N11t8l4svSCs1+5B3rOAhA==}
engines: {node: '>= 10.0.0'}
@@ -1748,42 +1755,85 @@ packages:
'@popperjs/core@2.11.8':
resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==}
'@rolldown/binding-android-arm-eabi@1.2.15':
resolution: {integrity: sha512-aLcgK9gIJ3YRvrrtfSBbRa27F5WrpiTaPulnFpsHPxpUHgFlSgnU4854MHwoRGEBhfRJDWCS2WQ7lIjskE9Olw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [android]
'@rolldown/binding-android-arm-eabi@1.2.8':
resolution: {integrity: sha512-tN5aztYkKCte4i5SIrrz5yK/HMjEuCqCSCJa418jOV8tZ1cBY3YF2otxB1ktPxzsLA1BeTqwapK0bfjxNvHJVw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [android]
'@rolldown/binding-android-arm64@1.2.15':
resolution: {integrity: sha512-xD7DdZCrbThKuxNg7ooQmvp07ys4J/pnSEMTG3/OdOWl6daC67m/Q4fL78sRHMxTH/N4fGUbYhcPM0MF5WFHkg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
'@rolldown/binding-android-arm64@1.2.8':
resolution: {integrity: sha512-dIYTWl9XprMUiQFoc55KUyk/oS8SKYH3zFl0LTR7RT0Xj4hgSVyuJcroH8JUu8RcpF8fTB6E0aOwCkZoYPcDSQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
'@rolldown/binding-darwin-arm64@1.2.15':
resolution: {integrity: sha512-m2WuQ6r0B4OTYxyPpNLtXaMRbRDUbG8YQV2Q3KTdSSK8Th6KHCnC8jVCJt8bvYeSB5WivkkNbc85mKadaSdOxA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
'@rolldown/binding-darwin-arm64@1.2.8':
resolution: {integrity: sha512-PCSDQGXD2IyTEFrcgPyBM8jJuGmrbCMuoIOXdbEGVemruKACXoLQJrb+A45Z0L5t1RQkdfJprAYPkikbh7dzdA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
'@rolldown/binding-darwin-x64@1.2.15':
resolution: {integrity: sha512-5RtnsHM36nodM9WbMy+zip0LGS/G+y5wro5RHrpOlr4ac24+1zSi9kiV2MP1myZeZ/ifEHfulQcWjnAXzc2C2A==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
'@rolldown/binding-darwin-x64@1.2.8':
resolution: {integrity: sha512-Uk7lRsGhPFHVX/sAUC6D5H9Ol30dFHd6iquokll2th3LpdJ3F5CzQB+7DHn0Ri2mG+U7k2zXiPHDrwZenXhwSA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
'@rolldown/binding-freebsd-x64@1.2.15':
resolution: {integrity: sha512-g3l09pyFqhu+135JKkbkwiKGQmwU5hUMUPJ4VdBADvuqR8d33L6H578rh8m7rtxbdp+VmX/+nzI7nvhSZlzpUQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
'@rolldown/binding-freebsd-x64@1.2.8':
resolution: {integrity: sha512-DjszaTEVogPqA5bYzsEeqDCQxbcp2fexQwKcRspYji2yzR68fCf+e4fx6kBSRDwX5/brZaHw/hWS9+A/+/w9sQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
'@rolldown/binding-linux-arm-gnueabihf@1.2.15':
resolution: {integrity: sha512-nIe3VugI97nGQtspPxDqA4sXMUpeiocKIP/CqpY/u/vgbT+alX+cVxu1C/oVBPKg4feNTmYovE91v4DgXvXNwQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
'@rolldown/binding-linux-arm-gnueabihf@1.2.8':
resolution: {integrity: sha512-zmwa7FTmdzB6aaEEuuls18H6Ap5JmJPSoPTuXixeJZV6tG40SyLkApQtz1g8ptZtiEKqj9OM0oNLPh1AgvE31Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
'@rolldown/binding-linux-arm64-gnu@1.2.15':
resolution: {integrity: sha512-iTBjXx+B5QSvgI89lJfmqh4wTh8NabR1YZIIN3hNx4zSG0EVfVqkOvLulNpG4251pbd6/IAmZ/LefVk1Y4rPhw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-arm64-gnu@1.2.8':
resolution: {integrity: sha512-KdYQDPHwJVnbFwdTGMgxsI9SqblBlz6STGM+w1We/d5B8OWWidYH0MwkU/uA1wM5fIpO2MkOVxXrNzzuZhw9ew==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1791,6 +1841,13 @@ packages:
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-arm64-musl@1.2.15':
resolution: {integrity: sha512-uN26XOnVR7rqQupG3V9oAG2EGGatWjcJHOeDOHUFCh4TBWmP2tHTFoVN13aYbwfm0aHqJAEmcwhAu6sooIjfqQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
libc: [musl]
'@rolldown/binding-linux-arm64-musl@1.2.8':
resolution: {integrity: sha512-jFJTifHnNPY+yzOoNZQfSIysrVyXzEQPhPnOUjmD1bcQGHH6s7c8cViKWar8YplQImE5N9JRqMCLrM2CdxOrZA==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1798,6 +1855,13 @@ packages:
os: [linux]
libc: [musl]
'@rolldown/binding-linux-ppc64-gnu@1.2.15':
resolution: {integrity: sha512-9nWkcdd+H+XhaA3fQIwpHnKIrfx/PQ6rO0pivr78Og07tXlUlctBBJoEYLPfhTmCR/QxEVdn6uPjHV5SymPhdw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-ppc64-gnu@1.2.8':
resolution: {integrity: sha512-FhiOziBDWPBjbcmRzfLyIJnaP7AVMFXT7YCXPjXxj7wKU3vx24RjrCNN/zjvVa+N2vVoHJwCoUBvsrN/DG3zIA==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1805,6 +1869,13 @@ packages:
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-s390x-gnu@1.2.15':
resolution: {integrity: sha512-Ggh0ciFjLwIusLSLz7LZYEaGdxOAUJXI+Qu5JCbhPJJHEt8vP+IjRATTJheiJsdzzTYgUiHUiw3X1Ea3ZpMBdA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-s390x-gnu@1.2.8':
resolution: {integrity: sha512-WnHfADMzOV2Y55wlx1hzzQnar/wDt/VdvWSD99r18Mz9ylNieIGOkRx3UV21h7m/eJvjySYJkO26VvGNFkwsIQ==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1812,6 +1883,13 @@ packages:
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-x64-gnu@1.2.15':
resolution: {integrity: sha512-FHg60rS6DBePAYZ9X9F67x+JObFdmgn6tupA1C/a3B+CufFmTD4mX+e8M75tCiAO3foR/6xwVBI0KQiI7sn/rw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-x64-gnu@1.2.8':
resolution: {integrity: sha512-H9tRr5ibfXFVLxbPOseVewewFpl28zcEdjRDt2FTUZU7odxP0gEv1ki4/kGmcGOh78oRwZuuQllGLZ9zTJp84g==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1819,6 +1897,13 @@ packages:
os: [linux]
libc: [glibc]
'@rolldown/binding-linux-x64-musl@1.2.15':
resolution: {integrity: sha512-/cvV/7v5VGz/moiz0XKRj2dE8DzsKyhIu1KpOvJGPjRywg3yscON889UGvAe8zfiJLHup7VLjBduoGWi3HusWQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
libc: [musl]
'@rolldown/binding-linux-x64-musl@1.2.8':
resolution: {integrity: sha512-UefiqfM3D6IVNlZ8tSGs9+Ejjud2T+oxO0IHADU45Y+lyEjD2dVFyZHbkfX0LUb5Zugo/oIv1eCO/KVYhgYJYA==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1826,18 +1911,36 @@ packages:
os: [linux]
libc: [musl]
'@rolldown/binding-openharmony-arm64@1.2.15':
resolution: {integrity: sha512-MyzC5Hrv/sm+Z7TSGKP/j8001RO2xQm1zOpCNVL4j0cY/VhBZviludA2YFQ7i4lH6ZAXxQm0lcMdBzM+99mE7w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
'@rolldown/binding-openharmony-arm64@1.2.8':
resolution: {integrity: sha512-637Ke4kWSy6rp9cxQ9gMOXlxPgIw/c1beASV4M//3+9I4uwBVOOl74G+e3zyU3u19U7RkRl/HuewixZ/Z6+Rjg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [openharmony]
'@rolldown/binding-win32-arm64-msvc@1.2.15':
resolution: {integrity: sha512-+PgYiS+AH5omy6L45ZLxybasauJaj3M8buoT83D+nzPmCayXlxUV9hydhciCKVyIg0B/v0BtXPDE1uGqNwCPpg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
'@rolldown/binding-win32-arm64-msvc@1.2.8':
resolution: {integrity: sha512-xWBkPOF1Q9k/Gv1nQXnVdLxKu74jXppuOM4Z3mnypVUJJJwLsMl7hNJGRAUJoG8A5MgOI1ACKM+wBFxSJzKy4A==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
'@rolldown/binding-win32-x64-msvc@1.2.15':
resolution: {integrity: sha512-HFZd2QNQYn1JbIi+Hpd7H+r/lkWxcfIu28nirZ6eCn2LafuvmExMlb/P96Sfx5tf7pPArw39IdhmCF8vmV+NhQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
'@rolldown/binding-win32-x64-msvc@1.2.8':
resolution: {integrity: sha512-uz2ZvfgXbxqNwijjjbxrnvALwpyODDcgc1T1N8N3rf/DXKQmaFwmB4LX4yyjggpwN2obdQLb2rgirX5ffCWYng==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -2132,7 +2235,7 @@ packages:
resolution: {integrity: sha512-bdyo8rB3NnQbikdMpHaML9Z1OZPBu6fFOBo+OtxsBlvMJtysWskmBcnbIDhUqgC8tcxNv/a+BcV5U+2nQMm1OQ==}
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
peerDependencies:
vite: ^6.0.0 || ^7.0.0 || ^8.0.0
vite: ^8.3.3
acorn-jsx@5.3.2:
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
@@ -2261,8 +2364,8 @@ packages:
peerDependencies:
'@popperjs/core': ^2.11.8
brace-expansion@2.1.4:
resolution: {integrity: sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg==}
brace-expansion@2.1.7:
resolution: {integrity: sha512-uZbew1NqdmPDTMJ8ah1y+b+9QEJrfkXFk3RcTQw3X0jW/xRUvFKsg1CfQdSYGdTbXZWExtU3J3ccxtnfw1Fi0g==}
brace-expansion@5.0.12:
resolution: {integrity: sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==}
@@ -2597,8 +2700,8 @@ packages:
fast-string-width@3.0.2:
resolution: {integrity: sha512-gX8LrtNEI5hq8DVUfRQMbr5lpaS4nMIWV+7XEbXk2b8kiQIizgnlr12B4dA3ZEx3308ze0O4Q1R+cHts8kyUJg==}
fast-uri@3.1.8:
resolution: {integrity: sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==}
fast-uri@3.1.9:
resolution: {integrity: sha512-hS/0Wt3Ya043oKXs0sIxrMpKQITXhMLIrVAKKXi4gozGC9v7YRWVnXIZzjNPTO02M9BdxLCWqK1yRXgNziVyJQ==}
fast-wrap-ansi@0.2.2:
resolution: {integrity: sha512-7F2Fl+TjRSenLqlU3UjSH0iyqopqoZIu7eZVpEirP2g1GtWa2G/ecEmBdgz31+Mxr+ELclgg6sokpSFIQiZ02Q==}
@@ -3029,8 +3132,8 @@ packages:
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
js-yaml@3.15.1:
resolution: {integrity: sha512-S99WuO3HlhO3XN41EtYUNl9zzXjoJx7QvmipxsJVxtCBT0YHEFy+iOJhjSvrmV12nYhWpZaM8lPHkJm0yUMbag==}
js-yaml@3.15.2:
resolution: {integrity: sha512-6EuL879VkRA+1Cz578mKMiKvjPNEuk6+r1JaFzoSWejZmtf7xWbIyw1e3KkxlkzTIt9Taw6JBhEppG7utc1P+w==}
hasBin: true
jsdom@26.1.0:
@@ -3280,6 +3383,11 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
nanoid@3.3.20:
resolution: {integrity: sha512-uKdg2G3GNCKQn9byYOpxbGqrT2fGO5KRt5J/8b3pok8rT6qxGWF6hxMyJiEYtAf+FVyYuD9hRaDqX5uPFYJ4ZQ==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
napi-postinstall@0.3.4:
resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
@@ -3510,6 +3618,10 @@ packages:
resolution: {integrity: sha512-RRuzqDtt5Y9h3quz5hWhK+TPnsmVs6WwSU6LkJMeY4HstUEDuYTG8UJSdawMRzmzAtV+KEoG8N3Qg2qLy5vM/A==}
engines: {node: ^10 || ^12 || >=14}
postcss@8.5.31:
resolution: {integrity: sha512-YUbWYCgErwnMAVkjUnYa+KlMBzGpHwiIt/DE7f0G33AuX2LH9UcTk6KgWxd3zRU+pN3u/C+Xl3EnMLM4Hea7Sg==}
engines: {node: ^10 || ^12 || >=14}
prelude-ls@1.2.1:
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
engines: {node: '>= 0.8.0'}
@@ -3601,6 +3713,11 @@ packages:
resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==}
engines: {node: '>=18'}
rolldown@1.2.15:
resolution: {integrity: sha512-6odND+fel5zVw3I4Yc2e69gvguDnX0CAAGiNDZSq4ik5WUcaLrkD2GLuog0XcODbor31hZ5ayEMgVDno+KPV5g==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
rolldown@1.2.8:
resolution: {integrity: sha512-Z67nTmhZe7anqnM/EjI392w5i/ANUinjip7QYsOyN37oayduxt3ksdX0hf5OOamkAd53BiIHfbfSzfUmzKFQqQ==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -3773,8 +3890,8 @@ packages:
resolution: {integrity: sha512-aBY19bn/XA+hKOKX0qL7Z0UfdBsbQvc9hn993U8ALUjzxCvDcuZqLoRXjGJrUARWAlwMnsRVD9sw2AFNOYvalA==}
engines: {node: '>=22'}
source-map-js@1.2.1:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
source-map-js@1.2.2:
resolution: {integrity: sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==}
engines: {node: '>=0.10.0'}
source-map-support@0.5.21:
@@ -4005,13 +4122,13 @@ packages:
resolution: {integrity: sha512-zj/ob3UsvJGN0whEAKFp53REA5X66hvffVqoCtVQAakJKnKlH+/PcOfMoFwIG/o4rElqLv/ycAFlx8ZlXUorCg==}
engines: {node: '>=18.12.0'}
vite@8.3.0:
resolution: {integrity: sha512-lhZBVvEHefgE+HQZC9O7EBJgCU/nVzFNl7vkS4RE0APtWLP02/8QVIkQtzBxPquh7lq5/78NHipTj7ODQ6XuyQ==}
vite@8.3.5:
resolution: {integrity: sha512-z1YpjieJ9g0ebTmQpLBv/oq9E3F9EIlOe+7LahW8SrE3LTiG3udBRUXQOlYXP9b+IC2q2phHeVxj9xGlw34OEQ==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
'@types/node': ^20.19.0 || >=22.12.0
'@vitejs/devtools': ^0.7.1
'@vitejs/devtools': ^0.7.1 || ^0.8.0
esbuild: ^0.27.0 || ^0.28.0
jiti: '>=1.21.0'
less: ^4.0.0
@@ -4168,8 +4285,8 @@ packages:
resolution: {integrity: sha512-xYqdZFUK/VYazNl/oCDYN+3WloWQwMfZxBoiNt6qNyk+xfOdi598muWE42rNZFp1kNOiqW936q5RhUdnpqElSg==}
engines: {node: '>=18'}
zod@4.6.5:
resolution: {integrity: sha512-v5l/aFXZQeai4awLbOpSoHecE9UiMrnfx75tEXLjNonXVARxQ5mOeipTjROUchszUNCqnE+hqAMujRsRHsut2Q==}
zod@4.6.7:
resolution: {integrity: sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==}
snapshots:
@@ -4369,7 +4486,7 @@ snapshots:
'@babel/core': 8.0.5
'@inquirer/confirm': 6.3.2(@types/node@26.6.2)
'@parcel/watcher': 2.6.0
'@vitejs/plugin-basic-ssl': 2.3.0(vite@8.3.0(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1))
'@vitejs/plugin-basic-ssl': 2.3.0(vite@8.3.5(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1))
beasties: 0.5.4
browserslist: 4.29.1
chokidar: 5.0.0
@@ -4391,7 +4508,7 @@ snapshots:
tinyglobby: 0.2.17
tslib: 2.8.1
typescript: 6.0.3
vite: 8.3.0(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1)
vite: 8.3.5(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1)
xxhash-wasm: 1.1.0
optionalDependencies:
'@angular/core': 22.2.2(@angular/compiler@22.2.2)(rxjs@7.8.2)
@@ -4437,7 +4554,7 @@ snapshots:
parse5-html-rewriting-stream: 8.0.1
semver: 7.8.5
yargs: 18.1.0
zod: 4.6.5
zod: 4.6.7
transitivePeerDependencies:
- '@types/node'
- chokidar
@@ -4481,7 +4598,7 @@ snapshots:
'@standard-schema/spec': 1.1.0
rxjs: 7.8.2
tslib: 2.8.1
zod: 4.6.5
zod: 4.6.7
'@angular/localize@22.2.2(@angular/compiler-cli@22.2.2(@angular/compiler@22.2.2)(typescript@6.0.3))(@angular/compiler@22.2.2)':
dependencies:
@@ -5118,7 +5235,7 @@ snapshots:
camelcase: 5.3.1
find-up: 4.1.0
get-package-type: 0.1.0
js-yaml: 3.15.1
js-yaml: 3.15.2
resolve-from: 5.0.0
'@istanbuljs/schema@0.1.6': {}
@@ -5412,12 +5529,12 @@ snapshots:
'@modelcontextprotocol/core@2.3.1':
dependencies:
zod: 4.6.5
zod: 4.6.7
'@modelcontextprotocol/server@2.3.1':
dependencies:
'@modelcontextprotocol/core': 2.3.1
zod: 4.6.5
zod: 4.6.7
'@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.4':
optional: true
@@ -5652,6 +5769,8 @@ snapshots:
'@oxc-project/types@0.150.0': {}
'@oxc-project/types@0.155.0': {}
'@parcel/watcher-android-arm64@2.6.0':
optional: true
@@ -5719,48 +5838,93 @@ snapshots:
'@popperjs/core@2.11.8': {}
'@rolldown/binding-android-arm-eabi@1.2.15':
optional: true
'@rolldown/binding-android-arm-eabi@1.2.8':
optional: true
'@rolldown/binding-android-arm64@1.2.15':
optional: true
'@rolldown/binding-android-arm64@1.2.8':
optional: true
'@rolldown/binding-darwin-arm64@1.2.15':
optional: true
'@rolldown/binding-darwin-arm64@1.2.8':
optional: true
'@rolldown/binding-darwin-x64@1.2.15':
optional: true
'@rolldown/binding-darwin-x64@1.2.8':
optional: true
'@rolldown/binding-freebsd-x64@1.2.15':
optional: true
'@rolldown/binding-freebsd-x64@1.2.8':
optional: true
'@rolldown/binding-linux-arm-gnueabihf@1.2.15':
optional: true
'@rolldown/binding-linux-arm-gnueabihf@1.2.8':
optional: true
'@rolldown/binding-linux-arm64-gnu@1.2.15':
optional: true
'@rolldown/binding-linux-arm64-gnu@1.2.8':
optional: true
'@rolldown/binding-linux-arm64-musl@1.2.15':
optional: true
'@rolldown/binding-linux-arm64-musl@1.2.8':
optional: true
'@rolldown/binding-linux-ppc64-gnu@1.2.15':
optional: true
'@rolldown/binding-linux-ppc64-gnu@1.2.8':
optional: true
'@rolldown/binding-linux-s390x-gnu@1.2.15':
optional: true
'@rolldown/binding-linux-s390x-gnu@1.2.8':
optional: true
'@rolldown/binding-linux-x64-gnu@1.2.15':
optional: true
'@rolldown/binding-linux-x64-gnu@1.2.8':
optional: true
'@rolldown/binding-linux-x64-musl@1.2.15':
optional: true
'@rolldown/binding-linux-x64-musl@1.2.8':
optional: true
'@rolldown/binding-openharmony-arm64@1.2.15':
optional: true
'@rolldown/binding-openharmony-arm64@1.2.8':
optional: true
'@rolldown/binding-win32-arm64-msvc@1.2.15':
optional: true
'@rolldown/binding-win32-arm64-msvc@1.2.8':
optional: true
'@rolldown/binding-win32-x64-msvc@1.2.15':
optional: true
'@rolldown/binding-win32-x64-msvc@1.2.8':
optional: true
@@ -6051,9 +6215,9 @@ snapshots:
'@unrs/resolver-binding-win32-x64-msvc@1.12.2':
optional: true
'@vitejs/plugin-basic-ssl@2.3.0(vite@8.3.0(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1))':
'@vitejs/plugin-basic-ssl@2.3.0(vite@8.3.5(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1))':
dependencies:
vite: 8.3.0(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1)
vite: 8.3.5(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1)
acorn-jsx@5.3.2(acorn@8.18.0):
dependencies:
@@ -6083,7 +6247,7 @@ snapshots:
ajv@8.20.0:
dependencies:
fast-deep-equal: 3.1.3
fast-uri: 3.1.8
fast-uri: 3.1.9
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
@@ -6198,7 +6362,7 @@ snapshots:
dependencies:
'@popperjs/core': 2.11.8
brace-expansion@2.1.4:
brace-expansion@2.1.7:
dependencies:
balanced-match: 1.0.2
@@ -6543,7 +6707,7 @@ snapshots:
dependencies:
fast-string-truncated-width: 3.0.3
fast-uri@3.1.8: {}
fast-uri@3.1.9: {}
fast-wrap-ansi@0.2.2:
dependencies:
@@ -7193,7 +7357,7 @@ snapshots:
js-tokens@4.0.0: {}
js-yaml@3.15.1:
js-yaml@3.15.2:
dependencies:
argparse: 1.0.10
esprima: 4.0.1
@@ -7393,7 +7557,7 @@ snapshots:
minimatch@9.0.9:
dependencies:
brace-expansion: 2.1.4
brace-expansion: 2.1.7
minimist@1.2.8: {}
@@ -7428,6 +7592,8 @@ snapshots:
nanoid@3.3.18: {}
nanoid@3.3.20: {}
napi-postinstall@0.3.4: {}
natural-compare@1.4.0: {}
@@ -7674,7 +7840,13 @@ snapshots:
dependencies:
nanoid: 3.3.18
picocolors: 1.1.1
source-map-js: 1.2.1
source-map-js: 1.2.2
postcss@8.5.31:
dependencies:
nanoid: 3.3.20
picocolors: 1.1.1
source-map-js: 1.2.2
prelude-ls@1.2.1: {}
@@ -7742,6 +7914,27 @@ snapshots:
onetime: 7.0.0
signal-exit: 4.1.0
rolldown@1.2.15:
dependencies:
'@oxc-project/types': 0.155.0
'@rolldown/pluginutils': 1.0.1
optionalDependencies:
'@rolldown/binding-android-arm-eabi': 1.2.15
'@rolldown/binding-android-arm64': 1.2.15
'@rolldown/binding-darwin-arm64': 1.2.15
'@rolldown/binding-darwin-x64': 1.2.15
'@rolldown/binding-freebsd-x64': 1.2.15
'@rolldown/binding-linux-arm-gnueabihf': 1.2.15
'@rolldown/binding-linux-arm64-gnu': 1.2.15
'@rolldown/binding-linux-arm64-musl': 1.2.15
'@rolldown/binding-linux-ppc64-gnu': 1.2.15
'@rolldown/binding-linux-s390x-gnu': 1.2.15
'@rolldown/binding-linux-x64-gnu': 1.2.15
'@rolldown/binding-linux-x64-musl': 1.2.15
'@rolldown/binding-openharmony-arm64': 1.2.15
'@rolldown/binding-win32-arm64-msvc': 1.2.15
'@rolldown/binding-win32-x64-msvc': 1.2.15
rolldown@1.2.8:
dependencies:
'@oxc-project/types': 0.149.0
@@ -7862,7 +8055,7 @@ snapshots:
dependencies:
chokidar: 5.0.0
immutable: 5.1.9
source-map-js: 1.2.1
source-map-js: 1.2.2
optionalDependencies:
'@parcel/watcher': 2.6.0
@@ -7891,7 +8084,7 @@ snapshots:
ansi-styles: 6.2.3
is-fullwidth-code-point: 5.1.0
source-map-js@1.2.1: {}
source-map-js@1.2.2: {}
source-map-support@0.5.21:
dependencies:
@@ -8118,12 +8311,12 @@ snapshots:
verkit@0.3.2: {}
vite@8.3.0(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1):
vite@8.3.5(@types/node@26.6.2)(esbuild@0.28.2)(jiti@2.7.0)(sass-embedded@1.104.1)(sass@1.104.1):
dependencies:
lightningcss: 1.33.0
picomatch: 4.0.7
postcss: 8.5.28
rolldown: 1.2.8
postcss: 8.5.31
rolldown: 1.2.15
tinyglobby: 0.2.17
optionalDependencies:
'@types/node': 26.6.2
@@ -8241,4 +8434,4 @@ snapshots:
yoctocolors@2.2.0: {}
zod@4.6.5: {}
zod@4.6.7: {}
+3
View File
@@ -24,3 +24,6 @@ onlyBuiltDependencies:
ignoredBuiltDependencies:
- normalize-diacritics
- unrs-resolver
overrides:
"vite@>=8.3.0 <8.3.3": "^8.3.3"
"zod@<4.6.6": "^4.6.6"
@@ -33,21 +33,54 @@
<ng-template #comparisonValueTemplate let-atom="atom">
@if (getCustomFieldByID(atom.field)?.data_type === CustomFieldDataType.Date) {
<input class="form-control" placeholder="yyyy-mm-dd"
[(ngModel)]="atom.value"
[ngModelOptions]="{standalone: true}"
ngbDatepicker
#d="ngbDatepicker"
[footerTemplate]="datePickerFooterTemplate" />
<button class="btn btn-sm btn-outline-secondary rounded-end" (click)="d.toggle()" type="button" aria-label="Open date picker" i18n-aria-label>
<i-bs name="calendar-event"></i-bs>
</button>
<ng-template #datePickerFooterTemplate>
<div class="btn-group-xs border-top p-2 d-flex">
<button type="button" class="btn btn-primary" (click)="atom.value = today; d.close()" i18n>Today</button>
<button type="button" class="btn btn-secondary ms-auto" (click)="d.close()" i18n>Close</button>
@let relativeDate = getRelativeDate(atom);
<div class="d-flex gap-2 w-100 ms-0 mt-1">
<fieldset class="btn-group btn-group-sm flex-shrink-0 date-mode" aria-label="Date mode" i18n-aria-label>
<input type="radio" class="btn-check" [id]="atom.id + '_fixed'" [name]="atom.id + '_dateMode'" [checked]="!relativeDate" (change)="toggleRelativeDate(atom)" [disabled]="disabled" aria-label="Fixed date" i18n-aria-label>
<label class="btn btn-outline-secondary text-nowrap" [for]="atom.id + '_fixed'" title="Fixed date" i18n-title>
<i-bs name="calendar"></i-bs><span class="d-none d-md-inline ms-2" i18n>Fixed</span>
</label>
<input type="radio" class="btn-check" [id]="atom.id + '_relative'" [name]="atom.id + '_dateMode'" [checked]="!!relativeDate" (change)="toggleRelativeDate(atom)" [disabled]="disabled" aria-label="Relative date" i18n-aria-label>
<label class="btn btn-outline-secondary text-nowrap" [for]="atom.id + '_relative'" title="Relative date" i18n-title>
<i-bs name="clock-history"></i-bs><span class="d-none d-md-inline ms-2" i18n>Relative</span>
</label>
</fieldset>
<div class="input-group input-group-sm flex-grow-1">
@if (relativeDate) {
@if (relativeDate.unit.includes('{n}')) {
<input class="form-control w-25 flex-grow-0" type="number" min="0" aria-label="Amount" i18n-aria-label
[ngModel]="relativeDate.amount"
(ngModelChange)="updateRelativeDate(atom, { amount: $event })"
[ngModelOptions]="{standalone: true}" />
}
<label class="visually-hidden" [for]="atom.id + '_unit'" i18n>Unit</label>
<select class="form-select" [id]="atom.id + '_unit'"
[ngModel]="relativeDate.unit"
(ngModelChange)="updateRelativeDate(atom, { unit: $event })"
[ngModelOptions]="{standalone: true}">
@for (unit of relativeDateUnits; track unit.id) {
<option [ngValue]="unit.id">{{unit.label}}</option>
}
</select>
} @else {
<input class="form-control" placeholder="yyyy-mm-dd"
[(ngModel)]="atom.value"
[ngModelOptions]="{standalone: true}"
ngbDatepicker
#d="ngbDatepicker"
[footerTemplate]="datePickerFooterTemplate" />
<button class="btn btn-sm btn-outline-secondary" (click)="d.toggle()" type="button" aria-label="Open date picker" i18n-aria-label>
<i-bs name="calendar-event"></i-bs>
</button>
<ng-template #datePickerFooterTemplate>
<div class="btn-group-xs border-top p-2 d-flex">
<button type="button" class="btn btn-primary" (click)="atom.value = today; d.close()" i18n>Today</button>
<button type="button" class="btn btn-secondary ms-auto" (click)="d.close()" i18n>Close</button>
</div>
</ng-template>
}
</div>
</ng-template>
</div>
} @else if (getCustomFieldByID(atom.field)?.data_type === CustomFieldDataType.Float || getCustomFieldByID(atom.field)?.data_type === CustomFieldDataType.Integer) {
<input class="w-25 form-control rounded-end" type="number" [(ngModel)]="atom.value" [ngModelOptions]="{standalone: true}" [disabled]="disabled">
} @else if (getCustomFieldByID(atom.field)?.data_type === CustomFieldDataType.Boolean) {
@@ -83,6 +116,7 @@
</ng-template>
<ng-template #queryAtom let-atom="atom">
<label class="visually-hidden" [for]="atom.id + '_operator'" i18n>Operator</label>
<div class="input-group input-group-sm">
<ng-select #fieldSelects
class="paperless-input-select"
@@ -96,7 +130,7 @@
[appendTo]="selectAppendTo"
(mousedown)="$event.stopImmediatePropagation()"
></ng-select>
<select class="w-25 form-select" [(ngModel)]="atom.operator" [ngModelOptions]="{standalone: true}" [disabled]="disabled">
<select class="w-25 form-select" [id]="atom.id + '_operator'" [class.rounded-end]="hasDateValueRow(atom)" [(ngModel)]="atom.operator" [ngModelOptions]="{standalone: true}" [disabled]="disabled">
@for (operator of getOperatorsForField(atom.field); track operator.label) {
<option [ngValue]="operator.value">{{operator.label}}</option>
}
@@ -151,10 +185,10 @@
<input class="w-25 form-control rounded-end" type="text" [(ngModel)]="atom.value" [ngModelOptions]="{standalone: true}" [disabled]="disabled">
}
}
<button class="btn btn-link btn-sm text-danger pe-0" type="button" (click)="removeElement(atom)" [disabled]="disabled" aria-label="Remove query" i18n-aria-label>
<i-bs name="x-circle"></i-bs>
</button>
</div>
<button class="btn btn-link btn-sm text-danger pe-0 align-self-center" type="button" (click)="removeElement(atom)" [disabled]="disabled" aria-label="Remove query" i18n-aria-label>
<i-bs name="x-circle"></i-bs>
</button>
</ng-template>
<ng-template #queryExpression let-expression="expression">
@@ -5,6 +5,11 @@
}
}
:host {
--ng-select-border-radius: var(--bs-border-radius);
--ng-select-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
}
:host ::ng-deep .ng-select-container {
border-top-right-radius: 0 !important;
border-bottom-right-radius: 0 !important;
@@ -41,3 +46,13 @@
min-width: 140px;
}
}
.date-mode .btn {
--bs-btn-color: var(--bs-secondary-color);
--bs-btn-hover-bg: transparent;
--bs-btn-hover-color: var(--bs-body-color);
--bs-btn-hover-border-color: var(--bs-border-color);
--bs-btn-active-bg: transparent;
--bs-btn-active-color: var(--bs-primary);
--bs-btn-active-border-color: var(--bs-border-color);
}
@@ -3,7 +3,7 @@ import { provideHttpClientTesting } from '@angular/common/http/testing'
import { LOCALE_ID } from '@angular/core'
import { ComponentFixture, TestBed } from '@angular/core/testing'
import { FormsModule, ReactiveFormsModule } from '@angular/forms'
import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'
import { NgbDateAdapter, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'
import { NgSelectModule } from '@ng-select/ng-select'
import { allIcons, NgxBootstrapIconsModule } from 'ngx-bootstrap-icons'
import { of } from 'rxjs'
@@ -11,6 +11,7 @@ import { CustomField, CustomFieldDataType } from 'src/app/data/custom-field'
import {
CUSTOM_FIELD_QUERY_OPERATORS_BY_GROUP,
CustomFieldQueryLogicalOperator,
CustomFieldQueryOperator,
CustomFieldQueryOperatorGroups,
} from 'src/app/data/custom-field-query'
import { CustomFieldsService } from 'src/app/services/rest/custom-fields.service'
@@ -19,6 +20,7 @@ import {
CustomFieldQueryElement,
CustomFieldQueryExpression,
} from 'src/app/utils/custom-field-query-element'
import { ISODateAdapter } from 'src/app/utils/ngb-iso-date-adapter'
import {
CustomFieldQueriesModel,
CustomFieldsQueryDropdownComponent,
@@ -48,6 +50,12 @@ const customFields = [
data_type: CustomFieldDataType.Monetary,
extra_data: { default_currency: 'EUR' },
},
{
id: 4,
name: 'Test Date Field',
data_type: CustomFieldDataType.Date,
extra_data: {},
},
]
describe('CustomFieldsQueryDropdownComponent', () => {
@@ -69,6 +77,7 @@ describe('CustomFieldsQueryDropdownComponent', () => {
provideHttpClient(withInterceptorsFromDi()),
provideHttpClientTesting(),
{ provide: LOCALE_ID, useValue: 'de' },
{ provide: NgbDateAdapter, useClass: ISODateAdapter },
],
}).compileComponents()
@@ -237,6 +246,74 @@ describe('CustomFieldsQueryDropdownComponent', () => {
expect(component.selectionModel.queries.length).toBe(1)
})
it('should build relative date values from amount and unit', async () => {
component.useDropdown = false
const atom = new CustomFieldQueryAtom([
4,
CustomFieldQueryOperator.GreaterThanOrEqual,
'2026-10-22',
])
component.selectionModel.addAtom(atom)
fixture.detectChanges()
await fixture.whenStable()
const query = (selector: string) =>
fixture.nativeElement.querySelector(selector)
expect(query('[ngbDatepicker]')).not.toBeNull()
expect(query('input[id$="_fixed"]').checked).toBe(true)
query('input[id$="_relative"]').click()
fixture.detectChanges()
await fixture.whenStable()
expect(atom.value).toBeNull()
const amount: HTMLInputElement = query('input[aria-label="Amount"]')
const unit: HTMLSelectElement = query('select[id$="_unit"]')
amount.value = '30'
amount.dispatchEvent(new Event('input'))
expect(atom.serialize()).toEqual([4, 'gte', '30 days ago'])
unit.selectedIndex = 6
unit.dispatchEvent(new Event('change'))
expect(atom.serialize()).toEqual([4, 'gte', 'in 30 weeks'])
unit.selectedIndex = 0
unit.dispatchEvent(new Event('change'))
fixture.detectChanges()
expect(atom.serialize()).toEqual([4, 'gte', 'today'])
expect(query('input[aria-label="Amount"]')).toBeNull()
query('input[id$="_fixed"]').click()
fixture.detectChanges()
expect(atom.value).toBeNull()
expect(query('[ngbDatepicker]')).not.toBeNull()
})
it('should restore a saved relative date value', async () => {
component.useDropdown = false
const atom = new CustomFieldQueryAtom([
4,
CustomFieldQueryOperator.Exact,
'in 2 months',
])
component.selectionModel.addAtom(atom)
fixture.detectChanges()
await fixture.whenStable()
expect(component.getRelativeDate(atom)).toEqual({
amount: 2,
unit: 'in {n} months',
})
expect(
fixture.nativeElement.querySelector('input[aria-label="Amount"]').value
).toBe('2')
const today = new CustomFieldQueryAtom([
4,
CustomFieldQueryOperator.Exact,
'today',
])
expect(component.getRelativeDate(today)).toEqual({
amount: null,
unit: 'today',
})
})
describe('CustomFieldQueriesModel', () => {
let model: CustomFieldQueriesModel
@@ -49,6 +49,26 @@ import { LoadingComponentWithPermissions } from '../../loading-component/loading
import { ClearableBadgeComponent } from '../clearable-badge/clearable-badge.component'
import { DocumentLinkComponent } from '../input/document-link/document-link.component'
interface RelativeDate {
// The expression sent to the API, with {n} standing in for the amount
amount: number | null
unit: string
}
function parseRelativeDate(
value: string,
unit: string
): RelativeDate | undefined {
const [prefix, suffix] = unit.split('{n}')
if (suffix === undefined) {
return value === unit ? { amount: null, unit } : undefined
}
if (!value.startsWith(prefix) || !value.endsWith(suffix)) return undefined
const amount = value.slice(prefix.length, value.length - suffix.length)
if (!amount || !Number.isInteger(+amount) || +amount < 0) return undefined
return { amount: +amount, unit }
}
export class CustomFieldQueriesModel {
private readonly _queries = signal<CustomFieldQueryElement[]>([])
private rootSubscriptions: Subscription[] = []
@@ -305,6 +325,67 @@ export class CustomFieldsQueryDropdownComponent extends LoadingComponentWithPerm
public readonly today: string = new Date().toLocaleDateString('en-CA')
public readonly relativeDateUnits = [
{ id: 'today', label: $localize`Today` },
{ id: '{n} days ago', label: $localize`days ago` },
{ id: '{n} weeks ago', label: $localize`weeks ago` },
{ id: '{n} months ago', label: $localize`months ago` },
{ id: '{n} years ago', label: $localize`years ago` },
{ id: 'in {n} days', label: $localize`days from now` },
{ id: 'in {n} weeks', label: $localize`weeks from now` },
{ id: 'in {n} months', label: $localize`months from now` },
{ id: 'in {n} years', label: $localize`years from now` },
]
private readonly relativeDates = new Map<string, RelativeDate>()
getRelativeDate(atom: CustomFieldQueryAtom): RelativeDate | undefined {
if (!this.relativeDates.has(atom.id) && typeof atom.value === 'string') {
for (const { id } of this.relativeDateUnits) {
const relativeDate = parseRelativeDate(atom.value, id)
if (relativeDate) {
this.relativeDates.set(atom.id, relativeDate)
break
}
}
}
return this.relativeDates.get(atom.id)
}
hasDateValueRow(atom: CustomFieldQueryAtom): boolean {
return (
this.getCustomFieldByID(atom.field)?.data_type ===
CustomFieldDataType.Date &&
atom.operator !== CustomFieldQueryOperator.Exists &&
atom.operator !== CustomFieldQueryOperator.IsNull
)
}
toggleRelativeDate(atom: CustomFieldQueryAtom) {
if (this.getRelativeDate(atom)) {
this.relativeDates.delete(atom.id)
atom.value = null
} else {
this.relativeDates.set(atom.id, { amount: null, unit: '{n} days ago' })
this.updateRelativeDate(atom, {})
}
}
updateRelativeDate(
atom: CustomFieldQueryAtom,
change: Partial<RelativeDate>
) {
const { amount, unit } = Object.assign(
this.relativeDates.get(atom.id),
change
)
if (!unit.includes('{n}')) {
atom.value = unit
} else {
atom.value = amount === null ? null : unit.replace('{n}', `${amount}`)
}
}
public customFieldSearchFn = (term: string, field: CustomField): boolean =>
matchesSearchText(field?.name, term)
@@ -105,7 +105,7 @@
(click)="$event.stopPropagation()"
/>
} @else {
<span class="input-group-text version-label">
<span class="input-group-text overflow-hidden version-label">
@if (version.version_label) {
{{ version.version_label }}
} @else {
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+13
View File
@@ -847,6 +847,19 @@ class ConsumerPlugin(
local_added,
self.filename,
self.filename,
custom_fields=[
CustomFieldInstance(
field=field,
**{
CustomFieldInstance.get_value_field_name(
field.data_type,
): self.metadata.custom_fields[field.pk],
},
)
for field in CustomField.objects.filter(
pk__in=self.metadata.custom_fields or {},
)
],
)
def _store(
+53
View File
@@ -11,6 +11,8 @@ from decimal import InvalidOperation
from typing import TYPE_CHECKING
from typing import Any
import dateparser
from django.conf import settings
from django.contrib.contenttypes.models import ContentType
from django.db.models import Case
from django.db.models import CharField
@@ -25,6 +27,7 @@ from django.db.models import Value
from django.db.models import When
from django.db.models.functions import Cast
from django.db.models.functions import NullIf
from django.utils import timezone
from django.utils.translation import gettext_lazy as _
from django_filters import DateFilter
from django_filters.rest_framework import BooleanFilter
@@ -57,6 +60,7 @@ from documents.versioning import annotate_effective_content
if TYPE_CHECKING:
from collections.abc import Callable
from datetime import datetime
CHAR_KWARGS = ["istartswith", "iendswith", "icontains", "iexact"]
ID_KWARGS = ["in", "exact"]
@@ -322,6 +326,51 @@ class MonetaryAmountField(serializers.Field):
return str(value)
class DateQueryField(serializers.DateField):
"""
Accepts either a fixed date or a relative date expression using `dateparser` and
resolves it against the provided reference datetime.
"""
default_error_messages = {
"expression": _(
'Expected a date or a relative date such as "today" or "in 30 days".',
),
}
def __init__(self, *, reference_datetime: datetime, **kwargs):
super().__init__(**kwargs)
self.reference_datetime = reference_datetime
def to_internal_value(self, value):
try:
# Let the parent class handle fixed-date formats and string validation first
return super().to_internal_value(value)
except serializers.ValidationError:
if not isinstance(value, str):
raise
try:
parsed = dateparser.parse(
value,
# The UI always builds English expressions
locales=[*settings.DATE_PARSER_LANGUAGES, "en"]
if settings.DATE_PARSER_LANGUAGES
else None,
settings={
"PARSERS": ["relative-time"],
"RELATIVE_BASE": self.reference_datetime,
"TIMEZONE": str(self.reference_datetime.tzinfo),
"RETURN_AS_TIMEZONE_AWARE": True,
},
)
except (ValueError, OverflowError):
self.fail("expression")
if parsed is None:
self.fail("expression")
return parsed.astimezone(self.reference_datetime.tzinfo).date()
class SelectField(serializers.CharField):
def __init__(self, custom_field: CustomField) -> None:
self._options = custom_field.extra_data["select_options"]
@@ -463,6 +512,8 @@ class CustomFieldQueryParser:
raise serializers.ValidationError(
{self._validation_prefix: [_("Value must be valid JSON.")]},
)
# Save the current local time as the reference for the query
self._reference_datetime = timezone.localtime()
return (
self._parse_expr(expr, validation_prefix=self._validation_prefix),
self._annotations,
@@ -649,6 +700,8 @@ class CustomFieldQueryParser:
):
# DateField admits queries in the form of `year__exact`, etc. These take integers.
field = serializers.IntegerField()
elif custom_field.data_type == CustomField.FieldDataType.DATE:
field = DateQueryField(reference_datetime=self._reference_datetime)
elif custom_field.data_type == CustomField.FieldDataType.DOCUMENTLINK:
# We can be more specific here and make sure the value is a list.
field = serializers.ListField(child=serializers.IntegerField())
+6
View File
@@ -1,4 +1,5 @@
import logging
from collections.abc import Iterable
from datetime import date
from datetime import datetime
from pathlib import Path
@@ -13,7 +14,9 @@ from jinja2 import make_logging_undefined
from jinja2.meta import find_undeclared_variables
from jinja2.sandbox import SecurityError
from documents.models import CustomFieldInstance
from documents.templating.environment import _template_environment
from documents.templating.filepath import get_custom_fields_context
from documents.templating.filters import format_datetime
from documents.templating.filters import localize_date
@@ -56,6 +59,7 @@ _known_placeholder_names = {
"doc_title",
"doc_url",
"doc_id",
"custom_fields",
}
@@ -86,6 +90,7 @@ def parse_w_workflow_placeholders(
doc_title: str | None = None,
doc_url: str | None = None,
doc_id: int | None = None,
custom_fields: Iterable[CustomFieldInstance] = (),
) -> str:
"""
Available title placeholders for Workflows depend on what has already been assigned,
@@ -108,6 +113,7 @@ def parse_w_workflow_placeholders(
"original_filename": Path(original_filename).stem,
"filename": Path(filename).stem,
}
formatting.update(get_custom_fields_context(custom_fields))
if created is not None:
formatting.update(
{
@@ -2,8 +2,12 @@ import json
import types
from collections.abc import Callable
from datetime import date
from unittest.mock import patch
from urllib.parse import quote
import time_machine
from django.test import override_settings
from django.utils import timezone
from rest_framework.test import APITestCase
from documents.models import CustomField
@@ -443,6 +447,65 @@ class TestCustomFieldsSearch(DirectoriesMixin, APITestCase):
),
)
@override_settings(TIME_ZONE="America/Los_Angeles")
def test_relative_dates(self) -> None:
# Reevaluate the same mixed relative/fixed range on different local dates.
for today in (date(2024, 8, 22), date(2024, 11, 15)):
with (
self.subTest(today=today),
time_machine.travel(f"{today}T23:30:00-07:00", tick=False),
patch(
"documents.filters.timezone.localtime",
wraps=timezone.localtime,
) as localtime,
):
self._assert_query_match_predicate(
["date_field", "range", ["today", "2024-11-15"]],
lambda document, today=today: (
"date_field" in document
and document["date_field"] is not None
and today <= document["date_field"] <= date(2024, 11, 15)
),
)
localtime.assert_called_once_with()
def test_relative_date_validation(self) -> None:
for value, keyword in (
("not a date", "date"),
("January 2024", "date"),
("today + " + "9" * 5000 + " days", "date"),
(True, "format"),
):
with self.subTest(value=str(value)[:50]):
self._assert_validation_error(
json.dumps(["date_field", "exact", value]),
["custom_field_query", "2"],
keyword,
)
@time_machine.travel("2024-08-22T12:00:00Z", tick=False)
def test_relative_date_languages(self) -> None:
for locales in (["de"], ["zh-Hans", "de"], None):
with (
self.subTest(locales=locales),
override_settings(
DATE_PARSER_LANGUAGES=locales,
),
):
self._assert_query_match_predicate(
["date_field", "exact", "heute"],
lambda document: (
"date_field" in document
and document["date_field"] == date(2024, 8, 22)
),
)
with override_settings(DATE_PARSER_LANGUAGES=["en"]):
self._assert_validation_error(
json.dumps(["date_field", "exact", "heute"]),
["custom_field_query", "2"],
"date",
)
def test_gt_monetary(self) -> None:
self._assert_query_match_predicate(
["monetary_field", "gt", "99"],
+110
View File
@@ -1846,6 +1846,50 @@ class TestWorkflows(
expected_str = f"Document storage path {doc.storage_path} does not match {trigger.filter_has_storage_path}"
self.assertIn(expected_str, cm.output[1])
def test_title_custom_fields(self) -> None:
from documents.consumer import ConsumerPlugin
from documents.templating.workflows import validate_workflow_template
field = CustomField.objects.create(
name="Invoice",
data_type=CustomField.FieldDataType.STRING,
)
template = '{{ custom_fields.Invoice.value }} {{ custom_fields | get_cf_value("Missing", "fallback") }}'
validate_workflow_template(template)
consumer = mock.Mock(
filename="invoice.pdf",
metadata=DocumentMetadataOverrides(custom_fields={field.pk: "INV-123"}),
)
self.assertEqual(
ConsumerPlugin._parse_title_placeholders(consumer, template),
"INV-123 fallback",
)
trigger = WorkflowTrigger.objects.create(
type=WorkflowTrigger.WorkflowTriggerType.DOCUMENT_ADDED,
)
action = WorkflowAction.objects.create(assign_title=template)
doc = Document.objects.create(title="Original")
action.assign_custom_fields.add(field)
action.assign_custom_fields_values = {str(field.pk): "INV-123"}
action.save()
workflow = Workflow.objects.create(name="Custom field title", order=0)
workflow.triggers.add(trigger)
workflow.actions.add(action)
document_consumption_finished.send(sender=self.__class__, document=doc)
doc.refresh_from_db()
self.assertEqual(doc.title, "INV-123 fallback")
# Existing fields remain available when the action assigns no custom fields.
action.assign_custom_fields.clear()
CustomFieldInstance.objects.filter(document=doc, field=field).update(
value_text="INV-456",
)
document_consumption_finished.send(sender=self.__class__, document=doc)
doc.refresh_from_db()
self.assertEqual(doc.title, "INV-456 fallback")
def test_document_added_invalid_title_placeholders(self) -> None:
"""
GIVEN:
@@ -5120,6 +5164,72 @@ class TestWorkflows(
self.assertEqual(Document.objects.count(), 0)
@pytest.mark.django_db
@pytest.mark.parametrize("use_overrides", [False, True])
def test_custom_fields_in_email_and_webhook_templates(
use_overrides,
settings,
tmp_path,
):
from documents.workflows.actions import build_workflow_action_context
from documents.workflows.actions import execute_email_action
from documents.workflows.actions import execute_webhook_action
settings.EMAIL_ENABLED = True
field = CustomField.objects.create(
name="Invoice",
data_type=CustomField.FieldDataType.STRING,
)
if use_overrides:
invoice = tmp_path / "invoice.pdf"
invoice.write_bytes(b"%PDF-1.7")
document = ConsumableDocument(
source=DocumentSource.ConsumeFolder,
original_file=invoice,
)
overrides = DocumentMetadataOverrides(custom_fields={field.pk: "INV-123"})
else:
document = Document.objects.create(title="Invoice")
CustomFieldInstance.objects.create(
document=document,
field=field,
value_text="INV-123",
)
overrides = None
context = build_workflow_action_context(document, overrides)
template = '{{ custom_fields.Invoice.value }} {{ custom_fields | get_cf_value("Missing", "fallback") }}'
action = WorkflowAction(
email=WorkflowActionEmail(
subject=template,
body=template,
to="test@example.com",
),
webhook=WorkflowActionWebhook(
url="https://example.com",
body=template,
),
)
with mock.patch("documents.workflows.actions.send_email") as send_email:
execute_email_action(
action,
document,
context,
None,
Path("invoice.pdf"),
WorkflowTrigger.WorkflowTriggerType.DOCUMENT_ADDED,
)
assert send_email.call_args.kwargs["subject"] == "INV-123 fallback"
assert send_email.call_args.kwargs["body"] == "INV-123 fallback"
with mock.patch("documents.workflows.actions.send_webhook.apply_async") as send:
for use_params in (False, True):
action.webhook.use_params = use_params
action.webhook.params = {"invoice": template}
execute_webhook_action(action, document, context, None, Path("invoice.pdf"))
assert send.call_args.kwargs["kwargs"]["data"] == (
{"invoice": "INV-123 fallback"} if use_params else "INV-123 fallback"
)
class TestWebhookSend:
def test_send_webhook_data_or_json(
self,
+22
View File
@@ -11,6 +11,8 @@ from documents.data_models import DocumentMetadataOverrides
from documents.mail import EmailAttachment
from documents.mail import send_email
from documents.models import Correspondent
from documents.models import CustomField
from documents.models import CustomFieldInstance
from documents.models import Document
from documents.models import DocumentType
from documents.models import WorkflowAction
@@ -48,6 +50,9 @@ def build_workflow_action_context(
"added": timezone.localtime(document.added),
"created": document.created,
"id": document.pk,
"custom_fields": CustomFieldInstance.global_objects.filter(
document=document,
).select_related("field"),
}
correspondent_obj = (
@@ -80,6 +85,19 @@ def build_workflow_action_context(
"added": timezone.localtime(timezone.now()),
"created": overrides.created if overrides else None,
"id": "",
"custom_fields": [
CustomFieldInstance(
field=field,
**{
CustomFieldInstance.get_value_field_name(
field.data_type,
): overrides.custom_fields[field.pk],
},
)
for field in CustomField.objects.filter(
pk__in=overrides.custom_fields or {},
)
],
}
@@ -116,6 +134,7 @@ def execute_email_action(
context["title"],
context["doc_url"],
context["id"],
custom_fields=context["custom_fields"],
)
if action.email.subject
else ""
@@ -133,6 +152,7 @@ def execute_email_action(
context["title"],
context["doc_url"],
context["id"],
custom_fields=context["custom_fields"],
)
if action.email.body
else ""
@@ -211,6 +231,7 @@ def execute_webhook_action(
context["title"],
context["doc_url"],
context["id"],
custom_fields=context["custom_fields"],
)
except Exception as e:
logger.error(
@@ -230,6 +251,7 @@ def execute_webhook_action(
context["title"],
context["doc_url"],
context["id"],
custom_fields=context["custom_fields"],
)
headers = {}
if action.webhook.headers:
+30 -27
View File
@@ -43,6 +43,33 @@ def apply_assignment_to_document(
if action.assign_owner:
document.owner = action.assign_owner
if action.has_assign_custom_fields:
for field in action.assign_custom_fields.all():
value_field_name = CustomFieldInstance.get_value_field_name(
data_type=field.data_type,
)
args = {
value_field_name: action.assign_custom_fields_values.get(
str(field.pk),
None,
),
}
# for some reason update_or_create doesn't work here
instance = CustomFieldInstance.objects.filter(
field=field,
document=document,
).first()
# empty string is indistinguishable from no value in the UI
if instance and args[value_field_name] not in (None, ""):
setattr(instance, value_field_name, args[value_field_name])
instance.save()
elif not instance:
CustomFieldInstance.objects.create(
**args,
field=field,
document=document,
)
if action.assign_title:
try:
title = parse_w_workflow_placeholders(
@@ -57,6 +84,9 @@ def apply_assignment_to_document(
"", # dont pass the title to avoid recursion
"", # no urls in titles
document.pk,
custom_fields=CustomFieldInstance.global_objects.filter(
document=document,
).select_related("field"),
)
if title:
document.title = title
@@ -91,33 +121,6 @@ def apply_assignment_to_document(
merge=True,
)
if action.has_assign_custom_fields:
for field in action.assign_custom_fields.all():
value_field_name = CustomFieldInstance.get_value_field_name(
data_type=field.data_type,
)
args = {
value_field_name: action.assign_custom_fields_values.get(
str(field.pk),
None,
),
}
# for some reason update_or_create doesn't work here
instance = CustomFieldInstance.objects.filter(
field=field,
document=document,
).first()
# empty string is indistinguishable from no value in the UI
if instance and args[value_field_name] not in (None, ""):
setattr(instance, value_field_name, args[value_field_name])
instance.save()
elif not instance:
CustomFieldInstance.objects.create(
**args,
field=field,
document=document,
)
def apply_assignment_to_overrides(
action: WorkflowAction,
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Afrikaans\n"
"Language: af_ZA\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumente"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Waarde moet geldige JSON wees."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ongeldige gepasmaakte veldnavraaguitdrukking"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Ongeldige uitdrukking lys. Moet nie leeg wees nie."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Ongeldige logiese uitdrukking {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ongeldige kleur."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Lêertipe %(type)s word nie ondersteun nie"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ongeldige veranderlike bespeur."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Engels (VS)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabies"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Belorussies"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalaans"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tsjeggies"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Deens"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Duits"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Engels (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spaans"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Fins"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Frans"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiaans"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgs"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Nederlands"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Pools"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugees (Brasilië)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugees"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Roemeens"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russies"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Sloweens"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serwies"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Sweeds"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turks"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Vereenvoudigde Sjinees"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Amharic\n"
"Language: am_ET\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "መዝገባት"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "የሚሰራው እሴት \"JSON\" መሆን አለበት"
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "ልክ ያልሆነ የተወሰነ የቦታ መጠይቅ አገላለጽ"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "ልክ ያልሆነ የመግለጫ ዝርዝር። ባዶ መሆን የለበትም።"
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "ልክ ያልሆነ የሎጂክ ኦፕሬተር {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "ከፍተኛው የጥያቄ ሁኔታዎች/መጠን ብዛት አልፏል።"
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} ይሄ ታዐማኒነት ያለው ልማድ አይደለም።"
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "ጥያቄን አይደግፍም expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "ከፍተኛው የጥገኝነት ጥልቀት አልፏል።"
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "ይህ ልማድ አልተገኘም"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr ""
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr ""
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr ""
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr ""
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr ""
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr ""
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr ""
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr ""
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr ""
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr ""
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr ""
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr ""
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr ""
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr ""
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr ""
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr ""
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr ""
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr ""
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr ""
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr ""
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr ""
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Arabic\n"
"Language: ar_SA\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "المستندات"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "يجب أن تكون القيمة JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "تعبير استعلام غير صالح للحقول المخصصة"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "قائمة عبارة خاطئة."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "تجاوز الحد الأقصى لعدد شروط الاستعلام."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} حقل مخصص غير صالح."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} لا يدعم تعبير الاستعلام {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "لم يتم العثور على حقل مخصص"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "لون خاطئ."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "نوع الملف %(type)s غير مدعوم"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "اكتشاف متغير خاطئ."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "كخطوة أخيرة، يرجى ملء النموذج التالي:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "إعدادات التطبيق paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "الإنجليزية (الولايات المتحدة)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "العربية"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "اللغة الأفريقانية"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "البيلاروسية"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "البلغارية"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "اللغة الكتالونية"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "التشيكية"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "الدانماركية"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "الألمانية"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "اليونانية"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "الإنجليزية (المملكة المتحدة)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "الإسبانية"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "الفنلندية"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "الفرنسية"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "المجرية"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "الإيطالية"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "اليابانية"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "اللوكسمبرجية"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "النرويجية"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "الهولندية"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "البولندية"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "البرتغالية (البرازيل)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "البرتغالية"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "الرومانية"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "الروسية"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "السلوفاكية"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "السلوفانية"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "الصربية"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "السويدية"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "التركية"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "الأوكرانية"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "الصينية المبسطة"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Belarusian\n"
"Language: be_BY\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Дакументы"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr ""
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Няправільны колер."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Тып файла %(type)s не падтрымліваецца"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Выяўлена няправільная зменная."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Англійская (ЗША)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Беларуская"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Чэшская"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Дацкая"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Нямецкая"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Англійская (Вялікабрытанія)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Іспанская"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Французская"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Італьянская"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Люксембургская"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Нідэрландская"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Польская"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Партугальская (Бразілія)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Партугальская"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Румынская"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Руская"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Славенская"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Сербская"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Шведская"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Турэцкая"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Кітайская спрошчаная"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Bulgarian\n"
"Language: bg_BG\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Документи"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Стойността трябва да е валидна JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Невалидна заявка на персонализираното полето"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Списък с невалиден израз. Не може да е празно."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Невалиден логически оператор {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Надвишен е максимален брой за заявки."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} не е валидно персонализирано поле."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} не поддържа заявка expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Надвишена е максималната дълбочина на вмъкване."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Персонализирано поле не е намерено"
@@ -1635,48 +1639,48 @@ msgstr "стартиране на работния процес"
msgid "workflow runs"
msgstr "стартиране на работните процеси"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Невалиден цвят."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Файловия тип %(type)s не се поддържа"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Засечена е невалидна променлива."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "Като последна стъпка, моля, попълнете с
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "настройки на софтуера"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Английски (САЩ)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Арабски"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Африканс"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Беларуски"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Български"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Каталунски"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Чешки"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Датски"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Немски"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Гръцки"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Английски (Великобритания)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Испански"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Финландски"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Френски"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Унгарски"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Италиански"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Японски"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Корейски"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Люксембургски"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Норвежки"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Холандски"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Полски"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Португалски (Бразилия)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Португалски"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Румънски"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Руски"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Словашки"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Словенски"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Сръбски"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Шведски"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Турски"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Украински"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Китайски опростен"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Китайски традиционен"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Catalan\n"
"Language: ca_ES\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documents "
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Valor ha de ser un JSON valid."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Expressió de camp de consulta invàlid"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Expressió de llista invàlida. No ha d'estar buida."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Invàlid operand lògic {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Condicions de consulta excedits."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} no és un camp personalitzat vàlid."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} no suporta expressió de consulta {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Màxima profunditat anidada excedida."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Camp personalitzat no trobat"
@@ -1635,48 +1639,48 @@ msgstr "data del flux"
msgid "workflow runs"
msgstr "flux corrents"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Permisos insuficients."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Color Invàlid."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipus arxiu %(type)s no suportat"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID de camp personalizat ha de ser enter: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Camp personalitzat amb ID %(id)s no existeix"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Camps personalitzats han de ser una llista d'enters o un objecte que mapegi els identificadors amb els valors."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Alguns camps personalitzats no existeixen o s'han especificat dues vegades."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variable detectada invàlida."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicat d'identificadors de documents no permès."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documents no trobats: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Com a pas final, completa el següent formulari:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Especifica només un dels següents valors: text, title_search, query o more_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Invalid more_like_id"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Configuració AI invàlida."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Permisos insuficients per compartir document %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Paquet ja s'està processant."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "El paquet de link encarà s'està preparant. Prova de nou més tard."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "El paquet d'enllaç no està disponible."
@@ -2242,151 +2246,151 @@ msgstr "Estableix temps d'espera en segons"
msgid "paperless application settings"
msgstr "configuració de l'aplicació paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Anglès (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Àrab"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Africà"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bielorús"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Búlgar"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Català"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Txec"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Danès"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Alemany"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grec"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Anglès (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Espanyol"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persa"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finès"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francès"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Hongarès"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesi"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italià"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonès"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coreà"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburguès"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Noruec"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Holandès"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polonès"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portuguès (Brasil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portuguès"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Romanès"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Rus"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Eslovac"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Eslovè"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbi"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Suec"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turc"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ucranià"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamita"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Xinès Simplificat"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Xinès tradicional"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Czech\n"
"Language: cs_CZ\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumenty"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Hodnota musí být platný JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Neplatný výraz dotazu na vlastní pole"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Neplatný seznam výrazů. Nesmí být prázdný."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Neplatný logický operátor {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Překročen maximální počet podmínek dotazu."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} není platné vlastní pole."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} nepodporuje výraz dotazu {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Překročena maximální hloubka větvení."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Vlastní pole nebylo nalezeno"
@@ -1635,48 +1639,48 @@ msgstr "spuštění pracovního postupu"
msgid "workflow runs"
msgstr "spuštění pracovních postupů"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nedostatečná oprávnění."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Neplatná barva."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Typ souboru %(type)s není podporován"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Vlastní ID pole musí být celé číslo: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Vlastní pole s ID %(id)s neexistuje"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Vlastní pole musí být seznam celých čísel nebo ID pro mapování objektů na hodnoty."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Některá vlastní pole neexistují nebo byla zadána dvakrát."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Zjištěna neplatná proměnná."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "Jako poslední krok vyplňte následující formulář:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nedostatečná oprávnění ke sdílení dokumentu %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr "Nastaví časový limit LLM v sekundách"
msgid "paperless application settings"
msgstr "nastavení aplikace paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Angličtina (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabština"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikánština"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Běloruština"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulharština"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalánština"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Čeština"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dánština"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Němčina"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Řečtina"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Angličtina (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Španělština"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Perština"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finština"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francouzština"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Maďarština"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonéština"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italština"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonština"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Korejština"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Lucemburština"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norština"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Holandština"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polština"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugalština (Brazílie)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugalština"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumunština"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Ruština"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovenština"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovinština"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Srbština"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Švédština"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turečtina"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrajinština"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamština"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Čínština (zjednodušená)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Čínština (tradiční)"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Danish\n"
"Language: da_DK\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumenter"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Værdien skal være gyldig JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ugyldigt tilpasset feltforespørgselsudtryk"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Ugyldig udtryksliste. Må ikke være tom."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Ugyldig logisk operatør {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maksimalt antal forespørgselsbetingelser overskredet."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} er ikke et gyldigt tilpasset felt."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} understøtter ikke forespørgsel expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Maksimal indlejringsdybde overskredet."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Tilpasset felt ikke fundet"
@@ -1635,48 +1639,48 @@ msgstr "workflow-kørsel"
msgid "workflow runs"
msgstr "workflow-kørsler"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ugyldig farve."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Filtype %(type)s understøttes ikke"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ugyldig variabel fundet."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "Som sidste trin, udfyld venligst flg. formular:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "paperless-applikationsindstillinger"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Engelsk (USA)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikaans"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Hviderussisk"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgarsk"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalansk"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tjekkisk"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dansk"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Tysk"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Græsk"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Engelsk (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spansk"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finsk"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Fransk"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Ungarsk"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiensk"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japansk"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Koreansk"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgsk"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norsk"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Hollandsk"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polsk"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugisisk (Brasilien)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugisisk"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Romansk"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russisk"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovakisk"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovensk"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbisk"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Svensk"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Tyrkisk"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrainsk"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Kinesisk, forenklet"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Kinesisk, traditionelt"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: German, Switzerland\n"
"Language: de_CH\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumente"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Wert muss gültiges JSON sein."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ungültiger benutzerdefinierter Feldabfrageausdruck"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Ungültige Ausdrucksliste. Darf nicht leer sein."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Ungültiger logischer Operator {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maximale Anzahl an Abfragebedingungen überschritten."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} ist kein gültiges Zusatzfeld."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} unterstützt den Abfrageausdruck {expr!r} nicht."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Maximale Verschachtelungstiefe überschritten."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Benutzerdefiniertes Feld nicht gefunden"
@@ -1635,48 +1639,48 @@ msgstr "Arbeitsablauf-Ausführung"
msgid "workflow runs"
msgstr "Arbeitsablauf wird ausgeführt"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Unzureichende Berechtigungen."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ungültige Farbe."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Dateityp %(type)s nicht unterstützt"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Feld-ID eines benutzerdefinierten Felds muss eine Ganzzahl sein: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Benutzerdefiniertes Feld mit ID %(id)s existiert nicht"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Benutzerdefinierte Felder müssen eine Liste von Ganzzahlen oder ein Objekt mit Zuordnung von IDs zu Werten sein."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Einige benutzerdefinierte Felder existieren nicht oder wurden zweimal angegeben."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ungültige Variable erkannt."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Doppelte Dokumentbezeichner sind nicht erlaubt."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumente nicht gefunden: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Bitte füllen Sie zum Abschluss folgendes Formular aus:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Geben Sie nur einen von text, title_search, query, oder more_like_id an."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Ungültige more_like_id"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Ungültige KI-Konfiguration."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Unzureichende Berechtigungen, um Dokument %(id)s zu teilen."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Paket wird bereits verarbeitet."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Das Freigabelink-Paket wird noch vorbereitet. Bitte versuchen Sie es später erneut."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Das Freigabelink-Paket ist nicht verfügbar."
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "Paperless-ngx-Anwendungseinstellungen"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Englisch (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabisch"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikanisch"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Belarussisch"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgarisch"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalanisch"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tschechisch"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dänisch"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Deutsch"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Griechisch"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Englisch (UK)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spanisch"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persisch"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finnisch"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Französisch"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Ungarisch"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesisch"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italienisch"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japanisch"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Koreanisch"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgisch"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norwegisch"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Niederländisch"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polnisch"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugiesisch (Brasilien)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugiesisch"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumänisch"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russisch"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slowakisch"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slowenisch"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbisch"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Schwedisch"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Türkisch"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrainisch"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamesisch"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinesisch (vereinfacht)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chinesisch (traditionell)"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumente"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Wert muss gültiges JSON sein."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ungültiger Zusatzfeld-Abfrageausdruck"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Ungültige Ausdrucksliste. Darf nicht leer sein."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Ungültiger logischer Operator {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maximale Anzahl an Abfragebedingungen überschritten."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} ist kein gültiges Zusatzfeld."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} unterstützt den Abfrageausdruck {expr!r} nicht."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Maximale Verschachtelungstiefe überschritten."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Zusatzfeld nicht gefunden"
@@ -1635,48 +1639,48 @@ msgstr "Arbeitsablauf-Ausführung"
msgid "workflow runs"
msgstr "Arbeitsablauf wird ausgeführt"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Unzureichende Berechtigungen."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ungültige Farbe."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Dateityp %(type)s nicht unterstützt"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Zusatzfeld-ID muss eine Ganzzahl sein: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Zusatzfeld mit ID %(id)s existiert nicht"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Zusatzfelder müssen eine Liste von Ganzzahlen oder ein Objekt mit Zuordnung von IDs zu Werten sein."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Einige Zusatzfelder existieren nicht oder wurden zweimal angegeben."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ungültige Variable erkannt."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Doppelte Dokumentbezeichner sind nicht erlaubt."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumente nicht gefunden: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Bitte füllen Sie zum Abschluss folgendes Formular aus:"
msgid ", "
msgstr ", "
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Geben Sie nur einen von text, title_search, query, oder more_like_id an."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Ungültige more_like_id"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Ungültige KI-Konfiguration."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr "Zeitüberschreitung bei der KI-Backendanfrage."
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr "Das KI-Backend hat die Anfrage abgelehnt. Details in den Protokollen."
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Unzureichende Berechtigungen, um Dokument %(id)s zu teilen."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Paket wird bereits verarbeitet."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Das Freigabelink-Paket wird noch vorbereitet. Bitte versuchen Sie es später erneut."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Das Freigabelink-Paket ist nicht verfügbar."
@@ -2242,151 +2246,151 @@ msgstr "Legt das LLM-Zeitlimit in Sekunden fest"
msgid "paperless application settings"
msgstr "Paperless-ngx-Anwendungseinstellungen"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Englisch (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabisch"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikanisch"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Belarussisch"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgarisch"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalanisch"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tschechisch"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dänisch"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Deutsch"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Griechisch"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Englisch (UK)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spanisch"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persisch"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finnisch"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Französisch"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Ungarisch"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesisch"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italienisch"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japanisch"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Koreanisch"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgisch"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norwegisch"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Niederländisch"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polnisch"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugiesisch (Brasilien)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugiesisch"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumänisch"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russisch"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slowakisch"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slowenisch"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbisch"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Schwedisch"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Türkisch"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrainisch"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamesisch"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinesisch (vereinfacht)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chinesisch (traditionell)"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Language: el_GR\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Έγγραφα"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Η τιμή πρέπει να είναι σε έγκυρη μορφή JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Μη έγκυρη έκφραση προσαρμοσμένου ερωτήματος πεδίου"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Μη έγκυρη λίστα έκφρασης. Πρέπει να είναι μη κενή."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Μη έγκυρος λογικός τελεστής {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Υπέρβαση μέγιστου αριθμού συνθηκών ερωτήματος."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "Το προσαρμοσμένο πεδίο {name!r} δεν είναι ένα έγκυρο."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "Το {data_type} δεν υποστηρίζει το ερώτημα expr {expr!r}s."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Υπέρβαση μέγιστου βάθους εμφώλευσης."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Το προσαρμοσμένο πεδίο δε βρέθηκε"
@@ -1635,48 +1639,48 @@ msgstr "εκτέλεση ροής εργασίας"
msgid "workflow runs"
msgstr "εκτελέσεις ροής εργασίας"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Άκυρο χρώμα."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Ο τύπος αρχείου %(type)s δεν υποστηρίζεται"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Εντοπίστηκε μη έγκυρη μεταβλητή."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "Ως τελικό βήμα, παρακαλούμε να συμπληρώ
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "ρυθμίσεις εφαρμογής paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Αγγλικά (ΗΠΑ)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Αραβικά"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Αφρικανικά"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Λευκορωσικά"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Βουλγαρικά"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Καταλανικά"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Τσέχικα"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Δανέζικα"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Γερμανικά"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Ελληνικά"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Αγγλικά (Ηνωμένο Βασίλειο)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Ισπανικά"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Φινλανδικά"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Γαλλικά"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Ουγγρικά"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Ιταλικά"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Ιαπωνικά"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Κορεάτικα"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Λουξεμβουργικά"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Νορβηγικά"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Ολλανδικά"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Πολωνικά"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Πορτογαλικά (Βραζιλίας)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Πορτογαλικά"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Ρουμάνικα"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Ρωσικά"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Σλοβακικά"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Σλοβενικά"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Σερβικά"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Σουηδικά"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Τούρκικα"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ουκρανικά"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Κινέζικα Απλοποιημένα"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Κινεζικά Παραδοσιακά"
+14 -10
View File
@@ -2,7 +2,7 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-28 02:55+0000\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2022-02-17 04:17\n"
"Last-Translator: \n"
"Language-Team: English\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr ""
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr ""
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
+80 -76
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documentos"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "El valor debe ser un JSON válido."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Expresión de consulta de campo personalizado no válida"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Lista de expresiones no válida. No debe estar vacía."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Operador lógico inválido {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Se ha superado el número máximo de condiciones de consulta."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{nombre!r} no es un campo personalizado válido."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} no admite la consulta expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Profundidad máxima de nidificación superada."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Campo personalizado no encontrado"
@@ -346,11 +350,11 @@ msgstr ""
#: documents/models.py:590
msgid "Credit card"
msgstr ""
msgstr "Tarjeta de crédito"
#: documents/models.py:591
msgid "Download"
msgstr ""
msgstr "Descarga"
#: documents/models.py:592
msgid "Envelope"
@@ -362,7 +366,7 @@ msgstr ""
#: documents/models.py:594
msgid "File"
msgstr ""
msgstr "Archivo"
#: documents/models.py:595
msgid "Checked file"
@@ -374,7 +378,7 @@ msgstr ""
#: documents/models.py:597
msgid "Medical file"
msgstr ""
msgstr "Ficha médica"
#: documents/models.py:598
msgid "Person file"
@@ -382,7 +386,7 @@ msgstr ""
#: documents/models.py:601
msgid "Spreadsheet"
msgstr ""
msgstr "Hoja de cálculo"
#: documents/models.py:603
msgid "Text file"
@@ -422,7 +426,7 @@ msgstr ""
#: documents/models.py:612
msgid "Inbox"
msgstr ""
msgstr "Bandeja de entrada"
#: documents/models.py:613
msgid "Journals"
@@ -462,11 +466,11 @@ msgstr ""
#: documents/models.py:622
msgid "Search"
msgstr ""
msgstr "Búsqueda"
#: documents/models.py:623
msgid "Send"
msgstr ""
msgstr "Enviar"
#: documents/models.py:624
msgid "Shop"
@@ -1635,48 +1639,48 @@ msgstr "ejecución del flujo de trabajo"
msgid "workflow runs"
msgstr "ejecuciones de flujo de trabajo"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Permisos insuficientes."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Color inválido."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipo de fichero %(type)s no suportado"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "El id del campo personalizado debe ser un entero: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "El campo personalizado con identificador %(id)s no existe"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Los campos personalizados deben ser una lista de enteros o un identificador de mapeo de objetos a valores."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Algunos campos personalizados no existen o fueron especificados dos veces."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variable inválida."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "No se permiten identificadores de documento duplicados."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documentos no encontrados: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Como último paso, por favor complete el siguiente formulario:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Especifique solo uno entre text, title_search, query, o more_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Configuración de IA inválida."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Permisos insuficientes para compartir el documento %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "El paquete ya está siendo procesado."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "El paquete de enlace compartido aún está siendo preparado. Por favor, inténtalo de nuevo más tarde."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "El paquete de enlace compartido no está disponible."
@@ -2242,151 +2246,151 @@ msgstr "Establece el tiempo de espera de LLM en segundos"
msgid "paperless application settings"
msgstr "Ajustes de la aplicación paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Inglés (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Árabe"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Africano"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bielorruso"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Búlgaro"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalán"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Checo"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Danés"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Alemán"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Griego"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Inglés (Gran Bretaña)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Español"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persa"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finlandés"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francés"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Húngaro"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesio"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiano"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonés"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coreano"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgués"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Noruego"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Alemán"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polaco"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugués (Brasil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugués"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumano"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Ruso"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Eslovaco"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Esloveno"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbio"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Sueco"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turco"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ucraniano"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamita"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chino simplificado"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chino tradicional"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Estonian\n"
"Language: et_EE\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumendid"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Väärtus peab olema lubatav JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Vigane kohandatud välja päringu avaldis"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Vigane avaldiste loend. Peab olema mittetühi."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Vigane loogikaoperaator {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Päringutingimuste suurim hulk on ületatud."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} ei ole lubatud kohandatud väli."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} ei toeta päringu avaldist {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Suurim pesastamis sügavus ületatud."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Kohandatud välja ei leitud"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr ""
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr ""
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr ""
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr ""
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr ""
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr ""
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr ""
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr ""
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr ""
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr ""
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr ""
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr ""
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr ""
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr ""
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr ""
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr ""
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr ""
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr ""
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr ""
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr ""
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr ""
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Persian\n"
"Language: fa_IR\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "اسناد و مدارک"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "مقدار باید JSON معتبر باشد."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Invalid custom field query expression"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "لیست عبارت‌ها نامعتبر است. نباید خالی باشد."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "حداکثر تعداد شرایط پرس و جو از آن فراتر رفته است."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{نام! R} یک زمینه سفارشی معتبر نیست."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "حداکثر عمق تودرتویی بیش از حد مجاز است."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "زمینه سفارشی یافت نشد"
@@ -1635,48 +1639,48 @@ msgstr "گردش کار"
msgid "workflow runs"
msgstr "گردش کار اجرا می شود"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "رنگ نامعتبر"
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "متغیر نامعتبر شناسایی شده است."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr "به عنوان مرحله آخر ، لطفاً فرم زیر را تک
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "تنظیمات برنامه بدون کاغذ"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "انگلیسی (ایالات متحده)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "عربی"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "افریکان"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "وابسته به بلروس"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "وابسته به بلغاری"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "کاتالان"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "وابسته به چک"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "وابسته به دانمارکی"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "آلمانی"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "یونانی"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "انگلیسی (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "اسپانیایی"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "فارسی"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "فنلاندی"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "فرانسوی"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "مجارستانی"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "ایتالیایی"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "وابسته به ژاپنی"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "کره ای"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "وابسته به لوکس"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "نروژی"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "هلندی"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "صیقل دادن"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "پرتغالی (برزیل)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "وابسته به پرتغالی"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "وابسته به رومانی"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "روسی"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "لگن"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "وابسته به اسلوونی"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "صرب"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "سوئدی"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "ترکی"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "وابسته به اوکراینی"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "چینی ساده شد"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "چینی سنتی"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Finnish\n"
"Language: fi_FI\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Asiakirjat"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Arvon on oltava kelvollista JSON:ia."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Virheellinen väri."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tiedostotyyppiä %(type)s ei tueta"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Virheellinen muuttuja havaittu."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Englanti (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabialainen"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "valkovenäjä"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalaani"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tšekki"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Tanska"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Saksa"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Kreikka"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Englanti (US)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Espanja"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Suomi"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Ranska"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italia"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburg"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norja"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Hollanti"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "puola"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "portugali (Brasilia)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "portugali"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "romania"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "venäjä"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovakia"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovenia"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbia"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "ruotsi"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turkki"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukraina"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Kiina (yksinkertaistettu)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documents"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "La valeur doit être un JSON valide."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Requête de champ personnalisé invalide"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Liste d'expressions invalide. Doit être non vide."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Opérateur logique {op!r} invalide"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Nombre maximum de conditions dans la requête dépassé."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} n'est pas un champ personnalisé valide."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} ne supporte pas l'expression {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Profondeur de récursion maximale dépassée."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Champ personnalisé non trouvé"
@@ -1635,48 +1639,48 @@ msgstr "exécution du workflow"
msgid "workflow runs"
msgstr "le flux de travail s'exécute"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Droits insuffisants."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Couleur incorrecte."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Type de fichier %(type)s non pris en charge"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "L'id du champ personnalisé doit être un entier : %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Le champ personnalisé avec l'id %(id)s n'existe pas"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Les champs personnalisés doivent être une liste d'entiers ou un mappage d'identifiants à des valeurs."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Certains champs personnalisés n'existent pas ou ont été spécifiés deux fois."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variable invalide détectée."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Les identificateurs de document en double ne sont pas autorisés."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documents introuvables : %(ids)s"
@@ -1916,40 +1920,40 @@ msgstr "Pour finir, veuillez remplir le formulaire suivant :"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Spécifiez seulement un texte, titre, recherche ou more_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "More_like_id invalide"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Configuration IA invalide."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr "La requête d'arrière-plan IA a expiré."
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Droits d'accès insuffisant pour partager %(id)s document."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Le paquet est déjà en cours de traitement."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Le lot de liens de partage est en cours de préparation. Veuillez réessayer plus tard."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Le lot de liens de partage n'est pas disponible."
@@ -2241,151 +2245,151 @@ msgstr "Définit le délai d'attente du LLM en secondes"
msgid "paperless application settings"
msgstr "paramètres de l'application paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Anglais (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabe"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikaans"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Biélorusse"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgare"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalan"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tchèque"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Danois"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Allemand"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grec"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Anglais (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Espagnol"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persan"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finnois"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Français"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Hongrois"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonésien"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italien"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonais"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coréen"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxembourgeois"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norvégien"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Néerlandais"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polonais"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugais (Brésil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugais"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Roumain"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russe"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Solvaque"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovène"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbe"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Suédois"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turc"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrainien"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamien"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinois simplifié"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chinois traditionnel"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "מסמכים"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "ערך חייב להיות JSON תקין."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "ביטוי שאילתה לא חוקי של שדה מותאם אישית"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "רשימת ביטויים לא חוקית. חייב לכלול ערך."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "סימן פעולה לוגית לא חוקי {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "חריגה ממספר תנאי השאילתה המרבי."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} הוא לא שדה מותאם אישית חוקי."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} לא תומך בביטוי שאילתה {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "חריגה מעומק הקינון המרבי."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "שדה מותאם אישית לא נמצא"
@@ -1636,48 +1640,48 @@ msgstr "הרצת זרימת עבודה"
msgid "workflow runs"
msgstr "הרצות זרימת עבודה"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "הרשאות אינן מספיקות."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "צבע לא חוקי."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "סוג קובץ %(type)s לא נתמך"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "שדה מותאם אישית id חייב להיות מספרי: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "שדה מותאם אישית עם מזהה %(id)s איננו קיים"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "שדות מותאמים אישית חייבים להיות רשימה של מספרים שלמים או אובייקט הממפה מזהים לערכים."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "חלק מהשדות המותאמים אישית אינם קיימים או שהוגדרו פעמיים."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "משתנה לא חוקי זוהה."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "מזהי מסמכים כפולים אינם מורשים."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "מסמכים לא נמצאו: %(ids)s"
@@ -1918,40 +1922,40 @@ msgstr ": כצעד אחרון, אנא מלא את הטופס הבא:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "יש לציין רק אחד מהבאים: text‏, title_search‏, query או more_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "מזהה more_like_id אינו תקין"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "הגדרות בינה מלאכותית שגויות."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "הרשאות לא מספיקות לשיתוף מסמך %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "החבילה (Bundle) כבר נמצאת בתהליך עיבוד."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "חבילת קישור השיתוף עדיין בהכנה. נא לנסות שוב מאוחר יותר."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "חבילת קישור השיתוף אינה זמינה."
@@ -2243,151 +2247,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "הגדרות יישום paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "אנגלית (ארה״ב)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "ערבית"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "אפריקאנס"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "בלרוסית"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "בולגרית"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "קטלאנית"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "צ'כית"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "דנית"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "גרמנית"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "יוונית"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "אנגלית (בריטניה)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "ספרדית"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "פרסית"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "פינית"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "צרפתית"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "הונגרית"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "אינדונזית"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "איטלקית"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "יפנית"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "קוריאנית"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "לוקסמבורגית"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "נורווגית"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "הולנדית"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "פולנית"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "פורטוגלית ברזילאית"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "פורטוגלית"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "רומנית"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "רוסית"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "סלובקית"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "סלובנית"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "סרבית"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "שוודית"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "טורקית"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "אוקראינית"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "ווייטנאמית"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "סינית מפושטת"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "סינית מסורתית"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Hindi\n"
"Language: hi_IN\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "दस्तावेज़"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "मान वैध JSON होना चाहिए."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "अमान्य कस्टम फ़ील्ड क्वेरी एक्सप्रेशन"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "अमान्य एक्सप्रेशन सूची। खाली नहीं होनी चाहिए।"
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "अमान्य लॉजिकल ऑपरेटर {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "क्वेरी शर्तों की अधिकतम संख्या पार हो गई है।"
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} यह एक वैध कस्टम फ़ील्ड नहीं है।"
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} क्वेरी एक्सप्रेशन {expr!r} का समर्थन नहीं करता है।"
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "अधिकतम नेस्टिंग डेप्थ पार हो गई है।"
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "कस्टम फ़ील्ड नहीं मिला"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr ""
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr ""
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr ""
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr ""
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr ""
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr ""
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr ""
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr ""
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr ""
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr ""
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr ""
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr ""
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr ""
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr ""
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr ""
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr ""
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr ""
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr ""
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr ""
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr ""
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr ""
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Croatian\n"
"Language: hr_HR\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumenti"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Vrijednost mora biti važeći JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Nevažeći izraz upita prilagođenog polja"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Nevažeći popis izraza. Ne smije biti prazno."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Nevažeći logički operator {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Previše uvjeta u upitu."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} nije važeće prilagođeno polje."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} ne podržava upit izraz {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Premašena je najveća razina ugniježđivanja."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Prilagođeno polje nije pronađeno"
@@ -1635,48 +1639,48 @@ msgstr "pokretanje tijeka rada"
msgid "workflow runs"
msgstr "tijek rada pokrenut"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nedovoljne ovlasti."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Nevažeća boja."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Vrsta datoteke %(type)s nije podržana"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "ID prilagođenog polja mora biti cijeli broj: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Prilagođeno polje s ID-om %(id)s ne postoji"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Prilagođena polja moraju biti popis cijelih brojeva ili ID-ova objekata koji preslikavaju vrijednosti."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Neka prilagođena polja ne postoje ili su navedena dvaput."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Otkrivena je nevaljana vrsta datoteke."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicirani identifikatori dokumenata nisu dopušteni."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumenti nisu pronađeni: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Kao posljednji korak ispunite sljedeći obrazac:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Navedite samo jedno od: text, title_search, query ili more_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Nevažeći more_like_id"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Nevažeća AI konfiguracija."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr "Zahtjev prema AI pozadinskom sustavu je istekao."
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr "AI pozadinski sustav je odbio zahtjev. Provjerite zapise (logs) za više detalja."
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nedovoljne ovlasti za dijeljenje dokumenta %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Paket se već obrađuje."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Paket linka za dijeljenje se još priprema. Pokušajte ponovo kasnije."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Paket linka za dijeljenje nije dostupan."
@@ -2242,151 +2246,151 @@ msgstr "LLM timeout (u sekundama)"
msgid "paperless application settings"
msgstr "postavke paperless aplikacije"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Engleski (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arapski"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "afrički"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bjeloruski"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "bugarski"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "katalonski"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Češki"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Danski"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Njemački"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "grčki"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Engleski (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Španjolski"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "perzijski"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "finski"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francuski"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "mađarski"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Iidonezijski"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Talijanski"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "japanski"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "koreanski"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luksemburški"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "norveški"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Nizozemski"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Poljski"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugalski (Brazil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugalski"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumunjski"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Ruski"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "slovački"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovenski"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Srpski"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Švedski"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turski"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "ukrajinski"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "vijetnamski"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Pojednostavljeni kineski"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Kineski tradicionalni"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Hungarian\n"
"Language: hu_HU\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumentumok"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Érvényes JSON érték szükséges."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Érvénytelen egyéni mező lekérdezési kifejezés"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Érvénytelen kifejezéslista. Nem lehet üres."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Érvénytelen logikai operátor {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maximum lekérdezési feltételszám átlépve."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} nem érvényes egyéni mező."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "A(z) {data_type} nem támogatja a {expr!r} kifejezés lekérdezést."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Maximum beágyazási mélység túllépve."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Az egyéni mező nem található"
@@ -1635,48 +1639,48 @@ msgstr "munkafolyamat futtatás"
msgid "workflow runs"
msgstr "munkafolyamat futtatások"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Nincs jogosúltsága."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Érvénytelen szín."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "%(type)s fájltípus nem támogatott"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Az egyéni mező azonosítójának egész számnak kell lennie: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "A(z) %(id)s azonosítójú egyéni mező nem létezik"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Az egyéni mezőknek egész számok listájának vagy azonosítókat értékekhez rendelő objektumnak kell lenniük."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Néhány egyéni mező nem létezik, vagy kétszer lett megadva."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Érvénytelen változó észlelve."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "A dokumentumazonosítók duplikálása nem megengedett."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumentumok nem találhatók: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Utolsó lépésként kérjük válaszoljon az alábbi kérdésekre:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "A text, title_search, query, vagy more_like_id közül csak egyet adjon meg."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Érvénytelen more_like_id"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Érvénytelen MI konfiguráció."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nincs megfelelő jogosultság a %(id)s dokumentum megosztásához."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "A csomag feldolgozása már folyamatban van."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "A megosztási linkcsomag készítése folyamatban. Kérjük, próbálja meg később."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "A megosztási linkcsomag nem elérhető."
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "paperless alkalmazás beállítások"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Angol (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arab"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikai"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Fehérorosz"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bolgár"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalán"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Cseh"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dán"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Német"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Görög"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Angol (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spanyol"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Perzsa"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finn"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francia"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Magyar"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonéz"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Olasz"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japán"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Koreai"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgi"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norvég"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Holland"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Lengyel"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugál (Brazília)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugál"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Román"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Orosz"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Szlovák"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Szlovén"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Szerb"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Svéd"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Török"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrán"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnámi"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Kínai egyszerűsített"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Tradicionális kínai"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumen"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Nilai harus berupa JSON yang valid."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ekspresi pencarian bidang khusus tidak valid"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Daftar ekspresi tidak valid. Tidak boleh kosong."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Operator logika {op!r} tidak valid"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Jumlah maksimal kondisi pencarian terlampaui."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} bukan bidang khusus yang valid."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} tidak mendukung ekspresi pencarian expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Kedalaman susunan maksimal terlampaui."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Bidang khusus tidak ditemukan"
@@ -1635,48 +1639,48 @@ msgstr "jalankan alur kerja"
msgid "workflow runs"
msgstr "daftar jalankan alur kerja"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Izin tidak mencukupi"
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Warna tidak sesuai."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Jenis berkas %(type)s tidak didukung"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Id kolom kustom harus berupa bilangan bulat: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Kolom kustom dengan id %(id)s tidak ada"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Kolom kustom harus berupa daftar bilangan bulat atau objek yang memetakan id ke nilai."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Beberapa kolom kustom tidak ada atau ditentukan dua kali."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variabel ilegal terdeteksi."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Penggunaan pengenal dokumen ganda tidak diperbolehkan."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Dokumen tidak ditemukan: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Sebagai langkah terakhir, mohon formulir berikut:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Izin tidak mencukupi untuk berbagi dokumen %(id)s"
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Paket sedang diproses."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Bundel tautan berbagi masih dalam proses persiapan. Silakan coba lagi nanti."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Bundel tautan berbagi tidak tersedia."
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "pengaturan aplikasi paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Inggris (AS)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arab"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Bahasa Afrika"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Belarusia"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bahasa Bulgaria"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalan"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Bahasa Ceko"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Denmark"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Jerman"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Yunani"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Inggris (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spanyol"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persia"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finlandia"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Prancis"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Hungaria"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesia"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italia"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Bahasa Jepang"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Bahasa Korea"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luksemburg"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norwegia"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Belanda"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polandia"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugis (Brasil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugis"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumania"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Rusia"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovakia"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovenia"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbia"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Swedia"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turki"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukraina"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnam"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Mandarin Sederhana"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Tionghoa Tradisional"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documenti"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Il valore deve essere un JSON valido."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Campo personalizzato della query non valido"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Elenco delle espressioni non valido. Deve essere non vuoto."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Operatore logico non valido {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Numero massimo di condizioni di query superato."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} non è un campo personalizzato valido."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} Non supporta la jQuery Expo {Expo!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Profondità massima di nidificazione superata."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Campo personalizzato non trovato"
@@ -1635,48 +1639,48 @@ msgstr "esecuzione del flusso di lavoro"
msgid "workflow runs"
msgstr "esecuzioni del flusso di lavoro"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Autorizzazioni insufficienti."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Colore non valido."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Il tipo di file %(type)s non è supportato"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "L'ID del campo personalizzato deve essere un numero intero: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Il campo personalizzato con ID %(id)s non esiste"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "I campi personalizzati devono essere un elenco di numeri interi o un oggetto che mappa gli ID ai valori."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Alcuni campi personalizzati non esistono o sono stati specificati due volte."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variabile non valida rilevata."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Non sono consentiti identificatori di documenti duplicati."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documenti non trovati: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Come ultimo passo, compila il seguente modulo:"
msgid ", "
msgstr ", "
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Specificare solo uno tra text, title_search, query o more_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "more_like_id non valido"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Configurazione AI non valida."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr "Richiesta di backend AI scaduta."
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr "Il backend IA ha rifiutato la richiesta. Controlla i log per i dettagli."
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Autorizzazioni insufficienti per condividere il documento %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Il pacchetto è già in fase di elaborazione."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Il pacchetto di link di condivisione è ancora in fase di preparazione. Riprova più tardi."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Il pacchetto di link di condivisione non è disponibile."
@@ -2242,151 +2246,151 @@ msgstr "Impostare il timeout dell’LLM in secondi"
msgid "paperless application settings"
msgstr "impostazioni dell'applicazione paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Inglese (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabo"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikaans"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bielorusso"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgaro"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalano"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Ceco"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Danese"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Tedesco"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Greco"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Inglese (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spagnolo"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persiano"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finlandese"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francese"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Ungherese"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesiano"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiano"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Giapponese"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coreano"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Lussemburghese"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norvegese"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Olandese"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polacco"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portoghese (Brasile)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portoghese"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumeno"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russo"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovacco"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Sloveno"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbo"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Svedese"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turco"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ucraino"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamita"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Cinese semplificato"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Cinese tradizionale"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "ドキュメント"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "値は有効なJSONである必要があります。"
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "無効なカスタムフィールドクエリ式"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "無効な式リストです。空であってはなりません。"
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "無効な論理演算子 {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "クエリ条件の最大数を超えました。"
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} は有効なカスタムフィールドではありません。"
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} はクエリ expr {expr!r} をサポートしていません。"
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "最大ネストの深さを超えました。"
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "カスタムフィールドが見つかりません"
@@ -1635,48 +1639,48 @@ msgstr "ワークフローの実行"
msgid "workflow runs"
msgstr "ワークフローの実行"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "無効な色"
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "ファイルタイプ %(type)s はサポートされていません"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "無効な変数を検出しました"
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "最後のステップとして、以下のフォームに記入してく
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "Paperless アプリケーションの設定"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "英語 (米国)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "アラビア語"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "アフリカーンス語"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "ベラルーシ語"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "ブルガリア語"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "カタロニア語"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "チェコ語"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "デンマーク語"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "ドイツ語"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "ギリシャ語"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "英語 (英国)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "スペイン語"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "フィンランド語"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "フランス語"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "ハンガリー語"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "イタリア語"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "日本語"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "韓国語"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "ルクセンブルク語"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "ノルウェー語"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "オランダ語"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "ポーランド語"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "ポルトガル語 (ブラジル)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "ポルトガル語"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "ルーマニア語"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "ロシア語"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "スロバキア語"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "スロベニア語"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "セルビア語"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "スウェーデン語"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "トルコ語"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "ウクライナ語"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "中国語 (簡体字)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "中国語 (繁体)"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "문서"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "값은 유효한 JSON이어야 합니다."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "잘못된 사용자 정의 필드 쿼리 표현식"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "잘못된 표현식 목록입니다. 비어 있지 않아야 합니다."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "잘못된 논리 연산자 {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "쿼리 조건의 최대 개수를 초과했습니다."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} 은 잘못된 사용자 정의 필드입니다."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type}은 쿼리 표현식 {expr!r}을(를) 지원하지 않습니다."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "최대 중첩 깊이를 초과했습니다."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "사용자 지정 필드를 찾을 수 없음"
@@ -1635,48 +1639,48 @@ msgstr "워크플로 실행"
msgid "workflow runs"
msgstr "워크플로우 실행"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "사용자 정의 ID 필드는 반드시 정수여야 합니다: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "%(id)s를 ID로 가지는 사용자 정의 필드가 존재하지 않습니다."
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "사용자 정의 필드는 정수 리스트이거나, ID를 값에 매핑하는 객체여야 합니다."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "존재하지 않거나 중복된 사용자 정의 필드가 있습니다."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "잘못된 변수가 감지되었습니다."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "마지막 단계로 다음 양식을 작성해 주세요:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "페이퍼리스 애플리케이션 설정"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "영어 (미국)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "아랍어"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "아프리칸스어"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "벨라루스어"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "불가리어"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "카탈로니아어"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "체코어"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "덴마크어"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "독일어"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "그리스어"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "영어 (영국)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "스페인어"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "페르시아어"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "핀란드어"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "프랑스어"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "헝가리어"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "이탈리아어"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "일본어"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "한국어"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "룩셈부르크어"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "노르웨이어"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "네덜란드어"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "폴란드어"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "포르투갈어 (브라질)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "포르투갈어"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "루마니아어"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "러시아어"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "슬로바키아어"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "슬로베니아어"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "세르비아어"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "스웨덴어"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "튀르키예어"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "우크라이나어"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "베트남어"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "중국어 간체"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "중국어 번체"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Luxembourgish\n"
"Language: lb_LU\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumenter"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr ""
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ongëlteg Faarf."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Fichierstyp %(type)s net ënnerstëtzt"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ongëlteg Zeechen detektéiert."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Englesch (USA)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Belarusesch"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tschechesch"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dänesch"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Däitsch"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Englesch (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spuenesch"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Franséisch"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italienesch"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Lëtzebuergesch"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Hollännesch"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polnesch"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugisesch (Brasilien)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugisesch"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumänesch"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russesch"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slowenesch"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbesch"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Schwedesch"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Tierkesch"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinesesch (Vereinfacht)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Lithuanian\n"
"Language: lt_LT\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumentai"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Reikšmė turi būti galiojantis JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Neteisinga pasirinktinio lauko užklausos išraiška"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Neteisingas išraiškos sąrašas. Jis turi būti netuščias."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Neteisingas loginis operatorius {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Viršytas maksimalus užklausos sąlygų skaičius."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} nėra galiojantis pasirinktas laukas."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} nepalaiko užklausos išraiškos {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Viršytas maksimalus įdėjimo gylis."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Pasirinktinis laukas nerastas"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr "Galiausiai užpildykite šią formą:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Nepakanka leidimų bendrinti dokumentą %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Rinkinys jau apdorojamas."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Bendrinimo nuorodų rinkinys vis dar ruošiamas. Bandykite dar kartą vėliau."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Dalinimos nuorodų rinkinys yra nepasiekiamas."
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr ""
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr ""
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr ""
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Daniškai"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Vokiškai"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Graikų"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Anglų (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Ispanų"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persų"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Suomių"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Prancūzų"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Vengrų"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indoneziečių"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italų"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonų"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Korėjiečių"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Liuksemburgiečių"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norvegų"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Olandų"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Lenkų"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugalų (Brazilija)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugalų"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumunų"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Rusų"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovakų"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovėnų"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbų"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Švedų"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turkų"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrainiečių"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamiečių"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Kinų supaprastinta"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Kinų tradicinė"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Latvian\n"
"Language: lv_LV\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokuments"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr ""
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Angļu (ASV)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arābu"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Āfrikāņu"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Baltkrievu"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgāru"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Kataloniešu"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Čehu"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dāņu"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Vācu"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grieķu"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Angļu (ASV)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spāņu"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Somu"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Franču"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Ungāru"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Itāļu"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japāņu"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luksemburgiešu"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norvēģu"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Holandiešu"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Poļu"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugāļu (Brazīlija)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugāļu"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumāņu"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Krievu"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovāku"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovēņu"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Sērbu"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Zviedru"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turku"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukraiņu"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Ķīniešu (vienkāršota)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Macedonian\n"
"Language: mk_MK\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr ""
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr ""
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr ""
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr ""
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr ""
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr ""
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr ""
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr ""
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr ""
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr ""
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr ""
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr ""
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr ""
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr ""
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr ""
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr ""
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr ""
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr ""
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr ""
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr ""
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr ""
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr ""
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr ""
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Malay\n"
"Language: ms_MY\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumen"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr ""
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr ""
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr ""
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr ""
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr ""
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr ""
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr ""
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr ""
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr ""
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr ""
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr ""
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1916,40 +1920,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2241,151 +2245,151 @@ msgstr ""
msgid "paperless application settings"
msgstr ""
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr ""
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr ""
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr ""
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr ""
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr ""
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr ""
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr ""
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr ""
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr ""
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr ""
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr ""
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr ""
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr ""
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr ""
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr ""
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr ""
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr ""
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr ""
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr ""
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr ""
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr ""
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr ""
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr ""
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr ""
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr ""
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr ""
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr ""
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr ""
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr ""
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr ""
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr ""
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr ""
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr ""
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr ""
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr ""
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documenten"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Waarde moet een geldige JSON zijn."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ongeldige aangepaste veld query expressie"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Ongeldige expressielijst mag niet leeg zijn."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Ongeldige logische operator {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maximum aantal query voorwaarden overschreden."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} is geen geldig aangepast veld."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} ondersteunt geen query expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Maximale nestdiepte overschreden."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Aangepast veld niet gevonden"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ongeldig kleur."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Bestandstype %(type)s niet ondersteund"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Aangepast veld met id %(id)s bestaat niet"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Aangepaste velden moeten een lijst van numerieke waarden zijn of een object mapping id naar waarden."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Sommige aangepaste velden bestaan niet of zijn dubbel opgegeven."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ongeldige variabele ontdekt."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "Vul als laatste stap het volgende formulier in:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "paperless applicatie instellingen"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Engels (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabisch"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikaans"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Wit-Russisch"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgaars"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalaans"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tsjechisch"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Deens"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Duits"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grieks"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Engels (Brits)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spaans"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Perzisch"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Fins"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Frans"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Hongaars"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiaans"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japans"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Koreaans"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgs"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Noors"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Nederlands"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Pools"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugees (Brazilië)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugees"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Roemeens"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russisch"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slowaaks"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Sloveens"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Servisch"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Zweeds"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turks"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Oekraïens"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamees"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinees (vereenvoudigd)"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Language: no_NO\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumenter"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Verdien må være gyldig JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Ugyldig spørringsuttrykk for egendefinerte felt"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Ugyldig uttrykksliste. Kan ikke være tom."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Ugyldig logiske operator {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maksimalt antall spørringsbetingelser er overskredet."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} er ikke et gyldig egendefinert felt."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} støtter ikke spørring expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "For mange nivåer med nøsting."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Egendefinert felt ble ikke funnet"
@@ -1635,48 +1639,48 @@ msgstr "workflow run (NO)"
msgid "workflow runs"
msgstr "workflow runs (NO)"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Utilstrekkelige tillatelser."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Ugyldig farge."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Filtype %(type)s støttes ikke"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Egendefinert felt-id må være et heltall: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Egendefinert felt med id %(id)s finnes ikke"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Custom fields must be a list of integers or an object mapping ids to values. (NO)"
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Some custom fields don't exist or were specified twice. (NO)"
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Ugyldig variabel oppdaget."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Duplicate document identifiers are not allowed. (NO)"
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documents not found: %(ids)s (NO)"
@@ -1917,40 +1921,40 @@ msgstr "As a final step, please complete the following form: (NO)"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Specify only one of text, title_search, query, or more_like_id. (NO)"
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Invalid more_like_id (NO)"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Invalid AI configuration. (NO)"
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr "Forespørselen til KI-tjenesten fikk tidsavbrudd."
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Insufficient permissions to share document %(id)s. (NO)"
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Bundle is already being processed. (NO)"
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "The share link bundle is still being prepared. Please try again later. (NO)"
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "The share link bundle is unavailable. (NO)"
@@ -2242,151 +2246,151 @@ msgstr "Setter tidsavbrudd for LLM i sekunder"
msgid "paperless application settings"
msgstr "paperless application settings (NO)"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Engelsk (US)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabisk"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrikansk"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Hviterussisk"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgarian (NO)"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Katalansk"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tsjekkisk"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dansk"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Tysk"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Gresk"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Engelsk (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spansk"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persian (NO)"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finsk"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Fransk"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Hungarian (NO)"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonesian (NO)"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiensk"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japanese (NO)"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Korean (NO)"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxembourgsk"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norsk"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Nederlandsk"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polsk"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugisisk (Brasil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugisisk"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumensk"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russisk"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovakisk"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovenian (NO)"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbisk"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Svensk"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Tyrkisk"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukrainsk"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamese (NO)"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Kinesisk forenklet"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chinese Traditional (NO)"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Dokumenty"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Wartość musi być poprawnym JSON-em."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Nieprawidłowe wyrażenie zapytania pola niestandardowego"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Nieprawidłowa lista wyrażeń. Nie może być pusta."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Nieprawidłowy operator logiczny {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Maksymalna liczba warunków zapytania została przekroczona."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} nie jest prawidłowym polem niestandardowym."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} nie obsługuje wyrażenia zapytania {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Przekroczono maksymalną głębokość zagnieżdżenia."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Nie znaleziono pola niestandardowego"
@@ -1635,48 +1639,48 @@ msgstr "uruchomienie przepływu pracy"
msgid "workflow runs"
msgstr "uruchomienia przepływu pracy"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Niewystarczające uprawnienia."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Nieprawidłowy kolor."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Typ pliku %(type)s nie jest obsługiwany"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Identyfikator pola niestandardowego musi być liczbą całkowitą: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Pole niestandardowe z id %(id)s nie istnieje"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Pola niestandardowe muszą być listą liczb całkowitych lub obiektem mapującym identyfikatory na wartości."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Niektóre niestandardowe pola nie istnieją lub zostały określone dwukrotnie."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Wykryto nieprawidłową zmienną."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Nie dopuszcza się powielania identyfikatorów dokumentów."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Nie znaleziono dokumentów: %(ids)s"
@@ -1917,40 +1921,40 @@ msgstr "Na koniec należy wypełnić poniższy formularz:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "Nieprawidłowy more_like_id"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Brak uprawnień do udostępnienia dokumentu %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Pakiet jest już przetwarzany."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "Pakiet do udostępnienia jest nadal przygotowywany. Spróbuj ponownie później."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "Pakiet do udostępnienia jest niedostępny."
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "paperless ustawienia aplikacji"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Angielski (USA)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "arabski"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Afrykanerski"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Białoruski"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bułgarski"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Kataloński"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Czeski"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Duński"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Niemiecki"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grecki"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Angielski (Wielka Brytania)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Hiszpański"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "perski"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Fiński"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francuski"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Węgierski"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonezyjski"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Włoski"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japoński"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Koreański"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luksemburski"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norweski"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Holenderski"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polski"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugalski (Brazylia)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugalski"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Rumuński"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Rosyjski"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Słowacki"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Słoweński"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Serbski"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Szwedzki"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turecki"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ukraiński"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Wietnamski"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chiński uproszczony"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "chiński tradycyjny"
+82 -78
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documentos"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "O valor deve ser um JSON válido."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Expressão de consulta de campo personalizado inválida"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Lista de expressões inválida. Deve estar não vazia."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Operador lógico inválido {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Número máximo de condições de consulta excedido."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} não é um campo personalizado válido."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} não suporta a consulta expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Profundidade máxima do aninhamento excedida."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Campo personalizado não encontrado"
@@ -1006,23 +1010,23 @@ msgstr "notas"
#: documents/models.py:1007
msgid "page"
msgstr ""
msgstr "página"
#: documents/models.py:1008
msgid "Page of the original file, starting at 1"
msgstr ""
msgstr "Página do arquivo original, começando em 1"
#: documents/models.py:1063
msgid "format"
msgstr ""
msgstr "formato"
#: documents/models.py:1067
msgid "document barcode"
msgstr ""
msgstr "código barra do documento"
#: documents/models.py:1068
msgid "document barcodes"
msgstr ""
msgstr "códigos barra dos documentos"
#: documents/models.py:1077
msgid "Original"
@@ -1636,48 +1640,48 @@ msgstr "execução do fluxo de trabalho"
msgid "workflow runs"
msgstr "execução de fluxo de trabalho"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr "Permissões insuficientes."
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Cor inválida."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipo de arquivo %(type)s não suportado"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "O ID do campo personalizado deve ser um número inteiro: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Não existe um campo personalizado com o ID %(id)s"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Campos personalizados devem estar em uma lista de números inteiros ou em um objeto que relacione IDs a valores."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Campos personalizados inválidos ou duplicados."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variável inválida detectada."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr "Não são permitidos identificadores de documento duplicados."
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr "Documentos não encontrados: %(ids)s"
@@ -1916,42 +1920,42 @@ msgstr "Como etapa final, por favor preencha o seguinte formulário:"
#: documents/validators.py:36
msgid ", "
msgstr ""
msgstr ", "
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr "Especifique apenas um text, title_search, consulta ou mais_like_id."
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr "more_like_id inválido"
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr "Configuração de IA inválida."
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr "A requisição backend da IA expirou."
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
msgstr "O backend da IA rejeitou o pedido. Checar logs para detalhes."
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr "Permissões insuficientes para compartilhar o documento %(id)s."
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr "Pacote já está sendo processado."
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr "O pacote de link de compartilhamento ainda está sendo preparado. Tente novamente mais tarde."
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr "O pacote de link de compartilhamento não está disponível."
@@ -2169,7 +2173,7 @@ msgstr "Habilita a divisão em códigos de barras de tags"
#: paperless/models.py:308
msgid "Stores the values of detected barcodes"
msgstr ""
msgstr "Armazena os valores de códigos de barras detectados"
#: paperless/models.py:318
msgid "Sets the remote OCR engine"
@@ -2201,7 +2205,7 @@ msgstr "Define o modelo de incorporação LLM"
#: paperless/models.py:375
msgid "Sets the LLM embedding API key"
msgstr ""
msgstr "Define a chave de API para embedding LLM"
#: paperless/models.py:382
msgid "Sets the LLM embedding endpoint, optional"
@@ -2243,151 +2247,151 @@ msgstr "Define o tempo limite do LLM em segundos"
msgid "paperless application settings"
msgstr "configurações do aplicativo paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Inglês (EUA)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Árabe"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Africanês"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bielorrusso"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Búlgaro"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalão"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Tcheco"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dinamarquês"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Alemão"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grego"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Inglês (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Espanhol"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persa"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finlandês"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Francês"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Húngaro"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indonésio"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiano"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonês"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coreano"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburguês"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norueguês"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Holandês"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polonês"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Português (Brasil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Português"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Romeno"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russo"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Eslovaco"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Esloveno"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Sérvio"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Sueco"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turco"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ucraniano"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "vietnamita"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinês Simplificado"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chinês Tradicional"
@@ -2706,7 +2710,7 @@ msgstr "uid"
#: paperless_mail/models.py:342
msgid "uid validity"
msgstr ""
msgstr "validade do uid"
#: paperless_mail/models.py:350
msgid "subject"
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Portuguese\n"
"Language: pt_PT\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documentos"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "O valor deve ser JSON válido."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Expressão de consulta de campo personalizado inválido"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Lista de expressões inválida. Não deve estar vazia."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Operador lógico inválido {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "O número máximo de condições de consulta foi excedido."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} não é um campo personalizado válido."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} não aceita a expressão de consulta {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr ""
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Campo personalizado não encontrado"
@@ -1635,48 +1639,48 @@ msgstr ""
msgid "workflow runs"
msgstr ""
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Cor invalida."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tipo de arquivo %(type)s não suportado"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr ""
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr ""
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr ""
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr ""
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variável inválida detetada."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr ""
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "configurações do paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Inglês (EUA)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Árabe"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Africano"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bielorrusso"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Búlgaro"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalão"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Checo"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Dinamarquês"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Deutsch"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Grego"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Inglês (GB)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Espanhol"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persa"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finlandês"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Français"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Húngaro"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr ""
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiano"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japonês"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coreano"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburguês"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norueguês"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Nederlandse"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Polaco"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Português (Brasil)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Português"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Romeno"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Russo"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Eslovaco"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Esloveno"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Sérvio"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Sueco"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turco"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ucraniano"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnamita"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chinês Simplificado"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr ""
+72 -68
View File
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: paperless-ngx\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-10-19 15:40+0000\n"
"PO-Revision-Date: 2026-10-19 15:42\n"
"POT-Creation-Date: 2026-10-29 17:25+0000\n"
"PO-Revision-Date: 2026-10-29 17:27\n"
"Last-Translator: \n"
"Language-Team: Romanian\n"
"Language: ro_RO\n"
@@ -21,39 +21,43 @@ msgstr ""
msgid "Documents"
msgstr "Documente"
#: documents/filters.py:464
#: documents/filters.py:337
msgid "Expected a date or a relative date such as \"today\" or \"in 30 days\"."
msgstr ""
#: documents/filters.py:513
msgid "Value must be valid JSON."
msgstr "Valoarea trebuie să fie validă JSON."
#: documents/filters.py:483
#: documents/filters.py:534
msgid "Invalid custom field query expression"
msgstr "Expresie de interogare pentru câmp personalizat nevalidă"
#: documents/filters.py:493
#: documents/filters.py:544
msgid "Invalid expression list. Must be nonempty."
msgstr "Listă de expresii nevalidă. Trebuie să nu fie goală."
#: documents/filters.py:514
#: documents/filters.py:565
msgid "Invalid logical operator {op!r}"
msgstr "Operator logic nevalid {op!r}"
#: documents/filters.py:528
#: documents/filters.py:579
msgid "Maximum number of query conditions exceeded."
msgstr "Numărul maxim de condiții de interogare a fost depășit."
#: documents/filters.py:592
#: documents/filters.py:643
msgid "{name!r} is not a valid custom field."
msgstr "{name!r} nu este un câmp personalizat valid."
#: documents/filters.py:629
#: documents/filters.py:680
msgid "{data_type} does not support query expr {expr!r}."
msgstr "{data_type} nu acceptă interogare expr {expr!r}."
#: documents/filters.py:748 documents/models.py:137
#: documents/filters.py:801 documents/models.py:137
msgid "Maximum nesting depth exceeded."
msgstr "Adâncimea maximă depășită."
#: documents/filters.py:1125
#: documents/filters.py:1178
msgid "Custom field not found"
msgstr "Câmpul personalizat nu a fost găsit"
@@ -1635,48 +1639,48 @@ msgstr "rulare flux de lucru"
msgid "workflow runs"
msgstr "rulări flux de lucru"
#: documents/serialisers.py:515 documents/serialisers.py:872
#: documents/serialisers.py:2902 documents/views.py:363 documents/views.py:2768
#: documents/serialisers.py:483 documents/serialisers.py:840
#: documents/serialisers.py:2872 documents/views.py:360 documents/views.py:2730
#: paperless_mail/serialisers.py:156
msgid "Insufficient permissions."
msgstr ""
#: documents/serialisers.py:708
#: documents/serialisers.py:676
msgid "Invalid color."
msgstr "Culoare invalidă."
#: documents/serialisers.py:2369
#: documents/serialisers.py:2339
#, python-format
msgid "File type %(type)s not supported"
msgstr "Tip de fișier %(type)s nesuportat"
#: documents/serialisers.py:2413
#: documents/serialisers.py:2383
#, python-format
msgid "Custom field id must be an integer: %(id)s"
msgstr "Id-ul câmpului personalizat trebuie să fie un număr întreg: %(id)s"
#: documents/serialisers.py:2420
#: documents/serialisers.py:2390
#, python-format
msgid "Custom field with id %(id)s does not exist"
msgstr "Câmp personalizat cu id %(id)s nu există"
#: documents/serialisers.py:2437 documents/serialisers.py:2447
#: documents/serialisers.py:2407 documents/serialisers.py:2417
msgid "Custom fields must be a list of integers or an object mapping ids to values."
msgstr "Câmpurile personalizate trebuie să fie o listă de numere întregi sau un obiect mapping ids la valori."
#: documents/serialisers.py:2442
#: documents/serialisers.py:2412
msgid "Some custom fields don't exist or were specified twice."
msgstr "Unele câmpuri personalizate nu există sau au fost specificate de două ori."
#: documents/serialisers.py:2589
#: documents/serialisers.py:2559
msgid "Invalid variable detected."
msgstr "Variabilă nevalidă detectată."
#: documents/serialisers.py:2958
#: documents/serialisers.py:2928
msgid "Duplicate document identifiers are not allowed."
msgstr ""
#: documents/serialisers.py:2988 documents/views.py:4816
#: documents/serialisers.py:2958 documents/views.py:4780
#, python-format
msgid "Documents not found: %(ids)s"
msgstr ""
@@ -1917,40 +1921,40 @@ msgstr "În etapa finală, vă rugăm să completați următorul formular:"
msgid ", "
msgstr ""
#: documents/views.py:318
#: documents/views.py:315
msgid "Specify only one of text, title_search, query, or more_like_id."
msgstr ""
#: documents/views.py:356 documents/views.py:2765
#: documents/views.py:353 documents/views.py:2727
msgid "Invalid more_like_id"
msgstr ""
#: documents/views.py:1703
#: documents/views.py:1665
msgid "Invalid AI configuration."
msgstr ""
#: documents/views.py:1714
#: documents/views.py:1676
msgid "AI backend request timed out."
msgstr ""
#: documents/views.py:1726
#: documents/views.py:1688
msgid "AI backend rejected the request. Check logs for details."
msgstr ""
#: documents/views.py:4832
#: documents/views.py:4796
#, python-format
msgid "Insufficient permissions to share document %(id)s."
msgstr ""
#: documents/views.py:4879
#: documents/views.py:4843
msgid "Bundle is already being processed."
msgstr ""
#: documents/views.py:4945
#: documents/views.py:4909
msgid "The share link bundle is still being prepared. Please try again later."
msgstr ""
#: documents/views.py:4959
#: documents/views.py:4923
msgid "The share link bundle is unavailable."
msgstr ""
@@ -2242,151 +2246,151 @@ msgstr ""
msgid "paperless application settings"
msgstr "setări ale aplicației paperless"
#: paperless/settings/__init__.py:562
#: paperless/settings/__init__.py:566
msgid "English (US)"
msgstr "Engleză (Americană)"
#: paperless/settings/__init__.py:563
#: paperless/settings/__init__.py:567
msgid "Arabic"
msgstr "Arabă"
#: paperless/settings/__init__.py:564
#: paperless/settings/__init__.py:568
msgid "Afrikaans"
msgstr "Africană"
#: paperless/settings/__init__.py:565
#: paperless/settings/__init__.py:569
msgid "Belarusian"
msgstr "Bielorusă"
#: paperless/settings/__init__.py:566
#: paperless/settings/__init__.py:570
msgid "Bulgarian"
msgstr "Bulgară"
#: paperless/settings/__init__.py:567
#: paperless/settings/__init__.py:571
msgid "Catalan"
msgstr "Catalană"
#: paperless/settings/__init__.py:568
#: paperless/settings/__init__.py:572
msgid "Czech"
msgstr "Cehă"
#: paperless/settings/__init__.py:569
#: paperless/settings/__init__.py:573
msgid "Danish"
msgstr "Daneză"
#: paperless/settings/__init__.py:570
#: paperless/settings/__init__.py:574
msgid "German"
msgstr "Germană"
#: paperless/settings/__init__.py:571
#: paperless/settings/__init__.py:575
msgid "Greek"
msgstr "Greacă"
#: paperless/settings/__init__.py:572
#: paperless/settings/__init__.py:576
msgid "English (GB)"
msgstr "Engleză (Britanică)"
#: paperless/settings/__init__.py:573
#: paperless/settings/__init__.py:577
msgid "Spanish"
msgstr "Spaniolă"
#: paperless/settings/__init__.py:574
#: paperless/settings/__init__.py:578
msgid "Persian"
msgstr "Persană"
#: paperless/settings/__init__.py:575
#: paperless/settings/__init__.py:579
msgid "Finnish"
msgstr "Finlandeză"
#: paperless/settings/__init__.py:576
#: paperless/settings/__init__.py:580
msgid "French"
msgstr "Franceză"
#: paperless/settings/__init__.py:577
#: paperless/settings/__init__.py:581
msgid "Hungarian"
msgstr "Maghiară"
#: paperless/settings/__init__.py:578
#: paperless/settings/__init__.py:582
msgid "Indonesian"
msgstr "Indoneziană"
#: paperless/settings/__init__.py:579
#: paperless/settings/__init__.py:583
msgid "Italian"
msgstr "Italiană"
#: paperless/settings/__init__.py:580
#: paperless/settings/__init__.py:584
msgid "Japanese"
msgstr "Japoneză"
#: paperless/settings/__init__.py:581
#: paperless/settings/__init__.py:585
msgid "Korean"
msgstr "Coreeană"
#: paperless/settings/__init__.py:582
#: paperless/settings/__init__.py:586
msgid "Luxembourgish"
msgstr "Luxemburgheză"
#: paperless/settings/__init__.py:583
#: paperless/settings/__init__.py:587
msgid "Norwegian"
msgstr "Norvegiană"
#: paperless/settings/__init__.py:584
#: paperless/settings/__init__.py:588
msgid "Dutch"
msgstr "Olandeză"
#: paperless/settings/__init__.py:585
#: paperless/settings/__init__.py:589
msgid "Polish"
msgstr "Poloneză"
#: paperless/settings/__init__.py:586
#: paperless/settings/__init__.py:590
msgid "Portuguese (Brazil)"
msgstr "Portugheză (Brazilia)"
#: paperless/settings/__init__.py:587
#: paperless/settings/__init__.py:591
msgid "Portuguese"
msgstr "Portugheză"
#: paperless/settings/__init__.py:588
#: paperless/settings/__init__.py:592
msgid "Romanian"
msgstr "Română"
#: paperless/settings/__init__.py:589
#: paperless/settings/__init__.py:593
msgid "Russian"
msgstr "Rusă"
#: paperless/settings/__init__.py:590
#: paperless/settings/__init__.py:594
msgid "Slovak"
msgstr "Slovacă"
#: paperless/settings/__init__.py:591
#: paperless/settings/__init__.py:595
msgid "Slovenian"
msgstr "Slovenă"
#: paperless/settings/__init__.py:592
#: paperless/settings/__init__.py:596
msgid "Serbian"
msgstr "Sârbă"
#: paperless/settings/__init__.py:593
#: paperless/settings/__init__.py:597
msgid "Swedish"
msgstr "Suedeză"
#: paperless/settings/__init__.py:594
#: paperless/settings/__init__.py:598
msgid "Turkish"
msgstr "Turcă"
#: paperless/settings/__init__.py:595
#: paperless/settings/__init__.py:599
msgid "Ukrainian"
msgstr "Ucrainiană"
#: paperless/settings/__init__.py:596
#: paperless/settings/__init__.py:600
msgid "Vietnamese"
msgstr "Vietnameză"
#: paperless/settings/__init__.py:597
#: paperless/settings/__init__.py:601
msgid "Chinese Simplified"
msgstr "Chineză simplificată"
#: paperless/settings/__init__.py:598
#: paperless/settings/__init__.py:602
msgid "Chinese Traditional"
msgstr "Chineză Tradițională"
Loaded 100 of 112 files, more files were not shown because too many files have changed in this diff. Show more