Compare commits

..

154 Commits

Author SHA1 Message Date
Jonas Winkler
9494c243a4 changelog, version bump 2021-04-27 22:52:50 +02:00
Jonas Winkler
c0a1be4325 Merge pull request #956 from WhiteHatTux/bugfix/879
Use gosu as it is less complicated than sudo
2021-04-27 09:59:05 +02:00
Jonas Winkler
70fda8e2f8 New Crowdin updates (#932) 2021-04-27 09:52:30 +02:00
Christopher Timm
5765893f69 Use gosu instead of sudo for easier configuration
#879
2021-04-26 19:06:30 -05:00
jonaswinkler
17b9d7eb42 Merge branch 'master' into dev 2021-04-18 12:41:52 +02:00
jonaswinkler
0a897cae32 bugfix 2021-04-18 11:29:12 +02:00
jonaswinkler
37f56e824a Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-04-18 11:25:21 +02:00
jonaswinkler
a8e7ec0e96 changelog, version bump 2021-04-18 11:25:11 +02:00
Jonas Winkler
b86d853cf1 New Crowdin updates (#931) 2021-04-18 10:49:22 +02:00
Jonas Winkler
da0c94c9a1 New Crowdin updates (#930) 2021-04-17 22:33:42 +02:00
jonaswinkler
0547fd2760 fix minor issue 2021-04-17 22:33:06 +02:00
jonaswinkler
e0a6df8435 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-04-17 22:30:45 +02:00
jonaswinkler
c2d4ca7566 lets hope this works 2021-04-17 22:29:54 +02:00
jonaswinkler
56ce278bbd update FAQ 2021-04-17 22:29:24 +02:00
Jonas Winkler
e112541f5b New Crowdin updates (#929) 2021-04-17 20:34:57 +02:00
jonaswinkler
17c7b0840b changes for django 3.2 2021-04-17 16:00:29 +02:00
jonaswinkler
68658bd407 update dependencies 2021-04-17 14:56:25 +02:00
Jonas Winkler
9184845a9d Merge pull request #890 from what-name/feature/superuser-manager
Create initial Paperless user automatically
2021-04-17 14:44:01 +02:00
Jonas Winkler
8ddb2fb305 New Crowdin updates (#928) 2021-04-17 14:37:31 +02:00
jonaswinkler
96f53986b7 pycodestyle 2021-04-17 14:36:04 +02:00
jonaswinkler
8566682209 add test case, update password if changed 2021-04-17 14:33:07 +02:00
jonaswinkler
4f9ae17059 Merge branch 'dev' into feature/superuser-manager
# Conflicts:
#	docker/docker-entrypoint.sh
2021-04-17 14:10:56 +02:00
jonaswinkler
7f9f805c5f Merge branch 'dev' into feature/superuser-manager 2021-04-17 14:01:42 +02:00
Jonas Winkler
5208e81715 Merge pull request #856 from sbrl/patch-1
docker-entrypoint.sh: don't crash on chown errors
2021-04-17 13:57:14 +02:00
Jonas Winkler
01a786c117 Merge pull request #894 from lknop/master
add single compose file for usage in portainer environments
2021-04-17 13:50:11 +02:00
Jonas Winkler
8bf4f31954 Merge pull request #918 from shamoon/fix/issue-907
"Sticky" filter editor and bulk editor
2021-04-17 13:48:54 +02:00
jonaswinkler
07ab3e98ed add pl-PL locale 2021-04-17 13:41:26 +02:00
Jonas Winkler
ba5899de7b New Crowdin updates (#874) 2021-04-17 13:34:42 +02:00
Michael Shamoon
a4fef056ed Fix breakpoint
File missing from last commit
2021-04-14 13:24:03 -07:00
Michael Shamoon
c266cd6aae Spacing tweaks, mobile breakpoint 2021-04-14 09:34:39 -07:00
Michael Shamoon
43d05b2e6d Hide visible underlying shadows on filter / bulk editor 2021-04-14 09:00:57 -07:00
Michael Shamoon
6f0c14cc07 Make filter editor / bulk editor 'sticky' on scroll 2021-04-14 09:00:30 -07:00
Lukasz Knop
2eac8fa91c disabled unnecessary overrides, copied variable comments 2021-04-11 21:48:50 +02:00
Lukasz Knop
31f5e178b3 add single compose file for usage in portainer environments 2021-04-11 15:16:04 +02:00
Chris Nagy
c3d7088168 Fix code guidelines 2021-04-10 16:10:45 +02:00
Chris Nagy
a9e11b1cb7 Add newline end of file 2021-04-10 16:02:48 +02:00
Chris Nagy
ee51a0be13 Minor docs change 2021-04-10 15:08:33 +02:00
jonaswinkler
1091387f48 better logging for the retagger 2021-04-10 14:38:39 +02:00
jonaswinkler
4db75537cb install sudo from stable 2021-04-10 14:38:19 +02:00
Chris Nagy
cb4e738a0f Fix env variable in docker entrypoint 2021-04-10 13:50:52 +02:00
Chris Nagy
0cc32e7ed7 Extend docs with superuser 2021-04-10 13:47:31 +02:00
Jonas Winkler
94f90e1e81 Merge pull request #887 from alexpovel/master
Fix typo
2021-04-10 00:21:45 +02:00
Alex Povel
ce8f315747 Fix typo
See also a3c4e4c6b6/docker/compose/docker-compose.env (L30)
2021-04-09 22:14:09 +02:00
Starbeamrainbowlabs
b761a549c0 docker-prepare.sh: remove rogue instances of sudo
This is being done by calling the script as the correct user in the 
first place.
2021-04-08 03:06:01 +01:00
Starbeamrainbowlabs
dd7c5da256 docker-entrypoint.sh: split non-root tasks into docker-prepare.sh 2021-04-08 00:03:55 +01:00
Starbeamrainbowlabs
02dd7ec615 docker: mark scripts as executable 2021-04-07 23:19:20 +01:00
Jonas Winkler
b7b448b870 Merge pull request #875 from shamoon/fix/large-card-info-layout
Fix alignment of card info on large cards
2021-04-06 23:41:03 +02:00
Michael Shamoon
b7326afe5a Fix alignment of card info on large cards 2021-04-06 14:25:59 -07:00
jonaswinkler
a3c4e4c6b6 install script: configure time zone 2021-04-06 21:46:18 +02:00
jonaswinkler
645297d68c documentation 2021-04-06 21:46:16 +02:00
Jonas Winkler
6d8782f771 Merge pull request #860 from shamoon/feature/issue-858
Suppport search term PDF open parameter
2021-04-06 20:28:53 +02:00
Jonas Winkler
2728183eee New Crowdin updates (#871) 2021-04-06 20:23:18 +02:00
Michael Shamoon
3d0891c73b Updated to work with new unified search interface 2021-04-05 16:35:15 -07:00
Michael Shamoon
8226a8793e Merge remote-tracking branch 'upstream/dev' into feature/issue-858 2021-04-05 13:59:21 -07:00
jonaswinkler
d01477b337 changelog 2021-04-05 22:23:11 +02:00
jonaswinkler
6bb07c72ab API search documentation 2021-04-05 22:19:42 +02:00
jonaswinkler
a009462b80 update messages 2021-04-05 22:05:26 +02:00
jonaswinkler
9111b130e4 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-04-05 21:53:39 +02:00
jonaswinkler
1dbd7b9bb4 fix some issues with the search index 2021-04-05 21:53:07 +02:00
Jonas Winkler
2f95dfc0e7 New Crowdin updates (#855) 2021-04-05 21:44:14 +02:00
Jonas Winkler
acc317ddfd Merge pull request #818 from shamoon/fix/issue-817
Support passing current term from tag / document type / correspondent search field to 'create new' dialog
2021-04-05 21:43:50 +02:00
jonaswinkler
1fbd3935ea focus text filter input automatically 2021-04-05 21:43:20 +02:00
jonaswinkler
ca2bf962e9 force update of search index if out of date 2021-04-05 21:33:17 +02:00
jonaswinkler
1d27a3a14b fixed the write permission check 2021-04-05 21:33:04 +02:00
jonaswinkler
8e1a9dde05 bugfix 2021-04-05 21:05:32 +02:00
Michael Shamoon
8eabf8c77a Refactor unneeded ngIf 2021-04-04 19:57:16 -07:00
Michael Shamoon
ec4ec41552 Add back plus button which retains filter text 2021-04-04 17:05:27 -07:00
jonaswinkler
8960b0300f changelog and version bump 2021-04-05 00:36:44 +02:00
jonaswinkler
d6a2672cab Merge branch 'feature-unified-search' into dev 2021-04-05 00:25:10 +02:00
jonaswinkler
4b281ca89d logging before executing pre and post consume scripts 2021-04-05 00:22:11 +02:00
jonaswinkler
808b507b0f fix migration 2021-04-05 00:16:50 +02:00
jonaswinkler
ab47d03e1a update messages 2021-04-04 20:46:25 +02:00
jonaswinkler
aca999090b Merge branch 'dev' into feature-unified-search 2021-04-04 20:41:29 +02:00
jonaswinkler
1322aaf4da add migration to fix null characters in document contents 2021-04-04 20:41:08 +02:00
jonaswinkler
c49471fb3b bugfix 2021-04-04 01:25:54 +02:00
jonaswinkler
d13baab0a6 more testing 2021-04-04 01:19:07 +02:00
jonaswinkler
359b46c15b fixed the test cases 2021-04-04 00:29:40 +02:00
jonaswinkler
3b83e9a43d pycodestyle 2021-04-04 00:04:00 +02:00
jonaswinkler
ab7a499e8f refactor filter reset 2021-04-04 00:03:51 +02:00
jonaswinkler
fffe4f694f reset page when doing full text search 2021-04-03 22:19:12 +02:00
Michael Shamoon
18c028cafd Suppport search term PDF open parameter 2021-04-03 13:10:39 -07:00
jonaswinkler
4e289c7dab rename search 2021-04-03 21:56:33 +02:00
jonaswinkler
3dfe5c9262 fix page out of range with full text 2021-04-03 21:50:23 +02:00
jonaswinkler
be87caf7f6 fix search scores 2021-04-03 21:50:05 +02:00
jonaswinkler
b7063b199a disable sorting for now 2021-04-03 21:49:31 +02:00
jonaswinkler
1ed9c245f5 fixed more like this 2021-04-03 21:07:36 +02:00
jonaswinkler
fb1e9fe66a error messages for invalid search queries 2021-04-03 21:02:33 +02:00
jonaswinkler
38a386d5ae fix date filtering for full text search 2021-04-03 21:02:13 +02:00
jonaswinkler
726114575e Merge branch 'dev' into feature-unified-search 2021-04-03 20:31:16 +02:00
Michael Shamoon
026c213ea4 Refactor to use ng-select addTag function 2021-04-03 09:30:29 -07:00
jonaswinkler
cd85d4e86a update tooltips and messages 2021-04-02 14:59:02 +02:00
jonaswinkler
e906bf58f0 Save list view state across sessions 2021-04-02 14:46:45 +02:00
jonaswinkler
87d2209e6d update dependencies 2021-04-02 14:26:20 +02:00
jonaswinkler
704f8ea680 update dependencies 2021-04-02 14:21:05 +02:00
Jonas Winkler
1e101fb3db Merge pull request #842 from Bart1909/master
Implements #807
2021-04-02 14:08:01 +02:00
Jonas Winkler
a16643ee29 New Crowdin updates (#847) 2021-04-02 10:47:11 +02:00
Tobi
b783e0e211 refactoring 2021-03-30 20:51:49 +02:00
Tobi
1ec4570c8d renames document-asn component 2021-03-30 19:26:20 +02:00
Tobi
434194d290 Merge remote-tracking branch 'origin/master' 2021-03-30 19:07:44 +02:00
Tobi
f62e64357b implements #807 2021-03-30 19:07:29 +02:00
Jonas Winkler
b9f49c5eca Merge pull request #834 from benjaminfrank/patch-1
New android scanner app recommendation
2021-03-30 00:42:28 +02:00
Jonas Winkler
13a839de57 New Crowdin updates (#837) 2021-03-30 00:42:06 +02:00
benjaminfrank
7eb4253c00 Update scanners.rst 2021-03-27 14:40:13 +01:00
Jonas Winkler
dab210a183 Merge pull request #819 from shamoon/fix/issue-293-2
Remove all rem units on SVG elements
2021-03-26 23:13:06 +01:00
Jonas Winkler
5319d4782a New translations django.po (Italian) (#813) 2021-03-26 23:12:36 +01:00
Michael Shamoon
0463c3fe54 1.3em not 1.5em 2021-03-24 16:21:08 -07:00
Michael Shamoon
fe84430679 Remove all rem units on SVG elements
See https://bugzilla.mozilla.org/show_bug.cgi?id=1231147
2021-03-24 16:17:40 -07:00
Michael Shamoon
9514e79bfb Not needed, clearing will be done by timeout 2021-03-24 12:42:14 -07:00
Michael Shamoon
b6756595d9 Clear last search term when clear button clicked 2021-03-24 12:37:26 -07:00
Michael Shamoon
8ddb3e80b7 Add timeout for clearing last search term on select blur 2021-03-24 12:21:51 -07:00
Michael Shamoon
52bc1a62e1 Support passing current term from input-select search to create dialog e.g. for doc type / correspondent 2021-03-24 12:21:13 -07:00
Michael Shamoon
cd72ed2cec Support passing current term from tag search to create dialog 2021-03-24 12:13:37 -07:00
Jonas Winkler
ccaee4ce62 Update README.md 2021-03-24 10:31:05 +01:00
jonaswinkler
0e596bd1fc also apply \0 removal to sidecar contents 2021-03-22 23:08:34 +01:00
Jonas Winkler
21fafd3255 Update README.md 2021-03-22 23:03:01 +01:00
jonaswinkler
fda2bfbea7 better exception logging 2021-03-22 23:00:15 +01:00
jonaswinkler
d26c46e034 fixes #794 2021-03-22 22:46:35 +01:00
jonaswinkler
27cb243a2f fix dependencies 2021-03-21 13:50:48 +01:00
jonaswinkler
d3514fc5f9 update dependencies 2021-03-21 12:20:10 +01:00
jonaswinkler
4954851b68 Revert "update requirements"
This reverts commit 8f6e1360
2021-03-21 11:43:16 +01:00
Jonas Winkler
6bcb12ddc9 Merge pull request #796 from holzhannes/patch-2
Three new scanners, one iOS App and column for SMTP Support
2021-03-20 12:15:33 +01:00
HolzHannes
126a4ec21f Update scanners.rst
Some new scanners and a new Support column SMTP for Scanner which can directly send mails via SMTP. Also one iOS App to scan documents
2021-03-20 11:10:05 +01:00
Jonas Winkler
0aa084c792 New Crowdin updates (#790) 2021-03-18 23:50:54 +01:00
jonaswinkler
8f6e1360e1 update requirements 2021-03-18 23:49:49 +01:00
jonaswinkler
b7e570aba0 Merge branch 'dev' 2021-03-18 19:41:45 +01:00
jonaswinkler
ce2bae12af changelog and version bump 2021-03-18 19:13:45 +01:00
Jonas Winkler
b6111d8da6 New Crowdin updates (#788) 2021-03-18 16:22:45 +01:00
jonaswinkler
2fb1132b69 fix test case 2021-03-17 23:08:19 +01:00
jonaswinkler
9a04bc1beb fixes #771 2021-03-17 22:57:37 +01:00
jonaswinkler
b39c3f7866 fixes #668 (see https://github.com/the-paperless-project/paperless/pull/571) 2021-03-17 22:44:18 +01:00
jonaswinkler
740237a8fa add migration 2021-03-17 22:33:00 +01:00
jonaswinkler
391db73ea8 added pt-pt locale 2021-03-17 22:32:39 +01:00
jonaswinkler
b6ff88645b lots of changes for the new unified search 2021-03-17 22:25:22 +01:00
Jonas Winkler
4cd1672094 New Crowdin updates (#787) 2021-03-17 02:14:43 +01:00
jonaswinkler
630cd814e2 Merge branch 'dev' into feature-unified-search 2021-03-16 20:48:05 +01:00
jonaswinkler
6606d7572c API refactoring 2021-03-16 20:47:45 +01:00
Jonas Winkler
b331e3388f Merge pull request #778 from shamoon/fix/issue-774-775
Fix extra scrollbar on log container, auto scroll logs to bottom
2021-03-16 17:29:07 +01:00
Jonas Winkler
b6428aa85f Merge pull request #785 from isaacsando/master
update advanced_usage.rst to remove wording regarding filename parsing
2021-03-16 17:28:29 +01:00
isaacsando
fa6d554d1f update advanced_usage.rst to remove wording regarding filename parsing 2021-03-16 11:16:48 -05:00
Michael Shamoon
816871eed3 Redundant call to scroll 2021-03-16 03:08:48 -07:00
Michael Shamoon
ee04a9226b Don’t remove OnInit 2021-03-16 03:06:20 -07:00
Jonas Winkler
6b15093c43 New Crowdin updates (#776) 2021-03-16 10:40:38 +01:00
Michael Shamoon
b9d0954924 Automatically scroll log ouput 2021-03-15 09:56:17 -07:00
Michael Shamoon
a94a81d839 Revert "Reverse log order"
This reverts commit 2e21fbf619.
2021-03-15 08:45:33 -07:00
Michael Shamoon
46be3924e4 Revert "Side effecting"
This reverts commit 316a2469b8.
2021-03-15 08:45:30 -07:00
Michael Shamoon
316a2469b8 Side effecting 2021-03-15 08:42:10 -07:00
Michael Shamoon
2e21fbf619 Reverse log order 2021-03-15 08:38:55 -07:00
Michael Shamoon
e1254a053a Fix log container taller than viewport 2021-03-15 08:38:47 -07:00
Jonas Winkler
50bcd3daf1 New Crowdin updates (#764) 2021-03-15 10:48:25 +01:00
Chris Nagy
e3ba968fef Add superuser management script 2021-03-14 19:43:22 +01:00
Jonas Winkler
7725973b62 Merge pull request #766 from shamoon/fix/additional-card-info-icons-fix
Fix additional card info icons sometimes cut off in certain browsers
2021-03-14 18:44:48 +01:00
Michael Shamoon
30bf7418f5 Dont change size overall 2021-03-14 09:35:53 -07:00
Michael Shamoon
eb611b2c41 Fix icons sometimes cut off in certain browsers 2021-03-14 09:33:57 -07:00
jonaswinkler
f9263ddb62 some initial attempts to merge search and document list 2021-03-07 13:16:23 +01:00
120 changed files with 7696 additions and 3895 deletions

View File

@@ -15,27 +15,33 @@ RUN apt-get update \
&& apt-get -y --no-install-recommends install \ && apt-get -y --no-install-recommends install \
# Basic dependencies # Basic dependencies
curl \ curl \
file \
# fonts for text file thumbnail generation
fonts-liberation \
# for making translations further down
gettext \
gnupg \ gnupg \
imagemagick \ imagemagick \
gettext \
tzdata \
gosu \
# fonts for text file thumbnail generation
fonts-liberation \
# for Numpy # for Numpy
libatlas-base-dev \ libatlas-base-dev \
libxslt1-dev \ libxslt1-dev \
mime-support \
# thumbnail size reduction # thumbnail size reduction
optipng \ optipng \
sudo \
tzdata \
# OCRmyPDF dependencies
ghostscript \
icc-profiles-free \
liblept5 \
libxml2 \ libxml2 \
pngquant \ pngquant \
unpaper \
zlib1g \
ghostscript \
icc-profiles-free \
&& echo "deb http://deb.debian.org/debian bullseye main" > /etc/apt/sources.list.d/bullseye.list \
&& apt-get update \
&& apt-get -y --no-install-recommends install \
# Mime type detection
file \
libmagic-dev \
media-types \
# OCRmyPDF dependencies
liblept5 \
qpdf \ qpdf \
tesseract-ocr \ tesseract-ocr \
tesseract-ocr-eng \ tesseract-ocr-eng \
@@ -43,16 +49,7 @@ RUN apt-get update \
tesseract-ocr-fra \ tesseract-ocr-fra \
tesseract-ocr-ita \ tesseract-ocr-ita \
tesseract-ocr-spa \ tesseract-ocr-spa \
unpaper \ && rm -rf /var/lib/apt/lists/*
zlib1g \
# This pulls in updated dependencies from bullseye to fix some issues with file type detection.
# TODO: Remove this once bullseye releases.
&& echo "deb http://deb.debian.org/debian bullseye main" > /etc/apt/sources.list.d/bullseye.list \
&& apt-get update \
&& apt-get install --no-install-recommends -y file libmagic-dev \
&& rm -rf /var/lib/apt/lists/* \
&& rm /etc/apt/sources.list.d/bullseye.list
# copy jbig2enc # copy jbig2enc
COPY --from=jbig2enc /usr/src/jbig2enc/src/.libs/libjbig2enc* /usr/local/lib/ COPY --from=jbig2enc /usr/src/jbig2enc/src/.libs/libjbig2enc* /usr/local/lib/
@@ -83,6 +80,7 @@ RUN cd docker \
&& mkdir /var/log/supervisord /var/run/supervisord \ && mkdir /var/log/supervisord /var/run/supervisord \
&& cp supervisord.conf /etc/supervisord.conf \ && cp supervisord.conf /etc/supervisord.conf \
&& cp docker-entrypoint.sh /sbin/docker-entrypoint.sh \ && cp docker-entrypoint.sh /sbin/docker-entrypoint.sh \
&& cp docker-prepare.sh /sbin/docker-prepare.sh \
&& chmod 755 /sbin/docker-entrypoint.sh \ && chmod 755 /sbin/docker-entrypoint.sh \
&& chmod +x install_management_commands.sh \ && chmod +x install_management_commands.sh \
&& ./install_management_commands.sh \ && ./install_management_commands.sh \
@@ -98,8 +96,8 @@ COPY src/ ./
RUN addgroup --gid 1000 paperless \ RUN addgroup --gid 1000 paperless \
&& useradd --uid 1000 --gid paperless --home-dir /usr/src/paperless paperless \ && useradd --uid 1000 --gid paperless --home-dir /usr/src/paperless paperless \
&& chown -R paperless:paperless ../ \ && chown -R paperless:paperless ../ \
&& sudo -HEu paperless python3 manage.py collectstatic --clear --no-input \ && gosu paperless python3 manage.py collectstatic --clear --no-input \
&& sudo -HEu paperless python3 manage.py compilemessages && gosu paperless python3 manage.py compilemessages
VOLUME ["/usr/src/paperless/data", "/usr/src/paperless/media", "/usr/src/paperless/consume", "/usr/src/paperless/export"] VOLUME ["/usr/src/paperless/data", "/usr/src/paperless/media", "/usr/src/paperless/consume", "/usr/src/paperless/export"]
ENTRYPOINT ["/sbin/docker-entrypoint.sh"] ENTRYPOINT ["/sbin/docker-entrypoint.sh"]

View File

@@ -10,7 +10,7 @@ name = "piwheels"
[packages] [packages]
dateparser = "~=1.0.0" dateparser = "~=1.0.0"
django = "~=3.1.3" django = "~=3.2"
django-cors-headers = "*" django-cors-headers = "*"
django-extensions = "*" django-extensions = "*"
django-filter = "~=2.4.0" django-filter = "~=2.4.0"
@@ -24,9 +24,8 @@ langdetect = "*"
# numpy 1.20.0 drops python 3.6 support # numpy 1.20.0 drops python 3.6 support
numpy = "~=1.19.5" numpy = "~=1.19.5"
pathvalidate = "*" pathvalidate = "*"
# pinned to 8.1.0, since aarch64 wheels might not be available beyond that https://github.com/python-pillow/Pillow/issues/5202 pillow = "~=8.1"
pillow = "==8.1.0" pikepdf = "~=2.5"
pikepdf = "~=2.5.0"
python-gnupg = "*" python-gnupg = "*"
python-dotenv = "*" python-dotenv = "*"
python-dateutil = "*" python-dateutil = "*"
@@ -52,7 +51,6 @@ uvicorn = {extras = ["standard"], version = "*"}
concurrent-log-handler = "*" concurrent-log-handler = "*"
# uvloop 0.15+ incompatible with python 3.6 # uvloop 0.15+ incompatible with python 3.6
uvloop = "~=0.14.0" uvloop = "~=0.14.0"
# TODO: keep an eye on piwheel builds and update this once available (https://www.piwheels.org/project/cryptography/)
cryptography = "~=3.4" cryptography = "~=3.4"
"pdfminer.six" = "*" "pdfminer.six" = "*"

870
Pipfile.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -12,12 +12,12 @@
Paperless-ng is a fork of the original project, adding a new interface and many other changes under the hood. These key points should help you decide whether Paperless-ng is something you would prefer over Paperless: Paperless-ng is a fork of the original project, adding a new interface and many other changes under the hood. These key points should help you decide whether Paperless-ng is something you would prefer over Paperless:
* Interface: The new front end is the main interface for paperless-ng, the old interface still exists but most customizations (such as thumbnails for the document list) have been removed. * Interface: The new front end is the main interface for Paperless-ng, the old interface still exists but most customizations (such as thumbnails for the document list) have been removed.0
* Encryption: Paperless-ng does not support GnuPG anymore, since storing your data on encrypted file systems (that you optionally mount on demand) achieves about the same result. * Encryption: Paperless-ng does not support GnuPG anymore, since storing your data on encrypted file systems (that you optionally mount on demand) achieves about the same result.
* Resource usage: Paperless-ng does use a bit more resources than Paperless. Running the web server requires about 300MB of RAM or more, depending on the configuration. While adding documents, it requires about 300MB additional RAM, depending on the document. It still runs on Pi (many users do that), but it has been generally geared to better use the resources of more powerful systems. * Resource usage: Paperless-ng does use a bit more resources than Paperless. Running the web server requires about 300MB of RAM or more, depending on the configuration. While adding documents, it requires about 300MB additional RAM, depending on the document. It still runs on Raspberry Pi (many users do that), but it has been generally geared to better use the resources of more powerful systems.
* API changes: If you rely on the REST API of paperless, some of its functionality has been changed. * API changes: If you rely on the REST API of paperless, some of its functionality has been changed.
For a detailed list of changes, have a look at the [change log](https://paperless-ng.readthedocs.io/en/latest/changelog.html) in the documentation. For a detailed list of changes, have a look at the [change log](https://paperless-ng.readthedocs.io/en/latest/changelog.html) in the documentation, especially the section about the [0.9.0 release](https://paperless-ng.readthedocs.io/en/latest/changelog.html#paperless-ng-0-9-0).
# How it Works # How it Works
@@ -25,7 +25,7 @@ Paperless does not control your scanner, it only helps you deal with what your s
1. Buy a document scanner that can write to a place on your network. If you need some inspiration, have a look at the [scanner recommendations](https://paperless-ng.readthedocs.io/en/latest/scanners.html) page. Set it up to "scan to FTP" or something similar. It should be able to push scanned images to a server without you having to do anything. Of course if your scanner doesn't know how to automatically upload the file somewhere, you can always do that manually. Paperless doesn't care how the documents get into its local consumption directory. 1. Buy a document scanner that can write to a place on your network. If you need some inspiration, have a look at the [scanner recommendations](https://paperless-ng.readthedocs.io/en/latest/scanners.html) page. Set it up to "scan to FTP" or something similar. It should be able to push scanned images to a server without you having to do anything. Of course if your scanner doesn't know how to automatically upload the file somewhere, you can always do that manually. Paperless doesn't care how the documents get into its local consumption directory.
- Alternatively, you can use any of the mobile scanning apps out there. We have an app that allows you to share documents with paperless, if you're on Android. See the section on affiliated projects. - Alternatively, you can use any of the mobile scanning apps out there. We have an app that allows you to share documents with paperless, if you're on Android. See the section on affiliated projects below.
2. Wait for paperless to process your files. OCR is expensive, and depending on the power of your machine, this might take a bit of time. 2. Wait for paperless to process your files. OCR is expensive, and depending on the power of your machine, this might take a bit of time.
3. Use the web frontend to sift through the database and find what you want. 3. Use the web frontend to sift through the database and find what you want.
@@ -35,6 +35,8 @@ Here's what you get:
![Dashboard](https://github.com/jonaswinkler/paperless-ng/raw/master/docs/_static/screenshots/dashboard.png) ![Dashboard](https://github.com/jonaswinkler/paperless-ng/raw/master/docs/_static/screenshots/dashboard.png)
If you want to see paperless-ng in action, [more screenshots are available in the documentation](https://paperless-ng.readthedocs.io/en/latest/screenshots.html).
# Features # Features
* Performs OCR on your documents, adds selectable text to image only documents and adds tags, correspondents and document types to your documents. * Performs OCR on your documents, adds selectable text to image only documents and adds tags, correspondents and document types to your documents.
@@ -58,19 +60,17 @@ Here's what you get:
* Optimized for multi core systems: Paperless-ng consumes multiple documents in parallel. * Optimized for multi core systems: Paperless-ng consumes multiple documents in parallel.
* The integrated sanity checker makes sure that your document archive is in good health. * The integrated sanity checker makes sure that your document archive is in good health.
If you want to see some screenshots of paperless-ng in action, [some are available in the documentation](https://paperless-ng.readthedocs.io/en/latest/screenshots.html).
# Getting started # Getting started
The recommended way to deploy paperless is docker-compose. The files in the /docker/hub directory are configured to pull the image from Docker Hub. The recommended way to deploy paperless is docker-compose. The files in the /docker/hub directory are configured to pull the image from Docker Hub.
Read the [documentation](https://paperless-ng.readthedocs.io/en/latest/setup.html#installation) on how to get started. Read the [documentation](https://paperless-ng.readthedocs.io/en/latest/setup.html#installation) on how to get started.
Alternatively, you can install the dependencies and setup apache and a database server yourself. The documenation has a step by step guide on how to do it. Alternatively, you can install the dependencies and setup apache and a database server yourself. The documenation has a step by step guide on how to do it. Consider giving the Ansible role a shot, this essentially automates the entire bare metal installation process.
# Migrating to paperless-ng # Migrating from Paperless to Paperless-ng
Read the section about [migration](https://paperless-ng.readthedocs.io/en/latest/setup.html#migration-to-paperless-ng) in the documentation. Its also entirely possible to go back to paperless by reverting the database migrations. Read the section about [migration](https://paperless-ng.readthedocs.io/en/latest/setup.html#migration-to-paperless-ng) in the documentation. Its also entirely possible to go back to Paperless by reverting the database migrations.
# Documentation # Documentation
@@ -78,9 +78,7 @@ The documentation for Paperless-ng is available on [ReadTheDocs](https://paperle
# Translation # Translation
Paperless is currently available in English, German, Dutch, French, Portuguese, Italian, and Romanian. Paperless is available in many different languages. Translation is coordinated at crowdin. If you want to help out by translating paperless into your language, please head over to https://github.com/jonaswinkler/paperless-ng/issues/212 for details!
There's an active translation project at crowdin! If you want to help out by translating paperless into your language, please head over to https://github.com/jonaswinkler/paperless-ng/issues/212 for details.
# Feature Requests # Feature Requests
@@ -94,7 +92,7 @@ For bugs please [open an issue](https://github.com/jonaswinkler/paperless-ng/iss
There's still lots of things to be done, just have a look at open issues & discussions. If you feel like contributing to the project, please do! Bug fixes and improvements to the front end (I just can't seem to get some of these CSS things right) are always welcome. The documentation has some basic information on how to get started. There's still lots of things to be done, just have a look at open issues & discussions. If you feel like contributing to the project, please do! Bug fixes and improvements to the front end (I just can't seem to get some of these CSS things right) are always welcome. The documentation has some basic information on how to get started.
If you want to implement something big: Please start a discussion about that in the issues! Maybe I've already had something similar in mind and we can make it happen together. However, keep in mind that the general roadmap is to make the existing features stable and get them tested. See the roadmap above. If you want to implement something big: Please start a discussion about that! Maybe I've already had something similar in mind and we can make it happen together. However, keep in mind that the general roadmap is to make the existing features stable and get them tested.
# Affiliated Projects # Affiliated Projects

View File

@@ -0,0 +1,94 @@
# docker-compose file for running paperless from the Docker Hub.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8010.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), PostgreSQL is used as the database server.
#
# To install and update paperless with this file, do the following:
#
# - Open portainer Stacks list and click 'Add stack'
# - Paste the contents of this file and assign a name, e.g. 'Paperless'
# - Click 'Deploy the stack' and wait for it to be deployed
# - Open the list of containers, select paperless_webserver_1
# - Click 'Console' and then 'Connect' to open the command line inside the container
# - Run 'python3 manage.py createsuperuser' to create a user
# - Exit the console
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: redis:6.0
restart: unless-stopped
db:
image: postgres:13
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: jonaswinkler/paperless-ng:latest
restart: unless-stopped
depends_on:
- db
- broker
ports:
- 8010:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
# The UID and GID of the user used to run paperless in the container. Set this
# to your UID and GID on the host so that you have write access to the
# consumption directory.
USERMAP_UID: 1000
USERMAP_GID: 100
# Additional languages to install for text recognition, separated by a
# whitespace. Note that this is
# different from PAPERLESS_OCR_LANGUAGE (default=eng), which defines the
# language used for OCR.
# The container installs English, German, Italian, Spanish and French by
# default.
# See https://packages.debian.org/search?keywords=tesseract-ocr-&searchon=names&suite=buster
# for available languages.
#PAPERLESS_OCR_LANGUAGES: tur ces
# Adjust this key if you plan to make paperless available publicly. It should
# be a very long sequence of random characters. You don't need to remember it.
#PAPERLESS_SECRET_KEY: change-me
# Use this variable to set a timezone for the Paperless Docker containers. If not specified, defaults to UTC.
#PAPERLESS_TIME_ZONE: America/Los_Angeles
# The default language to use for OCR. Set this to the language most of your
# documents are written in.
#PAPERLESS_OCR_LANGUAGE: eng
volumes:
data:
media:
pgdata:

61
docker/docker-entrypoint.sh Normal file → Executable file
View File

@@ -15,59 +15,6 @@ map_uidgid() {
fi fi
} }
wait_for_postgres() {
attempt_num=1
max_attempts=5
echo "Waiting for PostgreSQL to start..."
host="${PAPERLESS_DBHOST}"
port="${PAPERLESS_DBPORT}"
if [[ -z $port ]] ;
then
port="5432"
fi
while !</dev/tcp/$host/$port ;
do
if [ $attempt_num -eq $max_attempts ]
then
echo "Unable to connect to database."
exit 1
else
echo "Attempt $attempt_num failed! Trying again in 5 seconds..."
fi
attempt_num=$(expr "$attempt_num" + 1)
sleep 5
done
}
migrations() {
if [[ -n "${PAPERLESS_DBHOST}" ]]
then
wait_for_postgres
fi
(
# flock is in place to prevent multiple containers from doing migrations
# simultaneously. This also ensures that the db is ready when the command
# of the current container starts.
flock 200
echo "Apply database migrations..."
sudo -HEu paperless python3 manage.py migrate
) 200>/usr/src/paperless/data/migration_lock
}
initialize() { initialize() {
map_uidgid map_uidgid
@@ -82,11 +29,12 @@ initialize() {
echo "creating directory /tmp/paperless" echo "creating directory /tmp/paperless"
mkdir -p /tmp/paperless mkdir -p /tmp/paperless
set +e
chown -R paperless:paperless ../ chown -R paperless:paperless ../
chown -R paperless:paperless /tmp/paperless chown -R paperless:paperless /tmp/paperless
set -e
migrations gosu paperless /sbin/docker-prepare.sh
} }
install_languages() { install_languages() {
@@ -137,9 +85,8 @@ initialize
if [[ "$1" != "/"* ]]; then if [[ "$1" != "/"* ]]; then
echo Executing management command "$@" echo Executing management command "$@"
exec sudo -HEu paperless python3 manage.py "$@" exec gosu paperless python3 manage.py "$@"
else else
echo Executing "$@" echo Executing "$@"
exec "$@" exec "$@"
fi fi

72
docker/docker-prepare.sh Executable file
View File

@@ -0,0 +1,72 @@
#!/usr/bin/env bash
wait_for_postgres() {
attempt_num=1
max_attempts=5
echo "Waiting for PostgreSQL to start..."
host="${PAPERLESS_DBHOST}"
port="${PAPERLESS_DBPORT}"
if [[ -z $port ]]; then
port="5432"
fi
while ! </dev/tcp/$host/$port; do
if [ $attempt_num -eq $max_attempts ]; then
echo "Unable to connect to database."
exit 1
else
echo "Attempt $attempt_num failed! Trying again in 5 seconds..."
fi
attempt_num=$(expr "$attempt_num" + 1)
sleep 5
done
}
migrations() {
(
# flock is in place to prevent multiple containers from doing migrations
# simultaneously. This also ensures that the db is ready when the command
# of the current container starts.
flock 200
echo "Apply database migrations..."
python3 manage.py migrate
) 200>/usr/src/paperless/data/migration_lock
}
search_index() {
index_version=1
index_version_file=/usr/src/paperless/data/.index_version
if [[ (! -f "$index_version_file") || $(<$index_version_file) != "$index_version" ]]; then
echo "Search index out of date. Updating..."
python3 manage.py document_index reindex
echo $index_version | tee $index_version_file >/dev/null
fi
}
superuser() {
if [[ -n "${PAPERLESS_ADMIN_USER}" ]]; then
python3 manage.py manage_superuser
fi
}
do_work() {
if [[ -n "${PAPERLESS_DBHOST}" ]]; then
wait_for_postgres
fi
migrations
search_index
superuser
}
do_work

View File

@@ -1,4 +1,4 @@
for command in document_archiver document_exporter document_importer mail_fetcher document_create_classifier document_index document_renamer document_retagger document_thumbnails document_sanity_checker; for command in document_archiver document_exporter document_importer mail_fetcher document_create_classifier document_index document_renamer document_retagger document_thumbnails document_sanity_checker manage_superuser;
do do
echo "installing $command..." echo "installing $command..."
sed "s/management_command/$command/g" management_script.sh > /usr/local/bin/$command sed "s/management_command/$command/g" management_script.sh > /usr/local/bin/$command

2
docker/management_script.sh Normal file → Executable file
View File

@@ -6,7 +6,7 @@ cd /usr/src/paperless/src/
if [[ $(id -u) == 0 ]] ; if [[ $(id -u) == 0 ]] ;
then then
sudo -HEu paperless python3 manage.py management_command "$@" gosu paperless python3 manage.py management_command "$@"
elif [[ $(id -un) == "paperless" ]] ; elif [[ $(id -un) == "paperless" ]] ;
then then
python3 manage.py management_command "$@" python3 manage.py management_command "$@"

View File

@@ -193,7 +193,9 @@ This table lists the compatible versions for each database migration number.
+------------------+-----------------+ +------------------+-----------------+
| 1012 | 1.1.0 - 1.2.1 | | 1012 | 1.1.0 - 1.2.1 |
+------------------+-----------------+ +------------------+-----------------+
| 1014 | 1.3.0 - current | | 1014 | 1.3.0 - 1.3.1 |
+------------------+-----------------+
| 1016 | 1.3.2 - current |
+------------------+-----------------+ +------------------+-----------------+
Execute the following management command to migrate your database: Execute the following management command to migrate your database:

View File

@@ -10,14 +10,13 @@ easier.
Matching tags, correspondents and document types Matching tags, correspondents and document types
################################################ ################################################
After the consumer has tried to figure out what it could from the file name, Paperless will compare the matching algorithms defined by every tag and
it starts looking at the content of the document itself. It will compare the correspondent already set in your database to see if they apply to the text in
matching algorithms defined by every tag and correspondent already set in your a document. In other words, if you defined a tag called ``Home Utility``
database to see if they apply to the text in that document. In other words, that had a ``match`` property of ``bc hydro`` and a ``matching_algorithm`` of
if you defined a tag called ``Home Utility`` that had a ``match`` property of ``literal``, Paperless will automatically tag your newly-consumed document with
``bc hydro`` and a ``matching_algorithm`` of ``literal``, Paperless will your ``Home Utility`` tag so long as the text ``bc hydro`` appears in the body
automatically tag your newly-consumed document with your ``Home Utility`` tag of the document somewhere.
so long as the text ``bc hydro`` appears in the body of the document somewhere.
The matching logic is quite powerful, and supports searching the text of your The matching logic is quite powerful, and supports searching the text of your
document with different algorithms, and as such, some experimentation may be document with different algorithms, and as such, some experimentation may be

View File

@@ -147,93 +147,57 @@ The REST api provides three different forms of authentication.
Searching for documents Searching for documents
####################### #######################
Paperless-ng offers API endpoints for full text search. These are as follows: Full text searching is available on the ``/api/documents/`` endpoint. Two specific
query parameters cause the API to return full text search results:
``/api/search/`` * ``/api/documents/?query=your%20search%20query``: Search for a document using a full text query.
================ For details on the syntax, see :ref:`basic-usage_searching`.
Get search results based on a query. * ``/api/documents/?more_like=1234``: Search for documents similar to the document with id 1234.
Query parameters: Pagination works exactly the same as it does for normal requests on this endpoint.
* ``query``: The query string. See Certain limitations apply to full text queries:
`here <https://whoosh.readthedocs.io/en/latest/querylang.html>`_
for details on the syntax.
* ``page``: Specify the page you want to retrieve. Each page
contains 10 search results and the first page is ``page=1``, which
is the default if this is omitted.
Result list object returned by the endpoint: * Results are always sorted by search score. The results matching the query best will show up first.
.. code:: json * Only a small subset of filtering parameters are supported.
Furthermore, each returned document has an additional ``__search_hit__`` attribute with various information
about the search results:
.. code::
{ {
"count": 1, "count": 31,
"page": 1, "next": "http://localhost:8000/api/documents/?page=2&query=test",
"page_count": 1, "previous": null,
"corrected_query": "",
"results": [ "results": [
] ...
}
* ``count``: The approximate total number of results.
* ``page``: The page returned to you. This might be different from
the page you requested, if you requested a page that is behind
the last page. In that case, the last page is returned.
* ``page_count``: The total number of pages.
* ``corrected_query``: Corrected version of the query string. Can be null.
If not null, can be used verbatim to start a new query.
* ``results``: A list of result objects on the current page.
Result object:
.. code:: json
{ {
"id": 1, "id": 123,
"highlights": [ "title": "title",
"content": "content",
], ...
"score": 6.34234,
"rank": 23,
"document": {
"__search_hit__": {
"score": 0.343,
"highlights": "text <span class=\"match\">Test</span> text",
"rank": 23
} }
},
...
]
} }
* ``id``: the primary key of the found document * ``score`` is an indication how well this document matches the query relative to the other search results.
* ``highlights``: an object containing parsable highlights for the result. * ``highlights`` is an excerpt from the document content and highlights the search terms with ``<span>`` tags as shown above.
See below. * ``rank`` is the index of the search results. The first result will have rank 0.
* ``score``: The score assigned to the document. A higher score indicates a
better match with the query. Search results are sorted descending by score.
* ``rank``: the position of the document within the entire search results list.
* ``document``: The full json of the document, as returned by
``/api/documents/<id>/``.
Highlights object:
Highlights are provided as a list of fragments. A fragment is a longer section of
text from the original document.
Each fragment contains a list of strings, and some of them are marked as a highlight.
.. code:: json
[
[
{"text": "This is a sample text with a ", "highlight": false},
{"text": "highlighted", "highlight": true},
{"text": " word.", "highlight": false}
],
[
{"text": "Another", "highlight": true},
{"text": " fragment with a highlight.", "highlight": false}
]
]
A client may use this example to produce the following output:
... This is a sample text with a **highlighted** word. ... **Another** fragment with a highlight. ...
``/api/search/autocomplete/`` ``/api/search/autocomplete/``
============================= =============================

View File

@@ -5,6 +5,86 @@
Changelog Changelog
********* *********
paperless-ng 1.4.2
##################
* Fixed an issue with ``sudo`` that caused paperless to not start on many Raspberry Pi devices. Thank you `WhiteHatTux`_!
paperless-ng 1.4.1
##################
* Added Polish locale.
* Changed some parts of the Dockerfile to hopefully restore functionality on certain ARM devices.
* Updated python dependencies.
* `Michael Shamoon`_ added a sticky filter / bulk edit bar.
* `sbrl`_ changed the docker-entrypoint.sh script to increase compatibility with NFS shares.
* `Chris Nagy`_ added support for creating a super user by passing ``PAPERLESS_ADMIN_USER`` and
``PAPERLESS_ADMIN_PASSWORD`` as environment variables to the docker container.
paperless-ng 1.4.0
##################
* Docker images now use tesseract 4.1.1, which should fix a series of issues with OCR.
* The full text search now displays results using the default document list. This enables
selection, filtering and bulk edit on search results.
* Changes
* Firefox only: Highlight search query in PDF previews.
* New URL pattern for accessing documents by ASN directly (http://<paperless>/asn/123)
* Added logging when executing pre- and post-consume scripts.
* Better error logging during document consumption.
* Updated python dependencies.
* Automatically inserts typed text when opening "Create new" dialogs on the document details page.
* Fixes
* Fixed an issue with null characters in the document content.
.. note::
The changed to the full text searching require you to reindex your documents.
*The docker image does this automatically, you don't need to do anything.*
To do this, execute the ``document_index reindex`` management command
(see :ref:`administration-index`).
.. note::
Some packages that paperless depends on are slowly dropping Python 3.6
support one after another, including the web server. Supporting Python
3.6 means that I cannot update these packages anymore.
At some point, paperless will drop Python 3.6 support. If using a bare
metal installation and you're still on Python 3.6, upgrade to 3.7 or newer.
If using docker, this does not affect you.
paperless-ng 1.3.2
##################
* Added translation into Portuguese.
* Changes
* The exporter now exports user accounts, mail accounts, mail rules and saved views as well.
* Fixes
* Minor layout issues with document cards and the log viewer.
* Fixed an issue with any/all/exact matching when characters used in regular expressions were used for the match.
paperless-ng 1.3.1 paperless-ng 1.3.1
################## ##################
@@ -93,17 +173,6 @@ paperless-ng 1.2.0
* Paperless no longer depends on ``libpoppler-cpp-dev``. * Paperless no longer depends on ``libpoppler-cpp-dev``.
.. note::
Some packages that paperless depends on are slowly dropping Python 3.6
support one after another, including the web server. Supporting Python
3.6 means that I cannot update these packages anymore.
At some point, paperless will drop Python 3.6 support. If using a bare
metal installation and you're still on Python 3.6, upgrade to 3.7 or newer.
If using docker, this does not affect you.
paperless-ng 1.1.4 paperless-ng 1.1.4
################## ##################
@@ -1297,6 +1366,9 @@ bulk of the work on this big change.
* Initial release * Initial release
.. _WhiteHatTux: https://github.com/WhiteHatTux
.. _Chris Nagy: https://github.com/what-name
.. _sbrl: https://github.com/sbrl
.. _slorenz: https://github.com/sisao .. _slorenz: https://github.com/sisao
.. _Jo Vandeginste: https://github.com/jovandeginste .. _Jo Vandeginste: https://github.com/jovandeginste
.. _zjean: https://github.com/zjean .. _zjean: https://github.com/zjean

View File

@@ -177,6 +177,30 @@ PAPERLESS_AUTO_LOGIN_USERNAME=<username>
Defaults to none, which disables this feature. Defaults to none, which disables this feature.
PAPERLESS_ADMIN_USER=<username>
If this environment variable is specified, Paperless automatically creates
a superuser with the provided username at start. This is useful in cases
where you can not run the `createsuperuser` command seperately, such as Kubernetes
or AWS ECS.
Requires `PAPERLESS_ADMIN_PASSWORD` to be set.
.. note::
This will not change an existing [super]user's password, nor will
it recreate a user that already exists. You can leave this throughout
the lifecycle of the containers.
PAPERLESS_ADMIN_MAIL=<email>
(Optional) Specify superuser email address. Only used when
`PAPERLESS_ADMIN_USER` is set.
Defaults to ``root@localhost``.
PAPERLESS_ADMIN_PASSWORD=<password>
Only used when `PAPERLESS_ADMIN_USER` is set.
This will be the password of the automatically created superuser.
PAPERLESS_COOKIE_PREFIX=<str> PAPERLESS_COOKIE_PREFIX=<str>
Specify a prefix that is added to the cookies used by paperless to identify Specify a prefix that is added to the cookies used by paperless to identify

View File

@@ -13,26 +13,35 @@ that works right for you based on recommendations from other Paperless users.
Physical scanners Physical scanners
================= =================
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Brand | Model | Supports | Recommended By | | Brand | Model | Supports | Recommended By |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| | | FTP | NFS | SMB | | | | | FTP | NFS | SMB | SMTP | |
+=========+================+=====+=====+=====+================+ +=========+================+=====+=====+=====+======+================+
| Brother | `ADS-1500W`_ | yes | no | yes | `danielquinn`_ | | Brother | `ADS-1700W`_ | yes | no | yes | yes |`holzhannes`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Brother | `MFC-J6930DW`_ | yes | | | `ayounggun`_ | | Brother | `ADS-1600W`_ | yes | no | yes | yes |`holzhannes`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Brother | `MFC-J5910DW`_ | yes | | | `bmsleight`_ | | Brother | `ADS-1500W`_ | yes | no | yes | yes |`danielquinn`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Brother | `MFC-9142CDN`_ | yes | | yes | `REOLDEV`_ | | Brother | `MFC-J6930DW`_ | yes | | | |`ayounggun`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Fujitsu | `ix500`_ | yes | | yes | `eonist`_ | | Brother | `MFC-L5850DW`_ | yes | | | yes |`holzhannes`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Epson | `WF-7710DWF`_ | yes | | yes | `Skylinar`_ | | Brother | `MFC-J5910DW`_ | yes | | | |`bmsleight`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Fujitsu | `S1300i`_ | yes | | yes | `jonaswinkler`_| | Brother | `MFC-9142CDN`_ | yes | | yes | |`REOLDEV`_ |
+---------+----------------+-----+-----+-----+----------------+ +---------+----------------+-----+-----+-----+------+----------------+
| Fujitsu | `ix500`_ | yes | | yes | |`eonist`_ |
+---------+----------------+-----+-----+-----+------+----------------+
| Epson | `WF-7710DWF`_ | yes | | yes | |`Skylinar`_ |
+---------+----------------+-----+-----+-----+------+----------------+
| Fujitsu | `S1300i`_ | yes | | yes | |`jonaswinkler`_ |
+---------+----------------+-----+-----+-----+------+----------------+
.. _MFC-L5850DW: https://www.brother-usa.com/products/mfcl5850dw
.. _ADS-1700W: https://www.brother-usa.com/products/ads1700w
.. _ADS-1600W: https://www.brother-usa.com/products/ads1600w
.. _ADS-1500W: https://www.brother.ca/en/p/ads1500w .. _ADS-1500W: https://www.brother.ca/en/p/ads1500w
.. _MFC-J6930DW: https://www.brother.ca/en/p/MFCJ6930DW .. _MFC-J6930DW: https://www.brother.ca/en/p/MFCJ6930DW
.. _MFC-J5910DW: https://www.brother.co.uk/printers/inkjet-printers/mfcj5910dw .. _MFC-J5910DW: https://www.brother.co.uk/printers/inkjet-printers/mfcj5910dw
@@ -41,6 +50,7 @@ Physical scanners
.. _WF-7710DWF: https://www.epson.de/en/products/printers/inkjet-printers/for-home/workforce-wf-7710dwf .. _WF-7710DWF: https://www.epson.de/en/products/printers/inkjet-printers/for-home/workforce-wf-7710dwf
.. _S1300i: https://www.fujitsu.com/global/products/computing/peripheral/scanners/soho/s1300i/ .. _S1300i: https://www.fujitsu.com/global/products/computing/peripheral/scanners/soho/s1300i/
.. _danielquinn: https://github.com/danielquinn .. _danielquinn: https://github.com/danielquinn
.. _ayounggun: https://github.com/ayounggun .. _ayounggun: https://github.com/ayounggun
.. _bmsleight: https://github.com/bmsleight .. _bmsleight: https://github.com/bmsleight
@@ -48,25 +58,33 @@ Physical scanners
.. _REOLDEV: https://github.com/REOLDEV .. _REOLDEV: https://github.com/REOLDEV
.. _Skylinar: https://github.com/Skylinar .. _Skylinar: https://github.com/Skylinar
.. _jonaswinkler: https://github.com/jonaswinkler .. _jonaswinkler: https://github.com/jonaswinkler
.. _holzhannes: https://github.com/holzhannes
Mobile phone software Mobile phone software
===================== =====================
You can use your phone to "scan" documents. The regular camera app will work, but may have too low contrast for OCR to work well. Apps specifically for scanning are recommended. You can use your phone to "scan" documents. The regular camera app will work, but may have too low contrast for OCR to work well. Apps specifically for scanning are recommended.
+-------------------+----------------+-----+-----+-----+-------+--------+----------------+ +-------------------+----------------+-----+-----+-----+-------+--------+------------------+
| Name | OS | Supports | Recommended By | | Name | OS | Supports | Recommended By |
+-------------------+----------------+-----+-----+-----+-------+--------+----------------+ +-------------------+----------------+-----+-----+-----+-------+--------+------------------+
| | | FTP | NFS | SMB | Email | WebDav | | | | | FTP | NFS | SMB | Email | WebDav | |
+===================+================+=====+=====+=====+=======+========+================+ +===================+================+=====+=====+=====+=======+========+==================+
| `Office Lens`_ | Android | ? | ? | ? | ? | ? | `jonaswinkler`_| | `Office Lens`_ | Android | ? | ? | ? | ? | ? | `jonaswinkler`_ |
+-------------------+----------------+-----+-----+-----+-------+--------+----------------+ +-------------------+----------------+-----+-----+-----+-------+--------+------------------+
| `Genius Scan`_ | Android | yes | no | yes | yes | yes | `hannahswain`_ | | `Genius Scan`_ | Android | yes | no | yes | yes | yes | `hannahswain`_ |
+-------------------+----------------+-----+-----+-----+-------+--------+----------------+ +-------------------+----------------+-----+-----+-----+-------+--------+------------------+
| `OpenScan`_ | Android | no | no | no | no | no | `benjaminfrank`_ |
+-------------------+----------------+-----+-----+-----+-------+--------+------------------+
| `Quick Scan`_ | iOS | no | no | no | no | no | `holzhannes`_ |
+-------------------+----------------+-----+-----+-----+-------+--------+------------------+
On Android, you can use these applications in combination with one of the :ref:`Paperless-ng compatible apps <usage-mobile_upload>` to "Share" the documents produced by these scanner apps with paperless. On Android, you can use these applications in combination with one of the :ref:`Paperless-ng compatible apps <usage-mobile_upload>` to "Share" the documents produced by these scanner apps with paperless. On iOS, you can share the scanned documents via iOS-Sharing to other mail, WebDav or FTP apps.
.. _Office Lens: https://play.google.com/store/apps/details?id=com.microsoft.office.officelens .. _Office Lens: https://play.google.com/store/apps/details?id=com.microsoft.office.officelens
.. _Genius Scan: https://play.google.com/store/apps/details?id=com.thegrizzlylabs.geniusscan.free .. _Genius Scan: https://play.google.com/store/apps/details?id=com.thegrizzlylabs.geniusscan.free
.. _Quick Scan: https://apps.apple.com/us/app/quickscan-scanner-text-ocr/id1513790291
.. _OpenScan: https://github.com/Ethereal-Developers-Inc/OpenScan
.. _hannahswain: https://github.com/hannahswain .. _hannahswain: https://github.com/hannahswain
.. _benjaminfrank: https://github.com/benjaminfrank

View File

@@ -208,3 +208,16 @@ This might have multiple reasons.
SENDFILE=0 SENDFILE=0
to your `docker-compose.env` file. to your `docker-compose.env` file.
Error while reading metadata
############################
You might find messages like these in your log files:
.. code::
[WARNING] [paperless.parsing.tesseract] Error while reading metadata
This indicates that paperless failed to read PDF metadata from one of your documents. This happens when you
open the affected documents in paperless for editing. Paperless will continue to work, and will simply not
show the invalid metadata.

View File

@@ -255,6 +255,8 @@ Here are a couple examples of tags and types that you could use in your collecti
* A tag ``missing_metadata`` when you still need to add some metadata to a document, but can't * A tag ``missing_metadata`` when you still need to add some metadata to a document, but can't
or don't want to do this right now. or don't want to do this right now.
.. _basic-usage_searching:
Searching Searching
######### #########

View File

@@ -73,6 +73,8 @@ if [ $? -ne 0 ] ; then
sleep 3 sleep 3
fi fi
default_time_zone=$(timedatectl show -p Timezone --value)
set -e set -e
echo "" echo ""
@@ -145,6 +147,15 @@ echo ""
ask "Port" "8000" ask "Port" "8000"
PORT=$ask_result PORT=$ask_result
echo ""
echo "Paperless requires you to configure the current time zone correctly."
echo "Otherwise, the dates of your documents may appear off by one day,"
echo "depending on where you are on earth."
echo ""
ask "Current time zone" "$default_time_zone"
TIME_ZONE=$ask_result
echo "" echo ""
echo "Database backend: PostgreSQL and SQLite are available. Use PostgreSQL" echo "Database backend: PostgreSQL and SQLite are available. Use PostgreSQL"
echo "if unsure. If you're running on a low-power device such as Raspberry" echo "if unsure. If you're running on a low-power device such as Raspberry"
@@ -280,6 +291,7 @@ DEFAULT_LANGUAGES="deu eng fra ita spa"
if [[ ! $USERMAP_GID == "1000" ]] ; then if [[ ! $USERMAP_GID == "1000" ]] ; then
echo "USERMAP_GID=$USERMAP_GID" echo "USERMAP_GID=$USERMAP_GID"
fi fi
echo "PAPERLESS_TIME_ZONE=$TIME_ZONE"
echo "PAPERLESS_OCR_LANGUAGE=$OCR_LANGUAGE" echo "PAPERLESS_OCR_LANGUAGE=$OCR_LANGUAGE"
echo "PAPERLESS_SECRET_KEY=$SECRET_KEY" echo "PAPERLESS_SECRET_KEY=$SECRET_KEY"
if [[ ! " ${DEFAULT_LANGUAGES[@]} " =~ " ${OCR_LANGUAGE} " ]] ; then if [[ ! " ${DEFAULT_LANGUAGES[@]} " =~ " ${OCR_LANGUAGE} " ]] ; then

View File

@@ -8,11 +8,11 @@
-i https://pypi.python.org/simple -i https://pypi.python.org/simple
--extra-index-url https://www.piwheels.org/simple --extra-index-url https://www.piwheels.org/simple
aioredis==1.3.1 aioredis==1.3.1
arrow==1.0.1; python_version >= '3.6' arrow==1.0.3; python_version >= '3.6'
asgiref==3.3.1; python_version >= '3.5' asgiref==3.3.4; python_version >= '3.6'
async-timeout==3.0.1; python_full_version >= '3.5.3' async-timeout==3.0.1; python_full_version >= '3.5.3'
attrs==20.3.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' attrs==20.3.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
autobahn==21.2.2; python_version >= '3.7' autobahn==21.3.1; python_version >= '3.7'
automat==20.2.0 automat==20.2.0
blessed==1.18.0 blessed==1.18.0
certifi==2020.12.5 certifi==2020.12.5
@@ -24,57 +24,57 @@ click==7.1.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2,
coloredlogs==15.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' coloredlogs==15.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
concurrent-log-handler==0.9.19 concurrent-log-handler==0.9.19
constantly==15.1.0 constantly==15.1.0
cryptography==3.4.6 cryptography==3.4.7
daphne==3.0.1; python_version >= '3.6' daphne==3.0.2; python_version >= '3.6'
dateparser==1.0.0 dateparser==1.0.0
django-cors-headers==3.7.0 django-cors-headers==3.7.0
django-extensions==3.1.1 django-extensions==3.1.2
django-filter==2.4.0 django-filter==2.4.0
django-picklefield==3.0.1; python_version >= '3' django-picklefield==3.0.1; python_version >= '3'
django-q==1.3.4 django-q==1.3.4
django==3.1.7 django==3.2
djangorestframework==3.12.2 djangorestframework==3.12.4
filelock==3.0.12 filelock==3.0.12
fuzzywuzzy[speedup]==0.18.0 fuzzywuzzy[speedup]==0.18.0
gunicorn==20.0.4 gunicorn==20.1.0
h11==0.12.0; python_version >= '3.6' h11==0.12.0; python_version >= '3.6'
hiredis==1.1.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' hiredis==2.0.0; python_version >= '3.6'
httptools==0.1.1 httptools==0.1.1
humanfriendly==9.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' humanfriendly==9.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
hyperlink==21.0.0 hyperlink==21.0.0
idna==2.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' idna==2.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
imap-tools==0.38.1 imap-tools==0.39.0
img2pdf==0.4.0 img2pdf==0.4.0
incremental==17.5.0 incremental==21.3.0
inotify-simple==1.3.5; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' inotify-simple==1.3.5; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
inotifyrecursive==0.3.5 inotifyrecursive==0.3.5
joblib==1.0.1; python_version >= '3.6' joblib==1.0.1; python_version >= '3.6'
langdetect==1.0.8 langdetect==1.0.8
lxml==4.6.2; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' lxml==4.6.3; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
msgpack==1.0.2 msgpack==1.0.2
numpy==1.19.5 numpy==1.19.5
ocrmypdf==11.7.0 ocrmypdf==11.7.3
pathvalidate==2.3.2 pathvalidate==2.4.1
pdfminer.six==20201018 pdfminer.six==20201018
pikepdf==2.5.2 pikepdf==2.11.1
pillow==8.1.0 pillow==8.2.0
pluggy==0.13.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' pluggy==0.13.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
portalocker==2.2.1; python_version >= '3' portalocker==2.3.0; python_version >= '3'
psycopg2-binary==2.8.6 psycopg2-binary==2.8.6
pyasn1-modules==0.2.8 pyasn1-modules==0.2.8
pyasn1==0.4.8 pyasn1==0.4.8
pycparser==2.20; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' pycparser==2.20; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
pyopenssl==20.0.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' pyopenssl==20.0.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
python-dateutil==2.8.1 python-dateutil==2.8.1
python-dotenv==0.15.0 python-dotenv==0.17.0
python-gnupg==0.4.6 python-gnupg==0.4.7
python-levenshtein==0.12.2 python-levenshtein==0.12.2
python-magic==0.4.22 python-magic==0.4.22
pytz==2021.1 pytz==2021.1
pyyaml==5.4.1 pyyaml==5.4.1
redis==3.5.3 redis==3.5.3
regex==2020.11.13 regex==2021.4.4
reportlab==3.5.59 reportlab==3.5.67; python_version >= '2.7' and python_version < '4'
requests==2.25.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' requests==2.25.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
scikit-learn==0.24.0 scikit-learn==0.24.0
scipy==1.5.4 scipy==1.5.4
@@ -84,11 +84,11 @@ sortedcontainers==2.3.0
sqlparse==0.4.1; python_version >= '3.5' sqlparse==0.4.1; python_version >= '3.5'
threadpoolctl==2.1.0; python_version >= '3.5' threadpoolctl==2.1.0; python_version >= '3.5'
tika==1.24 tika==1.24
tqdm==4.58.0 tqdm==4.60.0
twisted[tls]==21.2.0; python_full_version >= '3.5.4' twisted[tls]==21.2.0; python_full_version >= '3.5.4'
txaio==21.2.1; python_version >= '3.6' txaio==21.2.1; python_version >= '3.6'
tzlocal==2.1 tzlocal==2.1
urllib3==1.26.3; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4' urllib3==1.26.4; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'
uvicorn[standard]==0.13.4 uvicorn[standard]==0.13.4
uvloop==0.14.0 uvloop==0.14.0
watchdog==1.0.2 watchdog==1.0.2
@@ -97,4 +97,4 @@ wcwidth==0.2.5
websockets==8.1 websockets==8.1
whitenoise==5.2.0 whitenoise==5.2.0
whoosh==2.7.4 whoosh==2.7.4
zope.interface==5.2.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' zope.interface==5.4.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'

View File

@@ -21,10 +21,12 @@
"fr-FR": "src/locale/messages.fr_FR.xlf", "fr-FR": "src/locale/messages.fr_FR.xlf",
"en-GB": "src/locale/messages.en_GB.xlf", "en-GB": "src/locale/messages.en_GB.xlf",
"pt-BR": "src/locale/messages.pt_BR.xlf", "pt-BR": "src/locale/messages.pt_BR.xlf",
"pt-PT": "src/locale/messages.pt_PT.xlf",
"it-IT": "src/locale/messages.it_IT.xlf", "it-IT": "src/locale/messages.it_IT.xlf",
"ro-RO": "src/locale/messages.ro_RO.xlf", "ro-RO": "src/locale/messages.ro_RO.xlf",
"ru-RU": "src/locale/messages.ru_RU.xlf", "ru-RU": "src/locale/messages.ru_RU.xlf",
"es-ES": "src/locale/messages.es_ES.xlf" "es-ES": "src/locale/messages.es_ES.xlf",
"pl-PL": "src/locale/messages.pl_PL.xlf"
} }
}, },
"architect": { "architect": {

View File

@@ -48,21 +48,21 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2155249406916744630" datatype="html"> <trans-unit id="2155249406916744630" datatype="html">
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="6837554170707123455" datatype="html"> <trans-unit id="6837554170707123455" datatype="html">
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="9ca82952a6bc860b5391d5975322d8af8ceddfa4" datatype="html"> <trans-unit id="9ca82952a6bc860b5391d5975322d8af8ceddfa4" datatype="html">
@@ -146,77 +146,77 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7b5c6286aaded63fb279d6deb8aa8c704e085ced" datatype="html"> <trans-unit id="7b5c6286aaded63fb279d6deb8aa8c704e085ced" datatype="html">
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="fdf7cbdc140d0aab0f0b6c06065a0fd448ed6a2e" datatype="html"> <trans-unit id="fdf7cbdc140d0aab0f0b6c06065a0fd448ed6a2e" datatype="html">
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2bd5919e8098513664a89d5b7b52d61e3063950f" datatype="html"> <trans-unit id="2bd5919e8098513664a89d5b7b52d61e3063950f" datatype="html">
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html"> <trans-unit id="1b051734b0ee9021991c91b3ed4e81c244322462" datatype="html">
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html"> <trans-unit id="80e3b490720757978c99a7b5af3885faf202b955" datatype="html">
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="9021887951960049161" datatype="html"> <trans-unit id="9021887951960049161" datatype="html">
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5382975254277698192" datatype="html"> <trans-unit id="5382975254277698192" datatype="html">
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="6691075929777935948" datatype="html"> <trans-unit id="6691075929777935948" datatype="html">
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="719892092227206532" datatype="html"> <trans-unit id="719892092227206532" datatype="html">
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="1844801255494293730" datatype="html"> <trans-unit id="1844801255494293730" datatype="html">
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html"> <trans-unit id="826b25211922a1b46436589233cb6f1a163d89b7" datatype="html">
@@ -912,48 +912,6 @@
<context context-type="linenumber">25</context> <context context-type="linenumber">25</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1039,109 +997,123 @@
<context context-type="linenumber">106</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="8170755470576301659" datatype="html"> <trans-unit id="8170755470576301659" datatype="html">
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="8705701325879965907" datatype="html"> <trans-unit id="8705701325879965907" datatype="html">
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="4362173610367509215" datatype="html"> <trans-unit id="4362173610367509215" datatype="html">
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="8180755793012580465" datatype="html"> <trans-unit id="8180755793012580465" datatype="html">
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="6494566478302448576" datatype="html"> <trans-unit id="6494566478302448576" datatype="html">
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="6523384805359286307" datatype="html"> <trans-unit id="6523384805359286307" datatype="html">
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="1872523635812236432" datatype="html"> <trans-unit id="1872523635812236432" datatype="html">
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group>
</trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="4b089ca12c472cf0b46167bb5afe4b527b301bbc" datatype="html"> <trans-unit id="4b089ca12c472cf0b46167bb5afe4b527b301bbc" datatype="html">
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="0ad509732aaf702b7ea8c771c7809fa84bc85908" datatype="html"> <trans-unit id="0ad509732aaf702b7ea8c771c7809fa84bc85908" datatype="html">
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2d9d55f1b70142ff4597ba32179d16888fd9c6b2" datatype="html"> <trans-unit id="2d9d55f1b70142ff4597ba32179d16888fd9c6b2" datatype="html">
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7593728289020204896" datatype="html"> <trans-unit id="7593728289020204896" datatype="html">
@@ -1212,14 +1184,7 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group>
</trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
@@ -1240,7 +1205,28 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group>
</trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
@@ -1425,7 +1411,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="27d158b47717ff9305d19866960418c603f19d55" datatype="html"> <trans-unit id="27d158b47717ff9305d19866960418c603f19d55" datatype="html">
@@ -1633,6 +1619,13 @@
<context context-type="linenumber">14</context> <context context-type="linenumber">14</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1689,46 +1682,60 @@
<context context-type="linenumber">94</context> <context context-type="linenumber">94</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2935232983274991580" datatype="html"> <trans-unit id="2935232983274991580" datatype="html">
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="8118856427047826368" datatype="html"> <trans-unit id="8118856427047826368" datatype="html">
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="7137419789978325708" datatype="html"> <trans-unit id="7137419789978325708" datatype="html">
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="5190825892106392539" datatype="html"> <trans-unit id="5190825892106392539" datatype="html">
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
</trans-unit> </trans-unit>
<trans-unit id="2119857572761283468" datatype="html"> <trans-unit id="2119857572761283468" datatype="html">

View File

@@ -10,7 +10,7 @@ import { LogsComponent } from './components/manage/logs/logs.component';
import { SettingsComponent } from './components/manage/settings/settings.component'; import { SettingsComponent } from './components/manage/settings/settings.component';
import { TagListComponent } from './components/manage/tag-list/tag-list.component'; import { TagListComponent } from './components/manage/tag-list/tag-list.component';
import { NotFoundComponent } from './components/not-found/not-found.component'; import { NotFoundComponent } from './components/not-found/not-found.component';
import { SearchComponent } from './components/search/search.component'; import {DocumentAsnComponent} from "./components/document-asn/document-asn.component";
const routes: Routes = [ const routes: Routes = [
{path: '', redirectTo: 'dashboard', pathMatch: 'full'}, {path: '', redirectTo: 'dashboard', pathMatch: 'full'},
@@ -18,8 +18,8 @@ const routes: Routes = [
{path: 'dashboard', component: DashboardComponent }, {path: 'dashboard', component: DashboardComponent },
{path: 'documents', component: DocumentListComponent }, {path: 'documents', component: DocumentListComponent },
{path: 'view/:id', component: DocumentListComponent }, {path: 'view/:id', component: DocumentListComponent },
{path: 'search', component: SearchComponent },
{path: 'documents/:id', component: DocumentDetailComponent }, {path: 'documents/:id', component: DocumentDetailComponent },
{path: 'asn/:id', component: DocumentAsnComponent },
{path: 'tags', component: TagListComponent }, {path: 'tags', component: TagListComponent },
{path: 'documenttypes', component: DocumentTypeListComponent }, {path: 'documenttypes', component: DocumentTypeListComponent },

View File

@@ -21,8 +21,6 @@ import { CorrespondentEditDialogComponent } from './components/manage/correspond
import { TagEditDialogComponent } from './components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component'; import { TagEditDialogComponent } from './components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component';
import { DocumentTypeEditDialogComponent } from './components/manage/document-type-list/document-type-edit-dialog/document-type-edit-dialog.component'; import { DocumentTypeEditDialogComponent } from './components/manage/document-type-list/document-type-edit-dialog/document-type-edit-dialog.component';
import { TagComponent } from './components/common/tag/tag.component'; import { TagComponent } from './components/common/tag/tag.component';
import { SearchComponent } from './components/search/search.component';
import { ResultHighlightComponent } from './components/search/result-highlight/result-highlight.component';
import { PageHeaderComponent } from './components/common/page-header/page-header.component'; import { PageHeaderComponent } from './components/common/page-header/page-header.component';
import { AppFrameComponent } from './components/app-frame/app-frame.component'; import { AppFrameComponent } from './components/app-frame/app-frame.component';
import { ToastsComponent } from './components/common/toasts/toasts.component'; import { ToastsComponent } from './components/common/toasts/toasts.component';
@@ -65,6 +63,7 @@ import { LocalizedDateParserFormatter } from './utils/ngb-date-parser-formatter'
import { ApiVersionInterceptor } from './interceptors/api-version.interceptor'; import { ApiVersionInterceptor } from './interceptors/api-version.interceptor';
import { ColorSliderModule } from 'ngx-color/slider'; import { ColorSliderModule } from 'ngx-color/slider';
import { ColorComponent } from './components/common/input/color/color.component'; import { ColorComponent } from './components/common/input/color/color.component';
import { DocumentAsnComponent } from './components/document-asn/document-asn.component';
import localeFr from '@angular/common/locales/fr'; import localeFr from '@angular/common/locales/fr';
import localeNl from '@angular/common/locales/nl'; import localeNl from '@angular/common/locales/nl';
@@ -75,17 +74,20 @@ import localeEnGb from '@angular/common/locales/en-GB';
import localeRo from '@angular/common/locales/ro'; import localeRo from '@angular/common/locales/ro';
import localeRu from '@angular/common/locales/ru'; import localeRu from '@angular/common/locales/ru';
import localeEs from '@angular/common/locales/es'; import localeEs from '@angular/common/locales/es';
import localePl from '@angular/common/locales/pl';
registerLocaleData(localeFr) registerLocaleData(localeFr)
registerLocaleData(localeNl) registerLocaleData(localeNl)
registerLocaleData(localeDe) registerLocaleData(localeDe)
registerLocaleData(localePt, "pt-BR") registerLocaleData(localePt, "pt-BR")
registerLocaleData(localePt, "pt-PT")
registerLocaleData(localeIt) registerLocaleData(localeIt)
registerLocaleData(localeEnGb) registerLocaleData(localeEnGb)
registerLocaleData(localeRo) registerLocaleData(localeRo)
registerLocaleData(localeRu) registerLocaleData(localeRu)
registerLocaleData(localeEs) registerLocaleData(localeEs)
registerLocaleData(localePl)
@NgModule({ @NgModule({
declarations: [ declarations: [
@@ -104,8 +106,6 @@ registerLocaleData(localeEs)
TagEditDialogComponent, TagEditDialogComponent,
DocumentTypeEditDialogComponent, DocumentTypeEditDialogComponent,
TagComponent, TagComponent,
SearchComponent,
ResultHighlightComponent,
PageHeaderComponent, PageHeaderComponent,
AppFrameComponent, AppFrameComponent,
ToastsComponent, ToastsComponent,
@@ -137,7 +137,8 @@ registerLocaleData(localeEs)
SafePipe, SafePipe,
CustomDatePipe, CustomDatePipe,
DateComponent, DateComponent,
ColorComponent ColorComponent,
DocumentAsnComponent
], ],
imports: [ imports: [
BrowserModule, BrowserModule,

View File

@@ -5,7 +5,7 @@
<span class="navbar-toggler-icon"></span> <span class="navbar-toggler-icon"></span>
</button> </button>
<a class="navbar-brand col-auto col-md-3 col-lg-2 mr-0 px-3 py-3 order-sm-0" routerLink="/dashboard"> <a class="navbar-brand col-auto col-md-3 col-lg-2 mr-0 px-3 py-3 order-sm-0" routerLink="/dashboard">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 198.43 238.91" width="1rem" class="mr-2" fill="currentColor"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 198.43 238.91" width="1em" class="mr-2" fill="currentColor">
<path d="M194.7,0C164.22,70.94,17.64,79.74,64.55,194.06c.58,1.47-10.85,17-18.47,29.9-1.76-6.45-3.81-13.48-3.52-14.07,38.11-45.14-27.26-70.65-30.78-107.58C-4.64,131.62-10.5,182.92,39,212.53c.3,0,2.64,11.14,3.81,16.71a58.55,58.55,0,0,0-2.93,6.45c-1.17,2.93,7.62,2.64,7.62,3.22.88-.29,21.7-36.93,22.28-37.23C187.67,174.72,208.48,68.6,194.7,0ZM134.61,74.75C79.5,124,70.12,160.64,71.88,178.53,53.41,134.85,107.64,86.77,134.61,74.75ZM28.2,145.11c10.55,9.67,28.14,39.28,13.19,56.57C44.91,193.77,46.08,175.89,28.2,145.11Z" transform="translate(0 0)"/> <path d="M194.7,0C164.22,70.94,17.64,79.74,64.55,194.06c.58,1.47-10.85,17-18.47,29.9-1.76-6.45-3.81-13.48-3.52-14.07,38.11-45.14-27.26-70.65-30.78-107.58C-4.64,131.62-10.5,182.92,39,212.53c.3,0,2.64,11.14,3.81,16.71a58.55,58.55,0,0,0-2.93,6.45c-1.17,2.93,7.62,2.64,7.62,3.22.88-.29,21.7-36.93,22.28-37.23C187.67,174.72,208.48,68.6,194.7,0ZM134.61,74.75C79.5,124,70.12,160.64,71.88,178.53,53.41,134.85,107.64,86.77,134.61,74.75ZM28.2,145.11c10.55,9.67,28.14,39.28,13.19,56.57C44.91,193.77,46.08,175.89,28.2,145.11Z" transform="translate(0 0)"/>
</svg> </svg>
<ng-container i18n="app title">Paperless-ng</ng-container> <ng-container i18n="app title">Paperless-ng</ng-container>
@@ -175,7 +175,7 @@
</svg>&nbsp;<ng-container i18n>GitHub</ng-container> </svg>&nbsp;<ng-container i18n>GitHub</ng-container>
</a> </a>
<a class="nav-link-additional small text-muted ml-3" target="_blank" rel="noopener noreferrer" href="https://github.com/jonaswinkler/paperless-ng/discussions/categories/feature-requests" title="Suggest an idea"> <a class="nav-link-additional small text-muted ml-3" target="_blank" rel="noopener noreferrer" href="https://github.com/jonaswinkler/paperless-ng/discussions/categories/feature-requests" title="Suggest an idea">
<svg xmlns="http://www.w3.org/2000/svg" width=".9rem" height=".9rem" fill="currentColor" class="bi bi-lightbulb pr-1" viewBox="0 0 16 16"> <svg xmlns="http://www.w3.org/2000/svg" width="1.3em" height="1.3em" fill="currentColor" class="bi bi-lightbulb pr-1" viewBox="0 0 16 16">
<path d="M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z"/> <path d="M2 6a6 6 0 1 1 10.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0 1 10.5 13a.5.5 0 0 1 0 1 .5.5 0 0 1 0 1l-.224.447a1 1 0 0 1-.894.553H6.618a1 1 0 0 1-.894-.553L5.5 15a.5.5 0 0 1 0-1 .5.5 0 0 1 0-1 .5.5 0 0 1-.46-.302l-.761-1.77a1.964 1.964 0 0 0-.453-.618A5.984 5.984 0 0 1 2 6zm6-5a5 5 0 0 0-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 0 0 8 1z"/>
</svg> </svg>
<ng-container i18n>Suggest an idea</ng-container> <ng-container i18n>Suggest an idea</ng-container>

View File

@@ -10,6 +10,8 @@ import { SearchService } from 'src/app/services/rest/search.service';
import { environment } from 'src/environments/environment'; import { environment } from 'src/environments/environment';
import { DocumentDetailComponent } from '../document-detail/document-detail.component'; import { DocumentDetailComponent } from '../document-detail/document-detail.component';
import { Meta } from '@angular/platform-browser'; import { Meta } from '@angular/platform-browser';
import { DocumentListViewService } from 'src/app/services/document-list-view.service';
import { FILTER_FULLTEXT_QUERY } from 'src/app/data/filter-rule-type';
@Component({ @Component({
selector: 'app-app-frame', selector: 'app-app-frame',
@@ -24,6 +26,7 @@ export class AppFrameComponent implements OnInit {
private openDocumentsService: OpenDocumentsService, private openDocumentsService: OpenDocumentsService,
private searchService: SearchService, private searchService: SearchService,
public savedViewService: SavedViewService, public savedViewService: SavedViewService,
private list: DocumentListViewService,
private meta: Meta private meta: Meta
) { ) {
@@ -74,7 +77,7 @@ export class AppFrameComponent implements OnInit {
search() { search() {
this.closeMenu() this.closeMenu()
this.router.navigate(['search'], {queryParams: {query: this.searchField.value}}) this.list.quickFilter([{rule_type: FILTER_FULLTEXT_QUERY, value: this.searchField.value}])
} }
closeDocument(d: PaperlessDocument) { closeDocument(d: PaperlessDocument) {

View File

@@ -1,20 +1,23 @@
<div class="form-group paperless-input-select"> <div class="form-group paperless-input-select">
<label [for]="inputId">{{title}}</label> <label [for]="inputId">{{title}}</label>
<div [class.input-group]="showPlusButton()"> <div [class.input-group]="allowCreateNew">
<ng-select name="inputId" [(ngModel)]="value" <ng-select name="inputId" [(ngModel)]="value"
[disabled]="disabled" [disabled]="disabled"
[style.color]="textColor" [style.color]="textColor"
[style.background]="backgroundColor" [style.background]="backgroundColor"
[clearable]="allowNull" [clearable]="allowNull"
[items]="items" [items]="items"
[addTag]="allowCreateNew && addItemRef"
bindLabel="name" bindLabel="name"
bindValue="id" bindValue="id"
(change)="onChange(value)" (change)="onChange(value)"
(blur)="onTouched()"> (search)="onSearch($event)"
(focus)="clearLastSearchTerm()"
(clear)="clearLastSearchTerm()"
(blur)="onBlur()">
</ng-select> </ng-select>
<div *ngIf="allowCreateNew" class="input-group-append">
<div *ngIf="showPlusButton()" class="input-group-append"> <button class="btn btn-outline-secondary" type="button" (click)="addItem()">
<button class="btn btn-outline-secondary" type="button" (click)="createNew.emit()">
<svg class="buttonicon" fill="currentColor"> <svg class="buttonicon" fill="currentColor">
<use xlink:href="assets/bootstrap-icons.svg#plus" /> <use xlink:href="assets/bootstrap-icons.svg#plus" />
</svg> </svg>

View File

@@ -16,6 +16,7 @@ export class SelectComponent extends AbstractInputComponent<number> {
constructor() { constructor() {
super() super()
this.addItemRef = this.addItem.bind(this)
} }
@Input() @Input()
@@ -34,9 +35,13 @@ export class SelectComponent extends AbstractInputComponent<number> {
suggestions: number[] suggestions: number[]
@Output() @Output()
createNew = new EventEmitter() createNew = new EventEmitter<string>()
showPlusButton(): boolean { public addItemRef: (name) => void
private _lastSearchTerm: string
get allowCreateNew(): boolean {
return this.createNew.observers.length > 0 return this.createNew.observers.length > 0
} }
@@ -48,4 +53,29 @@ export class SelectComponent extends AbstractInputComponent<number> {
} }
} }
addItem(name: string) {
if (name) this.createNew.next(name)
else this.createNew.next(this._lastSearchTerm)
this.clearLastSearchTerm()
}
clickNew() {
this.createNew.next(this._lastSearchTerm)
this.clearLastSearchTerm()
}
clearLastSearchTerm() {
this._lastSearchTerm = null
}
onSearch($event) {
this._lastSearchTerm = $event.term
}
onBlur() {
setTimeout(() => {
this.clearLastSearchTerm()
}, 3000);
}
} }

View File

@@ -7,8 +7,13 @@
[closeOnSelect]="false" [closeOnSelect]="false"
[clearSearchOnAdd]="true" [clearSearchOnAdd]="true"
[hideSelected]="true" [hideSelected]="true"
[addTag]="createTagRef"
addTagText="Add tag"
(change)="onChange(value)" (change)="onChange(value)"
(blur)="onTouched()"> (search)="onSearch($event)"
(focus)="clearLastSearchTerm()"
(clear)="clearLastSearchTerm()"
(blur)="onBlur()">
<ng-template ng-label-tmp let-item="item"> <ng-template ng-label-tmp let-item="item">
<span class="tag-wrap tag-wrap-delete" (click)="removeTag(item.id)"> <span class="tag-wrap tag-wrap-delete" (click)="removeTag(item.id)">

View File

@@ -17,8 +17,9 @@ import { TagService } from 'src/app/services/rest/tag.service';
}) })
export class TagsComponent implements OnInit, ControlValueAccessor { export class TagsComponent implements OnInit, ControlValueAccessor {
constructor(private tagService: TagService, private modalService: NgbModal) { } constructor(private tagService: TagService, private modalService: NgbModal) {
this.createTagRef = this.createTag.bind(this)
}
onChange = (newValue: number[]) => {}; onChange = (newValue: number[]) => {};
@@ -56,6 +57,10 @@ export class TagsComponent implements OnInit, ControlValueAccessor {
tags: PaperlessTag[] tags: PaperlessTag[]
public createTagRef: (name) => void
private _lastSearchTerm: string
getTag(id) { getTag(id) {
if (this.tags) { if (this.tags) {
return this.tags.find(tag => tag.id == id) return this.tags.find(tag => tag.id == id)
@@ -74,9 +79,11 @@ export class TagsComponent implements OnInit, ControlValueAccessor {
} }
} }
createTag() { createTag(name: string = null) {
var modal = this.modalService.open(TagEditDialogComponent, {backdrop: 'static'}) var modal = this.modalService.open(TagEditDialogComponent, {backdrop: 'static'})
modal.componentInstance.dialogMode = 'create' modal.componentInstance.dialogMode = 'create'
if (name) modal.componentInstance.object = { name: name }
else if (this._lastSearchTerm) modal.componentInstance.object = { name: this._lastSearchTerm }
modal.componentInstance.success.subscribe(newTag => { modal.componentInstance.success.subscribe(newTag => {
this.tagService.listAll().subscribe(tags => { this.tagService.listAll().subscribe(tags => {
this.tags = tags.results this.tags = tags.results
@@ -99,4 +106,18 @@ export class TagsComponent implements OnInit, ControlValueAccessor {
this.onChange(this.value) this.onChange(this.value)
} }
clearLastSearchTerm() {
this._lastSearchTerm = null
}
onSearch($event) {
this._lastSearchTerm = $event.term
}
onBlur() {
setTimeout(() => {
this.clearLastSearchTerm()
}, 3000);
}
} }

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
<p i18n>Searching document with asn {{asn}}</p>

View File

@@ -1,20 +1,20 @@
import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ComponentFixture, TestBed } from '@angular/core/testing';
import { SearchComponent } from './search.component'; import { DocumentAsnComponent } from './document-asn.component';
describe('SearchComponent', () => { describe('DocumentASNComponentComponent', () => {
let component: SearchComponent; let component: DocumentAsnComponent;
let fixture: ComponentFixture<SearchComponent>; let fixture: ComponentFixture<DocumentAsnComponent>;
beforeEach(async () => { beforeEach(async () => {
await TestBed.configureTestingModule({ await TestBed.configureTestingModule({
declarations: [ SearchComponent ] declarations: [ DocumentAsnComponent ]
}) })
.compileComponents(); .compileComponents();
}); });
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(SearchComponent); fixture = TestBed.createComponent(DocumentAsnComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });

View File

@@ -0,0 +1,34 @@
import { Component, OnInit } from '@angular/core';
import {DocumentService} from "../../services/rest/document.service";
import {ActivatedRoute, Router} from "@angular/router";
import {FILTER_ASN} from "../../data/filter-rule-type";
@Component({
selector: 'app-document-asncomponent',
templateUrl: './document-asn.component.html',
styleUrls: ['./document-asn.component.scss']
})
export class DocumentAsnComponent implements OnInit {
asn: string
constructor(
private documentsService: DocumentService,
private route: ActivatedRoute,
private router: Router) { }
ngOnInit(): void {
this.route.paramMap.subscribe(paramMap => {
this.asn = paramMap.get('id');
this.documentsService.listAllFilteredIds([{rule_type: FILTER_ASN, value: this.asn}]).subscribe(documentId => {
if (documentId.length == 1) {
this.router.navigate(['documents', documentId[0]])
} else {
this.router.navigate(['404'])
}
})
})
}
}

View File

@@ -60,9 +60,9 @@
<app-input-number i18n-title title="Archive serial number" [error]="error?.archive_serial_number" formControlName='archive_serial_number'></app-input-number> <app-input-number i18n-title title="Archive serial number" [error]="error?.archive_serial_number" formControlName='archive_serial_number'></app-input-number>
<app-input-date i18n-title title="Date created" formControlName="created" [error]="error?.created"></app-input-date> <app-input-date i18n-title title="Date created" formControlName="created" [error]="error?.created"></app-input-date>
<app-input-select [items]="correspondents" i18n-title title="Correspondent" formControlName="correspondent" [allowNull]="true" <app-input-select [items]="correspondents" i18n-title title="Correspondent" formControlName="correspondent" [allowNull]="true"
(createNew)="createCorrespondent()" [suggestions]="suggestions?.correspondents"></app-input-select> (createNew)="createCorrespondent($event)" [suggestions]="suggestions?.correspondents"></app-input-select>
<app-input-select [items]="documentTypes" i18n-title title="Document type" formControlName="document_type" [allowNull]="true" <app-input-select [items]="documentTypes" i18n-title title="Document type" formControlName="document_type" [allowNull]="true"
(createNew)="createDocumentType()" [suggestions]="suggestions?.document_types"></app-input-select> (createNew)="createDocumentType($event)" [suggestions]="suggestions?.document_types"></app-input-select>
<app-input-tags formControlName="tags" [suggestions]="suggestions?.tags"></app-input-tags> <app-input-tags formControlName="tags" [suggestions]="suggestions?.tags"></app-input-tags>
</ng-template> </ng-template>

View File

@@ -20,6 +20,7 @@ import { ToastService } from 'src/app/services/toast.service';
import { TextComponent } from '../common/input/text/text.component'; import { TextComponent } from '../common/input/text/text.component';
import { SettingsService, SETTINGS_KEYS } from 'src/app/services/settings.service'; import { SettingsService, SETTINGS_KEYS } from 'src/app/services/settings.service';
import { PaperlessDocumentSuggestions } from 'src/app/data/paperless-document-suggestions'; import { PaperlessDocumentSuggestions } from 'src/app/data/paperless-document-suggestions';
import { FILTER_FULLTEXT_MORELIKE } from 'src/app/data/filter-rule-type';
@Component({ @Component({
selector: 'app-document-detail', selector: 'app-document-detail',
@@ -127,9 +128,10 @@ export class DocumentDetailComponent implements OnInit {
this.documentForm.patchValue(doc) this.documentForm.patchValue(doc)
} }
createDocumentType() { createDocumentType(newName: string) {
var modal = this.modalService.open(DocumentTypeEditDialogComponent, {backdrop: 'static'}) var modal = this.modalService.open(DocumentTypeEditDialogComponent, {backdrop: 'static'})
modal.componentInstance.dialogMode = 'create' modal.componentInstance.dialogMode = 'create'
if (newName) modal.componentInstance.object = { name: newName }
modal.componentInstance.success.subscribe(newDocumentType => { modal.componentInstance.success.subscribe(newDocumentType => {
this.documentTypeService.listAll().subscribe(documentTypes => { this.documentTypeService.listAll().subscribe(documentTypes => {
this.documentTypes = documentTypes.results this.documentTypes = documentTypes.results
@@ -138,9 +140,10 @@ export class DocumentDetailComponent implements OnInit {
}) })
} }
createCorrespondent() { createCorrespondent(newName: string) {
var modal = this.modalService.open(CorrespondentEditDialogComponent, {backdrop: 'static'}) var modal = this.modalService.open(CorrespondentEditDialogComponent, {backdrop: 'static'})
modal.componentInstance.dialogMode = 'create' modal.componentInstance.dialogMode = 'create'
if (newName) modal.componentInstance.object = { name: newName }
modal.componentInstance.success.subscribe(newCorrespondent => { modal.componentInstance.success.subscribe(newCorrespondent => {
this.correspondentService.listAll().subscribe(correspondents => { this.correspondentService.listAll().subscribe(correspondents => {
this.correspondents = correspondents.results this.correspondents = correspondents.results
@@ -219,7 +222,7 @@ export class DocumentDetailComponent implements OnInit {
} }
moreLike() { moreLike() {
this.router.navigate(["search"], {queryParams: {more_like:this.document.id}}) this.documentListViewService.quickFilter([{rule_type: FILTER_FULLTEXT_MORELIKE, value: this.documentId.toString()}])
} }
hasNext() { hasNext() {

View File

@@ -25,14 +25,14 @@
</h5> </h5>
</div> </div>
<p class="card-text"> <p class="card-text">
<app-result-highlight *ngIf="getDetailsAsHighlight()" class="result-content" [highlights]="getDetailsAsHighlight()"></app-result-highlight> <span *ngIf="document.__search_hit__" [innerHtml]="document.__search_hit__.highlights"></span>
<span *ngIf="getDetailsAsString()" class="result-content">{{getDetailsAsString()}}</span> <span *ngIf="!document.__search_hit__" class="result-content">{{contentTrimmed}}</span>
</p> </p>
<div class="d-flex flex-column flex-md-row align-items-md-center"> <div class="d-flex flex-column flex-md-row align-items-md-center">
<div class="btn-group"> <div class="btn-group">
<a routerLink="/search" [queryParams]="{'more_like': document.id}" class="btn btn-sm btn-outline-secondary" *ngIf="moreLikeThis"> <a class="btn btn-sm btn-outline-secondary" (click)="clickMoreLike.emit()">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-three-dots" viewBox="0 0 16 16"> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-three-dots" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z"/> <path fill-rule="evenodd" d="M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z"/>
</svg>&nbsp;<span class="d-block d-md-inline" i18n>More like this</span> </svg>&nbsp;<span class="d-block d-md-inline" i18n>More like this</span>
@@ -62,10 +62,6 @@
</div> </div>
<div class="list-group list-group-horizontal border-0 card-info ml-md-auto mt-2 mt-md-0"> <div class="list-group list-group-horizontal border-0 card-info ml-md-auto mt-2 mt-md-0">
<div *ngIf="searchScore" class="list-group-item bg-light text-dark p-1 mr-5 border-0 d-flex search-score">
<small class="text-muted" i18n>Score:</small>
<ngb-progressbar [type]="searchScoreClass" [value]="searchScore" class="search-score-bar mx-2 mt-1" [max]="1"></ngb-progressbar>
</div>
<button *ngIf="document.document_type" type="button" class="list-group-item btn btn-sm bg-light text-dark p-1 border-0 mr-2" title="Filter by document type" <button *ngIf="document.document_type" type="button" class="list-group-item btn btn-sm bg-light text-dark p-1 border-0 mr-2" title="Filter by document type"
(click)="clickDocumentType.emit(document.document_type);$event.stopPropagation()"> (click)="clickDocumentType.emit(document.document_type);$event.stopPropagation()">
<svg class="metadata-icon mr-2 text-muted bi bi-file-earmark" viewBox="0 0 16 16" fill="currentColor"> <svg class="metadata-icon mr-2 text-muted bi bi-file-earmark" viewBox="0 0 16 16" fill="currentColor">
@@ -86,6 +82,11 @@
</svg> </svg>
<small>{{document.created | customDate:'mediumDate'}}</small> <small>{{document.created | customDate:'mediumDate'}}</small>
</div> </div>
<div *ngIf="document.__search_hit__" class="list-group-item bg-light text-dark border-0 d-flex p-0 pl-4 search-score">
<small class="text-muted" i18n>Score:</small>
<ngb-progressbar [type]="searchScoreClass" [value]="document.__search_hit__.score" class="search-score-bar mx-2 mt-1" [max]="1"></ngb-progressbar>
</div>
</div> </div>
</div> </div>

View File

@@ -51,11 +51,17 @@
} }
.metadata-icon { .metadata-icon {
width: 0.8rem; width: 0.9rem;
height: 0.8rem; height: 0.9rem;
padding: 0.05rem;
} }
.search-score { .search-score {
padding-top: 0.35rem !important; padding-top: 0.35rem !important;
} }
} }
span ::ng-deep .match {
color: black;
background-color: rgb(255, 211, 66);
}

View File

@@ -4,6 +4,8 @@ import { PaperlessDocument } from 'src/app/data/paperless-document';
import { DocumentService } from 'src/app/services/rest/document.service'; import { DocumentService } from 'src/app/services/rest/document.service';
import { SettingsService, SETTINGS_KEYS } from 'src/app/services/settings.service'; import { SettingsService, SETTINGS_KEYS } from 'src/app/services/settings.service';
import { NgbPopover } from '@ng-bootstrap/ng-bootstrap'; import { NgbPopover } from '@ng-bootstrap/ng-bootstrap';
import { DocumentListViewService } from 'src/app/services/document-list-view.service';
import { FILTER_FULLTEXT_MORELIKE } from 'src/app/data/filter-rule-type';
@Component({ @Component({
selector: 'app-document-card-large', selector: 'app-document-card-large',
@@ -24,15 +26,9 @@ export class DocumentCardLargeComponent implements OnInit {
return this.toggleSelected.observers.length > 0 return this.toggleSelected.observers.length > 0
} }
@Input()
moreLikeThis: boolean = false
@Input() @Input()
document: PaperlessDocument document: PaperlessDocument
@Input()
details: any
@Output() @Output()
clickTag = new EventEmitter<number>() clickTag = new EventEmitter<number>()
@@ -42,8 +38,8 @@ export class DocumentCardLargeComponent implements OnInit {
@Output() @Output()
clickDocumentType = new EventEmitter<number>() clickDocumentType = new EventEmitter<number>()
@Input() @Output()
searchScore: number clickMoreLike= new EventEmitter()
@ViewChild('popover') popover: NgbPopover @ViewChild('popover') popover: NgbPopover
@@ -51,14 +47,16 @@ export class DocumentCardLargeComponent implements OnInit {
popoverHidden = true popoverHidden = true
get searchScoreClass() { get searchScoreClass() {
if (this.searchScore > 0.7) { if (this.document.__search_hit__) {
if (this.document.__search_hit__.score > 0.7) {
return "success" return "success"
} else if (this.searchScore > 0.3) { } else if (this.document.__search_hit__.score > 0.3) {
return "warning" return "warning"
} else { } else {
return "danger" return "danger"
} }
} }
}
ngOnInit(): void { ngOnInit(): void {
} }
@@ -67,19 +65,6 @@ export class DocumentCardLargeComponent implements OnInit {
return this.settingsService.get(SETTINGS_KEYS.DARK_MODE_THUMB_INVERTED) return this.settingsService.get(SETTINGS_KEYS.DARK_MODE_THUMB_INVERTED)
} }
getDetailsAsString() {
if (typeof this.details === 'string') {
return this.details.substring(0, 500)
}
}
getDetailsAsHighlight() {
//TODO: this is not an exact typecheck, can we do better
if (this.details instanceof Array) {
return this.details
}
}
getThumbUrl() { getThumbUrl() {
return this.documentService.getThumbUrl(this.document.id) return this.documentService.getThumbUrl(this.document.id)
} }
@@ -116,4 +101,8 @@ export class DocumentCardLargeComponent implements OnInit {
mouseLeaveCard() { mouseLeaveCard() {
this.popover.close() this.popover.close()
} }
get contentTrimmed() {
return this.document.content.substr(0, 500)
}
} }

View File

@@ -38,7 +38,15 @@
<small>{{(document.document_type$ | async)?.name}}</small> <small>{{(document.document_type$ | async)?.name}}</small>
</button> </button>
<div class="list-group-item bg-transparent p-0 border-0 d-flex flex-wrap-reverse justify-content-between"> <div class="list-group-item bg-transparent p-0 border-0 d-flex flex-wrap-reverse justify-content-between">
<div class="pl-0 p-1" placement="top" ngbTooltip="Added:&nbsp;{{document.added | customDate:'mediumDate'}} Created:&nbsp;{{document.created | customDate:'mediumDate'}}"> <ng-template #dateTooltip>
<div class="d-flex flex-column">
<span i18n>Created: {{ document.created | customDate}}</span>
<span i18n>Added: {{ document.added | customDate}}</span>
<span i18n>Modified: {{ document.modified | customDate}}</span>
</div>
</ng-template>
<div class="pl-0 p-1" placement="top" [ngbTooltip]="dateTooltip">
<svg class="metadata-icon mr-2 text-muted bi bi-calendar-event" viewBox="0 0 16 16" fill="currentColor"> <svg class="metadata-icon mr-2 text-muted bi bi-calendar-event" viewBox="0 0 16 16" fill="currentColor">
<path d="M11 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z"/> <path d="M11 6.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5v-1z"/>
<path d="M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z"/> <path d="M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z"/>

View File

@@ -53,8 +53,9 @@
} }
.metadata-icon { .metadata-icon {
width: 0.8rem; width: 0.9rem;
height: 0.8rem; height: 0.9rem;
padding: 0.05rem;
} }
} }

View File

@@ -75,8 +75,8 @@
</app-page-header> </app-page-header>
<div class="w-100 mb-2 mb-sm-4"> <div class="sticky-top py-2 mt-n2 mt-sm-n3 py-sm-4 bg-body mx-n3 px-3">
<app-filter-editor [hidden]="isBulkEditing" [(filterRules)]="list.filterRules" [rulesModified]="filterRulesModified" (filterRulesChange)="rulesChanged()" (reset)="resetFilters()" #filterEditor></app-filter-editor> <app-filter-editor [hidden]="isBulkEditing" [(filterRules)]="list.filterRules" [unmodifiedFilterRules]="unmodifiedFilterRules" #filterEditor></app-filter-editor>
<app-bulk-editor [hidden]="!isBulkEditing"></app-bulk-editor> <app-bulk-editor [hidden]="!isBulkEditing"></app-bulk-editor>
</div> </div>
@@ -89,12 +89,18 @@
[rotate]="true" aria-label="Default pagination"></ngb-pagination> [rotate]="true" aria-label="Default pagination"></ngb-pagination>
</div> </div>
<div *ngIf="displayMode == 'largeCards'"> <ng-container *ngIf="list.error ; else documentListNoError">
<app-document-card-large [selected]="list.isSelected(d)" (toggleSelected)="toggleSelected(d, $event)" *ngFor="let d of list.documents; trackBy: trackByDocumentId" [document]="d" [details]="d.content" (clickTag)="clickTag($event)" (clickCorrespondent)="clickCorrespondent($event)" (clickDocumentType)="clickDocumentType($event)"> <div class="alert alert-danger" role="alert">Error while loading documents: {{list.error}}</div>
</app-document-card-large> </ng-container>
</div>
<table class="table table-sm border shadow-sm" *ngIf="displayMode == 'details'"> <ng-template #documentListNoError>
<div *ngIf="displayMode == 'largeCards'">
<app-document-card-large [selected]="list.isSelected(d)" (toggleSelected)="toggleSelected(d, $event)" *ngFor="let d of list.documents; trackBy: trackByDocumentId" [document]="d" (clickTag)="clickTag($event)" (clickCorrespondent)="clickCorrespondent($event)" (clickDocumentType)="clickDocumentType($event)" (clickMoreLike)="clickMoreLike(d.id)">
</app-document-card-large>
</div>
<table class="table table-sm border shadow-sm" *ngIf="displayMode == 'details'">
<thead> <thead>
<th></th> <th></th>
<th class="d-none d-lg-table-cell" <th class="d-none d-lg-table-cell"
@@ -167,8 +173,11 @@
</td> </td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<div class="m-n2 row row-cols-paperless-cards" *ngIf="displayMode == 'smallCards'"> <div class="m-n2 row row-cols-paperless-cards" *ngIf="displayMode == 'smallCards'">
<app-document-card-small [selected]="list.isSelected(d)" (toggleSelected)="toggleSelected(d, $event)" [document]="d" *ngFor="let d of list.documents; trackBy: trackByDocumentId" (clickTag)="clickTag($event)" (clickCorrespondent)="clickCorrespondent($event)" (clickDocumentType)="clickDocumentType($event)"></app-document-card-small> <app-document-card-small [selected]="list.isSelected(d)" (toggleSelected)="toggleSelected(d, $event)" [document]="d" *ngFor="let d of list.documents; trackBy: trackByDocumentId" (clickTag)="clickTag($event)" (clickCorrespondent)="clickCorrespondent($event)" (clickDocumentType)="clickDocumentType($event)"></app-document-card-small>
</div> </div>
</ng-template>

View File

@@ -34,3 +34,12 @@ $paperless-card-breakpoints: (
right: 0 !important; right: 0 !important;
left: auto !important; left: auto !important;
} }
.sticky-top {
z-index: 990; // below main navbar
top: calc(7rem - 2px); // height of navbar (mobile)
@media (min-width: 580px) {
top: 3.5rem; // height of navbar
}
}

View File

@@ -2,6 +2,8 @@ import { Component, OnDestroy, OnInit, QueryList, ViewChild, ViewChildren } from
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { FilterRule } from 'src/app/data/filter-rule';
import { FILTER_FULLTEXT_MORELIKE } from 'src/app/data/filter-rule-type';
import { PaperlessDocument } from 'src/app/data/paperless-document'; import { PaperlessDocument } from 'src/app/data/paperless-document';
import { PaperlessSavedView } from 'src/app/data/paperless-saved-view'; import { PaperlessSavedView } from 'src/app/data/paperless-saved-view';
import { SortableDirective, SortEvent } from 'src/app/directives/sortable.directive'; import { SortableDirective, SortEvent } from 'src/app/directives/sortable.directive';
@@ -37,7 +39,7 @@ export class DocumentListComponent implements OnInit, OnDestroy {
displayMode = 'smallCards' // largeCards, smallCards, details displayMode = 'smallCards' // largeCards, smallCards, details
filterRulesModified: boolean = false unmodifiedFilterRules: FilterRule[] = []
private consumptionFinishedSubscription: Subscription private consumptionFinishedSubscription: Subscription
@@ -81,12 +83,12 @@ export class DocumentListComponent implements OnInit, OnDestroy {
} }
this.list.activateSavedView(view) this.list.activateSavedView(view)
this.list.reload() this.list.reload()
this.rulesChanged() this.unmodifiedFilterRules = view.filter_rules
}) })
} else { } else {
this.list.activateSavedView(null) this.list.activateSavedView(null)
this.list.reload() this.list.reload()
this.rulesChanged() this.unmodifiedFilterRules = []
} }
}) })
} }
@@ -100,7 +102,6 @@ export class DocumentListComponent implements OnInit, OnDestroy {
loadViewConfig(view: PaperlessSavedView) { loadViewConfig(view: PaperlessSavedView) {
this.list.loadSavedView(view) this.list.loadSavedView(view)
this.list.reload() this.list.reload()
this.rulesChanged()
} }
saveViewConfig() { saveViewConfig() {
@@ -113,6 +114,7 @@ export class DocumentListComponent implements OnInit, OnDestroy {
} }
this.savedViewService.patch(savedView).subscribe(result => { this.savedViewService.patch(savedView).subscribe(result => {
this.toastService.showInfo($localize`View "${this.list.activeSavedViewTitle}" saved successfully.`) this.toastService.showInfo($localize`View "${this.list.activeSavedViewTitle}" saved successfully.`)
this.unmodifiedFilterRules = this.list.filterRules
}) })
} }
} }
@@ -141,46 +143,6 @@ export class DocumentListComponent implements OnInit, OnDestroy {
}) })
} }
resetFilters(): void {
this.filterRulesModified = false
if (this.list.activeSavedViewId) {
this.savedViewService.getCached(this.list.activeSavedViewId).subscribe(viewUntouched => {
this.list.filterRules = viewUntouched.filter_rules
this.list.reload()
})
} else {
this.list.filterRules = []
this.list.reload()
}
}
rulesChanged() {
let modified = false
if (this.list.activeSavedViewId == null) {
modified = this.list.filterRules.length > 0 // documents list is modified if it has any filters
} else {
// compare savedView current filters vs original
this.savedViewService.getCached(this.list.activeSavedViewId).subscribe(view => {
let filterRulesInitial = view.filter_rules
if (this.list.filterRules.length !== filterRulesInitial.length) modified = true
else {
modified = this.list.filterRules.some(rule => {
return (filterRulesInitial.find(fri => fri.rule_type == rule.rule_type && fri.value == rule.value) == undefined)
})
if (!modified) {
// only check other direction if we havent already determined is modified
modified = filterRulesInitial.some(rule => {
this.list.filterRules.find(fr => fr.rule_type == rule.rule_type && fr.value == rule.value) == undefined
})
}
}
})
}
this.filterRulesModified = modified
}
toggleSelected(document: PaperlessDocument, event: MouseEvent): void { toggleSelected(document: PaperlessDocument, event: MouseEvent): void {
if (!event.shiftKey) this.list.toggleSelected(document) if (!event.shiftKey) this.list.toggleSelected(document)
else this.list.selectRangeTo(document) else this.list.selectRangeTo(document)
@@ -207,6 +169,10 @@ export class DocumentListComponent implements OnInit, OnDestroy {
}) })
} }
clickMoreLike(documentID: number) {
this.list.quickFilter([{rule_type: FILTER_FULLTEXT_MORELIKE, value: documentID.toString()}])
}
trackByDocumentId(index, item: PaperlessDocument) { trackByDocumentId(index, item: PaperlessDocument) {
return item.id return item.id
} }

View File

@@ -1,7 +1,6 @@
<div class="row"> <div class="row">
<div class="col mb-2 mb-xl-0"> <div class="col mb-2 mb-xl-0">
<div class="form-inline d-flex align-items-center"> <div class="form-inline d-flex align-items-center">
<label class="text-muted mr-2 mb-0" i18n>Filter by:</label>
<div class="input-group input-group-sm flex-fill w-auto"> <div class="input-group input-group-sm flex-fill w-auto">
<div class="input-group-prepend" ngbDropdown> <div class="input-group-prepend" ngbDropdown>
<button class="btn btn-outline-primary" ngbDropdownToggle>{{textFilterTargetName}}</button> <button class="btn btn-outline-primary" ngbDropdownToggle>{{textFilterTargetName}}</button>
@@ -9,7 +8,7 @@
<button *ngFor="let t of textFilterTargets" ngbDropdownItem [class.active]="textFilterTarget == t.id" (click)="changeTextFilterTarget(t.id)">{{t.name}}</button> <button *ngFor="let t of textFilterTargets" ngbDropdownItem [class.active]="textFilterTarget == t.id" (click)="changeTextFilterTarget(t.id)">{{t.name}}</button>
</div> </div>
</div> </div>
<input class="form-control form-control-sm" type="text" [(ngModel)]="textFilter"> <input #textFilterInput class="form-control form-control-sm" type="text" [(ngModel)]="textFilter" [readonly]="textFilterTarget == 'fulltext-morelike'">
</div> </div>
</div> </div>
</div> </div>

View File

@@ -1,4 +1,4 @@
import { Component, EventEmitter, Input, Output, OnInit, OnDestroy } from '@angular/core'; import { Component, EventEmitter, Input, Output, OnInit, OnDestroy, ViewChild, ElementRef } from '@angular/core';
import { PaperlessTag } from 'src/app/data/paperless-tag'; import { PaperlessTag } from 'src/app/data/paperless-tag';
import { PaperlessCorrespondent } from 'src/app/data/paperless-correspondent'; import { PaperlessCorrespondent } from 'src/app/data/paperless-correspondent';
import { PaperlessDocumentType } from 'src/app/data/paperless-document-type'; import { PaperlessDocumentType } from 'src/app/data/paperless-document-type';
@@ -8,13 +8,17 @@ import { DocumentTypeService } from 'src/app/services/rest/document-type.service
import { TagService } from 'src/app/services/rest/tag.service'; import { TagService } from 'src/app/services/rest/tag.service';
import { CorrespondentService } from 'src/app/services/rest/correspondent.service'; import { CorrespondentService } from 'src/app/services/rest/correspondent.service';
import { FilterRule } from 'src/app/data/filter-rule'; import { FilterRule } from 'src/app/data/filter-rule';
import { FILTER_ADDED_AFTER, FILTER_ADDED_BEFORE, FILTER_ASN, FILTER_CORRESPONDENT, FILTER_CREATED_AFTER, FILTER_CREATED_BEFORE, FILTER_DOCUMENT_TYPE, FILTER_HAS_ANY_TAG, FILTER_HAS_TAG, FILTER_TITLE, FILTER_TITLE_CONTENT } from 'src/app/data/filter-rule-type'; import { FILTER_ADDED_AFTER, FILTER_ADDED_BEFORE, FILTER_ASN, FILTER_CORRESPONDENT, FILTER_CREATED_AFTER, FILTER_CREATED_BEFORE, FILTER_DOCUMENT_TYPE, FILTER_FULLTEXT_MORELIKE, FILTER_FULLTEXT_QUERY, FILTER_HAS_ANY_TAG, FILTER_HAS_TAG, FILTER_TITLE, FILTER_TITLE_CONTENT } from 'src/app/data/filter-rule-type';
import { FilterableDropdownSelectionModel } from '../../common/filterable-dropdown/filterable-dropdown.component'; import { FilterableDropdownSelectionModel } from '../../common/filterable-dropdown/filterable-dropdown.component';
import { ToggleableItemState } from '../../common/filterable-dropdown/toggleable-dropdown-button/toggleable-dropdown-button.component'; import { ToggleableItemState } from '../../common/filterable-dropdown/toggleable-dropdown-button/toggleable-dropdown-button.component';
import { DocumentService } from 'src/app/services/rest/document.service';
import { PaperlessDocument } from 'src/app/data/paperless-document';
const TEXT_FILTER_TARGET_TITLE = "title" const TEXT_FILTER_TARGET_TITLE = "title"
const TEXT_FILTER_TARGET_TITLE_CONTENT = "title-content" const TEXT_FILTER_TARGET_TITLE_CONTENT = "title-content"
const TEXT_FILTER_TARGET_ASN = "asn" const TEXT_FILTER_TARGET_ASN = "asn"
const TEXT_FILTER_TARGET_FULLTEXT_QUERY = "fulltext-query"
const TEXT_FILTER_TARGET_FULLTEXT_MORELIKE = "fulltext-morelike"
@Component({ @Component({
selector: 'app-filter-editor', selector: 'app-filter-editor',
@@ -64,20 +68,33 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
constructor( constructor(
private documentTypeService: DocumentTypeService, private documentTypeService: DocumentTypeService,
private tagService: TagService, private tagService: TagService,
private correspondentService: CorrespondentService private correspondentService: CorrespondentService,
private documentService: DocumentService
) { } ) { }
@ViewChild("textFilterInput")
textFilterInput: ElementRef
tags: PaperlessTag[] = [] tags: PaperlessTag[] = []
correspondents: PaperlessCorrespondent[] = [] correspondents: PaperlessCorrespondent[] = []
documentTypes: PaperlessDocumentType[] = [] documentTypes: PaperlessDocumentType[] = []
_textFilter = "" _textFilter = ""
_moreLikeId: number
_moreLikeDoc: PaperlessDocument
textFilterTargets = [ get textFilterTargets() {
let targets = [
{id: TEXT_FILTER_TARGET_TITLE, name: $localize`Title`}, {id: TEXT_FILTER_TARGET_TITLE, name: $localize`Title`},
{id: TEXT_FILTER_TARGET_TITLE_CONTENT, name: $localize`Title & content`}, {id: TEXT_FILTER_TARGET_TITLE_CONTENT, name: $localize`Title & content`},
{id: TEXT_FILTER_TARGET_ASN, name: $localize`ASN`} {id: TEXT_FILTER_TARGET_ASN, name: $localize`ASN`},
{id: TEXT_FILTER_TARGET_FULLTEXT_QUERY, name: $localize`Advanced search`}
] ]
if (this.textFilterTarget == TEXT_FILTER_TARGET_FULLTEXT_MORELIKE) {
targets.push({id: TEXT_FILTER_TARGET_FULLTEXT_MORELIKE, name: $localize`More like`})
}
return targets
}
textFilterTarget = TEXT_FILTER_TARGET_TITLE_CONTENT textFilterTarget = TEXT_FILTER_TARGET_TITLE_CONTENT
@@ -95,12 +112,28 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
dateAddedBefore: string dateAddedBefore: string
dateAddedAfter: string dateAddedAfter: string
_unmodifiedFilterRules: FilterRule[] = []
_filterRules: FilterRule[] = []
@Input()
set unmodifiedFilterRules(value: FilterRule[]) {
this._unmodifiedFilterRules = value
this.checkIfRulesHaveChanged()
}
get unmodifiedFilterRules(): FilterRule[] {
return this._unmodifiedFilterRules
}
@Input() @Input()
set filterRules (value: FilterRule[]) { set filterRules (value: FilterRule[]) {
this._filterRules = value
this.documentTypeSelectionModel.clear(false) this.documentTypeSelectionModel.clear(false)
this.tagSelectionModel.clear(false) this.tagSelectionModel.clear(false)
this.correspondentSelectionModel.clear(false) this.correspondentSelectionModel.clear(false)
this._textFilter = null this._textFilter = null
this._moreLikeId = null
this.dateAddedBefore = null this.dateAddedBefore = null
this.dateAddedAfter = null this.dateAddedAfter = null
this.dateCreatedBefore = null this.dateCreatedBefore = null
@@ -120,6 +153,18 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
this._textFilter = rule.value this._textFilter = rule.value
this.textFilterTarget = TEXT_FILTER_TARGET_ASN this.textFilterTarget = TEXT_FILTER_TARGET_ASN
break break
case FILTER_FULLTEXT_QUERY:
this._textFilter = rule.value
this.textFilterTarget = TEXT_FILTER_TARGET_FULLTEXT_QUERY
break
case FILTER_FULLTEXT_MORELIKE:
this._moreLikeId = +rule.value
this.textFilterTarget = TEXT_FILTER_TARGET_FULLTEXT_MORELIKE
this.documentService.get(this._moreLikeId).subscribe(result => {
this._moreLikeDoc = result
this._textFilter = result.title
})
break
case FILTER_CREATED_AFTER: case FILTER_CREATED_AFTER:
this.dateCreatedAfter = rule.value this.dateCreatedAfter = rule.value
break break
@@ -146,6 +191,7 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
break break
} }
}) })
this.checkIfRulesHaveChanged()
} }
get filterRules(): FilterRule[] { get filterRules(): FilterRule[] {
@@ -159,6 +205,12 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
if (this._textFilter && this.textFilterTarget == TEXT_FILTER_TARGET_ASN) { if (this._textFilter && this.textFilterTarget == TEXT_FILTER_TARGET_ASN) {
filterRules.push({rule_type: FILTER_ASN, value: this._textFilter}) filterRules.push({rule_type: FILTER_ASN, value: this._textFilter})
} }
if (this._textFilter && this.textFilterTarget == TEXT_FILTER_TARGET_FULLTEXT_QUERY) {
filterRules.push({rule_type: FILTER_FULLTEXT_QUERY, value: this._textFilter})
}
if (this._moreLikeId && this.textFilterTarget == TEXT_FILTER_TARGET_FULLTEXT_MORELIKE) {
filterRules.push({rule_type: FILTER_FULLTEXT_MORELIKE, value: this._moreLikeId?.toString()})
}
if (this.tagSelectionModel.isNoneSelected()) { if (this.tagSelectionModel.isNoneSelected()) {
filterRules.push({rule_type: FILTER_HAS_ANY_TAG, value: "false"}) filterRules.push({rule_type: FILTER_HAS_ANY_TAG, value: "false"})
} else { } else {
@@ -190,12 +242,27 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
@Output() @Output()
filterRulesChange = new EventEmitter<FilterRule[]>() filterRulesChange = new EventEmitter<FilterRule[]>()
@Output()
reset = new EventEmitter()
@Input()
rulesModified: boolean = false rulesModified: boolean = false
private checkIfRulesHaveChanged() {
let modified = false
if (this._unmodifiedFilterRules.length != this._filterRules.length) {
modified = true
} else {
modified = this._unmodifiedFilterRules.some(rule => {
return (this._filterRules.find(fri => fri.rule_type == rule.rule_type && fri.value == rule.value) == undefined)
})
if (!modified) {
// only check other direction if we havent already determined is modified
modified = this._filterRules.some(rule => {
this._unmodifiedFilterRules.find(fr => fr.rule_type == rule.rule_type && fr.value == rule.value) == undefined
})
}
}
this.rulesModified = modified
}
updateRules() { updateRules() {
this.filterRulesChange.next(this.filterRules) this.filterRulesChange.next(this.filterRules)
} }
@@ -223,8 +290,12 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
distinctUntilChanged() distinctUntilChanged()
).subscribe(text => { ).subscribe(text => {
this._textFilter = text this._textFilter = text
this.documentService.searchQuery = text
this.updateRules() this.updateRules()
}) })
if (this._textFilter) this.documentService.searchQuery = this._textFilter
} }
ngOnDestroy() { ngOnDestroy() {
@@ -232,7 +303,9 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
} }
resetSelected() { resetSelected() {
this.reset.next() this.textFilterTarget = TEXT_FILTER_TARGET_TITLE_CONTENT
this.filterRules = this._unmodifiedFilterRules
this.updateRules()
} }
toggleTag(tagId: number) { toggleTag(tagId: number) {
@@ -260,7 +333,11 @@ export class FilterEditorComponent implements OnInit, OnDestroy {
} }
changeTextFilterTarget(target) { changeTextFilterTarget(target) {
if (this.textFilterTarget == TEXT_FILTER_TARGET_FULLTEXT_MORELIKE && target != TEXT_FILTER_TARGET_FULLTEXT_MORELIKE) {
this._textFilter = ""
}
this.textFilterTarget = target this.textFilterTarget = target
this.textFilterInput.nativeElement.focus()
this.updateRules() this.updateRules()
} }
} }

View File

@@ -11,7 +11,7 @@
<div [ngbNavOutlet]="nav" class="mt-2"></div> <div [ngbNavOutlet]="nav" class="mt-2"></div>
<div class="bg-dark p-3 mb-3 text-light text-monospace log-container"> <div class="bg-dark p-3 text-light text-monospace log-container" #logContainer>
<p <p
class="m-0 p-0 log-entry-{{getLogLevel(log)}}" class="m-0 p-0 log-entry-{{getLogLevel(log)}}"
*ngFor="let log of logs">{{log}}</p> *ngFor="let log of logs">{{log}}</p>

View File

@@ -17,7 +17,7 @@
.log-container { .log-container {
overflow-y: scroll; overflow-y: scroll;
height: calc(100vh - 190px); height: calc(100vh - 200px);
top: 70px; top: 70px;
p { p {

View File

@@ -1,4 +1,4 @@
import { Component, ElementRef, OnInit, ViewChild } from '@angular/core'; import { Component, ElementRef, OnInit, AfterViewChecked, ViewChild } from '@angular/core';
import { LogService } from 'src/app/services/rest/log.service'; import { LogService } from 'src/app/services/rest/log.service';
@Component({ @Component({
@@ -6,7 +6,7 @@ import { LogService } from 'src/app/services/rest/log.service';
templateUrl: './logs.component.html', templateUrl: './logs.component.html',
styleUrls: ['./logs.component.scss'] styleUrls: ['./logs.component.scss']
}) })
export class LogsComponent implements OnInit { export class LogsComponent implements OnInit, AfterViewChecked {
constructor(private logService: LogService) { } constructor(private logService: LogService) { }
@@ -16,6 +16,8 @@ export class LogsComponent implements OnInit {
activeLog: string activeLog: string
@ViewChild('logContainer') logContainer: ElementRef
ngOnInit(): void { ngOnInit(): void {
this.logService.list().subscribe(result => { this.logService.list().subscribe(result => {
this.logFiles = result this.logFiles = result
@@ -26,6 +28,10 @@ export class LogsComponent implements OnInit {
}) })
} }
ngAfterViewChecked() {
this.scrollToBottom();
}
reloadLogs() { reloadLogs() {
this.logService.get(this.activeLog).subscribe(result => { this.logService.get(this.activeLog).subscribe(result => {
this.logs = result this.logs = result
@@ -48,4 +54,12 @@ export class LogsComponent implements OnInit {
} }
} }
scrollToBottom(): void {
this.logContainer?.nativeElement.scroll({
top: this.logContainer.nativeElement.scrollHeight,
left: 0,
behavior: 'auto'
});
}
} }

View File

@@ -1,3 +0,0 @@
... <span *ngFor="let fragment of highlights">
<span *ngFor="let token of fragment" [class.match]="token.highlight">{{token.text}}</span> ...
</span>

View File

@@ -1,4 +0,0 @@
.match {
color: black;
background-color: rgb(255, 211, 66);
}

View File

@@ -1,25 +0,0 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { ResultHighlightComponent } from './result-highlight.component';
describe('ResultHighlightComponent', () => {
let component: ResultHighlightComponent;
let fixture: ComponentFixture<ResultHighlightComponent>;
beforeEach(async () => {
await TestBed.configureTestingModule({
declarations: [ ResultHighlightComponent ]
})
.compileComponents();
});
beforeEach(() => {
fixture = TestBed.createComponent(ResultHighlightComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@@ -1,19 +0,0 @@
import { Component, Input, OnInit } from '@angular/core';
import { SearchHitHighlight } from 'src/app/data/search-result';
@Component({
selector: 'app-result-highlight',
templateUrl: './result-highlight.component.html',
styleUrls: ['./result-highlight.component.scss']
})
export class ResultHighlightComponent implements OnInit {
constructor() { }
@Input()
highlights: SearchHitHighlight[][]
ngOnInit(): void {
}
}

View File

@@ -1,26 +0,0 @@
<app-page-header i18n-title title="Search results">
</app-page-header>
<div *ngIf="errorMessage" class="alert alert-danger" i18n>Invalid search query: {{errorMessage}}</div>
<p *ngIf="more_like" i18n>Showing documents similar to <a routerLink="/documents/{{more_like}}">{{more_like_doc?.original_file_name}}</a></p>
<p *ngIf="query">
<ng-container i18n>Search query: <i>{{query}}</i></ng-container>
<ng-container *ngIf="correctedQuery">
- <ng-container i18n>Did you mean "<a [routerLink]="" (click)="searchCorrectedQuery()">{{correctedQuery}}</a>"?</ng-container>
</ng-container>
</p>
<div *ngIf="!errorMessage" [class.result-content-searching]="searching" infiniteScroll (scrolled)="onScroll()">
<p i18n>{resultCount, plural, =0 {No results} =1 {One result} other {{{resultCount}} results}}</p>
<ng-container *ngFor="let result of results">
<app-document-card-large *ngIf="result.document"
[document]="result.document"
[details]="result.highlights"
[searchScore]="result.score / maxScore"
[moreLikeThis]="true">
</app-document-card-large>
</ng-container>
</div>

View File

@@ -1,15 +0,0 @@
.result-content {
color: darkgray;
}
.doc-img {
object-fit: cover;
object-position: top;
height: 100%;
position: absolute;
}
.result-content-searching {
opacity: 0.3;
}

View File

@@ -1,95 +0,0 @@
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { PaperlessDocument } from 'src/app/data/paperless-document';
import { PaperlessDocumentType } from 'src/app/data/paperless-document-type';
import { SearchHit } from 'src/app/data/search-result';
import { DocumentService } from 'src/app/services/rest/document.service';
import { SearchService } from 'src/app/services/rest/search.service';
@Component({
selector: 'app-search',
templateUrl: './search.component.html',
styleUrls: ['./search.component.scss']
})
export class SearchComponent implements OnInit {
results: SearchHit[] = []
query: string = ""
more_like: number
more_like_doc: PaperlessDocument
searching = false
currentPage = 1
pageCount = 1
resultCount
correctedQuery: string = null
errorMessage: string
get maxScore() {
return this.results?.length > 0 ? this.results[0].score : 100
}
constructor(private searchService: SearchService, private route: ActivatedRoute, private router: Router, private documentService: DocumentService) { }
ngOnInit(): void {
this.route.queryParamMap.subscribe(paramMap => {
window.scrollTo(0, 0)
this.query = paramMap.get('query')
this.more_like = paramMap.has('more_like') ? +paramMap.get('more_like') : null
if (this.more_like) {
this.documentService.get(this.more_like).subscribe(r => {
this.more_like_doc = r
})
} else {
this.more_like_doc = null
}
this.searching = true
this.currentPage = 1
this.loadPage()
})
}
searchCorrectedQuery() {
this.router.navigate(["search"], {queryParams: {query: this.correctedQuery, more_like: this.more_like}})
}
loadPage(append: boolean = false) {
this.errorMessage = null
this.correctedQuery = null
this.searchService.search(this.query, this.currentPage, this.more_like).subscribe(result => {
if (append) {
this.results.push(...result.results)
} else {
this.results = result.results
}
this.pageCount = result.page_count
this.searching = false
this.resultCount = result.count
this.correctedQuery = result.corrected_query
}, error => {
this.searching = false
this.resultCount = 1
this.pageCount = 1
this.results = []
this.errorMessage = error.error
})
}
onScroll() {
if (this.currentPage < this.pageCount) {
this.currentPage += 1
this.loadPage(true)
}
}
}

View File

@@ -22,6 +22,9 @@ export const FILTER_ASN_ISNULL = 18
export const FILTER_TITLE_CONTENT = 19 export const FILTER_TITLE_CONTENT = 19
export const FILTER_FULLTEXT_QUERY = 20
export const FILTER_FULLTEXT_MORELIKE = 21
export const FILTER_RULE_TYPES: FilterRuleType[] = [ export const FILTER_RULE_TYPES: FilterRuleType[] = [
{id: FILTER_TITLE, filtervar: "title__icontains", datatype: "string", multi: false, default: ""}, {id: FILTER_TITLE, filtervar: "title__icontains", datatype: "string", multi: false, default: ""},
@@ -51,7 +54,11 @@ export const FILTER_RULE_TYPES: FilterRuleType[] = [
{id: FILTER_MODIFIED_AFTER, filtervar: "modified__date__gt", datatype: "date", multi: false}, {id: FILTER_MODIFIED_AFTER, filtervar: "modified__date__gt", datatype: "date", multi: false},
{id: FILTER_ASN_ISNULL, filtervar: "archive_serial_number__isnull", datatype: "boolean", multi: false}, {id: FILTER_ASN_ISNULL, filtervar: "archive_serial_number__isnull", datatype: "boolean", multi: false},
{id: FILTER_TITLE_CONTENT, filtervar: "title_content", datatype: "string", multi: false} {id: FILTER_TITLE_CONTENT, filtervar: "title_content", datatype: "string", multi: false},
{id: FILTER_FULLTEXT_QUERY, filtervar: "query", datatype: "string", multi: false},
{id: FILTER_FULLTEXT_MORELIKE, filtervar: "more_like_id", datatype: "number", multi: false},
] ]
export interface FilterRuleType { export interface FilterRuleType {

View File

@@ -4,6 +4,15 @@ import { PaperlessTag } from './paperless-tag'
import { PaperlessDocumentType } from './paperless-document-type' import { PaperlessDocumentType } from './paperless-document-type'
import { Observable } from 'rxjs' import { Observable } from 'rxjs'
export interface SearchHit {
score?: number
rank?: number
highlights?: string
}
export interface PaperlessDocument extends ObjectWithId { export interface PaperlessDocument extends ObjectWithId {
correspondent$?: Observable<PaperlessCorrespondent> correspondent$?: Observable<PaperlessCorrespondent>
@@ -40,4 +49,6 @@ export interface PaperlessDocument extends ObjectWithId {
archive_serial_number?: number archive_serial_number?: number
__search_hit__?: SearchHit
} }

View File

@@ -1,29 +0,0 @@
import { PaperlessDocument } from './paperless-document'
export class SearchHitHighlight {
text?: string
term?: number
}
export interface SearchHit {
id?: number
title?: string
score?: number
rank?: number
highlights?: SearchHitHighlight[][]
document?: PaperlessDocument
}
export interface SearchResult {
count?: number
page?: number
page_count?: number
corrected_query?: string
results?: SearchHit[]
}

View File

@@ -1,7 +1,8 @@
import { Injectable } from '@angular/core'; import { Injectable } from '@angular/core';
import { Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { cloneFilterRules, FilterRule } from '../data/filter-rule'; import { cloneFilterRules, FilterRule } from '../data/filter-rule';
import { FILTER_FULLTEXT_MORELIKE, FILTER_FULLTEXT_QUERY } from '../data/filter-rule-type';
import { PaperlessDocument } from '../data/paperless-document'; import { PaperlessDocument } from '../data/paperless-document';
import { PaperlessSavedView } from '../data/paperless-saved-view'; import { PaperlessSavedView } from '../data/paperless-saved-view';
import { DOCUMENT_LIST_SERVICE } from '../data/storage-keys'; import { DOCUMENT_LIST_SERVICE } from '../data/storage-keys';
@@ -38,6 +39,7 @@ interface ListViewState {
export class DocumentListViewService { export class DocumentListViewService {
isReloading: boolean = false isReloading: boolean = false
error: string = null
rangeSelectionAnchorIndex: number rangeSelectionAnchorIndex: number
lastRangeSelectionToIndex: number lastRangeSelectionToIndex: number
@@ -101,6 +103,7 @@ export class DocumentListViewService {
reload(onFinish?) { reload(onFinish?) {
this.isReloading = true this.isReloading = true
this.error = null
let activeListViewState = this.activeListViewState let activeListViewState = this.activeListViewState
this.documentService.listFiltered( this.documentService.listFiltered(
@@ -124,12 +127,17 @@ export class DocumentListViewService {
// this happens when applying a filter: the current page might not be available anymore due to the reduced result set. // this happens when applying a filter: the current page might not be available anymore due to the reduced result set.
activeListViewState.currentPage = 1 activeListViewState.currentPage = 1
this.reload() this.reload()
} else {
this.error = error.error
} }
}) })
} }
set filterRules(filterRules: FilterRule[]) { set filterRules(filterRules: FilterRule[]) {
this.activeListViewState.filterRules = filterRules this.activeListViewState.filterRules = filterRules
if (filterRules.find(r => (r.rule_type == FILTER_FULLTEXT_QUERY || r.rule_type == FILTER_FULLTEXT_MORELIKE))) {
this.activeListViewState.currentPage = 1
}
this.reload() this.reload()
this.reduceSelectionToFilter() this.reduceSelectionToFilter()
this.saveDocumentListView() this.saveDocumentListView()
@@ -197,7 +205,7 @@ export class DocumentListViewService {
sortField: this.activeListViewState.sortField, sortField: this.activeListViewState.sortField,
sortReverse: this.activeListViewState.sortReverse sortReverse: this.activeListViewState.sortReverse
} }
sessionStorage.setItem(DOCUMENT_LIST_SERVICE.CURRENT_VIEW_CONFIG, JSON.stringify(savedState)) localStorage.setItem(DOCUMENT_LIST_SERVICE.CURRENT_VIEW_CONFIG, JSON.stringify(savedState))
} }
} }
@@ -207,8 +215,12 @@ export class DocumentListViewService {
this.activeListViewState.currentPage = 1 this.activeListViewState.currentPage = 1
this.reduceSelectionToFilter() this.reduceSelectionToFilter()
this.saveDocumentListView() this.saveDocumentListView()
if (this.router.url == "/documents") {
this.reload()
} else {
this.router.navigate(["documents"]) this.router.navigate(["documents"])
} }
}
getLastPage(): number { getLastPage(): number {
return Math.ceil(this.collectionSize / this.currentPageSize) return Math.ceil(this.collectionSize / this.currentPageSize)
@@ -317,8 +329,8 @@ export class DocumentListViewService {
return this.documents.map(d => d.id).indexOf(documentID) return this.documents.map(d => d.id).indexOf(documentID)
} }
constructor(private documentService: DocumentService, private settings: SettingsService, private router: Router) { constructor(private documentService: DocumentService, private settings: SettingsService, private router: Router, private route: ActivatedRoute) {
let documentListViewConfigJson = sessionStorage.getItem(DOCUMENT_LIST_SERVICE.CURRENT_VIEW_CONFIG) let documentListViewConfigJson = localStorage.getItem(DOCUMENT_LIST_SERVICE.CURRENT_VIEW_CONFIG)
if (documentListViewConfigJson) { if (documentListViewConfigJson) {
try { try {
let savedState: ListViewState = JSON.parse(documentListViewConfigJson) let savedState: ListViewState = JSON.parse(documentListViewConfigJson)
@@ -332,7 +344,7 @@ export class DocumentListViewService {
let newState = Object.assign(this.defaultListViewState(), savedState) let newState = Object.assign(this.defaultListViewState(), savedState)
this.listViewStates.set(null, newState) this.listViewStates.set(null, newState)
} catch (e) { } catch (e) {
sessionStorage.removeItem(DOCUMENT_LIST_SERVICE.CURRENT_VIEW_CONFIG) localStorage.removeItem(DOCUMENT_LIST_SERVICE.CURRENT_VIEW_CONFIG)
} }
} }
} }

View File

@@ -39,6 +39,8 @@ export interface SelectionData {
}) })
export class DocumentService extends AbstractPaperlessService<PaperlessDocument> { export class DocumentService extends AbstractPaperlessService<PaperlessDocument> {
private _searchQuery: string
constructor(http: HttpClient, private correspondentService: CorrespondentService, private documentTypeService: DocumentTypeService, private tagService: TagService) { constructor(http: HttpClient, private correspondentService: CorrespondentService, private documentTypeService: DocumentTypeService, private tagService: TagService) {
super(http, 'documents') super(http, 'documents')
} }
@@ -92,6 +94,7 @@ export class DocumentService extends AbstractPaperlessService<PaperlessDocument>
getPreviewUrl(id: number, original: boolean = false): string { getPreviewUrl(id: number, original: boolean = false): string {
let url = this.getResourceUrl(id, 'preview') let url = this.getResourceUrl(id, 'preview')
if (this._searchQuery) url += `#search="${this._searchQuery}"`
if (original) { if (original) {
url += "?original=true" url += "?original=true"
} }
@@ -138,4 +141,8 @@ export class DocumentService extends AbstractPaperlessService<PaperlessDocument>
return this.http.post(this.getResourceUrl(null, 'bulk_download'), {"documents": ids, "content": content}, { responseType: 'blob' }) return this.http.post(this.getResourceUrl(null, 'bulk_download'), {"documents": ids, "content": content}, { responseType: 'blob' })
} }
public set searchQuery(query: string) {
this._searchQuery = query
}
} }

View File

@@ -2,8 +2,6 @@ import { HttpClient, HttpParams } from '@angular/common/http';
import { Injectable } from '@angular/core'; import { Injectable } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { PaperlessDocument } from 'src/app/data/paperless-document';
import { SearchResult } from 'src/app/data/search-result';
import { environment } from 'src/environments/environment'; import { environment } from 'src/environments/environment';
import { DocumentService } from './document.service'; import { DocumentService } from './document.service';
@@ -13,30 +11,7 @@ import { DocumentService } from './document.service';
}) })
export class SearchService { export class SearchService {
constructor(private http: HttpClient, private documentService: DocumentService) { } constructor(private http: HttpClient) { }
search(query: string, page?: number, more_like?: number): Observable<SearchResult> {
let httpParams = new HttpParams()
if (query) {
httpParams = httpParams.set('query', query)
}
if (page) {
httpParams = httpParams.set('page', page.toString())
}
if (more_like) {
httpParams = httpParams.set('more_like', more_like.toString())
}
return this.http.get<SearchResult>(`${environment.apiBaseUrl}search/`, {params: httpParams}).pipe(
map(result => {
result.results.forEach(hit => {
if (hit.document) {
this.documentService.addObservablesToDocument(hit.document)
}
})
return result
})
)
}
autocomplete(term: string): Observable<string[]> { autocomplete(term: string): Observable<string[]> {
return this.http.get<string[]>(`${environment.apiBaseUrl}search/autocomplete/`, {params: new HttpParams().set('term', term)}) return this.http.get<string[]>(`${environment.apiBaseUrl}search/autocomplete/`, {params: new HttpParams().set('term', term)})

View File

@@ -92,12 +92,13 @@ export class SettingsService {
{code: "de-de", name: $localize`German`, englishName: "German", dateInputFormat: "dd.mm.yyyy"}, {code: "de-de", name: $localize`German`, englishName: "German", dateInputFormat: "dd.mm.yyyy"},
{code: "nl-nl", name: $localize`Dutch`, englishName: "Dutch", dateInputFormat: "dd-mm-yyyy"}, {code: "nl-nl", name: $localize`Dutch`, englishName: "Dutch", dateInputFormat: "dd-mm-yyyy"},
{code: "fr-fr", name: $localize`French`, englishName: "French", dateInputFormat: "dd/mm/yyyy"}, {code: "fr-fr", name: $localize`French`, englishName: "French", dateInputFormat: "dd/mm/yyyy"},
{code: "pt-pt", name: $localize`Portuguese`, englishName: "Portuguese", dateInputFormat: "dd/mm/yyyy"},
{code: "pt-br", name: $localize`Portuguese (Brazil)`, englishName: "Portuguese (Brazil)", dateInputFormat: "dd/mm/yyyy"}, {code: "pt-br", name: $localize`Portuguese (Brazil)`, englishName: "Portuguese (Brazil)", dateInputFormat: "dd/mm/yyyy"},
{code: "it-it", name: $localize`Italian`, englishName: "Italian", dateInputFormat: "dd/mm/yyyy"}, {code: "it-it", name: $localize`Italian`, englishName: "Italian", dateInputFormat: "dd/mm/yyyy"},
{code: "ro-ro", name: $localize`Romanian`, englishName: "Romanian", dateInputFormat: "dd.mm.yyyy"}, {code: "ro-ro", name: $localize`Romanian`, englishName: "Romanian", dateInputFormat: "dd.mm.yyyy"},
{code: "ru-ru", name: $localize`Russian`, englishName: "Russian", dateInputFormat: "dd.mm.yyyy"}, {code: "ru-ru", name: $localize`Russian`, englishName: "Russian", dateInputFormat: "dd.mm.yyyy"},
{code: "es-es", name: $localize`Spanish`, englishName: "Spanish", dateInputFormat: "dd/mm/yyyy"}, {code: "es-es", name: $localize`Spanish`, englishName: "Spanish", dateInputFormat: "dd/mm/yyyy"},
{code: "pl-pl", name: $localize`Polish`, englishName: "Polish", dateInputFormat: "dd.mm.yyyy"}
] ]
} }

View File

@@ -3,7 +3,7 @@ export const environment = {
apiBaseUrl: "/api/", apiBaseUrl: "/api/",
apiVersion: "2", apiVersion: "2",
appTitle: "Paperless-ng", appTitle: "Paperless-ng",
version: "1.3.1", version: "1.4.2",
webSocketHost: window.location.host, webSocketHost: window.location.host,
webSocketProtocol: (window.location.protocol == "https:" ? "wss:" : "ws:") webSocketProtocol: (window.location.protocol == "https:" ? "wss:" : "ws:")
}; };

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Dokumenty</target> <target state="translated">Dokumenty</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="needs-translation">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target> <target state="needs-translation">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="needs-translation">View "<x id="PH" equiv-text="savedView.name"/>" created successfully.</target> <target state="needs-translation">View "<x id="PH" equiv-text="savedView.name"/>" created successfully.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="needs-translation">ASN</target> <target state="needs-translation">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="needs-translation">Correspondent</target> <target state="needs-translation">Correspondent</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="needs-translation">Title</target> <target state="needs-translation">Title</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="needs-translation">Document type</target> <target state="needs-translation">Document type</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="needs-translation">Created</target> <target state="needs-translation">Created</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="needs-translation">Added</target> <target state="needs-translation">Added</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="needs-translation">Confirm delete</target> <target state="needs-translation">Confirm delete</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="needs-translation">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="needs-translation">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="needs-translation">The files for this document will be deleted permanently. This operation cannot be undone.</target> <target state="needs-translation">The files for this document will be deleted permanently. This operation cannot be undone.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="needs-translation">Delete document</target> <target state="needs-translation">Delete document</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="needs-translation">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="needs-translation">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="needs-translation">Edit document type</target> <target state="needs-translation">Edit document type</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Search results</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="needs-translation">Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="needs-translation">Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="needs-translation">Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="needs-translation">Did you mean "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="needs-translation">{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="needs-translation">Close all</target> <target state="needs-translation">Close all</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="needs-translation">Title</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="needs-translation">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="needs-translation">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="needs-translation">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="needs-translation">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="needs-translation">Without correspondent</target> <target state="needs-translation">Without correspondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="needs-translation">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="needs-translation">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="needs-translation">Without document type</target> <target state="needs-translation">Without document type</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="needs-translation">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="needs-translation">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="needs-translation">Without any tag</target> <target state="needs-translation">Without any tag</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="needs-translation">Title: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">Title: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="needs-translation">Title</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="needs-translation">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="needs-translation">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="needs-translation">Filter tags</target> <target state="needs-translation">Filter tags</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="needs-translation">Filter correspondents</target> <target state="needs-translation">Filter correspondents</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="needs-translation">Filter document types</target> <target state="needs-translation">Filter document types</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="needs-translation">Reset filters</target> <target state="needs-translation">Reset filters</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="needs-translation">View</target> <target state="needs-translation">View</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="needs-translation">Score:</target> <target state="needs-translation">Score:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="needs-translation">Suggestions:</target> <target state="needs-translation">Suggestions:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="needs-translation">Invalid date.</target> <target state="needs-translation">Invalid date.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Francouzština</target> <target state="translated">Francouzština</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="needs-translation">Portuguese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="needs-translation">Portuguese (Brazil)</target> <target state="needs-translation">Portuguese (Brazil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="needs-translation">Italian</target> <target state="needs-translation">Italian</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="needs-translation">Romanian</target> <target state="needs-translation">Romanian</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="needs-translation">Russian</target> <target state="needs-translation">Russian</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="needs-translation">Spanish</target>
</trans-unit> </trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="needs-translation">ISO 8601</target> <target state="needs-translation">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Dokumente</target> <target state="translated">Dokumente</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Ansicht "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" erfolgreich gespeichert.</target> <target state="translated">Ansicht "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" erfolgreich gespeichert.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Ansicht "<x id="PH" equiv-text="savedView.name"/>" erfolgreich erstellt.</target> <target state="translated">Ansicht "<x id="PH" equiv-text="savedView.name"/>" erfolgreich erstellt.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">ASN</target> <target state="translated">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Korrespondent</target> <target state="translated">Korrespondent</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Titel</target> <target state="translated">Titel</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Dokumenttyp</target> <target state="translated">Dokumenttyp</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Ausgestellt</target> <target state="translated">Ausgestellt</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Hinzugefügt</target> <target state="translated">Hinzugefügt</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Löschen bestätigen</target> <target state="translated">Löschen bestätigen</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Möchten Sie das Dokument "<x id="PH" equiv-text="this.document.title"/>" wirklich löschen?</target> <target state="translated">Möchten Sie das Dokument "<x id="PH" equiv-text="this.document.title"/>" wirklich löschen?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Die Dateien dieses Dokuments werden permanent gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.</target> <target state="translated">Die Dateien dieses Dokuments werden permanent gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Dokument löschen</target> <target state="translated">Dokument löschen</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Fehler beim Löschen des Dokuments: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Fehler beim Löschen des Dokuments: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Dokumenttyp bearbeiten</target> <target state="translated">Dokumenttyp bearbeiten</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Suchergebnisse</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Ungültige Suchanfrage: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Zeige ähnliche Dokumente zu <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Suchanfrage: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Meinten Sie "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Keine Ergebnisse} =1 {Ein Ergebnis} other {<x id="INTERPOLATION"/> Ergebnisse}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Alle schließen</target> <target state="translated">Alle schließen</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Titel</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Titel &amp; Inhalt</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Korrespondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Korrespondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Ohne Korrespondent</target> <target state="translated">Ohne Korrespondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Typ: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Typ: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Ohne Dokumenttyp</target> <target state="translated">Ohne Dokumenttyp</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Ohne Tag</target> <target state="translated">Ohne Tag</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Titel: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Titel: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Titel</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Titel &amp; Inhalt</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="translated">Erweiterte Suche</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="translated">Ähnlich zu</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Tags filtern</target> <target state="translated">Tags filtern</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Korrespondenten filtern</target> <target state="translated">Korrespondenten filtern</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Dokumenttypen filtern</target> <target state="translated">Dokumenttypen filtern</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Filter zurücksetzen</target> <target state="translated">Filter zurücksetzen</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Anzeigen</target> <target state="translated">Anzeigen</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Erstellt: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Relevanz:</target> <target state="translated">Relevanz:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Ausgestellt: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="translated">Hinzugefügt: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="translated">Geändert: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Vorschläge:</target> <target state="translated">Vorschläge:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Ungültiges Datum.</target> <target state="translated">Ungültiges Datum.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Dokument mit ASN <x id="INTERPOLATION" equiv-text="{{asn}}"/> wird gesucht</target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Französisch</target> <target state="translated">Französisch</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Portugiesisch</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portugiesisch (Brasilien)</target> <target state="translated">Portugiesisch (Brasilien)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italienisch</target> <target state="translated">Italienisch</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Rumänisch</target> <target state="translated">Rumänisch</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Russisch</target> <target state="translated">Russisch</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="translated">Spanisch</target> <target state="translated">Spanisch</target>
</trans-unit> </trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="translated">Polnisch</target>
</trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documents</target> <target state="translated">Documents</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target> <target state="translated">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">View "<x id="PH" equiv-text="savedView.name"/>" created successfully.</target> <target state="translated">View "<x id="PH" equiv-text="savedView.name"/>" created successfully.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">ASN</target> <target state="translated">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Correspondent</target> <target state="translated">Correspondent</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Title</target> <target state="translated">Title</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Document type</target> <target state="translated">Document type</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Created</target> <target state="translated">Created</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Added</target> <target state="translated">Added</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Confirm delete</target> <target state="translated">Confirm delete</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">The files for this document will be deleted permanently. This operation cannot be undone.</target> <target state="translated">The files for this document will be deleted permanently. This operation cannot be undone.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Delete document</target> <target state="translated">Delete document</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Edit document type</target> <target state="translated">Edit document type</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Search results</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Did you mean "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Close all</target> <target state="translated">Close all</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Title</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Without correspondent</target> <target state="translated">Without correspondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Without document type</target> <target state="translated">Without document type</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Without any tag</target> <target state="translated">Without any tag</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Title: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Title: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Title</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filter tags</target> <target state="translated">Filter tags</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filter correspondents</target> <target state="translated">Filter correspondents</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filter document types</target> <target state="translated">Filter document types</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Reset filters</target> <target state="translated">Reset filters</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">View</target> <target state="translated">View</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Score:</target> <target state="translated">Score:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Suggestions:</target> <target state="translated">Suggestions:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Invalid date.</target> <target state="translated">Invalid date.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">French</target> <target state="translated">French</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Portuguese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portuguese (Brazil)</target> <target state="translated">Portuguese (Brazil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italian</target> <target state="translated">Italian</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Romanian</target> <target state="translated">Romanian</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Russian</target> <target state="translated">Russian</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Spanish</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documentos</target> <target state="translated">Documentos</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Ver "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" guardado satisfactoriamente.</target> <target state="translated">Ver "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" guardado satisfactoriamente.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Ver "<x id="PH" equiv-text="savedView.name"/>" creado satisfactoriamente.</target> <target state="translated">Ver "<x id="PH" equiv-text="savedView.name"/>" creado satisfactoriamente.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">NSA</target> <target state="translated">NSA</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Tipo de documento</target> <target state="translated">Tipo de documento</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Título</target> <target state="translated">Título</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Tipo de documento</target> <target state="translated">Tipo de documento</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Creado</target> <target state="translated">Creado</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Aggregado</target> <target state="translated">Aggregado</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Confirmar borrado</target> <target state="translated">Confirmar borrado</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">¿Estás seguro de querer borrar el documento "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">¿Estás seguro de querer borrar el documento "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Los archivos para este documento serán borrados permanentemente. Esta operación no se puede deshacer.</target> <target state="translated">Los archivos para este documento serán borrados permanentemente. Esta operación no se puede deshacer.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Borrar documento</target> <target state="translated">Borrar documento</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Error borrando el documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Error borrando el documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Editar tipo de documento</target> <target state="translated">Editar tipo de documento</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Resultados de la busqueda</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Cadena de búsqueda no valida: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Mostrando documentos similares a <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Cadena de búsqueda: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">¿Quizás quisiste decir "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Sin resultados} =1 {Un resultado} other {<x id="INTERPOLATION"/> resultados}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Cerrar todos</target> <target state="translated">Cerrar todos</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Título</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Titulo y contenido</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">NSF</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Tipo: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Tipo: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Sin tipo de documento</target> <target state="translated">Sin tipo de documento</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Sin tipo de documento</target> <target state="translated">Sin tipo de documento</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Etiqueta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Etiqueta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Sin ninguna etiqueta</target> <target state="translated">Sin ninguna etiqueta</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Título: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Título: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Título</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Titulo y contenido</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">NSF</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filtrar etiquetas</target> <target state="translated">Filtrar etiquetas</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filtrar tipos de documento</target> <target state="translated">Filtrar tipos de documento</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filtrar tipos de documento</target> <target state="translated">Filtrar tipos de documento</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Quitar filtros</target> <target state="translated">Quitar filtros</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Vista</target> <target state="translated">Vista</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Creado: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Puntuación:</target> <target state="translated">Puntuación:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Sugerencias:</target> <target state="translated">Sugerencias:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Fecha no válida.</target> <target state="translated">Fecha no válida.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Francés</target> <target state="translated">Francés</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="needs-translation">Portuguese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portugués (Brasil)</target> <target state="translated">Portugués (Brasil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italiano</target> <target state="translated">Italiano</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Rumano</target> <target state="translated">Rumano</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Ruso</target> <target state="translated">Ruso</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Español</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documents</target> <target state="translated">Documents</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Vue "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" enregistrée avec succès.</target> <target state="translated">Vue "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" enregistrée avec succès.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Vue "<x id="PH" equiv-text="savedView.name"/>" créée avec succès.</target> <target state="translated">Vue "<x id="PH" equiv-text="savedView.name"/>" créée avec succès.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">NSA</target> <target state="translated">NSA</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Correspondant</target> <target state="translated">Correspondant</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Titre</target> <target state="translated">Titre</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Type de document</target> <target state="translated">Type de document</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Date de création</target> <target state="translated">Date de création</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Date d'ajout</target> <target state="translated">Date d'ajout</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Confirmer la suppression</target> <target state="translated">Confirmer la suppression</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Voulez-vous vraiment supprimer le document "<x id="PH" equiv-text="this.document.title"/>" ?</target> <target state="translated">Voulez-vous vraiment supprimer le document "<x id="PH" equiv-text="this.document.title"/>" ?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Les fichiers liés à ce document seront supprimés définitivement. Cette action est irréversible.</target> <target state="translated">Les fichiers liés à ce document seront supprimés définitivement. Cette action est irréversible.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Supprimer le document</target> <target state="translated">Supprimer le document</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Une erreur s'est produite lors de la suppression du document : <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Une erreur s'est produite lors de la suppression du document : <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Éditer le type de document</target> <target state="translated">Éditer le type de document</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Résultats de la recherche</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Requête de recherche invalide : <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Présentation des documents similaires à <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Requête de recherche : <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Vouliez-vous dire "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>" ?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Aucun résultat} =1 {Un résultat} other {<x id="INTERPOLATION"/> résultats}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Fermer tout</target> <target state="translated">Fermer tout</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Titre</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Titre &amp; contenu</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">NSA</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Correspondant : <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Correspondant : <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Sans correspondant</target> <target state="translated">Sans correspondant</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Type : <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Type : <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Sans type de document</target> <target state="translated">Sans type de document</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Étiquette : <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Étiquette : <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Sans étiquette</target> <target state="translated">Sans étiquette</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Titre : <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Titre : <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">NSA : <x id="PH" equiv-text="rule.value"/></target> <target state="translated">NSA : <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Titre</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Titre &amp; contenu</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">NSA</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="translated">Recherche avancée</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="translated">Plus comme</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filtrer les étiquettes</target> <target state="translated">Filtrer les étiquettes</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filtrer les correspondants</target> <target state="translated">Filtrer les correspondants</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filtrer les types de documents</target> <target state="translated">Filtrer les types de documents</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Réinitialiser les filtres</target> <target state="translated">Réinitialiser les filtres</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Vue</target> <target state="translated">Vue</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Créé le : <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Score :</target> <target state="translated">Score :</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Date de création : <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="translated">Date d'ajout : <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="translated">Date de modification : <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Suggestions : </target> <target state="translated">Suggestions : </target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Date incorrecte.</target> <target state="translated">Date incorrecte.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Recherche de document avec NSA <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Français</target> <target state="translated">Français</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Portugais</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portugais (Brésil)</target> <target state="translated">Portugais (Brésil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italien</target> <target state="translated">Italien</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Roumain</target> <target state="translated">Roumain</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Russe</target> <target state="translated">Russe</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Espagnol</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="translated">Polonais</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Dokumentumok</target> <target state="translated">Dokumentumok</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="needs-translation">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target> <target state="needs-translation">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Nézet "<x id="PH" equiv-text="savedView.name"/>" sikeresen létrehozva.</target> <target state="translated">Nézet "<x id="PH" equiv-text="savedView.name"/>" sikeresen létrehozva.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">ASN</target> <target state="translated">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Partner</target> <target state="translated">Partner</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Cím</target> <target state="translated">Cím</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Dokumentum típus</target> <target state="translated">Dokumentum típus</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Létrehozva</target> <target state="translated">Létrehozva</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Hozzáadva</target> <target state="translated">Hozzáadva</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Törlés megerősítése</target> <target state="translated">Törlés megerősítése</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="needs-translation">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="needs-translation">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">A dokumentumhoz tartozó fájlok véglegesen törlésre kerülnek. Ez a művelet nem visszafordítható.</target> <target state="translated">A dokumentumhoz tartozó fájlok véglegesen törlésre kerülnek. Ez a művelet nem visszafordítható.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Dokumentum törlése</target> <target state="translated">Dokumentum törlése</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="needs-translation">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="needs-translation">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Dokumentum típus szerkesztése</target> <target state="translated">Dokumentum típus szerkesztése</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Találatok</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Érvénytelen keresési kifejezés: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="needs-translation">Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Keresés: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Úgy értetted, hogy "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="needs-translation">{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Összes bezárása</target> <target state="translated">Összes bezárása</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Cím</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="needs-translation">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Partner: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Partner: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="needs-translation">Without correspondent</target> <target state="needs-translation">Without correspondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Típus: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Típus: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="needs-translation">Without document type</target> <target state="needs-translation">Without document type</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Cimke: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Cimke: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="needs-translation">Without any tag</target> <target state="needs-translation">Without any tag</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="needs-translation">Title: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">Title: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Cím</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="needs-translation">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Cimkék szerinti szűrés</target> <target state="translated">Cimkék szerinti szűrés</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Partnerek szerinti szűrés</target> <target state="translated">Partnerek szerinti szűrés</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Dokumentum típus szerinti szűrés</target> <target state="translated">Dokumentum típus szerinti szűrés</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="needs-translation">Reset filters</target> <target state="needs-translation">Reset filters</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Megtekint</target> <target state="translated">Megtekint</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Létrehozva: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Pont:</target> <target state="translated">Pont:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="needs-translation">Suggestions:</target> <target state="needs-translation">Suggestions:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="needs-translation">Invalid date.</target> <target state="needs-translation">Invalid date.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="needs-translation">French</target> <target state="needs-translation">French</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="needs-translation">Portuguese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="needs-translation">Portuguese (Brazil)</target> <target state="needs-translation">Portuguese (Brazil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="needs-translation">Italian</target> <target state="needs-translation">Italian</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="needs-translation">Romanian</target> <target state="needs-translation">Romanian</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="needs-translation">Russian</target> <target state="needs-translation">Russian</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="needs-translation">Spanish</target>
</trans-unit> </trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="needs-translation">ISO 8601</target> <target state="needs-translation">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documenti</target> <target state="translated">Documenti</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">La vista "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" è stata salvata.</target> <target state="translated">La vista "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" è stata salvata.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">La vista "<x id="PH" equiv-text="savedView.name"/>" è stata creata.</target> <target state="translated">La vista "<x id="PH" equiv-text="savedView.name"/>" è stata creata.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">ASN</target> <target state="translated">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Corrispondente</target> <target state="translated">Corrispondente</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Titolo</target> <target state="translated">Titolo</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Tipo di documento</target> <target state="translated">Tipo di documento</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Creato</target> <target state="translated">Creato</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Aggiunto</target> <target state="translated">Aggiunto</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Conferma eliminazione</target> <target state="translated">Conferma eliminazione</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Vuoi eliminare il documento "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Vuoi eliminare il documento "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">I file di questo documento saranno eliminati permanentemente. Questa operazione è irreversibile.</target> <target state="translated">I file di questo documento saranno eliminati permanentemente. Questa operazione è irreversibile.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Elimina documento</target> <target state="translated">Elimina documento</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Errore nell'eliminazione del documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Errore nell'eliminazione del documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -528,7 +528,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.html</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.html</context>
<context context-type="linenumber">21</context> <context context-type="linenumber">21</context>
</context-group> </context-group>
<target state="translated">Corrispondenza</target> <target state="translated">Assegnazione</target>
</trans-unit> </trans-unit>
<trans-unit id="9bcf8d20d23c111eca1431abd2d2ce0de324499c" datatype="html"> <trans-unit id="9bcf8d20d23c111eca1431abd2d2ce0de324499c" datatype="html">
<source>Document count</source> <source>Document count</source>
@@ -928,7 +928,7 @@
<context context-type="sourcefile">src/app/components/manage/correspondent-list/correspondent-list.component.html</context> <context context-type="sourcefile">src/app/components/manage/correspondent-list/correspondent-list.component.html</context>
<context context-type="linenumber">22</context> <context context-type="linenumber">22</context>
</context-group> </context-group>
<target state="translated">Ultrima corrispondenza</target> <target state="translated">Ultima assegnazione</target>
</trans-unit> </trans-unit>
<trans-unit id="1234709746630139322" datatype="html"> <trans-unit id="1234709746630139322" datatype="html">
<source>Confirmation</source> <source>Confirmation</source>
@@ -976,7 +976,7 @@
<context context-type="sourcefile">src/app/components/manage/correspondent-list/correspondent-edit-dialog/correspondent-edit-dialog.component.html</context> <context context-type="sourcefile">src/app/components/manage/correspondent-list/correspondent-edit-dialog/correspondent-edit-dialog.component.html</context>
<context context-type="linenumber">10</context> <context context-type="linenumber">10</context>
</context-group> </context-group>
<target state="translated">Algoritmo di corrispondenza</target> <target state="translated">Algoritmo di assegnazione</target>
</trans-unit> </trans-unit>
<trans-unit id="eab7fc7cf2d663e54de934b779fce4275a303f0f" datatype="html"> <trans-unit id="eab7fc7cf2d663e54de934b779fce4275a303f0f" datatype="html">
<source>Matching pattern</source> <source>Matching pattern</source>
@@ -984,7 +984,7 @@
<context context-type="sourcefile">src/app/components/manage/correspondent-list/correspondent-edit-dialog/correspondent-edit-dialog.component.html</context> <context context-type="sourcefile">src/app/components/manage/correspondent-list/correspondent-edit-dialog/correspondent-edit-dialog.component.html</context>
<context context-type="linenumber">11</context> <context context-type="linenumber">11</context>
</context-group> </context-group>
<target state="translated">Criterio di corrispondenza</target> <target state="translated">Criterio di assegnazione</target>
</trans-unit> </trans-unit>
<trans-unit id="632e529f49cf3d367dfbd15bd055e9b53aef30fb" datatype="html"> <trans-unit id="632e529f49cf3d367dfbd15bd055e9b53aef30fb" datatype="html">
<source>Case insensitive</source> <source>Case insensitive</source>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Modifica tipo di documento</target> <target state="translated">Modifica tipo di documento</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Risultati della ricerca</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Query di ricerca non valida: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Documenti simili a <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Query di ricerca: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Forse intendevi "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Nessun risultato} =1 {Un risultato} other {<x id="INTERPOLATION"/> risultati}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Chiudi tutti</target> <target state="translated">Chiudi tutti</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Titolo</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Titolo &amp; contenuto</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Corrispondente: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Corrispondente: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Senza corrispondente</target> <target state="translated">Senza corrispondente</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Senza tipo di documento</target> <target state="translated">Senza tipo di documento</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Senza alcun tag</target> <target state="translated">Senza alcun tag</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Titolo: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Titolo: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Titolo</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Titolo &amp; contenuto</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="translated">Ricerca avanzata</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="translated">Più come</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filtra tag</target> <target state="translated">Filtra tag</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filtra corrispondenti</target> <target state="translated">Filtra corrispondenti</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filtra tipi di documento</target> <target state="translated">Filtra tipi di documento</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Ripristina filtri</target> <target state="translated">Ripristina filtri</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Mostra</target> <target state="translated">Mostra</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Creato il: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Punteggio:</target> <target state="translated">Punteggio:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Creato il: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="translated">Aggiunto il: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="translated">Modificato il: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Suggerimenti:</target> <target state="translated">Suggerimenti:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Data non valida.</target> <target state="translated">Data non valida.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Cercando documento con asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Francese</target> <target state="translated">Francese</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Portoghese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portoghese (Brasile)</target> <target state="translated">Portoghese (Brasile)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italiano</target> <target state="translated">Italiano</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Rumeno</target> <target state="translated">Rumeno</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Russo</target> <target state="translated">Russo</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Spagnolo</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="translated">Polacco</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>
@@ -2291,7 +2299,7 @@
<context context-type="sourcefile">src/app/data/matching-model.ts</context> <context context-type="sourcefile">src/app/data/matching-model.ts</context>
<context context-type="linenumber">17</context> <context context-type="linenumber">17</context>
</context-group> </context-group>
<target state="translated">Automatico: apprende automaticamente la corrispondenza</target> <target state="translated">Automatico: apprende l'assegnazione automaticamente</target>
</trans-unit> </trans-unit>
</body> </body>
</file> </file>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documenten</target> <target state="translated">Documenten</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" met succes opgeslagen.</target> <target state="translated">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" met succes opgeslagen.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">View "<x id="PH" equiv-text="savedView.name"/>" met succes gemaakt.</target> <target state="translated">View "<x id="PH" equiv-text="savedView.name"/>" met succes gemaakt.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">ASN</target> <target state="translated">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Correspondent</target> <target state="translated">Correspondent</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Titel</target> <target state="translated">Titel</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Documenttype</target> <target state="translated">Documenttype</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Aangemaakt</target> <target state="translated">Aangemaakt</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Toegevoegd</target> <target state="translated">Toegevoegd</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Bevestig het verwijderen</target> <target state="translated">Bevestig het verwijderen</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Wilt u het document echt verwijderen "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Wilt u het document echt verwijderen "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">De bestanden voor dit document worden definitief verwijderd. Deze bewerking kan niet ongedaan worden gemaakt.</target> <target state="translated">De bestanden voor dit document worden definitief verwijderd. Deze bewerking kan niet ongedaan worden gemaakt.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Verwijder document</target> <target state="translated">Verwijder document</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Fout bij het verwijderen van het document: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Fout bij het verwijderen van het document: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -480,7 +480,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.ts</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.ts</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">26</context>
</context-group> </context-group>
<target state="translated">Wil je het etiket echt verwijderen "<x id="PH" equiv-text="object.name"/>"?</target> <target state="translated">Wil je dit label echt verwijderen "<x id="PH" equiv-text="object.name"/>"?</target>
</trans-unit> </trans-unit>
<trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html"> <trans-unit id="cafc87479686947e2590b9f588a88040aeaf660b" datatype="html">
<source>Tags</source> <source>Tags</source>
@@ -488,7 +488,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.html</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.html</context>
<context context-type="linenumber">1</context> <context context-type="linenumber">1</context>
</context-group> </context-group>
<target state="translated">Etiketten</target> <target state="translated">Labels</target>
</trans-unit> </trans-unit>
<trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html"> <trans-unit id="70a67e04629f6d412db0a12d51820b480788d795" datatype="html">
<source>Create</source> <source>Create</source>
@@ -1000,7 +1000,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component.ts</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component.ts</context>
<context context-type="linenumber">22</context> <context context-type="linenumber">22</context>
</context-group> </context-group>
<target state="translated">Nieuw etiket maken</target> <target state="translated">Nieuw label aanmaken</target>
</trans-unit> </trans-unit>
<trans-unit id="5872175735754226507" datatype="html"> <trans-unit id="5872175735754226507" datatype="html">
<source>Edit tag</source> <source>Edit tag</source>
@@ -1016,7 +1016,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component.html</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component.html</context>
<context context-type="linenumber">13</context> <context context-type="linenumber">13</context>
</context-group> </context-group>
<target state="translated">"Postvak in"-etiket</target> <target state="translated">"Postvak in"-label</target>
</trans-unit> </trans-unit>
<trans-unit id="5e2f1a4ea12a1b8606ee3f0548d0ba64bf266077" datatype="html"> <trans-unit id="5e2f1a4ea12a1b8606ee3f0548d0ba64bf266077" datatype="html">
<source>Inbox tags are automatically assigned to all consumed documents.</source> <source>Inbox tags are automatically assigned to all consumed documents.</source>
@@ -1024,7 +1024,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component.html</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-edit-dialog/tag-edit-dialog.component.html</context>
<context context-type="linenumber">13</context> <context context-type="linenumber">13</context>
</context-group> </context-group>
<target state="translated">"Postvak in"-etiketten worden automatisch toegewezen aan alle verwerkte documenten.</target> <target state="translated">"Postvak in"-labels worden automatisch toegewezen aan alle verwerkte documenten.</target>
</trans-unit> </trans-unit>
<trans-unit id="6672809941092516947" datatype="html"> <trans-unit id="6672809941092516947" datatype="html">
<source>Create new document type</source> <source>Create new document type</source>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Documenttype bewerken</target> <target state="translated">Documenttype bewerken</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Zoekresultaten</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Ongeldige zoekopdracht: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Toon documenten die lijken op <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Zoekopdracht: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Bedoelde u "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Geen resultaten} =1 {Eén resultaat} other {<x id="INTERPOLATION"/> resultaten}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Alles sluiten</target> <target state="translated">Alles sluiten</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Titel</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Titel en inhoud</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Zonder correspondent</target> <target state="translated">Zonder correspondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Zonder documenttype</target> <target state="translated">Zonder documenttype</target>
</trans-unit> </trans-unit>
@@ -1247,23 +1175,23 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Etiket: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Label: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
<trans-unit id="6494566478302448576" datatype="html"> <trans-unit id="6494566478302448576" datatype="html">
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Zonder enig etiket</target> <target state="translated">Zonder label</target>
</trans-unit> </trans-unit>
<trans-unit id="6523384805359286307" datatype="html"> <trans-unit id="6523384805359286307" datatype="html">
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Titel: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Titel: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,23 +1199,63 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Titel</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Titel en inhoud</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="translated">Geavanceerd zoeken</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="translated">Meer zoals</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Etiketten filteren</target> <target state="translated">Labels filteren</target>
</trans-unit> </trans-unit>
<trans-unit id="4b089ca12c472cf0b46167bb5afe4b527b301bbc" datatype="html"> <trans-unit id="4b089ca12c472cf0b46167bb5afe4b527b301bbc" datatype="html">
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Correspondenten filteren</target> <target state="translated">Correspondenten filteren</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Documenttypes filteren</target> <target state="translated">Documenttypes filteren</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Filters terug zetten</target> <target state="translated">Filters terug zetten</target>
</trans-unit> </trans-unit>
@@ -1314,7 +1282,7 @@
<context context-type="linenumber">166</context> <context context-type="linenumber">166</context>
</context-group> </context-group>
<note priority="1" from="description">Filter drop down element to filter for documents with no correspondent/type/tag assigned</note> <note priority="1" from="description">Filter drop down element to filter for documents with no correspondent/type/tag assigned</note>
<target state="translated">Niet toegekend</target> <target state="translated">Zonder toewijzing</target>
</trans-unit> </trans-unit>
<trans-unit id="c2d0ac9f528bbd5f53fd34269fde8b59e029621b" datatype="html"> <trans-unit id="c2d0ac9f528bbd5f53fd34269fde8b59e029621b" datatype="html">
<source>Apply</source> <source>Apply</source>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Bekijken</target> <target state="translated">Bekijken</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Aangemaakt op: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1410,16 +1370,40 @@
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">24</context> <context context-type="linenumber">24</context>
</context-group> </context-group>
<target state="translated">Op etiket filteren</target> <target state="translated">Op label filteren</target>
</trans-unit> </trans-unit>
<trans-unit id="9c5fdf21ec2cc7baa6f062f2dc417af45c8dbe60" datatype="html"> <trans-unit id="9c5fdf21ec2cc7baa6f062f2dc417af45c8dbe60" datatype="html">
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Score:</target> <target state="translated">Score:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Aangemaakt op: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="translated">Toegevoegd op: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="translated">Gewijzigd op: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1469,7 +1453,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">127</context> <context context-type="linenumber">127</context>
</context-group> </context-group>
<target state="translated">Bevestig toewijzen van etiketten</target> <target state="translated">Bevestig toewijzen van labels</target>
</trans-unit> </trans-unit>
<trans-unit id="6619516195038467207" datatype="html"> <trans-unit id="6619516195038467207" datatype="html">
<source>This operation will add the tag &quot;<x id="PH" equiv-text="tag.name"/>&quot; to <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source> <source>This operation will add the tag &quot;<x id="PH" equiv-text="tag.name"/>&quot; to <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source>
@@ -1477,7 +1461,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">130</context> <context context-type="linenumber">130</context>
</context-group> </context-group>
<target state="translated">Het etiket "<x id="PH" equiv-text="tag.name"/>" zal aan <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en) worden toegewezen.</target> <target state="translated">Het label "<x id="PH" equiv-text="tag.name"/>" zal aan <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en) worden toegewezen.</target>
</trans-unit> </trans-unit>
<trans-unit id="1894412783609570695" datatype="html"> <trans-unit id="1894412783609570695" datatype="html">
<source>This operation will add the tags <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> to <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source> <source>This operation will add the tags <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> to <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source>
@@ -1485,7 +1469,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">132</context> <context context-type="linenumber">132</context>
</context-group> </context-group>
<target state="translated">De etiketten <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> zullen aan <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en) worden toegewezen.</target> <target state="translated">De labels <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> zullen aan <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en) worden toegewezen.</target>
</trans-unit> </trans-unit>
<trans-unit id="7181166515756808573" datatype="html"> <trans-unit id="7181166515756808573" datatype="html">
<source>This operation will remove the tag &quot;<x id="PH" equiv-text="tag.name"/>&quot; from <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source> <source>This operation will remove the tag &quot;<x id="PH" equiv-text="tag.name"/>&quot; from <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source>
@@ -1493,7 +1477,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Het etiket "<x id="PH" equiv-text="tag.name"/>" zal verwijderd worden van <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en).</target> <target state="translated">Het label "<x id="PH" equiv-text="tag.name"/>" zal verwijderd worden van <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en).</target>
</trans-unit> </trans-unit>
<trans-unit id="3819792277998068944" datatype="html"> <trans-unit id="3819792277998068944" datatype="html">
<source>This operation will remove the tags <x id="PH" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> from <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source> <source>This operation will remove the tags <x id="PH" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> from <x id="PH_1" equiv-text="this.list.selected.size"/> selected document(s).</source>
@@ -1501,7 +1485,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">137</context> <context context-type="linenumber">137</context>
</context-group> </context-group>
<target state="translated">De etiketten <x id="PH" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> zullen verwijderd worden van <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en).</target> <target state="translated">De labels <x id="PH" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> zullen verwijderd worden van <x id="PH_1" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en).</target>
</trans-unit> </trans-unit>
<trans-unit id="2739066218579571288" datatype="html"> <trans-unit id="2739066218579571288" datatype="html">
<source>This operation will add the tags <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> and remove the tags <x id="PH_1" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> on <x id="PH_2" equiv-text="this.list.selected.size"/> selected document(s).</source> <source>This operation will add the tags <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> and remove the tags <x id="PH_1" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> on <x id="PH_2" equiv-text="this.list.selected.size"/> selected document(s).</source>
@@ -1509,7 +1493,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">139</context> <context context-type="linenumber">139</context>
</context-group> </context-group>
<target state="translated">De etiketten <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> zullen toegevoegd worden aan, en de etiketten <x id="PH_1" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> zullen verwijderd worden van <x id="PH_2" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en).</target> <target state="translated">De labels <x id="PH" equiv-text="this._localizeList(changedTags.itemsToAdd)"/> zullen toegevoegd worden aan, en de labels <x id="PH_1" equiv-text="this._localizeList(changedTags.itemsToRemove)"/> zullen verwijderd worden van <x id="PH_2" equiv-text="this.list.selected.size"/> geselecteerd(e) document(en).</target>
</trans-unit> </trans-unit>
<trans-unit id="2996713129519325161" datatype="html"> <trans-unit id="2996713129519325161" datatype="html">
<source>Confirm correspondent assignment</source> <source>Confirm correspondent assignment</source>
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Suggesties:</target> <target state="translated">Suggesties:</target>
</trans-unit> </trans-unit>
@@ -1645,7 +1629,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.html</context>
<context context-type="linenumber">3</context> <context context-type="linenumber">3</context>
</context-group> </context-group>
<target state="translated">Toon alles</target> <target state="translated">Alles weergeven</target>
</trans-unit> </trans-unit>
<trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html"> <trans-unit id="61e0f26d843eec0b33ff475e111b0c2f7a80b835" datatype="html">
<source>Statistics</source> <source>Statistics</source>
@@ -1685,7 +1669,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.ts</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">35</context>
</context-group> </context-group>
<target state="translated">Gefaald: <x id="PH" equiv-text="countFailed"/></target> <target state="translated">Mislukt: <x id="PH" equiv-text="countFailed"/></target>
</trans-unit> </trans-unit>
<trans-unit id="534116346205124059" datatype="html"> <trans-unit id="534116346205124059" datatype="html">
<source>Added: <x id="PH" equiv-text="countSuccess"/></source> <source>Added: <x id="PH" equiv-text="countSuccess"/></source>
@@ -1709,7 +1693,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.ts</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.ts</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Bezig met opladen...</target> <target state="translated">Bezig met uploaden...</target>
</trans-unit> </trans-unit>
<trans-unit id="7446520539098045935" datatype="html"> <trans-unit id="7446520539098045935" datatype="html">
<source>Upload complete, waiting...</source> <source>Upload complete, waiting...</source>
@@ -1717,7 +1701,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.ts</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.ts</context>
<context context-type="linenumber">126</context> <context context-type="linenumber">126</context>
</context-group> </context-group>
<target state="translated">Upload voltooid, klaar voor meer...</target> <target state="translated">Upload voltooid, wachten op verwerking...</target>
</trans-unit> </trans-unit>
<trans-unit id="1405142710727603568" datatype="html"> <trans-unit id="1405142710727603568" datatype="html">
<source>HTTP error: <x id="PH" equiv-text="error.status"/> <x id="PH_1" equiv-text="error.statusText"/></source> <source>HTTP error: <x id="PH" equiv-text="error.status"/> <x id="PH_1" equiv-text="error.statusText"/></source>
@@ -1733,7 +1717,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.html</context>
<context context-type="linenumber">1</context> <context context-type="linenumber">1</context>
</context-group> </context-group>
<target state="translated">Nieuwe documenten opladen</target> <target state="translated">Nieuwe documenten uploaden</target>
</trans-unit> </trans-unit>
<trans-unit id="52d5d56b6667ba3f7c759cbc0d4c39d34a99701e" datatype="html"> <trans-unit id="52d5d56b6667ba3f7c759cbc0d4c39d34a99701e" datatype="html">
<source>Drop documents here or</source> <source>Drop documents here or</source>
@@ -1799,7 +1783,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context>
<context context-type="linenumber">6,7</context> <context context-type="linenumber">6,7</context>
</context-group> </context-group>
<target state="translated">Je kunt documenten uploaden door bestanden in het oplaadvak rechts te slepen of door ze in de map te kopiëren die geconfigureerd werd als consumptiemap. Ze zullen vervolgens beginnen verschijnen in de lijst met documenten. Nadat je metadata hebt toegevoegd aan je documenten, kun je de filters in Paperless gebruiken om eigen views te maken (zoals 'Recent toegevoegd', 'Te bekijken'). Deze views zullen hier verschijnen in plaats van dit bericht.</target> <target state="translated">Je kunt documenten uploaden door bestanden in het upload vak rechts te slepen of door ze in de map te kopiëren die geconfigureerd werd als consumptiemap. Ze zullen vervolgens verschijnen in de lijst met documenten. Nadat je metadata hebt toegevoegd aan je documenten, kun je de filters in Paperless gebruiken om eigen views te maken (zoals 'Recent toegevoegd', 'Te bekijken'). Deze views zullen hier verschijnen in plaats van dit bericht.</target>
</trans-unit> </trans-unit>
<trans-unit id="cf5f85690feaba6e29343f9881e57a6c0ea6e82b" datatype="html"> <trans-unit id="cf5f85690feaba6e29343f9881e57a6c0ea6e82b" datatype="html">
<source>Paperless offers some more features that try to make your life easier:</source> <source>Paperless offers some more features that try to make your life easier:</source>
@@ -1815,7 +1799,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context>
<context context-type="linenumber">10</context> <context context-type="linenumber">10</context>
</context-group> </context-group>
<target state="translated">Eenmaal je documenten hebt toegevoegd en metadata hebt toegewezen, kan Paperless automatisch die metadata aan nieuwe documenten toewijzen.</target> <target state="translated">Zodra je documenten hebt toegevoegd en metadata hebt toegewezen, kan Paperless die metadata automatisch aan nieuwe documenten toewijzen.</target>
</trans-unit> </trans-unit>
<trans-unit id="9dca488928c0b7af46c3866f86a6c2c8548399aa" datatype="html"> <trans-unit id="9dca488928c0b7af46c3866f86a6c2c8548399aa" datatype="html">
<source>You can configure paperless to read your mails and add documents from attached files.</source> <source>You can configure paperless to read your mails and add documents from attached files.</source>
@@ -1831,7 +1815,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context>
<context context-type="linenumber">13</context> <context context-type="linenumber">13</context>
</context-group> </context-group>
<target state="translated">Lees de documentatie na om deze functies te ontdekken. Het hoofdstuk over basisgebruik biedt ook inzichten over het gebruik van Paperless in het algemeen.</target> <target state="translated">Raadpleeg de documentatie over het gebruik van deze functies. De sectie over basisgebruik bevat ook enige informatie over het gebruik van Paperless in het algemeen.</target>
</trans-unit> </trans-unit>
<trans-unit id="218403386307979629" datatype="html"> <trans-unit id="218403386307979629" datatype="html">
<source>Metadata</source> <source>Metadata</source>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Ongeldige datum.</target> <target state="translated">Ongeldige datum.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Document zoeken met asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Frans</target> <target state="translated">Frans</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Portugees</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portugees (Brazilië)</target> <target state="translated">Portugees (Brazilië)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italiaans</target> <target state="translated">Italiaans</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Roemeens</target> <target state="translated">Roemeens</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Russisch</target> <target state="translated">Russisch</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Spaans</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="translated">Pools</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>
@@ -2187,7 +2195,7 @@
<context context-type="sourcefile">src/app/components/manage/generic-list/generic-list.component.ts</context> <context context-type="sourcefile">src/app/components/manage/generic-list/generic-list.component.ts</context>
<context context-type="linenumber">104</context> <context context-type="linenumber">104</context>
</context-group> </context-group>
<target state="translated">Geassocieerde documenten zullen niet verwijderd worden.</target> <target state="translated">Gekoppelde documenten zullen niet worden verwijderd.</target>
</trans-unit> </trans-unit>
<trans-unit id="7022070615528435141" datatype="html"> <trans-unit id="7022070615528435141" datatype="html">
<source>Delete</source> <source>Delete</source>
@@ -2219,7 +2227,7 @@
<context context-type="sourcefile">src/app/data/matching-model.ts</context> <context context-type="sourcefile">src/app/data/matching-model.ts</context>
<context context-type="linenumber">12</context> <context context-type="linenumber">12</context>
</context-group> </context-group>
<target state="translated">Eender welk: Documenten die eender welk van deze woorden bevatten (gescheiden door spaties)</target> <target state="translated">Een of meer: Documenten die een of meer van deze woorden bevatten (gescheiden door spaties)</target>
</trans-unit> </trans-unit>
<trans-unit id="700315718208181326" datatype="html"> <trans-unit id="700315718208181326" datatype="html">
<source>All words</source> <source>All words</source>

File diff suppressed because it is too large Load Diff

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documentos</target> <target state="translated">Documentos</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Visualização "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" salva com sucesso.</target> <target state="translated">Visualização "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" salva com sucesso.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Visualização "<x id="PH" equiv-text="savedView.name"/>" criada com sucesso.</target> <target state="translated">Visualização "<x id="PH" equiv-text="savedView.name"/>" criada com sucesso.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">NSA</target> <target state="translated">NSA</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Correspondente</target> <target state="translated">Correspondente</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Título</target> <target state="translated">Título</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Tipo de Documento</target> <target state="translated">Tipo de Documento</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Criado</target> <target state="translated">Criado</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Adicionado</target> <target state="translated">Adicionado</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Confirmar exclusão</target> <target state="translated">Confirmar exclusão</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Você realmente deseja excluir o documento "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Você realmente deseja excluir o documento "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Os arquivos desse documento serão excluídos permanentemente. Essa operação não pode ser revertida.</target> <target state="translated">Os arquivos desse documento serão excluídos permanentemente. Essa operação não pode ser revertida.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Excluir documento</target> <target state="translated">Excluir documento</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Erro ao excluir documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Erro ao excluir documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Editar tipo de documento</target> <target state="translated">Editar tipo de documento</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Resultados da busca</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Termo de pesquisa inválido: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Exibindo documentos similares a <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Termo de pesquisa: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Você quis dizer "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Sem resultados} =1 {Um resultado} other {<x id="INTERPOLATION"/> resultados}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Fechar todos</target> <target state="translated">Fechar todos</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Título</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Título &amp; conteúdo</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">NSA</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Correspondente: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Correspondente: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Sem correspondente</target> <target state="translated">Sem correspondente</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Sem tipo de documento</target> <target state="translated">Sem tipo de documento</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Etiqueta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Etiqueta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Sem etiquetas</target> <target state="translated">Sem etiquetas</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Título: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Título: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Título</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Título &amp; conteúdo</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">NSA</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filtrar etiquetas</target> <target state="translated">Filtrar etiquetas</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filtrar correspondentes</target> <target state="translated">Filtrar correspondentes</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filtrar tipos de documento</target> <target state="translated">Filtrar tipos de documento</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Limpar filtros</target> <target state="translated">Limpar filtros</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Ver</target> <target state="translated">Ver</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Criado: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Nota:</target> <target state="translated">Nota:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Sugestões:</target> <target state="translated">Sugestões:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Data inválida.</target> <target state="translated">Data inválida.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Francês</target> <target state="translated">Francês</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="needs-translation">Portuguese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Português (Brasil)</target> <target state="translated">Português (Brasil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italiano</target> <target state="translated">Italiano</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Romeno</target> <target state="translated">Romeno</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="needs-translation">Russian</target> <target state="needs-translation">Russian</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="needs-translation">Spanish</target>
</trans-unit> </trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documentos</target> <target state="translated">Documentos</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Visualização "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" salva com sucesso.</target> <target state="translated">Visualização "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" salva com sucesso.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Visualização "<x id="PH" equiv-text="savedView.name"/>" criada com sucesso.</target> <target state="translated">Visualização "<x id="PH" equiv-text="savedView.name"/>" criada com sucesso.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">NSA</target> <target state="translated">NSA</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Correspondente</target> <target state="translated">Correspondente</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Título</target> <target state="translated">Título</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Tipo de Documento</target> <target state="translated">Tipo de Documento</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Criado</target> <target state="translated">Criado</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Adicionado</target> <target state="translated">Adicionado</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Confirmar exclusão</target> <target state="translated">Confirmar exclusão</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Você realmente deseja excluir o documento "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Você realmente deseja excluir o documento "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Os arquivos desse documento serão excluídos permanentemente. Essa operação não pode ser revertida.</target> <target state="translated">Os arquivos desse documento serão excluídos permanentemente. Essa operação não pode ser revertida.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Excluir documento</target> <target state="translated">Excluir documento</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Erro ao excluir documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Erro ao excluir documento: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Editar tipo de documento</target> <target state="translated">Editar tipo de documento</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Resultados da pesquisa</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Termo de pesquisa inválido: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Mostrar documentos similares a <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Termo de pesquisa: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Será que quer dizer "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, one {} =0 {Sem resultados} =1 {Um resultado} other {<x id="INTERPOLATION"/> resultados}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Fechar todos</target> <target state="translated">Fechar todos</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Título</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Título &amp; conteúdo</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">NSA</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Correspondente: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Correspondente: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Sem correspondente</target> <target state="translated">Sem correspondente</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Tipo: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Sem tipo de documento</target> <target state="translated">Sem tipo de documento</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Etiqueta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Etiqueta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Sem etiquetas</target> <target state="translated">Sem etiquetas</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Título: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Título: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">NSA: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">NSA: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Título</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Título &amp; conteúdo</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">NSA</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="translated">Pesquisa avançada</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="translated">Mais semelhante</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filtrar etiquetas</target> <target state="translated">Filtrar etiquetas</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filtrar correspondentes</target> <target state="translated">Filtrar correspondentes</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filtrar tipos de documentos</target> <target state="translated">Filtrar tipos de documentos</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Limpar filtros</target> <target state="translated">Limpar filtros</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Ver</target> <target state="translated">Ver</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Criado: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Pontuação:</target> <target state="translated">Pontuação:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Criado em: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="translated">Adicionado a: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="translated">Modificado a: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Sugestões:</target> <target state="translated">Sugestões:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Data inválida.</target> <target state="translated">Data inválida.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">À procura do documento com nsa <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Francês</target> <target state="translated">Francês</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Português</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Português (Brasil)</target> <target state="translated">Português (Brasil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italiano</target> <target state="translated">Italiano</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Romeno</target> <target state="translated">Romeno</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Russo</target> <target state="translated">Russo</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Espanhol</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="translated">Polaco</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Documente</target> <target state="translated">Documente</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Vizualizarea "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" a fost salvată.</target> <target state="translated">Vizualizarea "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" a fost salvată.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Vizualizarea "<x id="PH" equiv-text="savedView.name"/>" a fost creată.</target> <target state="translated">Vizualizarea "<x id="PH" equiv-text="savedView.name"/>" a fost creată.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">Aviz prealabil de expediție</target> <target state="translated">Aviz prealabil de expediție</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Corespondent</target> <target state="translated">Corespondent</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Titlu</target> <target state="translated">Titlu</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Tipul documentului</target> <target state="translated">Tipul documentului</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Creat</target> <target state="translated">Creat</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Adăugat</target> <target state="translated">Adăugat</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Confirmă ștergerea</target> <target state="translated">Confirmă ștergerea</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Sunteţi sigur că doriţi să ştergeţi documentul "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Sunteţi sigur că doriţi să ştergeţi documentul "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Fișierele pentru acest document vor fi șterse permanent. Operațiunea este ireversibila.</target> <target state="translated">Fișierele pentru acest document vor fi șterse permanent. Operațiunea este ireversibila.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Șterge document</target> <target state="translated">Șterge document</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Eroare la ștergerea documentului: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Eroare la ștergerea documentului: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Modifică un tip de document</target> <target state="translated">Modifică un tip de document</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Rezultatele căutarii</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Interogare invalidă: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Documente similare cu <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Interogare: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Ați vrut să scrieți "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Niciun rezultat} =1 {Un rezultat} other {<x id="INTERPOLATION"/> rezultate}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Închide tot</target> <target state="translated">Închide tot</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Titlu</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Titlu si conținut</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">Aviz prealabil de expediție</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Corespondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Corespondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Fără corespondent</target> <target state="translated">Fără corespondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Tip: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Tip: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Fară tip</target> <target state="translated">Fară tip</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Eticheta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Eticheta: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Fară etichete</target> <target state="translated">Fară etichete</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Titlu: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Titlu: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="translated">Aviz prealabil de expediție: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Aviz prealabil de expediție: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Titlu</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Titlu si conținut</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">Aviz prealabil de expediție</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Filtrează etichete</target> <target state="translated">Filtrează etichete</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Filtrează corespondenți</target> <target state="translated">Filtrează corespondenți</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Filtrează tipuri de documente</target> <target state="translated">Filtrează tipuri de documente</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Resetare filtre</target> <target state="translated">Resetare filtre</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Vizualizare</target> <target state="translated">Vizualizare</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Creat: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Scor:</target> <target state="translated">Scor:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Sugestii:</target> <target state="translated">Sugestii:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Data invalidă.</target> <target state="translated">Data invalidă.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">Franceză</target> <target state="translated">Franceză</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Portugheză</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portugheză (Brazilia)</target> <target state="translated">Portugheză (Brazilia)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italiană</target> <target state="translated">Italiană</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Română</target> <target state="translated">Română</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="translated">Rusă</target> <target state="translated">Rusă</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Spaniolă</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Документы</target> <target state="translated">Документы</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="translated">Представление "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" успешно сохранено.</target> <target state="translated">Представление "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" успешно сохранено.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="translated">Представление "<x id="PH" equiv-text="savedView.name"/>" успешно создано.</target> <target state="translated">Представление "<x id="PH" equiv-text="savedView.name"/>" успешно создано.</target>
</trans-unit> </trans-unit>
@@ -166,15 +166,15 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="translated">АН</target> <target state="translated">Архивный номер</target>
</trans-unit> </trans-unit>
<trans-unit id="7b5c6286aaded63fb279d6deb8aa8c704e085ced" datatype="html"> <trans-unit id="7b5c6286aaded63fb279d6deb8aa8c704e085ced" datatype="html">
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="translated">Корреспондент</target> <target state="translated">Корреспондент</target>
</trans-unit> </trans-unit>
@@ -182,15 +182,15 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated">Заголовок</target> <target state="translated">Название</target>
</trans-unit> </trans-unit>
<trans-unit id="2bd5919e8098513664a89d5b7b52d61e3063950f" datatype="html"> <trans-unit id="2bd5919e8098513664a89d5b7b52d61e3063950f" datatype="html">
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="translated">Тип документа</target> <target state="translated">Тип документа</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="translated">Создано</target> <target state="translated">Создано</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="translated">Добавлено</target> <target state="translated">Добавлено</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="translated">Подтвердите удаление</target> <target state="translated">Подтвердите удаление</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="translated">Вы действительно хотите удалить документ "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="translated">Вы действительно хотите удалить документ "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="translated">Файлы из этого документа будут удалены незамедлительно. Это операцию нельзя отменить.</target> <target state="translated">Файлы из этого документа будут удалены незамедлительно. Это операцию нельзя отменить.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="translated">Удалить документ</target> <target state="translated">Удалить документ</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="translated">Ошибка удаления документа: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="translated">Ошибка удаления документа: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -464,7 +464,7 @@
<context context-type="sourcefile">src/app/components/dashboard/dashboard.component.ts</context> <context context-type="sourcefile">src/app/components/dashboard/dashboard.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">35</context>
</context-group> </context-group>
<target state="translated">Добро пожаловать в Paperless-ng,</target> <target state="translated">Добро пожаловать в Paperless-ng!</target>
</trans-unit> </trans-unit>
<trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html"> <trans-unit id="f65253954b66e929a8b4d5ecaf61f9129f8cec64" datatype="html">
<source>Dashboard</source> <source>Dashboard</source>
@@ -472,7 +472,7 @@
<context context-type="sourcefile">src/app/components/dashboard/dashboard.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/dashboard.component.html</context>
<context context-type="linenumber">1</context> <context context-type="linenumber">1</context>
</context-group> </context-group>
<target state="translated">Панель</target> <target state="translated">Главная</target>
</trans-unit> </trans-unit>
<trans-unit id="93754014749412887" datatype="html"> <trans-unit id="93754014749412887" datatype="html">
<source>Do you really want to delete the tag &quot;<x id="PH" equiv-text="object.name"/>&quot;?</source> <source>Do you really want to delete the tag &quot;<x id="PH" equiv-text="object.name"/>&quot;?</source>
@@ -504,7 +504,7 @@
<context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.html</context> <context context-type="sourcefile">src/app/components/manage/tag-list/tag-list.component.html</context>
<context context-type="linenumber">8</context> <context context-type="linenumber">8</context>
</context-group> </context-group>
<target state="translated">Отфильтровать по:</target> <target state="translated">Фильтр по:</target>
</trans-unit> </trans-unit>
<trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html"> <trans-unit id="cff1428d10d59d14e45edec3c735a27b5482db59" datatype="html">
<source>Name</source> <source>Name</source>
@@ -616,7 +616,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.ts</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.ts</context>
<context context-type="linenumber">100</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="translated">Использовать формат даты, соответсвующий языку</target> <target state="translated">Использовать формат даты, соответствующий языку</target>
</trans-unit> </trans-unit>
<trans-unit id="8488620293789898901" datatype="html"> <trans-unit id="8488620293789898901" datatype="html">
<source>Error while storing settings on server: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error while storing settings on server: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
@@ -640,7 +640,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">10</context> <context context-type="linenumber">10</context>
</context-group> </context-group>
<target state="translated">Основные настройки</target> <target state="translated">Основные</target>
</trans-unit> </trans-unit>
<trans-unit id="8bcabdf6b16cad0313a86c7e940c5e3ad7f9f8ab" datatype="html"> <trans-unit id="8bcabdf6b16cad0313a86c7e940c5e3ad7f9f8ab" datatype="html">
<source>Notifications</source> <source>Notifications</source>
@@ -656,7 +656,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">134</context> <context context-type="linenumber">134</context>
</context-group> </context-group>
<target state="translated">Сохраненные представления</target> <target state="translated">Представления</target>
</trans-unit> </trans-unit>
<trans-unit id="bbe41ac2ea4a6c00ea941a41b33105048f8e9f13" datatype="html"> <trans-unit id="bbe41ac2ea4a6c00ea941a41b33105048f8e9f13" datatype="html">
<source>Appearance</source> <source>Appearance</source>
@@ -744,7 +744,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">87</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Использовать просмоторщик PDF встроенный в браузер</target> <target state="translated">Использовать просмотрщик PDF встроенный в браузер</target>
</trans-unit> </trans-unit>
<trans-unit id="d7db07023e53f8396d18d375c2b78c25fc81c197" datatype="html"> <trans-unit id="d7db07023e53f8396d18d375c2b78c25fc81c197" datatype="html">
<source>This is usually faster for displaying large PDF documents, but it might not work on some browsers.</source> <source>This is usually faster for displaying large PDF documents, but it might not work on some browsers.</source>
@@ -752,7 +752,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">87</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Это, обычно, более быстрый способо отображения больших PDF документов, но он может не работать в некоторых браузерах.</target> <target state="translated">Это, обычно, более быстрый способ отображения больших PDF документов, но он может не работать в некоторых браузерах.</target>
</trans-unit> </trans-unit>
<trans-unit id="9ee5d1cbfd6ee168dae37aaba2b59b50bcabb2ff" datatype="html"> <trans-unit id="9ee5d1cbfd6ee168dae37aaba2b59b50bcabb2ff" datatype="html">
<source>Dark mode</source> <source>Dark mode</source>
@@ -824,7 +824,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">119</context> <context context-type="linenumber">119</context>
</context-group> </context-group>
<target state="translated">Документ обрабатывается</target> <target state="translated">Обработка документа</target>
</trans-unit> </trans-unit>
<trans-unit id="2ad4d76b36341c589d94004ad2a213fd4d6f5ca0" datatype="html"> <trans-unit id="2ad4d76b36341c589d94004ad2a213fd4d6f5ca0" datatype="html">
<source>Show notifications when new documents are detected</source> <source>Show notifications when new documents are detected</source>
@@ -832,7 +832,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="translated"> Показывать уведомления, когда новый документ удалён</target> <target state="translated">Показывать уведомления, когда новый документ удалён</target>
</trans-unit> </trans-unit>
<trans-unit id="e775f4f7c40249d31426ae61a21616a0c9d8e84f" datatype="html"> <trans-unit id="e775f4f7c40249d31426ae61a21616a0c9d8e84f" datatype="html">
<source>Show notifications when document processing completes successfully</source> <source>Show notifications when document processing completes successfully</source>
@@ -840,7 +840,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">124</context> <context context-type="linenumber">124</context>
</context-group> </context-group>
<target state="translated"> Показывать уведомления, когда обработка документа успешна</target> <target state="translated">Показывать уведомления, когда обработка документа успешна</target>
</trans-unit> </trans-unit>
<trans-unit id="e3844dd174d8e817ddb551fae28f14ae80ca36b6" datatype="html"> <trans-unit id="e3844dd174d8e817ddb551fae28f14ae80ca36b6" datatype="html">
<source>Show notifications when document processing fails</source> <source>Show notifications when document processing fails</source>
@@ -848,7 +848,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">125</context> <context context-type="linenumber">125</context>
</context-group> </context-group>
<target state="translated"> Показывать уведомления, когда обработка документа не удалась</target> <target state="translated">Показывать уведомления, когда обработка документа не удалась</target>
</trans-unit> </trans-unit>
<trans-unit id="af113f7c9f7e13145c3461f61a1aedf12d57bd71" datatype="html"> <trans-unit id="af113f7c9f7e13145c3461f61a1aedf12d57bd71" datatype="html">
<source>Suppress notifications on dashboard</source> <source>Suppress notifications on dashboard</source>
@@ -856,7 +856,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">126</context> <context context-type="linenumber">126</context>
</context-group> </context-group>
<target state="translated">Спрятать уведомления на панели</target> <target state="translated">Спрятать уведомления на главной</target>
</trans-unit> </trans-unit>
<trans-unit id="e27bd3804d2936a6897e81c2e52e294490e5e5a8" datatype="html"> <trans-unit id="e27bd3804d2936a6897e81c2e52e294490e5e5a8" datatype="html">
<source>This will suppress all messages about document processing status on the dashboard.</source> <source>This will suppress all messages about document processing status on the dashboard.</source>
@@ -864,7 +864,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">126</context> <context context-type="linenumber">126</context>
</context-group> </context-group>
<target state="translated">Это отключит все сообщения о статусе обработки документов на панели.</target> <target state="translated">Это отключит все сообщения о статусе обработки документов на главной.</target>
</trans-unit> </trans-unit>
<trans-unit id="8cb90334f5dfd7fc67205085f59381e2a334ccfc" datatype="html"> <trans-unit id="8cb90334f5dfd7fc67205085f59381e2a334ccfc" datatype="html">
<source>Appears on</source> <source>Appears on</source>
@@ -880,7 +880,7 @@
<context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context> <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
<context context-type="linenumber">149</context> <context context-type="linenumber">149</context>
</context-group> </context-group>
<target state="translated">Показать на панели</target> <target state="translated">Показать на главной</target>
</trans-unit> </trans-unit>
<trans-unit id="541bfc5b123b3f8867fd681eaceefb663a811973" datatype="html"> <trans-unit id="541bfc5b123b3f8867fd681eaceefb663a811973" datatype="html">
<source>Show in sidebar</source> <source>Show in sidebar</source>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="translated">Редактировать тип документа</target> <target state="translated">Редактировать тип документа</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Результаты поиска</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="translated">Неверный поисковой запрос: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="translated">Показываю документы похожие на <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="translated">Поисковый запрос: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="translated">Может вы имели ввиду "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="translated">{VAR_PLURAL, plural, =0 {Нет результатов} =1 {Один результат} other {Результаты: <x id="INTERPOLATION"/>}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1129,7 +1081,7 @@
<context context-type="sourcefile">src/app/components/app-frame/app-frame.component.html</context> <context context-type="sourcefile">src/app/components/app-frame/app-frame.component.html</context>
<context context-type="linenumber">154</context> <context context-type="linenumber">154</context>
</context-group> </context-group>
<target state="translated">Админ</target> <target state="translated">Администрирование</target>
</trans-unit> </trans-unit>
<trans-unit id="321e4419a943044e674beb55b8039f42a9761ca5" datatype="html"> <trans-unit id="321e4419a943044e674beb55b8039f42a9761ca5" datatype="html">
<source>Info</source> <source>Info</source>
@@ -1145,7 +1097,7 @@
<context context-type="sourcefile">src/app/components/app-frame/app-frame.component.html</context> <context context-type="sourcefile">src/app/components/app-frame/app-frame.component.html</context>
<context context-type="linenumber">167</context> <context context-type="linenumber">167</context>
</context-group> </context-group>
<target state="translated">Документация </target> <target state="translated">Документация</target>
</trans-unit> </trans-unit>
<trans-unit id="355a222236bc01b9a8cd3cb9ecf76891125aed69" datatype="html"> <trans-unit id="355a222236bc01b9a8cd3cb9ecf76891125aed69" datatype="html">
<source>GitHub</source> <source>GitHub</source>
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="translated">Закрыть всё</target> <target state="translated">Закрыть всё</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="translated">Заголовок</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="translated">Заголовок и содержимое</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="translated">АН</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="translated">Корреспондент: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="translated">Корреспондент: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="translated">Без корреспондента</target> <target state="translated">Без корреспондента</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="translated">Тип: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="translated">Тип: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="translated">Без типа документа</target> <target state="translated">Без типа документа</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="translated">Тег: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="translated">Тег: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="translated">Без тегов</target> <target state="translated">Без тегов</target>
</trans-unit> </trans-unit>
@@ -1263,23 +1191,63 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="translated">Заголовок: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Название: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="1872523635812236432" datatype="html"> <trans-unit id="1872523635812236432" datatype="html">
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="translated">Архивный номер: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="translated">Заголовок</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="translated">Название и содержимое</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="translated">АН</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="translated">Расширенный поиск</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="translated">Больше похожих</target>
</trans-unit> </trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="translated">Фильтр тегов</target> <target state="translated">Фильтр тегов</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="translated">Фильтр корреспондентов</target> <target state="translated">Фильтр корреспондентов</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="translated">Фильтр типа документов</target> <target state="translated">Фильтр типа документов</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="translated">Сбросить фильтры</target> <target state="translated">Сбросить фильтры</target>
</trans-unit> </trans-unit>
@@ -1314,7 +1282,7 @@
<context context-type="linenumber">166</context> <context context-type="linenumber">166</context>
</context-group> </context-group>
<note priority="1" from="description">Filter drop down element to filter for documents with no correspondent/type/tag assigned</note> <note priority="1" from="description">Filter drop down element to filter for documents with no correspondent/type/tag assigned</note>
<target state="translated"> Не назначено</target> <target state="translated">Не назначено</target>
</trans-unit> </trans-unit>
<trans-unit id="c2d0ac9f528bbd5f53fd34269fde8b59e029621b" datatype="html"> <trans-unit id="c2d0ac9f528bbd5f53fd34269fde8b59e029621b" datatype="html">
<source>Apply</source> <source>Apply</source>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">Представление</target> <target state="translated">Представление</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="translated">Создано: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="translated">Оценка:</target> <target state="translated">Оценка:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="translated">Создано: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="translated">Добавлено: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="translated">Изменено: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1557,7 +1541,7 @@
<context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/bulk-editor/bulk-editor.component.ts</context>
<context context-type="linenumber">186</context> <context context-type="linenumber">186</context>
</context-group> </context-group>
<target state="translated">Эта операция удалит тип из <x id="PH" equiv-text="this.list.selected.size"/> выбранных документов</target> <target state="translated">Эта операция удалит тип из <x id="PH" equiv-text="this.list.selected.size"/> выбранных документов.</target>
</trans-unit> </trans-unit>
<trans-unit id="749430623564850405" datatype="html"> <trans-unit id="749430623564850405" datatype="html">
<source>Delete confirm</source> <source>Delete confirm</source>
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="translated">Рекомендации:</target> <target state="translated">Рекомендации:</target>
</trans-unit> </trans-unit>
@@ -1741,7 +1725,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.html</context>
<context context-type="linenumber">13</context> <context context-type="linenumber">13</context>
</context-group> </context-group>
<target state="translated">Перетащите документы сюда или</target> <target state="translated">Перетащите документы или</target>
</trans-unit> </trans-unit>
<trans-unit id="865c511f4a24558ed0e954f9bbbff557bbb8954d" datatype="html"> <trans-unit id="865c511f4a24558ed0e954f9bbbff557bbb8954d" datatype="html">
<source>Browse files</source> <source>Browse files</source>
@@ -1749,7 +1733,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/upload-file-widget/upload-file-widget.component.html</context>
<context context-type="linenumber">13</context> <context context-type="linenumber">13</context>
</context-group> </context-group>
<target state="translated">Загрузить файлы</target> <target state="translated">Загрузите файлы</target>
</trans-unit> </trans-unit>
<trans-unit id="bd4a8607e4a002d939cffb347ec056664dfb2c73" datatype="html"> <trans-unit id="bd4a8607e4a002d939cffb347ec056664dfb2c73" datatype="html">
<source>Dismiss completed</source> <source>Dismiss completed</source>
@@ -1799,7 +1783,7 @@
<context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context> <context context-type="sourcefile">src/app/components/dashboard/widgets/welcome-widget/welcome-widget.component.html</context>
<context context-type="linenumber">6,7</context> <context context-type="linenumber">6,7</context>
</context-group> </context-group>
<target state="translated">Вы можете загрузить документы, перетащив их на панель загрузки файлов справа, либо положив их в каталог, указанный в настройках. После обработки документы появятся в списке документов. После того, как вы добавите метаданные в свои документы, используйте безбумажные механизмы фильтрации для создания пользовательских представлений (таких как «Недавно добавленные», «Tagged TODO»), и они появятся на панели управления вместо этого сообщения.</target> <target state="translated">Вы можете загрузить документы, перетащив их на панель загрузки файлов справа, либо положив их в каталог, указанный в настройках. После обработки документы появятся в списке документов. После того, как вы добавите метаданные в свои документы, используйте безбумажные механизмы фильтрации для создания пользовательских представлений (таких как «Недавно добавленные», «Tagged TODO»), и они появятся здесь вместо этого сообщения.</target>
</trans-unit> </trans-unit>
<trans-unit id="cf5f85690feaba6e29343f9881e57a6c0ea6e82b" datatype="html"> <trans-unit id="cf5f85690feaba6e29343f9881e57a6c0ea6e82b" datatype="html">
<source>Paperless offers some more features that try to make your life easier:</source> <source>Paperless offers some more features that try to make your life easier:</source>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="translated">Неверная дата.</target> <target state="translated">Неверная дата.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="translated">Поиск документа с asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1887,7 +1879,7 @@
<context context-type="sourcefile">src/app/pipes/document-title.pipe.ts</context> <context context-type="sourcefile">src/app/pipes/document-title.pipe.ts</context>
<context context-type="linenumber">12</context> <context context-type="linenumber">12</context>
</context-group> </context-group>
<target state="translated">(без заголовка)</target> <target state="translated">(без названия)</target>
</trans-unit> </trans-unit>
<trans-unit id="1206520795340730278" datatype="html"> <trans-unit id="1206520795340730278" datatype="html">
<source>English (US)</source> <source>English (US)</source>
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="translated">French</target> <target state="translated">French</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="translated">Португальский</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="translated">Portuguese (Brazil)</target> <target state="translated">Portuguese (Brazil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="translated">Italian</target> <target state="translated">Italian</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="translated">Romanian</target> <target state="translated">Romanian</target>
</trans-unit> </trans-unit>
@@ -1957,23 +1957,31 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="needs-translation">Russian</target> <target state="translated">Русский</target>
</trans-unit> </trans-unit>
<trans-unit id="5190825892106392539" datatype="html"> <trans-unit id="5190825892106392539" datatype="html">
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="translated">Испанский</target>
</trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit> </trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="translated">ISO 8601</target> <target state="translated">ISO 8601</target>
</trans-unit> </trans-unit>
@@ -2000,7 +2008,7 @@
<context context-type="linenumber">17</context> <context context-type="linenumber">17</context>
</context-group> </context-group>
<note priority="1" from="description">Pre-Consume is a term that appears like that in the documentation as well and does not need a specific translation</note> <note priority="1" from="description">Pre-Consume is a term that appears like that in the documentation as well and does not need a specific translation</note>
<target state="translated">скрипт предобработки не существует.</target> <target state="translated">Скрипт предобработки не существует.</target>
</trans-unit> </trans-unit>
<trans-unit id="7742915911032564889" datatype="html"> <trans-unit id="7742915911032564889" datatype="html">
<source>Error while executing pre-consume script.</source> <source>Error while executing pre-consume script.</source>
@@ -2018,7 +2026,7 @@
<context context-type="linenumber">19</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<note priority="1" from="description">Post-Consume is a term that appears like that in the documentation as well and does not need a specific translation</note> <note priority="1" from="description">Post-Consume is a term that appears like that in the documentation as well and does not need a specific translation</note>
<target state="translated">скрипт постобработки не существует.</target> <target state="translated">Скрипт постобработки не существует.</target>
</trans-unit> </trans-unit>
<trans-unit id="256773668518189604" datatype="html"> <trans-unit id="256773668518189604" datatype="html">
<source>Error while executing post-consume script.</source> <source>Error while executing post-consume script.</source>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target>crwdns2850:0crwdne2850:0</target> <target>crwdns2850:0crwdne2850:0</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target>crwdns2852:0crwdne2852:0</target> <target>crwdns2852:0crwdne2852:0</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target>crwdns2854:0crwdne2854:0</target> <target>crwdns2854:0crwdne2854:0</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target>crwdns2878:0crwdne2878:0</target> <target>crwdns2878:0crwdne2878:0</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target>crwdns2880:0crwdne2880:0</target> <target>crwdns2880:0crwdne2880:0</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target>crwdns2882:0crwdne2882:0</target> <target>crwdns2882:0crwdne2882:0</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target>crwdns2884:0crwdne2884:0</target> <target>crwdns2884:0crwdne2884:0</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target>crwdns2886:0crwdne2886:0</target> <target>crwdns2886:0crwdne2886:0</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target>crwdns2888:0crwdne2888:0</target> <target>crwdns2888:0crwdne2888:0</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target>crwdns2890:0crwdne2890:0</target> <target>crwdns2890:0crwdne2890:0</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target>crwdns2892:0crwdne2892:0</target> <target>crwdns2892:0crwdne2892:0</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target>crwdns2894:0crwdne2894:0</target> <target>crwdns2894:0crwdne2894:0</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target>crwdns2896:0crwdne2896:0</target> <target>crwdns2896:0crwdne2896:0</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target>crwdns2898:0crwdne2898:0</target> <target>crwdns2898:0crwdne2898:0</target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target>crwdns3096:0crwdne3096:0</target> <target>crwdns3096:0crwdne3096:0</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target>crwdns3098:0crwdne3098:0</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target>crwdns3100:0{{errorMessage}}crwdne3100:0</target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target>crwdns3406:0{{more_like}}crwdnd3406:0{{more_like_doc?.original_file_name}}crwdnd3406:0{{more_like_doc?.original_file_name}}crwdne3406:0</target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target>crwdns3104:0{{query}}crwdnd3104:0{{query}}crwdne3104:0</target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target>crwdns3106:0[routerLink]crwdnd3106:0{{correctedQuery}}crwdnd3106:0{{correctedQuery}}crwdne3106:0</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target>crwdns3108:0VAR_PLURAL={VAR_PLURAL}crwdne3108:0</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target>crwdns3132:0crwdne3132:0</target> <target>crwdns3132:0crwdne3132:0</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target>crwdns3134:0crwdne3134:0</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target>crwdns3136:0crwdne3136:0</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target>crwdns3354:0crwdne3354:0</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target>crwdns3138:0crwdne3138:0</target> <target>crwdns3138:0crwdne3138:0</target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target>crwdns3140:0crwdne3140:0</target> <target>crwdns3140:0crwdne3140:0</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target>crwdns3142:0crwdne3142:0</target> <target>crwdns3142:0crwdne3142:0</target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target>crwdns3144:0crwdne3144:0</target> <target>crwdns3144:0crwdne3144:0</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target>crwdns3146:0crwdne3146:0</target> <target>crwdns3146:0crwdne3146:0</target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target>crwdns3148:0crwdne3148:0</target> <target>crwdns3148:0crwdne3148:0</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target>crwdns3150:0crwdne3150:0</target> <target>crwdns3150:0crwdne3150:0</target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target>crwdns3416:0crwdne3416:0</target> <target>crwdns3416:0crwdne3416:0</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target>crwdns3134:0crwdne3134:0</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target>crwdns3136:0crwdne3136:0</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target>crwdns3354:0crwdne3354:0</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target>crwdns3434:0crwdne3434:0</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target>crwdns3436:0crwdne3436:0</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target>crwdns3152:0crwdne3152:0</target> <target>crwdns3152:0crwdne3152:0</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target>crwdns3154:0crwdne3154:0</target> <target>crwdns3154:0crwdne3154:0</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target>crwdns3156:0crwdne3156:0</target> <target>crwdns3156:0crwdne3156:0</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target>crwdns3158:0crwdne3158:0</target> <target>crwdns3158:0crwdne3158:0</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target>crwdns3178:0crwdne3178:0</target> <target>crwdns3178:0crwdne3178:0</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target>crwdns3180:0{{document.created | customDate}}crwdne3180:0</target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target>crwdns3186:0crwdne3186:0</target> <target>crwdns3186:0crwdne3186:0</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target>crwdns3426:0{{ document.created | customDate}}crwdne3426:0</target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target>crwdns3428:0{{ document.added | customDate}}crwdne3428:0</target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target>crwdns3430:0{{ document.modified | customDate}}crwdne3430:0</target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target>crwdns3240:0crwdne3240:0</target> <target>crwdns3240:0crwdne3240:0</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target>crwdns3298:0crwdne3298:0</target> <target>crwdns3298:0crwdne3298:0</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target>crwdns3432:0{{asn}}crwdne3432:0</target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target>crwdns3314:0crwdne3314:0</target> <target>crwdns3314:0crwdne3314:0</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target>crwdns3422:0crwdne3422:0</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target>crwdns3316:0crwdne3316:0</target> <target>crwdns3316:0crwdne3316:0</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target>crwdns3318:0crwdne3318:0</target> <target>crwdns3318:0crwdne3318:0</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target>crwdns3320:0crwdne3320:0</target> <target>crwdns3320:0crwdne3320:0</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target>crwdns3404:0crwdne3404:0</target> <target>crwdns3404:0crwdne3404:0</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target>crwdns3418:0crwdne3418:0</target> <target>crwdns3418:0crwdne3418:0</target>
</trans-unit> </trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target>crwdns3442:0crwdne3442:0</target>
</trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target>crwdns3322:0crwdne3322:0</target> <target>crwdns3322:0crwdne3322:0</target>
</trans-unit> </trans-unit>

View File

@@ -54,7 +54,7 @@
<source>Documents</source> <source>Documents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">49</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="translated">文件</target> <target state="translated">文件</target>
</trans-unit> </trans-unit>
@@ -62,7 +62,7 @@
<source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source> <source>View &quot;<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>&quot; saved successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">115</context> <context context-type="linenumber">116</context>
</context-group> </context-group>
<target state="needs-translation">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target> <target state="needs-translation">View "<x id="PH" equiv-text="this.list.activeSavedViewTitle"/>" saved successfully.</target>
</trans-unit> </trans-unit>
@@ -70,7 +70,7 @@
<source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source> <source>View &quot;<x id="PH" equiv-text="savedView.name"/>&quot; created successfully.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.ts</context>
<context context-type="linenumber">136</context> <context context-type="linenumber">138</context>
</context-group> </context-group>
<target state="needs-translation">View "<x id="PH" equiv-text="savedView.name"/>" created successfully.</target> <target state="needs-translation">View "<x id="PH" equiv-text="savedView.name"/>" created successfully.</target>
</trans-unit> </trans-unit>
@@ -166,7 +166,7 @@
<source>ASN</source> <source>ASN</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">111</context>
</context-group> </context-group>
<target state="needs-translation">ASN</target> <target state="needs-translation">ASN</target>
</trans-unit> </trans-unit>
@@ -174,7 +174,7 @@
<source>Correspondent</source> <source>Correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">111</context> <context context-type="linenumber">117</context>
</context-group> </context-group>
<target state="needs-translation">Correspondent</target> <target state="needs-translation">Correspondent</target>
</trans-unit> </trans-unit>
@@ -182,7 +182,7 @@
<source>Title</source> <source>Title</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">117</context> <context context-type="linenumber">123</context>
</context-group> </context-group>
<target state="needs-translation">Title</target> <target state="needs-translation">Title</target>
</trans-unit> </trans-unit>
@@ -190,7 +190,7 @@
<source>Document type</source> <source>Document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">123</context> <context context-type="linenumber">129</context>
</context-group> </context-group>
<target state="needs-translation">Document type</target> <target state="needs-translation">Document type</target>
</trans-unit> </trans-unit>
@@ -198,7 +198,7 @@
<source>Created</source> <source>Created</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">129</context> <context context-type="linenumber">135</context>
</context-group> </context-group>
<target state="needs-translation">Created</target> <target state="needs-translation">Created</target>
</trans-unit> </trans-unit>
@@ -206,7 +206,7 @@
<source>Added</source> <source>Added</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-list.component.html</context>
<context context-type="linenumber">135</context> <context context-type="linenumber">141</context>
</context-group> </context-group>
<target state="needs-translation">Added</target> <target state="needs-translation">Added</target>
</trans-unit> </trans-unit>
@@ -214,7 +214,7 @@
<source>Confirm delete</source> <source>Confirm delete</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">203</context> <context context-type="linenumber">206</context>
</context-group> </context-group>
<target state="needs-translation">Confirm delete</target> <target state="needs-translation">Confirm delete</target>
</trans-unit> </trans-unit>
@@ -222,7 +222,7 @@
<source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source> <source>Do you really want to delete document &quot;<x id="PH" equiv-text="this.document.title"/>&quot;?</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">204</context> <context context-type="linenumber">207</context>
</context-group> </context-group>
<target state="needs-translation">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target> <target state="needs-translation">Do you really want to delete document "<x id="PH" equiv-text="this.document.title"/>"?</target>
</trans-unit> </trans-unit>
@@ -230,7 +230,7 @@
<source>The files for this document will be deleted permanently. This operation cannot be undone.</source> <source>The files for this document will be deleted permanently. This operation cannot be undone.</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">205</context> <context context-type="linenumber">208</context>
</context-group> </context-group>
<target state="needs-translation">The files for this document will be deleted permanently. This operation cannot be undone.</target> <target state="needs-translation">The files for this document will be deleted permanently. This operation cannot be undone.</target>
</trans-unit> </trans-unit>
@@ -238,7 +238,7 @@
<source>Delete document</source> <source>Delete document</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">207</context> <context context-type="linenumber">210</context>
</context-group> </context-group>
<target state="needs-translation">Delete document</target> <target state="needs-translation">Delete document</target>
</trans-unit> </trans-unit>
@@ -246,7 +246,7 @@
<source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source> <source>Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context> <context context-type="sourcefile">src/app/components/document-detail/document-detail.component.ts</context>
<context context-type="linenumber">214</context> <context context-type="linenumber">217</context>
</context-group> </context-group>
<target state="needs-translation">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target> <target state="needs-translation">Error deleting document: <x id="PH" equiv-text="JSON.stringify(error)"/></target>
</trans-unit> </trans-unit>
@@ -1042,54 +1042,6 @@
</context-group> </context-group>
<target state="needs-translation">Edit document type</target> <target state="needs-translation">Edit document type</target>
</trans-unit> </trans-unit>
<trans-unit id="49c9ede51100b454f7841b24cd02355c6622bf44" datatype="html">
<source>Search results</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Search results</target>
</trans-unit>
<trans-unit id="31976d04f98e8a38098f66ac3a83ad33b576e5db" datatype="html">
<source>Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">4</context>
</context-group>
<target state="needs-translation">Invalid search query: <x id="INTERPOLATION" equiv-text="{{errorMessage}}"/></target>
</trans-unit>
<trans-unit id="f7f2e30106223a69bcf0f8e586e6be9dc4e72226" datatype="html">
<source>Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">6</context>
</context-group>
<target state="needs-translation">Showing documents similar to <x id="START_LINK" equiv-text="&lt;a routerLink=&quot;/documents/{{more_like}}&quot;&gt;{{more_like_doc?.original_file_name}}"/><x id="INTERPOLATION" equiv-text="{{more_like_doc?.original_file_name}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/></target>
</trans-unit>
<trans-unit id="6e0b0a1ea16f18f2fb1586c53d99d2f22e1aee2e" datatype="html">
<source>Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">9</context>
</context-group>
<target state="needs-translation">Search query: <x id="START_ITALIC_TEXT" equiv-text="&lt;i&gt;{{query}}"/><x id="INTERPOLATION" equiv-text="{{query}}&lt;/i&gt;"/><x id="CLOSE_ITALIC_TEXT" equiv-text="&lt;/i&gt;"/></target>
</trans-unit>
<trans-unit id="afa760e48c97d64d19c1455d18b7834a2256e23f" datatype="html">
<source>Did you mean &quot;<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>&quot;?</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">11</context>
</context-group>
<target state="needs-translation">Did you mean "<x id="START_LINK" equiv-text="&lt;a [routerLink]=&quot;&quot; (click)=&quot;searchCorrectedQuery()&quot;&gt;{{correctedQuery}}"/><x id="INTERPOLATION" equiv-text="{{correctedQuery}}&lt;/a&gt;"/><x id="CLOSE_LINK" equiv-text="&lt;/a&gt;"/>"?</target>
</trans-unit>
<trans-unit id="fe6ced3fcc803bba5a2e6c1a067b9ce62542500e" datatype="html">
<source>{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/search/search.component.html</context>
<context context-type="linenumber">16</context>
</context-group>
<target state="needs-translation">{VAR_PLURAL, plural, =0 {No results} =1 {One result} other {<x id="INTERPOLATION"/> results}}</target>
</trans-unit>
<trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html"> <trans-unit id="41147374f427980a9f1a8cd5e3f4b1666e6f2418" datatype="html">
<source>Paperless-ng</source> <source>Paperless-ng</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1187,35 +1139,11 @@
</context-group> </context-group>
<target state="needs-translation">Close all</target> <target state="needs-translation">Close all</target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">77</context>
</context-group>
<target state="needs-translation">Title</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">78</context>
</context-group>
<target state="needs-translation">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">79</context>
</context-group>
<target state="needs-translation">ASN</target>
</trans-unit>
<trans-unit id="5195932016807797291" datatype="html"> <trans-unit id="5195932016807797291" datatype="html">
<source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source> <source>Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">33</context> <context context-type="linenumber">37</context>
</context-group> </context-group>
<target state="needs-translation">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target> <target state="needs-translation">Correspondent: <x id="PH" equiv-text="this.correspondents.find(c =&gt; c.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1223,7 +1151,7 @@
<source>Without correspondent</source> <source>Without correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">39</context>
</context-group> </context-group>
<target state="needs-translation">Without correspondent</target> <target state="needs-translation">Without correspondent</target>
</trans-unit> </trans-unit>
@@ -1231,7 +1159,7 @@
<source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source> <source>Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">40</context> <context context-type="linenumber">44</context>
</context-group> </context-group>
<target state="needs-translation">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target> <target state="needs-translation">Type: <x id="PH" equiv-text="this.documentTypes.find(dt =&gt; dt.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1239,7 +1167,7 @@
<source>Without document type</source> <source>Without document type</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">42</context> <context context-type="linenumber">46</context>
</context-group> </context-group>
<target state="needs-translation">Without document type</target> <target state="needs-translation">Without document type</target>
</trans-unit> </trans-unit>
@@ -1247,7 +1175,7 @@
<source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source> <source>Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">46</context> <context context-type="linenumber">50</context>
</context-group> </context-group>
<target state="needs-translation">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target> <target state="needs-translation">Tag: <x id="PH" equiv-text="this.tags.find(t =&gt; t.id == +rule.value)?.name"/></target>
</trans-unit> </trans-unit>
@@ -1255,7 +1183,7 @@
<source>Without any tag</source> <source>Without any tag</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">50</context> <context context-type="linenumber">54</context>
</context-group> </context-group>
<target state="needs-translation">Without any tag</target> <target state="needs-translation">Without any tag</target>
</trans-unit> </trans-unit>
@@ -1263,7 +1191,7 @@
<source>Title: <x id="PH" equiv-text="rule.value"/></source> <source>Title: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">54</context> <context context-type="linenumber">58</context>
</context-group> </context-group>
<target state="needs-translation">Title: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">Title: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
@@ -1271,15 +1199,55 @@
<source>ASN: <x id="PH" equiv-text="rule.value"/></source> <source>ASN: <x id="PH" equiv-text="rule.value"/></source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">57</context> <context context-type="linenumber">61</context>
</context-group> </context-group>
<target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target> <target state="needs-translation">ASN: <x id="PH" equiv-text="rule.value"/></target>
</trans-unit> </trans-unit>
<trans-unit id="5701618810648052610" datatype="html">
<source>Title</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">88</context>
</context-group>
<target state="needs-translation">Title</target>
</trans-unit>
<trans-unit id="3100631071441658964" datatype="html">
<source>Title &amp; content</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">89</context>
</context-group>
<target state="needs-translation">Title &amp; content</target>
</trans-unit>
<trans-unit id="7517688192215738656" datatype="html">
<source>ASN</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">90</context>
</context-group>
<target state="needs-translation">ASN</target>
</trans-unit>
<trans-unit id="1010505078885609376" datatype="html">
<source>Advanced search</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">91</context>
</context-group>
<target state="needs-translation">Advanced search</target>
</trans-unit>
<trans-unit id="2649431021108393503" datatype="html">
<source>More like</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.ts</context>
<context context-type="linenumber">94</context>
</context-group>
<target state="needs-translation">More like</target>
</trans-unit>
<trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html"> <trans-unit id="02d184c288f567825a1fcbf83bcd3099a10853d5" datatype="html">
<source>Filter tags</source> <source>Filter tags</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">20</context> <context context-type="linenumber">19</context>
</context-group> </context-group>
<target state="needs-translation">Filter tags</target> <target state="needs-translation">Filter tags</target>
</trans-unit> </trans-unit>
@@ -1287,7 +1255,7 @@
<source>Filter correspondents</source> <source>Filter correspondents</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">28</context> <context context-type="linenumber">27</context>
</context-group> </context-group>
<target state="needs-translation">Filter correspondents</target> <target state="needs-translation">Filter correspondents</target>
</trans-unit> </trans-unit>
@@ -1295,7 +1263,7 @@
<source>Filter document types</source> <source>Filter document types</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">35</context> <context context-type="linenumber">34</context>
</context-group> </context-group>
<target state="needs-translation">Filter document types</target> <target state="needs-translation">Filter document types</target>
</trans-unit> </trans-unit>
@@ -1303,7 +1271,7 @@
<source>Reset filters</source> <source>Reset filters</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context> <context context-type="sourcefile">src/app/components/document-list/filter-editor/filter-editor.component.html</context>
<context context-type="linenumber">58</context> <context context-type="linenumber">57</context>
</context-group> </context-group>
<target state="needs-translation">Reset filters</target> <target state="needs-translation">Reset filters</target>
</trans-unit> </trans-unit>
@@ -1384,18 +1352,10 @@
<source>View</source> <source>View</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">52</context> <context context-type="linenumber">51</context>
</context-group> </context-group>
<target state="needs-translation">View</target> <target state="needs-translation">View</target>
</trans-unit> </trans-unit>
<trans-unit id="849b42384616374df49bd8b3711ec159cb10b845" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">71</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html"> <trans-unit id="cd6f3fd48957e1fea6545c2b2defc7b2435ebfa8" datatype="html">
<source>Filter by correspondent</source> <source>Filter by correspondent</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1416,10 +1376,34 @@
<source>Score:</source> <source>Score:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context> <context context-type="sourcefile">src/app/components/document-list/document-card-large/document-card-large.component.html</context>
<context context-type="linenumber">66</context> <context context-type="linenumber">87</context>
</context-group> </context-group>
<target state="needs-translation">Score:</target> <target state="needs-translation">Score:</target>
</trans-unit> </trans-unit>
<trans-unit id="727d980bba2b3e0b3d8705607f1208eef046479b" datatype="html">
<source>Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">43</context>
</context-group>
<target state="needs-translation">Created: <x id="INTERPOLATION" equiv-text="{{ document.created | customDate}}"/></target>
</trans-unit>
<trans-unit id="0f5d856cb63c69fde44fbfc653ec0655f9040865" datatype="html">
<source>Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">44</context>
</context-group>
<target state="needs-translation">Added: <x id="INTERPOLATION" equiv-text="{{ document.added | customDate}}"/></target>
</trans-unit>
<trans-unit id="a205126adef6251fc63305f1a6228d07bc2795a8" datatype="html">
<source>Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-list/document-card-small/document-card-small.component.html</context>
<context context-type="linenumber">45</context>
</context-group>
<target state="needs-translation">Modified: <x id="INTERPOLATION" equiv-text="{{ document.modified | customDate}}"/></target>
</trans-unit>
<trans-unit id="7985804062689412812" datatype="html"> <trans-unit id="7985804062689412812" datatype="html">
<source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source> <source>Error executing bulk operation: <x id="PH" equiv-text="JSON.stringify(error.error)"/></source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1627,7 +1611,7 @@
<source>Suggestions:</source> <source>Suggestions:</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context> <context context-type="sourcefile">src/app/components/common/input/select/select.component.html</context>
<context context-type="linenumber">26</context> <context context-type="linenumber">29</context>
</context-group> </context-group>
<target state="needs-translation">Suggestions:</target> <target state="needs-translation">Suggestions:</target>
</trans-unit> </trans-unit>
@@ -1865,6 +1849,14 @@
</context-group> </context-group>
<target state="needs-translation">Invalid date.</target> <target state="needs-translation">Invalid date.</target>
</trans-unit> </trans-unit>
<trans-unit id="bd5ca454e336126f3eeb67417d9264696b5c852c" datatype="html">
<source>Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/components/document-asn/document-asn.component.html</context>
<context context-type="linenumber">1</context>
</context-group>
<target state="needs-translation">Searching document with asn <x id="INTERPOLATION" equiv-text="{{asn}}"/></target>
</trans-unit>
<trans-unit id="2807800733729323332" datatype="html"> <trans-unit id="2807800733729323332" datatype="html">
<source>Yes</source> <source>Yes</source>
<context-group purpose="location"> <context-group purpose="location">
@@ -1929,11 +1921,19 @@
</context-group> </context-group>
<target state="needs-translation">French</target> <target state="needs-translation">French</target>
</trans-unit> </trans-unit>
<trans-unit id="153799456510623899" datatype="html">
<source>Portuguese</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context>
</context-group>
<target state="needs-translation">Portuguese</target>
</trans-unit>
<trans-unit id="9184513005098760425" datatype="html"> <trans-unit id="9184513005098760425" datatype="html">
<source>Portuguese (Brazil)</source> <source>Portuguese (Brazil)</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">95</context> <context context-type="linenumber">96</context>
</context-group> </context-group>
<target state="needs-translation">Portuguese (Brazil)</target> <target state="needs-translation">Portuguese (Brazil)</target>
</trans-unit> </trans-unit>
@@ -1941,7 +1941,7 @@
<source>Italian</source> <source>Italian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">96</context> <context context-type="linenumber">97</context>
</context-group> </context-group>
<target state="needs-translation">Italian</target> <target state="needs-translation">Italian</target>
</trans-unit> </trans-unit>
@@ -1949,7 +1949,7 @@
<source>Romanian</source> <source>Romanian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">97</context> <context context-type="linenumber">98</context>
</context-group> </context-group>
<target state="needs-translation">Romanian</target> <target state="needs-translation">Romanian</target>
</trans-unit> </trans-unit>
@@ -1957,7 +1957,7 @@
<source>Russian</source> <source>Russian</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">98</context> <context context-type="linenumber">99</context>
</context-group> </context-group>
<target state="needs-translation">Russian</target> <target state="needs-translation">Russian</target>
</trans-unit> </trans-unit>
@@ -1965,15 +1965,23 @@
<source>Spanish</source> <source>Spanish</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">99</context> <context context-type="linenumber">100</context>
</context-group> </context-group>
<target state="needs-translation">Spanish</target> <target state="needs-translation">Spanish</target>
</trans-unit> </trans-unit>
<trans-unit id="792060551707690640" datatype="html">
<source>Polish</source>
<context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">101</context>
</context-group>
<target state="needs-translation">Polish</target>
</trans-unit>
<trans-unit id="4912706592792948707" datatype="html"> <trans-unit id="4912706592792948707" datatype="html">
<source>ISO 8601</source> <source>ISO 8601</source>
<context-group purpose="location"> <context-group purpose="location">
<context context-type="sourcefile">src/app/services/settings.service.ts</context> <context context-type="sourcefile">src/app/services/settings.service.ts</context>
<context context-type="linenumber">105</context> <context context-type="linenumber">106</context>
</context-group> </context-group>
<target state="needs-translation">ISO 8601</target> <target state="needs-translation">ISO 8601</target>
</trans-unit> </trans-unit>

View File

@@ -5,3 +5,7 @@ $primaryFaded: #d1ddd2;
$theme-colors: ( $theme-colors: (
"primary": $primary "primary": $primary
); );
.bg-body {
background-color: #fff;
}

View File

@@ -37,6 +37,10 @@ $border-color-dark-mode: #47494f;
} }
} }
.bg-body {
background-color: $bg-dark-mode !important;
}
.text-light { .text-light {
color: $text-color-dark-mode !important; color: $text-color-dark-mode !important;
} }

View File

@@ -64,9 +64,9 @@ class Consumer(LoggingMixin):
{'type': 'status_update', {'type': 'status_update',
'data': payload}) 'data': payload})
def _fail(self, message, log_message=None): def _fail(self, message, log_message=None, exc_info=None):
self._send_progress(100, 100, 'FAILED', message) self._send_progress(100, 100, 'FAILED', message)
self.log("error", log_message or message) self.log("error", log_message or message, exc_info=exc_info)
raise ConsumerError(f"{self.filename}: {log_message or message}") raise ConsumerError(f"{self.filename}: {log_message or message}")
def __init__(self): def __init__(self):
@@ -115,12 +115,16 @@ class Consumer(LoggingMixin):
f"Configured pre-consume script " f"Configured pre-consume script "
f"{settings.PRE_CONSUME_SCRIPT} does not exist.") f"{settings.PRE_CONSUME_SCRIPT} does not exist.")
self.log("info",
f"Executing pre-consume script {settings.PRE_CONSUME_SCRIPT}")
try: try:
Popen((settings.PRE_CONSUME_SCRIPT, self.path)).wait() Popen((settings.PRE_CONSUME_SCRIPT, self.path)).wait()
except Exception as e: except Exception as e:
self._fail( self._fail(
MESSAGE_PRE_CONSUME_SCRIPT_ERROR, MESSAGE_PRE_CONSUME_SCRIPT_ERROR,
f"Error while executing pre-consume script: {e}" f"Error while executing pre-consume script: {e}",
exc_info=True
) )
def run_post_consume_script(self, document): def run_post_consume_script(self, document):
@@ -134,6 +138,11 @@ class Consumer(LoggingMixin):
f"{settings.POST_CONSUME_SCRIPT} does not exist." f"{settings.POST_CONSUME_SCRIPT} does not exist."
) )
self.log(
"info",
f"Executing post-consume script {settings.POST_CONSUME_SCRIPT}"
)
try: try:
Popen(( Popen((
settings.POST_CONSUME_SCRIPT, settings.POST_CONSUME_SCRIPT,
@@ -150,7 +159,8 @@ class Consumer(LoggingMixin):
except Exception as e: except Exception as e:
self._fail( self._fail(
MESSAGE_POST_CONSUME_SCRIPT_ERROR, MESSAGE_POST_CONSUME_SCRIPT_ERROR,
f"Error while executing post-consume script: {e}" f"Error while executing post-consume script: {e}",
exc_info=True
) )
def try_consume_file(self, def try_consume_file(self,
@@ -255,7 +265,8 @@ class Consumer(LoggingMixin):
document_parser.cleanup() document_parser.cleanup()
self._fail( self._fail(
str(e), str(e),
f"Error while consuming document {self.filename}: {e}" f"Error while consuming document {self.filename}: {e}",
exc_info=True
) )
# Prepare the document classifier. # Prepare the document classifier.
@@ -326,7 +337,8 @@ class Consumer(LoggingMixin):
self._fail( self._fail(
str(e), str(e),
f"The following error occured while consuming " f"The following error occured while consuming "
f"{self.filename}: {e}" f"{self.filename}: {e}",
exc_info=True
) )
finally: finally:
document_parser.cleanup() document_parser.cleanup()

View File

@@ -2,75 +2,70 @@ import logging
import os import os
from contextlib import contextmanager from contextlib import contextmanager
import math
from dateutil.parser import isoparse
from django.conf import settings from django.conf import settings
from whoosh import highlight, classify, query from whoosh import highlight, classify, query
from whoosh.fields import Schema, TEXT, NUMERIC, KEYWORD, DATETIME from whoosh.fields import Schema, TEXT, NUMERIC, KEYWORD, DATETIME, BOOLEAN
from whoosh.highlight import Formatter, get_text from whoosh.highlight import Formatter, get_text, HtmlFormatter
from whoosh.index import create_in, exists_in, open_dir from whoosh.index import create_in, exists_in, open_dir
from whoosh.qparser import MultifieldParser from whoosh.qparser import MultifieldParser
from whoosh.qparser.dateparse import DateParserPlugin from whoosh.qparser.dateparse import DateParserPlugin
from whoosh.searching import ResultsPage, Searcher
from whoosh.writing import AsyncWriter from whoosh.writing import AsyncWriter
from documents.models import Document
logger = logging.getLogger("paperless.index") logger = logging.getLogger("paperless.index")
class JsonFormatter(Formatter):
def __init__(self):
self.seen = {}
def format_token(self, text, token, replace=False):
ttext = self._text(get_text(text, token, replace))
return {'text': ttext, 'highlight': 'true'}
def format_fragment(self, fragment, replace=False):
output = []
index = fragment.startchar
text = fragment.text
amend_token = None
for t in fragment.matches:
if t.startchar is None:
continue
if t.startchar < index:
continue
if t.startchar > index:
text_inbetween = text[index:t.startchar]
if amend_token and t.startchar - index < 10:
amend_token['text'] += text_inbetween
else:
output.append({'text': text_inbetween,
'highlight': False})
amend_token = None
token = self.format_token(text, t, replace)
if amend_token:
amend_token['text'] += token['text']
else:
output.append(token)
amend_token = token
index = t.endchar
if index < fragment.endchar:
output.append({'text': text[index:fragment.endchar],
'highlight': False})
return output
def format(self, fragments, replace=False):
output = []
for fragment in fragments:
output.append(self.format_fragment(fragment, replace=replace))
return output
def get_schema(): def get_schema():
return Schema( return Schema(
id=NUMERIC(stored=True, unique=True, numtype=int), id=NUMERIC(
title=TEXT(stored=True), stored=True,
unique=True
),
title=TEXT(
sortable=True
),
content=TEXT(), content=TEXT(),
correspondent=TEXT(stored=True), asn=NUMERIC(
tag=KEYWORD(stored=True, commas=True, scorable=True, lowercase=True), sortable=True
type=TEXT(stored=True), ),
created=DATETIME(stored=True, sortable=True),
modified=DATETIME(stored=True, sortable=True), correspondent=TEXT(
added=DATETIME(stored=True, sortable=True), sortable=True
),
correspondent_id=NUMERIC(),
has_correspondent=BOOLEAN(),
tag=KEYWORD(
commas=True,
scorable=True,
lowercase=True
),
tag_id=KEYWORD(
commas=True,
scorable=True
),
has_tag=BOOLEAN(),
type=TEXT(
sortable=True
),
type_id=NUMERIC(),
has_type=BOOLEAN(),
created=DATETIME(
sortable=True
),
modified=DATETIME(
sortable=True
),
added=DATETIME(
sortable=True
),
) )
@@ -87,10 +82,7 @@ def open_index(recreate=False):
@contextmanager @contextmanager
def open_index_writer(ix=None, optimize=False): def open_index_writer(optimize=False):
if ix:
writer = AsyncWriter(ix)
else:
writer = AsyncWriter(open_index()) writer = AsyncWriter(open_index())
try: try:
@@ -102,17 +94,35 @@ def open_index_writer(ix=None, optimize=False):
writer.commit(optimize=optimize) writer.commit(optimize=optimize)
@contextmanager
def open_index_searcher():
searcher = open_index().searcher()
try:
yield searcher
finally:
searcher.close()
def update_document(writer, doc): def update_document(writer, doc):
tags = ",".join([t.name for t in doc.tags.all()]) tags = ",".join([t.name for t in doc.tags.all()])
tags_ids = ",".join([str(t.id) for t in doc.tags.all()])
writer.update_document( writer.update_document(
id=doc.pk, id=doc.pk,
title=doc.title, title=doc.title,
content=doc.content, content=doc.content,
correspondent=doc.correspondent.name if doc.correspondent else None, correspondent=doc.correspondent.name if doc.correspondent else None,
correspondent_id=doc.correspondent.id if doc.correspondent else None,
has_correspondent=doc.correspondent is not None,
tag=tags if tags else None, tag=tags if tags else None,
tag_id=tags_ids if tags_ids else None,
has_tag=len(tags) > 0,
type=doc.document_type.name if doc.document_type else None, type=doc.document_type.name if doc.document_type else None,
type_id=doc.document_type.id if doc.document_type else None,
has_type=doc.document_type is not None,
created=doc.created, created=doc.created,
added=doc.added, added=doc.added,
asn=doc.archive_serial_number,
modified=doc.modified, modified=doc.modified,
) )
@@ -135,50 +145,137 @@ def remove_document_from_index(document):
remove_document(writer, document) remove_document(writer, document)
@contextmanager class DelayedQuery:
def query_page(ix, page, querystring, more_like_doc_id, more_like_doc_content):
searcher = ix.searcher() @property
try: def _query(self):
if querystring: raise NotImplementedError()
@property
def _query_filter(self):
criterias = []
for k, v in self.query_params.items():
if k == 'correspondent__id':
criterias.append(query.Term('correspondent_id', v))
elif k == 'tags__id__all':
for tag_id in v.split(","):
criterias.append(query.Term('tag_id', tag_id))
elif k == 'document_type__id':
criterias.append(query.Term('type_id', v))
elif k == 'correspondent__isnull':
criterias.append(query.Term("has_correspondent", v == "false"))
elif k == 'is_tagged':
criterias.append(query.Term("has_tag", v == "true"))
elif k == 'document_type__isnull':
criterias.append(query.Term("has_type", v == "false"))
elif k == 'created__date__lt':
criterias.append(
query.DateRange("created", start=None, end=isoparse(v)))
elif k == 'created__date__gt':
criterias.append(
query.DateRange("created", start=isoparse(v), end=None))
elif k == 'added__date__gt':
criterias.append(
query.DateRange("added", start=isoparse(v), end=None))
elif k == 'added__date__lt':
criterias.append(
query.DateRange("added", start=None, end=isoparse(v)))
if len(criterias) > 0:
return query.And(criterias)
else:
return None
@property
def _query_sortedby(self):
# if not 'ordering' in self.query_params:
return None, False
# o: str = self.query_params['ordering']
# if o.startswith('-'):
# return o[1:], True
# else:
# return o, False
def __init__(self, searcher: Searcher, query_params, page_size):
self.searcher = searcher
self.query_params = query_params
self.page_size = page_size
self.saved_results = dict()
self.first_score = None
def __len__(self):
page = self[0:1]
return len(page)
def __getitem__(self, item):
if item.start in self.saved_results:
return self.saved_results[item.start]
q, mask = self._query
sortedby, reverse = self._query_sortedby
page: ResultsPage = self.searcher.search_page(
q,
mask=mask,
filter=self._query_filter,
pagenum=math.floor(item.start / self.page_size) + 1,
pagelen=self.page_size,
sortedby=sortedby,
reverse=reverse
)
page.results.fragmenter = highlight.ContextFragmenter(
surround=50)
page.results.formatter = HtmlFormatter(tagname="span", between=" ... ")
if not self.first_score and len(page.results) > 0:
self.first_score = page.results[0].score
if self.first_score:
page.results.top_n = list(map(
lambda hit: (hit[0] / self.first_score, hit[1]),
page.results.top_n
))
self.saved_results[item.start] = page
return page
class DelayedFullTextQuery(DelayedQuery):
@property
def _query(self):
q_str = self.query_params['query']
qp = MultifieldParser( qp = MultifieldParser(
["content", "title", "correspondent", "tag", "type"], ["content", "title", "correspondent", "tag", "type"],
ix.schema) self.searcher.ixreader.schema)
qp.add_plugin(DateParserPlugin()) qp.add_plugin(DateParserPlugin())
str_q = qp.parse(querystring) q = qp.parse(q_str)
corrected = searcher.correct_query(str_q, querystring)
else:
str_q = None
corrected = None
if more_like_doc_id: corrected = self.searcher.correct_query(q, q_str)
docnum = searcher.document_number(id=more_like_doc_id) if corrected.query != q:
kts = searcher.key_terms_from_text( corrected_query = corrected.string
'content', more_like_doc_content, numterms=20,
return q, None
class DelayedMoreLikeThisQuery(DelayedQuery):
@property
def _query(self):
more_like_doc_id = int(self.query_params['more_like_id'])
content = Document.objects.get(id=more_like_doc_id).content
docnum = self.searcher.document_number(id=more_like_doc_id)
kts = self.searcher.key_terms_from_text(
'content', content, numterms=20,
model=classify.Bo1Model, normalize=False) model=classify.Bo1Model, normalize=False)
more_like_q = query.Or( q = query.Or(
[query.Term('content', word, boost=weight) [query.Term('content', word, boost=weight)
for word, weight in kts]) for word, weight in kts])
result_page = searcher.search_page( mask = {docnum}
more_like_q, page, filter=str_q, mask={docnum})
elif str_q:
result_page = searcher.search_page(str_q, page)
else:
raise ValueError(
"Either querystring or more_like_doc_id is required."
)
result_page.results.fragmenter = highlight.ContextFragmenter( return q, mask
surround=50)
result_page.results.formatter = JsonFormatter()
if corrected and corrected.query != str_q:
corrected_query = corrected.string
else:
corrected_query = None
yield result_page, corrected_query
finally:
searcher.close()
def autocomplete(ix, term, limit=10): def autocomplete(ix, term, limit=10):

View File

@@ -6,15 +6,18 @@ import time
import tqdm import tqdm
from django.conf import settings from django.conf import settings
from django.contrib.auth.models import User
from django.core import serializers from django.core import serializers
from django.core.management.base import BaseCommand, CommandError from django.core.management.base import BaseCommand, CommandError
from django.db import transaction from django.db import transaction
from filelock import FileLock from filelock import FileLock
from documents.models import Document, Correspondent, Tag, DocumentType from documents.models import Document, Correspondent, Tag, DocumentType, \
SavedView, SavedViewFilterRule
from documents.settings import EXPORTER_FILE_NAME, EXPORTER_THUMBNAIL_NAME, \ from documents.settings import EXPORTER_FILE_NAME, EXPORTER_THUMBNAIL_NAME, \
EXPORTER_ARCHIVE_NAME EXPORTER_ARCHIVE_NAME
from paperless.db import GnuPG from paperless.db import GnuPG
from paperless_mail.models import MailAccount, MailRule
from ...file_handling import generate_filename, delete_empty_directories from ...file_handling import generate_filename, delete_empty_directories
@@ -105,6 +108,21 @@ class Command(BaseCommand):
serializers.serialize("json", documents)) serializers.serialize("json", documents))
manifest += document_manifest manifest += document_manifest
manifest += json.loads(serializers.serialize(
"json", MailAccount.objects.all()))
manifest += json.loads(serializers.serialize(
"json", MailRule.objects.all()))
manifest += json.loads(serializers.serialize(
"json", SavedView.objects.all()))
manifest += json.loads(serializers.serialize(
"json", SavedViewFilterRule.objects.all()))
manifest += json.loads(serializers.serialize(
"json", User.objects.all()))
# 3. Export files from each document # 3. Export files from each document
for index, document_dict in tqdm.tqdm(enumerate(document_manifest), for index, document_dict in tqdm.tqdm(enumerate(document_manifest),
total=len(document_manifest)): total=len(document_manifest)):

View File

@@ -1,5 +1,6 @@
import logging import logging
import tqdm
from django.core.management.base import BaseCommand from django.core.management.base import BaseCommand
from documents.classifier import load_classifier from documents.classifier import load_classifier
@@ -67,9 +68,7 @@ class Command(BaseCommand):
classifier = load_classifier() classifier = load_classifier()
for document in documents: for document in tqdm.tqdm(documents):
logger.info(
f"Processing document {document.title}")
if options['correspondent']: if options['correspondent']:
set_correspondent( set_correspondent(

View File

@@ -0,0 +1,42 @@
import logging
import os
from django.contrib.auth.models import User
from django.core.management.base import BaseCommand, CommandError
logger = logging.getLogger("paperless.management.superuser")
class Command(BaseCommand):
help = """
Creates a Django superuser based on env variables.
""".replace(" ", "")
def handle(self, *args, **options):
username = os.getenv('PAPERLESS_ADMIN_USER')
if not username:
return
mail = os.getenv('PAPERLESS_ADMIN_MAIL', 'root@localhost')
password = os.getenv('PAPERLESS_ADMIN_PASSWORD')
# Check if user exists already, leave as is if it does
if User.objects.filter(username=username).exists():
user: User = User.objects.get_by_natural_key(username)
user.set_password(password)
user.save()
self.stdout.write(f"Changed password of user {username}.")
elif password:
# Create superuser based on env variables
User.objects.create_superuser(username, mail, password)
self.stdout.write(
f'Created superuser "{username}" with provided password.')
else:
self.stdout.write(
f'Did not create superuser "{username}".')
self.stdout.write(
'Make sure you specified "PAPERLESS_ADMIN_PASSWORD" in your '
'"docker-compose.env" file.')

View File

@@ -90,7 +90,7 @@ def matches(matching_model, document):
elif matching_model.matching_algorithm == MatchingModel.MATCH_LITERAL: elif matching_model.matching_algorithm == MatchingModel.MATCH_LITERAL:
result = bool(re.search( result = bool(re.search(
rf"\b{matching_model.match}\b", rf"\b{re.escape(matching_model.match)}\b",
document_content, document_content,
**search_kwargs **search_kwargs
)) ))
@@ -161,6 +161,9 @@ def _split_match(matching_model):
findterms = re.compile(r'"([^"]+)"|(\S+)').findall findterms = re.compile(r'"([^"]+)"|(\S+)').findall
normspace = re.compile(r"\s+").sub normspace = re.compile(r"\s+").sub
return [ return [
normspace(" ", (t[0] or t[1]).strip()).replace(" ", r"\s+") # normspace(" ", (t[0] or t[1]).strip()).replace(" ", r"\s+")
re.escape(
normspace(" ", (t[0] or t[1]).strip())
).replace(r"\ ", r"\s+")
for t in findterms(matching_model.match) for t in findterms(matching_model.match)
] ]

View File

@@ -0,0 +1,29 @@
# Generated by Django 3.1.7 on 2021-04-04 18:28
import logging
from django.db import migrations
logger = logging.getLogger("paperless.migrations")
def remove_null_characters(apps, schema_editor):
Document = apps.get_model('documents', 'Document')
for doc in Document.objects.all():
content: str = doc.content
if '\0' in content:
logger.info(f"Removing null characters from document {doc}...")
doc.content = content.replace('\0', ' ')
doc.save()
class Migration(migrations.Migration):
dependencies = [
('documents', '1014_auto_20210228_1614'),
]
operations = [
migrations.RunPython(remove_null_characters, migrations.RunPython.noop)
]

View File

@@ -0,0 +1,23 @@
# Generated by Django 3.1.7 on 2021-03-17 12:51
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('documents', '1015_remove_null_characters'),
]
operations = [
migrations.AlterField(
model_name='savedview',
name='sort_field',
field=models.CharField(blank=True, max_length=128, null=True, verbose_name='sort field'),
),
migrations.AlterField(
model_name='savedviewfilterrule',
name='rule_type',
field=models.PositiveIntegerField(choices=[(0, 'title contains'), (1, 'content contains'), (2, 'ASN is'), (3, 'correspondent is'), (4, 'document type is'), (5, 'is in inbox'), (6, 'has tag'), (7, 'has any tag'), (8, 'created before'), (9, 'created after'), (10, 'created year is'), (11, 'created month is'), (12, 'created day is'), (13, 'added before'), (14, 'added after'), (15, 'modified before'), (16, 'modified after'), (17, 'does not have tag'), (18, 'does not have ASN'), (19, 'title or content contains'), (20, 'fulltext query'), (21, 'more like this')], verbose_name='rule type'),
),
]

View File

@@ -359,7 +359,10 @@ class SavedView(models.Model):
sort_field = models.CharField( sort_field = models.CharField(
_("sort field"), _("sort field"),
max_length=128) max_length=128,
null=True,
blank=True
)
sort_reverse = models.BooleanField( sort_reverse = models.BooleanField(
_("sort reverse"), _("sort reverse"),
default=False) default=False)
@@ -387,6 +390,8 @@ class SavedViewFilterRule(models.Model):
(17, _("does not have tag")), (17, _("does not have tag")),
(18, _("does not have ASN")), (18, _("does not have ASN")),
(19, _("title or content contains")), (19, _("title or content contains")),
(20, _("fulltext query")),
(21, _("more like this"))
] ]
saved_view = models.ForeignKey( saved_view = models.ForeignKey(

View File

@@ -46,13 +46,13 @@ def set_correspondent(sender,
selected = None selected = None
if potential_count > 1: if potential_count > 1:
if use_first: if use_first:
logger.info( logger.debug(
f"Detected {potential_count} potential correspondents, " f"Detected {potential_count} potential correspondents, "
f"so we've opted for {selected}", f"so we've opted for {selected}",
extra={'group': logging_group} extra={'group': logging_group}
) )
else: else:
logger.info( logger.debug(
f"Detected {potential_count} potential correspondents, " f"Detected {potential_count} potential correspondents, "
f"not assigning any correspondent", f"not assigning any correspondent",
extra={'group': logging_group} extra={'group': logging_group}

View File

@@ -27,7 +27,7 @@ class TestDocumentAdmin(DirectoriesMixin, TestCase):
doc.title = "new title" doc.title = "new title"
self.doc_admin.save_model(None, doc, None, None) self.doc_admin.save_model(None, doc, None, None)
self.assertEqual(Document.objects.get(id=doc.id).title, "new title") self.assertEqual(Document.objects.get(id=doc.id).title, "new title")
self.assertEqual(self.get_document_from_index(doc)['title'], "new title") self.assertEqual(self.get_document_from_index(doc)['id'], doc.id)
def test_delete_model(self): def test_delete_model(self):
doc = Document.objects.create(title="test") doc = Document.objects.create(title="test")

View File

@@ -7,6 +7,7 @@ import tempfile
import zipfile import zipfile
from unittest import mock from unittest import mock
import pytest
from django.conf import settings from django.conf import settings
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.test import override_settings from django.test import override_settings
@@ -294,12 +295,6 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
results = response.data['results'] results = response.data['results']
self.assertEqual(len(results), 0) self.assertEqual(len(results), 0)
def test_search_no_query(self):
response = self.client.get("/api/search/")
results = response.data['results']
self.assertEqual(len(results), 0)
def test_search(self): def test_search(self):
d1=Document.objects.create(title="invoice", content="the thing i bought at a shop and paid with bank account", checksum="A", pk=1) d1=Document.objects.create(title="invoice", content="the thing i bought at a shop and paid with bank account", checksum="A", pk=1)
d2=Document.objects.create(title="bank statement 1", content="things i paid for in august", pk=2, checksum="B") d2=Document.objects.create(title="bank statement 1", content="things i paid for in august", pk=2, checksum="B")
@@ -311,32 +306,24 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
index.update_document(writer, d1) index.update_document(writer, d1)
index.update_document(writer, d2) index.update_document(writer, d2)
index.update_document(writer, d3) index.update_document(writer, d3)
response = self.client.get("/api/search/?query=bank") response = self.client.get("/api/documents/?query=bank")
results = response.data['results'] results = response.data['results']
self.assertEqual(response.data['count'], 3) self.assertEqual(response.data['count'], 3)
self.assertEqual(response.data['page'], 1)
self.assertEqual(response.data['page_count'], 1)
self.assertEqual(len(results), 3) self.assertEqual(len(results), 3)
response = self.client.get("/api/search/?query=september") response = self.client.get("/api/documents/?query=september")
results = response.data['results'] results = response.data['results']
self.assertEqual(response.data['count'], 1) self.assertEqual(response.data['count'], 1)
self.assertEqual(response.data['page'], 1)
self.assertEqual(response.data['page_count'], 1)
self.assertEqual(len(results), 1) self.assertEqual(len(results), 1)
response = self.client.get("/api/search/?query=statement") response = self.client.get("/api/documents/?query=statement")
results = response.data['results'] results = response.data['results']
self.assertEqual(response.data['count'], 2) self.assertEqual(response.data['count'], 2)
self.assertEqual(response.data['page'], 1)
self.assertEqual(response.data['page_count'], 1)
self.assertEqual(len(results), 2) self.assertEqual(len(results), 2)
response = self.client.get("/api/search/?query=sfegdfg") response = self.client.get("/api/documents/?query=sfegdfg")
results = response.data['results'] results = response.data['results']
self.assertEqual(response.data['count'], 0) self.assertEqual(response.data['count'], 0)
self.assertEqual(response.data['page'], 0)
self.assertEqual(response.data['page_count'], 0)
self.assertEqual(len(results), 0) self.assertEqual(len(results), 0)
def test_search_multi_page(self): def test_search_multi_page(self):
@@ -349,53 +336,34 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
seen_ids = [] seen_ids = []
for i in range(1, 6): for i in range(1, 6):
response = self.client.get(f"/api/search/?query=content&page={i}") response = self.client.get(f"/api/documents/?query=content&page={i}&page_size=10")
results = response.data['results'] results = response.data['results']
self.assertEqual(response.data['count'], 55) self.assertEqual(response.data['count'], 55)
self.assertEqual(response.data['page'], i)
self.assertEqual(response.data['page_count'], 6)
self.assertEqual(len(results), 10) self.assertEqual(len(results), 10)
for result in results: for result in results:
self.assertNotIn(result['id'], seen_ids) self.assertNotIn(result['id'], seen_ids)
seen_ids.append(result['id']) seen_ids.append(result['id'])
response = self.client.get(f"/api/search/?query=content&page=6") response = self.client.get(f"/api/documents/?query=content&page=6&page_size=10")
results = response.data['results'] results = response.data['results']
self.assertEqual(response.data['count'], 55) self.assertEqual(response.data['count'], 55)
self.assertEqual(response.data['page'], 6)
self.assertEqual(response.data['page_count'], 6)
self.assertEqual(len(results), 5) self.assertEqual(len(results), 5)
for result in results: for result in results:
self.assertNotIn(result['id'], seen_ids) self.assertNotIn(result['id'], seen_ids)
seen_ids.append(result['id']) seen_ids.append(result['id'])
response = self.client.get(f"/api/search/?query=content&page=7")
results = response.data['results']
self.assertEqual(response.data['count'], 55)
self.assertEqual(response.data['page'], 6)
self.assertEqual(response.data['page_count'], 6)
self.assertEqual(len(results), 5)
def test_search_invalid_page(self): def test_search_invalid_page(self):
with AsyncWriter(index.open_index()) as writer: with AsyncWriter(index.open_index()) as writer:
for i in range(15): for i in range(15):
doc = Document.objects.create(checksum=str(i), pk=i+1, title=f"Document {i+1}", content="content") doc = Document.objects.create(checksum=str(i), pk=i+1, title=f"Document {i+1}", content="content")
index.update_document(writer, doc) index.update_document(writer, doc)
first_page = self.client.get(f"/api/search/?query=content&page=1").data response = self.client.get(f"/api/documents/?query=content&page=0&page_size=10")
second_page = self.client.get(f"/api/search/?query=content&page=2").data self.assertEqual(response.status_code, 404)
should_be_first_page_1 = self.client.get(f"/api/search/?query=content&page=0").data response = self.client.get(f"/api/documents/?query=content&page=3&page_size=10")
should_be_first_page_2 = self.client.get(f"/api/search/?query=content&page=dgfd").data self.assertEqual(response.status_code, 404)
should_be_first_page_3 = self.client.get(f"/api/search/?query=content&page=").data
should_be_first_page_4 = self.client.get(f"/api/search/?query=content&page=-7868").data
self.assertDictEqual(first_page, should_be_first_page_1)
self.assertDictEqual(first_page, should_be_first_page_2)
self.assertDictEqual(first_page, should_be_first_page_3)
self.assertDictEqual(first_page, should_be_first_page_4)
self.assertNotEqual(len(first_page['results']), len(second_page['results']))
@mock.patch("documents.index.autocomplete") @mock.patch("documents.index.autocomplete")
def test_search_autocomplete(self, m): def test_search_autocomplete(self, m):
@@ -419,6 +387,7 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertEqual(len(response.data), 10) self.assertEqual(len(response.data), 10)
@pytest.mark.skip(reason="Not implemented yet")
def test_search_spelling_correction(self): def test_search_spelling_correction(self):
with AsyncWriter(index.open_index()) as writer: with AsyncWriter(index.open_index()) as writer:
for i in range(55): for i in range(55):
@@ -444,7 +413,7 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
index.update_document(writer, d2) index.update_document(writer, d2)
index.update_document(writer, d3) index.update_document(writer, d3)
response = self.client.get(f"/api/search/?more_like={d2.id}") response = self.client.get(f"/api/documents/?more_like_id={d2.id}")
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
@@ -454,6 +423,54 @@ class TestDocumentApi(DirectoriesMixin, APITestCase):
self.assertEqual(results[0]['id'], d3.id) self.assertEqual(results[0]['id'], d3.id)
self.assertEqual(results[1]['id'], d1.id) self.assertEqual(results[1]['id'], d1.id)
def test_search_filtering(self):
t = Tag.objects.create(name="tag")
t2 = Tag.objects.create(name="tag2")
c = Correspondent.objects.create(name="correspondent")
dt = DocumentType.objects.create(name="type")
d1 = Document.objects.create(checksum="1", correspondent=c, content="test")
d2 = Document.objects.create(checksum="2", document_type=dt, content="test")
d3 = Document.objects.create(checksum="3", content="test")
d3.tags.add(t)
d3.tags.add(t2)
d4 = Document.objects.create(checksum="4", created=datetime.datetime(2020, 7, 13), content="test")
d4.tags.add(t2)
d5 = Document.objects.create(checksum="5", added=datetime.datetime(2020, 7, 13), content="test")
d6 = Document.objects.create(checksum="6", content="test2")
with AsyncWriter(index.open_index()) as writer:
for doc in Document.objects.all():
index.update_document(writer, doc)
def search_query(q):
r = self.client.get("/api/documents/?query=test" + q)
self.assertEqual(r.status_code, 200)
return [hit['id'] for hit in r.data['results']]
self.assertCountEqual(search_query(""), [d1.id, d2.id, d3.id, d4.id, d5.id])
self.assertCountEqual(search_query("&is_tagged=true"), [d3.id, d4.id])
self.assertCountEqual(search_query("&is_tagged=false"), [d1.id, d2.id, d5.id])
self.assertCountEqual(search_query("&correspondent__id=" + str(c.id)), [d1.id])
self.assertCountEqual(search_query("&document_type__id=" + str(dt.id)), [d2.id])
self.assertCountEqual(search_query("&correspondent__isnull"), [d2.id, d3.id, d4.id, d5.id])
self.assertCountEqual(search_query("&document_type__isnull"), [d1.id, d3.id, d4.id, d5.id])
self.assertCountEqual(search_query("&tags__id__all=" + str(t.id) + "," + str(t2.id)), [d3.id])
self.assertCountEqual(search_query("&tags__id__all=" + str(t.id)), [d3.id])
self.assertCountEqual(search_query("&tags__id__all=" + str(t2.id)), [d3.id, d4.id])
self.assertIn(d4.id, search_query("&created__date__lt=" + datetime.datetime(2020, 9, 2).strftime("%Y-%m-%d")))
self.assertNotIn(d4.id, search_query("&created__date__gt=" + datetime.datetime(2020, 9, 2).strftime("%Y-%m-%d")))
self.assertNotIn(d4.id, search_query("&created__date__lt=" + datetime.datetime(2020, 1, 2).strftime("%Y-%m-%d")))
self.assertIn(d4.id, search_query("&created__date__gt=" + datetime.datetime(2020, 1, 2).strftime("%Y-%m-%d")))
self.assertIn(d5.id, search_query("&added__date__lt=" + datetime.datetime(2020, 9, 2).strftime("%Y-%m-%d")))
self.assertNotIn(d5.id, search_query("&added__date__gt=" + datetime.datetime(2020, 9, 2).strftime("%Y-%m-%d")))
self.assertNotIn(d5.id, search_query("&added__date__lt=" + datetime.datetime(2020, 1, 2).strftime("%Y-%m-%d")))
self.assertIn(d5.id, search_query("&added__date__gt=" + datetime.datetime(2020, 1, 2).strftime("%Y-%m-%d")))
def test_statistics(self): def test_statistics(self):
doc1 = Document.objects.create(title="none1", checksum="A") doc1 = Document.objects.create(title="none1", checksum="A")
@@ -1375,8 +1392,7 @@ class TestApiAuth(APITestCase):
self.assertEqual(self.client.get("/api/logs/").status_code, 401) self.assertEqual(self.client.get("/api/logs/").status_code, 401)
self.assertEqual(self.client.get("/api/saved_views/").status_code, 401) self.assertEqual(self.client.get("/api/saved_views/").status_code, 401)
self.assertEqual(self.client.get("/api/search/").status_code, 401) self.assertEqual(self.client.get("/api/search/autocomplete/").status_code, 401)
self.assertEqual(self.client.get("/api/search/auto_complete/").status_code, 401)
self.assertEqual(self.client.get("/api/documents/bulk_edit/").status_code, 401) self.assertEqual(self.client.get("/api/documents/bulk_edit/").status_code, 401)
self.assertEqual(self.client.get("/api/documents/bulk_download/").status_code, 401) self.assertEqual(self.client.get("/api/documents/bulk_download/").status_code, 401)
self.assertEqual(self.client.get("/api/documents/selection_data/").status_code, 401) self.assertEqual(self.client.get("/api/documents/selection_data/").status_code, 401)

View File

@@ -1,20 +1,10 @@
from django.test import TestCase from django.test import TestCase
from documents import index from documents import index
from documents.index import JsonFormatter
from documents.models import Document from documents.models import Document
from documents.tests.utils import DirectoriesMixin from documents.tests.utils import DirectoriesMixin
class JsonFormatterTest(TestCase):
def setUp(self) -> None:
self.formatter = JsonFormatter()
def test_empty_fragments(self):
self.assertListEqual(self.formatter.format([]), [])
class TestAutoComplete(DirectoriesMixin, TestCase): class TestAutoComplete(DirectoriesMixin, TestCase):
def test_auto_complete(self): def test_auto_complete(self):

View File

@@ -69,7 +69,7 @@ class TestExportImport(DirectoriesMixin, TestCase):
manifest = self._do_export(use_filename_format=use_filename_format) manifest = self._do_export(use_filename_format=use_filename_format)
self.assertEqual(len(manifest), 7) self.assertEqual(len(manifest), 8)
self.assertEqual(len(list(filter(lambda e: e['model'] == 'documents.document', manifest))), 4) self.assertEqual(len(list(filter(lambda e: e['model'] == 'documents.document', manifest))), 4)
self.assertTrue(os.path.exists(os.path.join(self.target, "manifest.json"))) self.assertTrue(os.path.exists(os.path.join(self.target, "manifest.json")))

View File

@@ -0,0 +1,66 @@
import os
import shutil
from unittest import mock
from django.contrib.auth.models import User
from django.core.management import call_command
from django.test import TestCase
from documents.management.commands.document_thumbnails import _process_document
from documents.models import Document, Tag, Correspondent, DocumentType
from documents.tests.utils import DirectoriesMixin
class TestManageSuperUser(DirectoriesMixin, TestCase):
def reset_environment(self):
if "PAPERLESS_ADMIN_USER" in os.environ:
del os.environ["PAPERLESS_ADMIN_USER"]
if "PAPERLESS_ADMIN_PASSWORD" in os.environ:
del os.environ["PAPERLESS_ADMIN_PASSWORD"]
def setUp(self) -> None:
super().setUp()
self.reset_environment()
def tearDown(self) -> None:
super().tearDown()
self.reset_environment()
def test_no_user(self):
call_command("manage_superuser")
# just the consumer user.
self.assertEqual(User.objects.count(), 1)
self.assertTrue(User.objects.filter(username="consumer").exists())
def test_create(self):
os.environ["PAPERLESS_ADMIN_USER"] = "new_user"
os.environ["PAPERLESS_ADMIN_PASSWORD"] = "123456"
call_command("manage_superuser")
user: User = User.objects.get_by_natural_key("new_user")
self.assertTrue(user.check_password("123456"))
def test_update(self):
os.environ["PAPERLESS_ADMIN_USER"] = "new_user"
os.environ["PAPERLESS_ADMIN_PASSWORD"] = "123456"
call_command("manage_superuser")
os.environ["PAPERLESS_ADMIN_USER"] = "new_user"
os.environ["PAPERLESS_ADMIN_PASSWORD"] = "more_secure_pwd_7645"
call_command("manage_superuser")
user: User = User.objects.get_by_natural_key("new_user")
self.assertTrue(user.check_password("more_secure_pwd_7645"))
def test_no_password(self):
os.environ["PAPERLESS_ADMIN_USER"] = "new_user"
call_command("manage_superuser")
with self.assertRaises(User.DoesNotExist):
User.objects.get_by_natural_key("new_user")

View File

@@ -0,0 +1,15 @@
from documents.tests.utils import DirectoriesMixin, TestMigrations
class TestMigrateNullCharacters(DirectoriesMixin, TestMigrations):
migrate_from = '1014_auto_20210228_1614'
migrate_to = '1015_remove_null_characters'
def setUpBeforeMigration(self, apps):
Document = apps.get_model("documents", "Document")
self.doc = Document.objects.create(content="aaa\0bbb")
def testMimeTypesMigrated(self):
Document = self.apps.get_model('documents', 'Document')
self.assertNotIn("\0", Document.objects.get(id=self.doc.id).content)

View File

@@ -17,7 +17,9 @@ from django_filters.rest_framework import DjangoFilterBackend
from django_q.tasks import async_task from django_q.tasks import async_task
from rest_framework import parsers from rest_framework import parsers
from rest_framework.decorators import action from rest_framework.decorators import action
from rest_framework.exceptions import NotFound
from rest_framework.filters import OrderingFilter, SearchFilter from rest_framework.filters import OrderingFilter, SearchFilter
from rest_framework.generics import GenericAPIView
from rest_framework.mixins import ( from rest_framework.mixins import (
DestroyModelMixin, DestroyModelMixin,
ListModelMixin, ListModelMixin,
@@ -326,6 +328,70 @@ class DocumentViewSet(RetrieveModelMixin,
raise Http404() raise Http404()
class SearchResultSerializer(DocumentSerializer):
def to_representation(self, instance):
doc = Document.objects.get(id=instance['id'])
r = super(SearchResultSerializer, self).to_representation(doc)
r['__search_hit__'] = {
"score": instance.score,
"highlights": instance.highlights("content",
text=doc.content) if doc else None, # NOQA: E501
"rank": instance.rank
}
return r
class UnifiedSearchViewSet(DocumentViewSet):
def __init__(self, *args, **kwargs):
super(UnifiedSearchViewSet, self).__init__(*args, **kwargs)
self.searcher = None
def get_serializer_class(self):
if self._is_search_request():
return SearchResultSerializer
else:
return DocumentSerializer
def _is_search_request(self):
return ("query" in self.request.query_params or
"more_like_id" in self.request.query_params)
def filter_queryset(self, queryset):
if self._is_search_request():
from documents import index
if "query" in self.request.query_params:
query_class = index.DelayedFullTextQuery
elif "more_like_id" in self.request.query_params:
query_class = index.DelayedMoreLikeThisQuery
else:
raise ValueError()
return query_class(
self.searcher,
self.request.query_params,
self.paginator.get_page_size(self.request))
else:
return super(UnifiedSearchViewSet, self).filter_queryset(queryset)
def list(self, request, *args, **kwargs):
if self._is_search_request():
from documents import index
try:
with index.open_index_searcher() as s:
self.searcher = s
return super(UnifiedSearchViewSet, self).list(request)
except NotFound:
raise
except Exception as e:
return HttpResponseBadRequest(str(e))
else:
return super(UnifiedSearchViewSet, self).list(request)
class LogViewSet(ViewSet): class LogViewSet(ViewSet):
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
@@ -366,23 +432,12 @@ class SavedViewViewSet(ModelViewSet):
serializer.save(user=self.request.user) serializer.save(user=self.request.user)
class BulkEditView(APIView): class BulkEditView(GenericAPIView):
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
serializer_class = BulkEditSerializer serializer_class = BulkEditSerializer
parser_classes = (parsers.JSONParser,) parser_classes = (parsers.JSONParser,)
def get_serializer_context(self):
return {
'request': self.request,
'format': self.format_kwarg,
'view': self
}
def get_serializer(self, *args, **kwargs):
kwargs['context'] = self.get_serializer_context()
return self.serializer_class(*args, **kwargs)
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
@@ -399,23 +454,12 @@ class BulkEditView(APIView):
return HttpResponseBadRequest(str(e)) return HttpResponseBadRequest(str(e))
class PostDocumentView(APIView): class PostDocumentView(GenericAPIView):
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
serializer_class = PostDocumentSerializer serializer_class = PostDocumentSerializer
parser_classes = (parsers.MultiPartParser,) parser_classes = (parsers.MultiPartParser,)
def get_serializer_context(self):
return {
'request': self.request,
'format': self.format_kwarg,
'view': self
}
def get_serializer(self, *args, **kwargs):
kwargs['context'] = self.get_serializer_context()
return self.serializer_class(*args, **kwargs)
def post(self, request, *args, **kwargs): def post(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
@@ -453,23 +497,12 @@ class PostDocumentView(APIView):
return Response("OK") return Response("OK")
class SelectionDataView(APIView): class SelectionDataView(GenericAPIView):
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
serializer_class = DocumentListSerializer serializer_class = DocumentListSerializer
parser_classes = (parsers.MultiPartParser, parsers.JSONParser) parser_classes = (parsers.MultiPartParser, parsers.JSONParser)
def get_serializer_context(self):
return {
'request': self.request,
'format': self.format_kwarg,
'view': self
}
def get_serializer(self, *args, **kwargs):
kwargs['context'] = self.get_serializer_context()
return self.serializer_class(*args, **kwargs)
def post(self, request, format=None): def post(self, request, format=None):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
@@ -510,74 +543,6 @@ class SelectionDataView(APIView):
return r return r
class SearchView(APIView):
permission_classes = (IsAuthenticated,)
def add_infos_to_hit(self, r):
try:
doc = Document.objects.get(id=r['id'])
except Document.DoesNotExist:
logger.warning(
f"Search index returned a non-existing document: "
f"id: {r['id']}, title: {r['title']}. "
f"Search index needs reindex."
)
doc = None
return {'id': r['id'],
'highlights': r.highlights("content", text=doc.content) if doc else None, # NOQA: E501
'score': r.score,
'rank': r.rank,
'document': DocumentSerializer(doc).data if doc else None,
'title': r['title']
}
def get(self, request, format=None):
from documents import index
if 'query' in request.query_params:
query = request.query_params['query']
else:
query = None
if 'more_like' in request.query_params:
more_like_id = request.query_params['more_like']
more_like_content = Document.objects.get(id=more_like_id).content
else:
more_like_id = None
more_like_content = None
if not query and not more_like_id:
return Response({
'count': 0,
'page': 0,
'page_count': 0,
'corrected_query': None,
'results': []})
try:
page = int(request.query_params.get('page', 1))
except (ValueError, TypeError):
page = 1
if page < 1:
page = 1
ix = index.open_index()
try:
with index.query_page(ix, page, query, more_like_id, more_like_content) as (result_page, corrected_query): # NOQA: E501
return Response(
{'count': len(result_page),
'page': result_page.pagenum,
'page_count': result_page.pagecount,
'corrected_query': corrected_query,
'results': list(map(self.add_infos_to_hit, result_page))})
except Exception as e:
return HttpResponseBadRequest(str(e))
class SearchAutoCompleteView(APIView): class SearchAutoCompleteView(APIView):
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
@@ -620,23 +585,12 @@ class StatisticsView(APIView):
}) })
class BulkDownloadView(APIView): class BulkDownloadView(GenericAPIView):
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
serializer_class = BulkDownloadSerializer serializer_class = BulkDownloadSerializer
parser_classes = (parsers.JSONParser,) parser_classes = (parsers.JSONParser,)
def get_serializer_context(self):
return {
'request': self.request,
'format': self.format_kwarg,
'view': self
}
def get_serializer(self, *args, **kwargs):
kwargs['context'] = self.get_serializer_context()
return self.serializer_class(*args, **kwargs)
def post(self, request, format=None): def post(self, request, format=None):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)

View File

@@ -2,8 +2,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: paperless-ng\n" "Project-Id-Version: paperless-ng\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-14 13:33+0100\n" "POT-Creation-Date: 2021-04-17 13:41+0200\n"
"PO-Revision-Date: 2021-03-14 13:58\n" "PO-Revision-Date: 2021-04-17 11:47\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Czech\n" "Language-Team: Czech\n"
"Language: cs_CZ\n" "Language: cs_CZ\n"
@@ -226,7 +226,7 @@ msgstr "záznam"
msgid "logs" msgid "logs"
msgstr "záznamy" msgstr "záznamy"
#: documents/models.py:344 documents/models.py:396 #: documents/models.py:344 documents/models.py:401
msgid "saved view" msgid "saved view"
msgstr "uložený pohled" msgstr "uložený pohled"
@@ -250,103 +250,111 @@ msgstr "zobrazit v postranním menu"
msgid "sort field" msgid "sort field"
msgstr "pole na řazení" msgstr "pole na řazení"
#: documents/models.py:364 #: documents/models.py:367
msgid "sort reverse" msgid "sort reverse"
msgstr "třídit opačně" msgstr "třídit opačně"
#: documents/models.py:370 #: documents/models.py:373
msgid "title contains" msgid "title contains"
msgstr "titulek obsahuje" msgstr "titulek obsahuje"
#: documents/models.py:371 #: documents/models.py:374
msgid "content contains" msgid "content contains"
msgstr "obsah obsahuje" msgstr "obsah obsahuje"
#: documents/models.py:372 #: documents/models.py:375
msgid "ASN is" msgid "ASN is"
msgstr "ASN je" msgstr "ASN je"
#: documents/models.py:373 #: documents/models.py:376
msgid "correspondent is" msgid "correspondent is"
msgstr "korespondent je" msgstr "korespondent je"
#: documents/models.py:374 #: documents/models.py:377
msgid "document type is" msgid "document type is"
msgstr "typ dokumentu je" msgstr "typ dokumentu je"
#: documents/models.py:375 #: documents/models.py:378
msgid "is in inbox" msgid "is in inbox"
msgstr "je v příchozích" msgstr "je v příchozích"
#: documents/models.py:376 #: documents/models.py:379
msgid "has tag" msgid "has tag"
msgstr "má tag" msgstr "má tag"
#: documents/models.py:377 #: documents/models.py:380
msgid "has any tag" msgid "has any tag"
msgstr "má jakýkoliv tag" msgstr "má jakýkoliv tag"
#: documents/models.py:378 #: documents/models.py:381
msgid "created before" msgid "created before"
msgstr "vytvořeno před" msgstr "vytvořeno před"
#: documents/models.py:379 #: documents/models.py:382
msgid "created after" msgid "created after"
msgstr "vytvořeno po" msgstr "vytvořeno po"
#: documents/models.py:380 #: documents/models.py:383
msgid "created year is" msgid "created year is"
msgstr "rok vytvoření je" msgstr "rok vytvoření je"
#: documents/models.py:381 #: documents/models.py:384
msgid "created month is" msgid "created month is"
msgstr "měsíc vytvoření je" msgstr "měsíc vytvoření je"
#: documents/models.py:382 #: documents/models.py:385
msgid "created day is" msgid "created day is"
msgstr "den vytvoření je" msgstr "den vytvoření je"
#: documents/models.py:383 #: documents/models.py:386
msgid "added before" msgid "added before"
msgstr "přidáno před" msgstr "přidáno před"
#: documents/models.py:384 #: documents/models.py:387
msgid "added after" msgid "added after"
msgstr "přidáno po" msgstr "přidáno po"
#: documents/models.py:385 #: documents/models.py:388
msgid "modified before" msgid "modified before"
msgstr "upraveno před" msgstr "upraveno před"
#: documents/models.py:386 #: documents/models.py:389
msgid "modified after" msgid "modified after"
msgstr "upraveno po" msgstr "upraveno po"
#: documents/models.py:387 #: documents/models.py:390
msgid "does not have tag" msgid "does not have tag"
msgstr "nemá tag" msgstr "nemá tag"
#: documents/models.py:388 #: documents/models.py:391
msgid "does not have ASN" msgid "does not have ASN"
msgstr "" msgstr ""
#: documents/models.py:389 #: documents/models.py:392
msgid "title or content contains" msgid "title or content contains"
msgstr "" msgstr ""
#: documents/models.py:400 #: documents/models.py:393
msgid "fulltext query"
msgstr ""
#: documents/models.py:394
msgid "more like this"
msgstr ""
#: documents/models.py:405
msgid "rule type" msgid "rule type"
msgstr "typ pravidla" msgstr "typ pravidla"
#: documents/models.py:404 #: documents/models.py:409
msgid "value" msgid "value"
msgstr "hodnota" msgstr "hodnota"
#: documents/models.py:410 #: documents/models.py:415
msgid "filter rule" msgid "filter rule"
msgstr "filtrovací pravidlo" msgstr "filtrovací pravidlo"
#: documents/models.py:411 #: documents/models.py:416
msgid "filter rules" msgid "filter rules"
msgstr "filtrovací pravidla" msgstr "filtrovací pravidla"
@@ -429,22 +437,30 @@ msgid "Portuguese (Brazil)"
msgstr "" msgstr ""
#: paperless/settings.py:304 #: paperless/settings.py:304
msgid "Italian" msgid "Portuguese"
msgstr "" msgstr ""
#: paperless/settings.py:305 #: paperless/settings.py:305
msgid "Romanian" msgid "Italian"
msgstr "" msgstr ""
#: paperless/settings.py:306 #: paperless/settings.py:306
msgid "Russian" msgid "Romanian"
msgstr "" msgstr ""
#: paperless/settings.py:307 #: paperless/settings.py:307
msgid "Russian"
msgstr ""
#: paperless/settings.py:308
msgid "Spanish" msgid "Spanish"
msgstr "" msgstr ""
#: paperless/urls.py:118 #: paperless/settings.py:309
msgid "Polish"
msgstr ""
#: paperless/urls.py:113
msgid "Paperless-ng administration" msgid "Paperless-ng administration"
msgstr "Správa Paperless-ng" msgstr "Správa Paperless-ng"

View File

@@ -2,8 +2,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: paperless-ng\n" "Project-Id-Version: paperless-ng\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-03-14 13:33+0100\n" "POT-Creation-Date: 2021-04-17 13:41+0200\n"
"PO-Revision-Date: 2021-03-14 13:58\n" "PO-Revision-Date: 2021-04-17 19:51\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: German\n" "Language-Team: German\n"
"Language: de_DE\n" "Language: de_DE\n"
@@ -226,7 +226,7 @@ msgstr "Protokoll"
msgid "logs" msgid "logs"
msgstr "Protokoll" msgstr "Protokoll"
#: documents/models.py:344 documents/models.py:396 #: documents/models.py:344 documents/models.py:401
msgid "saved view" msgid "saved view"
msgstr "Gespeicherte Ansicht" msgstr "Gespeicherte Ansicht"
@@ -250,103 +250,111 @@ msgstr "In Seitenleiste zeigen"
msgid "sort field" msgid "sort field"
msgstr "Sortierfeld" msgstr "Sortierfeld"
#: documents/models.py:364 #: documents/models.py:367
msgid "sort reverse" msgid "sort reverse"
msgstr "Umgekehrte Sortierung" msgstr "Umgekehrte Sortierung"
#: documents/models.py:370 #: documents/models.py:373
msgid "title contains" msgid "title contains"
msgstr "Titel enthält" msgstr "Titel enthält"
#: documents/models.py:371 #: documents/models.py:374
msgid "content contains" msgid "content contains"
msgstr "Inhalt enthält" msgstr "Inhalt enthält"
#: documents/models.py:372 #: documents/models.py:375
msgid "ASN is" msgid "ASN is"
msgstr "ASN ist" msgstr "ASN ist"
#: documents/models.py:373 #: documents/models.py:376
msgid "correspondent is" msgid "correspondent is"
msgstr "Korrespondent ist" msgstr "Korrespondent ist"
#: documents/models.py:374 #: documents/models.py:377
msgid "document type is" msgid "document type is"
msgstr "Dokumenttyp ist" msgstr "Dokumenttyp ist"
#: documents/models.py:375 #: documents/models.py:378
msgid "is in inbox" msgid "is in inbox"
msgstr "Ist im Posteingang" msgstr "Ist im Posteingang"
#: documents/models.py:376 #: documents/models.py:379
msgid "has tag" msgid "has tag"
msgstr "Hat Tag" msgstr "Hat Tag"
#: documents/models.py:377 #: documents/models.py:380
msgid "has any tag" msgid "has any tag"
msgstr "Hat irgendein Tag" msgstr "Hat irgendein Tag"
#: documents/models.py:378 #: documents/models.py:381
msgid "created before" msgid "created before"
msgstr "Ausgestellt vor" msgstr "Ausgestellt vor"
#: documents/models.py:379 #: documents/models.py:382
msgid "created after" msgid "created after"
msgstr "Ausgestellt nach" msgstr "Ausgestellt nach"
#: documents/models.py:380 #: documents/models.py:383
msgid "created year is" msgid "created year is"
msgstr "Ausgestellt im Jahr" msgstr "Ausgestellt im Jahr"
#: documents/models.py:381 #: documents/models.py:384
msgid "created month is" msgid "created month is"
msgstr "Ausgestellt im Monat" msgstr "Ausgestellt im Monat"
#: documents/models.py:382 #: documents/models.py:385
msgid "created day is" msgid "created day is"
msgstr "Ausgestellt am Tag" msgstr "Ausgestellt am Tag"
#: documents/models.py:383 #: documents/models.py:386
msgid "added before" msgid "added before"
msgstr "Hinzugefügt vor" msgstr "Hinzugefügt vor"
#: documents/models.py:384 #: documents/models.py:387
msgid "added after" msgid "added after"
msgstr "Hinzugefügt nach" msgstr "Hinzugefügt nach"
#: documents/models.py:385 #: documents/models.py:388
msgid "modified before" msgid "modified before"
msgstr "Geändert vor" msgstr "Geändert vor"
#: documents/models.py:386 #: documents/models.py:389
msgid "modified after" msgid "modified after"
msgstr "Geändert nach" msgstr "Geändert nach"
#: documents/models.py:387 #: documents/models.py:390
msgid "does not have tag" msgid "does not have tag"
msgstr "Hat nicht folgendes Tag" msgstr "Hat nicht folgendes Tag"
#: documents/models.py:388 #: documents/models.py:391
msgid "does not have ASN" msgid "does not have ASN"
msgstr "Dokument hat keine ASN" msgstr "Dokument hat keine ASN"
#: documents/models.py:389 #: documents/models.py:392
msgid "title or content contains" msgid "title or content contains"
msgstr "Titel oder Inhalt enthält" msgstr "Titel oder Inhalt enthält"
#: documents/models.py:400 #: documents/models.py:393
msgid "fulltext query"
msgstr "Volltextsuche"
#: documents/models.py:394
msgid "more like this"
msgstr "Ähnliche Dokumente"
#: documents/models.py:405
msgid "rule type" msgid "rule type"
msgstr "Regeltyp" msgstr "Regeltyp"
#: documents/models.py:404 #: documents/models.py:409
msgid "value" msgid "value"
msgstr "Wert" msgstr "Wert"
#: documents/models.py:410 #: documents/models.py:415
msgid "filter rule" msgid "filter rule"
msgstr "Filterregel" msgstr "Filterregel"
#: documents/models.py:411 #: documents/models.py:416
msgid "filter rules" msgid "filter rules"
msgstr "Filterregeln" msgstr "Filterregeln"
@@ -429,22 +437,30 @@ msgid "Portuguese (Brazil)"
msgstr "Portugiesisch (Brasilien)" msgstr "Portugiesisch (Brasilien)"
#: paperless/settings.py:304 #: paperless/settings.py:304
msgid "Portuguese"
msgstr "Portugiesisch"
#: paperless/settings.py:305
msgid "Italian" msgid "Italian"
msgstr "Italienisch" msgstr "Italienisch"
#: paperless/settings.py:305 #: paperless/settings.py:306
msgid "Romanian" msgid "Romanian"
msgstr "Rumänisch" msgstr "Rumänisch"
#: paperless/settings.py:306 #: paperless/settings.py:307
msgid "Russian" msgid "Russian"
msgstr "Russisch" msgstr "Russisch"
#: paperless/settings.py:307 #: paperless/settings.py:308
msgid "Spanish" msgid "Spanish"
msgstr "Spanisch" msgstr "Spanisch"
#: paperless/urls.py:118 #: paperless/settings.py:309
msgid "Polish"
msgstr "Polnisch"
#: paperless/urls.py:113
msgid "Paperless-ng administration" msgid "Paperless-ng administration"
msgstr "Paperless-ng Administration" msgstr "Paperless-ng Administration"

Some files were not shown because too many files have changed in this diff Show More