UNPKG

angular-formly-templates-bootstrap

Version:

Angular-Formly plugin which outputs bootstrap compatible form fields.

38 lines (35 loc) 1.26 kB
export default ngModule => { ngModule.config(addSelectType); const template = `<select class="form-control" ng-model="model[options.key]"> <option ng-hide="to.notNull" value="">{{to.nullDisplay}}</option> </select>`; function addSelectType(formlyConfigProvider) { formlyConfigProvider.setType({ name: 'select', template, wrapper: ['bootstrapLabel', 'bootstrapHasError'], defaultOptions(options) { /* jshint maxlen:195 */ let ngOptions = options.templateOptions.ngOptions || `option[to.valueProp || 'value'] as option[to.labelProp || 'name'] group by option[to.groupProp || 'group'] for option in to.options`; return { ngModelAttrs: { [ngOptions]: { value: options.templateOptions.optionsAttr || 'ng-options' } } }; }, apiCheck: check => ({ templateOptions: { options: check.arrayOf(check.object), optionsAttr: check.string.optional, labelProp: check.string.optional, valueProp: check.string.optional, groupProp: check.string.optional, notNull: check.bool.optional, nullDisplay: check.string.optional } }) }); } };