index.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. 'use strict'
  2. const Stream = require('stream')
  3. if (Stream && process.env.READABLE_STREAM === 'disable') {
  4. const promises = Stream.promises
  5. // Explicit export naming is needed for ESM
  6. module.exports._uint8ArrayToBuffer = Stream._uint8ArrayToBuffer
  7. module.exports._isUint8Array = Stream._isUint8Array
  8. module.exports.isDisturbed = Stream.isDisturbed
  9. module.exports.isErrored = Stream.isErrored
  10. module.exports.isReadable = Stream.isReadable
  11. module.exports.Readable = Stream.Readable
  12. module.exports.Writable = Stream.Writable
  13. module.exports.Duplex = Stream.Duplex
  14. module.exports.Transform = Stream.Transform
  15. module.exports.PassThrough = Stream.PassThrough
  16. module.exports.addAbortSignal = Stream.addAbortSignal
  17. module.exports.finished = Stream.finished
  18. module.exports.destroy = Stream.destroy
  19. module.exports.pipeline = Stream.pipeline
  20. module.exports.compose = Stream.compose
  21. Object.defineProperty(Stream, 'promises', {
  22. configurable: true,
  23. enumerable: true,
  24. get() {
  25. return promises
  26. }
  27. })
  28. module.exports.Stream = Stream.Stream
  29. } else {
  30. const CustomStream = require('../stream')
  31. const promises = require('../stream/promises')
  32. const originalDestroy = CustomStream.Readable.destroy
  33. module.exports = CustomStream.Readable
  34. // Explicit export naming is needed for ESM
  35. module.exports._uint8ArrayToBuffer = CustomStream._uint8ArrayToBuffer
  36. module.exports._isUint8Array = CustomStream._isUint8Array
  37. module.exports.isDisturbed = CustomStream.isDisturbed
  38. module.exports.isErrored = CustomStream.isErrored
  39. module.exports.isReadable = CustomStream.isReadable
  40. module.exports.Readable = CustomStream.Readable
  41. module.exports.Writable = CustomStream.Writable
  42. module.exports.Duplex = CustomStream.Duplex
  43. module.exports.Transform = CustomStream.Transform
  44. module.exports.PassThrough = CustomStream.PassThrough
  45. module.exports.addAbortSignal = CustomStream.addAbortSignal
  46. module.exports.finished = CustomStream.finished
  47. module.exports.destroy = CustomStream.destroy
  48. module.exports.destroy = originalDestroy
  49. module.exports.pipeline = CustomStream.pipeline
  50. module.exports.compose = CustomStream.compose
  51. Object.defineProperty(CustomStream, 'promises', {
  52. configurable: true,
  53. enumerable: true,
  54. get() {
  55. return promises
  56. }
  57. })
  58. module.exports.Stream = CustomStream.Stream
  59. }
  60. // Allow default importing
  61. module.exports.default = module.exports