node-datachannel 0.5.0-dev → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. package/CMakeLists.txt +2 -2
  2. package/examples/electron-demo/package-lock.json +164 -419
  3. package/examples/electron-demo/package.json +2 -2
  4. package/lib/index.d.ts +5 -0
  5. package/lib/index.js +33 -2
  6. package/package.json +3 -11
  7. package/polyfill/RTCDtlsTransport.js +30 -12
  8. package/polyfill/RTCIceCandidate.js +1 -1
  9. package/polyfill/RTCIceTransport.js +47 -21
  10. package/polyfill/RTCPeerConnection.js +46 -23
  11. package/polyfill/RTCSctpTransport.js +33 -14
  12. package/src/peer-connection-wrapper.cpp +50 -0
  13. package/src/peer-connection-wrapper.h +2 -0
  14. package/test/polyfill-connectivity.js +1 -0
  15. package/test/test.js +2 -2
  16. package/examples/build/Dockerfile +0 -30
  17. package/examples/build/README.md +0 -24
  18. package/node_modules/base64-js/LICENSE +0 -21
  19. package/node_modules/base64-js/README.md +0 -34
  20. package/node_modules/base64-js/base64js.min.js +0 -1
  21. package/node_modules/base64-js/index.d.ts +0 -3
  22. package/node_modules/base64-js/index.js +0 -150
  23. package/node_modules/base64-js/package.json +0 -47
  24. package/node_modules/buffer/AUTHORS.md +0 -70
  25. package/node_modules/buffer/LICENSE +0 -21
  26. package/node_modules/buffer/README.md +0 -410
  27. package/node_modules/buffer/index.d.ts +0 -186
  28. package/node_modules/buffer/index.js +0 -1817
  29. package/node_modules/buffer/package.json +0 -96
  30. package/node_modules/chownr/LICENSE +0 -15
  31. package/node_modules/chownr/README.md +0 -3
  32. package/node_modules/chownr/chownr.js +0 -167
  33. package/node_modules/chownr/package.json +0 -29
  34. package/node_modules/decompress-response/index.d.ts +0 -22
  35. package/node_modules/decompress-response/index.js +0 -58
  36. package/node_modules/decompress-response/license +0 -9
  37. package/node_modules/decompress-response/package.json +0 -56
  38. package/node_modules/decompress-response/readme.md +0 -48
  39. package/node_modules/deep-extend/CHANGELOG.md +0 -46
  40. package/node_modules/deep-extend/LICENSE +0 -20
  41. package/node_modules/deep-extend/README.md +0 -91
  42. package/node_modules/deep-extend/index.js +0 -1
  43. package/node_modules/deep-extend/lib/deep-extend.js +0 -150
  44. package/node_modules/deep-extend/package.json +0 -62
  45. package/node_modules/detect-libc/LICENSE +0 -201
  46. package/node_modules/detect-libc/README.md +0 -163
  47. package/node_modules/detect-libc/index.d.ts +0 -14
  48. package/node_modules/detect-libc/lib/detect-libc.js +0 -279
  49. package/node_modules/detect-libc/lib/filesystem.js +0 -41
  50. package/node_modules/detect-libc/lib/process.js +0 -19
  51. package/node_modules/detect-libc/package.json +0 -40
  52. package/node_modules/end-of-stream/LICENSE +0 -21
  53. package/node_modules/end-of-stream/README.md +0 -54
  54. package/node_modules/end-of-stream/index.js +0 -94
  55. package/node_modules/end-of-stream/package.json +0 -37
  56. package/node_modules/expand-template/.travis.yml +0 -6
  57. package/node_modules/expand-template/LICENSE +0 -21
  58. package/node_modules/expand-template/README.md +0 -43
  59. package/node_modules/expand-template/index.js +0 -26
  60. package/node_modules/expand-template/package.json +0 -29
  61. package/node_modules/expand-template/test.js +0 -67
  62. package/node_modules/fs-constants/LICENSE +0 -21
  63. package/node_modules/fs-constants/README.md +0 -26
  64. package/node_modules/fs-constants/browser.js +0 -1
  65. package/node_modules/fs-constants/index.js +0 -1
  66. package/node_modules/fs-constants/package.json +0 -19
  67. package/node_modules/github-from-package/.travis.yml +0 -4
  68. package/node_modules/github-from-package/LICENSE +0 -18
  69. package/node_modules/github-from-package/example/package.json +0 -8
  70. package/node_modules/github-from-package/example/url.js +0 -3
  71. package/node_modules/github-from-package/index.js +0 -17
  72. package/node_modules/github-from-package/package.json +0 -30
  73. package/node_modules/github-from-package/readme.markdown +0 -53
  74. package/node_modules/github-from-package/test/a.json +0 -8
  75. package/node_modules/github-from-package/test/b.json +0 -5
  76. package/node_modules/github-from-package/test/c.json +0 -5
  77. package/node_modules/github-from-package/test/d.json +0 -7
  78. package/node_modules/github-from-package/test/e.json +0 -5
  79. package/node_modules/github-from-package/test/url.js +0 -19
  80. package/node_modules/ieee754/LICENSE +0 -11
  81. package/node_modules/ieee754/README.md +0 -51
  82. package/node_modules/ieee754/index.d.ts +0 -10
  83. package/node_modules/ieee754/index.js +0 -85
  84. package/node_modules/ieee754/package.json +0 -52
  85. package/node_modules/inherits/LICENSE +0 -16
  86. package/node_modules/inherits/README.md +0 -42
  87. package/node_modules/inherits/inherits.js +0 -9
  88. package/node_modules/inherits/inherits_browser.js +0 -27
  89. package/node_modules/inherits/package.json +0 -29
  90. package/node_modules/ini/LICENSE +0 -15
  91. package/node_modules/ini/README.md +0 -102
  92. package/node_modules/ini/ini.js +0 -206
  93. package/node_modules/ini/package.json +0 -33
  94. package/node_modules/mimic-response/index.d.ts +0 -17
  95. package/node_modules/mimic-response/index.js +0 -77
  96. package/node_modules/mimic-response/license +0 -9
  97. package/node_modules/mimic-response/package.json +0 -42
  98. package/node_modules/mimic-response/readme.md +0 -78
  99. package/node_modules/minimist/.eslintrc +0 -29
  100. package/node_modules/minimist/.github/FUNDING.yml +0 -12
  101. package/node_modules/minimist/.nycrc +0 -14
  102. package/node_modules/minimist/CHANGELOG.md +0 -298
  103. package/node_modules/minimist/LICENSE +0 -18
  104. package/node_modules/minimist/README.md +0 -121
  105. package/node_modules/minimist/example/parse.js +0 -4
  106. package/node_modules/minimist/index.js +0 -263
  107. package/node_modules/minimist/package.json +0 -75
  108. package/node_modules/minimist/test/all_bool.js +0 -34
  109. package/node_modules/minimist/test/bool.js +0 -177
  110. package/node_modules/minimist/test/dash.js +0 -43
  111. package/node_modules/minimist/test/default_bool.js +0 -37
  112. package/node_modules/minimist/test/dotted.js +0 -24
  113. package/node_modules/minimist/test/kv_short.js +0 -32
  114. package/node_modules/minimist/test/long.js +0 -33
  115. package/node_modules/minimist/test/num.js +0 -38
  116. package/node_modules/minimist/test/parse.js +0 -209
  117. package/node_modules/minimist/test/parse_modified.js +0 -11
  118. package/node_modules/minimist/test/proto.js +0 -64
  119. package/node_modules/minimist/test/short.js +0 -69
  120. package/node_modules/minimist/test/stop_early.js +0 -17
  121. package/node_modules/minimist/test/unknown.js +0 -104
  122. package/node_modules/minimist/test/whitespace.js +0 -10
  123. package/node_modules/mkdirp-classic/LICENSE +0 -21
  124. package/node_modules/mkdirp-classic/README.md +0 -18
  125. package/node_modules/mkdirp-classic/index.js +0 -98
  126. package/node_modules/mkdirp-classic/package.json +0 -18
  127. package/node_modules/napi-build-utils/LICENSE +0 -21
  128. package/node_modules/napi-build-utils/README.md +0 -48
  129. package/node_modules/napi-build-utils/index.js +0 -213
  130. package/node_modules/napi-build-utils/index.md +0 -81
  131. package/node_modules/napi-build-utils/package.json +0 -41
  132. package/node_modules/node-abi/LICENSE +0 -21
  133. package/node_modules/node-abi/README.md +0 -52
  134. package/node_modules/node-abi/abi_registry.json +0 -276
  135. package/node_modules/node-abi/index.js +0 -179
  136. package/node_modules/node-abi/package.json +0 -41
  137. package/node_modules/once/LICENSE +0 -15
  138. package/node_modules/once/README.md +0 -79
  139. package/node_modules/once/once.js +0 -42
  140. package/node_modules/once/package.json +0 -33
  141. package/node_modules/prebuild-install/CHANGELOG.md +0 -116
  142. package/node_modules/prebuild-install/CONTRIBUTING.md +0 -6
  143. package/node_modules/prebuild-install/LICENSE +0 -21
  144. package/node_modules/prebuild-install/README.md +0 -163
  145. package/node_modules/prebuild-install/asset.js +0 -44
  146. package/node_modules/prebuild-install/bin.js +0 -78
  147. package/node_modules/prebuild-install/download.js +0 -142
  148. package/node_modules/prebuild-install/error.js +0 -14
  149. package/node_modules/prebuild-install/help.txt +0 -16
  150. package/node_modules/prebuild-install/index.js +0 -1
  151. package/node_modules/prebuild-install/log.js +0 -33
  152. package/node_modules/prebuild-install/package.json +0 -67
  153. package/node_modules/prebuild-install/proxy.js +0 -35
  154. package/node_modules/prebuild-install/rc.js +0 -64
  155. package/node_modules/prebuild-install/util.js +0 -143
  156. package/node_modules/pump/.travis.yml +0 -5
  157. package/node_modules/pump/LICENSE +0 -21
  158. package/node_modules/pump/README.md +0 -65
  159. package/node_modules/pump/index.js +0 -82
  160. package/node_modules/pump/package.json +0 -24
  161. package/node_modules/pump/test-browser.js +0 -66
  162. package/node_modules/pump/test-node.js +0 -53
  163. package/node_modules/rc/LICENSE.APACHE2 +0 -15
  164. package/node_modules/rc/LICENSE.BSD +0 -26
  165. package/node_modules/rc/LICENSE.MIT +0 -24
  166. package/node_modules/rc/README.md +0 -227
  167. package/node_modules/rc/browser.js +0 -7
  168. package/node_modules/rc/cli.js +0 -4
  169. package/node_modules/rc/index.js +0 -53
  170. package/node_modules/rc/lib/utils.js +0 -104
  171. package/node_modules/rc/node_modules/strip-json-comments/index.js +0 -70
  172. package/node_modules/rc/node_modules/strip-json-comments/license +0 -21
  173. package/node_modules/rc/node_modules/strip-json-comments/package.json +0 -42
  174. package/node_modules/rc/node_modules/strip-json-comments/readme.md +0 -64
  175. package/node_modules/rc/package.json +0 -29
  176. package/node_modules/rc/test/ini.js +0 -16
  177. package/node_modules/rc/test/nested-env-vars.js +0 -50
  178. package/node_modules/rc/test/test.js +0 -59
  179. package/node_modules/safe-buffer/LICENSE +0 -21
  180. package/node_modules/safe-buffer/README.md +0 -584
  181. package/node_modules/safe-buffer/index.d.ts +0 -187
  182. package/node_modules/safe-buffer/index.js +0 -65
  183. package/node_modules/safe-buffer/package.json +0 -51
  184. package/node_modules/semver/LICENSE +0 -15
  185. package/node_modules/semver/README.md +0 -637
  186. package/node_modules/semver/bin/semver.js +0 -197
  187. package/node_modules/semver/classes/comparator.js +0 -141
  188. package/node_modules/semver/classes/index.js +0 -5
  189. package/node_modules/semver/classes/range.js +0 -539
  190. package/node_modules/semver/classes/semver.js +0 -302
  191. package/node_modules/semver/functions/clean.js +0 -6
  192. package/node_modules/semver/functions/cmp.js +0 -52
  193. package/node_modules/semver/functions/coerce.js +0 -52
  194. package/node_modules/semver/functions/compare-build.js +0 -7
  195. package/node_modules/semver/functions/compare-loose.js +0 -3
  196. package/node_modules/semver/functions/compare.js +0 -5
  197. package/node_modules/semver/functions/diff.js +0 -65
  198. package/node_modules/semver/functions/eq.js +0 -3
  199. package/node_modules/semver/functions/gt.js +0 -3
  200. package/node_modules/semver/functions/gte.js +0 -3
  201. package/node_modules/semver/functions/inc.js +0 -19
  202. package/node_modules/semver/functions/lt.js +0 -3
  203. package/node_modules/semver/functions/lte.js +0 -3
  204. package/node_modules/semver/functions/major.js +0 -3
  205. package/node_modules/semver/functions/minor.js +0 -3
  206. package/node_modules/semver/functions/neq.js +0 -3
  207. package/node_modules/semver/functions/parse.js +0 -16
  208. package/node_modules/semver/functions/patch.js +0 -3
  209. package/node_modules/semver/functions/prerelease.js +0 -6
  210. package/node_modules/semver/functions/rcompare.js +0 -3
  211. package/node_modules/semver/functions/rsort.js +0 -3
  212. package/node_modules/semver/functions/satisfies.js +0 -10
  213. package/node_modules/semver/functions/sort.js +0 -3
  214. package/node_modules/semver/functions/valid.js +0 -6
  215. package/node_modules/semver/index.js +0 -89
  216. package/node_modules/semver/internal/constants.js +0 -35
  217. package/node_modules/semver/internal/debug.js +0 -9
  218. package/node_modules/semver/internal/identifiers.js +0 -23
  219. package/node_modules/semver/internal/parse-options.js +0 -15
  220. package/node_modules/semver/internal/re.js +0 -212
  221. package/node_modules/semver/node_modules/lru-cache/LICENSE +0 -15
  222. package/node_modules/semver/node_modules/lru-cache/README.md +0 -166
  223. package/node_modules/semver/node_modules/lru-cache/index.js +0 -334
  224. package/node_modules/semver/node_modules/lru-cache/package.json +0 -34
  225. package/node_modules/semver/node_modules/yallist/LICENSE +0 -15
  226. package/node_modules/semver/node_modules/yallist/README.md +0 -204
  227. package/node_modules/semver/node_modules/yallist/iterator.js +0 -8
  228. package/node_modules/semver/node_modules/yallist/package.json +0 -29
  229. package/node_modules/semver/node_modules/yallist/yallist.js +0 -426
  230. package/node_modules/semver/package.json +0 -87
  231. package/node_modules/semver/preload.js +0 -2
  232. package/node_modules/semver/range.bnf +0 -16
  233. package/node_modules/semver/ranges/gtr.js +0 -4
  234. package/node_modules/semver/ranges/intersects.js +0 -7
  235. package/node_modules/semver/ranges/ltr.js +0 -4
  236. package/node_modules/semver/ranges/max-satisfying.js +0 -25
  237. package/node_modules/semver/ranges/min-satisfying.js +0 -24
  238. package/node_modules/semver/ranges/min-version.js +0 -61
  239. package/node_modules/semver/ranges/outside.js +0 -80
  240. package/node_modules/semver/ranges/simplify.js +0 -47
  241. package/node_modules/semver/ranges/subset.js +0 -247
  242. package/node_modules/semver/ranges/to-comparators.js +0 -8
  243. package/node_modules/semver/ranges/valid.js +0 -11
  244. package/node_modules/simple-concat/.travis.yml +0 -3
  245. package/node_modules/simple-concat/LICENSE +0 -20
  246. package/node_modules/simple-concat/README.md +0 -44
  247. package/node_modules/simple-concat/index.js +0 -15
  248. package/node_modules/simple-concat/package.json +0 -47
  249. package/node_modules/simple-concat/test/basic.js +0 -41
  250. package/node_modules/simple-get/.github/dependabot.yml +0 -15
  251. package/node_modules/simple-get/.github/workflows/ci.yml +0 -23
  252. package/node_modules/simple-get/LICENSE +0 -20
  253. package/node_modules/simple-get/README.md +0 -333
  254. package/node_modules/simple-get/index.js +0 -108
  255. package/node_modules/simple-get/package.json +0 -67
  256. package/node_modules/tar-fs/.travis.yml +0 -6
  257. package/node_modules/tar-fs/LICENSE +0 -21
  258. package/node_modules/tar-fs/README.md +0 -165
  259. package/node_modules/tar-fs/index.js +0 -351
  260. package/node_modules/tar-fs/node_modules/bl/.travis.yml +0 -17
  261. package/node_modules/tar-fs/node_modules/bl/BufferList.js +0 -396
  262. package/node_modules/tar-fs/node_modules/bl/LICENSE.md +0 -13
  263. package/node_modules/tar-fs/node_modules/bl/README.md +0 -247
  264. package/node_modules/tar-fs/node_modules/bl/bl.js +0 -84
  265. package/node_modules/tar-fs/node_modules/bl/package.json +0 -37
  266. package/node_modules/tar-fs/node_modules/bl/test/convert.js +0 -21
  267. package/node_modules/tar-fs/node_modules/bl/test/indexOf.js +0 -492
  268. package/node_modules/tar-fs/node_modules/bl/test/isBufferList.js +0 -32
  269. package/node_modules/tar-fs/node_modules/bl/test/test.js +0 -869
  270. package/node_modules/tar-fs/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  271. package/node_modules/tar-fs/node_modules/readable-stream/GOVERNANCE.md +0 -136
  272. package/node_modules/tar-fs/node_modules/readable-stream/LICENSE +0 -47
  273. package/node_modules/tar-fs/node_modules/readable-stream/README.md +0 -106
  274. package/node_modules/tar-fs/node_modules/readable-stream/errors-browser.js +0 -127
  275. package/node_modules/tar-fs/node_modules/readable-stream/errors.js +0 -116
  276. package/node_modules/tar-fs/node_modules/readable-stream/experimentalWarning.js +0 -17
  277. package/node_modules/tar-fs/node_modules/readable-stream/lib/_stream_duplex.js +0 -126
  278. package/node_modules/tar-fs/node_modules/readable-stream/lib/_stream_passthrough.js +0 -37
  279. package/node_modules/tar-fs/node_modules/readable-stream/lib/_stream_readable.js +0 -1027
  280. package/node_modules/tar-fs/node_modules/readable-stream/lib/_stream_transform.js +0 -190
  281. package/node_modules/tar-fs/node_modules/readable-stream/lib/_stream_writable.js +0 -641
  282. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/async_iterator.js +0 -180
  283. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -183
  284. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -96
  285. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -86
  286. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -3
  287. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/from.js +0 -52
  288. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -86
  289. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/state.js +0 -22
  290. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  291. package/node_modules/tar-fs/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  292. package/node_modules/tar-fs/node_modules/readable-stream/package.json +0 -68
  293. package/node_modules/tar-fs/node_modules/readable-stream/readable-browser.js +0 -9
  294. package/node_modules/tar-fs/node_modules/readable-stream/readable.js +0 -16
  295. package/node_modules/tar-fs/node_modules/string_decoder/LICENSE +0 -48
  296. package/node_modules/tar-fs/node_modules/string_decoder/README.md +0 -47
  297. package/node_modules/tar-fs/node_modules/string_decoder/lib/string_decoder.js +0 -296
  298. package/node_modules/tar-fs/node_modules/string_decoder/package.json +0 -34
  299. package/node_modules/tar-fs/node_modules/tar-stream/LICENSE +0 -21
  300. package/node_modules/tar-fs/node_modules/tar-stream/README.md +0 -168
  301. package/node_modules/tar-fs/node_modules/tar-stream/extract.js +0 -257
  302. package/node_modules/tar-fs/node_modules/tar-stream/headers.js +0 -295
  303. package/node_modules/tar-fs/node_modules/tar-stream/index.js +0 -2
  304. package/node_modules/tar-fs/node_modules/tar-stream/pack.js +0 -255
  305. package/node_modules/tar-fs/node_modules/tar-stream/package.json +0 -58
  306. package/node_modules/tar-fs/node_modules/tar-stream/sandbox.js +0 -11
  307. package/node_modules/tar-fs/package.json +0 -41
  308. package/node_modules/tar-fs/test/fixtures/a/hello.txt +0 -1
  309. package/node_modules/tar-fs/test/fixtures/b/a/test.txt +0 -1
  310. package/node_modules/tar-fs/test/fixtures/d/file1 +0 -0
  311. package/node_modules/tar-fs/test/fixtures/d/file2 +0 -0
  312. package/node_modules/tar-fs/test/fixtures/d/sub-dir/file5 +0 -0
  313. package/node_modules/tar-fs/test/fixtures/d/sub-files/file3 +0 -0
  314. package/node_modules/tar-fs/test/fixtures/d/sub-files/file4 +0 -0
  315. package/node_modules/tar-fs/test/fixtures/e/directory/.ignore +0 -0
  316. package/node_modules/tar-fs/test/fixtures/e/file +0 -0
  317. package/node_modules/tar-fs/test/fixtures/invalid.tar +0 -0
  318. package/node_modules/tar-fs/test/index.js +0 -346
  319. package/node_modules/tunnel-agent/LICENSE +0 -55
  320. package/node_modules/tunnel-agent/README.md +0 -4
  321. package/node_modules/tunnel-agent/index.js +0 -244
  322. package/node_modules/tunnel-agent/package.json +0 -22
  323. package/node_modules/util-deprecate/History.md +0 -16
  324. package/node_modules/util-deprecate/LICENSE +0 -24
  325. package/node_modules/util-deprecate/README.md +0 -53
  326. package/node_modules/util-deprecate/browser.js +0 -67
  327. package/node_modules/util-deprecate/node.js +0 -6
  328. package/node_modules/util-deprecate/package.json +0 -27
  329. package/node_modules/wrappy/LICENSE +0 -15
  330. package/node_modules/wrappy/README.md +0 -36
  331. package/node_modules/wrappy/package.json +0 -29
  332. package/node_modules/wrappy/wrappy.js +0 -33
