diff --git a/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.html b/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.html index 4d72645772..d530996569 100644 --- a/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.html +++ b/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.html @@ -1,14 +1,16 @@ -
- - - +
+ + + +
+ diff --git a/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.ts b/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.ts index 3212fb4310..42ae16ca1c 100644 --- a/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.ts +++ b/src/app/process-page/new/process-parameters/parameter-select/parameter-select.component.ts @@ -11,6 +11,8 @@ import { hasNoValue } from '../../../../shared/empty.util'; export class ParameterSelectComponent implements OnInit { @Input() parameterValue: ProcessParameter; @Input() parameters: ScriptParameter[]; + @Input() removable: boolean; + @Output() removeParameter: EventEmitter = new EventEmitter(); @Output() changeParameter: EventEmitter = new EventEmitter(); ngOnInit(): void { @@ -19,6 +21,10 @@ export class ParameterSelectComponent implements OnInit { } } + get selectedScriptParameter(): ScriptParameter { + return this.parameters.find((parameter: ScriptParameter) => parameter.name === this.selectedParameter); + } + get selectedParameter(): string { return this.parameterValue ? this.parameterValue.name : undefined; } diff --git a/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.html b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.html new file mode 100644 index 0000000000..c76976fc33 --- /dev/null +++ b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.html @@ -0,0 +1,3 @@ +
+ +
diff --git a/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.scss b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.scss new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.spec.ts b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.spec.ts new file mode 100644 index 0000000000..91045ea0f4 --- /dev/null +++ b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ParameterValueInputComponent } from './parameter-value-input.component'; + +describe('ParameterValueInputComponent', () => { + let component: ParameterValueInputComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ ParameterValueInputComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ParameterValueInputComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.ts b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.ts new file mode 100644 index 0000000000..17c627b371 --- /dev/null +++ b/src/app/process-page/new/process-parameters/parameter-value-input/parameter-value-input.component.ts @@ -0,0 +1,13 @@ +import { Component, Input, OnChanges, OnInit } from '@angular/core'; +import { ScriptParameterType } from '../../../scripts/script-parameter-type.model'; +import { ScriptParameter } from '../../../scripts/script-parameter.model'; + +@Component({ + selector: 'ds-parameter-value-input', + templateUrl: './parameter-value-input.component.html', + styleUrls: ['./parameter-value-input.component.scss'] +}) +export class ParameterValueInputComponent { + @Input() parameter: ScriptParameter; + parameterTypes = ScriptParameterType; +} diff --git a/src/app/process-page/new/process-parameters/process-parameters.component.html b/src/app/process-page/new/process-parameters/process-parameters.component.html index 7ec2f25a6b..98c364cbee 100644 --- a/src/app/process-page/new/process-parameters/process-parameters.component.html +++ b/src/app/process-page/new/process-parameters/process-parameters.component.html @@ -1,8 +1,10 @@
diff --git a/src/app/process-page/new/process-parameters/process-parameters.component.ts b/src/app/process-page/new/process-parameters/process-parameters.component.ts index 4979307f4a..2fb9f1c636 100644 --- a/src/app/process-page/new/process-parameters/process-parameters.component.ts +++ b/src/app/process-page/new/process-parameters/process-parameters.component.ts @@ -29,6 +29,10 @@ export class ProcessParametersComponent implements OnChanges { } } + removeParameter(index: number) { + this.parameterValues = this.parameterValues.filter((value, i) => i !== index); + } + addParameter() { this.parameterValues = [...this.parameterValues, new ProcessParameter()]; } diff --git a/src/app/process-page/process-page.module.ts b/src/app/process-page/process-page.module.ts index 3fb3afce96..bf231483b1 100644 --- a/src/app/process-page/process-page.module.ts +++ b/src/app/process-page/process-page.module.ts @@ -9,6 +9,7 @@ import { ScriptHelpComponent } from './new/script-help/script-help.component'; import { ParameterSelectComponent } from './new/process-parameters/parameter-select/parameter-select.component'; import { ProcessParametersComponent } from './new/process-parameters/process-parameters.component'; import { StringValueInputComponent } from './new/process-parameters/parameter-value-input/string-value-input/string-value-input.component'; +import { ParameterValueInputComponent } from './new/process-parameters/parameter-value-input/parameter-value-input.component'; @NgModule({ imports: [ @@ -22,6 +23,7 @@ import { StringValueInputComponent } from './new/process-parameters/parameter-va ParameterSelectComponent, ProcessParametersComponent, StringValueInputComponent, + ParameterValueInputComponent, ], entryComponents: [ ], diff --git a/src/app/process-page/scripts/script-parameter-type.model.ts b/src/app/process-page/scripts/script-parameter-type.model.ts index de0bf8bc04..2b9fd358bf 100644 --- a/src/app/process-page/scripts/script-parameter-type.model.ts +++ b/src/app/process-page/scripts/script-parameter-type.model.ts @@ -2,9 +2,9 @@ * List of parameter types used for scripts */ export enum ScriptParameterType { - STRING = 'string', + STRING = 'String', DATE = 'date', BOOLEAN = 'boolean', - FILE = 'file', - OUTPUT = 'output' + FILE = 'InputStream', + OUTPUT = 'OutputStream' }