diff --git a/src-ui/src/app/services/rest/saved-view.service.spec.ts b/src-ui/src/app/services/rest/saved-view.service.spec.ts index 9a84fbd2c..7aea1a827 100644 --- a/src-ui/src/app/services/rest/saved-view.service.spec.ts +++ b/src-ui/src/app/services/rest/saved-view.service.spec.ts @@ -114,6 +114,25 @@ describe(`Additional service tests for SavedViewService`, () => { ]) }) + it('should treat empty display_fields as null', () => { + subscription = service + .patch({ + id: 1, + name: 'Saved View', + show_on_dashboard: true, + show_in_sidebar: true, + sort_field: 'name', + sort_reverse: true, + filter_rules: [], + display_fields: [], + }) + .subscribe() + const req = httpTestingController.expectOne( + `${environment.apiBaseUrl}${endpoint}/1/` + ) + expect(req.request.body.display_fields).toBeNull() + }) + beforeEach(() => { // Dont need to setup again diff --git a/src-ui/src/app/services/rest/saved-view.service.ts b/src-ui/src/app/services/rest/saved-view.service.ts index a23de7cd1..4d9361b21 100644 --- a/src-ui/src/app/services/rest/saved-view.service.ts +++ b/src-ui/src/app/services/rest/saved-view.service.ts @@ -87,8 +87,11 @@ export class SavedViewService extends AbstractPaperlessService { return super.create(o).pipe(tap(() => this.reload())) } - update(o: SavedView) { - return super.update(o).pipe(tap(() => this.reload())) + patch(o: SavedView): Observable { + if (o.display_fields?.length === 0) { + o.display_fields = null + } + return super.patch(o) } patchMany(objects: SavedView[]): Observable {