@@ -1,126 +0,0 @@
1
- // Copyright Joyent, Inc. and other Node contributors.
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a
4
- // copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to permit
8
- // persons to whom the Software is furnished to do so, subject to the
9
- // following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be included
12
- // in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
- // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
- // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
- // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
- // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
22
- // a duplex stream is just a stream that is both readable and writable.
23
- // Since JS doesn't have multiple prototypal inheritance, this class
24
- // prototypally inherits from Readable, and then parasitically from
25
- // Writable.
26
-
27
- 'use strict';
28
-
29
- /*<replacement>*/
30
- var objectKeys = Object.keys || function (obj) {
31
- var keys = [];
32
- for (var key in obj) keys.push(key);
33
- return keys;
34
- };
35
- /*</replacement>*/
36
-
37
- module.exports = Duplex;
38
- var Readable = require('./_stream_readable');
39
- var Writable = require('./_stream_writable');
40
- require('inherits')(Duplex, Readable);
41
- {
42
- // Allow the keys array to be GC'ed.
43
- var keys = objectKeys(Writable.prototype);
44
- for (var v = 0; v < keys.length; v++) {
45
- var method = keys[v];
46
- if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];
47
- }
48
- }
49
- function Duplex(options) {
50
- if (!(this instanceof Duplex)) return new Duplex(options);
51
- Readable.call(this, options);
52
- Writable.call(this, options);
53
- this.allowHalfOpen = true;
54
- if (options) {
55
- if (options.readable === false) this.readable = false;
56
- if (options.writable === false) this.writable = false;
57
- if (options.allowHalfOpen === false) {
58
- this.allowHalfOpen = false;
59
- this.once('end', onend);
60
- }
61
- }
62
- }
63
- Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', {
64
- // making it explicit this property is not enumerable
65
- // because otherwise some prototype manipulation in
66
- // userland will fail
67
- enumerable: false,
68
- get: function get() {
69
- return this._writableState.highWaterMark;
70
- }
71
- });
72
- Object.defineProperty(Duplex.prototype, 'writableBuffer', {
73
- // making it explicit this property is not enumerable
74
- // because otherwise some prototype manipulation in
75
- // userland will fail
76
- enumerable: false,
77
- get: function get() {
78
- return this._writableState && this._writableState.getBuffer();
79
- }
80
- });
81
- Object.defineProperty(Duplex.prototype, 'writableLength', {
82
- // making it explicit this property is not enumerable
83
- // because otherwise some prototype manipulation in
84
- // userland will fail
85
- enumerable: false,
86
- get: function get() {
87
- return this._writableState.length;
88
- }
89
- });
90
-
91
- // the no-half-open enforcer
92
- function onend() {
93
- // If the writable side ended, then we're ok.
94
- if (this._writableState.ended) return;
95
-
96
- // no more data can be written.
97
- // But allow more writes to happen in this tick.
98
- process.nextTick(onEndNT, this);
99
- }
100
- function onEndNT(self) {
101
- self.end();
102
- }
103
- Object.defineProperty(Duplex.prototype, 'destroyed', {
104
- // making it explicit this property is not enumerable
105
- // because otherwise some prototype manipulation in
106
- // userland will fail
107
- enumerable: false,
108
- get: function get() {
109
- if (this._readableState === undefined || this._writableState === undefined) {
110
- return false;
111
- }
112
- return this._readableState.destroyed && this._writableState.destroyed;
113
- },
114
- set: function set(value) {
115
- // we ignore the value if the stream
116
- // has not been initialized yet
117
- if (this._readableState === undefined || this._writableState === undefined) {
118
- return;
119
- }
120
-
121
- // backward compatibility, the user is explicitly
122
- // managing destroyed
123
- this._readableState.destroyed = value;
124
- this._writableState.destroyed = value;
125
- }
126
- });
@@ -1,37 +0,0 @@
1
- // Copyright Joyent, Inc. and other Node contributors.
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a
4
- // copy of this software and associated documentation files (the
5
- // "Software"), to deal in the Software without restriction, including
6
- // without limitation the rights to use, copy, modify, merge, publish,
7
- // distribute, sublicense, and/or sell copies of the Software, and to permit
8
- // persons to whom the Software is furnished to do so, subject to the
9
- // following conditions:
10
- //
11
- // The above copyright notice and this permission notice shall be included
12
- // in all copies or substantial portions of the Software.
13
- //
14
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
- // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
17
- // NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18
- // DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
19
- // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
22
- // a passthrough stream.
23
- // basically just the most minimal sort of Transform stream.
24
- // Every written chunk gets output as-is.
25
-
26
- 'use strict';
27
-
28
- module.exports = PassThrough;
29
- var Transform = require('./_stream_transform');
30
- require('inherits')(PassThrough, Transform);
31
- function PassThrough(options) {
32
- if (!(this instanceof PassThrough)) return new PassThrough(options);
33
- Transform.call(this, options);
34
- }
35
- PassThrough.prototype._transform = function (chunk, encoding, cb) {
36
- cb(null, chunk);
37
- };