<i class="icon-save-sm" aria-hidden="true"></i>
<span>Save</span>
</button>
- <button data-target="#discardChangesModal" data-toggle="modal" class="action-button" [disabled]="!isSaveEnabled">
+ <button data-target="#discardChangesModal" data-toggle="modal" class="action-button"
+ [disabled]="!isSaveEnabled">
<i class="icon-discard-sm" aria-hidden="true"></i>
<span>Discard Changes</span>
</button>
<!--Nav Tabs-->
<div class="col">
<div class="nav nav-tabs " id="nav-tab" role="tablist">
- <a class="nav-item nav-link active complete" id="nav-metadata-tab" data-toggle="tab"
+ <a [classList]="metadataClasses" id="nav-metadata-tab" data-toggle="tab"
href="#nav-metadata" role="tab" aria-controls="nav-metadata" aria-selected="true"
autofocus #nameit (focusout)="saveMetaData()">METADATA</a>
<a class="nav-item nav-link" id="nav-template-tab" data-toggle="tab" href="#nav-template"
<div class="col">
<div class="tab-content" id="nav-tabContent">
<div class="tab-pane fade show active" id="nav-metadata" role="tabpanel"
- aria-labelledby="nav-metadata-tab">
+ aria-labelledby="nav-metadata-tab" (click)="clickEvent()">
<app-metadata-tab></app-metadata-tab>
</div>
<div class="tab-pane fade" id="nav-template" role="tabpanel"
vlbDefinition: VlbDefinition = new VlbDefinition();
isSaveEnabled = false;
versionPattern = '^(\\d+\\.)?(\\d+\\.)?(\\*|\\d+)$';
+ metadataClasses = 'nav-item nav-link active';
constructor(
private route: ActivatedRoute,
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)) {
+ this.isSaveEnabled = true;
+ if (!this.metadataClasses.includes('complete')) {
+ this.metadataClasses += 'complete';
+ }
+ } else {
+ this.metadataClasses = this.metadataClasses.replace('complete', '');
+ this.isSaveEnabled = false;
+ }
+
+ });
}
private refreshCurrentPackage() {
saveMetaData() {
this.metadataTabComponent.saveMetaDataToStore();
+
}
getMetaDataTabInfo(fileData: string) {
console.log('Error -' + error.message);
});
}
+
+ clickEvent() {
+ this.isSaveEnabled = true;
+ }
}
<div class="nav nav-tabs " id="nav-tab" role="tablist">
<a class="nav-item nav-link active" id="nav-metadata-tab" data-toggle="tab"
href="#nav-metadata" role="tab" aria-controls="nav-metadata" aria-selected="false"
- autofocus #nameit (focusout)="test()">METADATA</a>
+ autofocus #nameit (focusout)="saveMetaData()" [classList]="metadataClasses">METADATA</a>
<a class="nav-item nav-link" id="nav-template-tab" data-toggle="tab" href="#nav-template"
role="tab" aria-controls="nav-template" aria-selected="false">TEMPLATE & MAPPING</a>
<a class="nav-item nav-link" id="nav-scripts-tab" data-toggle="tab" href="#nav-scripts"
<div class="row mt-4">
<div class="col">
<div class="tab-content" id="nav-tabContent">
- <div class="tab-pane fade show active" id="nav-metadata" role="tabpanel"
+ <div class="tab-pane fade show active" id="nav-metadata" role="tabpanel"
aria-labelledby="nav-metadata-tab">
<app-metadata-tab></app-metadata-tab>
</div>
@ViewChild('nameit', {static: true})
elementRef: ElementRef;
versionPattern = '^(\\d+\\.)?(\\d+\\.)?(\\*|\\d+)$';
+ metadataClasses = 'nav-item nav-link active complete';
ngOnInit() {
this.elementRef.nativeElement.focus();
&& cbaPackage.metaData.name && cbaPackage.metaData.version &&
regexp.test(cbaPackage.metaData.version)) {
this.isSaveEnabled = true;
+ if (!this.metadataClasses.includes('complete')) {
+ console.log('added');
+ this.metadataClasses += 'complete';
+ }
+ console.log('perhaps it is been added');
} else {
this.isSaveEnabled = false;
+ this.metadataClasses = this.metadataClasses.replace('complete', '');
}
});
}
}
- test() {
- this.metadataTabComponent.saveMetaDataToStore();
- }
goBackToDashBorad() {
this.router.navigate(['/packages']);
}
+
+ saveMetaData() {
+ console.log('executed change');
+ this.metadataTabComponent.saveMetaDataToStore();
+
+ }
}