changeReactMentionsInput.js 635 B

123456789101112131415161718
  1. const changeReactMentionsInput = (wrapper, value) => {
  2. // Need to do this because of how react-mentions works,
  3. // checks that event object is === document.activeElement
  4. let el = wrapper.find('textarea').getDOMNode();
  5. // We need a non-zero width selection for `react-mentions`
  6. el.selectionStart = 2;
  7. el.selectionEnd = 3;
  8. wrapper.find('textarea').simulate('select', {target: el});
  9. // Finally update element value
  10. el = wrapper.find('textarea').getDOMNode();
  11. el.value = value;
  12. el.selectionEnd = value.length;
  13. wrapper.find('textarea').simulate('change', {target: el});
  14. };
  15. export default changeReactMentionsInput;