UNPKG

graphdb-workbench

Version:
149 lines (145 loc) 13.7 kB
<div class="modal-header"> <button type="button" class="close" ng-click="cancel()"></button> <h3 class="modal-title">{{ 'externalsync.create.connector' | translate: {name: connector["key"]} }}</h3> </div> <div class="modal-body"> <form name="form" id="connectorForm" ng-submit="ok()" novalidate> <div class="form-horizontal"> <div class="form-group row"> <label class="col-xs-2 col-form-label">{{'name.simple.label' | translate}}<sup>*</sup></label> <div class="col-xs-10 connector-name-field"> <input type="text" class="form-control" placeholder="{{'connector.name' | translate}}" ng-model="name" required uib-popover="{{'connector.name.popover' | translate}}" popover-trigger="focus" popover-placement="bottom"> </div> </div> <div class="form-group row" ng-repeat="option in options" ng-hide="option.__hidden"> <label class="col-xs-2" ng-class="{'col-form-label': option.__type != 'Boolean', 'font-weight-bold':option.__required }">{{option.__label}}<sup ng-if="option.__required">*</sup></label> <div class="col-xs-10"> <div ng-if="option.__type == 'Boolean'" class="form-check"> <label class="form-check-label" uib-popover="{{option.__description}}" popover-trigger="mouseenter" popover-placement="bottom"> <input class="form-check-input" type="checkbox" ng-model="values[option.__name]"> </label> </div> <div ng-if="option.__type == 'String'"> <input type="text" class="form-control" placeholder="{{option.__hint}}" ng-model="values[option.__name]" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> </div> <div ng-if="option.__type == 'BigString'"> <textarea type="text" class="form-control" placeholder="{{option.__hint}}" ng-model="values[option.__name]" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> </textarea> </div> <div ng-if="option.__type == 'JsonString'"> <textarea type="text" class="form-control" placeholder="{{option.__hint}}" ng-model="values[option.__name]" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> </textarea> </div> <div ng-if="option.__type == 'Long'"> <input type="number" class="form-control" placeholder="{{option.__hint}}" ng-model="values[option.__name]" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> </div> <div ng-if="option.__type == 'StringArray'" ng-repeat="value in values[option.__name] track by $index"> <div class="input-group mb-1 {{'property-' + option.__name}}"> <input type="text" class="form-control" placeholder="{{option.__hint}}" ng-model="values[option.__name][$index]" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> <span class="input-group-btn btn-group-sm"> <button type="button" ng-disabled="values[option.__name].length == 1" class="btn btn-link" uib-popover="{{'delete.connector.delete.btn' | translate}} {{option.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="deleteOption($index, values[option.__name])"> <em class="icon-minus"></em> </button> <button type="button" class="btn btn-link" uib-popover="{{'common.add' | translate}} {{option.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="addOption($index, values[option.__name])"> <em class="icon-plus"></em> </button> </span> </div> </div> <div ng-if="option.__type == 'OptionArray'"> <div ng-repeat="field in values[option.__name] track by $index" ng-init="fieldIndex = $index" class="row"> <div class="col-xs-11"> <fieldset class="bg-lightgray mb-1 p-1"> <div class="form-group row {{'child-property-' + child.__name}}" ng-repeat="child in option.__childOptions | filter: {__type: '!Boolean'}: true"> <label class="col-xs-3" ng-class="{'col-form-label': true, 'font-weight-bold':child.__required }">{{child.__label}}<sup ng-if="child.__required">*</sup></label> <div class="col-xs-9"> <div ng-if="child.__type == 'String'"> <input type="text" class="form-control" placeholder="{{child.__hint}}" ng-model="values[option.__name][fieldIndex][child.__name]" ng-required="child.__required" uib-popover="{{child.__description}}" popover-trigger="focus" popover-placement="bottom"> </div> <div ng-if="child.__type == 'BigString'"> <textarea type="text" class="form-control" placeholder="{{child.__hint}}" ng-model="values[option.__name][fieldIndex][child.__name]" ng-required="child.__required" uib-popover="{{child.__description}}" popover-trigger="focus" popover-placement="bottom"></textarea> </div> <div ng-if="child.__type == 'Long'"> <input type="number" class="form-control" placeholder="{{child.__hint}}" ng-model="values[option.__name][fieldIndex][child.__name]" ng-required="child.__required" uib-popover="{{child.__description}}" popover-trigger="focus" popover-placement="bottom"> </div> <div class="input-group mb-1" ng-if="child.__type == 'StringArray'" ng-repeat="value in values[option.__name][fieldIndex][child.__name] track by $index"> <input type="text" class="form-control" placeholder="{{child.__hint}}" ng-model="values[option.__name][fieldIndex][child.__name][$index]" ng-required="child.__required" uib-popover="{{child.__description}}" popover-trigger="focus" popover-placement="bottom"> <span class="input-group-btn btn-group-sm"> <button type="button" ng-disabled="values[option.__name][fieldIndex][child.__name].length == 1" class="btn btn-link btn-sm" uib-popover="{{'delete.connector.delete.btn' | translate}} {{child.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="deleteOption($index, values[option.__name][fieldIndex][child.__name])"> <em class="icon-minus"></em> </button> <button type="button" class="btn btn-link btn-sm" uib-popover="{{'common.add' | translate}} {{child.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="addOption($index, values[option.__name][fieldIndex][child.__name])"> <em class="icon-plus"></em> </button> </span> </div> <div ng-if="child.__type == 'OptionArray'" class="col-form-label"> <em>{{'nested.objects.error' | translate}}</em> </div> </div> </div> <div class="form-group row"> <div class="col-xs-3"></div> <div class="col-xs-9"> <label ng-repeat="child in option.__childOptions | filter: {__type: 'Boolean'}: true" class="mr-1" uib-popover="{{boolean.__description}}" popover-trigger="mouseenter" popover-placement="bottom"> <input type="checkbox" ng-model="values[option.__name][fieldIndex][child.__name]"> {{child.__label}} </label> </div> </div> </fieldset> </div> <div class="col-xs-1 p-0" style="margin-left: -1rem"> <span class="input-group-btn btn-group-sm"> <button type="button" ng-disabled="values[option.__name].length == 1" class="btn btn-link" uib-popover="{{'delete.field.popover' | translate}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="deleteOption($index, values[option.__name])"> <em class="icon-minus"></em> </button> <button type="button" class="btn btn-link" uib-popover="{{'add.field.popover' | translate}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="addField($index, option.__name)"> <em class="icon-plus"></em> </button> </span> </div> </div> </div> <div ng-if="option.__type == 'Map'" ng-show="values[option.__name].length === 0"> <div class="col-form-label mb-1"> <label><em>{{'no.sentence.beginning' | translate}} {{option.__label}} {{'added.label' | translate}}</em></label> <span class="btn-group-sm"> <button type="button" class="btn btn-link" uib-popover="{{'common.add' | translate}} {{option.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="addMapOption($index, values[option.__name])"> <em class="icon-plus"></em> </button> </span> </div> </div> <div ng-if="option.__type == 'Map'" ng-repeat="kv in values[option.__name] track by $index"> <div class="input-group mb-1"> <div class="row"> <div class="col-xs-6"> <input type="text" class="form-control" placeholder="{{'key.label' | translate}}" ng-model="kv.key" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> </div> <div class="col-xs-6"> <input type="text" class="form-control" placeholder="{{'value.label' | translate}}" ng-model="kv.value" ng-required="option.__required" uib-popover="{{option.__description}}" popover-trigger="focus" popover-placement="bottom"> </div> </div> <span class="input-group-btn btn-group-sm"> <button type="button" ng-disabled="values[option.__name].length == 0" class="btn btn-link" uib-popover="{{'delete.connector.delete.btn' | translate}} {{option.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="deleteMapOption($index, values[option.__name])"> <em class="icon-minus"></em> </button> <button type="button" class="btn btn-link" uib-popover="{{'common.add' | translate}} {{option.__label | singular}}" popover-trigger="mouseenter" popover-placement="bottom" ng-click="addMapOption($index, values[option.__name])"> <em class="icon-plus"></em> </button> </span> </div> </div> </div> </div> </div> </form> </div> <div class="modal-footer"> <button type="button" class="btn btn-link pull-left" ng-click="viewQuery()">{{'view.sparql.query' | translate}}</button> <button type="button" class="btn btn-secondary" ng-click="cancel()">{{'common.cancel.btn' | translate}}</button> <button type="submit" form="connectorForm" class="btn btn-primary create-connector-btn" ng-click="ok()">{{'common.ok.btn' | translate}}</button> </div>