diff --git a/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html index aeecab805..72a9d6c3d 100644 --- a/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html @@ -29,7 +29,7 @@ @@ -154,7 +154,7 @@
diff --git a/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.scss b/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.scss index f7cb8f52a..bfedd995b 100644 --- a/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.scss +++ b/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.scss @@ -3,6 +3,10 @@ .header-item { padding: 0 24px 0 10px; + + redaction-circle-button:not(:last-child) { + margin-right: 4px !important; + } } redaction-table-col-name::ng-deep { diff --git a/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html index bcea4753b..f83253c24 100644 --- a/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html @@ -54,9 +54,9 @@
diff --git a/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.ts b/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.ts index e29a141bb..adb0bf99e 100644 --- a/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.ts +++ b/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.ts @@ -1,4 +1,11 @@ -import { Component, Injector, OnInit, QueryList, ViewChildren } from '@angular/core'; +import { + ChangeDetectionStrategy, + Component, + Injector, + OnInit, + QueryList, + ViewChildren +} from '@angular/core'; import { PermissionsService } from '@services/permissions.service'; import { UserService } from '@services/user.service'; import { User, UserControllerService } from '@redaction/red-ui-http'; @@ -13,10 +20,13 @@ import { SearchService } from '../../../shared/services/search.service'; import { ScreenStateService } from '../../../shared/services/screen-state.service'; import { SortingService } from '../../../../services/sorting.service'; import { NewBaseListingComponent } from '../../../shared/base/new-base-listing.component'; +import { Observable } from 'rxjs'; +import { map } from 'rxjs/operators'; @Component({ templateUrl: './user-listing-screen.component.html', styleUrls: ['./user-listing-screen.component.scss'], + changeDetection: ChangeDetectionStrategy.OnPush, providers: [FilterService, SearchService, ScreenStateService, SortingService] }) export class UserListingScreenComponent extends NewBaseListingComponent implements OnInit { @@ -39,8 +49,9 @@ export class UserListingScreenComponent extends NewBaseListingComponent im this._screenStateService.setIdKey('userId'); } - get canDeleteSelected(): boolean { - return this._screenStateService.selectedEntitiesIds.indexOf(this.userService.userId) === -1; + get canDeleteSelected$(): Observable { + const entities$ = this._screenStateService.selectedEntitiesIds$; + return entities$.pipe(map(all => all.indexOf(this.userService.userId) === -1)); } async ngOnInit() { @@ -74,11 +85,7 @@ export class UserListingScreenComponent extends NewBaseListingComponent im this._avatars.find(item => item.userId === user.userId).detectChanges(); } - toggleCollapsedDetails() { - this.collapsedDetails = !this.collapsedDetails; - } - - async bulkDelete() { + bulkDelete() { this.openDeleteUsersDialog( this._screenStateService.entities.filter(u => this.isSelected(u)) ); @@ -88,10 +95,6 @@ export class UserListingScreenComponent extends NewBaseListingComponent im return user.userId; } - protected _searchField(user: any): string { - return this.userService.getName(user); - } - private async _loadData() { this._screenStateService.setEntities( await this._userControllerService.getAllUsers().toPromise() diff --git a/apps/red-ui/src/app/modules/icons/icons.module.ts b/apps/red-ui/src/app/modules/icons/icons.module.ts index 0fdd3947e..a8dace459 100644 --- a/apps/red-ui/src/app/modules/icons/icons.module.ts +++ b/apps/red-ui/src/app/modules/icons/icons.module.ts @@ -62,6 +62,7 @@ export class IconsModule { 'pages', 'plus', 'preview', + 'put-back', 'radio-indeterminate', 'radio-selected', 'read-only', diff --git a/apps/red-ui/src/assets/icons/general/put-back.svg b/apps/red-ui/src/assets/icons/general/put-back.svg new file mode 100644 index 000000000..3a0466e50 --- /dev/null +++ b/apps/red-ui/src/assets/icons/general/put-back.svg @@ -0,0 +1,20 @@ + + + 711C9D82-CAA8-47BE-954A-A9DA22CE85E6 + + + + + + + + + + + + + +