summaryrefslogtreecommitdiffstats
path: root/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts
diff options
context:
space:
mode:
Diffstat (limited to 'cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts')
-rw-r--r--cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts29
1 files changed, 26 insertions, 3 deletions
diff --git a/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts b/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts
index 214b516a2..f19ada820 100644
--- a/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts
+++ b/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/package-creation.store.ts
@@ -23,9 +23,10 @@ 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 {CBAPackage, Definition, Scripts} from './mapping-models/CBAPacakge.model';
import {PackageCreationService} from './package-creation.service';
+import {FolderNodeElement, MetaDataTabModel} from './mapping-models/metadata/MetaDataTab.model';
+import * as JSZip from 'jszip';
@Injectable({
@@ -33,11 +34,14 @@ import {PackageCreationService} from './package-creation.service';
})
export class PackageCreationStore extends Store<CBAPackage> {
+ private folder: FolderNodeElement = new FolderNodeElement();
+ private zipFile: JSZip = new JSZip();
+
constructor(private packageCreationService: PackageCreationService) {
super(new CBAPackage());
}
- changeMetaData(metaDataObject: Metadata) {
+ changeMetaData(metaDataObject: MetaDataTabModel) {
this.setState({
...this.state,
@@ -52,4 +56,23 @@ export class PackageCreationStore extends Store<CBAPackage> {
definitions: new Definition(this.state.definitions.files.set(name, content))
});
}
+
+ addScripts(name: string, content: string) {
+
+ this.setState({
+ ...this.state,
+ scripts: new Scripts(this.state.scripts.files.set(name, content))
+ });
+
+ }
+
+ // type => refer to scripts || definitions
+ // from Files from scripts or imports
+ removeFromState(name: string, type: string) {
+ this.state[type].files.delete(name);
+ }
+
+ saveBluePrint(blob) {
+ this.packageCreationService.savePackage(blob);
+ }
}