import Ember from 'ember'; /** * Renders one random error message when passed a DS.Errors object * and a property name. The message will be one of the ones associated with * that specific property. If there are no errors associated with the property, * nothing will be rendered. * @param {DS.Errors} errors The DS.Errors object * @param {string} property The property name */ export default Ember.Component.extend({ tagName: 'p', classNames: ['response'], errors: null, property: '', isVisible: Ember.computed.notEmpty('errors'), message: Ember.computed('errors.[]', 'property', function () { var property = this.get('property'), errors = this.get('errors'), messages = [], index; if (!Ember.isEmpty(errors) && errors.get(property)) { errors.get(property).forEach(function (error) { messages.push(error); }); index = Math.floor(Math.random() * messages.length); return messages[index].message; } }) });