import getConstant from '../constants'; import { isObject } from './isType'; const asterisk = `<span class="red" title="${getConstant('REQUIRED_FIELD_TEXT')}">* </span>`; const addAsterisk = (el) => { const target = $(el); if (isObject(target)) { // If the element is part of a Fieldset then place the asterisk before the <fieldset><legend> if (target.closest('fieldset').length > 0 && target.closest('fieldset').find('legend').length > 0) { const legend = target.closest('fieldset').find('legend'); legend.html(`${asterisk} ${legend.html()}`); // If the element is a radio button or checkbox place the asterisk after the label } else if (target.is('[input="checkbox"]') || target.is('[input="radio"]')) { target.after(asterisk); // Else place the asterisk before the corresponding label } else { const label = target.closest('.form-group').find('label'); if (isObject(label)) { $(label[0]).before(asterisk); } } } }; export default(el) => { addAsterisk(el); }; $(() => { $('[aria-required=true]').each((idx, el) => { addAsterisk(el); }); });