-
{
+ @Input() title: string = $localize`Selected items`
+
@Input() items: { id: string; name: string }[] = []
public selectedItems: { id: string; name: string }[] = []
@@ -53,7 +55,10 @@ export class DragDropSelectComponent extends AbstractInputComponent {
0,
this.unselectedItems[event.previousIndex]
)
- } else {
+ } else if (
+ event.container === this.unselectedList &&
+ event.previousContainer === this.selectedList
+ ) {
this.selectedItems.splice(event.previousIndex, 1)
}
this.onChange(this.selectedItems.map((i) => i.id))
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 754a90f69..63f90ccf9 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
@@ -19,7 +19,7 @@ import {
} from 'src/app/data/filter-rule-type'
import {
DashboardViewMode,
- DashboardViewTableColumn,
+ DocumentDisplayField,
SavedView,
} from 'src/app/data/saved-view'
import { IfPermissionsDirective } from 'src/app/directives/if-permissions.directive'
@@ -59,14 +59,14 @@ const savedView: SavedView = {
dashboard_view_limit: 20,
dashboard_view_mode: DashboardViewMode.TABLE,
document_display_fields: [
- DashboardViewTableColumn.CREATED,
- DashboardViewTableColumn.TITLE,
- DashboardViewTableColumn.TAGS,
- DashboardViewTableColumn.CORRESPONDENT,
- DashboardViewTableColumn.DOCUMENT_TYPE,
- DashboardViewTableColumn.STORAGE_PATH,
- `${DashboardViewTableColumn.CUSTOM_FIELD}11` as any,
- `${DashboardViewTableColumn.CUSTOM_FIELD}15` as any,
+ DocumentDisplayField.CREATED,
+ DocumentDisplayField.TITLE,
+ DocumentDisplayField.TAGS,
+ DocumentDisplayField.CORRESPONDENT,
+ DocumentDisplayField.DOCUMENT_TYPE,
+ DocumentDisplayField.STORAGE_PATH,
+ `${DocumentDisplayField.CUSTOM_FIELD}11` as any,
+ `${DocumentDisplayField.CUSTOM_FIELD}15` as any,
],
}
@@ -321,54 +321,52 @@ describe('SavedViewWidgetComponent', () => {
})
it('should get correct column title', () => {
- expect(component.getColumnTitle(DashboardViewTableColumn.TITLE)).toEqual(
+ expect(component.getColumnTitle(DocumentDisplayField.TITLE)).toEqual(
'Title'
)
- expect(component.getColumnTitle(DashboardViewTableColumn.CREATED)).toEqual(
+ expect(component.getColumnTitle(DocumentDisplayField.CREATED)).toEqual(
'Created'
)
- expect(component.getColumnTitle(DashboardViewTableColumn.ADDED)).toEqual(
+ expect(component.getColumnTitle(DocumentDisplayField.ADDED)).toEqual(
'Added'
)
- expect(component.getColumnTitle(DashboardViewTableColumn.TAGS)).toEqual(
- 'Tags'
- )
+ expect(component.getColumnTitle(DocumentDisplayField.TAGS)).toEqual('Tags')
expect(
- component.getColumnTitle(DashboardViewTableColumn.CORRESPONDENT)
+ component.getColumnTitle(DocumentDisplayField.CORRESPONDENT)
).toEqual('Correspondent')
expect(
- component.getColumnTitle(DashboardViewTableColumn.DOCUMENT_TYPE)
+ component.getColumnTitle(DocumentDisplayField.DOCUMENT_TYPE)
).toEqual('Document type')
- expect(
- component.getColumnTitle(DashboardViewTableColumn.STORAGE_PATH)
- ).toEqual('Storage path')
+ expect(component.getColumnTitle(DocumentDisplayField.STORAGE_PATH)).toEqual(
+ 'Storage path'
+ )
})
it('should check if column is visible including permissions', () => {
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.TITLE)
+ component.visibleColumns.includes(DocumentDisplayField.TITLE)
).toBeTruthy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.CREATED)
+ component.visibleColumns.includes(DocumentDisplayField.CREATED)
).toBeTruthy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.ADDED)
+ component.visibleColumns.includes(DocumentDisplayField.ADDED)
).toBeTruthy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.TAGS)
+ component.visibleColumns.includes(DocumentDisplayField.TAGS)
).toBeTruthy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.CORRESPONDENT)
+ component.visibleColumns.includes(DocumentDisplayField.CORRESPONDENT)
).toBeTruthy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.DOCUMENT_TYPE)
+ component.visibleColumns.includes(DocumentDisplayField.DOCUMENT_TYPE)
).toBeTruthy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.STORAGE_PATH)
+ component.visibleColumns.includes(DocumentDisplayField.STORAGE_PATH)
).toBeTruthy()
expect(
component.visibleColumns.includes(
- `${DashboardViewTableColumn.CUSTOM_FIELD}11` as any
+ `${DocumentDisplayField.CUSTOM_FIELD}11` as any
)
).toBeTruthy()
@@ -378,20 +376,20 @@ describe('SavedViewWidgetComponent', () => {
.mockReturnValue(false)
component.ngOnInit()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.TAGS)
+ component.visibleColumns.includes(DocumentDisplayField.TAGS)
).toBeFalsy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.CORRESPONDENT)
+ component.visibleColumns.includes(DocumentDisplayField.CORRESPONDENT)
).toBeFalsy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.DOCUMENT_TYPE)
+ component.visibleColumns.includes(DocumentDisplayField.DOCUMENT_TYPE)
).toBeFalsy()
expect(
- component.visibleColumns.includes(DashboardViewTableColumn.STORAGE_PATH)
+ component.visibleColumns.includes(DocumentDisplayField.STORAGE_PATH)
).toBeFalsy()
expect(
component.visibleColumns.includes(
- `${DashboardViewTableColumn.CUSTOM_FIELD}11` as any
+ `${DocumentDisplayField.CUSTOM_FIELD}11` as any
)
).toBeFalsy()
})
@@ -400,13 +398,13 @@ describe('SavedViewWidgetComponent', () => {
expect(
component.getMonetaryCustomFieldValue(
documentResults[2],
- `${DashboardViewTableColumn.CUSTOM_FIELD}3`
+ `${DocumentDisplayField.CUSTOM_FIELD}3`
)
).toEqual([123, 'EUR'])
expect(
component.getMonetaryCustomFieldValue(
documentResults[0],
- `${DashboardViewTableColumn.CUSTOM_FIELD}999`
+ `${DocumentDisplayField.CUSTOM_FIELD}999`
)
).toEqual([null, null])
})
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 f771136c2..b2792f49d 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
@@ -10,10 +10,10 @@ import { Router } from '@angular/router'
import { Subject, takeUntil } from 'rxjs'
import { Document } from 'src/app/data/document'
import {
- DashboardViewTableColumn,
+ DocumentDisplayField,
DashboardViewMode,
SavedView,
- document_display_fields,
+ DOCUMENT_DISPLAY_FIELDS,
} from 'src/app/data/saved-view'
import { ConsumerStatusService } from 'src/app/services/consumer-status.service'
import { DocumentService } from 'src/app/services/rest/document.service'
@@ -46,7 +46,7 @@ export class SavedViewWidgetComponent
implements OnInit, OnDestroy
{
public DashboardViewMode = DashboardViewMode
- public DashboardViewTableColumn = DashboardViewTableColumn
+ public DashboardViewTableColumn = DocumentDisplayField
public CustomFieldDataType = CustomFieldDataType
loading: boolean = true
@@ -79,10 +79,10 @@ export class SavedViewWidgetComponent
mouseOnPreview = false
popoverHidden = true
- visibleColumns: DashboardViewTableColumn[] = [
- DashboardViewTableColumn.TITLE,
- DashboardViewTableColumn.CREATED,
- DashboardViewTableColumn.ADDED,
+ visibleColumns: DocumentDisplayField[] = [
+ DocumentDisplayField.TITLE,
+ DocumentDisplayField.CREATED,
+ DocumentDisplayField.ADDED,
]
docLinkDocuments: Document[] = []
@@ -115,7 +115,7 @@ export class SavedViewWidgetComponent
let type: PermissionType = Object.values(PermissionType).find((t) =>
t.includes(column)
)
- if (column.startsWith(DashboardViewTableColumn.CUSTOM_FIELD)) {
+ if (column.startsWith(DocumentDisplayField.CUSTOM_FIELD)) {
type = PermissionType.CustomField
}
if (
@@ -249,12 +249,12 @@ export class SavedViewWidgetComponent
}, 300)
}
- public getColumnTitle(column: DashboardViewTableColumn): string {
- if (column.startsWith(DashboardViewTableColumn.CUSTOM_FIELD)) {
+ public getColumnTitle(column: DocumentDisplayField): string {
+ if (column.startsWith(DocumentDisplayField.CUSTOM_FIELD)) {
const id = column.split('_')[2]
return this.customFields.find((c) => c.id === parseInt(id))?.name
}
- return document_display_fields.find((c) => c.id === column)?.name
+ return DOCUMENT_DISPLAY_FIELDS.find((c) => c.id === column)?.name
}
public getCustomFieldDataType(column_id: string): string {
@@ -285,9 +285,7 @@ export class SavedViewWidgetComponent
let docIds = []
let docLinkColumns = []
this.savedView.document_display_fields
- ?.filter((column) =>
- column.startsWith(DashboardViewTableColumn.CUSTOM_FIELD)
- )
+ ?.filter((column) => column.startsWith(DocumentDisplayField.CUSTOM_FIELD))
.forEach((column) => {
if (
this.getCustomFieldDataType(column) ===
diff --git a/src-ui/src/app/data/saved-view.ts b/src-ui/src/app/data/saved-view.ts
index f0564ca59..bfd8b42f6 100644
--- a/src-ui/src/app/data/saved-view.ts
+++ b/src-ui/src/app/data/saved-view.ts
@@ -6,7 +6,7 @@ export enum DashboardViewMode {
SMALL_CARDS = 'small_cards',
}
-export enum DashboardViewTableColumn {
+export enum DocumentDisplayField {
TITLE = 'title',
CREATED = 'created',
ADDED = 'added',
@@ -17,33 +17,33 @@ export enum DashboardViewTableColumn {
CUSTOM_FIELD = 'custom_field_',
}
-export const document_display_fields = [
+export const DOCUMENT_DISPLAY_FIELDS = [
{
- id: DashboardViewTableColumn.TITLE,
+ id: DocumentDisplayField.TITLE,
name: $localize`Title`,
},
{
- id: DashboardViewTableColumn.CREATED,
+ id: DocumentDisplayField.CREATED,
name: $localize`Created`,
},
{
- id: DashboardViewTableColumn.ADDED,
+ id: DocumentDisplayField.ADDED,
name: $localize`Added`,
},
{
- id: DashboardViewTableColumn.TAGS,
+ id: DocumentDisplayField.TAGS,
name: $localize`Tags`,
},
{
- id: DashboardViewTableColumn.CORRESPONDENT,
+ id: DocumentDisplayField.CORRESPONDENT,
name: $localize`Correspondent`,
},
{
- id: DashboardViewTableColumn.DOCUMENT_TYPE,
+ id: DocumentDisplayField.DOCUMENT_TYPE,
name: $localize`Document type`,
},
{
- id: DashboardViewTableColumn.STORAGE_PATH,
+ id: DocumentDisplayField.STORAGE_PATH,
name: $localize`Storage path`,
},
]
@@ -65,5 +65,5 @@ export interface SavedView extends ObjectWithPermissions {
dashboard_view_mode?: DashboardViewMode
- document_display_fields?: DashboardViewTableColumn[]
+ document_display_fields?: DocumentDisplayField[]
}