node-datachannel 0.4.2 → 0.5.0-dev

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 (409) hide show
  1. package/.github/workflows/build-linux.yml +29 -29
  2. package/.github/workflows/build-mac-m1.yml +5 -5
  3. package/.github/workflows/build-mac-x64.yml +5 -5
  4. package/.github/workflows/build-win.yml +11 -8
  5. package/.github/workflows/lint.yml +1 -1
  6. package/.github/workflows/npm-publish-manual.yml +1 -1
  7. package/{.prettierrc.js → .prettierrc.cjs} +1 -0
  8. package/BULDING.md +7 -3
  9. package/CMakeLists.txt +12 -22
  10. package/README.md +38 -33
  11. package/cmake/toolchain/arm64.cmake +1 -1
  12. package/examples/build/Dockerfile +30 -0
  13. package/examples/build/README.md +24 -0
  14. package/examples/client-server/README.md +22 -0
  15. package/examples/client-server/client-benchmark.js +11 -6
  16. package/examples/client-server/client-periodic.js +5 -6
  17. package/examples/client-server/client.js +4 -5
  18. package/examples/client-server/package-lock.json +311 -260
  19. package/examples/client-server/package.json +15 -14
  20. package/examples/client-server/signaling-server.js +1 -2
  21. package/examples/electron-demo/README.md +58 -0
  22. package/examples/electron-demo/forge.config.js +49 -0
  23. package/examples/electron-demo/package-lock.json +16287 -0
  24. package/examples/electron-demo/package.json +43 -0
  25. package/examples/electron-demo/src/index.css +7 -0
  26. package/examples/electron-demo/src/index.html +29 -0
  27. package/examples/electron-demo/src/main.js +53 -0
  28. package/examples/electron-demo/src/node-datachannel.js +123 -0
  29. package/examples/electron-demo/src/preload.js +28 -0
  30. package/examples/electron-demo/src/renderer.js +58 -0
  31. package/examples/electron-demo/webpack.main.config.js +11 -0
  32. package/examples/electron-demo/webpack.renderer.config.js +13 -0
  33. package/examples/electron-demo/webpack.rules.js +35 -0
  34. package/examples/media/README.md +3 -3
  35. package/examples/media/media.js +3 -4
  36. package/examples/simple-peer-usage/main.js +28 -0
  37. package/examples/simple-peer-usage/package-lock.json +317 -0
  38. package/examples/simple-peer-usage/package.json +16 -0
  39. package/lib/datachannel-stream.js +3 -4
  40. package/lib/index.d.ts +8 -4
  41. package/lib/index.js +6 -3
  42. package/node_modules/base64-js/package.json +19 -50
  43. package/node_modules/buffer/package.json +20 -54
  44. package/node_modules/chownr/package.json +16 -53
  45. package/node_modules/decompress-response/package.json +54 -89
  46. package/node_modules/deep-extend/package.json +32 -65
  47. package/node_modules/detect-libc/README.md +4 -1
  48. package/node_modules/detect-libc/index.d.ts +3 -0
  49. package/node_modules/detect-libc/lib/detect-libc.js +105 -4
  50. package/node_modules/detect-libc/lib/filesystem.js +41 -0
  51. package/node_modules/detect-libc/lib/process.js +3 -0
  52. package/node_modules/detect-libc/package.json +25 -60
  53. package/node_modules/end-of-stream/package.json +17 -49
  54. package/node_modules/expand-template/package.json +17 -51
  55. package/node_modules/fs-constants/package.json +11 -42
  56. package/node_modules/github-from-package/package.json +28 -60
  57. package/node_modules/ieee754/package.json +19 -54
  58. package/node_modules/inherits/package.json +12 -61
  59. package/node_modules/ini/package.json +19 -55
  60. package/node_modules/mimic-response/package.json +40 -75
  61. package/node_modules/minimist/.eslintrc +29 -0
  62. package/node_modules/minimist/.github/FUNDING.yml +12 -0
  63. package/node_modules/minimist/.nycrc +14 -0
  64. package/node_modules/minimist/CHANGELOG.md +298 -0
  65. package/node_modules/minimist/{readme.markdown → README.md} +34 -11
  66. package/node_modules/minimist/example/parse.js +2 -0
  67. package/node_modules/minimist/index.js +256 -242
  68. package/node_modules/minimist/package.json +73 -77
  69. package/node_modules/minimist/test/all_bool.js +26 -24
  70. package/node_modules/minimist/test/bool.js +146 -147
  71. package/node_modules/minimist/test/dash.js +33 -21
  72. package/node_modules/minimist/test/default_bool.js +26 -24
  73. package/node_modules/minimist/test/dotted.js +13 -11
  74. package/node_modules/minimist/test/kv_short.js +26 -10
  75. package/node_modules/minimist/test/long.js +28 -26
  76. package/node_modules/minimist/test/num.js +30 -28
  77. package/node_modules/minimist/test/parse.js +169 -157
  78. package/node_modules/minimist/test/parse_modified.js +7 -5
  79. package/node_modules/minimist/test/proto.js +41 -37
  80. package/node_modules/minimist/test/short.js +57 -55
  81. package/node_modules/minimist/test/stop_early.js +10 -8
  82. package/node_modules/minimist/test/unknown.js +83 -81
  83. package/node_modules/minimist/test/whitespace.js +6 -4
  84. package/node_modules/mkdirp-classic/package.json +11 -43
  85. package/node_modules/napi-build-utils/package.json +26 -57
  86. package/node_modules/node-abi/README.md +5 -3
  87. package/node_modules/node-abi/abi_registry.json +98 -8
  88. package/node_modules/node-abi/package.json +26 -57
  89. package/node_modules/once/package.json +14 -55
  90. package/node_modules/prebuild-install/CHANGELOG.md +18 -0
  91. package/node_modules/prebuild-install/README.md +6 -2
  92. package/node_modules/prebuild-install/log.js +26 -18
  93. package/node_modules/prebuild-install/package.json +36 -98
  94. package/node_modules/prebuild-install/rc.js +5 -1
  95. package/node_modules/prebuild-install/util.js +1 -1
  96. package/node_modules/pump/package.json +10 -49
  97. package/node_modules/rc/node_modules/strip-json-comments/package.json +42 -0
  98. package/node_modules/rc/package.json +18 -59
  99. package/node_modules/safe-buffer/index.js +3 -0
  100. package/node_modules/safe-buffer/package.json +20 -39
  101. package/node_modules/{node-abi/node_modules/semver → semver}/README.md +70 -1
  102. package/node_modules/{node-abi/node_modules/semver → semver}/bin/semver.js +16 -2
  103. package/node_modules/{node-abi/node_modules/semver → semver}/classes/comparator.js +39 -34
  104. package/node_modules/{node-abi/node_modules/semver → semver}/classes/range.js +48 -28
  105. package/node_modules/{node-abi/node_modules/semver → semver}/classes/semver.js +32 -17
  106. package/node_modules/{node-abi/node_modules/semver → semver}/functions/coerce.js +1 -1
  107. package/node_modules/semver/functions/diff.js +65 -0
  108. package/node_modules/{node-abi/node_modules/semver → semver}/functions/inc.js +3 -2
  109. package/node_modules/semver/functions/parse.js +16 -0
  110. package/node_modules/semver/index.js +89 -0
  111. package/node_modules/{node-abi/node_modules/semver → semver}/internal/constants.js +20 -2
  112. package/node_modules/semver/internal/parse-options.js +15 -0
  113. package/node_modules/{node-abi/node_modules/semver → semver}/internal/re.js +34 -4
  114. package/node_modules/semver/node_modules/lru-cache/package.json +34 -0
  115. package/node_modules/semver/node_modules/yallist/package.json +29 -0
  116. package/node_modules/semver/package.json +87 -0
  117. package/node_modules/{node-abi/node_modules/semver → semver}/ranges/intersects.js +1 -1
  118. package/node_modules/{node-abi/node_modules/semver → semver}/ranges/subset.js +6 -3
  119. package/node_modules/simple-concat/package.json +17 -45
  120. package/node_modules/simple-get/package.json +17 -45
  121. package/node_modules/{tar-stream → tar-fs}/node_modules/bl/package.json +20 -51
  122. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/README.md +1 -1
  123. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_duplex.js +12 -25
  124. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_passthrough.js +2 -4
  125. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_readable.js +176 -273
  126. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_transform.js +26 -37
  127. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_writable.js +118 -174
  128. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/async_iterator.js +10 -37
  129. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/buffer_list.js +20 -47
  130. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/destroy.js +8 -17
  131. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +1 -19
  132. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/from.js +12 -24
  133. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/pipeline.js +5 -16
  134. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/state.js +2 -7
  135. package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/package.json +27 -60
  136. package/node_modules/tar-fs/node_modules/string_decoder/package.json +34 -0
  137. package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/extract.js +1 -1
  138. package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/headers.js +4 -2
  139. package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/package.json +22 -59
  140. package/node_modules/tar-fs/package.json +21 -51
  141. package/node_modules/tunnel-agent/package.json +12 -49
  142. package/node_modules/util-deprecate/package.json +14 -49
  143. package/node_modules/wrappy/package.json +16 -49
  144. package/package.json +85 -68
  145. package/polyfill/Events.d.ts +9 -0
  146. package/polyfill/Events.js +27 -0
  147. package/polyfill/README.md +41 -0
  148. package/polyfill/RTCCertificate.d.ts +7 -0
  149. package/polyfill/RTCCertificate.js +17 -0
  150. package/polyfill/RTCDataChannel.d.ts +35 -0
  151. package/polyfill/RTCDataChannel.js +175 -0
  152. package/polyfill/RTCDtlsTransport.d.ts +10 -0
  153. package/polyfill/RTCDtlsTransport.js +29 -0
  154. package/polyfill/RTCIceCandidate.d.ts +20 -0
  155. package/polyfill/RTCIceCandidate.js +126 -0
  156. package/polyfill/RTCIceTransport.d.ts +18 -0
  157. package/polyfill/RTCIceTransport.js +55 -0
  158. package/polyfill/RTCPeerConnection.d.ts +50 -0
  159. package/polyfill/RTCPeerConnection.js +348 -0
  160. package/polyfill/RTCSctpTransport.d.ts +10 -0
  161. package/polyfill/RTCSctpTransport.js +34 -0
  162. package/polyfill/RTCSessionDescription.d.ts +7 -0
  163. package/polyfill/RTCSessionDescription.js +37 -0
  164. package/polyfill/index.d.ts +14 -0
  165. package/polyfill/index.js +14 -0
  166. package/src/data-channel-wrapper.cpp +47 -6
  167. package/src/main.cpp +5 -5
  168. package/src/peer-connection-wrapper.cpp +145 -9
  169. package/src/peer-connection-wrapper.h +4 -0
  170. package/src/rtc-wrapper.cpp +14 -9
  171. package/src/thread-safe-callback.cpp +4 -10
  172. package/src/thread-safe-callback.h +3 -12
  173. package/test/connectivity.js +9 -4
  174. package/test/polyfill-connectivity.js +89 -0
  175. package/test/test.js +3 -3
  176. package/test/wpt.js +50 -0
  177. package/.github/workflows/build-linux-arm64-test.yml +0 -36
  178. package/examples/README.md +0 -21
  179. package/node_modules/ansi-regex/index.js +0 -4
  180. package/node_modules/ansi-regex/package.json +0 -111
  181. package/node_modules/ansi-regex/readme.md +0 -39
  182. package/node_modules/aproba/LICENSE +0 -14
  183. package/node_modules/aproba/README.md +0 -94
  184. package/node_modules/aproba/index.js +0 -105
  185. package/node_modules/aproba/package.json +0 -65
  186. package/node_modules/code-point-at/index.js +0 -32
  187. package/node_modules/code-point-at/license +0 -21
  188. package/node_modules/code-point-at/package.json +0 -73
  189. package/node_modules/code-point-at/readme.md +0 -32
  190. package/node_modules/console-control-strings/LICENSE +0 -13
  191. package/node_modules/console-control-strings/README.md +0 -145
  192. package/node_modules/console-control-strings/README.md~ +0 -140
  193. package/node_modules/console-control-strings/index.js +0 -125
  194. package/node_modules/console-control-strings/package.json +0 -64
  195. package/node_modules/core-util-is/LICENSE +0 -19
  196. package/node_modules/core-util-is/README.md +0 -3
  197. package/node_modules/core-util-is/float.patch +0 -604
  198. package/node_modules/core-util-is/lib/util.js +0 -107
  199. package/node_modules/core-util-is/package.json +0 -70
  200. package/node_modules/core-util-is/test.js +0 -68
  201. package/node_modules/delegates/.npmignore +0 -1
  202. package/node_modules/delegates/History.md +0 -22
  203. package/node_modules/delegates/License +0 -20
  204. package/node_modules/delegates/Makefile +0 -8
  205. package/node_modules/delegates/Readme.md +0 -94
  206. package/node_modules/delegates/index.js +0 -121
  207. package/node_modules/delegates/package.json +0 -53
  208. package/node_modules/delegates/test/index.js +0 -94
  209. package/node_modules/has-unicode/LICENSE +0 -14
  210. package/node_modules/has-unicode/README.md +0 -43
  211. package/node_modules/has-unicode/index.js +0 -16
  212. package/node_modules/has-unicode/package.json +0 -62
  213. package/node_modules/is-fullwidth-code-point/index.js +0 -46
  214. package/node_modules/is-fullwidth-code-point/license +0 -21
  215. package/node_modules/is-fullwidth-code-point/package.json +0 -80
  216. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  217. package/node_modules/isarray/.npmignore +0 -1
  218. package/node_modules/isarray/.travis.yml +0 -4
  219. package/node_modules/isarray/Makefile +0 -6
  220. package/node_modules/isarray/README.md +0 -60
  221. package/node_modules/isarray/component.json +0 -19
  222. package/node_modules/isarray/index.js +0 -5
  223. package/node_modules/isarray/package.json +0 -77
  224. package/node_modules/isarray/test.js +0 -20
  225. package/node_modules/lru-cache/node_modules/yallist/package.json +0 -65
  226. package/node_modules/lru-cache/package.json +0 -73
  227. package/node_modules/minimist/.travis.yml +0 -8
  228. package/node_modules/node-abi/.circleci/config.yml +0 -63
  229. package/node_modules/node-abi/.github/workflows/update-abi.yml +0 -41
  230. package/node_modules/node-abi/.releaserc.json +0 -9
  231. package/node_modules/node-abi/CODE_OF_CONDUCT.md +0 -73
  232. package/node_modules/node-abi/CONTRIBUTING.md +0 -53
  233. package/node_modules/node-abi/node_modules/semver/functions/diff.js +0 -23
  234. package/node_modules/node-abi/node_modules/semver/functions/parse.js +0 -33
  235. package/node_modules/node-abi/node_modules/semver/index.js +0 -48
  236. package/node_modules/node-abi/node_modules/semver/internal/parse-options.js +0 -11
  237. package/node_modules/node-abi/node_modules/semver/package.json +0 -109
  238. package/node_modules/node-abi/scripts/update-abi-registry.js +0 -119
  239. package/node_modules/node-abi/test/index.js +0 -166
  240. package/node_modules/npmlog/CHANGELOG.md +0 -49
  241. package/node_modules/npmlog/LICENSE +0 -15
  242. package/node_modules/npmlog/README.md +0 -216
  243. package/node_modules/npmlog/log.js +0 -309
  244. package/node_modules/npmlog/node_modules/are-we-there-yet/CHANGES.md +0 -37
  245. package/node_modules/npmlog/node_modules/are-we-there-yet/LICENSE +0 -5
  246. package/node_modules/npmlog/node_modules/are-we-there-yet/README.md +0 -195
  247. package/node_modules/npmlog/node_modules/are-we-there-yet/index.js +0 -4
  248. package/node_modules/npmlog/node_modules/are-we-there-yet/package.json +0 -66
  249. package/node_modules/npmlog/node_modules/are-we-there-yet/tracker-base.js +0 -11
  250. package/node_modules/npmlog/node_modules/are-we-there-yet/tracker-group.js +0 -107
  251. package/node_modules/npmlog/node_modules/are-we-there-yet/tracker-stream.js +0 -36
  252. package/node_modules/npmlog/node_modules/are-we-there-yet/tracker.js +0 -30
  253. package/node_modules/npmlog/node_modules/gauge/CHANGELOG.md +0 -160
  254. package/node_modules/npmlog/node_modules/gauge/LICENSE +0 -13
  255. package/node_modules/npmlog/node_modules/gauge/README.md +0 -399
  256. package/node_modules/npmlog/node_modules/gauge/base-theme.js +0 -14
  257. package/node_modules/npmlog/node_modules/gauge/error.js +0 -24
  258. package/node_modules/npmlog/node_modules/gauge/has-color.js +0 -12
  259. package/node_modules/npmlog/node_modules/gauge/index.js +0 -233
  260. package/node_modules/npmlog/node_modules/gauge/package.json +0 -94
  261. package/node_modules/npmlog/node_modules/gauge/plumbing.js +0 -48
  262. package/node_modules/npmlog/node_modules/gauge/process.js +0 -3
  263. package/node_modules/npmlog/node_modules/gauge/progress-bar.js +0 -35
  264. package/node_modules/npmlog/node_modules/gauge/render-template.js +0 -181
  265. package/node_modules/npmlog/node_modules/gauge/set-immediate.js +0 -7
  266. package/node_modules/npmlog/node_modules/gauge/set-interval.js +0 -3
  267. package/node_modules/npmlog/node_modules/gauge/spin.js +0 -5
  268. package/node_modules/npmlog/node_modules/gauge/template-item.js +0 -73
  269. package/node_modules/npmlog/node_modules/gauge/theme-set.js +0 -115
  270. package/node_modules/npmlog/node_modules/gauge/themes.js +0 -54
  271. package/node_modules/npmlog/node_modules/gauge/wide-truncate.js +0 -25
  272. package/node_modules/npmlog/package.json +0 -78
  273. package/node_modules/number-is-nan/index.js +0 -4
  274. package/node_modules/number-is-nan/license +0 -21
  275. package/node_modules/number-is-nan/package.json +0 -70
  276. package/node_modules/number-is-nan/readme.md +0 -28
  277. package/node_modules/object-assign/index.js +0 -90
  278. package/node_modules/object-assign/license +0 -21
  279. package/node_modules/object-assign/package.json +0 -77
  280. package/node_modules/object-assign/readme.md +0 -61
  281. package/node_modules/process-nextick-args/index.js +0 -45
  282. package/node_modules/process-nextick-args/license.md +0 -19
  283. package/node_modules/process-nextick-args/package.json +0 -53
  284. package/node_modules/process-nextick-args/readme.md +0 -18
  285. package/node_modules/readable-stream/.travis.yml +0 -34
  286. package/node_modules/readable-stream/README.md +0 -58
  287. package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  288. package/node_modules/readable-stream/duplex-browser.js +0 -1
  289. package/node_modules/readable-stream/duplex.js +0 -1
  290. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  291. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  292. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  293. package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  294. package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
  295. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
  296. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
  297. package/node_modules/readable-stream/package.json +0 -87
  298. package/node_modules/readable-stream/passthrough.js +0 -1
  299. package/node_modules/readable-stream/readable-browser.js +0 -7
  300. package/node_modules/readable-stream/readable.js +0 -19
  301. package/node_modules/readable-stream/transform.js +0 -1
  302. package/node_modules/readable-stream/writable-browser.js +0 -1
  303. package/node_modules/readable-stream/writable.js +0 -8
  304. package/node_modules/set-blocking/CHANGELOG.md +0 -26
  305. package/node_modules/set-blocking/LICENSE.txt +0 -14
  306. package/node_modules/set-blocking/README.md +0 -31
  307. package/node_modules/set-blocking/index.js +0 -7
  308. package/node_modules/set-blocking/package.json +0 -73
  309. package/node_modules/signal-exit/CHANGELOG.md +0 -35
  310. package/node_modules/signal-exit/LICENSE.txt +0 -16
  311. package/node_modules/signal-exit/README.md +0 -39
  312. package/node_modules/signal-exit/index.js +0 -163
  313. package/node_modules/signal-exit/package.json +0 -71
  314. package/node_modules/signal-exit/signals.js +0 -53
  315. package/node_modules/string-width/index.js +0 -37
  316. package/node_modules/string-width/license +0 -21
  317. package/node_modules/string-width/package.json +0 -95
  318. package/node_modules/string-width/readme.md +0 -42
  319. package/node_modules/string_decoder/.travis.yml +0 -50
  320. package/node_modules/string_decoder/package.json +0 -64
  321. package/node_modules/strip-ansi/index.js +0 -6
  322. package/node_modules/strip-ansi/license +0 -21
  323. package/node_modules/strip-ansi/package.json +0 -107
  324. package/node_modules/strip-ansi/readme.md +0 -33
  325. package/node_modules/strip-json-comments/license +0 -21
  326. package/node_modules/strip-json-comments/package.json +0 -77
  327. package/node_modules/tar-stream/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  328. package/node_modules/tar-stream/node_modules/readable-stream/GOVERNANCE.md +0 -136
  329. package/node_modules/tar-stream/node_modules/readable-stream/LICENSE +0 -47
  330. package/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  331. package/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  332. package/node_modules/wide-align/LICENSE +0 -14
  333. package/node_modules/wide-align/README.md +0 -47
  334. package/node_modules/wide-align/align.js +0 -65
  335. package/node_modules/wide-align/package.json +0 -69
  336. /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
  337. /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/index.js +0 -0
  338. /package/node_modules/{ansi-regex → rc/node_modules/strip-json-comments}/license +0 -0
  339. /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/readme.md +0 -0
  340. /package/node_modules/{lru-cache → semver}/LICENSE +0 -0
  341. /package/node_modules/{node-abi/node_modules/semver → semver}/classes/index.js +0 -0
  342. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/clean.js +0 -0
  343. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/cmp.js +0 -0
  344. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/compare-build.js +0 -0
  345. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/compare-loose.js +0 -0
  346. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/compare.js +0 -0
  347. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/eq.js +0 -0
  348. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/gt.js +0 -0
  349. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/gte.js +0 -0
  350. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/lt.js +0 -0
  351. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/lte.js +0 -0
  352. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/major.js +0 -0
  353. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/minor.js +0 -0
  354. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/neq.js +0 -0
  355. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/patch.js +0 -0
  356. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/prerelease.js +0 -0
  357. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/rcompare.js +0 -0
  358. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/rsort.js +0 -0
  359. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/satisfies.js +0 -0
  360. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/sort.js +0 -0
  361. /package/node_modules/{node-abi/node_modules/semver → semver}/functions/valid.js +0 -0
  362. /package/node_modules/{node-abi/node_modules/semver → semver}/internal/debug.js +0 -0
  363. /package/node_modules/{node-abi/node_modules/semver → semver}/internal/identifiers.js +0 -0
  364. /package/node_modules/{lru-cache/node_modules/yallist → semver/node_modules/lru-cache}/LICENSE +0 -0
  365. /package/node_modules/{lru-cache → semver/node_modules/lru-cache}/README.md +0 -0
  366. /package/node_modules/{lru-cache → semver/node_modules/lru-cache}/index.js +0 -0
  367. /package/node_modules/{node-abi/node_modules/semver → semver/node_modules/yallist}/LICENSE +0 -0
  368. /package/node_modules/{lru-cache → semver}/node_modules/yallist/README.md +0 -0
  369. /package/node_modules/{lru-cache → semver}/node_modules/yallist/iterator.js +0 -0
  370. /package/node_modules/{lru-cache → semver}/node_modules/yallist/yallist.js +0 -0
  371. /package/node_modules/{node-abi/node_modules/semver → semver}/preload.js +0 -0
  372. /package/node_modules/{node-abi/node_modules/semver → semver}/range.bnf +0 -0
  373. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/gtr.js +0 -0
  374. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/ltr.js +0 -0
  375. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/max-satisfying.js +0 -0
  376. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/min-satisfying.js +0 -0
  377. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/min-version.js +0 -0
  378. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/outside.js +0 -0
  379. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/simplify.js +0 -0
  380. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/to-comparators.js +0 -0
  381. /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/valid.js +0 -0
  382. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/.travis.yml +0 -0
  383. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/BufferList.js +0 -0
  384. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/LICENSE.md +0 -0
  385. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/README.md +0 -0
  386. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/bl.js +0 -0
  387. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/convert.js +0 -0
  388. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/indexOf.js +0 -0
  389. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/isBufferList.js +0 -0
  390. /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/test.js +0 -0
  391. /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/CONTRIBUTING.md +0 -0
  392. /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/GOVERNANCE.md +0 -0
  393. /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/LICENSE +0 -0
  394. /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/errors-browser.js +0 -0
  395. /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/errors.js +0 -0
  396. /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/experimentalWarning.js +0 -0
  397. /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -0
  398. /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/lib/internal/streams/stream-browser.js +0 -0
  399. /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/lib/internal/streams/stream.js +0 -0
  400. /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/readable-browser.js +0 -0
  401. /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/readable.js +0 -0
  402. /package/node_modules/{string_decoder → tar-fs/node_modules/string_decoder}/LICENSE +0 -0
  403. /package/node_modules/{string_decoder → tar-fs/node_modules/string_decoder}/README.md +0 -0
  404. /package/node_modules/{string_decoder → tar-fs/node_modules/string_decoder}/lib/string_decoder.js +0 -0
  405. /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/LICENSE +0 -0
  406. /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/README.md +0 -0
  407. /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/index.js +0 -0
  408. /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/pack.js +0 -0
  409. /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/sandbox.js +0 -0
