]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Refactoring a few frontend components
authorshamoon <4887959+shamoon@users.noreply.github.com>
Thu, 11 May 2023 19:49:33 +0000 (12:49 -0700)
committershamoon <4887959+shamoon@users.noreply.github.com>
Thu, 11 May 2023 19:49:33 +0000 (12:49 -0700)
src-ui/src/app/components/common/permissions-filter-dropdown/permissions-filter-dropdown.component.ts
src-ui/src/app/components/common/permissions-select/permissions-select.component.ts
src-ui/src/app/components/document-detail/document-detail.component.ts

index bb6f5569dd46ce6c715dce56d1937918229444f0..338f999e76027ed213934011005bf9573d7dd785 100644 (file)
@@ -8,6 +8,7 @@ import {
 } from 'src/app/services/permissions.service'
 import { UserService } from 'src/app/services/rest/user.service'
 import { SettingsService } from 'src/app/services/settings.service'
+import { ComponentWithPermissions } from '../../with-permissions/with-permissions.component'
 
 export class PermissionsSelectionModel {
   ownerFilter: OwnerFilterType
@@ -38,9 +39,7 @@ export enum OwnerFilterType {
   templateUrl: './permissions-filter-dropdown.component.html',
   styleUrls: ['./permissions-filter-dropdown.component.scss'],
 })
-export class PermissionsFilterDropdownComponent {
-  public PermissionAction = PermissionAction
-  public PermissionType = PermissionType
+export class PermissionsFilterDropdownComponent extends ComponentWithPermissions {
   public OwnerFilterType = OwnerFilterType
 
   @Input()
@@ -71,6 +70,7 @@ export class PermissionsFilterDropdownComponent {
     userService: UserService,
     private settingsService: SettingsService
   ) {
+    super()
     if (
       permissionsService.currentUserCan(
         PermissionAction.View,
index aa2b2bea0349df4f6e01833da747a92fa7889738..924ffd662d581a0193e4d4e08f23dc26f1bcd5b0 100644 (file)
@@ -11,6 +11,7 @@ import {
   PermissionsService,
   PermissionType,
 } from 'src/app/services/permissions.service'
+import { ComponentWithPermissions } from '../../with-permissions/with-permissions.component'
 
 @Component({
   providers: [
@@ -25,11 +26,9 @@ import {
   styleUrls: ['./permissions-select.component.scss'],
 })
 export class PermissionsSelectComponent
+  extends ComponentWithPermissions
   implements OnInit, ControlValueAccessor
 {
-  PermissionType = PermissionType
-  PermissionAction = PermissionAction
-
   @Input()
   title: string = 'Permissions'
 
@@ -62,6 +61,7 @@ export class PermissionsSelectComponent
   inheritedWarning: string = $localize`Inherited from group`
 
   constructor(private readonly permissionsService: PermissionsService) {
+    super()
     for (const type in PermissionType) {
       const control = new FormGroup({})
       for (const action in PermissionAction) {
index c9e98f03070f5fe64fdc41d416695aebe8183275..60b1ab94bba6587f850ece0f8a923250c93e1cb5 100644 (file)
@@ -44,6 +44,7 @@ import { PaperlessUser } from 'src/app/data/paperless-user'
 import { UserService } from 'src/app/services/rest/user.service'
 import { PaperlessDocumentNote } from 'src/app/data/paperless-document-note'
 import { HttpClient } from '@angular/common/http'
+import { ComponentWithPermissions } from '../with-permissions/with-permissions.component'
 
 enum DocumentDetailNavIDs {
   Details = 1,
@@ -60,6 +61,7 @@ enum DocumentDetailNavIDs {
   styleUrls: ['./document-detail.component.scss'],
 })
 export class DocumentDetailComponent
+  extends ComponentWithPermissions
   implements OnInit, OnDestroy, DirtyComponent
 {
   @ViewChild('inputTitle')
@@ -127,8 +129,6 @@ export class DocumentDetailComponent
     }
   }
 
-  PermissionAction = PermissionAction
-  PermissionType = PermissionType
   DocumentDetailNavIDs = DocumentDetailNavIDs
   activeNavID: number
 
@@ -148,7 +148,9 @@ export class DocumentDetailComponent
     private permissionsService: PermissionsService,
     private userService: UserService,
     private http: HttpClient
-  ) {}
+  ) {
+    super()
+  }
 
   titleKeyUp(event) {
     this.titleSubject.next(event.target?.value)