0
0
Fork 0

Fixes string length issue for multibyte characters. (#2443)

This commit is contained in:
Ash Furrow 2017-04-25 17:37:51 +02:00 committed by Eugen Rochko
parent d4f7f11c3c
commit 48652cb41e
4 changed files with 20 additions and 13 deletions

View file

@ -1,4 +1,5 @@
import PropTypes from 'prop-types';
import { length } from 'stringz';
class CharacterCounter extends React.PureComponent {
@ -10,7 +11,7 @@ class CharacterCounter extends React.PureComponent {
}
render () {
const diff = this.props.max - this.props.text.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "_").length;
const diff = this.props.max - length(this.props.text);
return this.checkRemainingText(diff);
}

View file

@ -1,4 +1,5 @@
import emojify from './components/emoji'
import emojify from './components/emoji';
import { length } from 'stringz';
$(() => {
$.each($('.emojify'), (_, content) => {
@ -40,9 +41,9 @@ $(() => {
// used on /settings/profile
$('.account_display_name').on('input', e => {
$('.name-counter').text(30 - $(e.target).val().length)
$('.name-counter').text(30 - length($(e.target).val()));
});
$('.account_note').on('input', e => {
$('.note-counter').text(160 - $(e.target).val().length)
$('.note-counter').text(160 - length($(e.target).val()));
});
});