92 lines
4.0 KiB
HTML
92 lines
4.0 KiB
HTML
<collapsible-group title="{$ title $}"
|
|
on-add="value.add()">
|
|
<div class="three-columns" ng-repeat="subItem in value.getValues() track by $index"
|
|
ng-class="subItem.get('type').get()">
|
|
<div class="left-column">
|
|
<div class="form-group">
|
|
<label for="elem-{$ $id $}.$index">Key Type</label>
|
|
<select id="elem-{$ $id $}.$index" class="form-control"
|
|
ng-model="subItem.get('type').value" ng-model-options="{getterSetter: true}">
|
|
<option ng-repeat="value in subItem.get('type').getEnumValues()"
|
|
value="{$ value $}"
|
|
ng-selected="subItem.get('type').get() == value">{$ value $}</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div ng-switch="subItem.get('type').value()">
|
|
<!-- draw string input -->
|
|
<div class="right-column" ng-switch-when="string">
|
|
<div class="form-group">
|
|
<label> </label>
|
|
<div class="input-group">
|
|
<input type="text" class="form-control"
|
|
ng-model="subItem.get('value').value" ng-model-options="{getterSetter: true}">
|
|
<span class="input-group-btn">
|
|
<button class="btn btn-default" ng-click="value.remove($index)">
|
|
<i class="fa fa-minus-circle"></i>
|
|
</button>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- END: draw string input -->
|
|
<!-- draw dictionary inputs -->
|
|
<div ng-switch-when="dictionary">
|
|
<div ng-repeat="(key, value) in subItem.get('value').getValues() track by key">
|
|
<div ng-hide="$first" class="left-column"></div>
|
|
<div class="right-column">
|
|
<div class="form-group">
|
|
<label for="elem-{$ $id $}.{$ key $}">
|
|
<editable ng-model="value.keyValue" ng-model-options="{getterSetter: true}"></editable>
|
|
</label>
|
|
<div class="input-group">
|
|
<input type="text" id="elem-{$ $id $}.{$ key $}" class="form-control" ng-model="value.value"
|
|
ng-model-options="{getterSetter: true}">
|
|
<span class="input-group-btn">
|
|
<button class="btn btn-default" ng-click="subItem.get('value').remove(key)">
|
|
<i class="fa fa-minus-circle"></i>
|
|
</button>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div ng-hide="$last" class="clearfix"></div>
|
|
<div ng-show="$last" class="add-btn button-column">
|
|
<button class="btn btn-default btn-sm pull-right" ng-click="subItem.get('value').add()">
|
|
<i class="fa fa-plus"></i>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- END: draw dictionary inputs -->
|
|
<!-- draw list inputs -->
|
|
<div ng-switch-when="list">
|
|
<div ng-repeat="value in subItem.get('value').getValues() track by $index">
|
|
<div ng-hide="$first" class="left-column"></div>
|
|
<div class="right-column">
|
|
<div class="form-group">
|
|
<label ng-show="$first"> </label>
|
|
<div class="input-group">
|
|
<input type="text" class="form-control" ng-model="value.value"
|
|
ng-model-options="{getterSetter: true}">
|
|
<span class="input-group-btn">
|
|
<button class="btn btn-default" ng-click="subItem.get('value').remove($index)">
|
|
<i class="fa fa-minus-circle"></i>
|
|
</button>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div ng-hide="$last" class="clearfix"></div>
|
|
<div ng-show="$last" class="add-btn button-column" ng-class="{'varlist-1st-row': !$index}">
|
|
<button class="btn btn-default btn-sm pull-right" ng-click="subItem.get('value').add()">
|
|
<i class="fa fa-plus"></i>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- END: draw list inputs -->
|
|
</div>
|
|
</div>
|
|
</collapsible-group>
|