Fix links after emoji
JavaScript strings are encoded as UTF-16. When a Unicode character
outside of the BMP is part of a string, it is encoded as a surrogate
pair. For instance, '🎨' is encoded as '\uD83C\uDFA8', but a for-of loop
will treat that as a single character with length 2. In
getByteToCharMap, this was not handled, resulting in an incorrect value
of charIndex and links being placed at the wrong location in messages.
authored by
hvdijk.tngl.sh
and committed by
Tangled
395af63b
5c9d9295