diff options
Diffstat (limited to 'node_modules/strip-bom-buf')
-rw-r--r-- | node_modules/strip-bom-buf/index.js | 14 | ||||
-rw-r--r-- | node_modules/strip-bom-buf/license | 21 | ||||
-rw-r--r-- | node_modules/strip-bom-buf/package.json | 43 | ||||
-rw-r--r-- | node_modules/strip-bom-buf/readme.md | 36 |
4 files changed, 114 insertions, 0 deletions
diff --git a/node_modules/strip-bom-buf/index.js b/node_modules/strip-bom-buf/index.js new file mode 100644 index 000000000..e23e718c7 --- /dev/null +++ b/node_modules/strip-bom-buf/index.js @@ -0,0 +1,14 @@ +'use strict'; +const isUtf8 = require('is-utf8'); + +module.exports = x => { + if (!Buffer.isBuffer(x)) { + throw new TypeError('Expected a Buffer, got ' + typeof x); + } + + if (x[0] === 0xEF && x[1] === 0xBB && x[2] === 0xBF && isUtf8(x)) { + return x.slice(3); + } + + return x; +}; diff --git a/node_modules/strip-bom-buf/license b/node_modules/strip-bom-buf/license new file mode 100644 index 000000000..654d0bfe9 --- /dev/null +++ b/node_modules/strip-bom-buf/license @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/strip-bom-buf/package.json b/node_modules/strip-bom-buf/package.json new file mode 100644 index 000000000..581e967a3 --- /dev/null +++ b/node_modules/strip-bom-buf/package.json @@ -0,0 +1,43 @@ +{ + "name": "strip-bom-buf", + "version": "1.0.0", + "description": "Strip UTF-8 byte order mark (BOM) from a buffer", + "license": "MIT", + "repository": "sindresorhus/strip-bom-buf", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=4" + }, + "scripts": { + "test": "xo && ava" + }, + "files": [ + "index.js" + ], + "keywords": [ + "strip", + "bom", + "byte", + "order", + "mark", + "unicode", + "utf8", + "utf-8", + "remove", + "delete", + "trim", + "text", + "buffer" + ], + "dependencies": { + "is-utf8": "^0.2.1" + }, + "devDependencies": { + "ava": "*", + "xo": "*" + } +} diff --git a/node_modules/strip-bom-buf/readme.md b/node_modules/strip-bom-buf/readme.md new file mode 100644 index 000000000..3c8f9bc49 --- /dev/null +++ b/node_modules/strip-bom-buf/readme.md @@ -0,0 +1,36 @@ +# strip-bom-buf [](https://travis-ci.org/sindresorhus/strip-bom-buf) + +> Strip UTF-8 [byte order mark](http://en.wikipedia.org/wiki/Byte_order_mark#UTF-8) (BOM) from a buffer + +From Wikipedia: + +> The Unicode Standard permits the BOM in UTF-8, but does not require nor recommend its use. Byte order has no meaning in UTF-8. + + +## Install + +``` +$ npm install --save strip-bom-buf +``` + + +## Usage + +```js +const fs = require('fs'); +const stripBomBuf = require('strip-bom-buf'); + +stripBomBuf(fs.readFileSync('unicorn.txt')); +//=> 'unicorn' +``` + + +## Related + +- [strip-bom](https://github.com/sindresorhus/strip-bom) - String version of this module +- [strip-bom-stream](https://github.com/sindresorhus/strip-bom-stream) - Stream version of this module + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) |