summaryrefslogtreecommitdiffstats
path: root/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts')
-rw-r--r--cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts169
1 files changed, 23 insertions, 146 deletions
diff --git a/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts b/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts
index 37a017953..aa44cdf7c 100644
--- a/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts
+++ b/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.component.ts
@@ -20,19 +20,10 @@ limitations under the License.
*/
import {Component, OnInit} from '@angular/core';
-import {FilesContent, FolderNodeElement, MetaDataFile, MetaDataTab} from './mapping-models/metadata/MetaDataTab.model';
+import {FilesContent, FolderNodeElement, MetaDataFile, MetaDataTabModel} from './mapping-models/metadata/MetaDataTab.model';
// import {saveAs} from 'file-saver/dist/FileSaver';
import * as JSZip from 'jszip';
-import {Observable} from 'rxjs';
-import {ApiService} from '../../../../common/core/services/api.service';
-import {BlueprintURLs} from '../../../../common/constants/app-constants';
-import {Import, Metadata, VlbDefinition} from './mapping-models/definitions/VlbDefinition';
-import {JsonConvert} from 'json2typescript';
-import {JsonPipe} from '@angular/common';
-import {PackageCreationService} from './package-creation.service';
-import {PackageCreationUtils} from './package-creation.utils';
-import List = _.List;
-import {Router} from '@angular/router';
+import {PackageCreationStore} from './package-creation.store';
@Component({
selector: 'app-package-creation',
@@ -44,118 +35,44 @@ export class PackageCreationComponent implements OnInit {
modes: object[] = [
{name: 'Designer Mode', style: 'mode-icon icon-designer-mode'},
{name: 'Scripting Mode', style: 'mode-icon icon-scripting-mode'}];
- customKeysAndValues: Map<string, string> = new Map<string, string>();
-
- dictionaryLibraryInstances: string[] = ['x', 'y'];
- private container: HTMLElement;
- private elements: HTMLCollection;
- private newElement: HTMLElement;
- private metaDataTab: MetaDataTab = new MetaDataTab();
-
- private result: string;
-
+ private metaDataTab: MetaDataTabModel = new MetaDataTabModel();
private folder: FolderNodeElement = new FolderNodeElement();
private zipFile: JSZip = new JSZip();
private filesData: any = [];
- private errorMessage: string;
- private keys: NodeListOf<HTMLElement>;
- private values: NodeListOf<HTMLElement>;
-
- constructor(private packageCreationService: PackageCreationService, private packageCreationUtils: PackageCreationUtils,
- private router: Router) {
+ constructor(private packageCreationStore: PackageCreationStore) {
}
ngOnInit() {
- // this.customKeysAndValues.set('Dictionary Library Instances', ' ');
- this.keys = document.getElementsByName('key');
- this.values = document.getElementsByName('value');
- }
-
-
- createAnotherCustomKeyDiv() {
- this.newElement = document.getElementById('target');
- const id = this.newElement.getAttribute('id');
- this.newElement.setAttribute('id', 'target' + this.counter++);
- const copiedElement = this.newElement.cloneNode(true);
- this.container = document.getElementById('container');
- this.container.appendChild(copiedElement);
- this.elements = this.container.children;
- this.newElement.setAttribute('id', id);
- this.clearCopiedElement();
-
- // console.log(this.packageCreationService.checkBluePrintNameAndVersion(this.metaDataTab.name, this.metaDataTab.version));
- /*this.metaDataTab = new MetaDataTab();
- this.metaDataTab.name = 'klfdj';
- this.metaDataTab.entryFileName = 'Definitions/vLB_CDS.json';
- this.metaDataTab.description = 'rere';
- this.metaDataTab.tags = 'ffsssssss';
- this.metaDataTab.version = '1.01.10';
- this.metaDataTab.templateName = 'test';
-
-
- this.saveToFileSystem(MetaDataFile.getObjectInstance(this.metaDataTab));*/
- }
-
- private clearCopiedElement() {
- const newCopiedElement: HTMLInputElement = document.getElementById('target' + (this.counter - 1)) as HTMLInputElement;
- const inputElements = newCopiedElement.getElementsByTagName('input');
- for (let i = 0; i < inputElements.length; i++) {
- const element: HTMLInputElement = inputElements.item(i) as HTMLInputElement;
- element.value = '';
- }
- }
-
-
- validatePackageNameAndVersion() {
- if (this.metaDataTab.name && this.metaDataTab.version) {
- this.packageCreationService.checkBluePrintNameAndVersion(this.metaDataTab.name, this.metaDataTab.version).then(element => {
- if (element) {
- this.errorMessage = 'the package with name and version is exists';
- } else {
- this.errorMessage = ' ';
- }
- });
- }
}
- getDictionaryLibraryInstances() {
+ saveBluePrint() {
+ this.packageCreationStore.state$.subscribe(
+ cbaPackage => {
+ this.metaDataTab = cbaPackage.metaData;
+ this.setModeType(this.metaDataTab);
+ this.setEntryPoint(this.metaDataTab);
+ this.addToscaMetaDataFile(this.metaDataTab);
- }
+ // const vlbDefinition: VlbDefinition = new VlbDefinition();
+ // this.fillVLBDefinition(vlbDefinition, this.metaDataTab);
- saveMetaData() {
- for (let i = 0; i < this.values.length; i++) {
- const inputKeyElement: HTMLInputElement = this.keys.item(i) as HTMLInputElement;
- const inputKey: string = inputKeyElement.value;
- const inputValueElement: HTMLInputElement = this.values.item(i) as HTMLInputElement;
- const inputValue: string = inputValueElement.value;
- this.customKeysAndValues.set(inputKey, inputValue);
- }
-
- this.metaDataTab.mapOfCustomKey = this.customKeysAndValues;
- this.setModeType(this.metaDataTab);
- this.setEntryPoint(this.metaDataTab);
-
- this.addToscaMetaDataFile(this.metaDataTab);
-
- const vlbDefinition: VlbDefinition = new VlbDefinition();
- this.fillVLBDefinition(vlbDefinition, this.metaDataTab);
+ this.filesData.push(this.folder.TREE_DATA);
+ console.log(FilesContent.getMapOfFilesNamesAndContent());
+ this.saveBluePrintToDataBase();
+ });
- this.filesData.push(this.folder.TREE_DATA);
- this.saveToBackend();
- this.packageCreationService.refreshPackages();
- this.router.navigate(['/packages']);
}
- addToscaMetaDataFile(metaDataTab: MetaDataTab) {
+ addToscaMetaDataFile(metaDataTab: MetaDataTabModel) {
const filename = 'TOSCA.meta';
FilesContent.putData(filename, MetaDataFile.getObjectInstance(this.metaDataTab));
}
- private setModeType(metaDataTab: MetaDataTab) {
+ private setModeType(metaDataTab: MetaDataTabModel) {
if (metaDataTab.mode.startsWith('Scripting')) {
metaDataTab.mode = 'KOTLIN_SCRIPT';
} else if (metaDataTab.mode.startsWith('Designer')) {
@@ -165,28 +82,15 @@ export class PackageCreationComponent implements OnInit {
}
}
- saveToBackend() {
+ saveBluePrintToDataBase() {
this.create();
this.zipFile.generateAsync({type: 'blob'})
.then(blob => {
- this.saveBluePrint(blob);
-
+ this.packageCreationStore.saveBluePrint(blob);
});
}
- private saveBluePrint(blob) {
- const formData = new FormData();
- formData.append('file', blob);
- this.packageCreationService.saveBlueprint(formData)
- .subscribe(
- data => {
- console.log('Success:' + JSON.stringify(data));
- }, error => {
- console.log('Error -' + error.message);
- });
- }
-
create() {
this.folder.TREE_DATA.forEach((path) => {
@@ -206,15 +110,7 @@ export class PackageCreationComponent implements OnInit {
});
}
-
- deleteCustomKey(event) {
- this.container = document.getElementById('container');
- const element = event.parentElement.parentElement.parentElement;
- this.container.removeChild(element);
- }
-
-
- private setEntryPoint(metaDataTab: MetaDataTab) {
+ private setEntryPoint(metaDataTab: MetaDataTabModel) {
if (metaDataTab.mode.startsWith('DEFAULT')) {
metaDataTab.entryFileName = 'Definitions/vLB_CDS.json';
} else {
@@ -224,24 +120,5 @@ export class PackageCreationComponent implements OnInit {
}
- private fillVLBDefinition(vlbDefinition: VlbDefinition, metaDataTab: MetaDataTab) {
-
- const metadata: Metadata = new Metadata();
- metadata.template_author = 'Shaaban';
- metadata.template_name = metaDataTab.templateName;
- metadata.template_tags = metaDataTab.tags;
-
- metadata.dictionary_group = 'default';
- metadata.template_version = metaDataTab.version;
- metadata['author-email'] = 'shaaban.altanany.ext@orange.com';
- metadata['user-groups'] = 'ADMIN';
- // metadata.mapOfCustomKeys = this.metaDataTab.mapOfCustomKey;
- vlbDefinition.tosca_definitions_version = metaDataTab.version;
- vlbDefinition.metadata = metadata;
-
- // console.log(vlbDefinition.metadata.mapOfCustomKeys);
- const value = this.packageCreationUtils.transformToJson(vlbDefinition);
- console.log(value);
- FilesContent.putData('vLB_CDS.json', value);
- }
+
}