| //- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| mixin form-field__dropdown({ label, model, name, disabled, required, multiple, placeholder, placeholderEmpty, options, optionLabel = 'label', tip, tipOpts }) |
| -var errLbl = label ? label.substring(0, label.length - 1) : 'Field'; |
| |
| mixin __form-field__input() |
| button.select-toggle( |
| type='button' |
| id=`{{ ${name} }}Input` |
| name=`{{ ${name} }}` |
| |
| data-placeholder=placeholderEmpty ? `{{ ${options}.length > 0 ? '${placeholder}' : '${placeholderEmpty}' }}` : placeholder |
| |
| ng-model=model |
| ng-disabled=disabled && `${disabled}` |
| ng-required=required && `${required}` |
| ng-ref='$input' |
| ng-ref-read='ngModel' |
| |
| bs-select |
| bs-options=`item.value as item.${optionLabel} for item in ${options}` |
| |
| data-multiple=multiple ? '1' : false |
| |
| tabindex='0' |
| )&attributes(attributes.attributes) |
| |
| .form-field.form-field__dropdown.ignite-form-field(id=`{{ ${name} }}Field`) |
| +form-field__label({ label, name, required, disabled }) |
| +form-field__tooltip({ title: tip, options: tipOpts }) |
| |
| .form-field__control |
| +__form-field__input(attributes=attributes) |
| |
| .form-field__errors( |
| ng-messages=`$input.$error` |
| ng-show=`($input.$dirty || $input.$touched || $input.$submitted) && $input.$invalid` |
| ) |
| if required |
| +form-field__error({ error: 'required', message: `${errLbl} could not be empty!` }) |
| |
| if block |
| block |