@@ -0,0 +1,14 @@
1
+ import RTCPeerConnection from './RTCPeerConnection.js';
2
+ import RTCSessionDescription from './RTCSessionDescription.js';
3
+ import RTCIceCandidate from './RTCIceCandidate.js';
4
+ import RTCDataChannel from './RTCDataChannel.js';
5
+ import { RTCDataChannelEvent, RTCPeerConnectionIceEvent } from './Events.js';
6
+
7
+ export {
8
+ RTCPeerConnection,
9
+ RTCSessionDescription,
10
+ RTCIceCandidate,
11
+ RTCDataChannel,
12
+ RTCDataChannelEvent,
13
+ RTCPeerConnectionIceEvent,
14
+ };
@@ -0,0 +1,14 @@
1
+ import RTCPeerConnection from './RTCPeerConnection.js';
2
+ import RTCSessionDescription from './RTCSessionDescription.js';
3
+ import RTCIceCandidate from './RTCIceCandidate.js';
4
+ import RTCDataChannel from './RTCDataChannel.js';
5
+ import { RTCDataChannelEvent, RTCPeerConnectionIceEvent } from './Events.js';
6
+
7
+ export default {
8
+ RTCPeerConnection,
9
+ RTCSessionDescription,
10
+ RTCIceCandidate,
11
+ RTCDataChannel,
12
+ RTCDataChannelEvent,
13
+ RTCPeerConnectionIceEvent,
14
+ };
@@ -1,10 +1,13 @@
1
1
  #include "data-channel-wrapper.h"
