diff --git a/src/ui_ng/lib/src/confirmation-dialog/confirmation-dialog.component.ts b/src/ui_ng/lib/src/confirmation-dialog/confirmation-dialog.component.ts
index 0d471f59fd..21d9571c99 100644
--- a/src/ui_ng/lib/src/confirmation-dialog/confirmation-dialog.component.ts
+++ b/src/ui_ng/lib/src/confirmation-dialog/confirmation-dialog.component.ts
@@ -20,7 +20,7 @@ import { ConfirmationState, ConfirmationTargets, ConfirmationButtons } from '../
 
 import { CONFIRMATION_DIALOG_TEMPLATE } from './confirmation-dialog.component.html';
 import { CONFIRMATION_DIALOG_STYLE } from './confirmation-dialog.component.css';
-import {BatchInfo} from "./confirmation-batch-message";
+import {BatchInfo} from './confirmation-batch-message';
 
 @Component({
     selector: 'confirmation-dialog',
@@ -29,16 +29,16 @@ import {BatchInfo} from "./confirmation-batch-message";
 })
 
 export class ConfirmationDialogComponent {
-    opened: boolean = false;
-    dialogTitle: string = "";
-    dialogContent: string = "";
+    opened = false;
+    dialogTitle = '';
+    dialogContent = '';
     message: ConfirmationMessage;
     buttons: ConfirmationButtons;
-   
+
     @Output() confirmAction = new EventEmitter<ConfirmationAcknowledgement>();
     @Output() cancelAction = new EventEmitter<ConfirmationAcknowledgement>();
     @Input() batchInfors: BatchInfo[]  = [];
-    isDelete: boolean = false;
+    isDelete = false;
 
     constructor(
         private translate: TranslateService) {}
@@ -49,7 +49,7 @@ export class ConfirmationDialogComponent {
         this.message = msg;
         this.translate.get(this.dialogTitle).subscribe((res: string) => this.dialogTitle = res);
         this.translate.get(this.dialogContent, { 'param': msg.param }).subscribe((res: string) => this.dialogContent = res);
-        //Open dialog
+        // Open dialog
         this.buttons = msg.buttons;
         this.opened = true;
     }
@@ -81,7 +81,8 @@ export class ConfirmationDialogComponent {
     }
 
     cancel(): void {
-        if(!this.message){//Inproper condition
+        if (!this.message) {
+            // Inproper condition
             this.close();
             return;
         }
diff --git a/src/ui_ng/lib/src/repository-listview/repository-listview.component.html.ts b/src/ui_ng/lib/src/repository-listview/repository-listview.component.html.ts
index b3ede66f98..77e935a800 100644
--- a/src/ui_ng/lib/src/repository-listview/repository-listview.component.html.ts
+++ b/src/ui_ng/lib/src/repository-listview/repository-listview.component.html.ts
@@ -1,7 +1,7 @@
 export const REPOSITORY_LISTVIEW_TEMPLATE = `
 <div>
   <div class="row" style="position:relative;">
-    <div>  
+    <div>
       <div class="row flex-items-xs-right option-right rightPos">
         <div class="flex-xs-middle">
           <hbr-push-image-button style="display: inline-block;" [registryUrl]="registryUrl" [projectName]="projectName"></hbr-push-image-button>
@@ -10,7 +10,7 @@ export const REPOSITORY_LISTVIEW_TEMPLATE = `
         </div>
       </div>
     </div>
-    <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">  
+    <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
       <clr-datagrid (clrDgRefresh)="clrLoad($event)" [clrDgLoading]="loading"  [(clrDgSelected)]="selectedRow" (clrDgSelectedChange)="selectedChange()">
         <clr-dg-action-bar>
             <div class="btn-group">
diff --git a/src/ui_ng/package.json b/src/ui_ng/package.json
index 36a46656a9..bfad0c27c5 100644
--- a/src/ui_ng/package.json
+++ b/src/ui_ng/package.json
@@ -31,7 +31,7 @@
         "clarity-icons": "^0.10.17",
         "clarity-ui": "^0.10.17",
         "core-js": "^2.4.1",
-        "harbor-ui": "0.6.19",
+        "harbor-ui": "0.6.20-beta.4",
         "intl": "^1.2.5",
         "mutationobserver-shim": "^0.3.2",
         "ngx-cookie": "^1.0.0",
diff --git a/src/ui_ng/src/app/config/config.component.html b/src/ui_ng/src/app/config/config.component.html
index 5a467a1802..0cf68cb3f9 100644
--- a/src/ui_ng/src/app/config/config.component.html
+++ b/src/ui_ng/src/app/config/config.component.html
@@ -13,7 +13,7 @@
                 <button id="config-system" class="btn btn-link nav-link" aria-controls="system_settings" [class.active]='isCurrentTabLink("config-system")' type="button" (click)='tabLinkClick("config-system")'>{{'CONFIG.SYSTEM' | translate }}</button>
             </li>
             <li role="presentation" class="nav-item" *ngIf="withClair">
-                <button id="config-vulnerability" class="btn btn-link nav-link" aria-controls="vulnerability" [class.active]='isCurrentTabLink("config-vulnerability")' type="button" (click)='tabLinkClick("config-vulnerability")'>{{'VULNERABILITY.SINGULAR' | translate}}</button>
+                <button id="config-vulnerability" class="btn btn-link nav-link" aria-controls="vulnerability" [class.active]='isCurrentTabLink("config-vulnerability")' type="button" (click)='tabLinkClick("config-vulnerability")'>{{'CONFIG.VULNERABILITY' | translate}}</button>
             </li>
         </ul>
         <section id="authentication" role="tabpanel" aria-labelledby="config-auth" [hidden]='!isCurrentTabContent("authentication")'>
diff --git a/src/ui_ng/src/app/project/project-detail/project-detail.component.ts b/src/ui_ng/src/app/project/project-detail/project-detail.component.ts
index 07f29774e2..61c78d112e 100644
--- a/src/ui_ng/src/app/project/project-detail/project-detail.component.ts
+++ b/src/ui_ng/src/app/project/project-detail/project-detail.component.ts
@@ -35,7 +35,7 @@ export class ProjectDetailComponent {
   roleName: string;
 
   constructor(
-    private route: ActivatedRoute, 
+    private route: ActivatedRoute,
     private router: Router,
     private sessionService: SessionService,
     private projectService: ProjectService) {
diff --git a/src/ui_ng/src/i18n/lang/en-us-lang.json b/src/ui_ng/src/i18n/lang/en-us-lang.json
index ce5088545e..f27dfff24a 100644
--- a/src/ui_ng/src/i18n/lang/en-us-lang.json
+++ b/src/ui_ng/src/i18n/lang/en-us-lang.json
@@ -217,7 +217,6 @@
         "OF": "of",
         "SWITCH_TITLE": "Confirm project members switch",
         "SWITCH_SUMMARY": "Do you want to switch project members {{param}}?"
-
     },
     "AUDIT_LOG": {
         "USERNAME": "Username",
@@ -424,6 +423,7 @@
         "REPLICATION": "Replication",
         "EMAIL": "Email",
         "SYSTEM": "System Settings",
+        "VULNERABILITY": "Vulnerability",
         "CONFIRM_TITLE": "Confirm to cancel",
         "CONFIRM_SUMMARY": "Some changes have not been saved. Do you want to discard them?",
         "SAVE_SUCCESS": "Configuration has been successfully saved.",
diff --git a/src/ui_ng/src/i18n/lang/es-es-lang.json b/src/ui_ng/src/i18n/lang/es-es-lang.json
index 04143639fc..04e0535b04 100644
--- a/src/ui_ng/src/i18n/lang/es-es-lang.json
+++ b/src/ui_ng/src/i18n/lang/es-es-lang.json
@@ -327,6 +327,7 @@
         "TARGETS":"Target",
         "MODE": "Mode",
         "SOURCE": "Source",
+        "REPLICATE": "Replicate",
         "DELETE_REMOTE_IMAGES":"Delete remote images when locally deleted",
         "REPLICATE_IMMEDIATE":"Replicate existing images immediately"
     },
@@ -361,8 +362,7 @@
         "PLACEHOLDER": "We couldn't find any endpoints!"
     },
     "REPOSITORY": {
-        "COPY_ID": "Copiar ID",
-        "COPY_PARENT_ID": "Copiar ID padre",
+        "COPY_DIGEST_ID": "Copy Digest",
         "DELETE": "Eliminar",
         "NAME": "Nombre",
         "TAGS_COUNT": "Etiquetas",
@@ -423,6 +423,7 @@
         "REPLICATION": "Replicación",
         "EMAIL": "Email",
         "SYSTEM": "Opciones del Sistema",
+        "VULNERABILITY": "Vulnerability",
         "CONFIRM_TITLE": "Confirma cancelación",
         "CONFIRM_SUMMARY": "Algunos cambios no han sido guardados aún. ¿Quiere descartarlos?",
         "SAVE_SUCCESS": "La configuración ha sido guardada satisfactoriamente.",
@@ -525,6 +526,8 @@
         "PRO_ITEM": "PROYECTOS",
         "REPO_ITEM": "REPOSITORIOS",
         "INDEX_PRIVATE": "PRIVADO",
+        "INDEX_MY_PROJECTS": "MY PROJECTS",
+        "INDEX_MY_REPOSITORIES": "MY REPOSITORIES",
         "INDEX_PUB": "PÚBLICO",
         "INDEX_TOTAL": "TOTAL",
         "STORAGE": "ALMACENAMIENTO",
diff --git a/src/ui_ng/src/i18n/lang/zh-cn-lang.json b/src/ui_ng/src/i18n/lang/zh-cn-lang.json
index a2ef5c66c5..93bf401556 100644
--- a/src/ui_ng/src/i18n/lang/zh-cn-lang.json
+++ b/src/ui_ng/src/i18n/lang/zh-cn-lang.json
@@ -202,7 +202,6 @@
         "DEVELOPER": "开发人员",
         "GUEST": "访客",
         "DELETE": "删除",
-        "OF": "共计",
         "ITEMS": "条记录",
         "ACTIONS": "操作",
         "USERNAME_IS_REQUIRED": "用户名为必填项。",
@@ -215,6 +214,7 @@
         "ADDED_SUCCESS": "成功新增成员。",
         "DELETED_SUCCESS": "成功删除成员。",
         "SWITCHED_SUCCESS": "切换角色成功。",
+        "OF": "共计",
         "SWITCH_TITLE": "切换项目成员确认",
         "SWITCH_SUMMARY": "你确认切换项目成员 {{param}}??"
     },
@@ -233,10 +233,10 @@
         "OTHERS": "其他",
         "ADVANCED": "高级检索",
         "SIMPLE": "简单检索",
-        "OF": "共计",
         "ITEMS": "条记录",
         "FILTER_PLACEHOLDER": "过滤日志",
-        "INVALID_DATE": "无效日期。"
+        "INVALID_DATE": "无效日期。",
+        "OF": "共计"
     },
     "REPLICATION": {
         "REPLICATION_RULE": "复制规则",
@@ -327,6 +327,7 @@
         "TARGETS":"目标",
         "MODE": "模式",
         "SOURCE": "资源",
+        "REPLICATE": "复制",
         "DELETE_REMOTE_IMAGES":"删除本地镜像时同时也删除远程的镜像。",
         "REPLICATE_IMMEDIATE":"立即复制现有的镜像。"
     },
@@ -422,6 +423,7 @@
         "REPLICATION": "复制",
         "EMAIL": "邮箱",
         "SYSTEM": "系统设置",
+        "VULNERABILITY": "漏洞",
         "CONFIRM_TITLE": "确认取消",
         "CONFIRM_SUMMARY": "配置项有改动, 确定取消?",
         "SAVE_SUCCESS": "变更的配置项成功保存。",