2.0.1 • Published 8 months ago

minipass-collect v2.0.1

Weekly downloads
7,656,771
License
ISC
Repository
github
Last release
8 months ago

minipass-collect

A Minipass stream that collects all the data into a single chunk

Note that this buffers ALL data written to it, so it's only good for situations where you are sure the entire stream fits in memory.

Note: this is primarily useful for the Collect.PassThrough class, since Minipass streams already have a .collect() method which returns a promise that resolves to the array of chunks, and a .concat() method that returns the data concatenated into a single Buffer or String.

USAGE

const Collect = require('minipass-collect')

const collector = new Collect()
collector.on('data', allTheData => {
  console.log('all the data!', allTheData)
})

someSourceOfData.pipe(collector)

// note that you can also simply do:
someSourceOfData.pipe(new Minipass()).concat().then(data => ...)
// or even, if someSourceOfData is a Minipass:
someSourceOfData.concat().then(data => ...)
// but you might prefer to have it stream-shaped rather than
// Promise-shaped in some scenarios.

If you want to collect the data, but also act as a passthrough stream, then use Collect.PassThrough instead (for example to memoize streaming responses), and listen on the collect event.

const Collect = require('minipass-collect')

const collector = new Collect.PassThrough()
collector.on('collect', allTheData => {
  console.log('all the data!', allTheData)
})

someSourceOfData.pipe(collector).pipe(someOtherStream)

All minipass options are supported.

cacachevuedragdropuploadimagesbb-chat@texttree/demo-bsa-reference-rcl@fundefund/funde_ck@saeon/ol-react@saeon/quick-formcogoportutils@mink-opn/build-tokens@infinitebrahmanuniverse/nolb-minip@saaspe/componentsexpand-react-bridgenode-gio@everything-registry/sub-chunk-2175jawwy-sdkreact-native-sphereuisphereuieslint-config-k3cman-angularera-ckeditor5@cleveradssolutions/cas.cordova.facebookgh-monoproject-cliquicknexgundam5react-native-fedlight-dsmreact-native-awesome-module-latestreact-form-component-libraryreact-native-dimensions-layoutgerimismalamseninpyreswap-sdkemr-tabulator-tableses-react-bridgeevanutilsflowable-bpmn-modelerfixed_form_buildergamification-integration-newreact-native-module-argereact-native-recent-framework-updatereact-native-lib-test-rn-1react-native-rtn-ips-poslin-testreact-native-multiplyreact-native-sandycomponentreact-native-nativewindreact-native-rn-appgit-branching-workflowzzzxxxyyy321123fn-lib-examplefrdrk-js-semaphorereact-picky-with-clearhot-zone-vueained-ckeditor5@blkmarketco/components-library@zebracompany/f_editorselect2-selectall@asiz33/smartblok-vendure-pluginsequelcomponentsedanbosokagent-get-agent@blusalt-sdk/react-native-blusalt-document-verification@buganto/clientanakwadonteaanakketigaanaklanangteaappcharge-checkoutappcharge-checkout-reactjs-sdkastra-ufo-sdklabtesttwoarchlibrary@cleveradssolutions/cas.cordova.adcolony@cleveradssolutions/cas.cordova.admob@cleveradssolutions/cas.cordova.applovin@cleveradssolutions/cas.cordova.unity@cleveradssolutions/cas.cordova.vungle@cleveradssolutions/cas.cordova.yandex@cleveradssolutions/cas.cordova.families@cleveradssolutions/cas.cordova.fyber@cleveradssolutions/cas.cordova.inmobi@cleveradssolutions/cas.cordova.ironsource@cleveradssolutions/cas.cordova.kidoz@cleveradssolutions/cas.cordova.mintegral@cleveradssolutions/cas.cordova.mytarget@cleveradssolutions/cas.cordova.optimal@cleveradssolutions/cas.cordova.pangle@cleveradssolutions/cas.cordova.superawesome@cleveradssolutions/cas.cordova.tapjoyrefinejs-repo@vitali_shcherbina/styled-lib@dinert/echartsstock-ticker-react-widget@drblmthw/testujsk_custom_ckeditor5base-editorbaro_css_styledbeelinejs-todo-mvcsvelte-component-libmd-vditor@castrum-nubis/bulma@cdk8s-extensions/argo-rolloutjeuxuisupercluster-googlemaps-adapter-clonesstyletoolsluojia-cli-dev
2.0.1

8 months ago

2.0.0

8 months ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago