CSIT Fix for SDC-2585
[sdc.git] / catalog-ui / src / app / view-models / forms / input-form / input-form-view.html
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 <ng1-modal modal="modalInstanceInput" type="classic" class="sdc-edit-input-container" buttons="footerButtons"  header="Update Input" show-close-button="true">
18
19     <div class="sdc-edit-input-form-container" >
20         <form novalidate class="w-sdc-form two-columns" name="forms.editForm" >
21
22             <div class="w-sdc-form-columns-wrapper">
23
24                 <div class="w-sdc-form-column">
25
26                     <!-- Name -->
27                     <div class="i-sdc-form-item">
28                         <label class="i-sdc-form-label">Name</label>
29                         <input class="i-sdc-form-input"
30                                data-tests-id="inputName"
31                                data-ng-maxlength="50"
32                                data-ng-disabled="true"
33                                maxlength="50"
34                                data-ng-model="inputEditModel.editInput.name"
35                                type="text"
36                                name="inputName"
37                                autofocus />
38                     </div>
39
40                     <!-- Description -->
41                     <div class="i-sdc-form-item">
42                         <label class="i-sdc-form-label">Description</label>
43                         <textarea  class="i-sdc-form-textarea"
44                                    data-ng-disabled="true"
45                                    name="description"
46                                    data-ng-model="inputEditModel.editInput.description"
47                                    data-tests-id="description"></textarea>
48                     </div>
49
50
51                 </div>
52
53                 <div class="w-sdc-form-column">
54                         <!-- Type -->
55                     <div class="i-sdc-form-item">
56                         <label class="i-sdc-form-label">Type</label>
57                         <input class="i-sdc-form-input"
58                                data-tests-id="type"
59                                data-ng-disabled="true"
60                                data-ng-model="inputEditModel.editInput.type"
61                                type="text"
62                                name="type"/>
63                     </div>
64                     <!-- schema -->
65                     <div class="i-sdc-form-item"
66                          data-ng-if="showSchema()">
67                         <label class="i-sdc-form-label">Entry Schema</label>
68                         <input class="i-sdc-form-input"
69                                data-tests-id="schema"
70                                data-ng-disabled="true"
71                                data-ng-model="inputEditModel.editInput.schema.property.type"
72                                type="text"
73                                name="schema"/>
74                     </div>
75                     <!-- Default value -->
76                     <div class="i-sdc-form-item" data-ng-class="{error:(forms.editForm.value.$dirty && forms.editForm.value.$invalid)}">
77                         <label class="i-sdc-form-label">Default Value</label>
78                         <div data-ng-switch="inputEditModel.editInput.type">
79                             <div ng-switch-when="map">
80                                 <type-map value-obj-ref="myValue"
81                                           schema-property="inputEditModel.editInput.schema.property"
82                                           parent-form-obj="forms.editForm"
83                                           fields-prefix-name="'input-value-'"
84                                           read-only="true"
85                                           default-value=""
86                                           types="[]"
87                                           max-length="maxLength"></type-map>
88                             </div>
89                             <div ng-switch-when="list">
90                                 <type-list value-obj-ref="myValue"
91                                            schema-property="inputEditModel.editInput.schema.property"
92                                            parent-form-obj="forms.editForm"
93                                            fields-prefix-name="'input-value-'"
94                                            read-only="true"
95                                            default-value=""
96                                            types="[]"
97                                            max-length="maxLength"></type-list>
98                             </div>
99                             <div ng-switch-default>
100                                 <div class="i-sdc-form-item" data-ng-class="{error:(forms.editForm.value.$dirty && forms.editForm.value.$invalid)}">
101                                     <input class="i-sdc-form-input"
102                                            data-tests-id="defaultvalue"
103                                            ng-if="inputEditModel.editInput.type != 'boolean'"
104                                            data-ng-maxlength="maxLength"
105                                            data-ng-disabled="true"
106                                            maxlength="{{maxLength}}"
107                                            data-ng-model="inputEditModel.editInput.defaultValue"
108                                            type="text"
109                                            name="value"
110                                            data-ng-pattern="getValidationPattern(input.type)"
111                                            data-ng-model-options="{ debounce: 200 }"
112                                            data-ng-change="('json'==inputEditModel.editInput.type && forms.editForm.value.$setValidity('pattern', validateJson(inputEditModel.editInput.defaultValue)))
113                                                         ||(!forms.editForm.value.$error.pattern && ('integer'==inputEditModel.editInput.type && forms.editForm.value.$setValidity('pattern', validateIntRange(inputEditModel.editInput.defaultValue)) || onValueChange()))"
114                                            autofocus />
115                                     <select class="i-sdc-form-select"
116                                             data-tests-id="booleantype"
117                                             ng-if="inputEditModel.editInput.type == 'boolean'"
118                                             data-ng-disabled="true"
119                                             name="value"
120                                             data-ng-model="inputEditModel.editInput.defaultValue">
121                                         <option value="true">true</option>
122                                         <option value="false">false</option>
123                                     </select>
124
125                                     <div class="input-error" data-ng-show="forms.editForm.value.$dirty && forms.editForm.value.$invalid">
126                                         <span ng-show="forms.editForm.value.$error.maxlength" translate="VALIDATION_ERROR_MAX_LENGTH" translate-values="{'max': '{{maxLength}}' }"></span>
127                                         <span ng-show="forms.editForm.value.$error.pattern" translate="PROPERTY_EDIT_PATTERN"></span>
128                                     </div>
129                                 </div>
130                             </div>
131                         </div>
132                     </div>
133
134                 </div>
135
136             </div>
137
138         </form>
139     </div>
140
141 </ng1-modal>