disable edit and discard without change in metadata
[ccsdk/cds.git] / cds-ui / designer-client / src / app / modules / feature-modules / packages / configuration-dashboard / configuration-dashboard.component.ts
index a69e45f..47e89b3 100644 (file)
@@ -41,6 +41,7 @@ export class ConfigurationDashboardComponent implements OnInit {
     vlbDefinition: VlbDefinition = new VlbDefinition();
     isSaveEnabled = false;
     versionPattern = '^(\\d+\\.)?(\\d+\\.)?(\\*|\\d+)$';
+    metadataClasses = 'nav-item nav-link active';
 
     constructor(
         private route: ActivatedRoute,
@@ -58,17 +59,20 @@ export class ConfigurationDashboardComponent implements OnInit {
 
         this.elementRef.nativeElement.focus();
         this.refreshCurrentPackage();
-
         const regexp = RegExp(this.versionPattern);
-        this.packageCreationStore.state$.subscribe(cbaPackage => {
-            if (cbaPackage && cbaPackage.metaData && cbaPackage.metaData.description
-                && cbaPackage.metaData.name && cbaPackage.metaData.version &&
-                regexp.test(cbaPackage.metaData.version)) {
-                this.isSaveEnabled = true;
-            } else {
-                this.isSaveEnabled = false;
-            }
-        });
+        this.packageCreationStore.state$.subscribe(
+            cbaPackage => {
+                if (cbaPackage && cbaPackage.metaData && cbaPackage.metaData.description
+                    && cbaPackage.metaData.name && cbaPackage.metaData.version &&
+                    regexp.test(cbaPackage.metaData.version)) {
+                    if (!this.metadataClasses.includes('complete')) {
+                        this.metadataClasses += ' complete';
+                    }
+                } else {
+                    this.metadataClasses = this.metadataClasses.replace('complete', '');
+                }
+
+            });
     }
 
     private refreshCurrentPackage() {
@@ -172,6 +176,7 @@ export class ConfigurationDashboardComponent implements OnInit {
 
     saveMetaData() {
         this.metadataTabComponent.saveMetaDataToStore();
+
     }
 
     getMetaDataTabInfo(fileData: string) {
@@ -292,4 +297,8 @@ export class ConfigurationDashboardComponent implements OnInit {
                 console.log('Error -' + error.message);
             });
     }
+
+    clickEvent() {
+        this.isSaveEnabled = true;
+    }
 }