Files
Desktop/ts/util/utf16ToEmoji.node.ts
Fedor Indutny 44076ece79 Rename files
2025-10-16 23:45:44 -07:00

14 lines
397 B
TypeScript

// Copyright 2025 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import { Buffer } from 'node:buffer';
export function utf16ToEmoji(utf16: string): string {
const codePoints = new Array<number>();
const buf = Buffer.from(utf16, 'hex');
for (let i = 0; i < buf.length; i += 2) {
codePoints.push(buf.readUint16BE(i));
}
return String.fromCodePoint(...codePoints);
}