diff --git a/README.md b/README.md index 7a5f6028d..eea41ce05 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![Documentation Status](https://readthedocs.org/projects/paperless-ng/badge/?version=latest)](https://paperless-ng.readthedocs.io/en/latest/?badge=latest) [![Gitter](https://badges.gitter.im/paperless-ng/community.svg)](https://gitter.im/paperless-ng/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Docker Hub Pulls](https://img.shields.io/docker/pulls/jonaswinkler/paperless-ng.svg)](https://hub.docker.com/r/jonaswinkler/paperless-ng) -[![Coverage Status](https://coveralls.io/repos/github/jonaswinkler/paperless-ng/badge.svg?branch=master)](https://coveralls.io/github/jonaswinkler/paperless-ng?branch=master) *<-- green badge, yay :)* +[![Coverage Status](https://coveralls.io/repos/github/jonaswinkler/paperless-ng/badge.svg?branch=master)](https://coveralls.io/github/jonaswinkler/paperless-ng?branch=master) # Paperless-ng @@ -122,7 +122,6 @@ Paperless has been around a while now, and people are starting to build stuff on These projects also exist, but their status and compatibility with paperless-ng is unknown. * [Paperless Desktop](https://github.com/thomasbrueggemann/paperless-desktop): A desktop UI for your Paperless installation. Runs on Mac, Linux, and Windows. -* [ansible-role-paperless](https://github.com/ovv/ansible-role-paperless): An easy way to get Paperless running via Ansible. * [paperless-cli](https://github.com/stgarf/paperless-cli): A golang command line binary to interact with a Paperless instance. # Important Note diff --git a/docker/local/Dockerfile b/docker/local/Dockerfile index 461b9e4fc..a8e991d8c 100644 --- a/docker/local/Dockerfile +++ b/docker/local/Dockerfile @@ -9,6 +9,7 @@ RUN apt-get update \ && apt-get -y --no-install-recommends install \ build-essential \ curl \ + fonts-liberation \ ghostscript \ gnupg \ icc-profiles-free \ @@ -62,6 +63,7 @@ RUN sudo -HEu paperless python3 manage.py collectstatic --clear --no-input VOLUME ["/usr/src/paperless/data", "/usr/src/paperless/media", "/usr/src/paperless/consume", "/usr/src/paperless/export"] ENTRYPOINT ["/sbin/docker-entrypoint.sh"] +EXPOSE 8000 CMD ["/usr/local/bin/supervisord", "-c", "/etc/supervisord.conf"] LABEL maintainer="Jonas Winkler " diff --git a/docs/setup.rst b/docs/setup.rst index 4d29ce640..437409194 100644 --- a/docs/setup.rst +++ b/docs/setup.rst @@ -221,8 +221,9 @@ writing. Windows is not and will never be supported. * ``python3-pip``, optionally ``pipenv`` for package installation * ``python3-dev`` + * ``fonts-liberation`` for generating thumbnails for plain text files * ``imagemagick`` >= 6 for PDF conversion - * ``optipng`` for optimising thumbnails + * ``optipng`` for optimizing thumbnails * ``gnupg`` for handling encrypted documents * ``libpoppler-cpp-dev`` for PDF to text conversion * ``libmagic-dev`` for mime type detection @@ -242,8 +243,7 @@ writing. Windows is not and will never be supported. * ``tesseract-ocr`` language packs (``tesseract-ocr-eng``, ``tesseract-ocr-deu``, etc) You will also need ``build-essential``, ``python3-setuptools`` and ``python3-wheel`` - for installing some of the python dependencies. You can remove that - again after installation. + for installing some of the python dependencies. 2. Install ``redis`` >= 5.0 and configure it to start automatically. diff --git a/src-ui/src/app/app.module.ts b/src-ui/src/app/app.module.ts index 37b3a027d..c78dc3cfe 100644 --- a/src-ui/src/app/app.module.ts +++ b/src-ui/src/app/app.module.ts @@ -26,12 +26,13 @@ import { ResultHighlightComponent } from './components/search/result-highlight/r import { PageHeaderComponent } from './components/common/page-header/page-header.component'; import { AppFrameComponent } from './components/app-frame/app-frame.component'; import { ToastsComponent } from './components/common/toasts/toasts.component'; -import { FilterEditorComponent } from './components/filter-editor/filter-editor.component'; -import { FilterDropdownComponent } from './components/filter-editor/filter-dropdown/filter-dropdown.component'; -import { FilterDropdownButtonComponent } from './components/filter-editor/filter-dropdown/filter-dropdown-button/filter-dropdown-button.component'; -import { FilterDropdownDateComponent } from './components/filter-editor/filter-dropdown-date/filter-dropdown-date.component'; +import { FilterEditorComponent } from './components/document-list/filter-editor/filter-editor.component'; +import { FilterableDropdownComponent } from './components/common/filterable-dropdown/filterable-dropdown.component'; +import { ToggleableDropdownButtonComponent } from './components/common/filterable-dropdown/toggleable-dropdown-button/toggleable-dropdown-button.component'; +import { DateDropdownComponent } from './components/common/date-dropdown/date-dropdown.component'; import { DocumentCardLargeComponent } from './components/document-list/document-card-large/document-card-large.component'; import { DocumentCardSmallComponent } from './components/document-list/document-card-small/document-card-small.component'; +import { BulkEditorComponent } from './components/document-list/bulk-editor/bulk-editor.component'; import { NgxFileDropModule } from 'ngx-file-drop'; import { TextComponent } from './components/common/input/text/text.component'; import { SelectComponent } from './components/common/input/select/select.component'; @@ -54,8 +55,8 @@ import { FileSizePipe } from './pipes/file-size.pipe'; import { FilterPipe } from './pipes/filter.pipe'; import { DocumentTitlePipe } from './pipes/document-title.pipe'; import { MetadataCollapseComponent } from './components/document-detail/metadata-collapse/metadata-collapse.component'; -import { NgSelectModule } from '@ng-select/ng-select'; import { SelectDialogComponent } from './components/common/select-dialog/select-dialog.component'; +import { NgSelectModule } from '@ng-select/ng-select'; @NgModule({ declarations: [ @@ -80,11 +81,12 @@ import { SelectDialogComponent } from './components/common/select-dialog/select- AppFrameComponent, ToastsComponent, FilterEditorComponent, - FilterDropdownComponent, - FilterDropdownButtonComponent, - FilterDropdownDateComponent, + FilterableDropdownComponent, + ToggleableDropdownButtonComponent, + DateDropdownComponent, DocumentCardLargeComponent, DocumentCardSmallComponent, + BulkEditorComponent, TextComponent, SelectComponent, CheckComponent, diff --git a/src-ui/src/app/components/common/confirm-dialog/confirm-dialog.component.ts b/src-ui/src/app/components/common/confirm-dialog/confirm-dialog.component.ts index 4791d0e77..c397811a4 100644 --- a/src-ui/src/app/components/common/confirm-dialog/confirm-dialog.component.ts +++ b/src-ui/src/app/components/common/confirm-dialog/confirm-dialog.component.ts @@ -14,7 +14,7 @@ export class ConfirmDialogComponent implements OnInit { public confirmClicked = new EventEmitter() @Input() - title = "Confirmation" + title = $localize`Confirmation` @Input() messageBold @@ -26,7 +26,7 @@ export class ConfirmDialogComponent implements OnInit { btnClass = "btn-primary" @Input() - btnCaption = "Confirm" + btnCaption = $localize`Confirm` confirmButtonEnabled = true seconds = 0 diff --git a/src-ui/src/app/components/filter-editor/filter-dropdown-date/filter-dropdown-date.component.html b/src-ui/src/app/components/common/date-dropdown/date-dropdown.component.html similarity index 89% rename from src-ui/src/app/components/filter-editor/filter-dropdown-date/filter-dropdown-date.component.html rename to src-ui/src/app/components/common/date-dropdown/date-dropdown.component.html index aca6e836c..e4f17c4e6 100644 --- a/src-ui/src/app/components/filter-editor/filter-dropdown-date/filter-dropdown-date.component.html +++ b/src-ui/src/app/components/common/date-dropdown/date-dropdown.component.html @@ -2,7 +2,7 @@ -