You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by dg...@apache.org on 2020/11/09 15:17:32 UTC

[incubator-datalab] 02/03: [DATALAB-2149]: Fixed issue with long tags, added group name validation

This is an automated email from the ASF dual-hosted git repository.

dgnatyshyn pushed a commit to branch DATALAB-2147
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git

commit bd1c5d7c841540a3aa24e22a0be847b1cdddbb78
Author: Dmytro_Gnatyshyn <di...@ukr.net>
AuthorDate: Mon Nov 9 16:33:25 2020 +0200

    [DATALAB-2149]: Fixed issue with long tags,added group name validation
---
 .../src/app/administration/roles/roles.component.html    | 16 +++++++++++++---
 .../src/app/administration/roles/roles.component.scss    |  8 ++++++++
 .../src/app/administration/roles/roles.component.ts      |  4 ++++
 .../bucket-browser/bucket-browser.component.html         |  8 ++++----
 .../bucket-confirmation-dialog.component.html            |  4 ++--
 .../buckets-tree/bucket-tree.component.html              |  2 +-
 .../folder-tree/folder-tree.component.html               |  2 +-
 .../create-environment/create-environment.component.html |  4 ++--
 .../detail-dialog/detail-dialog.component.html           |  6 +++---
 .../resources-grid/resources-grid.component.html         |  2 +-
 .../webapp/src/app/resources/resources.component.html    |  4 ++--
 .../resources/webapp/src/assets/styles/_dialogs.scss     |  2 +-
 .../main/resources/webapp/src/assets/styles/_theme.scss  |  1 +
 13 files changed, 43 insertions(+), 20 deletions(-)

diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.html b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.html
index 0a39fbd..d89ce50 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.html
@@ -42,11 +42,17 @@
             contain letters, numbers, hyphens and '_'</div>
           <div class="error" *ngIf="setupGroupName.errors?.duplicate && setupGroupName.dirty">Group name already
             exists</div>
+          <div class="error" *ngIf="setupGroupName.errors?.long">Group name cannot be longer than 50 characters </div>
         </div>
         <div class="text-center m-bott-10">
           <button mat-raised-button (click)="resetDialog()" class="butt">Cancel</button>
-          <button mat-raised-button matStepperNext class="butt">Next<i
-              class="material-icons">keyboard_arrow_right</i></button>
+          <button mat-raised-button
+                  matStepperNext class="butt"
+                  [disabled]="!setupGroup || setupGroupName.errors?.long || setupGroupName.errors?.duplicate || setupGroupName.errors?.patterns"
+          >
+            Next
+            <i class="material-icons">keyboard_arrow_right</i>
+          </button>
         </div>
       </mat-step>
 
@@ -95,7 +101,11 @@
     <table mat-table [dataSource]="groupsData" class="projects-table mat-elevation-z6">
       <ng-container matColumnDef="name">
         <th mat-header-cell *matHeaderCellDef class="name"> Group name </th>
