{"_id":"whatwg-encoding","_rev":"178155","name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","dist-tags":{"latest":"2.0.0"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"time":{"modified":"2022-10-18T09:28:14.000Z","created":"2016-10-16T02:07:07.293Z","2.0.0":"2021-09-12T20:40:42.859Z","1.0.5":"2018-09-30T04:20:59.538Z","1.0.4":"2018-08-13T00:14:39.035Z","1.0.3":"2017-10-29T01:44:55.546Z","1.0.2":"2017-10-23T00:13:37.174Z","1.0.1":"2016-10-16T02:34:31.658Z","1.0.0":"2016-10-16T02:07:07.293Z"},"users":{},"author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"versions":{"2.0.0":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"2.0.0","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","scripts":{"test":"mocha","lint":"eslint .","prepare":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.6.3"},"devDependencies":{"@domenic/eslint-config":"^1.3.0","eslint":"^7.32.0","minipass-fetch":"^1.4.1","mocha":"^9.1.1"},"engines":{"node":">=12"},"gitHead":"8d9446b437a613d6337044b60e2d1f2267ea1ddd","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@2.0.0","_nodeVersion":"16.9.1","_npmVersion":"7.21.1","dist":{"shasum":"e7635f597fd87020858626805a2729fa7698ac53","size":4041,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-2.0.0.tgz"},"_npmUser":{"name":"domenic","email":"d@domenic.me"},"directories":{},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/whatwg-encoding_2.0.0_1631479242718_0.11208519588071741"},"_hasShrinkwrap":false,"publish_time":1631479242859,"_cnpm_publish_time":1631479242859,"_cnpmcore_publish_time":"2021-12-16T10:07:28.934Z"},"1.0.5":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"1.0.5","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","scripts":{"test":"mocha","lint":"eslint lib test","prepare":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.4.24"},"devDependencies":{"eslint":"^5.3.0","got":"^9.0.0","mocha":"^5.2.0"},"gitHead":"04c383e309e0d3f198e19b050295995028b6cc48","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@1.0.5","_npmVersion":"6.2.0","_nodeVersion":"10.8.0","_npmUser":{"name":"domenic","email":"d@domenic.me"},"dist":{"shasum":"5abacf777c32166a51d085d6b4f3e7d27113ddb0","size":3947,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-1.0.5.tgz"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/whatwg-encoding_1.0.5_1538281259420_0.48990278300644907"},"_hasShrinkwrap":false,"publish_time":1538281259538,"_cnpm_publish_time":1538281259538,"_cnpmcore_publish_time":"2021-12-16T10:07:29.136Z"},"1.0.4":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"1.0.4","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","files":["lib/"],"scripts":{"test":"mocha","lint":"eslint lib test","prepare":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.4.23"},"devDependencies":{"eslint":"^5.3.0","got":"^9.0.0","mocha":"^5.2.0"},"gitHead":"42904015c67e254c378139a75953130cceeb5bbc","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@1.0.4","_npmVersion":"6.2.0","_nodeVersion":"10.8.0","_npmUser":{"name":"domenic","email":"d@domenic.me"},"dist":{"shasum":"63fb016b7435b795d9025632c086a5209dbd2621","size":3945,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-1.0.4.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-1.0.4.tgz"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/whatwg-encoding_1.0.4_1534119278902_0.5422639817294805"},"_hasShrinkwrap":false,"publish_time":1534119279035,"_cnpm_publish_time":1534119279035,"_cnpmcore_publish_time":"2021-12-16T10:07:29.387Z"},"1.0.3":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"1.0.3","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","files":["lib/"],"scripts":{"test":"mocha","lint":"eslint lib test","prepare":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.4.19"},"devDependencies":{"eslint":"^3.8.0","got":"^6.5.0","mocha":"^3.1.2"},"gitHead":"04a110a0b202ecf435aacf8617fd4a568e85964e","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@1.0.3","_npmVersion":"5.4.2","_nodeVersion":"8.6.0","_npmUser":{"name":"domenic","email":"d@domenic.me"},"dist":{"shasum":"57c235bc8657e914d24e1a397d3c82daee0a6ba3","size":3966,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-1.0.3.tgz"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/whatwg-encoding-1.0.3.tgz_1509241494617_0.47145224804989994"},"directories":{},"publish_time":1509241495546,"_hasShrinkwrap":false,"_cnpm_publish_time":1509241495546,"_cnpmcore_publish_time":"2021-12-16T10:07:29.596Z"},"1.0.2":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"1.0.2","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","files":["lib/"],"scripts":{"test":"mocha","lint":"eslint lib test","update":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.4.13"},"devDependencies":{"eslint":"^3.8.0","got":"^6.5.0","mocha":"^3.1.2"},"gitHead":"269bb00bb1277784cbfeccbb82aff4727ad11af9","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@1.0.2","_npmVersion":"5.4.2","_nodeVersion":"8.6.0","_npmUser":{"name":"domenic","email":"d@domenic.me"},"dist":{"shasum":"bd68ad169c3cf55080562257714bf012e668a165","size":3960,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-1.0.2.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-1.0.2.tgz"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/whatwg-encoding-1.0.2.tgz_1508717616198_0.12424216908402741"},"directories":{},"publish_time":1508717617174,"_hasShrinkwrap":false,"_cnpm_publish_time":1508717617174,"_cnpmcore_publish_time":"2021-12-16T10:07:29.799Z"},"1.0.1":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"1.0.1","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"WTFPL","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","files":["lib/"],"scripts":{"test":"mocha","lint":"eslint lib test","update":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.4.13"},"devDependencies":{"eslint":"^3.8.0","got":"^6.5.0","mocha":"^3.1.2"},"gitHead":"22ef4432e223dd4736651b1db7c43fb532352ea7","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@1.0.1","_shasum":"3c6c451a198ee7aec55b1ec61d0920c67801a5f4","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"domenic","email":"d@domenic.me"},"dist":{"shasum":"3c6c451a198ee7aec55b1ec61d0920c67801a5f4","size":2613,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-1.0.1.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-1.0.1.tgz"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/whatwg-encoding-1.0.1.tgz_1476585270143_0.7966783917509019"},"directories":{},"publish_time":1476585271658,"_hasShrinkwrap":false,"_cnpm_publish_time":1476585271658,"_cnpmcore_publish_time":"2021-12-16T10:07:30.040Z"},"1.0.0":{"name":"whatwg-encoding","description":"Decode strings according to the WHATWG Encoding Standard","keywords":["encoding","whatwg"],"version":"1.0.0","author":{"name":"Domenic Denicola","email":"d@domenic.me","url":"https://domenic.me/"},"license":"WTFPL","repository":{"type":"git","url":"git+https://github.com/jsdom/whatwg-encoding.git"},"main":"lib/whatwg-encoding.js","files":["lib/"],"scripts":{"test":"mocha","lint":"eslint lib test","update":"node scripts/update.js"},"dependencies":{"iconv-lite":"0.4.13"},"devDependencies":{"eslint":"^3.8.0","got":"^6.5.0","mocha":"^3.1.2"},"gitHead":"848161b330020027bf94f30502dc63e02df9b6e1","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","_id":"whatwg-encoding@1.0.0","_shasum":"f6a582bafe28d5bbeb5aac4829871e96dc0d6b97","_from":".","_npmVersion":"3.9.5","_nodeVersion":"6.2.2","_npmUser":{"name":"domenic","email":"d@domenic.me"},"dist":{"shasum":"f6a582bafe28d5bbeb5aac4829871e96dc0d6b97","size":3687,"noattachment":false,"key":"/whatwg-encoding/-/whatwg-encoding-1.0.0.tgz","tarball":"http://name.csiicloud.com:7001/whatwg-encoding/download/whatwg-encoding-1.0.0.tgz"},"maintainers":[{"name":"domenic","email":""},{"name":"joris-van-der-wel","email":""},{"name":"sebmaster","email":""},{"name":"timothygu","email":""},{"name":"tmpvar","email":""},{"name":"zirro","email":""}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/whatwg-encoding-1.0.0.tgz_1476583625739_0.5463150741998106"},"directories":{},"publish_time":1476583627293,"_hasShrinkwrap":false,"_cnpm_publish_time":1476583627293,"_cnpmcore_publish_time":"2021-12-16T10:07:30.294Z"}},"readme":"# Decode According to the WHATWG Encoding Standard\n\nThis package provides a thin layer on top of [iconv-lite](https://github.com/ashtuchkin/iconv-lite) which makes it expose some of the same primitives as the [Encoding Standard](https://encoding.spec.whatwg.org/).\n\n```js\nconst whatwgEncoding = require(\"whatwg-encoding\");\n\nconsole.assert(whatwgEncoding.labelToName(\"latin1\") === \"windows-1252\");\nconsole.assert(whatwgEncoding.labelToName(\"  CYRILLic \") === \"ISO-8859-5\");\n\nconsole.assert(whatwgEncoding.isSupported(\"IBM866\") === true);\n\n// Not supported by the Encoding Standard\nconsole.assert(whatwgEncoding.isSupported(\"UTF-32\") === false);\n\n// In the Encoding Standard, but this package can't decode it\nconsole.assert(whatwgEncoding.isSupported(\"x-mac-cyrillic\") === false);\n\nconsole.assert(whatwgEncoding.getBOMEncoding(new Uint8Array([0xFE, 0xFF])) === \"UTF-16BE\");\nconsole.assert(whatwgEncoding.getBOMEncoding(new Uint8Array([0x48, 0x69])) === null);\n\nconsole.assert(whatwgEncoding.decode(new Uint8Array([0x48, 0x69]), \"UTF-8\") === \"Hi\");\n```\n\n## API\n\n- `decode(uint8Array, fallbackEncodingName)`: performs the [decode](https://encoding.spec.whatwg.org/#decode) algorithm (in which any BOM will override the passed fallback encoding), and returns the resulting string\n- `labelToName(label)`: performs the [get an encoding](https://encoding.spec.whatwg.org/#concept-encoding-get) algorithm and returns the resulting encoding's name, or `null` for failure\n- `isSupported(name)`: returns whether the encoding is one of [the encodings](https://encoding.spec.whatwg.org/#names-and-labels) of the Encoding Standard, _and_ is an encoding that this package can decode (via iconv-lite)\n- `getBOMEncoding(uint8Array)`: sniffs the first 2–3 bytes of the supplied `Uint8Array`, returning one of the encoding names `\"UTF-8\"`, `\"UTF-16LE\"`, or `\"UTF-16BE\"` if the appropriate BOM is present, or `null` if no BOM is present\n\n## Unsupported encodings\n\nSince we rely on iconv-lite, we are limited to support only the encodings that they support. Currently we are missing support for:\n\n- ISO-2022-JP\n- ISO-8859-8-I\n- replacement\n- x-mac-cyrillic\n- x-user-defined\n\nPassing these encoding names will return `false` when calling `isSupported`, and passing any of the possible labels for these encodings to `labelToName` will return `null`.\n\n## Credits\n\nThis package was originally based on the excellent work of [@nicolashenry](https://github.com/nicolashenry), [in jsdom](https://github.com/tmpvar/jsdom/blob/7ce11776ce161e8d5921a7a183585327400f786b/lib/jsdom/living/helpers/encoding.js). It has since been pulled out into this separate package.\n\n## Alternatives\n\nIf you are looking for a JavaScript implementation of the Encoding Standard's `TextEncoder` and `TextDecoder` APIs, you'll want [@inexorabletash](https://github.com/inexorabletash)'s [text-encoding](https://github.com/inexorabletash/text-encoding) package. Node.js also has them [built-in](https://nodejs.org/dist/latest/docs/api/globals.html#globals_textdecoder).\n","_attachments":{},"homepage":"https://github.com/jsdom/whatwg-encoding#readme","bugs":{"url":"https://github.com/jsdom/whatwg-encoding/issues"},"license":"MIT"}