node-datachannel 0.4.3 → 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.
- package/.github/workflows/build-linux.yml +10 -10
- package/.github/workflows/build-mac-m1.yml +5 -5
- package/.github/workflows/build-mac-x64.yml +5 -5
- package/.github/workflows/build-win.yml +11 -8
- package/.github/workflows/lint.yml +1 -1
- package/.github/workflows/npm-publish-manual.yml +1 -1
- package/{.prettierrc.js → .prettierrc.cjs} +1 -0
- package/BULDING.md +7 -3
- package/CMakeLists.txt +12 -22
- package/README.md +37 -33
- package/cmake/toolchain/arm64.cmake +1 -1
- package/examples/build/Dockerfile +30 -0
- package/examples/build/README.md +24 -0
- package/examples/client-server/README.md +22 -0
- package/examples/client-server/client-benchmark.js +11 -6
- package/examples/client-server/client-periodic.js +5 -6
- package/examples/client-server/client.js +4 -5
- package/examples/client-server/package-lock.json +311 -260
- package/examples/client-server/package.json +15 -14
- package/examples/client-server/signaling-server.js +1 -2
- package/examples/electron-demo/README.md +58 -0
- package/examples/electron-demo/forge.config.js +49 -0
- package/examples/electron-demo/package-lock.json +16287 -0
- package/examples/electron-demo/package.json +43 -0
- package/examples/electron-demo/src/index.css +7 -0
- package/examples/electron-demo/src/index.html +29 -0
- package/examples/electron-demo/src/main.js +53 -0
- package/examples/electron-demo/src/node-datachannel.js +123 -0
- package/examples/electron-demo/src/preload.js +28 -0
- package/examples/electron-demo/src/renderer.js +58 -0
- package/examples/electron-demo/webpack.main.config.js +11 -0
- package/examples/electron-demo/webpack.renderer.config.js +13 -0
- package/examples/electron-demo/webpack.rules.js +35 -0
- package/examples/media/README.md +3 -3
- package/examples/media/media.js +3 -4
- package/examples/simple-peer-usage/main.js +28 -0
- package/examples/simple-peer-usage/package-lock.json +317 -0
- package/examples/simple-peer-usage/package.json +16 -0
- package/lib/datachannel-stream.js +3 -4
- package/lib/index.d.ts +7 -4
- package/lib/index.js +6 -3
- package/node_modules/base64-js/package.json +19 -50
- package/node_modules/buffer/package.json +20 -54
- package/node_modules/chownr/package.json +16 -53
- package/node_modules/decompress-response/package.json +54 -89
- package/node_modules/deep-extend/package.json +32 -65
- package/node_modules/detect-libc/README.md +4 -1
- package/node_modules/detect-libc/index.d.ts +3 -0
- package/node_modules/detect-libc/lib/detect-libc.js +105 -4
- package/node_modules/detect-libc/lib/filesystem.js +41 -0
- package/node_modules/detect-libc/lib/process.js +3 -0
- package/node_modules/detect-libc/package.json +25 -60
- package/node_modules/end-of-stream/package.json +17 -49
- package/node_modules/expand-template/package.json +17 -51
- package/node_modules/fs-constants/package.json +11 -42
- package/node_modules/github-from-package/package.json +28 -60
- package/node_modules/ieee754/package.json +19 -54
- package/node_modules/inherits/package.json +12 -61
- package/node_modules/ini/package.json +19 -55
- package/node_modules/mimic-response/package.json +40 -75
- package/node_modules/minimist/.eslintrc +29 -0
- package/node_modules/minimist/.github/FUNDING.yml +12 -0
- package/node_modules/minimist/.nycrc +14 -0
- package/node_modules/minimist/CHANGELOG.md +298 -0
- package/node_modules/minimist/{readme.markdown → README.md} +34 -11
- package/node_modules/minimist/example/parse.js +2 -0
- package/node_modules/minimist/index.js +256 -242
- package/node_modules/minimist/package.json +73 -77
- package/node_modules/minimist/test/all_bool.js +26 -24
- package/node_modules/minimist/test/bool.js +146 -147
- package/node_modules/minimist/test/dash.js +33 -21
- package/node_modules/minimist/test/default_bool.js +26 -24
- package/node_modules/minimist/test/dotted.js +13 -11
- package/node_modules/minimist/test/kv_short.js +26 -10
- package/node_modules/minimist/test/long.js +28 -26
- package/node_modules/minimist/test/num.js +30 -28
- package/node_modules/minimist/test/parse.js +169 -157
- package/node_modules/minimist/test/parse_modified.js +7 -5
- package/node_modules/minimist/test/proto.js +41 -37
- package/node_modules/minimist/test/short.js +57 -55
- package/node_modules/minimist/test/stop_early.js +10 -8
- package/node_modules/minimist/test/unknown.js +83 -81
- package/node_modules/minimist/test/whitespace.js +6 -4
- package/node_modules/mkdirp-classic/package.json +11 -43
- package/node_modules/napi-build-utils/package.json +26 -57
- package/node_modules/node-abi/README.md +5 -3
- package/node_modules/node-abi/abi_registry.json +98 -8
- package/node_modules/node-abi/package.json +26 -57
- package/node_modules/once/package.json +14 -55
- package/node_modules/prebuild-install/CHANGELOG.md +18 -0
- package/node_modules/prebuild-install/README.md +6 -2
- package/node_modules/prebuild-install/log.js +26 -18
- package/node_modules/prebuild-install/package.json +36 -98
- package/node_modules/prebuild-install/rc.js +5 -1
- package/node_modules/prebuild-install/util.js +1 -1
- package/node_modules/pump/package.json +10 -49
- package/node_modules/rc/node_modules/strip-json-comments/package.json +42 -0
- package/node_modules/rc/package.json +18 -59
- package/node_modules/safe-buffer/index.js +3 -0
- package/node_modules/safe-buffer/package.json +20 -39
- package/node_modules/{node-abi/node_modules/semver → semver}/README.md +70 -1
- package/node_modules/{node-abi/node_modules/semver → semver}/bin/semver.js +16 -2
- package/node_modules/{node-abi/node_modules/semver → semver}/classes/comparator.js +39 -34
- package/node_modules/{node-abi/node_modules/semver → semver}/classes/range.js +48 -28
- package/node_modules/{node-abi/node_modules/semver → semver}/classes/semver.js +32 -17
- package/node_modules/{node-abi/node_modules/semver → semver}/functions/coerce.js +1 -1
- package/node_modules/semver/functions/diff.js +65 -0
- package/node_modules/{node-abi/node_modules/semver → semver}/functions/inc.js +3 -2
- package/node_modules/semver/functions/parse.js +16 -0
- package/node_modules/semver/index.js +89 -0
- package/node_modules/{node-abi/node_modules/semver → semver}/internal/constants.js +20 -2
- package/node_modules/semver/internal/parse-options.js +15 -0
- package/node_modules/{node-abi/node_modules/semver → semver}/internal/re.js +34 -4
- package/node_modules/semver/node_modules/lru-cache/package.json +34 -0
- package/node_modules/semver/node_modules/yallist/package.json +29 -0
- package/node_modules/semver/package.json +87 -0
- package/node_modules/{node-abi/node_modules/semver → semver}/ranges/intersects.js +1 -1
- package/node_modules/{node-abi/node_modules/semver → semver}/ranges/subset.js +6 -3
- package/node_modules/simple-concat/package.json +17 -45
- package/node_modules/simple-get/package.json +17 -45
- package/node_modules/{tar-stream → tar-fs}/node_modules/bl/package.json +20 -51
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/README.md +1 -1
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_duplex.js +12 -25
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_passthrough.js +2 -4
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_readable.js +176 -273
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_transform.js +26 -37
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/_stream_writable.js +118 -174
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/async_iterator.js +10 -37
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/buffer_list.js +20 -47
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/destroy.js +8 -17
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +1 -19
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/from.js +12 -24
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/pipeline.js +5 -16
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/state.js +2 -7
- package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/package.json +27 -60
- package/node_modules/tar-fs/node_modules/string_decoder/package.json +34 -0
- package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/extract.js +1 -1
- package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/headers.js +4 -2
- package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/package.json +22 -59
- package/node_modules/tar-fs/package.json +21 -51
- package/node_modules/tunnel-agent/package.json +12 -49
- package/node_modules/util-deprecate/package.json +14 -49
- package/node_modules/wrappy/package.json +16 -49
- package/package.json +85 -68
- package/polyfill/Events.d.ts +9 -0
- package/polyfill/Events.js +27 -0
- package/polyfill/README.md +41 -0
- package/polyfill/RTCCertificate.d.ts +7 -0
- package/polyfill/RTCCertificate.js +17 -0
- package/polyfill/RTCDataChannel.d.ts +35 -0
- package/polyfill/RTCDataChannel.js +175 -0
- package/polyfill/RTCDtlsTransport.d.ts +10 -0
- package/polyfill/RTCDtlsTransport.js +29 -0
- package/polyfill/RTCIceCandidate.d.ts +20 -0
- package/polyfill/RTCIceCandidate.js +126 -0
- package/polyfill/RTCIceTransport.d.ts +18 -0
- package/polyfill/RTCIceTransport.js +55 -0
- package/polyfill/RTCPeerConnection.d.ts +50 -0
- package/polyfill/RTCPeerConnection.js +348 -0
- package/polyfill/RTCSctpTransport.d.ts +10 -0
- package/polyfill/RTCSctpTransport.js +34 -0
- package/polyfill/RTCSessionDescription.d.ts +7 -0
- package/polyfill/RTCSessionDescription.js +37 -0
- package/polyfill/index.d.ts +14 -0
- package/polyfill/index.js +14 -0
- package/src/data-channel-wrapper.cpp +47 -6
- package/src/main.cpp +5 -5
- package/src/peer-connection-wrapper.cpp +141 -9
- package/src/peer-connection-wrapper.h +4 -0
- package/src/rtc-wrapper.cpp +14 -9
- package/src/thread-safe-callback.cpp +4 -10
- package/src/thread-safe-callback.h +3 -12
- package/test/connectivity.js +9 -4
- package/test/polyfill-connectivity.js +89 -0
- package/test/test.js +3 -3
- package/test/wpt.js +50 -0
- package/examples/README.md +0 -21
- package/node_modules/ansi-regex/index.js +0 -4
- package/node_modules/ansi-regex/package.json +0 -111
- package/node_modules/ansi-regex/readme.md +0 -39
- package/node_modules/aproba/LICENSE +0 -14
- package/node_modules/aproba/README.md +0 -94
- package/node_modules/aproba/index.js +0 -105
- package/node_modules/aproba/package.json +0 -65
- package/node_modules/code-point-at/index.js +0 -32
- package/node_modules/code-point-at/license +0 -21
- package/node_modules/code-point-at/package.json +0 -73
- package/node_modules/code-point-at/readme.md +0 -32
- package/node_modules/console-control-strings/LICENSE +0 -13
- package/node_modules/console-control-strings/README.md +0 -145
- package/node_modules/console-control-strings/README.md~ +0 -140
- package/node_modules/console-control-strings/index.js +0 -125
- package/node_modules/console-control-strings/package.json +0 -64
- package/node_modules/core-util-is/LICENSE +0 -19
- package/node_modules/core-util-is/README.md +0 -3
- package/node_modules/core-util-is/float.patch +0 -604
- package/node_modules/core-util-is/lib/util.js +0 -107
- package/node_modules/core-util-is/package.json +0 -70
- package/node_modules/core-util-is/test.js +0 -68
- package/node_modules/delegates/.npmignore +0 -1
- package/node_modules/delegates/History.md +0 -22
- package/node_modules/delegates/License +0 -20
- package/node_modules/delegates/Makefile +0 -8
- package/node_modules/delegates/Readme.md +0 -94
- package/node_modules/delegates/index.js +0 -121
- package/node_modules/delegates/package.json +0 -53
- package/node_modules/delegates/test/index.js +0 -94
- package/node_modules/has-unicode/LICENSE +0 -14
- package/node_modules/has-unicode/README.md +0 -43
- package/node_modules/has-unicode/index.js +0 -16
- package/node_modules/has-unicode/package.json +0 -62
- package/node_modules/is-fullwidth-code-point/index.js +0 -46
- package/node_modules/is-fullwidth-code-point/license +0 -21
- package/node_modules/is-fullwidth-code-point/package.json +0 -80
- package/node_modules/is-fullwidth-code-point/readme.md +0 -39
- package/node_modules/isarray/.npmignore +0 -1
- package/node_modules/isarray/.travis.yml +0 -4
- package/node_modules/isarray/Makefile +0 -6
- package/node_modules/isarray/README.md +0 -60
- package/node_modules/isarray/component.json +0 -19
- package/node_modules/isarray/index.js +0 -5
- package/node_modules/isarray/package.json +0 -77
- package/node_modules/isarray/test.js +0 -20
- package/node_modules/lru-cache/node_modules/yallist/package.json +0 -65
- package/node_modules/lru-cache/package.json +0 -73
- package/node_modules/minimist/.travis.yml +0 -8
- package/node_modules/node-abi/.circleci/config.yml +0 -63
- package/node_modules/node-abi/.github/workflows/update-abi.yml +0 -41
- package/node_modules/node-abi/.releaserc.json +0 -9
- package/node_modules/node-abi/CODE_OF_CONDUCT.md +0 -73
- package/node_modules/node-abi/CONTRIBUTING.md +0 -53
- package/node_modules/node-abi/node_modules/semver/functions/diff.js +0 -23
- package/node_modules/node-abi/node_modules/semver/functions/parse.js +0 -33
- package/node_modules/node-abi/node_modules/semver/index.js +0 -48
- package/node_modules/node-abi/node_modules/semver/internal/parse-options.js +0 -11
- package/node_modules/node-abi/node_modules/semver/package.json +0 -109
- package/node_modules/node-abi/scripts/update-abi-registry.js +0 -119
- package/node_modules/node-abi/test/index.js +0 -166
- package/node_modules/npmlog/CHANGELOG.md +0 -49
- package/node_modules/npmlog/LICENSE +0 -15
- package/node_modules/npmlog/README.md +0 -216
- package/node_modules/npmlog/log.js +0 -309
- package/node_modules/npmlog/node_modules/are-we-there-yet/CHANGES.md +0 -37
- package/node_modules/npmlog/node_modules/are-we-there-yet/LICENSE +0 -5
- package/node_modules/npmlog/node_modules/are-we-there-yet/README.md +0 -195
- package/node_modules/npmlog/node_modules/are-we-there-yet/index.js +0 -4
- package/node_modules/npmlog/node_modules/are-we-there-yet/package.json +0 -66
- package/node_modules/npmlog/node_modules/are-we-there-yet/tracker-base.js +0 -11
- package/node_modules/npmlog/node_modules/are-we-there-yet/tracker-group.js +0 -107
- package/node_modules/npmlog/node_modules/are-we-there-yet/tracker-stream.js +0 -36
- package/node_modules/npmlog/node_modules/are-we-there-yet/tracker.js +0 -30
- package/node_modules/npmlog/node_modules/gauge/CHANGELOG.md +0 -160
- package/node_modules/npmlog/node_modules/gauge/LICENSE +0 -13
- package/node_modules/npmlog/node_modules/gauge/README.md +0 -399
- package/node_modules/npmlog/node_modules/gauge/base-theme.js +0 -14
- package/node_modules/npmlog/node_modules/gauge/error.js +0 -24
- package/node_modules/npmlog/node_modules/gauge/has-color.js +0 -12
- package/node_modules/npmlog/node_modules/gauge/index.js +0 -233
- package/node_modules/npmlog/node_modules/gauge/package.json +0 -94
- package/node_modules/npmlog/node_modules/gauge/plumbing.js +0 -48
- package/node_modules/npmlog/node_modules/gauge/process.js +0 -3
- package/node_modules/npmlog/node_modules/gauge/progress-bar.js +0 -35
- package/node_modules/npmlog/node_modules/gauge/render-template.js +0 -181
- package/node_modules/npmlog/node_modules/gauge/set-immediate.js +0 -7
- package/node_modules/npmlog/node_modules/gauge/set-interval.js +0 -3
- package/node_modules/npmlog/node_modules/gauge/spin.js +0 -5
- package/node_modules/npmlog/node_modules/gauge/template-item.js +0 -73
- package/node_modules/npmlog/node_modules/gauge/theme-set.js +0 -115
- package/node_modules/npmlog/node_modules/gauge/themes.js +0 -54
- package/node_modules/npmlog/node_modules/gauge/wide-truncate.js +0 -25
- package/node_modules/npmlog/package.json +0 -78
- package/node_modules/number-is-nan/index.js +0 -4
- package/node_modules/number-is-nan/license +0 -21
- package/node_modules/number-is-nan/package.json +0 -70
- package/node_modules/number-is-nan/readme.md +0 -28
- package/node_modules/object-assign/index.js +0 -90
- package/node_modules/object-assign/license +0 -21
- package/node_modules/object-assign/package.json +0 -77
- package/node_modules/object-assign/readme.md +0 -61
- package/node_modules/process-nextick-args/index.js +0 -45
- package/node_modules/process-nextick-args/license.md +0 -19
- package/node_modules/process-nextick-args/package.json +0 -53
- package/node_modules/process-nextick-args/readme.md +0 -18
- package/node_modules/readable-stream/.travis.yml +0 -34
- package/node_modules/readable-stream/README.md +0 -58
- package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
- package/node_modules/readable-stream/duplex-browser.js +0 -1
- package/node_modules/readable-stream/duplex.js +0 -1
- package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
- package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
- package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
- package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
- package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
- package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
- package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
- package/node_modules/readable-stream/package.json +0 -87
- package/node_modules/readable-stream/passthrough.js +0 -1
- package/node_modules/readable-stream/readable-browser.js +0 -7
- package/node_modules/readable-stream/readable.js +0 -19
- package/node_modules/readable-stream/transform.js +0 -1
- package/node_modules/readable-stream/writable-browser.js +0 -1
- package/node_modules/readable-stream/writable.js +0 -8
- package/node_modules/set-blocking/CHANGELOG.md +0 -26
- package/node_modules/set-blocking/LICENSE.txt +0 -14
- package/node_modules/set-blocking/README.md +0 -31
- package/node_modules/set-blocking/index.js +0 -7
- package/node_modules/set-blocking/package.json +0 -73
- package/node_modules/signal-exit/CHANGELOG.md +0 -35
- package/node_modules/signal-exit/LICENSE.txt +0 -16
- package/node_modules/signal-exit/README.md +0 -39
- package/node_modules/signal-exit/index.js +0 -163
- package/node_modules/signal-exit/package.json +0 -71
- package/node_modules/signal-exit/signals.js +0 -53
- package/node_modules/string-width/index.js +0 -37
- package/node_modules/string-width/license +0 -21
- package/node_modules/string-width/package.json +0 -95
- package/node_modules/string-width/readme.md +0 -42
- package/node_modules/string_decoder/.travis.yml +0 -50
- package/node_modules/string_decoder/package.json +0 -64
- package/node_modules/strip-ansi/index.js +0 -6
- package/node_modules/strip-ansi/license +0 -21
- package/node_modules/strip-ansi/package.json +0 -107
- package/node_modules/strip-ansi/readme.md +0 -33
- package/node_modules/strip-json-comments/license +0 -21
- package/node_modules/strip-json-comments/package.json +0 -77
- package/node_modules/tar-stream/node_modules/readable-stream/CONTRIBUTING.md +0 -38
- package/node_modules/tar-stream/node_modules/readable-stream/GOVERNANCE.md +0 -136
- package/node_modules/tar-stream/node_modules/readable-stream/LICENSE +0 -47
- package/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
- package/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
- package/node_modules/wide-align/LICENSE +0 -14
- package/node_modules/wide-align/README.md +0 -47
- package/node_modules/wide-align/align.js +0 -65
- package/node_modules/wide-align/package.json +0 -69
- /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
- /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/index.js +0 -0
- /package/node_modules/{ansi-regex → rc/node_modules/strip-json-comments}/license +0 -0
- /package/node_modules/{strip-json-comments → rc/node_modules/strip-json-comments}/readme.md +0 -0
- /package/node_modules/{lru-cache → semver}/LICENSE +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/classes/index.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/clean.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/cmp.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/compare-build.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/compare-loose.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/compare.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/eq.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/gt.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/gte.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/lt.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/lte.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/major.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/minor.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/neq.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/patch.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/prerelease.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/rcompare.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/rsort.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/satisfies.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/sort.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/functions/valid.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/internal/debug.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/internal/identifiers.js +0 -0
- /package/node_modules/{lru-cache/node_modules/yallist → semver/node_modules/lru-cache}/LICENSE +0 -0
- /package/node_modules/{lru-cache → semver/node_modules/lru-cache}/README.md +0 -0
- /package/node_modules/{lru-cache → semver/node_modules/lru-cache}/index.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver/node_modules/yallist}/LICENSE +0 -0
- /package/node_modules/{lru-cache → semver}/node_modules/yallist/README.md +0 -0
- /package/node_modules/{lru-cache → semver}/node_modules/yallist/iterator.js +0 -0
- /package/node_modules/{lru-cache → semver}/node_modules/yallist/yallist.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/preload.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/range.bnf +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/gtr.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/ltr.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/max-satisfying.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/min-satisfying.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/min-version.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/outside.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/simplify.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/to-comparators.js +0 -0
- /package/node_modules/{node-abi/node_modules/semver → semver}/ranges/valid.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/.travis.yml +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/BufferList.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/LICENSE.md +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/README.md +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/bl.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/convert.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/indexOf.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/isBufferList.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/bl/test/test.js +0 -0
- /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/CONTRIBUTING.md +0 -0
- /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/GOVERNANCE.md +0 -0
- /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/LICENSE +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/errors-browser.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/errors.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/experimentalWarning.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -0
- /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/lib/internal/streams/stream-browser.js +0 -0
- /package/node_modules/{readable-stream → tar-fs/node_modules/readable-stream}/lib/internal/streams/stream.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/readable-browser.js +0 -0
- /package/node_modules/{tar-stream → tar-fs}/node_modules/readable-stream/readable.js +0 -0
- /package/node_modules/{string_decoder → tar-fs/node_modules/string_decoder}/LICENSE +0 -0
- /package/node_modules/{string_decoder → tar-fs/node_modules/string_decoder}/README.md +0 -0
- /package/node_modules/{string_decoder → tar-fs/node_modules/string_decoder}/lib/string_decoder.js +0 -0
- /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/LICENSE +0 -0
- /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/README.md +0 -0
- /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/index.js +0 -0
- /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/pack.js +0 -0
- /package/node_modules/{tar-stream → tar-fs/node_modules/tar-stream}/sandbox.js +0 -0
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
are-we-there-yet
|
|
2
|
-
----------------
|
|
3
|
-
|
|
4
|
-
Track complex hiearchies of asynchronous task completion statuses. This is
|
|
5
|
-
intended to give you a way of recording and reporting the progress of the big
|
|
6
|
-
recursive fan-out and gather type workflows that are so common in async.
|
|
7
|
-
|
|
8
|
-
What you do with this completion data is up to you, but the most common use case is to
|
|
9
|
-
feed it to one of the many progress bar modules.
|
|
10
|
-
|
|
11
|
-
Most progress bar modules include a rudamentary version of this, but my
|
|
12
|
-
needs were more complex.
|
|
13
|
-
|
|
14
|
-
Usage
|
|
15
|
-
=====
|
|
16
|
-
|
|
17
|
-
```javascript
|
|
18
|
-
var TrackerGroup = require("are-we-there-yet").TrackerGroup
|
|
19
|
-
|
|
20
|
-
var top = new TrackerGroup("program")
|
|
21
|
-
|
|
22
|
-
var single = top.newItem("one thing", 100)
|
|
23
|
-
single.completeWork(20)
|
|
24
|
-
|
|
25
|
-
console.log(top.completed()) // 0.2
|
|
26
|
-
|
|
27
|
-
fs.stat("file", function(er, stat) {
|
|
28
|
-
if (er) throw er
|
|
29
|
-
var stream = top.newStream("file", stat.size)
|
|
30
|
-
console.log(top.completed()) // now 0.1 as single is 50% of the job and is 20% complete
|
|
31
|
-
// and 50% * 20% == 10%
|
|
32
|
-
fs.createReadStream("file").pipe(stream).on("data", function (chunk) {
|
|
33
|
-
// do stuff with chunk
|
|
34
|
-
})
|
|
35
|
-
top.on("change", function (name) {
|
|
36
|
-
// called each time a chunk is read from "file"
|
|
37
|
-
// top.completed() will start at 0.1 and fill up to 0.6 as the file is read
|
|
38
|
-
})
|
|
39
|
-
})
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Shared Methods
|
|
43
|
-
==============
|
|
44
|
-
|
|
45
|
-
* var completed = tracker.completed()
|
|
46
|
-
|
|
47
|
-
Implemented in: `Tracker`, `TrackerGroup`, `TrackerStream`
|
|
48
|
-
|
|
49
|
-
Returns the ratio of completed work to work to be done. Range of 0 to 1.
|
|
50
|
-
|
|
51
|
-
* tracker.finish()
|
|
52
|
-
|
|
53
|
-
Implemented in: `Tracker`, `TrackerGroup`
|
|
54
|
-
|
|
55
|
-
Marks the tracker as completed. With a TrackerGroup this marks all of its
|
|
56
|
-
components as completed.
|
|
57
|
-
|
|
58
|
-
Marks all of the components of this tracker as finished, which in turn means
|
|
59
|
-
that `tracker.completed()` for this will now be 1.
|
|
60
|
-
|
|
61
|
-
This will result in one or more `change` events being emitted.
|
|
62
|
-
|
|
63
|
-
Events
|
|
64
|
-
======
|
|
65
|
-
|
|
66
|
-
All tracker objects emit `change` events with the following arguments:
|
|
67
|
-
|
|
68
|
-
```
|
|
69
|
-
function (name, completed, tracker)
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
`name` is the name of the tracker that originally emitted the event,
|
|
73
|
-
or if it didn't have one, the first containing tracker group that had one.
|
|
74
|
-
|
|
75
|
-
`completed` is the percent complete (as returned by `tracker.completed()` method).
|
|
76
|
-
|
|
77
|
-
`tracker` is the tracker object that you are listening for events on.
|
|
78
|
-
|
|
79
|
-
TrackerGroup
|
|
80
|
-
============
|
|
81
|
-
|
|
82
|
-
* var tracker = new TrackerGroup(**name**)
|
|
83
|
-
|
|
84
|
-
* **name** *(optional)* - The name of this tracker group, used in change
|
|
85
|
-
notifications if the component updating didn't have a name. Defaults to undefined.
|
|
86
|
-
|
|
87
|
-
Creates a new empty tracker aggregation group. These are trackers whose
|
|
88
|
-
completion status is determined by the completion status of other trackers.
|
|
89
|
-
|
|
90
|
-
* tracker.addUnit(**otherTracker**, **weight**)
|
|
91
|
-
|
|
92
|
-
* **otherTracker** - Any of the other are-we-there-yet tracker objects
|
|
93
|
-
* **weight** *(optional)* - The weight to give the tracker, defaults to 1.
|
|
94
|
-
|
|
95
|
-
Adds the **otherTracker** to this aggregation group. The weight determines
|
|
96
|
-
how long you expect this tracker to take to complete in proportion to other
|
|
97
|
-
units. So for instance, if you add one tracker with a weight of 1 and
|
|
98
|
-
another with a weight of 2, you're saying the second will take twice as long
|
|
99
|
-
to complete as the first. As such, the first will account for 33% of the
|
|
100
|
-
completion of this tracker and the second will account for the other 67%.
|
|
101
|
-
|
|
102
|
-
Returns **otherTracker**.
|
|
103
|
-
|
|
104
|
-
* var subGroup = tracker.newGroup(**name**, **weight**)
|
|
105
|
-
|
|
106
|
-
The above is exactly equivalent to:
|
|
107
|
-
|
|
108
|
-
```javascript
|
|
109
|
-
var subGroup = tracker.addUnit(new TrackerGroup(name), weight)
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
* var subItem = tracker.newItem(**name**, **todo**, **weight**)
|
|
113
|
-
|
|
114
|
-
The above is exactly equivalent to:
|
|
115
|
-
|
|
116
|
-
```javascript
|
|
117
|
-
var subItem = tracker.addUnit(new Tracker(name, todo), weight)
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
* var subStream = tracker.newStream(**name**, **todo**, **weight**)
|
|
121
|
-
|
|
122
|
-
The above is exactly equivalent to:
|
|
123
|
-
|
|
124
|
-
```javascript
|
|
125
|
-
var subStream = tracker.addUnit(new TrackerStream(name, todo), weight)
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
* console.log( tracker.debug() )
|
|
129
|
-
|
|
130
|
-
Returns a tree showing the completion of this tracker group and all of its
|
|
131
|
-
children, including recursively entering all of the children.
|
|
132
|
-
|
|
133
|
-
Tracker
|
|
134
|
-
=======
|
|
135
|
-
|
|
136
|
-
* var tracker = new Tracker(**name**, **todo**)
|
|
137
|
-
|
|
138
|
-
* **name** *(optional)* The name of this counter to report in change
|
|
139
|
-
events. Defaults to undefined.
|
|
140
|
-
* **todo** *(optional)* The amount of work todo (a number). Defaults to 0.
|
|
141
|
-
|
|
142
|
-
Ordinarily these are constructed as a part of a tracker group (via
|
|
143
|
-
`newItem`).
|
|
144
|
-
|
|
145
|
-
* var completed = tracker.completed()
|
|
146
|
-
|
|
147
|
-
Returns the ratio of completed work to work to be done. Range of 0 to 1. If
|
|
148
|
-
total work to be done is 0 then it will return 0.
|
|
149
|
-
|
|
150
|
-
* tracker.addWork(**todo**)
|
|
151
|
-
|
|
152
|
-
* **todo** A number to add to the amount of work to be done.
|
|
153
|
-
|
|
154
|
-
Increases the amount of work to be done, thus decreasing the completion
|
|
155
|
-
percentage. Triggers a `change` event.
|
|
156
|
-
|
|
157
|
-
* tracker.completeWork(**completed**)
|
|
158
|
-
|
|
159
|
-
* **completed** A number to add to the work complete
|
|
160
|
-
|
|
161
|
-
Increase the amount of work complete, thus increasing the completion percentage.
|
|
162
|
-
Will never increase the work completed past the amount of work todo. That is,
|
|
163
|
-
percentages > 100% are not allowed. Triggers a `change` event.
|
|
164
|
-
|
|
165
|
-
* tracker.finish()
|
|
166
|
-
|
|
167
|
-
Marks this tracker as finished, tracker.completed() will now be 1. Triggers
|
|
168
|
-
a `change` event.
|
|
169
|
-
|
|
170
|
-
TrackerStream
|
|
171
|
-
=============
|
|
172
|
-
|
|
173
|
-
* var tracker = new TrackerStream(**name**, **size**, **options**)
|
|
174
|
-
|
|
175
|
-
* **name** *(optional)* The name of this counter to report in change
|
|
176
|
-
events. Defaults to undefined.
|
|
177
|
-
* **size** *(optional)* The number of bytes being sent through this stream.
|
|
178
|
-
* **options** *(optional)* A hash of stream options
|
|
179
|
-
|
|
180
|
-
The tracker stream object is a pass through stream that updates an internal
|
|
181
|
-
tracker object each time a block passes through. It's intended to track
|
|
182
|
-
downloads, file extraction and other related activities. You use it by piping
|
|
183
|
-
your data source into it and then using it as your data source.
|
|
184
|
-
|
|
185
|
-
If your data has a length attribute then that's used as the amount of work
|
|
186
|
-
completed when the chunk is passed through. If it does not (eg, object
|
|
187
|
-
streams) then each chunk counts as completing 1 unit of work, so your size
|
|
188
|
-
should be the total number of objects being streamed.
|
|
189
|
-
|
|
190
|
-
* tracker.addWork(**todo**)
|
|
191
|
-
|
|
192
|
-
* **todo** Increase the expected overall size by **todo** bytes.
|
|
193
|
-
|
|
194
|
-
Increases the amount of work to be done, thus decreasing the completion
|
|
195
|
-
percentage. Triggers a `change` event.
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"_args": [
|
|
3
|
-
[
|
|
4
|
-
"are-we-there-yet@1.1.7",
|
|
5
|
-
"/home/runner/work/node-datachannel/node-datachannel"
|
|
6
|
-
]
|
|
7
|
-
],
|
|
8
|
-
"_from": "are-we-there-yet@1.1.7",
|
|
9
|
-
"_id": "are-we-there-yet@1.1.7",
|
|
10
|
-
"_inBundle": false,
|
|
11
|
-
"_integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==",
|
|
12
|
-
"_location": "/npmlog/are-we-there-yet",
|
|
13
|
-
"_phantomChildren": {},
|
|
14
|
-
"_requested": {
|
|
15
|
-
"type": "version",
|
|
16
|
-
"registry": true,
|
|
17
|
-
"raw": "are-we-there-yet@1.1.7",
|
|
18
|
-
"name": "are-we-there-yet",
|
|
19
|
-
"escapedName": "are-we-there-yet",
|
|
20
|
-
"rawSpec": "1.1.7",
|
|
21
|
-
"saveSpec": null,
|
|
22
|
-
"fetchSpec": "1.1.7"
|
|
23
|
-
},
|
|
24
|
-
"_requiredBy": [
|
|
25
|
-
"/npmlog"
|
|
26
|
-
],
|
|
27
|
-
"_resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz",
|
|
28
|
-
"_spec": "1.1.7",
|
|
29
|
-
"_where": "/home/runner/work/node-datachannel/node-datachannel",
|
|
30
|
-
"author": {
|
|
31
|
-
"name": "Rebecca Turner",
|
|
32
|
-
"url": "http://re-becca.org"
|
|
33
|
-
},
|
|
34
|
-
"bugs": {
|
|
35
|
-
"url": "https://github.com/iarna/are-we-there-yet/issues"
|
|
36
|
-
},
|
|
37
|
-
"dependencies": {
|
|
38
|
-
"delegates": "^1.0.0",
|
|
39
|
-
"readable-stream": "^2.0.6"
|
|
40
|
-
},
|
|
41
|
-
"description": "Keep track of the overall completion of many disparate processes",
|
|
42
|
-
"devDependencies": {
|
|
43
|
-
"standard": "^11.0.1",
|
|
44
|
-
"tap": "^12.0.1"
|
|
45
|
-
},
|
|
46
|
-
"files": [
|
|
47
|
-
"index.js",
|
|
48
|
-
"tracker-base.js",
|
|
49
|
-
"tracker-group.js",
|
|
50
|
-
"tracker-stream.js",
|
|
51
|
-
"tracker.js",
|
|
52
|
-
"CHANGES.md"
|
|
53
|
-
],
|
|
54
|
-
"homepage": "https://github.com/iarna/are-we-there-yet",
|
|
55
|
-
"license": "ISC",
|
|
56
|
-
"main": "index.js",
|
|
57
|
-
"name": "are-we-there-yet",
|
|
58
|
-
"repository": {
|
|
59
|
-
"type": "git",
|
|
60
|
-
"url": "git+https://github.com/iarna/are-we-there-yet.git"
|
|
61
|
-
},
|
|
62
|
-
"scripts": {
|
|
63
|
-
"test": "standard && tap test/*.js"
|
|
64
|
-
},
|
|
65
|
-
"version": "1.1.7"
|
|
66
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
var EventEmitter = require('events').EventEmitter
|
|
3
|
-
var util = require('util')
|
|
4
|
-
|
|
5
|
-
var trackerId = 0
|
|
6
|
-
var TrackerBase = module.exports = function (name) {
|
|
7
|
-
EventEmitter.call(this)
|
|
8
|
-
this.id = ++trackerId
|
|
9
|
-
this.name = name
|
|
10
|
-
}
|
|
11
|
-
util.inherits(TrackerBase, EventEmitter)
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
var util = require('util')
|
|
3
|
-
var TrackerBase = require('./tracker-base.js')
|
|
4
|
-
var Tracker = require('./tracker.js')
|
|
5
|
-
var TrackerStream = require('./tracker-stream.js')
|
|
6
|
-
|
|
7
|
-
var TrackerGroup = module.exports = function (name) {
|
|
8
|
-
TrackerBase.call(this, name)
|
|
9
|
-
this.parentGroup = null
|
|
10
|
-
this.trackers = []
|
|
11
|
-
this.completion = {}
|
|
12
|
-
this.weight = {}
|
|
13
|
-
this.totalWeight = 0
|
|
14
|
-
this.finished = false
|
|
15
|
-
this.bubbleChange = bubbleChange(this)
|
|
16
|
-
}
|
|
17
|
-
util.inherits(TrackerGroup, TrackerBase)
|
|
18
|
-
|
|
19
|
-
function bubbleChange (trackerGroup) {
|
|
20
|
-
return function (name, completed, tracker) {
|
|
21
|
-
trackerGroup.completion[tracker.id] = completed
|
|
22
|
-
if (trackerGroup.finished) return
|
|
23
|
-
trackerGroup.emit('change', name || trackerGroup.name, trackerGroup.completed(), trackerGroup)
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
TrackerGroup.prototype.nameInTree = function () {
|
|
28
|
-
var names = []
|
|
29
|
-
var from = this
|
|
30
|
-
while (from) {
|
|
31
|
-
names.unshift(from.name)
|
|
32
|
-
from = from.parentGroup
|
|
33
|
-
}
|
|
34
|
-
return names.join('/')
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
TrackerGroup.prototype.addUnit = function (unit, weight) {
|
|
38
|
-
if (unit.addUnit) {
|
|
39
|
-
var toTest = this
|
|
40
|
-
while (toTest) {
|
|
41
|
-
if (unit === toTest) {
|
|
42
|
-
throw new Error(
|
|
43
|
-
'Attempted to add tracker group ' +
|
|
44
|
-
unit.name + ' to tree that already includes it ' +
|
|
45
|
-
this.nameInTree(this))
|
|
46
|
-
}
|
|
47
|
-
toTest = toTest.parentGroup
|
|
48
|
-
}
|
|
49
|
-
unit.parentGroup = this
|
|
50
|
-
}
|
|
51
|
-
this.weight[unit.id] = weight || 1
|
|
52
|
-
this.totalWeight += this.weight[unit.id]
|
|
53
|
-
this.trackers.push(unit)
|
|
54
|
-
this.completion[unit.id] = unit.completed()
|
|
55
|
-
unit.on('change', this.bubbleChange)
|
|
56
|
-
if (!this.finished) this.emit('change', unit.name, this.completion[unit.id], unit)
|
|
57
|
-
return unit
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
TrackerGroup.prototype.completed = function () {
|
|
61
|
-
if (this.trackers.length === 0) return 0
|
|
62
|
-
var valPerWeight = 1 / this.totalWeight
|
|
63
|
-
var completed = 0
|
|
64
|
-
for (var ii = 0; ii < this.trackers.length; ii++) {
|
|
65
|
-
var trackerId = this.trackers[ii].id
|
|
66
|
-
completed += valPerWeight * this.weight[trackerId] * this.completion[trackerId]
|
|
67
|
-
}
|
|
68
|
-
return completed
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
TrackerGroup.prototype.newGroup = function (name, weight) {
|
|
72
|
-
return this.addUnit(new TrackerGroup(name), weight)
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
TrackerGroup.prototype.newItem = function (name, todo, weight) {
|
|
76
|
-
return this.addUnit(new Tracker(name, todo), weight)
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
TrackerGroup.prototype.newStream = function (name, todo, weight) {
|
|
80
|
-
return this.addUnit(new TrackerStream(name, todo), weight)
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
TrackerGroup.prototype.finish = function () {
|
|
84
|
-
this.finished = true
|
|
85
|
-
if (!this.trackers.length) this.addUnit(new Tracker(), 1, true)
|
|
86
|
-
for (var ii = 0; ii < this.trackers.length; ii++) {
|
|
87
|
-
var tracker = this.trackers[ii]
|
|
88
|
-
tracker.finish()
|
|
89
|
-
tracker.removeListener('change', this.bubbleChange)
|
|
90
|
-
}
|
|
91
|
-
this.emit('change', this.name, 1, this)
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
var buffer = ' '
|
|
95
|
-
TrackerGroup.prototype.debug = function (depth) {
|
|
96
|
-
depth = depth || 0
|
|
97
|
-
var indent = depth ? buffer.substr(0, depth) : ''
|
|
98
|
-
var output = indent + (this.name || 'top') + ': ' + this.completed() + '\n'
|
|
99
|
-
this.trackers.forEach(function (tracker) {
|
|
100
|
-
if (tracker instanceof TrackerGroup) {
|
|
101
|
-
output += tracker.debug(depth + 1)
|
|
102
|
-
} else {
|
|
103
|
-
output += indent + ' ' + tracker.name + ': ' + tracker.completed() + '\n'
|
|
104
|
-
}
|
|
105
|
-
})
|
|
106
|
-
return output
|
|
107
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
var util = require('util')
|
|
3
|
-
var stream = require('readable-stream')
|
|
4
|
-
var delegate = require('delegates')
|
|
5
|
-
var Tracker = require('./tracker.js')
|
|
6
|
-
|
|
7
|
-
var TrackerStream = module.exports = function (name, size, options) {
|
|
8
|
-
stream.Transform.call(this, options)
|
|
9
|
-
this.tracker = new Tracker(name, size)
|
|
10
|
-
this.name = name
|
|
11
|
-
this.id = this.tracker.id
|
|
12
|
-
this.tracker.on('change', delegateChange(this))
|
|
13
|
-
}
|
|
14
|
-
util.inherits(TrackerStream, stream.Transform)
|
|
15
|
-
|
|
16
|
-
function delegateChange (trackerStream) {
|
|
17
|
-
return function (name, completion, tracker) {
|
|
18
|
-
trackerStream.emit('change', name, completion, trackerStream)
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
TrackerStream.prototype._transform = function (data, encoding, cb) {
|
|
23
|
-
this.tracker.completeWork(data.length ? data.length : 1)
|
|
24
|
-
this.push(data)
|
|
25
|
-
cb()
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
TrackerStream.prototype._flush = function (cb) {
|
|
29
|
-
this.tracker.finish()
|
|
30
|
-
cb()
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
delegate(TrackerStream.prototype, 'tracker')
|
|
34
|
-
.method('completed')
|
|
35
|
-
.method('addWork')
|
|
36
|
-
.method('finish')
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
var util = require('util')
|
|
3
|
-
var TrackerBase = require('./tracker-base.js')
|
|
4
|
-
|
|
5
|
-
var Tracker = module.exports = function (name, todo) {
|
|
6
|
-
TrackerBase.call(this, name)
|
|
7
|
-
this.workDone = 0
|
|
8
|
-
this.workTodo = todo || 0
|
|
9
|
-
}
|
|
10
|
-
util.inherits(Tracker, TrackerBase)
|
|
11
|
-
|
|
12
|
-
Tracker.prototype.completed = function () {
|
|
13
|
-
return this.workTodo === 0 ? 0 : this.workDone / this.workTodo
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
Tracker.prototype.addWork = function (work) {
|
|
17
|
-
this.workTodo += work
|
|
18
|
-
this.emit('change', this.name, this.completed(), this)
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
Tracker.prototype.completeWork = function (work) {
|
|
22
|
-
this.workDone += work
|
|
23
|
-
if (this.workDone > this.workTodo) this.workDone = this.workTodo
|
|
24
|
-
this.emit('change', this.name, this.completed(), this)
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
Tracker.prototype.finish = function () {
|
|
28
|
-
this.workTodo = this.workDone = 1
|
|
29
|
-
this.emit('change', this.name, 1, this)
|
|
30
|
-
}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
### v2.7.4
|
|
2
|
-
|
|
3
|
-
* Reset colors prior to ending a line, to eliminate flicker when a line
|
|
4
|
-
is trucated between start and end color sequences.
|
|
5
|
-
|
|
6
|
-
### v2.7.3
|
|
7
|
-
|
|
8
|
-
* Only create our onExit handler when we're enabled and remove it when we're
|
|
9
|
-
disabled. This stops us from creating multiple onExit handlers when
|
|
10
|
-
multiple gauge objects are being used.
|
|
11
|
-
* Fix bug where if a theme name were given instead of a theme object, it
|
|
12
|
-
would crash.
|
|
13
|
-
* Remove supports-color because it's not actually used. Uhm. Yes, I just
|
|
14
|
-
updated it. >.>
|
|
15
|
-
|
|
16
|
-
### v2.7.2
|
|
17
|
-
|
|
18
|
-
* Use supports-color instead of has-color (as the module has been renamed)
|
|
19
|
-
|
|
20
|
-
### v2.7.1
|
|
21
|
-
|
|
22
|
-
* Bug fix: Calls to show/pulse while the progress bar is disabled should still
|
|
23
|
-
update our internal representation of what would be shown should it be enabled.
|
|
24
|
-
|
|
25
|
-
### v2.7.0
|
|
26
|
-
|
|
27
|
-
* New feature: Add new `isEnabled` method to allow introspection of the gauge's
|
|
28
|
-
"enabledness" as controlled by `.enable()` and `.disable()`.
|
|
29
|
-
|
|
30
|
-
### v2.6.0
|
|
31
|
-
|
|
32
|
-
* Bug fix: Don't run the code associated with `enable`/`disable` if the gauge
|
|
33
|
-
is already enabled or disabled respectively. This prevents leaking event
|
|
34
|
-
listeners, amongst other weirdness.
|
|
35
|
-
* New feature: Template items can have default values that will be used if no
|
|
36
|
-
value was otherwise passed in.
|
|
37
|
-
|
|
38
|
-
### v2.5.3
|
|
39
|
-
|
|
40
|
-
* Default to `enabled` only if we have a tty. Users can always override
|
|
41
|
-
this by passing in the `enabled` option explicitly or by calling calling
|
|
42
|
-
`gauge.enable()`.
|
|
43
|
-
|
|
44
|
-
### v2.5.2
|
|
45
|
-
|
|
46
|
-
* Externalized `./console-strings.js` into `console-control-strings`.
|
|
47
|
-
|
|
48
|
-
### v2.5.1
|
|
49
|
-
|
|
50
|
-
* Update to `signal-exit@3.0.0`, which fixes a compatibility bug with the
|
|
51
|
-
node profiler.
|
|
52
|
-
* [#39](https://github.com/iarna/gauge/pull/39) Fix tests on 0.10 and add
|
|
53
|
-
a missing devDependency. ([@helloyou2012](https://github.com/helloyou2012))
|
|
54
|
-
|
|
55
|
-
### v2.5.0
|
|
56
|
-
|
|
57
|
-
* Add way to programmatically fetch a list of theme names in a themeset
|
|
58
|
-
(`Themeset.getThemeNames`).
|
|
59
|
-
|
|
60
|
-
### v2.4.0
|
|
61
|
-
|
|
62
|
-
* Add support for setting themesets on existing gauge objects.
|
|
63
|
-
* Add post-IO callback to `gauge.hide()` as it is somtetimes necessary when
|
|
64
|
-
your terminal is interleaving output from multiple filehandles (ie, stdout
|
|
65
|
-
& stderr).
|
|
66
|
-
|
|
67
|
-
### v2.3.1
|
|
68
|
-
|
|
69
|
-
* Fix a refactor bug in setTheme where it wasn't accepting the various types
|
|
70
|
-
of args it should.
|
|
71
|
-
|
|
72
|
-
### v2.3.0
|
|
73
|
-
|
|
74
|
-
#### FEATURES
|
|
75
|
-
|
|
76
|
-
* Add setTemplate & setTheme back in.
|
|
77
|
-
* Add support for named themes, you can now ask for things like 'colorASCII'
|
|
78
|
-
and 'brailleSpinner'. Of course, you can still pass in theme objects.
|
|
79
|
-
Additionally you can now pass in an object with `hasUnicode`, `hasColor` and
|
|
80
|
-
`platform` keys in order to override our guesses as to those values when
|
|
81
|
-
selecting a default theme from the themeset.
|
|
82
|
-
* Make the output stream optional (it defaults to `process.stderr` now).
|
|
83
|
-
* Add `setWriteTo(stream[, tty])` to change the output stream and,
|
|
84
|
-
optionally, tty.
|
|
85
|
-
|
|
86
|
-
#### BUG FIXES & REFACTORING
|
|
87
|
-
|
|
88
|
-
* Abort the display phase early if we're supposed to be hidden and we are.
|
|
89
|
-
* Stop printing a bunch of spaces at the end of lines, since we're already
|
|
90
|
-
using an erase-to-end-of-line code anyway.
|
|
91
|
-
* The unicode themes were missing the subsection separator.
|
|
92
|
-
|
|
93
|
-
### v2.2.1
|
|
94
|
-
|
|
95
|
-
* Fix image in readme
|
|
96
|
-
|
|
97
|
-
### v2.2.0
|
|
98
|
-
|
|
99
|
-
* All new themes API– reference themes by name and pass in custom themes and
|
|
100
|
-
themesets (themesets get platform support autodetection done on them to
|
|
101
|
-
select the best theme). Theme mixins let you add features to all existing
|
|
102
|
-
themes.
|
|
103
|
-
* Much, much improved test coverage.
|
|
104
|
-
|
|
105
|
-
### v2.1.0
|
|
106
|
-
|
|
107
|
-
* Got rid of ░ in the default platform, noUnicode, hasColor theme. Thanks
|
|
108
|
-
to @yongtw123 for pointing out this had snuck in.
|
|
109
|
-
* Fiddled with the demo output to make it easier to see the spinner spin. Also
|
|
110
|
-
added prints before each platforms test output.
|
|
111
|
-
* I forgot to include `signal-exit` in our deps. <.< Thank you @KenanY for
|
|
112
|
-
finding this. Then I was lazy and made a new commit instead of using his
|
|
113
|
-
PR. Again, thank you for your patience @KenenY.
|
|
114
|
-
* Drastically speed up travis testing.
|
|
115
|
-
* Add a small javascript demo (demo.js) for showing off the various themes
|
|
116
|
-
(and testing them on diff platforms).
|
|
117
|
-
* Change: The subsection separator from ⁄ and / (different chars) to >.
|
|
118
|
-
* Fix crasher: A show or pulse without a label would cause the template renderer
|
|
119
|
-
to complain about a missing value.
|
|
120
|
-
* New feature: Add the ability to disable the clean-up-on-exit behavior.
|
|
121
|
-
Not something I expect to be widely desirable, but important if you have
|
|
122
|
-
multiple distinct gauge instances in your app.
|
|
123
|
-
* Use our own color support detection.
|
|
124
|
-
The `has-color` module proved too magic for my needs, making assumptions
|
|
125
|
-
as to which stream we write to and reading command line arguments.
|
|
126
|
-
|
|
127
|
-
### v2.0.0
|
|
128
|
-
|
|
129
|
-
This is a major rewrite of the internals. Externally there are fewer
|
|
130
|
-
changes:
|
|
131
|
-
|
|
132
|
-
* On node>0.8 gauge object now prints updates at a fixed rate. This means
|
|
133
|
-
that when you call `show` it may wate up to `updateInterval` ms before it
|
|
134
|
-
actually prints an update. You override this behavior with the
|
|
135
|
-
`fixedFramerate` option.
|
|
136
|
-
* The gauge object now keeps the cursor hidden as long as it's enabled and
|
|
137
|
-
shown.
|
|
138
|
-
* The constructor's arguments have changed, now it takes a mandatory output
|
|
139
|
-
stream and an optional options object. The stream no longer needs to be
|
|
140
|
-
an `ansi`ified stream, although it can be if you want (but we won't make
|
|
141
|
-
use of its special features).
|
|
142
|
-
* Previously the gauge was disabled by default if `process.stdout` wasn't a
|
|
143
|
-
tty. Now it always defaults to enabled. If you want the previous
|
|
144
|
-
behavior set the `enabled` option to `process.stdout.isTTY`.
|
|
145
|
-
* The constructor's options have changed– see the docs for details.
|
|
146
|
-
* Themes are entirely different. If you were using a custom theme, or
|
|
147
|
-
referring to one directly (eg via `Gauge.unicode` or `Gauge.ascii`) then
|
|
148
|
-
you'll need to change your code. You can get the equivalent of the latter
|
|
149
|
-
with:
|
|
150
|
-
```
|
|
151
|
-
var themes = require('gauge/themes')
|
|
152
|
-
var unicodeTheme = themes(true, true) // returns the color unicode theme for your platform
|
|
153
|
-
```
|
|
154
|
-
The default themes no longer use any ambiguous width characters, so even
|
|
155
|
-
if you choose to display those as wide your progress bar should still
|
|
156
|
-
display correctly.
|
|
157
|
-
* Templates are entirely different and if you were using a custom one, you
|
|
158
|
-
should consult the documentation to learn how to recreate it. If you were
|
|
159
|
-
using the default, be aware that it has changed and the result looks quite
|
|
160
|
-
a bit different.
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
Copyright (c) 2014, Rebecca Turner <me@re-becca.org>
|
|
2
|
-
|
|
3
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
4
|
-
purpose with or without fee is hereby granted, provided that the above
|
|
5
|
-
copyright notice and this permission notice appear in all copies.
|
|
6
|
-
|
|
7
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
8
|
-
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
9
|
-
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
10
|
-
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
11
|
-
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
12
|
-
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
13
|
-
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|