This is an automated email from the ASF dual-hosted git repository. hshpak pushed a commit to branch feat/DATALAB-2881/filter-function-to-Images-page in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit e7648ebe50c1a59cd526fd94048c145404237068 Merge: 9d7b94023 4c1fb7aa4 Author: Hennadii Shpak <[email protected]> AuthorDate: Wed Jul 27 12:17:51 2022 +0300 Merge pull request #1618 from apache/fix/DATALAB-2939/frontend_side fixed select of images template .../create-environment.component.html | 2 +- .../create-environment.component.ts | 2 +- .../src/app/resources/images/images.component.html | 12 +++++------ .../src/app/resources/images/images.component.ts | 23 +++++++++++++++------- .../src/app/resources/images/images.config.ts | 16 +++++++++++++++ .../src/app/resources/images/images.model.ts | 2 +- 6 files changed, 41 insertions(+), 16 deletions(-) diff --cc services/self-service/src/main/resources/webapp/src/app/resources/images/images.component.html index b594c8574,b594c8574..f93c78d1f --- a/services/self-service/src/main/resources/webapp/src/app/resources/images/images.component.html +++ b/services/self-service/src/main/resources/webapp/src/app/resources/images/images.component.html @@@ -25,7 -25,7 +25,7 @@@ [ngClass]="{'disabled-select': !isProjectsMoreThanOne}" > <mat-form-field> -- <mat-label>{{placeholder}}</mat-label> ++ <mat-label>{{placeholder.projectSelect}}</mat-label> <mat-select disableOptionCentering @@@ -234,22 -234,22 +234,22 @@@ </div> <bubble-up #actions class="list-menu" position="bottom-left" alternative="top-left"> <ul class="list-unstyled"> -- <li [matTooltip]="element.status !== 'ACTIVE' && 'The image cannot be shared because it is not in the "Created" status' -- || userName !== element.user && 'Images may be shared by creators only'" ++ <li [matTooltip]="element.status !== imageStatus.active && tooltipStatuses.activeOnly ++ || userName !== element.user && tooltipStatuses.creatorOnly" matTooltipPosition="above" -- [matTooltipDisabled]="userName === element.user && element.status === 'ACTIVE'" ++ [matTooltipDisabled]="userName === element.user && element.status === imageStatus.active" > <button class="action-button__share" (click)="onShare(element)" -- [disabled]="userName !== element.user || element.status !== 'ACTIVE'" ++ [disabled]="userName !== element.user || element.status !== imageStatus.active" > <i class="material-icons">screen_share</i> <span>Share</span> </button> </li> <li -- matTooltip="Unable to terminate notebook because at least one compute is in progress" ++ [matTooltip]=tooltipStatuses.unableTerminate matTooltipPosition="above" > <button class="action-button__share"> diff --cc services/self-service/src/main/resources/webapp/src/app/resources/images/images.component.ts index 47fb5b64e,47fb5b64e..cb581f502 --- a/services/self-service/src/main/resources/webapp/src/app/resources/images/images.component.ts +++ b/services/self-service/src/main/resources/webapp/src/app/resources/images/images.component.ts @@@ -24,10 -24,10 +24,17 @@@ import { ToastrService } from 'ngx-toas import { GeneralEnvironmentStatus } from '../../administration/management/management.model'; import { HealthStatusService, UserImagesPageService } from '../../core/services'; import { ImageModel, ProjectModel } from './images.model'; --import { Image_Table_Column_Headers, Image_Table_Titles, Localstorage_Key, Shared_Status, Toaster_Message } from './images.config'; ++import { ++ TooltipStatuses, ++ Image_Table_Column_Headers, ++ Image_Table_Titles, ++ ImageStatuses, ++ Localstorage_Key, ++ Placeholders, ++ Shared_Status, ++} from './images.config'; import { MatDialog } from '@angular/material/dialog'; import { ShareImageDialogComponent } from '../exploratory/share-image/share-image-dialog.component'; --import { Observable } from 'rxjs'; import { ImagesService } from './images.service'; import { ProgressBarService } from '../../core/services/progress-bar.service'; import { ImageDetailDialogComponent } from '../exploratory/image-detail-dialog/image-detail-dialog.component'; @@@ -43,19 -43,19 +50,21 @@@ }) export class ImagesComponent implements OnInit { ++ readonly tableHeaderCellTitles: typeof Image_Table_Column_Headers = Image_Table_Column_Headers; ++ readonly displayedColumns: typeof Image_Table_Titles = Image_Table_Titles; ++ readonly placeholder: typeof Placeholders = Placeholders; ++ readonly sharedStatus: typeof Shared_Status = Shared_Status; ++ readonly imageStatus: typeof ImageStatuses = ImageStatuses; ++ readonly tooltipStatuses: typeof TooltipStatuses = TooltipStatuses; ++ isActionsOpen: boolean = false; healthStatus: GeneralEnvironmentStatus; -- tableHeaderCellTitles: typeof Image_Table_Column_Headers = Image_Table_Column_Headers; -- displayedColumns: typeof Image_Table_Titles = Image_Table_Titles; dataSource: ImageModel[] = []; checkboxSelected: boolean = false; projectList: string[] = []; activeProjectName: string = ''; userName!: string; -- readonly placeholder: string = 'Select project'; -- readonly sharedStatus: typeof Shared_Status = Shared_Status; -- private cashedImageListData: ProjectModel[] = []; constructor( diff --cc services/self-service/src/main/resources/webapp/src/app/resources/images/images.config.ts index 12130fed9,12130fed9..9628420e7 --- a/services/self-service/src/main/resources/webapp/src/app/resources/images/images.config.ts +++ b/services/self-service/src/main/resources/webapp/src/app/resources/images/images.config.ts @@@ -52,3 -52,3 +52,19 @@@ export enum Localstorage_Key export enum Toaster_Message { successShare = 'The image has been shared with all current Regular Users on the project!' } ++ ++export enum Placeholders { ++ projectSelect = 'Select project' ++} ++ ++export enum ImageStatuses { ++ creating = 'CREATING', ++ active = 'ACTIVE', ++ failed = 'FAILED' ++} ++ ++export enum TooltipStatuses { ++ activeOnly = 'The image cannot be shared because it is not in the "Active" status', ++ creatorOnly = 'Images may be shared by creators only', ++ unableTerminate = 'Unable to terminate notebook because at least one compute is in progress' ++} diff --cc services/self-service/src/main/resources/webapp/src/app/resources/images/images.model.ts index 6d5c8bafd,6d5c8bafd..ab63a8842 --- a/services/self-service/src/main/resources/webapp/src/app/resources/images/images.model.ts +++ b/services/self-service/src/main/resources/webapp/src/app/resources/images/images.model.ts @@@ -14,7 -14,7 +14,7 @@@ export interface ImageModel name: string; project: string; shared: boolean; -- status: 'created' | 'creating' | 'terminated' | 'terminating' | 'failed'; ++ status: 'active' | 'creating' | 'terminated' | 'terminating' | 'failed'; user: string; isSelected?: boolean; libraries: Library[]; --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
