diff options
Diffstat (limited to 'catalog-ui/src/app/models/properties-inputs/derived-fe-property.ts')
-rw-r--r-- | catalog-ui/src/app/models/properties-inputs/derived-fe-property.ts | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/catalog-ui/src/app/models/properties-inputs/derived-fe-property.ts b/catalog-ui/src/app/models/properties-inputs/derived-fe-property.ts index 2d406e210b..7d832c5193 100644 --- a/catalog-ui/src/app/models/properties-inputs/derived-fe-property.ts +++ b/catalog-ui/src/app/models/properties-inputs/derived-fe-property.ts @@ -21,6 +21,8 @@ import * as _ from "lodash"; import { SchemaPropertyGroupModel, SchemaProperty } from '../schema-property'; import { DerivedPropertyType, PropertyBEModel, PropertyFEModel } from '../../models'; +import {SubPropertyToscaFunction} from "../sub-property-tosca-function"; +import {ToscaFunction} from "../tosca-function"; import { PROPERTY_TYPES } from 'app/utils'; import { UUID } from "angular2-uuid"; @@ -30,9 +32,11 @@ export class DerivedFEProperty extends PropertyBEModel { valueObjIsValid: boolean; valueObjOrig: any; valueObjIsChanged: boolean; + value: any parentName: string; propertiesName: string; //"network_assignments#ipv4_subnet#use_ipv4 = parentPath + name derivedDataType: DerivedPropertyType; + toscaFunction: ToscaFunction; isDeclared: boolean; isSelected: boolean; isDisabled: boolean; @@ -51,6 +55,13 @@ export class DerivedFEProperty extends PropertyBEModel { this.canBeDeclared = true; //defaults to true } else { //creating a direct child of list or map (ie. Item that can be deleted, with UUID instead of name) super(null); + if(property.type === PROPERTY_TYPES.MAP && property.subPropertyToscaFunctions != null){ + property.subPropertyToscaFunctions.forEach((item : SubPropertyToscaFunction) => { + if(item.subPropertyPath[0] === key){ + this.toscaFunction = item.toscaFunction; + } + }); + } this.isChildOfListOrMap = true; this.canBeDeclared = false; this.name = UUID.UUID(); @@ -88,6 +99,9 @@ export class DerivedFEProperty extends PropertyBEModel { } this.valueObj = (this.type == PROPERTY_TYPES.JSON && typeof value == 'object') ? JSON.stringify(value) : value; + if (value != null) { + this.value = typeof value == 'object' ? JSON.stringify(value) : value; + } this.updateValueObjOrig(); } // this.constraints = property ? property.constraints : null; |