diff --git a/src-ui/src/app/components/admin/settings/settings.component.ts b/src-ui/src/app/components/admin/settings/settings.component.ts index 984aa8378..6bfe9f485 100644 --- a/src-ui/src/app/components/admin/settings/settings.component.ts +++ b/src-ui/src/app/components/admin/settings/settings.component.ts @@ -26,7 +26,7 @@ import { tap, } from 'rxjs' import { Group } from 'src/app/data/group' -import { DisplayMode, SavedView } from 'src/app/data/saved-view' +import { SavedView } from 'src/app/data/saved-view' import { SETTINGS_KEYS } from 'src/app/data/ui-settings' import { User } from 'src/app/data/user' import { DocumentListViewService } from 'src/app/services/document-list-view.service' @@ -50,6 +50,7 @@ import { SystemStatusItemStatus, SystemStatus, } from 'src/app/data/system-status' +import { DisplayMode } from 'src/app/data/document' enum SettingsNavIDs { General = 1, diff --git a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.spec.ts b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.spec.ts index 397394475..d2b8d9f40 100644 --- a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.spec.ts +++ b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.spec.ts @@ -3,10 +3,9 @@ import { of } from 'rxjs' import { CustomField, CustomFieldDataType } from 'src/app/data/custom-field' import { DocumentService } from 'src/app/services/rest/document.service' import { CustomFieldDisplayComponent } from './custom-field-display.component' -import { Document } from 'src/app/data/document' +import { DisplayField, Document } from 'src/app/data/document' import { HttpClientTestingModule } from '@angular/common/http/testing' import { CustomFieldsService } from 'src/app/services/rest/custom-fields.service' -import { DisplayField } from 'src/app/data/saved-view' const customFields: CustomField[] = [ { id: 1, name: 'Field 1', data_type: CustomFieldDataType.String }, diff --git a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts index 2c62c468d..f53c7c8fd 100644 --- a/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts +++ b/src-ui/src/app/components/common/custom-field-display/custom-field-display.component.ts @@ -1,9 +1,8 @@ import { Component, Input, OnDestroy, OnInit } from '@angular/core' import { Subject, takeUntil } from 'rxjs' import { CustomField, CustomFieldDataType } from 'src/app/data/custom-field' -import { Document } from 'src/app/data/document' +import { DisplayField, Document } from 'src/app/data/document' import { Results } from 'src/app/data/results' -import { DisplayField } from 'src/app/data/saved-view' import { CustomFieldsService } from 'src/app/services/rest/custom-fields.service' import { DocumentService } from 'src/app/services/rest/document.service' diff --git a/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.spec.ts b/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.spec.ts index 017930075..292dccdfc 100644 --- a/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.spec.ts +++ b/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.spec.ts @@ -18,7 +18,7 @@ import { FILTER_HAS_TAGS_ALL, FILTER_STORAGE_PATH, } from 'src/app/data/filter-rule-type' -import { DisplayMode, DisplayField, SavedView } from 'src/app/data/saved-view' +import { SavedView } from 'src/app/data/saved-view' import { IfPermissionsDirective } from 'src/app/directives/if-permissions.directive' import { PermissionsGuard } from 'src/app/guards/permissions.guard' import { CustomDatePipe } from 'src/app/pipes/custom-date.pipe' @@ -40,6 +40,7 @@ import { NgxBootstrapIconsModule, allIcons } from 'ngx-bootstrap-icons' import { CustomFieldsService } from 'src/app/services/rest/custom-fields.service' import { CustomFieldDataType } from 'src/app/data/custom-field' import { CustomFieldDisplayComponent } from 'src/app/components/common/custom-field-display/custom-field-display.component' +import { DisplayMode, DisplayField } from 'src/app/data/document' const savedView: SavedView = { id: 1, diff --git a/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.ts b/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.ts index 09235510e..e035cf598 100644 --- a/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.ts +++ b/src-ui/src/app/components/dashboard/widgets/saved-view-widget/saved-view-widget.component.ts @@ -8,15 +8,15 @@ import { } from '@angular/core' import { Router } from '@angular/router' import { Subject, takeUntil } from 'rxjs' -import { Document } from 'src/app/data/document' import { + DEFAULT_DASHBOARD_DISPLAY_FIELDS, + DEFAULT_DASHBOARD_VIEW_PAGE_SIZE, + DEFAULT_DISPLAY_FIELDS, DisplayField, DisplayMode, - SavedView, - DEFAULT_DISPLAY_FIELDS, - DEFAULT_DASHBOARD_VIEW_PAGE_SIZE, - DEFAULT_DASHBOARD_DISPLAY_FIELDS, -} from 'src/app/data/saved-view' + Document, +} from 'src/app/data/document' +import { SavedView } from 'src/app/data/saved-view' import { ConsumerStatusService } from 'src/app/services/consumer-status.service' import { DocumentService } from 'src/app/services/rest/document.service' import { diff --git a/src-ui/src/app/components/document-list/document-card-large/document-card-large.component.ts b/src-ui/src/app/components/document-list/document-card-large/document-card-large.component.ts index eb259a76b..a3d57d950 100644 --- a/src-ui/src/app/components/document-list/document-card-large/document-card-large.component.ts +++ b/src-ui/src/app/components/document-list/document-card-large/document-card-large.component.ts @@ -5,13 +5,16 @@ import { Output, ViewChild, } from '@angular/core' -import { Document } from 'src/app/data/document' +import { + DEFAULT_DISPLAY_FIELDS, + DisplayField, + Document, +} from 'src/app/data/document' import { DocumentService } from 'src/app/services/rest/document.service' import { SettingsService } from 'src/app/services/settings.service' import { NgbPopover } from '@ng-bootstrap/ng-bootstrap' import { SETTINGS_KEYS } from 'src/app/data/ui-settings' import { ComponentWithPermissions } from '../../with-permissions/with-permissions.component' -import { DEFAULT_DISPLAY_FIELDS, DisplayField } from 'src/app/data/saved-view' @Component({ selector: 'pngx-document-card-large', diff --git a/src-ui/src/app/components/document-list/document-card-small/document-card-small.component.ts b/src-ui/src/app/components/document-list/document-card-small/document-card-small.component.ts index fa332c8c9..5cd583fb0 100644 --- a/src-ui/src/app/components/document-list/document-card-small/document-card-small.component.ts +++ b/src-ui/src/app/components/document-list/document-card-small/document-card-small.component.ts @@ -6,13 +6,16 @@ import { ViewChild, } from '@angular/core' import { map } from 'rxjs/operators' -import { Document } from 'src/app/data/document' +import { + DEFAULT_DISPLAY_FIELDS, + DisplayField, + Document, +} from 'src/app/data/document' import { DocumentService } from 'src/app/services/rest/document.service' import { SettingsService } from 'src/app/services/settings.service' import { NgbPopover } from '@ng-bootstrap/ng-bootstrap' import { SETTINGS_KEYS } from 'src/app/data/ui-settings' import { ComponentWithPermissions } from '../../with-permissions/with-permissions.component' -import { DEFAULT_DISPLAY_FIELDS, DisplayField } from 'src/app/data/saved-view' @Component({ selector: 'pngx-document-card-small', diff --git a/src-ui/src/app/components/document-list/document-list.component.spec.ts b/src-ui/src/app/components/document-list/document-list.component.spec.ts index 55039b3c6..ffe7def69 100644 --- a/src-ui/src/app/components/document-list/document-list.component.spec.ts +++ b/src-ui/src/app/components/document-list/document-list.component.spec.ts @@ -34,12 +34,7 @@ import { import { Subject, of, throwError } from 'rxjs' import { SavedViewService } from 'src/app/services/rest/saved-view.service' import { ActivatedRoute, Router, convertToParamMap } from '@angular/router' -import { - DEFAULT_DISPLAY_FIELDS, - DisplayMode, - DisplayField, - SavedView, -} from 'src/app/data/saved-view' +import { SavedView } from 'src/app/data/saved-view' import { FILTER_FULLTEXT_MORELIKE, FILTER_FULLTEXT_QUERY, @@ -52,7 +47,12 @@ import { DocumentCardSmallComponent } from './document-card-small/document-card- import { DocumentCardLargeComponent } from './document-card-large/document-card-large.component' import { DocumentTitlePipe } from 'src/app/pipes/document-title.pipe' import { UsernamePipe } from 'src/app/pipes/username.pipe' -import { Document } from 'src/app/data/document' +import { + DEFAULT_DISPLAY_FIELDS, + DisplayField, + DisplayMode, + Document, +} from 'src/app/data/document' import { DOCUMENT_SORT_FIELDS, DOCUMENT_SORT_FIELDS_FULLTEXT, diff --git a/src-ui/src/app/components/document-list/document-list.component.ts b/src-ui/src/app/components/document-list/document-list.component.ts index 9b6aae402..f898ba7b1 100644 --- a/src-ui/src/app/components/document-list/document-list.component.ts +++ b/src-ui/src/app/components/document-list/document-list.component.ts @@ -15,8 +15,8 @@ import { isFullTextFilterRule, } from 'src/app/utils/filter-rules' import { FILTER_FULLTEXT_MORELIKE } from 'src/app/data/filter-rule-type' -import { Document } from 'src/app/data/document' -import { DisplayMode, DisplayField, SavedView } from 'src/app/data/saved-view' +import { DisplayField, DisplayMode, Document } from 'src/app/data/document' +import { SavedView } from 'src/app/data/saved-view' import { SETTINGS_KEYS } from 'src/app/data/ui-settings' import { SortableDirective, diff --git a/src-ui/src/app/data/document.ts b/src-ui/src/app/data/document.ts index 910666f10..7d2c550ae 100644 --- a/src-ui/src/app/data/document.ts +++ b/src-ui/src/app/data/document.ts @@ -7,6 +7,83 @@ import { ObjectWithPermissions } from './object-with-permissions' import { DocumentNote } from './document-note' import { CustomFieldInstance } from './custom-field-instance' +export enum DisplayMode { + TABLE = 'table', + SMALL_CARDS = 'smallCards', + LARGE_CARDS = 'largeCards', +} + +export enum DisplayField { + TITLE = 'title', + CREATED = 'created', + ADDED = 'added', + TAGS = 'tag', + CORRESPONDENT = 'correspondent', + DOCUMENT_TYPE = 'documenttype', + STORAGE_PATH = 'storagepath', + CUSTOM_FIELD = 'custom_field_', + NOTES = 'note', + OWNER = 'owner', + SHARED = 'shared', + ASN = 'asn', +} + +export const DEFAULT_DISPLAY_FIELDS = [ + { + id: DisplayField.TITLE, + name: $localize`Title`, + }, + { + id: DisplayField.CREATED, + name: $localize`Created`, + }, + { + id: DisplayField.ADDED, + name: $localize`Added`, + }, + { + id: DisplayField.TAGS, + name: $localize`Tags`, + }, + { + id: DisplayField.CORRESPONDENT, + name: $localize`Correspondent`, + }, + { + id: DisplayField.DOCUMENT_TYPE, + name: $localize`Document type`, + }, + { + id: DisplayField.STORAGE_PATH, + name: $localize`Storage path`, + }, + { + id: DisplayField.NOTES, + name: $localize`Notes`, + }, + { + id: DisplayField.OWNER, + name: $localize`Owner`, + }, + { + id: DisplayField.SHARED, + name: $localize`Shared`, + }, + { + id: DisplayField.ASN, + name: $localize`ASN`, + }, +] + +export const DEFAULT_DASHBOARD_VIEW_PAGE_SIZE = 10 + +export const DEFAULT_DASHBOARD_DISPLAY_FIELDS = [ + DisplayField.CREATED, + DisplayField.TITLE, + DisplayField.TAGS, + DisplayField.CORRESPONDENT, +] + export interface SearchHit { score?: number rank?: number diff --git a/src-ui/src/app/data/saved-view.ts b/src-ui/src/app/data/saved-view.ts index a2de0d126..1dc35ed32 100644 --- a/src-ui/src/app/data/saved-view.ts +++ b/src-ui/src/app/data/saved-view.ts @@ -1,83 +1,7 @@ +import { DisplayMode, DisplayField } from './document' import { FilterRule } from './filter-rule' import { ObjectWithPermissions } from './object-with-permissions' -export enum DisplayMode { - TABLE = 'table', - SMALL_CARDS = 'smallCards', - LARGE_CARDS = 'largeCards', -} - -export enum DisplayField { - TITLE = 'title', - CREATED = 'created', - ADDED = 'added', - TAGS = 'tag', - CORRESPONDENT = 'correspondent', - DOCUMENT_TYPE = 'documenttype', - STORAGE_PATH = 'storagepath', - CUSTOM_FIELD = 'custom_field_', - NOTES = 'note', - OWNER = 'owner', - SHARED = 'shared', - ASN = 'asn', -} - -export const DEFAULT_DISPLAY_FIELDS = [ - { - id: DisplayField.TITLE, - name: $localize`Title`, - }, - { - id: DisplayField.CREATED, - name: $localize`Created`, - }, - { - id: DisplayField.ADDED, - name: $localize`Added`, - }, - { - id: DisplayField.TAGS, - name: $localize`Tags`, - }, - { - id: DisplayField.CORRESPONDENT, - name: $localize`Correspondent`, - }, - { - id: DisplayField.DOCUMENT_TYPE, - name: $localize`Document type`, - }, - { - id: DisplayField.STORAGE_PATH, - name: $localize`Storage path`, - }, - { - id: DisplayField.NOTES, - name: $localize`Notes`, - }, - { - id: DisplayField.OWNER, - name: $localize`Owner`, - }, - { - id: DisplayField.SHARED, - name: $localize`Shared`, - }, - { - id: DisplayField.ASN, - name: $localize`ASN`, - }, -] - -export const DEFAULT_DASHBOARD_VIEW_PAGE_SIZE = 10 - -export const DEFAULT_DASHBOARD_DISPLAY_FIELDS = [ - DisplayField.CREATED, - DisplayField.TITLE, - DisplayField.TAGS, - DisplayField.CORRESPONDENT, -] - export interface SavedView extends ObjectWithPermissions { name?: string diff --git a/src-ui/src/app/services/document-list-view.service.spec.ts b/src-ui/src/app/services/document-list-view.service.spec.ts index 3616779c2..e8779024e 100644 --- a/src-ui/src/app/services/document-list-view.service.spec.ts +++ b/src-ui/src/app/services/document-list-view.service.spec.ts @@ -12,19 +12,18 @@ import { FILTER_HAS_TAGS_ALL, FILTER_HAS_TAGS_ANY, } from '../data/filter-rule-type' -import { - DEFAULT_DISPLAY_FIELDS, - DisplayMode, - DisplayField, - SavedView, -} from '../data/saved-view' +import { SavedView } from '../data/saved-view' import { FilterRule } from '../data/filter-rule' import { RouterTestingModule } from '@angular/router/testing' import { routes } from 'src/app/app-routing.module' import { PermissionsGuard } from '../guards/permissions.guard' import { SettingsService } from './settings.service' import { SETTINGS_KEYS } from '../data/ui-settings' -import { DOCUMENT_LIST_SERVICE } from '../data/storage-keys' +import { + DisplayMode, + DisplayField, + DEFAULT_DISPLAY_FIELDS, +} from '../data/document' const documents = [ { diff --git a/src-ui/src/app/services/document-list-view.service.ts b/src-ui/src/app/services/document-list-view.service.ts index 4ae301081..eba678cad 100644 --- a/src-ui/src/app/services/document-list-view.service.ts +++ b/src-ui/src/app/services/document-list-view.service.ts @@ -7,13 +7,13 @@ import { cloneFilterRules, isFullTextFilterRule, } from '../utils/filter-rules' -import { Document } from '../data/document' import { DEFAULT_DISPLAY_FIELDS, - DisplayMode, DisplayField, - SavedView, -} from '../data/saved-view' + DisplayMode, + Document, +} from '../data/document' +import { SavedView } from '../data/saved-view' import { SETTINGS_KEYS } from '../data/ui-settings' import { DOCUMENT_LIST_SERVICE } from '../data/storage-keys' import { paramsFromViewState, paramsToViewState } from '../utils/query-params' diff --git a/src-ui/src/app/services/settings.service.spec.ts b/src-ui/src/app/services/settings.service.spec.ts index d3970e1ae..f0ce0d1c9 100644 --- a/src-ui/src/app/services/settings.service.spec.ts +++ b/src-ui/src/app/services/settings.service.spec.ts @@ -12,14 +12,11 @@ import { environment } from 'src/environments/environment' import { AppModule } from '../app.module' import { UiSettings, SETTINGS_KEYS } from '../data/ui-settings' import { SettingsService } from './settings.service' -import { - DEFAULT_DISPLAY_FIELDS, - DisplayField, - SavedView, -} from '../data/saved-view' +import { SavedView } from '../data/saved-view' import { CustomFieldsService } from './rest/custom-fields.service' import { CustomFieldDataType } from '../data/custom-field' import { PermissionsService } from './permissions.service' +import { DEFAULT_DISPLAY_FIELDS, DisplayField } from '../data/document' const customFields = [ { diff --git a/src-ui/src/app/services/settings.service.ts b/src-ui/src/app/services/settings.service.ts index c8d78f777..447fa058d 100644 --- a/src-ui/src/app/services/settings.service.ts +++ b/src-ui/src/app/services/settings.service.ts @@ -25,12 +25,9 @@ import { PermissionsService, } from './permissions.service' import { ToastService } from './toast.service' -import { - DEFAULT_DISPLAY_FIELDS, - DisplayField, - SavedView, -} from '../data/saved-view' +import { SavedView } from '../data/saved-view' import { CustomFieldsService } from './rest/custom-fields.service' +import { DEFAULT_DISPLAY_FIELDS, DisplayField } from '../data/document' export interface LanguageOption { code: string