Update state of blueprint
Change-Id: I11da8bc3ac64f88b47691575ea34ad0b25ef0e6d
Issue-ID: CCSDK-703
Signed-off-by: Ezhilarasi <ezhrajam@in.ibm.com>
diff --git a/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.html b/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.html
index 75d9462..cdfea25 100644
--- a/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.html
+++ b/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.html
@@ -19,20 +19,28 @@
============LICENSE_END============================================
-->
-<!-- <form [formGroup]="CBAMetadata"> -->
- <mat-form-field class="form-field">
- <input matInput placeholder="CBA File Name" formControlName="CBA_File_Name">
- </mat-form-field>
- <mat-form-field class="form-field">
- <input matInput placeholder="CBA Version" formControlName="CBA_Version">
- </mat-form-field>
- <mat-form-field class="form-field">
- <input matInput placeholder="CSAR Version" formControlName="CSAR_Version">
- </mat-form-field>
- <mat-form-field class="form-field">
- <input matInput placeholder="Entry Definition" formControlName="entry_Definition">
- </mat-form-field>
- <mat-form-field class="form-field">
- <input matInput placeholder="Author" formControlName="author">
- </mat-form-field>
- <!-- </form> -->
+<form [formGroup]="CBAMetadataForm" (ngSubmit)="UploadMetadata()">
+ <div class="formDisplay">
+ <mat-form-field class="form-field">
+ <input matInput placeholder="Template Author" id="CBA_File_Name" formControlName="template_author">
+ </mat-form-field>
+ <mat-form-field class="form-field">
+ <input matInput placeholder="Author Email" id="author_email" formControlName="author_email">
+ </mat-form-field>
+ <mat-form-field class="form-field">
+ <input matInput placeholder="User Groups" id="user_groups" formControlName="user_groups">
+ </mat-form-field>
+ </div>
+ <div class="formDisplay">
+ <mat-form-field class="form-field">
+ <input matInput placeholder="Template Name" id="template_name" formControlName="template_name">
+ </mat-form-field>
+ <mat-form-field class="form-field">
+ <input matInput placeholder="Template Version" id="template_version" formControlName="template_version">
+ </mat-form-field>
+ <mat-form-field class="form-field">
+ <input matInput placeholder="Template Tags" id="template_tags" formControlName="template_tags">
+ </mat-form-field>
+ </div>
+ <button mat-button class="matBtn" type="submit" [disabled]="!CBAMetadataForm.valid">Save Metadata</button>
+</form>
\ No newline at end of file
diff --git a/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.scss b/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.scss
index fa7f2bf..88ce560 100644
--- a/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.scss
+++ b/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.scss
@@ -18,7 +18,20 @@
limitations under the License.
============LICENSE_END============================================
*/
-.form-field{
+
+.form-field {
width: 50%;
margin: 10px;
+}
+
+.formDisplay {
+ display: flex;
+ flex-direction: row;
+}
+
+.matBtn {
+ color: white;
+ background: gray;
+ margin-top: 10px;
+ position: absolute;
}
\ No newline at end of file
diff --git a/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.ts b/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.ts
index b8f57cb..176cc55 100644
--- a/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.ts
+++ b/cds-ui/client/src/app/feature-modules/blueprint/select-template/metadata/metadata.component.ts
@@ -19,8 +19,10 @@
============LICENSE_END============================================
*/
-import { Component, OnInit} from '@angular/core';
-import {FormBuilder, FormGroup, Validators} from '@angular/forms';
+import { Component, OnInit, EventEmitter, Output } from '@angular/core';
+import { FormBuilder, FormGroup, Validators } from '@angular/forms';
+import { IMetaData } from '../../../../common/core/store/models/metadata.model';
+import { A11yModule } from '@angular/cdk/a11y';
@Component({
selector: 'app-metadata',
@@ -28,18 +30,26 @@
styleUrls: ['./metadata.component.scss']
})
export class MetadataComponent implements OnInit {
- CBAMetadata: FormGroup;
+ CBAMetadataForm: FormGroup;
+ metadata: IMetaData;
+ @Output() metadataform = new EventEmitter<IMetaData>();
- constructor(private _formBuilder: FormBuilder) { }
+ constructor(private formBuilder: FormBuilder) { }
ngOnInit() {
- this.CBAMetadata = this._formBuilder.group({
- CBA_File_Name: ['', Validators.required],
- CBA_Version: ['', Validators.required],
- CSAR_Version: ['', Validators.required],
- entry_Definition: ['', Validators.required],
- author: ['', Validators.required]
+ this.CBAMetadataForm = this.formBuilder.group({
+ template_author: ['', Validators.required],
+ author_email: ['', Validators.required],
+ user_groups: ['', Validators.required],
+ template_name: ['', Validators.required],
+ template_version: ['', Validators.required],
+ template_tags: ['', Validators.required]
});
}
+ UploadMetadata() {
+ this.metadata = Object.assign({}, this.CBAMetadataForm.value);
+ console.log(this.metadata.template_author);
+ this.metadataform.emit(this.metadata);
+ }
}
\ No newline at end of file
diff --git a/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.component.ts b/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.component.ts
index b4356a6..091dd35 100644
--- a/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.component.ts
+++ b/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.component.ts
@@ -21,6 +21,11 @@
import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { Store } from '@ngrx/store';
+import { IBlueprint } from 'src/app/common/core/store/models/blueprint.model';
+import { IBlueprintState } from 'src/app/common/core/store/models/blueprintState.model';
+import { IMetaData } from 'src/app/common/core/store/models/metadata.model';
+import { IImportModel } from 'src/app/common/core/store/models/imports.model';
+import { ITopologyTemplate } from 'src/app/common/core/store/models/itopologytemplate.model';
@Component({
selector: 'app-select-template',
@@ -28,19 +33,33 @@
styleUrls: ['./select-template.component.scss']
})
export class SelectTemplateComponent implements OnInit {
- blueprint: any
- myFile: File; /* property of File type */
+ blueprint: IBlueprint;
+ topologyTemplate: ITopologyTemplate;
+ metaData: IMetaData;
+ blueprintState: IBlueprintState;
+ importModel: IImportModel;
- constructor() {
+ constructor(private store: Store<IBlueprintState>) {
+ this.importModel.file = '';
}
- ngOnInit() {
+ ngOnInit() {
}
- fileChange(files: any) {
- console.log(files);
- this.myFile = files[0].nativeElement;
+ fileChange(topologyTemp: ITopologyTemplate) {
+ this.topologyTemplate = topologyTemp;
+ console.log(topologyTemp);
}
- upload(){
+ metaDataDetail(data: IMetaData) {
+ this.metaData = data;
+ console.log("parent" + this.metaData.author_email);
+ }
+ upload() {
+
+ }
+ saveBlueprintModel(){
+ this.blueprint.toplogyTemplates=this.topologyTemplate;
+ this.blueprint.metadata= this.metaData;
+ // this.store.dispatch(new CreateBlueprint(this.blueprint));
}
}
diff --git a/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.module.ts b/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.module.ts
index 7458601..f586246 100644
--- a/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.module.ts
+++ b/cds-ui/client/src/app/feature-modules/blueprint/select-template/select-template.module.ts
@@ -20,11 +20,13 @@
*/
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
+import { ReactiveFormsModule } from '@angular/forms';
import { TemplateOptionsComponent } from './template-options/template-options.component';
import { SearchTemplateComponent } from './search-template/search-template.component';
import { MetadataComponent } from './metadata/metadata.component';
import { SelectTemplateComponent } from './select-template.component';
import { SelectTemplateRoutingModule } from './select-template-routing.module';
+import { AppMaterialModule } from 'src/app/common/modules/app-material.module';
import { MatToolbarModule, MatButtonModule, MatSidenavModule, MatListModule, MatGridListModule, MatCardModule, MatMenuModule, MatTableModule, MatPaginatorModule, MatSortModule, MatInputModule, MatSelectModule, MatRadioModule, MatFormFieldModule, MatStepperModule} from '@angular/material';
import { MatIconModule } from '@angular/material/icon';
@@ -45,6 +47,7 @@
imports: [
CommonModule,
SelectTemplateRoutingModule,
+ ReactiveFormsModule,
MatToolbarModule,
MatButtonModule,
MatSidenavModule,
@@ -61,6 +64,7 @@
MatRadioModule,
MatFormFieldModule,
MatStepperModule,
+ AppMaterialModule
]
})
export class SelectTemplateModule { }