Fix Action position in Designer Canvas
[ccsdk/cds.git] / cds-ui / designer-client / src / app / modules / feature-modules / packages / package-creation / package-creation.store.ts
index 214b516..24a4d47 100644 (file)
@@ -23,9 +23,9 @@ import {Injectable} from '@angular/core';
 
 import {Store} from '../../../../common/core/stores/Store';
 
-import {CBAPackage, Definition} from './mapping-models/CBAPacakge.model';
-import {Metadata} from './mapping-models/definitions/VlbDefinition';
-import {PackageCreationService} from './package-creation.service';
+import {CBAPackage, DslDefinition} from './mapping-models/CBAPacakge.model';
+import {MetaDataTabModel} from './mapping-models/metadata/MetaDataTab.model';
+import {TemplateTopology} from './mapping-models/definitions/CBADefinition';
 
 
 @Injectable({
@@ -33,11 +33,12 @@ import {PackageCreationService} from './package-creation.service';
 })
 export class PackageCreationStore extends Store<CBAPackage> {
 
-    constructor(private packageCreationService: PackageCreationService) {
+
+    constructor() {
         super(new CBAPackage());
     }
 
-    changeMetaData(metaDataObject: Metadata) {
+    changeMetaData(metaDataObject: MetaDataTabModel) {
 
         this.setState({
             ...this.state,
@@ -45,11 +46,103 @@ export class PackageCreationStore extends Store<CBAPackage> {
         });
     }
 
+    setCustomKeys(mapOfCustomKey: Map<string, string>) {
+        this.setState({
+            ...this.state,
+            metaData: this.state.metaData.setCustomKey(mapOfCustomKey)
+        });
+    }
+
+    istemplateExist(): boolean {
+        return this.state.templates.files.size > 0 && this.state.mapping.files.size > 0;
+    }
+
+    changeDslDefinition(dslDefinition: DslDefinition) {
+
+        this.setState({
+            ...this.state,
+            definitions: this.state.definitions.setDslDefinition(dslDefinition)
+        });
+    }
+
+
     addDefinition(name: string, content: string) {
 
         this.setState({
             ...this.state,
-            definitions: new Definition(this.state.definitions.files.set(name, content))
+            definitions: this.state.definitions.setImports(name, content)
         });
     }
+
+    addScripts(name: string, content: string) {
+        this.setState({
+            ...this.state,
+            scripts: this.state.scripts.setScripts(name, content)
+        });
+
+    }
+
+    addPlans(name: string, content: string) {
+        this.setState({
+            ...this.state,
+            plans: this.state.plans.setContent(name, content)
+        });
+
+    }
+
+    addRequirements(name: string, content: string) {
+        this.setState({
+            ...this.state,
+            requirements: this.state.requirements.setContent(name, content)
+        });
+
+    }
+
+    removeFileFromState(name: string) {
+        this.state.scripts.files.delete(name);
+    }
+
+    fileExist(key: string) {
+        return this.state.templates.files.has(key);
+    }
+
+    removeFileFromDefinition(filename) {
+        this.state.definitions.imports.delete(filename);
+    }
+
+
+    addTemplate(filePath: string, fileContent: string) {
+        this.setState({
+            ...this.state,
+            templates: this.state.templates.setTemplates(filePath, fileContent)
+        });
+    }
+
+    addMapping(filePath: string, fileContent: string) {
+        this.setState({
+            ...this.state,
+            mapping: this.state.mapping.setContent(filePath, fileContent)
+        });
+    }
+
+    clear() {
+        console.log('clearing the store');
+        this.setState(new CBAPackage());
+        console.log('it should be empty');
+    }
+
+    setEntryDefinition(data: string) {
+        console.log('setting manual enrichment ');
+    }
+
+    addTopologyTemplate(templateTopology: TemplateTopology) {
+        this.setState({
+            ...this.state,
+            templateTopology
+        });
+    }
+
+    getMetaData() {
+        return this.state.metaData;
+    }
 }