Skip to content

Latest commit

 

History

History
36 lines (22 loc) · 1.29 KB

README.md

File metadata and controls

36 lines (22 loc) · 1.29 KB

npm utf7.1 CI

UTF-7.1

Fork of utf7 but removed the vulnerabilities.

Encodes and decodes JavaScript (Unicode/UCS-2) strings to UTF-7 ASCII strings. It supports two modes: UTF-7 as defined in RFC 2152 and Modified UTF-7 as defined by the IMAP standard in RFC 3501, section 5.1.3

Usage

RFC 2152

var utf7 = require('utf7.1');

var encoded = utf7.encode('Jyväskylä');
assert.equal('Jyv+AOQ-skyl+AOQ-', encoded);

var decoded = utf7.decode(encoded);
assert.equal('Jyväskylä', decoded);

By default, .encode() only encodes the default characeters defined in RFC 2152. To also encode optional characters, use .encodeAll() or specify the characters you want to encode as the second argument to .encode().

IMAP (RFC 3501)

var utf7 = require('utf7.1').imap;

var encoded = utf7.encode('"你好" heißt "Hallo"');
assert.equal('"&T2BZfQ-" hei&AN8-t "Hallo"', encoded);

var decoded = utf7.decode(encoded);
assert.equal('"你好" heißt "Hallo"', decoded);