mirror of
https://github.com/musix-org/musix-oss
synced 2025-06-16 22:06:01 +00:00
Modules
This commit is contained in:
24
node_modules/concat-stream/LICENSE
generated
vendored
Normal file
24
node_modules/concat-stream/LICENSE
generated
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
The MIT License
|
||||
|
||||
Copyright (c) 2013 Max Ogden
|
||||
|
||||
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.
|
144
node_modules/concat-stream/index.js
generated
vendored
Normal file
144
node_modules/concat-stream/index.js
generated
vendored
Normal file
@ -0,0 +1,144 @@
|
||||
var Writable = require('readable-stream').Writable
|
||||
var inherits = require('inherits')
|
||||
var bufferFrom = require('buffer-from')
|
||||
|
||||
if (typeof Uint8Array === 'undefined') {
|
||||
var U8 = require('typedarray').Uint8Array
|
||||
} else {
|
||||
var U8 = Uint8Array
|
||||
}
|
||||
|
||||
function ConcatStream(opts, cb) {
|
||||
if (!(this instanceof ConcatStream)) return new ConcatStream(opts, cb)
|
||||
|
||||
if (typeof opts === 'function') {
|
||||
cb = opts
|
||||
opts = {}
|
||||
}
|
||||
if (!opts) opts = {}
|
||||
|
||||
var encoding = opts.encoding
|
||||
var shouldInferEncoding = false
|
||||
|
||||
if (!encoding) {
|
||||
shouldInferEncoding = true
|
||||
} else {
|
||||
encoding = String(encoding).toLowerCase()
|
||||
if (encoding === 'u8' || encoding === 'uint8') {
|
||||
encoding = 'uint8array'
|
||||
}
|
||||
}
|
||||
|
||||
Writable.call(this, { objectMode: true })
|
||||
|
||||
this.encoding = encoding
|
||||
this.shouldInferEncoding = shouldInferEncoding
|
||||
|
||||
if (cb) this.on('finish', function () { cb(this.getBody()) })
|
||||
this.body = []
|
||||
}
|
||||
|
||||
module.exports = ConcatStream
|
||||
inherits(ConcatStream, Writable)
|
||||
|
||||
ConcatStream.prototype._write = function(chunk, enc, next) {
|
||||
this.body.push(chunk)
|
||||
next()
|
||||
}
|
||||
|
||||
ConcatStream.prototype.inferEncoding = function (buff) {
|
||||
var firstBuffer = buff === undefined ? this.body[0] : buff;
|
||||
if (Buffer.isBuffer(firstBuffer)) return 'buffer'
|
||||
if (typeof Uint8Array !== 'undefined' && firstBuffer instanceof Uint8Array) return 'uint8array'
|
||||
if (Array.isArray(firstBuffer)) return 'array'
|
||||
if (typeof firstBuffer === 'string') return 'string'
|
||||
if (Object.prototype.toString.call(firstBuffer) === "[object Object]") return 'object'
|
||||
return 'buffer'
|
||||
}
|
||||
|
||||
ConcatStream.prototype.getBody = function () {
|
||||
if (!this.encoding && this.body.length === 0) return []
|
||||
if (this.shouldInferEncoding) this.encoding = this.inferEncoding()
|
||||
if (this.encoding === 'array') return arrayConcat(this.body)
|
||||
if (this.encoding === 'string') return stringConcat(this.body)
|
||||
if (this.encoding === 'buffer') return bufferConcat(this.body)
|
||||
if (this.encoding === 'uint8array') return u8Concat(this.body)
|
||||
return this.body
|
||||
}
|
||||
|
||||
var isArray = Array.isArray || function (arr) {
|
||||
return Object.prototype.toString.call(arr) == '[object Array]'
|
||||
}
|
||||
|
||||
function isArrayish (arr) {
|
||||
return /Array\]$/.test(Object.prototype.toString.call(arr))
|
||||
}
|
||||
|
||||
function isBufferish (p) {
|
||||
return typeof p === 'string' || isArrayish(p) || (p && typeof p.subarray === 'function')
|
||||
}
|
||||
|
||||
function stringConcat (parts) {
|
||||
var strings = []
|
||||
var needsToString = false
|
||||
for (var i = 0; i < parts.length; i++) {
|
||||
var p = parts[i]
|
||||
if (typeof p === 'string') {
|
||||
strings.push(p)
|
||||
} else if (Buffer.isBuffer(p)) {
|
||||
strings.push(p)
|
||||
} else if (isBufferish(p)) {
|
||||
strings.push(bufferFrom(p))
|
||||
} else {
|
||||
strings.push(bufferFrom(String(p)))
|
||||
}
|
||||
}
|
||||
if (Buffer.isBuffer(parts[0])) {
|
||||
strings = Buffer.concat(strings)
|
||||
strings = strings.toString('utf8')
|
||||
} else {
|
||||
strings = strings.join('')
|
||||
}
|
||||
return strings
|
||||
}
|
||||
|
||||
function bufferConcat (parts) {
|
||||
var bufs = []
|
||||
for (var i = 0; i < parts.length; i++) {
|
||||
var p = parts[i]
|
||||
if (Buffer.isBuffer(p)) {
|
||||
bufs.push(p)
|
||||
} else if (isBufferish(p)) {
|
||||
bufs.push(bufferFrom(p))
|
||||
} else {
|
||||
bufs.push(bufferFrom(String(p)))
|
||||
}
|
||||
}
|
||||
return Buffer.concat(bufs)
|
||||
}
|
||||
|
||||
function arrayConcat (parts) {
|
||||
var res = []
|
||||
for (var i = 0; i < parts.length; i++) {
|
||||
res.push.apply(res, parts[i])
|
||||
}
|
||||
return res
|
||||
}
|
||||
|
||||
function u8Concat (parts) {
|
||||
var len = 0
|
||||
for (var i = 0; i < parts.length; i++) {
|
||||
if (typeof parts[i] === 'string') {
|
||||
parts[i] = bufferFrom(parts[i])
|
||||
}
|
||||
len += parts[i].length
|
||||
}
|
||||
var u8 = new U8(len)
|
||||
for (var i = 0, offset = 0; i < parts.length; i++) {
|
||||
var part = parts[i]
|
||||
for (var j = 0; j < part.length; j++) {
|
||||
u8[offset++] = part[j]
|
||||
}
|
||||
}
|
||||
return u8
|
||||
}
|
91
node_modules/concat-stream/package.json
generated
vendored
Normal file
91
node_modules/concat-stream/package.json
generated
vendored
Normal file
@ -0,0 +1,91 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
"concat-stream@2.0.0",
|
||||
"C:\\Users\\matia\\Musix"
|
||||
]
|
||||
],
|
||||
"_from": "concat-stream@2.0.0",
|
||||
"_id": "concat-stream@2.0.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
|
||||
"_location": "/concat-stream",
|
||||
"_optional": true,
|
||||
"_phantomChildren": {
|
||||
"inherits": "2.0.4",
|
||||
"util-deprecate": "1.0.2"
|
||||
},
|
||||
"_requested": {
|
||||
"type": "version",
|
||||
"registry": true,
|
||||
"raw": "concat-stream@2.0.0",
|
||||
"name": "concat-stream",
|
||||
"escapedName": "concat-stream",
|
||||
"rawSpec": "2.0.0",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "2.0.0"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/@google-cloud/storage"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
|
||||
"_spec": "2.0.0",
|
||||
"_where": "C:\\Users\\matia\\Musix",
|
||||
"author": {
|
||||
"name": "Max Ogden",
|
||||
"email": "max@maxogden.com"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "http://github.com/maxogden/concat-stream/issues"
|
||||
},
|
||||
"dependencies": {
|
||||
"buffer-from": "^1.0.0",
|
||||
"inherits": "^2.0.3",
|
||||
"readable-stream": "^3.0.2",
|
||||
"typedarray": "^0.0.6"
|
||||
},
|
||||
"description": "writable stream that concatenates strings or binary data and calls a callback with the result",
|
||||
"devDependencies": {
|
||||
"tape": "^4.6.3"
|
||||
},
|
||||
"engines": [
|
||||
"node >= 6.0"
|
||||
],
|
||||
"files": [
|
||||
"index.js"
|
||||
],
|
||||
"homepage": "https://github.com/maxogden/concat-stream#readme",
|
||||
"license": "MIT",
|
||||
"main": "index.js",
|
||||
"name": "concat-stream",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+ssh://git@github.com/maxogden/concat-stream.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "tape test/*.js test/server/*.js"
|
||||
},
|
||||
"tags": [
|
||||
"stream",
|
||||
"simple",
|
||||
"util",
|
||||
"utility"
|
||||
],
|
||||
"testling": {
|
||||
"files": "test/*.js",
|
||||
"browsers": [
|
||||
"ie/8..latest",
|
||||
"firefox/17..latest",
|
||||
"firefox/nightly",
|
||||
"chrome/22..latest",
|
||||
"chrome/canary",
|
||||
"opera/12..latest",
|
||||
"opera/next",
|
||||
"safari/5.1..latest",
|
||||
"ipad/6.0..latest",
|
||||
"iphone/6.0..latest",
|
||||
"android-browser/4.2..latest"
|
||||
]
|
||||
},
|
||||
"version": "2.0.0"
|
||||
}
|
102
node_modules/concat-stream/readme.md
generated
vendored
Normal file
102
node_modules/concat-stream/readme.md
generated
vendored
Normal file
@ -0,0 +1,102 @@
|
||||
# concat-stream
|
||||
|
||||
Writable stream that concatenates all the data from a stream and calls a callback with the result. Use this when you want to collect all the data from a stream into a single buffer.
|
||||
|
||||
[](https://travis-ci.org/maxogden/concat-stream)
|
||||
|
||||
[](https://nodei.co/npm/concat-stream/)
|
||||
|
||||
### description
|
||||
|
||||
Streams emit many buffers. If you want to collect all of the buffers, and when the stream ends concatenate all of the buffers together and receive a single buffer then this is the module for you.
|
||||
|
||||
Only use this if you know you can fit all of the output of your stream into a single Buffer (e.g. in RAM).
|
||||
|
||||
There are also `objectMode` streams that emit things other than Buffers, and you can concatenate these too. See below for details.
|
||||
|
||||
## Related
|
||||
|
||||
`concat-stream` is part of the [mississippi stream utility collection](https://github.com/maxogden/mississippi) which includes more useful stream modules similar to this one.
|
||||
|
||||
### examples
|
||||
|
||||
#### Buffers
|
||||
|
||||
```js
|
||||
var fs = require('fs')
|
||||
var concat = require('concat-stream')
|
||||
|
||||
var readStream = fs.createReadStream('cat.png')
|
||||
var concatStream = concat(gotPicture)
|
||||
|
||||
readStream.on('error', handleError)
|
||||
readStream.pipe(concatStream)
|
||||
|
||||
function gotPicture(imageBuffer) {
|
||||
// imageBuffer is all of `cat.png` as a node.js Buffer
|
||||
}
|
||||
|
||||
function handleError(err) {
|
||||
// handle your error appropriately here, e.g.:
|
||||
console.error(err) // print the error to STDERR
|
||||
process.exit(1) // exit program with non-zero exit code
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
#### Arrays
|
||||
|
||||
```js
|
||||
var write = concat(function(data) {})
|
||||
write.write([1,2,3])
|
||||
write.write([4,5,6])
|
||||
write.end()
|
||||
// data will be [1,2,3,4,5,6] in the above callback
|
||||
```
|
||||
|
||||
#### Uint8Arrays
|
||||
|
||||
```js
|
||||
var write = concat(function(data) {})
|
||||
var a = new Uint8Array(3)
|
||||
a[0] = 97; a[1] = 98; a[2] = 99
|
||||
write.write(a)
|
||||
write.write('!')
|
||||
write.end(Buffer.from('!!1'))
|
||||
```
|
||||
|
||||
See `test/` for more examples
|
||||
|
||||
# methods
|
||||
|
||||
```js
|
||||
var concat = require('concat-stream')
|
||||
```
|
||||
|
||||
## var writable = concat(opts={}, cb)
|
||||
|
||||
Return a `writable` stream that will fire `cb(data)` with all of the data that
|
||||
was written to the stream. Data can be written to `writable` as strings,
|
||||
Buffers, arrays of byte integers, and Uint8Arrays.
|
||||
|
||||
By default `concat-stream` will give you back the same data type as the type of the first buffer written to the stream. Use `opts.encoding` to set what format `data` should be returned as, e.g. if you if you don't want to rely on the built-in type checking or for some other reason.
|
||||
|
||||
* `string` - get a string
|
||||
* `buffer` - get back a Buffer
|
||||
* `array` - get an array of byte integers
|
||||
* `uint8array`, `u8`, `uint8` - get back a Uint8Array
|
||||
* `object`, get back an array of Objects
|
||||
|
||||
If you don't specify an encoding, and the types can't be inferred (e.g. you write things that aren't in the list above), it will try to convert concat them into a `Buffer`.
|
||||
|
||||
If nothing is written to `writable` then `data` will be an empty array `[]`.
|
||||
|
||||
# error handling
|
||||
|
||||
`concat-stream` does not handle errors for you, so you must handle errors on whatever streams you pipe into `concat-stream`. This is a general rule when programming with node.js streams: always handle errors on each and every stream. Since `concat-stream` is not itself a stream it does not emit errors.
|
||||
|
||||
We recommend using [`end-of-stream`](https://npmjs.org/end-of-stream) or [`pump`](https://npmjs.org/pump) for writing error tolerant stream code.
|
||||
|
||||
# license
|
||||
|
||||
MIT LICENSE
|
Reference in New Issue
Block a user