2
2
 
3
+ #include "plog/Log.h"
4
+
3
5
  Napi::FunctionReference DataChannelWrapper::constructor;
4
6
  std::unordered_set<DataChannelWrapper *> DataChannelWrapper::instances;
5
7
 
6
8
  void DataChannelWrapper::CloseAll()
7
9
  {
10
+ PLOG_DEBUG << "CloseAll() called";
8
11
  auto copy(instances);
9
12
  for (auto inst : copy)
10
13
  inst->doClose();
@@ -44,20 +47,24 @@ Napi::Object DataChannelWrapper::Init(Napi::Env env, Napi::Object exports)
44
47
 
45
48
  DataChannelWrapper::DataChannelWrapper(const Napi::CallbackInfo &info) : Napi::ObjectWrap<DataChannelWrapper>(info)
46
49
  {
50
+ PLOG_DEBUG << "Constructor called";
47
51
  mDataChannelPtr = *(info[0].As<Napi::External<std::shared_ptr<rtc::DataChannel>>>().Data());
48
-
52
+ PLOG_DEBUG << "Data Channel created";
49
53
  instances.insert(this);
50
54
  }
51
55
 
52
56
  DataChannelWrapper::~DataChannelWrapper()
53
57
  {
58
+ PLOG_DEBUG << "Destructor called";
54
59
  doClose();
55
60
  }
56
61
 
57
62
  void DataChannelWrapper::doClose()
58
63
  {
64
+ PLOG_DEBUG << "doClose() called";
59
65
  if (mDataChannelPtr)
60
66
  {
67
+ PLOG_DEBUG << "Closing...";
61
68
  try
62
69
  {
63
70
  mDataChannelPtr->close();
@@ -81,11 +88,13 @@ void DataChannelWrapper::doClose()
81
88
 
82
89
  void DataChannelWrapper::close(const Napi::CallbackInfo &info)
83
90
  {
91
+ PLOG_DEBUG << "close() called";
84
92
  doClose();
85
93
  }
86
94
 
87
95
  Napi::Value DataChannelWrapper::getLabel(const Napi::CallbackInfo &info)
88
96
  {
97
+ PLOG_DEBUG << "getLabel() called";
89
98
  if (!mDataChannelPtr)
90
99
  {
91
100
  Napi::Error::New(info.Env(), "getLabel() called on destroyed channel").ThrowAsJavaScriptException();
@@ -97,6 +106,7 @@ Napi::Value DataChannelWrapper::getLabel(const Napi::CallbackInfo &info)
97
106
 
98
107
  Napi::Value DataChannelWrapper::getId(const Napi::CallbackInfo &info)
99
108
  {
109
+ PLOG_DEBUG << "getId() called";
100
110
  if (!mDataChannelPtr)
101
111
  {
102
112
  Napi::Error::New(info.Env(), "getId() called on destroyed channel").ThrowAsJavaScriptException();
@@ -108,6 +118,7 @@ Napi::Value DataChannelWrapper::getId(const Napi::CallbackInfo &info)
108
118
 
109
119
  Napi::Value DataChannelWrapper::getProtocol(const Napi::CallbackInfo &info)
110
120
  {
121
+ PLOG_DEBUG << "getProtocol() called";
111
122
  if (!mDataChannelPtr)
112
123
  {
113
124
  Napi::Error::New(info.Env(), "getProtocol() called on destroyed channel").ThrowAsJavaScriptException();
@@ -119,6 +130,7 @@ Napi::Value DataChannelWrapper::getProtocol(const Napi::CallbackInfo &info)
119
130
 
120
131
  Napi::Value DataChannelWrapper::sendMessage(const Napi::CallbackInfo &info)
121
132
  {
133
+ PLOG_DEBUG << "sendMessage() called";
122
134
  if (!mDataChannelPtr)
123
135
  {
124
136
  Napi::Error::New(info.Env(), "sendMessage() called on destroyed channel").ThrowAsJavaScriptException();
@@ -148,6 +160,7 @@ Napi::Value DataChannelWrapper::sendMessage(const Napi::CallbackInfo &info)
148
160
 
149
161
  Napi::Value DataChannelWrapper::sendMessageBinary(const Napi::CallbackInfo &info)
150
162
  {
163
+ PLOG_DEBUG << "sendMessageBinary() called";
151
164
  if (!mDataChannelPtr)
152
165
  {
153
166
  Napi::Error::New(info.Env(), "sendMessagBinary() called on destroyed channel").ThrowAsJavaScriptException();
@@ -177,6 +190,7 @@ Napi::Value DataChannelWrapper::sendMessageBinary(const Napi::CallbackInfo &info
177
190
 
178
191
  Napi::Value DataChannelWrapper::isOpen(const Napi::CallbackInfo &info)
179
192
  {
193
+ PLOG_DEBUG << "isOpen() called";
180
194
  Napi::Env env = info.Env();
181
195
 
182
196
  if (!mDataChannelPtr)
@@ -197,6 +211,7 @@ Napi::Value DataChannelWrapper::isOpen(const Napi::CallbackInfo &info)
197
211
 
198
212
  Napi::Value DataChannelWrapper::bufferedAmount(const Napi::CallbackInfo &info)
199
213
  {
214
+ PLOG_DEBUG << "bufferedAmount() called";
200
215
  Napi::Env env = info.Env();
201
216
 
202
217
  if (!mDataChannelPtr)
@@ -217,6 +232,7 @@ Napi::Value DataChannelWrapper::bufferedAmount(const Napi::CallbackInfo &info)
217
232
 
218
233
  Napi::Value DataChannelWrapper::maxMessageSize(const Napi::CallbackInfo &info)
219
234
  {
235
+ PLOG_DEBUG << "maxMessageSize() called";
220
236
  Napi::Env env = info.Env();
221
237
 
222
238
  if (!mDataChannelPtr)
@@ -237,6 +253,7 @@ Napi::Value DataChannelWrapper::maxMessageSize(const Napi::CallbackInfo &info)
237
253
 
238
254
  void DataChannelWrapper::setBufferedAmountLowThreshold(const Napi::CallbackInfo &info)
239
255
  {
256
+ PLOG_DEBUG << "setBufferedAmountLowThreshold() called";
240
257
  if (!mDataChannelPtr)
241
258
  {
242
259
  Napi::Error::New(info.Env(), "setBufferedAmountLowThreshold() called on destroyed channel").ThrowAsJavaScriptException();
@@ -265,6 +282,7 @@ void DataChannelWrapper::setBufferedAmountLowThreshold(const Napi::CallbackInfo
265
282
 
266
283
  void DataChannelWrapper::onOpen(const Napi::CallbackInfo &info)
267
284
  {
285
+ PLOG_DEBUG << "onOpen() called";
268
286
  if (!mDataChannelPtr)
269
287
  {
270
288
  Napi::Error::New(info.Env(), "onOpen() called on destroyed channel").ThrowAsJavaScriptException();
@@ -283,9 +301,12 @@ void DataChannelWrapper::onOpen(const Napi::CallbackInfo &info)
283
301
  // Callback
284
302
  mOnOpenCallback = std::make_unique<ThreadSafeCallback>(info[0].As<Napi::Function>());
285
303
 
286
- mDataChannelPtr->onOpen([&]() {
304
+ mDataChannelPtr->onOpen([&]()
305
+ {
306
+ PLOG_DEBUG << "onOpen cb received from rtc";
287
307
  if (mOnOpenCallback)
288
308
  mOnOpenCallback->call([this](Napi::Env env, std::vector<napi_value> &args) {
309
+ PLOG_DEBUG << "mOnOpenCallback call(1)";
289
310
  // Check the data channel is not closed
290
311
  if(instances.find(this) == instances.end())
291
312
  throw ThreadSafeCallback::CancelException();
@@ -293,11 +314,13 @@ void DataChannelWrapper::onOpen(const Napi::CallbackInfo &info)
293
314
  // This will run in main thread and needs to construct the
294
315
  // arguments for the call
295
316
  args = {};
317
+ PLOG_DEBUG << "mOnOpenCallback call(2)";
296
318
  }); });
297
319
  }
298
320
 
299
321
  void DataChannelWrapper::onClosed(const Napi::CallbackInfo &info)
300
322
  {
323
+ PLOG_DEBUG << "onClosed() called";
301
324
  if (!mDataChannelPtr)
302
325
  {
303
326
  Napi::Error::New(info.Env(), "onClosed() called on destroyed channel").ThrowAsJavaScriptException();
@@ -316,9 +339,12 @@ void DataChannelWrapper::onClosed(const Napi::CallbackInfo &info)
316
339
  // Callback
317
340
  mOnClosedCallback = std::make_unique<ThreadSafeCallback>(info[0].As<Napi::Function>());
318
341
 
319
- mDataChannelPtr->onClosed([&]() {
342
+ mDataChannelPtr->onClosed([&]()
343
+ {
344
+ PLOG_DEBUG << "onClosed cb received from rtc";
320
345
  if (mOnClosedCallback)
321
346
  mOnClosedCallback->call([this](Napi::Env env, std::vector<napi_value> &args) {
347
+ PLOG_DEBUG << "mOnClosedCallback call";
322
348
  // Do not check if the data channel has been closed here
323
349
 
324
350
  // This will run in main thread and needs to construct the
@@ -329,6 +355,7 @@ void DataChannelWrapper::onClosed(const Napi::CallbackInfo &info)
329
355
 
330
356
  void DataChannelWrapper::onError(const Napi::CallbackInfo &info)
331
357
  {
358
+ PLOG_DEBUG << "onError() called";
332
359
  if (!mDataChannelPtr)
333
360
  {
334
361
  Napi::Error::New(info.Env(), "onError() called on destroyed channel").ThrowAsJavaScriptException();
@@ -347,9 +374,12 @@ void DataChannelWrapper::onError(const Napi::CallbackInfo &info)
347
374
  // Callback
348
375
  mOnErrorCallback = std::make_unique<ThreadSafeCallback>(info[0].As<Napi::Function>());
349
376
 
350
- mDataChannelPtr->onError([&](std::string error) {
377
+ mDataChannelPtr->onError([&](std::string error)
378
+ {
379
+ PLOG_DEBUG << "onError cb received from rtc";
351
380
  if (mOnErrorCallback)
352
381
  mOnErrorCallback->call([this, error = std::move(error)](Napi::Env env, std::vector<napi_value> &args) {
382
+ PLOG_DEBUG << "mOnErrorCallback call(1)";
353
383
  // Check the data channel is not closed
354
384
  if(instances.find(this) == instances.end())
355
385
  throw ThreadSafeCallback::CancelException();
@@ -357,11 +387,13 @@ void DataChannelWrapper::onError(const Napi::CallbackInfo &info)
357
387
  // This will run in main thread and needs to construct the
358
388
  // arguments for the call
359
389
  args = {Napi::String::New(env, error)};
390
+ PLOG_DEBUG << "mOnErrorCallback call(2)";
360
391
  }); });
361
392
  }
362
393
 
363
394
  void DataChannelWrapper::onBufferedAmountLow(const Napi::CallbackInfo &info)
364
395
  {
396
+ PLOG_DEBUG << "onBufferedAmountLow() called";
365
397
  if (!mDataChannelPtr)
366
398
  {
367
399
  Napi::Error::New(info.Env(), "onBufferedAmountLow() called on destroyed channel").ThrowAsJavaScriptException();
@@ -380,9 +412,12 @@ void DataChannelWrapper::onBufferedAmountLow(const Napi::CallbackInfo &info)
380
412
  // Callback
381
413
  mOnBufferedAmountLowCallback = std::make_unique<ThreadSafeCallback>(info[0].As<Napi::Function>());
382
414
 
383
- mDataChannelPtr->onBufferedAmountLow([&]() {
415
+ mDataChannelPtr->onBufferedAmountLow([&]()
416
+ {
417
+ PLOG_DEBUG << "onBufferedAmountLow cb received from rtc";
384
418
  if (mOnBufferedAmountLowCallback)
385
419
  mOnBufferedAmountLowCallback->call([this](Napi::Env env, std::vector<napi_value> &args) {
420
+ PLOG_DEBUG << "mOnBufferedAmountLowCallback call(1)";
386
421
  // Check the data channel is not closed
387
422
  if(instances.find(this) == instances.end())
388
423
  throw ThreadSafeCallback::CancelException();
@@ -390,11 +425,13 @@ void DataChannelWrapper::onBufferedAmountLow(const Napi::CallbackInfo &info)
390
425
  // This will run in main thread and needs to construct the
391
426
  // arguments for the call
392
427
  args = {};
428
+ PLOG_DEBUG << "mOnBufferedAmountLowCallback call(2)";
393
429
  }); });
394
430
  }
395
431
 
396
432
  void DataChannelWrapper::onMessage(const Napi::CallbackInfo &info)
397
433
  {
434
+ PLOG_DEBUG << "onMessage() called";
398
435
  if (!mDataChannelPtr)
399
436
  {
400
437
  Napi::Error::New(info.Env(), "onMessage() called on destroyed channel").ThrowAsJavaScriptException();
@@ -413,9 +450,12 @@ void DataChannelWrapper::onMessage(const Napi::CallbackInfo &info)
413
450
  // Callback
414
451
  mOnMessageCallback = std::make_unique<ThreadSafeCallback>(info[0].As<Napi::Function>());
415
452
 
416
- mDataChannelPtr->onMessage([&](std::variant<rtc::binary, std::string> message) {
453
+ mDataChannelPtr->onMessage([&](std::variant<rtc::binary, std::string> message)
454
+ {
455
+ PLOG_DEBUG << "onMessage cb received from rtc";
417
456
  if (mOnMessageCallback)
418
457
  mOnMessageCallback->call([this, message = std::move(message)](Napi::Env env, std::vector<napi_value> &args) {
458
+ PLOG_DEBUG << "mOnMessageCallback call(1)";
419
459
  // Check the data channel is not closed
420
460
  if(instances.find(this) == instances.end())
421
461
  throw ThreadSafeCallback::CancelException();
@@ -431,5 +471,6 @@ void DataChannelWrapper::onMessage(const Napi::CallbackInfo &info)
431
471
  auto bin = std::get<rtc::binary>(std::move(message));
432
472
  args = {Napi::Buffer<std::byte>::Copy(env, bin.data(), bin.size())};
433
473
  }
474
+ PLOG_DEBUG << "mOnMessageCallback call(2)";
434
475
  }); });
435
476
  }
package/src/main.cpp CHANGED
@@ -10,13 +10,13 @@
10
10
  Napi::Object InitAll(Napi::Env env, Napi::Object exports)
11
11
  {
12
12
  RtcWrapper::Init(env, exports);
13
- RtcpReceivingSessionWrapper::Init(env,exports);
14
- TrackWrapper::Init(env,exports);
15
- VideoWrapper::Init(env,exports);
16
- AudioWrapper::Init(env,exports);
13
+ RtcpReceivingSessionWrapper::Init(env, exports);
14
+ TrackWrapper::Init(env, exports);
15
+ VideoWrapper::Init(env, exports);
16
+ AudioWrapper::Init(env, exports);
17
17
  DataChannelWrapper::Init(env, exports);
18
18
  PeerConnectionWrapper::Init(env, exports);
19
19
  return exports;
20
20
  }
21
21
 
22
- NODE_API_MODULE(nodeDataChannel, InitAll)
22
+ NODE_API_MODULE(nodeDataChannel, InitAll)