78aa7bc7f46fba748bcc44be08f925f77d8d358c
[sdc.git] /
1 <!--
2   ~ Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
3   ~
4   ~ Licensed under the Apache License, Version 2.0 (the "License");
5   ~ you may not use this file except in compliance with the License.
6   ~ You may obtain a copy of the License at
7   ~
8   ~      http://www.apache.org/licenses/LICENSE-2.0
9   ~
10   ~ Unless required by applicable law or agreed to in writing, software
11   ~ distributed under the License is distributed on an "AS IS" BASIS,
12   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   ~ See the License for the specific language governing permissions and
14   ~ limitations under the License.
15   -->
16
17
18 <div class="data-type-fields-structure">
19     <div class="open-close">
20         <div class="open-close-button" data-ng-class="{'expand':expand,'collapse':!expand}" data-ng-click="expandAndCollapse()"></div>
21         <span class="data-type-name">{{typeName.replace("org.openecomp.datatypes.heat.","")}}</span>
22     </div>
23     <div data-ng-show="expand" data-ng-repeat="property in dataTypeProperties" class="property">
24         <div class="i-sdc-form-item property-name">
25             <div tooltips tooltip-content="{{property.name}}">
26                 <input class="i-sdc-form-input"
27                        type="text"
28                        readonly="readonly"
29                        value="{{property.name}}"/>
30             </div>
31         </div>
32         <!--<div class="property-value">-->
33         <div data-ng-if="dataTypesService.isDataTypeForDataTypePropertyType(property)" class="inner-structure">
34             <fields-structure value-obj-ref="(valueObjRef[property.name])"
35                               type-name="property.type"
36                               parent-property="parentProperty"
37                               component-instance-map="componentInstanceMap"
38                               parent-form-obj="parentFormObj"
39                               fields-prefix-name="fieldsPrefixName+property.name"
40                               read-only="readOnly"
41                               is-service="isService"
42                               default-value="{{currentTypeDefaultValue[property.name]}}">
43
44             </fields-structure>
45         </div>
46         <div data-ng-if="!dataTypesService.isDataTypeForDataTypePropertyType(property)" ng-switch="property.type">
47             <div ng-switch-when="map">
48                 <type-map value-obj-ref="valueObjRef[property.name]"
49                           schema-property="property.schema.property"
50                           parent-property="property"
51                           component-instance-map="componentInstanceMap"
52                           parent-form-obj="parentFormObj"
53                           fields-prefix-name="fieldsPrefixName+property.name"
54                           read-only="readOnly"
55                           default-value="{{currentTypeDefaultValue[property.name]}}"
56                           is-service="isService"
57                           types="types"></type-map>
58             </div>
59             <div ng-switch-when="list">
60                 <type-list value-obj-ref="valueObjRef[property.name]"
61                            schema-property="property.schema.property"
62                            parent-property="parentProperty"
63                            component-instance-map="componentInstanceMap"
64                            parent-form-obj="parentFormObj"
65                            fields-prefix-name="fieldsPrefixName+property.name"
66                            read-only="readOnly"
67                            default-value="{{currentTypeDefaultValue[property.name]}}"
68                            is-service="isService"
69                            types="types"></type-list>
70             </div>
71             <div ng-switch-default class="primitive-value-field">
72                 <div class="i-sdc-form-item" data-ng-class="{error:(parentFormObj[fieldsPrefixName+property.name].$dirty && parentFormObj[fieldsPrefixName+property.name].$invalid)}">
73                     <!-- Has Constraints -->
74
75                     <!--<select class="i-sdc-form-select"-->
76                     <!--ng-if="(property.constraints)"-->
77                     <!--data-ng-disabled="readOnly"-->
78                     <!--name="{{fieldsPrefixName+property.name}}"-->
79                     <!--data-ng-change="onValueChange(property.name,'constraintsChange')"-->
80                     <!--data-ng-model="valueObjRef[property.name]"-->
81                     <!--&gt;-->
82                     <!--&lt;!&ndash; Get the default value in case exist &ndash;&gt;-->
83                     <!--<option value = "{{valueObjRef[property.name]}}" name = "{{valueObjRef[property.name]}}" hidden selected>-->
84                     <!--{{valueObjRef[property.name]}}-->
85                     <!--</option> -->
86                     <!--&lt;!&ndash; add all constratint to Select list &ndash;&gt;-->
87                     <!--<option ng-repeat='value in property.constraints[0].validValues' value="{{value}}" >-->
88                     <!--{{value}}-->
89                     <!--</option> -->
90                     <!--</select>-->
91                     <!-- Input without constraints -->
92                     <input class="i-sdc-form-input"
93                            data-tests-id="{{fieldsPrefixName+property.name}}"
94                            ng-if="!((property.simpleType||property.type) == 'boolean')"
95                            data-ng-maxlength="100"
96                            data-ng-readonly="readOnly"
97                            maxlength="{{(property.simpleType||property.type) == 'integer'? 10 : 100}}"
98                            data-ng-model="valueObjRef[property.name]"
99                            type="text"
100                            name="{{fieldsPrefixName+property.name}}"
101                            data-ng-pattern="getValidationPattern((property.simpleType||property.type))"
102                            data-ng-model-options="{ debounce: 200 }"
103                            data-ng-change="inputOnValueChange(property)"
104                            autofocus
105                     />
106                     <select class="i-sdc-form-select"
107                             data-tests-id="{{fieldsPrefixName+property.name}}"
108                             ng-if="(property.simpleType||property.type) == 'boolean'"
109                             data-ng-disabled="readOnly"
110                             name="{{fieldsPrefixName+property.name}}"
111                             data-ng-change="onValueChange(property.name,'boolean')"
112                             data-ng-model="valueObjRef[property.name]"
113                             data-ng-options="option.v as option.n for option in [{ n: '', v: undefined }, { n: 'false', v: false }, { n: 'true', v: true }]">
114                     </select>
115
116                     <div class="input-error" data-ng-show="parentFormObj[fieldsPrefixName+property.name].$dirty && parentFormObj[fieldsPrefixName+property.name].$invalid">
117                         <span ng-show="parentFormObj[fieldsPrefixName+property.name].$error.maxlength" translate="VALIDATION_ERROR_MAX_LENGTH" translate-values="{'max': '100' }"></span>
118                         <span ng-show="parentFormObj[fieldsPrefixName+property.name].$error.pattern" translate="PROPERTY_EDIT_PATTERN"></span>
119                         <span ng-show="parentFormObj[fieldsPrefixName+property.name].$error.customValidation" translate="PROPERTY_EDIT_MAP_UNIQUE_KEYS"></span>
120                     </div>
121                 </div>
122             </div>
123         </div>
124         <!--</div>-->
125
126     </div>
127 </div>