mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	refactored metadata views
This commit is contained in:
		| @@ -49,6 +49,7 @@ import { WelcomeWidgetComponent } from './components/dashboard/widgets/welcome-w | ||||
| import { YesNoPipe } from './pipes/yes-no.pipe'; | ||||
| import { FileSizePipe } from './pipes/file-size.pipe'; | ||||
| import { DocumentTitlePipe } from './pipes/document-title.pipe'; | ||||
| import { MetadataCollapseComponent } from './components/document-detail/metadata-collapse/metadata-collapse.component'; | ||||
|  | ||||
| @NgModule({ | ||||
|   declarations: [ | ||||
| @@ -89,7 +90,8 @@ import { DocumentTitlePipe } from './pipes/document-title.pipe'; | ||||
|     WelcomeWidgetComponent, | ||||
|     YesNoPipe, | ||||
|     FileSizePipe, | ||||
|     DocumentTitlePipe | ||||
|     DocumentTitlePipe, | ||||
|     MetadataCollapseComponent | ||||
|   ], | ||||
|   imports: [ | ||||
|     BrowserModule, | ||||
|   | ||||
| @@ -110,53 +110,8 @@ | ||||
|                             </tbody> | ||||
|                         </table> | ||||
|  | ||||
|                         <h6 *ngIf="metadata?.original_metadata.length > 0"> | ||||
|                             <button type="button" class="btn btn-outline-secondary btn-sm mr-2" | ||||
|                                 (click)="expandOriginalMetadata = !expandOriginalMetadata" aria-controls="collapseExample"> | ||||
|                                 <svg class="buttonicon" fill="currentColor" *ngIf="!expandOriginalMetadata"> | ||||
|                                     <use xlink:href="assets/bootstrap-icons.svg#caret-down" /> | ||||
|                                 </svg> | ||||
|                                 <svg class="buttonicon" fill="currentColor" *ngIf="expandOriginalMetadata"> | ||||
|                                     <use xlink:href="assets/bootstrap-icons.svg#caret-up" /> | ||||
|                                 </svg> | ||||
|                             </button> | ||||
|                             Original document metadata | ||||
|                         </h6> | ||||
|  | ||||
|                         <div #collapse="ngbCollapse" [(ngbCollapse)]="!expandOriginalMetadata"> | ||||
|                             <table class="table table-borderless"> | ||||
|                                 <tbody> | ||||
|                                     <tr *ngFor="let m of metadata?.original_metadata"> | ||||
|                                         <td>{{m.prefix}}:{{m.key}}</td> | ||||
|                                         <td>{{m.value}}</td> | ||||
|                                     </tr> | ||||
|                                 </tbody> | ||||
|                             </table> | ||||
|                         </div> | ||||
|  | ||||
|                         <h6 *ngIf="metadata?.has_archive_version && metadata?.archive_metadata.length > 0"> | ||||
|                             <button type="button" class="btn btn-outline-secondary btn-sm mr-2" | ||||
|                                 (click)="expandArchivedMetadata = !expandArchivedMetadata" aria-controls="collapseExample"> | ||||
|                                 <svg class="buttonicon" fill="currentColor" *ngIf="!expandArchivedMetadata"> | ||||
|                                     <use xlink:href="assets/bootstrap-icons.svg#caret-down" /> | ||||
|                                 </svg> | ||||
|                                 <svg class="buttonicon" fill="currentColor" *ngIf="expandArchivedMetadata"> | ||||
|                                     <use xlink:href="assets/bootstrap-icons.svg#caret-up" /> | ||||
|                                 </svg> | ||||
|                             </button> | ||||
|                             Archived document metadata | ||||
|                         </h6> | ||||
|  | ||||
|                         <div #collapse="ngbCollapse" [(ngbCollapse)]="!expandArchivedMetadata"> | ||||
|                             <table class="table table-borderless"> | ||||
|                                 <tbody> | ||||
|                                     <tr *ngFor="let m of metadata?.archive_metadata"> | ||||
|                                         <td>{{m.prefix}}:{{m.key}}</td> | ||||
|                                         <td>{{m.value}}</td> | ||||
|                                     </tr> | ||||
|                                 </tbody> | ||||
|                             </table> | ||||
|                         </div> | ||||
|                         <app-metadata-collapse title="Original document metadata" [metadata]="metadata.original_metadata" *ngIf="metadata?.original_metadata.length > 0"></app-metadata-collapse> | ||||
|                         <app-metadata-collapse title="Archived document metadata" [metadata]="metadata.archive_metadata" *ngIf="metadata?.archive_metadata.length > 0"></app-metadata-collapse> | ||||
|  | ||||
|                     </ng-template> | ||||
|                 </li> | ||||
|   | ||||
| @@ -0,0 +1,23 @@ | ||||
| <h6> | ||||
|   <button type="button" class="btn btn-outline-secondary btn-sm mr-2" | ||||
|       (click)="expand = !expand"> | ||||
|       <svg class="buttonicon" fill="currentColor" *ngIf="!expand"> | ||||
|           <use xlink:href="assets/bootstrap-icons.svg#caret-down" /> | ||||
|       </svg> | ||||
|       <svg class="buttonicon" fill="currentColor" *ngIf="expand"> | ||||
|           <use xlink:href="assets/bootstrap-icons.svg#caret-up" /> | ||||
|       </svg> | ||||
|   </button> | ||||
|   {{title}} | ||||
| </h6> | ||||
|  | ||||
| <div #collapse="ngbCollapse" [(ngbCollapse)]="!expand"> | ||||
|   <table class="table table-borderless"> | ||||
|       <tbody> | ||||
|           <tr *ngFor="let m of metadata"> | ||||
|               <td>{{m.prefix}}:{{m.key}}</td> | ||||
|               <td>{{m.value}}</td> | ||||
|           </tr> | ||||
|       </tbody> | ||||
|   </table> | ||||
| </div> | ||||
| @@ -0,0 +1,25 @@ | ||||
| import { ComponentFixture, TestBed } from '@angular/core/testing'; | ||||
|  | ||||
| import { MetadataCollapseComponent } from './metadata-collapse.component'; | ||||
|  | ||||
| describe('MetadataCollapseComponent', () => { | ||||
|   let component: MetadataCollapseComponent; | ||||
|   let fixture: ComponentFixture<MetadataCollapseComponent>; | ||||
|  | ||||
|   beforeEach(async () => { | ||||
|     await TestBed.configureTestingModule({ | ||||
|       declarations: [ MetadataCollapseComponent ] | ||||
|     }) | ||||
|     .compileComponents(); | ||||
|   }); | ||||
|  | ||||
|   beforeEach(() => { | ||||
|     fixture = TestBed.createComponent(MetadataCollapseComponent); | ||||
|     component = fixture.componentInstance; | ||||
|     fixture.detectChanges(); | ||||
|   }); | ||||
|  | ||||
|   it('should create', () => { | ||||
|     expect(component).toBeTruthy(); | ||||
|   }); | ||||
| }); | ||||
| @@ -0,0 +1,23 @@ | ||||
| import { Component, Input, OnInit } from '@angular/core'; | ||||
|  | ||||
| @Component({ | ||||
|   selector: 'app-metadata-collapse', | ||||
|   templateUrl: './metadata-collapse.component.html', | ||||
|   styleUrls: ['./metadata-collapse.component.scss'] | ||||
| }) | ||||
| export class MetadataCollapseComponent implements OnInit { | ||||
|  | ||||
|   constructor() { } | ||||
|  | ||||
|   expand = false | ||||
|  | ||||
|   @Input() | ||||
|   metadata | ||||
|  | ||||
|   @Input() | ||||
|   title = "Metadata" | ||||
|  | ||||
|   ngOnInit(): void { | ||||
|   } | ||||
|  | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 jonaswinkler
					jonaswinkler