-        <td mat-cell *matCellDef="let element"> {{element.group}} </td>
+        <td mat-cell *matCellDef="let element" class="name">
+          <div class="d-flex">
+            <span [matTooltip]="element.group" matTooltipPosition="above" [matTooltipClass]="'full-size-tooltip'">{{element.group}}</span>
+          </div>
+        </td>
       </ng-container>
 
       <ng-container matColumnDef="roles">
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.scss b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.scss
index 1e0084e..3a13669 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.scss
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.scss
@@ -346,6 +346,14 @@ table {
 
   .name {
     width: 15%;
+    max-width: 200px;
+    padding-right: 10px;
+    overflow: hidden;
+    span{
+      overflow: hidden;
+      text-overflow: ellipsis;
+      display: block;
+    }
   }
 
   .roles {
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts
index d975ec5..ebb5e8e 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/roles/roles.component.ts
@@ -234,6 +234,10 @@ export class RolesComponent implements OnInit {
   public groupValidation(): ValidatorFn {
     const duplicateList: any = this.groupsData.map(item => item.group.toLowerCase());
     return <ValidatorFn>((control: FormControl) => {
+      if (control.value && control.value.length > 50) {
+        return { long: true };
+      }
+
       if (control.value && duplicateList.includes(CheckUtils.delimitersFiltering(control.value.toLowerCase()))) {
         return { duplicate: true };
       }
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
index 4b47372..dead714 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-browser.component.html
@@ -163,7 +163,7 @@
                         matTooltip="{{file.item}}"
                         matTooltipPosition="above"
                         matTooltipShowDelay="1000"
-                        [matTooltipClass]="'bucket-item-tooltip'"
+                        [matTooltipClass]="'full-size-tooltip'"
                   >
                     {{file.item}}
                 </span>
@@ -184,7 +184,7 @@
                   matTooltip="{{file.item}}"
                   matTooltipPosition="above"
                   matTooltipShowDelay="1000"
-                  [matTooltipClass]="'bucket-item-tooltip'"
+                  [matTooltipClass]="'full-size-tooltip'"
                 >
                   {{file.item}}
                 </span>
@@ -232,7 +232,7 @@
             <span
               class="ellipsis"
               matTooltip="{{file.name}}"
-              [matTooltipClass]="'bucket-item-tooltip'"
+              [matTooltipClass]="'full-size-tooltip'"
               matTooltipPosition="above"
             >
               {{file.name}}
@@ -240,7 +240,7 @@
           </div>
           <div class="second-block">
             <div class="upload-path">
-              <span class="ellipsis" matTooltip="{{file.path}}" matTooltipPosition="above" [matTooltipClass]="'bucket-item-tooltip'">{{file.path}}</span>
+              <span class="ellipsis" matTooltip="{{file.path}}" matTooltipPosition="above" [matTooltipClass]="'full-size-tooltip'">{{file.path}}</span>
             </div>
             <div class="size">{{file.size | convertFileSize}} </div>
             <div class="state">
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-confirmation-dialog/bucket-confirmation-dialog.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-confirmation-dialog/bucket-confirmation-dialog.component.html
index 642e1e6..674a709 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-confirmation-dialog/bucket-confirmation-dialog.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/bucket-confirmation-dialog/bucket-confirmation-dialog.component.html
@@ -49,7 +49,7 @@
                      matTooltip="{{object['item']}}"
                      matTooltipPosition="above"
                      matTooltipShowDelay="1000"
-                     [matTooltipClass]="'bucket-item-tooltip'">{{object['item']}}</div>
+                     [matTooltipClass]="'full-size-tooltip'">{{object['item']}}</div>
               </div>
               <div  class="size">{{object['children'] ? '-' : object['object'].size | convertFileSize}}</div>
             </mat-list-item>
@@ -74,7 +74,7 @@
           matTooltip="{{data.items}}"
           matTooltipPosition="above"
           matTooltipShowDelay="1000"
-          [matTooltipClass]="'bucket-item-tooltip'"
+          [matTooltipClass]="'full-size-tooltip'"
         >{{data.items}}</span> already exists in selected folder. How would you like to resolve this conflict?</p>
         <mat-radio-group
           aria-labelledby="upload-radio-group-label"
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
index 0da2a14..621370c 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/buckets-tree/bucket-tree.component.html
@@ -29,7 +29,7 @@
       matTooltip="{{node.name}}"
       matTooltipPosition="above"
       matTooltipShowDelay="1000"
-      [matTooltipClass]="'bucket-item-tooltip'"
+      [matTooltipClass]="'full-size-tooltip'"
     >{{node.name}}</div>
   </mat-tree-node>
   <mat-tree-node *matTreeNodeDef="let node;when: hasChild" matTreeNodePadding matTreeNodePaddingIndent="17">
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.html
index 6879271..8e7426d 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/bucket-browser/folder-tree/folder-tree.component.html
@@ -76,7 +76,7 @@
         matTooltip="{{node.item}}"
         matTooltipPosition="above"
         matTooltipShowDelay="1000"
-        [matTooltipClass]="'bucket-item-tooltip'"
+        [matTooltipClass]="'full-size-tooltip'"
       >
         {{node.item}}
       </span>
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/create-environment/create-environment.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/create-environment/create-environment.component.html
index 8cc78c2..59e5f76 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/create-environment/create-environment.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/create-environment/create-environment.component.html
@@ -65,7 +65,7 @@
           <div class="control selector-wrapper"
                [matTooltip]="'Notebook creations are not available. Please, check your permissions.'"
                matTooltipPosition="above"
-               [matTooltipClass]="'bucket-item-tooltip'"
+               [matTooltipClass]="'full-size-tooltip'"
                [matTooltipDisabled]="!(templates.length === 0 && this.createExploratoryForm.controls.endpoint.value)"
           >
             <span class="form-field-wrapper"  [ngClass]="{ 'not-active' : !templates.length  || (templates.length === 0 && this.createExploratoryForm.controls.endpoint.value)}">
@@ -127,7 +127,7 @@
           <div class="control selector-wrapper"
                [matTooltip]="'Instance size are not available. Please, check your permissions.'"
                matTooltipPosition="above"
-               [matTooltipClass]="'bucket-item-tooltip'"
+               [matTooltipClass]="'full-size-tooltip'"
                [matTooltipDisabled]="!(!areShapes && currentTemplate)"
           >
             <span class="form-field-wrapper" [ngClass]="{ 'not-active': !currentTemplate || !areShapes && currentTemplate}">
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
index af5b5a9..d73dae3 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/exploratory/detail-dialog/detail-dialog.component.html
@@ -122,7 +122,7 @@
                     (mouseover)="showCopyIcon('bucket')"
                     [matTooltip]="notebook.bucket_name + '@' + notebook.account_name + '.blob.core.windows.net'"
                     matTooltipPosition="above"
-                    [matTooltipClass]="'bucket-item-tooltip'"
+                    [matTooltipClass]="'full-size-tooltip'"
                   >
                     {{notebook.bucket_name + '@' + notebook.account_name + '.blob.core.windows.net'}}
 <!--                    rc-22-projecta-conteiner@1ebobsvx7t.blob.core.windows.net-->
@@ -167,7 +167,7 @@
                  : 'You have not any bucket'"
                       matTooltipDisabled="{{this.bucketStatus['view'] && this.data.buckets.length}}"
                       matTooltipPosition="above"
-                      [matTooltipClass]="'bucket-item-tooltip'"
+                      [matTooltipClass]="'full-size-tooltip'"
                       [ngClass]="{'not-allow': !this.bucketStatus['view'] || !this.data.buckets.length}"
                       (click)="bucketBrowser(notebook.cloud_provider !== 'azure' ? notebook.bucket_name : notebook.account_name + '.' + notebook.bucket_name, notebook.endpoint, this.bucketStatus['view'] && this.data.buckets.length)"
                 >
@@ -179,7 +179,7 @@
 <!--                 [matTooltip]="'You have not permission to open bucket'"-->
 <!--                 matTooltipDisabled="{{this.bucketStatus['view']}}"-->
 <!--                 matTooltipPosition="above"-->
-<!--                 [matTooltipClass]="'bucket-item-tooltip'"-->
+<!--                 [matTooltipClass]="'full-size-tooltip'"-->
 <!--            >-->
 <!--              <p *ngIf="DICTIONARY[PROVIDER === 'azure' && notebook.shared_account_name">{{ DICTIONARY[PROVIDER].account }}-->
 <!--                <span class="bucket-info bucket-link" [ngClass]="{'not-allow': !this.bucketStatus['view']}" (mouseover)="showCopyIcon('shared')">{{ notebook.shared_account_name}}</span>-->
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/resources-grid/resources-grid.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/resources-grid/resources-grid.component.html
index 80f93fc..981d56e 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/resources-grid/resources-grid.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/resources-grid/resources-grid.component.html
@@ -201,7 +201,7 @@
                           *ngIf="element.status === 'running' && element.image !== 'docker.datalab-superset' && element.image !== 'docker.datalab-jupyterlab'"
                           matTooltip="Only one compute can be associated with analytical tool at a time"
                           matTooltipPosition="above" [matTooltipDisabled]="!element.activeCompute"
-                          [matTooltipClass]="'bucket-item-tooltip'"
+                          [matTooltipClass]="'full-size-tooltip'"
                           [ngClass]="{'not-allow': element.activeCompute }"
                   >
                     <div
diff --git a/services/self-service/src/main/resources/webapp/src/app/resources/resources.component.html b/services/self-service/src/main/resources/webapp/src/app/resources/resources.component.html
index 4accd0d..8a15434 100644
--- a/services/self-service/src/main/resources/webapp/src/app/resources/resources.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/resources/resources.component.html
@@ -23,7 +23,7 @@
       <span
         matTooltip="{{!healthStatus?.projectAssigned ? 'You are not assigned to any project' : 'You have not any active project'}}"
         matTooltipPosition="above"
-        [matTooltipClass]="'bucket-item-tooltip'"
+        [matTooltipClass]="'full-size-tooltip'"
         [matTooltipDisabled]="healthStatus?.projectAssigned && resourcesGrid.activeProjectsList?.length !== 0"
       >
       <button mat-raised-button class="butt butt-create" (click)="createEnvironment()"
@@ -55,7 +55,7 @@
       <span  matTooltip="{{!this.bucketStatus?.view ? 'You have not permission to open bucket browser' : 'You have not any bucket'}}"
              matTooltipPosition="above"
              matTooltipDisabled="{{resourcesGrid.bucketsList?.length > 0 && this.bucketStatus?.view}}"
-             [matTooltipClass]="'bucket-item-tooltip'"
+             [matTooltipClass]="'full-size-tooltip'"
       >
         <button mat-raised-button class="butt butt-tool" (click)="bucketBrowser(this.bucketStatus?.view)"
                 [disabled]="!this.bucketStatus?.view || resourcesGrid.bucketsList?.length === 0">
diff --git a/services/self-service/src/main/resources/webapp/src/assets/styles/_dialogs.scss b/services/self-service/src/main/resources/webapp/src/assets/styles/_dialogs.scss
index 2692c3c..89f3eae 100644
--- a/services/self-service/src/main/resources/webapp/src/assets/styles/_dialogs.scss
+++ b/services/self-service/src/main/resources/webapp/src/assets/styles/_dialogs.scss
@@ -366,7 +366,7 @@ mat-dialog-container {
   }
 }
 
-.bucket-item-tooltip{
+.full-size-tooltip{
   max-width: 1100px  !important;
   white-space: pre-line;
 }
diff --git a/services/self-service/src/main/resources/webapp/src/assets/styles/_theme.scss b/services/self-service/src/main/resources/webapp/src/assets/styles/_theme.scss
index c5b121c..ec8fee0 100644
--- a/services/self-service/src/main/resources/webapp/src/assets/styles/_theme.scss
+++ b/services/self-service/src/main/resources/webapp/src/assets/styles/_theme.scss
@@ -353,6 +353,7 @@ span.mat-slide-toggle-content {
 .mat-chip-list {
   pointer-events: none;
   .mat-chip{
+    overflow: hidden;
     pointer-events: all;
   }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org